/* common */
* {
    margin: 0;
}

img {
    display: block;
    width: 100%;
    height: auto;
}

.cmn_ablt {
    position: absolute;
}

.cmn_rltv {
    position: relative;
}

.wrapper {
    max-width: 750px;
    margin: 0 auto;
}

/* FV */
.fv_wrap {
    position: relative;
}

.fv_insta-head-cont {
    z-index: 10;
    position: relative;
}

.fv_insta-head-cont + .fv_main {
    margin-top: -3%;
}

.fv_main {
    margin: 0;
    font-size: 0;
}

.fv_tags {
    left: 4%;
    bottom: 40%;
    width: min(262px, 34.93vw);
    transform: rotate(-6deg);
    z-index: 10;
}

.fv_tags.fv_tags--infl {
    bottom: 35%;
}

.fv_tags.fv_tags--sm {
    bottom: 43%;
    width: min(206px, 27.46vw);
    left: 2%;
}

.fv_tags.fv_tags--sm.fv_tags--sm_infl {
    bottom: 38%;
}

/* CV */
.cv_limited {
    top: -5%;
    left: 1%;
    width: min(173px, 23.06vw);
    z-index: 10;
}

.cv_limited.cv_limited--boost {
    left: 0%;
}

.cv_limited.cv_limited--2 {
    top: -4%;
}

.cv_limited.cv_limited--2_boost {
    top: 1%;
    left: 0%;
}

.cv_limited.cv_limited--boost_btm {
    top: 1%;
    left: 0%;
}

.cv_diff {
    top: -19%;
    right: 0%;
    width: min(510px, 68vw);
    z-index: 10;
}

.cv_percent {
    top: 30%;
    right: 0%;
    width: min(110px, 15.5vw);
    z-index: 10;
}

.cv_percent.cv_percent--2 {
    top: 35%;
}

.cv_percent.cv_percent--boost_btm {
    top: 35%;
}

.cv_price {
    right: 2%;
    bottom: 9%;
    width: min(578px, 77.06vw);
}

.cv_price.cv_price--2 {
    bottom: 5%;
}

.cv_btn-wrap {
    position: absolute;
    display: block;
    width: min(701px, 93.46vw);
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
    opacity: 1;
    transition: all .2s ease;
}

.cv_btn-wrap.cv_btn-wrap--2 {
    top: 3%;
}

.cv_btn-wrap>a {
    position: relative;
    display: block;
    overflow: hidden;
}

.cv_btn-wrap>a::after {
    content: "";
    display: block;
    position: absolute;
    top: 10%;
    left: -20%;
    width: 20px;
    height: 54%;
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    transform: translateX(-100%);
    z-index: 10;
    transform: scale(2) rotate(20deg);
    animation-name: shine-btn;
    animation-duration: 5s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

/* Before After */
.ba_beauty-leg {
    top: -17%;
    right: 0;
    width: min(259px, 34.53vw);
    z-index: 10;
}

.ba_list {
    padding: 0
}

.ba_list-el {
    display: block;
}

/* Inflencer Slide */
.influencer_wrap {
    padding-bottom: 3%;
}

.influencer_inr {
    margin-top: -116%;
}

.influencer_slide-list {
    padding: 0;
}

.slider-el {
    display: block;
}

.slider-el_inr {
    display: block;
    padding: 0 6%;
}

.slider-el_inr>img {
    /* box-shadow: 2px 2px 6px 3px #00000059 */
}

.slick-track {
    padding: 4% 0;
}

/* Q&A */
.qa_wrap {
    box-shadow: 0 2px 5px 2px #0000007a;
}

.qa_list {
    padding: 0;
}

.qa_list-el {
    display: block;
}

/* Worry */
.worry_list {
    padding: 0;
}

.worry_list-el {
    display: block;
}

/* Kuchikomi */
.kuchikomi_wrap {
    margin-bottom: 22%;
}

.kuchikomi_bg-adjust {
    padding-bottom: 14%;
}

.kuchikomi_inr {
    margin-top: -112%;
}

.kuchikomi_slide-list {
    padding: 0;
}

.slider-el {
    display: block;
}

.slider-el_inr.slider-el_inr--kuchikomi {
    padding: 0 1%;
}

/* Steps */
.step_list {
    padding: 0;
}

.step_list-el {
    position: relative;
    display: block;
}


.step_list-el.step_list-el--no_margin {
    margin-top: 0!important;
}

.step_list-el+.step_list-el {
    margin-top: 10%;
}

.step_list-num {
    position: absolute;
    top: -1%;
    left: 4%;
    width: min(195px, 26vw);
    opacity: .8;
    z-index: 20;
}

.step_list-item {
    position: absolute;
    bottom: 22%;
    right: 6%;
    width: min(200px, 26.6vw);
    z-index: 20;
}

.step_list-num.step_list-num--right {
    left: unset;
    right: 4%;
}

.step_list-mov {
    position: absolute;
    top: 17%;
    left: 0;
    right: 0;
    margin: auto;
    width: min(751px, 96.13vw);
    z-index: 10;
}

.step_list-movie {
    position: absolute;
    top: 17%;
    left: 0;
    right: 0;
    margin: auto;
    width: min(690px, 92vw);
    z-index: 10;
}

.step_list-movie.step_list-movie--top {
    top: 14%;
}

.step_list-movie.step_list-movie--btm {
    top: unset;
    bottom: 37%;
}

.step_list-movie.step_list-movie--heatmat {
    top: unset;
    top: 9%;
}

.step_list-movie.step_list-movie--redwrap {
    top: unset;
    bottom: 48%;
}

.step_list-movie.step_list-movie--static {
    position: relative;
    top: unset;
    left: unset;
    right: unset;
    margin: 1em auto 0;
}

.step_list-movie.step_list-movie--static video {
    /* position: absolute; */
    width: 100%;
    box-shadow: 2px 2px 6px 3px #00000059;
    filter: drop-shadow(0px 0px rgba(0, 0, 0, 0));
    outline: none;
    border: none;
}

.step_list-movie-inr>video {
    position: absolute;
    width: 100%;
    box-shadow: 2px 2px 6px 3px #00000059;
    filter: drop-shadow(0px 0px rgba(0, 0, 0, 0));
    outline: none;
    border: none;
}

.mdb-step_separater {
    position: relative;
    display: block;
    width: auto;
    max-width: 90%;
    height: 0;
    margin: 0 auto;
    border-bottom: 4px solid;
    border-image: linear-gradient(to right, #f0d1cb, #d4c8e8, #bed5ef) 1;
    text-align: center;
}

.mdb-step_separater::after {
    position: absolute;
    bottom: -23px;
    left: 50%;
    display: block;
    content: '';
    width: 40px;
    height: 40px;
    margin-left: -20px;
    color: #333;
    line-height: 1;
    border: 4px solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: rotate(135deg);
    border-image: linear-gradient(to right, #f0d1cb, #d4c8e8, #bed5ef) 1;
    background-color: #fff;
}

/* Point */
.point_list {
    padding: 0;
}

.point_list-el {
    display: block;
}

/* Reason */
.reason_wrap {
    box-shadow: 0 -2px 5px 2px #0000001c;
}

.reason_list {
    padding: 0;
}

.reason_list-el {
    display: block;
}

/* Other */
.other_btn-inr {
    width: min(644px, 85.86vw);
    margin: auto;
    left: 0;
    right: 0;
    bottom: 25%;
}

/* Shop info */
.shop_wrap {
    margin-bottom: 6%;
}

.shop_area {
    width: min(690px, 92vw);
    margin: 0 auto 1em;
}

/* .shop_area-switch img {
    display: none;
}

.shop_area-switch:not(.is_close) img:nth-of-type(1),
.shop_area-switch.is_close img:nth-of-type(2) {
    display: block;
}

.shop_area-shops {
    padding: 0;
}

.shop_area-shop-el {
    display: block;
    margin: 5% 0;
} */

.lp-salon_list {
    width: min(691px, 92.1vw);
    margin: auto !important;
    padding: 0 !important;
    list-style-type: none !important;
}

.lp-salon_list_district {
    display: block;
    margin-top: 4%;
    padding-bottom: 0 !important;
    list-style: none;
}

.lp-salon_list_district_name {
    display: block;
    padding: 4px 0 6px;
    background-color: rgb(102, 102, 102);
    text-align: center;
    font-size: min(4.5vw, 30px);
    font-weight: normal;
    color: rgb(255, 255, 255);
    letter-spacing: 1px;
    line-height: 1;
}

.lp-salon_list-salons {
    padding: 0 !important;
}

.lp-salon_list-salons_el {
    margin-top: 4%;
    padding: 0 !important;
    list-style: none;
}

.lp-salon_list-salons_el>a {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
}

.lp-salon_list-salons_info {
    width: 80%;
}

.lp-salon_list-salons_name {
    display: block;
    font-size: min(4.8vw, 34px);
    font-weight: bold;
    color: black;
}

.lp-salon_list-salons_address {
    display: block;
    padding-top: 2%;
    font-size: min(3.6vw, 26px);
    line-height: 1.3;
    color: #444;
}

.lp-salon_list-salons_img {
    width: min(126px, 16.8vw);
}

.lp-salon_list-salons_img>img {
    display: block;
}

/* Color Adjustment */
.lp-salon_list--violet .lp-salon_list_district_name {
    background: #81017E;
    background: linear-gradient(0deg, #C05E88 0%, #81017E 100%);
}

.lp-salon_list--violet .lp-salon_list-salons_name {
    color: #591E7A;
}

.lp-salon_list--orange .lp-salon_list_district_name {
    background: #FF452F;
    background: linear-gradient(0deg, #F9DF7F 0%, #FF452F 100%);
}

.lp-salon_list--orange .lp-salon_list-salons_name {
    color: #e22611;
}

.lp-salon_list--pink .lp-salon_list_district_name {
    background: #DD597E;
    background: linear-gradient(0deg, #F486A7 0%, #DD597E 100%);
}

.lp-salon_list--pink .lp-salon_list-salons_name {
    color: #c5204f;
}

.lp-salon_list--blue .lp-salon_list_district_name {
    background: #0C0060;
    background: linear-gradient(0deg, #CEE3FF 0%, #0C0060 100%);
}

.lp-salon_list--blue .lp-salon_list-salons_name {
    color: #0C0060;
}

.lp-salon_list--mdb .lp-salon_list_district_name {
    background: #A5B6E8;
    background: linear-gradient(-60deg, #A5B6E8 0%, #99DBEE 47%, #E8A5AC 100%);
}

.lp-salon_list--mdb .lp-salon_list-salons_name {
    color: #AEA2E8;
}
/* .lp-salon_list--violet .lp-salon_list-salons_address {
color: .todo--color_hex;
} */
@media screen and (min-width: 768px) {
    .lp-salon_list-salons_el>a:hover {
        cursor: pointer;
    }
}

/* Footer */
.footer {
    background: #EFEFEF;
    margin-bottom: 30%;
}

.footer_inr {
    padding: 3% 1%;
}

.footer_link-list {
    display: flex;
    align-items: stretch;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 0;
}

.footer_link-list>li {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25%;
    padding: 0 4px;
    border-right: 1px solid #bbb;
    box-sizing: border-box;
}

.footer_link-list>li:last-child {
    border-right: 0;
}

.footer_link-list a {
    display: block;
    color: #666;
    text-decoration: none;
    font-size: min(13px, 2vw);
}

.footer_copy {
    margin-top: 2%;
    text-align: center;
}

/* Float button */
.floating {
    max-width: 750px;
    width: 100%;
    position: fixed;
    bottom: 0;
    z-index: 30;
    background: linear-gradient(to top, #ffffff80 0%, #ffffff90 80%, transparent);
    padding: 2% 0 1.5%;
}

.floating_inner {
    width: min(500px, 93.46vw);
    margin: 0 auto;
}

/* PC Only */
@media screen and (min-width: 768px) {
    .cv_btn:hover,
    .cv_btn:active {
        opacity: .8;
    }
}

/* SP */
@media screen and (max-width: 767px) {
    /* Footer */
    .footer_inner div {
        margin-bottom: 3%;
    }
}

/* SP Adjustment */
@media screen and (max-width: 425px) {}

/* Animation */
@keyframes shine-btn {
    0% { left: -20%; }
    10% { left: 120%; }
    100% { left: 120%; }
}
