:root{--ai:#22324a;--ai-d:#182337;--kin:#a68a55;--paper:#f4f5f3;--ink:#1e2226;--line:#d5d8d3}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;line-height:1.9}
a{color:inherit}
:focus-visible{outline:3px solid var(--kin);outline-offset:3px}
header{background:var(--ai-d);color:#fff;padding:14px 18px}
header p{margin:0;font-size:14px;letter-spacing:.08em;opacity:.8;line-height:1.5}
header strong{display:block;font-size:22px;letter-spacing:.12em;font-weight:600}
nav ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;background:var(--ai)}
nav a{display:block;padding:15px 12px;color:#fff;text-decoration:none;text-align:center;font-size:16px;border-bottom:1px solid rgba(255,255,255,.15);border-right:1px solid rgba(255,255,255,.15)}
nav li:nth-child(2n) a{border-right:0}
nav li:last-child{grid-column:1/-1}
nav li:last-child a{border-right:0}
nav a:active{background:var(--ai-d)}
.hero{background:linear-gradient(180deg,rgba(34,50,74,.82) 0,rgba(24,35,55,.90) 100%),url(img/image-top.jpg) center/cover no-repeat,var(--ai-d);color:#fff;display:flex;align-items:center;justify-content:center;gap:28px;padding:44px 18px 48px}
.hero .myogo{writing-mode:vertical-rl;font-size:clamp(34px,10vw,52px);letter-spacing:.3em;color:#e6d8b6;line-height:1.3}
.hero .greet{max-width:15em;font-size:17px}
.hero .greet h1{margin:0 0 14px;font-size:20px;letter-spacing:.1em;font-weight:600}
.hero .greet p{margin:0}
main{max-width:720px;margin:0 auto;padding:8px 18px 40px}
section{padding:32px 0;border-bottom:1px solid var(--line)}
h2{margin:0 0 14px;font-size:21px;letter-spacing:.08em;color:var(--ai);border-left:5px solid var(--kin);padding-left:12px;line-height:1.5}
.sample{font-size:14px;color:#6b6f6a;background:#e9ebe7;padding:6px 10px;display:inline-block;margin-bottom:10px}
dl{margin:0}
dt{font-weight:600;color:var(--ai)}
dd{margin:0 0 12px}
.btn{display:block;margin:12px 0 0;padding:16px;background:var(--ai);color:#fff;text-align:center;text-decoration:none;font-size:18px;letter-spacing:.06em}
.btn.sub{background:#fff;color:var(--ai);border:2px solid var(--ai)}
.guide{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.guide a{display:block;padding:14px 16px;background:#fff;border:1px solid var(--line);text-decoration:none}
.guide span{display:block;font-size:14px;color:#6b6f6a;line-height:1.6}
footer{background:var(--ai-d);color:#dfe3e8;padding:28px 18px;font-size:15px;line-height:1.8}
footer p{margin:0 0 6px}
footer small{opacity:.7}
@media (min-width:700px){
 nav ul{grid-template-columns:repeat(4,1fr)}
 nav li:nth-child(2n) a{border-right:1px solid rgba(255,255,255,.15)}
 nav li:nth-child(4n) a{border-right:0}
 .hero{padding:72px 18px}
 .guide{grid-template-columns:1fr 1fr}
}
.page-hero{background:linear-gradient(180deg,rgba(34,50,74,.82),rgba(24,35,55,.90)),url(img/image-top.jpg) center/cover no-repeat,var(--ai-d);color:#fff;text-align:center;padding:30px 18px}
.page-hero h1{margin:0;font-size:22px;letter-spacing:.12em;font-weight:600;line-height:1.5}
article p{margin:0 0 1.1em}
article h3{margin:1.6em 0 .6em;font-size:19px;color:var(--ai)}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
.gallery img{width:100%;height:auto;display:block}
.tbl{width:100%;border-collapse:collapse;background:#fff;font-size:16px;line-height:1.7}
.tbl th,.tbl td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.tbl th{background:#e9ebe7;color:var(--ai);white-space:nowrap;width:5.5em}
.note{font-size:15px;color:#4a4f4a}
.warn{background:#fff3cd;color:#6b4e00;padding:8px 12px;font-size:15px;margin-bottom:14px}
.map{position:relative;width:100%;aspect-ratio:4/3;margin-top:12px}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pdfs{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pdfs a{display:block;padding:14px 16px;background:#fff;border:1px solid var(--line);text-decoration:none}
.fig{margin:16px 0}.fig img{width:100%;height:auto;display:block}
nav a[aria-current=page]{background:var(--ai-d)}

