@charset "UTF-8";
/*==================================================================

# shop-info-page

===================================================================*/



/*========================================================
/* shopInfo-key-contents
==========================================================*/
#shopInfo-key-contents {
    color: var(--color-text);

    .shop-info__read {
        display: flex;
        align-items: center;

        &:nth-child(even) {
            flex-direction: row-reverse;
        }

        @media (max-width: 767px) {
            display: block;
        }

        .txt {
            width: min(100%, 863px);

            >p {
                font-size: clamp(14px, calc(11.461538461538462px + 0.7051282051282052vw), 25px);
                width: min(100%, 555px);
                line-height: 1.5;

                &.top {
                    margin-left: auto;
                    text-align: right;
                    padding-right: 1em;

                    @media (max-width: 767px) {
                        margin: 1.3em 0 1.3em auto;
                        padding-right: 1em;
                    }
                }

                &.bottom {
                    margin: 0 auto 0 1em;

                    @media (max-width: 767px) {
                        margin: 1.3em auto 1.3em 1em;
                    }
                }
            }
        }

        .img {
            width: min(100%, 863px);
            height: 203px;

            >img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: left top;
            }

            @media (max-width: 767px) {
                height: auto;
            }
        }
    }

    .reborn_container {
        width: min(100% - 2rem);
        margin-inline: auto;
        padding-top: 60px;
        text-align: center;

        .tit-box {
            margin-top: 1.5em;
            line-height: 1.66;

            .old-logo {
                width: min(82%, 400px);
                margin: clamp( 45px, calc( 34.61538461538461px + 2.8846153846153846vw ), 90px ) auto clamp( 25px, calc( 19.230769230769234px + 1.6025641025641024vw ), 50px );
            }

            .new-logo {
                width: min(59%, 288px);
                margin: clamp( 35px, calc( 32.69230769230769px + 0.641025641025641vw ), 45px ) auto clamp( 55px, calc( 52.69230769230769px + 0.641025641025641vw ), 65px );
            }
        }

        .txt {
            margin-top: clamp( 57px, calc( 48.92307692307692px + 2.2435897435897436vw ), 92px );
            line-height: 1.66;
        }
    }


    .page-bottom-note {
        margin-top: clamp(29px, calc(22.076923076923077px + 1.9230769230769231vw), 59px);
        text-align: center;
        line-height: 1.6;
    }
}

/*========================================================
/* shop-detile
==========================================================*/
#shop-detile {
    text-align: center;
    color: var(--color-text);
    
    .shop-section {
        margin-top: clamp( 92px, calc( 71.23076923076923px + 5.769230769230769vw ), 182px );
        text-align: left;
        position: relative;
        color: #fff;


        &.shop-section--minatomachi {
            .img {
                left: 2rem;
            }

            .sp_bgcl {
                @media (max-width: 1100px) {
                    background: var(--color-khaki02);
                }
            }

            .shop-info__info {
                background: var(--color-khaki02);

                @media (max-width: 1100px) {
                    background: none;
                }
            }

            .info {
                margin-left: auto;
            }

            .staff {
                margin-left: auto;
                padding-right: 2rem;
            }
        }

        &.shop-section--oroshihonmachi {
            .img {
                right: 2rem;
            }

            .sp_bgcl {
                @media (max-width: 1100px) {
                    background: var(--color-navy01);
                }
            }

            .shop-info__info {
                background: var(--color-navy01);

                @media (max-width: 1100px) {
                    background: none;
                }
            }

            .staff {
                margin-left: 2rem;

                @media (max-width: 767px) {
                    margin-left: auto;
                }
            }
        }

        .sp_bgcl {
            @media (max-width: 1100px) {
                padding: 2rem 0;
            }
        }

        .sp_inner {
            @media (max-width: 1100px) {
                width: min(100% - 2rem, 500px);
                margin-inline: auto;
            }
        }

        .img {
            width: 43%;
            position: absolute;
            top: auto;
            bottom: 0;

            @media (max-width: 1100px) {
                position: static;
                width: 100%;
            }
        }

        .shop-info__info {
            width: 100%;
        }

        .inner {
            width: min(100% - 4rem);
            margin-inline: auto;
            color: #fff;
            position: relative;

            @media (max-width: 767px) {
                width: 100%;
            }
        }

        .info {
            width: 48%;
            color: #fff;
            padding: 2rem 0;


            @media (max-width: 1100px) {
                width: 100%;
                margin-top: 1em;
                padding: 0;
            }

            .add {
                margin-top: 0.7em;
            }

            .holiday,
            .tel,
            .e-mail {
                text-align: right;
            }

            .holiday {
                margin-top: 1.1em;
            }

            .tel {
                margin-top: 0.7em;

                span {
                    padding-left: 0.5em;
                }
            }

            .e-mail {
                margin-top: 0.7em;
                padding-bottom: 30px;
                border-bottom: 1px solid #fff;

                span {
                    padding-left: 0.5em;
                }
            }

            .txt {
                margin-top: 0.5em;
                line-height: 1.66;
            }
        }

        .staff {
            color: var(--color-text);
            width: 48%;
            margin-top: 24px;

            @media (max-width: 1100px) {
                display: block;
                width: min(100% - 2rem);
                margin-inline: auto;
            }

            .col {
                display: flex;
                justify-content: space-between;
                align-items: flex-start;

                @media (max-width: 767px) {
                    display: block;
                }
            }

            figure {
                flex: 1;

                img {
                    border-radius: 9px;
                }

                @media (max-width: 767px) {
                    width: 65%;
                    margin-inline: auto;
                }
            }

            figcaption {
                flex: 2;
                padding-left: 2em;

                @media (max-width: 767px) {
                    width: 100%;
                    padding-left: 0;
                    margin-top: 1em;
                }

                .intro {
                    font-size: clamp(13px, calc(12.307692307692308px + 0.19230769230769232vw), 16px);
                }

                .name {
                    margin-top: 14.6px;
                    font-size: clamp(16px, calc(15.076923076923077px + 0.2564102564102564vw), 20px);
                }

                .comment {
                    font-size: clamp(13px, calc(12.538461538461538px + 0.1282051282051282vw), 15px);
                    margin-top: 25px;
                    line-height: 2;
                }
            }
        }

        .btn {
            width: min(100%, 374px);
            margin-top: 30px;
            text-align: center;

            @media (max-width: 1100px) {
                margin-inline: auto;
            }

            &.shop-section--minatomachi {
                margin-left: auto;
                padding-right: 5%;

                a {
                    background: var(--color-khaki02);
                }
            }

            &.shop-section--oroshihonmachi {
                margin-right: auto;
                padding-left: 5%;

                a {
                    background: var(--color-navy01);
                }
            }

            a {
                color: #fff;
                display: block;
                padding: 1em;
                border-radius: 27px;
                box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
            }
        }
    }

}

.shop-info__bottom-txt {
    width: min(100% - 2rem, 820px);
    margin-inline: auto;
    text-align: center;
    line-height: 1.6;
    margin-top: clamp(25px, calc(16.23px + 2.43vw), 63px);

    &.sub {
        color: var(--color-text);
    }
}


/*========================================================
/* shop_container
==========================================================*/
.shop-info__gallery {
    margin-top: 40.5px;

    .tit {
        font-family: var(--font-marugothic);

        &.minatomachi {
            color: var(--color-khaki02);
        }

        &.oroshi {
            color: var(--color-navy01);
        }
    }

    >.swiper {
        margin-top: 27px;

        .swiper-wrapper {
            -webkit-transition-timing-function: linear;
            transition-timing-function: linear;
        }

        .swiper-slide {
            width: 240px;
            height: auto;

            img {
                width: 100%;
                height: 100%;

            }
        }
    }

}


.shop-info__map {
    width: min(100% - 2rem, 909px);
    margin-inline: auto;
    margin-top: 52px;

    >.tit {
        font-family: var(--font-marugothic);
        text-align: left;
        margin-bottom: 1em;
    }

    iframe {
        width: 100%;
    }
}

.shop-info__staff {
    width: min(100% - 2rem, 881px);
    margin-inline: auto;
    margin-top: 73px;

    .heading {
        font-family: var(--font-marugothic);
        color: #fff;
        letter-spacing: 0.05em;
        padding: 23px 0;

        &.minatomachi {
            background: var(--color-khaki02);
        }

        &.oroshi {
            background: var(--color-navy01);
        }

        &.cameraman {
            margin: 0 calc(50% - 50vw);
            width: 100vw;
            background: var(--color-blue01);
            padding: clamp( 42px, calc( 37.38461538461539px + 1.282051282051282vw ), 62px ) 0;
        }
    }

    .sub-heading {
        font-family: var(--font-marugothic);
        font-size: clamp( 14px, calc( 11.461538461538462px + 0.7051282051282052vw ), 25px );
        color: var(--color-blue01);
        line-height: 1.3;
        margin-top: clamp( 15px, calc( 5.76923076923077px + 2.564102564102564vw ), 55px );
    }

    .column {
        display: flex;
        flex-wrap: wrap;
        gap: 98px 9.8%;
        margin: clamp( 20px, calc( 8.461538461538463px + 3.205128205128205vw ), 70px ) 0 clamp( 70px, calc( 65.38461538461539px + 1.282051282051282vw ), 90px );

        @media (max-width: 767px) {
            gap: 48px 5.8%;
        }

        figure {
            width: min(100%, 235px);

            @media (max-width: 767px) {
                width: 47%;
            }
        }

        figcaption {
            font-family: var(--font-marugothic);
            font-weight: 300;
            text-align: left;

            ul {
                li {
                    &.post {
                        font-size: 12px;
                        margin-top: 19px;
                    }

                    &.name {
                        font-size: clamp(15px, calc(13.846153846153847px + 0.3205128205128205vw), 20px);
                        margin-top: 9px;
                    }

                    &.en-name {
                        font-size: 12px;
                        padding: 12px 0 16.5px;
                        border-bottom: 1px solid var(--color-text);
                    }

                    &.hobby {
                        font-size: 12px;
                        line-height: 1.4;
                        margin-top: 11.5px;
                    }

                }
            }
        }
    }
}

/*========================================================
/* greeting
==========================================================*/
#greeting {
    color: var(--color-text);
    padding: clamp(53px, calc(36.84615384615385px + 4.487179487179487vw), 123px) 0 0;

    .heading {
        font-size: clamp(18px, calc(16.384615384615383px + 0.4487179487179487vw), 25px);
        text-align: center;
        margin-bottom: clamp(55px, calc(44.61538461538461px + 2.8846153846153846vw), 100px);
    }

    .inner {
        width: min(100% - 2rem, 902px);
        margin-inline: auto;
    }

    .shop-info__president {

        &:nth-of-type(n + 2) {
            margin-top: 50px;
        }

        figure {
            display: flex;
            align-items: flex-end;

            @media (max-width: 767px) {
                align-items: center;
            }

            .img {
                width: min(100%, 235px);

                @media (max-width: 767px) {
                    width: 46%;
                }
            }
        }

        figcaption {
            margin: 0 0 23px clamp(12.4px, calc(6.4px + 1.6666666666666667vw), 38.4px);
            letter-spacing: 0.1em;

            @media (max-width: 767px) {
                margin-bottom: 0;
            }

            .post {
                font-size: clamp(10px, calc(8.846153846153847px + 0.3205128205128205vw), 15px);
            }

            .name {
                padding: 13px 0 20px;
                position: relative;

                span {
                    display: inline-block;
                    font-size: 12px;
                    margin-left: 1em;

                    @media (max-width: 767px) {
                        display: block;
                        margin: 0.3em 0 0 -0.5em;
                    }
                }

                &::before {
                    position: absolute;
                    content: "";
                    background: #A8A8A8;
                    width: 234.5px;
                    height: 1px;
                    top: auto;
                    left: 0;
                    bottom: 0;
                }
            }

            .hobby {
                font-family: var(--font-marugothic);
                font-size: 12px;
                padding-top: 13px;
                line-height: 1.2;
                letter-spacing: 0.01em;
            }
        }

        .txt {
            font-size: clamp(13px, calc(11.846153846153847px + 0.3205128205128205vw), 18px);
            margin-top: clamp(18.5px, calc(13.884615384615385px + 1.282051282051282vw), 38.5px);
            line-height: 2;

            @media (max-width: 767px) {
                line-height: 1.7;
            }
        }
    }
}

/*========================================================
/* company
==========================================================*/
#company {
    width: min(100% - 2rem, 902px);
    margin-inline: auto;
    color: var(--color-text);
    padding: clamp(75px, calc(44.53846153846153px + 8.461538461538462vw), 207px) 0 clamp(50px, calc(40.769230769230774px + 2.564102564102564vw), 90px);
    border-bottom: 1px solid var(--color-text);

    .heading {
        font-size: clamp(18px, calc(16.384615384615383px + 0.4487179487179487vw), 25px);
        margin-bottom: 23px;
    }

    >table {
        width: 100%;
        border-collapse: collapse;

        tr {

            th,
            td {
                padding: 17px 0;
                line-height: 1.3;
            }

            th {
                width: clamp(73px, calc(52.92307692307692px + 5.5769230769230775vw), 160px);
                text-align: left;
            }

            td {
                >p {
                    display: inline-block;
                    margin-right: clamp(30px, calc(-3.3333333333333286px + 4.340277777777778vw), 80px);

                    @media (max-width: 767px) {
                        display: block;
                        line-height: 1.3;
                        margin-right: 0;
                    }
                }
            }
        }
    }
}

/*========================================================
/* history
==========================================================*/
#history {
    width: min(100% - 2rem, 902px);
    margin-inline: auto;
    margin-top: clamp(56.5px, calc(39.19230769230769px + 4.807692307692308vw), 131.5px);
    color: var(--color-text);

    .heading {
        font-size: clamp(18px, calc(16.384615384615383px + 0.4487179487179487vw), 25px);
    }

    ul {
        li {
            margin-top: 39px;
            line-height: 1.4;
        }
    }
}


/*========================================================
/* reserve
==========================================================*/
.reserve-shopInfo {
    margin-top: clamp(50px, calc(31.53846153846154px + 5.128205128205128vw), 130px) !important;

    .shop-section {
        &.shopInfo {
            &::before {
                height: 552px !important;
            }

            @media (max-width: 900px) {
                &::before {
                    height: 1px !important;
                }
            }

            >.group {
                padding: 63px 0 clamp(63px, calc(43.61538461538461px + 5.384615384615385vw), 147px) !important;

                .e-mail {
                    text-align: right;
                    margin-top: 1em;

                    span {
                        padding-left: 0.5em;
                    }
                }
            }
        }
    }
}