@charset "utf-8";
@media (min-width: 520px) {
    .wrap {
        padding-top: 40px;
        padding-bottom: 96px;
    }
    .cont_box + .cont_box {
        margin-top: 64px;
    }
    .lineup_nav_cont_box + .cont_box {
        margin-top: 40px;
    }
}
@media (max-width: 519px) {
    .wrap {
        padding-top: 2.4rem;
        padding-bottom: 4.7rem;
    }
    .cont_box + .cont_box {
        margin-top: 4.8rem;
    }
    .lineup_nav_cont_box + .cont_box {
        margin-top: 2.4rem;
    }
}

/* bnr */
.lineup_bnr_list {
    display: flex;
    justify-content: center;
}
.lineup_bnr_listitem {
    position: relative;
}
.lineup_bnr {
    margin: auto;
    display: block;
}
.lineup_bnr img {
    width: 100%;
    height: auto;
}
@media (min-width: 520px) {
    .lineup_bnr_wrap {
        padding-block: 25px 65px;
    }
    .lineup_bnr_listitem::before,
    .lineup_bnr_listitem::after {
        content: '';
        display: block;
        position: absolute;
        width: 1px;
        height: 150%;
        background-color: #000;
        height: calc(100% + 130px);
        top: -65px;
        z-index: 2;
    }
    .lineup_bnr_listitem::before {
        left: 0;
    }
    .lineup_bnr_listitem::after {
        right: 0;
    }
    .lineup_bnr_listitem_1::before {
        content: none;
    }
    .lineup_bnr_list {
        border-top: 1px solid #000;
        border-bottom: 1px solid #000;
    }
    .lineup_bnr_listitem + .lineup_bnr_listitem {
        margin-left: -1px;
    }
    .lineup_bnr_listitem {
        width: 50%;
    }
    .lineup_bnr_noneborder {
        margin: -1px auto;
    }
}
@media (max-width: 519px) {
    .lineup_bnr_wrap {
        border-top: 1px solid #000;
        border-bottom: 1px solid #000;
        margin-block: 1rem 3.4rem;
    }
    .lineup_bnr_list {
        flex-wrap: wrap;
    }
    .lineup_bnr_listitem {
        width: 100%;
    }
    .lineup_bnr_listitem + .lineup_bnr_listitem {
        border-top: 1px solid #000;
        margin-top: -1px;
    }
}

/* nav */
.lineup_nav {
    display: flex;
    justify-content: space-between;
    border-right: 1px solid #000;
}
.lineup_nav_btn {
    line-height: 1.2;
    background-color: #fff;
    color: #000;
    border-left: 1px solid #000;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.lineup_nav_btn_arrow {
    position: absolute;
    left: 50%;
    background: url(../img/default/icon_arrow_black.svg) no-repeat;
    background-size: 100% auto;
    transform: rotate(90deg);
    transition: background 0.4s 0.2s;
    z-index: 3;
}
@media (min-width: 520px) {
    .lineup_nav {
        margin: 0 auto;
    }
    .lineup_nav_btn {
        padding: 17px 0 24px;
        font-size: 20px;
        width: 100%;
    }
    .lineup_nav_btn_arrow {
        bottom: 9px;
        margin-left: -6px;
        width: 10px;
        height: 6px;
    }
    .lineup_nav_btn:hover .lineup_nav_btn_arrow {
        background-image: url(../img/default/icon_arrow_white.svg);
    }
    .lineup_nav_btn_me {
        font-size: 28px;
    }
}
@media (max-width: 519px) {
    .lineup_nav {
        flex-wrap: wrap;
    }
    .lineup_nav_btn {
        width: 50%;
        min-height: 5.5rem;
        padding: 0.5rem 0 1.3rem;
        font-size: 1.3rem;
    }
    .lineup_nav_btn_arrow {
        bottom: 0.4rem;
        margin-left: -0.4rem;
        width: 0.7rem;
        height: 0.4rem;
    }
    .lineup_nav_btn:nth-child(n + 3) {
        border-top: 1px solid #000;
    }
    .lineup_nav_btn_me {
        font-size: 1.8rem;
    }
}

/* */
.product_list {
    font-size: 0;
    text-align: center;
}
.product_list > li {
    display: inline-block;
    vertical-align: top;
    text-align: center;
    position: relative;
}
.product_list > li > a {
    color: #000;
}
.ico_new {
    position: absolute;
}
.cont_ttl_box {
    text-align: center;
}
.cont_ttl_inner {
    position: relative;
    color: #fff;
}
.cont_ttl_en {
    line-height: 1;
    letter-spacing: 0;
    font-weight: 700;
}
.cont_ttl_jp {
    font-style: italic;
    font-weight: 700;
    line-height: 1;
}
.cont_yakuji {
    position: absolute;
    line-height: 1;
    border: 1px solid #fff;
}
.cont_bleach .cont_ttl_inner,
.cont_me .cont_ttl_inner {
    color: #000;
}
.cont_bleach .cont_yakuji,
.cont_me .cont_yakuji {
    border-color: #000;
}
.cont_catch {
    background-color: #000;
    color: #fff;
    text-align: center;
    font-style: italic;
    font-weight: 700;
}
@media (min-width: 520px) {
    .cont_ttl_inner {
        width: 1020px;
        margin: auto;
        padding: 25px 0 31px;
    }
    .cont_ttl_en {
        font-size: 44px;
    }
    .cont_ttl_jp {
        font-size: 18px;
        margin-top: 16px;
    }
    .cont_yakuji {
        bottom: 15px;
        right: 0;
        font-size: 12px;
        padding: 3px 4px;
    }
    .cont_catch {
        font-size: 24px;
        padding: 10px;
    }
    .product_list > li {
        font-size: 16px;
    }
    .product_list .ico_new {
        top: -22px;
        left: -17px;
        width: 68px;
    }
    .cont_point_color .product_list .ico_new {
        top: -36px;
        left: -36px;
    }
    .lineup_item_name {
        margin-top: 10px;
        width: 120%;
        margin-left: -10%;
    }
}

@media (max-width: 519px) {
    .cont_ttl_inner {
        padding: 1.5rem 0 1.8rem;
    }
    .cont_ttl_en {
        font-size: 2.6rem;
    }
    .cont_ttl_jp {
        font-size: 1.2rem;
        margin-top: 0.7rem;
    }
    .cont_yakuji {
        bottom: 1.1rem;
        right: 1.1rem;
        font-size: 0.8rem;
        padding: 0.2rem;
    }
    .cont_catch {
        font-size: 1.4rem;
        padding: 0.8rem;
    }
    .product_list > li {
        font-size: 1rem;
    }
    .product_list .ico_new {
        top: -1rem;
        left: -1rem;
        width: 3.2rem;
    }
    .cont_point_color .product_list .ico_new {
        top: -2rem;
        left: -1.2rem;
    }
    .product_list > li img {
        width: 100%;
        height: auto;
    }
    .lineup_item_name {
        margin-top: 1rem;
        width: 120%;
        margin-left: -10%;
    }
}

/* cont_link */
.cont_link {
    background-color: #fff;
    display: block;
    color: #000;
    font-weight: 700;
    border-bottom: solid 1px #000;
    position: relative;
    overflow: hidden;
}
.cont_link_inner {
    position: relative;
}
.cont_link_inner::after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    background: url(../img/default/icon_arrow_black.svg) no-repeat center center;
}
@media (min-width: 520px) {
    .cont_link {
        padding-block: 28px 30px;
        font-size: 20px;
    }
    .cont_link::before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        background-color: #eee;
        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;
    }
    .cont_link_inner {
        transition: color 0.4s;
    }
    .cont_link_inner::after {
        right: -40px;
        width: 10px;
        height: 6px;
        transition: background 0.4s 0.2s;
    }
    @media (hover: hover) {
        .cont_link:hover::before {
            transform: scale(1, 1);
        }
    }
}
@media (max-width: 519px) {
    .cont_link {
        font-size: 1.4rem;
        padding-block: 1.7rem;
    }
    .cont_link_inner::after {
        right: -1.8rem;
        width: 0.7rem;
        height: 0.7rem;
        background-size: 100% auto;
    }
}

/* makeup */
.cont_makeup .product_list {
    text-align: left;
}
.cont_makeup .cont_ttl_box {
    background-color: #c63cb1;
}
.product_list > li {
    position: relative;
}
@media (min-width: 520px) {
    .cont_makeup .inner {
        padding-top: 3px;
        padding-bottom: 61px;
    }
    .cont_makeup .product_list {
        margin: 0 -35px;
    }
    .cont_makeup .product_list > li {
        width: 144px;
        margin: 37px 37px 0;
    }
}
@media (max-width: 519px) {
    .cont_makeup .inner {
        padding: 0.3rem 1.6rem 3.5rem;
    }
    .cont_makeup .product_list > li {
        width: 7.2rem;
        margin: 1.7rem 1.5rem 0;
    }
}

/* bleach */
.cont_bleach .cont_ttl_box {
    background-color: #f6ec4f;
}
@media (min-width: 520px) {
    .cont_bleach .inner {
        padding-top: 40px;
        padding-bottom: 64px;
    }
    .cont_bleach .product_list > li {
        margin: 0 30px;
    }
}
@media (max-width: 519px) {
    .cont_bleach .inner {
        padding-top: 2.4rem;
        padding-bottom: 4rem;
    }
    .cont_bleach .product_list > li {
        width: 8.5rem;
        margin: 0 0.75rem;
    }
}

/* point_color */
.cont_point_color .cont_ttl_box {
    background-color: #18b3e0;
}
@media (min-width: 520px) {
    .cont_point_color .inner {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .cont_point_color .product_list > li {
        margin: 0 30px;
    }
}
@media (max-width: 519px) {
    .cont_point_color .inner {
        padding-top: 2.9rem;
        padding-bottom: 2.9rem;
    }
    .cont_point_color .product_list > li {
        width: 4.8rem;
        margin: 0 0.75rem;
    }
}

/* cont_tonedown */
.cont_tonedown .cont_ttl_box {
    background-color: #282828;
}
.cont_catch_wrap {
    background-color: #000;
}
.cont_tonedown .cont_ttl_inner,
.cont_catch_wrap .cont_catch_inner {
    display: flex;
}
.product_list_wrap {
    display: flex;
}
.cont_ttl_tonedown_2 {
    border-left: 1px solid #fff;
}
.cont_catch_tonedown_2 {
    border-left: 1px solid #fff;
}
.cont_tonedown .cont_ttl_inner {
    padding: 0;
}
@media (min-width: 520px) {
    .tonedown_1 {
        width: 683px;
    }
    .tonedown_2 {
        width: 338px;
    }
    .cont_ttl_tonedown_1,
    .cont_ttl_tonedown_2 {
        padding: 25px 0 30px;
        position: relative;
    }
    .cont_ttl_tonedown_1 .cont_yakuji {
        right: 24px;
    }
    .cont_catch_inner {
        width: 1020px;
        margin: auto;
    }
    .product_list_wrap .tonedown_2 {
        border-left: 1px solid #000;
    }
    .product_list_wrap .tonedown_1,
    .product_list_wrap .tonedown_2 {
        padding-top: 40px;
        padding-bottom: 61px;
    }
    .product_list_wrap .tonedown_1 .product_list > li {
        margin: 0 32px;
    }
}
@media (max-width: 519px) {
    .tonedown_1 {
        width: 72%;
    }
    .tonedown_2 {
        width: 28%;
    }
    .cont_tonedown .cont_ttl_en {
        font-size: 2rem;
    }
    .cont_ttl_tonedown_1,
    .cont_ttl_tonedown_2 {
        padding: 2rem 0 1.7rem;
        position: relative;
    }
    .cont_ttl_tonedown_1 .cont_yakuji {
        right: 0.9rem;
    }
    .cont_ttl_tonedown_2 .cont_yakuji {
        right: 3rem;
    }
    .cont_tonedown .cont_catch {
        align-self: center;
        padding: 0.2rem;
        line-height: 1.14;
    }
    .product_list_wrap .tonedown_1,
    .product_list_wrap .tonedown_2 {
        padding-top: 2.5rem;
        padding-bottom: 3.4rem;
    }
    .product_list_wrap .tonedown_1 .product_list > li {
        margin: 0 0.7rem;
        width: 6.5rem;
    }
    .product_list_wrap .tonedown_2 .product_list > li {
        width: 3.2rem;
    }
    .product_list_wrap .tonedown_2 .product_list > li .lineup_item_name {
        width: 150%;
        margin-left: -25%;
    }
}

/* cont_one_day */
.cont_one_day .cont_ttl_box {
    background-color: #ed3504;
}
@media (min-width: 520px) {
    .cont_one_day .inner {
        padding-top: 40px;
        padding-bottom: 61px;
    }
    .cont_one_day .product_list {
        margin: 0 -20px;
    }
    .cont_one_day .product_list > li {
        margin: 0 21px;
    }
}
@media (max-width: 519px) {
    .cont_one_day .inner {
        padding-top: 1.4rem;
        padding-bottom: 3.5rem;
    }
    .cont_one_day .product_list > li {
        width: 3.5rem;
        margin: 1rem 1.8rem 0;
    }
    .cont_one_day .lineup_item_name {
        width: 170%;
        margin-left: -35%;
    }
}

/* cont_me */
.cont_me .cont_ttl_box {
    background: #fffdf1 url(../img/lineup/me_bg.jpg) no-repeat center center;
    background-size: auto 100%;
}
@media (min-width: 520px) {
    .cont_me .cont_ttl_inner {
        padding-top: 17px;
        padding-bottom: 17px;
    }
    .cont_me .cont_ttl_jp {
        margin-top: 7px;
    }
    .cont_me .inner {
        padding-top: 40px;
        padding-bottom: 62px;
    }
    .cont_me .product_list > li {
        margin: 0 16px;
    }
    .cont_me .product_list > li:last-child {
        margin-left: 50px;
        margin-right: 0;
    }
    .cont_me .product_list > li:first-child {
        margin-left: 0;
    }
}
@media (max-width: 519px) {
    .cont_me .cont_ttl_box {
        background-image: url(../img/lineup/me_bg_sp.jpg);
        background-size: cover;
    }
    .cont_me .cont_ttl_en {
        width: 7.85rem;
        margin: auto;
    }
    .cont_me .cont_ttl_en img {
        width: 100%;
    }
    .cont_me .cont_ttl_jp {
        margin-top: 0.3rem;
    }
    .cont_me .cont_ttl_inner {
        padding-top: 1.1rem;
        padding-bottom: 1.1rem;
    }
    .cont_me .product_list > li {
        margin: 1.5rem 1.5rem 0;
        width: 7.2rem;
    }
    .cont_me .inner {
        padding-top: 1rem;
        padding-bottom: 3.7rem;
    }
    .cont_me .product_list > li:last-child img {
        width: 5.2rem;
    }
}

/* cont_exchange */
.cont_exchange .cont_ttl_box {
    background: #ae973f;
    background: linear-gradient(90deg, rgba(174,151,63,1) 0%, rgba(222,193,100,1) 50%, rgba(174,151,63,1) 100%);
}
.cont_only {
    background-color: #000;
    color: #fff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    letter-spacing: 0;
}
@media (min-width: 520px) {
    .cont_only {
        width: 90px;
        height: 90px;
        font-size: 20px;
        line-height: calc(24/20);
    }
    .cont_exchange .inner {
        padding-top: 40px;
        padding-bottom: 61px;
    }
    .cont_exchange .product_list > li {
        margin: 0 32px;
    }
}
@media (max-width: 519px) {
    .cont_only {
        width: 4.5rem;
        height: 4.5rem;
        font-size: 1.1rem;
        line-height: calc(26/22);
        left: 1.4rem;
    }
    .cont_exchange .cont_ttl_en {
        font-size: 2rem;
    }
    .cont_exchange .product_list > li {
        width: 6.5rem;
        margin: 0 0.8rem;
    }
    .cont_exchange .inner {
        padding-top: 2.4rem;
        padding-bottom: 3.5rem;
    }
}
