:root{--ink:#15203b;--muted:#5e6880;--line:#dfe4ef;--paper:#fff;--wash:#f6f7fc;--accent:#4656d8;--accent-deep:#3544b7;--focus:#172fb5;--radius:18px;--shadow:0 14px 38px rgba(34,45,83,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:16px;line-height:1.75}.container{width:min(100% - 40px,1080px);margin-inline:auto}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover{color:var(--accent-deep)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:fixed;z-index:10;top:12px;left:12px;transform:translateY(-160%);padding:.55rem .9rem;border-radius:8px;background:var(--ink);color:#fff;text-decoration:none}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;z-index:5;top:0;border-bottom:1px solid rgba(223,228,239,.8);background:rgba(255,255,255,.9);backdrop-filter:blur(14px)}.nav-wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:16px;font-weight:720;letter-spacing:-.02em;text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:linear-gradient(145deg,#5e6fe8,#3341af);color:#fff;font-size:14px;font-weight:800;box-shadow:0 4px 12px rgba(70,86,216,.28)}.site-nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:620}.site-nav a{text-decoration:none}.site-nav a[aria-current="page"]{color:var(--accent);font-weight:760}.nav-contact{padding:.42rem .85rem;border:1px solid var(--line);border-radius:999px}.menu-button{display:none;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:650}.hero{padding:clamp(88px,13vw,164px) 0 clamp(84px,12vw,142px)}.eyebrow{margin:0 0 16px;color:var(--accent);font-size:12px;font-weight:760;letter-spacing:.12em;text-transform:uppercase}.hero h1,.page-hero h1,.not-found h1{max-width:850px;margin:0;color:#101a32;font-size:clamp(44px,7vw,82px);font-weight:760;letter-spacing:-.065em;line-height:1.04}.hero-copy{max-width:630px;margin:31px 0 0;color:var(--muted);font-size:clamp(16px,2vw,19px);line-height:1.85}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:47px;padding:.65rem 1.1rem;border:1px solid transparent;border-radius:10px;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none}.button-primary{background:var(--accent);color:#fff;box-shadow:0 8px 18px rgba(70,86,216,.2)}.button-primary:hover{background:var(--accent-deep);color:#fff}.button-secondary{border-color:var(--line);background:#fff}.apps-section{padding:clamp(70px,9vw,112px) 0;background:var(--wash)}.section-heading{max-width:550px;margin-bottom:37px}.section-heading h2,.support-callout h2,.content-section h2,.policy h2{margin:0;color:#121c36;letter-spacing:-.04em;line-height:1.25}.section-heading h2,.support-callout h2{font-size:clamp(30px,4vw,45px)}.section-heading p:not(.eyebrow){margin:.8rem 0 0;color:var(--muted)}.app-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.app-card{display:flex;flex-direction:column;min-height:255px;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 4px 13px rgba(36,49,91,.035)}.app-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;background:linear-gradient(145deg,#e8ebff,#cdd4ff);color:#3544b7;font-weight:800}.app-card h3{margin:23px 0 7px;font-size:21px;letter-spacing:-.03em}.app-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}.app-card .text-link{margin-top:auto;padding-top:24px}.text-link{color:var(--accent);font-weight:700;text-decoration:none}.text-link:hover{text-decoration:underline}.support-callout{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;padding:clamp(70px,10vw,120px) 0}.support-callout>div{max-width:650px}.support-callout p:not(.eyebrow){margin:.9rem 0 0;color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding-top:40px;background:#fbfcff}.footer-grid{display:flex;justify-content:space-between;gap:28px}.footer-note{margin:.75rem 0 0;color:var(--muted);font-size:14px}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:8px 34px;font-size:14px}.footer-bottom{margin-top:38px;padding:18px 0;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.footer-bottom p{margin:0}.page-hero{padding:clamp(72px,10vw,116px) 0 65px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(42px,6vw,68px)}.page-hero>p:last-child{max-width:655px;margin:24px 0 0;color:var(--muted);font-size:18px}.content-section{padding:55px 0;border-bottom:1px solid var(--line)}.content-section h2{font-size:29px}.notice{max-width:680px;margin-top:20px;padding:22px 23px;border-left:3px solid #8793f0;border-radius:0 10px 10px 0;background:var(--wash)}.notice p{margin:.35rem 0 0;color:var(--muted)}.faq-list{max-width:800px;margin-top:23px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{position:relative;padding:20px 35px 20px 0;cursor:pointer;font-weight:700;list-style:none}summary::-webkit-details-marker{display:none}summary::after{position:absolute;right:4px;content:"+";color:var(--accent);font-size:25px;font-weight:400}details[open] summary::after{content:"−"}details div{padding:0 30px 20px 0;color:var(--muted)}details p{margin:0}.contact-panel{padding-bottom:78px}.contact-panel>p:not(.eyebrow){max-width:650px;color:var(--muted)}.contact-panel h3{margin:37px 0 9px;font-size:18px}.contact-panel ul{margin:0;padding-left:1.3em}.policy{max-width:790px;padding-top:52px;padding-bottom:90px}.policy-meta{margin-bottom:46px;padding:18px 22px;border-radius:12px;background:var(--wash);color:var(--muted);font-size:14px}.policy-meta p{margin:.1rem 0}.policy h2{margin:42px 0 12px;font-size:24px}.policy p{margin:0;color:#3f4b66}.policy strong{color:var(--ink)}.not-found{display:flex;min-height:100vh;flex-direction:column;align-items:flex-start;justify-content:center;padding-top:60px;padding-bottom:60px}.not-found .brand{position:absolute;top:28px}.not-found h1{margin-top:0;font-size:clamp(40px,6vw,68px)}.not-found>p:not(.eyebrow){max-width:500px;color:var(--muted);font-size:18px}.not-found .button{margin-top:16px}@media(max-width:680px){.container{width:min(100% - 32px,1080px)}.menu-button{display:block}.site-nav{display:none;position:absolute;top:72px;right:16px;left:16px;align-items:stretch;gap:0;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.site-nav.is-open{display:flex;flex-direction:column}.site-nav a{padding:10px 12px}.nav-contact{border:0;border-radius:8px;background:var(--wash)}.hero{padding-top:87px}.support-callout,.footer-grid{align-items:flex-start;flex-direction:column}.support-callout{gap:20px}.footer-links{width:100%;grid-template-columns:1fr 1fr}.page-hero{padding-top:71px}.policy{padding-top:38px}.content-section{padding:44px 0}}
