@charset "UTF-8";

.box01 {
    padding: 55px 60px 30px;
    border: 5px solid #35AA86;
    border-radius: 0;
    position: relative;
    margin-bottom: 130px;
}

.box01:after {
    content: "";
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    width: 50px;
    height: 30px;
    background-image: url("../images/strength/icon_01.png");
    margin: auto;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
    .box01:after {
        background-image: url("../images/strength/icon_01@2x.png");
        background-size: 50px 30px;
    }
}

.box01 .sb_l {
    width: 480px;
}

.box01 .sb_r {}

.box01 h2 {
    margin-bottom: 20px;
}

.box01 .sb_l p {
    margin-bottom: 20px;
    letter-spacing: 0;
}

.box02 {
    background-color: #fff;
    box-shadow: 4px 4px 8px #aaa;
    display: flex;
    justify-content: space-between;
    margin-bottom: 100px;
    padding: 30px;
    border-radius: 5px;
    background-image: url("../images/strength/icon_left.png");
    background-position: left bottom;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
    .box02 {
        background-image: url("../images/strength/icon_left@2x.png");
        background-size: 100px 16px;
    }
}

.inner02_l {
    padding: 0 40px 0 35px;
    max-width: 590px;
    border-right: 1px solid #B3B3B3;

}

.inner02_r {
    width: 490px;
}

.box02 h2 {
    font-size: 50px;
    line-height: 1.3em;
    color: #4D4D4D;
    margin-top: -60px;
    font-family: 'Century Gothic', 'Avenir-Light', sans-serif;
    margin-bottom: 40px;
}

.box02 h2::first-letter {
    color: #35AA86;
}

.box02 h3 {
    color: #35AA86;
    display: flex;
    font-size: 26px;
    line-height: 1.4em;
    align-items: center;
    margin-bottom: 20px;
}

.box02 h3 img {
    margin-right: 15px;
}


.box03 {
    background-image: url("../images/strength/icon_right.png");
    background-position: bottom right;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
    .box03 {
        background-image: url("../images/strength/icon_right@2x.png");
        background-size: 100px 16px;
    }
}

.box04 {
    background-image: url("../images/strength/icon_left.png");
    background-position: bottom left;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
    .box04 {
        background-image: url("../images/strength/icon_left@2x.png");
        background-size: 100px 16px;
    }
}

.box03,
.box04 {
    background-color: #fff;
    box-shadow: 4px 4px 8px #aaa;
    display: flex;
    justify-content: space-between;
    margin-bottom: 100px;
    border-radius: 5px;
}

.box03 h2 {
    font-size: 50px;
    line-height: 1.3em;
    color: #4D4D4D;
    margin-top: -30px;
    font-family: 'Century Gothic', 'Avenir-Light', sans-serif;
    margin-bottom: 40px;
}


.box04 h2 {
    font-size: 50px;
    line-height: 1.3em;
    color: #4D4D4D;
    margin-top: -30px;
    font-family: 'Century Gothic', 'Avenir-Light', sans-serif;
    margin-bottom: 40px;
}

.box03 h2::first-letter,
.box04 h2::first-letter {
    color: #35AA86;
}

.box03 h3,
.box04 h3 {
    color: #35AA86;
    display: flex;
    font-size: 26px;
    line-height: 1.4em;
    align-items: center;
    margin-bottom: 20px;
    letter-spacing: 0;
}

.box03 h3 img,
.box04 h3 img {
    margin-right: 15px;
}

.inner03_r {
    padding: 0 45px 0 35px;
    max-width: 590px;
}

.inner04_l {
    padding: 0 45px 0 55px;
    max-width: 600px;

}






/*-------------------------------
media
--------------------------------*/


@media (max-width: 767px) {

    .box01 {
        padding: 55px 15px 30px;

    }

    .box01 .sb_l {
        width: 100%;
        margin-bottom: 30px;
    }

    .box01 .sb_r {
        text-align: center;
    }

    .box02 {
        padding: 20px;
        display: block;
    }

    .inner02_l {
        padding: 0;
        border-right: 0;
        margin-bottom: 30px;
        max-width: 100%;
    }

    .inner02_r {
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }

    .box03 {
        flex-direction: column;
    }

    .inner03_l {
        order: 2;
        text-align: center;
        margin-bottom: 40px;

    }

    .inner03_r {
        order: 1;
        margin-bottom: 30px;
        padding: 0 20px;
        max-width: 100%;
    }

    .box04 {
        flex-direction: column;
    }

    .inner04_l {
        max-width: 100%;
        padding: 0 20px;
        margin-bottom: 30px;
    }

    .inner04_r {
        padding-bottom: 40px;
        text-align: center;
    }

    .box02 h3,
    .box03 h3,
    .box04 h3 {
        font-size: 22px;
        display: block;
    }

    .box02 h3 img,
    .box03 h3 img,
    .box04 h3 img {
        padding-bottom: 10px;
    }
    .inner04_r .sp_on,
    .inner03_l .sp_on{
        margin: auto;
    }


}
