/*
Theme Name:   GeneratePress Child
Author:       NoguchiKikaku
Template:     generatepress
Unsemantic CSS Framework Documentation http://unsemantic.com/css-documentation

■目次
・フォント設定
・共通設定
・カラー設定
・見出し装飾
・ボタン装飾
・FAQ装飾
・枠装飾
・Unsemantic調整
・お知らせ系ショートコード
・コンタクトフォーム
・ヘッダー
・ナビゲーション
・ウィジェット
・CTA
・フッター
・トップページ
・一覧・詳細

・テーブル
・DL DT DD
・WP-PAGENAVI
・メディアクエリ
*/

@import url(css/tools.css);
@import url(css/bootstrap.css);
@import url(https://fonts.googleapis.com/css?family=Ramabhadra);
/*@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);*/

/* =========================================================
* フォント設定
========================================================= */
@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 300;
    src: url('font/NotoSansCJKjp-Light-sub.eot');
    src: local('Noto Sans CJK JP Light'), url('font/NotoSansCJKjp-Light-sub.eot?#iefix') format('embedded-opentype'), url('font/NotoSansCJKjp-Light-sub.woff') format('woff'), url('font/NotoSansCJKjp-Light-sub.otf') format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: normal;
    src: url('font/NotoSansCJKjp-Regular-sub.eot');
    src: local('Noto Sans CJK JP Regular'), url('font/NotoSansCJKjp-Regular-sub.eot?#iefix') format('embedded-opentype'), url('font/NotoSansCJKjp-Regular-sub.woff') format('woff'), url('font/NotoSansCJKjp-Regular-sub.otf') format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 500;
    src: url('font/NotoSansCJKjp-Medium-sub.eot');
    src: local('Noto Sans CJK JP Medium'), url('font/NotoSansCJKjp-Medium-sub.eot?#iefix') format('embedded-opentype'), url('font/NotoSansCJKjp-Medium-sub.woff') format('woff'), url('font/NotoSansCJKjp-Medium-sub.otf') format('opentype');
}

@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: normal;
    src: url('font/Roboto-Regular-sub.eot');
    src: local('Roboto Regular'), url('font/Roboto-Regular-sub.eot?#iefix') format('embedded-opentype'), url('font/Roboto-Regular-sub.woff') format('woff'), url('font/Roboto-Regular-sub.ttf') format('truetype');
}

@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: bold;
    src: url('font/Roboto-Bold-sub.eot');
    src: local('Roboto Bold'), url('font/Roboto-Bold-sub.eot?#iefix') format('embedded-opentype'), url('font/Roboto-Bold-sub.woff') format('woff'), url('font/Roboto-Bold-sub.ttf') format('truetype');
}


/* =========================================================
* 共通設定
========================================================= */

body {
    font-family: "Roboto", "Droid Sans", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", "YuGothic", "メイリオ", "Meiryo", sans-serif;
    line-height: 1.8;
    letter-spacing: 0.1em;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.button:visited {
    font-family: "Roboto", "Droid Sans", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", "YuGothic", "メイリオ", "Meiryo", sans-serif;
}

input[type="button"],
input[type="reset"],
input[type="submit"] {
    border: 0;
    cursor: pointer;
    -webkit-appearance: button;
    background: #333;
    color: #fff;
    border-radius: 3px;
    padding: 10px 30px;
}

input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
    background-color: #555;
    color: #fff;
}

.shadow-w {
    text-shadow: 0 0 15px #fff;
}

.bgtwotone {
    background: url(images/bg-twotone.gif) center center repeat-y;
}

ol.mg,
ul.mg {
    margin: 0 0 0 1.5em;
}

.txtthin {
    font-weight: 300;
}
.txtsdwhite {
    text-shadow: 0 0 5px rgba(255,255,255,0.9);
}
.p-thin p {
    font-weight: 300;
}
.areasort {
    width: 100%;
    padding: 2px;
}

/* =========================================================
* カラー設定
========================================================= */
/* ベースカラー */
.base-color {
    color: #cc0000;
}
.sub-color {
    color: #fff100;
}

i {
    color: #cc0000;
}

.txtred {
    color: #cc0000;
}
.txtgreen {
    color: #11A73B;
}

.marker-yellow {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #f5e9ae));
    background: linear-gradient(transparent 60%, #f5e9ae 60%);
}
.marker-green {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #c9efa1));
    background: linear-gradient(transparent 60%, #c9efa1 60%);
}
.marker-blue {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #8ac0e9));
    background: linear-gradient(transparent 60%, #8ac0e9 60%);
}

/* 見出し・お知らせ */
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.title-container a,
.info1column a,
.info2column a,
.show-thumbnail-title a,
.show4column-thumbnails a {
    color: #222222;
    text-decoration: none;
}

h1 a:visited,
h2 a:visited,
h3 a:visited,
h4 a:visited,
h5 a:visited,
h6 a:visited,
.title-container a:visited,
.info1column a:visited,
.info2column a:visited,
.show-thumbnail-title a:visited,
.show4column-thumbnails a:visited {
    color: #222222;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
.title-container a:hover,
.info1column a:hover,
.info2column a:hover,
.show-thumbnail-title a:hover,
.show4column-thumbnails a:hover {
    color: #1e73be;
}

.info1column li a .cat,
.info2column .info-meta .info-cat,
.info-meta .info-cat {
    background: #cc0000;
    letter-spacing: 0;
}

.info1column li a .cat.open,
.info2column .info-meta .info-cat.open {
    background: #00A583;
}
.info1column li a .cat.request,
.info2column .info-meta .info-cat.request {
    background: #0068B7;
}

/* 見出し */
.heading1:before {
    border-left: 5px #cc0000 solid;
}

.heading2 {
    border-bottom: 2px solid #cc0000;
}

.heading2:before {
    border-left: 5px #cc0000 solid;
}

.heading3 {
    font-weight: normal;
    background-color: #cc0000;
    border: none;
}

.heading5:after,
.heading5:before {
    background: #cc0000;
}

.heading6:before {
    background: #cc0000;
}

.heading6:after {
    background: #cc0000;
}

.heading7:before {
    background-color: #cc0000;
}

.heading7:after {
    background-color: #cc0000;
}

.heading8 {
    background: #cc0000;
}
.heading8-black {
    background: #333;
}
.heading8-gray {
    color: #222;
    font-weight: 500;
    background: #e3e3e3;
}
.heading8-green {
    color: #222;
    font-weight: 500;
    background: #c0e09d;
}
.heading8-blue {
    color: #222;
    font-weight: 500;
    background: #BFE7E7;
}
.heading8-yellow {
    color: #222;
    font-weight: 500;
    background: #f5e9ae;
}

.heading9 {
    border-bottom: 4px solid #ccc;
    border-left: none;
    padding-left: 0;
}

.heading9::after {
    background-color: #cc0000;
}

.heading9-lv2 {
    border-bottom: 2px solid #ccc;
}

.heading9-lv2::after {
    background-color: #cc0000;
}


/* ボタン */

.tools-btn-key,
.tools-btn-key a {
    background: none repeat scroll 0% 0% #cc0000;
    border: 1px solid #cc0000;
}

a.link_key {
    background-color: #EB494B;
    color: #fff;
}


/* 流れ */
ol.flow1 li {
    color: #222;
    font-weight: 500;
}
ol.flow1 li:before {
    background: #cc0000;
}

.marker_yellow {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffffa4));
    background: linear-gradient(transparent 60%, #ffffa4 60%);
}

/* =========================================================
* 見出し装飾
========================================================= */

.separate-containers header.page-header {
    background-color: #cc0000;
    text-align: center;
}
header.page-header h1.page-title {
    color: #ffffff;
}

h2 {
    margin: 0 0 1em 0;
    padding: 0 0 0 10px;
    line-height: 1.2em;
    border-left: 5px solid #cc0000;
}

.entry-header {
    border-bottom: 1px dotted #ccc;
}

.entry-title {
    margin: 0 0 0.5em 0;
    padding: 0 0 0 10px;
    line-height: 1.2em;
    font-weight: normal;
    border-left: 5px solid #cc0000;
}

.sidebar .widget .widget-title {
    font-weight: bold;
    color: #cc0000;
    border-bottom: 1px dotted #ccc;
    border-left: none;
    padding: 0 0 10px 0;
}

.j-h1,
.j-h2-big,
.j-h2,
.j-h3,
.j-h4 {
    border: none;
    line-height: 1.4em;
    font-weight: bold;
    margin: 0;
    padding: 0;
}

.j-h1 {
    font-size: 50px;
}

.j-h2-big {
    font-size: 40px;
    font-weight: bold;
}
.j-h2 {
    font-size: 34px;
}

.j-h3 {
    font-size: 26px;
}

.j-h4 {
    font-size: 20px;
}

.box-title h2 {
    font-size: 24px;
    margin: 0;
    padding: 10px 0;
    border: none;
}

.box-title {
    color: #fff;
    background: #cc0000;
    text-align: center;
    font-size: 24px;
    padding: 10px 0;
    margin: 0;
}
.box-title-black {
    color: #fff;
    background: #666666;
    text-align: center;
    font-size: 24px;
    padding: 10px 0;
    margin: 0;
}
.box-title-pink {
    color: #333;
    background: #FAF0F0;
    text-align: center;
    font-size: 24px;
    font-weight: 500;
    padding: 10px 0;
    margin: 0;
}

/* =========================================================
* ボタン装飾
========================================================= */

a.link-button {
    /* 角丸＆シャドウ
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    box-shadow: 0px 1px 0px rgba(0,0,0,0.6);
    -moz-box-shadow: 0px 1px 0px rgba(0,0,0,0.6);
    -webkit-box-shadow: 0px 1px 0px rgba(0,0,0,0.6);
    */
}


/* 情熱食堂様用ボタンセット */


/* 基本設定 */

.jbutton {
    display: inline-block;
    width: 175px;
    height: 50px;
    text-align: center;
    text-decoration: none;
    line-height: 50px;
    outline: none;
}

.jbutton::before,
.jbutton::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}

.jbutton,
.jbutton::before,
.jbutton::after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.jbutton.width100p {
    width: 100%;
}

/* カスタマイズ */

a.jbutton,
a.jbutton i {
    color: #fff !important;
}

.jbutton {
    background-color: #333;
}
.jbutton:hover {
    background-color: #cc0000;
}

.jbutton-key {
    background-color: #cc0000;
}
.jbutton-key:hover {
    background-color: #333;
}

.jbutton-black {
    background-color: #333;
}
.jbutton-black:hover {
    background-color: #cc0000;
}

.jbutton-gray {
    background-color: #666;
}
.jbutton-gray:hover {
    background-color: #666;
}
.jbutton-twitter {
    background-color: #1DA1F2;
}
.jbutton-twitter:hover {
    background-color: #333;
}

a.noevent {
    pointer-events: none;
}

.jbutton-cta {
    width: 300px;
    height: 80px;
    line-height: 80px;
    font-size: 20px;
}
.jbutton-big {
    width: 380px;
    height: 60px;
    line-height: 60px;
    font-size: 18px;
}
.jbutton-wide {
    width: 300px;
    height: 50px;
    line-height: 50px;
    font-size: 16px;
}


/* =========================================================
* FAQ装飾
========================================================= */
.faq2-q {
    background: #FAF0F0;
}
.faq2-circle-no {
    color: #fff;
    background: #cc0000;
}
.faq2-circle-q {
    color: #fff;
    background: #333;
}


/* =========================================================
* 枠装飾
========================================================= */
.box-key {
    border: 3px solid #cc0000;
}

.box-type0 {
    padding: 20px;
    background: #FAF0F0;
}
.box-type5 {
    padding: 20px;
    background: #FBF8E5;
}
/* http://wp.myafi.net/css-design-frame/ */
.box-type1 {
    padding: 20px;
    background: #fff;
    border: 3px #cc0000 solid;
}
.box-type1:before {
    background: #fff;
    margin: 3px;
    border: 1px #cc0000 solid;
}
.box-type2 {
    color: #fff;
    padding: 20px;
    background: #cc0000;
}
.box-type2:before {
    background: #cc0000;
    margin: 4px;
    border: 2px #fff solid;
}
.box-type3 {
    color: #fff;
    background: #cc0000;
    padding: 20px;
    border: 1px dashed rgba(255,255,255,0.8);
    box-shadow: 0 0 0 5px #cc0000;
    -moz-box-shadow: 0 0 0 5px #cc0000;
    -webkit-box-shadow: 0 0 0 5px #cc0000;
}
.box-type4 {
    padding: 20px;
    border: 2px solid #cc0000;
    -webkit-box-shadow: inset 0px 0px 0px 5px rgba(0, 0, 0, 0.08);
            box-shadow: inset 0px 0px 0px 5px rgba(0, 0, 0, 0.08);
}


/* =========================================================
* 吹き出し装飾　http://www.cssarrowplease.com/
========================================================= */
.arrow_box {
    position: relative;
    background: #fff;
    border: 1px solid #aaa;
    padding: 10px;
    margin-bottom: 20px;
}
.arrow_box:after, .arrow_box:before {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.arrow_box:after {
    border-color: rgba(255, 255, 255, 0);
    border-top-color: #fff;
    border-width: 16px;
    margin-left: -16px;
}
.arrow_box:before {
    border-color: rgba(204, 204, 204, 0);
    border-top-color: #aaa;
    border-width: 17px;
    margin-left: -17px;
}
.arrow_box_end {
    background: #FAF0F0;
    border: 1px solid #cc0000;
    padding: 10px;
}

/* =========================================================
* Unsemantic調整
========================================================= */

.grid-container {
    padding-left: 0;
    padding-right: 0;
}


/* 標準値8px */

table.table-padding > tbody > tr > th,
table.table-padding > tbody > tr > td {
    padding: 15px;
}


/* トップに戻るボタン(rgbaに変換：http://www.color-hex.com/) */

.generate-back-to-top,
.generate-back-to-top:visited {
    background: rgba( 204, 0, 0, 1);
}

.generate-back-to-top:hover,
.generate-back-to-top:active,
.generate-back-to-top:focus {
    background: rgba( 204, 0, 0, 0.8);
}

.generate-back-to-top i {
    color: #fff;
}

/* =========================================================
* GP & Unsemantic調整
========================================================= */
/* フルワイドのセクション：GPのセクション利用時にCustom Classesに「generate-sections-fullwide」を設定 */
/* セクションの設定「Inner Box Type」を「Full Width」に変更しただけでは左右の余白が残るため、余白を０にする */
.generate-sections-fullwide .generate-sections-inside-container {
    padding-left: 0;
    padding-right: 0;
}
/* GPのセクション利用時にCustom Classesに「generate-sections-XXXX」を設定 */
.generate-sections-800  .generate-sections-inside-container {max-width: 800px; margin:0 auto;}
.generate-sections-900  .generate-sections-inside-container {max-width: 900px; margin:0 auto;}
.generate-sections-1000 .generate-sections-inside-container {max-width: 1000px;margin:0 auto;}
.generate-sections-1100 .generate-sections-inside-container {max-width: 1100px;margin:0 auto;}
.generate-sections-1200 .generate-sections-inside-container {max-width: 1200px;margin:0 auto;}
.generate-sections-1300 .generate-sections-inside-container {max-width: 1300px;margin:0 auto;}
.generate-sections-1400 .generate-sections-inside-container {max-width: 1400px;margin:0 auto;}
.generate-sections-1500 .generate-sections-inside-container {max-width: 1500px;margin:0 auto;}
.generate-sections-1600 .generate-sections-inside-container {max-width: 1600px;margin:0 auto;}
.generate-sections-1700 .generate-sections-inside-container {max-width: 1700px;margin:0 auto;}

/* 固定幅　※grid-containerはカスタマイザーの「Layout＞Container＞Container Width」設定値（ベーステーマでは1100px）となるため、それ以外の横幅を利用したい場合に利用 */
.grid-400  {max-width: 400px; margin:0 auto;} .grid-400::after {clear: both;}
.grid-500  {max-width: 500px; margin:0 auto;} .grid-500::after {clear: both;}
.grid-600  {max-width: 600px; margin:0 auto;} .grid-600::after {clear: both;}
.grid-700  {max-width: 700px; margin:0 auto;} .grid-700::after {clear: both;}
.grid-800  {max-width: 800px; margin:0 auto;} .grid-800::after {clear: both;}
.grid-900  {max-width: 900px; margin:0 auto;} .grid-900::after {clear: both;}
.grid-1000 {max-width: 1000px;margin:0 auto;} .grid-1000::after {clear: both;}
.grid-1100 {max-width: 1100px;margin:0 auto;} .grid-1100::after {clear: both;}
/* カスタマイザーの設定値（Container Width）を超える場合は該当セクションの「Inner Box Type」を「Full Width」に変更してから利用する */
.grid-1200 {max-width: 1200px;margin:0 auto;} .grid-1200::after {clear: both;}
.grid-1300 {max-width: 1300px;margin:0 auto;} .grid-1300::after {clear: both;}
.grid-1400 {max-width: 1400px;margin:0 auto;} .grid-1400::after {clear: both;}
.grid-1500 {max-width: 1500px;margin:0 auto;} .grid-1500::after {clear: both;}
.grid-1600 {max-width: 1600px;margin:0 auto;} .grid-1600::after {clear: both;}
.grid-1700 {max-width: 1700px;margin:0 auto;} .grid-1700::after {clear: both;}
/* clear:both */
.grid-400::after, .grid-500::after, .grid-600::after, .grid-700::after, .grid-800::after, .grid-900::after, .grid-1000::after, 
.grid-1100::after, .grid-1200::after, .grid-1300::after, .grid-1400::after, .grid-1500::after, .grid-1600::after, .grid-1700::after {
    content: ".";
    display: block;
    overflow: hidden;
    visibility: hidden;
    font-size: 0;
    line-height: 0;
    width: 0;
    height: 0;
}

/* =========================================================
* お知らせ系ショートコード
========================================================= */

ul.show-thumbnail-title {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

ul.show-thumbnail-title li {
    overflow: hidden;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dotted #ccc;
}

ul.show-thumbnail-title li:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}


/* =========================================================
* コンタクトフォーム
========================================================= */

/* チェックボックス縦並び */
span.wpcf7-list-item {
    display: block;
}

/* チェックボックス装飾 */
.acceptance-0 input[type="checkbox"] {
    -webkit-transform: scale(1.6, 1.6);
    transform: scale(1.6, 1.6);
    margin-right: 5px;
}

/* 確認画面 */
.contact-input-area .wpcf7c-conf {
    background-color: #ddd;
    color: #333;
    border: 1px solid #aaa;
}
input[type="submit"].wpcf7-form-control.wpcf7-submit.wpcf7c-elm-step2 {
    background: #c00;
}
/* 完了画面で入力フィールド非表示 */
.sent .contact-input-area{
    display: none;
}


/* =========================================================
* ヘッダー
========================================================= */

.site-header img.header-image {
    max-height: 60px;
    width: auto;
}

.catchcopy {
    background: #eee;
}

.catchcopy h1 {
    font-size: 13px;
    line-height: 22px;
    margin: 0;
    padding: 0;
}


/*----header widget-------*/

.header-widget {
    width: 560px;
    max-width: 70%;
    /* 掲載コンテンツの幅で調整 */
    padding-top: 5px;
}

.header-widget ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.header-widget ul li {
    float: right;
    font-size: 12px;
    color: #333;
    margin-left: 20px;
}

.header-widget ul#menu-navigation > li {
    width: auto;
}

.header-widget ul li:before {
    /* AwesomeIcon表示用 */
    content: "\f0da";
    font-family: FontAwesome;
    position: absolute;
    display: block;
    margin: 0 -10px;
    color: #cc0000;
}

.cta-tel {
    font-family: 'Ramabhadra', sans-serif;
    font-size: 28px;
    line-height: 32px;
    letter-spacing: 0;
}

.cta-txt {
    font-size: 12px;
    line-height: 18px;
}

.cta-btn {
    padding: 5px 0 0 0;
    margin: 0;
}

@media screen and (max-width: 768px) {
    .header-widget {
        display: none;
        width: 100%;
    }
}


/* =========================================================
* ナビゲーション
========================================================= */

ul#menu-navigation > li {
    letter-spacing: 0.2em;
    /* width: 14%; */
    width: auto;
    /* 5=>20 6=>16.6 7=14.285 */
}


ul#menu-navigation > li {
    /*background: url(images/bg-nav-li-black.png) right center no-repeat;*/
    /* メニューの仕切り線 */
}

ul#menu-navigation > li:last-child {
    background: none;
}

@media (max-width:1200px) {
    ul#menu-navigation > li {
        width: auto;
    }
}


/* カレントメニューの背景色を透明 */

.main-navigation .main-nav ul .current-menu-item > a,
.main-navigation .main-nav ul .current-menu-parent > a,
.main-navigation .main-nav ul .current-menu-ancestor > a,
.main-navigation .main-nav ul .current_page_item > a,
.main-navigation .main-nav ul .current_page_parent > a,
.main-navigation .main-nav ul .current_page_ancestor > a {
    background-color: transparent !important;
}

.main-navigation .main-nav:not(.slideout-menu) ul ul li a {
    border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.main-navigation .main-nav ul ul {
    width: 220px;
}

.main-navigation .main-nav ul li.menu-tel a {
    padding-top: 10px;
    line-height: 1.5em;
}

.breadcrumbs {
    background: #eeeeee;
    font-size: 80%;
    line-height: 1.2em;
    padding: 15px 0;
}


/* 情熱食堂様スタイル */
.menu-item-13 i {
    font-size: 24px;
}
.main-navigation {
    border-bottom: 4px solid #cc0000;
}

.main-navigation .main-nav ul ul li a {
    font-weight: normal !important;
}


/* =========================================================
* ウィジェット
========================================================= */

#left-sidebar .widget-title,
#right-sidebar .widget-title {
    margin-bottom: 10px;
}

#left-sidebar .widget ul li,
#right-sidebar .widget ul li {
    line-height: 40px;
    padding: 0 0 0 12px;
    margin: 0 0 0 5px;
    background: url(images/widget-list.png) left center no-repeat;
    border-bottom: 1px dotted #cc0000;
    border-bottom: 1px dotted #ccc;
}


/*----- ウィジェット用CTA -----*/

.side-contact {
    border: 1px solid #e3e3e3;
    background: #fff;
    padding: 0;
    text-align: center;
}

.side-title {
    font-size: 18px;
    line-height: 40px;
    color: #fff;
    background: #cc0000;
    margin: 0;
}

.side-img {
    padding: 10px 10px 0 10px;
}

.side-tel {
    font-family: 'Ramabhadra', sans-serif;
    font-size: 28px;
    margin: 10px 0 5px 0;
}

.side-button {
    padding: 10px 5px;
    background: #eee;
}


/*----- セレクトボックス -----*/

aside.widget select {
    padding: 5px;
    width: 100%;
}

aside.widget option {
    padding: 5px;
}


.widget-area #shortcodes-ultimate-12 {
    padding: 0 !important;
}


/* =========================================================
* CTA
========================================================= */

#cta h2 {
    margin-top: 4em;
}

#cta .cta-container {
    padding: 20px 15px;
    border: 3px solid #cc0000;
    background: #fafafa;
    /*border-radius: 5px;*/
}

#cta .cta-textarea {
    border: 1px solid #e3e3e3;
    background: #fff;
    padding: 10px 10px 0 10px;
}

#cta .cta-title {
    position: relative;
    margin: 0 0 20px 0;
    padding: 10px;
    padding-left: 25px;
    font-weight: normal;
    font-size: 22px;
    background-color: #cc0000;
    color: #fff;
    /*border-radius:3px;*/
}

#cta .cta-title:before {
    content: '';
    height: 26px;
    width: 2px;
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #fff;
    border-left: 4px solid #fff;
    /*border-radius:2px;*/
}


/* =========================================================
* フッター
========================================================= */

.footer-widget-logo img.footer-logo {
    max-height: 50px;
    width: auto;
}

.inside-footer-widgets .inner-padding {
    padding: 0 20px;
}

#footer-widgets .widget-title {
    margin-bottom: 10px;
}

.footer-area {
    font-size: 80%;
}


/* フッターCTA */
#footer-cta {
    background: #fff;
}

.bgfootercta {
    text-align: center;
    background: url(images/bgfootercta.jpg) top center no-repeat;
}

.footer-cta {
    text-align: center;
}

.footer-cta .cta-tel {
    font-size: 36px;
    line-height: 50px;
    letter-spacing: 0;
}

.footer-cta .cta-txt {
    font-size: 14px;
    line-height: 30px;
}


/* =========================================================
* トップページ
========================================================= */

#generate-section-1 .generate-sections-inside-container,
#generate-section-6 .generate-sections-inside-container {
    padding-left: 0;
    padding-right: 0;
}

.title-show-works h2 {
    font-size: 26px;
    line-height: 34px;
}

.title-show-works span.show-works-txt {
    font-size: 16px;
    font-weight: 600px;
    color: #333;
}

.title-show-works {
    border-bottom: none;
}

.title-show-works .link {
    width: 220px;
}

.title-container ul.link {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.title-show-works .link li {
    font-size: 100%;
    margin-left: 0;
}

.title-show-works .link li a {
    color: #fff;
}

.title-show-works .tools-btn-style1 {
    width: 100%;
    border-radius: 3px;
    padding: 2px 5px;
}


/* スライドのページネーション */

.pagination {
    bottom: 15px !important;
}

.pagination a {
    background: #fff !important;
}

.pagination a.active {
    background: #cc0000 !important;
}


/* メニューカルーセル */

.menucarousel {
    max-width: 1988px;
    margin: 0 auto;
}


/* 背景パターン */

.bgtop {
    background: url(images/bgtop.png) left top repeat;
}


/* =========================================================
* 一覧・詳細
========================================================= */

.page .page-header-image,
.page-header-image-single {
    display: none;
}

.relative {
    position: relative;
}
.absolute {
    position: absolute;
    right: 30px;
    bottom: 225px;
}


/* =========================================================
* テーブル
========================================================= */

.table-bordered {
    border: 1px solid #dddddd;
}

.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
    border: 1px solid #dddddd;
}
.table-bordered > tbody > tr.brdr-btm {
    border-bottom: 2px solid #cccccc !important;
}

.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
    padding: 10px;
    line-height: 1.8;
}

th {
    text-align: center;
    font-weight: normal;
    background: #FAF0F0;
}

table.hide-on-desktop,
table.hide-on-tablet {
    font-size: 80%;
}

/* 申込状況 */
table.hp-status tr td,
table.hp-status tr th {
    text-align: center;
    padding: 5px;
}

table.hp-status {
    margin-bottom: 10px;
}



/* =========================================================
* DL DT DD
========================================================= */

dl {
    margin-top: 0;
    margin-bottom: 20px;
}

dt,
dd {
    line-height: 1.42857143;
}

dt {
    font-weight: normal;
}

dd {
    margin-left: 0;
    margin-bottom: 5px;
}

@media (min-width: 768px) {
    .dl-horizontal dt {
        float: left;
        width: 110px;
        overflow: hidden;
        clear: left;
        text-align: left;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .dl-horizontal dd {
        margin-left: 120px;
    }
}

.dl-horizontal dd:before,
.dl-horizontal dd:after {
    display: table;
    content: " ";
}

.dl-horizontal dd:after {
    clear: both;
}


/* =========================================================
* WP-PAGENAVI
========================================================= */


/*
* generatepressのページャーを非表示
* https://generatepress.com/forums/topic/blog-paging-pagenavi-styles/
*/

.page-numbers {
    display: none;
}

.navigation {}

.wp-pagenavi {
    float: left;
}

.wp-pagenavi a,
.wp-pagenavi span {
    border: none;
    text-decoration: none;
    padding: 5px 8px;
    margin: 2px;
    font-size: 15px;
    line-height: 15px;
    float: left;
}

.wp-pagenavi a,
.wp-pagenavi a:link,
.wp-pagenavi a:active,
.wp-pagenavi a:focus {
    color: #cc0000;
    border: 1px solid #fff;
    background: none;
}

.wp-pagenavi span.current {
    font-weight: bold;
    color: #fff;
    background: #cc0000;
    border: 1px solid #fff;
    padding: 5px 8px;
}

.wp-pagenavi a:hover {
    color: #ffffff;
    background: #cc0000;
    border: 1px solid #fff;
    padding: 5px 8px;
}

.wp-pagenavi span.pages {
    color: #cc0000;
    background: none;
    padding: 5px 8px 5px 0;
}

.wp-pagenavi span.extend {
    background: transparent;
    color: #cc0000;
    background: none;
}


/* =========================================================
* 店舗情報
========================================================= */
.relative {
    position: relative;
}
.link-header {
    position: absolute;
    right: 0px;
    bottom: 13px;
}
/* モバイル時は解除 */
@media only screen and (max-width: 768px) {
    .link-header {
        display: none;
    }
}

/* =========================================================
* 求人情報
========================================================= */
article.job .entry-content {
    margin: 1.5em 0 0 0;
}


/* =========================================================
* 地図
========================================================= */
.jpmap {
    font-size: 11px;
    position: relative;
    width: 600px;
    height: 350px;
    margin: 0 auto;
}

.jpmap .line_area {
    width: 100px;
    height: 60px;
    border-right: 1px solid #b7eaf7;
    border-bottom: 1px solid #b7eaf7;
    position: absolute;
    left: 150px;
    top: 90px;
}

.jpmap>.area.kanto>div {
    background: #f7cab7;
}

.jpmap>.area.touhoku>div {
    background: #f7cab7;
}

.jpmap>.area.toukai>div {
    background: #f7cab7;
}

.jpmap>.area.hokuriku-shinetu>div {
    background: #f7cab7;
}

.jpmap>.area.kinki>div {
    background: #f7cab7;
}

.jpmap>.area.chugoku>div {
    background: #f7cab7;
}

.jpmap>.area.shikoku>div {
    background: #f7cab7;
}

.jpmap>.area.kyushu>div {
    background: #f7cab7;
}

.jpmap .area .noshop,
.jpmap .area .nojob {
    background: #dddddd !important;
}

.jpmap>.area>div {
    position: absolute;
    border-radius: 5px;
}

.jpmap>.area a {
    color: #333;
}

.jpmap .aichi a,
.jpmap .ehime a,
.jpmap .fukui a,
.jpmap .hiroshima a,
.jpmap .kagawa a,
.jpmap .kochi a,
.jpmap .mie a,
.jpmap .nara a,
.jpmap .okayama a,
.jpmap .shiga a,
.jpmap .tokushima a,
.jpmap .toyama a {
    line-height: 22px;
    width: 41px;
    height: 22px;
    display: block;
    text-align: center;
}

.jpmap .akita a,
.jpmap .fukuoka a,
.jpmap .fukushima a,
.jpmap .gunma a,
.jpmap .iwate a,
.jpmap .kanagawa a,
.jpmap .kumamoto a,
.jpmap .miyagi a,
.jpmap .miyazaki a,
.jpmap .nagasaki a,
.jpmap .oita a,
.jpmap .osaka a,
.jpmap .saga a,
.jpmap .shizuoka a,
.jpmap .tochigi a,
.jpmap .tokyo a,
.jpmap .yamagata a,
.jpmap .yamanashi a {
    line-height: 22px;
    width: 40px;
    height: 22px;
    display: block;
    text-align: center;
}

.jpmap .hokkaido a {
    line-height: 84px;
    width: 132px;
    height: 84px;
    display: block;
    text-align: center;
}

.jpmap .aomori a,
.jpmap .niigata a {
    line-height: 22px;
    width: 82px;
    height: 22px;
    display: block;
    text-align: center;
}

.jpmap .ibaraki a,
.jpmap .saitama a {
    line-height: 23px;
    width: 40px;
    height: 23px;
    display: block;
    text-align: center;
}

.jpmap .hyogo a,
.jpmap .nagano a {
    line-height: 47px;
    width: 40px;
    height: 47px;
    display: block;
    text-align: center;
}

.jpmap .chiba a {
    line-height: 46px;
    width: 40px;
    height: 46px;
    display: block;
    text-align: center;
}

.jpmap .kagoshima a,
.jpmap .kyoto a,
.jpmap .wakayama a {
    line-height: 22px;
    width: 83px;
    height: 22px;
    display: block;
    text-align: center;
}

.jpmap .fukui a,
.jpmap .okinawa a,
.jpmap .shimane a,
.jpmap .tottori a {
    line-height: 23px;
    width: 41px;
    height: 23px;
    display: block;
    text-align: center;
}

.jpmap .gifu a,
.jpmap .ishikawa a,
.jpmap .yamaguchi a {
    line-height: 47px;
    width: 41px;
    height: 47px;
    display: block;
    text-align: center;
}

/* =========================================================
* 店舗一覧（Googleマップ、タブ切り替え）
========================================================= */
.google-map {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 100÷16×9=56.25 */
    padding-bottom: 70%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}
.google-map iframe, .google-map object, .google-map embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@media only screen and (max-width: 768px) {
    .google-map {
        padding-bottom: 0;
        height: 300px;
    }
}

#main .su-tabs {
    background: #fff;
    border-radius: 0;
    padding: 0;
}
#main .su-tabs-nav span {
    font-weight: normal;
    font-size: 24px;
    padding: 0 10px;
    margin-right: 15px;
    min-height: 36px;
    line-height: 36px;
    border-radius: 0;
    border-left: 5px solid #cc0000;
}
#main .su-tabs-nav span.su-tabs-current {
    background: #eee;
    border-left: 5px solid #cc0000;
}

/* =========================================================
* メディアクエリ
========================================================= */


/*==========  モバイル・ファーストの場合  ==========*/


/* カスタム, iPhone Retinaディスプレイ */

@media only screen and (min-width: 320px) {}


/* XSサイズ : Extra Small Devices, Phones */

@media only screen and (min-width: 480px) {}


/* Sサイズ、タブレット : Small Devices, Tablets */

@media only screen and (min-width: 768px) {}


/* Mサイズ、デスクトップ : Medium Devices, Desktops */

@media only screen and (min-width: 992px) {}


/* Lサイズ、ワイドスクリーン : Large Devices, Wide Screens */

@media only screen and (min-width: 1200px) {}


/*==========  非モバイル・ファーストの場合  ==========*/


/* Lサイズ、ワイドスクリーン : Large Devices, Wide Screens */

@media only screen and (max-width: 1200px) {}


/* 769-1150のメニューの高さ */
@media only screen and (max-width: 1199px) and (min-width: 769px) {
    .main-navigation .main-nav ul li a {
        line-height: 24px;
        padding-bottom: 15px;
    }
    .site-header .site-logo {
        display: table;
        margin: 0 auto;
    }
}

/* Mサイズ、デスクトップ : Medium Devices, Desktops */

@media only screen and (max-width: 992px) {
    .site-header .site-logo {
        display: table;
        margin: 0 auto;
    }
}


/* Sサイズ、タブレット : Small Devices, Tablets */

@media only screen and (max-width: 768px) {
    body {
        font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Roboto", "Droid Sans", "游ゴシック", "YuGothic", "メイリオ", "Meiryo", sans-serif;
    }
    /* テーマカスタマイザーで余白を0に設定した場合、モバイル画面の両サイドに余白を作る */
    article,
    #left-sidebar,
    #right-sidebar {
        padding: 0;
    }
    #main article.page,
    #main article.post {
        padding: 0;
    }
    .site-header .site-logo {
        padding: 0 15px;
    }
    .main-navigation .main-nav:not(.slideout-menu) ul ul li a {
        border-top: none;
    }
    .grid-container .mobile-grid-100 {
        margin-bottom: 20px;
    }
    .site-info .txtleft,
    .site-info .txtright {
        text-align: center;
    }
    .site-info .grid-container .mobile-grid-100 {
        margin: 0;
    }
    /* 情熱食堂様カスタマイズ */
    h1 {
        font-size: 22px;
    }
    h2 {
        font-size: 20px;
    }
    h3 {
        font-size: 18px;
    }
    .j-h1 {
        font-size: 40px;
    }
    .j-h2-big {
        font-size: 26px;
    }
    .j-h2 {
        font-size: 24px;
    }
    .j-h3 {
        font-size: 20px;
    }
    .j-h4 {
        font-size: 18px;
    }
    .box-title,
    .box-title h2 {
        font-size: 16px;
        line-height: 20px;
    }
    .jbutton {
        max-width: 100%;
        height: 50px;
        line-height: 50px;
        font-size: 14px;
    }
    .jbutton-cta {
        max-width: 100%;
        height: 50px;
        line-height: 50px;
        font-size: 14px;
    }
    .jbutton-big {
        max-width: 100%;
        height: 60px;
        line-height: 60px;
        font-size: 14px;
    }
    .jbutton-wide {
        max-width: 100%;
        height: 50px;
        line-height: 50px;
        font-size: 14px;
    }
    article.shop h2.entry-title,
    article.job h2.entry-title {
        font-size: 18px;
        letter-spacing: 0;
    }
    article.shop .link-header {
        font-size: 14px;
        letter-spacing: 0;
        bottom: 8px;
    }
    table.table {
        font-size: 14px;
    }
    .table > thead > tr > th,
    .table > tbody > tr > th,
    .table > tfoot > tr > th,
    .table > thead > tr > td,
    .table > tbody > tr > td,
    .table > tfoot > tr > td {
        padding: 5px !important;
    }
    /*
    table.table tr td {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
    */
    .mobile-mt10 {
        margin-top: 10px;
    }
    .mobile-mt20 {
        margin-top: 20px;
    }
    .mobile-mt30 {
        margin-top: 30px;
    }
}


/* XSサイズ : Extra Small Devices, Phones */

@media only screen and (max-width: 480px) {}


/* カスタム, iPhone Retinaディスプレイ */

@media only screen and (max-width: 320px) {}


/* 2017.11.18追加 */
.metaslider .flex-control-nav {
    padding: 0 !important;
}
.metaslider .flex-control-nav li {
    margin: 0 !important;
}

/* 2018.7.4追加 */
/* フルワイドのセクション：GPのセクション利用時にCustom Classesに「generate-sections-fullwide」を設定 */
/* セクションの設定「Inner Box Type」を「Full Width」に変更しただけでは左右の余白が残るため、余白を０にする */
.generate-sections-fullwide .generate-sections-inside-container {
    padding-left: 0;
    padding-right: 0;
}
/* 2019.2.24追加 */
.mt55 {
    margin-top: 55px;
}
/* 2019.3.12 */
/* お知らせがオーバーフローした場合、改行させずに…表示 */
.info1column .information .text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* CF7のPタグ自動挿入調整 */
.wpcf7 table p:last-child { margin-bottom: 0; }
