.c-fv__ttl__ja {
    padding:0 0 111px
}
.intro {
    padding:0 0 75px
}
.intro__wrap {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    max-width:1050px;
    margin:0 auto
}
.intro__img {
    width:47%
}
.intro__img img {
    border-radius:24px
}
.intro__container {
    width:49%
}
.intro__ttl {
    color:#06C735;
    font-size:32px;
    font-weight:700;
    line-height:1.5625;
    margin:0 0 27px
}
.trimming {
    padding:0 0 110px
}
.trimming__in {
    border:7px solid #f2fcf7;
    max-width:1010px;
    margin:0 auto;
    padding:55px 20px
}
.trimming__wrap {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    max-width:860px;
    margin:0 auto
}
.trimming__container {
    width:54%
}
.trimming__ttl {
    color:#06C735;
    font-size:24px;
    font-weight:700;
    line-height:1.4166666667;
    margin:0 0 28px
}
.trimming__txt {
    margin:0 0 30px
}
.trimming__img {
    width:42%
}
.trimming__img img {
    border-radius:23px
}
.trimming__btn {
    -webkit-box-ordinal-group:5;
    -ms-flex-order:4;
    order:4
}
.menu {
    position:relative;
    padding:100px 0 200px;
    overflow:hidden
}
.menu::before {
    content:"";
    position:absolute;
    top:0;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%);
    width:128.21428571vw;
    height:1000px;
    background:#f2fcf7;
    border-radius:50%;
    z-index:-1
}
.menu::after {
    content:"";
    position:absolute;
    bottom:0;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%);
    width:128.21428571vw;
    height:1000px;
    background:#f2fcf7;
    border-radius:50%;
    z-index:-1
}
.menu__ttl {
    color:#06C735;
    text-align:center
}
.menu__ttl__en {
    font-size:14px;
    font-weight:700;
    line-height:1;
    margin:0 0 23px
}
.menu__ttl__ja {
    font-size:32px;
    font-weight:700;
    line-height:1.5625
}
.menu__base {
    position:relative;
    background:#f2fcf7;
    padding:30px 0 0
}
.menu__in {
    max-width:1000px;
    margin:0 auto
}
.menu__note {
    padding:0 25px;
    background:#dbf0e9;
    margin:0 0 80px
}
.menu__note__ttl {
    position:relative;
    padding:27px 0;
    color:#06C735;
    font-size:24px;
    font-weight:700;
    line-height:1.3;
    text-align:center;
    cursor:pointer
}
.menu__note__ttl span {
    font-size:13px
}
.menu__note__ttl::before {
    content:"";
    position:absolute;
    top:50%;
    right:20px;
    -webkit-transform:translateY(-50%) rotate(180deg);
    transform:translateY(-50%) rotate(180deg);
    width:18px;
    height:16px;
    background:#06C735;
    clip-path:polygon(50% 0,100% 100%,0 100%);
    -webkit-transition:.3s;
    transition:.3s
}
.menu__note__ttl.opened::before {
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%)
}
.menu__note__container {
    display:none
}
.menu__note__container__in {
    padding:20px 32px 30px;
    border-top:1px solid #d0e2ea
}
.menu__note__container__ttl {
    color:#06C735;
    font-size:14px;
    font-weight:700;
    line-height:1.6;
    margin:0 0 18px
}
.menu__note__list li {
    position:relative;
    margin:0 0 15px;
    padding:0 0 0 12px
}
.menu__note__list li:last-child {
    margin:0
}
.menu__note__list li::before {
    content:"";
    position:absolute;
    top:9px;
    left:0;
    width:2px;
    height:2px;
    border-radius:50%;
    background:#3f4044
}
.menu__note__list li .ttl {
    font-size:14px;
    line-height:1.3
}
.menu__note__list li .ttl span {
    color:#06C735;
    font-weight:700
}
.menu__note__list li .txt {
    font-size:12px
}
.menu__block {
    margin:0 0 70px
}
.menu__block:last-child {
    margin:0
}
.menu__block__ttl {
    color:#06C735;
    font-size:24px;
    font-weight:700;
    line-height:1.2;
    text-align:center;
    padding:15px 15px;
    background:#fff;
    border-radius:999px;
    margin:0 0 25px
}
.menu__block__ttl span {
    font-size:13px
}
.menu__block__table table {
    border-collapse:collapse;
    width:100%
}
.menu__block__table table tr td,.menu__block__table table tr th {
    border-left:1px solid #e4eef4;
    border-bottom:1px solid #e4eef4;
    font-size:18px;
    font-weight:700;
    text-align:center;
    padding:18px 0;
    vertical-align:middle
}
.menu__block__table table tr td span,.menu__block__table table tr th span {
    font-size:14px;
    font-weight:400;
    line-height:1.6
}
.menu__block__table table tr td:first-child,.menu__block__table table tr th:first-child {
    width:465px;
    padding:18px 0 18px 70px;
    text-align:left;
    border-left:none
}
.menu__item {
    padding:0 15px 15px;
    border-bottom:1px solid #e4eef4;
    margin:0 0 15px
}
.menu__item:last-child {
    margin:0
}
.menu__item dl {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    gap:10px;
    max-width:670px;
    margin:0 auto;
    font-size:18px;
    font-weight:700;
    line-height:1.6
}
.menu__item dl dt {
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content
}
.menu__item dl dt span {
    display:inline-block;
    font-size:12px;
    -webkit-transform:translateY(-6px);
    transform:translateY(-6px)
}
.menu__item dl dd {
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content
}
.menu__item dl dd span {
    display:inline-block;
    font-size:12px;
    -webkit-transform:translateY(-6px);
    transform:translateY(-6px)
}
.menu__item__note {
    max-width:670px;
    margin:0 auto;
    font-size:12px;
    font-weight:500;
    line-height:1.4166666667;
    padding:18px 0 0
}
.schedule {
    padding:125px 0 145px
}
.schedule__in {
    max-width:1000px;
    margin:0 auto
}
.schedule__ttl {
    color:#06C735;
    text-align:center;
    margin:0 0 60px
}
.schedule__ttl__en {
    font-size:14px;
    font-weight:700;
    line-height:1;
    margin:0 0 23px
}
.schedule__ttl__ja {
    font-size:32px;
    font-weight:700;
    line-height:1.5625
}
.schedule__block {
    margin:0 0 125px;
    overflow-x:scroll;
    overflow-y:hidden
}
.schedule__block:last-child {
    margin:0
}
.schedule__block__img.long {
    width:2000px
}
.schedule__block__img img {
    width:100%
}
@media only screen and (max-width:767px) {
    .c-fv__ttl__ja {
        padding:0 0 50px
    }
    .intro {
        padding:0 0 55px
    }
    .intro__wrap {
        gap:35px
    }
    .intro__img {
        width:100%
    }
    .intro__container {
        width:100%
    }
    .intro__ttl {
        font-size:32px
    }
    .trimming {
        padding:0 0 60px
    }
    .trimming__in {
        padding:35px 20px
    }
    .trimming__container {
        display:contents
    }
    .trimming__ttl {
        width:100%;
        -webkit-box-ordinal-group:1;
        -ms-flex-order:0;
        order:0;
        margin:0 0 15px
    }
    .trimming__txt {
        width:100%;
        -webkit-box-ordinal-group:4;
        -ms-flex-order:3;
        order:3;
        margin:0 0 15px
    }
    .trimming__img {
        width:100%;
        -webkit-box-ordinal-group:3;
        -ms-flex-order:2;
        order:2;
        margin:0 0 16px
    }
    .menu {
        padding:65px 0 85px
    }
    .menu::before {
        width:250vw;
        height:800px
    }
    .menu::after {
        width:250vw;
        height:800px
    }
    .menu__ttl__en {
        font-size:12px;
        margin:0 0 15px
    }
    .menu__ttl__ja {
        font-size:28px
    }
    .menu__base {
        padding:35px 0 0
    }
    .menu__note {
        padding:0 17px;
        margin:0 0 60px
    }
    .menu__note__ttl {
        padding:15px 0 15px 6px;
        font-size:18px;
        text-align:left
    }
    .menu__note__ttl span {
        font-size:12px
    }
    .menu__note__ttl::before {
        right:10px;
        width:12px;
        height:10px
    }
    .menu__note__container__in {
        padding:23px 0 18px
    }
    .menu__note__container__ttl {
        margin:0 0 16px
    }
    .menu__note__list li {
        margin:0 0 13px;
        padding:0 0 0 8px
    }
    .menu__note__list li::before {
        top:8px
    }
    .menu__note__list li .ttl {
        font-size:13px;
        line-height:1.4
    }
    .menu__block {
        margin:0 0 60px
    }
    .menu__block__ttl {
        font-size:20px;
        padding:10px 10px;
        margin:0 0 20px
    }
    .menu__block__table {
        overflow-x:scroll;
        margin:0 -15px 0 0
    }
    .menu__block__table__in {
        min-width:645px
    }
    .menu__block__table table tr td,.menu__block__table table tr th {
        padding:15px 0;
        font-size:14px
    }
    .menu__block__table table tr td span,.menu__block__table table tr th span {
        font-size:12px
    }
    .menu__block__table table tr td:first-child,.menu__block__table table tr th:first-child {
        width:260px;
        padding:15px 0 15px 11px
    }
    .menu__item {
        padding:0 8px 18px 14px;
        margin:0 0 18px
    }
    .menu__item dl {
        font-size:14px
    }
    .menu__item dl dt span {
        -webkit-transform:translateY(-3px);
        transform:translateY(-3px)
    }
    .menu__item dl dd {
        text-align:right
    }
    .menu__item dl dd span {
        -webkit-transform:translateY(-3px);
        transform:translateY(-3px)
    }
    .menu__item__note {
        font-size:12px;
        line-height:1.375;
        letter-spacing:.01em;
        padding:16px 0 0
    }
    .schedule {
        padding:75px 0 85px
    }
    .schedule__ttl {
        margin:0 0 40px
    }
    .schedule__ttl__en {
        font-size:12px;
        margin:0 0 15px
    }
    .schedule__ttl__ja {
        font-size:28px
    }
    .schedule__block {
        margin:0 -15px 60px 0
    }
    .schedule__block__img {
        min-width:990px
    }
}
