
:root{--navy:#133957;--blue:#1469a3;--line:#dbe7ef;--light:#f3f8fc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#263b4c;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",sans-serif;line-height:1.8;background:#fff}a{color:var(--blue)}.wrap{max-width:1100px;margin:auto;padding:0 24px}.head{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.head .wrap{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:72px}.brand{font-size:28px;font-weight:900;color:var(--navy);text-decoration:none}.nav{display:flex;gap:18px;flex-wrap:wrap}.nav a{text-decoration:none;font-weight:700;font-size:15px}.hero{padding:70px 0 55px;background:linear-gradient(120deg,#eaf6ff,#f8fcff)}.eyebrow{font-size:16px;color:#236ea3;font-weight:800}.hero h1{font-size:clamp(32px,5vw,52px);line-height:1.35;color:var(--navy);margin:10px 0 18px}.lead{font-size:20px;max-width:850px}.button{display:inline-block;background:#116aa5;color:#fff;padding:13px 25px;border-radius:11px;font-weight:800;text-decoration:none;margin-top:12px}.section{padding:62px 0}.section.alt{background:var(--light)}h2{font-size:clamp(26px,3.4vw,35px);color:var(--navy);line-height:1.4;margin:0 0 16px}h3{font-size:23px;line-height:1.45;color:var(--navy);margin:0 0 9px}p{margin:0 0 16px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card{padding:25px;border:1px solid var(--line);border-radius:16px;background:#fff}.card p:last-child{margin:0}.label{display:inline-block;background:#e4f3ff;color:#176aa3;padding:2px 10px;border-radius:20px;font-size:14px;font-weight:800;margin-bottom:10px}.parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.part{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px}.part strong{display:block;color:#176aa3}.part span{font-weight:800}.feature{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px}.feature p:last-child{margin-bottom:0}.langlist{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.langlist a{display:block;border:1px solid var(--line);border-radius:12px;text-decoration:none;padding:14px;background:#fff;font-weight:800;text-align:center}.langlist a.active{background:#d9efff;border-color:#3388bc}.small{font-size:14px;color:#526579}.footer{background:#133957;color:#e5f1f8;padding:34px 0;font-size:14px}.footer a{color:#fff}.crumb{font-size:14px;margin-bottom:15px}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:16px 19px}.faq summary{font-weight:800;cursor:pointer}.faq details p{padding-top:10px}.focus{background:#eef8ff;border-left:5px solid #217cb8;padding:17px 20px;border-radius:6px}.mobileonly{display:none}@media(max-width:750px){.grid{grid-template-columns:1fr}.parts,.langlist{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding:43px 0}.nav{gap:10px}.nav a{font-size:13px}.section{padding:43px 0}.lead{font-size:17px}.head .wrap{align-items:flex-start;padding-top:12px;padding-bottom:12px;flex-direction:column}.part{padding:12px}}
/* v3 language-specific editorial guides */
.guide-intro{font-size:18px;max-width:940px}.toc{background:#f0f8fe;border:1px solid #cfe4f4;padding:23px;border-radius:15px;margin:28px 0}.toc strong{display:block;color:var(--navy);font-size:18px;margin-bottom:12px}.toc>div{display:flex;flex-wrap:wrap;gap:10px}.toc a{background:#fff;border:1px solid #c9dfef;border-radius:8px;padding:7px 13px;text-decoration:none;font-weight:700}.lesson{padding:29px 0;border-bottom:1px solid var(--line);scroll-margin-top:110px}.lesson h3{font-size:25px}.lesson-no{font-size:13px;letter-spacing:.13em;color:#1b77ad;font-weight:900}.example{background:#eef7ff;border-left:5px solid #1879b6;border-radius:7px;padding:19px 24px;margin:19px 0}.example span{font-size:12px;color:#24688d;display:block;font-weight:800}.example strong{font-size:21px;color:#123a57;display:block;line-height:1.65;overflow-wrap:anywhere}.example div{color:#3d5668}.lesson-note,.lesson-use{margin:10px 0}.lesson-use{background:#f3fbf6;padding:13px 18px;border-radius:9px}.roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:24px 0}.roadmap article{border:1px solid var(--line);background:#fff;border-radius:13px;padding:22px}.roadmap b{color:#116da6}.answer{padding:18px 22px;border:1px solid var(--line);border-radius:10px;background:white}.answer summary{font-weight:800;cursor:pointer}section[id],article[id]{scroll-margin-top:105px}@media(max-width:750px){.roadmap{grid-template-columns:1fr}.toc>div{display:grid;grid-template-columns:1fr 1fr}.lesson h3{font-size:22px}}

.about-nav-link{font-weight:800;color:#0874b9;text-decoration:none;white-space:nowrap;margin-left:10px}.about-footer-link{display:inline-block;margin-left:14px;text-decoration:underline}@media(max-width:780px){.about-nav-link{margin-left:auto;font-size:13px}}

/* About Us: standard navigation item immediately before language selector */
.nav .about-nav-link{font-size:13px;font-weight:800;color:#133957;text-decoration:none;margin-left:0;white-space:nowrap;display:inline-flex;align-items:center;padding:7px 3px}.nav .about-nav-link:hover{color:#0874b9;text-decoration:underline;text-underline-offset:4px}.nav .about-nav-link:focus-visible{outline:2px solid #0874b9;outline-offset:3px;border-radius:3px}@media(max-width:780px){.nav .about-nav-link{margin-left:0}}
/* freng-rev-v3 */.toc span.toc-item{background:#fff;border:1px solid #c9dfef;border-radius:8px;padding:7px 13px;font-weight:700;color:var(--navy)}
/* freng-rev-v4 */.toc>div.toc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.toc-card{background:#fff;border:1px solid #c9dfef;border-radius:10px;padding:12px 15px}.toc .toc-card span.toc-item{display:block;background:none;border:0;border-radius:0;padding:0;font-weight:800;color:var(--navy);margin-bottom:4px}.toc-card .toc-desc{margin:0;font-size:15px;line-height:1.7;color:#3d5668}@media(max-width:750px){.toc>div.toc-cards{grid-template-columns:1fr}}
