*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{font-size:16px;-webkit-text-size-adjust:100%;}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Hiragino Sans','Yu Gothic',Roboto,sans-serif;color:#1e293b;line-height:1.85;background:#fff;}
a{color:#2563eb;text-decoration:none;}
a:hover{text-decoration:underline;}
.container{max-width:680px;margin:0 auto;padding:0 1.25rem;}
header{border-bottom:1px solid #e2e8f0;}
header .inner{display:flex;align-items:center;justify-content:space-between;padding:.875rem 0;}
.logo{font-size:1.25rem;font-weight:700;letter-spacing:-0.02em;color:#1e293b;}
.logo span{color:#2563eb;}
.btn-try{display:inline-flex;align-items:center;background:#2563eb;color:#fff;padding:0.5rem 1.1rem;border-radius:6px;font-size:0.875rem;font-weight:600;white-space:nowrap;min-height:44px;}
.btn-try:hover{background:#1d4ed8;text-decoration:none;}
.crumb{font-size:.8rem;color:#94a3b8;padding:1rem 0 0;}
.crumb a{color:#64748b;}
article{padding:1rem 0 2.5rem;}
article h1{font-size:clamp(1.5rem,5vw,2rem);font-weight:800;line-height:1.35;letter-spacing:-0.02em;color:#0f172a;margin:.5rem 0 1rem;}
article .lead{font-size:1.05rem;color:#334155;margin-bottom:1.75rem;}
article h2{font-size:1.3rem;font-weight:700;color:#0f172a;margin:2rem 0 .9rem;}
article h3{font-size:1.02rem;font-weight:700;color:#0f172a;margin:1.25rem 0 .4rem;}
article p{margin-bottom:1rem;color:#334155;}
article ul,article ol{margin:0 0 1rem 1.25rem;}
article li{margin-bottom:.5rem;color:#334155;}
.example{background:#f8fafc;border-radius:10px;padding:1rem 1.15rem;margin:1rem 0 1.25rem;}
.example .src{font-weight:700;color:#0f172a;margin-bottom:.6rem;}
.example ul{list-style:none;margin:0;}
.example li{margin-bottom:.5rem;}
.example .en{font-weight:600;color:#0f172a;}
.faq{display:flex;flex-direction:column;gap:0.5rem;margin-top:.5rem;}
details{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;}
summary{padding:0.9rem 1rem;font-size:0.92rem;font-weight:600;color:#0f172a;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:48px;}
summary::-webkit-details-marker{display:none;}
summary::after{content:'+';color:#2563eb;font-size:1.2rem;margin-left:.5rem;}
details[open] summary::after{content:'−';}
.faq-body{padding:0.25rem 1rem 1rem;font-size:0.9rem;color:#475569;}
.cta-band{background:#eff6ff;border-radius:12px;padding:2rem 1.5rem;text-align:center;margin:2rem 0 0;}
.cta-band p{font-size:0.95rem;color:#334155;margin-bottom:1.1rem;}
.btn-hero{display:inline-flex;align-items:center;background:#2563eb;color:#fff;padding:0.85rem 2rem;border-radius:8px;font-size:1rem;font-weight:700;min-height:48px;}
.btn-hero:hover{background:#1d4ed8;text-decoration:none;}
.related{margin-top:2rem;font-size:.92rem;border-top:1px solid #f1f5f9;padding-top:1.25rem;}
.related h2{font-size:1.05rem;margin:0 0 .5rem;}
.related a{display:block;padding:.3rem 0;}
footer{border-top:1px solid #e2e8f0;padding:1.5rem 0;font-size:0.8rem;color:#94a3b8;margin-top:2.5rem;}
.footer-inner{display:flex;flex-wrap:wrap;gap:0.75rem;align-items:center;justify-content:space-between;}
footer a{color:#64748b;}
.guide-list{list-style:none;margin:1.25rem 0 0;padding:0;}
.guide-list li{margin:0 0 .75rem;padding:0;}
.guide-list a{font-weight:600;}
.guide-list p{font-size:.88rem;color:#64748b;margin:.15rem 0 0;}
