/* reason__heading
******************************************************* */
.reason__heading { font-size: 1.3333em; font-weight: 700; line-height: 1.5; text-align: center; position: relative; padding-bottom: 15px; }
.reason__heading::after { content: ""; position: absolute; bottom: 0px; left: calc(50% - 1200px); width: 2400px; height: 5px; }
@media only screen and (max-width:767px) {
.reason__heading { font-size: 1.4117em; text-align: left; padding-bottom: 10px; }
.reason__heading small { font-size: 0.6666em; }
}

/* reason__title
******************************************************* */
.reason__title { position: relative; }
.reason__title-line { position: absolute; top: 0px; left: calc(50% - 1200px); width: 2400px; }
.reason__title-icon1 { position: absolute; top: -50px; left: calc(50% - 314px); width: 217px; }
.reason__title-icon2 { position: absolute; top: -50px; left: calc(50% + 155px); width: 160px; }
.reason__title-heading { margin: 0 auto; padding-top: 70px; width: 628px; }
.reason__title-heading span { display: block; }
.reason__title-text { margin-top: 80px; }
.m-info-area__bnr.reason__title-bnr {margin-top: 80px;}

@media only screen and (max-width:767px){
.reason__title-icon1 { top: -25px; left: calc(50% - 135px); width: 148px; }
.reason__title-icon2 { top: -25px; left: calc(50% + 20px); width: 112px; }
.reason__title-heading { margin: 0 auto; padding-top: 50px; width: 260px; }
.reason__title-text { margin-top: 40px; }
.m-info-area__bnr.reason__title-bnr { margin-top: 40px;}
}

/* reason__sdgs
******************************************************* */
.reason__sdgs { overflow: hidden; }
.reason__sdgs .reason__heading { color: #D93924; }
.reason__sdgs .reason__heading::after { background: url("/sustainable/shared/img/line_red.png") left top/cover no-repeat; }
.reason__sdgs-info { margin: 80px auto 0 auto; max-width: 530px; }
.reason__sdgs-info dt { text-align: center; }
.reason__sdgs-info dt img { width: 260px; }
.reason__sdgs-info dd { margin-top: 40px; overflow: hidden; }
.reason__sdgs-info dd ol { display: flex; justify-content: space-between; flex-wrap: wrap; margin: -10px -5px 0 -5px; }
.reason__sdgs-info dd ol li { margin: 10px 5px 0 5px; width: 80px; }
@media only screen and (max-width:767px){
.reason__sdgs-info { margin: 40px 0 0 0; max-width: none; }
.reason__sdgs-info dd { margin-top: 20px; }
.reason__sdgs-info dd ol li { width: calc(33.3333% - 10px); }
}






