:root{--blue:#2145e8;--ink:#18243c;--muted:#596273;--coral:#ff785d;--cream:#fff6dd;--line:#dee2ed;--pale:#f3f5fb;--gutter:clamp(24px,5.6vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid var(--coral);outline-offset:6px}::selection{background:#ffbba9;color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-feature-settings:"palt";line-height:1.5}img{display:block;max-width:100%;height:auto}.skip{position:fixed;left:16px;top:-100px;background:var(--blue);color:#fff;padding:10px 20px;z-index:99}.skip:focus{top:16px}
.header{height:100px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:#fff}.wordmark{font-family:Arial,Helvetica,sans-serif;font-size:46px;line-height:1;font-weight:900;letter-spacing:-3px;color:var(--blue)}.wordmark-dot{color:var(--coral)}nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:600}nav a{transition:color .2s}nav a:hover{color:var(--blue)}nav .nav-contact{padding:12px 22px;border:1px solid var(--blue);border-radius:50px;color:var(--blue)}.nav-contact span{padding-left:20px}
.hero{display:grid;grid-template-columns:1.15fr 1fr;position:relative;padding:64px var(--gutter) 0;gap:24px 4vw;max-width:1680px;margin:auto}.hero-copy{align-self:center;padding:24px 0 42px}.eyebrow{font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.5;letter-spacing:.13em;font-weight:700;color:var(--blue)}.hero h1{font-size:clamp(38px,4.55vw,72px);line-height:1.35;letter-spacing:-.04em;margin:30px 0}.coral{color:var(--coral)}.hero-description{font-size:16px;line-height:2.15;letter-spacing:.02em}.text-link{display:inline-flex;align-items:center;gap:58px;margin-top:36px;border-bottom:1px solid var(--blue);padding:0 0 9px;color:var(--blue);font-size:14px;font-weight:700}.text-link span{transition:transform .2s}.text-link:hover span{transform:translateY(4px)}.hero-art{position:relative;align-self:stretch;background:var(--cream);border-radius:120px 8px 120px 8px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:490px;padding:60px 26px}.hero-art img{width:88%;mix-blend-mode:darken}.art-caption,.art-bottom{position:absolute;z-index:1;font:11px/1.6 Arial,Helvetica,sans-serif;letter-spacing:.13em;color:var(--blue)}.art-caption{top:35px;right:34px}.art-bottom{bottom:30px;left:38px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font:11px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.13em;color:var(--muted);padding:10px 0 32px}.announcement{margin:0 var(--gutter);padding:22px 0;display:flex;gap:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;line-height:1.85;color:var(--muted)}.announcement>span{white-space:nowrap;color:var(--blue);font-weight:700}
.section{padding:110px var(--gutter);display:grid;grid-template-columns:1fr 1.4fr;gap:8vw;max-width:1680px;margin:auto}.section h2{font-size:clamp(28px,3vw,43px);letter-spacing:-.035em;margin-top:22px;line-height:1.6}.section-intro{font-size:18px;line-height:2}.small{font-size:13px}.muted{color:var(--muted);margin-top:18px}.service{display:grid;grid-template-columns:40px 1fr;gap:24px;border-top:1px solid var(--line);padding:32px 0;margin-top:26px}.service+.service{margin-top:0}.service-number{font:14px/1.5 Arial,sans-serif;color:var(--blue);padding-top:3px}.service-en{font:11px/1.5 Arial,sans-serif;letter-spacing:.15em;color:var(--blue);margin-bottom:10px}.service h3{font-size:22px;margin-bottom:14px;letter-spacing:-.02em}.service p:not(.service-en){color:var(--muted);font-size:16px}.service-note{font-size:13px;color:var(--muted);padding-top:8px;border-top:1px solid var(--line)}
.process{display:block;max-width:none;background:var(--pale);padding-block:82px}.process h2{margin-top:16px;font-size:30px}.steps{list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps li{padding-right:24px;border-right:1px solid #cbd2e5}.steps li:last-child{border:0;padding:0}.step-number{color:var(--blue);font:14px/1.5 Arial,sans-serif}.steps h3{font-size:18px;margin:18px 0 14px}.steps p{font-size:14px;color:var(--muted)}.process-note{font-size:12px;color:var(--muted);margin-top:36px}.company-message{font-size:16px;color:var(--muted);margin-top:36px}.company-table{margin:0;border-top:1px solid var(--line)}.company-table>div{display:grid;grid-template-columns:145px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line);font-size:14px}.company-table dt{color:var(--muted)}.company-table dd{margin:0;overflow-wrap:anywhere}.company-table a{border-bottom:1px solid #9ea9c3}.status{display:inline-block;font-size:11px;margin-left:16px;background:var(--pale);color:var(--blue);padding:2px 10px;border-radius:4px;vertical-align:middle}
.contact{background:var(--blue);color:#fff;padding:76px var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact .eyebrow{color:#fff}.contact h2{font-size:clamp(36px,4vw,58px);line-height:1.45;margin-top:22px;letter-spacing:-.035em}.contact-body{align-self:center}.contact-body>p{font-size:15px}.contact-button{margin-top:28px;background:#fff;color:var(--blue);border-radius:50px;padding:16px 26px;max-width:360px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:15px;font-weight:700;transition:background .2s,transform .2s}.contact-button:hover{background:var(--cream);transform:translateY(-2px)}.contact-email{display:inline-block;margin-top:18px;font-size:14px;border-bottom:1px solid #9baeff;overflow-wrap:anywhere}.contact-body .contact-note{font-size:12px;margin-top:22px;color:#e2e7ff}.footer{padding:42px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}.footer .wordmark{font-size:36px}.footer>div{display:flex;gap:40px;align-items:center;font-size:12px;color:var(--muted)}.footer small{font:12px Arial,sans-serif}
.legal{max-width:880px;padding:80px 28px 100px;margin:auto}.legal h1{font-size:32px;margin:20px 0 40px}.legal h2{font-size:20px;margin:38px 0 12px}.legal p,.legal li{font-size:16px;color:var(--muted)}.legal a{color:var(--blue);text-decoration:underline;overflow-wrap:anywhere}.legal ul{padding-left:1.5em}.legal .date{margin-top:40px;font-size:13px}.legal .back{display:inline-block;margin-top:44px;font-size:14px}
@media(min-width:1680px){.announcement{max-width:1504px;margin-inline:auto}.process,.contact,.footer,.header{padding-inline:max(88px,calc((100vw - 1504px)/2))}}
@media(max-width:1050px){.hero{gap:20px 24px;padding-top:40px}.hero-art{min-height:430px;padding:54px 12px;border-radius:80px 8px 80px 8px}.hero h1{font-size:clamp(34px,4.55vw,48px)}.hero-description{font-size:14px}.desktop-break{display:none}.section{gap:5vw;grid-template-columns:1fr 1.5fr;padding-block:80px}.section h2{font-size:30px}.company-table>div{grid-template-columns:110px 1fr;gap:14px}.steps{gap:20px}.steps li{padding-right:20px}.status{display:table;margin:8px 0 0}}
@media(max-width:720px){html{scroll-padding-top:24px}.header{height:auto;min-height:86px;padding-block:20px;gap:20px}.wordmark{font-size:38px}nav{gap:18px;font-size:12px}nav .nav-contact{padding:0;border:0}.nav-contact span{display:none}.hero{grid-template-columns:1fr;padding-top:42px;gap:24px}.hero-copy{padding:0}.eyebrow{font-size:11px}.hero h1{font-size:clamp(36px,8.8vw,58px);margin:24px 0}.hero-description{font-size:15px}.text-link{margin-top:26px}.hero-art{margin-top:8px;min-height:0;aspect-ratio:1.14;padding:28px 54px;border-radius:80px 8px 80px 8px}.hero-art img{width:100%;max-height:100%;object-fit:contain}.art-caption{top:22px;right:24px;font-size:9px}.art-bottom{bottom:22px;left:26px;font-size:9px}.hero-bottom{font-size:9px;padding:0 0 24px}.announcement{display:block;font-size:12px;padding-block:20px}.announcement>span{display:block;margin-bottom:8px}.section{grid-template-columns:1fr;gap:34px;padding-block:64px}.section h2{font-size:30px;margin-top:16px}.section-intro{font-size:16px}.service{grid-template-columns:26px 1fr;gap:16px;padding:28px 0}.service h3{font-size:20px}.service p:not(.service-en){font-size:15px}.process{display:block}.process h2{font-size:26px}.steps{grid-template-columns:1fr 1fr;gap:30px 24px;margin-top:32px}.steps li{padding:0 12px 0 0}.steps li:nth-child(2n){border:0;padding:0}.steps h3{font-size:17px;margin:12px 0}.process-note{font-size:12px}.company-message{margin-top:18px}.company-table>div{grid-template-columns:100px 1fr;gap:12px;padding:20px 0;font-size:13px}.contact{grid-template-columns:1fr;gap:32px;padding-block:54px}.contact h2{font-size:40px}.contact-button{max-width:none}.footer{align-items:flex-start;padding-block:32px}.footer>div{flex-direction:column;gap:12px;align-items:flex-end}.legal{padding-top:48px}.legal h1{font-size:27px}.legal h2{font-size:19px}}
@media(max-width:370px){nav{gap:11px;font-size:11px}.header{gap:12px}.hero-art{padding-inline:34px}.company-table>div{grid-template-columns:1fr;gap:4px}.steps{grid-template-columns:1fr}.steps li{border:0;border-bottom:1px solid var(--line);padding-bottom:22px}.hero-bottom{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
