:root{--sq-navy:#282e36;--sq-blue:#11438e;--sq-ink:#2c323b;--sq-muted:#677282;--sq-line:#d8e1ec}
*{box-sizing:border-box}
body.sq-body{margin:0;background:#f3f6fa;color:var(--sq-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;line-height:1.7}
.sq-wrap{width:min(1060px,calc(100% - 36px));margin:0 auto;padding:34px 0 76px}
.sq-hero{margin-bottom:28px}
.sq-heading{margin:28px 0 18px}.sq-heading small{color:var(--sq-blue);font-weight:900;letter-spacing:.13em}.sq-heading h2{margin:3px 0;color:var(--sq-navy);font-size:clamp(1.55rem,4vw,2.2rem);line-height:1.4}.sq-heading p{margin:6px 0;color:var(--sq-muted)}
.sq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sq-topic{display:block;min-height:190px;padding:23px 25px;border:1px solid var(--sq-line);border-radius:20px;background:#fff;color:var(--sq-ink);text-decoration:none;box-shadow:0 9px 26px rgba(41,46,54,.05);transition:transform .15s,border-color .15s}
.sq-topic:hover{transform:translateY(-3px);border-color:#86a0c1}.sq-topic:focus-visible,.sq-breadcrumb a:focus-visible,.sq-options label:focus-within,.sq-button:focus-visible,.sq-submit-wrap button:focus-visible{outline:3px solid #edb21e;outline-offset:3px}
.sq-topic>span{font-size:.72rem;font-weight:900;letter-spacing:.13em;color:var(--sq-blue)}.sq-topic h3{margin:7px 0;font-size:1.35rem;color:var(--sq-navy)}.sq-topic p{margin:0 0 12px;color:var(--sq-muted)}.sq-topic strong{color:var(--sq-blue)}
.sq-note{margin-top:30px;padding:24px 28px;border:1px solid var(--sq-line);border-radius:18px;background:#fff}.sq-note h2{margin:0 0 7px;font-size:1.15rem}.sq-note p{margin:8px 0;color:var(--sq-muted)}.sq-note a,.sq-breadcrumb a,.sq-actions a:not(.sq-button){color:#114189;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.sq-breadcrumb{margin:5px 0 20px}.sq-case{min-width:0;margin:0 0 17px;padding:23px 26px 27px;border:1px solid var(--sq-line);border-radius:20px;background:#fff;box-shadow:0 9px 24px rgba(41,46,54,.045)}
.sq-case legend{float:left;width:100%;padding:0;margin-bottom:15px;font-size:1.2rem;font-weight:900;color:var(--sq-navy);line-height:1.45}.sq-case legend span{display:block;margin-bottom:5px;color:var(--sq-blue);font-size:.72rem;letter-spacing:.14em}.sq-case legend+*{clear:both}
.sq-scenario{margin:0 0 13px;font-size:1.02rem}.sq-question{margin:0 0 10px;font-weight:900}.sq-options{display:grid;gap:9px}.sq-options label{display:flex;align-items:flex-start;gap:11px;padding:12px 14px;border:1px solid var(--sq-line);border-radius:11px;cursor:pointer;line-height:1.55}.sq-options label:hover{border-color:#819cc0;background:#f4f7fc}.sq-options label:has(input:checked){border-color:#11438e;background:#e9f0fa}.sq-options input{flex:none;width:18px;height:18px;margin:3px 0 0;accent-color:#11438e}
.sq-submit-wrap{text-align:center;margin:28px 0 0}.sq-submit-wrap button,.sq-button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:12px 24px;border:0;border-radius:12px;background:#185abf;color:#fff;text-decoration:none;font-family:inherit;font-size:1rem;font-weight:900;line-height:1.4;cursor:pointer}.sq-submit-wrap button:hover,.sq-button:hover{background:#1e5cb8}.sq-submit-wrap p{margin:10px 0;color:var(--sq-muted);font-size:.87rem}
.sq-score{padding:28px 30px;margin:0 0 30px;background:#fff;border:1px solid var(--sq-line);border-radius:20px}.sq-score small{font-weight:900;color:var(--sq-blue)}.sq-score h2{margin:8px 0 2px;color:var(--sq-navy);font-size:clamp(2rem,5vw,3rem);line-height:1.3}.sq-score h2 span{font-size:.55em;color:var(--sq-muted)}.sq-score p{margin:0 0 20px;color:var(--sq-muted)}.sq-actions{display:flex;align-items:center;gap:14px 20px;flex-wrap:wrap}
.sq-review{padding:22px 26px;margin-bottom:14px;background:#fff;border:1px solid var(--sq-line);border-left:6px solid #b35656;border-radius:16px}.sq-review.is-correct{border-left-color:#268562}.sq-review-head{display:flex;gap:10px;justify-content:space-between;color:var(--sq-blue);font-size:.78rem;font-weight:900;letter-spacing:.08em}.sq-review.is-correct .sq-review-head strong{color:#176b4b}.sq-review.is-wrong .sq-review-head strong{color:#a74141}.sq-review h3{margin:5px 0 9px;color:var(--sq-navy);font-size:1.17rem}.sq-review p{margin:8px 0}.sq-explanation{margin-top:13px;padding:12px 14px;border-radius:10px;background:#f3f6fa;color:#49525e}
.sq-error{padding:13px 16px;margin-bottom:20px;background:#fff0ed;border:1px solid #daaaa1;border-radius:12px;color:#9e3030;font-weight:800}
@media(max-width:680px){.sq-wrap{width:min(100% - 26px,1060px);padding:22px 0 50px}.sq-grid{grid-template-columns:1fr}.sq-topic{min-height:0}.sq-case{padding:19px 17px 23px}.sq-score,.sq-review,.sq-note{padding:20px 18px}.sq-options label{padding:12px 10px}}
