@charset "utf-8";

.flex{ display: flex; justify-content: space-between; flex-wrap: wrap;}
.btn__more {  display: block; margin: 0 auto; border: 1px solid #424242; position: relative; transition: 0.2s linear; margin-top: 70px; width: 224px; height: 52px; margin: 114px 0px 0px;}
.btn__more::after { content: ""; position: absolute; display: inline-block; width: 0;height: 0; border-top: 8px solid transparent; border-left: 14px solid #000000; border-bottom: 8px solid transparent; bottom: 7px; right: 7px;}
.btn__more span { font-size: 1.6rem; line-height: 1; position: absolute; top: 8px; left: 10px;}
.btn__more:hover{ background: #000000; color: #ffffff;}
.btn__more:hover::after{ border-left-color: #ffffff;}


.contents{  padding: 100px 0 90px; background: #f5f5f5;}
.sdgs .titBox{ padding-bottom: 30px;}
.sdgs .subtitBox{ padding: 100px 0 95px;}

h2{ font-size: 5rem; font-weight: bold; max-width: 1200px; width: calc(100% - 50px); line-height: 1.5; margin:0 auto;}
h2 span{ display: block; font-size: clamp(16px,1.5vw,1.8rem); }
h4{ font-size: 3.6rem; line-height: 1.5;}

.imgBox{ background: #2d2625; padding: 25px 0 45px;}
.imgBox figure{ margin: 0 auto; text-align: center;}

.copy{ font-size: 2.4rem; line-height: 1.8; font-weight: bold; padding: 85px 0 90px; text-align: center;}
.copy figure {margin-top: 90px;}

.mv { position: relative;}
.mv h3{ position: absolute; top: 25.8%; left: 50%; transform: translateX(-50%); width: 100%; text-align: center;  color: #fff; font-size: 7.8vw; letter-spacing: 0.08em; line-height: 1;}
.box{ padding: 55px 0; border-top: 1px solid #000;}
.box:last-of-type{ border-bottom: 1px solid #000;}
.box h4{ margin-bottom: 20px;}

.box { align-items:flex-end;}
.box figure{ width: 100%; text-align: center; }
.box .txtBox{ width: 58.75%;}
.box ul{ width: 31.33%;}
.box ul li{ flex-basis: calc((100% - 10.6%)/2);}

.sdgs .btn_Box{ justify-content: center; gap: 25px;}
.sdgs .btn_Box a{  display: inline-block; padding: 0 0 0 10px;}

.sdgs .circle{ margin: 70px auto 0; text-align: center;}

@media (max-width: 1400px){
    h2{ font-size: 4.5rem; }
}

@media (max-width: 768px){

    .btn__more { width: 170px; height: 40px; margin: 70px 0 0 0;}
    .btn__more span { font-size: 1.3rem; left: 5px;}
    .btn__more::after { border-top: 6px solid transparent; border-left: 10px solid #000000; border-bottom: 6px solid transparent;}


    .contents{  padding: 70px 0 65px;}

    .sdgs .titBox{ padding-bottom: 20px;}
    h2{ font-size: clamp( 2rem , 6.5vw, 5rem); margin-bottom: 0;}
    h4{ font-size: min(4.5vw, 3.6rem); }

    .copy{ font-size: clamp( 1.6rem, 3.12vw , 2.4rem); padding: 50px 0;}
    .copy figure {margin-top: 25px;}

    .mv h3{  position: absolute; top: 26.22%; left: 50%; transform: translateX(-50%);  color: #fff; font-size: 18.22vw;}

    .box{ padding: 30px 0;}
    .box h4{ margin-bottom: 15px;}
    .box figure{ margin-top: 15px;}

    .box:not(:first-of-type) { margin-top: 25px;}
    .box .txtBox{ width: 100%;}
    .box ul{ width: 100%;}
    .box ul li{ flex-basis: calc((100% - 9%)/2);}

    .sdgs .circle{ margin: 35px auto 0; width: 39.19%;}

    .sdgs .btn_Box{ flex-direction: column; margin-top: 35px; gap:15px;} 
    .sdgs .btn_Box li{ margin: 0 auto ;}
}
