/* .grecaptcha-badge { visibility: hidden; } */
/* .leadgrid-font-size-bl { font-size: 16px; line-height: 160%; } */
/* .leadgrid-font-size-bm { font-size: 14px; line-height: 160%; } */
/* .leadgrid-font-size-hl { font-size: 44px; line-height: 130%; } */
/* .leadgrid-font-size-hm { font-size: 24px; line-height: 145%; } */
/* .leadgrid-font-size-hs { font-size: 20px; line-height: 150%; } */
/* .leadgrid-font-size-s { font-size: 12px; line-height: 160%; } */
/* :root { ... } */
/* .fr-view .fr-img-caption .fr-img-wrap a { ... } */
/* .hljs-ln-numbers { ... } */
/* .hljs-ln-code { ... } */
/* .hljs { ... } */
/* .leadgrid-blogcard { ... } */
/* .leadgrid-blogcard:hover { ... } */
/* .leadgrid-blogcard__cover { ... } */
/* .leadgrid-blogcard__link { ... } */
/* .leadgrid-blogcard__link::before, .leadgrid-blogcard__link::after { ... } */
/* .leadgrid-blogcard__meta { ... } */
/* .leadgrid-blogcard__title { ... } */
/* .leadgrid-blogcard__description { ... } */
/* .leadgrid-blogcard__domain { ... } */
/* .leadgrid-blogcard__eyecatch { ... } */
/* .leadgrid-blogcard__eyecatch img { ... } */
/* @media screen and (max-width: 768px) { ... } */
/* .leadgrid-sp-br { ... } */
/* .instagram-media { ... } */
/* .fr-view img.fr-dii.leadgrid-wysiwyg-img-center { ... } */
/* .fr-view img.leadgrid-wysiwyg-img-center, .fr-view .fr-img-caption.leadgrid-wysiwyg-img-center { ... } */
/* mjx-math { ... } */
/* .fr-view p:has( > .fr-fir) { ... } */
/* .fr-view p > .fr-fir { ... } */
/* .c-form__agreeText { ... } */
.section-icons {
  padding: 20px 0;
  background: #f8fafc;
  position: relative;
  margin: 20px;
}
.section-icons::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background: linear-gradient(90deg, transparent, #e5e7eb, transparent); }
.section-icons .section-inner {
  max-width: 1100px;
  margin: 0 auto;
}
.section-icons .content-row { display:flex; align-items:center; justify-content:center; gap: 28px; }
.section-icons .copy-area { max-width: 520px; }
.section-icons .copy-area h2 { color:#111; font-size:26px; margin-bottom:14px; font-weight:700; letter-spacing: .02em; }
.section-icons .copy-area h2 span { border-bottom: 3px solid #fbd000; padding-bottom:6px; }
.section-icons .copy-area p { color:#444; line-height:1.7; font-size:15px; }
.section-icons .copy-area p + p { margin-top: 6px; }
.section-icons .icon-row { display:flex; align-items:center; justify-content:center; gap: 28px; flex-wrap: nowrap; list-style: none; margin: 0; padding: 0; }
.section-icons .icon-row li { display: flex; align-items: center; }
.section-icons .icon-row img { height: clamp(100px, 12vw, 160px); width: auto; object-fit: contain; filter: drop-shadow(0 1px 2px rgba(0,0,0,.06)); }
@media (min-width: 768px) { .section-icons .icon-row img { height: clamp(120px, 12vw, 160px); } }
@media (max-width: 768px) { .section-icons .content-row { flex-direction: column; gap: 20px; } }
/* Reduce gaps for section-works titles and subtitles on service pages */
.service_common .section-works h2 { margin-bottom: 22px; }
.service_common .section-works .text-headding { margin-bottom: 18px; max-width: 680px; }
/* Tighten vertical spacing between adjacent sections */
.service_common .section-works { margin-top: 12px; padding-top: 40px; padding-bottom: 36px; margin-bottom: 24px; }
.service_common .section-history-timeline { margin-top: 8px; }
.service_common .home-service-grid { margin-top: 20px; margin-bottom: 20px; }
.service_common .section-detailList.home-service-grid { padding-top: 24px; padding-bottom: 18px; margin-bottom: 12px; }
.service_common .section-works.compact-title { padding-top: 20px; padding-bottom: 8px; margin-bottom: 6px; }
.service_common .section-works.compact-title .text-headding { margin-bottom: 6px; }
.service_common .section-works.compact-title .section-inner:before { display: none; }
.service_common .section-solution h2 { font-size: clamp(46px, 4.8vw, 72px); margin-bottom: 24px; }
.service_underlayer .section-solution h2 { font-size: clamp(46px, 4.8vw, 72px); margin-bottom: 24px; }
/* Compress gaps for solution section */
.service_common .section-solution, .service_underlayer .section-solution { margin-top: 66px; margin-bottom: 40px; padding-top: 36px; padding-bottom: 0px; }
/* Further tighten timeline top gap */
.service_common .section-history-timeline { margin-top: 6px; }
.service_common .section-works.compact-title + .section-history-timeline { margin-top: 4px; }
.service_common .home-service-grid + .section-works { margin-top: 8px; padding-top: 24px; }
.section-future { background:#f8fafc; padding:40px 0; text-align:center; position: relative; }
.section-future::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background: linear-gradient(90deg, transparent, #e5e7eb, transparent); }
.future-content h2 { color:#111; font-size:28px; margin-bottom:16px; }
.future-content p { color:#555; line-height:1.8; max-width:800px; margin:0 auto; }
.service_common .section-detailList.home-service-grid + .section-works { margin-top: 6px; padding-top: 20px; }
@media screen and (max-width: 750px) {
  .service_underlayer_detail .section-detailList.home-service-grid .list-content li { margin-bottom: 7.2vw; }
  .service_underlayer_detail .section-detailList.home-service-grid .list-content li:nth-child(n + 4):nth-child(-n + 6) { margin-bottom: 7.2vw; }
}
