:root{--ink: #262626;--sub: #737373;--line: #dbdbdb;--bg: #fafafa;--card: #ffffff;--soft: #f7f7f8;--accent: #0095f6;--font-ja: "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "Yu Gothic", system-ui, sans-serif;--font-en: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, "Helvetica Neue", Arial, sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html[lang=ja] body{font-family:var(--font-ja)}html[lang=en] body{font-family:var(--font-en)}.wrap{max-width:680px;margin:0 auto;padding:0 20px}body.home .wrap{max-width:720px}body.legal .wrap{padding-bottom:64px}nav{padding:18px 0;font-size:13px;letter-spacing:.01em;color:var(--sub)}nav a{color:var(--sub);text-decoration:none;transition:color .15s ease}nav a:hover{color:var(--ink)}nav.with-lang{display:flex;justify-content:space-between;align-items:center;gap:12px}.topbar{display:flex;justify-content:flex-end;padding:16px 0 0}.lang-switch{color:var(--sub);text-decoration:none;font-size:12.5px;font-weight:600;padding:6px 14px;border:1px solid var(--line);border-radius:999px;transition:color .15s ease,border-color .15s ease}.lang-switch:hover{color:var(--ink);border-color:var(--ink)}body.home header{padding:56px 0 40px;text-align:center}body.product header{padding:28px 0 36px;text-align:center}.logo{display:inline-block;font-size:13px;letter-spacing:.08em;font-weight:700;margin-bottom:20px;color:var(--accent)}h1{font-weight:700;letter-spacing:-.01em}body.home h1{font-size:clamp(28px,5.5vw,40px);line-height:1.3}body.product h1{font-size:clamp(25px,5vw,34px);line-height:1.35}body.legal h1{font-size:24px;line-height:1.3;margin:20px 0 28px}.lead{margin-top:14px;color:var(--sub);font-size:15px;line-height:1.7}body.product .lead{text-align:left}.section-title{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--sub);margin:44px 0 16px;text-align:center}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:14px;transition:box-shadow .2s ease,transform .2s ease}.card:hover{box-shadow:0 10px 30px #00000012;transform:translateY(-2px)}.card h2{font-size:18px;font-weight:700;margin-bottom:6px;letter-spacing:-.01em}.card .price{color:var(--ink);font-weight:700;font-size:16px;margin:6px 0}.card p{font-size:14px;color:var(--sub);line-height:1.65}.how{display:grid;gap:10px;margin-bottom:48px}.how div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 18px;font-size:14px;line-height:1.6;display:flex;align-items:center;gap:12px}.how b{flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}.btn{display:inline-block;margin-top:16px;background:var(--accent);color:#fff;text-decoration:none;border-radius:10px;font-weight:600;letter-spacing:.01em;transition:transform .15s ease,box-shadow .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0095f647}.btn.disabled{background:#b2dffc;cursor:default;pointer-events:none;box-shadow:none;transform:none}body.home .btn{padding:11px 22px;font-size:14px}body.product .btn{padding:14px 38px;font-size:15px}.price-box{background:var(--card);border:2px solid var(--accent);border-radius:18px;padding:32px 28px;text-align:center;margin:28px 0}.price{font-size:34px;font-weight:800;color:var(--ink);letter-spacing:-.02em}.price small{font-size:14px;color:var(--sub);font-weight:500;letter-spacing:0}.note{font-size:12px;color:var(--sub);margin-top:12px;line-height:1.5}body.product h2{font-size:17px;font-weight:700;margin:44px 0 14px;letter-spacing:-.01em}ul.deliver{list-style:none}ul.deliver li{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:10px;font-size:14px;line-height:1.6;color:var(--sub)}ul.deliver li b{display:block;margin-bottom:4px;color:var(--ink);font-size:15px}.steps{counter-reset:s}.steps div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px 16px 56px;margin-bottom:10px;font-size:14px;line-height:1.6;counter-increment:s;position:relative;color:var(--sub)}.steps div:before{content:counter(s);position:absolute;left:16px;top:14px;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center}.target{background:#0095f60f;border-radius:16px;padding:20px 24px;font-size:14px;line-height:1.7;color:var(--ink)}.target li{margin-left:18px;margin-bottom:6px}dl.faq dt{font-weight:700;font-size:14.5px;margin-top:20px;color:var(--ink);letter-spacing:-.01em}dl.faq dt:before{content:"Q. ";color:var(--accent)}dl.faq dd{font-size:14px;color:var(--sub);margin-top:5px;line-height:1.65}.ai-note{font-size:12px;color:var(--sub);background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:13px 16px;margin-top:32px;line-height:1.6}footer{border-top:1px solid var(--line);margin-top:56px;padding:28px 0;text-align:center;font-size:12.5px;color:var(--sub)}footer a{color:var(--sub);text-decoration:none;transition:color .15s ease}footer a:hover{color:var(--accent)}table{width:100%;border-collapse:collapse;font-size:13.5px;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}th,td{border-bottom:1px solid var(--line);padding:14px 16px;text-align:left;vertical-align:top;line-height:1.6}th{width:34%;background:var(--soft);font-weight:600;color:var(--ink)}td{color:var(--sub)}tr:last-child th,tr:last-child td{border-bottom:none}
