@charset "UTF-8";
/* ==========================================================
   鉄板串焼 こみ山（Iima00128 / template105）上書き用CSS
   テンプレ本体（style.css / style_responsive.css）は触らず、ここで上書きする
   ========================================================== */

/* §1 body背景：template105 は body に background 指定が無い */
body {
    background: #fff;
}

/* §2 グロナビ：予約ボタン＋Instagramアイコン（最右） */
.gnav_wrap {
    align-items: center;
}

.gnav_item.gnav_resv .btn {
    width: 100px;
    justify-content: center;
    align-items: center;
}

.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 {
    width: 32px;
    height: 32px;
    object-fit: contain;
    display: block;
}

@media screen and (max-width: 767px) {
    .header_nav_list_sp_resv .btn {
        width: 150px;
        margin: 0 auto;
    }

    .header_nav_list_sp_insta {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .header_nav_list_sp a.gmenu_sp.gmenu_sp_insta {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 36px;
        margin: 10px auto 0;
        line-height: 1;
    }

    .gmenu_sp_insta img {
        width: 36px;
        height: 36px;
        object-fit: contain;
        display: block;
    }
}

/* §3 Instagram連携：HS「横4×縦2段／PCもSPも横4」
   既定は3列6枚（nth-child(3n) と 7〜9番目 display:none）→ gap方式で4列8枚に */
.CMS-INSTAGRAM-LIST {
    gap: 10px;
}

.CMS-INSTAGRAM-LIST a {
    width: calc((100% - 30px) / 4);
    margin: 0 !important;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.CMS-INSTAGRAM-LIST a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.CMS-INSTAGRAM-LIST a:nth-of-type(7),
.CMS-INSTAGRAM-LIST a:nth-of-type(8) {
    display: block;
}

.CMS-INSTAGRAM-LIST a:nth-of-type(n+9) {
    display: none;
}

@media screen and (max-width: 767px) {
    .CMS-INSTAGRAM-LIST {
        gap: 6px;
    }

    .CMS-INSTAGRAM-LIST a {
        width: calc((100% - 18px) / 4);
    }
}

/* §4 TOPギャラリーのループスライダー：中央基準でトリミング */
#loopslider ul li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* §5 下層ページMV：テンプレ既定 h1_bg.jpg → 案件画像＋暗幕 */
.heading1_wrap {
    background-image: url(../img/page-mv.jpg);
}

.heading1_wrap::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.3);
}

.heading1 {
    z-index: 1;
}

/* §7 フッターメニュー：予約（抜きチップ）＋Instagram（最右） */
.footer_link_list {
    align-items: center;
}

.footer_link_menu_resv .fmenu {
    display: inline-block;
    border: 1px solid rgba(255, 255, 255, 0.45);
    padding: 10px 18px;
    line-height: 1;
}

.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_link_menu_insta img {
    width: 26px;
    height: 26px;
    object-fit: contain;
    display: block;
}

/* §8 ギャラリー：写真の比率を統一（ga8 だけ 4:3 で縦長になるため）
   多数派の 16:9 に揃え、中央基準でトリミング（引き伸ばさない） */
.gallery_content_sec_item img {
    aspect-ratio: 16 / 9;
    height: auto;
    object-fit: cover;
    object-position: center;
}

/* 必須マーク */
.req {
    display: inline-block;
    background: #c0392b;
    color: #fff;
    font-size: 11px;
    font-weight: bold;
    padding: 2px 6px;
    margin-left: 8px;
    border-radius: 2px;
    vertical-align: middle;
    letter-spacing: 0.05em;
}
