@charset "utf-8";
#loading {
    width: 100%;
    height: 100vh;
    background-color: #ffffff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100000;
    transition: .8s;
    opacity: 1;
}
#loading._loaded {
    pointer-events: none;
    opacity: 0;
    transition-delay: .2s;
}
    .loading__inner{
        width: 100%;
        height: 100%;
        background-image: url(../image/bg_image@pc.webp);
        background-size: 100% auto;
        background-position: top center;
        position: relative;
    }
        .loading__contents {
            width: calc((188 / 1280) * 100%);
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            z-index: 2;
            opacity: 0;
            transition: 0.8s;
            will-change: opacity;
        }
        ._show.loading__contents {
            opacity: 1;
        }
        ._loaded ._show.loading__contents {
            transition: .4s;
            opacity: 0;
        }
            .loading__animation {
                width: 100%;
                height: auto;
                margin: 0 auto;
            }
            .loading__progress {
                width: 100%;
                height: auto;
                font-size: 14px;
                font-weight: 700;
                line-height: 2.2;
                letter-spacing: 0.15em;
                text-align: center;
                color: #242424;
            }

#l_wrapper{
    width: 100%;
    height: auto;
}
#hero{
    width: 100%;
    height: 100vh;
}
    .hero__inner{
        width: 100%;
        height: 100%;
        position: relative;
    }
        .hero__bg{
            width: 100%;
            height: 100%;
            position: relative;
            overflow: hidden;
        }
            .hero__bg::before {
                content: "";
                display: block;
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                background-color: #000000;
                opacity: 0.4;
                z-index: 1;
            }
            .hero__bg video {
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: center;
                transform: scale(1.08);
                transition: 1.6s;
            }
            .hero__bg video._loaded {
                transform: scale(1);
            }
        .hero__logo{
            width: 275px;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            z-index: 2;
            will-change: transform;
        }
        .hero__scroll_contents{
            width: fit-content;
            height: auto;
            display: flex;
            flex-direction: column;
            row-gap: 9px;
            position: absolute;
            bottom: calc((106 / 1280) * 100vw);
            right: calc((64 / 1280) * 100vw);
            z-index: 2;
        }
            .hero__scroll_contents_txt{
                writing-mode: vertical-rl;
                font-size: clamp(10px, 1vw, 14px);
                font-weight: 400;
                line-height: 1;
                letter-spacing: 0.15em;
                color: #FFFFFF;
            }
            .hero__scroll_contents_arrow{
                width: 12px;
                height: auto;
                transform: translateY(0);
                animation: hero__scroll_contents_arrow 1.4s infinite ease;
            }
            @keyframes hero__scroll_contents_arrow {
                0%{
                    transform: translateY(0);
                }
                50%{
                    transform: translateY(10px);
                }
                100%{
                    transform: translateY(0);
                }
            }
#about{
    width: 100%;
    height: auto;
}
    .about__inner{
        width: 70%;
        height: auto;
        margin: 0 auto;
        max-width: 872px;
    }
        .about__contents{
            width: 100%;
            height: auto;
            display: flex;
            flex-direction: row-reverse;
            justify-content: space-between;
            align-items: flex-start;
            padding: 110px 0 120px 0;
        }
            .about__heading{
                width: fit-content;
                height: auto;
                display: flex;
                flex-direction: row-reverse;
            }
                .about__heading_txt{
                    font-size: clamp(30px, 3vw, 40px);
                    font-weight: 400;
                    line-height: 1.2;
                    letter-spacing: 0.2em;
                    color: #232423;
                    writing-mode: vertical-rl;
                    font-feature-settings: "palt";
                    padding-left: clamp(3px, 1vw, 13px);
                }
                .about__heading_txt:last-of-type{
                    margin-top: clamp(74px, 7.5vw, 97px);
                }
                .about__heading_txt .__mid_large{
                    font-size: clamp(28px, 2.6vw, 34px);
                    font-weight: 400;
                    line-height: 1.2;
                    letter-spacing: 0.2em;
                    font-feature-settings: "palt";
                }
                .about__heading_txt .__large{
                    display: inline-block;
                    font-size: clamp(30px, 3.2vw, 42px);
                    font-weight: 400;
                    line-height: 1.2;
                    letter-spacing: 0.2em;
                    padding: 8px 0;
                    margin: 10px 0;
                    position: relative;
                }
                .about__heading_txt .__large::before{
                    content: "「";
                    display: block;

                    font-size: clamp(28px, 2.6vw, 34px);
                    font-weight: 400;
                    line-height: 1;
                    letter-spacing: 0;
                    color: #232423;
                    writing-mode: vertical-rl;
                    font-feature-settings: "palt";
                    position: absolute;
                    top: -17px;
                    right: 0;
                }
                .about__heading_txt .__large::after{
                    content: "」";
                    display: block;
                    font-size: clamp(28px, 2.6vw, 34px);
                    font-weight: 400;
                    line-height: 1;
                    letter-spacing: 0;
                    color: #232423;
                    writing-mode: vertical-rl;
                    font-feature-settings: "palt";
                    position: absolute;
                    bottom: -17px;
                    left: 0;
                }
                .about__heading_txt:last-of-type{
                    padding: 0;
                }
            .about__dtl_wrap{
                display: flex;
                flex-direction: column-reverse;
                row-gap: 62px;
            }
                .about__dtl_image{
                    width: 85%;
                    height: auto;
                }
            .about__dtl{
                width: 100%;
                height: auto;
                padding-top: 158px;
            }
                .about__dtl_txt{
                    font-weight: 500;
                    font-size: clamp(14px, 1.3vw,16px);
                    line-height: 2;
                    letter-spacing: 0.15em;
                    color: #232423;
                }
#belt__area {
    width: 100%;
    height: auto;
    overflow: hidden;
}
    .belt__track {
        display: flex;
        width: max-content;
        animation: infinity-scroll-left 60s linear infinite;
        will-change: transform;
    }
        .belt__list {
            display: flex;
            flex-shrink: 0;
        }
            .belt__item {
                width: 498px;
                flex-shrink: 0;
            }
        @keyframes infinity-scroll-left {
            from {
                transform: translateX(0);
            }
            to {
                transform: translateX(-50%);
            }
        }
#commitment{
    width: 100%;
    height: auto;
    position: relative;
}
#commitment::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #A29E95;
    mix-blend-mode: multiply;
}
    .commitment__inner{
        width: calc((994 / 1280) * 100%);
        height: auto;
        margin: 0 auto;
        padding: calc((124 / 810) * 100vh) 0 133px 0;
        position: relative;
        z-index: 1;
    }
@media all and (max-width:999px){
    .commitment__inner{
        width: 90%;
    }
}
        .commitment__container{
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
        }
            .commitment__heading{
                width: 100%;
                height: auto;
            }
                .commitment__heading_main{
                    font-size: min(calc((42 / 994) * 100vw), 42px);
                    font-size: clamp(30px, 3.2vw, 42px);
                    font-weight: 400;
                    line-height: 1.5;
                    letter-spacing: -0.15em;
                    font-feature-settings: 'vert' on;
                    color: #FFFFFF;
                }
                .commitment__heading_sub{
                    font-size: min(calc((12 / 1280) * 100vw), 12px);
                    font-weight: 600;
                    line-height: 2.2;
                    letter-spacing: 0.2em;
                    font-feature-settings: 'vert' on;
                    color: #FFFFFF;
                    padding-bottom: 40px;
                }
            .commitment__thumn_list{
                width: calc((429 / 994) * 100%);
                position: sticky;
                position: -webkit-sticky;
                top: calc((124 / 810) * 100vh);
                left: 0;
            }
                .commitment__thumn_list__inner{
                    display: flex;
                    align-items: center;
                    column-gap: 20px;
                }
                    .commitment__thumn_item{
                        width: 100%;
                        height: auto;
                    }
                        .commitment__thumn_item a {
                            display: block;
                        }
                        .commitment__thumn_ttl{
                            font-size: 9px;
                            font-weight: 700;
                            letter-spacing: 0;
                            line-height: 1;
                            color: #FFFFFF;
                            display: flex;
                            flex-direction: column;
                            align-items: center;
                            padding-bottom: 12px;
                        }
                            .commitment__thumn_ttl span{
                                display: block;
                                font-size: 32px;
                                font-weight: 700;
                                line-height: 1;
                                letter-spacing: 0.05em;
                            }
                        .commitment__thumn_nav{
                            width: 100%;
                            height: auto;
                            aspect-ratio: 1 / 1;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                            border: solid 1px rgba(255, 255, 255, 0.4);
                            border-radius: 50%;
                            transition: 0.3s;
                        }
                            .commitment__thumn_item a.target-before .commitment__thumn_nav{
                                background-color: rgba(255, 255, 255, 0);
                            }
                            /* 現在表示中: 強調表示 */
                            .commitment__thumn_item a.target-current .commitment__thumn_nav{
                                background-color: rgba(255, 255, 255, 1);
                            }
                            /* スクロール未到達: 濃いグレー */
                            .commitment__thumn_item a.target-after .commitment__thumn_nav{
                                background-color: rgba(255, 255, 255, 0);
                            }
                            .commitment__thumn_nav_svg{
                                width: 60%;
                                transition: 0.3s;
                            }
                            .commitment__thumn_item a.target-before .commitment__thumn_nav_svg > path{
                                opacity: 0.4;
                            }
                            /* 現在表示中: 強調表示 */
                            .commitment__thumn_item a.target-current .commitment__thumn_nav_svg > path{
                                fill: #615F55;
                                opacity: 1;
                            }
                            /* スクロール未到達: 濃いグレー */
                            .commitment__thumn_item a.target-after .commitment__thumn_nav_svg > path{
                                opacity: 0.4;
                            }
            .commitment__contetents_list{
                width: calc(485 / 994 * 100%);
                height: auto;
            }
                .commitment__contetents_item{
                    display: flex;
                    align-items: center;
                    width: 100%;
                    height: auto;
                }
                .commitment__contetents_item:not(:last-of-type){
                    padding-bottom: calc((124 / 810) * 100vh);
                }
                    .commitment__contetents_item__inner {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        height: auto;
                        /* padding: min(calc((300 / 485) * 100%), 300px) min(calc((46 / 1280) * 100vw), 46px) min(calc((64 / 1280) * 100vw), 64px); */
                        padding: calc((300 / 485) * 100%) calc((46 / 1280) * 100vw) calc((64 / 1280) * 100vw);
                        position: relative;
                        border: 1px solid #fff;
                        border-radius: 12px;
                    }
                        .commitment__contetents_label{
                            font-size: 14px;
                            font-weight: 900;
                            line-height: 2.2;
                            letter-spacing: 0.15em;
                            color: #96928B;
                            padding: 10px 15px 9px 16px;
                            background-color: #fff;
                            position: absolute;
                            top: 30px;
                            left: -30px;
                            display: flex;
                            align-items: center;
                            justify-content: center;
                            z-index: 2;
                        }
                            .commitment__contetents_label span{
                                display: block;
                                font-size: 24px;
                                font-weight: 600;
                                line-height: 1;
                                letter-spacing: 0.05em;
                                padding-right: 2px;
                            }
                        .commitment__contetents_image{
                            width: 100%;
                            height: auto;
                            position: absolute;
                            top: calc((30 / 1280) * 100vw);
                            left: 0;
                            z-index: 1;
                            pointer-events: none;
                        }
                            .commitment__contetents_ttl{
                                display: flex;
                                justify-content: center;
                                align-items: center;
                                width: 100%;
                                /* height: min(calc((109 / 1280) * 100vw), 109px); */
                                height: calc((109 / 1280) * 100vw);
                                /* font-size: min(calc((32 / 1280) * 100vw), 32px); */
                                font-size: calc((32 / 1280) * 100vw);
                                font-weight: 400;
                                line-height: 1.3;
                                letter-spacing: 0.1em;
                                color: #FFFFFF;
                                /* padding-bottom: min(calc((24 / 1280) * 100vw), 24px); */
                                padding-bottom: calc((24 / 1280) * 100vw);
                                border-bottom: 1px solid #FFFFFF;
                                text-align: center;
                            }
                            .commitment__contetents_dtl{
                                /* font-size: min(calc((16 / 1280) * 100vw), 16px); */
                                font-size: calc((16 / 1280) * 100vw);
                                font-weight: 500;
                                line-height: 1.8;
                                letter-spacing: 0.08em;
                                color: #FFFFFF;
                                padding-top: 4.3%;
                            }
#menu{
    width: 100%;
    height: auto;
}
    .menu__inner{
        width: 68%;
        height: auto;
        margin: 0 auto;
        max-width: 880px;
        padding: 100px 0;
    }
        .menu__ttl{
            width: 100%;
            height: auto;
        }
            .menu__ttl_main{
                width: 100%;
                height: auto;
                font-size: clamp(30px, 3vw, 42px);
                font-weight: 400;
                line-height: 1.5;
                text-align: center;
                letter-spacing: 0.12em;
                color: #232423;
            }
            .menu__ttl_sub{
                font-size: clamp(12px, 1vw, 12px);
                font-weight: 600;
                line-height: 2.2;
                text-align: center;
                letter-spacing: 0.2em;
                color: #232423;
                padding: 12px 0 48px 0;
            }
        .menu__image{
            width: 100%;
            height: auto;
            margin: 0 auto;
        }
        .menu__dtl_contents{
            width: 100%;
            height: auto;
        }
            .menu__dtl_contents_dt_wrap{
                width: 100%;
                height: auto;
                display: block; 
            }
                .menu__dtl_contents_dt{
                    width: 100%;
                    height: auto;
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    padding: 46px 0 20px 0;
                    border-bottom: 1px solid #A0A0A0;
                }
                    .menu__dtl_contents_name{
                        font-size: clamp(20px, 2.3vw, 30px);
                        font-weight: 400;
                        line-height: 1.8;
                        letter-spacing: 0.12em;
                        color: #232423;
                    }
                    .menu__dtl_contents_price{
                        font-size: clamp(20px, 2.3vw, 30px);
                        font-weight: 400;
                        line-height: 1.8;
                        letter-spacing: 0.12em;
                        color: #232423;
                    }
                        .menu__dtl_contents_price span{
                            font-size: clamp(12px, 0.9vw ,12px);
                            font-weight: 400;
                            line-height: 1.8;
                            letter-spacing: 0.12em;
                            color: #232423;
                        }
                .menu__dtl_contents_dd{
                    width: 100%;
                    height: auto;
                    display: flex;
                    align-items: center;
                    padding: 20px 0 10px 0;
                }
                    .menu__dtl_contents_dd_txt{
                        font-size: clamp(14px, 1vw, 14px);
                        font-weight: 400;
                        line-height: 1.8;
                        letter-spacing: 0.1em;
                        color: #232423;
                        padding-left: 30px;
                        position: relative;
                    }
                    .menu__dtl_contents_dd_txt:first-of-type{
                        padding-left: 0;
                    }
                        .menu__dtl_contents_dd_txt::before{
                            content: "";
                            display: block;
                            width: 4px;
                            height: 4px;
                            border-radius: 50%;
                            background: #232423;
                            position: absolute;
                            top: 50%;
                            left: 13px;
                            transform: translateY(-50%);
                        }
                        .menu__dtl_contents_dd_txt:first-of-type::before{
                            display: none;
                        }  
                .menu__dtl_contents_refills{
                    width: fit-content;
                    padding: 10px 12px;
                    background-color: #232423;
                    display: flex;
                    margin-bottom: 60px;
                    line-height: 1;
                    letter-spacing: 0.1;
                }
                    .menu__dtl_contents_refills_txt{
                        font-size: clamp(12px, 0.9vw, 12px);
                        color: #FFFFFF;
                        padding-right: 14px;
                    }
                    .menu__dtl_contents_refills_txt:last-of-type{
                        padding-right: 0px;
                        padding-left: 14px;
                        border-left: #FFFFFF solid 1px;
                    }
        .menu__drink{
            width: 100%;
            height: auto;
            border: 1px solid #232423;
            border-radius: 10px;
        }
            .menu__drink_heading{
                width: 100%;
                height: auto;
                padding: 30px 35px;
                cursor: pointer;
            }
                .menu__drink_heading_txt{
                    font-size: clamp(16px, 1.7vw ,22px);
                    font-weight: 400;
                    line-height: 1.8;
                    letter-spacing: 0.12em;
                    color: #232423;
                    position: relative;
                }
                .menu__drink_heading_txt::before{
                    content: "";
                    display: block;
                    width: 20px;
                    height: 1px;
                    background-color: #232423;
                    position: absolute;
                    top: 50%;
                    right: 0;
                    transform: translateY(-50%);
                }
                .menu__drink_heading_txt::after{
                    content: "";
                    display: block;
                    width: 20px;
                    height: 1px;
                    background-color: #232423;
                    position: absolute;
                    top: 50%;
                    right: 0;
                    transition: 0.4s;
                    transform: rotate(-90deg) translateY(-50%);
                }
                .active .menu__drink_heading_txt::after{
                    transform: rotate(0deg);
                }
            .menu__drink_container{
                display: none;
                width: 100%;
                height: auto;
                padding: 0 35px 30px 35px;
            }
                .menu__drink_contents_list{
                    width: 100%;
                    height: auto;
                    margin: 0 auto;
                    position: relative;
                }
                .menu__drink_contents_list:first-of-type::before{
                    content: "";
                    width: 100%;
                    height: 1px;
                    background-image: url(../image/dashed.svg);
                    background-position: top left;
                    background-size: contain;
                    background-repeat: repeat-x;
                    position: absolute;
                    bottom: 0;
                    left: 0;
                }
                .menu__drink_contents_list:first-of-type{
                    border-top:  1px solid #A0A0A0;
                }
                    .menu__drink_contents_list:first-of-type .menu__drink_item{
                        padding: 30px 0;
                    }
                    .menu__drink_item{
                        width: 100%;
                        height: auto;
                        margin: 0 auto;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                        padding: 25px 0 0 0;
                        max-width: 720px;
                    }
                    .menu__drink_item:last-of-type{
                        padding: 25px 0 15px 0;
                    }
                        .menu__drink_name{
                            font-size: clamp(14px, 1.1vw ,15px);
                            font-weight: 400;
                            line-height: 1.4;
                            letter-spacing: 0.2em;
                            color: #232423;
                        }
                            .menu__drink_name span{
                                padding: 1px 6px 2px 6px;
                                background-color: #959189;
                                border-radius: 2px;
                                font-size: clamp(12px, 0.9vw ,12px);
                                font-weight: 500;
                                line-height: 1.4;
                                letter-spacing: 0.04em;
                                color: #FFFFFF;
                                margin-left: 11px;
                            }
                        .menu__drink_price{
                            font-size: clamp(15px, 1.1vw, 15px);
                            font-weight: 400;
                            line-height: 1.4;
                            color: #232423;
                        }
                            .menu__drink_price span{
                                font-size: clamp(12px, 0.9vw, 12px);
                                font-weight: 400;
                                line-height: 1.4;
                                color: #232423;
                            }
#eye_catch {
    width: 100%;
    height: calc((750 / 1440) * 100vw);
    overflow: hidden;
    max-height: 900px;
}
    .eye_catch__image {
        position: relative;
        width: 100%;
        height: 100%;
    }
        .eye_catch__image_inner {
            position: absolute;
            top: 50%;
            left: 0;
            width: 100%;
            height: auto;
            will-change: transform;
        }
            .eye_catch__image_inner img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
                will-change: transform;
            }
#way_to_eat__area{
    width: 100%;
    height: auto;
}
    .way_to_eat__inner{
        width: 90%;
        height: auto;
        margin: 0 auto;
        max-width: 1010px;
        padding: 110px 0 140px 0;
    }
        .way_to_eat__ttl{
            width: 100%;
            height: auto;
        }
            .way_to_eat__ttl_main{
                width: 100%;
                height: auto;
                font-size: clamp(30px, 3vw, 42px);
                font-weight: 400;
                line-height: 1.5;
                text-align: center;
                letter-spacing: 0.12em;
                color: #232423;
            }
            .way_to_eat__ttl_sub{
                font-size: clamp(12px, 1vw, 12px);
                font-weight: 600;
                line-height: 2.2;
                text-align: center;
                letter-spacing: 0.2em;
                color: #232423;
                padding: 12px 0 48px 0;
            }
        .way_to_eat__contents{
            width: 100%;
            height: auto;
        }
            .way_to_eat__contents__swiper{
                width: 100%;
                height: auto;
            }
                .swiper-wrapper{
                    width: 100%;
                    height: auto;
                    column-gap: 10px;
                }
                    .way_to_eat__contents__swiper_slide.swiper-slide{
                        width: 330px;
                        height: auto;
                        padding: 74px 30px 30px 30px;
                        position: relative;
                        border-radius: 5px;
                        background-image: url(../image/sp_wte_bg.webp);
                        background-position: center;
                        background-size: cover;
                        background-repeat: no-repeat;
                    }
                        .way_to_eat__contents__swiper_slide_headong{
                            position: absolute;
                            top: 0;
                            left: 0;
                        }
                        .way_to_eat__contents__swiper_slide_image{
                            width: 100%;
                            height: auto;
                        }
                        .way_to_eat__contents__swiper_slide_txt{
                            font-size: clamp(14px, 1.25vw, 16px);
                            font-weight: 700;
                            line-height: 1.5;
                            letter-spacing: 0.1em;
                            color: #232423;
                        }
#shop_info{
    width: 100%;
    height: auto;
    padding-bottom: 150px;
    position: relative;
}
    #shop_info::before{
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background-color: #A29E95;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        mix-blend-mode: multiply;
    }
    .shop_info__inner{
        width: 90%;
        height: auto;
        margin: 0 auto;
        max-width: 1140px;
        position: relative;
        border-radius: 14px;
        overflow: hidden;
        padding: 96px 74px 80px 74px;
        z-index: 2;
    }
            .shop_info__container{
                position: relative;
                z-index: 2;
            }
                .shop_info__ttl{
                    width: 100%;
                    height: auto;
                    position: relative;
                }
                    .shop_info__ttl_main{
                        font-size: clamp(30px, 3.2vw ,42px);
                        font-weight: 400;
                        line-height: 1.5;
                        text-align: center;
                        letter-spacing: 0.12em;
                        color: #FFFFFF;
                    }
                        .shop_info__ttl_sub{
                            font-size: clamp(12px, 0.9vw ,12px);
                            font-weight: 600;
                            line-height: 2.2;
                            text-align: center;
                            letter-spacing: 0.2em;
                            color: #FFFFFF;
                            padding: 2px 0 33px 0;
                        }
                .shop_info__contents{
                    width: 100%;
                    height: auto;
                    position: relative;
                }
                    .shop_info__contents_image{
                        width: 100%;
                        height: auto;
                        padding-bottom: 35px;
                    }
                    .shop_info__contents_heading_wrap{
                        width: 100%;
                        height: auto;
                        position: relative;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                    }
                        .shop_info__contents_heading{
                            font-size: clamp(20px, 2vw ,26px);
                            font-weight: 400;
                            line-height: 1.5;
                            letter-spacing: 0.12em;
                            color: #FFFFFF;
                            padding: 0 27px 0 17px;
                            position: relative;
                            margin-right: 30px;
                        }
                            .shop_info__contents_heading::before{
                                content: "";
                                display: block;
                                width: 6px;
                                height: 6px;
                                background-color: #FFFFFF;
                                border-radius: 50%;
                                position: absolute;
                                top: 50%;
                                left: 0;
                                transform: translateY(-50%);
                            }
                        .shop_info__contents_link{
                            width: 221px;
                            padding: 16px 23px;
                            background-color: #232423;
                            border: 1px solid #232423;
                            border-radius: 4px;
                            transition: 0.3s;
                            position: relative;
                            white-space: nowrap;
                        }
                        html[lang="en"] .shop_info__contents_link{
                            padding: 14px 23px 18px;
                        }
                        .shop_info__contents_link:hover{
                            background-color: #fff;
                        }
                            .shop_info__contents_link_main{
                                font-size: clamp(14px, 1.25vw, 16px);
                                font-weight: 400;
                                line-height: 1.4;
                                letter-spacing: 0.1em;
                                color: #FFFFFF;
                            }
                            .shop_info__contents_link_sub{
                                font-size: clamp(10px, 0.9vw, 12px);
                                font-weight: 400;
                                line-height: 1.4;
                                letter-spacing: 0.1em;
                                color: #FFFFFF;
                            }
                            html[lang="ja"] .shop_info__contents_link_sub{
                                margin-top: 2px;
                                padding-left: 3px;
                            }
                            .shop_info__contents_link p{
                                transition: 0.3s;
                            }
                            .shop_info__contents_link:hover p{
                                color: #232423;
                            }
                            .shop_info__contents_link_arrow{
                                width: clamp(17px, 0.9vw, 12px);
                                position: absolute;
                                top: 50%;
                                right: 23px;
                                transform: translateY(-50%);
                            }
                                .shop_info__contents_link_arrow_storke{
                                    transition: 0.3s;
                                }
                                .shop_info__contents_link:hover .shop_info__contents_link_arrow_storke {
                                    stroke: #232423;
                                }
                        .shop_info__contents_dtl{
                            width: 100%;
                            height: auto;
                            display: flex;
                            column-gap: 90px;
                            padding: 27px 0 0 0;
                        }
                            .shop_info__contents_dtl_list{
                                width: 35%;
                            }
                            .shop_info__contents_dtl_list._largge{
                                width: 65%;
                            }
                                .shop_info__contents_dtl_item{
                                    display: flex;
                                    align-items: flex-start;
                                    column-gap: 40px;
                                    position: relative;
                                }
                                    .shop_info__contents_dtl_term{
                                        width: 105px;
                                        height: auto;
                                        font-size: clamp(14px, 1vw, 14px);
                                        font-weight: 500;
                                        line-height: 1.5;
                                        letter-spacing: 0.2em;
                                        color: #FFFFFF;
                                        position: relative;
                                        padding-top: 6px;
                                        min-width: 105px;
                                    }
                                    .shop_info__contents_dtl_item:first-of-type .shop_info__contents_dtl_term{
                                        padding-top: 0;
                                    }
                                        /* .shop_info__contents_dtl_term::after{
                                            content: "";
                                            display: block;
                                            width: 1px;
                                            height: 100%;
                                            position: absolute;
                                            top: 0;
                                            right: -19.5px;
                                            background-color: #FFFFFF;
                                        } */
                                    .shop_info__contents_dtl_info{
                                        font-size: clamp(14px, 1vw, 14px);
                                        font-weight: 500;
                                        line-height: 1.5;
                                        letter-spacing: 0.2em;
                                        color: #FFFFFF;
                                        padding-top: 6px;
                                        position: relative;
                                    }
                                        .shop_info__contents_dtl_info::after{
                                            content: "";
                                            display: block;
                                            width: 1px;
                                            height: 100%;
                                            position: absolute;
                                            top: 0;
                                            left: -19.5px;
                                            background-color: #FFFFFF;
                                        }
                                        .shop_info__contents_dtl_info a {
                                            color: #FFFFFF;
                                        }
                                    @media (any-hover: hover) {
                                        .shop_info__contents_dtl_info a:hover {
                                            text-decoration: underline;
                                        }
                                    }
                                    .shop_info__contents_dtl_item:first-of-type .shop_info__contents_dtl_info{
                                        padding-top: 0;
                                    }
                
/* SP ================================================== */
@media all and (max-width:820px){
:root {
    --vh: 1vh;
}

    .loading__inner{
        height: 100dvh;
        background-image: url(../image/bg_image@sp.webp);
    }
        .loading__contents {
            width: 188px;
        }

#hero{
    height: 100svh;
}
        .hero__logo{
            width: 203px;
        }
            .hero__bg video {
                transform: scale(1.1);
                transition: 1.6s;
            }
        .hero__scroll_contents{
            row-gap: 8px;
            position: absolute;
            bottom: calc((45 / 375) * 100vw);
            left: calc((40 / 1280) * 100vw);
            right: unset;
        }
    .about__inner{
        width: 84%;
    }
        .about__contents{
            padding: 44px 0 90px 0;
            flex-direction: column;
            align-items: center;
        }
            .about__heading{
                padding-bottom: 40px;
            }
                .about__heading_txt{
                    font-size: clamp(30px, 3vw, 40px);
                    line-height: 1.5;
                    font-feature-settings: 'vert' on;
                    color: #232423;
                    writing-mode: vertical-rl;
                    padding-left: clamp(3px, 1vw, 13px);
                }
                .about__heading_txt:last-of-type{
                    margin-top: 0;
                }
                    .about__heading_txt .__large {
                        padding: 8px 0 5px 0;
                        margin: 5px 0 10px 0;
                    }
            .about__dtl_wrap{
                display: flex;
                flex-direction: column;
                align-items: center;
                row-gap: 51px;
            }
                .about__dtl_image{
                    width: 100%;
                    height: auto;
                    margin: 0 auto;
                }
            .about__dtl{
                width: fit-content;
                padding-top: 0;
            }
                .about__dtl_txt{
                    font-weight: 500;
                    font-size: clamp(14px, 1.3vw,16px);
                    line-height: 2;
                    letter-spacing: 0.15em;
                    color: #232423;
                }
            .belt__item{
                width: 281px;
            }
    .commitment__inner{
        width: 100%;
        padding: 60px 0 0 0;
    }
        .commitment__heading{
            width: 100%;
            height: auto;
            padding-left: 0;
        }
            .commitment__heading_main{
                font-size: 30px;
                letter-spacing: 0.12em;
                text-align: center;
            }
            .commitment__heading_sub{
                padding-bottom: 30px;
                font-size: 12px;
                line-height: 2.2;
                text-align: center;
            }
        .commitment__container{
            display: block;
        }
            .commitment__thumn_list{
                width: 100%;
                /* height: 76px; */
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;

                /* top: calc(100vh - 76px); */
                /* top: calc(var(--vh) * 100 - 76px); */
                z-index: 10;
                transition: 0.3s;
                pointer-events: none;
            }
            .commitment__thumn_list_wrap {
                width: 100%;
                height: 100dvh;
                position: sticky;
                top: 0;
                left: 0;
                z-index: 1;
            }
                .commitment__thumn_list__inner {
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    column-gap: 14px;
                    width: 100%;
                    height: 76px;
                    background-color: #fff;
                    padding: 18px 38px;
                    position: absolute;
                    bottom: 0;
                    left: 0;
                    pointer-events: auto;
                }
                    .commitment__thumn_item{
                        flex: 1;
                        height: 100%;
                    }
                        .commitment__thumn_item a{
                            display: flex;
                            justify-content: center;
                            align-items: center;
                            width: 100%;
                            height: 100%;
                            padding: 0;
                            border: solid 1px #232423;
                            border-radius: 4px;
                            transition: 0.3s;
                        }
                            .commitment__thumn_ttl{
                                font-size: 10px;
                                display: flex;
                                flex-direction: row;
                                padding: 0;
                                color: #232423;
                            }
                                .commitment__thumn_ttl span{
                                    font-size: 14px;
                                }
                            .commitment__thumn_nav.view_pc{
                                display: none;
                            }
                                .commitment__thumn_item a.target-before{
                                    border: solid 1px #232423;
                                }
                                /* 現在表示中: 強調表示 */
                                .commitment__thumn_item a.target-current{
                                    border: solid 1px #969289;
                                    background-color: #969289;
                                }
                                /* スクロール未到達: 濃いグレー */
                                .commitment__thumn_item a.target-after{
                                    border: solid 1px #232423;
                                }
                                .commitment__thumn_item a.target-before .commitment__thumn_ttl{
                                    color: #232423;
                                }
                                /* 現在表示中: 強調表示 */
                                .commitment__thumn_item a.target-current .commitment__thumn_ttl{
                                    color: #fff;
                                }
                                /* スクロール未到達: 濃いグレー */
                                .commitment__thumn_item a.target-after .commitment__thumn_ttl{
                                    color: #232423;
                                }
            .commitment__contetents_list{
                width: 84%;
                padding-bottom: 118px;
                margin: 0 auto;
            }
                .commitment__contetents_item:not(:last-of-type){
                    padding-bottom: 50px;
                }
                    .commitment__contetents_item{
                        padding-bottom: 0;
                    }
                        .commitment__contetents_item__inner {
                            padding: 185px calc(25 / 375 * 100vw) 42px;
                        }
                        .commitment__contetents_label{
                            top: 18px;
                            left: -20px;
                            font-size: 10px;
                            padding: 4px 6px 4px 7px;
                        }
                            .commitment__contetents_label span{
                                font-size: 14px;
                            }
                        .commitment__contetents_image{
                            width: 313px;
                            top: 19px;
                            left: 50%;
                            transform: translateX(-50%);
                        }
                        .commitment__contetents_ttl{
                            height: 68px;
                            padding-bottom: 13px;
                            font-size: 20px;
                            line-height: 1.3;
                        }
                        .commitment__contetents_dtl{
                            padding-top: 12px;
                            font-size: 14px;
                            line-height: 1.8;
                            letter-spacing: 0.08em;
                        }



    .menu__inner{
        width: 85%;
        padding: 70px 0 65px 0;
    }
            .menu__ttl_sub{
                padding: 0px 0 20px 0;
            }
        .menu__image{
            width: 100%;
            height: auto;
            margin: 0 auto;
        }
        .menu__dtl_contents{
            width: 100%;
            height: auto;
        }
            .menu__dtl_contents_dt{
                flex-direction: column;
                align-items: center;
                padding: 12px 0 20px 0;
            }
                .menu__dtl_contents_name{
                    width: 100%;
                }
                .menu__dtl_contents_price{
                    width: 100%;
                    text-align: end;
                }
            .menu__dtl_contents_dd{
                flex-direction: column;
                row-gap: 2px;
                align-items: flex-start;
                padding: 20px 0 20px 0;
            }
                .menu__dtl_contents_dd_txt{
                    padding-left: 0;
                }
                    .menu__dtl_contents_dd_txt::before{
                        display: none;
                    }
            .menu__dtl_contents_refills{
                width: 100%;
                align-items: center;
                margin-bottom: 40px;
            }
                .menu__dtl_contents_refills_txt{
                    line-height: 1.2;
                    font-weight: 400;
                }
        .menu__drink{
            border-radius: 5px;
        }
            .menu__drink_heading{
                padding: 19px 25px;
            }
                .menu__drink_heading_txt{
                    font-size: clamp(16px, 1.7vw ,22px);
                    font-weight: 400;
                    line-height: 1.8;
                    letter-spacing: 0.12em;
                    color: #232423;
                    position: relative;
                }
                .menu__drink_heading_txt::before{
                    width: 16px;
                    right: 0px;
                }
                .menu__drink_heading_txt::after{
                    width: 16px;
                    right: 0px;
                }
                .active .menu__drink_heading_txt::after{
                    transform: rotate(0deg);
                }
            .menu__drink_container{
                display: none;
                width: 100%;
                height: auto;
                padding: 0 25px 10px 25px;
            }
                .menu__drink_contents_list{
                    width: 100%;
                    height: auto;
                    margin: 0 auto;
                }
                .menu__drink_contents_list:first-of-type{
                    border-top:  1px solid #A0A0A0;
                }
                    .menu__drink_contents_list:first-of-type .menu__drink_item{
                        padding: 25px 0;
                    }
                    .menu__drink_item{
                        width: 100%;
                        height: auto;
                        margin: 0 auto;
                        display: flex;
                        align-items: flex-start;
                        justify-content: space-between;
                        padding: 20px 0 0 0;
                    }
                    .menu__drink_item:last-of-type{
                        padding: 25px 0 15px 0;
                    }
                    .menu__drink_item p{
                        white-space: nowrap;
                    }
                            .menu__drink_name span{
                                margin-left: 0px;
                                margin-top: 3px;
                            }
#eye_catch{
    height: calc((375 / 375) * 100vw);
}
#way_to_eat__area{
    width: 100%;
    height: auto;
}
    .way_to_eat__inner{
        width: 100%;
        height: auto;
        margin: 0 auto;
        max-width: 1010px;
        padding: 60px 0 60px 0;
        position: relative;
    }
        .way_to_eat__ttl{
            width: 100%;
            height: auto;
        }
            .way_to_eat__ttl_main{
                width: 100%;
                height: auto;
                font-size: clamp(30px, 3vw, 42px);
                font-weight: 400;
                line-height: 1.5;
                text-align: center;
                letter-spacing: 0.12em;
                color: #232423;
            }
            .way_to_eat__ttl_sub{
                font-size: clamp(12px, 1vw, 12px);
                font-weight: 600;
                line-height: 2.2;
                text-align: center;
                letter-spacing: 0.2em;
                color: #232423;
                padding: 12px 0 48px 0;
            }
        .way_to_eat__contents{
            width: 100%;
            height: auto;
        }
            .way_to_eat__contents__swiper{
                width: 100%;
                height: auto;
                box-sizing: border-box;
            }
                .swiper-wrapper{
                    height: auto;
                    column-gap: 0;
                }
                    .way_to_eat__contents__swiper_slide.swiper-slide{
                        width: 315px !important;
                        height: auto;
                        padding: 74px 30px 30px 30px;
                        position: relative;
                        border-radius: 5px;
                        background-image: url(../image/sp_wte_bg.webp);
                        background-position: center;
                        background-size: cover;
                        background-repeat: no-repeat;
                    }
                        .way_to_eat__contents__swiper_slide_headong{
                            position: absolute;
                            top: 0;
                            left: 0;
                        }
                        .way_to_eat__contents__swiper_slide_image{
                            width: 100%;
                            height: auto;
                        }
                        .way_to_eat__contents__swiper_slide_txt{
                            font-size: clamp(14px, 1.25vw, 16px);
                            font-weight: 700;
                            line-height: 1.5;
                            letter-spacing: 0.1em;
                            color: #232423;
                        }
            .way_to_eat__contents_btn_wrap{
                width: 100%;
                height: auto;
                padding-top: 20px;
                display: flex;
                align-items: center;
                justify-content: center;
                column-gap: 30px;
            }
                .way_to_eat__contents_prev{
                    width: 50px;
                    height: 50px;
                    border: #232423 solid 1px;
                    border-radius: 4px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                }
                    .way_to_eat__contents_prev img{
                        width: 18px;
                    }
                .way_to_eat__contents_next{
                    width: 50px;
                    height: 50px;
                    border: #232423 solid 1px;
                    border-radius: 4px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                }
                    .way_to_eat__contents_next img{
                        width: 18px;
                        transform: rotate(180deg);
                    }
#shop_info{
    padding-bottom: 0px;
}
    .shop_info__inner{
        width: 100%;
        height: auto;
        margin: 0 auto;
        max-width: 1140px;
        position: relative;
        border-radius: 14px;
        padding: 45px calc((30 / 375) * 100vw) 60px calc((30 / 375) * 100vw);
        border-radius: 0;
    }
            .shop_info__container{
                position: relative;
                z-index: 2;
            }
                        .shop_info__ttl_sub{
                            padding: 0 0 25px 0;
                        }
                    .shop_info__contents_image{
                        padding-bottom: 20px;
                    }
                .shop_info__contents_heading_wrap{
                    flex-direction: column;
                    align-items: flex-start;
                    justify-content: center;
                }
                    .shop_info__contents_link{
                        width: 100%;
                    }
                    .shop_info__contents_heading{
                        padding: 0 0 20px 0;
                        margin: 0;
                    }
                        .shop_info__contents_heading::before{
                            display: none;
                        }
                        .shop_info__contents_dtl{
                            width: 100%;
                            height: auto;
                            display: flex;
                            flex-direction: column;
                            column-gap: 90px;
                            padding: 0;
                            margin-top: 27px;
                            position: relative;
                        }
                            .shop_info__contents_dtl::after{
                                content: "";
                                display: block;
                                width: 1px;
                                height: 100%;
                                background-color: #FFFFFF;
                                position: absolute;
                                top: 0;
                                left: 115.5px;
                            }
                            .shop_info__contents_dtl_list{
                                width: 100%;
                            }
                            .shop_info__contents_dtl_list._largge{
                                width: 100%;
                                margin-top: 12px;
                            }
                                .shop_info__contents_dtl_item{
                                    display: flex;
                                    align-items: flex-start;
                                    position: relative;
                                    column-gap: 21px;
                                }
                                    .shop_info__contents_dtl_term{
                                        width: 105px;
                                        min-width: 105px;
                                        height: auto;
                                        font-size: clamp(14px, 1vw, 14px);
                                        font-weight: 500;
                                        line-height: 1.5;
                                        letter-spacing: 0.2em;
                                        color: #FFFFFF;
                                        position: relative;
                                        padding-top: 12px;
                                    }
                                    .shop_info__contents_dtl_item:first-of-type .shop_info__contents_dtl_term{
                                        padding-top: 0;
                                    }
                                        .shop_info__contents_dtl_info::after{
                                            display: none;
                                        }
                                    .shop_info__contents_dtl_info{
                                        width: 100%;
                                        font-size: clamp(14px, 1vw, 14px);
                                        font-weight: 500;
                                        line-height: 1.5;
                                        letter-spacing: 0.2em;
                                        color: #FFFFFF;
                                        padding-top: 12px;
                                    }
                                    .shop_info__contents_dtl_item:first-of-type .shop_info__contents_dtl_info{
                                        padding-top: 0;
                                    }
}