*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.5rem}body{margin:0;color:#303b35;background:#fffefb;font:16px/1.9 "Yu Gothic","Meiryo",sans-serif}a{color:#276348;text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid #c57624;outline-offset:4px}img{display:block;max-width:100%;height:auto}header{max-width:1120px;margin:auto;padding:25px 32px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand span{display:block;font-size:11px;letter-spacing:.1em}.brand a{text-decoration:none;font-size:27px;font-weight:bold;letter-spacing:.12em}nav{display:flex;gap:21px;flex-wrap:wrap}nav a{font-size:14px;text-decoration:none}main{max-width:1056px;margin:auto}.cover{background:#f4f1e6;display:grid;grid-template-columns:38% 62%;min-height:420px;margin:0;padding:0;overflow:hidden}.cover>img{width:100%;height:100%;object-fit:cover;image-rendering:auto}.cover>div{padding:52px 52px;align-self:center}.cover p{margin:0 0 20px;letter-spacing:.08em}.cover h1{font-size:clamp(38px,6vw,68px);letter-spacing:.15em;line-height:1.4;margin:0 0 24px;font-weight:500}.cover .cover-address{font-size:14px}.button{display:inline-block;background:#386a4c;color:white;text-decoration:none;padding:10px 22px;border-radius:3px}section{padding:62px 35px;border-bottom:1px solid #e2e5dc}.eyebrow{font-size:12px;letter-spacing:.17em;color:#52715a;margin:0 0 6px}h2{font-size:28px;line-height:1.5;margin:0 0 30px;font-weight:500}h3{font-size:19px;margin:0 0 12px}p{margin:0 0 20px}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:40px}.intro p{margin-top:0}figure{margin:0}figcaption{font-size:13px;margin:10px 0;color:#576458}.explanation{margin-top:25px}.source{font-size:13px;color:#59665e}table{border-collapse:collapse;width:100%;font-size:15px;table-layout:fixed}caption{text-align:left;margin-bottom:15px}th,td{border:1px solid #cbd6c9;padding:13px 16px;text-align:left;vertical-align:top;overflow-wrap:anywhere}thead{background:#e9efdf}th:first-child{width:18%}tbody tr:nth-child(even){background:#f7f8f1}.floors{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:24px}.floors h3{border-bottom:2px solid #9eb98e;padding-bottom:12px}.floors ul{margin:0;padding-left:23px;columns:2}.steps{counter-reset:step;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px 30px}.steps li{counter-increment:step;border-top:1px solid #b5c7ad;padding-top:20px}.steps h3:before{content:counter(step);display:inline-grid;place-items:center;width:30px;height:30px;margin-right:9px;border-radius:50%;background:#93b67c;color:#fff}.steps p{font-size:14px;line-height:1.9}details{margin-top:25px}summary{cursor:pointer;color:#276348;padding:10px 0}details img{margin-top:20px}.access{display:grid;grid-template-columns:1fr 40%;gap:60px}.access img{max-height:520px;width:auto;margin:auto}dl{margin:0}dt{font-size:13px;color:#526752;margin-top:15px}dd{margin:0 0 12px}.phone{font-size:24px}footer{max-width:1056px;margin:auto;padding:30px 35px;font-size:13px;display:flex;flex-wrap:wrap;gap:15px 30px;align-items:center}footer p{margin:0;margin-right:auto}.skip{position:absolute;left:12px;top:-100px}.skip:focus{top:12px;background:white;padding:10px;z-index:10}@media(max-width:760px){header{display:block;padding:18px 20px}nav{gap:10px 20px;margin-top:16px}.cover{grid-template-columns:30% 70%;min-height:330px}.cover>div{padding:28px 22px}.cover h1{font-size:38px}.cover p{font-size:14px}.cover .cover-address{font-size:12px}section{padding:38px 20px}h2{font-size:24px}.intro,.access,.floors{grid-template-columns:1fr;gap:25px}.steps{grid-template-columns:1fr}.steps p{font-size:16px}.floors ul{columns:2}table{font-size:13px}th,td{padding:9px 7px}th:first-child{width:22%}.access figure{max-width:400px;margin:auto}footer{padding:25px 20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{nav,.button,footer{display:none}section{padding:20px 0;break-inside:avoid}.cover{min-height:0}.cover>img{max-height:250px}.cover>div{padding:20px}.steps{display:block}body{font-size:11pt}main{max-width:none}}
/* 配色調整：背景はクリーム、アクセントは朱色、生活案内は淡い緑 */
body{background:#f7f3e9;color:#353b33}
header,main,footer{background:#fffef9}
header{max-width:1056px;border-top:5px solid #b9533d}
.brand a{color:#3d493b}
a,summary{color:#9a3f2d}
.cover{background:#faedda}
.cover h1{color:#8e3b2d}
.button{background:#b24c35;color:#fff}
nav a:hover{color:#9a3f2d;text-decoration:underline}
section{border-bottom-color:#e4dfd0}
h2{color:#964530}
.eyebrow{color:#526847}
#about{background:#fffef9}
#day{background:#f1f5e9}
#rooms{background:#fff8ec}
#flow{background:#fffef9}
#access{background:#f5f1e7}
thead{background:#dce9cf}
tbody tr{background:#fffef9}
tbody tr:nth-child(even){background:#f2f6e9}
th,td{border-color:#bccbb0}
.floors h3{color:#536a43;border-bottom-color:#a7bc92}
.steps li{border-top-color:#d5c2ad}
.steps h3:before{background:#637c4f;color:#fff}
footer{border-bottom:5px solid #b9533d}
@media print{body,header,main,footer,section,#about,#day,#rooms,#flow,#access,.cover{background:#fff}}

/* 関連施設リンクの追加に合わせて折り返す */
header .brand{flex:0 0 auto}header nav{justify-content:flex-end;gap:10px 20px}header nav a{white-space:nowrap}@media(max-width:760px){header nav{justify-content:flex-start}}
