@charset "UTF-8";
/* ============================================================
   牛タン炭火焼 わすけ（Iima00122）案件用の上書き
   テンプレ本体（style.css / style_responsive.css）は無改変
   ============================================================ */
:root { --insta-icon: 30px; }

/* ---- ヘッダーロゴ（テキストロゴ 859x384 / 約2.24:1） ---- */
.header_logo { max-width: 150px; }
.header_logo img { display: block; width: 100%; height: auto; }

/* ---- グロナビ：予約ボタン・Instagram（最右） ---- */
.gnav_wrap { align-items: center; }
.gnav_item.gnav_resv { display: flex; align-items: center; }
.gnav_resv .gmenu.btn {
    width: auto; height: var(--insta-icon); padding: 0 1.2vw;
    font-size: 1.1vw; letter-spacing: .1rem; line-height: 1;
}
.gnav_item.gnav_insta { display: flex; align-items: center; line-height: 1; }
.gnav_insta a { display: flex; align-items: center; line-height: 1; }
.gnav_insta img, .gmenu_sp_insta img, .footer_link_menu_insta img {
    width: var(--insta-icon); height: var(--insta-icon); object-fit: contain; display: block;
}

/* ---- SPドロワー ---- */
.header_nav_list_sp .gmenu_sp.btn {
    display: inline-flex; width: 200px; padding: 12px 0; font-size: 1.6rem;
}
.header_nav_list_sp_insta { display: flex; justify-content: center; }
.gmenu_sp_insta { display: flex !important; align-items: center; justify-content: center; line-height: 1; }

/* ---- フッターメニュー：予約（抜きチップ）・Instagram ---- */
.footer_link_list { align-items: center; flex-wrap: wrap; }
.footer_link_menu_resv .fmenu {
    display: inline-block; padding: 4px 14px; border: 1px solid rgba(255,255,255,.45); line-height: 1.6;
}
.footer_link_menu_insta { display: flex; align-items: center; justify-content: center; }
.footer_link_menu_insta .fmenu { display: flex; align-items: center; justify-content: center; line-height: 1; }
.footer_logoimg { width: 180px; }

/* ---- 下層ページMV（テンプレ既定 h1_bg.jpg を差し替え） ---- */
.heading1_wrap { background-image: url(../img/page-mv.jpg); }

/* ---- TOP COURSE 背景（PC既定=course1.jpg / SP既定=同梱なし top_bg002.jpg を差し替え） ---- */
.top_gallery { background-image: url(../img/top-course-bg.jpg); }
@media screen and (max-width: 767px) {
    .top_gallery { background: url(../img/top-course-bg.jpg) no-repeat center / cover; background-color: #000; }
}

/* ---- TOPギャラリーのループスライダー：枠(400x240/SP200x120)を埋める ---- */
#loopslider ul li img {
    width: 100%; height: 100%; object-fit: cover; object-position: center; display: block;
}

/* ---- ギャラリー：比率を4:3に統一（中央トリミング・歪めない） ---- */
.gallery_content_sec_item img {
    width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; object-position: center;
}

/* ---- こだわり：画像比率を3:2に統一 ---- */
.lawer_content_flex01_left img {
    width: 100%; aspect-ratio: 3 / 2; height: auto; object-fit: cover; object-position: center; display: block;
}

@media screen and (max-width: 767px) {
    /* SPヘッダー：ロゴを少し大きく／翻訳ウィジェットとハンバーガーの重なり回避 */
    .header_logo { width: 110px; max-width: none; flex-shrink: 0; }
    .header_inner_flex { justify-content: space-between; }
    .header_info { margin-left: auto; }
    .google_translate { margin-right: 72px; }
}

/* ---- 食べログ連携：クーポンUI非表示（一覧・ポップアップ両方） ---- */
.tblg-coupon-btn-wrap,
.tblg-coupon-toggle-btn,
.tblg-coupon-wrap,
.rstdtl-course-list__coupon,
.rstdtl-course-list__coupon-btn,
.rstdtl-course-list__coupon-contents,
.course-dtl__coupon,
.course-dtl__coupon-btn,
.course-dtl__coupon-contents,
.tblg-coupon,
.tblg-coupon__btn,
.tblg-coupon__main,
.tblg-coupon__main-inner,
.tblg-coupon__main-title,
.tblg-coupon__main-contents,
.tblg-coupon__list,
.tblg-coupon__item,
.tblg-coupon__text {
    display: none !important;
}

/* ---- ニュース詳細本文：CMS注入コンテンツも明朝体に統一 ---- */
.CMS-NEWS-CONTENT,
.CMS-NEWS-CONTENT * {
    font-family: "Noto Serif JP", "Crimson Text", "游明朝", "Yu Mincho",
        "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif !important;
}

/* ============================================================
   SP（iPhone Safari）コースページ崩れ修正
   ============================================================ */
@media screen and (max-width: 767px) {

    /* ---- メニューナビ（COURSE / FOOD / DRINK）3つを均等横並び ---- */
    .anchor_wrap {
        flex-wrap: nowrap;
    }
    .anchor {
        -webkit-flex: 0 0 33.333%;
        -ms-flex: 0 0 33.333%;
        flex: 0 0 33.333%;
    }

    /* ---- 食べログコースウィジェット：横はみ出し防止 ---- */
    .CMS-COURSE-MENU,
    .second,
    .second-nrw-course,
    .course-list,
    .course-list__items {
        max-width: 100% !important;
        width: 100% !important;
        overflow-x: hidden;
        -webkit-overflow-scrolling: auto;
    }

    /* ---- コースリスト：table → block に切替（Safari table崩れ対策） ---- */
    .rstdtl-course-list {
        display: block !important;
        width: 100% !important;
        overflow: hidden;
    }

    .rstdtl-course-list__data {
        display: block !important;
        width: 100% !important;
        padding: 15px 0 !important;
    }

    .rstdtl-course-list__data-header {
        display: block !important;
        width: 100% !important;
    }

    .rstdtl-course-list__course-title {
        display: block !important;
    }

    .rstdtl-course-list__price-wrap {
        display: block !important;
        white-space: normal !important;
    }

    .rstdtl-course-list__img {
        display: block !important;
        width: 100% !important;
    }

    .rstdtl-course-list__img img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }

    .rstdtl-course-list__option {
        display: block !important;
    }

    /* ---- コースタイトルテキスト：SP色を明示（CSS変数未定義対策） ---- */
    .rstdtl-course-list__course-title-text {
        color: #fff !important;
    }

    /* ---- コース説明テキスト ---- */
    .rstdtl-course-list__desc {
        color: #ccc !important;
        word-break: break-all;
    }

    /* ---- セクション全体の横はみ出し防止 ---- */
    #menu-body {
        overflow-x: hidden;
    }
}
