:root{--ink:#07162f;--navy:#071c3c;--blue:#0b5cff;--cyan:#11d8e8;--gold:#d8b46a;--paper:#f5f8fb;--line:#d8e1ea;--muted:#53647a;--max:1200px;--pad:clamp(22px,5vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:'Noto Sans JP','Yu Gothic','Hiragino Kaku Gothic ProN',Arial,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea{font:inherit}.noise{position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;height:76px;padding:0 max(24px,4vw);display:flex;align-items:center;justify-content:space-between;transition:.35s}.site-header.scrolled{height:64px;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(7,28,60,.08)}.brand{display:flex;align-items:center;gap:11px;font-weight:700;letter-spacing:-.02em}.brand-applied{display:inline-flex;flex:0 0 auto;line-height:0}.brand-applied img{display:block;width:auto;max-width:100%;object-fit:contain}.brand-applied-header img{height:42px}.brand-applied-footer img{height:58px;filter:grayscale(1) invert(1) contrast(8);mix-blend-mode:screen}.site-header nav{display:flex;align-items:center;gap:clamp(20px,2.6vw,40px);font-size:13px;font-weight:600}.site-header nav>a:not(.nav-cta){position:relative}.site-header nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--blue);transition:.25s}.site-header nav>a:hover:after{right:0}.nav-cta{padding:12px 22px;color:white;background:var(--ink);border-radius:999px}.menu-button{display:none;background:none;border:0;padding:10px}.menu-button span{display:block;width:24px;height:1.5px;background:var(--ink);margin:6px}
.hero{position:relative;min-height:920px;padding:150px var(--pad) 48px;overflow:hidden;background:radial-gradient(circle at 72% 32%,#edf7ff 0,rgba(239,248,255,.5) 23%,transparent 50%),linear-gradient(135deg,#fff 0,#f8fbff 54%,#eef4f9 100%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(12,73,125,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(12,73,125,.045) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,transparent 15%,#000 55%,transparent)}.hero-copy{position:relative;z-index:3;max-width:750px;margin:0 auto 0 max(0px,calc((100vw - var(--max))/2))}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 32px;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#4e647e}.eyebrow span{width:32px;height:1px;background:var(--blue)}.hero h1{margin:0;font-size:clamp(46px,6.3vw,92px);line-height:1.08;letter-spacing:-.06em;font-weight:600}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.3px var(--ink)}.hero-name{margin:20px 0 28px;color:var(--blue);font-size:clamp(31px,4vw,58px);font-weight:700;letter-spacing:-.05em}.hero-lead{max-width:610px;color:#43556b;font-size:clamp(16px,1.45vw,20px);line-height:1.9}.hero-lead strong{color:var(--ink)}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;border:0;border-radius:3px;padding:18px 24px;font-weight:600;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--blue);box-shadow:0 14px 36px rgba(11,92,255,.22)}.button-primary:hover{background:#004bdc;box-shadow:0 18px 42px rgba(11,92,255,.32)}.text-link{font-size:14px;font-weight:600}.text-link span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:8px;border:1px solid #bbc8d6;border-radius:50%}.hero-visual{position:absolute;z-index:1;right:max(-150px,calc((100vw - 1540px)/2));top:105px;width:min(58vw,880px);height:650px;overflow:hidden;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%)}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f9fcff 0,transparent 25%,transparent 80%,rgba(242,247,251,.5))}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:79% center;transform:scale(1.22)}.orbit{position:absolute;z-index:2;left:47%;top:45%;border:1px solid rgba(17,216,232,.3);border-radius:50%;animation:spin 16s linear infinite}.orbit:before{content:"";position:absolute;width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 16px var(--cyan)}.orbit-a{width:340px;height:340px;margin:-170px}.orbit-a:before{left:36px;top:36px}.orbit-b{width:450px;height:450px;margin:-225px;animation-direction:reverse;animation-duration:23s}.orbit-b:before{right:44px;bottom:44px}.status-card{position:absolute;z-index:3;right:13%;bottom:8%;width:190px;padding:15px 18px 15px 38px;background:rgba(4,20,42,.78);color:#fff;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(12px);box-shadow:0 14px 50px rgba(2,16,37,.24)}.status-card small,.status-card b{display:block}.status-card small{font-size:9px;letter-spacing:.16em;color:#8edeea}.status-card b{margin-top:4px;font-size:12px}.pulse{position:absolute;left:18px;top:24px;width:8px;height:8px;background:#3ff1b8;border-radius:50%;box-shadow:0 0 0 6px rgba(63,241,184,.15)}.hero-foot{position:absolute;z-index:4;bottom:42px;left:var(--pad);right:var(--pad);max-width:var(--max);margin:auto;display:flex;border-top:1px solid rgba(7,28,60,.14);padding-top:24px}.hero-foot div{display:flex;align-items:center;gap:13px;min-width:190px}.hero-foot b{font-size:11px;color:var(--blue)}.hero-foot span{font-size:12px;line-height:1.5;color:#53647a}
.section{padding:clamp(90px,11vw,160px) var(--pad)}.section-label{max-width:var(--max);margin:0 auto 65px;display:flex;align-items:center;gap:15px;font-size:10px;letter-spacing:.2em;font-weight:700;color:#657489}.section-label:after{content:"";width:64px;height:1px;background:#b8c5d1}.section-label span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #bdc8d2;border-radius:50%;color:var(--blue)}.section-label.light{color:#9fb0c3}.section-label.light:after{background:#35506e}.section-label.light span{border-color:#35506e;color:var(--cyan)}
.statement{background:#fff}.statement-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.35fr .65fr;gap:9vw}.statement h2{margin:0;font-size:clamp(37px,5.2vw,70px);line-height:1.3;letter-spacing:-.055em;font-weight:500}.statement h2 em{font-style:normal;color:var(--blue)}.statement-copy{padding-top:12px;color:var(--muted);font-size:16px;line-height:2}.shift-diagram{max-width:var(--max);margin:100px auto 0;padding:44px;display:grid;grid-template-columns:1fr 130px 1.1fr;align-items:center;background:#f4f7fa;border:1px solid #e0e7ee}.flow-kicker{display:block;margin-bottom:23px;font-size:10px;letter-spacing:.17em;color:#728198}.flow-line,.knowledge-loop{display:flex;align-items:center;gap:18px}.flow-line div{display:flex;align-items:center;justify-content:center;width:76px;height:62px;border:1px solid #bbc7d2;background:#fff;font-size:12px}.flow-line i{font-style:normal;color:#97a6b5}.old-flow p,.new-flow p{margin:22px 0 0;font-size:12px;color:#66778b}.shift-arrow{text-align:center;color:var(--blue);font-size:28px}.shift-arrow span{display:block;font-size:9px;letter-spacing:.2em}.new-flow{padding-left:25px;border-left:1px solid #d4dde6}.knowledge-loop span{font-size:12px}.knowledge-loop strong{display:flex;align-items:center;justify-content:center;width:78px;height:78px;border-radius:50%;color:white;background:radial-gradient(circle at 30% 30%,#16d6e3,#0b5cff 75%);box-shadow:0 10px 30px rgba(11,92,255,.25)}
.reasons{background:var(--paper)}.section-heading{max-width:var(--max);margin:0 auto 70px;display:grid;grid-template-columns:.65fr 1.35fr;align-items:end}.section-heading p{margin:0 0 12px;color:var(--blue);font-size:14px;font-weight:600}.section-heading h2{margin:0;font-size:clamp(52px,7vw,96px);line-height:1;letter-spacing:-.07em;font-weight:500}.reason-list{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd7e1}.reason{position:relative;padding:42px 34px 8px;border-right:1px solid #cbd7e1}.reason:first-child{padding-left:0}.reason:last-child{border-right:0}.reason-no{position:absolute;top:18px;right:26px;font-size:10px;color:#8190a1}.icon-wrap{width:68px;height:68px;margin-bottom:40px}.icon-wrap svg{width:100%;height:100%;fill:none;stroke:#0c5ddc;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.reason h3{font-size:21px;letter-spacing:-.02em}.reason p{color:var(--muted);font-size:14px;line-height:1.95}
.solutions{color:white;background:#07182f;overflow:hidden}.solutions-intro{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.25fr .75fr;gap:10vw;align-items:end}.solutions-intro h2{margin:0;font-size:clamp(40px,5vw,68px);line-height:1.25;letter-spacing:-.055em;font-weight:500}.solutions-intro p{margin:0;color:#a8b7c8;font-size:14px;line-height:2}.solution-tabs{max-width:var(--max);margin:75px auto 0;display:flex;border-bottom:1px solid #2a4059}.solution-tabs button{min-width:180px;padding:0 0 17px;border:0;background:none;color:#71849c;text-align:left;cursor:pointer;font-weight:600}.solution-tabs button.active{color:white;border-bottom:2px solid var(--cyan)}.tab-panel{max-width:var(--max);margin:55px auto 0;display:grid;grid-template-columns:1fr .95fr;gap:7vw;align-items:center}.tab-panel[hidden]{display:none}.solution-index{color:var(--cyan);font-size:10px;letter-spacing:.18em}.solution-copy h3{margin:20px 0 42px;font-size:clamp(29px,3.4vw,45px);line-height:1.35;letter-spacing:-.04em}.solution-item{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:22px 0;border-top:1px solid #263c54}.solution-item>span{color:#6d829b;font-size:11px}.solution-item h4{margin:0 0 9px;font-size:16px}.solution-item p{margin:0;color:#a7b6c6;font-size:13px;line-height:1.8}.solution-image{height:560px;overflow:hidden;clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);background:#122945}.solution-image img{width:100%;height:100%;object-fit:cover;object-position:79% center;transform:scale(1.45)}#operations .solution-image img{object-position:84% center;transform:scale(1.55)}
.spec{position:relative;overflow:hidden;color:white;background:#020c1b}.spec-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 75% 40%,rgba(11,92,255,.23),transparent 33%),linear-gradient(120deg,transparent 50%,rgba(17,216,232,.05) 50%)}.spec>*:not(.spec-backdrop){position:relative}.spec-head{max-width:var(--max);margin:auto}.spec-head>p:first-child{color:var(--cyan);font-size:13px;font-weight:600}.spec-head h2{margin:16px 0 22px;font-size:clamp(39px,5vw,66px);line-height:1.25;letter-spacing:-.05em;font-weight:500}.spec-head>p:last-child{max-width:650px;color:#9aabba;line-height:1.8}.spec-layout{max-width:var(--max);margin:75px auto 0;display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}.spec-visual{height:560px;overflow:hidden;background:#dce3e8;clip-path:polygon(0 0,100% 5%,92% 100%,5% 94%)}.spec-visual img{width:100%;height:100%;object-fit:cover;object-position:77% center;transform:scale(1.58)}.spec-list{margin:0}.spec-list>div{display:grid;grid-template-columns:110px 1fr;padding:25px 0;border-top:1px solid #263b53}.spec-list dt{color:#63dce8;font-size:10px;letter-spacing:.16em}.spec-list b,.spec-list span{display:block}.spec-list b{font-size:15px}.spec-list span{margin-top:7px;color:#91a4b7;font-size:12px;line-height:1.6}
.trust{background:#fff}.trust-head{max-width:var(--max);margin:auto}.trust-head>p{color:var(--blue);font-size:13px;font-weight:600}.trust-head h2{margin:17px 0 70px;font-size:clamp(39px,5.3vw,70px);line-height:1.25;letter-spacing:-.06em;font-weight:500}.trust-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.trust-card{min-height:330px;padding:35px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#f3f7fa,#e6edf4);border:1px solid #dbe3eb;transition:.3s}.trust-card:hover{transform:translateY(-6px);box-shadow:0 22px 60px rgba(17,42,70,.12)}.trust-card>span{color:var(--blue);font-size:11px}.trust-card div>p:first-child{font-size:9px;letter-spacing:.16em;color:#64788e}.trust-card h3{margin:12px 0;font-size:21px}.trust-card div>p:last-child{color:var(--muted);font-size:13px;line-height:1.85}
.roadmap{background:var(--paper)}.roadmap-head{max-width:var(--max);margin:auto;display:flex;justify-content:space-between;align-items:end}.roadmap-head h2{margin:0;font-size:clamp(46px,6vw,80px);line-height:1.12;letter-spacing:-.065em;font-weight:500}.roadmap-head p{max-width:330px;margin:0 0 10px;color:var(--muted);font-size:14px;line-height:1.8}.roadmap-track{position:relative;max-width:var(--max);margin:85px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.roadmap-track:before{content:"";position:absolute;left:0;right:0;top:-20px;height:1px;background:linear-gradient(90deg,var(--blue),var(--cyan),var(--gold))}.phase{position:relative;min-height:340px;padding:34px 30px;background:white;border:1px solid #dce5ed}.phase:before{content:"";position:absolute;width:9px;height:9px;top:-25px;left:0;border-radius:50%;background:var(--blue);box-shadow:0 0 0 6px rgba(11,92,255,.12)}.phase:nth-child(2):before{background:var(--cyan)}.phase:nth-child(3):before{background:var(--gold)}.phase-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid #e3e9ef}.phase-top span{font-size:10px;letter-spacing:.14em;color:var(--blue)}.phase-top b{font-size:12px}.phase h3{margin:28px 0 18px;font-size:21px}.phase p{color:var(--muted);font-size:13px;line-height:1.9}.phase strong{position:absolute;left:30px;bottom:32px;color:#233b57;font-size:13px}
.contact{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8vw;color:white;background:#061833;overflow:hidden}.contact-glow{position:absolute;width:650px;height:650px;left:-120px;bottom:-380px;border-radius:50%;background:#0b5cff;filter:blur(90px);opacity:.27}.contact>*:not(.contact-glow){position:relative}.contact .section-label{margin-left:0;margin-bottom:45px}.contact-copy h2{margin:0;font-size:clamp(39px,4.7vw,64px);line-height:1.25;letter-spacing:-.055em;font-weight:500}.contact-copy>p{max-width:560px;color:#a8b8ca;line-height:1.9}.contact-copy ul{list-style:none;padding:20px 0 0;margin:0}.contact-copy li{position:relative;padding:10px 0 10px 24px;color:#c3cfdb;font-size:13px}.contact-copy li:before{content:"";position:absolute;left:0;top:17px;width:8px;height:8px;border:1px solid var(--cyan);border-radius:50%}.contact-form{padding:42px;background:white;color:var(--ink);box-shadow:0 35px 90px rgba(0,0,0,.25)}.contact-form label{display:block;margin-bottom:21px;font-size:11px;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form input,.contact-form textarea{width:100%;margin-top:9px;padding:14px 0;border:0;border-bottom:1px solid #cbd5df;border-radius:0;outline:none;color:var(--ink);background:transparent;transition:.2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue)}.contact-form textarea{resize:vertical}.contact-form .button{width:100%;margin-top:6px}.form-note{margin:14px 0 0;color:#8795a4;font-size:10px;text-align:center;line-height:1.6}
footer{min-height:160px;padding:45px var(--pad);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;color:#91a1b2;background:#020b18}footer .brand{color:white}footer p{text-align:center;font-size:10px;letter-spacing:.16em}footer small{text-align:right;font-size:10px}.toast{position:fixed;z-index:100;left:50%;bottom:30px;transform:translate(-50%,130px);padding:15px 22px;color:white;background:#0b5cff;border-radius:4px;box-shadow:0 14px 45px rgba(0,0,0,.28);font-size:13px;transition:.4s}.toast.show{transform:translate(-50%,0)}
.hero-copy{max-width:760px}.hero h1{font-size:clamp(50px,5vw,70px);line-height:1.12;letter-spacing:-.055em;white-space:nowrap}.hero h1 span,.hero h1 em{display:block}.hero h1 em{margin-top:.08em;color:var(--blue);font-weight:700;-webkit-text-stroke:0;text-shadow:0 8px 28px rgba(11,92,255,.12)}
.status-card small,.section-label,.flow-kicker,.shift-arrow span,.reason-no,.solution-index,.spec-list dt,.trust-card div>p:first-child,.phase-top span{font-size:11px}
.hero-foot{bottom:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border-top:0;padding-top:0}.hero-foot div{position:relative;min-width:0;display:flex;align-items:center;gap:18px;padding:18px 20px;overflow:hidden;background:rgba(255,255,255,.84);border:1px solid rgba(116,145,177,.25);border-radius:8px;box-shadow:0 12px 34px rgba(24,58,94,.1);backdrop-filter:blur(14px);transition:transform .25s,box-shadow .25s}.hero-foot div:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--blue),var(--cyan))}.hero-foot div:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(24,58,94,.16)}.hero-foot b{display:flex;flex:0 0 44px;align-items:center;justify-content:center;width:44px;height:44px;font-size:12px;color:var(--blue);background:#edf4ff;border:1px solid #cbdcff;border-radius:50%}.hero-foot span{display:flex;min-width:0;flex-direction:column;gap:4px;line-height:1.45;color:var(--ink)}.hero-foot strong{font-size:15px;letter-spacing:-.02em}.hero-foot small{font-size:11px;color:#62758a}
.statement-grid{grid-template-columns:1.18fr .82fr;gap:6vw;align-items:start}.statement h2{font-size:clamp(38px,4.05vw,54px);line-height:1.24;letter-spacing:-.05em}.statement h2>span,.statement h2>em,.statement h2 em span{display:block;white-space:nowrap}.statement h2 em{margin-top:.12em}.shift-diagram{margin-top:76px;padding:0;grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr);gap:16px;align-items:stretch;background:transparent;border:0}.old-flow,.new-flow{padding:34px;background:linear-gradient(145deg,#f7f9fb,#eef3f7);border:1px solid #d8e2eb;border-radius:10px}.new-flow{padding-left:34px;border-left:1px solid #d8e2eb;background:linear-gradient(145deg,#f4f9ff,#e9f3ff)}.flow-head{display:flex;align-items:center;gap:13px;margin-bottom:26px}.flow-head h3{margin:0;font-size:20px;letter-spacing:-.02em}.flow-kicker{margin:0;padding:6px 8px;color:var(--blue);background:#e8f0ff;border-radius:3px;font-size:10px;line-height:1;letter-spacing:.14em}.flow-line{justify-content:space-between;gap:10px}.flow-line div{width:auto;min-width:0;flex:1;height:86px;flex-direction:column;gap:7px;border-color:#b9c9d8;border-radius:5px}.flow-line div small,.knowledge-loop small{display:block;font-size:10px;letter-spacing:.12em;color:#7a8b9e}.flow-line div strong{font-size:17px}.flow-line i,.knowledge-loop i{color:#8ba0b5;font-size:18px}.old-flow p,.new-flow p{margin-top:22px;font-size:14px;line-height:1.7;color:#53677d}.shift-arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--blue);font-size:inherit}.shift-arrow span{font-size:11px;letter-spacing:.18em}.shift-arrow b{display:flex;align-items:center;justify-content:center;width:58px;height:58px;font-size:28px;font-weight:400;background:#edf4ff;border:1px solid #c9dcff;border-radius:50%}.shift-arrow small{font-size:10px;color:#73869a}.knowledge-loop{justify-content:space-between;gap:10px}.knowledge-loop span{font-size:14px;font-weight:600;text-align:center}.knowledge-loop strong{flex:0 0 76px;width:76px;height:76px}.knowledge-loop i{font-style:normal}.section-heading{grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}.section-heading .section-kicker{margin:0 0 18px;color:var(--blue);font-size:14px;font-weight:600}.section-heading h2{font-size:clamp(44px,5vw,64px);line-height:1.12;letter-spacing:-.055em;text-wrap:balance}.section-heading h2 em{font-style:normal;color:var(--blue)}.section-heading .section-summary{max-width:430px;margin:0 0 6px;color:var(--muted);font-size:16px;line-height:1.9}.solutions-intro h2{font-size:clamp(40px,4.2vw,54px);text-wrap:balance}.solution-copy h3{font-size:clamp(30px,3vw,38px)}.spec-head h2{font-size:clamp(40px,4.5vw,58px);text-wrap:balance}.trust-head h2{font-size:clamp(40px,4.4vw,56px);text-wrap:balance}.trust-card{min-height:300px;padding:32px}.trust-card>span{font-size:34px;font-weight:600;color:rgba(11,92,255,.18)}.trust-card div{margin-top:auto}.trust-card div>p:last-child{font-size:14px}.roadmap-head h2{font-size:clamp(42px,5vw,64px);text-wrap:balance}.contact-copy h2{font-size:clamp(38px,3.75vw,48px);line-height:1.28;letter-spacing:-.04em}.contact-copy h2 span{display:block;white-space:nowrap}
.contact-action{position:relative;min-height:470px;padding:52px;display:flex;flex-direction:column;justify-content:center;color:var(--ink);background:linear-gradient(145deg,#fff,#eef5ff);border:1px solid rgba(255,255,255,.7);box-shadow:0 35px 90px rgba(0,0,0,.25);overflow:hidden}.contact-action:before{content:"";position:absolute;width:260px;height:260px;right:-120px;top:-120px;border-radius:50%;background:radial-gradient(circle,var(--cyan),var(--blue));opacity:.12}.contact-action-mark{position:absolute;right:40px;top:34px;display:flex;align-items:center;justify-content:center;width:54px;height:54px;color:#fff;background:var(--blue);border-radius:50%;font-size:22px;box-shadow:0 12px 30px rgba(11,92,255,.28)}.contact-action-label{margin:0 0 18px;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.16em}.contact-action h3{margin:0;font-size:clamp(30px,3vw,40px);line-height:1.35;letter-spacing:-.04em}.contact-action>p:not(.contact-action-label){margin:22px 0 30px;color:var(--muted);font-size:14px;line-height:1.9}.contact-action .button{width:100%;padding:20px 24px}.contact-action small{margin-top:16px;color:#708195;font-size:11px;text-align:center}
.hero-visual img{object-position:right center;transform:scale(1.46);transform-origin:right center}.solution-image img{object-position:right center;transform:scale(1.42);transform-origin:right center}#design .solution-image img{object-position:right center;transform:scale(1.72);transform-origin:right center}#operations .solution-image img{object-position:right center;transform:scale(1.5)}.spec-visual img{object-position:right center;transform:scale(1.55);transform-origin:right center}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:980px){.site-header nav{position:fixed;inset:0;z-index:-1;padding:120px 30px 40px;display:flex;flex-direction:column;align-items:flex-start;gap:28px;background:white;opacity:0;visibility:hidden;transform:translateY(-15px);transition:.3s;font-size:24px}.site-header nav.open{opacity:1;visibility:visible;transform:none}.menu-button{display:block;z-index:2}.hero{min-height:1000px;padding-top:130px}.hero h1{font-size:clamp(44px,7vw,58px)}.hero-visual{right:-120px;top:430px;width:100%;height:480px}.hero-foot{bottom:35px}.statement-grid,.section-heading,.solutions-intro,.tab-panel,.spec-layout,.contact{grid-template-columns:1fr}.statement-grid{gap:35px}.shift-diagram{grid-template-columns:1fr}.shift-arrow{padding:25px;transform:rotate(90deg)}.new-flow{padding:25px 0 0;border-left:0;border-top:1px solid #d4dde6}.section-heading{gap:25px}.reason-list,.trust-grid,.roadmap-track{grid-template-columns:1fr}.reason{padding:38px 0;border-right:0;border-bottom:1px solid #cbd7e1}.solution-image{height:430px}.spec-layout{gap:45px}.spec-visual{height:420px}.roadmap-head{display:block}.roadmap-head p{margin-top:25px}.roadmap-track{gap:16px}.roadmap-track:before{display:none}.phase:before{display:none}.contact{gap:60px}footer{grid-template-columns:1fr;gap:22px;text-align:center}footer .brand{justify-content:center}footer small{text-align:center}}
@media(max-width:620px){.site-header{height:64px;padding:0 20px}.brand-applied-header img{height:30px}.brand-applied-footer img{height:auto;width:min(280px,80vw)}.hero{min-height:930px;padding:110px 22px 30px}.hero-copy{margin:0}.hero h1{font-size:clamp(30px,8.7vw,36px);letter-spacing:-.06em}.hero-name{font-size:34px}.hero-lead br{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-visual{top:510px;right:-40px;width:112%;height:320px;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}.hero-visual img{transform:scale(1.4)}.orbit{display:none}.status-card{right:8%;bottom:6%}.hero-foot{left:22px;right:22px;bottom:28px;gap:15px}.hero-foot div{min-width:0;flex:1;display:block}.hero-foot b{display:block;margin-bottom:6px}.hero-foot span{font-size:10px}.section{padding:90px 22px}.section-label{margin-bottom:45px}.statement h2{font-size:38px}.shift-diagram{margin-top:55px;padding:25px 20px}.flow-line{gap:8px}.flow-line div{width:62px}.knowledge-loop{gap:9px}.section-heading h2{font-size:54px}.reason-list{display:block}.solutions-intro h2,.spec-head h2,.trust-head h2{font-size:38px}.solution-tabs button{min-width:50%;font-size:13px}.solution-copy h3{font-size:29px}.solution-image{height:320px}.spec-visual{height:300px}.spec-list>div{grid-template-columns:80px 1fr}.trust-head h2{margin-bottom:45px}.trust-card{min-height:280px}.roadmap-head h2{font-size:48px}.roadmap-track{margin-top:55px}.contact-form{padding:28px 22px}.form-row{grid-template-columns:1fr}.contact-copy h2{font-size:38px}}
@media(max-width:980px){.hero{min-height:1080px}.hero-foot{bottom:28px}}
@media(max-width:620px){.hero{min-height:1100px}.hero-foot{grid-template-columns:1fr;gap:8px;bottom:24px}.hero-foot div{display:flex;padding:12px 14px;gap:12px}.hero-foot b{display:flex;flex-basis:38px;width:38px;height:38px;margin:0}.hero-foot span{font-size:inherit}.hero-foot strong{font-size:14px}.hero-foot small{font-size:11px}}
@media(max-width:980px){.statement-grid,.section-heading{grid-template-columns:1fr}.statement h2{font-size:clamp(36px,6vw,50px)}.shift-diagram{grid-template-columns:1fr;gap:12px}.shift-arrow{padding:6px;transform:none}.shift-arrow b{transform:rotate(90deg)}.new-flow{padding:34px;border-top:1px solid #d8e2eb}.section-heading{gap:28px}.section-heading .section-summary{max-width:620px}.solutions-intro h2,.spec-head h2,.trust-head h2{font-size:clamp(36px,5.5vw,50px)}.roadmap-head h2,.contact-copy h2{font-size:clamp(38px,6vw,52px)}}
@media(max-width:620px){.statement h2{font-size:30px;line-height:1.3}.statement-copy{font-size:15px}.shift-diagram{margin-top:48px}.old-flow,.new-flow{padding:24px 18px}.flow-head{margin-bottom:20px}.flow-head h3{font-size:18px}.flow-line{gap:6px}.flow-line div{height:76px}.flow-line i{font-size:14px}.old-flow p,.new-flow p{font-size:13px}.knowledge-loop{gap:6px}.knowledge-loop span{font-size:12px}.knowledge-loop strong{flex-basis:62px;width:62px;height:62px}.section-heading h2{font-size:38px;line-height:1.18}.section-heading .section-summary{font-size:15px}.solutions-intro h2,.spec-head h2,.trust-head h2,.contact-copy h2{font-size:34px;line-height:1.3}.roadmap-head h2{font-size:36px}.solution-copy h3{font-size:28px}.trust-head h2{margin-bottom:42px}}
@media(max-width:620px){.contact-action{min-height:0;padding:38px 24px}.contact-action-mark{right:22px;top:22px;width:44px;height:44px}.contact-action h3{font-size:29px}.contact-action>p:not(.contact-action-label){font-size:14px}.contact-action .button{padding:18px 14px;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.orbit{animation:none}}

/* Parent site header: https://www.applied.ne.jp/rs/ */
.rs-header.hd_bg{position:sticky;top:0;z-index:1000;background:#fff;font-family:'Noto Sans JP','Yu Gothic','Hiragino Kaku Gothic ProN',Arial,sans-serif;color:#000}
.rs-header *{box-sizing:border-box}
.rs-header a{color:inherit;text-decoration:none}
.rs-header img{display:block;max-width:100%}
.rs-header ul,.rs-header dl,.rs-header dd,.rs-header p{margin:0}
.rs-header ul{padding:0;list-style:none}
.rs-header .w_base{height:100%;max-width:1440px;margin:0 auto;padding-inline:20px}
.rs-header #header-index{height:60px}
.rs-header .hd{position:relative;display:flex;justify-content:space-between;align-items:center;gap:30px;height:60px}
.rs-header .hd_logo{display:flex;align-items:center;width:100%;height:100%}
.rs-header .ap_logo{display:block;width:100%;max-width:420px;line-height:0}
.rs-header .ap_logo img{width:100%;height:auto}
.rs-header .jpx_logo{width:40px;height:auto;flex-shrink:0}
.rs-header .icon_x{flex-shrink:0;width:40px;height:auto;margin-left:15px}
.rs-header .icon_x img{width:100%}
.rs-header .header-contactbox{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;flex-shrink:0;font-size:14px}
.rs-header .header-tel_list{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);column-gap:20px;row-gap:5px}
.rs-header .header-tel_list dl{display:flex;align-items:center;gap:10px;line-height:1.25}
.rs-header .header-tel_list dt{font-weight:700}
.rs-header #header-mail_lg{width:40px;margin-left:20px;padding:5px 0}
.rs-header #header-mail_lg img,.rs-header .header-contactbox img{width:100%}
.rs-header .gaiyou{margin-left:20px}
.rs-header .gaiyou a{color:#000;font-size:1em}
.rs-header .navigation{position:relative;width:100%;height:70px;margin:0 auto;background:#1b4f98;font-size:16px;overflow:hidden}
.rs-header .navigation .hamburger{display:none}
.rs-header .navigation nav{display:block;height:100%}
.rs-header .navigation nav ul.navi_list{width:100%;height:100%;display:flex;justify-content:center;margin:1px auto}
.rs-header .navigation nav ul.navi_list>li{width:10%;text-align:center;border-right:solid 1px #8f8f8f}
.rs-header .navigation nav ul.navi_list>li:first-child{border-left:solid 1px #8f8f8f}
.rs-header .navigation nav ul.navi_list>li>a{color:#fff;display:block;height:100%;width:100%;background:linear-gradient(currentColor 0 0) bottom/var(--d,20%) 3px no-repeat;transition:.5s}
.rs-header .navigation nav ul.navi_list>li>a span{height:100%;display:flex;justify-content:center;align-items:center;font-size:.9em;line-height:1.35}
.rs-header .navigation nav ul.navi_list>li:hover{--d:80%}
.rs-header .sp_only{display:none}
body.menu-open{overflow:hidden}

/* Header is now in normal sticky flow, so reduce the old fixed-header hero offset. */
.hero{padding-top:clamp(72px,7vw,110px)}

@media(max-width:1150px){
  .rs-header.hd_bg{width:100%;padding:10px;z-index:1000}
  .rs-header .w_base{max-width:none;padding-inline:0}
  .rs-header #header-index{height:auto}
  .rs-header .hd{width:100%;height:auto;padding-right:60px;gap:12px}
  .rs-header .hd_logo{width:100%}
  .rs-header .ap_logo img{width:100%;max-width:420px;height:auto}
  .rs-header .jpx_logo{width:30px}
  .rs-header .icon_x{width:30px}
  .rs-header .header-contactbox{display:flex;align-items:center}
  .rs-header .header-tel_list,.rs-header .gaiyou a{display:none}
  .rs-header #header-mail_lg{width:40px;margin-left:20px;padding:5px 0}
  .rs-header .navigation{position:fixed;top:10px;right:0;width:100%;height:auto;background:transparent;overflow:visible}
  .rs-header .navigation .hamburger{display:block;width:40px;height:32px;position:absolute;top:10px;right:16px;z-index:100;background-color:rgba(249,249,249,0);border:none;padding:0;cursor:pointer}
  .rs-header .navigation .hamburger_bar{display:block;width:100%;height:4px;position:absolute;left:0;background:#000;transition:top .24s,transform .24s,opacity .24s}
  .rs-header .navigation .hamburger_bar:nth-child(1){top:0}
  .rs-header .navigation .hamburger_bar:nth-child(2){top:50%;transform:translateY(-50%)}
  .rs-header .navigation .hamburger_bar:nth-child(3){top:100%;transform:translateY(-100%)}
  .rs-header .navigation .hamburger_bar.is_active:nth-child(1){top:50%;transform:translateY(-50%) rotate(135deg)}
  .rs-header .navigation .hamburger_bar.is_active:nth-child(2){transform:translate(50%,-50%);opacity:0}
  .rs-header .navigation .hamburger_bar.is_active:nth-child(3){top:50%;transform:translateY(-50%) rotate(-135deg)}
  .rs-header .navigation .nav{z-index:99;background:#a0a0a0;display:flex;justify-content:center;align-items:center;opacity:0;transition:opacity .24s;pointer-events:none}
  .rs-header .navigation .nav.is_active{opacity:1;pointer-events:auto}
  .rs-header .navigation .nav .navi_list{position:absolute;top:-10px;width:100%;height:100vh;background-color:rgba(255,255,255,.95);overflow:auto;text-align:center;display:block;margin:0;padding:35px 0 180px}
  .rs-header .navigation .nav .navi_list>li{width:100%;margin:26px 0;border:0}
  .rs-header .navigation .nav .navi_list>li:first-child{border:0}
  .rs-header .navigation .nav .navi_list li a{display:flex;flex-direction:column;justify-content:center;min-height:40px;color:#000;font-weight:500;text-decoration:none;background:none}
  .rs-header .navigation .nav .navi_list li a span{display:block;height:auto;font-size:16px;line-height:1.65}
  .rs-header .sp_only{display:block}
  .rs-header .contact-window{margin-bottom:180px}
}

@media(max-width:620px){
  .rs-header .ap_logo{max-width:min(74vw,320px)}
  .rs-header #header-mail_lg{width:34px;margin-left:12px}
  .hero{padding-top:72px}
}

