@charset "UTF-8";

main {
    background: #F5F5FA;
    padding-bottom: 10rem;
}

@media only screen and (max-width: 768px) {
    main {
        background: #FFFFFF;
        padding-bottom: 0;
    }
}

/* mv
----------------------------------------*/
.mv {
    background: #B963A4;
    padding: 19.4rem 0 20rem;
}

.mv .inner {
    max-width: 114rem;
    margin: 0 auto;
}

.mv h2 {
    color: #FFFFFF;
    font-size: 5rem;
    line-height: 1.45;
}

.mv h2 small {
    display: block;
    font-size: 2rem;
    letter-spacing: -.05em;
}

@media only screen and (max-width: 768px) {
    .mv {
        padding: 10.4rem 0 17rem;
    }

    .mv .inner {
        width: 33.5rem;
        margin: 0 auto;
    }

    .mv h2 {
        font-size: 3rem;
    }
}

/* content
----------------------------------------*/
.content {
    max-width: 134rem;
    padding: 8rem 0;
    margin: -15rem auto 0;
    position: relative;
    background: #FFFFFF;
}

.content .inner {
    max-width: 114rem;
    margin: 0 auto;
    z-index: 2;
}

@media only screen and (max-width: 768px) {
    .content {
        max-width: 100%;
        padding: 4.8rem 0 8rem;
    }

    .content::after {
        display: none;
    }

    .content .inner {
        max-width: 33.5rem;
    }
}

p .dec_c01 {
    color: #B963A4;
}

p .dec_ul {
    border-bottom: 1px solid #B963A4;
}

.sp_on {
    display: none;
}

@media only screen and (max-width: 768px) {
    .sp_on {
        display: inline;
    }
}






.list_faq {
    display: flex;
    flex-flow: column;
    column-gap: 2rem;
    margin-bottom: 3rem;
}

.list_faq li {
    display: flex;
    margin: 1.5rem 0 0 1rem;
    column-gap: 1.5rem;
}

.list_faq li::before {
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    background: #B963A4;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 1.5rem;
}

@media screen and (max-width:768px) {


    .list_faq {
        width: 56rem;
    }

    .list_faq li {
        display: flex;
        margin: 1.0rem 0 0 1rem;
        column-gap: 1.5rem;
    }

    .list_faq li::before {
        content: "";
        width: 1.5rem;
        height: 1.5rem;
        background: #B963A4;
        border-radius: 50%;
        flex-shrink: 0;
        margin-top: 1.5rem;
    }



}

.faq_included {}

.faq_included:nth-of-type(n+2) {
    margin-top: calc(30 / 22 * 1em)
}

.faq_included dt {
    background-color: #B963A4;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: calc(45 / 22);
    color: #fff;
    height: 3.18em;
    padding: 0 calc(60 / 22 * 1em) 0 calc(20 / 22 * 1em);
    display: flex;
    align-items: center;
    gap: 0 calc(11 / 22 * 1em);
    cursor: pointer;
}

.faq_included dt::before,
.faq_included dt::after {
    content: "";
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 2px;
    background: #fff;
    transition: transform 0.3s ease;
}

.faq_included dt::after {
    transform: translateY(-50%) rotate(90deg);
}

.faq_included dt.open::after {
    transform: translateY(-50%) rotate(0deg);
}


.faq_included dd .wrapper_dd {

    padding: calc(26 / 22 * 1em) calc(20 / 22 * 1em) calc(30 / 22 * 1em);
    background-color: #F5F5FA;

    display: flex;
    flex-flow: wrap;
    gap: 0 calc(11 / 22 * 1em);
}

.faq_included dd .wrapper_dd span {
    font-weight: bold;
}


.faq_included dd .wrapper_dd .text_q {
    width: calc(100% - 1em - (11 / 22 * 1em));
}

.faq_included dd .wrapper_dd .text_q p a {
    text-decoration: underline;
}

.faq_included dd .wrapper_dd .text_q ul.snsicon {
    display: flex;
    align-items: center;
    column-gap: 2rem;
    margin-top: 3rem;
}

.faq_included dd .wrapper_dd .text_q ul.snsicon li {
    width: 4.8rem;
}


@media screen and (max-width:768px) {

    .faq_included dt {
        line-height: calc(32.4 / 18);
        height: auto;
        padding: calc(16 / 18 * 1em) calc(60 / 18 * 1em) calc(16 / 18 * 1em) calc(20 / 18 * 1em);
        gap: 0 calc(10 / 18 * 1em);

        align-items: flex-start;
    }

    .faq_included dd .wrapper_dd {
        padding: calc(20 / 18 * 1em);
        flex-flow: wrap;
        gap: 0 calc(11 / 18 * 1em);
    }

}






.faq_tel {
    font-size: calc(25 / 22 * 1em);
    font-weight: bold;
}

.list_flower {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 0 calc(112 / 22 * 1em);
    margin-top: calc(30 / 22 * 1em);
}

.list_flower li {
    width: calc(193 / 22 * 1em);
}



@media screen and (max-width:768px) {
    .faq_tel {
        font-size: calc(22 / 18 * 1em);
        font-weight: bold;
    }

    .list_flower {
        flex-flow: wrap;
        gap: calc(50 / 18 * 1em);
        margin-top: calc(40 / 18 * 1em);
    }

    .list_flower li {
        width: calc(166 / 18 * 1em);
    }

}




.wrapper_btn {
    width: 100%;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
    gap: 1em calc(82 / 22 * 1em);
    margin-top: calc(45 / 22 * 1em);
}

.wrapper_btn a {
    background-color: #B963A4;
    width: calc(477 / 22 * 1em);
    height: calc(60 / 22 * 1em);
    border-radius: 999px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
}

.wrapper_btn a br {
    display: none
}

@media screen and (max-width:768px) {

    .list_flower {
        flex-flow: wrap;
        gap: calc(50 / 18 * 1em);
        margin-top: calc(40 / 18 * 1em);
    }

    .wrapper_btn a {
        width: 100%;
        height: calc(48 / 18 * 1em);
    }

    .wrapper_btn a:nth-of-type(2) {
        width: 100%;
        height: calc(77 / 18 * 1em);
        line-height: 1.3;
    }

    .wrapper_btn a br {
        display: inline
    }

}




.list_privilege {
    width: 100%;
    margin-top: calc(48 / 22 * 1em);
    padding: 0 calc(25 / 22 * 1em) 0 calc(33 / 22 * 1em);

}

.list_privilege strong {
    display: block;
    color: #B963A4;
    border-bottom: 1px solid #B963A4;
    padding-bottom: calc(18 / 22 * 1em);
    margin-bottom: calc(48 / 22 * 1em);
}


.list_privilege ul {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    gap: calc(48 / 22 * 1em) 0;
    padding-left: calc(36 / 22 * 1em);
}



.list_privilege ul li {
    width: calc(482 / 22 * 1em);

    display: flex;
    justify-content: space-between;
}

.list_privilege ul li figure {
    width: calc(130 / 22 * 1em);


}

.list_privilege ul li .box_text {
    width: calc(100% - ((130 + 33) / 22 * 1em));
    display: flex;
    flex-flow: column;
    gap: calc(9 / 22 * 1em) 0;
    color: #B963A4;
    letter-spacing: .01em;
}

.list_privilege ul li .box_text .dec_parts {
    background-color: #B963A4;
    font-weight: bold;
    color: #fff;
    width: calc(113 / 22 * 1em);
    height: calc(40 / 22 * 1em);
    display: flex;
    justify-content: center;
    align-items: center;
}



.list_privilege ul li:nth-of-type(even) {
    width: calc(508 / 22 * 1em);

}

@media screen and (max-width:768px) {

    .list_privilege {
        margin-top: calc(48 / 18 * 1em);
        padding: 0 calc(16 / 18 * 1em);

    }

    .list_privilege strong {
        border-bottom: 1px solid #B963A4;
        padding-bottom: calc(18 / 18 * 1em);
        margin-bottom: calc(40 / 18 * 1em);
    }


    .list_privilege ul {

        gap: calc(40 / 18 * 1em) 0;
        padding-left: 0;
    }



    .list_privilege ul li,
    .list_privilege ul li:nth-of-type(even) {
        width: 45%;

        flex-flow: column;
        align-items: center;
        justify-content: flex-start;
        gap: calc(8 / 18 * 1em);
        font-size: calc(13 / 18 * 1em);
        line-height: 1.7;
    }

    .list_privilege ul li figure {
        /*width:calc(130 / 18 * 1em);*/
        width: 90%;


    }

    .list_privilege ul li .box_text {
        width: fit-content;
        gap: calc(9 / 22 * 1em) 0;
        align-items: center;
        text-align: center;
        display: contents;



    }

    .list_privilege ul li .box_text br {
        display: none !important;



    }

    .list_privilege ul li .box_text .dec_parts {
        width: calc(113 / 18 * 1em);
        height: calc(40 / 18 * 1em);
        margin-top: auto;
    }






}