:root{color-scheme:light;--ink:#172033;--muted:#5b6475;--line:#dfe5ee;--panel:#f5f8fc;--accent:#2563eb;--accent-deep:#1746b3;--white:#fff;--shadow:0 20px 55px rgba(28,45,78,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Yu Gothic UI",Meiryo,sans-serif;font-size:16px;line-height:1.75}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-deep)}.site-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1060px)/2));border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-weight:750;text-decoration:none;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:linear-gradient(145deg,#4f8cff,#1d58d8);color:#fff;font-size:13px;font-weight:800;box-shadow:0 7px 16px rgba(37,99,235,.25)}.site-header nav,.footer-inner nav{display:flex;gap:24px}.site-header nav a,.footer-inner nav a{color:var(--muted);text-decoration:none;font-size:.94rem}.site-header nav a[aria-current=page]{color:var(--accent);font-weight:700}.hero{background:radial-gradient(circle at 75% 10%,rgba(92,148,255,.23),transparent 28%),linear-gradient(165deg,#f8fbff 0%,#edf4ff 100%);border-bottom:1px solid #e5edfb}.hero-inner{max-width:860px;margin:auto;padding:100px 24px 88px}.compact-hero .hero-inner{padding-bottom:72px}.eyebrow{margin:0 0 12px;color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.17em}.hero h1,.policy-heading h1{margin:0;max-width:680px;font-size:clamp(2.35rem,6vw,4.25rem);line-height:1.13;letter-spacing:-.045em}.hero-copy{max-width:680px;margin:24px 0 0;color:var(--muted);font-size:1.08rem}.platforms{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.platforms span{padding:7px 13px;border:1px solid #cad7ee;border-radius:999px;background:rgba(255,255,255,.75);color:#3e4b61;font-size:.9rem}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.primary-button,.secondary-button,.contact-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 20px;border-radius:12px;font-weight:750;text-decoration:none}.primary-button,.contact-button{background:var(--accent);color:white;box-shadow:0 12px 28px rgba(37,99,235,.22)}.primary-button:hover,.contact-button:hover{background:var(--accent-deep);color:white}.secondary-button{background:white;color:var(--ink);border:1px solid var(--line)}.content-section,.contact-wrap,.policy-page{max-width:960px;margin:auto;padding:72px 24px}.section-heading h2,.contact-card h2{margin:0;font-size:clamp(1.7rem,4vw,2.35rem);letter-spacing:-.03em}.faq-list{margin-top:30px;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 4px;cursor:pointer;font-weight:700;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-plus{color:var(--accent);font-size:1.35rem;transition:transform .2s}.faq-item[open] .faq-plus{transform:rotate(45deg)}.faq-answer{padding:0 42px 20px 4px;color:var(--muted)}.faq-answer p{margin:0 0 10px}.contact-wrap{padding-top:10px}.contact-card{padding:36px;border:1px solid var(--line);border-radius:22px;background:var(--panel);box-shadow:var(--shadow)}.contact-card ul{padding-left:1.25rem;color:var(--muted)}.contact-button{margin-top:10px}.privacy-note,.policy-note{margin-top:16px;padding:16px 18px;border-radius:12px;background:#f0f5ff;color:#40506b}.privacy-note p,.policy-note p{margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-grid article{padding:26px;border:1px solid var(--line);border-radius:18px;background:white;box-shadow:var(--shadow)}.feature-grid h2{margin:8px 0 5px;font-size:1.2rem}.feature-grid p{margin:0;color:var(--muted)}.feature-icon{color:var(--accent);font-size:1.75rem}.policy-page{max-width:880px}.policy-heading{padding:30px 0 52px;border-bottom:1px solid var(--line)}.policy-heading h1{font-size:clamp(2.25rem,6vw,3.8rem)}.policy-heading>p:last-child{margin:16px 0 0;color:var(--muted)}.policy-body{padding-top:36px}.policy-body>p:first-child{font-size:1.06rem}.policy-body section{padding:22px 0;border-bottom:1px solid var(--line)}.policy-body h2{margin:0 0 14px;font-size:1.35rem;letter-spacing:-.02em}.policy-body h3{margin:22px 0 5px;font-size:1.02rem}.policy-body p{margin:0 0 12px;color:#424c60}.policy-body ul{color:#424c60;padding-left:1.25rem}footer{border-top:1px solid var(--line);background:#111827;color:#d7dce5;padding:38px max(24px,calc((100vw - 1060px)/2)) 22px}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-inner strong{color:#fff}.footer-inner p{margin:3px 0;color:#929bad}.footer-inner nav a{color:#c7ceda}.copyright{margin:30px 0 0;color:#818b9d;font-size:.82rem}
@media(max-width:700px){.site-header{height:auto;min-height:68px;padding:12px 18px}.site-header nav{gap:12px}.site-header nav a{font-size:.82rem}.hero-inner{padding:72px 22px 64px}.hero h1{font-size:2.55rem}.content-section,.contact-wrap,.policy-page{padding-left:20px;padding-right:20px}.feature-grid{grid-template-columns:1fr}.contact-card{padding:25px 20px}.contact-button{width:100%;font-size:.9rem}.footer-inner{flex-direction:column}.footer-inner nav{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.faq-plus{transition:none}}
