@charset "UTF-8";
.menu-fv {
    margin-top: 90px;
}
.menu-fv__right-text h2 {
    line-height: 1.5;
    font-size: 18px;
    margin-bottom: 20px;
}
.menu-fv__left .menu-heading {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.menu-fv__right-text pre {
    font-size: 1rem;
    font-family: "source-han-sans-japanese", "Noto Sans JP", sans-serif;
    line-height: 1.7;
}
.menu__price {
    overflow: hidden;
}
.menu__faq {
    background: unset;
    background-image: url(../dist/img/menu/qa_bg@2x.png);
    background-repeat: repeat-y;
    background-size: unset;
}
.menu-lists .link-lists__buttons .link-lists__button.button {
    max-width: 240px;
}
.menu-lists .button.--more {
    padding: 16px 47px 15px 11px;
}
/* topへ戻るボタン */
.page-top {
    align-items: center;
}
.page-top a {
    font-size: .75rem;
    width: 82px;
    height: 82px;
}
.page-top a.page-top__web {
    width: 60px;
    height: 60px;
    position: relative;
    padding-top: 7px;
}
.page-top__web::after {
    position: absolute;
    display: block;
    content: "";
    width: 11px;
    height: 11px;
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    transform: rotate(-45deg) translateY(-50%);
    top: 25%;
    left: 48%;
}
@media screen and (min-width: 768px) {
    .heading__title.--en {
        line-height: .8;
    }
    .menu-fv__right-text pre {
        overflow-y: auto;
        height: 350px;
    }
    .menu-fv__right-text pre::-webkit-scrollbar {
        width: 8px;
        height: 10px;
    }
    .menu-fv__right-text pre::-webkit-scrollbar-thumb {
        background: #aaa19a;
        border-radius: 10px;
    }
    .menu-fv__right-text pre::-webkit-scrollbar-track {
        background: #e5e5e5;
        border-radius: 10px;
    }
}
@media screen and (min-width: 980px) {
    .flex__left {
        margin-top: -25px;
    }
    .menu__recommend {
        padding-bottom: 100px;
    }
    .flex__right::after {
        bottom: -20px;
        height: calc(100% + 20px);
    }
    .flex__right::before {
        bottom: -30px;
    }
    .link-lists__left {
        background-color: #efece8;
    }
    .menu__price-container p {
        line-height: 1.4;
    }
    .menu__faq .accordion__item {
        padding: 15px 0 15px 22px;
    }
    .menu__faq .accordion__title {
        padding-right: 75px;
    }
    .menu__faq .accordion__title::after, .menu__faq .accordion__title::before {
        right: 20px;
    }
    .menu__faq .accordion__content {
        padding-right: 75px;
    }
    .menu__blog-buttons {
        row-gap: 20px;
    }
    .page-top a {
        font-size: .87rem;
        width: 102px;
        height: 102px;
    }
    .page-top a.page-top__web {
        width: 72px;
        height: 72px;
    }
}
@media screen and (min-width: 1280px) {
    .menu-fv {
        margin-top: 110px;
    }
}