:root{--navy:#071936;--navy-2:#0b244c;--blue:#1769ff;--cyan:#53d4ff;--ice:#eef5ff;--ink:#0b1730;--muted:#5b677a;--line:#d9e2ef;--white:#fff;--shell:min(1180px,calc(100% - 48px));--radius:6px;--shadow:0 18px 60px rgba(5,27,66,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;background:#fff;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;z-index:999;top:8px;left:8px;padding:10px 14px;background:#fff;color:var(--navy);transform:translateY(-150%);transition:.2s}.skip-link:focus{transform:none}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:fixed;z-index:100;inset:0 0 auto;height:82px;color:#fff;background:linear-gradient(180deg,rgba(3,17,42,.84),rgba(3,17,42,.25),transparent);transition:background .25s,box-shadow .25s}.site-header.is-scrolled{background:rgba(7,25,54,.96);box-shadow:0 6px 24px rgba(0,0,0,.12);backdrop-filter:blur(14px)}.header-inner{width:var(--shell);height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:35px;height:32px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;align-items:end;transform:skewX(-15deg)}.brand-mark i{display:block;background:var(--cyan);height:40%}.brand-mark i:nth-child(2){height:70%;background:var(--blue)}.brand-mark i:nth-child(3){height:100%;background:#fff}.brand-copy{display:grid;line-height:1.08}.brand-copy b{font:800 1.35rem/1.05 Arial,sans-serif;letter-spacing:.16em}.brand-copy span{font-size:.72rem;letter-spacing:.04em}.global-nav{display:flex;align-items:center;gap:30px;font-size:.85rem;font-weight:650;letter-spacing:.04em}.global-nav>a{position:relative}.global-nav>a:not(.nav-contact):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--cyan);transition:right .2s}.global-nav>a:hover:after,.global-nav>a:focus-visible:after{right:0}.nav-contact{padding:10px 17px;border:1px solid rgba(255,255,255,.65);border-radius:3px}.menu-button{display:none}
.hero{position:relative;min-height:820px;height:100svh;max-height:980px;overflow:hidden;color:#fff;background:radial-gradient(circle at 75% 35%,rgba(24,105,255,.34),transparent 29%),linear-gradient(120deg,#05132c 0%,#071d43 52%,#0d3c84 100%)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(83,212,255,.07) 1px,transparent 1px),linear-gradient(rgba(83,212,255,.07) 1px,transparent 1px);background-size:76px 76px;mask-image:linear-gradient(90deg,transparent,black 45%,black)}.hero-grid{position:absolute;width:430px;height:430px;border:1px solid rgba(83,212,255,.23);border-radius:50%;right:10%;top:21%;box-shadow:0 0 0 58px rgba(83,212,255,.035),0 0 0 116px rgba(83,212,255,.025)}.hero-grid:before,.hero-grid:after{content:"";position:absolute;background:rgba(83,212,255,.22)}.hero-grid:before{width:1px;height:590px;left:50%;top:-80px}.hero-grid:after{height:1px;width:590px;top:50%;left:-80px}.hero-inner{position:relative;z-index:2;width:var(--shell);height:calc(100% - 90px);margin:auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);align-items:center;gap:8vw;padding-top:70px}.eyebrow,.section-index,.panel-label{margin:0 0 22px;color:var(--blue);font:700 .75rem/1.2 Arial,sans-serif;letter-spacing:.18em}.hero .eyebrow{color:var(--cyan)}.hero h1{margin:0;font-size:clamp(3rem,5.1vw,5.7rem);line-height:1.12;letter-spacing:-.045em;font-weight:760}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.3px rgba(255,255,255,.87)}.hero-lead{margin:30px 0 0;color:#d7e7ff;font-size:1.08rem;line-height:2}.hero-actions{display:flex;gap:12px;margin-top:36px}.button{min-width:188px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;border-radius:3px;font-weight:700;font-size:.91rem;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:#2b78ff}.button-secondary{border:1px solid rgba(255,255,255,.4);color:#fff}.button-secondary:hover{background:rgba(255,255,255,.08)}.hero-panel{height:520px;display:flex;flex-direction:column;padding:24px;border:1px solid rgba(128,194,255,.25);background:rgba(8,31,72,.35);backdrop-filter:blur(7px)}.panel-label{color:#a5cdfd}.focus-orbit{position:relative;flex:1;display:grid;place-items:center}.orbit-core{width:210px;height:210px;border:1px solid rgba(83,212,255,.5);border-radius:50%;display:grid;align-content:center;text-align:center;background:radial-gradient(circle,rgba(23,105,255,.32),rgba(7,25,54,.2));box-shadow:0 0 55px rgba(52,137,255,.18)}.orbit-core span{font-size:.73rem;letter-spacing:.12em;color:#9ab9e5}.orbit-core b{font-size:1.45rem;line-height:1.45;letter-spacing:.06em}.orbit-node{position:absolute;padding:8px 13px;border:1px solid rgba(255,255,255,.24);background:#0b2551;font-size:.78rem;letter-spacing:.08em}.node-a{left:2%;top:22%}.node-b{right:0;top:38%}.node-c{left:16%;bottom:13%}.panel-foot{display:flex;justify-content:space-between;color:#8eacd5;font:700 .67rem/1 Arial,sans-serif;letter-spacing:.16em}.hero-bottom{position:absolute;z-index:2;left:50%;bottom:0;transform:translateX(-50%);width:var(--shell);height:90px;border-top:1px solid rgba(255,255,255,.17);display:flex;align-items:center;justify-content:space-between;color:#9ab3d4;font:700 .65rem/1 Arial,sans-serif;letter-spacing:.14em}.hero-proof{display:flex;height:100%;align-items:center}.hero-proof span{height:100%;display:flex;align-items:center;padding:0 28px;border-left:1px solid rgba(255,255,255,.17);color:#e9f3ff;font-family:inherit;font-size:.75rem;letter-spacing:.05em}
.trust-bar{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 16px 45px rgba(5,27,66,.07)}.trust-grid{display:grid;grid-template-columns:.75fr .85fr 1.2fr 1.2fr}.trust-grid p{min-height:132px;margin:0;padding:27px 30px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line)}.trust-grid p:first-child{border-left:1px solid var(--line)}.trust-grid strong{color:var(--navy);font:800 1.35rem/1.25 Arial,sans-serif;letter-spacing:-.02em}.trust-grid p:nth-child(-n+2) strong{font-size:2rem;color:var(--blue)}.trust-grid span{margin-top:7px;color:var(--muted);font-size:.8rem;line-height:1.55}.trust-grid small{display:block;font-size:.68rem;color:#7a8799}
.section-shell{width:var(--shell);margin:auto}.intro{padding:125px 0}.intro-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:start}.intro h2,.section-heading h2,.career-copy h2,.contact h2{margin:0;font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.28;letter-spacing:-.04em}.intro h2{font-size:clamp(2.2rem,3.1vw,2.9rem)}.intro h2 span{display:block;white-space:nowrap}.intro-copy{padding-top:12px;color:var(--muted);font-size:1.03rem}.intro-copy p{margin:0 0 20px}
.services{padding:120px 0;background:var(--ice)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:55px}.section-heading h2{font-size:clamp(2rem,3.2vw,3.4rem)}.section-heading p{margin:0;color:var(--muted)}.service-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #b9c9dd}.service-tabs button{appearance:none;border:0;border-right:1px solid #c9d7e8;background:transparent;padding:20px 15px;text-align:left;color:#68758a;font-size:.85rem;cursor:pointer;transition:.2s}.service-tabs button:first-child{border-left:1px solid #c9d7e8}.service-tabs button span{display:block;margin-bottom:8px;color:#8ca1bd;font:700 .66rem/1 Arial,sans-serif;letter-spacing:.1em}.service-tabs button[aria-selected="true"]{color:#fff;background:var(--navy);border-color:var(--navy)}.service-stage{background:#fff;box-shadow:var(--shadow)}.service-stage article{min-height:470px;display:grid;grid-template-columns:130px minmax(0,1fr) minmax(320px,.8fr);gap:30px;padding:68px}.service-number{color:#b8c6d9;font:300 4.8rem/1 Arial,sans-serif}.service-kicker{margin:2px 0 16px;color:var(--blue);font:700 .69rem/1 Arial,sans-serif;letter-spacing:.16em}.service-content h3{margin:0;font-size:2rem;line-height:1.45}.service-content>p:not(.service-kicker){color:var(--muted);max-width:560px}.service-content ul{margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;list-style:none}.service-content li{padding:7px 11px;background:var(--ice);font-size:.78rem}.service-visual{position:relative;align-self:stretch;min-height:300px;overflow:hidden;background:linear-gradient(145deg,#071936,#11468f);display:flex;flex-direction:column;justify-content:center;padding:35px;color:#bdd8ff;font:700 .7rem/1 Arial,sans-serif;letter-spacing:.2em}.service-visual span{padding:19px 0;border-bottom:1px solid rgba(255,255,255,.18)}.service-visual i{position:absolute;width:180px;height:180px;border:38px solid rgba(83,212,255,.18);border-radius:50%;right:-60px;bottom:-55px}.visual-code{background:linear-gradient(145deg,#08203a,#00667a)}.visual-network{background:linear-gradient(145deg,#071936,#3636a8)}.visual-people{background:linear-gradient(145deg,#121b38,#1d6e91)}
.strengths{padding:130px 0}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.strength-grid article{padding:50px 40px 55px;border-right:1px solid var(--line)}.strength-grid article:first-child{border-left:1px solid var(--line)}.strength-grid span{color:var(--blue);font:700 .72rem/1 Arial,sans-serif}.strength-grid h3{margin:55px 0 14px;font-size:1.45rem}.strength-grid p{margin:0;color:var(--muted)}.case-strip{display:grid;grid-template-columns:150px 1fr;align-items:start;gap:30px;margin-top:34px}.case-strip p{margin:7px 0;color:var(--muted);font-size:.8rem}.case-strip div{display:flex;flex-wrap:wrap;gap:9px}.case-strip span{padding:8px 14px;border:1px solid var(--line);border-radius:30px;font-size:.78rem}
.careers{position:relative;overflow:hidden;padding:125px 0;background:var(--navy);color:#fff}.career-rail{position:absolute;top:20px;left:-20px;white-space:nowrap;color:rgba(255,255,255,.035);font:800 7.5rem/1 Arial,sans-serif;letter-spacing:-.03em}.career-layout{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.section-index-light{color:var(--cyan)}.career-copy>p:not(.section-index){margin:28px 0;color:#b9c9df}.text-link{display:inline-flex;gap:22px;align-items:center;margin-top:16px;padding-bottom:8px;border-bottom:1px solid var(--cyan);font-weight:700}.career-cards{display:grid;gap:1px;background:rgba(255,255,255,.12)}.career-cards article{padding:28px 34px;background:#0b2248;transition:background .2s}.career-cards article:hover{background:#0f2c5d}.career-cards span{color:var(--cyan);font:700 .65rem/1 Arial,sans-serif;letter-spacing:.18em}.career-cards h3{margin:8px 0 5px;font-size:1.25rem}.career-cards p{margin:0;color:#aebed6;font-size:.9rem}
.company{padding:125px 0}.company-list{margin:0;border-top:1px solid var(--line)}.company-list div{display:grid;grid-template-columns:230px 1fr;padding:24px 0;border-bottom:1px solid var(--line)}.company-list dt{color:var(--muted);font-size:.85rem}.company-list dd{margin:0;font-weight:550}.company-list dd span{color:var(--muted);font-size:.87rem;font-weight:400}
.contact{padding:120px 0;background:linear-gradient(135deg,#0c3271,#1769ff);color:#fff}.contact-inner{text-align:center}.contact h2{font-size:clamp(2.4rem,4.5vw,4.8rem)}.contact-inner>p:not(.section-index){color:#d7e6ff}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:45px}.contact-options a{display:flex;align-items:center;justify-content:space-between;padding:28px 32px;text-align:left;background:#fff;color:var(--navy);transition:transform .2s,box-shadow .2s}.contact-options a:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(0,0,0,.18)}.contact-options span{font-weight:750}.contact-options small{display:block;color:var(--blue);font:700 .62rem/1 Arial,sans-serif;letter-spacing:.17em;margin-bottom:8px}.contact-options em{display:block;margin-top:5px;color:var(--muted);font-style:normal;font-size:.76rem;font-weight:500}.contact-options b{font-size:1.4rem}.contact-inner .contact-note{margin:16px 0 0;color:#c7dbff;font-size:.76rem}
.site-footer{padding:48px max(24px,calc((100% - 1180px)/2));display:grid;grid-template-columns:1fr auto;align-items:center;gap:25px;background:#041128;color:#fff}.footer-brand{display:flex;align-items:center;gap:13px}.footer-brand .brand-mark{width:28px;height:25px}.footer-links{display:flex;gap:24px;font-size:.8rem;color:#b8c5d8}.site-footer>p{margin:0;color:#7185a4;font:500 .65rem/1.4 Arial,sans-serif}.demo-note{text-align:right}
@media(max-width:900px){:root{--shell:min(100% - 36px,720px)}html{scroll-padding-top:68px}.site-header{height:68px}.brand-copy b{font-size:1.12rem}.brand-copy span{font-size:.62rem}.brand-mark{width:29px;height:27px}.menu-button{display:grid;width:44px;height:44px;padding:12px;border:0;background:transparent;align-content:center;gap:5px}.menu-button span:not(.sr-only){display:block;height:1px;background:#fff;transition:.2s}.menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.global-nav{position:fixed;inset:68px 0 auto;display:none;padding:18px;background:rgba(7,25,54,.98);box-shadow:0 15px 30px rgba(0,0,0,.2)}.global-nav.is-open{display:grid}.global-nav a{padding:11px 4px}.nav-contact{margin-top:5px;text-align:center}.hero{min-height:820px;height:auto;max-height:none;padding:115px 0 95px}.hero-inner{height:auto;display:grid;grid-template-columns:1fr;gap:46px;padding-top:0}.hero h1{font-size:clamp(2.65rem,10vw,4.6rem)}.hero-panel{height:380px}.focus-orbit{transform:scale(.83)}.hero-bottom{display:none}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid p:nth-child(3){border-left:1px solid var(--line)}.intro{padding:85px 0}.intro-layout{grid-template-columns:1fr;gap:30px}.services,.strengths,.careers,.company,.contact{padding:90px 0}.section-heading{display:block;margin-bottom:36px}.section-heading>p{margin-top:14px}.service-tabs{grid-template-columns:1fr 1fr}.service-tabs button:nth-child(3){border-left:1px solid #c9d7e8}.service-stage article{grid-template-columns:80px 1fr;padding:42px}.service-visual{grid-column:1/-1;min-height:210px}.career-layout{grid-template-columns:1fr;gap:55px}.career-rail{font-size:5rem}.strength-grid{grid-template-columns:1fr}.strength-grid article,.strength-grid article:first-child{border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.strength-grid article:last-child{border-bottom:0}.strength-grid h3{margin-top:20px}.contact-options{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}.demo-note{text-align:left}}
@media(max-width:560px){:root{--shell:calc(100% - 28px)}body{font-size:16px}.brand-copy span{display:none}.hero{min-height:760px;padding-top:105px}.hero .eyebrow{font-size:.64rem;line-height:1.6}.hero h1{font-size:2.72rem;line-height:1.2;letter-spacing:-.055em}.hero-lead{font-size:.96rem;line-height:1.8}.desktop-only{display:none}.hero-actions{display:grid}.button{min-width:0}.hero-panel{height:330px;padding:18px}.orbit-core{width:175px;height:175px}.orbit-core b{font-size:1.2rem}.node-a{left:-6%}.node-b{right:-7%}.node-c{left:5%}.trust-grid{grid-template-columns:1fr}.trust-grid p{min-height:0;padding:20px 22px;border-left:1px solid var(--line)}.trust-grid p:nth-child(-n+2) strong{font-size:1.6rem}.intro h2,.section-heading h2,.career-copy h2,.contact h2{font-size:2.1rem}.section-index{margin-bottom:14px}.service-tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-bottom:0}.service-tabs button{min-width:155px;scroll-snap-align:start;border:1px solid #c9d7e8!important}.service-stage article{display:grid;grid-template-columns:1fr;padding:30px 22px}.service-number{font-size:3rem}.service-content h3{font-size:1.5rem}.service-visual{grid-column:auto;min-height:190px}.case-strip{grid-template-columns:1fr;gap:8px}.career-cards article{padding:24px}.company-list div{grid-template-columns:1fr;gap:5px}.contact-options a{padding:23px 20px}.footer-links{flex-wrap:wrap}.site-footer{padding-top:40px;padding-bottom:40px}.footer-brand strong{font-size:.87rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
*:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.service-stage article[hidden]{display:none}
@media(min-width:901px){.hero h1{font-size:clamp(3rem,3.85vw,4.25rem)}}
@media(max-width:560px){.hero h1{font-size:clamp(2.25rem,10.9vw,2.72rem)}.hero h1 em{font-size:.82em}.intro h2{font-size:1.95rem}}

/* 2026 concept refinement: clearer hierarchy and a grounded project-flow hero */
html{scroll-padding-top:120px}
.demo-ribbon{position:fixed;z-index:102;inset:0 0 auto;height:28px;display:flex;align-items:center;justify-content:center;gap:10px;background:#dce9fb;color:#19375f;font-size:.75rem;font-weight:700;letter-spacing:.08em}
.demo-ribbon span{padding-left:10px;border-left:1px solid #9eb7d8;color:#325f9d}
.site-header{inset:28px 0 auto}
.hero{background:linear-gradient(118deg,#051329 0%,#071a35 56%,#0b2b57 100%)}
.hero h1>span,.hero h1 em>span{display:block;white-space:nowrap}.hero h1 em{display:block;color:#79d9ff;-webkit-text-stroke:0}
.hero-lead{max-width:650px}
.hero-career-link{display:inline-flex;align-items:center;gap:18px;margin-top:22px;padding-bottom:4px;border-bottom:1px solid rgba(121,217,255,.65);color:#c8dcf5;font-size:.85rem;font-weight:700}
.hero-career-link:hover,.hero-career-link:focus-visible{color:#fff;border-color:#79d9ff}
.hero-panel{height:520px;padding:30px;background:rgba(5,23,50,.78);border-color:rgba(128,194,255,.3);box-shadow:18px 18px 0 rgba(56,129,223,.12);backdrop-filter:none}
.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.16)}
.panel-heading .panel-label{margin:0;color:#83dfff}
.panel-heading>span{color:#a8bdd9;font-size:.8rem}
.workflow-list{flex:1;margin:0;padding:8px 0;list-style:none;display:grid}
.workflow-list li{display:grid;grid-template-columns:42px 1fr;gap:18px;align-items:center;border-bottom:1px solid rgba(255,255,255,.13)}
.workflow-list li>span{color:#64d9ff;font:700 .76rem/1 Arial,sans-serif;letter-spacing:.12em}
.workflow-list b,.workflow-list small{display:block}
.workflow-list b{font-size:1.06rem}
.workflow-list small{margin-top:2px;color:#9eb3d0;font-size:.78rem}
.panel-foot{padding-top:20px;font-size:.75rem}
.trust-grid small{font-size:.75rem}
.contact-options small{font-size:.75rem}
.contact-inner .contact-note,.site-footer>p{font-size:.75rem}
.results{padding:125px 0 135px}
.result-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.result-grid article{position:relative;min-height:300px;padding:36px 34px 42px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f7faff)}
.result-grid article:before{content:"";position:absolute;inset:0 auto auto;width:62px;height:3px;background:var(--blue)}
.result-type{margin:0 0 44px;color:var(--blue);font:700 .75rem/1 Arial,sans-serif;letter-spacing:.15em}
.result-grid h3{margin:0 0 16px;font-size:1.35rem;line-height:1.5}
.result-grid article>p:last-child{margin:0;color:var(--muted);font-size:.92rem}
.results-note{margin:18px 0 0;color:var(--muted);font-size:.78rem}
@media(max-width:900px){html{scroll-padding-top:104px}.global-nav{inset:96px 0 auto}.hero-panel{height:410px}.workflow-list li{min-height:68px}}
@media(max-width:900px){.results{padding:90px 0}.result-grid{grid-template-columns:1fr}.result-grid article{min-height:0}.result-type{margin-bottom:24px}}
@media(max-width:560px){.demo-ribbon{font-size:.68rem;letter-spacing:.04em}.hero{padding-top:132px}.hero h1 em{font-size:.82em}.hero-panel{height:auto;min-height:370px;padding:20px;box-shadow:10px 10px 0 rgba(56,129,223,.12)}.panel-heading{display:block}.panel-heading>span{display:block;margin-top:7px}.workflow-list li{min-height:66px}.workflow-list b{font-size:.98rem}.workflow-list small{font-size:.75rem}.hero-career-link{font-size:.8rem}.result-grid article{padding:28px 24px 32px}}
