@charset "UTF-8";

/*rollup_lp_ver3.cssを上書きする！！*/
/*リセット*/
body {
    box-sizing: border-box;
    margin: 0;
    background-color: #ffffff;
}

.article ul, .article ol {
    padding-left: 0;
}


/*デバイスによる表示切替*/
.show-pc {
    display: block;
}

.show-sp {
    display: none;
}

/*---------------------------------
レスポンシブデザイン用のメディアクエリ
----------------------------------*/
@media only screen and (max-width: 768px) {
    .show-pc {
        display: none;
    }

    .show-sp {
        display: block;
    }
}


/************************************
** レイアウト
************************************/
/*コンテナ*/
#container {
    margin: 0 auto;
    width: 100%;
    padding-top: 0px;
}

.entry-content {
    margin-top: -30px;
    margin-bottom: 0em;
}

/*---------------------------------
レスポンシブデザイン用のメディアクエリ
----------------------------------*/
@media only screen and (max-width: 768px) {

    /*コンテナ*/
    #container {
        margin: 0 auto;
        width: 625px;
        max-width: 100%;
        padding-top: 0px;
    }

    .entry-content {
        margin-top: -20px;
        margin-bottom: 0em;
    }
}


/************************************
** セクション毎のCSS
************************************/
/*ロゴ*/
#lp-2021 .first-view .heading .logo {
    margin-bottom: 0;
    width: 300px;
}

/*1stビューセクション*/
#lp-2021 .first-view {
    margin-top: 0px;
    height: calc(100vh - 20px);
    background-color: #539785;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    overflow: hidden;
}

/*1stビュー下グラデーション*/
#lp-2021 .benefits {
    display: inline-block;
    height: 150px;
    width: 100%;
    background-image: linear-gradient(180deg, rgba(83, 151, 133, 1), rgba(48, 97, 96, 0));
}


/* 2カラムの表示 */
#lp-2021 .plans .list-plans.two-column {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-top: 67px;
    padding-top: 32px;
}

/* 1カラム（中央寄せ） */
#lp-2021 .plans .list-plans.single-column {
    display: flex;
    justify-content: center;
    margin-top: 67px;
    padding-top: 32px;
}


/*1stビュー内価格*/
#lp-2021 .plans .list-plans .amount {
    margin-top: 15px;
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
    font-family: "Avenir";
    padding-left: 20px;
    padding-bottom: 10px;
}

/*1stビュー内価格(/月)*/
#lp-2021 .plans .list-plans .amount .unit {
    font-size: 12px;
    margin: 0;
}

/*1stビュー内キャプション*/
#lp-2021 .first-view .description {
    margin-top: 21px;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 1px;
    padding-bottom: 30px;
    padding-left: 10px;
}

#lp-2021 .regist-free-button .amount-container .amount {
    font-size: 48px;
    font-weight: 600;
    margin-top: 0;
}

/*冒頭のセクション*/
.image-dentou {
    width: 100%;
    margin-top: 80px;
    margin-bottom: 80px;
}

.begin-section {
    display: block;
    max-width: 900px;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    margin: 0 auto;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 1px;
    padding-bottom: 30px;
}

/*プラン*/
#lp-2021 .plans {
    margin: 0 auto;
    padding: 100px 30px;
    max-width: 980px;
}

#lp-2021 .plans .list-plans {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    grid-gap: 30px;
    margin-top: 67px;
    padding-top: 32px;
    align-items: flex-start;
    margin: 0 auto;
}

#lp-2021 .plans .list-plans .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid #c4c4c4;
    min-height: 0;
    padding: 30px;
    position: relative;
}

/*ボーダー枠*/
#lp-2021 .plans .list-plans .item.recommended {
    border: 3px solid #539785;
    border-radius: 0 0 6px 6px;
}

#lp-2021 .plans .list-plans .recommended-text {
    position: absolute;
    top: -32px;
    left: -3px;
    width: calc(100% + 6px);
    height: 32px;
    background-color: #539785;
    font-weight: bold;
    font-size: 18px;
    line-height: 32px;
    text-align: center;
    color: #fff;
    border-radius: 6px 6px 0 0;
}


/*CTA下のテキスト(小)*/
#lp-2021 .plans .list-plans .note.red {
    margin-top: 20px;
    font-size: 12px;
    color: #cd5c5c;
}


/*CTA上のテキスト*/
#lp-2021 .plans .list-plans .discount.no-badge {
    width: 200px;
    font-weight: bold;
    font-size: 20px;
    line-height: 58px;
    height: 58px;
    color: #cd5c5c;
    text-align: center;
    background: none;
    position: relative;
}

/*CTA上のテキスト 価格ボックス以外*/
.stripe_btn_onlyarea .discount.no-badge {
    /*width: 200px;*/
    font-weight: bold;
    font-size: 20px;
    line-height: 58px;
    height: 58px;
    color: #cd5c5c;
    text-align: center;
    background: none;
    position: relative;
    margin: 0 auto;
}



/*クレカ決済ラベル*/
#lp-2021 .plans .list-plans .label.type-1 {
    background-color: #539785;
    color: #fff;
}

/*バックスラッシュのテキスト*/
#lp-2021 .plans .list-plans .discount.no-badge::before {
    transform: rotateZ(47deg);
    left: 0;
}

#lp-2021 .plans .list-plans .discount.no-badge::after {
    transform: rotateZ(-47deg);
    right: 2px;
}

#lp-2021 .plans .list-plans .discount.no-badge::before,
#lp-2021 .plans .list-plans .discount.no-badge::after {
    content: "";
    width: 29px;
    border-bottom: solid 1.5px #cd5c5c;
    position: absolute;
    bottom: 29px;
}



/*会員登録ブロック*/
#lp-2021 .register {
    background-color: #539785;
    color: #fff;
}

/*無料メンバーブロック*/
#lp-2021 .regist-free-button .next-btn:hover {
    opacity: 0.8;
}

#lp-2021 .regist-free-button .next-btn {
    display: inline;
    float: right;
    width: 86px;
    height: 86px;
    border-radius: 50%;
    border: 3px solid #539785;
    display: block;
    text-align: center;
    margin-top: 15px;
}

/*プランの比較セクション*/
#lp-2021 h4.plan-head {
    text-align: center;
    font-size: 40px;
    margin-bottom: 25px;
    line-height: 100%;
    margin-top: 100px;
}

/*プランの比較セクション 注意書き*/
.plan-table .note.notice {
    color: #cd5c5c;
    font-weight: bold;
    margin-top: 10px;
}

/*stripeボタンだけのｴﾘｱ*/
.stripe_btn_onlyarea {
    width: 100%;
    text-align: center;
    width: 100%;
    margin-bottom: 150px;
    margin-top: 150px;
}

.stripe_btn_onlyarea_child {
    display: inline-block;
}

/*または*/
.plan-divider {
    text-align: center;
    margin: 40px 0;
}

.plan-divider span {
    display: inline-block;
    font-size: 35px;
    font-weight: bold;
    color: #cd5c5c;
    padding: 0;
}


/*---------------------------------
レスポンシブデザイン用のメディアクエリ
----------------------------------*/
@media only screen and (max-width: 768px) {

    /*ロゴ*/
    #lp-2021 .first-view .heading .logo {
        margin-bottom: 0;
        width: 220px;
    }

    /*キャチコピー*/
    #lp-2021 .first-view .heading .text {
        margin-top: 25px;
        font-size: 30px;
        line-height: 38px;
    }

    /*1stビュー下グラデーション*/
    #lp-2021 .benefits {
        display: inline-block;
        height: 150px;
        width: 100%;
        background-image: unset;
    }

    /*1stビュー内価格*/
    #lp-2021 .first-view .amount {
        font-size: 20px;
        text-align: center;
        padding-bottom: 10px;
    }

    #lp-2021 .regist-free-button .amount-container .amount {
        font-size: 48px;
        font-weight: 600;
        margin-top: 25px;
    }

    /*お客さまの声*/
    #lp-2021 .first-view .articles {
        overflow: hidden;
        width: 100%;
        max-width: 100%;
        height: 420px;
        top: 350px;
        right: initial;
        left: 0;
    }

    /*プラン*/
    #lp-2021 .plans {
        margin: 0 auto;
        padding: 10px 30px;
        width: 100%;
    }

    #lp-2021 .plans .list-plans.two-column {
        grid-template-columns: 1fr !important;
    }

    #lp-2021 .plans .list-plans.single-column {
        flex-direction: column;
        align-items: center;
    }

    /*ボーダー枠*/
    #lp-2021 .plans .list-plans .item.recommended {
        border: 3px solid #539785;
    }

    /*CTA上のテキスト*/
    #lp-2021 .plans .list-plans .discount.no-badge {
        width: 220px;
        font-size: 20px;
    }

    /*CTA下のテキスト*/
    #lp-2021 .plans .list-plans .note {
        margin-top: 20px;
        font-size: 12px;
    }

    /*CTA上のテキスト 価格ボックス以外*/
    .stripe_btn_onlyarea .discount.no-badge {
        /*width: 200px;*/
        font-weight: bold;
        font-size: 20px;
        line-height: 58px;
        height: 58px;
        color: #cd5c5c;
        text-align: center;
        background: none;
        position: relative;
        margin: 0 auto;
    }

    /*または*/
    .plan-divider span {
        font-size: 22px;
        padding: 8px 16px;
    }

    /*無料メンバー枠の0円*/
    #lp-2021 .regist-free-button .amount-container .range {
        font-size: 24px;
        font-weight: 700;
        margin-top: 55px;
        margin-left: 5px;
    }

    /*プランの比較セクション*/
    #lp-2021 h4.plan-head {
        font-size: 40px;
        margin-bottom: 25px;
        margin-top: 100px;
    }

    /*stripeボタンだけのｴﾘｱ*/
    .stripe_btn_onlyarea {
        width: 100%;
        text-align: center;
        margin-bottom: 80px;
    }

    /*冒頭のセクション*/
    .image-dentou {
        width: 100%;
        margin-top: 50px;
        margin-bottom: 80px;
    }

    .begin-section {
        display: block;
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
        margin: 0 auto;
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 1px;
        padding-bottom: 30px;
    }
}


/************************************
** 見出し
************************************/
/*H1*/
.article h1, h1 {
    padding: 10px;
    color: #ffffff;
    font-size: 1.0rem;
    margin: 20px 0 0 0;
}

/*各H2*/
.article h2, h2 {
    /*既存の値をリセット*/
    padding: 10px;
    margin: 80px 0 20px 0;
    background: transparent;
    border-radius: unset;
    color: #323c32;
}

/*h3*/
.article h3, h3 {
    padding: 12px;
    margin: 30px 0 20px 0;
    color: #323c32;
    background: transparent;
    border-radius: unset;
    border-left: unset;
    border-right: unset;
    border-right-color: unset;
    border-top: unset;
    border-top-color: unset;
    border-bottom: unset;
    border-bottom-color: unset;
}

/*h4*/
.article h4, h4 {
    padding: 10px;
    margin: 30px 0 20px 0;
    margin-bottom: 20px;
    color: #333;
    border: unset;
}

.article h5, h5 {
    /*よくある質問で使用*/
    color: #333;
    border-bottom: unset;
    padding-left: 40px;
}

/*強調フォント*/
#lp-2021 .heading-lv3>strong {
    color: #539785;
}

/************************************
** イメージ画像
************************************/
/*情緒的画像*/
div.insert-image {
    margin-top: 150px;
}

div.insert-image2 {
    margin-bottom: 150px;
}

div.insert-image img, div.insert-image2 img {
    width: 100%;
}

/*ご利用までの流れ*/
div.insert-usage {
    display: block;
    margin: 0 auto;
    margin-bottom: 50px;
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
}

div.insert-usage img {
    width: 100%;
    max-width: 800px;
}

/*---------------------------------
レスポンシブデザイン用のメディアクエリ
----------------------------------*/
@media only screen and (max-width: 768px) {

    /*H1*/
    .article h1, h1 {
        padding: 10px;
        margin: 300px 0 30px 0;
        color: #ffffff;
        font-size: 2.0rem;
    }

    #lp-2021 .first-view .articles {
        overflow: hidden;
        width: 100%;
        max-width: 100%;
        height: 420px;
        top: 350px;
        right: initial;
        left: 0;
    }

    /*情緒的画像*/
    div.insert-image {
        margin-top: 150px !important;
    }

    div.insert-image2 {
        margin-bottom: 150px !important;
    }

    div.insert-image img, div.insert-image2 img {
        width: 100%;
    }

    /*ご利用までの流れ*/
    div.insert-usage {
        display: block;
        margin: 0 auto;
        margin-bottom: 0px;
        padding-left: 20px;
        padding-right: 20px;
        text-align: center;
    }

    div.insert-usage img {
        width: 100%;
    }

}

/************************************
** CTA
************************************/

/*stripeのボタン*/
button.stripe-button-el span {
    background-image: inherit;
    /*リセット*/
    background: transparent;
    /*リセット*/
    box-shadow: none;
    /*リセット*/
    border-radius: none;
    /*リセット*/
    font-size: 24px;
}

button.stripe-button-el {
    background-image: inherit;
    line-height: 1;
    display: block;
    color: #fff;
    background-color: #c2982f;
    padding: 20px;
    width: 400px;
    max-width: 100%;
    box-sizing: border-box;
    text-align: center;
    border-radius: 6px;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, 0.25);
}

button.stripe-button-el[id="21317"] {
    background-image: inherit;
    line-height: 1;
    display: block;
    color: #fff;
    background-color: #666666;
    padding: 20px;
    width: 400px;
    max-width: 100%;
    box-sizing: border-box;
    text-align: center;
    border-radius: 6px;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, 0.25);
    margin-top: 20px;
}

button.stripe-button-el:hover {
    opacity: 0.7;
    transition: 0.5s all;
}

/*1stビューのボタン*/
#lp-2021 .first-view .buttons {
    /*margin-bottom: 80px;*/
}

/*無料ボタン*/
#lp-2021 a.button-register {
    display: block;
    text-align: center;
    border-radius: 6px;
    line-height: 70px;
    background-color: #7FC45D;
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, 0.25);
}

/*カードブランドアイコン*/
.cardimage-container {
    display: flex;
    align-items: center;
    /* 縦方向の中央揃え */
    justify-content: center;
    /* 横方向の中央揃え */
    flex-wrap: nowrap;
    /* 画像が1列に並ぶようにする */
    gap: 2px;
    /* 画像間のスペース */
}

.cardimage-container img {
    max-height: 15px;
    /* 画像の最大高さを設定 */
    width: auto;
    /* 画像の幅は自動で調整 */
}

/*または無料メンバー登録*/
#lp-2021 .regist-free-button .text {
    margin-top: 50px;
    font-weight: 500;
}

/*---------------------------------
レスポンシブデザイン用のメディアクエリ
----------------------------------*/
@media only screen and (max-width: 768px) {

    /*stripeのボタン*/
    button.stripe-button-el span {
        font-size: 16px;
    }

    button.stripe-button-el {
        padding: 15px;
        width: 250px;
        max-width: 100%;
        margin: auto;
    }

    button.stripe-button-el[id="21317"] {
        padding: 10px;
        width: 250px;
        max-width: 100%;
        margin: auto;
        margin-top: 15px;
    }

    /*1stビューのボタン*/
    #lp-2021 .first-view .buttons {
        margin-bottom: 32px;
    }

    /*無料ボタン*/
    #lp-2021 a.button-register {
        background-color: #7FC45D;
        font-size: 16px;
    }

    /*無料メンバー登録の矢印*/
    #lp-2021 .regist-free-button .next-btn>img {
        margin-top: 36px;
        width: 18px;
    }

    /*または無料メンバー登録*/
    #lp-2021 .regist-free-button .text {
        margin-top: 30px;
        font-weight: 500;
    }

    /*カードブランドアイコン*/
    .cardimage-container {
        display: flex;
        align-items: center;
        /* 縦方向の中央揃え */
        justify-content: center;
        /* 横方向の中央揃え */
        flex-wrap: nowrap;
        /* 画像が1列に並ぶようにする */
        gap: 2px;
        /* 画像間のスペース */
    }

    .cardimage-container img {
        max-height: 12px;
        /* 画像の最大高さを設定 */
        width: auto;
        /* 画像の幅は自動で調整 */
    }
}


/************************************
** よくある質問
************************************/

/*アコーディオン全体*/
.accordion-area {
    list-style: none;
    width: 96%;
    max-width: 900px;
    margin: 0 auto;
}

.accordion-area li {
    margin: 10px 0;
}

.accordion-area section {
    border: 1px solid #ccc;
}

/*アコーディオンタイトル*/
.title {
    position: relative;
    /*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size: 1rem;
    font-weight: normal;
    padding: 3% 3% 3% 50px;
    transition: all .5s ease;
}

/*アイコンの＋と×*/
.title::before,
.title::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #333;

}

.title::before {
    top: 48%;
    left: 15px;
    transform: rotate(0deg);

}

.title::after {
    top: 48%;
    left: 15px;
    transform: rotate(90deg);

}

/*　closeというクラスがついたら形状変化　*/
.title.close::before {
    transform: rotate(45deg);
}

.title.close::after {
    transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.box {
    display: none;
    /*はじめは非表示*/
    background: #f3f3f3;
    margin: 0 3% 3% 3%;
    padding: 3%;
}

/************************************
**　フッターナビで部分的に非表示
************************************/
.footer-bottom.fnm-text-width .menu-footer li#menu-item-3564,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-7135,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-6337,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-1721,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-4629,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-16097,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-9133,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-13464,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-17605,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-17526,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-18259,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-19372,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-28724,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-28470,
.footer-bottom.fnm-text-width .menu-footer li#menu-item-729 {
    display: none;
}