.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature-card{padding:24px;border:1px solid var(--border);border-radius:16px}.feature-card h3{margin:12px 0 8px;line-height:1.45}.feature-card p{margin:0;color:var(--muted)}.qualification-group-heading{margin:32px 0 8px}.qualification-group-heading:first-of-type{margin-top:0}.qualification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qualification-card h3{margin:10px 0 5px;font-size:19px;line-height:1.45}@media (max-width:480px){.feature-grid,.qualification-grid{grid-template-columns:1fr}.feature-card{padding:20px}}@media (min-width:481px) and (max-width:760px){.feature-grid{grid-template-columns:1fr}}.feature-card{border:var(--line);border-radius:0;background:#fff;box-shadow:var(--koma-shadow)}.feature-card p{color:#333}.recommend-list{display:grid;gap:10px;max-width:760px;margin:0;padding:0;list-style:none}.recommend-list li{position:relative;padding:12px 14px 12px 50px;border:var(--line);background:#fff;box-shadow:4px 4px 0 #111;font-weight:700;line-height:1.6}.recommend-list li:before{content:"✓";position:absolute;left:12px;top:50%;display:grid;place-items:center;width:26px;height:26px;margin-top:-13px;border:2px solid #111;background:var(--brand);color:#fff;font-weight:900}.chara-talk-right{flex-direction:row-reverse;margin-left:auto;margin-right:0;justify-content:flex-start}.chara-talk-right .speech:before{left:auto;right:-17px;border-right:10px solid transparent;border-left:16px solid #111}.strength-list{display:grid;gap:22px}.strength-card{display:grid;gap:18px;align-items:center}.strength-card.has-visual{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.strength-card:nth-child(2n).has-visual .strength-visual{order:-1}.strength-card h3{font-size:clamp(19px,3.4vw,24px)}.strength-link{margin:10px 0 0;font-weight:900}.strength-link a{color:var(--brand)}.strength-visual{min-width:0}.strength-manga-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px}.strength-manga-strip img{display:block;width:100%;height:auto;border:2px solid #111;box-shadow:3px 3px 0 #111;background:#fff}.diag-sample,.tutor-sample{display:grid;gap:10px;padding:14px;border:var(--line);background:#fffbe0}.diag-sample p,.tutor-sample p{margin:0}.tutor-sample-q{justify-self:end;max-width:85%;padding:10px 14px;border:2px solid #111;border-radius:18px 18px 4px 18px;background:#fff7c2;font-weight:700}.tutor-sample-a{max-width:92%;padding:10px 14px;border:2px solid #111;border-radius:18px 18px 18px 4px;background:#fff;line-height:1.7}.tutor-sample-a span{display:block;color:var(--muted);font-size:12px;font-weight:900}.tutor-sample-note{color:var(--muted);font-size:12px;text-align:right}.diag-sample-row{display:grid;grid-template-columns:6.5em minmax(0,1fr) 3em 5.2em;gap:8px;align-items:center;font-weight:900}.diag-bar{display:block;height:16px;border:2px solid #111;background:#fff}.diag-bar-fill{display:block;height:100%;background:var(--accent)}.diag-bar-fill.risk{background:var(--brand)}.diag-bar-fill.safe{background:var(--safe)}.diag-sample-row b{padding:1px 4px;white-space:nowrap;border:2px solid #111;background:#fff;font-size:13px;text-align:center}.diag-sample-row b.risk{color:#fff;background:var(--brand)}.diag-sample-row b.safe{color:#fff;background:var(--safe)}.compare-table{display:grid;border:var(--line);background:#fff;box-shadow:var(--koma-shadow)}.compare-row{display:grid;grid-template-columns:9em minmax(0,1fr) minmax(0,1fr)}.compare-row>span{padding:12px 14px;border-top:2px solid #111;line-height:1.6}.compare-row>span+span{border-left:2px solid #111}.compare-head>span{border-top:0;font-weight:900}.compare-head>span:last-child,.compare-row>span:last-child{background:#fff7c2;font-weight:700}.compare-head>span:last-child{color:#fff;background:var(--brand)}.compare-row>span[role=rowheader]{font-weight:900;background:#f2f2f2}.home-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none;counter-reset:none}.home-steps li{padding:18px;border:var(--line);background:#fff;box-shadow:var(--koma-shadow)}.home-steps h3{margin:10px 0 6px}.home-steps p{margin:0;color:#333}.home-step-no{display:inline-grid;place-items:center;width:36px;height:36px;border:var(--line);background:var(--accent);font-size:20px;font-weight:900}.pass-price{margin:0;font-weight:700}.pass-price strong{color:var(--accent);font-size:clamp(30px,6vw,44px);font-weight:900;margin-right:4px}.final-cta{padding:clamp(22px,5vw,40px);border:4px solid #111;text-align:center;background:#fff repeating-conic-gradient(from 0deg at 50% 50%,#fff7c2 0 4deg,#fff 4deg 12deg);box-shadow:7px 7px 0 #111}.final-cta h2{margin-top:0}.final-cta .hero-button{margin-top:6px}@media (max-width:720px){.strength-card.has-visual{grid-template-columns:1fr}.strength-card:nth-child(2n).has-visual .strength-visual{order:0}.home-steps{grid-template-columns:1fr}.compare-head,.compare-row{grid-template-columns:1fr 1fr}.compare-row>span[role=rowheader]{grid-column:1/-1;border-left:0}.compare-row>span[role=rowheader]+span{border-left:0}.compare-head>span:first-child{display:none}.compare-head>span:nth-child(2){border-left:0}}@media (max-width:480px){.diag-sample-row{grid-template-columns:5.6em minmax(0,1fr) 2.8em 5em;gap:6px;font-size:14px}}.hero{display:grid;gap:clamp(22px,4vw,48px);align-items:center;padding:clamp(8px,2vw,24px) 0 clamp(28px,5vw,48px)}.hero-copy{min-width:0}.hero-kicker{margin:0 0 10px;color:var(--brand);font-size:13px;font-weight:900;letter-spacing:.1em}.hero h1{margin:0;font-size:clamp(28px,4.1vw,46px);word-break:keep-all;overflow-wrap:anywhere;line-height:1.32;letter-spacing:.01em}.hero h1 em{font-style:normal;color:var(--brand);background:linear-gradient(transparent 68%,var(--accent) 68%)}.hero .lead{margin:16px 0 0;max-width:34em;color:#4a4d55;font-size:clamp(15px,1.6vw,17px);font-weight:500;line-height:1.85}.hero-actions{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center;margin-top:24px}.hero-button{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:14px 36px;font-size:clamp(17px,2vw,20px);line-height:1.3;text-align:center}.button-main{white-space:nowrap}.button-note{font-size:12px;font-weight:700;opacity:.92}.hero-sub-link{color:#111;font-size:15px;font-weight:700;-webkit-text-decoration:underline 2px #111;text-decoration:underline 2px #111;text-underline-offset:5px}.hero-koma{position:relative;margin:0 6px 6px 0;border:3px solid #111;background:#fff;box-shadow:6px 6px 0 #111;overflow:hidden}.hero-koma img{display:block;width:100%;height:auto}.hero-koma figcaption{position:absolute;right:0;bottom:0;padding:3px 10px;border-top:2px solid #111;border-left:2px solid #111;background:var(--accent);font-size:12px;font-weight:900}.hero-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 8px;padding:0;list-style:none;border-top:2px solid #111;border-bottom:2px solid #111;background:#fff}.hero-facts li{padding:16px 8px;text-align:center;color:#4a4d55;font-size:13px;line-height:1.5}.hero-facts li+li{border-left:1px solid #ddd}.hero-facts strong{display:block;color:#111;font-size:clamp(24px,3vw,32px);font-weight:900;line-height:1.2}.hero-facts strong small{font-size:.5em;margin-left:1px}@media (min-width:761px){.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}@media (max-width:760px){.hero{gap:16px}.hero-copy{display:contents}.hero-kicker{order:1;margin:0 0 -8px}.hero h1{order:2}.hero-koma{order:3}.hero .lead{order:4;margin:0}.hero-actions{order:5;margin:0;flex-direction:column;align-items:stretch;text-align:center}.hero-button{display:flex}.hero-facts{grid-template-columns:repeat(2,1fr)}.hero-facts li:nth-child(3){border-left:0}.hero-facts li:nth-child(n+3){border-top:1px solid #ddd}}.recommend-list li{border-width:2px;box-shadow:none;font-weight:500}.feature-card,.home-steps li{border-width:2px;box-shadow:3px 3px 0 #111}.feature-card p,.home-steps p{color:#4a4d55}.beta-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none}.beta-list a{display:block;padding:10px 14px;border:1.5px solid #111;background:#fff;color:#111;font-weight:700;text-decoration:none}.beta-list a:hover{background:var(--accent)}.beginner-entry .card,.faq-list details,.qualification-grid .card{border-width:2px;box-shadow:3px 3px 0 #111}