*,*:before,*:after{
    margin:0;
    padding:0;
    box-sizing:inherit;
    -webkit-user-select:inherit;
    -ms-user-select:inherit;
    user-select:inherit;
    -webkit-user-drag:inherit;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    -webkit-backface-visibility:inherit;
    backface-visibility:inherit
}
html{
    box-sizing:border-box;
    line-height:1;
    -webkit-user-drag:none
}
main,canvas,svg,img,video{
    display:block
}
img,video{
    width:100%
}
svg{
    -webkit-user-select:none;
    -ms-user-select:none;
    user-select:none;
    pointer-events:none
}
h1,h2,h3,h4,h5,h6{
    font-weight:inherit
}
a{
    color:inherit;
    text-decoration:none
}
ol,ul{
    list-style:none
}
input,button,select,textarea{
    -webkit-appearance:none;
    appearance:none;
    border:none;
    border-radius:0;
    background:none;
    outline:none;
    font-family:inherit;
    font-size:inherit;
    color:inherit
}
:root{
    --w: (calc(var(--vw, 1vw) * 100) - 40px)
}
@font-face{
    font-family:"AmzGrotesk-Light";
    font-weight:300;
    font-style:normal;
    font-display:swap;
    src:url("../fonts/AmzGrotesk-Light.woff2") format("woff2"),url("../fonts/AmzGrotesk-Light.woff") format("woff")
}
html{
    background-color:#fff;
    color:#222;
    color: #4a5a3f;
    transition-property:background-color, color;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1);
}
html.no-scroll{
    overflow:hidden
}
html.is-dark{
    background-color:#000;
    background-color:#4a5a3f;
    color:#fff;
}
html.is-dark .siteHeader_logo svg{
    fill:#fff;
}
body {
    font-family:AmzGrotesk-Light,source-han-sans-japanese,sans-serif;
    font-size:11px;
    letter-spacing:.05em;
    font-feature-settings:"palt";
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    -ms-scroll-chaining:none;
    overscroll-behavior:none;
}
@media(min-width: 960px){
    body{
        font-size:14px
    }
}
.svgAssets{
    display:none
}
.c-text-en{
    font-size:11px;
    line-height:2.1
}
@media(min-width: 960px){
    .c-text-en{
        font-size:15px
    }
}
.c-heading-en{
    font-size:11px
}
@media(min-width: 960px){
    .c-heading-en{
        font-size:18px
    }
}
.c-heading-en2{
    font-size:20px
}
@media(min-width: 960px){
    .c-heading-en2{
        font-size:26px
    }
}

/* C Heading */

.c-heading-jp{
    font-size:20px;
    line-height:1.8;
}
@media(min-width: 960px){
    .c-heading-jp{
        font-size:26px;
    }
}
@media(min-width: 1440px){
    .c-heading-jp{
        font-size:30px
    }
}

/* C Text */

.c-text-jp{
    font-size:11px;
    letter-spacing:.06em
}
@media(min-width: 960px){
    .c-text-jp{
        font-size:15px
    }
}
.c-para-jp{
    font-size:11px;
    line-height:2.1;
    letter-spacing:.06em;
    text-align:justify
}
@media(min-width: 960px){
    .c-para-jp{
        font-size:15px
    }
}
.c-para-jp2{
    font-size:11px;
    line-height:1.8;
    letter-spacing:.06em;
    text-align:justify
}
@media(min-width: 960px){
    .c-para-jp2{
        font-size:14px
    }
}
.c-note-jp{
    color:#666;
    font-size:11px;
    line-height:2.1;
    letter-spacing:.06em;
    text-align:justify
}
@media(min-width: 960px){
    .c-note-jp{
        font-size:15px
    }
}
.linkBtn{
    position:relative;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    width:180px;
    height:46px;
    border-radius:23px;
    white-space:nowrap;
    background-color:rgba(0,0,0,0);
    transition-property:color, background-color;
    transition-duration:.4s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.linkBtn.is-white{
    background-color:#fff
}
.linkBtn.is-disabled{
    pointer-events:none
}
@media(min-width: 960px){
    .linkBtn{
        width:auto;
        height:50px;
        border-radius:25px;
        padding:0 60px
    }
}
@media(hover: hover){
    .linkBtn:hover{
        color:#fff;
        background-color:#4a7436;
        background-color: #76876a;

    }
    .linkBtn:hover::before{
        opacity:0
    }
}
.linkBtn::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    display:block;
    width:100%;
    height:100%;
    border-radius:23px;
    border:1px solid currentColor;
    opacity:.75;
    pointer-events:none;
    transition-property:opacity;
    transition-duration:.4s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(min-width: 960px){
    .linkBtn::before{
        border-radius:25px
    }
}
.f-jp{
    font-family:source-han-sans-japanese,sans-serif
}
.show-pc{
    display:none
}
@media(min-width: 960px){
    .show-pc{
        display:block
    }
}
@media(min-width: 960px){
    .show-sp{
        display:none
    }
}
#Grid{
    position:fixed;
    z-index:10000;
    top:0;
    left:0;
    right:0;
    bottom:0;
    pointer-events:none
}
#Grid.off{
    visibility:hidden
}
[data-device=mobile] #Grid{
    display:none
}
#Grid .line{
    position:absolute;
    top:0;
    width:1px;
    height:100%;
    background-color:aqua;
    opacity:.5
}
#Grid .line-1{
    left:calc(0*var(--w) + 20px)
}
#Grid .line-2{
    left:calc(.0166666667*var(--w) + 20px)
}
#Grid .line-3{
    left:calc(.0333333333*var(--w) + 20px)
}
#Grid .line-4{
    left:calc(.05*var(--w) + 20px)
}
#Grid .line-5{
    left:calc(.0666666667*var(--w) + 20px)
}
#Grid .line-6{
    left:calc(.0833333333*var(--w) + 20px)
}
#Grid .line-7{
    left:calc(.1*var(--w) + 20px)
}
#Grid .line-8{
    left:calc(.1166666667*var(--w) + 20px)
}
#Grid .line-9{
    left:calc(.1333333333*var(--w) + 20px)
}
#Grid .line-10{
    left:calc(.15*var(--w) + 20px)
}
#Grid .line-11{
    left:calc(.1666666667*var(--w) + 20px)
}
#Grid .line-12{
    left:calc(.1833333333*var(--w) + 20px)
}
#Grid .line-13{
    left:calc(.2*var(--w) + 20px)
}
#Grid .line-14{
    left:calc(.2166666667*var(--w) + 20px)
}
#Grid .line-15{
    left:calc(.2333333333*var(--w) + 20px)
}
#Grid .line-16{
    left:calc(.25*var(--w) + 20px)
}
#Grid .line-17{
    left:calc(.2666666667*var(--w) + 20px)
}
#Grid .line-18{
    left:calc(.2833333333*var(--w) + 20px)
}
#Grid .line-19{
    left:calc(.3*var(--w) + 20px)
}
#Grid .line-20{
    left:calc(.3166666667*var(--w) + 20px)
}
#Grid .line-21{
    left:calc(.3333333333*var(--w) + 20px)
}
#Grid .line-22{
    left:calc(.35*var(--w) + 20px)
}
#Grid .line-23{
    left:calc(.3666666667*var(--w) + 20px)
}
#Grid .line-24{
    left:calc(.3833333333*var(--w) + 20px)
}
#Grid .line-25{
    left:calc(.4*var(--w) + 20px)
}
#Grid .line-26{
    left:calc(.4166666667*var(--w) + 20px)
}
#Grid .line-27{
    left:calc(.4333333333*var(--w) + 20px)
}
#Grid .line-28{
    left:calc(.45*var(--w) + 20px)
}
#Grid .line-29{
    left:calc(.4666666667*var(--w) + 20px)
}
#Grid .line-30{
    left:calc(.4833333333*var(--w) + 20px)
}
#Grid .line-31{
    left:calc(.5*var(--w) + 20px)
}
#Grid .line-32{
    left:calc(.5166666667*var(--w) + 20px)
}
#Grid .line-33{
    left:calc(.5333333333*var(--w) + 20px)
}
#Grid .line-34{
    left:calc(.55*var(--w) + 20px)
}
#Grid .line-35{
    left:calc(.5666666667*var(--w) + 20px)
}
#Grid .line-36{
    left:calc(.5833333333*var(--w) + 20px)
}
#Grid .line-37{
    left:calc(.6*var(--w) + 20px)
}
#Grid .line-38{
    left:calc(.6166666667*var(--w) + 20px)
}
#Grid .line-39{
    left:calc(.6333333333*var(--w) + 20px)
}
#Grid .line-40{
    left:calc(.65*var(--w) + 20px)
}
#Grid .line-41{
    left:calc(.6666666667*var(--w) + 20px)
}
#Grid .line-42{
    left:calc(.6833333333*var(--w) + 20px)
}
#Grid .line-43{
    left:calc(.7*var(--w) + 20px)
}
#Grid .line-44{
    left:calc(.7166666667*var(--w) + 20px)
}
#Grid .line-45{
    left:calc(.7333333333*var(--w) + 20px)
}
#Grid .line-46{
    left:calc(.75*var(--w) + 20px)
}
#Grid .line-47{
    left:calc(.7666666667*var(--w) + 20px)
}
#Grid .line-48{
    left:calc(.7833333333*var(--w) + 20px)
}
#Grid .line-49{
    left:calc(.8*var(--w) + 20px)
}
#Grid .line-50{
    left:calc(.8166666667*var(--w) + 20px)
}
#Grid .line-51{
    left:calc(.8333333333*var(--w) + 20px)
}
#Grid .line-52{
    left:calc(.85*var(--w) + 20px)
}
#Grid .line-53{
    left:calc(.8666666667*var(--w) + 20px)
}
#Grid .line-54{
    left:calc(.8833333333*var(--w) + 20px)
}
#Grid .line-55{
    left:calc(.9*var(--w) + 20px)
}
#Grid .line-56{
    left:calc(.9166666667*var(--w) + 20px)
}
#Grid .line-57{
    left:calc(.9333333333*var(--w) + 20px)
}
#Grid .line-58{
    left:calc(.95*var(--w) + 20px)
}
#Grid .line-59{
    left:calc(.9666666667*var(--w) + 20px)
}
#Grid .line-60{
    left:calc(.9833333333*var(--w) + 20px)
}
#Grid .line-61{
    left:calc(1*var(--w) + 20px)
}



.intro{
    position:fixed;
    z-index:1000;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background-color:#fff
}
.intro_t1{
    position:absolute;
    left:calc(50% - 60px);
    top:calc(50% - 60px);
    width:120px;
    height:120px;
}
@media(min-width: 960px){
    .intro_t1{
        left:calc(50% - 75px);
        top:calc(50% - 75px);
        width:150px;
        height:150px;
    }
}

.intro_t1 svg {
    width: 100%;
    height: 100%;
    fill: #222;
}



.intro_t2{
    position:absolute;
    left:calc(50% - 110px);
    top:calc(50% - 8px);
    font-size:15px;
    white-space:nowrap;
    letter-spacing:.1em
}
@media(min-width: 960px){
    .intro_t2{
        left:calc(50% - 162px);
        top:calc(50% - 11px);
        font-size:22px
    }
}
.intro_t2 span{
    display:inline-block;
    color:#222
}
#Layer{
    position:fixed;
    z-index:100;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,.3);
    transition-property:opacity;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
#Layer.hide{
    opacity:0;
    pointer-events:none
}
@media(min-width: 960px){
    #PageWrapper{
        position:fixed;
        z-index:1;
        left:0;
        right:0;
        top:0;
        bottom:0;
        overflow:hidden
    }
}
.is-transitioning #PageWrapper{
    pointer-events:none
}
.pageContainer{
    width:100%;
    -webkit-user-select:text;
    -ms-user-select:text;
    user-select:text
}
.pageContainer.is-leaving{
    position:fixed;
    left:0;
    top:0
}
.siteHeader{
    position:fixed;
    z-index:11;
    left:0;
    top:0;
    -webkit-user-select:none;
    -ms-user-select:none;
    user-select:none
}
.siteHeader_logo{
    position:fixed;
    left:20px;
    top:19px
}
@media(min-width: 960px){
    .siteHeader_logo{
        left:calc(3.3333333333vw + 20px);
        left:calc(.0333333333*var(--w) + 20px);
        top:30px
    }
}
.siteHeader_logo a{
    display:block;
    width:167px;
    height:19px
}
@media(min-width: 960px){
    .siteHeader_logo a{
        width:200px;
        height:22px
    }
}
@media(min-width: 1440px){
    .siteHeader_logo a{
        width:210px;
        height:23px
    }
}
.siteHeader_logo svg{
    fill:#222;
    transition-property:fill;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.movieLink{
    position:fixed;
    z-index:11;
    right:calc(3.3333333333vw + 20px + 90px);
    right:calc(.0333333333*var(--w) + 20px + 90px);
    top:30px;
    display:block;
    color:#eee;
    font-size:15px;
    letter-spacing:.02em;
    mix-blend-mode:difference;
    transition-property:opacity;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(hover: hover){
    .movieLink:hover{
        opacity:.75
    }
}
@media not all and (min-width: 960px){
    .movieLink{
        display:none
    }
}

/* Menu Btn */

.menuBtn{
    position:fixed;
    z-index:11;
    right:20px;
    top:21px;
    color:#eee;
    mix-blend-mode:difference;
    cursor:pointer;
    transition-property:opacity;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1);
    display: none;
}
@media(min-width: 960px){
    .menuBtn{
        right:calc(3.3333333333vw + 20px);
        right:calc(.0333333333*var(--w) + 20px);
        top:30px
    }
}
@media(hover: hover){
    .menuBtn:hover{
        opacity:.75
    }
}
.menuBtn>div{
    font-size:13px;
    letter-spacing:.02em;
    transition-property:opacity, transform;
    transition-duration:.4s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(min-width: 960px){
    .menuBtn>div{
        font-size:15px
    }
}
.menuBtn ._open.hide{
    opacity:0;
    transform:translateY(-100%)
}
.menuBtn ._close{
    position:absolute;
    left:0;
    top:0
}
.menuBtn ._close.hide{
    opacity:0;
    transform:translateY(100%)
}
.siteFooter{
    padding:100px 30px;
    background-color:#111;
    background-color: #4a5a3f;
}
@media(min-width: 960px){
    .siteFooter{
        padding:13.3332vw calc(3.3333333333vw + 20px) 6.6666vw;
        padding:13.3332vw calc(.0333333333*var(--w) + 20px) 6.6666vw
    }
}
.siteFooter_row1{
    width:315px;
    margin:0 auto
}
@media(min-width: 960px){
    .siteFooter_row1{
        width:100%;
        display:flex;
        justify-content:space-between;
        margin:0
    }
}
.siteFooter_row2{
    width:315px;
    margin:30px auto 0;
    color:#fff
}
@media(min-width: 960px){
    .siteFooter_row2{
        width:100%;
        display:flex;
        flex-direction:row-reverse;
        justify-content:space-between;
        align-items:flex-end;
        margin:200px 0 0
    }
}
.siteFooter_logo{
    display:block;
    width:167px;
    height:19px;
    margin:0 auto
}
@media(min-width: 960px){
    .siteFooter_logo{
        width:200px;
        height:22px;
        margin:0
    }
}
@media(min-width: 1440px){
    .siteFooter_logo{
        width:210px;
        height:23px
    }
}
.siteFooter_logo svg{
    fill:#fff
}
.siteFooter_navWrap{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    margin:45px 0 0
}
@media(min-width: 960px){
    .siteFooter_navWrap{
        flex-wrap:nowrap;
        justify-content:flex-start;
        column-gap:calc(.0333333333*var(--w));
        margin:0
    }
}
.siteFooter_nav{
    border-top:1px solid rgba(255,255,255,0.5);
    padding:0 0 45px;
}
@media(min-width: 960px){
    .siteFooter_nav{
        padding:0
    }
}
.siteFooter_nav-main{
    width:100%
}
@media(min-width: 960px){
    .siteFooter_nav-main{
        width:auto
    }
}
.siteFooter_nav-main ._listWrap{
    display:flex
}
.siteFooter_nav-main ._list{
    width:50%
}
@media(min-width: 960px){
    .siteFooter_nav-main ._list{
        width:13.3333333333vw;
        width:calc(.1333333333*var(--w))
    }
}
.siteFooter_nav-sub{
    width:calc(50% - 10px)
}
@media(min-width: 960px){
    .siteFooter_nav-sub{
        width:auto
    }
}
.siteFooter_nav ._heading{
    margin:25px 0 0;
    color:rgba(255,255,255,0.5);;
    text-align:center
}
@media(min-width: 960px){
    .siteFooter_nav ._heading{
        text-align:left
    }
}
.siteFooter_nav ._listWrap{
    margin:25px 0 0
}
@media(min-width: 960px){
    .siteFooter_nav ._listWrap{
        margin:35px 0 0
    }
}
.siteFooter_nav ._list{
    color:#fff;
    text-align:center
}
@media(min-width: 960px){
    .siteFooter_nav ._list{
        width:13.3333333333vw;
        width:calc(.1333333333*var(--w));
        text-align:left
    }
}
.siteFooter_nav ._item{
    line-height:22px;
    white-space:nowrap
}
@media(min-width: 960px){
    .siteFooter_nav ._item{
        line-height:34px
    }
}
.siteFooter_nav ._item a{
    display:block;
    transition-property:color;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(hover: hover){
    .siteFooter_nav ._item a:hover{
        color:#4a7436
    }
}
.siteFooter_btns{
    display:flex;
    column-gap:20px
}
@media(min-width: 960px){
    .siteFooter_btns{
        column-gap:30px
    }
}
.siteFooter_cr{
    margin:75px 0 0;
    text-align:center
}
@media(min-width: 960px){
    .siteFooter_cr{
        margin:0;
        text-align:left
    }
}

/* Menu */

.menu{
    position:fixed;
    z-index:10;
    left:0;
    top:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    align-items:flex-start;
    width:100%;
    height:100%;
    background-color:#fff;
    padding:0 20px 20px
}

.menu {
    display: none;
}

html.is-dark .menu{
    background-color:#000;
    background-color: #4a5a3f;
}
@media(min-width: 960px){
    .menu{
        padding:0
    }
}
.menu_pages{
    display:flex;
    flex-direction:column
}
@media(min-width: 960px){
    .menu_pages{
        position:absolute;
        left:calc(70vw + 20px);
        left:calc(.7*var(--w) + 20px);
        top:28px;
        white-space:nowrap
    }
}
.menu_page{
    overflow:hidden
}
.menu_page+.menu_page{
    margin-top:13px
}
.menu_page a{
    position:relative;
    display:block;
    padding-right:15px
}
.menu_page a::before{
    content:"";
    display:block;
    position:absolute;
    left:-5px;
    top:-5px;
    width:calc(100% + 10px);
    height:calc(100% + 10px)
}
.menu_page a::after{
    content:"";
    display:block;
    position:absolute;
    left:0;
    top:7px;
    width:6px;
    height:6px;
    background-color:#4a7436;
    border-radius:50%;
    opacity:0;
    pointer-events:none;
    transition-property:opacity;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.menu_page a span{
    display:inline-block;
    font-size:19px;
    line-height:1.4;
    transition-property:transform;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(min-width: 960px){
    .menu_page a span{
        font-size:15px
    }
}
@media(hover: hover){
    .menu_page a:hover::after{
        opacity:1
    }
    .menu_page a:hover span{
        transform:translateX(15px)
    }
}
.menu_videoLink{
    margin-top:32px;
    font-size:15px;
    letter-spacing:.05em
}
@media(min-width: 960px){
    .menu_videoLink{
        display:none
    }
}
.menu_cr{
    margin-top:40px;
    color:#444;
    line-height:15px
}
@media(min-width: 960px){
    .menu_cr{
        display:none
    }
}
.menu_imageArea{
    display:none
}
@media(min-width: 960px){
    [data-device=desktop] .menu_imageArea{
        position:absolute;
        left:0;
        bottom:0;
        display:block;
        width:100%;
        height:calc(100vh - 410px);
        overflow:hidden
    }
}
.menu_image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    overflow:hidden
}
.menu_image>div{
    width:100%;
    height:100%;
    background-size:100% auto;
    background-position:center;
    background-repeat:no-repeat
}
.layout1_heading{
    margin-bottom:20px
}
@media(min-width: 960px){
    .layout1_heading{
        margin-bottom:30px
    }
}
@media(min-width: 960px){
    .layout1_box{
        display:flex;
        justify-content:space-between;
        align-items:flex-start
    }
}
@media(min-width: 960px){
    .layout1_col1{
        margin-top:-4px;
        padding-right:3.3333333333vw;
        padding-right:calc(.0333333333*var(--w))
    }
}
.layout1_col2{
    margin-top:25px
}
@media(min-width: 960px){
    .layout1_col2{
        width:40vw;
        width:calc(.4*var(--w));
        margin-top:0
    }
}
.layout1_linkArea{
    display:flex;
    justify-content:center;
    column-gap:20px;
    margin:40px 0 0
}
@media(min-width: 960px){
    .layout1_linkArea{
        justify-content:flex-end
    }
}
.layout2_headingEn{
    margin-bottom:25px
}
@media(min-width: 960px){
    .layout2_headingEn{
        margin-bottom:35px
    }
}
.layout2_subTitle{
    margin-bottom:25px
}
@media(min-width: 960px){
    .layout2_subTitle{
        margin-bottom:35px
    }
}
.layout2_text{
    margin-top:20px
}
@media(min-width: 960px){
    .layout2_text{
        margin-top:30px
    }
}
.layout2_note{
    margin-top:1em
}
.layout2_linkArea{
    margin:40px 0 0;
    text-align:center
}
@media(min-width: 960px){
    .layout2_linkArea{
        text-align:left
    }
}
.pageHeader ._title{
    padding:calc(100px - .35em) 20px 65px;
    font-size:60px;
    line-height:1.1;
    letter-spacing:0
}
@media(min-width: 960px){
    .pageHeader ._title{
        padding:calc(200px - .35em) calc(3.3333333333vw + 20px) 150px;
        padding:calc(200px - .35em) calc(.0333333333*var(--w) + 20px) 150px;
        font-size:100px;
        line-height:1.4
    }
}
.pageHeader ._title span {
    font-size:50%;
    line-height:1;
}

.pageHeader ._image{
    position:relative;
    overflow:hidden
}
.pageHeader ._image::before{
    content:"";
    display:block;
    width:100%;
    padding-top:133.3333333333%;
    pointer-events:none
}
@media(min-width: 960px){
    .pageHeader ._image::before{
        content:"";
        display:block;
        width:100%;
        padding-top:60.000024%;
        pointer-events:none
    }
}
.pageHeader ._image img{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transform-origin:center top
}
.textSec{
    padding:75px 30px
}
@media(min-width: 960px){
    .textSec{
        padding:13.3332vw calc(10vw + 20px) 16.6665vw;
        padding:13.3332vw calc(.1*var(--w) + 20px) 16.6665vw
    }
}
.imagesRow{
    width:100%;
    padding:0 30px;
    overflow:hidden;
    -webkit-user-select:none;
    -ms-user-select:none;
    user-select:none
}
@media(min-width: 960px){
    .imagesRow{
        padding:0 calc(6.6666666667vw + 20px);
        padding:0 calc(.0666666667*var(--w) + 20px)
    }
}
.imagesRow_content{
    display:inline-flex
}
@media(min-width: 960px){
    .imagesRow_content{
        display:flex
    }
}
.imagesRow_item{
    width:225px
}
@media(min-width: 960px){
    .imagesRow_item{
        width:calc(25% - 22.5px)
    }
}
.imagesRow_item+.imagesRow_item{
    margin-left:15px
}
@media(min-width: 960px){
    .imagesRow_item+.imagesRow_item{
        margin-left:30px
    }
}
@media(hover: hover){
    .imagesRow a:hover img{
        transform:scale(1.05)
    }
}
.imagesRow_image{
    overflow:hidden
}
.imagesRow_image img{
    transition-property:transform;
    transition-duration:.5s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.imagesRow_title{
    margin:1.5em 0 0 -0.04em;
    font-size:14px;
    line-height:1.8;
    letter-spacing:.02em
}
@media(min-width: 960px){
    .imagesRow_title{
        font-size:16px
    }
}
.imagesRow_text{
    margin:1.25em 0 0;
    font-size:14px;
    line-height:2
}
.imagesRow2{
    width:100%;
    padding:0 30px;
    overflow:hidden;
    -webkit-user-select:none;
    -ms-user-select:none;
    user-select:none
}
@media(min-width: 960px){
    .imagesRow2{
        padding:0 calc(6.6666666667vw + 20px);
        padding:0 calc(.0666666667*var(--w) + 20px)
    }
}
.imagesRow2_content{
    display:inline-flex
}
@media(min-width: 960px){
    .imagesRow2_content{
        display:flex;
        flex-wrap:wrap;
        justify-content:space-between;
        margin:-80px 0 0 0
    }
}
.imagesRow2_item{
    width:225px
}
@media(min-width: 960px){
    .imagesRow2_item{
        width:26.6666666667vw;
        width:calc(.2666666667*var(--w));
        margin:80px 0 0 0
    }
}
@media not all and (min-width: 960px){
    .imagesRow2_item+.imagesRow2_item{
        margin:0 0 0 15px
    }
}
.imagesRow2_title{
    margin:1.5em 0 0 -0.04em;
    font-size:14px;
    line-height:1.8;
    letter-spacing:.02em
}
@media(min-width: 960px){
    .imagesRow2_title{
        font-size:16px
    }
}
.imagesRow2_text{
    margin:1.25em 0 0;
    font-size:14px;
    line-height:2
}
.recentArticles{
    padding:0 30px 150px
}
@media(min-width: 960px){
    .recentArticles{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        padding:0 calc(3.3333333333vw + 20px) 16.6665vw;
        padding:0 calc(.0333333333*var(--w) + 20px) 16.6665vw
    }
}
.recentArticles_heading{
    text-align:center
}
@media(min-width: 960px){
    .recentArticles_heading{
        text-align:left
    }
}
.recentArticles_content{
    margin-top:75px
}
@media(min-width: 960px){
    .recentArticles_content{
        width:63.3333333333vw;
        width:calc(.6333333333*var(--w));
        margin-top:0
    }
}
.recentArticles_list{
    display:flex;
    flex-direction:column;
    justify-content:flex-start
}
@media(min-width: 960px){
    .recentArticles_list{
        width:100%;
        flex-direction:row
    }
}
.recentArticles_item+.recentArticles_item{
    margin:10px 0 0
}
@media(min-width: 960px){
    .recentArticles_item+.recentArticles_item{
        margin:0 0 0 30px
    }
}
.recentArticles_item a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    overflow:hidden
}
@media(min-width: 960px){
    .recentArticles_item a{
        display:block;
        width:100%
    }
}
@media(hover: hover){
    .recentArticles_item a:hover img{
        transform:scale(1.05)
    }
}
.recentArticles_item ._image{
    width:calc(50% - 10px);
    overflow:hidden
}
@media(min-width: 960px){
    .recentArticles_item ._image{
        width:100%
    }
}
.recentArticles_item ._image img{
    transition-property:transform;
    transition-duration:.5s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.recentArticles_item ._text{
    width:calc(50% - 10px)
}
@media(min-width: 960px){
    .recentArticles_item ._text{
        width:100%;
        margin-top:15px
    }
}
.recentArticles_item ._date{
    font-size:11px
}
@media(min-width: 960px){
    .recentArticles_item ._date{
        font-size:12px
    }
}
.recentArticles_item ._title{
    margin-top:15px
}
@media(min-width: 960px){
    .recentArticles_item ._title{
        margin-top:10px
    }
}
.recentNews{
    padding:0 30px 0
}
@media(min-width: 960px){
    .recentNews{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        padding:0 calc(3.3333333333vw + 20px) 0;
        padding:0 calc(.0333333333*var(--w) + 20px) 0
    }
}
.recentNews_heading{
    text-align:center
}
@media(min-width: 960px){
    .recentNews_heading{
        text-align:left
    }
}
.recentNews_content{
    margin-top:75px
}
@media(min-width: 960px){
    .recentNews_content{
        width:63.3333333333vw;
        width:calc(.6333333333*var(--w));
        margin-top:0
    }
}
.recentNews_link{
    display:flex;
    justify-content:center;
    margin:40px 0 0
}
@media(min-width: 960px){
    .recentNews_link{
        justify-content:flex-end
    }
}
.lineup{
    padding:150px 30px
}
@media(min-width: 960px){
    .lineup{
        padding:19.9998vw calc(3.3333333333vw + 20px);
        padding:19.9998vw calc(.0333333333*var(--w) + 20px)
    }
}
[data-page-namespace=lineup] .lineup{
    padding:0 20px 150px
}
@media(min-width: 960px){
    [data-page-namespace=lineup] .lineup{
        padding:0 calc(3.3333333333vw + 20px) 19.9998vw;
        padding:0 calc(.0333333333*var(--w) + 20px) 19.9998vw
    }
}
.lineup_heading{
    text-align:center
}
.lineup_heading+.lineup_list{
    margin-top:75px
}
@media(min-width: 960px){
    .lineup_heading+.lineup_list{
        margin-top:100px
    }
}
.lineup_list{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:30px 15px
}
@media(min-width: 960px){
    .lineup_list{
        gap:0
    }
}
.lineup_item{
    width:calc(50% - 7.5px)
}
@media(min-width: 960px){
    .lineup_item{
        width:calc(25% - 22.5px)
    }
}
@media(hover: hover){
    .lineup_item:hover .lineup_image ._hover{
        opacity:1
    }
}
.lineup_image{
    position:relative;
    overflow:hidden
}
.lineup_image ._hover{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:auto;
    opacity:0;
    transition-property:opacity, transform;
    transition-duration:.4s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.lineup_title{
    margin-top:1em;
    text-align:center
}
.nextContent{
    position:relative;
    margin-top:150px;
    padding:0 10px
}
@media(min-width: 960px){
    .nextContent{
        height:590px;
        margin-top:300px;
        padding:0 calc(3.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px)
    }
}
.nextContent_inner{
    display:block;
    padding:50px 0 75px;
    border-top:1px solid #dedede;
    border-bottom:1px solid #dedede
}
html.is-dark .nextContent_inner{
    border-top:1px solid #3f3f3f;
    border-bottom:1px solid #3f3f3f
}
@media(min-width: 960px){
    .nextContent_inner{
        display:flex;
        justify-content:space-between;
        align-items:center;
        height:100%;
        padding:100px 0
    }
}
@media(hover: hover){
    .nextContent_inner:hover .nextContent_image img{
        transform:scale(1.1)
    }
}
.nextContent_text{
    padding:0 20px
}
@media(min-width: 960px){
    .nextContent_text{
        display:flex;
        flex-direction:column;
        justify-content:space-between;
        align-items:flex-start;
        height:100%;
        padding:0
    }
}
.nextContent_text ._row2{
    display:flex;
    justify-content:flex-start;
    align-items:center;
    margin:75px 0 0
}
@media(min-width: 960px){
    .nextContent_text ._row2{
        margin:0
    }
}
.nextContent_text ._row2 ._arrow{
    width:6px;
    margin-left:10px
}
.nextContent_text ._row2 ._arrow svg{
    fill:currentColor
}
.nextContent_text ._heading{
    font-size:14px
}
@media(min-width: 960px){
    .nextContent_text ._heading{
        font-size:18px
    }
}
.nextContent_text ._title{
    margin:.4em 0 0 -0.04em;
    font-size:50px
}
@media(min-width: 960px){
    .nextContent_text ._title{
        margin:.6em 0 0 -0.04em;
        font-size:60px
    }
}
.nextContent_image{
    margin:40px 0 0;
    overflow:hidden
}
@media(min-width: 960px){
    .nextContent_image{
        width:46.6666666667vw;
        width:calc(.4666666667*var(--w));
        margin:0
    }
}
.nextContent_image img{
    transition-property:transform;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.feature{
    position:relative
}
@media(min-width: 960px){
    .feature{
        padding:0 20px
    }
}
@media(min-width: 960px){
    .feature_content{
        position:absolute;
        top:0;
        left:0;
        width:100%;
        height:100vh;
        overflow:hidden
    }
}
@media(min-width: 960px){
    .feature_item{
        position:absolute;
        left:0;
        top:0;
        display:flex;
        justify-content:flex-start;
        align-items:center;
        width:100%;
        height:100%
    }
}
.feature_image{
    padding:0 10px
}
@media(min-width: 960px){
    .feature_image{
        width:50vw;
        width:calc(.5*var(--w));
        padding:0;
        overflow:hidden
    }
}
.feature_text{
    padding:50px 30px 100px
}
@media(min-width: 960px){
    .feature_text{
        width:50vw;
        width:calc(.5*var(--w));
        padding:0 calc(6.6666666667vw + 20px) 0 10vw;
        padding:0 calc(.0666666667*var(--w) + 20px) 0 calc(.1*var(--w))
    }
}
@media(min-width: 960px){
    .feature_text .layout2_headingEn{
        display:none
    }
}
.feature::after{
    content:"";
    display:block;
    width:calc(100% - 60px);
    height:1px;
    background-color:#dedede;
    margin:0 auto
}
html.is-dark .feature::after{
    background-color:#3f3f3f
}
@media(min-width: 960px){
    .feature::after{
        display:none
    }
}
.feature_index{
    display:none
}
@media(min-width: 960px){
    .feature_index{
        position:absolute;
        right:25%;
        bottom:10vh;
        transform:translateX(calc(50% - 25px));
        display:flex;
        justify-content:space-between;
        align-items:center;
        width:31.6666666667vw;
        width:calc(.3166666667*var(--w))
    }
}
.feature_index ._heading{
    font-size:18px
}
.feature_index ._nums{
    position:relative;
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:20vw;
    width:calc(.2*var(--w));
    height:9px;
    margin-top:2px
}
.feature_index ._nums::before{
    content:"";
    position:absolute;
    left:0;
    top:calc(50% - .5px);
    display:block;
    width:100%;
    height:1px;
    background-color:#e2e2e2
}
html.is-dark .feature_index ._nums::before{
    background-color:#3c3c3c
}
.feature_index ._nums ._item{
    position:relative;
    width:9px;
    height:9px
}
.feature_index ._nums ._dot{
    width:9px;
    height:9px;
    background-color:#4a7436;
    border-radius:50%;
    opacity:0;
    transition-property:opacity;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.feature_index ._nums ._num{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%);
    display:flex;
    justify-content:center;
    align-items:center;
    width:50px;
    height:50px;
    border:1px solid currentColor;
    border-radius:50%;
    background-color:#fff;
    font-size:13px;
    transition-property:opacity;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
html.is-dark .feature_index ._nums ._num{
    background-color:#222
}
.feature_index ._nums ._item.off ._dot{
    opacity:1
}
.feature_index ._nums ._item.off ._num{
    opacity:0
}
[data-side-scroll=content-wrap]{
    -webkit-user-select:none;
    -ms-user-select:none;
    user-select:none
}
[data-side-scroll=content-wrap].is-scrolling>*{
    pointer-events:none
}
.fixedLink{
    position:fixed;
    z-index:1;
    right:50%;
    bottom:30px;
    transition-property:opacity;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1);
    transform:translate(50%, 0)
}
@media(min-width: 960px){
    .fixedLink{
        right:calc(3.3333333333vw + 20px);
        right:calc(.0333333333*var(--w) + 20px);
        transform:none
    }
}
.fixedLink.hide{
    opacity:0;
    pointer-events:none
}
.allItems .bookIconInfo{
    padding-left:20px
}
@media(min-width: 960px){
    .allItems .bookIconInfo{
        display:none
    }
}
.allItems_list{
    margin-top:65px;
    padding:0 30px
}
@media(min-width: 960px){
    .allItems_list{
        display:flex;
        flex-wrap:wrap;
        justify-content:flex-start;
        align-items:flex-start;
        margin-top:0;
        padding:0 calc(3.3333333333vw + 20px) 0 calc(28.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px) 0 calc(.2833333333*var(--w) + 20px)
    }
}
.allItems_item{
    width:60%
}
@media(min-width: 960px){
    .allItems_item{
        width:calc(33.3333% - 20px)
    }
}
@media not all and (min-width: 960px){
    .allItems_item:nth-child(2n){
        margin:50px auto 0 0
    }
}
@media not all and (min-width: 960px){
    .allItems_item:nth-child(2n+1){
        margin:50px 0 0 auto
    }
}
@media(min-width: 960px){
    .allItems_item:not(:nth-child(3n+1)){
        margin-left:30px
    }
}
@media(min-width: 960px){
    .allItems_item:nth-child(n+4){
        margin-top:100px
    }
}
.allItems_item.is-hidden{
    display:none
}
.allItems_link{
    position:relative;
    display:block
}
@media(hover: hover){
    .allItems_link:hover ._image img{
        transform:scale(1.05)
    }
}
.allItems_link ._image{
    overflow:hidden
}
.allItems_link ._image img{
    transition-property:transform;
    transition-duration:.5s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.allItems_link ._title{
    display:flex;
    justify-content:flex-start;
    align-items:baseline;
    margin-top:1em;
    line-height:1.8
}
.allItems_link ._title img{
    width:15px;
    margin-right:10px
}
.allItems_footer{
    margin:100px auto 0;
    text-align:center
}
@media(min-width: 960px){
    .allItems_footer{
        margin:200px auto 0
    }
}
.categoryNavSm{
    position:fixed;
    z-index:2;
    left:0;
    bottom:0;
    width:calc(100% - 60px);
    height:46px;
    border:1px solid rgba(34,34,34,.75);
    border-radius:23px;
    color:#222;
    background-color:#fff;
    transform:translate(30px, -20px);
    overflow:hidden;
    cursor:pointer;
    transition-property:border-radius;
    transition-duration:.45s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.categoryNavSm.is-open{
    border-radius:10px
}
@media(min-width: 960px){
    .categoryNavSm{
        display:none
    }
}
.categoryNavSm_header{
    position:relative;
    padding-top:16px;
    height:46px
}
.categoryNavSm_header ._text{
    text-align:center;
    transition-property:opacity;
    transition-duration:.45s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.categoryNavSm_header ._icon{
    position:absolute;
    right:22px;
    top:18px;
    width:12px;
    pointer-events:none;
    transition-property:transform;
    transition-duration:.45s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.categoryNavSm.is-open .categoryNavSm_header ._text{
    opacity:0
}
.categoryNavSm.is-open .categoryNavSm_header ._icon{
    transform:rotate(180deg)
}
.categoryNavSm_body{
    padding:25px 30px 50px
}
.categoryNavSm_body ul{
    text-align:center
}
.categoryNavSm_body ul li.is-selected{
    pointer-events:none
}
.categoryNavSm_body ul li:not(.is-selected){
    color:#989898
}
.categoryNavSm_body ul li a{
    position:relative;
    display:inline-block
}
.categoryNavSm_body ul li a::before{
    content:"";
    display:block;
    position:absolute;
    left:-5px;
    top:-5px;
    width:calc(100% + 10px);
    height:calc(100% + 10px)
}
.categoryNavSm_body ul li+li{
    margin-top:23px
}
.categoryNavLg{
    position:fixed;
    z-index:1;
    left:calc(3.3333333333vw + 20px);
    left:calc(.0333333333*var(--w) + 20px);
    top:0
}
@media not all and (min-width: 960px){
    .categoryNavLg{
        display:none
    }
}
.categoryNavLg ul li.is-selected{
    pointer-events:none
}
.categoryNavLg ul li:not(.is-selected){
    color:#989898
}
.categoryNavLg ul li a{
    position:relative;
    display:inline-block;
    transition-property:color;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.categoryNavLg ul li a::before{
    content:"";
    display:block;
    position:absolute;
    left:-5px;
    top:-5px;
    width:calc(100% + 10px);
    height:calc(100% + 10px)
}
@media(hover: hover){
    .categoryNavLg ul li a:hover{
        color:#222
    }
}
.categoryNavLg ul li+li{
    margin-top:23px
}
.categoryNavLg.hide{
    opacity:0;
    pointer-events:none
}
.categoryNavLg .bookIconInfo{
    margin-top:80px
}
.bookIconInfo{
    display:flex;
    justify-content:flex-start;
    align-items:center
}
.bookIconInfo img{
    width:15px
}
.bookIconInfo p{
    margin-left:10px
}
.newsList{
    border-top:1px solid #dedede
}
.newsList_item{
    padding:25px 0;
    border-bottom:1px solid #dedede
}
@media(min-width: 960px){
    .newsList_item{
        display:flex;
        justify-content:flex-start;
        align-items:flex-start;
        padding:28px 0 25px
    }
}
.newsList_item ._date{
    font-size:11px;
    line-height:23px
}
@media(min-width: 960px){
    .newsList_item ._date{
        width:16.6666666667vw;
        width:calc(.1666666667*var(--w));
        font-size:13px;
        line-height:32px
    }
}
.newsList_item ._title{
    margin-top:10px
}
@media(min-width: 960px){
    .newsList_item ._title{
        width:46.6666666667vw;
        width:calc(.4666666667*var(--w));
        margin-top:0
    }
}
.newsList_item ._title a{
    text-decoration:underline;
    color:inherit
}
.homeKv{
    position:relative;
    padding:55px 0 0;
    letter-spacing:0
}
@media(min-width: 960px){
    .homeKv{
        padding:100px 0 0
    }
}
.homeKv_inner{
    position:relative
}
.homeKv_text{
    position:absolute;
    z-index:1;
    left:0;
    bottom:100px;
    width:100%;
    padding:25px 20px 0;
    color: #fff;
}
@media(min-width: 960px){
    .homeKv_text{
        position:static;
        position: absolute;
        /*padding:0 calc(3.3333333333vw + 20px) 150px;*/
        /*padding:0 calc(.0333333333*var(--w) + 20px) 150px;*/
        padding: 75px calc(3.3333333333vw + 20px) 0;
        color: #ffffff;
    }
}
.homeKv_text ._title{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-start;
    column-gap:.2em;
    margin-left:-0.06em;
    width:100%;
    font-size:min(20vw,45px);
    line-height:1.4
}
@media(min-width: 960px){
    .homeKv_text ._title{
        font-size:100px
    }
}
.homeKv_text ._title span{
    margin-top:-0.35em
}
.homeKv_image{
    height:calc(var(--vh, 1vh)*100 - 55px - 10px)
}
@media(min-width: 960px){
    .homeKv_image{
        height:calc(var(--vh, 1vh)*100 - 40px)
    }
}
.homeKv_image ._inner{
    height:100%;
    overflow:hidden
}
.homeKv_image video{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center
}
.homeConcept_copy{
    padding:90px 0;
    font-size:22px;
    text-align:center;
    letter-spacing:0
}
.homeConcept_copy small{
    display: block;
    margin-top: 15px;
}

@media(min-width: 960px){
    .homeConcept_copy{
        padding:16.6665vw 0 16.6665vw calc(20vw + 20px);
        padding:16.6665vw 0 16.6665vw calc(.2*var(--w) + 20px);
        font-size:38px;
        text-align:left
    }
}
.homeConcept_images{
    padding:0 30px;
    overflow:hidden
}
@media(min-width: 960px){
    .homeConcept_images{
        padding:0 calc(20vw + 20px);
        padding:0 calc(.2*var(--w) + 20px)
    }
}
.homeConcept_images ._wrap{
    display:inline-flex;
    flex-wrap:nowrap;
    justify-content:flex-start;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden
}
.homeConcept_images ._wrap img{
    width:225px;
    flex:1 0 auto
}
@media(min-width: 960px){
    .homeConcept_images ._wrap img{
        width:30vw;
        width:calc(.3*var(--w))
    }
}
.homeConcept_images ._wrap ._image+._image{
    margin-left:15px
}
@media(min-width: 960px){
    .homeConcept_images ._wrap ._image+._image{
        margin-left:30px
    }
}
.homeConcept_text{
    padding:75px 30px 150px
}
@media(min-width: 960px){
    .homeConcept_text{
        padding:6.6666vw calc(10vw + 20px) 19.9998vw;
        padding:6.6666vw calc(.1*var(--w) + 20px) 19.9998vw
    }
}
.homeFeature_image{
    position:relative;
    overflow:hidden
}
.homeFeature_image::before{
    content:"";
    display:block;
    width:100%;
    padding-top:100%;
    pointer-events:none
}
@media(min-width: 960px){
    .homeFeature_image::before{
        content:"";
        display:block;
        width:100%;
        padding-top:58.4419379347%;
        pointer-events:none
    }
}
.homeFeature_image img{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transform-origin:center top
}
.homeFeature_text{
    padding:75px 30px 150px
}
@media(min-width: 960px){
    .homeFeature_text{
        padding:6.6666vw calc(10vw + 20px) 19.9998vw;
        padding:6.6666vw calc(.1*var(--w) + 20px) 19.9998vw
    }
}
@media(min-width: 960px){
    .homeHealth{
        padding:0 0 39.9996vw
    }
}
.homeHealth_copy{
    padding:0 20px 150px;
    font-size:20px;
    line-height:1.8;
    text-align:center;
    letter-spacing:0
}
@media(min-width: 960px){
    .homeHealth_copy{
        padding:0 0 26.6664vw;
        font-size:48px;
        line-height:58px
    }
}
@media(min-width: 960px){
    .homeHealth_box{
        display:flex;
        flex-direction:row-reverse;
        justify-content:flex-start;
        align-items:flex-start;
        padding:0 20px
    }
}
@media(min-width: 960px){
    .homeHealth_image{
        width:50%
    }
}
.homeHealth_text{
    padding:75px 30px 0;
}
@media(min-width: 960px){
    .homeHealth_text{
        width:50%;
        padding:0 10vw 0 6.6666666667vw;
        padding:0 calc(.1*var(--w)) 0 calc(.0666666667*var(--w))
    }
}
.homeTech{
    position:relative;
    padding:55px 10px 0
}
.homeTech_bg{
    position:absolute;
    z-index:-1;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background-color:#000;
    background-color:transparent;
}
@media(min-width: 960px){
    .homeTech{
        padding:9.9999vw 0 0
    }
}
.homeTech_header{
    padding:0 30px
}
@media(min-width: 960px){
    .homeTech_header{
        padding:0 calc(3.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px)
    }
}
.homeTech_title{
    font-size:55px;
    line-height:60px;
    letter-spacing:0
}
@media(min-width: 960px){
    .homeTech_title{
        font-size:9.6vw;
        margin-left:-0.025em;
        line-height:1.3;
        white-space:nowrap
    }
}
.homeTech_jpTitle{
    margin-top:20px;
    font-size:12px
}
@media(min-width: 960px){
    .homeTech_jpTitle{
        margin-top:25px;
        font-size:18px
    }
}
.homeTech_image{
    overflow:hidden;
    margin-top:70px
}
@media(min-width: 960px){
    .homeTech_image{
        margin-top:140px
    }
}
.homeTech_text{
    padding:75px 30px
}
@media(min-width: 960px){
    .homeTech_text{
        padding:13.3332vw calc(10vw + 20px);
        padding:13.3332vw calc(.1*var(--w) + 20px)
    }
}
.homeRecipe{
    padding: 75px 0 0;
}
@media(min-width: 960px){
    .homeRecipe{
        padding: 150px 0 0;
    }
}
.homeRecipe_text{
    padding:0 30px
}
@media(min-width: 960px){
    .homeRecipe_text{
        padding:0 10vw;
        padding:0 calc(.1*var(--w))
    }
}
.homeRecipe_recipes{
    margin-top:75px;
    padding:0 30px;
    overflow:hidden
}
@media(min-width: 960px){
    .homeRecipe_recipes{
        margin-top:9.9999vw;
        padding:0 calc(8.3333333333vw + 20px);
        padding:0 calc(.0833333333*var(--w) + 20px)
    }
}
.homeRecipe_recipes ._content{
    display:inline-flex;
    flex-wrap:nowrap;
    justify-content:flex-start
}
.homeRecipe_recipes ._item{
    position:relative;
    display:block;
    width:225px;
    overflow:hidden
}
@media(min-width: 960px){
    .homeRecipe_recipes ._item{
        flex:1 0 auto;
        width:30vw;
        width:calc(.3*var(--w))
    }
}
@media(hover: hover){
    .homeRecipe_recipes ._item:hover img{
        transform:scale(1.05)
    }
    .homeRecipe_recipes ._item:hover ._bottom{
        opacity:1;
        transform:none
    }
    .homeRecipe_recipes ._item:hover::after{
        opacity:1
    }
}
.homeRecipe_recipes ._item img{
    width:100%;
    transition-property:transform;
    transition-duration:.4s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.homeRecipe_recipes ._item::after{
    content:"";
    position:absolute;
    z-index:1;
    left:0;
    bottom:0;
    display:block;
    width:100%;
    height:250px;
    background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    opacity:0;
    pointer-events:none;
    transition-property:opacity;
    transition-duration:.4s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.homeRecipe_recipes ._item+._item{
    margin-left:15px
}
@media(min-width: 960px){
    .homeRecipe_recipes ._item+._item{
        margin-left:30px
    }
}
.homeRecipe_recipes ._bottom{
    position:absolute;
    z-index:2;
    left:0;
    bottom:30px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:100%;
    padding:0 30px;
    color:#fff;
    transition-property:opacity, transform;
    transition-duration:.4s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
[data-device=desktop] .homeRecipe_recipes ._bottom{
    opacity:0;
    transform:translateY(10px)
}
.homeRecipe_recipes ._title{
    font-size:11px;
    line-height:1.4;
    letter-spacing:.06em;
    padding-right:1em
}
@media(min-width: 960px){
    .homeRecipe_recipes ._title{
        font-size:15px
    }
}
.homeRecipe_recipes ._arrow{
    width:6px
}
.homeRecipe_recipes ._arrow svg{
    fill:#fff
}
.homeRecipe_bottom{
    padding:75px 0 150px
}
@media(min-width: 960px){
    .homeRecipe_bottom{
        display:flex;
        justify-content:space-between;
        align-items:center;
        padding:9.9999vw 10vw 23.3331vw;
        padding:9.9999vw calc(.1*var(--w)) 23.3331vw
    }
}
.homeRecipe_bottom ._box1{
    text-align:center
}
@media(min-width: 960px){
    .homeRecipe_bottom ._box1{
        display:flex;
        justify-content:flex-start;
        align-items:center;
        padding-right:1.6666666667vw;
        padding-right:calc(.0166666667*var(--w));
        text-align:left
    }
}
.homeRecipe_bottom ._image{
    display:inline-block;
    width:90px;
    height:90px
}
@media(min-width: 960px){
    .homeRecipe_bottom ._image{
        width:110px;
        height:110px
    }
}
.homeRecipe_bottom ._text{
    margin-top:15px
}
@media(min-width: 960px){
    .homeRecipe_bottom ._text{
        margin-top:5px;
        margin-left:60px
    }
}
.homeRecipe_bottom ._line1{
    font-size:11px;
    letter-spacing:.02em
}
@media(min-width: 960px){
    .homeRecipe_bottom ._line1{
        font-size:12px
    }
}
.homeRecipe_bottom ._line2{
    margin-top:12px;
    font-size:14px
}
@media(min-width: 960px){
    .homeRecipe_bottom ._line2{
        margin-top:20px;
        font-size:22px
    }
}
.homeRecipe_bottom ._link{
    display:flex;
    justify-content:center;
    margin:40px 0 0
}
@media(min-width: 960px){
    .homeRecipe_bottom ._link{
        justify-content:flex-start;
        margin:0
    }
}
.expSec1{
    padding:100px 0 150px
}
@media(min-width: 960px){
    .expSec1{
        padding:19.9998vw 0
    }
}
.expSec1_row1{
    padding:0 30px
}
@media(min-width: 960px){
    .expSec1_row1{
        padding:0 calc(6.6666666667vw + 20px);
        padding:0 calc(.0666666667*var(--w) + 20px)
    }
}
.expSec1_row2{
    padding:50px 0
}
@media(min-width: 960px){
    .expSec1_row2{
        padding:6.6666vw 0
    }
}
.expSec1_row3{
    text-align:center
}
.expSec2_inner{
    position:relative
}
.expSec2_image{
    overflow:hidden
}
.expSec2_text{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    padding:0 40px 75px
}
@media(min-width: 960px){
    .expSec2_text{
        width:calc(30vw + 20px);
        width:calc(.3*var(--w) + 20px);
        left:calc(60vw + 20px);
        left:calc(.6*var(--w) + 20px);
        padding:0;
        bottom:50%;
        transform:translateY(50%)
    }
}
.expSec2_award{
    display:flex;
    justify-content:flex-start;
    align-items:flex-end;
    margin-top:34px
}
@media(min-width: 960px){
    .expSec2_award{
        margin-top:50px
    }
}
.expSec2_award img{
    width:auto;
    height:72px
}
@media(min-width: 960px){
    .expSec2_award img{
        height:82px
    }
}
.expSec2_award img+img{
    margin-left:22px
}
@media(min-width: 960px){
    .expSec2_award img+img{
        margin-left:48px
    }
}
.atmSec1{
    padding:100px 0 150px
}
@media(min-width: 960px){
    .atmSec1{
        padding:19.9998vw 0
    }
}
.atmSec1_row1{
    padding:0 30px
}
@media(min-width: 960px){
    .atmSec1_row1{
        padding:0 calc(6.6666666667vw + 20px);
        padding:0 calc(.0666666667*var(--w) + 20px)
    }
}
.atmSec1_row2{
    padding:50px 0 0
}
@media(min-width: 960px){
    .atmSec1_row2{
        padding:6.6666vw 0 0
    }
}
.atmSec1_row3{
    text-align:center
}
@media(min-width: 960px){
    .atmSec2,.atmSec3{
        display:flex;
        justify-content:flex-start;
        align-items:center;
        padding:0 calc(6.6666666667vw + 20px) 19.9998vw;
        padding:0 calc(.0666666667*var(--w) + 20px) 19.9998vw
    }
}
.atmSec2_image,.atmSec3_image{
    position:relative;
    padding:0 10px
}
@media(min-width: 960px){
    .atmSec2_image,.atmSec3_image{
        width:calc(43.3333333333vw + 20px);
        width:calc(.4333333333*var(--w) + 20px);
        padding:0
    }
}
.atmSec2_image ._inner,.atmSec3_image ._inner{
    position:relative
}
.atmSec2_image ._inner::before,.atmSec3_image ._inner::before{
    content:"";
    display:block;
    width:100%;
    padding-top:100%;
    pointer-events:none
}
@media(min-width: 960px){
    .atmSec2_image ._inner::before,.atmSec3_image ._inner::before{
        content:"";
        display:block;
        width:100%;
        padding-top:66.6666666667%;
        pointer-events:none
    }
}
.atmSec2_image img,.atmSec3_image img{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center
}
.atmSec2_text,.atmSec3_text{
    padding:75px 30px 150px
}
@media(min-width: 960px){
    .atmSec2_text,.atmSec3_text{
        width:calc(43.3333333333vw + 20px);
        width:calc(.4333333333*var(--w) + 20px);
        padding:0 0 0 calc(10vw + 20px);
        padding:0 0 0 calc(.1*var(--w) + 20px)
    }
}
.fncSec1{
    padding:100px 0 150px
}
@media(min-width: 960px){
    .fncSec1{
        padding:19.9998vw 0
    }
}
.fncSec1_row1{
    padding:0 30px
}
@media(min-width: 960px){
    .fncSec1_row1{
        padding:0 calc(6.6666666667vw + 20px);
        padding:0 calc(.0666666667*var(--w) + 20px)
    }
}
.fncSec1_row2{
    padding:50px 0 0
}
@media(min-width: 960px){
    .fncSec1_row2{
        padding:6.6666vw 0 0
    }
}
.fncSec1_row3{
    text-align:center
}
.howtoSec1{
    position:relative;
    padding:100px 30px
}
@media(min-width: 960px){
    .howtoSec1{
        display:flex;
        justify-content:space-between;
        align-items:center;
        padding:200px calc(10vw + 20px);
        padding:200px calc(.1*var(--w) + 20px)
    }
}
@media(min-width: 960px){
    .howtoSec1_header{
        width:33.3333333333vw;
        width:calc(.3333333333*var(--w))
    }
}
.howtoSec1_header ._text{
    margin-top:20px
}
@media(min-width: 960px){
    .howtoSec1_header ._text{
        margin-top:30px
    }
}
.howtoSec1_body{
    margin-top:50px
}
@media(min-width: 960px){
    .howtoSec1_body{
        width:358px;
        margin-top:0;
        box-sizing:content-box
    }
}
@media(min-width: 1280px){
    .howtoSec1_body{
        padding-right:8.3333333333vw;
        padding-right:calc(.0833333333*var(--w))
    }
}
.howtoSec1_body ._nabe{
    width:232px;
    margin:0 auto
}
.howtoSec1_body ._fire{
    position:relative;
    width:100%;
    height:42px;
    margin-top:-3px
}
@media(min-width: 960px){
    .howtoSec1_body ._fire{
        height:70px;
        margin-top:-16px
    }
}
.howtoSec1_body ._fire ._icon{
    position:absolute;
    left:50%;
    bottom:0;
    transform:translateX(-50%);
    opacity:0;
    transition-property:opacity;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.howtoSec1_body ._fire ._icon.is-on{
    opacity:1
}
.howtoSec1_body ._fire ._icon-1{
    height:16px
}
@media(min-width: 960px){
    .howtoSec1_body ._fire ._icon-1{
        height:22px
    }
}
.howtoSec1_body ._fire ._icon-2{
    height:21px
}
@media(min-width: 960px){
    .howtoSec1_body ._fire ._icon-2{
        height:27px
    }
}
.howtoSec1_body ._fire ._icon-3{
    height:29px
}
@media(min-width: 960px){
    .howtoSec1_body ._fire ._icon-3{
        height:38px
    }
}
.howtoSec1_body ._fire ._icon-4{
    height:42px
}
@media(min-width: 960px){
    .howtoSec1_body ._fire ._icon-4{
        height:55px
    }
}
.howtoSec1_body ._fire ._icon svg{
    width:auto;
    height:100%
}
.howtoSec1_body ._text{
    margin-top:20px;
    font-size:13px;
    letter-spacing:.02em;
    text-align:center
}
@media(min-width: 960px){
    .howtoSec1_body ._text{
        margin-top:30px;
        font-size:15px
    }
}
.howtoSec1_body ._btns{
    display:flex;
    justify-content:space-between;
    margin-top:30px
}
@media(min-width: 960px){
    .howtoSec1_body ._btns{
        margin-top:40px
    }
}
.howtoSec1_body ._btns ._btn{
    width:calc(25% - 3.75px);
    height:40px;
    border:1px solid #dedede;
    border-radius:20px;
    cursor:pointer;
    transition-property:background-color, border-color, color;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(min-width: 960px){
    .howtoSec1_body ._btns ._btn{
        width:82px;
        height:36px;
        border-radius:18px
    }
}
.howtoSec1_body ._btns ._btn.is-on{
    background-color:#4a7436;
    border-color:rgba(0,0,0,0);
    color:#fff
}
.howtoSec1::after{
    content:"";
    position:absolute;
    left:30px;
    bottom:0;
    display:block;
    width:calc(100% - 60px);
    height:1px;
    background-color:#dedede;
    pointer-events:none
}
@media(min-width: 960px){
    .howtoSec1::after{
        left:calc(10vw + 20px);
        left:calc(.1*var(--w) + 20px);
        width:80vw;
        width:calc(.8*var(--w))
    }
}
.howtoSec2{
    padding:100px 30px 0
}
@media(min-width: 960px){
    .howtoSec2{
        display:flex;
        align-items:flex-start;
        padding:200px calc(10vw + 20px) 0;
        padding:200px calc(.1*var(--w) + 20px) 0
    }
}
@media(min-width: 960px){
    .howtoSec2_header{
        width:30vw;
        width:calc(.3*var(--w))
    }
}
.howtoSec2_header ._heading{
    font-size:20px
}
@media(min-width: 960px){
    .howtoSec2_header ._heading{
        height:20px
    }
}
.howtoSec2_body{
    margin-top:50px
}
@media(min-width: 960px){
    .howtoSec2_body{
        width:50vw;
        width:calc(.5*var(--w));
        margin-top:0
    }
}
.howtoSec2_list{
    display:flex;
    flex-direction:column
}
@media(min-width: 960px){
    .howtoSec2_list{
        flex-direction:row
    }
}
@media(min-width: 960px){
    .howtoSec2_item{
        flex:1 1 0
    }
}
.howtoSec2_item+.howtoSec2_item{
    margin:75px 0 0
}
@media(min-width: 960px){
    .howtoSec2_item+.howtoSec2_item{
        margin:0 0 0 3.3333333333vw;
        margin:0 0 0 calc(.0333333333*var(--w))
    }
}
.howtoSec2_item ._heading{
    margin:1.5em 0 0 -0.04em;
    font-size:16px;
    line-height:1.8;
    letter-spacing:.02em
}
.howtoSec2_item ._text{
    margin:1.25em 0 0;
    font-size:14px;
    line-height:2
}
.howtoSec3{
    padding:150px 30px 0
}
@media(min-width: 960px){
    .howtoSec3{
        display:flex;
        align-items:flex-start;
        padding:250px calc(10vw + 20px) 0;
        padding:250px calc(.1*var(--w) + 20px) 0
    }
}
@media(min-width: 960px){
    .howtoSec3_header{
        width:30vw;
        width:calc(.3*var(--w))
    }
}
.howtoSec3_header ._heading{
    font-size:20px
}
@media(min-width: 960px){
    .howtoSec3_header ._heading{
        height:20px
    }
}
.howtoSec3_body{
    margin-top:50px
}
@media(min-width: 960px){
    .howtoSec3_body{
        width:50vw;
        width:calc(.5*var(--w));
        margin-top:0
    }
}
.howtoSec3_list{
    display:flex;
    flex-direction:column;
    row-gap:20px
}
@media(min-width: 960px){
    .howtoSec3_list{
        flex-direction:row;
        flex-wrap:wrap;
        justify-content:space-between;
        row-gap:40px
    }
}
.howtoSec3_item{
    border-top:1px solid #dedede
}
@media(min-width: 960px){
    .howtoSec3_item{
        width:23.3333333333vw;
        width:calc(.2333333333*var(--w))
    }
}
.howtoSec3_item ._heading{
    margin:1.5em 0 0 -0.04em;
    font-size:16px;
    line-height:1.8;
    letter-spacing:.02em
}
.howtoSec3_item ._text{
    margin:1.25em 0 0;
    font-size:14px;
    line-height:2
}
.howtoSec4{
    padding:150px 30px 0
}
@media(min-width: 960px){
    .howtoSec4{
        display:flex;
        align-items:flex-start;
        padding:250px calc(10vw + 20px) 0;
        padding:250px calc(.1*var(--w) + 20px) 0
    }
}
@media(min-width: 960px){
    .howtoSec4_header{
        width:30vw;
        width:calc(.3*var(--w))
    }
}
.howtoSec4_header ._heading{
    font-size:20px
}
@media(min-width: 960px){
    .howtoSec4_header ._heading{
        height:20px
    }
}
.howtoSec4_body{
    margin-top:50px
}
@media(min-width: 960px){
    .howtoSec4_body{
        width:50vw;
        width:calc(.5*var(--w));
        margin-top:0
    }
}
.howtoSec4_list{
    border-top:1px solid #dedede
}
.howtoSec4_item{
    border-bottom:1px solid #dedede;
    padding:30px 0;
    cursor:pointer
}
.howtoSec4_item ._heading{
    position:relative
}
@media(min-width: 960px){
    .howtoSec4_item ._heading{
        display:flex;
        justify-content:flex-start;
        align-items:flex-start
    }
}
.howtoSec4_item ._index{
    white-space:nowrap
}
@media(min-width: 960px){
    .howtoSec4_item ._index{
        width:10vw;
        width:calc(.1*var(--w))
    }
}
@media(min-width: 1280px){
    .howtoSec4_item ._index{
        width:6.6666666667vw;
        width:calc(.0666666667*var(--w))
    }
}
.howtoSec4_item ._text{
    margin:5px 0 0 -0.08em;
    padding-right:40px
}
@media(min-width: 960px){
    .howtoSec4_item ._text{
        flex:1 1 0;
        margin:0 0 0 -0.08em;
        padding-right:5vw;
        padding-right:calc(.05*var(--w))
    }
}
.howtoSec4_item ._icon{
    position:absolute;
    right:10px;
    top:5px;
    width:13px;
    height:13px
}
@media(min-width: 960px){
    .howtoSec4_item ._icon{
        right:30px;
        top:10px
    }
}
.howtoSec4_item ._icon::before,.howtoSec4_item ._icon::after{
    content:"";
    display:block;
    position:absolute;
    background-color:currentColor
}
.howtoSec4_item ._icon::before{
    left:calc(50% - .5px);
    top:0;
    width:1px;
    height:100%;
    transition-property:opacity;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.howtoSec4_item ._icon::after{
    left:0;
    top:calc(50% - .5px);
    width:100%;
    height:1px
}
.howtoSec4_item.is-selected ._icon::before{
    opacity:0
}
.howtoSec4_item ._contentWrap{
    height:0;
    overflow:hidden;
    transition-property:height;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
.howtoSec4_item ._content{
    padding:1em 40px 0 0
}
@media(min-width: 960px){
    .howtoSec4_item ._content{
        padding:1.5em 5vw 0 10vw;
        padding:1.5em calc(.05*var(--w)) 0 calc(.1*var(--w));
        margin-top:-6px
    }
}
@media(min-width: 1280px){
    .howtoSec4_item ._content{
        padding:1.5em 5vw 0 6.6666666667vw;
        padding:1.5em calc(.05*var(--w)) 0 calc(.0666666667*var(--w))
    }
}
@media(min-width: 960px){
    .itemKv{
        display:flex;
        align-items:flex-start;
        padding:0 20px
    }
}
.itemKv_image{
    overflow:hidden
}
@media(min-width: 960px){
    .itemKv_image{
        width:66.6666666667vw;
        width:calc(.6666666667*var(--w))
    }
}
.itemKv_box2{
    padding:75px 30px 0
}
@media(min-width: 960px){
    .itemKv_box2{
        width:33.3333333333vw;
        width:calc(.3333333333*var(--w));
        padding:0 0 0 1.6666666667vw;
        padding:0 0 0 calc(.0166666667*var(--w))
    }
    .itemKv_box2::before{
        content:"";
        display:block;
        width:100%;
        height:1px;
        background-color:#dedede;
        margin-bottom:60px
    }
}
@media(min-width: 1280px){
    .itemKv_box2{
        padding:0 3.3333333333vw 0 5vw;
        padding:0 calc(.0333333333*var(--w)) 0 calc(.05*var(--w))
    }
}
.itemLink{
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:14px;
    white-space:nowrap
}
@media(min-width: 960px){
    .itemLink{
        font-size:15px
    }
}
.itemImages{
    padding:0 30px;
    overflow:hidden
}
@media(min-width: 960px){
    .itemImages{
        padding:0 calc(20vw + 20px);
        padding:0 calc(.2*var(--w) + 20px)
    }
}
.itemImages ._wrap{
    display:inline-flex;
    flex-wrap:nowrap;
    justify-content:flex-start
}
.itemImages ._wrap img{
    width:225px;
    flex:1 0 auto
}
@media(min-width: 960px){
    .itemImages ._wrap img{
        width:30vw;
        width:calc(.3*var(--w))
    }
}
.itemImages ._wrap img+img{
    margin-left:15px
}
@media(min-width: 960px){
    .itemImages ._wrap img+img{
        margin-left:30px
    }
}
.itemSpec{
    padding:150px 30px
}
@media(min-width: 960px){
    .itemSpec{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        padding:300px calc(10vw + 20px);
        padding:300px calc(.1*var(--w) + 20px)
    }
}
.itemSpec_content{
    margin-top:50px
}
@media(min-width: 960px){
    .itemSpec_content{
        width:50vw;
        width:calc(.5*var(--w));
        margin-top:0
    }
}
.itemSpec_list{
    border-top:1px solid #dedede
}
.itemSpec_list li{
    display:flex;
    height:58px;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid #dedede
}
@media(min-width: 960px){
    .itemSpec_list li{
        height:70px
    }
}
.itemSpec_list li ._dt{
    white-space:nowrap;
    padding-right:2em
}
.itemSpec_list li ._dd{
    text-align:right
}
.itemSpec_list li ._dd span{
    color:#666;
    font-size:10px;
    line-height:1.5
}
@media(min-width: 960px){
    .itemSpec_list li ._dd span{
        font-size:12px
    }
}
.recipeBook_text{
    padding:0 30px 0
}
@media(min-width: 960px){
    .recipeBook_text{
        padding:0 calc(10vw + 20px);
        padding:0 calc(.1*var(--w) + 20px)
    }
}
.recipeBook_images{
    position:relative;
    margin-top:75px
}
@media(min-width: 960px){
    .recipeBook_images{
        margin-top:100px
    }
}
.recipeBook_images ._content{
    padding:0 10px
}
@media(min-width: 960px){
    .recipeBook_images ._content{
        position:absolute;
        top:0;
        left:20px;
        width:calc(100vw - 40px);
        width:calc(var(--vw, 1vw)*100 - 40px);
        height:100vh;
        height:calc(var(--vh, 1vh)*100);
        padding:0;
        overflow:hidden
    }
}
@media(min-width: 960px){
    .recipeBook_images ._inner{
        position:absolute;
        left:0;
        top:50%;
        transform:translateY(-50%);
        width:100%;
        overflow:hidden
    }
    .recipeBook_images ._inner::before{
        content:"";
        display:block;
        width:100%;
        padding-top:65%
    }
}
@media(min-width: 960px){
    .recipeBook_image{
        position:absolute;
        left:0;
        top:50%;
        width:100%
    }
    .recipeBook_image img{
        transform:translateY(-50%)
    }
}
.recipeBook_image+.recipeBook_image{
    margin-top:10px
}
@media(min-width: 960px){
    .recipeBook_image+.recipeBook_image{
        margin-top:0
    }
}
.fixedInfoArea{
    pointer-events:none;
}
@media(min-width: 960px){
    .fixedInfoArea{
        height:85px;
        margin:150px 0 100px;
    }
}
.fixedItemInfo{
    position:fixed;
    z-index:1;
    left:0;
    bottom:0;
    width:100%;
    background-color:#fff;
    transition-property:opacity;
    transition-duration:.6s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(min-width: 960px){
    .fixedItemInfo{
        padding:0 calc(3.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px)
    }
}
.fixedItemInfo.hide{
    opacity:0;
    pointer-events:none
}
.fixedItemInfo_inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    height:85px;
    padding:0 30px;
    border-top:1px solid #dedede
}
@media(min-width: 960px){
    .fixedItemInfo_inner{
        padding:0
    }
}
.fixedItemInfo_title{
    display:none
}
@media(min-width: 960px){
    .fixedItemInfo_title{
        display:block;
        font-size:20px;
        letter-spacing:.02em
    }
}
.fixedItemInfo .itemLink{
    width:100%
}
@media(min-width: 960px){
    .fixedItemInfo .itemLink{
        width:25vw;
        width:calc(.25*var(--w));
        min-width:320px
    }
}
.recipeKv_header{
    padding:150px 20px 100px
}
@media(min-width: 960px){
    .recipeKv_header{
        padding:200px calc(3.3333333333vw + 20px) 100px;
        padding:200px calc(.0333333333*var(--w) + 20px) 100px
    }
}
.recipeKv_title{
    margin-left:-0.08em;
    font-size:30px;
    line-height:1.25
}
@media(min-width: 960px){
    .recipeKv_title{
        font-size:80px
    }
}
.recipeKv_text{
    margin-top:20px
}
@media(min-width: 960px){
    .recipeKv_text{
        margin-top:50px
    }
}
@media(min-width: 960px){
    .recipeKv_image{
        padding-left:20px;
        width:calc(66.6666666667vw + 20px);
        width:calc(.6666666667*var(--w) + 20px)
    }
}
.recipeSec1{
    padding:0 30px;
    margin-top:150px
}
@media(min-width: 960px){
    .recipeSec1{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        padding:0 calc(6.6666666667vw + 20px);
        padding:0 calc(.0666666667*var(--w) + 20px);
        margin-top:13.3332vw
    }
}
@media(min-width: 960px){
    .recipeSec1_header{
        padding-right:calc(.0333333333*var(--w))
    }
}
.recipeSec1_body{
    margin-top:150px
}
@media(min-width: 960px){
    .recipeSec1_body{
        width:40vw;
        width:calc(.4*var(--w));
        margin-top:0
    }
}
.ingredients_selector{
    display:flex;
    justify-content:space-between;
    align-items:center
}
.ingredients_selector ._btns{
    display:flex;
    column-gap:10px;
    font-size:11px;
    letter-spacing:.02em
}
@media(min-width: 960px){
    .ingredients_selector ._btns{
        font-size:15px
    }
}
.ingredients_selector ._btn{
    display:block;
    width:60px;
    height:30px;
    border-radius:15px;
    border:1px solid #444;
    background-color:#fff;
    cursor:pointer;
    transition-property:background-color, border-color, color;
    transition-duration:.3s;
    transition-timing-function:cubic-bezier(0.3, 0.1, 0.1, 1)
}
@media(min-width: 960px){
    .ingredients_selector ._btn{
        width:82px;
        height:36px;
        border-radius:18px
    }
}
.ingredients_selector ._btn.is-on{
    background-color:#4a7436;
    border-color:#4a7436;
    color:#fff
}
.ingredients_time{
    display:flex;
    justify-content:flex-start;
    align-items:center
}
.ingredients_time ._num{
    margin:-1px 8px 0;
    font-size:15px
}
@media(min-width: 960px){
    .ingredients_time ._num{
        margin:-2px 10px 0;
        font-size:18px
    }
}
.ingredients_listWrap{
    position:relative
}
.ingredients_list{
    margin-top:30px;
    border-top:1px solid #dedede
}
@media(min-width: 960px){
    .ingredients_list{
        margin-top:40px
    }
}
.ingredients_list.hide{
    display:none
}
.ingredients_quantity{
    display:flex;
    justify-content:flex-start;
    align-items:center;
    height:60px;
    border-bottom:1px solid #dedede
}
@media(min-width: 960px){
    .ingredients_quantity{
        height:75px
    }
}
.ingredients_item{
    display:flex;
    justify-content:space-between;
    align-items:center;
    height:42px;
    border-bottom:1px solid #dedede
}
@media(min-width: 960px){
    .ingredients_item{
        height:50px
    }
}
.recipeSec2{
    padding:0 30px;
    margin-top:150px
}
@media(min-width: 960px){
    .recipeSec2{
        display:flex;
        flex-direction:row-reverse;
        justify-content:space-between;
        align-items:flex-start;
        padding:0 calc(6.6666666667vw + 20px);
        padding:0 calc(.0666666667*var(--w) + 20px);
        margin-top:13.3332vw
    }
}
@media(min-width: 960px){
    .recipeSec2_text{
        width:40vw;
        width:calc(.4*var(--w))
    }
}
.recipeSec2_text ol li{
    position:relative;
    padding-left:2em
}
.recipeSec2_text ol li:before{
    content:attr(data-list-text);
    position:absolute;
    left:0;
    top:0;
    display:block
}
.recipeSec2_text ol li[data-list-note]{
    margin-top:1em
}
.recipeSec2_text ol li[data-list-note]+li[data-list-note]{
    margin-top:0
}
.recipeSec2_text ol li._note{
    margin-top:1em
}
.recipeSec2_images{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:20px 18px;
    margin:100px 0 0
}
@media(min-width: 960px){
    .recipeSec2_images{
        width:40vw;
        width:calc(.4*var(--w));
        gap:20px 30px;
        margin:0
    }
}
.recipeSec2_images ._item{
    width:calc(33.3333% - 12px)
}
@media(min-width: 960px){
    .recipeSec2_images ._item{
        width:calc(33.3333% - 20px)
    }
}
.recipeSec2_images ._item ._index{
    margin-top:7px;
    font-size:7px;
    text-align:right
}
@media(min-width: 960px){
    .recipeSec2_images ._item ._index{
        margin-top:10px;
        font-size:14px
    }
}
.otherRecipes{
    margin-top:150px
}
@media(min-width: 960px){
    .otherRecipes{
        margin-top:19.9998vw
    }
}
.otherRecipes_heading{
    text-align:center
}
.otherRecipes_heading+.imagesRow{
    margin-top:75px
}
@media(min-width: 960px){
    .otherRecipes_heading+.imagesRow{
        margin-top:100px
    }
}
@media(min-width: 960px){
    .otherRecipes .imagesRow{
        padding:0 calc(3.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px)
    }
}
.plusRLink{
    padding:0 30px;
    margin-top:150px
}
@media(min-width: 960px){
    .plusRLink{
        padding:0 calc(3.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px);
        margin-top:19.9998vw
    }
}
.plusRLink_inner{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:center;
    padding:50px 0;
    background-color:#f4f4f4
}
@media(min-width: 960px){
    .plusRLink_inner{
        flex-direction:row;
        justify-content:space-between;
        padding:100px 10vw;
        padding:100px calc(.1*var(--w))
    }
}
.plusRLink_text{
    text-align:center;
    line-height:1.6;
    padding-right:1em
}
@media(min-width: 960px){
    .plusRLink_text{
        text-align:left
    }
}
.plusRLink_text ._text{
    font-size:13px;
    text-align:center
}
@media(min-width: 960px){
    .plusRLink_text ._text{
        font-size:24px
    }
}
.plusRLink_text ._logo{
    display:inline-block;
    vertical-align:baseline;
    width:96px;
    height:14px;
    margin:0 5px;
    transform:translateY(2px)
}
@media(min-width: 960px){
    .plusRLink_text ._logo{
        width:151px;
        height:21px;
        margin:0 10px
    }
}
.plusRLink_text ._logo svg{
    fill:#4a7436
}
.plusRLink .linkBtn{
    margin-top:25px
}
@media(min-width: 960px){
    .plusRLink .linkBtn{
        margin-top:0
    }
}
@media(min-width: 960px){
    .voice{
        display:flex;
        justify-content:flex-start;
        align-items:flex-start;
        padding:0 20px;
        margin-top:13.3332vw
    }
}
.voice_text{
    padding:75px 30px
}
@media(min-width: 960px){
    .voice_text{
        width:50%;
        padding:0 10vw 0 6.6666666667vw;
        padding:0 calc(.1*var(--w)) 0 calc(.0666666667*var(--w))
    }
}
@media(min-width: 960px){
    .voice_image{
        width:50%
    }
}
.support{
    padding:0 30px
}
@media(min-width: 960px){
    .support{
        padding:0 calc(3.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px)
    }
}
.support_inner{
    padding:50px 0;
    border-top:1px solid #dedede;
    border-bottom:1px solid #dedede
}
@media(min-width: 960px){
    .support_inner{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        padding:60px 0
    }
}
.support_heading{
    font-size:16px
}
@media(min-width: 960px){
    .support_heading{
        font-size:18px;
        line-height:31px
    }
}
.support_body{
    margin-top:35px
}
@media(min-width: 960px){
    .support_body{
        width:63.3333333333vw;
        width:calc(.6333333333*var(--w));
        margin-top:0
    }
}
.support_body img{
    margin-top:25px
}
@media(min-width: 960px){
    .support_body img{
        margin-top:60px
    }
}
.support_section+.support_section{
    margin-top:35px
}
@media(min-width: 960px){
    .support_section+.support_section{
        margin-top:60px;
        padding-top:60px;
        border-top:1px solid #dedede
    }
}
@media(min-width: 960px){
    .support_info{
        display:flex;
        justify-content:flex-start;
        align-items:flex-start
    }
}
.support_info ._dt{
    font-size:13px;
    line-height:2.1
}
@media(min-width: 960px){
    .support_info ._dt{
        width:16.6666666667vw;
        width:calc(.1666666667*var(--w));
        padding-right:1em;
        font-size:15px
    }
}
.support_info ._db{
    margin-top:15px
}
@media(min-width: 960px){
    .support_info ._db{
        margin-top:0
    }
}
.support_info ._db ol li{
    position:relative;
    padding-left:1em
}
.support_info ._db ol li:before{
    content:attr(data-list-text);
    position:absolute;
    left:0;
    top:0;
    display:block
}
.store{
    padding:0 30px
}
@media(min-width: 960px){
    .store{
        padding:0 calc(3.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px)
    }
}
.store_inner{
    padding:50px 0;
    border-top:1px solid #dedede
}
.store_inner:last-child{
    border-bottom:1px solid #dedede
}
@media(min-width: 960px){
    .store_inner{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        padding:60px 0
    }
}
.store_heading{
    font-size:16px
}
@media(min-width: 960px){
    .store_heading{
        font-size:18px;
        line-height:31px
    }
}
.store_body{
    margin-top:35px
}
@media(min-width: 960px){
    .store_body{
        width:63.3333333333vw;
        width:calc(.6333333333*var(--w));
        margin-top:0
    }
}
@media(min-width: 960px){
    .store_section{
        display:flex;
        justify-content:space-between;
        align-items:flex-start
    }
}
.store_section+.store_section{
    margin-top:40px
}
@media(min-width: 960px){
    .store_section+.store_section{
        margin-top:60px;
        padding-top:60px;
        border-top:1px solid #dedede
    }
}

@media(min-width: 960px){
    .store_content{
        width:36.6666666667vw;
        width:calc(.3666666667*var(--w))
    }
}

.store_info{
    display:flex;
    justify-content:flex-start;
    align-items:flex-start
}

.store_info ._dt{
    width:95px;
    font-size:13px;
    line-height:2.1
}

@media(min-width: 960px){
    .store_info ._dt{
        width:13.3333333333vw;
        width:calc(.1333333333*var(--w));
        font-size:15px
    }
}

.store_linkArea{
    margin-top:40px;
    text-align:center
}

@media(min-width: 960px){
    .store_linkArea{
        margin-top:0;
        text-align:right
    }
}

.allNews{
    padding:0 30px
}

@media(min-width: 960px){
    .allNews{
        padding:0 calc(3.3333333333vw + 20px) 0 calc(33.3333333333vw + 20px);
        padding:0 calc(.0333333333*var(--w) + 20px) 0 calc(.3333333333*var(--w) + 20px)
    }
}



