@charset "UTF-8";
/* BurgerPOLICE DINER 反映用 上書きCSS（テンプレ本体は非改変） */

/* ロゴ：画像未提供のためテキストロゴ（HS:おまかせ＝テキスト）
   ヘッダーはMV上に重なる透明背景でナビが白のため、ロゴも白＋影で統一 */
.header_logo .logo_txt {
    display: inline-block;
    font-family: "Libre Baskerville", "Noto Serif JP", serif;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .02em;
    color: #ffffff;
    text-shadow: #000 1px 0 6px;
    font-size: clamp(16px, 1.6vw, 24px);
    white-space: nowrap;
}

.footer_logo .footer_logo_txt,
.footer_logo .logo_txt {
    display: inline-block;
    font-family: "Libre Baskerville", "Noto Serif JP", serif;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .02em;
    color: #ffffff;
    font-size: 22px;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    .header_logo .logo_txt {
        font-size: 15px;
    }
    .footer_logo .footer_logo_txt,
    .footer_logo .logo_txt {
        font-size: 18px;
    }
}

/* グロナビ内のInstagramアイコン（CONTACTの右に配置） */
.gnav_insta a {
    display: inline-flex;
    align-items: center;
    padding: 0;
}
.gnav_insta img {
    width: 24px;
    height: 24px;
    object-fit: contain;
    display: block;
    vertical-align: middle;
}
/* SPドロワー内のInstagram：テキスト→アイコン */
.gmenu_sp_insta {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}
.gmenu_sp_insta img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

/* TOPギャラリーのループスライダー：各画像を中央基準でトリミング表示（見切れ防止） */
#loopslider ul li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* 下層ページのヒーローバナー：テンプレ既定のストック画像(top-concept.jpg)を店舗の実画像へ差し替え。
   食材写真は明るいため、白いページタイトルが読めるよう暗いオーバーレイを重ねる。 */
.main_gallery,
.main_access,
.main_menu,
.main_recruit {
    background-image: url(../img/top-concept.jpg);
}
.main_gallery::before,
.main_access::before,
.main_recruit::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .4);
    z-index: 1;
}
.main_logo_menu,
.main_logo_gallery,
.main_logo_access,
.main_logo_recruit {
    z-index: 2;
}


/* フッターグロナビ：予約・Instagramボタン */
.footer_link_list {
    align-items: center;
}

.footer_reserve_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    height: 40px;
    padding: 0 18px;
    border: 1px solid #fff;
    box-sizing: border-box;
    line-height: 1;
}

.footer_reserve_btn:hover {
    color: #000;
    background: #fff;
    opacity: 1;
}

.footer_insta_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    transition: opacity .5s;
}

.footer_insta_btn:hover {
    opacity: .7;
}

.footer_insta_btn img {
    display: block;
    width: 26px;
    height: 26px;
    object-fit: contain;
}

@media screen and (max-width: 767px) {
    .footer_link_menu.footer_reserve {
        margin-bottom: 20px;
    }

    .footer_link_menu.footer_insta {
        margin-bottom: 0;
    }

    .footer_reserve_btn {
        min-width: 160px;
        height: 44px;
    }

    .footer_insta_btn {
        width: 44px;
        height: 44px;
        margin: 0 auto;
    }

    .footer_insta_btn img {
        width: 28px;
        height: 28px;
    }
}

/* SPハンバーガーメニュー内：予約ボタン */
.gmenu_sp_reserve {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 160px;
    height: 44px;
    padding: 0 20px;
    border: 1px solid #1b1b1b;
    box-sizing: border-box;
    line-height: 1;
    letter-spacing: .2rem;
}

.header_nav_reserve_sp {
    margin: 10px 0 12px;
}
