:root { --ink:#17262c; --muted:#6b777b; --white:#fff; --orange:#ff7900; --green:#08a85a; --panel:rgba(255,255,255,.88); --shadow:0 12px 28px rgba(23,38,44,.1); }
    * { box-sizing: border-box; }
    body { margin:0; color:var(--ink); font-family:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Noto Sans JP",-apple-system,BlinkMacSystemFont,sans-serif; background:radial-gradient(circle at 18% 0%,rgba(255,121,0,.22),transparent 34%),radial-gradient(circle at 88% 14%,rgba(8,168,90,.14),transparent 30%),linear-gradient(160deg,#f7fdff 0%,#fffaf1 62%,#fff1df 100%); line-height:1.6; letter-spacing:0; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
    a { color:inherit; text-decoration:none; }
    a:focus-visible { outline:3px solid rgba(8,168,90,.34); outline-offset:3px; }
    .page { width:min(100%,720px); min-height:100vh; margin:0 auto; padding:14px 14px 28px; }
    .back { display:inline-flex; align-items:center; min-height:34px; padding:6px 12px; border-radius:999px; background:rgba(255,255,255,.72); color:var(--muted); font-size:13px; font-weight:750; box-shadow:0 7px 18px rgba(23,38,44,.06); }
    .hero { margin-top:12px; padding:18px; border:1px solid rgba(255,255,255,.86); border-radius:24px; background:var(--panel); box-shadow:var(--shadow); backdrop-filter:blur(16px); }
    .brand { display:grid; grid-template-columns:72px 1fr; gap:14px; align-items:center; }
    .brand img { width:72px; height:72px; object-fit:contain; border-radius:16px; background:#fff; }
    h1 { margin:0; font-size:27px; line-height:1.12; font-weight:850; }
    .lead { margin:8px 0 0; color:var(--muted); font-size:14px; font-weight:650; }
    .panel { margin-top:12px; padding:16px; border-radius:18px; background:rgba(255,255,255,.76); box-shadow:0 7px 18px rgba(23,38,44,.06); }
    h2 { margin:0 0 8px; font-size:17px; font-weight:850; }
    ul { margin:8px 0 0; padding-left:1.15em; }
    li { margin:6px 0; color:#33434a; font-size:14px; font-weight:650; }
    .cta { display:grid; gap:8px; margin-top:14px; }
    .cta a { display:flex; align-items:center; justify-content:center; min-height:48px; padding:12px 16px; border-radius:16px; background:var(--green); color:#fff; font-weight:850; box-shadow:0 12px 24px rgba(8,168,90,.18); }
    .fit-tag { display:inline-flex; margin-top:10px; padding:6px 10px; border-radius:999px; background:rgba(8,168,90,.1); color:#087744; font-size:13px; font-weight:850; }
    .benefit-line { margin:12px 0 0; padding:10px 12px; border-radius:14px; background:rgba(255,121,0,.1); color:#a94f00; font-size:13px; font-weight:850; }
    .benefit-line b { color:#d45f00; font-weight:900; }
    .note { color:var(--muted); font-size:12px; font-weight:650; text-align:center; }
    @media (min-width:860px) { .page { padding-top:34px; } .hero { padding:24px; } h1 { font-size:34px; } .brand { grid-template-columns:88px 1fr; } .brand img { width:88px; height:88px; } }
