/* A clear Japanese promise and four supporting services. */
.hero h1.hero-title-en{font-size:clamp(66px,8.1vw,132px);font-weight:500;line-height:.94;letter-spacing:-.065em;margin-top:44px}
.hero-title-en>span{display:block;white-space:nowrap}
.hero-title-en em{font:inherit;color:var(--blue)}
.hero .hero-baseline{max-width:820px;margin-top:33px;gap:28px}
.hero .hero-baseline p{font-size:clamp(15px,1.35vw,21px);line-height:2.1;font-weight:400;letter-spacing:.025em}
.other-services{border-top:1px solid var(--line)}
.other-services-intro{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:52px}
.other-services-intro h2{font-size:clamp(35px,4.4vw,65px);line-height:1.5;letter-spacing:-.04em;font-weight:500}
.other-services-intro>p{font-size:14px;color:#46555f;line-height:2}
.other-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.other-service{min-width:0}
.other-service-image{display:block;position:relative;overflow:hidden;background:#e8eef2;aspect-ratio:1.2}
.other-service-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.other-service-image:hover img{transform:scale(1.035)}
.other-image-index{position:absolute;top:14px;left:14px;font-size:8px;letter-spacing:.08em;color:#3b5563}
.other-service-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 15px}
.other-service-heading h3{font-size:23px;font-weight:500;line-height:1.5;letter-spacing:-.04em}
.other-service-heading>span{font-size:23px;color:#377899}
.other-service-lead{font-size:13px;line-height:1.8;min-height:47px}
.other-service-body{font-size:13px;color:#4f5e67;line-height:2;margin-top:12px}
.other-service-link{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #73858f;margin-top:22px;padding:12px 0;font-size:12px;min-height:48px}
.other-service-link>span{font-size:22px;color:#377899}
.other-service-link:hover{color:#087ab4}
.footer-bottom nav{flex-wrap:wrap;row-gap:14px}
.other-service-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:5vw;border-bottom:1px solid var(--line);padding-bottom:56px;margin-bottom:56px;scroll-margin-top:110px}
.other-service-feature-image{position:relative;display:block;overflow:hidden;aspect-ratio:1.5;background:#e8eef2}
.other-service-feature-image>img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.other-service-feature-image:hover>img{transform:scale(1.035)}
.other-service-feature-identity{display:flex;align-items:center;gap:13px;margin-bottom:17px}
.other-service-feature-identity img{width:36px;height:36px;object-fit:contain;border-radius:50%;flex-shrink:0}
.other-service-feature-identity>span{font-size:11px;color:#526975;letter-spacing:.06em}
.other-service-feature-copy h3{display:flex;align-items:baseline;gap:18px;font-size:clamp(32px,3.5vw,52px);font-weight:400;line-height:1.15;letter-spacing:-.055em}
.other-service-feature-copy h3>span{font-size:13px;letter-spacing:0}
.other-service-feature-lead{font-size:clamp(15px,1.4vw,20px);line-height:1.8;margin-top:18px;letter-spacing:-.025em}
.other-service-feature-description{font-size:13px;color:#4f5e67;line-height:2;margin-top:14px;max-width:470px}
.other-service-feature-free{font-size:12px;color:#087ab4;margin-top:16px}
.other-service-feature-link{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:17px 0;margin-top:16px;border-bottom:1px solid #73858f;font-size:13px;transition:color .2s}
.other-service-feature-link>span{font-size:25px;color:#377899;line-height:1;transition:transform .2s}
.other-service-feature-link:hover{color:#087ab4}
.other-service-feature-link:hover>span{transform:translate(3px,-3px)}
@media(max-width:1150px){.other-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:46px 32px}.other-service-image{aspect-ratio:1.7}.other-service-lead{min-height:0}.other-service-heading h3{font-size:26px}.other-service-body{min-height:78px}.other-services-intro{gap:30px}.other-services-intro>p{font-size:13px}}
@media(max-width:700px){.hero h1.hero-title-en{font-size:clamp(43px,11.4vw,58px);line-height:.98;letter-spacing:-.065em;margin-top:42px}.hero-title-en>span:nth-child(2){white-space:normal}.hero .hero-baseline{margin-top:33px;gap:15px;align-items:start}.hero .hero-baseline p{font-size:12px;line-height:2.1;letter-spacing:0}.hero .circle-link{width:42px;height:42px;font-size:21px;flex-shrink:0}.other-services-intro{display:block;margin-bottom:35px}.other-services-intro h2{font-size:35px}.other-services-intro>p{font-size:13px;margin-top:20px}.other-services-grid{grid-template-columns:1fr;gap:40px}.other-service-image{aspect-ratio:1.6}.other-service-heading{margin-top:22px;margin-bottom:12px}.other-service-heading h3{font-size:25px}.other-service-body{min-height:0;font-size:14px;margin-top:12px}.other-service-lead{font-size:14px}.other-service-link{margin-top:18px;font-size:13px}.other-image-index{font-size:9px;top:16px;left:16px}.footer-bottom nav{gap:15px}}
@media(max-width:700px){.other-service-feature{grid-template-columns:minmax(0,1fr);gap:25px;padding-bottom:38px;margin-bottom:40px;scroll-margin-top:95px}.other-service-feature-image{aspect-ratio:1.5}.other-service-feature-identity{gap:11px;margin-bottom:16px}.other-service-feature-identity img{width:32px;height:32px}.other-service-feature-identity>span{font-size:10px}.other-service-feature-copy h3{font-size:38px;gap:16px}.other-service-feature-copy h3>span{font-size:12px}.other-service-feature-lead{font-size:16px;margin-top:16px}.other-service-feature-description{font-size:14px;margin-top:13px}.other-service-feature-free{font-size:12px;margin-top:16px}.other-service-feature-link{padding:17px 0;margin-top:16px}}
@media(prefers-reduced-motion:reduce){.other-service-image img,.other-service-feature-image>img,.other-service-feature-link>span{transition:none}.other-service-image:hover img,.other-service-feature-image:hover>img,.other-service-feature-link:hover>span{transform:none}}
@media(max-width:700px){.hero-media:after{background:linear-gradient(90deg,rgba(0,4,10,.45),transparent 90%),linear-gradient(180deg,transparent 38%,rgba(0,4,10,.35) 53%,transparent 75%)}}
