@import url('https://fonts.googleapis.com/css2?family=Hina+Mincho&family=Kosugi+Maru&family=Lora&display=swap');
@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}
.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}
.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}
.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}
.splide--rtl{direction:rtl}
.splide__track--ttb>.splide__list{display:block}
.splide__container{box-sizing:border-box;position:relative}
.splide__list{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;height:100%;margin:0!important;padding:0!important}
.splide.is-initialized:not(.is-active) .splide__list{display:block}
.splide__pagination{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;margin:0;pointer-events:none}
.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}
.splide:not(.is-overflow) .splide__pagination{display:none}
.splide__progress__bar{width:0}
.splide{position:relative;visibility:hidden}
.splide.is-initialized,.splide.is-rendered{visibility:visible}
.splide__slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}
.splide__slide img{vertical-align:bottom}
.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}
.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}
.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}
.splide__toggle.is-active .splide__toggle__pause{display:inline}
.splide__track{overflow:hidden;position:relative;z-index:0}
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        z-index: -1;
    }
}
/* right to left */
@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}
/* left to right */
@keyframes infinity-scroll-right {
    from {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(0%);
    }
}
@keyframes pulsate {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    90%, 100% {
        transform: scale(1.2);
        opacity: 0;
    }
}
@keyframes flash {
    0%,100% {
        opacity: .3;
    }
    50% {
        opacity: 1;
    }
}
@keyframes img_scale {
    0% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
    }
}
/* 流れるロゴ */
.loops {
    overflow: hidden;

}
.loops > div {
        display: flex;
    }
@media (max-width: 767px) {
.loops > div:not(:first-child) {
                margin-top: calc(4 / 750 * 100vw)
        }
            }
@media (min-width: 768px) {
.loops > div:not(:first-child) {
                margin-top: calc(4 / 1280 * 100vw)
        }
            }
@media (min-width: 1280px) {
.loops > div:not(:first-child) {
                margin-top: 4px
        }
            }
.loops img {
        flex-shrink: 0;
    }
@media (max-width: 767px) {
.loops img {
            padding: 0 3.5%
    }
        }
@media (min-width: 768px) {
.loops img {
            padding: 0 3.5%
    }
        }
.loops div:nth-of-type(1) {
        animation :infinity-scroll-left 13s infinite linear;
    }
.loops div:nth-of-type(2) {
        animation :infinity-scroll-right 13s infinite linear;
    }
.loops div:nth-of-type(3) {
        animation :infinity-scroll-left 13s infinite linear;
    }
.para {
    height: 100%;
}
.para .img_ani {
        position: relative;
        width: .0001%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        overflow: hidden;
        opacity: 0;
        z-index: 0;
        transition: width 1.8s cubic-bezier(.77,0,.175,1), opacity 1.8s cubic-bezier(.77,0,.175,1);
        transform: scale(1.1);
    }
.para .img_ani::after {
            position: absolute;
            top: 0;
            left: 0;
            border-radius: inherit;
            width: 99%;
            height: 99%;
            background: #D9A083;
            transform-origin: 0 0;
            /*content: '';*/
        }
/*opacity: 1;
            transform: scale(1);
            transition: 4s .2s cubic-bezier(.19,1,.22,1);*/
.para .img_ani.is_on::after {
                /*transition: transform 3s .1s cubic-bezier(.19,1,.22,1), background 3s cubic-bezier(.19,1,.22,1);
                transform: scaleY(0);*/
            }
.para .img_ani img {
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            -o-object-fit: cover;
               object-fit: cover;
            z-index: 1;
        }
.para.is_on .img_ani {
        width: 100%;
        opacity: 1;
        animation: img_scale forwards 7s;
    }
/* 波紋 */
.drip {
    position: relative;
}
.drip::before, .drip::after {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        width: 100%;
        height: 100%;
        border: 1px solid #808080;
        border-radius: 50%;
        pointer-events: none;
        animation: pulsate 4s infinite cubic-bezier(0.72, 0, 0.31, 0.98);
        content: "";
    }
.drip::after {
        animation-delay: 1s;
    }
.drip span {
        animation: flash 4s infinite ease-in-out;
    }
body {
    overflow: hidden scroll;
    color: #FFFFFF;
    font-family: 'Hina Mincho','ひな明朝','游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
}
img {
    width: 100%;
    max-width: 100%;
}
a {
    cursor: pointer;
}
.visibility_line_pc {
    display: none;
}
.visibility_line_sp {
    display: block;
}
@media (max-width: 767px) {
    .visibility_line_pc {
        display: block;
    }
    .visibility_line_sp {
        display: none;
    }
}
@media (min-width: 768px) {
.sp {
        display: none !important
}
    }
@media (max-width: 767px) {
.pc {
        display: none !important
}
    }
.container {
    margin-right: auto;
    margin-left: auto;
}
@media (max-width: 767px) {
.container { width: calc(650 / 750 * 100vw)
} }
@media (min-width: 768px) {
.container {
        max-width: 1280px
}
    }
.en {
    font-family: 'Lora', serif;
}
.stripe_mask {
    position: relative;
    background: linear-gradient(-45deg, rgba(255, 255, 255, .15) 25%, #ee6523 25%, #ee6523 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, #ee6523 75%, #ee6523) center / 6px 6px;
}
.stripe_mask::before {
        position: absolute;
        top: 0;
        left: 0;
        background: rgba(255, 255, 255, .15);
        content: '';
        width: 100%;
        height: 100%;
    }
.assembler {
    background: #1E0A00;
}
.assembler.is_fade {
        opacity: 0;
        animation: fadeIn .4s ease-in-out;
    }
.assembler .s1 {
        text-align: center;
    }
.assembler .s1 > .s1_container {
            position: relative;
            opacity: 0;
            animation: fadeIn 1s 2s forwards;
        }
.assembler .s1 > .s1_container .s1_kv img {
                width: 100vw;
                height: 100svh;
            }
@media (max-width: 767px) {
.assembler .s1 > .s1_container .s1_kv img {
                    transform: translateX(.6rem) scale(1.04)
            }
                }
@media (min-width: 768px) {
.assembler .s1 > .s1_container .s1_kv img {
                    transform: translateX(18px) scale(1.04)
            }
                }
.assembler .s1 > .s1_container > .s1_box {
                display: flex;
                justify-content: center;
                align-items: center;
                position: absolute;
                width: 100vw;
                height: 100svh;
                background: rgba(30, 10, 0, 0.5);
                left: 50%;
                top: 50%;
                transform: translate(-50%, -50%);
            }
.assembler .s1 > .s1_container > .s1_box::after {
                    display:inline-block;
                    position: absolute;
                    bottom: 0;
                    left: 50%;
                    width:1px;
                    background: white;
                    content: "";
                }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box::after {
                        bottom: calc(-265/750*100vw);;
                        left: 50%;
                        height:calc(50/750*100vw)
                }
                    }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box::after {
                        height:calc(50/1280*100vw);
                        max-height: 50px
                }
                    }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner {
                    display: flex;
                    flex-direction: column;
                    justify-content: center;
                    align-items: center;
                }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner {
                        margin-top: calc(-94/750*100vw)
                }
                    }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > h1 {
                            margin-bottom: calc(52/750*100vw);
                            font-size: calc(24/750*100vw);
                            letter-spacing: .4em;
                            line-height: 2.1
                    }
                        }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > h1 {
                            margin: 0 0 calc(45/1280*100vw);
                            font-size: calc(16/1280*100vw);
                            letter-spacing: .2em
                    }
                        }
@media (min-width: 1280px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > h1 {
                            margin: 0 0 45px;
                            font-size: 16px
                    }
                        }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > p {
                        letter-spacing: .2em;
                    }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > p { font-size: calc(16/750*100vw)
                    } }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > p { font-size: calc(20/1280*100vw)
                    } }
@media (min-width: 1280px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > p { font-size: 20px
                    } }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo {
                            margin-bottom: calc(55 / 750 * 100vw)
                    }
                        }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::before {
                            display: inline-block;
                            border-top: 1px solid #FFFFFF;
                            border-right: 1px solid #FFFFFF;
                            content: "";
                        }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::before {
                                width: calc(30/var(--pc-size)*100vw);
                                max-width: 30px;
                                height: calc(30/var(--pc-size)*100vw);
                                max-height: 30px
                        }
                            }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::after {
                            display: inline-block;
                            border-top: 1px solid #FFFFFF;
                            border-right: 1px solid #FFFFFF;
                            content: "";
                        }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::after {
                                width: calc(30/var(--pc-size)*100vw);
                                max-width: 30px;
                                height: calc(30/var(--pc-size)*100vw);
                                max-height: 30px
                        }
                            }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::before {
                            transform: rotate(-135deg);
                        }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::before {  margin-right: calc(125/1280*100vw)
                        }  }
@media (min-width: 1280px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::before { margin-right: 125px
                        } }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::after {
                            transform: rotate(45deg);
                        }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::after {  margin-left: calc(125/1280*100vw)
                        }  }
@media (min-width: 1280px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo::after { margin-left: 125px
                        } }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo img {
                                width: calc(595/750*100vw);
                                height: calc(40 / 750 * 100vw)
                        }
                            }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_logo img {
                                width: calc(595 / 1280 * 100vw);
                                max-width: 595px;
                                height: calc(40 / 1280 * 100vw);
                                max-height: 40px
                        }
                            }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_border1 {
                        border: solid 1px;
                    }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_border1 {
                            width: calc(50/750*100vw)
                    }
                        }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_border1 {
                            margin-top: calc(45/1280*100vw);
                            width: calc(50/1280*100vw);
                            max-width: 50px
                    }
                        }
@media (min-width: 1280px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner > .s1_border1 {
                            margin-top: 45px
                    }
                        }
.assembler .s1 > .s1_container > .s1_box .s1_box_inner .scroll {
                        position: absolute;
                        left: 50%;
                        transform: translateX(-50%);
                        letter-spacing: .2em;
                    }
@media (max-width: 767px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner .scroll {
                            bottom: calc(-158/750*100vw);
                            font-size: calc(24/750*100vw)
                    }
                        }
@media (min-width: 768px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner .scroll {
                            bottom: calc(75 / 1280 * 100vw);
                            font-size: calc(20/1280*100vw)
                    }
                        }
@media (min-width: 1280px) {
.assembler .s1 > .s1_container > .s1_box .s1_box_inner .scroll {
                            bottom: 75px;
                            font-size: 20px
                    }
                        }
@media (max-width: 767px) {
.assembler .s2 .s2_wrap {
                padding-top: calc(399/750*100vw);
                background: url("../img/s2/s2_1_sp@2x.png") no-repeat center / contain
        }
            }
@media (min-width: 768px) {
.assembler .s2 .s2_wrap {
                padding-top: calc(112/1280*100vw);
                background: url("../img/s2/s2_1.png") no-repeat center / cover
        }
            }
@media (min-width: 1280px) {
.assembler .s2 .s2_wrap {
                padding-top: 112px
        }
            }
.assembler .s2 .s2_text > p {
            text-align: center;
            letter-spacing: .2em;
        }
@media (max-width: 767px) {
.assembler .s2 .s2_text > p {
                font-size: calc(34/750*100vw)
        }
            }
@media (min-width: 768px) {
.assembler .s2 .s2_text > p {
                font-size: calc(25/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.assembler .s2 .s2_text > p {
                font-size: 25px
        }
            }
.assembler .s2 .s2_title {
            margin-bottom: calc(100/1280*100vw);
            font-size: calc(25/1280*100vw);
            text-align: center;
        }
@media (max-width: 767px) {}
@media (min-width: 1280px) {
.assembler .s2 .s2_title {
                margin-bottom: 100px;
                font-size: 25px;
                text-align: center
        }
            }
.assembler .s2 .s2_logo {
            margin-bottom: calc(90/1280*100vw);
            padding-top: calc(96/1280*100vw);
        }
@media (max-width: 767px) {
.assembler .s2 .s2_logo {
                margin-bottom: calc(142/750*100vw);
                padding-top: calc(147/750*100vw)
        }
            }
@media (min-width: 1280px) {
.assembler .s2 .s2_logo {
                margin-bottom: 90px;
                padding-top: 96px
        }
            }
.assembler .s2 .s2_logo img {
                width: 100%;
                text-align: center;
            }
.assembler .s2 .s2_logo div:nth-of-type(1) { opacity: 10%; }
.assembler .s2 .s2_logo div:nth-of-type(2) { opacity: 20%; }
.assembler .s2 .s2_logo div:nth-of-type(3) { opacity: 10%; }
.assembler .s2 .s2_explanation {
            display: flex;
            justify-content: center;
            letter-spacing: 0.2em;
            line-height: 2.8;
        }
.assembler .s2 .s2_explanation p {
                writing-mode: vertical-rl;
            }
@media (max-width: 767px) {
.assembler .s2 .s2_explanation {
                flex-direction: column-reverse;
                margin-bottom: calc(100/750*100vw);
                font-size: calc(24/750*100vw);
                text-align: center;
                letter-spacing: 0.2em;
                line-height: 2.5
        }
                .assembler .s2 .s2_explanation p { writing-mode: horizontal-tb; }
                .assembler .s2 .s2_explanation span {
                    display: inline-block;
                    margin-bottom: calc(81/750*100vw);
                    font-size: calc(34/750*100vw);
                    letter-spacing: 0.2em;
                    line-height: 2.0;
                }
            }
@media (min-width: 768px) {
.assembler .s2 .s2_explanation {
                margin: 0 auto calc(90/1280*100vw);
                width: calc(581/1280*100vw);
                font-size: calc(16/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.assembler .s2 .s2_explanation {
                width: 581px;
                margin: 0 auto 90px;
                font-size: 16px
        }
            }
@media (min-width: 768px) {
.assembler .s2 .s2_explanation > div {
                    margin-right: calc(46/1280*100vw)
            }
                }
@media (min-width: 1280px) {
.assembler .s2 .s2_explanation > div { margin-right: 46px
            } }
/* safariでは縦書き要素にwidth指定しないと崩れてしまうためmin-width設定 */
@media (min-width: 768px) {
.assembler .s2 .s2_explanation > div:nth-child(1) {
                        min-width: calc(314/1280*100vw)
                }
                    }
@media (min-width: 1280px) {
.assembler .s2 .s2_explanation > div:nth-child(1) {
                        min-width: 314px
                }
                    }
@media (min-width: 768px) {
.assembler .s2 .s2_explanation > div:nth-child(2) {
                        min-width: calc(269/1280*100vw)
                }
                    }
@media (min-width: 1280px) {
.assembler .s2 .s2_explanation > div:nth-child(2) {
                        min-width: 269px
                }
                    }
.assembler .s2 .s2_detail {
            position: relative;
        }
@media (max-width: 767px) {
.assembler .s2 .s2_detail .s2_image_wrap {
                    display: flex;
                    justify-content: space-between;
                    align-items: flex-end
            }
                }
@media (max-width: 767px) {
.assembler .s2 .s2_detail .s2_image_1 {
                    width: calc(397/750*100vw);
                    height: calc(571/750*100vw)
            }
                }
@media (min-width: 768px) {
.assembler .s2 .s2_detail .s2_image_1 {
                    margin: 0 0 calc(-383/1280*100vw) calc(775/1280*100vw);
                    width: calc(398/1280*100vw);
                    max-width: 398px;
                    height: calc(572/1280*100vw);
                    max-height: 572px
            }
                }
@media (min-width: 1280px) {
.assembler .s2 .s2_detail .s2_image_1 {
                    margin: 0 0 -383px 775px
            }
                }
@media (max-width: 767px) {
.assembler .s2 .s2_detail .s2_image_1 img {
                        width: calc(397/750*100vw);
                        height: calc(571/750*100vw)
                }
                    }
@media (min-width: 768px) {
.assembler .s2 .s2_detail .s2_image_1 img {
                        width: calc(398/1280*100vw);
                        max-width: 398px;
                        height: calc(572/1280*100vw);
                        max-height: 572px
                }
                    }
@media (max-width: 767px) {
.assembler .s2 .s2_detail .s2_image_2 {
                    margin-left: calc(-69/750*100vw);
                    width: calc(320/750*100vw);
                    height: calc(458/750*100vw)
            }
                }
@media (min-width: 768px) {
.assembler .s2 .s2_detail .s2_image_2 {
                    margin-left: calc(399/1280*100vw);
                    width: calc(320/1280*100vw);
                    max-width: 320px;
                    height: calc(458/1280*100vw);
                    max-height: 458px
            }
                }
@media (min-width: 1280px) {
.assembler .s2 .s2_detail .s2_image_2 {
                    margin-left: 399px
            }
                }
@media (max-width: 767px) {
.assembler .s2 .s2_detail .s2_image_2 img {
                        width: calc(320/750*100vw);
                        height: calc(458/750*100vw)
                }
                    }
@media (min-width: 768px) {
.assembler .s2 .s2_detail .s2_image_2 img {
                        width: calc(320/1280*100vw);
                        max-width: 320px;
                        height: calc(458/1280*100vw);
                        max-height: 458px
                }
                    }
.assembler .s2 .s2_detail > .s2_list {
                position: absolute;
                top: calc(48/1280*100vw);
                left: calc(113/1280*100vw);
                font-size: calc(20/1280*100vw);
                letter-spacing: 0.07em;
                line-height: 2.5;
            }
@media (max-width: 767px) {
.assembler .s2 .s2_detail > .s2_list { display: none
            } }
@media (min-width: 1280px) {
.assembler .s2 .s2_detail > .s2_list {
                    top: 48px;
                    left: 113px;
                    font-size: 20px
            }
                }
.assembler .s2 .s2_detail > .s2_list > ul::before {
                    display: inline-block;
                    position: absolute;
                    width: 1px;
                    height: calc(211/1280*100vw);
                    background: #808080;
                    top: 50%;
                    left: -26px;
                    transform: translate(-50%, -50%);
                    content: "";
                }
@media (min-width: 1280px) {
.assembler .s2 .s2_detail > .s2_list > ul::before { height: 211px
                } }
.assembler .s2 .s2_detail > .s2_list .list_span {
                    color: #808080;
                    font-size: calc(15/1280*100vw);
                }
@media (min-width: 1280px) {
.assembler .s2 .s2_detail > .s2_list .list_span { font-size: 15px
                } }
@media (max-width: 767px) {
.assembler .s3 { padding: calc(114/750*100vw) 0 calc(170/750*100vw)
    } }
@media (min-width: 768px) {
.assembler .s3 {
            padding: calc(137/1280*100vw) 0 calc(137/1280*100vw)
    }
        }
@media (min-width: 1280px) {
.assembler .s3 {
            height: 311px;
            padding: 137px 0 137px
    }

        }
.assembler .s3 .s3_recruit {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-right: auto;
            margin-left: auto;
        }
@media (max-width: 767px) {
.assembler .s3 .s3_recruit {
                font-size: calc(34/750*100vw);
                text-align: center;
                letter-spacing: .2em;
                line-height: calc(65 / 34)
        }
            }
@media (min-width: 768px) {
.assembler .s3 .s3_recruit {
                max-width: 1280px;
                font-size: calc(25/1280*100vw);
                letter-spacing: .075em
        }
            }
@media (min-width: 1280px) {
.assembler .s3 .s3_recruit { font-size: 25px
        } }
.assembler .s3 .s3_recruit::before, .assembler .s3 .s3_recruit::after {
                border-top: 1px solid #808080;
                content: "";
            }
@media (max-width: 767px) {
.assembler .s3 .s3_recruit::before, .assembler .s3 .s3_recruit::after {
                    width: calc(71/750*100vw)
            }
                }
@media (min-width: 768px) {
.assembler .s3 .s3_recruit::before, .assembler .s3 .s3_recruit::after {
                    width: calc(186/1280*100vw);
                    max-width: 186px
            }
                }
@media (max-width: 767px) {
.assembler .s3 .s3_recruit h3 {
                    margin-left: .5em
            }
                }
.assembler .s4 {
        position: relative;
        margin: auto;
        text-align: center;
    }
.assembler .s4 .s4_bg img {
            width: 100vw;
        }
@media (max-width: 767px) {
.assembler .s4 .s4_bg img {
                -o-object-fit: cover;
                   object-fit: cover;
                height: calc(973/750*100vw)
        }
            }
@media (min-width: 1280px) {
            }
.assembler .s4 .s4_main {
            display: flex;
            justify-content: center;
            align-items: center;
            position: absolute;
            width: 100vw;
            height: 100%;
            background-color: rgba(30, 10, 0, 0.8);
            left: 0;
            top: 0;
        }
.assembler .s4 .s4_main h4 {
                margin: calc(130/1280*100vw) auto calc(31/1280*100vw) auto;
                color: #808080;
                font-size: calc(70/1280*100vw);
                letter-spacing: 0.2em;
            }
@media (max-width: 767px) {
.assembler .s4 .s4_main h4 {
                    margin: 0 auto calc(50/750*100vw) auto;
                    font-size: calc(70/750*100vw)
            }
                }
@media (min-width: 1280px) {
.assembler .s4 .s4_main h4 {
                    margin: 130px auto 31px auto;
                    font-size: 70px
            }
                }
.assembler .s4 .s4_main .s4_border1 {
                width: calc(50/1280*100vw);
                margin: 0 auto calc(50/1280*100vw) auto;
                border: solid 1px #808080;
            }
@media (max-width: 767px) {
.assembler .s4 .s4_main .s4_border1 {
                    width: calc(50/750*100vw);
                    margin: 0 auto calc(54/750*100vw) auto
            } }
@media (min-width: 1280px) {
.assembler .s4 .s4_main .s4_border1 {
                    width: 50px;
                    margin: 0 auto 31px auto
            }
                }
@media (max-width: 767px) {
.assembler .s4 .s4_main .s4_text {
                    margin-bottom: calc(88/750*100vw);
                    margin-left: .5em;
                    font-size: calc(34/750*100vw);
                    letter-spacing: .2em
            }
                }
@media (min-width: 768px) {
.assembler .s4 .s4_main .s4_text {
                    margin-bottom: calc(50/1280*100vw);
                    font-size: calc(25/1280*100vw);
                    letter-spacing: .1em
            }
                }
@media (min-width: 1280px) {
.assembler .s4 .s4_main .s4_text {
                    margin-bottom: 50px;
                    font-size: 25px
            }
                }
.assembler .s4 .s4_main .s4_explanation {
                font-size: calc(16/1280*100vw);
                margin-bottom: calc(130/1280*100vw);
                letter-spacing: 0.1em;
                line-height: 2.5;
            }
@media (max-width: 767px) {
.assembler .s4 .s4_main .s4_explanation {
                    font-size: calc(24/750*100vw);
                    letter-spacing: 0.2em;
                    line-height: 2.0
            }
                }
@media (min-width: 1280px) {
.assembler .s4 .s4_main .s4_explanation {
                    font-size: 16px;
                    margin-bottom: 130px
            }
                }
.assembler .s4 .s4_main .dots {
                display: flex;
                justify-content: space-between;
                width: calc(117/1280*100vw);
                margin: 0 auto calc(30/1280*100vw) auto;
            }
@media (max-width: 767px) {
.assembler .s4 .s4_main .dots {
                    width: calc(117/750*100vw)
            }
                }
@media (min-width: 1280px) {
.assembler .s4 .s4_main .dots {
                    width: 117px;
                    margin: 0 auto 30px auto
            }
                }
.assembler .s4 .s4_main .dots .dot {
                    width: calc(5/1280*100vw);
                    height: calc(5/1280*100vw);
                    border-radius: 50%;
                    background: #FFFFFF;
                }
@media (max-width: 767px) {
.assembler .s4 .s4_main .dots .dot {
                        width: calc(5/750*100vw);
                        height: calc(5/750*100vw)
                }
                    }
@media (min-width: 1280px) {
.assembler .s4 .s4_main .dots .dot {
                        width: 5px;
                        height: 5px
                }
                    }
.assembler .s5 {
        color: #E6E6E6;
        letter-spacing: .2em;
    }
@media (max-width: 767px) {
.assembler .s5 {
            font-size: calc(24/750*100vw)
    }
        }
@media (min-width: 768px) {
.assembler .s5 {
            padding-bottom: calc(144 / 1280 * 100vw);
            font-size: calc(20/1280*100vw)
    }
        }
@media (min-width: 1280px) {
.assembler .s5 {
            padding-bottom: 144px;
            font-size: 20px
    }
        }
.assembler .s5 h5 {
            display: flex;
            justify-content: center;
            align-items: center;
            margin: auto;
            width: calc(142/1280*100vw);
            height: calc(142/1280*100vw);
            border-radius: 50%;
        }
@media (max-width: 767px) {
.assembler .s5 h5 {
                width: calc(142/750*100vw);
                height: calc(142/750*100vw)
        }
            }
@media (min-width: 1280px) {
.assembler .s5 h5 {
                width: 142px;
                height: 142px
        }
            }
.assembler .s5 .arrow {
            position: relative;
        }
@media (max-width: 767px) {
.assembler .s5 .arrow {
                margin-top: calc(-20/750*100vw)
        }
            }
@media (min-width: 768px) {
.assembler .s5 .arrow {
                margin-top: calc(-20/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.assembler .s5 .arrow {
                margin-top: -20px
        }
            }
.assembler .s5 .arrow::before {
            position: absolute;
            left: 0;
            right: 0;
            display: inline-block;
            margin: auto;
            border-top: 1px solid #808080;
            border-right: 1px solid #808080;
            transform: rotate(135deg);
            content: "";
        }
@media (max-width: 767px) {
.assembler .s5 .arrow::before {
                bottom: -100%;
                width: calc(30/750*100vw);
                height: calc(30/750*100vw)
        }
            }
@media (min-width: 768px) {
.assembler .s5 .arrow::before {
                bottom: calc(-45/1280*100vw);
                width: calc(30/1280*100vw);
                max-width: 30px;
                height: calc(30/1280*100vw);
                max-height: 30px
        }
            }
@media (min-width: 1280px) {
.assembler .s5 .arrow::before {
                bottom: -45px
        }
            }
.assembler .s5 .s5_menu {
            display: flex;
            justify-content: space-between;
            margin-right: auto;
            margin-left: auto;
        }
@media (max-width: 767px) {
.assembler .s5 .s5_menu {
                padding: calc(262/750*100vw) 0 calc(157/750*100vw);
                width: calc(647/750*100vw)
        }
            }
@media (min-width: 768px) {
.assembler .s5 .s5_menu {
                margin-top: calc(122 / 1280 * 100vw);
                width: calc(932/1280*100vw);
                max-width: 932px
        }
            }
@media (min-width: 1280px) {
.assembler .s5 .s5_menu {
                margin-top: 122px
        }
            }
.assembler .s5 .s5_menu button {
                display: flex;
                justify-content: center;
                align-items: center;
                border: solid 1px #808080;
                letter-spacing: .2em;
            }
@media (max-width: 767px) {
.assembler .s5 .s5_menu button {
                    width: calc(307/750*100vw);
                    height: calc(100/750*100vw);
                    font-size: calc(24/750*100vw)
            }
                }
@media (min-width: 768px) {
.assembler .s5 .s5_menu button {
                    width: calc(446/1280*100vw);
                    max-width: 446px;
                    height: calc(100/1280*100vw);
                    max-height: 100px
            }
                }
@media (min-width: 1280px) {
                }
.assembler .s6 {
        background: #140000;
        overflow: hidden;
    }
.assembler .s6 .sub_title {
            color: #323232;
            letter-spacing: .2em;
            writing-mode: vertical-rl;
        }
@media (max-width: 767px) {
.assembler .s6 .sub_title {
                font-size: calc(50/750*100vw);
                text-align: center;
                writing-mode: horizontal-tb
        }
            }
@media (min-width: 768px) {
.assembler .s6 .sub_title {
                position: absolute;
                top: calc(125/1280*100vw);
                right: calc(193/1280*100vw);
                font-size: calc(50/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.assembler .s6 .sub_title {
                top: 125px;
                right: 193px;
                font-size: 50px
        }
            }
.assembler .s6 .sub_title::before {
                position:absolute;
                width: calc(36/1280*100vw);
                height: 1px;
                top: calc(-16/1280*100vw);
                left: 50%;
                transform: translate(-50%, -50%);
                background-color: #323232;
                content:"";
            }
@media (max-width: 767px) {
.assembler .s6 .sub_title::before { display: none
            } }
@media (min-width: 1280px) {
.assembler .s6 .sub_title::before {
                    width: 36px;
                    top: -16px
            }
                }
.assembler .s6 .s6_container {
            display: flex;
            position: relative;
        }
@media (max-width: 767px) {
.assembler .s6 .s6_container {
                flex-flow: column;
                padding: calc(149/750*100vw) 0 calc(150/750*100vw)
        }
            }
@media (min-width: 768px) {
.assembler .s6 .s6_container {
                padding: calc(125/1280*100vw) calc(146/1280*100vw) calc(124/1280*100vw) calc(100/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.assembler .s6 .s6_container { padding: 125px 146px 124px 100px
        } }
.assembler .s6 .s6_container .s6_explanation {
                margin-top: auto;
            }
@media (max-width: 767px) {
.assembler .s6 .s6_container .s6_explanation { text-align: center
            } }
.assembler .s6 .s6_container .s6_explanation p {
                    font-size: calc(16/1280*100vw);
                    letter-spacing: 0.075em;
                    line-height: 2.5;
                    white-space: nowrap;
                }
@media (max-width: 767px) {
.assembler .s6 .s6_container .s6_explanation p {
                        font-size: calc(24/750*100vw);
                        letter-spacing: 0.2em;
                        line-height: 2.0
                }
                    }
@media (min-width: 1280px) {
.assembler .s6 .s6_container .s6_explanation p { font-size: 16px
                } }
@media (max-width: 767px) {
.assembler .s6 .s6_container .s6_image_1 {
                    margin-bottom: calc(-60/750*100vw);
                    width: calc(507/750*100vw);
                    height: calc(354/750*100vw)
            }
                }
@media (min-width: 768px) {
.assembler .s6 .s6_container .s6_image_1 {
                    margin-bottom: calc(49/1280*100vw);
                    width: calc(507/1280*100vw);
                    max-width: 507px;
                    height: calc(354/1280*100vw);
                    max-height: 354px
            }
                }
@media (min-width: 1280px) {
.assembler .s6 .s6_container .s6_image_1 {
                    margin-bottom: 49px
            }
                }
@media (max-width: 767px) {
.assembler .s6 .s6_container .s6_image_1 img {
                        width: calc(507/750*100vw);
                        height: calc(354/750*100vw)
                }
                    }
@media (min-width: 768px) {
.assembler .s6 .s6_container .s6_image_1 img {
                        width: calc(507/1280*100vw);
                        max-width: 507px;
                        height: calc(354/1280*100vw);
                        max-height: 354px
                }
                    }
@media (max-width: 767px) {
.assembler .s6 .s6_container .s6_image_2 {
                    margin: 0 0 calc(85/750*100vw) auto;
                    width: calc(381/750*100vw);
                    height: calc(267/750*100vw)
            }
                }
@media (min-width: 768px) {
.assembler .s6 .s6_container .s6_image_2 {
                    margin: 0 calc(96/1280*100vw) 0 calc(174/1280*100vw);
                    width: calc(406/1280*100vw);
                    max-width: 406px;
                    height: calc(284/1280*100vw);
                    max-height: 284px
            }
                }
@media (min-width: 1280px) {
.assembler .s6 .s6_container .s6_image_2 {
                    margin: 0 96px 0 174px
            }
                }
@media (max-width: 767px) {
.assembler .s6 .s6_container .s6_image_2 img {
                        width: calc(381/750*100vw);
                        height: calc(267/750*100vw)
                }
                    }
@media (min-width: 768px) {
.assembler .s6 .s6_container .s6_image_2 img {
                        width: calc(406/1280*100vw);
                        max-width: 406px;
                        height: calc(284/1280*100vw);
                        max-height: 284px
                }
                    }
@media (max-width: 767px) {
.assembler .s7 .s7_bg {
                padding-bottom: calc(290/750*100vw);
                background: #1E0A00 url("../img/s7/bg_sp.png") repeat top / cover
        }
            }
@media (min-width: 768px) {
.assembler .s7 .s7_bg {
                padding-bottom: calc(121/1280*100vw);
                background: #1E0A00 url("../img/s7/bg.png") repeat top / cover
        }
            }
@media (min-width: 1280px) {
.assembler .s7 .s7_bg {
                padding-bottom: 121px
        }
            }
.assembler .s7 .s7_container {
            position: relative;
        }
.assembler .s7 .s7_container .s7_title {
                position: absolute;
                top: calc(146/1280*100vw);
                left: calc(166/1280*100vw);
                color: #323232;
                font-size: calc(50/1280*100vw);
                letter-spacing: 0.2em;
                writing-mode: vertical-rl;
            }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_title {
                    position: static;
                    text-align: center;
                    padding-top: calc(147/750*100vw);
                    font-size: calc(50/750*100vw);
                    writing-mode: horizontal-tb
            }
                }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_title {
                    top: 146px;
                    left: 166px;
                    font-size: 50px
            }
                }
.assembler .s7 .s7_container .s7_title::before {
                    position:absolute;
                    width: calc(36/1280*100vw);
                    height: 1px;
                    top: calc(-16/1280*100vw);
                    left: 50%;
                    transform: translate(-50%, -50%);
                    background-color: #323232;
                    content:"";
                }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_title::before { display: none
                } }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_title::before {
                        width: 36px;
                        top: -16px
                }
                    }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box {
                    text-align: center
            }
                }
@media (min-width: 768px) {
.assembler .s7 .s7_container .s7_box {
                    display: flex;
                    flex-direction: row-reverse;
                    margin-bottom: calc(126/1280*100vw);
                    padding: calc(124/1280*100vw) calc(229/1280*100vw) 0 calc(303/1280*100vw)
            }
                }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_box {
                    margin-bottom: 126px;
                    padding: 124px 229px 0 303px
            }
                }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box .chef {
                        margin-right: auto;
                        margin-left: auto;
                        width: calc(385/750*100vw);
                        height: calc(481/750*100vw);
                        font-size: calc(24/750*100vw)
                }
                    }
@media (min-width: 768px) {
.assembler .s7 .s7_container .s7_box .chef {
                        width: calc(385/1280*100vw);
                        max-width: 385px;
                        height: calc(481/1280*100vw);
                        max-height: 481px
                }
                    }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box .chef img {
                            width: calc(385/750*100vw);
                            height: calc(481/750*100vw)
                    }
                        }
@media (min-width: 768px) {
.assembler .s7 .s7_container .s7_box .chef img {
                            width: calc(385/1280*100vw);
                            max-width: 385px;
                            height: calc(481/1280*100vw);
                            max-height: 481px
                    }
                        }
.assembler .s7 .s7_container .s7_box .s7_profile {
                    color: #4D4D4D;
                }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box .s7_profile {
                        margin-top: calc(81/750*100vw)
                }
                    }
@media (min-width: 768px) {
.assembler .s7 .s7_container .s7_box .s7_profile {
                        margin: auto calc(75/1280*100vw) 0 0
                }
                    }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_box .s7_profile { margin: auto 75px 0 0
                } }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box .s7_profile .chef_name > p:nth-of-type(1) {
                            margin-bottom: calc(41/750*100vw);
                            font-size: calc(24/750*100vw);
                            letter-spacing: .2em
                    }
                        }
@media (min-width: 768px) {
.assembler .s7 .s7_container .s7_box .s7_profile .chef_name > p:nth-of-type(1) {
                            margin-bottom: calc(17/1280*100vw);
                            font-size: calc(16/1280*100vw);
                            letter-spacing: .1em
                    }
                        }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_box .s7_profile .chef_name > p:nth-of-type(1) {
                            margin-bottom: 17px;
                            font-size: 16px
                    }
                        }
.assembler .s7 .s7_container .s7_box .s7_profile .chef_name > p:nth-of-type(2) {
                        color: #F2F2F2;
                    }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box .s7_profile .chef_name > p:nth-of-type(2) {
                            margin-bottom: calc(81/750*100vw);
                            font-size: calc(40/750*100vw);
                            letter-spacing: .2em
                    }
                        }
@media (min-width: 768px) {
.assembler .s7 .s7_container .s7_box .s7_profile .chef_name > p:nth-of-type(2) {
                            font-size: calc(40/1280*100vw);
                            letter-spacing: .075em
                    }
                        }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_box .s7_profile .chef_name > p:nth-of-type(2) {
                            margin-bottom: 41px;
                            font-size: 40px
                    }
                        }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box .s7_profile .hobby {
                            font-size: calc(24/750*100vw);
                            letter-spacing: .2em
                    }
                        }
@media (min-width: 768px) {
.assembler .s7 .s7_container .s7_box .s7_profile .hobby {
                            margin-top: calc(58/1280*100vw);
                            font-size: calc(16/1280*100vw);
                            letter-spacing: .075em
                    }
                        }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_box .s7_profile .hobby {
                            font-size: 16px;
                            margin-top: 58px
                    }
                        }
.assembler .s7 .s7_container .s7_box .s7_profile .hobby > ul > li:not(:last-child) {
                                margin-bottom: calc(25/1280*100vw);
                            }
@media (max-width: 767px) {
.assembler .s7 .s7_container .s7_box .s7_profile .hobby > ul > li:not(:last-child) { margin-bottom: calc(19/750*100vw)
                            } }
@media (min-width: 1280px) {
.assembler .s7 .s7_container .s7_box .s7_profile .hobby > ul > li:not(:last-child) { margin-bottom: 25px
                            } }
.assembler .s7 .s7_text {
            text-align: center;
            color: #E6E6E6;
            letter-spacing: .075em;
            line-height: 2.5;
        }
@media (max-width: 767px) {
.assembler .s7 .s7_text .s7_sentence {
                    margin-top: calc(70/750*100vw);
                    font-size: calc(24/750*100vw);
                    letter-spacing: .2em
            }
                }
@media (min-width: 768px) {
.assembler .s7 .s7_text .s7_sentence {
                    margin-bottom: calc(121/1280*100vw);
                    font-size: calc(16/1280*100vw)
            }
                }
@media (min-width: 1280px) {
.assembler .s7 .s7_text .s7_sentence {
                    margin-bottom: 121px;
                    font-size: 16px
            }
                }
@media (max-width: 767px) {
.assembler .s7 .s7_text .s7_sentence span {
                        display: inline-block;
                        margin-bottom: calc(40/750*100vw)
                }
                    }
.assembler .s7 .s7_logo_wrap {
            height: 200vh;
            background: #1E0A00;
        }
.assembler .s7 .s7_logo_wrap.is_none {
                z-index: -1;
                opacity: 0;
            }
.assembler .s7 .s7_logo {
            display: flex;
            flex-direction: column;
            justify-content: center;
            position: relative;
            top: 0;
            left: 0;
            width: 100%;
            height: 100vh;
        }
@media (max-width: 767px) {  }
@media (min-width: 768px) {
.assembler .s7 .s7_logo { padding: calc(265/1280*100vw) 0 calc(237/1280*100vw)
        } }
@media (min-width: 1280px) {
.assembler .s7 .s7_logo { padding: 265px 0 237px
        } }
.assembler .s7 .s7_logo.is_fixed {
                position: fixed;
            }
.assembler .s7 .s7_logo div:nth-of-type(1) { opacity: 10%; }
.assembler .s7 .s7_logo div:nth-of-type(2) { opacity: 20%; }
.assembler .s7 .s7_logo div:nth-of-type(3) { opacity: 10%; }
@media (max-width: 767px) {
.assembler .circle {
            display: flex;
            justify-content: space-between;
            padding: calc(149/750*100vw) calc(55/750*100vw) 0 calc(55/750*100vw);
            background: #1E0A00
    }
        }
@media (max-width: 767px) {
.assembler .circle > div {
                display: flex;
                justify-content: center;
                align-items: center;
                width: calc(198/750*100vw);
                height: calc(198/750*100vw);
                text-align: center;
                font-size: calc(30/750*100vw);
                border: 1px solid #808080;
                border-radius: 50%
        }
            }
.assembler .circle > div .supplement_1, .assembler .circle > div .supplement_2 { color: #808080; }
@media (max-width: 767px) {
.assembler .circle > div .supplement_1 {
                    font-size: calc(24/750*100vw)
            }
                }
@media (max-width: 767px) {
.assembler .circle > div .supplement_2 {
                    font-size: calc(20/750*100vw)
            }
                }
@keyframes fuwafuwa {
    100% {
        transform: translateY(-10%);
    }
}
@keyframes fuwafuwa2 {
    100% {
        transform: translateY(10%);
    }
}
@keyframes fuwafuwa_sp {
    100% {
        transform: translateY(-10%) scale(-1, 1);
    }
}
@keyframes katakata {
    0% {
        transform: translate(0, -2px) rotate(6deg);
    }
    10% {
        transform: translate(0, 0) rotate(0deg);
    }
    20% {
        transform: translate(0, 0) rotate(-6deg);
    }
    30% {
        transform: translate(0, -2px) rotate(0deg);
    }
    40% {
        transform: translate(0, -2px) rotate(6deg);
    }
    50% {
        transform: translate(2px, 0) rotate(-2deg);
    }
    60% {
        transform: translate(0, 2px) rotate(0deg);
    }
    70% {
        transform: translate(0, 0) rotate(6deg);
    }
    80% {
        transform: translate(2px, 0) rotate(-2deg);
    }
    90% {
        transform: translate(0, 0) rotate(0deg);
    }
    100% {
        transform: translate(0, -2px) rotate(6deg);
    }
}
@keyframes bounce {
    0%,
    10%,
    21%,
    30%,
    41%,
    to {
        transform: translateY(2px);
    }
    11%,
    20%,
    31%,
    40% {
        transform: translateY(-2px);
    }
}
@keyframes rotate {
    38%, 92% {
        transform: rotate(-6deg);
    }
    50%, 60%, 80% {
        transform: rotate(-28deg);
    }
}
@keyframes plane {
    0% {
        transform: translate(calc(-50/750*100vw), calc(-40/750*100vw)) rotate(30deg);
    }
    10% {
        transform: translate(calc(-42/750*100vw), calc(-45/750*100vw)) rotate(30deg);
    }
    20% {
        transform: translate(calc(-30/750*100vw), calc(-50/750*100vw)) rotate(29deg);
    }
    30% {
        transform: translate(calc(-20/750*100vw), calc(-55/750*100vw)) rotate(27deg);
    }
    40% {
        transform: translate(calc(-10/750*100vw), calc(-60/750*100vw)) rotate(27deg);
    }
    50% {
        transform: translate(calc(0/750*100vw), calc(-65/750*100vw)) rotate(24deg);
    }
    60% {
        transform: translate(calc(10/750*100vw), calc(-70/750*100vw)) rotate(24deg);
    }
    70% {
        transform: translate(calc(20/750*100vw), calc(-75/750*100vw)) rotate(21deg);
    }
    80% {
        transform: translate(calc(30/750*100vw), calc(-80/750*100vw)) rotate(21deg);
    }
    90% {
        transform: translate(calc(40/750*100vw), calc(-85/750*100vw)) rotate(18deg);
    }
    100% {
        transform: translate(calc(50/750*100vw), calc(-90/750*100vw)) rotate(15deg);
    }
}
.entry_wrap {
    scroll-snap-type: y proximity;
    width: 100%;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.circle_content_before {
    position: relative;
    top: 0;
    left: 0;
    height: 100vh;
    opacity: 1;
}
.circle_content_before.is_fixed {
        position: fixed;
    }
.circle_content_before.is_none {
        z-index: -1;
        opacity: 0;
    }
.circle_content_after {
    opacity: 0;
}
.circle_content_after.is_fade {
        opacity: 1;
    }
.entry_inner {
    position: relative;
    background: rgba(238, 101, 35, 1);
    z-index: 0;
}
.entry_inner .entry_inner_before,
    .entry_inner .entry_inner_after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
.entry_inner .entry_inner_before {
        background: rgba(255, 255, 255, .15);
        z-index: 1;
    }
.entry_inner .entry_inner_after {
        background: linear-gradient(-45deg, rgba(255, 255, 255, .15) 25%, #ee6523 25%, #ee6523 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, #ee6523 75%, #ee6523) center / 6px 6px;
        z-index: -1;
    }
.entry_inner.circle_l {
        height: 100vh;
        background: rgba(238, 101, 35, .1);
    }
.entry_inner .img_fade {
        opacity: 0;
    }
.entry_inner .img_fade.is_fade {
            opacity: 1;
            transition: opacity 2s;
        }
.entry_ani_wrap {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.entry_ani_wrap .entry_ani {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
    }
.entry_ani_wrap .entry_ani .entry_circle {
            display: flex;
            justify-content: center;
            align-items: center;
            position: relative;
            width: calc(264/1280*100vw);
            height: calc(264/1280*100vw);
            margin: auto;
            background: #FFFFFF;
            border-radius: 50%;
            z-index: 1;
        }
@media (max-width: 767px) {
.entry_ani_wrap .entry_ani .entry_circle {
                width: calc(264/750*100vw);
                height: calc(264/750*100vw)
        }
            }
@media (min-width: 1280px) {
.entry_ani_wrap .entry_ani .entry_circle {
                width: 264px;
                height: 264px
        }
            }
@media (max-width: 767px) {
.entry_ani_wrap .entry_ani .entry_circle > img {
                    width: calc(188/750*100vw);
                    height: calc(61/750*100vw)
            }
                }
@media (min-width: 768px) {
.entry_ani_wrap .entry_ani .entry_circle > img {
                    width: calc(188/1280*100vw);
                    max-width: 188px;
                    height: calc(61/1280*100vw);
                    max-height: 61px
            }
                }
.entry_ani_wrap .entry_ani .entry_circle .arrow {
                display: flex;
                flex-direction: column;
                position: absolute;
            }
@media (max-width: 767px) {
.entry_ani_wrap .entry_ani .entry_circle .arrow {
                    bottom: calc(-244/750*100vw);
                    width: calc(45/750*100vw);
                    height: calc(20/750*100vw)
            }
                }
@media (min-width: 768px) {
.entry_ani_wrap .entry_ani .entry_circle .arrow {
                    bottom: calc(-90/1280*100vw);
                    width: calc(45/1280*100vw);
                    max-width: 45px;
                    height: calc(20/1280*100vw);
                    max-height: 20px
            }
                }
@media (min-width: 1280px) {
.entry_ani_wrap .entry_ani .entry_circle .arrow {
                    bottom: -90px
            }
                }
@media (max-width: 767px) {
.entry_ani_wrap .entry_ani .entry_circle .arrow img:not(:first-child) {
                        margin-top: calc(4/750*100vw)
                }
                    }
@media (min-width: 768px) {
.entry_ani_wrap .entry_ani .entry_circle .arrow img:not(:first-child) {
                        margin-top: calc(3/1280*100vw)
                }
                    }
@media (min-width: 1280px) {
.entry_ani_wrap .entry_ani .entry_circle .arrow img:not(:first-child) {
                        margin-top: 3px
                }
                    }
.entry_ani_wrap .entry_ani .entry_circle .arrow img:nth-child(1) {
                    animation: flash 3s infinite ease-in-out;
                }
.entry_ani_wrap .entry_ani .entry_circle .arrow img:nth-child(2) {
                    animation: flash 3s .4s infinite ease-in-out;
                }
.entry_ani_wrap .entry_ani .entry_circle .arrow img:nth-child(3) {
                    animation: flash 3s .8s infinite ease-in-out;
                }
.entry_ani_wrap .cloud {
        display: flex;
        justify-content: space-between;
        position: absolute;
        bottom: 10%;
        left: 50%;
        margin-right: auto;
        margin-left: auto;
        transform: translateX(-50%);
    }
@media (max-width: 767px) {
.entry_ani_wrap .cloud {
            width: calc(702/750*100vw)
    }
        }
@media (min-width: 768px) {
.entry_ani_wrap .cloud {
            width: calc(1072 / 1280 * 100vw);
            max-width: 1072px
    }
        }
.entry_ani_wrap .cloud > div {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }
@media (max-width: 767px) {
.entry_ani_wrap .cloud > div {
                width: calc(142/750*100vw)
        }
            }
@media (min-width: 768px) {
.entry_ani_wrap .cloud > div {
                width: calc(158 / 1280 * 100vw);
                max-width: 158px
        }
            }
@media (min-width: 768px) {
.entry_ani_wrap .cloud > div .c_s {
                    width: calc(70 / 1280 * 100vw);
                    max-width: 70px
            }
                }
@media (min-width: 768px) {
.entry_ani_wrap .cloud > div .c_l {
                    margin-left: auto;
                    width: calc(142 / 1280 * 100vw);
                    max-width: 142px
            }
                }
@media (max-width: 767px) {
.entry_ani_wrap .cloud > div.l {
                    transform: translateY(calc(50 / 750 * 100vw))
            }
                }
.entry_ani_wrap .cloud > div.l .c_s {
                    animation: fuwafuwa 1s .3s infinite alternate ease-in-out;
                }
@media (min-width: 768px) {
.entry_ani_wrap .cloud > div.l .c_s {
                        margin-top: calc(20 / 1280 * 100vw)
                }
                    }
@media (min-width: 1280px) {
.entry_ani_wrap .cloud > div.l .c_s {
                        margin-top: 20px
                }
                    }
.entry_ani_wrap .cloud > div.l .c_l {
                    animation: fuwafuwa2 1s infinite alternate ease-in-out;
                }
.entry_ani_wrap .cloud > div.r .c_s {
                    animation: fuwafuwa2 1s infinite alternate ease-in-out;
                }
.entry_ani_wrap .cloud > div.r .c_l {
                    animation: fuwafuwa 1s .3s infinite alternate ease-in-out;
                }
.entry {
    position: relative;
    font-family: 'Kosugi Maru', sans-serif;
}
@media (max-width: 767px) {
.entry { max-width: 750px
} }
.entry .e1 {
        text-align: center;

    }
@media (max-width: 767px) {
.entry .e1 { padding: calc(55/750*100vw) 0 calc(75/750*100vw)

    } }
@media (min-width: 768px) {
.entry .e1 { padding: calc(67/1280*100vw) 0 calc(50/1280*100vw)

    } }
@media (min-width: 1280px) {
.entry .e1 { padding: 67px 0 50px

    } }
.entry .e1 .e1_inner {
            position: relative;
        }
.entry .e1 .e1_icon1 {
            position: absolute;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            background-color: #FFFFFF;
        }
@media (max-width: 767px) {
.entry .e1 .e1_icon1 {
                width: calc(158/750*100vw);
                height: calc(158/750*100vw)
        }
            }
@media (min-width: 768px) {
.entry .e1 .e1_icon1 {
                top: calc(20/1280*100vw);
                width: calc(158/1280*100vw);
                height: calc(158/1280*100vw);
                max-width: 158px;
                max-height: 158px
        }
            }
@media (min-width: 1280px) {
.entry .e1 .e1_icon1 {
                top: 20px
        }
            }
.entry .e1 .e1_icon2 {
            position: absolute;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            background-color: #FFFFFF;
        }
@media (max-width: 767px) {
.entry .e1 .e1_icon2 {
                width: calc(158/750*100vw);
                height: calc(158/750*100vw)
        }
            }
@media (min-width: 768px) {
.entry .e1 .e1_icon2 {
                top: calc(20/1280*100vw);
                width: calc(158/1280*100vw);
                height: calc(158/1280*100vw);
                max-width: 158px;
                max-height: 158px
        }
            }
@media (min-width: 1280px) {
.entry .e1 .e1_icon2 {
                top: 20px
        }
            }
.entry .e1 .e1_icon1 {
            left: calc(56/1280*100vw);
        }
@media (max-width: 767px) {
.entry .e1 .e1_icon1 {
                top: calc(386/750*100vw);
                left: calc(-40/750*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e1 .e1_icon1 { left: 56px
        } }
.entry .e1 .e1_icon1 img {
                animation: katakata 4s step-start 0s infinite normal;
            }
@media (max-width: 767px) {
.entry .e1 .e1_icon1 img {
                    width: calc(66/750*100vw)
            }
                }
@media (min-width: 768px) {
.entry .e1 .e1_icon1 img {
                    width: calc(67/1280*100vw);
                    max-width: 67px
            }
                }
.entry .e1 .e1_icon2 {
            right: calc(59/1280*100vw);
        }
@media (max-width: 767px) {
.entry .e1 .e1_icon2 {
                top: calc(652/750*100vw);
                right: calc(-41/750*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e1 .e1_icon2 { right: 59px
        } }
.entry .e1 .e1_icon2 img {
                animation: katakata 4s step-start -.8s infinite normal;

            }
@media (max-width: 767px) {
.entry .e1 .e1_icon2 img {
                    width: calc(64/750*100vw)

            }
                }
@media (min-width: 768px) {
.entry .e1 .e1_icon2 img {
                    width: calc(65/1280*100vw);
                    max-width: 65px

            }
                }
@media (max-width: 767px) {
.entry .e1 .sp_icon {
                width: calc(615/750*100vw)
        }
            }
@media (max-width: 767px) {
.entry .e1 .sp_icon > .e1_icon3, .entry .e1 .sp_icon .e1_icon4, .entry .e1 .sp_icon .e1_icon5, .entry .e1 .sp_icon .e1_icon6 {
                    position: absolute
            }
                }
@media (max-width: 767px) {
.entry .e1 .e1_icon3 {
                top: calc(44/750*100vw);
                left: calc(-97/750*100vw);
                width: calc(218/750*100vw);
                height: calc(297/750*100vw);
                animation: plane 3.8s step-start infinite alternate;
                z-index: 1
        }
            }
@media (max-width: 767px) {
.entry .e1 .e1_icon3 img {
                    width: 100%
            }
                }
@media (max-width: 767px) {
.entry .e1 .e1_icon4 {
                top: calc(694/750*100vw);
                left: calc(-38/750*100vw);
                transform: scale(-1, 1);
                animation: fuwafuwa_sp 1s .3s infinite alternate ease-in-out
        }
            }
@media (max-width: 767px) {
.entry .e1 .e1_icon5 {
                top: calc(410/750*100vw);
                right: calc(-43/750*100vw);
                animation: fuwafuwa2 1.1s infinite alternate ease-in-out
        }
            }
@media (max-width: 767px) {
.entry .e1 .e1_icon4 img, .entry .e1 .e1_icon5 img {
                width: calc(142/750*100vw);
                height: calc(97/750*100vw)
        }
            }
.entry .e1 .e1_box {
            margin-right: auto;
            margin-left: auto;
            background-color: rgba(255,255,255,0.8);
        }
@media (max-width: 767px) {
.entry .e1 .e1_box {
                width: calc(615/750*100vw);
                padding: calc(14/750*100vw) calc(11/750*100vw)
        }
            }
@media (min-width: 768px) {
.entry .e1 .e1_box {
                margin-bottom: calc(50/1280*100vw);
                padding: calc(12/1280*100vw) calc(20/1280*100vw);
                width: calc(724/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e1 .e1_box {
                width: 724px;
                margin-bottom: 50px;
                padding: 12px 20px
        }
            }
.entry .e1 .e1_box > div {
                border: dotted 2px rgba(238, 101, 35, .6);
            }
@media (max-width: 767px) {
.entry .e1 .e1_box > div {
                    padding: calc(35/750*100vw) 0 calc(28/750*100vw) 0
            }
                }
@media (min-width: 768px) {
.entry .e1 .e1_box > div {
                    padding: calc(27/1280*100vw) 0 calc(16/1280*100vw)
            }
                }
@media (min-width: 1280px) {
.entry .e1 .e1_box > div {
                    padding: 27px 0 16px
            }
                }
.entry .e1 .e1_box h1 {
                color: #FFFFFF;
                text-shadow: 0 0 6px #F74600;
                letter-spacing: .1em;
            }
@media (max-width: 767px) {
.entry .e1 .e1_box h1 {
                    margin-bottom: calc(28/750*100vw);
                    font-size: calc(50/750*100vw)
            }
                }
@media (min-width: 768px) {
.entry .e1 .e1_box h1 {
                    font-size: calc(50/1280*100vw)
            }
                }
@media (min-width: 1280px) {
.entry .e1 .e1_box h1 {
                    font-size: 50px
            }
                }
.entry .e1 .e1_box p {
                margin-top: calc(17/1280*100vw);
                color: #ee6523;
                font-size: calc(20/1280*100vw);
                line-height: 1.75;
                letter-spacing: 0.1em;
            }
@media (max-width: 767px) {
.entry .e1 .e1_box p {
                    font-size: calc(24/750*100vw);
                    line-height: 1.8
            }
                }
@media (min-width: 1280px) {
.entry .e1 .e1_box p {
                    margin-top: 17px;
                    font-size: 20px
            }
                }
.entry .e1 .e1_text {
            position: relative;
            width: calc(1072/1280*100vw);
            margin: 0 auto calc(57/1280*100vw) auto;
            font-size: calc(16/1280*100vw);
            line-height: 2.5;
            letter-spacing: .075em;
        }
@media (max-width: 767px) {
.entry .e1 .e1_text {
                margin-bottom: calc(52/750*100vw);
                font-size: calc(24/750*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e1 .e1_text {
                width: 1072px;
                margin: 0 auto 57px auto;
                font-size: 16px
        }
            }
@media (max-width: 767px) {
                .entry .e1 .e1_text .text_1, .entry .e1 .e1_text .text_2 { display: inline-block; }
                .entry .e1 .e1_text .text_1 { margin: calc(48/750*100vw) 0 calc(25/750*100vw); }
                .entry .e1 .e1_text .text_2 { margin: 0 0 calc(25/750*100vw) 0; }
            }
.entry .e1 .e1_text .e1_cloud {
                display: flex;
                justify-content: space-between;
                position: absolute;
                margin-top: -.5em;
                width: 100%;
            }
.entry .e1 .e1_text .e1_cloud > div {
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;
                }
@media (min-width: 768px) {
.entry .e1 .e1_text .e1_cloud > div {
                        width: calc(158 / 1280 * 100vw);
                        max-width: 158px
                }
                    }
@media (min-width: 768px) {
.entry .e1 .e1_text .e1_cloud > div .c_s {
                            width: calc(70 / 1280 * 100vw);
                            max-width: 70px
                    }
                        }
@media (min-width: 768px) {
.entry .e1 .e1_text .e1_cloud > div .c_l {
                            margin-left: auto;
                            width: calc(142 / 1280 * 100vw);
                            max-width: 142px
                    }
                        }
.entry .e1 .e1_text .e1_cloud > div.l .c_s {
                            animation: fuwafuwa 1s .3s infinite alternate ease-in-out;
                        }
@media (min-width: 768px) {
.entry .e1 .e1_text .e1_cloud > div.l .c_s {
                                margin-top: calc(20 / 1280 * 100vw)
                        }
                            }
@media (min-width: 1280px) {
.entry .e1 .e1_text .e1_cloud > div.l .c_s {
                                margin-top: 20px
                        }
                            }
.entry .e1 .e1_text .e1_cloud > div.l .c_l {
                            animation: fuwafuwa2 1s infinite alternate ease-in-out;
                        }
.entry .e1 .e1_text .e1_cloud > div.r .c_s {
                            animation: fuwafuwa2 1s infinite alternate ease-in-out;
                        }
.entry .e1 .e1_text .e1_cloud > div.r .c_l {
                            animation: fuwafuwa 1s .3s infinite alternate ease-in-out;
                        }
.entry .e1 .e1_copy {
            margin: auto;
            color: #F74600;
            text-align: center;
        }
@media (max-width: 767px) {
.entry .e1 .e1_copy {
                font-size: calc(34/750*100vw);
                white-space: nowrap
        }
            }
@media (min-width: 768px) {
.entry .e1 .e1_copy {
                border-radius: calc(50/1280*100vw);
                width: calc(1014/1280*100vw);
                padding: calc(12/1280*100vw) 0;
                background-color: #FFFFFF;
                font-size: calc(30/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e1 .e1_copy {
                width: 1014px;
                padding: 12px 0;
                border-radius: 50px;
                font-size: 30px
        }
            }
@media (max-width: 767px) {
.entry .e1 .e1_copy .e1_span {
                    display: inline-block;
                    padding: 0 calc(30/750*100vw) 0 calc(40/750*100vw);
                    background: #FFFFFF;
                    border-radius: calc(50/750*100vw);
                    line-height: 2
            }
                }
@media (max-width: 767px) {
.entry .e1 .e1_copy .e1_span:nth-of-type(1) {
                    margin-bottom: calc(11/750*100vw)
            }
                }
.entry .e2 {
        position: relative;
        background: #FDF8F6;
    }
@media (max-width: 767px) {
.entry .e2 {
            padding: calc(93/750*100vw) 0 calc(96/750*100vw)
    }
        }
@media (min-width: 768px) {
.entry .e2 {
            padding: calc(45/1280*100vw) 0 calc(44/1280*100vw)
    }
        }
@media (min-width: 1280px) {
.entry .e2 {
            padding: 45px 0 44px
    }
        }
.entry .e2 .e2_box {
            display: flex;
            justify-content: space-between;
            margin: auto;
        }
@media (max-width: 767px) {
.entry .e2 .e2_box {
                flex-direction: column;
                width: calc(650/750*100vw);
                margin: 0 auto;
                padding: calc(22/750*100vw) 0 0 0
        }
            }
@media (min-width: 768px) {
.entry .e2 .e2_box {
                padding: calc(10/1280*100vw) calc(73/1280*100vw) calc(22/1280*100vw) calc(146/1280*100vw);
                width: calc(1073/1280*100vw);
                max-width: 1073px;
                background: url("../img/entry/bg_line2.png") no-repeat
        }
            }
@media (min-width: 1280px) {
.entry .e2 .e2_box {
                padding: 10px 73px 22px 146px
        }
            }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_text1_bg {
                    padding-top: calc(22/750*100vw);
                    background: url("../img/entry/bg_line2.png") no-repeat
            }
                }
.entry .e2 .e2_box .e2_text1 {
                display: flex;
                flex-flow: column;
                align-items: center;
            }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_text1 {
                    justify-content: space-between;
                    position: relative;
                    width: calc(284/750*100vw);
                    height: calc(284/750*100vw);
                    margin: auto;
                    z-index: 1
            }
                }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_text1 {
                    border-radius: 50%;
                    padding-top: calc(49/1280*100vw);
                    width: calc(254/1280*100vw);
                    max-width: 254px;
                    height: calc(254/1280*100vw);
                    max-height: 254px;
                    background: #FDF8F6
            }
                }
@media (min-width: 1280px) {
.entry .e2 .e2_box .e2_text1 {
                    padding-top: 49px
            }
                }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_text1::before {
                        position: absolute;
                        top: calc(20/750*100vw);
                        left: 0;
                        border-radius: 50%;
                        width: 100%;
                        height: 100%;
                        background: #FDF8F6;
                        z-index: -1;
                        content: ''
                }
                    }
.entry .e2 .e2_box .e2_text1 p {
                    color: #ee6523;
                    text-align: center;
                    white-space: nowrap;
                    line-height: 1.3;
                }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_text1 p {
                        font-size: calc(34/750*100vw);
                        line-height: calc(34 / 21)
                }
                    }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_text1 p {
                        font-size: calc(30/1280*100vw)
                }
                    }
@media (min-width: 1280px) {
.entry .e2 .e2_box .e2_text1 p {
                        font-size: 30px
                }
                    }
.entry .e2 .e2_box .e2_icon {
                display: flex;
                justify-content: flex-end;
                align-items: flex-end;
                background: url("../img/entry/base@2x.png") no-repeat bottom / contain;
                filter: drop-shadow(8px 8px 5px rgba(35, 24, 21, .27));
            }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon {
                    margin-bottom: calc(2/750*100vw);
                    width: calc(420/750*100vw)
            }
                }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon {
                    width: calc(420/1280*100vw);
                    max-width: 420px
            }
                }
.entry .e2 .e2_box .e2_icon .p1 {
                    display: flex;
                    flex-direction: column;
                }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon .p1 {
                        margin-right: calc(16/750*100vw);
                        margin-bottom: calc(10/750*100vw)
                }
                    }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon .p1 {
                        margin-right: calc(16/1280*100vw);
                        margin-bottom: calc(10/1280*100vw)
                }
                    }
@media (min-width: 1280px) {
.entry .e2 .e2_box .e2_icon .p1 {
                        margin-right: 16px;
                        margin-bottom: 10px
                }
                    }
.entry .e2 .e2_box .e2_icon .p1 img:first-child {
                        transform: rotate(-6deg);
                        animation: rotate 4s infinite steps(2, start);
                    }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon .p1 img:first-child {
                            width: calc(45/750*100vw)
                    }
                        }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon .p1 img:first-child {
                            width: calc(45/1280*100vw);
                            max-width: 45px
                    }
                        }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon .p1 img:last-child {
                            margin-top: calc(-4/750*100vw);
                            width: calc(57/750*100vw)
                    }
                        }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon .p1 img:last-child {
                            margin-top: calc(-4/1280*100vw);
                            width: calc(57/1280*100vw);
                            max-width: 57px
                    }
                        }
@media (min-width: 1280px) {
.entry .e2 .e2_box .e2_icon .p1 img:last-child {
                            margin-top: -4px
                    }
                        }
.entry .e2 .e2_box .e2_icon .p2 {
                    display: flex;
                    flex-direction: row-reverse;
                    align-items: baseline;
                }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon .p2 {
                        margin-right: calc(6/750*100vw);
                        margin-bottom: calc(2/750*100vw)
                }
                    }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon .p2 {
                        margin-right: calc(5/1280*100vw)
                }
                    }
@media (min-width: 1280px) {
.entry .e2 .e2_box .e2_icon .p2 {
                        margin-right: 5px
                }
                    }
.entry .e2 .e2_box .e2_icon .p2 img:first-child {
                        animation: bounce 1.6s .2s infinite normal;
                    }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon .p2 img:first-child {
                            width: calc(82/750*100vw)
                    }
                        }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon .p2 img:first-child {
                            width: calc(82/1280*100vw);
                            max-width: 82px
                    }
                        }
.entry .e2 .e2_box .e2_icon .p2 img:last-child {
                        animation: bounce 1.6s infinite normal;
                    }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon .p2 img:last-child {
                            margin-right: calc(-16/750*100vw);
                            width: calc(32/750*100vw)
                    }
                        }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon .p2 img:last-child {
                            margin-right: calc(-16/1280*100vw);
                            width: calc(32/1280*100vw);
                            max-width: 32px
                    }
                        }
@media (min-width: 1280px) {
.entry .e2 .e2_box .e2_icon .p2 img:last-child {
                            margin-right: -16px
                    }
                        }
.entry .e2 .e2_box .e2_icon .p3 {
                    animation: katakata 6s infinite ease-in-out alternate;
                }
@media (max-width: 767px) {
.entry .e2 .e2_box .e2_icon .p3 {
                        margin-right: calc(-16/750*100vw);
                        margin-bottom: calc(28/750*100vw);
                        width: calc(66/750*100vw)
                }
                    }
@media (min-width: 768px) {
.entry .e2 .e2_box .e2_icon .p3 {
                        margin-right: calc(-16/1280*100vw);
                        margin-bottom: calc(27/1280*100vw);
                        width: calc(67/1280*100vw);
                        max-width: 67px
                }
                    }
@media (min-width: 1280px) {
.entry .e2 .e2_box .e2_icon .p3 {
                        margin-right: -16px;
                        margin-bottom: 27px
                }
                    }
.entry .e2 .e2_text2 {
            display: flex;
            justify-content: center;
            align-items: center;
            color: #1A1A1A;
            line-height: 2.18;
            letter-spacing: .075em;
        }
@media (max-width: 767px) {
.entry .e2 .e2_text2 {
                margin-top: calc(54/750*100vw);
                font-size: calc(24/750*100vw);
                text-align: center;
                line-height: calc(50 / 24)
        }
            }
@media (min-width: 768px) {
.entry .e2 .e2_text2 {
                font-size: calc(16/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e2 .e2_text2 {
                font-size: 16px
        }
            }
@media (max-width: 767px) {
.entry .e2 .e2_text2 .text_1 {
                    display: inline-block;
                    margin: 0 0 calc(35/750*100vw) 0
            }
                }
.entry .e2 .e2_text2 mark {
                padding: calc(5/1280*100vw) calc(9/1280*100vw) calc(5/1280*100vw) calc(7/1280*100vw);
                color: #FFFFFF;
                background-color: #EE6623;
            }
@media (max-width: 767px) {
.entry .e2 .e2_text2 mark { padding: calc(5/750*100vw) calc(9/750*100vw) calc(5/750*100vw) calc(7/750*100vw)
            } }
@media (min-width: 1280px) {
.entry .e2 .e2_text2 mark { padding: 5px 9px 5px 7px
            } }
.entry .e3 {
        text-align: center;
    }
@media (max-width: 767px) {
.entry .e3 {
            padding: calc(94/750*100vw) 0 calc(97/750*100vw)
    }
        }
@media (min-width: 768px) {
.entry .e3 {
            padding: calc(71/1280*100vw) 0 calc(74/1280*100vw)
    }
        }
@media (min-width: 1280px) {
.entry .e3 {
            padding: 71px 0 74px
    }
        }
.entry .e3 > div {
            position: relative;
            z-index: 1;
        }
.entry .e3 .e3_text {
            line-height: 1.8;
            letter-spacing: .075em;
        }
@media (max-width: 767px) {
.entry .e3 .e3_text {
                margin-bottom: calc(85/750*100vw);
                font-size: calc(34/750*100vw);
                line-height: 1.47
        }
            }
@media (min-width: 768px) {
.entry .e3 .e3_text {
                margin-bottom: calc(61/1280*100vw);
                font-size: calc(25/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e3 .e3_text {
                margin-bottom: 61px;
                font-size: 25px
        }
            }
@media (max-width: 767px) {
.entry .e3 .e3_text .text_1 {
                    display: inline-block;
                    margin-bottom: calc(42/750*100vw);
                    font-size: calc(24/750*100vw)
            }
                }
.entry .e3 .entry_text {
            position: relative;
            letter-spacing: .075em;
        }
@media (max-width: 767px) {
.entry .e3 .entry_text {
                font-size: calc(24/750*100vw);
                margin: 0 0 calc(56/750*100vw) 0
        }
            }
@media (min-width: 768px) {
.entry .e3 .entry_text {
                margin-bottom: calc(36/1280*100vw);
                font-size: calc(16/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e3 .entry_text {
                margin-bottom: 36px;
                font-size: 16px
        }
            }
.entry .e3 .entry_text::after {
                position: absolute;
                left: 50%;
                width: 0;
                height: 0;
                border-left: calc(8/1280*100vw) solid transparent;
                border-right: calc(8/1280*100vw) solid transparent;
                border-top: calc(13/1280*100vw) solid #FFFFFF;
                transform: translateX(-50%);
                content: "";
            }
@media (max-width: 767px) {
.entry .e3 .entry_text::after {
                    top: calc(48/750*100vw);
                    border-left: calc(8/750*100vw) solid transparent;
                    border-right: calc(8/750*100vw) solid transparent;
                    border-top: calc(13/750*100vw) solid #FFFFFF
            }
                }
@media (min-width: 768px) {
.entry .e3 .entry_text::after {
                    top: calc(29/1280*100vw)
            }
                }
@media (min-width: 1280px) {
.entry .e3 .entry_text::after {
                    top: 29px;
                    border-left: 8px solid transparent;
                    border-right: 8px solid transparent;
                    border-top: 13px solid #FFFFFF
            }
                }
.entry .e3 .entry_button {
            display: block;
            width: calc(387/1280*100vw);
            margin: auto;
            padding: calc(17/1280*100vw) 0 calc(13/1280*100vw) 0;
            color: #ee6523;
            font-size: calc(54/1280*100vw);
            background: #FFFFFF;
            border-radius: calc(50/1280*100vw);
            letter-spacing: 0.2em;
        }
@media (max-width: 767px) {
.entry .e3 .entry_button {
                width: calc(387/750*100vw);
                padding: calc(17/750*100vw) 0 calc(13/750*100vw) 0;
                font-size: calc(55/750*100vw);
                border-radius: calc(50/750*100vw)
        }
            }
@media (min-width: 1280px) {
.entry .e3 .entry_button {
                width: 387px;
                padding: 17px 0 13px 0;
                font-size: 54px;
                border-radius: 50px
        }
            }
@keyframes fade-out {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
.s7_movie {
    position: relative;
    margin-right: auto;
    margin-left: auto;
}
@media (max-width: 767px) {
.s7_movie {
        padding-top: 56.25%;
        height: calc(424/750*100vw);
        width: 100%
}
    }
@media (min-width: 768px) {
.s7_movie {
        width: calc(1080/1280*100vw);
        max-width: 1080px;
        height: calc(607/1280*100vw);
        max-height: 607px
}
    }
.s7_movie iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
#player_wrap {
    position: absolute;
    top: 0;
    left: 0;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    height: 100%;
    background: url("../img/s7/thumb.jpg") no-repeat center / cover;
}
#player_wrap.hide {
        animation: fade-out .5s forwards;
    }
#player_wrap::after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0, .5);
        content: '';
    }
#player_wrap p {
        letter-spacing: .2em;
    }
@media (max-width: 767px) {
#player_wrap p {
            font-size: calc(34/750*100vw)
    }
        }
@media (min-width: 768px) {
#player_wrap p {
            font-size: calc(20/1280*100vw)
    }
        }
@media (min-width: 1280px) {
#player_wrap p {
            font-size: 20px
    }
        }
#play_wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}
#play {
    background: url("../img/s7/btn_play@2x.png") no-repeat center / contain;
}
@media (max-width: 767px) {
#play {
        margin-top: calc(64/750*100vw);
        width: calc(88/750*100vw);
        height: calc(88/750*100vw)
}
    }
@media (min-width: 768px) {
#play {
        margin-top: calc(60/1280*100vw);
        width: calc(88/1280*100vw);
        max-width: 88px;
        height: calc(88/1280*100vw);
        max-height: 88px
}
    }
@media (min-width: 1280px) {
#play {
        margin-top: 60px
}
    }
@keyframes slide_floor_arts_img {
    0% {
        opacity: 1;
        transform: translateX(18px) scale(1.04);
    }
    100% {
        opacity: 0;
        transform: translateX(-18px) scale(1.04);
    }
}
@keyframes slide_floor_arts_img_sp {
    0% {
        opacity: 1;
        transform: translateX(.6rem) scale(1.04);
    }
    100% {
        opacity: 0;
        transform: translateX(-1.6rem) scale(1.04);
    }
}
@keyframes slide_floor_arts_next {
    0% {
        -webkit-mask-position: -100% 0;
                mask-position: -100% 0;
    }
    100% {
        -webkit-mask-position: 100% 0;
                mask-position: 100% 0;
    }
}
/* overwrite begin */
.s1_logo:before,
.s1_logo:after {
    display: none !important;
}
/* overwrite end */
/* slide wrapper */
.slide_ani .splide__slide {
        overflow: hidden;
        -webkit-mask-image: radial-gradient(circle farthest-corner at 100% 0%, #000 60%, transparent 90%);
                mask-image: radial-gradient(circle farthest-corner at 100% 0%, #000 60%, transparent 90%);
        -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
        -webkit-mask-size: 200% 100%;
                mask-size: 200% 100%;
        -webkit-mask-position: -100% 0;
                mask-position: -100% 0;
        transition: -webkit-mask-position 5s cubic-bezier(0.3, 0.1, 0.1, 1);
        transition: mask-position 5s cubic-bezier(0.3, 0.1, 0.1, 1);
        transition: mask-position 5s cubic-bezier(0.3, 0.1, 0.1, 1), -webkit-mask-position 5s cubic-bezier(0.3, 0.1, 0.1, 1);
    }
.slide_ani .splide__slide img {
            -o-object-fit: cover;
               object-fit: cover;
        }
.slide_ani .splide__slide.is-prev {
            opacity: 1 !important;
        }
.slide_ani .splide__slide.is-active {
            animation: slide_floor_arts_next 5s -2s forwards;
        }
.slide_ani .splide__slide.is-active img {
                animation: slide_floor_arts_img 12s linear forwards;
            }
@media (max-width: 767px) {
.slide_ani .splide__slide.is-active img {
                    animation: slide_floor_arts_img_sp 12s linear forwards
            }
                }
.slide_ani .splide__arrows {
        position: absolute;
        top: 50%;
        left: 50%;
        height: 80%;
        transform: translate(-50%, -50%);
        z-index: 1;
    }
@media (min-width: 768px) {
.slide_ani .splide__arrows {
            width: calc(948/1280*100vw);
            max-width: 948px
    }
        }
.slide_ani .splide__arrows .splide__arrow {
            display: inline-block;
            position: absolute;
            border-top: 1px solid #FFFFFF;
            border-right: 1px solid #FFFFFF;
            z-index: 2;
        }
@media (max-width: 767px) {
.slide_ani .splide__arrows .splide__arrow { display: none
        } }
@media (min-width: 768px) {
.slide_ani .splide__arrows .splide__arrow {
                top: 50%;
                width: calc(50/1280*100vw);
                height: calc(50/1280*100vw);
                max-width: 50px;
                max-height: 50px
        }
            }
@media (min-width: 1280px) {
            }
.slide_ani .splide__arrows .splide__arrow--prev {
            left: 40px;

            margin-right: calc(125/1280*100vw);
            transform: rotate(-135deg);
        }
@media (min-width: 1280px) {
.slide_ani .splide__arrows .splide__arrow--prev { margin-right: 125px
        } }
.slide_ani .splide__arrows .splide__arrow--next {
            right: 40px;

            margin-left: calc(125/1280*100vw);
            transform: rotate(45deg);
        }
@media (min-width: 1280px) {
.slide_ani .splide__arrows .splide__arrow--next { margin-left: 125px
        } }
.slide_ani .splide__pagination {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        justify-content: space-between;
        z-index: 1;
    }
@media (max-width: 767px) {
.slide_ani .splide__pagination {
            bottom: calc(26/750*100vw);
            width: calc(117/750*100vw)
    }
        }
@media (min-width: 768px) {
.slide_ani .splide__pagination {
            bottom: calc(121/1280*100vw);
            width: calc(117/1280*100vw);
            max-width: 117px
    }
        }
@media (min-width: 1280px) {
.slide_ani .splide__pagination {
            bottom: 121px
    }
        }
.slide_ani .splide__pagination .splide__pagination__page {
            display: inline-block;
            border-radius: 50%;
            min-width: 3px;
            min-height: 3px;
            background: rgba(255, 255, 255, .5);
            pointer-events: none;
        }
@media (max-width: 767px) {
.slide_ani .splide__pagination .splide__pagination__page {
                width: calc(5/750*100vw);
                height: calc(5/750*100vw)
        }
            }
@media (min-width: 768px) {
.slide_ani .splide__pagination .splide__pagination__page {
                width: calc(5/1280*100vw);
                height: calc(5/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.slide_ani .splide__pagination .splide__pagination__page {
                width: 5px;
                height: 5px
        }
            }
.slide_ani .splide__pagination .splide__pagination__page.is-active {
                background: #FFFFFF;
            }
#s4_slider.slide_ani .splide__pagination {
    margin-bottom: 0;
}
@media (max-width: 767px) {
#s4_slider.slide_ani .splide__pagination {
        bottom: calc(75/750*100vw)
}
    }
@media (min-width: 768px) {
#s4_slider.slide_ani .splide__pagination {
        bottom: calc(96/1280*100vw)
}
    }
@media (min-width: 1280px) {
#s4_slider.slide_ani .splide__pagination {
        bottom: 96px
}
    }
@keyframes zoomIn {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(5);
        visibility: hidden;
    }
}
.landing {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100svh;
    z-index: 10;
    opacity: 1;
    animation: fadeOut 1.4s 3.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
}
.landing::before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: '';
        animation: zoomIn 2.8s .5s cubic-bezier(1,.22,1,-.15) forwards;
    }
@media (max-width: 767px) {
.landing::before {
            background: #070300 url("../img/landing/bg_sp@2x.jpg") no-repeat center / cover
    }
        }
@media (min-width: 768px) {
.landing::before {
            background: #070300 url("../img/landing/bg@2x.jpg") no-repeat center / cover
    }
        }
.landing .logo {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        content: '';
    }
@media (max-width: 767px) {
.landing .logo {
            width: calc(595 / 750 * 100vw);
            height: calc(40 / 750 * 100vw)
    }
        }
@media (min-width: 768px) {
.landing .logo {
            margin-top: calc(8 / 1280 * 100vw);
            width: calc(595 / 1280 * 100vw);
            max-width: 595px;
            height: calc(40 / 1280 * 100vw);
            max-height: 40px
    }
        }
@media (min-width: 1280px) {
.landing .logo {
            margin-top: 8px
    }
        }
.modal_menu_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100vw;
    background: rgba(20, 0, 0, .6);
    opacity: 0;
    z-index: -1;
}
.modal_menu_wrap.is_open {
        z-index: 999;
        animation: fadeIn .5s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
    }
.modal_menu {
    position: relative;
    background: #E6E6E6;
    width: 100%;
}
@media (max-width: 767px) {
.modal_menu {
        padding: calc(112/750*100vw) 0 calc(53/750*100vw);
        height: 100svh;
        overflow-y: scroll
}
    }
@media (min-width: 768px) {
.modal_menu {
        padding: calc(74/1280*100vw) 0 calc(73/1280*100vw);
        max-width: 1280px;
        overflow: hidden
}
    }
@media (min-width: 1280px) {
.modal_menu {
        padding: 74px 0 73px 0
}
    }
.modal_menu > .cross {
        display: inline-block;
        position: absolute;
    }
@media (max-width: 767px) {
.modal_menu > .cross {
            top: calc(36/750*100vw);
            right: calc(38/750*100vw);
            width: calc(30/750*100vw);
            height: calc(30/750*100vw)
    }
        }
@media (min-width: 768px) {
.modal_menu > .cross {
            top: calc(32/1280*100vw);
            right: calc(38/1280*100vw);
            width: calc(30/1280*100vw);
            max-width: 30px;
            height: calc(30/1280*100vw);
            max-height: 30px
    }
        }
@media (min-width: 1280px) {
.modal_menu > .cross {
            top: 32px;
            right: 38px
    }
        }
.modal_menu > .cross::before {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 100%;
            height: 1px;
            background: #0F0F0F;
            content: "";
        }
.modal_menu > .cross::after {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 100%;
            height: 1px;
            background: #0F0F0F;
            content: "";
        }
.modal_menu > .cross::before {
            transform: translate(-50%, -50%) rotate(135deg);
        }
.modal_menu > .cross::after {
            transform: translate(-50%, -50%) rotate(45deg);
        }
.modal_menu .genre {
        position: absolute;
        color: #0F0F0F;
        letter-spacing: .2em;
        line-height: 1.7;
    }
@media (max-width: 767px) {
.modal_menu .genre {
            top: calc(62/750*100vw);
            left: calc(74/750*100vw);
            font-size: calc(24/750*100vw);
            writing-mode: horizontal-tb
    }
        }
@media (min-width: 768px) {
.modal_menu .genre {
            top: calc(81/1280*100vw);
            left: calc(60/1280*100vw);
            font-size: calc(25/1280*100vw);
            writing-mode: vertical-rl
    }
        }
@media (min-width: 1280px) {
.modal_menu .genre {
            top: 81px;
            left: 60px;
            font-size: 25px
    }
        }
.modal_menu .genre::before {
            position: absolute;
            transform: translate(-50%, -50%);
            background-color: #0F0F0F;
            content: "";
        }
@media (max-width: 767px) {
.modal_menu .genre::before {
                top: calc(22/750*100vw);
                left: calc(-25/750*100vw);
                width: calc(1/750*100vw);
                height: calc(22/750*100vw)
        }
            }
@media (min-width: 768px) {
.modal_menu .genre::before {
                top: calc(-16/1280*100vw);
                left: calc(24/1280*100vw);
                width: calc(50/1280*100vw);
                max-width: 50px;
                height: calc(1/1280*100vw);
                max-height: 1px
        }
            }
@media (min-width: 1280px) {
.modal_menu .genre::before {
                top: -16px;
                left: 24px
        }
            }
.modal_menu .menu_select p {
            color: #0F0F0F;
            letter-spacing: .2em;
        }
@media (max-width: 767px) {
.modal_menu .menu_select p {
                margin-top: calc(22/750*100vw);
                font-size: calc(24/750*100vw)
        }
            }
@media (min-width: 768px) {
.modal_menu .menu_select p {
                margin-top: calc(17/1280*100vw);
                font-size: calc(16/1280*100vw)
        }
            }
@media (min-width: 1280px) {
.modal_menu .menu_select p {
                margin-top: 17px;
                font-size: 16px
        }
            }
.modal_menu .menu_select {
        text-align: center;
    }
@media (max-width: 767px) {
.modal_menu .menu_select { margin-bottom: calc(36/750*100vw)
    } }
@media (min-width: 768px) {
.modal_menu .menu_select { margin-bottom: calc(45/1280*100vw)
    } }
@media (min-width: 1280px) {
.modal_menu .menu_select { margin-bottom: 45px
    } }
@media (max-width: 767px) {
.modal_menu .menu_select > div { margin-bottom: calc(23/750*100vw)
        } }
@media (min-width: 768px) {
.modal_menu .menu_select > div { margin-bottom: calc(17/1280*100vw)
        } }
@media (min-width: 1280px) {
.modal_menu .menu_select > div { margin-bottom: 17px
        } }
@media (max-width: 767px) {
.modal_menu .menu_select > div img {
                    width: calc(650/750*100vw);
                    height: calc(396/750*100vw)
            }
                }
@media (min-width: 768px) {
.modal_menu .menu_select > div img {
                    width: calc(702/1280*100vw);
                    max-width: 702px;
                    height: calc(428/1280*100vw);
                    max-height: 428px
            }
                }
.modal_menu .menu_select > p {
            color: #0F0F0F;
            letter-spacing: .2em;
        }
@media (max-width: 767px) {
.modal_menu .menu_select > p { font-size: calc(24/750*100vw)
        } }
@media (min-width: 768px) {
.modal_menu .menu_select > p { font-size: calc(16/1280*100vw)
        } }
@media (min-width: 1280px) {
.modal_menu .menu_select > p { font-size: 16px
        } }
.modal_menu .menu_lists {
        display: flex;
        align-items: center;
        justify-content: center;
    }
.modal_menu .menu_lists .arrow_before, .modal_menu .menu_lists .arrow_after {
            display: inline-block;
            border-top: 1px solid black;
            border-right: 1px solid black;
        }
@media (max-width: 767px) {
.modal_menu .menu_lists .arrow_before, .modal_menu .menu_lists .arrow_after { display: none
        } }
@media (min-width: 768px) {
.modal_menu .menu_lists .arrow_before, .modal_menu .menu_lists .arrow_after {
                width: calc(20/1280*100vw);
                max-width: 20px;
                height: calc(20/1280*100vw);
                max-height: 20px
        }
            }
.modal_menu .menu_lists .arrow_before {
            transform: rotate(-135deg);
        }
.modal_menu .menu_lists .arrow_after {
            transform: rotate(45deg);
        }
.modal_menu .menu_lists > .menu_list {
            display: flex;
            justify-content: space-between;
            align-items: center;
            width: calc(100% - 186px);
            margin: 0 auto;
            overflow-x: scroll;
        }
@media (max-width: 767px) {
.modal_menu .menu_lists > .menu_list { 
                flex-wrap: wrap;
                width: calc(415/750*100vw);
                margin: auto
        }
            }
.modal_menu .menu_lists > .menu_list > .menu_pic {
                border: 1px solid transparent;
            }
@media (max-width: 767px) {
.modal_menu .menu_lists > .menu_list > .menu_pic {
                    margin-right: calc(28/750*100vw)
            }
                }
@media (min-width: 768px) {
.modal_menu .menu_lists > .menu_list > .menu_pic {
                    margin-right: calc(34/1280*100vw)
            }
                }
@media (min-width: 1280px) {
.modal_menu .menu_lists > .menu_list > .menu_pic {
                    margin-right: 34px
            }
                }
.modal_menu .menu_lists > .menu_list > .menu_pic.selected {
                    border-color: #0F0F0F;
                }
@media (max-width: 767px) {
.modal_menu .menu_lists > .menu_list > .menu_pic > img { 
                    width: calc(190/750*100vw);
                    height: calc(115/750*100vw)
            }
                }
@media (min-width: 768px) {
.modal_menu .menu_lists > .menu_list > .menu_pic > img {
                    width: calc(190/1280*100vw);
                    max-width: 190px;
                    height: calc(115/1280*100vw);
                    max-height: 115px
            }
                }
@media (max-width: 767px) {
.modal_menu .menu_lists .menu_list.splide__list {
                flex-wrap: wrap;
                justify-content: space-between;
                margin-top: calc(-26/750*100vw) !important
        }
            }
@media (min-width: 768px) {
.modal_menu .menu_lists .menu_list.splide__list {
                margin-left: calc(36/1280*100vw) !important;
                width: calc((1094 + 36)/1280*100vw);
                max-width: calc(1094px + 36px);
                cursor: pointer
        }
            }
@media (min-width: 1280px) {
.modal_menu .menu_lists .menu_list.splide__list {
                margin-left: 36px !important
        }
            }
.modal_menu .menu_lists .splide__slide {
            border: none;
            overflow: hidden;
        }
@media (max-width: 767px) {
.modal_menu .menu_lists .splide__slide {
                margin-top: calc(26/750*100vw)
        }
            }
.modal_menu .menu_lists .splide__slide.is-active {
                border: 1px solid #0F0F0F;
            }
.modal_menu .menu_lists .splide__track {
            margin-right: auto;
            margin-left: auto;
        }
@media (max-width: 767px) {
.modal_menu .menu_lists .splide__track {
                width: calc(416/750*100vw)
        }
            }
@media (max-width: 767px) {
.modal_menu .menu_lists .splide__arrows {
                display: none
        }
            }
@media (min-width: 768px) {
.modal_menu .menu_lists .splide__arrows {
                position: absolute;
                top: 42%;
                width: calc(1200 / 1280 * 100vw);
                max-width: 1200px;
                transform: translateY(-50%)
        }
            }
.modal_menu .menu_lists .splide__arrows .splide__arrow {
                position: absolute;
            }
.modal_menu .menu_lists .splide__arrows .splide__arrow.splide__arrow--prev {
                    left: 0;
                }
.modal_menu .menu_lists .splide__arrows .splide__arrow.splide__arrow--next {
                    right: 0;
                }
