@charset "utf-8";


/* ==================================================================
    pureness.css

=================================================================== */

/* ==================================================================
   ■ 共通指定
=================================================================== */
.contents .text._s {
    margin-bottom: 0;
}
.contents .text._l {
    font-size: 2rem;
    line-height: 1.5;
    margin-bottom: 20px;
}

.contents .buttonStyle.light-blue {
    max-width: 348px;
    margin-top: 40px
}
    .contents .buttonStyle.light-blue a {
        width: 100%;
        font-size: 1.6rem;
        padding: 17px 32px;
        text-align: center;
    }
    .contents .buttonStyle.light-blue a:hover {
        opacity: 1;
    }

/* --------------------------------
   □  accent
-------------------------------- */
#pureness .accent {
    background-image: url(../../images/pureness/accent_pc.jpg);
}
    #pureness .accent .heading {
        text-transform: capitalize;
        margin-bottom: 20px;
    }

/* --------------------------------
    □  explain
-------------------------------- */
#explain .boxArea .inner {
    max-width: 100%;
}
#explain .lv3.title {
    margin-bottom: 60px;
}
#explain .boxArea .txtArea {
    width: 40%;
}
#explain .boxArea .text.bold {
    font-size: 1.8rem;
    margin-bottom: 20px;
}
#explain .boxArea figure {
    width: 50%;
}
#explain .image.text-center {
    text-align: center!important;
}
#explain .boxArea .text-list.text._s {
    font-size: 1.3rem;
    margin: 20px 0;
}
#explain .boxArea .text-list strong {
    width: 135px;
}
#explain .boxArea .text-list span {
    width: calc(100% - 135px);
}

/* --------------------------------
   □  背景設定
-------------------------------- */
#explain .boxArea {
    position: relative;
    margin: 0 calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    border: 1px solid #D5E5FF;
}
    #explain .boxArea:not(:last-child) {
        margin-bottom: 100px;
    }
#explain .boxArea:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
    #explain .boxArea:nth-of-type(odd):before {
        background: linear-gradient(to right, #F2F7FF 0%, #F2F7FF 40%, #fff 50%, #fff 100%);
    }
    #explain .boxArea:nth-of-type(even):before {
        background: linear-gradient(to left, #F2F7FF 0%, #F2F7FF 40%, #fff 50%, #fff 100%);
    }
    #explain .boxArea .txtArea {
        padding: 60px 4%;
    }

/* --------------------------------
   □  feature
-------------------------------- */
#feature {
    padding-top: 0;
}
#feature ul.list li:nth-child(-n+2) {
    margin-bottom: 60px;
}
#feature ul.list li .txtArea .lv4.en {
    margin-bottom: 30px;
}
#feature ul.list li figure {
    margin-top: 30px;
}

/* --------------------------------
   □  simulation
-------------------------------- */
#simulation {
    padding-top: 0;
}
#simulation .container .inner {
    width: 100%;
    max-width: 1050px;
    margin-left: auto;
    margin-right: auto;
}
#simulation .text._s {
    margin-bottom: 60px;
}

/* ◆ シミュレーション共通
-------------------------------- */
#simulation .swiper * {
    box-sizing: border-box;
}
#simulation .swiper img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}
.c-slider .swiper-button-next,
.c-slider .swiper-button-prev,
.c-slider .swiper-pagination {
    display: none
}
.c-slider:not(.swiper-container-initialized) .swiper-wrapper.is-center {
    justify-content: center
}
.c-slider:not(.swiper-container-initialized) .swiper-slide-duplicate {
    display: none
}
.c-slider.swiper-container-initialized .swiper-button-next,
.c-slider.swiper-container-initialized .swiper-button-prev,
.c-slider.swiper-container-initialized .swiper-pagination {
    display: block;
    outline: none
}

/* 左右の矢印
-------------------------------- */
.c-slider.swiper-container-initialized .swiper-button-next,
.c-slider.swiper-container-initialized .swiper-button-prev {
    top: 0;
    width: 37px;
    height: 100%;
    margin: 0;
    background-image: none
}
    .c-slider.swiper-container-initialized .swiper-button-next:after,
    .c-slider.swiper-container-initialized .swiper-button-prev:after {
        display: block;
        position: absolute;
        top: 50%;
        width: 37px;
        height: 37px;
        background-position: 50%;
        background-size: contain;
        content: ""
    }

.c-slider.swiper-container-initialized .swiper-button-prev {
    left: 0
}
    .c-slider.swiper-container-initialized .swiper-button-prev:after {
        left: 0;
        transform: translateY(-50%);
        background-image: url(../../images/justfortwo/ico_slide_arrow_prev.svg)
    }
.c-slider.swiper-container-initialized .swiper-button-next {
    right: 0
}
    .c-slider.swiper-container-initialized .swiper-button-next:after {
        right: 0;
        transform: translateY(-50%);
        background-image: url(../../images/justfortwo/ico_slide_arrow_next.svg)
    }

.c-slider-outer-container {
    overflow: hidden;
}
.c-slider-outer-container .c-slider {
    overflow: visible
}
.c-slider-outer-container .swiper-slide {
    position: relative
}
.c-slider-outer-container .swiper-slide .content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateY(100%)
}
.c-slider-outer-container .swiper-slide .title {
    margin: 1em 0 .5em
}
.c-slider-outer-container .swiper-container-initialized .swiper-slide .content {
    display: none
}
.c-slider-outer-container .swiper-container-initialized .swiper-slide.swiper-slide-active .content {
    display: block
}
    @media (min-width: 768px) {
        .c-slider-outer-container .swiper-slide .title {
            font-size: 2.0rem;
        }
    }
    @media (max-width: 767.98px) {
        .c-slider-outer-container .swiper-slide .title {
            font-size: 1.8rem;
        }
    }

/* ◆ 全周テクスチャー シュミレーション
#sect-straight .c-simulation-straight-container
-------------------------------- */
#simulation .sect-wave-simulation#sect-straight {
    width: 100%;
    max-width: 1244px;
    margin-left: auto;
    margin-right: auto;
}
#simulation .c-simulation-straight-container {
    position: relative
}
    @media (min-width: 768px) {
        #simulation .c-simulation-straight-container {
            display:flex;
            align-items: flex-start
        }
    }
    @media (min-width: 768px) {
        #simulation .c-simulation-straight-container .image {
            width: 60%
        }
    }
    @media (max-width: 999px) and (min-width: 768px) {
        #simulation .c-simulation-straight-container .image {
            width: 55%
        }
    }

#simulation .c-simulation-straight-container .change-buttons {
    position: relative
}
    /* グレーの背景
    -------------------------------- */
    #simulation .c-simulation-straight-container .change-buttons:before {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 0;
        width: 33.33333%;
        height: calc(100% - 34px);
        background: #F8F8F8;
        transform: translateX(-50%)
    }
    /* Xの画像
    -------------------------------- */
    #simulation .c-simulation-straight-container .change-buttons:after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: calc(50% - 27px);
        width: 20px;
        height: 20px;
        background: url(../../images/justfortwo/bg_cross.svg) no-repeat 50%;
        background-size: contain;
        transform: translateX(-50%)
    }
    @media (min-width: 768px) {
        #simulation .c-simulation-straight-container .change-buttons {
            width:40%
        }
    }
    @media (max-width: 999px) and (min-width: 768px) {
        #simulation .c-simulation-straight-container .change-buttons {
            width:45%
        }
    }

#simulation .c-simulation-straight-container .change-buttons .lv5.text {
    font-size: 1.5rem;
    letter-spacing: 0;
    line-height: 1.5;
    margin-bottom: 10px;
}
    @media (min-width: 768px) {
        #simulation .c-simulation-straight-container .change-buttons .lv5.text {
            font-size: 1.6rem;
        }
    }
#simulation .c-simulation-straight-container .change-container {
    position: relative;
    border-top: 1px solid #ededed;
    border-bottom: 1px solid #ededed;
    padding: 0;
}
#simulation .c-simulation-straight-container .change-container:first-of-type {
    margin-bottom: 15px;
}
    @media (min-width: 768px) {
        #simulation .c-simulation-straight-container .change-container:first-of-type {
            margin-bottom: 30px;
        }
    }

#simulation .c-simulation-straight-container .change-container .swiper-slide {
    padding: 15px 10px
}
#simulation .c-simulation-straight-container .change-container .swiper-slide img {
    margin-bottom: 10px;
    max-width: 58px;
}
#simulation .c-simulation-straight-container .change-container .swiper-slide .text {
    font-size: 1.2rem;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 0;
}
    @media (min-width: 768px) {
        #simulation .c-simulation-straight-container .change-container .swiper-slide .text {
            font-size: 1.4rem;
            line-height: 1.3;
            padding:0 10px;
        }
    }
    @media (max-width: 1200px) and (min-width: 768px) {
        #simulation .c-simulation-straight-container .change-container .swiper-slide {
            padding:15px 0
        }
        #simulation .c-simulation-straight-container .change-container .swiper-slide img {
            max-width: 66px;
        }
        #simulation .c-simulation-straight-container .change-container .swiper-slide .text {
            font-size: 1.3rem;
        }
    }

/* 左右の矢印
-------------------------------- */
#simulation .c-simulation-straight-container .change-container .swiper-container-initialized .swiper-button-next:after,
#simulation .c-simulation-straight-container .change-container .swiper-container-initialized .swiper-button-prev:after {
    width: 30px;
    height: 30px;
}

#simulation .c-simulation-straight-container .change-container .swiper-container-initialized .swiper-button-prev:after {
    left: 0;
}
#simulation .c-simulation-straight-container .change-container .swiper-container-initialized .swiper-button-next:after {
    right: 0;
    left: auto;
}
    @media (min-width: 768px) {
        #simulation .c-simulation-straight-container .change-container .swiper-container-initialized .swiper-button-next:after,
        #simulation .c-simulation-straight-container .change-container .swiper-container-initialized .swiper-button-prev:after {
            width: 37px;
            height: 37px;
        }
    }

/* --------------------------------
    □  morebtn
-------------------------------- */
#morebtn {
    padding-top: 0;
}


@media (max-width: 1600px) and (min-width: 768px) {
}


@media (max-width: 1400px) and (min-width: 768px) {
}


@media (max-width: 1200px) and (min-width: 768px) {
    /* --------------------------------
       □  explain
    -------------------------------- */
    #explain .boxArea figure {
        width: 52%;
    }
    #explain .boxArea .txtArea {
        width: 46%;
    }
}


/* タブレット用
-------------------------------------------- */
@media (max-width: 999px) and (min-width: 768px) {
    /* --------------------------------
       □  explain
    -------------------------------- */
    .contents .buttonStyle.light-blue {
        margin-top: 30px;
    }
}


@media only screen and (max-width : 767px) {
    /* ==================================================================
       ■ 共通指定
    =================================================================== */
    .contents .text,
    .contents .text._s {
        margin-bottom: 0;
    }
    .contents .text._l {
        font-size: 1.8rem;
    }

    .contents .buttonStyle.light-blue {
        max-width: 280px;
        margin-top: 20px;
    }
        .contents .buttonStyle.light-blue a {
            font-size: 1.4rem;
            padding: 12px;
        }

    /* --------------------------------
       □  accent
    -------------------------------- */
    #pureness .accent {
        background-image: url(../../images/pureness/accent_sp.jpg);
        background-position: center;
    }
        #pureness .accent .txtArea {
            width: 92%;
            top: 8%;
            bottom: auto;
            left: 50%;
            transform: translateX(-50%);
            -webkit-transform: translateX(-50%);
        }

    /* --------------------------------
       □  explain
    -------------------------------- */
    #explain .lv3.title {
        margin-bottom: 30px;
    }
    #explain .boxArea {
        border: none;
    }
    #explain .boxArea .txtArea {
        padding: 10px 0 40px;
        position: relative;
    }
        #explain .boxArea .text.bold {
            font-size: 1.6rem;
            margin-bottom: 10px;
        }
    #explain .boxArea figure img {
        width: 100%;
    }
    #explain .imgArea {
        margin-bottom: 30px;
    }
    #explain .boxArea .text-list span {
        margin-bottom: 10px;
    }

    /* --------------------------------
       □  背景設定
    -------------------------------- */
    #explain .boxArea:not(:last-child) {
        margin-bottom: 40px;
    }
    #explain .boxArea:nth-of-type(odd):before {
        /* background: linear-gradient(to right, #F2F7FF 0%, #F2F7FF 60%, #fff 100%); */
        background: linear-gradient(to top, #F2F7FF 0%, #F2F7FF 50%, #fff 60%, #fff 100%);
    }

    #explain .boxArea:nth-of-type(even):before {
        /* background: linear-gradient(to left, #F2F7FF 0%, #F2F7FF 60%, #fff 100%); */
        background: linear-gradient(to top, #F2F7FF 0%, #F2F7FF 50%, #fff 60%, #fff 100%);
    }

    /* --------------------------------
       □  feature
    -------------------------------- */
    #feature ul.list li:nth-child(-n+2),
    #feature ul.list li:nth-last-child(n+2) {
        margin-bottom: 40px;
    }
    #feature ul.list li .txtArea .lv4.en {
        margin-bottom: 20px;
    }
    #feature ul.list li figure {
        margin-top: 10px;
    }

    /* --------------------------------
       □  simulation
    -------------------------------- */
    #simulation .text._s {
        margin-bottom: 40px;
    }

    /* --------------------------------
       □  morebtn
    -------------------------------- */

}