/* Preserve the existing visual identity; only accommodate the revised copy. */
.hero__content{max-width:760px}.hero__subtitle{max-width:640px}
#leadership,#training{scroll-margin-top:150px}
#message,#company{overflow-x:clip}
@media(max-width:768px){.hero__title{font-size:clamp(28px,7.6vw,44px)}#mission .mission-one-line{font-size:clamp(20px,6.4vw,28px)!important}#mission .mission-one-line>span{display:block;white-space:nowrap}#mission .mission-description{font-size:14px!important;line-height:1.9!important;margin-top:18px!important}#vision>div{margin-top:48px!important}#vision div[style*="padding:0 56px"]{padding:0 24px!important}#vision div[style*="padding:48px 56px"]{padding:40px 24px!important}#vision div[style*="justify-content:space-between;gap:48px"]{flex-direction:column!important;gap:28px!important}#vision div[style*="width:320px"]{width:100%!important}#vision a[style*="margin-top:-72px"]{margin-top:0!important}#vision h2{font-size:30px!important}}

@media(min-width:961px){#mission .mission-one-line{font-size:clamp(24px,2.65vw,36px)!important;white-space:nowrap}}

/* サービス名・リンク先に依存せず4サービスのスマホ表示を揃える */
@media(max-width:768px){
  #services .home-service-card{grid-template-columns:1fr!important;gap:20px;padding:40px 0!important}
  #services .home-service-card>div:first-child{padding-right:0!important;order:2;min-width:0}
  #services .home-service-card>div:last-child{order:1;justify-content:center!important;align-items:center!important}
  #services .home-service-card>div:last-child>div{max-width:100%!important;height:200px!important}
  #services .home-service-card h3{font-size:22px!important}
  #services .home-service-card p[style*="font-size:24px"]{font-size:18px!important}
}

/* トップの強調案：元の書体・曲線を活かして言葉と入口を強くする */
.hero__title .hero__emphasis{font-size:1.1em;letter-spacing:0;color:inherit}
.hero__cta .hero__entry{gap:24px;min-height:60px;padding:15px 25px;font-weight:700;justify-content:space-between}
.hero__cta .hero__entry--training{background:#012677;border-color:#012677;color:#fff}
.hero__cta .hero__entry--leadership{background:rgba(255,255,255,.9);border-color:#012677;color:#012677}
.hero__entry-arrow{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;color:inherit;font-size:20px;font-weight:400;line-height:1}
.hero__cta .hero__entry--training:hover{background:#011748;border-color:#011748}
.hero__cta .hero__entry--leadership:hover{background:#f1f4fa;color:#012677}
@media(max-width:768px){.hero__cta{gap:12px}.hero__cta .hero__entry{min-height:58px;padding:13px 22px}.hero__title{line-height:1.5}}

/* ヒーローでゴールを、Missionで支援への思いを伝える */
.hero__promise{font-weight:600;color:#012677}
#mission .mission-description{max-width:850px}
@media(max-width:768px){.hero__promise{font-size:16px;line-height:1.85}.hero__promise>span{display:block}.mission-description br{display:none}}

/* Compact service entrances, retaining comfortable touch targets. */
.hero__cta .hero__entry { width:fit-content; max-width:100%; gap:12px; min-height:52px; padding:12px 20px; }
@media(max-width:768px) {
  .hero__cta { align-items:flex-start; }
  .hero__cta .hero__entry { width:fit-content; align-self:flex-start; min-height:52px; padding:12px 18px; }
}

@media(max-width:768px){#mission .mission-copy .mission-one-line.mission-purpose{font-size:clamp(20px,5.4vw,23px)!important}}

/* Service-detail links retain comfortable touch targets. */
.home-service-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px; }
#services .home-service-actions a { padding:0!important; display:inline-flex; align-items:center; gap:10px; min-height:48px; color:#012677; font-size:14px; font-weight:600; text-decoration:none; }
.home-service-actions a:hover { text-decoration:underline; text-underline-offset:6px; }
.home-service-actions a:focus-visible { outline:2px solid #012677; outline-offset:4px; }
#development { scroll-margin-top:150px; }
@media(max-width:768px) { .home-service-actions { gap:8px 24px; } #development { scroll-margin-top:100px; } }

/* Quiet starting-price guidance beneath the service names. */
#services .home-service-price { color:#555; font-size:14px; font-weight:500; line-height:1.8; margin:-4px 0 20px; }
