:root { --navy:#001d4b; --blue:#075fdd; --electric:#087df4; --green:#00d96c; --ink:#062456; --pale:#edf6ff; --line:#dbe7f6; --white:#fff; --radius:16px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:"Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif; line-height:1.65; }
a { color:inherit; text-decoration:none; }
.container { width:min(1140px, calc(100% - 40px)); margin-inline:auto; }
.no-break { white-space:nowrap; }
.site-header { height:74px; display:flex; align-items:center; justify-content:space-between; padding-inline:max(24px, calc((100% - 1140px) / 2)); background:linear-gradient(110deg,#001737,#00265c 65%,#001a42); color:#fff; position:relative; z-index:10; }
.brand { align-items:center; display:inline-flex; gap:10px; color:#fff; font:800 25px/1 Inter, sans-serif; letter-spacing:-.04em; }
.brand-mark { width:25px; height:22px; display:flex; align-items:flex-end; gap:3px; }
.brand-mark i { display:block; width:5px; background:currentColor; border-radius:1px; }.brand-mark i:nth-child(1){height:8px}.brand-mark i:nth-child(2){height:14px}.brand-mark i:nth-child(3){height:21px}
.site-menu { display:flex; align-items:center; gap:27px; font-size:14px; font-weight:600; }.site-menu a:not(.menu-cta){opacity:.86}.site-menu a:hover{opacity:1}.menu-cta{padding:8px 17px;border:1px solid #91c6ff;border-radius:999px}
.menu-toggle{display:none;background:none;border:0;color:#fff;width:44px;height:44px;padding:9px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:currentColor;margin:5px;border-radius:3px}
.hero { min-height:580px; position:relative; overflow:hidden; background:radial-gradient(circle at 80% 60%,#e2f0ff 0,rgba(234,245,255,.2) 28%,transparent 45%),linear-gradient(115deg,#fff 5%,#f7fbff 65%,#e9f4ff); }
.hero-grid { position:absolute; right:-2%; top:104px; width:45%; height:340px; opacity:.53; background:repeating-linear-gradient(90deg,transparent 0 21px, #cce2ff 22px 23px), repeating-linear-gradient(0deg,transparent 0 30px,#d6e9ff 31px 32px); mask-image:linear-gradient(to bottom,transparent,black 35%,transparent); }.hero-grid::after{content:"";position:absolute;inset:26px -8px 0 0;background:linear-gradient(120deg,transparent 10%,transparent 45%,#9fcaff 45.5% 47%,transparent 47.5%);transform:skewY(-17deg)}
.hero-wave { position:absolute; right:-6%; border:2px solid #a4cbff; border-radius:50%; width:650px; height:350px; opacity:.8; transform:rotate(-8deg); }.hero-wave--one{bottom:12px}.hero-wave--two{bottom:-72px;right:16%;width:530px;height:200px;border-color:#cde2ff;transform:rotate(11deg)}
.hero-content { min-height:580px; display:grid; grid-template-columns:52% 48%; align-items:center; position:relative; }.hero-copy{padding-block:55px;z-index:2}.eyebrow,.proof-label{display:inline-block;color:#fff;background:linear-gradient(90deg,#0568e9,#0046ae);border-radius:999px;padding:7px 17px;font-size:14px;font-weight:700;line-height:1.2;letter-spacing:.02em}.hero h1{font-size:clamp(42px,5vw,70px);letter-spacing:.03em;line-height:1.26;margin:19px 0 20px;font-weight:900}.hero-lead{font-size:16px;font-weight:500;margin:0 0 28px;line-height:2}.button{border:0;border-radius:14px;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;font-weight:800;transition:transform .18s,box-shadow .18s}.button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,76,184,.25)}.button--primary{color:#fff;background:linear-gradient(105deg,#00dc6b,#0096d6 53%,#0562db);box-shadow:0 10px 16px rgba(0,73,184,.22);font-size:20px;padding:18px 22px 18px 28px}.button--primary span{display:grid;place-items:center;border-radius:50%;height:31px;width:31px;background:#fff;color:#0961cf;font-size:25px;line-height:1}.trust{font-size:13px;margin:14px 0 0}.trust span{font-size:21px;vertical-align:-2px}
.hero-visual{height:520px;position:relative;min-width:0}.phone{width:284px;height:465px;border-radius:43px;background:linear-gradient(125deg,#192b47,#8a9eb8 8%,#0b1727 13%,#1a1d29 83%,#8fa0b8 100%);padding:11px;transform:rotate(6deg);position:absolute;right:74px;top:24px;z-index:1;box-shadow:8px 17px 14px rgba(0,27,67,.24)}.phone-screen{height:100%;border-radius:34px;background:radial-gradient(circle at 78% 20%,#294c8b 0,#09224d 35%,#020a1d 100%);overflow:hidden;color:#fff}.phone-speaker{position:absolute;z-index:2;left:50%;top:14px;transform:translateX(-50%);height:19px;width:85px;background:#050b14;border-radius:0 0 12px 12px}.phone-status{font:300 52px/1.1 Inter,sans-serif;text-align:center;padding-top:59px;letter-spacing:-.07em}.phone-status small{font:500 12px "Noto Sans JP";display:block;margin-top:8px;letter-spacing:0}.phone-chart{position:absolute;bottom:-30px;left:-35px;width:350px;height:260px;background:repeating-linear-gradient(90deg,transparent 0 21px,rgba(154,199,255,.15) 22px 23px),repeating-linear-gradient(0deg,transparent 0 28px,rgba(154,199,255,.15) 29px 30px);transform:skewY(-12deg)}.phone-chart::before{content:"";position:absolute;inset:0;background:linear-gradient(130deg,transparent 20%,transparent 56%,#5593f1 56.4% 57.4%,transparent 57.8%);opacity:.85}
.notice{position:absolute;z-index:3;width:345px;min-height:83px;background:rgba(255,255,255,.96);border:1px solid #d7e2ef;border-radius:13px;padding:13px 18px;box-shadow:0 12px 21px rgba(2,35,83,.14);font-size:12px;line-height:1.4;transform:rotate(5deg)}.notice b{display:block;font-family:Inter,sans-serif;font-size:12px;color:#03194a}.notice small{position:absolute;right:17px;top:15px;color:#557090}.notice p{margin:4px 0 0;color:#061a3c;font-weight:500}.notice-icon{display:inline-flex;letter-spacing:-3px;color:#0876e9;margin-right:7px;font-size:10px;background:#edf7ff;border-radius:5px;padding:3px}.notice--one{top:144px;left:3px}.notice--two{top:238px;left:-14px}.notice--three{top:335px;left:-26px}
.features{background:linear-gradient(110deg,#ecf6ff,#e4f2ff);padding:25px 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{min-height:277px;background:#fff;text-align:center;border-radius:11px;padding:23px 25px 20px;box-shadow:0 7px 15px rgba(10,69,145,.05)}.icon-disc{margin:auto;width:82px;height:82px;display:grid;place-items:center;border-radius:50%;background:#edf6ff;color:#0764d6;font:800 46px/1 Inter}.icon-bell{font-size:42px}.icon-chart{font-size:54px;line-height:.8}.icon-shield{font-size:50px}.feature-card h2{font-size:19px;margin:15px 0 7px;letter-spacing:.03em}.feature-card p{font-size:14px;line-height:1.65;margin:0}.feature-card i{display:block;width:40px;height:3px;background:#075ed0;margin:13px auto 0}
.proof{margin-top:27px;min-height:320px;color:#fff;border:1px solid #0b529e;border-radius:11px;background:linear-gradient(110deg,#002552,#002053 55%,#001a43);display:grid;grid-template-columns:28% 40% 32%;position:relative;overflow:hidden;padding:31px 29px 19px}.proof::after{content:"";position:absolute;inset:0;background:linear-gradient(130deg,transparent 0 70%,rgba(0,125,255,.11));pointer-events:none}.proof-label{position:absolute;top:27px;left:30px;font-size:12px;padding:7px 16px}.proof-copy{padding-top:50px;position:relative;z-index:1}.proof-copy h2{font-size:29px;line-height:1.4;margin:0 0 16px}.proof-copy p{font-size:12px;margin:4px 0}.proof-copy small{display:block;margin-top:11px;color:#a7bfdb;font-size:10px}.dot{display:inline-block;width:8px;height:8px;background:#c6cfdb;border-radius:50%;margin-right:7px}.dot--green{background:#08dc6c}.chart{position:relative;align-self:end;margin:22px 10px 21px 0;height:215px;border-left:1px solid #6f91bb;border-bottom:1px solid #6f91bb;z-index:1}.chart svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.chart-lines path{stroke:rgba(120,162,210,.33);stroke-width:1}.line-green{stroke:#06da71;stroke-width:3;fill:none}.line-gray{stroke:#b4c4dc;stroke-width:3;fill:none}.chart-y{position:absolute;left:-26px;font:11px Inter;color:#d6e3f4}.y1{top:-9px}.y2{top:43px}.y3{top:98px}.y4{top:152px}.y5{bottom:-9px}.chart-months{position:absolute;left:10px;right:0;bottom:-29px;display:flex;justify-content:space-around;font-size:11px}.proof-stats{border-left:1px solid rgba(123,162,208,.65);padding:0 0 0 23px;z-index:1}.proof-stats p{margin:1px 0;padding:0 0 10px;border-bottom:1px solid rgba(123,162,208,.45);font-size:12px;font-weight:700}.proof-stats strong{display:block;color:#05da6c;font:800 53px/.95 Inter;letter-spacing:-.05em;margin-top:5px}.proof-stats strong b{font-size:33px}.proof-stats strong span{font-size:27px;margin-left:2px}.proof-stats .smaller{font-size:42px}.proof-stats .users{font-size:31px;color:#bbd8ff;letter-spacing:0}.proof-stats .users span{font:600 14px "Noto Sans JP";letter-spacing:0;margin-left:5px}
.steps{padding:26px 0 22px}.steps>h2,.faq h2{text-align:center;font-size:27px;line-height:1.3;margin:0 0 14px}.steps h2 em{color:#0061d3;font-style:normal}.steps ol{list-style:none;margin:0;padding:0;counter-reset:steps}.steps li{min-height:78px;background:linear-gradient(100deg,#f1f6fd,#fbfcff);margin-top:5px;border-radius:12px;display:grid;grid-template-columns:63px 88px 1fr 34px;align-items:center;padding:8px 22px 8px 16px;position:relative}.steps li:not(:last-child)::after{content:"";position:absolute;left:45px;top:70px;height:17px;border-left:1px dashed #8db7ed}.step-number{height:43px;width:43px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#075fcf,#00459c);color:#fff;font:700 20px Inter}.step-icon{font:700 48px/1 Inter;color:#092e6c;text-align:center}.steps h3{font-size:16px;margin:0;line-height:1.35}.steps p{font-size:12px;margin:3px 0 0;line-height:1.35}.chevron{font:800 26px/1 Inter;text-align:right}
.pricing{border-radius:10px;margin-top:5px;margin-bottom:26px;padding:31px 52px 30px;background:radial-gradient(circle at 74% 55%,rgba(12,118,221,.62),transparent 35%),linear-gradient(108deg,#001b48,#00265e);color:#fff;display:grid;grid-template-columns:44% 56%;align-items:center}.price-details>span{font-size:14px;font-weight:700}.trial-badge{display:table;margin:0 0 8px 74px;padding:4px 13px;border-radius:99px;background:#00ba58;font-size:12px;font-weight:700;line-height:1}.price-details h2{margin:1px 0 10px;font-size:18px}.price-details h2 b{font:800 51px/1 Inter;color:#04df6a;letter-spacing:-.04em}.price-details h2 small{font-size:11px}.price-details ul{padding:0;margin:0;list-style:none;font-size:12px;line-height:1.75}.price-details li::before{content:"✓";color:#01df74;font-weight:800;margin-right:10px}.pricing-action{text-align:center}.pricing-action .button{width:100%;font-size:23px;padding:20px 25px 20px 37px}.pricing-action p{font-size:12px;margin:14px 0 0}
.faq{padding-bottom:20px}.faq h2{margin-bottom:12px}.faq details{border:1px solid #d5e0ef;background:#fff;border-radius:9px;margin-top:6px}.faq summary{cursor:pointer;min-height:53px;display:flex;align-items:center;padding:10px 17px;font-size:14px;font-weight:600;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;margin-right:11px;color:#fff;background:#0661ca;font:700 13px Inter}.faq summary b{font:400 26px/1 Inter;color:#0060ce;margin-left:auto;transition:transform .2s}.faq details[open] summary b{transform:rotate(45deg)}.faq details p{padding:0 20px 16px 52px;margin:0;font-size:13px;color:#34506f}
.site-footer{background:linear-gradient(110deg,#001a3d,#002764 60%,#001a40);text-align:center;color:#fff;padding:31px 20px 18px}.brand--footer{font-size:23px}.site-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:0;margin:20px auto 13px;font-size:11px}.site-footer nav a{padding:0 15px;border-right:1px solid #587399}.site-footer nav a:last-child{border:0}.risk-note{max-width:870px;margin:0 auto 10px;padding:7px 12px;border:1px dashed #6d85a5;border-radius:6px;color:#d6e2f1;font-size:10px;line-height:1.55}.site-footer small{font:11px Inter;color:#d9e5f4}
@media (max-width: 760px){.container{width:min(100% - 28px,560px)}.site-header{height:56px;padding:0 18px}.brand{font-size:20px}.brand-mark{transform:scale(.82);transform-origin:left center;margin-right:-4px}.site-menu{position:absolute;display:none;top:56px;left:0;right:0;padding:16px 20px 20px;background:#002456;box-shadow:0 12px 20px rgba(0,0,0,.15);flex-direction:column;align-items:stretch;gap:1px}.site-menu.is-open{display:flex}.site-menu a{padding:11px}.menu-cta{text-align:center;margin-top:6px}.menu-toggle{display:block}.hero{min-height:695px}.hero-content{display:block;min-height:695px}.hero-copy{padding:36px 5px 0}.eyebrow{font-size:11px;padding:6px 12px}.hero h1{font-size:41px;margin:12px 0 13px}.hero-lead{font-size:13px;line-height:1.8;margin-bottom:19px}.button--primary{font-size:16px;padding:16px 18px 16px 22px;gap:20px;border-radius:12px}.trust{font-size:10px;margin-top:10px}.hero-visual{height:345px;margin-top:4px;transform:scale(.72);transform-origin:top center;width:138%;margin-left:-19%}.phone{right:calc(50% - 120px);top:18px}.notice--one{left:calc(50% - 265px);top:105px}.notice--two{left:calc(50% - 276px);top:201px}.notice--three{left:calc(50% - 287px);top:298px}.feature-grid{grid-template-columns:1fr;gap:12px}.features{padding:18px 0}.feature-card{min-height:0;padding:20px}.feature-card p{max-width:320px;margin:auto}.icon-disc{width:70px;height:70px}.proof{grid-template-columns:1fr;padding:27px 20px 23px;gap:15px}.proof-copy{padding-top:39px}.proof-copy h2{font-size:25px}.chart{height:185px;margin:3px 14px 25px 27px}.proof-stats{border-left:0;border-top:1px solid rgba(123,162,208,.65);padding:13px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.proof-stats p{border:0;font-size:10px}.proof-stats strong{font-size:29px}.proof-stats strong b{font-size:19px}.proof-stats strong span{font-size:15px}.proof-stats .smaller{font-size:27px}.proof-stats .users{font-size:21px}.proof-stats .users span{font-size:10px;display:block;margin:2px 0 0}.steps>h2,.faq h2{font-size:23px}.steps li{grid-template-columns:49px 51px 1fr 20px;padding:8px 9px 8px 12px;min-height:83px}.step-number{height:38px;width:38px;font-size:18px}.step-icon{font-size:36px}.steps li:not(:last-child)::after{left:31px}.steps h3{font-size:14px}.steps p{font-size:10px}.chevron{font-size:21px}.pricing{padding:25px 21px;display:block}.trial-badge{margin-left:0}.price-details h2 b{font-size:44px}.pricing-action{margin-top:21px}.pricing-action .button{font-size:16px;padding:18px 20px}.faq summary{font-size:12px;padding:9px 12px}.faq summary span{margin-right:8px}.site-footer nav{gap:8px;margin-top:16px}.site-footer nav a{padding:0 7px;font-size:10px}.risk-note{font-size:9px}.hero-grid{width:67%;top:305px}}
@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important;transition:none!important}}
