
:root:root{
  --navy:#07121F; --navy-deep:#060F1B;
  --brand:#2b70b7; --brand-dark:#1D5B9A; --brand-light:#74D3DE;
  --accent:#74D3DE; --accent-text:#2b70b7;
  --text:#2A3A4B; --heading:#10233A; --muted:#5B6B7C;
  --bg-tint:#F3F6F9; --bg-tint2:#E9F0F6; --border:#DCE3EA;
  --radius:14px;
  --shadow:0 10px 30px rgba(16,35,58,.08); --shadow-hover:0 16px 40px rgba(16,35,58,.14);
  --logo-a:#2b70b7; --logo-b:#4bb3c2; --logo-a-dk:#5A9BE0; --logo-b-dk:#74D3DE; --cta:#1463E0;
}
body{font-family:'Noto Sans JP',"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);}

.header{background:rgba(6,15,27,.92)!important;border-bottom:0!important;box-shadow:none!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.header .logo{gap:0!important;}
.header .logo-img{height:20px!important;width:auto!important;}
.header .logo small{display:none!important;}
.gnav a{color:#C9D5E0!important;}
.gnav a:hover{color:#fff!important;}
.gnav a.nav-cta{background:var(--cta)!important;color:#fff!important;border-radius:10px!important;box-shadow:0 8px 20px rgba(20,99,224,.25);}
.gnav a.nav-cta:hover{background:#0B47A8!important;}
.burger span{background:#fff!important;}
@media(max-width:900px){.gnav{background:#07121F!important;}}

.hero{background:#060F1B!important;color:#E6EDF5;isolation:isolate;}
.hero::before{background:radial-gradient(50% 70% at 85% 0%,rgba(90,155,224,.22),rgba(90,155,224,0) 70%),radial-gradient(40% 60% at 0% 100%,rgba(116,211,222,.14),rgba(116,211,222,0) 70%)!important;}
.hero h1{color:#fff!important;font-weight:900;}
.hero h1 .hl{background:linear-gradient(180deg,var(--logo-a-dk),var(--logo-b-dk))!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent;}
.hero h1 .hl::after,.hero h1 .hl::before{display:none!important;}
.hero p.lead{color:#A9B8C8!important;}
.hero-badge{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.14)!important;color:#BFEFF4!important;}
.hero-badge::before{background:var(--logo-b-dk)!important;}
.trustbar{background:rgba(255,255,255,.04)!important;border-top:1px solid rgba(255,255,255,.08)!important;}
.trustbar-inner > div{color:#C9D5E0!important;}
.trustbar-inner > div::before{background:var(--logo-b-dk)!important;color:var(--logo-b-dk)!important;}

.btn{border-radius:10px!important;}
.btn-primary{background:var(--cta)!important;color:#fff!important;box-shadow:0 8px 20px rgba(20,99,224,.25)!important;border:0!important;}
.btn-primary:hover{background:#0B47A8!important;}
.btn-ghost{border:1.5px solid rgba(255,255,255,.45)!important;color:#fff!important;background:transparent!important;}
.btn-ghost:hover{background:rgba(255,255,255,.12)!important;}
.sec:not(.finalcta) .btn-ghost{border-color:var(--border)!important;color:var(--heading)!important;}
.btn-blue{background:var(--cta)!important;color:#fff!important;}

.sec h2,.sec h3{color:var(--heading);}

.sec .step-body h3,.sec .tcard h3{color:#fff;}

.demo-btn{color:#07121F!important;}
.ce,.sec-en,.eyebrow{color:var(--logo-a)!important;font-family:'Barlow',sans-serif!important;letter-spacing:.24em!important;}

.finalcta{background:#060F1B!important;}
.finalcta::before{background:radial-gradient(50% 80% at 50% 0%,rgba(90,155,224,.2),rgba(90,155,224,0) 70%)!important;opacity:1!important;}
.finalcta .ce{color:var(--logo-b-dk)!important;}
.finalcta h2{color:#fff!important;}
.finalcta p,.finalcta .note{color:#B5C3D1!important;}

.ft{background:#0A1828;color:#8FA0B2;padding:30px 0;font-size:12.5px;}
.ft-in{max-width:var(--maxw,1080px);margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.ft-logo{display:block;margin:0 auto 26px;width:180px;height:auto;opacity:.92;}

html,body{overflow-x:clip;}

.stat::after,.feature::after,.kpi::after{display:none!important;}

.ft .ft-co{color:#C9D6E3;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(201,214,227,.45);}
.ft .ft-co:hover{color:#fff;text-decoration-color:#fff;}
