@media only screen and (min-width: 1281px) {
   .main-mv{
    width: 100%;
   }
}
@media only screen and (max-width: 768px) {
    .main-mv{
        width: 100%;
        height: 140vw;
    }
}
.mt1{
    margin-top: 1em;
}
.mt2{
    margin-top: 2em;
}
.mt3{
    margin-top: 3em;
}
.mb1{
    margin-bottom: 1em;
}
.mb2{
    margin-bottom: 2em;
}
.mb3{
    margin-bottom: 3em;
}
.table-container{
    padding-inline: 4%;
    margin-inline: auto;
    max-width: 1200px;
}
.fv-image{
    margin-top: 70px;
}
.top-cta {
    position: absolute;
    top: 5px;
    right: 50px;
    color: #cd143c;
    border: 1px solid;
    border-radius: 4px;
    padding: 4px;
    word-break: auto-phrase;
    text-align: center;
    width: 100px;
    text-decoration: none;
    line-height: 1.25;
    font-weight: bold;
    font-size: 12px;
}
@media(min-width: 769px){
    .fv-image{
        margin-top: 80px;
    }
    .top-cta {
        font-size: 16px;
        width: 200px;
        padding-block: 10px;
        top: 12px;
        right: 70px;
    }
}
.cta-area{
    margin: 2em auto;
    width: calc(100% - 50px);
    max-width: 630px;
    border: 2px solid #31b031;
    border-radius: 6px;
}
.cta-area__head{
    background: #31b031;
    color: #fff;
    text-align: center;
    font-size: 1.25em;
    font-weight: bold;
    padding: .25rem;
}
.cta-area__body{
    padding: 1.5em;
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
    justify-content: center;
}
.cta-area__body--top{
    text-align: center;
    width: 100%;
    font-weight: bold;
}
.cta-area__body--bottom{
    text-align: justify;
    font-size: .9em;
}
.cta-button {
    background: var(--button-color);
    display: flex;
    width: 100%;
    color: #fff;
    align-items: center;
    justify-content: center;
    padding: 1em 2em;
    gap: 1em;
    border-radius: 0.5em;
    text-decoration: none;
    font-weight: bold;
    @media(min-width:768px){
        max-width: 15em;
    }
}
@media(hover: hover){
    .top-cta{
        transition: .3s all ease-in-out;
    }
    .top-cta:hover{
        background: #cd143c;
        color: #fff;
    }
    .cta-button{
        border: 1px solid var(--button-color);
        transition: .3s all ease-in-out;
    }
    .cta-button:hover{
        background: #fff;
        color: var(--button-color);
    }
}
.campaign-area{
    width: 100%;
    font-size: min(4.75vw, 1.75em);
}
.gold-area {
    width: 100%;
    text-align: center;
    font-weight: bold;
    font-size: 1em;
    color: #fff;
    background: #D0A164;
    padding: .25em;
    line-height: 1.5;
}
.gold-area__sub {
    font-size: .6em;
    display: block;
}
.pink-area {
    font-size: .75em;
    width: 100%;
    text-align: center;
    color: #fff;
    background: #EF7E92;
    padding: 1em;
    line-height: 1.5;
}
.pink-area__wrapper {
    font-size: 1em;
    margin: 0 auto;
    max-width: 630px;
}
.detail {
    font-size: 1em;
    display: flex;
    align-items: flex-start;
    gap: .5em;
    margin-bottom: .5em;
}
.detail__head {
    font-size: 1em;
    background: #E0496C;
    text-align: center;
    font-weight: bold;
    width: 6em;
}
.detail__body {
    font-size: 1em;
    width: calc(100% - 90px);
    text-align: left;
    font-weight: bold;
    flex: 1;
}
.detail__body--accent {
    color: #FEF42C;
}
.detail__body--sub {
    font-size: .7em;
}
.pink-area__asterisk {
    font-size: min(.75em, 14px);
    text-align: left;
    line-height: 1.5;
}
.detail-list {
    display: flex;
    gap: .25em;
    margin-bottom: .25em;
}

.comparisn__table {
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #000;
    font-weight: 500;
    border-radius:10px;
    font-size: 10px;
    overflow: hidden
}


.comparisn__table .pink {
    color: #fd7b7d
}

.comparisn__table th {
    width:9.1em
}
.comparisn__table tr:not(:first-child) th {
    border-top: 1px solid #000
}

.comparisn__table th,.comparisn__table td {
    position: relative;
    font-size: 10px;
    background: #fff;
}
@media screen and (min-width: 750px) {
    .comparisn__table{
        writing-mode: vertical-lr;
    }
    .comparisn__table th,.comparisn__table td {
        font-size: 14px;
        writing-mode: horizontal-tb;
        border: .5px solid #000 !important;
    }
}

.comparisn__table tr td+td {
    border-left: 1px solid #000
}

.comparisn__table tr+tr td {
    border-top: 1px solid #000
}

.comparisn__table th,.comparisn__table td {
    padding: 1em .9em;
    text-align: center;
    vertical-align: middle
}

.comparisn__table th {
    background: #fd7b7d;
    color: #fff;
    font-weight:bold;
}

.comparisn__table .lg {
    font-weight: 600
}

.semibold{
    font-weight: 600;
}

.comparisn__table .lg {
    font-size:1.3em
}
.comparisn__table .md {
    font-weight: 600
}

@media screen and (min-width: 750px) {
    .comparisn__table .md {
        font-size:1.5em
    }
}

@media screen and (min-width: 750px)and (max-width: 1199px) {
    .comparisn__table .md {
        font-size:1.3em
    }
}

.comparisn__table .md {
    font-size:1.2em
}

.comparisn__table .sm {
    font-weight: 600
}

@media screen and (min-width: 750px) {
    .comparisn__table .sm {
        font-size:1.3em
    }
}

@media screen and (min-width: 750px)and (max-width: 1199px) {
    .comparisn__table .sm {
        font-size:1.1em
    }
}

.comparisn__table .sm {
    font-size:1em
}

.comparisn__table .sm2 {
    font-weight: 600
}

@media screen and (min-width: 750px) {
    .comparisn__table .sm2 {
        font-size:1.6em
    }
}

@media screen and (min-width: 750px)and (max-width: 1199px) {
    .comparisn__table .sm2 {
        font-size:1.3em
    }
}
.comparisn__table .sm2 {
    font-size:1em
}

.comparisn__table sup {
    position: absolute;
    font-family: "Noto Sans JP",sans-serif;
    font-weight: normal;
    font-size: 1em
}

.comparisn__table sup {
    font-size: .75em;
    top:0;
    right: 0
}
@media screen and (min-width: 750px) {
    .comparisn__table sup {
        top:.25em;
        right: .25em;
    }
}


.comparisn__table .js-content {
    display: none
}
.pink-back{
    background: #fff3f3 !important;
}

.table__text {
    font-size: .7em;
    text-align: justify;
}

.link-button {
    width: 340px;
    max-width: 100%;
    text-align: center;
    display: inline-block;
    border-radius: 4rem;
    font-size: 1em;
    padding: 1em;
    text-decoration: none;
    font-weight: bold;
    border: 2px solid #fd7b7d;
    background: #fff;
    color: #fd7b7d;
    position: relative;
}
.link-button:after{
    content: '';
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    border-left: 2px solid;
    border-top: 2px solid;
    transform: rotate(135deg);
    top: calc(50% - 7px);
    right: 20px;
}
.link-button.anchor:after{
    transform: rotate(-135deg);
}
@media(hover: hover){
    .link-button{
        transition: .3s all ease-in-out;
    }
    .link-button:hover{
        background: #fd7b7d;
        color: #fff;
    }
}
@media(max-width: 850px) {
    .scroll-table-wrap{
        width: 104%;
        overflow: auto;
    }
    .scroll-table-wrap table {
        width: 890px
    }
}
.recommend {
    padding:6em 0 4em
}
@media screen and (min-width: 750px) {
    .recommend {
        padding:12em 0
    }
}

.recommend__item {
    background: #fff;
    border-radius: 2em;
    padding:2em 1em;
}

@media screen and (min-width: 750px) {
    .recommend__item {
        padding:3em;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        max-width: 1000px;
        margin-inline: auto;
    }
}
.recommend__item:not(:last-child) {
    margin-bottom:2em
}
@media screen and (min-width: 750px) {
    .recommend__item:not(:last-child) {
        margin-bottom:3em
    }
}
.recommend__content {
    position: relative
}

.recommend__content:before {
    position: absolute;
    font-family: "Rubik",sans-serif;
    font-weight: 600;
    color: #ffe9cf;
    -webkit-text-stroke: 1px #ffb660;
    content: attr(title);
    top: 0;
    line-height: 1
}
.recommend__content:before {
    left:50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: -0.25em
}
@media screen and (min-width: 750px) {
    .recommend__content:before {
        left:0
    }
}
.recommend__content:before {
    font-size:3.75em
}
@media screen and (min-width: 1024px) {
    .recommend__content:before {
        font-size:5em;
        left: .5em;
    }
}
@media screen and (min-width: 750px) {
    .recommend__content {
        width:44.3181818182%;
        padding-top: 8em
    }
}
.recommend__content {
    padding-top:3.5em
}
@media screen and (min-width: 750px)and (max-width: 1023px) {
    .recommend__content {
        padding-top:6em
    }
}

.recommend__item__heading {
    color: #ffb660;
    margin-bottom: 1em;
    text-align:center;
    font-size: 1.5em;
    font-weight: bold;
}

@media screen and (min-width: 1024px) {
    .recommend__item__heading {
        text-align: left;
    }
}

@media screen and (min-width: 750px)and (max-width: 1023px) {
    .recommend__item__heading {
        font-size:2em
    }
}

.recommend__img {
    margin-top:2em
}
.recommend__img img {
    height: auto;
}
@media screen and (min-width: 750px) {
    .recommend__img {
        width:46.5909090909%
    }
}
.sec__text {
    font-weight: 600;
    text-align: justify;
    font-size: 1rem;
}


@media screen and (min-width: 1024px) {
    .visible-md,.visible-sm {
        display:none
    }

    .visible-lg {
        display: inherit
    }
}

@media screen and (min-width: 750px)and (max-width: 1023px) {
    .visible-lg,.visible-sm {
        display:none
    }

    .visible-md {
        display: inherit
    }
}

@media screen and (max-width: 749px) {
    .visible-lg,.visible-md {
        display:none
    }

    .visible-sm {
        display: inherit
    }
}



.pa-area__result__inner {
    border: none;
    padding: 1em 1em 4em;
    max-width: 92%;
    border-radius: 1em;
}

@media screen and (min-width: 750px) {
    .activity__chart__top {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 2em;
        max-width: 1000px;
        margin: 0 auto 2em;
    }
    .activity__chart__top .activity__chart__item:last-child {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
}

.activity__chart__item {
    background: #fff;
    padding: 1.5em;
    border-radius: 1em;
    text-align: center;
    box-shadow: -3px 6px 10px 0px rgb(165 164 164 / 50%);
}

@media screen and (min-width: 750px) {
    .activity__chart__item {
        width:100%;
    }
}

@media screen and (max-width: 749px) {
    .activity__chart__item:not(:first-child) {
        margin-top:2em
    }
}

.activity__chart__heading {
    padding: .5em 3em;
    border-radius: 3em;
    border: 1px solid #fd7b7d;
    color: #fd7b7d;
    text-align: center;
    margin-bottom: 1em;
    line-height: 1.2;
    display: inline-block;
    font-weight: bold;
}


@media screen and (max-width: 1023px) {
    .activity__chart__heading {
        font-weight: bold;
    }
}

.activity__chart__img {
    margin: 0 auto;
    width: 92%
}

@media screen and (min-width: 750px) {
    .activity__chart__img {
        max-width:245px
    }
}

@media screen and (max-width: 749px) {
    .activity__chart__img {
        max-width:250px
    }
}

.activity__chart__note {
    font-size: 1em;
    margin-top: 2em
}

@media screen and (max-width: 749px) {
    .activity__chart__note {
        bottom:2em;
        left: 0;
        display: block;
        width: 100%;
        text-align: center
    }
}

.activity__chart__number {
    font-family: "IBM Plex Sans", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif !important;
    font-weight: bold;
    color: #fd7b7d
}

.activity__chart__number span {
    position: relative;
    line-height: 1.2
}

.activity__chart__number span:before {
    color: rgba(0,0,0,0);
    -webkit-text-stroke: 1px #d3585a;
    position: absolute;
    top: 1px;
    left: -1px
}



.activity__chart__number {
    font-size:5em;
    line-height: 1.4;
}

.activity__chart__number .lg::before {
    content: "93."
}
.activity__chart__number .md {
    font-size:.9em
}

.activity__chart__number .md::before {
    content: "5"
}

.activity__chart__number .sm {
    padding-left: 5px;
    font-size:.75em
}


.activity__chart__number .sm::before {
    content: "%";
    left: 4px
}

.activity__btm__chartNum {
    font-weight: bold;
    color: #fd7b7d;
    line-height: 1.2;
    font-family: "IBM Plex Sans", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif !important;
}

.activity__btm__chartNum span {
    position: relative;
    line-height: 1.2
}

.activity__btm__chartNum span:before {
    color: rgba(0,0,0,0);
    -webkit-text-stroke: 1px #d3585a;
    position: absolute;
    top: 1px;
    left: -1px
}



.activity__btm__chartNum {
    font-size:4em
}

.activity__btm__chartNum .lg::before {
    content: "3~4"
}


.activity__btm__chartNum .md {
    font-size:.8em
}.activity__btm__chartNum .md::before {
    content: "ヵ月"
}
.activity__btm__chartNum .sm {
    font-size:.5em
}
.clrBlack {
    color: #474747;
}
.activity__chart__note{
    font-size: .75em;
    margin-block: 1em;
}

/*選べるコースとプラン*/
.plan {
    overflow: hidden
}

@media screen and (min-width: 750px) {
    .plan {
        padding:12rem 0
    }
}

@media screen and (max-width: 749px) {
    .plan {
        padding:4rem 0
    }
}

.plan .heading-a {
    margin-bottom: 0
}

.plan__list__note {
    text-align: center;
    margin-top: 1.5rem
}

@media screen and (min-width: 750px) {
    .plan__list__note {
        font-size:1.3rem
    }
}

@media screen and (max-width: 749px) {
    .plan__list__note {
        font-size:1.2rem
    }
}

@media screen and (min-width: 750px) {
    .plan__body {
        max-width:1200px;
        width: 90%;
        margin: 6rem auto 0;
        border-radius: 2rem;
        padding: 4em 0 1em;
        background: #fff;
        overflow: hidden
    }
}

@media screen and (max-width: 749px) {
    .plan__body {
        margin-top:5rem;
    }
}

@media screen and (min-width: 750px) {
    .plan__thum {
        margin-bottom:1.5rem
    }
}


.plan__thum .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.plan__thum__item {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    -webkit-transition: .3s all;
    transition: .3s all;
}

@media screen and (min-width: 750px) {
    .plan__thum__item {
        width: 460px;
        margin: 0 1rem;
        cursor: pointer
    }

    .plan__thum__item:hover {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: .6
    }
}
.plan__thum__item {
    opacity: .3;
}
@media screen and (max-width: 749px) {
    .plan__thum__item {
        margin: 0;
        width: 80vw;
    }
}

.plan__thum__item.slick-active {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.plan__thum__item.slick-active .plan__thum__item__in::after {
    opacity: 1
}

.plan__thum__item__in {
    position: relative
}

@media screen and (min-width: 750px) {
    .plan__thum__item__in {
        padding:2rem;
        border-radius: 2rem;
        -webkit-box-shadow: 0 .2rem .2rem rgba(0,0,0,.1);
        box-shadow: 0 .2rem .2rem rgba(0,0,0,.1);
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 749px) {
    .plan__thum__item__in {
        padding:2rem 1.5rem;
        border-radius: 1.5rem;
        margin-bottom: 20px;
    }
}

.-red .plan__thum__item__in {
    background: #fd7b7d;
}

@media screen and (min-width: 750px) {
    .-red .plan__thum__item__in::after {
        border-top:3.4rem solid #fd7b7d
    }
}

@media screen and (max-width: 749px) {
    .-red .plan__thum__item__in::after {
        border-top:1.7rem solid #fd7b7d
    }
}

.-blue .plan__thum__item__in {
    background: #58d2d6
}

@media screen and (min-width: 750px) {
    .-blue .plan__thum__item__in::after {
        border-top:3.4rem solid #58d2d6
    }
}

@media screen and (max-width: 749px) {
    .-blue .plan__thum__item__in::after {
        border-top:1.7rem solid #58d2d6
    }
}

.-yellow .plan__thum__item__in {
    background: #ffb660
}

@media screen and (min-width: 750px) {
    .-yellow .plan__thum__item__in::after {
        border-top:3.4rem solid #ffb660
    }
}

@media screen and (max-width: 749px) {
    .-yellow .plan__thum__item__in::after {
        border-top:1.7rem solid #ffb660
    }
}

.plan__thum__item__in::after {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0;
    -webkit-transition: all .3s;
    transition: all .3s
}

@media screen and (min-width: 750px) {
    .plan__thum__item__in::after {
        border-left:1.5rem solid rgba(0,0,0,0);
        border-right: 1.5rem solid rgba(0,0,0,0);
        bottom: -30px;
    }
}

@media screen and (max-width: 749px) {
    .plan__thum__item__in::after {
        border-left:.8rem solid rgba(0,0,0,0);
        border-right: .8rem solid rgba(0,0,0,0);
        bottom: -1.25em
    }
}

.plan__thum__item__txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: bold;
    color: #fff;
    line-height: 1.5
}

@media screen and (min-width: 750px) {
    .plan__thum__item__txt {
        font-size: 1.25rem;
        text-align: left;
    }
}

@media screen and (max-width: 749px) {
    .plan__thum__item__txt {
        font-size: min(3.5vw, 1rem);
        text-align: left;
    }
}

@media screen and (min-width: 750px) {
    .plan__thum__item__txt+.plan__thum__item__txt {
        margin-top:1rem
    }
}

@media screen and (max-width: 749px) {
    .plan__thum__item__txt+.plan__thum__item__txt {
        margin-top:.5rem
    }
}

.plan__thum__item__txt::before {
    content: ""
}


.plan__thum__item__txt::before {
    width:1.4em;
    height: 1.4em;
    margin-right: .5em
}


.-red .plan__thum__item__txt::before {
    background: url(../../../../assets/img/top/icon_check_red.svg) center/100% no-repeat
}

.-blue .plan__thum__item__txt::before {
    background: url(../../../../assets/img/top/icon_check_blue.svg) center/100% no-repeat
}

.-yellow .plan__thum__item__txt::before {
    background: url(../../../../assets/img/top/icon_check_yellow.svg) center/100% no-repeat
}

.plan__thum__item__img {
    position: absolute;
    bottom: 0
}

@media screen and (min-width: 750px) {
    .plan__thum__item__img {
        right: 40px;
    }
}

@media screen and (max-width: 749px) {
    .plan__thum__item__img {
        width: 20vw;
        right: 1em;
        bottom: 0;
    }
}


.plan__main {
    margin-bottom: 60px !important
}

.plan__main .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media screen and (max-width: 749px) {
    .plan__main {
        position:relative;
        padding-bottom: 3rem
    }

    .plan__main .slick-dots {
        bottom: 0
    }

    .plan__main .slick-dots li {
        width: 1rem;
        height: 1rem;
        border-radius: 50%;
        background: #d9d9d9;
        margin: 0 .8rem
    }

    .plan__main .slick-dots li.slick-active {
        background: #474747
    }

    .plan__main .slick-dots li button,.plan__main .slick-dots li button:before {
        display: none
    }
}

.plan__item {
    -webkit-box-shadow: 0 .4rem .4rem rgba(0,0,0,.25);
    box-shadow: 0 .4rem .4rem rgba(0,0,0,.25);
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    -webkit-transition: .3s all;
    transition: .3s all;
    max-width: 100%;
    opacity: .3;
}

@media screen and (min-width: 750px) {
    .plan__item {
        border-radius:4rem;
        margin: 0 1rem;
        cursor: pointer
    }

    .plan__item:hover {
        opacity: .6;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@media screen and (min-width: 750px) {
    .plan__item {
        overflow:hidden
    }
}

@media screen and (min-width: 1024px) {
    .plan__item {
        width:80vw;
        max-width: 900px;
    }
}

@media screen and (min-width: 750px)and (max-width: 1023px) {
    .plan__item {
        width:50rem
    }
}

@media screen and (max-width: 749px) {
    .plan__item {
        width:80vw;
        border-radius: 2rem;
        margin: 1em 2em;
    }
}

.plan__item.slick-center {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.plan__item.-red {
    border: 3px solid #fd7b7d
}

.plan__item.-blue {
    border: 3px solid #58d2d6
}

.plan__item.-yellow {
    border: 3px solid #ffb660
}

@media screen and (min-width: 1024px) {
    .plan__item__in {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
    }
}

.plan__item__head {
    position: relative;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .plan__item__head {
        width:43.9%;
        padding: 2rem
    }
}

@media screen and (min-width: 750px)and (max-width: 1023px) {
    .plan__item__head {
        padding:4rem
    }
}

@media screen and (max-width: 749px) {
    .plan__item__head {
        border-top-right-radius:1.5rem;
        border-top-left-radius: 1.5rem;
        padding: 1.5rem 1rem
    }
}

.-red .plan__item__head {
    background: #fd7b7d
}

.-blue .plan__item__head {
    background: #58d2d6
}

.-yellow .plan__item__head {
    background: #ffb660
}

@media screen and (min-width: 1024px) {
    .plan__item__foot {
        width:56.1%
    }
}

@media screen and (min-width: 750px) {
    .plan__item__foot {
        padding:1.5rem 4rem
    }
}

@media screen and (max-width: 749px) {
    .plan__item__foot {
        padding:.5rem 1rem;
        background: #fff;
        border-radius: 0 0 2em 2em;
    }
}

.plan__item__img {
    position: absolute
}

@media screen and (min-width: 750px) {
    .plan__item__img {
        top:1rem;
        left: 1rem;
        width: 8rem
    }
}

@media screen and (max-width: 749px) {
    .plan__item__img {
        top: -10%;
        right: -10%;
        width: 25%;
    }
    .plan__item__img img{
        height: auto;
    }
}

@media screen and (min-width: 750px) {
    .plan__item__heading {
        font-size: 2rem;
        margin-bottom: 1rem;
        font-weight: bold;
    }
}

@media screen and (max-width: 749px) {
    .plan__item__heading {
        font-size: min(6vw, 2em);
        margin-bottom: .5rem;
        font-weight: bold;
    }
}

@media screen and (max-width: 749px) {
    .plan__item__txt {
            font-size: min(3.25vw, 1em);
    }
}

.plan__item__table tr:not(:nth-child(1)) th,.plan__item__table tr:not(:nth-child(1)) td {
    border-top: 1px solid #474747
}

.plan__item__table th,.plan__item__table td {
    padding: 1rem 0
}
@media screen and (min-width: 750px) {
    .plan__item__table th {
        font-size:0.8em;
    }
}

@media screen and (max-width: 749px) {
    .plan__item__table th,.plan__item__table td {
        font-size:.75em
    }
}

.plan__item__table th {
    font-weight: normal;
    text-align: left;
    line-height: 1.4
}

.plan__item__table th .sm {
    font-size: .7857142857em
}

.plan__item__table td {
    font-weight: bold;
    text-align: right
}

.plan__item__table .lg {
    -webkit-transition: .3s all;
    transition: .3s all
}

@media screen and (min-width: 750px) {
    .plan__item__table .lg {
        font-size:1.2em
    }
}

@media screen and (max-width: 749px) {
    .plan__item__table .lg {
        font-size:1rem
    }
}

.-red .plan__item__table .lg {
    color: #fd7b7d
}

.-blue .plan__item__table .lg {
    color: #58d2d6
}

.-yellow .plan__item__table .lg {
    color: #ffb660
}

@media screen and (min-width: 750px) {
    .plan__item__table .md {
        font-size:0.8em;
    }
}

@media screen and (max-width: 749px) {
    .plan__item__table .md {
        font-size:.8rem
    }
}

.otherPlan__main {
    border-top: 1px solid #000;
    position: relative
}

@media screen and (min-width: 750px) {
    .otherPlan__main {
        width:83.3333333333%;
        max-width: 1200px;
        margin: 6em auto 0;
        padding: 3rem 0
    }
}

@media screen and (max-width: 749px) {
    .otherPlan__main {
        width:90%;
        margin: 0 auto;
        padding: 4rem 0
    }
}

.otehrPlan__title {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: #f4f0e7;
    padding: 1rem
}

@media screen and (min-width: 750px) {
    .otehrPlan__title {
        font-weight:bold;
        font-size: 2rem;
        top: -1.8rem;
        background: #fff;
    }
}

@media screen and (max-width: 749px) {
    .otehrPlan__title {
        font-weight:600;
        font-size: 20px;
        top: -1.8rem;
        width: 10em;
        width: max-content;
    }
}

@media screen and (min-width: 750px) {
    .otherPlan__list {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

@media screen and (min-width: 750px) {
    .otherPlan__item {
        width:30.8333333333%;
        max-width: 370px
    }
}

@media screen and (max-width: 749px) {
    .otherPlan__item:not(:last-child) {
        margin-bottom:2rem
    }
}

.otherPlan__item__content {
    padding: 2rem .5em;
    background: #fff
}

@media screen and (min-width: 750px) {
    .otherPlan__item__content {
        border-top-right-radius:2rem;
        border-top-left-radius: 2rem;
        box-shadow: -3px 6px 10px 0px rgb(165 164 164 / 50%);
    }
}

@media screen and (max-width: 749px) {
    .otherPlan__item__content {
        border-top-right-radius:3rem;
        border-top-left-radius: 3rem
    }
}

.otherPlan__title {
    font-weight: 600;
    color: #fd7b7d;
    margin-bottom: 1rem;
    text-align: center;
    line-height: 1.2;
    font-size:1.25rem
}


.otherPlan__lead {
    margin-bottom: 1rem;
    text-align: center
}

@media screen and (min-width: 750px) {
    .otherPlan__lead {
        font-size:.75em
    }
}

@media screen and (max-width: 749px) {
    .otherPlan__fee {
        width:90%;
        margin: 0 auto
    }
}

.otherPlan__feeItem {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

@media screen and (min-width: 750px)and (max-width: 1023px) {
    .otherPlan__feeItem {
        display:block
    }
}

.otherPlan__feeItem+.otherPlan__feeItem {
    margin-top: 1rem
}

.otherPlan__feeItem .title {
    display: inline-block;
    background: #f3f7f9;
    padding: .25rem .5rem;
    border-radius: 1.5rem;
    font-weight: 500;
    min-width: 12ch;
}

@media screen and (min-width: 750px) {
    .otherPlan__feeItem .title {
        font-size:.75em
    }
}

@media screen and (min-width: 750px)and (max-width: 1023px) {
    .otherPlan__feeItem .title {
        margin-bottom:1rem
    }
}


.otherPlan__feeItem .amount {
    font-family: "M PLUS 1p",sans-serif;
    font-size: 1rem;
    font-weight: bold;
    color: #fd7b7d;
    margin-left: 1rem;
    line-height: 1;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(0.2em, #FCFF74), color-stop(1em, #FCFF74), color-stop(0.6em, transparent), to(transparent));
    background: linear-gradient(to top, #FCFF74 0.2em, #FCFF74 1em, transparent 0.6em, transparent 100%);
    position: relative
}

.otherPlan__feeItem .amount span {
    line-height: 1
}

.otherPlan__feeItem .amount sup {
    position: absolute;
    font-weight: normal;
    font-size: .75em
}

@media screen and (min-width: 750px) {
    .otherPlan__feeItem .amount sup {
        top:.3rem;
        right: -1.5rem
    }
}

@media screen and (max-width: 749px) {
    .otherPlan__feeItem .amount sup {
        top:-0.5rem;
        right: -1.5rem
    }
}

.otherPlan__feeItem .amount .lg {
    font-size: 1.5em;
}

.otherPlan__feeItem .amount .sm {
    font-size: .75em;
}
.otherPlan__feeItem .amount .md {
        font-size: 1em;
}

@media screen and (min-width: 750px) {
    .otherPlan__btnWrap {
        margin:8rem 0 0
    }
}

@media screen and (max-width: 749px) {
    .otherPlan__btnWrap {
        margin:3rem 0 0
    }
}

@media screen and (min-width: 750px) {
    .otherPlan__btnWrap .btn-a {
        max-width:413px;
        margin: 0 auto
    }
}
.otherPlan__item__img img{
    height: auto;
}
.cta-woman {
    box-shadow: -3px 6px 10px 0px rgb(165 164 164 / 50%);
    max-width: 650px;
    margin: 0 auto;
}
.cta-woman__head {
    display: flex;
    padding: 1em 2em 0;
    text-align: left;
    justify-content: center;
    align-items: center;
    gap: .5em;
}
.cta-woman__head--text {
    font-weight: bold;
    max-width: 20em;
    line-height: 1.5;
}
@media(max-width: 749px) {
    .cta-woman__head--text {
        font-size: 12px;
    }
}
.sticky-nav {
    overflow: scroll;
    position: sticky;
    top: 0;
    background: #fff;
    padding: 1em 0;
    z-index: 101;
}
.sticky-nav__list {
    display: flex;
    white-space: nowrap;
    gap: .5em;
    padding: .25em 1em;
    width: fit-content;
}
.sticky-nav__item a{
    color: inherit;
    text-decoration: none;
    font-size: .75em;
    font-weight: bold;
    border: 1px solid #d9d9d9;
    padding: 1em;
    border-radius: .75em;

}
.contents{
    position: relative;
    margin-top: -2em;
}
.nav-wrapper{
    pointer-events: none;
}
.nav-wrapper > *{
    pointer-events: all;
}
.sticky-hide {
				background: #ffffff;
				display: block;
				width: 100%;
				height: 4em;
				position: absolute;
				top: 0;
				left: 0;
				z-index: 102;
		}

@media(min-width:768px){
		.sticky-hide {
			z-index: 0;
		}
    .sticky-nav {
        display: none;
    }
}
.plan-link{
    margin-block: 1em;
}
@media(min-width:768px){
    .plan-link {
        position: absolute;
        bottom: 2em;
        left: calc(22% - 120px);
    }
    .plan-link a{
        background: transparent;
        color: #fff;
        border: 2px solid #fff;
    }
}
