*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f2f6fb;color:#0b2e54;font-family:Arial,'Noto Sans JP','Yu Gothic',Meiryo,sans-serif}a,button{touch-action:manipulation}.appbar{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #ccdcea;box-shadow:0 3px 10px #12345314}.bar{max-width:1450px;margin:auto;padding:5px 16px;min-height:48px;display:flex;align-items:center;justify-content:flex-end;gap:14px}.brand{font-weight:800;font-size:13px;white-space:nowrap;color:#0c355c;margin-right:auto}.brand small{display:block;font-size:10px;color:#617a92;font-weight:500}.links{display:none;position:absolute;right:75px;top:51px;flex-direction:column;align-items:stretch;gap:2px;padding:10px 12px;background:#fff;border:1px solid #c8d8e9;box-shadow:0 10px 22px #12345333;border-radius:6px;min-width:255px;max-height:75vh;overflow-y:auto}.links a{color:#16365b;text-decoration:none;border-radius:5px;padding:8px 9px;font-size:12px;font-weight:700;white-space:nowrap}.links a:hover,.links a.active{color:#d95918;background:#fff0e6}.language{display:flex;border:1px solid #b9cfe1;border-radius:7px;overflow:hidden;flex-shrink:0}.language a,.language strong{display:block;text-decoration:none;color:#06345d;padding:9px 11px;font-size:12px;font-weight:800}.language strong{background:#0c315e;color:#fff}.language a:hover{background:#e9f4fe}.hamburger{display:block;border:1px solid #c6d7e7;background:#fff;color:#0c315e;border-radius:6px;padding:8px;font-weight:700}.viewport{max-width:1450px;margin:auto;overflow-x:auto;background:#fff}.page{position:relative;margin:auto;width:min(100%,var(--pw));line-height:0}.page>img{width:100%;height:auto;display:block}.tap{position:absolute;z-index:2;display:block;border-radius:3px;border:1px solid transparent}.tap:hover{background:#ff771520;border-color:#fb7919}.tap:focus-visible{outline:3px solid #ff731c;outline-offset:1px;background:#fff5d322}.tools{max-width:1450px;margin:auto;display:flex;justify-content:space-between;gap:10px;padding:13px 16px;flex-wrap:wrap;background:#e8f0f9;font-size:12px}.tools a{background:#fff;border:1px solid #bcd1e4;border-radius:6px;padding:10px 12px;text-decoration:none;font-weight:700;color:#0b3c72}.tools a:hover{border-color:#f26a22;color:#cc5523}.tools .helper{color:#4d6986}.toc{max-width:1450px;margin:0 auto;padding:18px 16px 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:8px}.toc a{border:1px solid #d0e1ef;background:#fff;padding:12px 10px;text-decoration:none;border-radius:7px;color:#0b3764;font-size:13px;font-weight:700}.toc a:hover{border-color:#f60}.switch-toast{position:fixed;left:16px;bottom:16px;max-width:min(450px,calc(100vw - 32px));z-index:10;background:#0d325e;color:#fff;border-radius:8px;padding:10px 14px;font-size:12px;box-shadow:0 5px 20px #01162944}.contact-content{max-width:850px;min-height:65vh;margin:35px auto;background:white;padding:35px;border:1px solid #dce8f4;border-radius:12px;line-height:1.7}.contact-content h1{font-family:Georgia,serif;font-size:36px}.contact-content p{font-size:15px}.contact-content .inquiry{display:block;background:#f66a20;padding:12px 20px;color:#fff;font-weight:800;width:max-content;text-decoration:none;border-radius:8px}.contact-content .notice{border:1px solid #efcfb1;background:#fff5e9;padding:12px;border-radius:8px}.footer{border-top:1px solid #dde8f3;padding:12px 16px;background:#fff;color:#54708b;font-size:11px;text-align:center}.links.mobile-open{display:flex}body.debug .tap{outline:2px solid #ef711a;background:#ff81151b}@media(max-width:1000px){.brand{font-size:12px}.links a{font-size:11px;padding:6px}.bar{gap:8px}}@media(max-width:800px){.hamburger{display:block}.links{display:none;position:absolute;top:52px;left:0;right:0;padding:14px;flex-direction:column;align-items:stretch;background:#fff;border-bottom:1px solid #bfcde0;box-shadow:0 15px 20px #2344}.links a{padding:12px;font-size:14px}.bar{min-height:52px}.viewport{scrollbar-color:#9db3cc transparent}.page{width:max(920px,100%)!important}.brand small{display:none}.tools{align-items:center}.switch-toast{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
#menu-btn:focus-visible,.language a:focus-visible{outline:3px solid #f26b2f;outline-offset:2px}
