@charset "UTF-8";

/* SP */
@media (max-width: 767px) {
}

/* TB */
@media (min-width: 768px) and (max-width: 1279px) {
}

/* TB & PC */
@media (min-width: 768px) {
}

/* PC */
@media (min-width: 1280px) {
}

/* asterisk */
.asterisk {
    vertical-align: top;
    font-size: 1rem;!important
}

.asterisk--sm {
    font-size: 1rem;
}

.performance-engine__type {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.performance-engine__data {
    text-align: left;
}

/* SP */
@media (max-width: 767px) {
    .performance-engine__list {
        padding: 20px 0 0 0;
    }

    .performance-engine__type {
        padding: 0 0 28px 0;
    }

    .performance-engine__img {
        text-align: center;
        width: 100%;
    }

    .performance-engine__img > img {
        width: 80%;
    }

    .performance-engine__data {
        padding: 12px 0 0 0;
    }

    .performance-engine__name1 {
        font-size: 1.2rem;
        font-weight: bold;
        line-height: 1.25;
    }

    .performance-engine__name2 {
        font-size: 1.4rem;
        font-weight: bold;
        padding: 2px 0 0 0;
    }

    .performance-engine__txt {
        font-size: 1.2rem;
        line-height: 1.916666;
        padding: 12px 0 0 0;
    }
}

/* TB */
@media (min-width: 768px) and (max-width: 1279px) {
    .performance-engine__type {
        padding: 16px 0 0 0;
    }

    .performance-engine__img {
        width: 40%;
    }

    .performance-engine__img > img {
        width: 100%;
    }

    .performance-engine__data {
        box-sizing: border-box;
        width: 60%;
    }

    .performance-engine__data-inner {
        padding: 0 0 0 24px;
    }
}

/* TB & PC */
@media (min-width: 768px) {
    .performance-engine__name1 {
        font-size: 1.4rem;
        font-weight: bold;
        line-height: 1.25;
    }

    .performance-engine__name2 {
        font-size: 1.8rem;
        font-weight: bold;
        padding: 2px 0 0 0;
    }

    .performance-engine__txt {
        font-size: 1.2rem;
        line-height: 1.66666;
        padding: 12px 0 0 0;
    }

    .performance-engine__data {
        position: relative;
    }

    .performance-engine__data-inner {
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
    }
}

/* PC */
@media (min-width: 1280px) {
    .performance-engine__type {
        padding: 16px 98px 0 98px;
    }

    .performance-engine__img,
    .performance-engine__img img {
        width: 290px;
    }

    .performance-engine__data {
        box-sizing: border-box;
        width: 538px;
    }

    .performance-engine__data-inner {
        padding: 0 40px;
    }

    .performance-engine__name1 br {
        display: none;
    }
}

.performance-engine__info-txt {
    text-align: left;
}

.performance-engine__info-notice {
    text-align: left;
}

/* SP */
@media (max-width: 767px) {
    .performance-engine__info {
        padding: 27px 14px 27px 14px;
    }

    .performance-engine__info {
        border: 1px solid #bdbdbd;
        box-sizing: border-box;
        margin: 12px auto 0 auto;
    }

    .performance-engine__info-name1 {
        font-size: 1.4rem;
        font-weight: bold;
        line-height: 1;
    }

    .performance-engine__info-name2 {
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1.5;
    }

    .performance-engine__info-txt {
        font-size: 1.2rem;
        line-height: 1.6666666;
        padding: 18px 0 0 0;
    }

    .performance-engine__info-notice {
        font-size: 1rem;
        line-height: 1.8;
        padding: 8px 0 0 0;
    }
}

/* TB */
@media (min-width: 768px) and (max-width: 1279px) {
    .performance-engine__info {
        padding: 28px 36px 32px 36px;
    }
}

/* TB & PC */
@media (min-width: 768px) {
    .performance-engine__info {
        border: 1px solid #bdbdbd;
        box-sizing: border-box;
        margin: 48px auto 0 auto;
    }

    .performance-engine__info-name1 {
        font-size: 1.4rem;
        font-weight: bold;
        line-height: 1;
    }

    .performance-engine__info-name2 {
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1;
    }

    .performance-engine__info-txt {
        font-size: 1.2rem;
        line-height: 1.6666666;
        padding: 20px 0 0 0;
    }

    .performance-engine__info-notice {
        font-size: 1rem;
        line-height: 1.8;
        padding: 8px 0 0 0;
    }
}

/* PC */
@media (min-width: 1280px) {
    .performance-engine__info {
        padding: 30px 44px 36px 44px;
        width: 740px;
    }
}

.main-message--performance {

}

/* TB & PC */
@media (min-width: 768px) {
    .main-message--performance {
        padding-top: 40px;
    }
}

/* PC */
@media (min-width: 1280px) {
    .main-message--performance {
        font-size: 1.6rem;
        padding-top: 50px;
    }
}

.feature-main__sttl {
    font-size: 1.2rem;
    text-align: left;
    font-weight: bold;
    padding-top: 20px;
}

/* TB & PC */
@media (min-width: 768px) {
    .feature-main__sttl {
        font-size: 1.2rem;
        padding: 33px 0 0 16px;
    }
}

/* PC */
@media (min-width: 1280px) {
    .feature-main__sttl {
        font-size: 1.4rem;
        padding: 0 0 0 32px;
    }
}

.features-attention {
    text-align: left;
    font-size: 1.0rem;
    padding-top: 20px;
}

/* TB & PC */
@media (min-width: 768px) {
    .features-attention {
        padding: 35px 16px 0 16px;
    }
}

/* PC */
@media (min-width: 1280px) {
    .features-attention {
        padding: 40px 32px 0 32px;
    }
}

.features-main__sttl--safety {
    font-size: 1.2rem;
    text-align: left;
    font-weight: bold;
    margin-top: 18px;
}

/* TB & PC */
@media (min-width: 768px) {
    .features-main__sttl--safety {
        padding-left: 16px;
        font-size: 1.6rem;
    }
}

/* PC */
@media (min-width: 1280px) {
    .features-main__sttl--safety {
        padding-left: 32px;
        font-size: 1.6rem;
    }
}

/* SP */
@media (max-width: 767px) {
    .safety-main__sttl {
        font-size: 1.2rem;
        font-weight: bold;
        padding: 18px 0 0 0;
    }

}

/* TB */
@media (min-width: 768px) and (max-width: 1279px) {
    .safety-main__sttl {
        padding: 20px 14px 0 14px;
    }
}

/* TB & PC */
@media (min-width: 768px) {
    .safety-main__sttl {
        font-size: 1.6rem;
        font-weight: bold;
        text-align: left;
    }

}

/* PC */
@media (min-width: 1280px) {
    .safety-main__sttl {
        padding: 20px 0 0 0;
    }
}

.safety-main__txt {
    font-size: 1rem;
    line-height: 2;
    padding: 6px 0 0 0;
}

/* TB */
@media (min-width: 768px) and (max-width: 1279px) {
    .safety-main__txt {
        padding: 8px 14px 0 14px;
    }
}

/* TB & PC */
@media (min-width: 768px) {
    .safety-main__txt {
        font-size: 1.2rem;
        line-height: 1.666666;
        text-align: left;
    }
}

/* PC */
@media (min-width: 1280px) {
    .safety-main__txt {
        padding: 8px 0 0 0;
    }
}

/* PC */
@media (min-width: 1280px) {
    .features-topics__list {
        margin-top: 30px;
    }
}

/* TB */
@media (min-width: 768px) {
    .l-border-bottom--engine {
        padding-bottom: 44px;
    }
}

/* PC */
@media (min-width: 1280px) {
    .l-border-bottom--engine {
        padding-bottom: 64px;
    }
}

/* PC */
@media (min-width: 1280px) {
    .features-topics__img--safety {
        margin-top: 15px;
    }
}

/* TB & PC */
@media (min-width: 768px) {
    .visible--tablet {
        display: block !important;
    }
}

/* PC */
@media (min-width: 1280px) {
    .visible--tablet {
        display: none !important;
    }
}

.visible--pc {
    display: none;
}

/* PC */
@media (min-width: 1280px) {
    .visible--pc {
        display: block;
    }
}

/* TB & PC */
@media (min-width: 768px) {
    .visible--sp {
        display: none;
    }
}

.safety__img {
    text-align: center;
}

/* TB & PC */
@media (min-width: 768px) {
    .design-interior li, .safety li {
        box-sizing: border-box;
    }

    .design-interior .l-2-column__left, .safety .l-2-column__left {
        padding: 0 16px 0 0;
    }

    .design-interior .l-2-column__right, .safety .l-2-column__right {
        padding: 0 0 0 16px;
    }
}
