/* ------------ ロートクリアビジョン® ------------ */
.cv_seriese.cmn-inner {

    width: 100%;
}

#cv_seriese p:not([class]) {
    font-size: 17px;
    line-height: 1.76;
}

.cv_fixed_nav li {
    width: 100%;
    background-color: #E46D00;
}

/* MV */
.cv_mv {
    background-image: url("../../../images/product-detail/clearvision/mv/mv_bk_sp.png");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.cv_mv_inner {
    position: relative;
    height: 102.13vw;
    padding-top: 19.2vw;
}

.cv_mv_logo {
    width: 65.87vw;
    margin: 0 auto;
}

.cv_mv_item {
    z-index: 1;
    position: absolute;
    bottom: -41px;
    width: 100%;
}

.cv_mv_item img {
    width: 44vw;
    margin: 0 auto;
    display: block;
}

@media (min-width: 750px) {
    #cv_seriese .inner {
        max-width: 970px;
        margin: 0 auto;
    }

    #cv_seriese p:not([class]) {
        font-size: 24px;
    }

    #cv_seriese p br.sp {
        display: none !important;
    }

    .cv_mv {
        background-image: url("../../../images/product-detail/clearvision/mv/mv_bk.png");
    }

    .cv_mv_inner {
        height: 30.71vw;
        padding-top: 8.14vw;
    }

    .cv_mv_logo {
        width: 39.14vw;
        margin: 0 auto 0 16.43vw;
    }

    .cv_mv_item {
        right: 20.29vw;
        bottom: -4.79vw;
        width: 24.14vw;
    }
}

.cv_intro {
    position: relative;
    padding-top: 55px;
    padding-bottom: 59.73vw;
    background-image: url("../../../images/product-detail/clearvision/intro/bk_sp.png");
    background-position: center bottom 34.93vw;
    background-size: cover;
    background-repeat: no-repeat;
    color: #3c2280;
    font-weight: bold;
    text-align: center;
}

.cv_intro::after {
    display: block;
    z-index: 1;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 55.2vw;
    background-image: url("../../../images/product-detail/clearvision/intro/human_sp.png");
    background-position: center bottom;
    background-size: cover;
    background-repeat: no-repeat;
    content: "";
}

.cv_intro_nav {
    display: flex;
    margin: 0 auto 58px;
    font-size: 12px;
    line-height: 1.17;
}

.cv_intro_nav li {
    position: relative;
    width: 100%;
    background-color: #e46d00;
    color: #fff;
}

.cv_intro_nav li:not(:last-child)::after {
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: calc(100% - 14px);
    transform: translateY(-50%);
    background-color: currentColor;
    content: "";
}

.cv_intro_nav a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 51px;
    padding: 8px 5px 25px;
    background-image: url("../../../images/product-detail/clearvision/intro/arrow.svg");
    background-position: center bottom 9px;
    background-size: auto 5px;
    background-repeat: no-repeat;
    color: inherit;
    transition: all .5s;
}

.cv_intro_nav a:hover {
    background-color: rgba(255, 255, 255, .2);
}

.cv_intro_copy {
    max-width: 284px;
    margin: 0 auto 27px!important;
}

.cv_intro_txt {
    font-size: 17px;
    line-height: 1.76;
}

.cv_intro_logo {
    max-width: 178px;
    margin: 30px auto 0;
}

@media (min-width: 375px) {
    .cv_intro_nav {
        font-size: 15px;
    }
}

@media (min-width: 750px) {
    .cv_intro {
        padding-top: 68px;
        padding-bottom: 65px;
        background-image: url("../../../images/product-detail/clearvision/intro/bk.png");
        background-position: center bottom;
    }

    .cv_intro::after {
        bottom: -164px;
        max-width: 1400px;
        height: 496px;
        margin: 0 auto;
        background-image: url("../../../images/product-detail/clearvision/intro/human.png");
        background-size: contain;
    }

    .cv_intro_nav {
        font-size: 22px;
        line-height: 1.2;
    }

    .cv_intro_nav li::after {
        height: calc(100% - 12px);
    }

    .cv_intro_nav a {
        height: 87px;
        padding: 15px 1px 38px;
        background-position: center bottom 16px;
        background-size: auto 9px;
    }

    .cv_intro_copy {
        max-width: 456px;
        margin-bottom: 41px!important;
    }

    .cv_intro_txt {
        font-size: 24px;
        line-height: 2;
    }

    .cv_intro_logo {
        max-width: 261px;
        margin-top: 48px;
    }
}

@media (min-width: 1400px) {
    .cv_intro::after {
        max-width: 1920px;
        background-image: url("../../../images/product-detail/clearvision/intro/human_over.png");
        background-size: cover;
    }
}


.cv_sec_title {
    background: linear-gradient(90deg, #555492 0%, #2d4a8d 25%, #004088 51%, #00458c 59%, #005398 70%, #006cad 81%, #008dca 93%, #00a4dd 100%);
}

/* コンセプト */
.cv_concept {
    position: relative;
    padding-top: 25px;
    padding-bottom: 51.2vw;
}

.cv_concept::after {
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 78.13vw;
    background-image: url("../../../images/product-detail/clearvision/concept/bk_sp.png");
    background-position: center bottom;
    background-size: 100% auto;
    background-repeat: no-repeat;
    content: "";
}

.cv_concept_txt {
    font-weight: 500;
    z-index: 1;
    position: relative;
    font-size: 17px;
    line-height: 1.76;
    text-align: center;
}

.cv_concept_txt:not(:last-child) {
    margin-bottom: 1.76em;
}

@media (min-width: 750px) {
    .cv_concept {
        padding-top: 73px;
        padding-bottom: 23.93vw;
    }

    .cv_concept::after {
        height: 31.57vw;
        background-image: url("../../../images/product-detail/clearvision/concept/bk.jpg");
    }

    .cv_concept h2 {
        margin-bottom: 40px;
    }

    .cv_concept_txt {
        font-size: 25px;
        line-height: 1.76;
    }

    .cv_concept_txt:not(:last-child) {
        margin-bottom: 1.76em;
    }
}

/* クロセチンとは */
.cv_about01 {
    padding-top: 7px;
    padding-bottom: 51px;
}

.cv_about01::before {
    background-image: url("../../../images/product-detail/clearvision/about01/head.png");
}

.cv_about01 h2 {
    margin-bottom: 22px;
}

.cv_about01_img {
    max-width: 217px;
    margin: 0 auto 28px;
}

.cv_about01_txt em {
    color: #ff3255;
    font-size: 20px;
    font-weight: 500;
    /* text-decoration: underline; */
}

.cv_about01_txt p:not(:last-child) {
    margin-bottom: 30px;
}

@media (min-width: 750px) {
    .cv_about01 {
        padding-top: 22px;
        padding-bottom: 99px;
    }

    .cv_about01 h2 {
        margin-bottom: 50px;
    }

    .cv_about01_img {
        max-width: 339px;
    }

    .cv_about01_txt p:not(:last-child) {
        margin-bottom: 42px;
    }

    .cv_about01_txt em {
        font-size: 26px;
    }
}

@media (min-width: 1024px) {
    .cv_about01_box {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
    }

    .cv_about01_img {
        flex-shrink: 0;
        margin: 0 32px 0 0;
    }
}

/* 商品紹介 */
.cv_item {
    padding-top: 36px;
    padding-bottom: 50px;
    background-image: url("../../../images/product-detail/clearvision/item/bk_sp.png");
    background-position: center top;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-color: #f1f0fb;
}

.cv_item::before {
    background-image: url("../../../images/product-detail/clearvision/item/head.png");
}

.cv_item h2 {
    margin-bottom: 27px;
}

.cv_item_box {
    padding: 43px 15px 46px;
    border-radius: 15px;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, .25);
}

.cv_item_box img{
    display: block;
}

.cv_item_box_head_logo {
    margin-bottom: 7px;
}

.cv_item_box_head_logo img {
    width: 100%;
    max-width: 181px;
    margin: 0 auto;
}

.cv_item_box_head_img img {
    max-width: 191px;
    margin: 0 auto;
}

.cv_item_box_head_point {
    margin-top: 3px;
}

.cv_item_box_head_point_inner {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cv_item_box_head_point_img {
    flex-shrink: 0;
    max-width: 102px;
    margin-right: 11px;
}

.cv_item_box_head_point_list {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.44;
}

.cv_item_box_list01_box {
    margin-top: 32px;
    padding: 20px 17px 22px;
    background-color: #ebeefe;
}

.cv_item_box_list01 {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.41;
}

.cv_item_box_list01 li {
    position: relative;
    padding-left: 1.5em;
}

.cv_item_box_list01 li::before {
    position: absolute;
    left: 0;
    content: "●";
    color: #3c2280;
}

.cv_item_box_list01 li:not(:last-child) {
    margin-bottom: 8px;
}

.cv_item_box_howto {
    margin-top: 18px;
    font-size: 16px;
    line-height: 1.88;
}

.cv_item_box_howto > div:not(:last-child) {
    margin-bottom: 1.75em;
}

.cv_item_box_howto dt {
    margin-bottom: 13px;
    padding-bottom: 12px;
    border-bottom: 1px solid #bfbfbf;
    color: #3c2280;
    font-weight: bold;
}

.cv_item_box_howto strong {
    color: #ff3255;
    font-weight: bold;
    font-size: 1.2em;
}

.cv_item_box_btn_wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 25px;
    gap: 16px;
}

.cv_item_box_btn {
    width: 100%;
    max-width: 221px;
    height: 44px;
    overflow: hidden;
    border-radius: 21px;
    font-weight: bold;
    font-size: 19px;
    letter-spacing: .02em;
}

.cv_item_box_btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background-image: url("../../../images/product-detail/clearvision/item/btn_back.png");
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    color: #fff;
    transition: all .5s;
}

.cv_item_box_btn a:hover {
    opacity: .8;
}

@media (min-width: 750px) {
    .cv_item {
        padding-top: 61px;
        padding-bottom: 56px;
        background-image: url("../../../images/product-detail/clearvision/item/bk.png");
        background-size: unset;
    }

    .cv_item h2 {
        margin-bottom: 63px;
    }

    .cv_item_box {
        padding: 1.6% 7.45% 8.4%;
    }

    .cv_item_box_head {
        display: grid;
        grid-template-columns: 40% 1fr;
        grid-template-areas: "areaA areaB""areaA areaC";
        align-content: center;
        gap: 12px 26px;
    }

    .cv_item_box_head_logo {
        display: flex;
        grid-area: areaB;
        align-items: flex-end;
        margin: 0;
    }

    .cv_item_box_head_logo img {
        max-width: 317px;
        margin: 0;
    }

    .cv_item_box_head_img {
        grid-area: areaA;
        justify-self: end;
        margin: 0;
    }

    .cv_item_box_head_img img {
        max-width: 242px;
    }

    .cv_item_box_head_point {
        grid-area: areaC;
        margin: 0;
        padding: 0;
        padding-left: 12px;
    }

    .cv_item_box_head_point_inner {
        justify-content: flex-start;
    }

    .cv_item_box_head_point_img {
        max-width: 122px;
        margin-right: 24px;
    }

    .cv_item_box_head_point_list {
        font-size: 26px;
        line-height: 1.54;
    }

    .cv_item_box_list01_box {
        display: flex;
        justify-content: center;
        margin-top: 14px;
        padding: 22px 27px 25px 0;
    }

    .cv_item_box_list01 {
        font-size: 28px;
        line-height: 1.79;
    }

    .cv_item_box_howto {
        margin-top: 57px;
        font-size: 24px;
        line-height: 1.75;
    }

    .cv_item_box_howto dt {
        margin-bottom: 13px;
        padding-bottom: 12px;
    }

    .cv_item_box_btn_wrap {
        flex-direction: row;
        justify-content: center;
        margin-top: 60px;
        gap: 35px;
    }

    .cv_item_box_btn {
        max-width: 368px;
        height: 76px;
        border-radius: 35px;
        font-size: 32px;
    }
}

@media (min-width: 750px) {
    .cv_item_box_head_logo {
        -ms-grid-row: 1;
        -ms-grid-column: 3;
    }

    .cv_item_box_head_img {
        -ms-grid-row: 1;
        -ms-grid-row-span: 3;
        -ms-grid-column: 1;
    }

    .cv_item_box_head_point {
        -ms-grid-row: 3;
        -ms-grid-column: 3;
    }
}

@media (min-width: 1024px) {
    .cv_item_box_head {
        gap: 12px 9.88%;
    }
}
