:root{--pk:#d3bed3;--bg:#ebe6e0;--tx:#0a0a0a}
*{box-sizing:border-box}body{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",serif;color:var(--tx);line-height:1.9;background:#fff}
img{max-width:100%;height:auto;display:block}a{color:inherit}
.hd{position:sticky;top:0;z-index:9;background:#fff;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--bg)}
.logo img{width:140px}.tel{margin-left:auto;font-size:.85rem;text-decoration:none}
.burger{font-size:1.6rem;cursor:pointer}
nav{display:none;width:100%;flex-direction:column}#m:checked~nav{display:flex}
nav a{padding:8px 0;text-decoration:none;border-top:1px solid var(--bg);font-size:.9rem}nav b{display:inline-block;width:5.5em;font-family:Georgia,serif;font-weight:normal;letter-spacing:.08em}
nav a[aria-current]{color:#8a6b8a}
@media(min-width:900px){.burger{display:none}nav{display:flex!important;flex-direction:row;width:auto;gap:20px;margin-left:24px}nav a{border:0;text-align:center;line-height:1.3}nav b{display:block;width:auto}.tel{order:3}}
.w{max-width:1000px;margin:auto;padding:48px 20px}.prose{max-width:760px}
h2{font-weight:normal;text-align:center;font-size:1.3rem}h2 span,.ph span{display:block;font-family:Georgia,serif;font-size:2rem;letter-spacing:.1em;color:#8a6b8a}
h3{border-left:4px solid var(--pk);padding-left:10px;font-weight:normal}
.ph{background:var(--bg);text-align:center;padding:40px 16px}.ph h1{font-weight:normal;font-size:1rem;margin:0}
.two{display:grid;gap:24px;align-items:center}@media(min-width:760px){.two{grid-template-columns:1fr 1fr}}
.c{text-align:center}.btn{display:inline-block;background:var(--tx);color:#fff;padding:12px 32px;text-decoration:none;letter-spacing:.1em;margin:4px}.btn.line{background:#06c755}
.more{display:inline-block;border:1px solid var(--tx);padding:8px 28px;text-decoration:none}
.news{list-style:none;padding:0}.news li{border-bottom:1px solid var(--bg);padding:12px 0}.news time{color:#8a6b8a;margin-right:1em;font-size:.85rem}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media(min-width:760px){.grid{grid-template-columns:repeat(4,1fr)}}
table{width:100%;border-collapse:collapse;margin-bottom:16px}th,td{border-bottom:1px solid var(--bg);padding:10px 6px;text-align:left;vertical-align:top;font-weight:normal}td{text-align:right;white-space:nowrap}
.prose table td{white-space:normal}
blockquote{background:var(--bg);margin:16px 0;padding:16px}cite{display:block;font-size:.85rem;color:#8a6b8a;font-style:normal}
details{border-bottom:1px solid var(--bg);padding:8px 0}summary{cursor:pointer}
.flow{counter-reset:s;padding:0;list-style:none}.flow li{background:var(--bg);margin:0 0 22px;padding:14px;position:relative}.flow li:not(:last-child)::after{content:"↓";position:absolute;left:50%;bottom:-24px}
.map{width:100%;height:320px;border:0}.note{font-size:.8rem;color:#666}
.ft{background:var(--tx);color:#fff;text-align:center;padding:32px 16px 80px;font-size:.85rem}.ft .btn{background:#fff;color:var(--tx)}.ft .btn.line{background:#06c755;color:#fff}
.fix{position:fixed;right:12px;bottom:12px;background:#8a6b8a;color:#fff;padding:12px 20px;border-radius:30px;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.prose table th{width:40%}

/* ヒーロー スライドショー(CSSのみ 5枚 x 5秒 / 1.5秒フェード) */
.hero{position:relative;background:#f7f2f5}
.hero-slides{position:relative;aspect-ratio:4/3;overflow:hidden}
.hero-slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:heroFade 25s infinite}
.hero-slides img:nth-child(1){opacity:1;animation-delay:-1.5s}
.hero-slides img:nth-child(2){animation-delay:3.5s}
.hero-slides img:nth-child(3){animation-delay:8.5s}
.hero-slides img:nth-child(4){animation-delay:13.5s}
.hero-slides img:nth-child(5){animation-delay:18.5s}
@keyframes heroFade{0%{opacity:0}6%{opacity:1}20%{opacity:1}26%{opacity:0}100%{opacity:0}}
.hero-copy{text-align:center;padding:24px 16px 32px}
.hero-copy h1{font-weight:normal;font-size:clamp(1.3rem,4vw,2rem)}
@media(min-width:760px){
 .hero-slides{aspect-ratio:auto;height:min(75vh,640px)}
 .hero-copy{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(255,255,255,.88);padding:32px 40px;max-width:90%;box-shadow:0 2px 16px rgba(0,0,0,.08)}
}
@media(prefers-reduced-motion:reduce){
 .hero-slides img{animation:none}
 .hero-slides img:not(:first-child){display:none}
}

/* 追加ページ用 */
.ft .fl{font-size:.8rem;line-height:2.2}.ft .fl a{white-space:nowrap}
.prose img{margin:12px auto}.prose iframe{max-width:100%}
.prose h2 span{font-size:1.4rem}
.staff ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.staff a:empty{display:none}.staff h1{font-weight:normal;font-size:1.4rem}
.staff caption{font-family:Georgia,serif;color:#8a6b8a}
.sc{overflow-x:auto}.cmp td{text-align:center;white-space:normal}.prose td small,.prose th small{color:#666}
.news a{text-decoration:none}.news time{display:block}
.prose figure{margin:0}.prose ul.wp-block-gallery,.prose .gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
.staff td{text-align:left;white-space:normal}
.info td{text-align:left;white-space:normal}.info th{width:32%}
