@charset "utf-8";
/* color */
:root {
    --color-plex: #f8d61c;
    --color-plex-dark: #f7dd33;
    --color-base-up: #f4bb32;
    /* --color-base-up-dark: #ada46a; */
    --color-airy: #ff9d20;
    /* --color-airy-dark: #df7f05; */
}

/* wrap */
@media (min-width: 520px) {
    .wrap {
        padding-bottom: 95px;
    }
    .features_inner {
        padding: 40px 0 48px;
    }
}

/* bleach_view */
.plex_wrap .section_ttl {
    color: var(--color-plex-dark);
}
.baseup_wrap .section_ttl {
    color: var(--color-base-up);
}
.airy_wrap .section_ttl {
    color: var(--color-airy);
}
.plex_wrap .slide_step_ttl {
    background-color: var(--color-plex-dark);
}
.baseup_wrap .slide_step_ttl {
    background-color: var(--color-base-up);
}
.airy_wrap .slide_step_ttl {
    background-color: var(--color-airy);
}
.slide_step_ttl {
    color: #fff;
}
.content_ttl {
    line-height: calc(38 / 28);
}
@media (min-width: 520px) {
    .cont_box + .cont_box {
        margin-top: 48px;
    }
}

/* contents_nav */
.contents_nav {
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    border-top: 1px solid #000;
}
.contents_nav_list {
    display: flex;
    align-items: center;
    justify-content: center;
}
.contents_nav_item {
    border-left: 1px solid #000;
}
.contents_nav_item:last-of-type {
    border-right: 1px solid #000;
}
.contents_nav_link {
    font-weight: 800;
    display: block;
    text-align: center;
    position: relative;
}
.contents_nav .contents_nav_link_inner {
    z-index: 3;
    position: relative;
    transition: color 0.6s;
    display: block;
}
.contents_nav_link_inner::after {
    content: '';
    display: block;
    position: absolute;
    background: url(../img/default/icon_arrow_black.svg) no-repeat;
    background-size: 100% auto;
}
.contents_nav_plex .contents_nav_link_inner {
    color: var(--color-plex);
}
.contents_nav_beseup .contents_nav_link_inner {
    color: var(--color-base-up);
}
.contents_nav_airy .contents_nav_link_inner {
    color: var(--color-airy);
}
@media (min-width: 520px) {
    .contents_nav_list {
        margin: auto;
        max-width: 1760px;
        padding-left: 40px;
        padding-right: 40px;
        position: relative;
    }
    .contents_nav_item{
        width: 100%;
    }
    .contents_nav_link {
        width: 100%;
        font-size: 28px;
        padding-block: 25px;
    }
    .contents_nav_link::before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        background: #000;
        width: 100%;
        height: 100%;
        transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
        transform: scale(0, 1);
        transform-origin: left top;
    }
    .contents_nav_link_inner::after {
        width: 10px;
        height: 6px;
        right: 6.2%;
        transition: background 0.4s 0.2s;
        z-index: 2;
        top: 50%;
        transform: translateY(-50%) rotate(90deg);
    }
    @media (hover: hover) {
        .contents_nav_link:hover::before {
            transform: scale(1, 1);
        }
        .contents_nav_link:hover .contents_nav_link_inner {
            color: #fff;
        }
        .contents_nav_link:hover .contents_nav_link_inner::after {
            background: url(../img/default/icon_arrow_white.svg) no-repeat;
        }
    }
}
@media (max-width: 519px) {
    .contents_nav_list {
        margin: auto;
        max-width: 37.5rem;
    }
    .contents_nav_item{
        width: 100%;
    }
    .contents_nav_item:first-of-type{
        border-left: 0;
    }
    .contents_nav_item:last-of-type{
        border-right: 0;
    }
    .contents_nav_link {
        width: 100%;
        font-size: 1.2rem;
        padding-block: 1.5rem;
    }
    .contents_nav_link_inner::after {
        width: 1rem;
        height: 0.5rem;
        background-size: auto 100%;
        left: 50%;
        bottom: -1rem;
        transform: translateX(-50%) rotate(90deg);
    }
}

/* mv */
.mv_ttl_box {
    color: #fff;
}
.safety_top {
    border-bottom: none;
    padding-bottom: 0;
}
.mv_plex .color_1 .mv_bg {
    background-color: var(--color-plex);
}
.mv_plex .mv_color_list > li:nth-child(1) {
    background-color: var(--color-plex);
}
.mv_baseup .color_1 .mv_bg {
    background-color: var(--color-base-up);
}
.mv_baseup .mv_color_list > li:nth-child(1) {
    background-color: var(--color-base-up);
}
.mv_airy .color_1 .mv_bg {
    background-color: var(--color-airy);
}
.mv_airy .mv_color_list > li:nth-child(1) {
    background-color: var(--color-airy);
}
.mv_airy .mv_pkg_info{
    text-align: right;
}
.mv_pkg {
    filter: drop-shadow(0.6rem 1.5rem 1.5rem rgba(0, 0, 0, 0.16));
}
.mv_pkg_new,
.mv_pkg_info{
    position: absolute;
}
@media (min-width: 520px) {
    .mv_frame {
        height: 560px;
    }
    .mv_ttl_box {
        top: 113px;
        margin-left: -501px;
    }
    .mv_model {
        margin-left: -5px;
        bottom: -6px;
    }
    .mv_ttl_en {
        bottom: 84px;
        margin-right: -545px;
    }
    .mv_bg_1 {
        top: -116px;
    }
    .mv_bg_2 {
        bottom: -213px;
    }
    .mv_pkg {
        bottom: 32px;
        margin-left: -450px;
    }
    .mv_pkg_new {
        bottom: 167px;
        left: 50%;
        margin-left: -346px;
    }
    .mv_info {
        bottom: 33px;
        margin-left: -315px;
    }
    .mv_catch .txt_info{
        font-size: 15px;
        vertical-align: top;
    }
    .mv_baseup .mv_pkg{
        margin-left: -544px;
    }
    .mv_baseup .mv_pkg_new {
        bottom: 188px;
        margin-left: -309px;
    }
    .mv_baseup .mv_info{
        margin-left: -280px;
    }
    .mv_plex .mv_ttl_box,
    .mv_baseup .mv_ttl_box,
    .mv_airy .mv_ttl_box {
        top: 85px;
    }
    .mv_plex .mv_catch,
    .mv_baseup .mv_catch,
    .mv_airy .mv_catch {
        line-height: calc(31 / 24);
    }
    .mv_baseup .mv_ttl_en {
        bottom: 71px;
        margin-right: -564px;
    }
    .mv_airy .mv_ttl_en {
        bottom: 81px;
        margin-right: -524px;
    }
    .mv_model_03 {
        margin-left: -115px;
        bottom: 0;
    }
    .mv_model_04 {
        margin-left: -95px;
        bottom: 5px;
    }
    .mv_pkg_info{
        font-size: 12px;
        bottom: 16px;
        right: 50%;
        margin-right: -525px;
        z-index: 1;
    }
}
@media (max-width: 519px) {
    .mv_frame {
        height: 40rem;
    }
    .mv_ttl_box {
        top: 6.6rem;
    }
    .mv_bg_1 {
        height: 34.9%;
    }
    .mv_pkg {
        width: 17%;
        left: 1.6rem;
        bottom: 0.8rem;
        z-index: 3;
    }
    .mv_info {
        bottom: 0.9rem;
        left: 8.8rem;
    }
    .mv_pkg_new {
        width: 11%;
        left: 7.5rem;
        bottom: 8.3rem;
        z-index: 2;
    }
    .mv_catch .txt_info{
        font-size: 1rem;
        vertical-align: top;
    }
    .mv_baseup .mv_pkg{
        width: 30%;
        bottom: 1.5rem;
    }
    .mv_baseup .mv_pkg_new {
        left: 12.4rem;
    }
    .mv_baseup .mv_info{
        bottom: 1.2rem;
        left: 13.8rem;
    }
    .mv_baseup .mv_pkg_info{
        text-align: right;
    }
    .mv_airy .mv_pkg {
        width: 27%;
    }
    .mv_plex .mv_ttl_box,
    .mv_baseup .mv_ttl_box,
    .mv_airy .mv_ttl_box {
        top: 4.5rem;
    }
    .mv_plex .mv_catch,
    .mv_baseup .mv_catch,
    .mv_airy .mv_catch {
        line-height: calc(20 / 15);
    }
    .mv_pkg_info{
        font-size: 0.8rem;
        bottom: 1.2rem;
        right: 1.2rem;
        z-index: 1;
    }
}

/* features */
.features_imagine {
    width: 100%;
}
.features_imagine img {
    width: 100%;
    height: auto;
}
.features_imagine_ttl {
    font-weight: 700;
}
.features_lead,
.features_lead_info {
    text-align: center;
    font-style: italic;
    font-weight: 700;
}
.features_lead .txt_info{
    vertical-align: top;
}
.features_lead_rm {
    vertical-align: top;
    font-size: 14px;
}
.plex_wrap .features_lead {
    color: var(--color-plex);
}
.baseup_wrap .features_lead {
    color: var(--color-base-up);
}
.airy_wrap .features_lead {
    color: var(--color-airy);
}
@media (min-width: 520px) {
    .features_lead {
        font-size: 28px;
        line-height: calc(38 / 28);
    }
    .features_lead .txt_info{
        font-size: 16px;
    }
    .features_lead_info {
        font-size: 12px;
        margin-top: 10px;
    }
    .features_list {
        margin-top: 32px;
    }
    .features_ttl_sm {
        font-size: 21px;
    }
    .features_ttl_info{
        font-size: 16px;
    }
    .features_txt_info{
        font-size: 16px;
        line-height: calc(24/16);
        display: block;
    }
    .features_txt_mt{
        margin-top: 10px;
        display: block;
    }
    .features_listitem {
        flex-wrap: wrap;
    }
    .features_imagine {
        margin-top: 64px;
    }
    .features_imagine_ttl_wrap {
        display: flex;
        align-items: center;
        margin-bottom: 23px;
    }
    .features_imagine_ttl {
        font-size: 24px;
    }
    .features_imagine_txt {
        font-size: 14px;
        margin-left: 33px;
    }

    .plex_wrap .features_txt{
        padding: 15px 20px;
    }
    .plex_wrap .features_txt_l{
        padding: 15px 0 15px 20px;
        white-space: nowrap;
    }
    .plex_wrap .features_txt_l .features_txt_info{
        display: inline;
    }
}

@media (max-width: 519px) {
    .features_lead {
        font-size: 1.6rem;
        margin-top: 2.5rem;
    }
    .features_lead .txt_info{
        font-size: 1rem;
    }
    .features_lead_info {
        margin-top: 0.5rem;
    }
    .features_ttl {
        padding: 0.6rem 1.3rem 1rem;
    }
    .features_ttl_info{
        font-size: 1.2rem;
    }
    .features_txt_info{
        font-size: 1.2rem;
    }
    .features_txt_mt{
        margin-top: 0.7rem;
        display: block;
    }
    .features_imagine {
        margin-top: 2.4rem;
    }
    .features_imagine_ttl_wrap {
        margin-bottom: 1.2rem;
    }
    .features_imagine_ttl {
        font-size: 1.4rem;
    }
    .features_imagine_txt {
        font-size: 1.4rem;
        margin-top: 1rem;
        line-height: 1.5;
    }
    .features_notes_list > li {
        padding-left: 0.6em;
        text-indent: -0.6em;
    }
    .features_listitem:nth-child(odd) .features_imagine {
        padding: 0 1.6rem 0 4.1rem;
    }
    .features_listitem:nth-child(even) .features_imagine {
        padding: 0 4.1rem 0 1.6rem;
    }

    .plex_wrap .features_txt_l{
        padding: 1.2rem 0 1.2rem 1.5rem;
        white-space: nowrap;
    }
}

/* movie_area */
.movie_area {
    position: relative;
}
.movie_listitem {
    display: flex;
    justify-content: space-between;
}
.movie_listitem_ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}
.movie_list .movie_wrap_thumb img {
    width: 100%;
    height: auto;
}
.movie_listitem_cont {
    overflow: hidden;
}
@media (min-width: 520px) {

    .movie_listitem + .movie_listitem {
        border-top: 1px solid #000;
    }
    .movie_listitem_ttl,
    .movie_listitem_cont {
        width: 50%;
    }
    .movie_listitem_ttl {
        font-size: 20px;
        padding: 0 40px;
    }
    .movie_listitem:nth-child(even) {
        flex-direction: row-reverse;
    }
    .movie_listitem:nth-child(odd) .movie_listitem_cont {
        border-left: 1px solid #000;
    }
    .movie_listitem:nth-child(even) .movie_listitem_ttl{
        border-left: 1px solid #000;
    }
    .movie_list .movie_wrap_concept {
        padding-top: calc(382/682 * 100%);
        width: 100%;
    }
}
@media (max-width: 519px) {
    .movie_list {
        margin-top: 2.4rem;
    }
    .movie_listitem {
        flex-direction: column-reverse;
        border-top: 1px solid #000;
    }
    .movie_listitem_ttl {
        font-size: 1.4rem;
        border-top: 1px solid #000;
        padding-top: 1rem;
        padding-bottom: 2.4rem;
        line-height: 1.4;
        padding-inline: 1.8rem;
    }
    .movie_list .movie_wrap_concept {
        padding-top: calc(382/682 * 100%);
        width: 100%;
    }

}

/* bnr_after_color */
.bnr_after_color {
    text-align: center;
}
@media (min-width: 520px) {
    .bnr_after_color {
        margin-block: 48px;
    }
    .bnr_after_color_link {
        transition: opacity 0.3s;
    }
    .bnr_after_color_link_img {
        width: 880px;
        height: auto;
    }
    @media (hover: hover) {
        .bnr_after_color_link:hover {
            opacity: 0.6;
        }
    }
}
@media (max-width: 519px) {
    .bnr_after_color {
        margin-block: 2.8rem;
    }
    .bnr_after_color_link_img {
        width: 31.1rem;
        height: auto;
    }
}

/* step */
.movie_wrap_thumb_renovation {
    width: 100%;
    position: absolute;
    height: auto;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}
@media (min-width: 520px) {
    .step {
        max-width: 680px;
        margin-inline: auto;
    }
    .slide_step_txt {
        padding: 8px 140px 0 14px;
    }
}
@media (max-width: 519px) {
    .movie + .step {
        border-top: none;
    }
    .movie + .step .howto_step_img {
        border-top: 1px solid #000;
    }
}

/* bleach_index */
.bleach_index_link {
    color: #000;
    font-weight: 700;
    display: block;
    background-color: #fff;
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
}
.bleach_index_txt_en {
    font-weight: 900;
    vertical-align: middle;
    line-height: 1;
}
.bleach_index_link_inner {
    margin: auto;
    display: block;
    position: relative;
    z-index: 2;
}
.bleach_index_btn_arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    background: url(../img/default/icon_arrow_black.svg) no-repeat right center;
}
@media (min-width: 520px) {
    .bleach_index_link {
        position: relative;
        overflow: hidden;
        transition: color 0.4s 0.2s;
    }
    .bleach_index_link::before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        background: #000;
        width: 100%;
        height: 100%;
        transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
        transform: scale(0, 1);
        transform-origin: right top;
    }
    .bleach_index_link_inner{
        width: 662px;
    }
    .bleach_index_link {
        padding-block: 35px;
    }
    .bleach_index_txt_en {
        font-size: 48px;
        margin-right: 28px;
    }
    .bleach_index_btn_arrow {
        width: 10px;
        height: 6px;
        transition: background 0.4s 0.2s;
    }
    @media (hover:hover) {
        .bleach_index_link:hover {
            color: #fff;
        }
        .bleach_index_link:hover::before{
            transform-origin: left top;
            transform: scale(1, 1);
        }
        .bleach_index_link:hover .bleach_index_btn_arrow{
            background-image: url(../img/default/icon_arrow_white.svg);
        }
    }
}
@media (max-width: 519px) {
    .bleach_index_link{
        font-size: 1.4rem;
    }
    .bleach_index_link_inner{
        width: 82%;
        padding: 2rem 0;
        background-size: 0.7rem auto;
        text-align: left;
        display: flex;
        align-items: center;
        column-gap: 2.5rem;
    }
    .bleach_index_txt_en{
        font-size: 3.2rem;
    }
    .bleach_index_txt_ja{
        line-height: calc(17/14);
    }
    .bleach_index_btn_arrow {
        height: 10rem;
        width: 3.2rem;
        right: -0.8rem;
    }
}

/* bleach_lineup */
.bleach_lineup {
    position: relative;
}
.bleach_lineup_block_list {
    display: flex;
    align-items: center;
    justify-content: center;
}
.bleach_lineup_block_link {
    display: block;
}
.bleach_lineup_product_txt {
    color: #000;
}
.bleach_lineup_product_en {
    font-weight: 800;
}
.bleach_lineup_product_jp {
    font-weight: 700;
}
.bleach_lineup_product_pkg {
    height: auto;
    filter: drop-shadow(12px 30px 30px rgba(0, 0, 0, 0.16));
}
.bleach_lineup_product_arrow {
    display: block;
    margin-top: auto;
    position: relative;
    background-color: #eeeeee;
}
.bleach_lineup_product_arrow_icon {
    position: absolute;
    top: 50%;
    z-index: 2;
    background: url(../img/default/icon_arrow_black.svg) no-repeat center center;
}
@media (min-width: 520px) {
    .bleach_lineup_block_item {
        width: 33.3%;
    }
    .bleach_lineup_block_item + .bleach_lineup_block_item {
        border-left: solid 1px #000;
    }
    .bleach_lineup_product_txtbox {
        padding-block: 45px;
    }
    .bleach_lineup_product_txt {
        text-align: center;
    }
    .bleach_lineup_product_en {
        font-size: 34px;
    }
    .bleach_lineup_product_jp {
        font-size: 20px;
    }
    .bleach_lineup_product_pkg {
        margin-top: 35px;
    }
    .bleach_lineup_product_arrow_icon {
        width: 10px;
        height: 6px;
        transition: background 0.4s 0.2s;
    }
    .bleach_lineup_product_arrow {
        height: 60px;
        position: relative;
        overflow: hidden;
        border-top: solid 1px #000;
    }
    .bleach_lineup_product_arrow::before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        background: #000;
        width: 100%;
        height: 110%;
        transition: transform 0.4s cubic-bezier(0.78, 0.07, 0, 1) 0.2s;
        transform: scale(0, 1);
        transform-origin: left top;
    }
    .bleach_lineup_product_arrow_icon {
        left: 50%;
        transform: translate(-50%, -50%);
    }
    @media (hover: hover) {
        .bleach_lineup_block_link:hover .bleach_lineup_product_arrow::before {
            transform-origin: left top;
            transform: scale(1, 1);
        }
        .bleach_lineup_block_link:hover .bleach_lineup_product_arrow_icon {
            background-image: url(../img/default/icon_arrow_white.svg);
        }
    }
}
@media (max-width: 519px) {
    .bleach_lineup_block_list {
        flex-direction: column;
        align-items: start;
    }
    .bleach_lineup_block_item + .bleach_lineup_block_item {
        border-top: solid 1px #000;
    }
    .bleach_lineup_product_info {
        display: flex;
        align-items: center;
        margin-left: 4.2rem;
    }
    .bleach_lineup_product_txt {
        display: flex;
        flex-direction: row-reverse;
        column-gap: 2rem;
        align-items: center;
        justify-content: start;
    }
    .bleach_lineup_product_en {
        font-size: 1.8rem;
    }
    .bleach_lineup_product_jp {
        font-size: 1.2rem;
        margin-top: 0.8rem;
    }
    .bleach_lineup_product_pkg {
        width: 15%;
    }
    .bleach_lineup_product_arrow {
        height: 10rem;
        width: 3.2rem;
        position: relative;
        overflow: hidden;
        flex-shrink: 0;
        border-left: solid 1px #000;
    }
    .bleach_lineup_product_arrow_icon {
        right: 0.8rem;
        transform: translateY(-50%);
        width: 1.2rem;
        height: 0.8rem;
    }
}

/* よくある質問 */
.right_wrap {
    position: relative;
}
.qa_area_ttl {
    background-color: #000;
    color: #fff;
    text-align: center;
}
.qa_area_ttl_inner {
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
    font-weight: 800;
    display: block;
}
.qa_area_ttl_sub {
    border-bottom: solid 6px #000;
    font-style: italic;
}
.qa_section_ttl {
    position: absolute;
    font-weight: 800;
}
.qa_question {
    font-weight: 700;
    cursor: pointer;
    border-left: 1px solid #000;
    background-color: #fff;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}
.qa_answer {
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
}
.qa_question_inner,
.qa_answer_inner {
    display: block;
    position: relative;
}
.qa_question_inner::before {
    content: 'Q';
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    line-height: 1;
}
.qa_answer_inner a {
    text-decoration: underline;
    color: #000;
}
.qa_area_plex .qa_question_inner::before {
    color: var(--color-plex);
}
.qa_area_baseup .qa_question_inner::before {
    color: var(--color-base-up);
}
.qa_area_airy .qa_question_inner::before {
    color: var(--color-airy);
}
.qa_question_inner::after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    background: url(../img/default/icon_arrow_black.svg) no-repeat;
    background-size: 100% auto;
    transform: rotate(90deg);
}
.is_open .qa_question_inner::after {
    transform: rotate(-90deg);
}
.qa_answer_inner::before {
    font-weight: 800;
    font-family: 'Montserrat', sans-serif;
    font-style: italic;
    content: 'A';
    display: block;
    position: absolute;
    line-height: 1;
}

.qa_another_area_link {
    font-weight: 700;
    text-align: center;
    display: block;
    color: #000;
    background-color: #fff;
    border: solid 1px #000;
    width: fit-content;
    margin: auto;
    position: relative;
}
.qa_another_area_link_inner {
    position: relative;
    z-index: 3;
}
.qa_another_area_link_inner::after {
    content: '';
    margin: auto;
    background: url(../img/default/icon_arrow_black.svg) no-repeat center center;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
}
@media (min-width: 520px) {
    .qa_area {
        margin-top: 80px;
    }
    .qa_area_ttl {
        font-size: 20px;
        padding-block: 27px 29px;
    }
    .qa_area_ttl_inner {
        font-size: 48px;
        margin-bottom: 15px;
    }
    .qa_area_ttl_inner_sm {
        font-size: 32px;
    }
    .qa_area_ttl_sub {
        font-size: 28px;
    }
    .right_wrap {
        margin-left: calc((100% - 1020px) / 2);
        margin-top: 63px;
        width: calc(1020px + (100% - 1020px) / 2);
        padding-left: 92px;
    }
    .qa_section_ttl {
        top: -15px;
        left: -65px;
        font-size: 40px;
        white-space: nowrap;
    }
    .qa_list {
        margin-top: 32px;
    }
    .qa_item + .qa_item {
        margin-top: 8px;
    }
    .qa_question {
        font-weight: 700;
    }
    .qa_question_inner {
        padding: 25px 30px 27px 90px;
        width: 958px;
    }
    .qa_question_inner::before {
        left: 40px;
        font-size: 29px;
        height: 29px;
    }
    .qa_question_inner::after {
        width: 10px;
        height: 6px;
        margin-top: -3px;
        right: 40px;
    }
    .qa_answer_inner {
        width: 958px;
        line-height: 1.75;
        padding: 31px 30px 34px 90px;
    }
    .qa_answer_inner::before {
        top: 31px;
        left: 38px;
        font-size: 29px;
        height: 29px;
    }

    .qa_another_area {
        margin-top: 40px;
    }
    .qa_another_area_link {
        font-size: 18px;
        padding: 29px 115px;
        position: relative;
    }
    .qa_another_area_link::before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        background: #000;
        width: 100%;
        height: 100%;
        transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
        transform: scale(0, 1);
        transform-origin: left top;
    }
    .qa_another_area_link_inner::after {
        width: 10px;
        height: 6px;
        right: 50%;
        transition: background 0.4s 0.2s;
        z-index: 2;
        margin-right: -190px;
    }
    @media (hover: hover) {
        .qa_another_area_link:hover::before {
            transform: scale(1, 1);
        }
        .qa_another_area_link:hover .qa_another_area_link_inner {
            color: #fff;
        }
        .qa_another_area_link:hover .qa_another_area_link_inner::after {
            background: url(../img/default/icon_arrow_white.svg) no-repeat center center;
        }
    }
}
@media (max-width: 519px) {
    .right_wrap {
        padding-left: 4.3rem;
    }
    .qa_section_ttl {
        font-size: 2.4rem;
        line-height: 1.16;
        top: 1.6rem;
        left: -0.5rem;
        white-space: nowrap;
    }
    .qa_area {
        margin-top: 4rem;
    }
    .qa_area_ttl {
        padding-block: 1.2rem 1.6rem;
    }
    .qa_area_ttl_inner {
        font-size: 3.2rem;
    }
    .qa_area_ttl_inner_sm {
        font-size: 2.4rem;
    }
    .qa_area_ttl_sub {
        font-size: 1.6em;
        border-width: 0.4rem;
        margin-bottom: 1.6rem;
        padding-top: 3.2rem;
        padding-bottom: 0.8rem;
    }
    .qa_item + .qa_item {
        margin-top: 0.8rem;
    }
    .qa_question {
        font-size: 1.2rem;
        line-height: 1.333;
    }
    .qa_question_inner {
        padding: 1.1rem 3rem 1.3rem 3.5rem;
    }
    .qa_question_inner::before {
        left: 1.2rem;
        top: 1.1rem;
        bottom: auto;
        font-size: 1.8rem;
        height: 1.8rem;
    }
    .qa_question_inner::after {
        width: 1rem;
        height: 0.5rem;
        background-size: auto 100%;
        right: 1.2rem;
    }
    .qa_answer_inner {
        font-size: 1.2rem;
        line-height: 1.7;
        padding: 1.3rem 1.1rem 1.5rem 3.5rem;
    }
    .qa_answer_inner::before {
        top: 1.4rem;
        left: 1.1rem;
        font-size: 1.8rem;
        height: 1.8rem;
    }

    .qa_another_area {
        margin-top: 1.6rem;
    }
    .qa_another_area_link {
        font-size: 1.3rem;
        padding: 1.4rem 4.5rem;
    }
    .qa_another_area_link_inner::after {
        width: 0.7rem;
        height: 0.7rem;
        background-size: 100% auto;
        right: 50%;
        margin-right: -12rem;
    }
}

/* bleach_review */
.bleach_review {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #000;
}
.bleach_review_ttl {
    font-weight: 800;
    line-height: 1;
    writing-mode: vertical-rl;
}
.bleach_review_icn_plex {
    --review-icn-bg: #faea92;
}
.bleach_review_icn_base {
    --review-icn-bg: #f6d78c;
}
.bleach_review_icn_airy {
    --review-icn-bg: #fbd7a9;
}
.bleach_review_icn {
    border-radius: 50%;
    border: 1px solid #000;
    background-color: var(--review-icn-bg);
    position: relative;
    overflow: hidden;
}
.bleach_review_icn_img {
    position: absolute;
    left: 0;
    right: 0;
    display: block;
    margin-inline: auto;
}
.bleach_review_content {
    display: flex;
}
.bleach_review_comment {
    font-weight: 500;
    position: relative;
}
.bleach_review_comment_arrow {
    position: absolute;
    top: 0;
    height: 100%;
    overflow: hidden;
}
.bleach_review_comment_arrow::before {
    content: "";
    display: block;
    height: 100%;
    width: 1px;
    background-color: #000;
    position: absolute;
    right: 0;
    top: 0;
}
.bleach_review_comment_arrow::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    border: 1px solid #000;
    background-color: #fff;
}
.bleach_review_comment_txt {
    line-height: 1.5;
}
.bleach_review_lips_logo img {
    width: 100%;
    height: auto;
}
.bleach_review_emoji1 {
    height: auto;
    vertical-align: middle;
}
.bleach_review_reverse,
.bleach_review_reverse .bleach_review_content {
    flex-direction: row-reverse;
}
.bleach_review:not(.bleach_review_reverse) .bleach_review_comment_arrow {
    right: 100%;
}
.bleach_review_reverse .bleach_review_comment_arrow {
    left: 100%;
    scale: -1 1;
}
@media (min-width: 520px) {
    .bleach_review {
        padding: 48px 170px;
        gap: 120px;
    }
    .bleach_review_ttl {
        font-size: 32px;
    }
    .bleach_review_icn {
        width: 72px;
        min-width: 72px;
        height: 72px;
        margin-right: 16px;
    }
    .bleach_review_icn_img {
        width: 56px;
        top: 7px;
    }
    .bleach_review_content {
        align-items: center;
    }
    .bleach_review_content + .bleach_review_content {
        margin-top: 32px;
    }
    .bleach_review_comment {
        display: flex;
        gap: 30px;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }
    .bleach_review_comment_arrow {
        width: 18px;
    }
    .bleach_review_comment_arrow::after {
        width: 23px;
        height: 23px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: translateX(50%) scaleY(0.3) rotate(45deg);
    }
    .bleach_review_comment_txt {
        font-size: 16px;
    }
    .bleach_review_comment_note {
        font-size: 12px;
        line-height: calc(28/12);
    }
    .bleach_review_lips_logo {
        width: 148px;
        min-width: 148px;
    }
    .bleach_review_emoji1 {
        width: 17px;
    }
    .bleach_review:not(.bleach_review_reverse) .bleach_review_comment {
        padding-left: 30px;
        margin-left: 32px;
    }
    .bleach_review_reverse .bleach_review_comment {
        padding-right: 30px;
        margin-right: 32px;
    }
    .bleach_review_reverse .bleach_review_comment {
        flex-direction: row-reverse;
    }
}
@media (max-width: 519px) {
    .bleach_review {
        padding: 2.4rem 1.5rem;
    }
    .bleach_review_ttl {
        font-size: 1.8rem;
    }
    .bleach_review_icn {
        width: 5.4rem;
        min-width: 5.4rem;
        height: 5.4rem;
    }
    .bleach_review_icn_img {
        width: 4.3rem;
        height: auto;
        top: 0.5rem;
    }
    .bleach_review_content + .bleach_review_content {
        margin-top: 2.4rem;
    }
    .bleach_review_comment {
        display: flex;
        flex-direction: column;
        gap: 0.7rem;
        width: 20.5rem;
    }
    .bleach_review_comment_arrow {
        width: 1.1rem;
    }
    .bleach_review_comment_arrow::after {
        width: 1.5rem;
        height: 1.5rem;
        top: 1.8rem;
        transform: translateX(50%) scaleY(0.3) rotate(45deg);
    }
    .bleach_review_comment_txt {
        font-size: 1.2rem;
    }
    .bleach_review_comment_note {
        font-size: 1rem;
        line-height: calc(28/20);
        margin-top: 0.5rem;
    }
    .bleach_review_lips_logo {
        width: 7.4rem;
    }
    .bleach_review_emoji1 {
        width: 1.3rem;
    }
    .bleach_review:not(.bleach_review_reverse) .bleach_review_comment {
        padding-left: 1rem;
        margin-left: 2rem;
    }
    .bleach_review_reverse .bleach_review_comment {
        padding-right: 1rem;
        margin-right: 2rem;
    }
}
