@charset "UTF-8";

/* common
------------------------------------------------------*/
.strengthsLayout .h2_wrap .inner {
    padding-left: 70px;
    width: calc(96% - 70px);
}
.strengthsLayout .h2_wrap .inner::before {
  background-image: url("../../common/img/icon02.png");
  width: 50px;
  height: 50px;
}


            /* 【タブレット用のスタイル記述】 */
            @media screen and (min-width: 760px) {
                .strengthsLayout .h2_wrap .inner {
                    padding-left: 110px;
                    width: calc(96% - 110px);
                }
                .strengthsLayout .h2_wrap .inner::before {
                  width: 81px;
                  height: 81px;
                }
            }
            /* 【PC用のスタイル記述】 */
            @media screen and (min-width: 960px) {
            }



/* c01
------------------------------------------------------*/
.strengthsLayout #c01 .bg {
    background: url("../img/strengths_img01.png")no-repeat center center/cover;
    width: 90%;
    max-width: 1600px;
    height: 110px;
    margin: 60px 0;
}
.strengthsLayout #c01 .flex_box02 {
    position: relative;
    padding: 60px 20px 40px;
    background-color: rgba(223, 229, 229, 0.7);
    border-radius: 16px;
}
.strengthsLayout #c01 .flex_box02::before {
    position: absolute;
    content: "";
    background: url("../../common/img/circle_icon.png")no-repeat center center/cover;
    width: 78px;
    height: 78px;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
}
.strengthsLayout #c01 .flex_box02 h4 {
    text-align: center;
    font-size: 1.3rem;
    margin-bottom: 20px;
    font-weight: bold;
    line-height: 1.3;
}
.strengthsLayout #c01 .flex_box02 h4 span {
    display: block;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 2px dotted #999;
    color: #d80e19;
    font-size: 1.1rem;
}
.strengthsLayout #c01 .flex {
    gap: 80px 4%;
    margin-top: 80px;
}


            /* 【タブレット用のスタイル記述】 */
            @media screen and (min-width: 760px) {
                .strengthsLayout #c01 .bg {
                    height: 400px;
                    margin: 100px 0;
                }
                .strengthsLayout #c01 .flex_box02 {
                    width: calc(88% / 3 - 80px);
                    padding: 70px 40px 60px;
                }
                .strengthsLayout #c01 .flex {
                    margin-top: 0;
                }
            }
            /* 【PC用のスタイル記述】 */
            @media screen and (min-width: 960px) {
            }
            /* 【PC用のスタイル記述】 */
            @media screen and (min-width: 1600px) {
                .strengthsLayout #c01 .bg {
                    background-position: center left;
                }
            }



/* c02
------------------------------------------------------*/
.strengthsLayout #c02 .flex {
    margin: 60px auto 0;
    max-width: 630px;
}
.strengthsLayout #c02 .btn {
    margin: 40px auto 0;
}
.strengthsLayout #c02 .flex_box01 {
    background-color: #efe5e5;
    border-radius: 16px;
    padding: 40px 20px;
    text-align: center;
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 1.3;
}
.strengthsLayout #c02 .flex {
    gap: 30px 10%;
}
.strengthsLayout #c02 .flex_box01 .img {
    margin-bottom: 20px;
    height: 68px;
    display: flex;
    justify-content: center;
    align-items: center;
}


            /* 【タブレット用のスタイル記述】 */
            @media screen and (min-width: 760px) {
                .strengthsLayout #c02 .flex {
                    justify-content: center;
                }
                .strengthsLayout #c02 .btn {
                    margin-top: 60px;
                }
                .strengthsLayout #c02 .flex_box01 {
                    width: calc(90% / 2 - 40px);
                    font-size: 1.3rem;
                }
            }
            /* 【PC用のスタイル記述】 */
            @media screen and (min-width: 960px) {
            }