/*----------------------------------------
.main_contentsクラスのスタイル
----------------------------------------*/
.main_contents section {
    border-top: none;
}

/*----------------------------------------
テキスト共通クラス
----------------------------------------*/
.txt-center {
    text-align: center;
}
.txt-left {
    text-align: left;
}
h2 {
    text-align: center;
    font-size: 32px;
    font-weight: 500;
    letter-spacing: 0.1em;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

h2 span {
    display: block;
    text-align: center;
    font-size: 16px;
    color: #333333;
    font-weight: normal;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

h2 span::after {
    content: none;
}
@media screen and (max-width: 767px) {
    h2 {
        font-size: 24px;
    }
    h2 span {
        font-size: 14px;
    }
}

/*----------------------------------------
ヘッダー
----------------------------------------*/
.l-header__inner {
    transition: .6s;
}
.l-header__inner.change {
    background: #333;
}

/*----------------------------------------
メインビジュアル
----------------------------------------*/
.sp-only {
    display: none;
}
.sec_mv {
    position: relative;
}
.sec_mv .mv_text {
    position: absolute;
    bottom: 50%;
    left: 25%;
    transform: translate(-50%, 50%);
    color: #fff;
    padding: 24px;
    text-align: center;
    background-color: rgba(51, 51, 51, 0.6);
}
.sec_mv .mv_text h2 {
    margin-bottom: 24px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
    font-size: clamp(18px, 2.4vw, 32px);
}
.sec_mv .mv_text p {
    margin-bottom: 24px;
    font-size: clamp(12px, 1.4vw, 18px);
    font-weight: 500;
    letter-spacing: 0;
}
.sec_mv .mv_text a {
    display: inline-block;
    position: relative;
    padding: 18px 92px;
    background: #fff;
    color: #333;
    font-size: clamp(12px, 1.4vw, 18px);
    font-weight: 500;
    border-radius: 40px;
}
.sec_mv .mv_text a::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 16px;
    width: 30px;
    height: 7px;
    border-bottom: 1px solid #333;
    border-right: 1px solid #333;
    transform: skew(45deg) translateY(-50%);
}
.mv_banner {
    position: absolute;
    bottom: 24px;
    right: 24px;
    background: #fff;
    display: none;
}
.mv_banner .banner_content {
    display: flex;
    gap: 12px;
    background: #fff;
    padding: 8px;
}
.mv_banner .banner_content .banner_contentInner {
    text-align: center;
}
.mv_banner .banner_content .campaign_text {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -29px;
    left: -13px;
    width: 59px;
    height: 59px;
    background: #940D0D;
    color: #fff;
    border-radius: 50%;
    border: 1px solid #fff;
    text-align: center;
    line-height: 1;
}
.mv_banner .banner_content .campaign_text + p {
    font-size: 18px;
    font-weight: 700;
    padding-right: 20px;
}
.mv_banner .banner_content .off_text {
    font-size: 14px;
    background: #333;
    color: #fff;
    line-height: 1.1;
}
.mv_banner .banner_content .price {
    font-size: 15px;
    letter-spacing: 1px;
    line-height: 1.2;
}
.mv_banner .banner_content .sale {
    font-size: 14px;
    font-weight: 700;
    color: #940D0D;
}
.mv_banner .banner_content .sale .big {
    font-size: 20px;
}
.mv_banner .banner_content .inTax {
    font-size: 14px;
}
.mv_banner .banner_content .inTax .big {
    font-size: 18px;
}
.mv_banner .banner_content .link {
    font-size: 14px;
}
.mv_banner .banner_content .banner_img {
    position: relative;
    width: 97px;
}
.mv_banner .banner_content .banner_img img {
    position: absolute;
    bottom: 0;
    object-fit: contain;
}

/*----------------------------------------
定期5品セット
----------------------------------------*/
@media screen and (max-width: 767px) {
    .pc-only {
        display: none;
    }
    .sp-only {
        display: block;
    }
    .sec_mv .mv_text {
        left: 50%;
        width: max-content;
        padding: 40px 24px;
    }
    .sec_mv .mv_text h2 {
        margin-bottom: 16px;
        font-size: 28px;
    }
    .sec_mv .mv_text p {
        font-size: 14px;
    }
    .sec_mv .mv_text a {
        padding: 13px 66px;
        font-size: 14px;
    }
    .mv_banner {
        position: unset;
        padding: 40px 16px;
        background: #F8F8F8;
    }
    .mv_banner .banner_content {
        position: relative;
        margin: auto;
        width: fit-content;
    }
    .mv_banner .banner_content .price {
        letter-spacing: 0;
    }
    .mv_banner .banner_content .banner_img {
        width: 70px;
    }
    .mv_banner .banner_content .banner_img img {
        position: unset;
        height: 100%;
    }
}

/*----------------------------------------
ミッションセクション
----------------------------------------*/
.sec_mission .mission_content {
    display: flex;
    justify-content: center;
}
.sec_mission .mission_contentInner {
    padding: 60px 16px 80px;
    max-width: 800px;
    margin: auto 40px;
}
.sec_mission .mission_contentInner p {
    line-height: 2.8;
    font-size: 14px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
    text-align: center;
    letter-spacing: 1px;
}
.sec_mission .mission_contentInner .all_p_btn {
    text-align: center;
    margin-top: 40px;
    background: unset;
}
.sec_mission .mission_contentInner .all_p_btn .btn {
    padding: 16px 40px;
    background: #333;
    color: #fff;
}
@media screen and (max-width: 767px) {
    .sec_mission .mission_contentInner {
        padding: 60px 0 80px;
        margin: auto 16px;
    }
    .sec_mission .mission_contentInner p {
        text-align: left;
    }
}

/*----------------------------------------
コンセプトセクション
----------------------------------------*/
.sec_concept {
    position: relative;
    background-image: url(https://d2w53g1q050m78.cloudfront.net/bidishjp/uploads/img/section_menu_bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    padding-bottom: 15px;
}
.sec_concept img {
    max-height: 450px;
    height: 30vw;
    object-fit: cover;
}
/* //.sec_concept::before {
//    content: '';
//    display: inline-block;
//    text-align: center;
//    background-image: url('https://d2w53g1q050m78.cloudfront.net/bidishjp/uploads/img/section_concept_bg.png');
//    background-size: cover;
//    background-position: center;
//    background-repeat: no-repeat;
//    width: 100%;
//    padding-top: 27.7%;
//    height: 0;
}// */
.sec_concept .concept_content {
    position: relative;
    top: -105px;
    display: flex;
    justify-content: center;
    z-index: 10;
}
.sec_concept .concept_contentWrapper {
    max-width: 1200px;
    width: 100%;
    margin: 0 40px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    background-color: #fff;
}
.sec_concept .concept_content .concept_contentInner {
    padding: 40px 16px;
    max-width: 840px;
    margin: auto;
}
.sec_concept .concept_content p {
    line-height: 2.8;
    font-size: 14px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
    text-align: center;
    letter-spacing: 1px;
}
.sec_concept .circles {
    display: flex;
    justify-content: center;
    gap: 10%;
    margin-top: 20px;
}
.sec_concept .circles .circle {
    position: relative;
    width: 136px;
    height: 136px;
    background-color: #333;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    font-size: 14px;
    cursor: pointer;
}
.sec_concept .circles .circle::after {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border: 0;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    position: absolute;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%) rotate(135deg);
}
.sec_concept .circles .circle .point {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 20px;
    font-weight: 700;
}
.sec_concept .circles .circle span {
    display: block;
    font-size: 12px;
}
@media screen and (max-width: 767px) {
    .sec_concept {
        padding-bottom: unset;
        background-position-y: -25px;
        margin-bottom: -25px;
    }
    .sec_concept img {
        max-height: 550px;
        height: 72vw;
    }
    /* //.sec_concept::before {
        background-image: url('https://d2w53g1q050m78.cloudfront.net/bidishjp/uploads/img/section_concept_bg-sp.png');
        padding-top: 72%;
    } */
    .sec_concept .concept_contentWrapper {
        margin: 0 16px;
    }
    .sec_concept .concept_content p {
        text-align: left;
    }
    .sec_concept .circles {
        justify-content: space-between;
    }
    .sec_concept .circles .circle {
        width: 25%;
        padding-top: 25%;
        height: 0;
    }
    .sec_concept .circles .circle::after {
        width: 6px;
        height: 6px;
    }
    .sec_concept .circles .circle .point {
        font-size: 14px;
    }
    .sec_concept .circles .circle span {
        line-height: 1.3;
        font-size: 8px;
    }
}

/*----------------------------------------
ご利用方法セクション
----------------------------------------*/
.sec_about {
    background: #fff;
}
.sec_about .wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 80px;
}
.sec_about article {
    display: block;
    position: relative;
    width: calc((100% - 240px) / 4);
    min-width: 170px;
}
.sec_about article div {
    margin-top: 8px;
    text-align: center;
    width: 100%;
    font-size: 15px;
    font-weight: 700;
}
.sec_about article div p {
    font-weight: 500;
}
.sec_about article + article {
    margin-top: unset;
}
.sec_about article::before {
    content: "";
    display: block;
    position: absolute;
    left: -22%;
    transform: translateY(-50%);
    top: 50%;
    clip-path: polygon(0 0, 0% 100%, 85% 50%);
    width: 24px;
    padding-top: 24px;
    background-color: #333;
}
.sec_about article:first-of-type::before {
    content: none;
}
.sec_about article figure {
    position: unset;
    width: unset;
    right: unset;
}
.sec_about .step {
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
    font-weight: 700;
}
.sec_about .step span {
    font-size: 24px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}
@media screen and (max-width: 767px) {
    .sec_about .wrap {
        align-items: center;
        flex-direction: column;
        row-gap: 56px;
    }
    .sec_about article {
        max-width: 400px;
        width: 100%;
        text-align: center;
    }
    .sec_about article::before {
        clip-path: polygon(0 0, 50% 100%, 100% 0%);
        left: 50%;
        transform: translateX(-50%);
        top: -38px;
        width: 24px;
        height: 24px;
        padding-top: unset;
    }
    .sec_about article figure {
        margin: auto;
        max-width: 310px;
    }
    .sec_about article div {
        width: 100%;
    }
}

/*----------------------------------------
ご注文方法セクション
----------------------------------------*/

.sec_howto {
    background: #F8F8F8;
}
.sec_howto ol {
    display: block;
}
.sec_howto ol li {
    display: grid;
    grid-template:
        "img ... title"
        "img ... text"
        / 80px 24px auto
    ;
    justify-content: unset;
    align-items: flex-start;
    max-width: 800px;
    margin: 0 auto 24px;
    padding: 0 0 24px;
    border-bottom: 1px solid #CCC;
}
.sec_howto ol li::before {
    content: none;
}
.sec_howto ol li figure {
    grid-area: img;
}
.sec_howto ol li .sec_howto_step_number {
    grid-area: title;
    font-size: 18px;
    font-weight: 500;
}
.sec_howto ol li .sec_howto_step_number span {
    font-family: "Zen Kaku Gothic New", sans-serif !important;
    margin-right: 16px;
    font-size: 40px;
    font-weight: 400;
}
.sec_howto ol li .howto_text {
    grid-area: text;
    font-size: 15px;
    font-weight: 400;
}
.sec_howto ol li .howto_login {
    margin-bottom: 16px;
}
.sec_howto ol li .howto_login a {
    text-decoration: underline;
}
.sec_howto ol li .howto_login + a {
    display: inline-block;
    max-width: 350px;
}
.sec_howto .all_p_btn {
    text-align: center;
    margin-top: 53px;
    background-color: transparent;
}
.sec_howto .all_p_btn .btn {
    padding: 8px 31px;
    background-color: #333333;
    color: #FFFFFF;
}
@media screen and (max-width: 767px) {
    .sec_howto ol li {
        grid-template:
            "img ... title"
            "text text text"
            / 60px 16px auto
        ;
        row-gap: 16px;
    }
    .sec_howto ol li .sec_howto_step_number span {
        display: block;
        line-height: 1.173;
        font-size: 28px;
    }
}

/*----------------------------------------
ご利用方法のセクション
----------------------------------------*/
.sec_howto li + li::before {
    clip-path: polygon(0 0, 0% 100%, 85% 50%);
    width: 34px;
    height: 34px;
    left: -95px;
    transform: translateY(-50%);
    top: 50%;
}

.sec_howto li strong {
    font-size: 15px;
    white-space: nowrap;
    letter-spacing: 0px;
    font-weight: bold;
}

.sec_howto li strong::before {
    content: none;
}

.sec_howto_step_number {
    margin-right: auto;
}

.sec_howto_step_number span {
    font-size: 24px;
}

/*----------------------------------------
定期セットメニューのセクション
----------------------------------------*/
.p-new_product .wrap {
    border-top: unset;
}

.setMenu_list .p-new_product__slider__track__list {
    flex-direction: column;
}

.setMenu_list .p-new_product__slider__track__list__item::before {
    content: none;
}

.setMenu_list .p-new_product__slider__track__list__item {
    width: 100% !important;
    background-color: #FFFFFF;
}

.setMenu_list .c-product_item {
    flex-direction: row;
    align-items: center;
}

.setMenu_list .c-product_item__inner__content {
    flex-direction: row;
    align-items: center;
    margin-top: 0;
}

.setMenu_list .setMenu_itemTitle.u-text--subhead {
    margin-bottom: 0;
}

.setMenu_list .c-product_item__inner__price.u-text--body {
    margin-top: 0;
    margin-bottom: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.setMenu_list .c-product_item_btns .btn.buy {
    padding: 5px 34px;
    min-height: 39px;
    background-color: #171717;
}

setMenu_list .btn {
    min-height: unset;
    font-size: 15px !important;
}

/*----------------------------------------
メニュー紹介のセクション
----------------------------------------*/
.main_contents section.separate {
    display: block;
}

.separate > div {
    width: 100%;
}

.separate .txt {
    width: 100%;
}

.separate::before {
    content: none;
}

/*----------------------------------------
よくあるご質問のセクション
----------------------------------------*/


/*----------------------------------------
お知らせ・コラムのセクション
----------------------------------------*/

.sec_column_news {
    background: #F8F8F8;
}

.sec_column_grid_text {
    font-size: 15px !important;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
    font-weight: 700;
    margin-top: 5px !important;
    color: #000000;
    letter-spacing: 0.3px;
}

.sec_column_grid_text a time {
    font-size: 13px;
    font-weight: normal;
}

.sec_column_grid_text a p {
    font-weight: 500;
    margin-top: 5px !important;
}

/*----------------------------------------
セクションのボタン
----------------------------------------*/

.btn_more_wrap {
    text-align: center;
}

.btn.more {
    display: inline-block;
    padding: 16px 40px;
    margin-left: unset;
    transform: unset;
    border: 1px solid #AAAAAA;
    color: #333333;
    margin-top: 40px;
    min-width: unset;
    font-size: 16px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.btn.more::before {
    content: none;
}

/*----------------------------------------
お問い合わせのセクション
----------------------------------------*/
.sec_contact {
    position: relative;
    background: url("https://d2w53g1q050m78.cloudfront.net/bidishjp/uploads/img/contact_bg_new.png");
    background-position: center;
    color: #fff;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 96px 0;
}

.sec_contact::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(51, 51, 51, 0.6);
}

.sec_contact h2 {
    color: #FFFFFF;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
    font-size: 40px;
    font-weight: 400;
}

.sec_contact h2 span {
    color: #FFFFFF;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.sec_contact_wrap {
    font-size: 15px;
}

.sec_contact_wrap p {
    letter-spacing: 0.3px;
}

.sec_contact_texts {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}

.sec_contact_text {
    display: flex;
    column-gap: 55px;
}
.sec_contact_text .target-person {
    font-weight: 500;
}
.sec_contact_text .target-person + p {
    position: relative;
    font-weight: 400;
}

.sec_contact_text .target-person + p::after {
    content:"";
    display:inline-block;
    width:1px;
    height:135px;
    background-color:#FFFFFF;
    position:absolute;
    top:-2px;
    left: -30px;
}

.btn.more.contact_btn {
    border-radius: 0;
    color: #FFFFFF;
}
@media screen and (max-width: 767px) {
    .sec_contact {
        background-position: 63% 0px;
    }
    .sec_contact_texts {
        flex-direction: column;
        row-gap: 32px;
    }
    .sec_contact_text {
        flex-direction: column;
        row-gap: 8px;
    }
    .sec_contact_text .target-person + p {
        padding-left: 16px;
        border-left: thin solid #fff;
    }
}

/*----------------------------------------
メニュー紹介セクション
----------------------------------------*/
.sec_menu {
    padding: 120px 0 !important;
    background-image: url('https://d2w53g1q050m78.cloudfront.net/bidishjp/uploads/img/section_menu_bg.png');
    background-size: cover;
}
.bl_menu h2 {
    text-align: center;
    font-size: 32px;
    font-weight: 500;
}
.bl_menu .slick-dots {
    display: none !important;
}
.bl_menu .slider_menuTab {
    text-align: center;
    margin-bottom: 24px;
}
.bl_menu .slider_menuTab a {
    padding: 0 55px;
    font-size: 18px;
    font-weight: 500;
}
.bl_menu .slider_menuTab a:first-of-type {
    border-right: 1px solid #333;
}
.bl_menu .slider_menuTab a.active {
    color: #940D0D;
}
.sec_lineup .bl_menu .img {
    padding-top: 0;
}
.bl_menu .slider_menuBox {
    display: none;
}
.bl_menu .slider_menuBox.active {
    display: block;
    animation-duration: 0.6s;
    animation-name: fadeIn;
}
@keyframes fadeIn {
    0%{
        opacity: 0;
    }
    50%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}

.bl_menu article {
    height: auto;
}
.slider_menuItem {
    display: flex;
    background: #fff;
    margin: 0 20px;
    padding: 32px 40px;
    height: 100%;
}
.slider_menuItem .slider_menuImg {
    width: 35%;
}
.slider_menuItem .slider_menuInfo {
    display: flex;
    flex-direction: column;
    width: calc(65% - 40px);
    margin-left: 40px;
    position: relative;
    background: 1;
}
.slider_menuItem .slider_menuInfo h3 {
    margin-bottom: 16px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}
.slider_menuItem .slider_menuInfo p {
    margin-bottom: 40px;
}
.slider_menuItem .slider_menuInfo .slide_html ul {
    display: flex;
    gap: 8px;
    margin-bottom: 24px;
    margin-top: unset !important;
}
.slider_menuItem .slider_menuInfo .slide_html ul li {
    border-radius: unset;
    padding: 4px 12px;
    height: unset;
    border: 1px solid #333;
    line-height: 1;
}
.slider_menuItem .slider_menuInfo .slider_menuInfo-btn {
    position: relative;
    flex-grow: 1;
    min-height: 56px;

}
.slider_menuItem .slider_menuInfo .slider_menuInfo-btn a {
    position: absolute;
    bottom: 0;
}
.slider_menu .slick-next {
    display: block;
    background: #333;
    height: 120px;
    width: 44px;
    right: 29.8%;
}
@media screen and (max-width: 2399px) {
    .slider_menu .slick-next {
        right: 19.8%;
    }
}
@media screen and (max-width: 1439px) {
    .slider_menu .slick-next {
        right: 13.8%;
    }
}
.slider_menu .slick-next::before {
    content: '';
    width: 20px;
    height: 20px;
    border: 0;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-79%, -50%) rotate(45deg) skew(12deg, 12deg);
}
.slider_menu .slick-prev {
    display: block;
    background: #333;
    height:120px;
    width: 44px;
    left: 29.8%;
    z-index: 1;
}
@media screen and (max-width: 2399px) {
    .slider_menu .slick-prev {
        left: 19.8%;
    }
}
@media screen and (max-width: 1439px) {
    .slider_menu .slick-prev {
        left: 13.8%;
    }
}
.slider_menu .slick-prev::before {
    content: '';
    width: 20px;
    height: 20px;
    border: 0;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-21%, -50%) rotate(-135deg) skew(12deg, 12deg);
}
.slider_menu .slick-slide {
    transition: all ease-in-out .3s;
    opacity: .5;
}
.slider_menu .slick-active {
    opacity: 1;
}
.bl_menu .all_p_btn {
    text-align: center;
    margin-top: 40px;
    background-color: unset;
}
.bl_menu .all_p_btn .btn {
    padding: 16px 40px;
    background: #333;
    color: #fff;
}
@media screen and (max-width: 767px) {
    .sec_menu {
        padding: 80px 0;
    }
    .slider_menuItem {
        flex-direction: column;
        padding: 24px;
    }
    .slider_menuItem .slider_menuImg {
        width: 100%;
    }
    .slider_menuItem .slider_menuInfo {
        width: 100%;
        margin-left: unset;
        position: relative;
        height: 100%;
    }
    .slider_menuItem .slider_menuInfo .slide_html ul {
        font-size: 12px;
    }
    .slider_menuItem .slider_menuInfo .slider_menuInfo-btn {
        min-height: 50px;
    }
    .slider_menuItem .slider_menuInfo .slider_menuInfo-btn a {
        left: 50%;
        transform: translate(-50%);
    }
    .slider_menu .slick-prev {
        left: 1%;
        top: calc(32vw - 18px);
        transform: unset;
    }
    .slider_menu .slick-next {
        right: 1%;
        top: calc(32vw - 18px);
        transform: unset;
    }
}

/*----------------------------------------
定期セットメニューセクション
----------------------------------------*/
section[data-section-type="new_product"] {
    border-top: unset;
}
.sec_setMenu {
    position: relative;
    padding: unset !important;
    background: #F8F8F8;
}
.sec_setMenu .inner {
    max-width: 1200px;
    display: flex;
}
.sec_setMenu .setMenu_bg {
    width: 26.5%;
}
.sec_setMenu .setMenu_bg p {
    height: 100%;
    margin-left: calc((50vw - 150%) * -1);
}
.sec_setMenu .setMenu_bg p .simpleParallax{
    height: 100%;
}
.sec_setMenu .setMenu_bg p img {
    height: 100%;
    object-fit: cover;
    scale: 1.15;
}
.sec_setMenu .setMenu_content {
    max-width: 880px;
    width: 73.5%;
    padding: 103px 0 120px 6.9%;
    margin-left: auto;
}
.sec_setMenu .setMenu_content h2 {
    text-align: left;
    margin-bottom: 32px;
}
.sec_setMenu .p-new_product__title .p-new_product__title__en {
    text-align: left;
}
.sec_setMenu .setMenu_note {
    margin-bottom: 40px;
    font-size: 14px;
}
.sec_setMenu .setMenu_summary {
    display: flex;
    margin-bottom: 80px;
}
.sec_setMenu .setMenu_summary li {
    border-right: 1px solid #CCC;
    padding: 0 5.4%;
}
.sec_setMenu .setMenu_summary li:first-of-type {
    padding-left: unset;
}
.sec_setMenu .setMenu_summary li:last-of-type {
    border-right: unset;
    padding-right: unset;
}
.sec_setMenu .setMenu_summary li span {
    font-size: 14px;
}
.sec_setMenu .setMenu_summary li span > span {
    display: block;
    font-weight: 500;
    font-size: 18px;
}
.sec_setMenu .setMenu_list p {
    font-size: 20px;
    font-weight: 500;
}
.sec_setMenu .setMenu_list ul {
    margin: unset;
}
.sec_setMenu .setMenu_list ul li {
    padding: unset;
    margin-bottom: 16px;
    margin-top: unset;
}
.sec_setMenu .setMenu_list ul li .c-product_item  {
    padding: 23px 4% 22px 7%;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__title {
    min-width: 115px;
    text-align: center;
    font-size: 20px !important;
    margin-right: 8.8%;
    margin-top: unset;
    word-break: keep-all;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__title > span {
    display: block;
    font-size: 14px;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price {
    margin-bottom: unset !important;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price .discount {
    width: 100%;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price .discount .price {
    background: #940D0D;
    color: #fff;
    padding: 2px 8px;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price .discount .postage {
    color: #940D0D;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price .origin {
    font-size: 15px;
    color: #888;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price .sale {
    font-size: 20px;
    font-weight: 700;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price small {
    font-size: 14px;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price .priceInTax {
    font-size: 18px;
}
.sec_setMenu .setMenu_list ul li .c-product_item__inner__price .yen-mark {
    font-size: 15px;
}
.sec_setMenu .setMenu_list .link {
    margin-left: auto;
    display: block;
    width: fit-content;
    text-decoration: underline;
}
@media screen and (max-width: 999px) {
    .sec_setMenu .setMenu_list ul li .c-product_item {
        flex-direction: column;
    }
    .sec_setMenu .setMenu_list ul li .c-product_item__inner__content {
        flex-direction: column;
    }
    .sec_setMenu .setMenu_list ul li .c-product_item__inner__price {
        justify-content: center;
    }
    .sec_setMenu .setMenu_list ul li .c-product_item__inner__price .discount {
        text-align: center;
    }
}
@media screen and (max-width: 767px) {
    .sec_setMenu .inner {
        flex-direction: column;
    }
    .sec_setMenu .setMenu_bg {
        width: 100vw;
        height: 320px;
        margin: 0 calc(50% - 50vw);
    }
    .sec_setMenu .setMenu_bg p {
        margin-left: unset;
    }
    .sec_setMenu .setMenu_bg p img {
        scale: 1.35;
    }
    .sec_setMenu .setMenu_content {
        width: 100%;
        padding: 40px 0 120px;
    }
    .sec_setMenu .setMenu_content h2,
    .sec_setMenu .setMenu_content h2 > span {
        text-align: center;
    }
    .sec_setMenu .setMenu_summary {
        flex-direction: column;
        text-align: center;
    }
    .sec_setMenu .setMenu_summary li {
        display: inline-block;
        margin: auto;
        padding: 21px 0;
        border-right: unset;
        border-bottom: 1px solid #CCC;
        width: 212px;
    }
    .sec_setMenu .setMenu_summary li:first-of-type {
        padding-top: unset;
    }
    .sec_setMenu .setMenu_summary li:last-of-type {
        padding-bottom: unset;
        border-bottom: unset;
    }
    .sec_setMenu .setMenu_list > p {
        font-size: 20px;
        font-weight: 700;
        margin-bottom: 16px;
    }
    .sec_setMenu .setMenu_list ul li {
        border-top: 1px solid #CCC;
        border-bottom: 1px solid #CCC;
        border-right: 1px solid #CCC;
        border-left: 1px solid #CCC;
    }
    .sec_setMenu .setMenu_list ul li .c-product_item__inner__content {
        gap: 8px;
        margin-bottom: 16px;
    }
    .sec_setMenu .setMenu_list ul li .c-product_item__inner__title > span {
        display: inline;
    }
    .sec_setMenu .setMenu_list ul li .c-product_item__inner__price .discount {
        margin-bottom: 8px;
        text-align: center;
    }
}


/*----------------------------------------
SCIENCEセクション
----------------------------------------*/


.sec_science {
    margin-top: 70px;
    margin-bottom: 80px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.sec_raleway__head {
    position: relative;
    margin-bottom: 64px;
    font-size: 32px;
    font-weight: 500;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.sec_raleway__head::before {
    content: "SCIENCE";
    position: absolute;
    top: -50px;
    left: 50%;
    z-index: -1;
    transform: translateX(-50%);
    font-size: 100px;
    font-weight: 500;
    color: #EEEEEE;
}

.sec_raleway__head::after {
    content: "";
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    width: 40px;
    background-color: #333333;
}

.sec_science__title_wrap {
    text-align: center;
}

.sec_science__title {
    font-weight: 500;
    font-size: 28px;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.sec_science__subtitle {
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}

.sec_science__info {
    position: relative;
    margin-top: 76px;
    padding-left: 42px;
    padding-right: 65px;
}

.sec_science__info::after {
    content: "";
    position: absolute;
    display: inline-block;
    z-index: -1;
    top: -105px;
    left: -105px;
    background-image: url("https://d2w53g1q050m78.cloudfront.net/bidishjp/uploads/img/sciense_elements.png");
    background-size: cover;
    background-repeat: no-repeat;
    width: 400px;
    height: 283px;
}

.sec_science__info__title {
    margin-bottom: 16px;
    padding-bottom: 16px;
    font-size: 24px;
    border-bottom: 1px solid var(--color-text-body);
    font-weight: 500;
}

.sec_science__info__title span {
    font-size: 16px;
}

.sec_science__info__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sec_science__info__item_text {
    margin-right: 3%;
    width: 73.2%;
    font-size: 14px;
}

.sec_science__info__item_fmr {
    display: flex;
    align-items: center;
    column-gap: 19px;
    padding: 16px 24px;
    border: 1.57px solid #333333;
    font-weight: 700;
    font-size: 20px;
}

.sec_science__info__item_fmr_fraction {
    display: flex;
    flex-direction: column;
    row-gap: 16px;
    width: 126px;
    align-items: center;
}

.sec_science__info__item_fmr_fraction p:first-of-type {
    position: relative;
}

.sec_science__info__item_fmr_fraction p:first-of-type::after {
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    width: 126px;
    background-color: #333333;
}

.sec_science__contents {
    margin-top: 50px;
    padding: 40px 40px 73px;
    background-color: #FFFFFF;
}

.sec_science__content {
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
}

.sec_science__content__item {
    width: 43%;
}

.sec_science__contents__title {
    font-size: 20px;
    font-weight: 500;
}

.sec_science__content__item_read {
    margin-top: 6px;
    margin-bottom: 4px;
    font-size: 14px;
}

.sec_science__pdf_link {
    font-size: 14px;
    font-weight: 700;
    text-decoration: underline;
    letter-spacing: 0;
}

.sec_science__content__item_nutrients {
    margin-top: 12px;
    margin-bottom: 40px;
    margin-right: auto;
    margin-left: auto;
    max-width: 480px;
    width: 100%;
}

.btn-black {
    background: #333;
    color: #fff;
}

.sec_science__content_image {
    width: 48%;
}
.sec_science__content_image p {
    font-size: 14px;
}

.sec_science__btn {
    margin-top: -20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: fit-content;
}

.sec_science__btn p {
    font-weight: 900;
    letter-spacing: 0;
    font-size: 14px;
}

.sec_science__btn #fmr_calculate__open {
    width: 240px;
}

@media screen and (max-width: 767px) {
    .sec_science {
        overflow: hidden;
        margin-bottom: 0;
    }

    .sec_raleway__head::before {
        top: 170px;
        left: unset;
        right: -210px;
        transform: rotate(90deg);
    }

    .sec_science__title {
        font-size: 24px;
    }

    .sec_science__info {
        margin-top: 87px;
        padding-left: 0px;
        padding-right: 0px;
    }

    .sec_science__info::after {
        content: none;
    }

    .sec_science__info__title {
        margin-bottom: 16px;
        padding-bottom: 16px;
        font-size: 20px;
        border-bottom: 1px solid var(--color-text-body);
        font-weight: 700;
    }

    .sec_science__info__title span {
        font-size: 14px;
    }

    .sec_science__info__item {
        flex-direction: column;
        justify-content: normal;
        row-gap: 40px;
    }

    .sec_science__info__item_text {
        margin-right: 0;
        width: 100%;
    }

    .sec_science__info__item_fmr {
        display: flex;
        align-items: center;
        column-gap: 19px;
        padding: 16px 24px;
        border: 1.57px solid #333333;
        font-weight: 700;
        font-size: 20px;
    }

    .sec_science__info__item_fmr_fraction {
        display: flex;
        flex-direction: column;
        row-gap: 16px;
        width: 126px;
        align-items: center;
    }

    .sec_science__info__item_fmr_fraction p:first-of-type {
        position: relative;
    }

    .sec_science__contents {
        margin-top: 40px;
        padding: 40px 24px;
    }

    .sec_science__content {
        align-items: flex-start;
        flex-direction: column;
        justify-content: space-between;
    }

    .sec_science__content__item {
        width: 100%;
    }

    .sec_science__contents__title {
        font-size: 20px;
        font-weight: 700;
    }

    .sec_science__content__item_read {
        margin-top: 16px;
        font-size: 14px;
    }

    .sec_science__btn__flex {
        flex-direction: column;
        justify-content: center;
        gap: 0px;
    }

    .sec_science__btn {
        margin-top: 24px;
        width: 100%;
    }

    .btn-black {
        width: 240px;
        height: 50px;
    }

    .sec_science__content_image {
        width: 100%;
    }
}

/*------------------ FMR計算モーダル -----------------*/
.fmr_calculate {
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    width: 100%;
    height: 100%;
    background-color: rgba(51, 51, 51, 0.6);
}
.fmr_calculate.show {
    opacity: 1;
    visibility: visible;
}
.fmr_calculate__content {
    overflow-y: scroll;
    position: fixed;
    inset: 0;
    margin: auto;
    height: fit-content;
    max-height: 100vh;
    width: 93%;
    max-width: 680px;
    font-weight: 500;
    color: #333333;
    padding: 40px;
    background-color: #F8F8F8;
    border: 1px solid #CCCCCC;
}
#fmr_calculate__close {
    content: '';
    position: absolute;
    top: 16px;
    right: 16px;
    line-height: 0.8;
    font-size: 32px;
    width: 28px;
    font-weight: 400;
}
#fmr_calculate__close:hover {
    cursor: pointer;
}
.fmr_calculate__title {
    text-align: center;
    font-size: 18px;
    line-height: 1.3;
    padding-bottom: 8px;
    font-weight: 700;
    border-bottom: 1px solid #333333;
    letter-spacing: 0;
    font-family: "Zen Kaku Gothic New", sans-serif !important;
}
.fmr_calculate__read {
    margin-top: 8px;
    text-align: center;
    letter-spacing: 0;
}
.fmr_calculate__alert {
    text-align: center;
    font-size: 12px;
    color: #940D0D;
    font-weight: 700;
}
.fmr_calculate__gender {
    margin-top: 24px;
}
.fmr_calculate__gender__wrap {
    display: flex;
    align-items: center;
    font-size: 15px;
}
.fmr_calculate__gender__wrap label {
    position: relative;
    cursor: pointer;
    padding-left: 30px;
    line-height: 1;
}
.fmr_calculate__gender__wrap label:first-of-type {
    margin-right: 16px;
}
.fmr_calculate__gender__wrap label::before,
.fmr_calculate__gender__wrap label::after {
    content: "";
    display: block;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    border-radius: 100px;
}
.fmr_calculate__gender__wrap label::before {
    width: 20px;
    height: 20px;
    border-radius: 100px;
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
    left: 5px;
}
.fmr_calculate__gender__wrap label::after {
    background-color: #333333;
    border-radius: 100px;
    opacity: 0;
    width: 15px;
    height: 15px;
    left: 7.5px;
}
.fmr_calculate__gender__wrap input:checked + label::after {
    opacity: 1;
}
.fmr_calclate__profile {
    display: flex;
    margin-top: 16px;
    justify-content: space-between;
}
.fmr_calclate__profile__wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    letter-spacing: 0;
}
.fmr_calclate__profile__wrap input {
    padding-left: 6px;
    letter-spacing: 3px;
    width: 60px;
    height: 40px;
    border-radius: 4px;
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
}
.fmr_calculate__btn__wrap {
    margin-top: 16px;
    text-align: center;
}
.fmr_calculate__btn {
    border-radius: 40px;
    width: 240px;
    max-width: 100%;
    height: 40px;
    font-size: 15px;
}
.fmr_calculate__result {
    margin-top: 32px;
}
.fmr_calculate__result__wrap {
    margin-top: 32px;
}
.fmr_calculate__result__title {
    text-align: center;
    font-size: 16px;
    font-weight: 700;
}
.fmr_calculate__result__flex {
    display: flex;
    justify-content: center;
    gap: 40px;
}
.fmr_calculate__result__content {
    display: flex;
    justify-content: center;
    align-items: baseline;
}
.fmr_calculate__result__content__text {
    font-weight: 500;
    font-size: 16px;
}
.fmr_calculate__result__content__num {
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
}
.fmr_calculate__table {
    margin: 20px auto 0;
    max-width: 500px;
}
.fmr_calculate__table__title {
    font-size: 14px;
}
.fmr_calculate__table table {
    background-color: #ffffff;
    border: 1px solid #CCCCCC;
}
.fmr_calculate__table table tr {
    height: 40px;
}
.fmr_calculate__table table tr:nth-of-type(3),
.fmr_calculate__table table tr:nth-of-type(4) {
    border-top: 1px solid #EEEEEE;
}
.fmr_calculate__table table td {
    text-align: center;
}
.fmr_calculate__table__gender__column {
    padding-left: 16px;
    text-align: left;
    border-right: 1px solid #EEEEEE;
}
.fmr_calculate__table__age {
    display: inline-block;
    color: #ffffff;
    background-color: #333333;
    border-radius: 40px;
    width: 59px;
    line-height: 1.4;
    font-size: 14px;
}
.fmr_calculate__table__read {
    margin-top: 8px;
    font-size: 11px;
    color: #888888;
    line-height: 1.5;
    letter-spacing: 0;
}

@media screen and (max-width: 767px) {
    .fmr_calculate {
        padding: 0 16px;
    }
    .fmr_calculate__content {
        padding: 50px 16px 45px;
    }
    .fmr_calculate__read {
        font-size: 13px;
    }
    .fmr_calclate__profile {
        margin-top: 24px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, 1fr);
        grid-column-gap: 0px;
        grid-row-gap: 24px;
    }
    .fmr_calculate__btn__wrap {
        margin-top: 24px;
    }
    .fmr_calculate__btn {
        height: 50px;
    }
    .fmr_calculate__result {
        margin-top: 48px;
    }
    .fmr_calculate__table {
        margin-top: 24px;
    }
    .fmr_calculate__table table tr:nth-of-type(3),
    .fmr_calculate__table table tr:nth-of-type(4) {
        height: 30px;
    }
    .fmr_calculate__table__gender__column {
        padding-left: 8px;
    }
    .fmr_calculate__table__age {
        width: 47px;
    }
    .fmr_calculate__table__read {
        font-size: 11px;
        color: #888888;
        line-height: 1.5;
        letter-spacing: 0;
    }
}

/*------------------ ART・LOVE部分 -----------------*/

.sec_science__grid__wrap {
    margin-top: 80px;
}

.sec_science__grid {
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 4%;
}

.sec_science__grid:last-of-type {
    margin-top: 80px;
}

.grid__row-reverse {
    flex-direction: row-reverse;
}

.sec_science__grid_image {
    margin-left: calc(50% - 50vw);
    width: 47vw;
}

.grid__row-reverse .sec_science__grid_image {
    margin-right: calc(50% - 50vw);
}

.sec_science__grid_image img {
    object-fit: cover;
    aspect-ratio: 68 / 32;
}

.sec_science__grid_item {
    width: 47%;
}

.sec_science__grid_item__title {
    margin-bottom: 48px;
    text-align: left;
}

.sec_science__grid_item__title::after {
    bottom: -25px;
    left: 0;
    transform: unset;
}

.art__title::before {
    content: "ART";
    transform: unset;
    left: 0;
}

.love__title::before {
    content: "LOVE";
    transform: unset;
    left: 0;
}

.sec_science__grid_text {
    margin-top: 24px;
    font-size: 14px;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .sec_science__grid__wrap {
        margin-top: 56px;
    }

    .sec_science__grid {
        flex-direction: column-reverse;
    }

    .sec_science__grid:last-of-type {
        margin-top: 56px;
    }

    .sec_science__grid_item {
        width: 100%;
    }

    .sec_science__grid_image {
        margin-top: 40px;
        margin-left: 0;
        width: 100vw;
    }

    .grid__row-reverse .sec_science__grid_image {
        margin-right: 0;
    }

    .art__title::before {
        top: 50px;
        left: unset;
        right: -90px;
        transform: rotate(90deg);
    }

    .love__title::before {
        top: 80px;
        left: unset;
        right: -120px;
        transform: rotate(90deg);
    }
}


/*----------------------------------------
よくある質問セクション
----------------------------------------*/

.sec_faq_inner {
    display: flex;
    justify-content: space-between;
}

.sec_faq_inner h2 {
    width: 26.5%;
    white-space: nowrap;
    font-weight: 500;
    text-align: left;
}

.faq_content_wrap {
    max-width: 880px;
    width: 73.5%;
    padding-left: 6.9%;
    margin-left: auto;
}

.faq_content_wrap dl {
    border-top: 1px solid #EAEAEA;
    position: relative;
    padding: 16px 0;
}

.faq_content_wrap dl::before {
    content: "";
}

.faq_content_wrap .faq_head {
    font-size: 24px;
    margin-bottom: auto;
    font-weight: 400;
}

.faq_content_wrap .circle {
    flex-shrink: 0;
    position: relative;
    border-radius: 100px;
    border: solid 1px #333;
    width: 30px;
    height: 30px;
    margin-left: auto;
}

.faq_content_wrap .circle::before,
.faq_content_wrap .circle::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 1px;
    background-color: #333;
}

.faq_content_wrap .circle::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.faq_content_wrap .close .circle::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: 0.3s;
}

.faq_content_wrap dl:last-of-type {
    border-bottom: 1px solid #EAEAEA;
}

.faq_content_wrap dl dt {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 16px;
    padding: 12px 16px;
    letter-spacing: 0.3px;
    font-weight: 400;
}

.sec_faq dt::before,
.sec_faq dt::after {
    content: none;
}

.faq_content_wrap dl dd {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 16px;
    padding: 16px;
    background-color: #EAEAEA;
    color: #000000;
    letter-spacing: 0px;
}

.faq_content_wrap .close dd {
    padding-bottom: 0;
}

@media screen and (min-width: 720px) and (max-width: 1000px) {
    .sec_faq_inner h2 {
        font-size: 28px;
    }
}

@media screen and (max-width: 719px) {
    .sec_faq_inner {
        flex-direction: column;
    }
    .sec_faq_inner h2 {
        width: 100%;
        text-align: center;
    }
    .sec_faq_inner h2 .txt-left {
        text-align: center;
    }
    .faq_content_wrap {
        width: 100%;
        padding-left: unset;
    }
    .faq_content_wrap dl dt {
        padding: 12px 0px 12px 16px;
    }
    .faq_content_wrap dl dd div {
        margin-top: 8px;
        font-size: 15px;
    }
}

/*----------------------------------------
フジテレビコラボ
----------------------------------------*/
.sec_fuji-tv {
    padding: 80px 0;
    background-color: #ffffff;
}
.sec_fuji-tv__grid {
    display: flex;
    gap: 40px;
}
.sec_fuji-tv__grid_image {
    max-width: 580px;
}
.sec_fuji-tv__grid_image img {
    width: 40.3vw;
    aspect-ratio: 58 / 27;
    object-fit: cover;
}
.sec_fuji-tv__grid_item {
    width: 48.5%;
}
.sec_fuji-tv__grid_item__title {
    margin-bottom: 16px;
    font-size: 18px;
    letter-spacing: 0.05em;
    text-align: left;
}
.sec_fuji-tv__grid_text {
    margin-bottom: 30px;
    line-height: 2;
    font-size: 12px;
}
.fuji-btn {
    max-width: 310px;
    width: 100%;
    font-size: 15px;
}

@media screen and (max-width: 719px) {
    .sec_fuji-tv {
        padding-bottom: 0;
    }
    .sec_fuji-tv__grid {
        flex-direction: column;
        gap: 0;
    }
    .sec_fuji-tv__grid_image {
        order: 2;
        max-width: 100%;
    }
    .sec_fuji-tv__grid_image img {
        width: 100vw;
    }
    .sec_fuji-tv__grid_item {
        display: contents;
        width: 100%;
    }
    .sec_fuji-tv__grid_item__title {
        order: 1;
        margin-bottom: 20px;
    }
    .sec_fuji-tv__grid_text {
        order: 3;
        margin-top: 24px;
        margin-bottom: 40px;
        font-size: 14px;
    }
    .btn-wrap {
        order: 4;
        text-align: center;
    }
}