@charset "UTF-8";a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block
}

ol,ul {
    list-style: none
}

blockquote,q {
    quotes: none
}

blockquote:after,blockquote:before,q:after,q:before {
    content: "";
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

b {
    font-weight: 700
}

html {
    font-size: 62.5%
}

body {
    color: #333;
    font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Meiryo","メイリオ",sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.5;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    line-break: strict
}

@media screen and (max-width: 749px) {
    body {
        font-size:1.8666666667vw
    }
}

:focus {
    outline: 0
}

.hidden {
    position: absolute;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px);
    width: 1px;
    height: 1px
}

.is-sp {
    display: none
}

@media screen and (max-width: 749px) {
    .is-sp {
        display:block
    }
}

.is-pc {
    display: block
}

@media screen and (max-width: 749px) {
    .is-pc {
        display:none
    }
}

.mt0 {
    margin-top: 0!important
}

.mt05 {
    margin-top: 0.357em
}

.mr05 {
    margin-right: 0.357em
}

.mt1 {
    margin-top: 0.714em
}

.mb1 {
    margin-bottom: 0.714em
}

.mr1 {
    margin-right: 0.714em
}

.mb15 {
    margin-bottom: 1.071em
}

.mt2 {
    margin-top: 1.428em
}

.mb2 {
    margin-bottom: 1.428em
}

.mr2 {
    margin-right: 1.428em
}

.mt3 {
    margin-top: 2.142em
}

.mb3 {
    margin-bottom: 2.142em
}

.mt4 {
    margin-top: 2.857em
}

.mt5 {
    margin-top: 3.571em
}

.mt6 {
    margin-top: 4.285em
}

.pb1 {
    padding-bottom: 0.714em
}

.tac {
    text-align: center
}

.tal {
    text-align: left
}

.tar {
    text-align: right
}

.fc_dkgray {
    color: #333
}

.fc_plpnk {
    color: #e7a9b7
}

.fc_sfpnk {
    color: #deacb7
}

.fc_beg {
    color: #c3a66c
}

.ff_trajan {
    font-family: "trajan-pro-3",serif;
    font-weight: 400;
    font-style: normal
}

.ff_notoserif {
    font-family: "source-han-serif-japanese",serif;
    font-weight: 500;
    font-style: normal
}

.fw_reg {
    font-weight: 400
}

.fw_med {
    font-weight: 500
}

.fw_bld {
    font-weight: bold
}

.fs68 {
    font-size: 2.428em
}

.fs56 {
    font-size: 2em
}

.fs48 {
    font-size: 1.714em
}

.fs46 {
    font-size: 1.642em
}

.fs40 {
    font-size: 1.428em
}

.fs36 {
    font-size: 1.285em
}

.fs32 {
    font-size: 1.142em
}

.fs28 {
    font-size: 1em
}

.fs26 {
    font-size: 0.928em
}

.fs24 {
    font-size: 0.857em
}

.fs22 {
    font-size: 0.785em
}

.fs20 {
    font-size: 0.714em
}

.lh64 {
    line-height: 2.285
}

.lh58 {
    line-height: 2.071
}

.lh44 {
    line-height: 1.571
}

.lh42 {
    line-height: 1.5
}

.lh36 {
    line-height: 1.285
}

.lh30 {
    line-height: 1.071
}

.ls80 {
    letter-spacing: 1.428
}

.notes {
    color: #9d9d9d;
    font-size: 0.785em;
    line-height: 1.63
}

sup {
    vertical-align: super;
    font-size: 0.571em
}

.clearfix:after {
    content: "";
    display: block;
    clear: both
}

.clearfix:before {
    content: "";
    display: block;
    clear: both
}

.clearfix {
    display: block
}

.fl {
    float: left
}

.inner {
    margin-inline:auto;padding: 0 40px
}

@media screen and (max-width: 749px) {
    .inner {
        padding:0 5.3333333333vw
    }
}

.page_wrap {
    position: relative;
    z-index: 0;
    max-width: 750px;
    margin: 0 auto;
    font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Meiryo","メイリオ",sans-serif;
    background-size: 100% auto;
    background-repeat: repeat-y;
    background-position: center -3250px;
    /* background-image: url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/trial_lp/img/20240708/bg.webp) */
}

@media screen and (max-width: 749px) {
    .page_wrap {
        background-position:center -433.3333333333vw
    }
}

.page_wrap img {
    width: 100%;
    height: auto;
    vertical-align: middle;
    display: block
}

.title_en {
    width: 100%;
    margin-bottom: 30px;
    text-align: center
}

@media screen and (max-width: 749px) {
    .title_en {
        margin-bottom:6vw
    }
}

.title_sub {
    font-size: 26px;
    font-weight: 400;
    line-height: 1.9;
    margin-bottom: 27px;
    text-align: center
}

@media screen and (max-width: 749px) {
    .title_sub {
        font-size:3.4666666667vw;
        margin-bottom: 5.3333333333vw
    }
}

.title_lead {
    margin-bottom: 1em;
    text-align: center;
    font-size: 28px
}

@media screen and (max-width: 749px) {
    .title_lead {
        font-size:3.7333333333vw
    }
}

.cv_box {
    position: relative;
    margin-top: 188px;
    padding-bottom: 42px;
    background-color: #fff;
    border-radius: 80px 0 80px 0
}

@media screen and (max-width: 749px) {
    .cv_box {
        margin-top:25.3333333333vw;
        padding-bottom: 5.6vw;
        border-radius: 10.6666666667vw 0 10.6666666667vw 0
    }
}

.cv_box.--low {
    padding-bottom: 20px
}

@media screen and (max-width: 749px) {
    .cv_box.--low {
        padding-bottom:2.6666666667vw
    }
}

.cv_img {
    width: 635px;
    margin-left: -6px
}

@media screen and (max-width: 749px) {
    .cv_img {
        width:84.6666666667vw;
        margin-left: -0.8vw
    }
}

.cv_img img {
    display: inline-block;
    margin-top: -164px
}

@media screen and (max-width: 749px) {
    .cv_img img {
        margin-top:-21.8666666667vw
    }
}

.cv_btn {
    display: block;
    text-align: center;
    margin: 21px auto 0;
    padding: 0 40px
}

@media screen and (max-width: 749px) {
    .cv_btn {
        margin:2.8vw auto 0;
        padding: 0 5.3333333333vw
    }
}

.cv_note {
    margin: 11px auto 0;
    padding: 0 42px
}

@media screen and (max-width: 749px) {
    .cv_note {
        margin:1.4666666667vw auto 0;
        padding: 0 5.6vw
    }
}

.cv_note_head {
    font-size: 24px;
    text-align: center
}

@media screen and (max-width: 749px) {
    .cv_note_head {
        font-size:3.2vw
    }
}

.cv_note_list {
    margin-top: 22px;
    font-size: 17px
}

@media screen and (max-width: 749px) {
    .cv_note_list {
        margin-top:2.9333333333vw;
        font-size: 2.5333333333vw
    }
}

.cv_note_comments {
    margin-top: 16px;
    text-align: right;
    font-size: 14px
}

@media screen and (max-width: 749px) {
    .cv_note_comments {
        margin-top:2.1333333333vw;
        font-size: 1.8666666667vw
    }
}

.award {
    margin-top: 117px
}

@media screen and (max-width: 749px) {
    .award {
        margin-top:15.6vw
    }
}

.award_list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 30px 1fr;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px
}

@media screen and (max-width: 749px) {
    .award_list {
        -webkit-column-gap:2.6666666667vw;
        -moz-column-gap: 2.6666666667vw;
        column-gap: 2.6666666667vw
    }
}

.award_item {
    padding-top: 48px;
    text-align: center;
    line-height: 1.4;
    padding-bottom: 12px;
    background: linear-gradient(to bottom, white 10%, rgba(255, 255, 255, 0)110%);
    margin-bottom: 20px;
    border-radius: 200px 200px 0 0;
}

@media screen and (max-width: 749px) {
    .award_item {
        min-height:146.6666666667vw;
        padding-top: 6.4vw
    }
}

.award_item:nth-of-type(n+3) {
    min-height: auto;
    margin-top: -170px
}

@media screen and (max-width: 749px) {
    .award_item:nth-of-type(n+3) {
        margin-top:-13.3333333333vw
    }
}

.award_item_inner {
    margin-top: 18px;
    padding: 0 24px
}

@media screen and (max-width: 749px) {
    .award_item_inner {
        padding:0 0.6666666667vw
    }
}

.award_item_rank {
    margin-top: 21px;
    font-size: 16px
}

@media screen and (max-width: 749px) {
    .award_item_rank {
        margin-top:2.8vw;
        font-size: 2.4vw
    }
}

.award_item_rank .rank {
    width: 40px;
    margin: 0 auto 9px
}

@media screen and (max-width: 749px) {
    .award_item_rank .rank {
        width:5.3333333333vw;
        margin: 0 auto 1.2vw;
        font-size: clamp(14px,3.2vw,20px);
        font-size: clamp(14px,1vw,20px);
        font-size: clamp(300px,80vw,500px)
    }
}

.award_item_rank li+li {
    margin-top: 26px
}

@media screen and (max-width: 749px) {
    .award_item_rank li+li {
        margin-top:3.4666666667vw
    }
}

.award_item_desc {
    font-size: 16px
}

@media screen and (max-width: 749px) {
    .award_item_desc {
        font-size:2.4vw
    }
}

.award_item .note {
    margin-top: 21px;
    font-size: 14px;
    line-height: 1.8
}

@media screen and (max-width: 749px) {
    .award_item .note {
        font-size:2.2666666667vw
    }
}

.media {
    position: relative;
    margin: 92px 0 110px;
    padding: 52px 0 77px;
    /* background-color: #f7f6ff; */
    position: relative;
}
.media::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    height: 1px;
    width: 20rem;
    background: #464646;
    transform: translate(-50%,50%);
}
@media screen and (max-width: 749px) {
    .media::before {
        width: 26.7vw;
    }
}


@media screen and (max-width: 749px) {
    .media {
        margin:12.2666666667vw 0 14.6666666667vw;
        padding: 6.9333333333vw 0 10.2666666667vw
    }
}

/* .media:after,.media:before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    background-size: cover
} */

/* .media:before {
    top: -32px;
    height: 32px;
    background-image: url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/trial_lp/img/20240708/media_top.png)
} */

/* @media screen and (max-width: 749px) {
    .media:before {
        top:-4.2666666667vw;
        height: 4.2666666667vw
    }
} */

/* .media:after {
    bottom: -49px;
    height: 49px;
    background-image: url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/trial_lp/img/20240708/media_bottom.png)
} */

/* @media screen and (max-width: 749px) {
    .media:after {
        bottom:-6.5333333333vw;
        height: 6.5333333333vw
    }
} */


.approach_step {
    margin-top: 94px
}



@media screen and (max-width: 749px) {
    .approach_step {
        margin-top:12.5333333333vw
    }
}

.approach .cv_box {
    margin-top: 202px
}

@media screen and (max-width: 749px) {
    .approach .cv_box {
        margin-top:26.9333333333vw
    }
}

/* .step>*+* {
    margin-top: 100px
} */

/* @media screen and (max-width: 749px) {
    .step>*+* {
        margin-top:13.3333333333vw
    }
} */

.step .__item:not(:first-child)  {
    margin-top: 60px;
}

.step_title {
    position: relative;
    padding: 34px 0;
    text-align: center;
    letter-spacing: 0.05em
}

@media screen and (max-width: 749px) {
    .step_title {
        padding:4.5333333333vw 0
    }
}

.step_title:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -38px;
    height: 38px
}

@media screen and (max-width: 749px) {
    .step_title:before {
        bottom:-5.0666666667vw;
        height: 5.0666666667vw
    }
}

.step_title_main {
    font-size: 34px;
    font-weight: 500;
    line-height: 1.7
}

@media screen and (max-width: 749px) {
    .step_title_main {
        font-size:4.5333333333vw
    }
}

.step_title_name {
    margin-top: 5px;
    font-size: 30px
}

@media screen and (max-width: 749px) {
    .step_title_name {
        margin-top:0.6666666667vw;
        font-size: 4vw
    }
}

.step_point {
    padding-top: 93px
}

@media screen and (max-width: 749px) {
    .step_point {
        padding-top:12.2666666667vw
    }
}

.point_inner {
    padding: 0 38px
}

@media screen and (max-width: 749px) {
    .point_inner {
        padding:0 5.0666666667vw
    }
}

.point_title {
    width: 279px;
    margin-bottom: 70px
}

@media screen and (max-width: 749px) {
    .point_title {
        width:37.2vw;
        margin-bottom: 9.3333333333vw
    }
}

.point_define>*+* {
    margin-top: 70px
}

@media screen and (max-width: 749px) {
    .point_define>*+* {
        margin-top:9.3333333333vw
    }
}

.point_term {
    margin-bottom: 1em;
    text-indent: -1.2em;
    padding-left: 1.2em;
    font-size: 30px;
    font-weight: 500
}

@media screen and (max-width: 749px) {
    .point_term {
        font-size:4vw
    }
}

.point_desc {
    font-size: 24px;
    line-height: 1.6
}

@media screen and (max-width: 749px) {
    .point_desc {
        font-size:3.2vw
    }
}

.point_note {
    text-align: right;
    font-size: 14px;
    margin-top: 40px;
    line-height: 1.75
}

@media screen and (max-width: 749px) {
    .point_note {
        margin-top:5.3333333333vw;
        font-size: 1.8666666667vw
    }
}

.point_img {
    margin-top: 34px
}

@media screen and (max-width: 749px) {
    .point_img {
        margin-top:4.5333333333vw
    }
}

.voice {
    margin-top: 76px
}

@media screen and (max-width: 749px) {
    .voice {
        margin-top:10.1333333333vw;
        max-width: 90%;
        margin: 0 auto;
    }
}

.voice_head {
    width: 230px;
    margin: 0 auto 32px;
}

@media screen and (max-width: 749px) {
    .voice_head {
        width:50.5333333333vw;
        margin-bottom: 4.2666666667vw
    }
}

.voice_item {
    padding: 20px;
    border: 1px solid #e6d8c4;
    height: auto;
}

@media screen and (max-width: 749px) {
    .voice_item {
        padding:4.8vw 5.0666666667vw
    }
}

.voice_name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 17px;
    font-size: 20px;
    line-height: 1
}

@media screen and (max-width: 749px) {
    .voice_name {
        gap:2.2666666667vw;
        font-size: 2.6666666667vw
    }
}

.voice_name img {
    width: 26.5px!important
}

@media screen and (max-width: 749px) {
    .voice_name img {
        width:3.5333333333vw!important
    }
}

.voice_title {
    margin: 37px 0 29px;
    font-size: 26px;
    font-weight: 500
}

@media screen and (max-width: 749px) {
    .voice_title {
        margin:4.9333333333vw 0 3.8666666667vw;
        font-size: 3.4666666667vw
    }
}

.voice_text {
    font-size: 22px;
    line-height: 1.75;
    padding: 0 10px;
}

@media screen and (max-width: 749px) {
    .voice_text {
        font-size:2.9333333333vw
    }
}

.voice_note {
    margin-top: 46px;
    /* margin-right: 32px; */
    text-align: right;
    font-size: 14px
}

@media screen and (max-width: 749px) {
    .voice_note {
        margin-top:6.1333333333vw;
        /* margin-right: 4.2666666667vw; */
        font-size: 1.8666666667vw
    }
}

.voice .swiper-container {
    max-width: 100%;
    /* padding-left: 40px; */
}

/* @media screen and (max-width: 749px) {
    .voice .swiper-container {
        padding-left:5.3333333333vw;
    }
} */

.voice .swiper-slide {
    /* max-width: 90%;
    margin: 0 2rem 0 2rem; */
    width: 100% !important;
    height: auto;
    background-color: #fff;
    border-radius: 0 50px 0 50px;
}

/* @media screen and (max-width: 749px) {
    .voice .swiper-slide {
        width:59.7333333333vw !important;
    }
} */
.voice .swiper-pagination {
    position: static;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 20px;
    margin-top: 47px
}

@media screen and (max-width: 749px) {
    .voice .swiper-pagination {
        gap:2.6666666667vw;
        margin-top: 6.2666666667vw
    }
}

.voice .swiper-pagination-bullet {
    width: 12.5px;
    height: 12.5px;
    opacity: 1;
    background-color: #d1d1d1;
}

@media screen and (max-width: 749px) {
    .voice .swiper-pagination-bullet {
        width:1.6666666667vw;
        height: 1.6666666667vw
    }
}

.voice .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #727171
}
.howto {
    margin-top: 120px;
}

.howto_bg {
    position: relative;
    margin: 34px 0 90px;
    padding: 0 0 58px;
    background-color: #fcf4f6;
}

@media screen and (max-width: 749px) {
    .howto_bg {
        margin:4.5333333333vw 0 12vw;
        padding: 0 0 7.7333333333vw
    }
}
.howto_head {
    margin-bottom: 2.4rem;
}

.howto_lead {
    text-align: center;
    margin: 24px 0 29px;
    font-size: 28px
}

@media screen and (max-width: 749px) {
    .howto_lead {
        margin:3.2vw 0 3.8666666667vw;
        font-size: 3.7333333333vw
    }
}

.howto_slider {
    padding: 0 40px
}

@media screen and (max-width: 749px) {
    .howto_slider {
        padding:0 5.3333333333vw
    }
}

.howto_img {
    position: relative
}

.howto_img_item {
    position: absolute;
    bottom: 0;
    right: 0;
    -webkit-transform: translate(-65%,65%);
    transform: translate(-65%,65%)
}

.howto_title {
    font-size: 28px;
    font-weight: 500;
    line-height: 1.5;
    margin: 1em 0;
    padding-left: 40px
}

@media screen and (max-width: 749px) {
    .howto_title {
        padding-left:5.3333333333vw;
        font-size: 3.7333333333vw
    }
}

.howto_title_cat {
    display: block;
    margin-top: 6px;
    font-size: 26px
}

@media screen and (max-width: 749px) {
    .howto_title_cat {
        margin-top:0.8vw;
        font-size: 3.4666666667vw
    }
}

.howto_text {
    padding-left: 40px;
    font-size: 22px;
    line-height: 1.75
}

@media screen and (max-width: 749px) {
    .howto_text {
        padding-left:5.3333333333vw;
        font-size: 2.9333333333vw
    }
}

.howto .swiper-slide {
    width: 586px
}

@media screen and (max-width: 749px) {
    .howto .swiper-slide {
        width:78.1333333333vw
    }
}

.howto .swiper-slide:first-of-type .howto_img_item {
    width: 181px;
    -webkit-transform: translate(0,65%);
    transform: translate(0,65%)
}

@media screen and (max-width: 749px) {
    .howto .swiper-slide:first-of-type .howto_img_item {
        width:24.1vw
    }
}

.howto .swiper-slide:nth-of-type(2) .howto_img_item {
    width: 120px;
    -webkit-transform: translate(-10%,72%);
    transform: translate(-10%,72%)
}

@media screen and (max-width: 749px) {
    .howto .swiper-slide:nth-of-type(2) .howto_img_item {
        width:16vw
    }
}

.howto .swiper-slide:nth-of-type(3) .howto_img_item {
    width: 205px;
    -webkit-transform: translate(-30%,68%);
    transform: translate(-10%,68%)
}

@media screen and (max-width: 749px) {
    .howto .swiper-slide:nth-of-type(3) .howto_img_item {
        width:27.3vw
    }
}

.howto .swiper-slide:nth-of-type(4) .howto_img_item {
    width: 167px;
    -webkit-transform: translate(-1%,75%);
    transform: translate(-1%,75%)
}

@media screen and (max-width: 749px) {
    .howto .swiper-slide:nth-of-type(4) .howto_img_item {
        width:22.2666666667vw
    }
}

.ingredient {
    width: 640px;
    margin: 68px auto 82px;
    padding-bottom: 30px;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333
}

@media screen and (max-width: 749px) {
    .ingredient {
        width:85.3333333333vw;
        margin: 9.0666666667vw auto 10.9333333333vw;
        padding-bottom: 4vw
    }
}

.ingredient_inner {
    padding-left: 24px;
    padding-right: 24px
}

@media screen and (max-width: 749px) {
    .ingredient_inner {
        padding-left:3.2vw;
        padding-right: 3.2vw
    }
}

.ingredient_head {
    position: relative;
    padding-top: 30px;
    font-size: 26px;
    font-weight: 500;
    line-height: 1
}

@media screen and (max-width: 749px) {
    .ingredient_head {
        padding-top:4vw;
        font-size: 3.4666666667vw
    }
}

.ingredient_head:after,.ingredient_head:before {
    content: "";
    position: absolute;
    background-color: #333
}

.ingredient_head:after {
    width: 28px;
    height: 2px;
    top: 42px;
    right: 24px
}

@media screen and (max-width: 749px) {
    .ingredient_head:after {
        width:3.7333333333vw;
        top: 5.6vw;
        right: 3.2vw
    }
}

.ingredient_head:before {
    width: 2px;
    height: 28px;
    top: 29px;
    right: 36px
}

@media screen and (max-width: 749px) {
    .ingredient_head:before {
        height:3.7333333333vw;
        top: 3.8666666667vw;
        right: 4.8vw
    }
}

.is-active .ingredient_head:before {
    opacity: 0
}

.ingredient_body {
    display: none;
    margin-top: 12px
}

@media screen and (max-width: 749px) {
    .ingredient_body {
        margin-top:1.6vw
    }
}

.ingredient_body>*+* {
    margin-top: 36px
}

@media screen and (max-width: 749px) {
    .ingredient_body>*+* {
        margin-top:4.8vw
    }
}

.ingredient dd,.ingredient dt {
    font-size: 20px;
    line-height: 1.75
}

@media screen and (max-width: 749px) {
    .ingredient dd,.ingredient dt {
        font-size:2.6666666667vw
    }
}

.philosophy {
    padding-top: 145px;
    background-repeat: no-repeat;
    background-size: 347.5px auto;
    background-position: 40px 23px;
    background-image: url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/trial_lp/img/20240708/philosophy_bg.webp)
}

@media screen and (max-width: 749px) {
    .philosophy {
        padding-top:19.3333333333vw;
        background-size: 46.3333333333vw auto;
        background-position: 5.3333333333vw 3.0666666667vw
    }
}

.philosophy_inner {
    width: 590px;
    margin: 0 auto
}

@media screen and (max-width: 749px) {
    .philosophy_inner {
        width:78.6666666667vw
    }
}

.philosophy_lead {
    margin-left: 228px;
    font-size: 24px;
    line-height: 1.75
}

@media screen and (max-width: 749px) {
    .philosophy_lead {
        margin-left:30.4vw;
        font-size: 3.2vw
    }
}

.philosophy_last {
    margin-top: 36px
}

@media screen and (max-width: 749px) {
    .philosophy_last {
        margin-top:4.8vw
    }
}

.philosophy .title_sub {
    font-size: 32px
}

@media screen and (max-width: 749px) {
    .philosophy .title_sub {
        font-size:4.2666666667vw
    }
}

.promise {
    margin-top: 44px
}

@media screen and (max-width: 749px) {
    .promise {
        margin-bottom:5.8666666667vw
    }
}

.promise_title {
    width: 409.5px
}

@media screen and (max-width: 749px) {
    .promise_title {
        width:54.6vw
    }
}

.promise_list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 40px 1fr;
    grid-template-columns: repeat(2,1fr);
    gap: 32px 40px;
    margin-top: 32px
}

@media screen and (max-width: 749px) {
    .promise_list {
        gap:4.2666666667vw 5.3333333333vw;
        margin-top: 4.2666666667vw
    }
}

.promise_list li {
    position: relative
}

.promise_list span {
    font-size: 32px;
    line-height: 1
}

@media screen and (max-width: 749px) {
    .promise_list span {
        font-size:4.2666666667vw
    }
}

.promise_list p {
    margin-top: 16px;
    font-size: 22px;
    line-height: 1.75
}

@media screen and (max-width: 749px) {
    .promise_list p {
        margin-top:2.1333333333vw;
        font-size: 2.9333333333vw
    }
}

.promise_list img {
    position: absolute;
    right: -10px;
    bottom: 16px;
    width: 49px
}

@media screen and (max-width: 749px) {
    .promise_list img {
        right:-1.3333333333vw;
        bottom: 2.1333333333vw;
        width: 6.5333333333vw
    }
}

.insta {
    margin-top: 110px
}

@media screen and (max-width: 749px) {
    .insta {
        margin-top:14.6666666667vw
    }
}

.insta .title_en {
    margin-bottom: 20px
}

@media screen and (max-width: 749px) {
    .insta .title_en {
        margin-bottom:2.6666666667vw
    }
}

.faq {
    width: 640px;
    margin: 80px auto 0;
    padding-bottom: 90px
}

@media screen and (max-width: 749px) {
    .faq {
        width:85.3333333333vw;
        margin-top: 10.6666666667vw;
        padding-bottom: 12vw
    }
}

.faq_title {
    font-size: 32px;
    font-weight: 500;
    text-align: center
}

@media screen and (max-width: 749px) {
    .faq_title {
        font-size:4.2666666667vw
    }
}

.faq_list {
    margin-top: 25px;
    border-bottom: 1px solid #333
}

@media screen and (max-width: 749px) {
    .faq_list {
        margin-top:2.6666666667vw
    }
}

.faq_item {
    padding: 32px 23px 37px;
    border-top: 1px solid #333
}

@media screen and (max-width: 749px) {
    .faq_item {
        padding:4.2666666667vw 3.0666666667vw 4.9333333333vw
    }
}

.faq_term {
    position: relative;
    font-size: 28px;
    font-weight: 500
}

@media screen and (max-width: 749px) {
    .faq_term {
        font-size:3.7333333333vw
    }
}

.faq_term:after,.faq_term:before {
    content: "";
    position: absolute;
    background-color: #333
}

.faq_term:before {
    top: 22px;
    right: 0;
    width: 28px;
    height: 2px
}

@media screen and (max-width: 749px) {
    .faq_term:before {
        top:2.5333333333vw;
        width: 3.7333333333vw
    }
}

.faq_term:after {
    top: 9px;
    right: 13px;
    width: 2px;
    height: 28px
}

@media screen and (max-width: 749px) {
    .faq_term:after {
        top:0.9333333333vw;
        right: 1.4666666667vw;
        height: 3.7333333333vw
    }
}

.faq_term.is-active:after {
    opacity: 0
}

.faq_desc {
    display: none;
    margin-top: 8px;
    font-size: 24px
}

@media screen and (max-width: 749px) {
    .faq_desc {
        margin-top:1.0666666667vw;
        font-size: 3.2vw
    }
}

.basic_box {
    margin: auto 1.428em
}

.limit_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 1.071em
}

.limit_oval {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 5.714em;
    height: 5.714em;
    border-radius: 50%;
    border: #e7a9b7 1px solid;
    color: #e7a9b7;
    font-size: 0.857em;
    line-height: 1.5
}

.present_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: -1.428em;
    border-radius: 0.714em;
    background: #fcf4f6;
    padding: 1.428em;
    text-align: left
}

.present_box .txt {
    -ms-flex-preferred-size: 68%;
    flex-basis: 68%
}

.present_box .pic {
    -ms-flex-preferred-size: 32%;
    flex-basis: 32%
}

.plus_oval {
    display: inline-block;
    position: relative;
    margin-top: -0.357em;
    width: 1.428em;
    height: 1.428em;
    border-radius: 50%;
    background: #e7a9b7;
    color: #fff;
    font-size: 2em;
    line-height: 1.328em;
    z-index: 10
}

.listyle_disc li {
    list-style-type: none
}

.listyle_disc li:before {
    position: relative;
    display: inline-block;
    width: 0.714em;
    height: 0.714em;
    margin-right: 0.357em;
    content: "";
    border-radius: 50%;
    background: #f6dadf
}

.price_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline
}

.price_box_lead>span {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.shipping_box {
    width: 5em;
    height: 1.785em;
    background: #fcf4f6;
    font-size: 0.928em;
    line-height: 1.785em
}

.btn_pnk a {
    display: block;
    width: 100%;
    height: 3.571em;
    margin: 0 auto;
    color: #fff;
    background: #e7a9b7;
    text-decoration: none;
    font-weight: 500;
    border-radius: 1.8em;
    line-height: 3.571em
}

.btn_pnk :before {
    content: "";
    display: inline-block;
    width: 1.428em;
    height: 1.535em;
    margin: -0.285em 1.071em 0 0;
    background: url(../img/cart_ico.png) no-repeat;
    background-size: contain;
    vertical-align: middle
}

.btn_pnk a:hover {
    opacity: 0.8
}

.prod_mv_box {
    display: inline-block;
    position: relative;
    max-width: 750px;
    width: 100%;
    z-index: 0
}

.prod_mv_h2box {
    position: absolute;
    top: 1.75em;
    left: 0;
    right: 0;
    max-width: 750px;
    margin: 0 auto;
    font-family: "source-han-serif-japanese",serif;
    font-size: 1.428em;
    font-weight: 500;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: 0.05em;
    text-align: center
}

.prod_mv_pbox01 {
    position: absolute;
    top: 7.5em;
    left: 0;
    right: 0;
    max-width: 750px;
    margin: 0 auto;
    font-weight: 400;
    text-align: center
}

.prod_mv_pbox02 {
    position: absolute;
    top: 5.357em;
    left: 0;
    right: 0;
    max-width: 750px;
    margin: 0 auto;
    font-weight: 400;
    text-align: center
}

.bca_logo_box {
    width: 8.285em;
    margin: 0 auto;
    margin-bottom: 1.428em
}

.awards_logo_box01 {
    width: 6.714em;
    margin: 0 auto;
    margin-top: 1.428em
}

.awards_logo_box02 {
    width: 17.714em;
    margin: 0 auto;
    margin-top: 1.428em
}

.awards_logo_box03 {
    width: 7.857em;
    margin: 0 auto;
    margin-top: 1.428em
}

.awards_logo_biteki {
    width: 9.5em;
    margin: 0 auto;
    margin-top: 1.428em
}

.prod_feature_bg {
    background: url(../img/white_arrow.png),linear-gradient(-45deg,#fbf4f6,#f3d0d8,#f6dadf,#fbf4f6);
    background-repeat: no-repeat;
    background-position: top;
    background-size: 100% auto;
    padding: 1.428em;
    padding-top: 18%
}

.prod_feature_box {
    background: #fff
}

.prod_feature_head {
    background: #c3a66c;
    text-align: center;
    height: 2.5em;
    line-height: 2.5em;
    color: #fff;
    font-weight: 500
}

.tab_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: auto 1.428em
}

.tab_box:after {
    content: "";
    width: 100%;
    height: 2px;
    background: #f6dadf;
    display: block;
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1
}

.tab_label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #e3e3e3;
    padding: 0.714em;
    font-size: 0.785em;
    white-space: nowrap;
    text-align: center;
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    position: relative;
    z-index: 10;
    cursor: pointer;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    line-height: 1.363
}

.tab_label:not(:last-of-type) {
    margin-right: 4px
}

.tab_content {
    width: 100%;
    height: 0;
    overflow: hidden;
    opacity: 0
}

.tab_switch:checked+.tab_label {
    background: #f6dadf
}

.tab_switch:checked+.tab_label+.tab_content {
    height: auto;
    overflow: auto;
    padding-top: 1.428em;
    opacity: 1;
    -webkit-transition: 0.5s opacity;
    transition: 0.5s opacity
}

.tab_switch {
    display: none
}

.hr_reviews {
    border-top: #e3e3e3 1px solid
}

.reviews_attention {
    font-size: 1.1rem;
    text-align: right;
    color: #9d9d9d;
    width: 100%
}

@media screen and (min-width: 481px) {
    .reviews_attention {
        font-size:1.3rem
    }
}

.media_box {
    position: relative;
    margin: auto 1.428em;
    height: 32%
}

@media screen and (min-width: 481px) {
    .media_box {
        height:56%
    }
}

.media_box .swiper-scrollbar {
    position: absolute;
    left: calc(10% - 10px);
    bottom: 0;
    height: 2px;
    width: 80%;
    background: #e3e3e3
}

.insta_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 1.428em
}

.insta_box .pic {
    -ms-flex-preferred-size: 47%;
    flex-basis: 47%;
    margin-bottom: 6%
}

.promise_box {
    border: #fcf4f6 solid 0.142em;
    padding: 1.428em
}

.promise_pbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: #fcf4f6 solid 0.142em;
    padding: 1.428em;
    text-align: left
}

.promise_pbox img {
    width: 1.821em
}

.step_box {
    position: relative;
    overflow: hidden;
    background: #fcf4f6;
    padding: 5.714em 1.428em 2.857em
}

.step_box:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    border-top: 10vw solid #fff;
    border-right: 100vw solid transparent
}

.process_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: space-betwrrn;
    -ms-flex-pack: space-betwrrn;
    justify-content: space-betwrrn;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    background: #fff;
    padding: 1.428em
}

.process_box_arw {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    background: #fff;
    padding: 1.428em;
    margin-bottom: 1.428em
}

.process_box_arw:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    border-top: 0.714em solid #FFF;
    border-right: 0.714em solid transparent;
    border-left: 0.714em solid transparent
}

.process_txt {
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%
}

.process_pic {
    -ms-flex-preferred-size: 38%;
    flex-basis: 38%
}

.kv_box {
    display: inline-block;
    position: relative;
    max-width: 750px;
    width: 100%;
    z-index: 0
}

.kv_h2box {
    position: absolute;
    top: 3.214em;
    left: 0;
    right: 0;
    max-width: 750px;
    margin: 0 auto;
    color: #333;
    font-family: "source-han-serif-japanese",serif;
    font-size: 1.714em;
    font-weight: 500;
    font-style: normal;
    line-height: 1.583;
    letter-spacing: 0.05em;
    text-align: center
}

.kv_logobox {
    display: inline-block;
    width: 3.75em;
    height: 0.714em
}

@media screen and (min-width: 481px) {
    .kv_h2box {
        top:3.571em;
        font-size: 2em
    }
}

.foot_box {
    background: #f1f1f1;
    padding: 2.857em 1.428em;
    text-align: center
}

.copy_box {
    padding: 1.428em;
    text-align: center
}

.foot_box a {
    color: #727171;
    text-decoration: none
}

.foot_box a:visited {
    color: #727171;
    text-decoration: none
}

.foot_box a:hover {
    color: #727171;
    text-decoration: none
}

.foot_box a:active {
    color: #727171;
    text-decoration: none
}

.inner_content {
    padding-bottom: 35px;
    background: #f5e7f1 url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/bloomingroseline_lp/image/back.png) center top / 100% no-repeat;
}
.inner_content .inner_box {
    margin: 0 40px;
}
.inner_content .cv_btn {
    margin: 0 auto;
}
.inner_content .cv_note:nth-of-type(1) {
    padding-bottom: 45px;
}
.inner_content .cv_note:nth-of-type(2) {
    padding: 0;
}
.inner_content .cv_note:nth-of-type(2) .cv_note_comments {
        margin-top: 50px;
}


.inner_review {
    background: #fff;
    padding: 10rem 4rem 18rem;
}
.inner_review .__ttl {
    max-width: 338px;
    margin: 0 auto;
}
.inner_review .__reviewList {
    margin: 7rem auto;
}
.inner_review .cv_note {
    margin: 0;
    padding: 0;
}

.inner_bescos {
    padding: 0 4rem;
    background: #FFF url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/bloomingroseline_lp/image/bescos_bg.png) center top / 100% no-repeat;
}
.inner_bescos .__ttl {
    max-width: 57.5rem;
    margin: 0 auto;
}
.inner_bescos .__bescosList {
    margin: 7rem auto ;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3.5rem;
}

.inner_approach {
    padding: 0 4rem 8rem;
    background: #fff;
    position: relative;
}
/* .inner_approach::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 7rem;
    background: url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/bloomingroseline_lp/image/circle.png) center top / 100% no-repeat;
} */
.inner_approach .__ttl {
    max-width: 51rem;
    margin: 0 auto 5rem;
}
.inner_approach .__point {
    max-width: 62.5rem;
    margin: -3.5rem auto 0;
}

.inner_approach .__point .__pointTtl {
    max-width: 55rem;
    margin: 4rem auto 0;
}

.approach {
    padding: 19rem 4rem 4rem;
    background: #fbedf0;
    margin-top: -7rem;
}
.approach .approach_img {
    margin: 0 auto 4rem;
}
.approach .cv_note {
    padding: 0;
}
.inner_trial {
    padding: 13rem 4rem 0;
    background:url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/bloomingroseline_lp/image/trial_bg.png) center 200px / 100% no-repeat;
    position: relative;
    z-index: 10;
}
.howto .inner_trial{
    background:url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/bloomingroseline_lp/image/item_trial_bk.png) center top / 100% no-repeat;
}
.inner_trial .__ttl {
    max-width: 54rem;
    margin: 0 auto 4rem;
}
.inner_trial .__item {
    background: rgba(255, 255, 255, 0.8);
    padding: 0 4rem 4.5rem;
}

.roseLine_image {
    position: relative;
    z-index: 5;
    margin-top: -60px;
}

.component {
    background:url(https://d2w53g1q050m78.cloudfront.net/femmuejp/uploads/femmue/assets/bloomingroseline_lp/image/roseline_bg.png???????) center top / 100% no-repeat;
    padding: 6.5rem 4rem 13rem;
}
.component .__ttl {
    max-width: 61rem;
    margin: 0 auto;
}
.component .__text {
    font-size: 2.4rem;
    text-align: center;
    line-height: 2;
    letter-spacing: calc(70 / 1000 * 1em);
    margin: 9.3rem 0 12.4rem;
}

.rose_list {
    margin: 12rem 0 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10rem;
}
.step .__ttl {
    max-width: 54rem;
    margin: 0 auto 5.5rem;
}
.step .__btn_pouup {
  font-size: 2rem;
  max-width: 57rem;
  margin: 3rem auto;
  padding: 1.5rem 0;
  text-align: center;
  border: 1px solid #464646;
  cursor: pointer;
}

/* ポップアップ全体 */
.__popupItem {
  position: fixed;           /* 画面に固定 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(247, 222, 232, 0.95);
  display: none;             /* 初期非表示 */
  justify-content: center;   /* 横中央 */
  align-items: baseline;             /* 最前面 */
  overflow: hidden;          /* 背景スクロール禁止 */
  padding: 1rem;
  box-sizing: border-box;
}

/* ポップアップ表示 */
.__popupItem.active {
  display: flex;
  overflow: scroll;
}

/* 内部コンテンツ（スクロール可能） */
.__popupItem .__inner {
  background: #fff;
  /* width: 95%; */
  max-width: 75rem;
  max-height: auto;             /* 高さ上限 */
  border-radius: 8px;
  padding: 4rem 3.4rem 2.5rem;
  box-sizing: border-box;
  /* overflow-y: auto; */             /* 内部スクロール */
  -webkit-overflow-scrolling: touch; /* スマホでスムーズスクロール */
  position: relative;
}

/* 閉じるボタン */
.__popupItem .__inner .__popupClose {
    position: fixed;
    top: 36px;
    right: 36px;
    border: none;
    background: #999999;
    font-size: 2rem;
    cursor: pointer;
    border-radius: 50%;
    color: #fff;
}

/* 内部コンテンツボックス */
.__popupItem .__inner .__box {
  max-width: 58.8rem;
  margin: 0 auto;
  overflow-y: auto;
}



.__box h3 {
    max-width: 13.5rem;
    margin: 0 auto;
    color: #fff;
    font-size: 2.4rem;
    text-align: center;
    background: #e8aeba;
}
.__box h3:nth-of-type(2) {
    margin-top: 10rem;
}
.__inner .__box p {
    color: #464646;
    font-size: 2rem;
    line-height: 2;
    letter-spacing: calc(50 / 1000 * 1em);
    margin: 3rem 0;
}
.__inner .__box .cv_note {
    padding: 0;
}
.__inner .__box .cv_note_comments {
    font-size: 10px;
    margin-top: 40px;
}

/* .swiper-wrapper {
    gap: 50px;
} */

.howto .swiper-slide:nth-of-type(5) .howto_img_item {
    width: 193px;
    -webkit-transform: translate(-30%, 68%);
    transform: translate(-30%, 68%);
}
@media screen and (max-width: 749px) {
    .howto .swiper-slide:nth-of-type(5) .howto_img_item {
        width:25.7vw;
    }
}
@media screen and (max-width: 749px) {
    .inner_trial .__item {
        padding: 0 2rem 4.5rem;
    }
    .inner_content .inner_box {
            margin: 0 20px;
    }
    .inner_review .__ttl {
        max-width: 45.1vw;
    }
    .inner_review {
        padding: 13vw 2rem 24vw;
    }
    .inner_bescos {
        padding:  0 2rem;
    }
    .inner_approach .__ttl {
        max-width: 68vw;
    }
    .inner_approach .__point .__pointTtl {
        margin-top: 5.3vw;
    }
    .approach {
        padding: 25.3vw 2rem 4rem;
    }
    .inner_trial {
        padding: 17.3vw 2rem 0;
    }
    .inner_trial .__ttl {
        max-width: 72vw;
    }
    .component {
        padding: 9.5rem 2rem 13rem;;
    }
    .component .__text {
        font-size: 3.2vw;
        margin: 12.4vw auto 16vw;
    }
    .component .__ttl {
        max-width: 81vw;
    }
    .rose_list {
        gap: 13.3vw;
        margin: 7rem 0 0;
    }
    .step .__ttl {
        max-width: 72vw;
    }
    .step .__btn_pouup {
        max-width: 85vw;
        font-size: 4vw;
        margin: 8vw auto 12vw;
    }
    .__inner .__box p {
        font-size: 1.4rem;
    }
    .inner_approach .__point {
        max-width: 74.4vw;
    }
    .howto {
        margin-top: 16vw;
    }
}

#flt_banner {
    position: fixed;
    bottom: 0;
    display: block;
    z-index: 99;
}

body.fixed {
  overflow: hidden;
  position: fixed;
  width: 100%;
}
