
:root{--navy:#103e5c;--blue:#12658f;--sky:#edf8fd;--bg:#f6fafc;--text:#183344;--muted:#607988;--line:#d8e6ee;--white:#fff;--shadow:0 16px 42px rgba(20,65,92,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans JP",system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:inherit}
.adbar{background:var(--navy);color:#fff;text-align:center;padding:8px 14px;font-size:12px;line-height:1.7}
.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{max-width:1100px;margin:auto;min-height:70px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#0e5d88,#2080b3)}.brand strong{display:block;font-size:20px}.brand small{display:block;color:#78909f;font-size:10px;letter-spacing:.14em}
.nav{display:flex;gap:22px}.nav a{text-decoration:none;font-size:13px;font-weight:700;color:#365166}
.hero{background:linear-gradient(180deg,#edf8fd,#fafcfd);border-bottom:1px solid var(--line)}.hero-inner{max-width:1000px;margin:auto;padding:38px 20px}.crumb{font-size:12px;color:#78909f;margin-bottom:16px}.crumb a{color:#557183}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em;color:var(--blue)}.hero h1{font-size:clamp(28px,5vw,43px);line-height:1.38;margin:8px 0 12px}.hero p{color:var(--muted);line-height:1.85;margin:0;max-width:780px}
.wrap{max-width:1000px;margin:auto;padding:30px 20px 70px}.article{display:grid;gap:18px}.article-section{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow)}.article-section h2{font-size:24px;line-height:1.5;margin:0 0 16px}.article-section h3{font-size:19px;margin:24px 0 10px}.article-section p,.article-section li{color:#425f70;font-size:15px;line-height:2}.article-section img{max-width:100%;height:auto;border-radius:14px}.article-section iframe{max-width:100%;width:100%;border:0;border-radius:14px}.article-section table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.article-section td,.article-section th{padding:8px;border:1px solid var(--line)}
.search-card{margin:26px 0;background:linear-gradient(135deg,#123f5d,#176d99);color:#fff;border-radius:22px;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:20px}.search-card h2{margin:0 0 7px;font-size:24px}.search-card p{margin:0;color:#d5e5ed;line-height:1.7}.btn{background:#fff;color:#123f5d;border-radius:12px;padding:13px 18px;text-decoration:none;font-weight:800;white-space:nowrap}
.notice{background:#fff8e8;border:1px solid #eadcb4;border-radius:14px;padding:13px 15px;color:#6c6146;font-size:12px;line-height:1.8;margin-bottom:20px}
.directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.directory a{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;text-decoration:none;box-shadow:var(--shadow)}.directory b{display:block;margin-bottom:5px}.directory span{font-size:12px;color:var(--muted)}
.footer{background:#103b58;color:#fff}.footer-inner{max-width:1000px;margin:auto;padding:26px 20px;display:flex;justify-content:space-between;gap:20px}.footer a{color:#fff}
@media(max-width:760px){.nav{display:none}.article-section{padding:19px}.article-section h2{font-size:21px}.search-card{flex-direction:column;align-items:stretch}.btn{text-align:center}.directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.header-inner{min-height:64px;padding:0 14px}.hero-inner{padding:28px 15px}.wrap{padding:23px 14px 52px}.article-section p,.article-section li{font-size:14px}.directory{grid-template-columns:1fr}}
