:root{--ink:#000;--paper:#f3f3f0;--silver:#b8bec5;--text:#f3f3f0;--muted:#b2b5b9;--line:#35383b;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:var(--text);font-family:"Yu Gothic","Meiryo",sans-serif;font-size:16px;line-height:1.9;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation}button{border-radius:0}p,h1,h2,h3{margin:0}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:5px}.wrap{max-width:1280px;margin:auto;padding-inline:56px}.skip{position:absolute;left:12px;top:-100px;padding:12px;background:var(--paper);color:#000;z-index:20}.skip:focus{top:12px}.header{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;line-height:1.5;flex-shrink:0}.brand strong{font-family:Arial,sans-serif;letter-spacing:.19em;font-size:25px;font-weight:500}.brand span{font-size:11px;letter-spacing:.12em;color:var(--muted)}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav a{padding-block:14px}.nav-contact{border:1px solid #73777d;padding:10px 20px;display:flex;gap:36px}.menu-toggle{display:none}.eyebrow{font-family:Arial,"Meiryo",sans-serif;font-size:12px;letter-spacing:.14em;line-height:1.7}.hero{position:relative;padding-top:100px;padding-bottom:32px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;column-gap:0;row-gap:78px}.hero-copy{position:relative;z-index:1}.hero .eyebrow{color:var(--silver);display:flex;gap:13px;align-items:center;flex-wrap:wrap;font-size:11px}.small-line{width:32px;height:1px;background:var(--silver)}h1{font-size:clamp(42px,5.5vw,72px);line-height:1.45;letter-spacing:.02em;font-weight:600;margin:30px 0 28px;white-space:nowrap}.hero-description{color:#c9ccd0;font-size:15px;line-height:2.1;letter-spacing:.035em}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.button{padding:13px 23px;min-height:52px;min-width:166px;display:flex;gap:32px;justify-content:space-between;align-items:center;font-size:14px}.light{background:var(--paper);color:#111}.outline{border:1px solid #767a80}.hero-image{position:relative;width:100%;padding-top:8px}.hero-image img{width:100%;height:auto;display:block}.image-rule{display:block;width:80px;height:1px;background:var(--silver);margin:40px auto 0}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:23px;color:var(--muted);font-size:11px;letter-spacing:.12em}.hero-bottom a{font-family:Arial,sans-serif;min-height:44px;display:flex;gap:30px;align-items:center}.section{padding-block:96px;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 2fr;gap:72px}.section-label>.eyebrow{color:var(--silver);margin-bottom:20px}.section-label>p:not(.eyebrow){font-size:14px}.section-label h2,.section-heading h2{font-size:34px;line-height:1.5;letter-spacing:.03em;font-weight:500}.section-content h2{font-size:48px;line-height:1.6;letter-spacing:.025em;font-weight:500;margin-top:-12px}.purpose{background:#101112}.purpose-text{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:32px;color:#d0d2d5;font-size:15px;line-height:2.15}.text-link{display:inline-flex;gap:64px;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid #7d838a;background:none;padding:12px 0;font-size:14px;min-height:48px;margin-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:44px}.section-heading .eyebrow{margin-bottom:17px;color:var(--silver)}.section-heading>p{font-size:17px;line-height:1.85;color:#c9ccd0}.service-row{padding:34px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.3fr 48px;gap:44px}.service-name{display:flex;gap:23px}.number{font-family:Arial,sans-serif;font-size:14px;line-height:2;color:var(--silver)}.service-name h3{font-size:25px;font-weight:500;line-height:1.7}.service-copy{color:#c9ccd0;font-size:15px;line-height:2}.service-copy p+p{margin-top:12px}.service-note{font-size:13px}.row-arrow{font-family:Arial,sans-serif;font-size:30px;line-height:1.5;color:var(--silver)}.service-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:24px}.service-bottom p{font-size:13px;display:flex;gap:24px;align-items:center;flex-wrap:wrap}.service-bottom strong{font-size:16px;font-weight:500}.service-bottom span{color:var(--muted)}.service-bottom .text-link{margin-top:0}.strengths{background:#101112}.strength-list article{display:grid;grid-template-columns:28px 1fr;gap:24px;padding:27px 0;border-top:1px solid #43474d}.strength-list article:last-child{padding-bottom:0}.strength-list article h3{font-size:21px;line-height:1.8;font-weight:500;margin-bottom:13px}.strength-list article p{font-size:14px;color:#c9ccd0;line-height:2}.company-list{margin:0}.company-list>div{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:18px 0;border-top:1px solid var(--line);font-size:15px}.company-list .ancorz-field-label{color:var(--muted)}.company-list .ancorz-field-value{margin:0}.company-side{margin-top:30px;color:var(--muted)}.contact{background:#dedfe1;color:#111;border:0}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:48px}.contact h2{font-weight:500;font-size:48px;line-height:1.7;margin:14px 0 20px}.contact p:not(.eyebrow){font-size:15px;line-height:2}.contact-button{display:flex;align-items:center;justify-content:space-between;gap:72px;background:#111;color:#fff;border:0;padding:26px 32px;min-height:82px;font-size:16px}.footer{padding-block:50px 24px}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding-bottom:44px}.footer-top>div{display:flex;gap:26px;flex-wrap:wrap;font-size:13px}.footer-top a{min-height:44px;display:flex;align-items:center}.footer-top .brand{align-items:flex-start}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:23px;color:var(--muted);font-size:11px}.footer-bottom a{min-height:44px;display:flex;align-items:center}.plain-link{background:none;border:0;color:inherit;font-size:11px;padding:12px 0;text-decoration:underline}.footer-bottom small{font-family:Arial,sans-serif;font-size:11px}dialog{max-width:600px;width:calc(100% - 40px);padding:30px;background:#181a1d;color:#f3f3f0;border:1px solid #767a80}dialog::backdrop{background:#000a}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dialog-head button{background:none;border:1px solid #777;padding:8px 14px;font-size:13px;min-height:44px}dialog h2{font-size:24px;margin-bottom:18px}dialog p{font-size:15px;white-space:pre-line}.dialog-note{border-top:1px solid #555;margin-top:24px;padding-top:18px;color:#bfc3c9;font-size:12px!important}
@media(min-width:1500px){.hero{padding-top:110px}}@media(max-width:1000px){.wrap{padding-inline:32px}nav{gap:18px}.split{gap:40px}.purpose-text{grid-template-columns:1fr;gap:22px}.service-row{gap:26px;grid-template-columns:1fr 1.3fr 26px}.service-name h3{font-size:22px}.service-bottom{align-items:flex-start;flex-direction:column}.footer-top>div{gap:18px}h1{font-size:clamp(38px,5.5vw,62px)}}
@media(max-width:700px){.wrap{padding-inline:24px}.header{position:relative;min-height:84px;flex-wrap:wrap;gap:0}.brand strong{font-size:22px}.brand span{font-size:10px}.menu-toggle{display:flex;align-items:center;gap:17px;font-size:12px;border:1px solid #555;background:#000;padding:9px 12px;min-height:44px}.menu-toggle span{font-size:18px}nav{display:none;width:100%;padding:18px 0 24px;flex-direction:column;align-items:stretch;gap:4px}nav.is-open{display:flex}nav a{padding:10px 0;min-height:44px}.nav-contact{padding:12px 16px!important;margin-top:10px}.hero{grid-template-columns:1fr;padding-top:47px;row-gap:28px;padding-bottom:20px}.hero .eyebrow{font-size:10px;gap:9px}.small-line{width:20px}h1{font-size:clamp(32px,8.2vw,54px);margin:26px 0 24px;line-height:1.6;letter-spacing:.005em}.hero-description{font-size:14px;line-height:2}.actions{gap:10px;margin-top:27px}.button{min-width:0;flex:1;gap:14px;padding:12px 14px;font-size:13px;min-height:50px}.hero-image{max-width:420px;margin:0 auto;padding-top:3px}.image-rule{width:48px;margin-top:8px}.hero-bottom{font-size:10px;align-items:center;gap:8px;padding-top:12px}.hero-bottom a{font-size:9px;gap:10px;letter-spacing:.04em}.section{padding-block:58px}.split{grid-template-columns:1fr;gap:30px}.section-label>.eyebrow{margin-bottom:12px}.section-content h2{font-size:34px;line-height:1.7;margin-top:0}.purpose-text{font-size:14px;line-height:2.1;margin-top:22px;gap:18px}.text-link{font-size:13px;gap:44px;margin-top:21px}.section-heading{display:block;margin-bottom:29px}.section-heading h2,.section-label h2{font-size:28px}.section-heading>p{font-size:14px;margin-top:20px}.service-row{grid-template-columns:1fr;gap:18px;padding-block:25px;position:relative}.service-name{gap:18px;align-items:center;padding-right:26px}.service-name h3{font-size:21px;line-height:1.7}.desktop-break{display:none}.service-copy{font-size:14px;line-height:2}.row-arrow{position:absolute;top:23px;right:0;font-size:25px}.service-bottom{gap:16px;padding-top:22px}.service-bottom p{gap:9px;font-size:12px}.service-bottom p span{width:100%}.strength-list article{gap:16px;padding-block:23px;grid-template-columns:22px 1fr}.strength-list article h3{font-size:18px;line-height:1.8}.strength-list article p{font-size:14px}.company-list>div{grid-template-columns:1fr;gap:7px;padding-block:17px;font-size:14px}.company-list .ancorz-field-label{font-size:12px}.company-side{margin-top:16px}.contact-inner{display:block}.contact h2{font-size:32px;margin:12px 0 20px}.contact p:not(.eyebrow){font-size:14px}.contact-button{width:100%;margin-top:28px;min-height:66px;padding:19px 22px;font-size:14px;gap:24px}.footer{padding-top:38px}.footer-top{flex-direction:column;gap:27px;padding-bottom:24px}.footer-top>div{display:grid;grid-template-columns:1fr 1fr;column-gap:27px;row-gap:0;font-size:12px}.footer-bottom{flex-wrap:wrap;font-size:10px;gap:12px}.footer-bottom small{font-size:10px}dialog{padding:22px}dialog h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
