:root{
  --bg:#F6F7F9;--paper:#FFFFFF;--ink:#1B2433;--sub:#525D6D;--line:#DCE2EA;
  --pri:#1F3A5F;--pri-d:#142843;--tint:#EAF0F6;
  --acc:#B8924A;--acc-t:#F5EEDF;--acc-ink:#8A6A2E;
  --fh:'Shippori Mincho',serif;--fhw:700;--fb:'Noto Sans JP',sans-serif;--fe:'Cormorant Garamond',serif;
  --r:6px;--rs:4px;--rb:4px;--rm:4px;--rt:3px;
  --shadow:0 12px 32px rgba(20,40,67,.07);
  --hd-bg:rgba(255,255,255,.95);--hd-h:108px;
  --hero-ov:linear-gradient(90deg,rgba(20,40,67,.86) 0%,rgba(20,40,67,.62) 42%,rgba(20,40,67,.08) 78%);--hero-pos:70% 40%;
  --ph-bg:#142843;--ph-ink:#fff;--ph-acc:#D9BC82;
  --ft-bg:#101F34;--ft-ink:#DCE3EC;--ft-sub:#9AA8BA;
}
.eyebrow{font-size:14px;letter-spacing:.2em}
.num,.hist time,.ph .en,.eyebrow{font-variant-numeric:lining-nums tabular-nums}
.hero-kicker{align-self:flex-start}
.hero h1{font-size:clamp(28px,3.7vw,52px)}
.num{font-size:17px}
.hero h1{font-weight:600}
.hero{background:var(--pri-d);min-height:min(80vh,680px);align-items:stretch}
.hero::before{display:none}
.hero > img{left:auto;width:54%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%);mask-image:linear-gradient(90deg,transparent 0,#000 22%)}
.hero .ctr{display:flex;flex-direction:column;justify-content:center;padding-top:72px;padding-bottom:120px}
.hero h1,.hero p{max-width:min(560px,52%)}
.hero p{max-width:min(500px,48%)}
@media (max-width:900px){.hero{flex-direction:column;min-height:0}.hero > img{position:relative;width:100%;height:320px;-webkit-mask-image:none;mask-image:none}.hero .ctr{padding-top:40px;padding-bottom:96px}.hero h1,.hero p{max-width:none}}
.ph::after{content:"";position:absolute;right:-60px;top:-60px;width:320px;height:320px;border:1px solid rgba(217,188,130,.28);border-radius:50%}
.ph::before{content:"";position:absolute;right:40px;top:40px;width:180px;height:180px;border:1px solid rgba(217,188,130,.18);border-radius:50%}
.card{box-shadow:none;border:1px solid var(--line)}
.step{box-shadow:none;border:1px solid var(--line);border-top:3px solid var(--pri)}
.cta{background:linear-gradient(120deg,#142843,#1F3A5F)}
.cta::after{content:"";position:absolute;right:-70px;bottom:-90px;width:300px;height:300px;border:1px solid rgba(217,188,130,.3);border-radius:50%}
.reason{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:center}
.reason + .reason{margin-top:clamp(40px,6vw,72px)}
.reason:nth-child(even) .ph-img{order:2}
.reason .num{font-size:44px;font-weight:600;line-height:1;color:var(--acc);display:block;margin-bottom:12px}
.reason h3{font-size:clamp(20px,2.3vw,25px);margin-bottom:12px}
.reason p{color:var(--sub)}
.svc-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.svc-row > div{background:var(--paper);padding:30px 26px}
.svc-row h3{font-size:18px;margin:10px 0 10px}
.svc-row p{font-size:14px;color:var(--sub)}
.hist{border-left:1px solid var(--line);margin-left:8px;display:grid;gap:28px;padding-left:32px}
.hist > div{position:relative}
.hist > div::before{content:"";position:absolute;left:-38px;top:9px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--acc)}
.hist time{font-family:var(--fe);font-size:18px;font-weight:600;color:var(--acc-ink)}
.hist h3{font-size:17px;margin:2px 0 4px}
.hist p{font-size:14.5px;color:var(--sub)}
@media (max-width:780px){.reason{grid-template-columns:minmax(0,1fr)}.reason:nth-child(even) .ph-img{order:0}.svc-row{grid-template-columns:minmax(0,1fr)}}
@media (min-width:781px) and (max-width:1080px){.svc-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1080px){:root{--hd-h:77px}}

.ph::before,.ph::after,.cta::after{display:none}
.cta{background:var(--pri-d)}
.reason .num{display:none}
