@charset "UTF-8";
:root{--navy:#14222d;--deep:#111d27;--ink:#1d2c37;--muted:#65737e;--silver:#d1dbe1;--orange:#d88b50;--line:#d9dfe3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--orange);outline-offset:7px}.skip{position:fixed;top:-80px;left:15px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}.header{height:94px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8ebed;background:#fff}.brand{display:inline-flex;align-items:baseline;font-size:29px;letter-spacing:-1.2px;font-weight:750;font-family:Arial,Helvetica,sans-serif;white-space:nowrap}.brand span{font-weight:400;margin-left:7px;letter-spacing:-1px}.brand i{display:block;width:6px;height:6px;background:var(--orange);margin-left:5px}nav{display:flex;gap:38px}nav a{font-size:14px;font-weight:600;position:relative;padding:12px 0}nav a:after{content:"";height:2px;background:var(--orange);position:absolute;left:0;right:100%;bottom:3px;transition:right .2s}nav a:hover:after{right:0}.hero{background:var(--navy);color:white;min-height:620px;position:relative;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.hero-copy{z-index:2;padding:75px 0 100px 12%;align-self:center}.eyebrow{font-family:Arial,sans-serif;font-size:12px;letter-spacing:2.3px;font-weight:600;margin:0 0 31px;color:#b8c8d2}.hero h1{font-size:clamp(36px,4.1vw,65px);line-height:1.65;letter-spacing:.015em;font-weight:650;white-space:nowrap;margin:0 0 24px}.hero h1 span{color:#d3dde3}.hero-description{font-size:16px;line-height:2.1;letter-spacing:.08em;color:#d2dbe1;margin:0 0 31px}.hero-link{font-size:14px;display:inline-flex;align-items:center;gap:46px;border-bottom:1px solid #63717c;padding:0 0 12px;transition:border-color .2s}.hero-link:hover{border-color:var(--orange)}.hero-link span{font-size:21px;color:var(--orange);font-weight:300}.hero-visual{position:relative;min-height:550px}.hero-visual img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:55% 50%;filter:brightness(.83) saturate(.65)}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,transparent 35%),linear-gradient(0deg,var(--navy),transparent 28%)}.image-caption{position:absolute;right:12%;top:36px;z-index:1;font-size:11px;letter-spacing:2px;color:#c0cdd6;writing-mode:vertical-rl}.hero-bottom{position:absolute;bottom:27px;left:6%;right:6%;display:flex;justify-content:space-between;z-index:3;color:#a9bac5;font-size:12px;letter-spacing:.1em}.section{max-width:1440px;padding:100px 6%;margin:auto;display:grid;grid-template-columns:27% 1fr;gap:24px}.section-label{display:flex;gap:18px;align-items:flex-start}.index{font-family:Arial,sans-serif;font-size:12px;color:#8b969e;padding-top:4px;letter-spacing:1px}.section-label p{margin:0;font-size:16px;font-weight:600}.section-label small{display:block;font-family:Arial,sans-serif;font-size:11px;letter-spacing:1.8px;font-weight:400;color:#7b8791;margin-top:10px}.about h2{font-size:clamp(27px,2.7vw,38px);font-weight:600;line-height:1.7;letter-spacing:.04em;margin:-10px 0 30px}.about-text{font-size:16px;line-height:2.1;color:#596570}.about-text p{margin:0 0 18px}.about-text p:last-child{margin-bottom:0}.product-section{background:#edf1f4;border-top:1px solid #e4e9ec;border-bottom:1px solid #e4e9ec}.product-inner{padding-top:70px;padding-bottom:70px}.product-content{display:grid;grid-template-columns:.85fr 1.3fr;gap:36px}.product-heading .eyebrow{color:#667984;letter-spacing:.08em;font-size:12px;margin:0 0 12px}.product-heading h2{font-family:Arial,Helvetica,sans-serif;font-size:47px;letter-spacing:-1.8px;margin:0;white-space:nowrap;font-weight:600}.product-heading h2 span{font-weight:300;color:#6e838f}.product-description h3{font-size:20px;font-weight:600;margin:0 0 17px;line-height:1.6}.product-description>p{font-size:14px;line-height:2;color:#596772;margin:0}.steps{display:flex;margin:26px 0;gap:22px;padding:18px 0;border-top:1px solid #cdd6dc;border-bottom:1px solid #cdd6dc}.steps span{font-size:13px;white-space:nowrap}.steps b{display:block;font-size:11px;letter-spacing:1px;color:#7b8d99;font-weight:400;margin-bottom:7px}.case-link{font-size:13px;display:inline-flex;gap:14px;align-items:center;border-bottom:1px solid #8997a1;padding-bottom:7px}.case-link:hover{color:#9a5725}.external{font-size:11px;color:#74838f}.product-description .case-note{font-size:11px;line-height:1.8;margin-top:11px;color:#7a8791}.company{padding-top:80px;padding-bottom:85px}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:150px 1fr;padding:23px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.8}.company dl>div:first-child{padding-top:0}.company dt{color:#74818b}.company dd{margin:0}footer{background:var(--deep);color:#f0f4f7;padding:44px 6%;display:flex;align-items:center;gap:45px}footer .brand{font-size:25px}footer p{color:#a8b8c3;font-size:13px;letter-spacing:.08em}footer small{margin-left:auto;color:#7e929f;font-size:11px}
@media(min-width:1600px){.hero-copy{padding-left:max(12%,calc((100vw - 1268px)/2))}.hero{min-height:680px}}
@media(max-width:1000px){.header{height:80px}.hero{min-height:570px}.hero-copy{padding-top:55px;padding-bottom:100px}.hero h1{font-size:41px}.hero-visual{min-height:540px}.section{grid-template-columns:23% 1fr;padding-top:75px;padding-bottom:75px}.product-content{grid-template-columns:1fr;gap:26px}.product-heading h2{font-size:42px}.product-heading .eyebrow{margin-bottom:9px}.product-description h3{font-size:20px}.steps{gap:36px}.company dl>div{grid-template-columns:120px 1fr}nav{gap:24px}}
@media(max-width:640px){html{scroll-padding-top:25px}.header{padding:0 6%;height:76px}.brand{font-size:25px}nav{gap:15px}nav a{font-size:11px}nav a:first-child{display:none}.hero{display:block;min-height:670px}.hero-copy{padding:50px 6% 250px;position:relative}.hero .eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:26px}.hero h1{font-size:clamp(32px,8.8vw,48px);line-height:1.65;margin-bottom:20px}.hero-description{font-size:14px;line-height:2;margin-bottom:24px}.hero-visual{position:absolute;inset:225px 0 0 20%;min-height:0;opacity:.72}.hero-visual:after{background:linear-gradient(180deg,var(--navy),transparent 65%),linear-gradient(90deg,var(--navy),transparent 65%),linear-gradient(0deg,var(--navy),transparent 35%)}.hero-visual img{object-position:55% center}.hero-link{font-size:13px;gap:33px}.image-caption{display:none}.hero-bottom{font-size:10px;bottom:24px}.hero-bottom span:last-child{font-size:9px}.section{display:block;padding:56px 6%}.section-label{gap:14px;margin-bottom:34px}.section-label p{font-size:14px}.section-label small{display:inline;margin-left:15px;font-size:10px}.index{padding-top:2px;font-size:11px}.about h2{font-size:27px;margin:0 0 23px}.about-text{font-size:14px;line-height:2.1}.desktop{display:none}.product-content{gap:25px}.product-heading h2{font-size:44px}.product-description h3{font-size:20px}.steps{gap:30px}.company dl>div{grid-template-columns:98px 1fr;font-size:13px;padding:18px 0}.company dl>div:first-child{padding-top:0}footer{flex-wrap:wrap;gap:18px;padding:32px 6%}footer p{font-size:11px;margin:0}footer small{width:100%;margin:0;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.contact{border-top:1px solid var(--line);padding-top:80px;padding-bottom:90px}.contact-form{display:grid;gap:24px;max-width:640px}.contact-form label{display:block;font-size:14px;color:#74818b}.optional{margin-left:10px;font-size:11px;color:#8b969e}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:9px;font:inherit;font-size:15px;line-height:1.7;color:var(--ink);background:#fff;border:1px solid #cdd6dc;border-radius:0;padding:11px 14px}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--orange);outline-offset:-1px;border-color:transparent}.contact-form button{justify-self:start;font:inherit;font-size:14px;font-weight:600;letter-spacing:.08em;color:#fff;background:var(--navy);border:0;padding:15px 48px;cursor:pointer;transition:background .2s}.contact-form button:hover{background:var(--ink)}.contact-form button:disabled{opacity:.55;cursor:default}.form-status{margin:0;font-size:13px;line-height:1.8;min-height:1.8em;color:var(--ink)}.form-status[data-state=error]{color:#b4442a}
@media(max-width:640px){.contact{padding-top:56px;padding-bottom:64px}.contact-form label{font-size:13px}.contact-form button{justify-self:stretch}}
