/* ―――――――――――――― solution ―――――――――――――― */

.solution__inner {position: relative; width: 1450px; margin: 140px auto 200px; }
.solution__inner h2{font-size:34px; font-weight: bold; line-height:1; margin-bottom:33px;}
.solution__inner .highlight{position:relative; display: inline-block; font-size:28px; font-weight: bold; color:#3e712d; line-height: 1; margin-bottom:39px;}
.solution__inner .highlight::after{content:''; position: absolute;  background:rgba(62,113,45, 0.08); width: 100%;left: 0;height: 15px;bottom: -4px;}
.solution__inner h2 ~ h2{margin-top:101px;}
.solution__inner p{font-size:18px; line-height: 1.5}

.process-container {display: grid;grid-template-columns: repeat(5, 1fr);gap: 100px; align-items: center;justify-items: center;  margin-top: 50px;background:#f8f8f8; padding: 80px 70px;}
.process-step { text-align: center; position:relative;}
.process-step img{width:180px; height:180px;}
.process-step p { margin-top: 30px; line-height:1.2;font-size: 18px; font-weight: bold;}

.arrow {position:absolute;top: 37%; right: -33%; font-size: 20px; transition: color 0.3s ease; color: #000; }
.arrow.rotate {transform: rotate(-180deg);}
.arrow.active {color: #3e712d; }

.process-step.step2{margin-top:-53px;}
.process-step.step2 p{position: absolute; width:240px; left:-25px;}


.process-step.step3{margin-top:-53px;}
.process-step.step3 p{position: absolute; width:240px; left:-25px;}

.process-step.step5{margin-top:-53px;}
.process-step.step5 p{position: absolute; width:343px; left:-76px;}
.process-step.step5 .step5_arrow{bottom: -70%;top: auto;right: 44%;transform: rotate(90deg)}

.process-step.step6{margin-top:-53px;}
.process-step.step6 p{position: absolute; width:343px; left:-76px;}

.process-step.step7{margin-top:-53px;}
.process-step.step7 p{position: absolute; width:240px; left:-25px;}
.process-step.step7 .step6_arrow{top: 48%;}


/* ―――――――――――――― products ―――――――――――――― */
.products__inner{position: relative; width: 1450px; margin: 140px auto 200px; }
.products__inner h2{font-size:34px; font-weight: bold; line-height:1; margin-bottom:60px;}
.products__inner table.product_table { width: 100%; border-collapse: collapse;}
.products__inner table.product_table td {border-bottom:1px solid #e5e5e5;  text-align: center; line-height:2; padding:26px 0; vertical-align: middle;}
.products__inner table.product_table td~td{border-left:1px solid #e5e5e5;}
.products__inner .product_table th {height:70px; line-height:70px; border-top:2px solid #000; border-bottom:1px solid #e5e5e5;  background-color: #f8f8f8; font-size:20px; font-weight: bold; }
.products__inner .product_table th~th{border-left:1px solid #e5e5e5;}


/* ―――――――――――――― PARTNERS  ―――――――――――――― */

.top_partners_text {position: relative; display: flex; align-items: center; justify-content: center; width: 1450px; height:380px; margin: 0 auto; padding: 0 20px 0 20px;}
.top_partners_text p {display: block; font-size: 34px; font-weight: 700; color: #000; line-height: 1.588; text-align: center;}
.top_partners_text p span {position: relative; opacity: 0; top: -50px;}
.top_partners_text p span:nth-child(1) {transition: all 700ms;}
.top_partners_text p span:nth-child(2) {transition: all 700ms 0.1s;}
.top_partners_text.active p span {opacity: 1; top: 0;}

.partners__inner{position: relative; width: 1450px; margin: 0 auto 200px; }

.partners__inner .logo_list{display: flex; gap:30px;}
.partners__inner .logo_list ~ .logo_list{margin-top:30px;}