:root{--ink:#3d4944;--muted:#6d7772;--cream:#fffaf3;--paper:#fff;--peach:#f8b895;--peach-dark:#df7e58;--mint:#cfe7d5;--mint-dark:#39745b;--sky:#d9edf0;--line:#e8e1d8;--shadow:0 16px 40px rgba(69,58,45,.08);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic UI","Yu Gothic",sans-serif;line-height:1.75}a{color:inherit}button,input,select,textarea{font:inherit}.shell{width:min(1120px,calc(100% - 40px));margin-inline:auto}.narrow{width:min(780px,100%)}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:10px}.site-header{position:relative;z-index:5;background:rgba(255,250,243,.95);border-bottom:1px solid rgba(232,225,216,.8)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:1.15rem;letter-spacing:.02em}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:50% 50% 44% 56%;background:var(--peach);color:transparent;box-shadow:12px 8px 0 -6px var(--mint)}nav{display:flex;gap:24px;align-items:center}nav a{text-decoration:none;font-weight:700;font-size:.92rem}.home-hero{overflow:hidden;background:linear-gradient(150deg,#fff8ef 0%,#fffaf3 48%,#eaf5ee 100%);padding:76px 0 92px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}.eyebrow{margin:0 0 10px;color:var(--peach-dark);font-weight:800;font-size:.83rem;letter-spacing:.12em}.home-hero h1,.page-hero h1,.detail-title h1{margin:0;line-height:1.32;letter-spacing:.02em;font-size:clamp(2.3rem,5vw,4.4rem)}.home-hero h1 span{color:var(--peach-dark)}.lead{font-size:1.08rem;color:var(--muted);max-width:650px;margin:22px 0 0}.hero-search{margin-top:32px;max-width:600px}.hero-search label{display:block;margin-bottom:8px;font-weight:700}.hero-search>div{display:flex;padding:7px;background:#fff;border-radius:18px;box-shadow:var(--shadow)}.hero-search input{min-width:0;flex:1;border:0;padding:12px 14px;background:transparent}.hero-search button,.filter button,.contact-form button{border:0;background:var(--peach-dark);color:#fff;padding:12px 22px;border-radius:13px;font-weight:800;cursor:pointer}.hero-art{position:relative;min-height:350px;border-radius:50% 44% 48% 42%;background:var(--sky);overflow:hidden;box-shadow:inset 0 0 0 16px rgba(255,255,255,.35)}.sun{position:absolute;width:84px;height:84px;border-radius:50%;background:#ffd986;right:55px;top:45px}.hill{position:absolute;border-radius:50% 50% 0 0}.hill-a{height:170px;width:420px;background:#8fbea1;left:-70px;bottom:-30px;transform:rotate(8deg)}.hill-b{height:125px;width:330px;background:#6ba286;right:-90px;bottom:-30px;transform:rotate(-8deg)}.house{position:absolute;left:45%;top:48%;font-size:6rem;color:#fff;transform:translate(-50%,-50%)}.dot{position:absolute;width:24px;height:24px;border-radius:50%;background:var(--peach)}.dot-a{left:48px;top:76px}.dot-b{right:92px;bottom:68px}.section{padding:80px 0}.section.tint{background:#f0f6f1}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.section-heading h2,.choice-grid h3,.panel h2,.prose h2{margin:0;font-size:1.65rem;line-height:1.45}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.choice-grid>a{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;text-decoration:none;box-shadow:0 8px 24px rgba(69,58,45,.04);transition:.2s}.choice-grid>a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.choice-grid span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff0e7;color:var(--peach-dark);font-weight:800}.choice-grid h3{margin-top:22px}.choice-grid p{color:var(--muted);margin-bottom:0}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card-grid.list{grid-template-columns:repeat(2,1fr)}.facility-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 8px 24px rgba(69,58,45,.04)}.facility-card h2{font-size:1.22rem;line-height:1.5;margin:18px 0 4px}.facility-card h2 a{text-decoration:none}.facility-card h2 a:hover{text-decoration:underline}.operator{margin:0;color:var(--muted);font-size:.88rem}.card-top{display:flex;gap:8px;align-items:center;justify-content:space-between}.area-chip,.status{display:inline-flex;border-radius:999px;padding:5px 10px;font-weight:700;font-size:.76rem}.area-chip{background:#edf5ef;color:var(--mint-dark)}.status{background:#f1efeb;color:#6f6a62}.status-available{background:#e0f4e7;color:#246744}.status-unavailable{background:#f7e4df;color:#8c4437}.card-facts,.facts{margin:20px 0}.card-facts div{padding:8px 0;border-top:1px solid var(--line)}dl div{display:grid;grid-template-columns:72px 1fr;gap:12px}dt{font-size:.8rem;font-weight:800;color:var(--muted)}dd{margin:0}.text-link{color:var(--peach-dark);font-weight:800;text-underline-offset:4px}.page-hero{padding:72px 0 52px;background:linear-gradient(150deg,#fff4e8,#eaf5ee)}.page-hero.compact{padding:56px 0 42px}.page-hero h1,.detail-title h1{font-size:clamp(2rem,4.5vw,3.4rem)}.search-layout{display:grid;grid-template-columns:280px 1fr;gap:36px;align-items:start}.filter{position:sticky;top:20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.filter h2{margin:0 0 20px}.filter label,.contact-form>label{display:block;font-weight:700;margin:16px 0}.filter input:not([type=checkbox]),.filter select,.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #d9d2c9;border-radius:12px;background:#fff;padding:11px 12px;color:var(--ink)}.filter button,.contact-form button{width:100%;margin-top:12px}.check{display:flex!important;align-items:flex-start;gap:8px}.check input{margin-top:6px}.reset{display:block;text-align:center;margin-top:12px;color:var(--muted)}.results-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.results-head h2{margin:0}.results-head p{color:var(--muted);font-size:.86rem}.empty{grid-column:1/-1;background:#fff;border-radius:var(--radius);padding:40px}.detail-hero{padding:45px 0 38px;background:linear-gradient(160deg,#fff4e8,#f0f7f2)}.back{display:inline-block;margin-bottom:28px;color:var(--muted)}.detail-title h1{margin:16px 0 4px}.detail-title p{margin:0;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:1fr 280px;gap:28px;align-items:start}.panel,.contact-card,.form-note,.contact-form,.success{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-bottom:22px}.facts div{grid-template-columns:120px 1fr;padding:15px 0;border-top:1px solid var(--line)}.button{display:inline-flex;justify-content:center;text-decoration:none;background:var(--peach-dark);color:#fff;border-radius:13px;padding:12px 18px;font-weight:800}.button.secondary{background:#fff;color:var(--peach-dark);border:1px solid var(--peach);margin-top:8px}.contact-card{position:sticky;top:20px}.contact-card .button{display:flex;margin-top:10px}.sources ul{padding-left:20px}.sources small{display:block;color:var(--muted)}.note{background:#f7f3ed;padding:14px;border-radius:12px}.prose{font-size:1.02rem}.prose h2{margin:44px 0 12px}.prose h2:first-child{margin-top:0}.prose li{margin:8px 0}.callout{margin-top:38px;padding:26px;border-radius:var(--radius);background:#edf6f0;border:1px solid #d5e7da}.callout h2{margin-top:0}.timeline article{border-left:3px solid var(--peach);padding:0 0 34px 24px}.timeline time{color:var(--muted);font-weight:700}.timeline h2{margin:5px 0}.form-shell{max-width:720px}.form-note{background:#f1f7f2}.contact-form span{color:#9f4c38;font-size:.78rem}.contact-form small{font-weight:400;color:var(--muted)}.contact-form textarea{resize:vertical}.field-error{display:block!important;color:#a23b2e!important;font-weight:700!important;margin-top:4px}.error-summary{background:#fff0ed;border:1px solid #e8a79c;padding:14px;border-radius:12px;color:#8d3024}.honey{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.consent{font-weight:400!important}.site-footer{background:#3f5149;color:#f7f4ee;padding:52px 0 24px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-brand{font-size:1.25rem}.site-footer nav{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 20px}.footer-note{border-top:1px solid rgba(255,255,255,.18);margin-top:36px;padding-top:20px;font-size:.82rem;color:#d7dfdb}
.availability-disclaimer{margin:-8px 0 22px;color:var(--muted);font-size:.76rem;line-height:1.7}
/* Shared near-white surface for search and results */
:root{--portal-surface:#f6faf8}
@media(max-width:820px){.hero-grid,.search-layout,.detail-grid{grid-template-columns:1fr}.hero-art{min-height:260px}.card-grid,.card-grid.list,.choice-grid{grid-template-columns:1fr 1fr}.filter,.contact-card{position:static}.search-layout{gap:24px}.footer-grid{grid-template-columns:1fr}}
@media(max-width:600px){.shell{width:min(100% - 28px,1120px)}.site-header nav{display:none}.header-inner{min-height:64px}.home-hero{padding:52px 0 64px}.hero-grid{gap:32px}.hero-art{min-height:230px}.home-hero h1{font-size:2.45rem}.hero-search>div{display:block}.hero-search button{width:100%}.section{padding:56px 0}.choice-grid,.card-grid,.card-grid.list{grid-template-columns:1fr}.section-heading,.results-head{display:block}.section-heading .text-link{display:inline-block;margin-top:10px}.card-top{align-items:flex-start}.page-hero{padding:48px 0 36px}.detail-grid{display:block}.facts div{grid-template-columns:1fr;gap:4px}.footer-grid{display:block}.site-footer nav{margin-top:28px;grid-template-columns:1fr 1fr}.panel,.contact-card,.form-note,.contact-form{padding:22px}.contact-form button{min-height:50px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
body{overflow-x:clip}.hero-grid>*{min-width:0}.skip{position:fixed;top:8px;left:8px;z-index:99;transform:translateY(-200%)}.skip:focus{left:8px;top:8px;transform:none;background:#fff;padding:10px}.honey{position:fixed!important;top:0!important;left:0!important;transform:translateY(-200%)!important}
.portal-hero{padding:58px 0 46px;background:linear-gradient(145deg,#fff4e8,#eef7f1)}.portal-hero h1{max-width:760px}.portal-hero .lead{max-width:760px}.hero-guide{margin:22px 0 0}.hero-guide a{color:var(--peach-dark);font-weight:800;text-underline-offset:4px}.portal-results{padding-top:56px}

/* Digital-pamphlet first view */
.is-home .site-header{position:absolute;inset:0 0 auto;background:transparent;border:0}.is-home .site-header .shell{width:min(1370px,calc(100% - 72px))}.is-home .header-inner{min-height:112px}.is-home .site-header nav{display:none}.is-home .brand{font-size:1.32rem;letter-spacing:.04em}.brochure-hero{position:relative;height:100svh;min-height:780px;max-height:1024px;overflow:hidden;background:var(--cream)}.brochure-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:24%;background:#e7f1e9;border-radius:0 0 58% 0/0 0 88% 0}.brochure-shell{position:relative;z-index:1;width:min(1370px,calc(100% - 72px));height:100%;margin-inline:auto;padding:112px 0 100px;display:grid;grid-template-columns:230px minmax(390px,.92fr) minmax(430px,1fr);gap:34px;align-items:stretch}.brochure-index{align-self:center;display:grid;gap:0;padding-right:20px}.brochure-index a{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:12px;min-height:82px;border-bottom:1px solid rgba(61,73,68,.24);text-decoration:none;font-weight:700}.brochure-index a:last-child{border-bottom:0}.brochure-index span{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(255,250,243,.85);color:var(--peach-dark);font-size:.72rem;font-weight:800}.brochure-copy{position:relative;z-index:2;align-self:center;padding:20px 0 78px}.brochure-kicker{display:inline-block;margin:0 0 32px;padding:0 8px 8px 0;border-bottom:2px solid #77a58e;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(1.55rem,2.4vw,2.25rem);font-weight:600;letter-spacing:.12em;line-height:1.4}.brochure-copy h1{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(4.25rem,6.5vw,6.6rem);font-weight:500;letter-spacing:.04em;line-height:1.12}.brochure-copy h1 span{display:block;white-space:nowrap}.brochure-lead{margin:28px 0 30px;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(1.1rem,1.6vw,1.45rem);letter-spacing:.05em}.brochure-lead strong{font-size:1.38em;font-weight:600}.brochure-cta{display:inline-flex;align-items:center;justify-content:center;min-width:310px;min-height:76px;padding:15px 34px;border-radius:999px;background:#ee6843;color:#fff;text-decoration:none;font-size:1.28rem;font-weight:800;letter-spacing:.08em;box-shadow:0 12px 22px rgba(202,89,55,.2);transition:transform .2s,box-shadow .2s}.brochure-cta:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(202,89,55,.25)}.brochure-visual{position:relative;align-self:end;height:calc(100% - 8px);margin:0;overflow:hidden;border:1px solid rgba(223,126,88,.55);border-bottom:0;border-radius:50% 50% 0 0/31% 31% 0 0;background:var(--sky)}.brochure-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:74% center}.brochure-search{position:absolute;z-index:3;left:max(36px,calc((100% - 1370px)/2));right:max(36px,calc((100% - 1370px)/2));bottom:0;min-height:104px;margin:0;padding:16px 30px;border:1px solid rgba(217,237,240,.9);border-bottom:0;border-radius:44px 44px 0 0;background:#edf6f5;display:grid;grid-template-columns:220px 1fr 1fr 250px;align-items:center;gap:0;box-shadow:0 -8px 30px rgba(61,73,68,.05)}.brochure-search p{margin:0;padding-right:28px;text-align:center;font-weight:700;letter-spacing:.08em}.brochure-search label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;min-width:0;padding:0 30px;border-left:1px solid rgba(61,73,68,.25);font-weight:700}.brochure-search label span{white-space:nowrap}.brochure-search select{min-width:0;width:100%;border:0;border-bottom:1px solid rgba(61,73,68,.45);border-radius:0;background:transparent;color:var(--ink);padding:11px 4px}.brochure-search button{min-height:64px;border:0;border-radius:14px;background:#ee6843;color:#fff;font-weight:800;font-size:1.05rem;letter-spacing:.06em;cursor:pointer}.brochure-index a:focus-visible,.brochure-cta:focus-visible,.brochure-search select:focus-visible,.brochure-search button:focus-visible{outline:3px solid #1d6750;outline-offset:3px}.is-home .portal-results{padding-top:92px}

@media(max-width:1120px){.brochure-shell{grid-template-columns:180px minmax(350px,.95fr) minmax(370px,1fr);gap:24px}.brochure-copy h1{font-size:clamp(3.8rem,6.4vw,5.7rem)}.brochure-search{grid-template-columns:170px 1fr 1fr 210px}.brochure-search label{padding-inline:20px}}
@media(max-width:900px){.is-home .site-header{position:relative;background:var(--cream)}.is-home .site-header .shell{width:min(100% - 40px,1120px)}.brochure-hero{height:auto;min-height:0;max-height:none;padding-bottom:30px}.brochure-hero::before{width:100%;height:150px;border-radius:0}.brochure-shell{width:min(100% - 40px,760px);height:auto;padding:32px 0 0;grid-template-columns:1fr;gap:32px}.brochure-copy{order:1;padding:26px 0 0;text-align:center}.brochure-kicker{margin-bottom:22px}.brochure-copy h1 span{white-space:normal}.brochure-cta{min-width:min(100%,320px)}.brochure-visual{order:2;width:min(100%,560px);height:520px;margin-inline:auto;border-bottom:1px solid rgba(223,126,88,.55);border-radius:50% 50% 28px 28px/28% 28% 28px 28px}.brochure-index{order:3;grid-template-columns:repeat(3,1fr);padding:0}.brochure-index a{grid-template-columns:1fr;text-align:center;justify-items:center;gap:6px;border-right:1px solid rgba(61,73,68,.24);border-bottom:0;padding:10px;line-height:1.4}.brochure-index a:last-child{border-right:0}.brochure-search{position:relative;inset:auto;width:min(100% - 40px,760px);margin:32px auto 0;padding:24px;border:1px solid rgba(217,237,240,.9);border-radius:28px;grid-template-columns:1fr 1fr;gap:18px}.brochure-search p{grid-column:1/-1;padding:0}.brochure-search label{border-left:0;padding:0;grid-template-columns:1fr;gap:2px}.brochure-search button{grid-column:1/-1}.is-home .portal-results{padding-top:58px}}
@media(max-width:600px){.is-home .header-inner{min-height:72px}.is-home .brand{font-size:1.05rem}.brochure-shell{width:min(100% - 28px,760px)}.brochure-copy{padding-top:12px}.brochure-kicker{font-size:1.25rem}.brochure-copy h1{font-size:clamp(3rem,15vw,4.15rem);line-height:1.16}.brochure-lead{font-size:1rem}.brochure-cta{min-height:64px;font-size:1.08rem}.brochure-visual{height:420px}.brochure-index{grid-template-columns:1fr}.brochure-index a{grid-template-columns:34px 1fr;justify-items:start;text-align:left;border-right:0;border-bottom:1px solid rgba(61,73,68,.2);min-height:58px}.brochure-index a:last-child{border-bottom:0}.brochure-search{width:min(100% - 28px,760px);grid-template-columns:1fr}.brochure-search p,.brochure-search button{grid-column:auto}.brochure-search label{padding:5px 0}.brochure-search button{min-height:56px}.is-home .portal-results{padding-top:44px}}
.brochure-visual img{object-position:84% center}
@media(min-width:901px){.brochure-visual{height:calc(100% + 192px);transform:translateY(100px)}}
.brochure-search,.is-home .portal-results{background:var(--portal-surface)}
@media(min-width:901px){.is-home .portal-results>.search-layout{width:min(1370px,calc(100% - 72px))}}
@media(min-width:1201px){.is-home .portal-results .card-grid.list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:821px){.is-home .portal-results .search-layout>aside{position:sticky;top:20px;align-self:start}.is-home .portal-results .filter{position:static}}

/* Digital-pamphlet back cover */
.site-footer{--footer-fade:#fffaf3;--footer-fade-rgb:255,250,243;position:relative;isolation:isolate;min-height:760px;padding:156px 0 0;overflow:hidden;background:#dce8eb url("/assets/images/footer-urayasu-evening-v1.jpg") center 46%/cover no-repeat;color:var(--ink)}
.is-home .site-footer{--footer-fade:var(--portal-surface);--footer-fade-rgb:246,250,248}
.site-footer::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:210px;background:linear-gradient(to bottom,var(--footer-fade) 0%,var(--footer-fade) 14%,rgba(var(--footer-fade-rgb),.76) 48%,rgba(var(--footer-fade-rgb),0) 100%);pointer-events:none}
.footer-guide{position:relative;z-index:1;width:min(980px,calc(100% - 80px));min-height:490px;padding:76px 76px 30px;border:1px solid rgba(223,126,88,.28);border-bottom:0;border-radius:50% 50% 0 0/100% 100% 0 0;background:rgba(255,250,243,.94);text-align:center;box-shadow:0 -12px 42px rgba(61,73,68,.08);backdrop-filter:blur(3px)}
.footer-brand{justify-content:center;width:max-content;margin:0 auto 34px;font-size:1.22rem}
.footer-guide-copy{position:relative;padding-top:26px}
.footer-guide-copy::before{content:"";position:absolute;top:0;left:50%;width:68%;border-top:1px solid rgba(57,116,91,.48);transform:translateX(-50%)}
.footer-eyebrow{margin:0 0 12px;color:var(--mint-dark);font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:1.15rem;font-weight:600;letter-spacing:.12em}
.footer-guide h2{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(1.7rem,2.5vw,2.55rem);font-weight:500;letter-spacing:.045em;line-height:1.45}
.footer-guide-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-width:320px;min-height:66px;margin:30px 0 44px;padding:14px 30px;border-radius:999px;background:#b94f32;color:#fff;text-decoration:none;font-weight:800;letter-spacing:.08em;box-shadow:0 10px 22px rgba(167,69,43,.19);transition:transform .2s,box-shadow .2s}
.footer-guide-button:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(202,89,55,.24)}
.footer-guide-button:focus-visible,.footer-meta a:focus-visible{outline:3px solid #1d6750;outline-offset:4px}
.footer-meta{position:relative;z-index:2;margin-top:-1px;padding:30px 0 24px;background:rgba(238,247,241,.96);border-top:0;backdrop-filter:blur(5px)}
.footer-meta::before{content:"";position:absolute;z-index:0;left:-8%;top:-58px;width:116%;height:88px;border-top:1px solid rgba(57,116,91,.22);border-radius:50% 50% 0 0/100% 100% 0 0;background:rgba(238,247,241,.96);pointer-events:none}
.footer-meta>.shell{position:relative;z-index:1}
.footer-meta nav.footer-meta-primary{display:flex;justify-content:center;gap:0;margin-top:0}
.footer-meta-primary a{padding:3px clamp(28px,4vw,64px);border-right:1px solid rgba(61,73,68,.28);font-size:.95rem;letter-spacing:.035em}
.footer-meta-primary a:first-child{color:#a84e30}
.footer-meta-primary a:last-child{border-right:0}
.footer-legal{max-width:900px;margin:24px auto 0;padding-top:13px;border-top:1px solid rgba(61,73,68,.22)}
.footer-meta nav.footer-meta-legal{display:flex;justify-content:center;gap:0;margin-top:0}
.footer-meta-legal a{padding:0 14px;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.04em;text-decoration:none;line-height:1.5}
.footer-meta-legal a+ a{border-left:1px solid rgba(61,73,68,.2)}
.footer-note{max-width:900px;margin:7px auto 0;padding:0;color:var(--muted);font-size:10px;line-height:1.6;text-align:center}
.footer-copyright{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5;text-align:center}
.brochure-index-icon img{display:block;width:20px;height:20px}

@media(max-width:900px){.site-footer{min-height:0;padding-top:130px;background-position:center top}.site-footer::before{height:180px}.footer-guide{width:min(100% - 40px,760px);min-height:390px;padding:68px 44px 28px;border-radius:50% 50% 0 0/97% 97% 0 0}.footer-meta::before{left:-12%;width:124%;top:-46px;height:70px}.footer-meta nav.footer-meta-primary{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px}.footer-meta-primary a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border-right:0;text-align:center}.footer-meta-primary a:first-child{border-right:0}}

@media(max-width:600px){.site-footer{padding-top:106px;background-position:58% top}.site-footer::before{height:148px}.footer-guide{width:calc(100% - 28px);min-height:0;padding:58px 24px 22px;border-radius:50% 50% 0 0/42% 42% 0 0}.footer-brand{margin-bottom:24px;font-size:1.05rem}.footer-guide-copy{padding-top:22px}.footer-guide-copy::before{width:100%}.footer-eyebrow{font-size:.98rem}.footer-guide h2{font-size:clamp(1.45rem,7vw,1.85rem);line-height:1.52}.footer-guide-button{min-width:0;width:100%;min-height:58px;margin:24px 0 32px;padding-inline:18px}.footer-meta{padding:24px 0 18px}.footer-meta::before{left:-18%;width:136%;top:-36px;height:58px}.footer-meta nav.footer-meta-primary{gap:4px 10px;margin-top:0}.footer-meta-primary a{min-height:44px;font-size:.84rem;padding:8px 10px}.footer-legal{margin-top:18px;padding-top:11px}.footer-meta-legal a{display:inline-flex;align-items:center;min-height:32px;padding-inline:8px;font-size:10px}.footer-note{margin-top:2px;font-size:10px;line-height:1.6;text-align:center}.footer-copyright{margin-top:4px;font-size:10px}}

/* Soft surfaces: reserve rules for form affordances, legal separation, timelines, and focus states. */
.site-header,.choice-grid>a,.facility-card,.filter,.panel,.contact-card,.form-note,.contact-form,.success,.callout,.error-summary,.brochure-index a,.brochure-visual,.brochure-search,.brochure-search label,.footer-guide,.footer-meta::before,.footer-meta-primary a,.footer-meta-primary a:first-child,.footer-meta-legal a+ a{border:0}
.choice-grid>a,.facility-card,.filter,.panel,.contact-card,.contact-form,.success{box-shadow:0 14px 34px rgba(61,73,68,.055)}
.card-facts div,.facts div{border-top:0}
.card-facts div+div,.facts div+div{margin-top:4px}
.button.secondary{border:0;background:#fff0e7}
.form-note,.callout,.error-summary{box-shadow:none}
.footer-guide-copy::before{content:none}
.footer-note{border-top:0}

/* Business listing request: illustrated pamphlet */
.is-contact{background:#fffaf3}
.is-contact .site-header{position:absolute;inset:0 0 auto;background:transparent}
.is-contact .site-header nav a{color:#4d5954}
.is-contact .site-header nav a[href="/contact/"]{color:#c85837}
.contact-hero{position:relative;overflow:hidden;background:#fffaf3}
.contact-hero-shell{width:min(1370px,calc(100% - 72px));min-height:760px;margin-inline:auto;padding:116px 0 48px;display:grid;grid-template-columns:minmax(380px,.78fr) minmax(560px,1.22fr);align-items:center}
.contact-hero-copy{position:relative;z-index:2;padding:48px 0 54px 28px}
.contact-hero-copy .eyebrow{margin-bottom:22px;color:#d45f3d;font-size:.9rem;letter-spacing:.13em}
.contact-hero-copy h1{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(4rem,5.8vw,6rem);font-weight:500;letter-spacing:.045em;line-height:1.2}
.contact-hero-copy>p:not(.eyebrow){max-width:430px;margin:28px 0 0;color:#53605b;font-size:1.04rem;letter-spacing:.025em;line-height:1.95}
.contact-hero-copy>a{display:inline-flex;align-items:center;gap:14px;margin-top:30px;color:#39745b;font-size:.9rem;font-weight:800;text-decoration:none}
.contact-hero-copy>a span{font-size:1.2em}
.contact-hero-art{align-self:stretch;min-height:590px;margin:0;overflow:hidden;border-radius:52% 12px 52% 42%/48% 12px 44% 52%;background:#edf6f5}
.contact-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:73% center}
.business-contact-section{background:var(--cream);scroll-margin-top:16px}
.contact-layout{width:min(1180px,calc(100% - 72px));display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:50px;align-items:start;padding-top:88px;padding-bottom:110px}
.contact-form-column{min-width:0}
.business-rules{position:sticky;top:24px;padding:42px 34px 44px;border-radius:44px 44px 76px 44px;background:rgba(237,246,240,.96)}
.contact-section-kicker{margin:0 0 12px;color:#c85837;font-size:.76rem;font-weight:800;letter-spacing:.15em}
.business-rules h2{margin:0 0 26px;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(1.75rem,2.4vw,2.2rem);font-weight:500;letter-spacing:.035em;line-height:1.45}
.business-rules ul{margin:0;padding:0;list-style:none;counter-reset:contact-rule}
.business-rules li{position:relative;padding-left:30px;color:#53605b;font-size:.87rem;line-height:1.8;counter-increment:contact-rule}
.business-rules li::before{content:counter(contact-rule,decimal-leading-zero);position:absolute;left:0;top:.1em;color:#68a6a6;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:.75rem;font-weight:700;letter-spacing:.04em}
.business-rules li+li{margin-top:15px}
.business-contact-form{padding:46px 52px 52px;border-radius:46px;background:rgba(255,255,255,.97);box-shadow:0 18px 44px rgba(61,73,68,.07)}
.contact-form-section{min-width:0;margin:0;padding:0;border:0}
.contact-form-section+ .contact-form-section{margin-top:42px;padding-top:38px;border-top:1px solid rgba(57,116,91,.16)}
.contact-form-section legend{display:flex;align-items:center;gap:14px;width:100%;margin:0 0 24px;padding:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:1.55rem;font-weight:500;letter-spacing:.04em}
.contact-form-section legend span{display:grid;flex:0 0 48px;width:48px;height:48px;place-items:center;border-radius:50%;background:#e96846;color:#fff;font-family:inherit;font-size:1rem;line-height:1}
.contact-form-section:nth-of-type(2) legend span{background:#68a6a6}
.contact-form-section:nth-of-type(3) legend span{background:#d7835e}
.contact-form-section>label{display:block;margin:17px 0;font-weight:700}
.contact-field-grid,.contact-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contact-field-grid{margin:17px 0}
.contact-field-grid label,.contact-details label{display:block;margin:0;font-weight:700}
.business-contact-form input:not([type=checkbox]),.business-contact-form select,.business-contact-form textarea{border-color:#d9d4cb;border-radius:16px;background:#fffdfa;padding:13px 14px;transition:border-color .2s,box-shadow .2s,background .2s}
.business-contact-form input:not([type=checkbox]):focus,.business-contact-form select:focus,.business-contact-form textarea:focus{outline:0;border-color:#68a68a;background:#fff;box-shadow:0 0 0 3px rgba(104,166,138,.17)}
.contact-form label>input+small,.contact-form label>select+small{display:block;margin-top:7px;line-height:1.65}
.contact-details{margin:26px 0;border:0;border-radius:28px;background:#eef7f2;overflow:hidden}
.contact-details summary{padding:21px 24px;color:var(--mint-dark);font-weight:800;cursor:pointer;list-style-position:inside}
.contact-details summary:hover{background:#e5f1ea}
.contact-details summary:focus-visible{outline:3px solid #1d6750;outline-offset:-4px}
.contact-details[open] summary{background:#e5f1ea}
.contact-details-body{padding:6px 24px 27px}
.contact-details-body>p{margin:8px 0 20px;color:var(--muted);font-size:.86rem;line-height:1.75}
.contact-detail-grid textarea{min-height:94px}
.contact-detail-grid label:nth-child(4){grid-column:1/-1}
.contact-form-confirm{margin:42px -16px -16px;padding:28px 28px 16px;border-radius:30px;background:#fff7f1}
.business-contact-form .consent{margin:15px 0;font-size:.92rem}
.business-contact-form button{display:flex;align-items:center;justify-content:center;gap:18px;min-height:64px;margin-top:26px;border-radius:999px;background:#b94f32;box-shadow:0 12px 22px rgba(174,74,43,.17);transition:transform .2s,box-shadow .2s,background .2s}
.business-contact-form button:hover{transform:translateY(-2px);background:#a8442b;box-shadow:0 16px 28px rgba(174,74,43,.22)}
.business-contact-form button:focus-visible,.contact-hero-copy>a:focus-visible{outline:3px solid #1d6750;outline-offset:4px}
.contact-success{grid-column:1/-1;max-width:760px;margin:0 auto;padding:64px 70px;border-radius:48px;text-align:center}
.contact-success h2{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:2.2rem;font-weight:500}
.contact-success p:not(.contact-section-kicker){margin:20px 0 28px;color:var(--muted)}
.contact-success .button{border-radius:999px}
@media(max-width:900px){.contact-hero-shell{width:min(100% - 40px,760px);min-height:0;padding:108px 0 54px;grid-template-columns:1fr;gap:20px}.contact-hero-copy{padding:42px 16px 18px;text-align:center}.contact-hero-copy h1 br{display:none}.contact-hero-copy>p:not(.eyebrow){margin-inline:auto}.contact-hero-art{width:min(100%,680px);min-height:0;aspect-ratio:16/11;margin-inline:auto;border-radius:50% 50% 28px 28px/38% 38% 28px 28px}.contact-layout{width:min(100% - 40px,760px);grid-template-columns:1fr;gap:28px;padding-top:64px;padding-bottom:90px}.business-rules{position:static;border-radius:42px;padding:38px 40px}.business-rules h2 br{display:none}}
@media(max-width:600px){.is-contact .header-inner{justify-content:center}.is-contact .brand{margin-inline:auto}.contact-hero-shell{width:calc(100% - 28px);padding-top:92px}.contact-hero-copy{padding:32px 4px 10px}.contact-hero-copy .eyebrow{margin-bottom:16px;font-size:.76rem;letter-spacing:.1em}.contact-hero-copy h1{font-size:clamp(2.65rem,13vw,3.5rem);line-height:1.28}.contact-hero-copy>p:not(.eyebrow){margin-top:20px;font-size:.92rem}.contact-hero-copy>a{margin-top:22px}.contact-hero-art{aspect-ratio:4/3;border-radius:50% 50% 24px 24px/31% 31% 24px 24px}.contact-hero-art img{object-position:77% center}.contact-layout{width:calc(100% - 28px);padding-top:42px;padding-bottom:70px}.business-rules{padding:30px 24px 34px;border-radius:34px 34px 52px 34px}.business-rules h2{font-size:1.65rem}.business-rules li{font-size:.82rem}.business-contact-form{padding:30px 20px 28px;border-radius:34px}.contact-form-section+ .contact-form-section{margin-top:34px;padding-top:32px}.contact-form-section legend{gap:11px;margin-bottom:20px;font-size:1.35rem}.contact-form-section legend span{width:42px;height:42px;flex-basis:42px;font-size:.88rem}.contact-field-grid,.contact-detail-grid{grid-template-columns:1fr}.contact-detail-grid label:nth-child(4){grid-column:auto}.contact-details summary{padding:18px 17px}.contact-details-body{padding:4px 17px 22px}.contact-form-confirm{margin:34px -5px -8px;padding:24px 16px 12px;border-radius:26px}.business-contact-form button{min-height:58px}.contact-success{padding:46px 24px;border-radius:34px}.contact-success h2{font-size:1.8rem}}

/* Selected brand lockup */
.brand-logo{display:block;width:190px;max-width:100%;height:auto}
.is-home .site-header .brand-logo{width:230px}
.footer-brand .brand-logo{width:240px}
@media(max-width:600px){.brand-logo{width:174px}.is-home .site-header .brand-logo{width:190px}.footer-brand .brand-logo{width:210px}}

/* Selected facility card: sloped pamphlet cap */
.card-grid.list{align-items:stretch}
.facility-card{--card-cap:#f4c5ad;position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;padding:0;border-radius:38px 38px 34px 34px;background:var(--card-cap);box-shadow:none;filter:drop-shadow(0 16px 18px rgba(61,73,68,.07));transition:transform .2s ease,filter .2s ease}
.facility-card:nth-child(3n+2){--card-cap:#cfe7d5}
.facility-card:nth-child(3n){--card-cap:#d9edf0}
.facility-card:hover{transform:translateY(-3px);filter:drop-shadow(0 20px 21px rgba(61,73,68,.1))}
.facility-card:focus-within{filter:drop-shadow(0 18px 20px rgba(61,73,68,.1))}
.facility-card h2 a:focus-visible,.facility-card .text-link:focus-visible{outline:3px solid #1d6750;outline-offset:4px;border-radius:4px}
.card-accent{position:relative;height:70px;flex:0 0 70px;background:transparent}
.card-accent::before{content:"";position:absolute;z-index:0;inset:-14px -24px -12px -14px;border-radius:52px 52px 0 0;background:var(--card-cap);transform:rotate(2.1deg);transform-origin:left top}
.motif-place{--facility-landmark:url("/assets/images/facility-card-icon-place-v2.png")}
.motif-water{--facility-landmark:url("/assets/images/facility-card-icon-water-v2.png")}
.motif-tree{--facility-landmark:url("/assets/images/facility-card-icon-tree-v2.png")}
.motif-house{--facility-landmark:url("/assets/images/facility-card-icon-house-v2.png")}
.card-landmark{position:absolute;z-index:3;top:16px;left:18px;width:88px;height:88px;overflow:hidden;border-radius:50%;background-color:#fff;background-image:var(--facility-landmark);background-position:center;background-size:100% 100%;background-repeat:no-repeat;box-shadow:0 10px 24px rgba(61,73,68,.12)}
.card-body{position:relative;z-index:1;display:flex;min-width:0;flex:1;flex-direction:column;padding:34px 24px 26px;border-radius:0 0 34px 34px;background:#fff}
.card-body::before{content:"";position:absolute;z-index:-1;top:-20px;left:-16%;width:138%;height:38px;border-radius:58% 42% 0 0/100% 100% 0 0;background:#fff}
.facility-card .card-top{min-height:30px;gap:8px;padding-left:104px;align-items:flex-end;transform:translateY(-100%)}
.facility-card .card-top .area-chip,.facility-card .card-top .status{flex:0 0 auto;white-space:nowrap}
.facility-card h2{margin:36px 0 6px;font-size:1.25rem;line-height:1.52;letter-spacing:.01em}
.facility-card h2 a{word-break:keep-all;overflow-wrap:anywhere}
.facility-card .operator{min-height:2.9em;line-height:1.45}
.facility-card .card-facts{margin:24px 0 22px}
.facility-card .card-facts div{grid-template-columns:68px minmax(0,1fr);gap:14px;padding:7px 0}
.facility-card .card-facts div+div{margin-top:5px}
.facility-card .card-facts dt{color:var(--mint-dark)}
.facility-card .text-link{width:max-content;max-width:100%;margin-top:auto;color:#c8613f;text-decoration-thickness:1px;text-underline-offset:5px}
@media(min-width:1201px) and (max-width:1300px){.facility-card .card-top{width:calc(100% + 14px);padding-left:90px;transform:translateY(calc(-100% - 18px))}.card-body{padding-top:52px}.facility-card h2{margin-top:24px}}
@media(max-width:600px){.card-accent{height:66px;flex-basis:66px}.card-accent::before{transform:rotate(2deg)}.card-landmark{top:15px;left:18px;width:84px;height:84px}.card-body{padding:33px 22px 24px}.facility-card .card-top{width:100%;padding-left:96px;transform:translateY(-100%)}.facility-card h2{margin-top:34px;font-size:1.2rem}.facility-card .operator{min-height:0}.facility-card .card-facts{margin:22px 0 20px}}

/* Facility detail: extended pamphlet card */
.tone-coral{--detail-tone:#f4c5ad;--detail-soft:#fff1ea}
.tone-mint{--detail-tone:#cfe7d5;--detail-soft:#edf7f0}
.tone-sky{--detail-tone:#d9edf0;--detail-soft:#eef7f8}
.facility-detail-hero{padding:34px 0 64px;background:var(--cream)}
.facility-detail-shell{width:min(1180px,calc(100% - 72px));margin-inline:auto}
.detail-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:24px;color:var(--muted);font-size:.9rem;font-weight:700;text-decoration:none;text-underline-offset:4px}
.detail-back:hover{text-decoration:underline}
.facility-cover{position:relative;overflow:hidden;border-radius:38px 38px 32px 32px;background:var(--detail-tone);box-shadow:none;filter:drop-shadow(0 18px 24px rgba(61,73,68,.075))}
.facility-cover-accent{position:relative;height:88px;background:transparent}
.facility-cover-accent::before{content:"";position:absolute;inset:-14px -28px -14px -14px;border-radius:52px 52px 0 0;background:var(--detail-tone);transform:rotate(1.8deg);transform-origin:left top}
.facility-cover-landmark{position:absolute;z-index:3;top:22px;left:48px;width:112px;height:112px;overflow:hidden;border-radius:50%;background-color:#fff;background-image:var(--facility-landmark);background-position:center;background-size:100% 100%;background-repeat:no-repeat;box-shadow:0 12px 28px rgba(61,73,68,.13)}
.facility-cover-body{position:relative;z-index:1;padding:66px 56px 44px;border-radius:0 0 32px 32px;background:#fff}
.facility-cover-body::before{content:"";position:absolute;z-index:-1;top:-24px;left:-13%;width:132%;height:46px;border-radius:57% 43% 0 0/100% 100% 0 0;background:#fff}
.facility-cover-tags{position:absolute;z-index:4;top:14.75px;right:56px;display:flex;align-items:center;gap:10px;margin:0}
.facility-cover-tags .area-chip,.facility-cover-tags .status{white-space:nowrap}
.facility-cover h1{max-width:100%;margin:0;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:750;letter-spacing:.015em;line-height:1.3;word-break:keep-all;overflow-wrap:anywhere}
.facility-cover-description{max-width:900px;margin:22px 0 0;color:#4b5853;font-size:1.02rem;line-height:1.95}
.facility-cover-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:32px 0 0}
.facility-cover-summary div{display:block;padding:16px 18px;border-radius:18px;background:var(--detail-soft)}
.facility-cover-summary dt{margin-bottom:3px;color:var(--mint-dark);font-size:.73rem;letter-spacing:.06em}
.facility-cover-summary dd{font-weight:750}
.facility-cover-summary .facility-cover-address{grid-column:1/-1}
.facility-cover-address dd{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}
.facility-map-link{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:5px 11px;border-radius:999px;background:#fff0e8;color:#9b472f;font-size:.72rem;font-weight:800;text-decoration:none;box-shadow:none;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.facility-map-link:hover{background:#f7d4c4;color:#783721;text-decoration:none;transform:translateY(-1px)}
.facility-map-link:focus-visible{outline:3px solid #1d6750;outline-offset:3px}
.facility-detail-content{padding:0 0 34px;background:var(--cream)}
.facility-detail-content .detail-grid{width:min(1180px,calc(100% - 72px));grid-template-columns:minmax(0,1fr) 330px;gap:32px}
.detail-main{min-width:0}
.detail-section-card{margin-bottom:24px;padding:38px 40px;border-radius:28px;background:#fff;box-shadow:0 16px 38px rgba(61,73,68,.06)}
.detail-section-label{margin:0 0 7px;color:var(--mint-dark);font-size:.76rem;font-weight:800;letter-spacing:.1em}
.detail-section-card h2,.facility-action-card h2,.other-facilities-heading h2{margin:0;font-size:1.7rem;line-height:1.45}
.detail-summary{margin:18px 0 26px;font-size:1.08rem}
.facility-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}
.detail-section-card h2+.facility-info-grid{margin-top:22px}
.facility-info-grid div{display:block;padding:17px 18px;border-radius:18px;background:var(--portal-surface)}
.facility-info-grid dt{margin:0 0 4px;color:var(--mint-dark);font-size:.76rem;letter-spacing:.04em}
.facility-info-grid dd{font-size:.94rem;line-height:1.65}
.facility-address{margin:20px 0 22px;padding:22px 24px;border-radius:20px;background:var(--detail-soft)}
.facility-address p{margin:0}
.facility-address .facility-postal{margin-bottom:2px;color:var(--muted);font-size:.86rem}
.detail-action{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:12px 22px;border-radius:999px;font-weight:800;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.detail-action:hover{transform:translateY(-2px)}
.detail-action-primary{width:100%;margin-top:8px;background:#b94f32;color:#fff;box-shadow:0 10px 22px rgba(167,69,43,.17)}
.detail-action-secondary{background:var(--detail-soft);color:#a84e30}
.detail-action:focus-visible,.detail-back:focus-visible,.source-list a:focus-visible,.facility-correction-link:focus-visible{outline:3px solid #1d6750;outline-offset:4px}
.source-list{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}
.source-list li{padding:17px 18px;border-radius:18px;background:var(--portal-surface)}
.source-list a{font-weight:750;text-underline-offset:4px}
.source-list small{display:block;margin-top:4px;color:var(--muted)}
.detail-note{margin:16px 4px 0;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.76rem;line-height:1.7}
.facility-action-card{position:sticky;top:24px;padding:30px;border-radius:28px;background:var(--detail-soft);box-shadow:none}
.facility-action-card>p:not(.detail-section-label):not(.facility-action-date){font-size:.93rem}
.facility-action-status{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 0;padding:15px 16px;border-radius:17px;background:#fff}
.facility-action-status span{color:var(--muted);font-size:.78rem;font-weight:700}
.facility-action-status strong{color:var(--mint-dark)}
.facility-action-date{margin:7px 3px 0;color:var(--muted);font-size:.75rem}
.facility-correction-link{display:block;margin-top:18px;text-align:center;color:var(--muted);font-size:.82rem;text-underline-offset:4px}
.other-facilities{padding:52px 0 100px;background:var(--cream)}
.other-facilities-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}
.other-facilities-heading .text-link{font-size:.9rem}
.detail-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

@media(max-width:900px){.facility-detail-shell,.facility-detail-content .detail-grid{width:min(100% - 40px,760px)}.facility-cover-summary{grid-template-columns:1fr 1fr}.facility-detail-content .detail-grid{grid-template-columns:1fr}.facility-action-card{position:static}.detail-related-grid{grid-template-columns:1fr 1fr}.detail-related-grid .facility-card:last-child{display:none}}
@media(max-width:600px){.facility-detail-hero{padding:22px 0 44px}.facility-detail-shell,.facility-detail-content .detail-grid{width:calc(100% - 28px)}.detail-back{margin-bottom:18px}.facility-cover{border-radius:34px 34px 28px 28px}.facility-cover-accent{height:66px}.facility-cover-accent::before{transform:rotate(2deg)}.facility-cover-landmark{top:15px;left:18px;width:84px;height:84px}.facility-cover-body{padding:44px 22px 28px;border-radius:0 0 28px 28px}.facility-cover-body::before{top:-19px;left:-20%;width:146%;height:36px}.facility-cover-tags{top:1.75px;right:22px;gap:8px}.facility-cover h1{font-size:clamp(2rem,10vw,2.75rem)}.facility-cover-description{margin-top:18px;font-size:.96rem;line-height:1.85}.facility-cover-summary{grid-template-columns:1fr 1fr;gap:8px;margin-top:24px}.facility-cover-summary div{padding:13px 14px}.facility-cover-summary dd{font-size:.9rem}.facility-cover-summary .facility-cover-address{grid-column:1/-1}.detail-section-card{padding:27px 22px;border-radius:24px}.detail-section-card h2,.facility-action-card h2,.other-facilities-heading h2{font-size:1.45rem}.facility-info-grid{grid-template-columns:1fr}.facility-address{padding:18px}.facility-action-card{padding:26px 22px}.other-facilities{padding:38px 0 76px}.other-facilities-heading{display:block}.other-facilities-heading .text-link{display:inline-block;margin-top:10px}.detail-related-grid{grid-template-columns:1fr}.detail-related-grid .facility-card:last-child{display:flex}}

/* Mobile home cover: transparent centered navigation over a curved mint field */
@media(max-width:600px){.is-home .site-header{position:absolute;inset:0 0 auto;background:transparent}.is-home .header-inner{justify-content:center}.is-home .brand{margin-inline:auto}.brochure-shell{padding-top:104px}.brochure-hero::before{inset:0 auto auto 0;width:100%;height:176px;border-radius:0 0 50% 50%/0 0 28px 28px}}

/* Mobile search flow: use the full filter once instead of repeating the quick form. */
.brochure-cta-mobile{display:none}
#filter-form,#filter-area,#filter-pickup{scroll-margin-top:24px}
@media(max-width:600px){.brochure-cta-desktop,.brochure-search{display:none}.brochure-cta-mobile{display:inline-flex}.brochure-hero{padding-bottom:24px}.is-home .portal-results{padding-top:36px}}

/* Guide: Urayasu illustrated journey pamphlet */
.is-guide{background:#fffaf3}
.is-guide .site-header{position:absolute;inset:0 0 auto;background:transparent}
.is-guide .site-header nav a[href="/guide/"]{color:#c85837}
.guide-hero{position:relative;overflow:hidden;background:#fffaf3}
.guide-hero-shell{width:min(1370px,calc(100% - 72px));min-height:760px;margin-inline:auto;padding:116px 0 48px;display:grid;grid-template-columns:minmax(380px,.78fr) minmax(560px,1.22fr);align-items:center}
.guide-hero-copy{position:relative;z-index:2;padding:48px 0 54px 28px}
.guide-eyebrow{margin:0 0 22px;color:#d45f3d;font-size:.9rem;font-weight:800;letter-spacing:.13em}
.guide-hero-copy h1{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(3.5rem,5.2vw,5.5rem);font-weight:500;letter-spacing:.04em;line-height:1.26}
.guide-hero-copy h1 span{display:block;white-space:nowrap}
.guide-hero-copy>p:not(.guide-eyebrow){max-width:390px;margin:28px 0 0;color:#53605b;font-size:1.08rem;letter-spacing:.035em}
.guide-start-link{display:inline-flex;align-items:center;gap:14px;margin-top:30px;color:#39745b;font-size:.9rem;font-weight:800;text-decoration:none}
.guide-start-link span{font-size:1.2em}
.guide-hero-art{align-self:stretch;min-height:590px;margin:0;overflow:hidden;border-radius:52% 12px 52% 42%/48% 12px 44% 52%;background:#edf6f5}
.guide-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:73% center}
.guide-journey{position:relative;isolation:isolate;overflow:hidden;background:#fffaf3;scroll-margin-top:16px}
.guide-journey::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.78;background-color:#fffaf3;background-image:linear-gradient(to bottom,#fffaf3 0,rgba(255,250,243,.96) 54px,rgba(255,250,243,.68) 142px,rgba(255,250,243,0) 260px),url("/assets/images/guide/guide-route-bg-v1.jpg");background-position:center top,center top;background-size:100% 260px,cover;background-repeat:no-repeat,no-repeat;pointer-events:none}
.guide-route-shell{width:min(1180px,calc(100% - 72px));margin-inline:auto;padding:30px 0 110px}
.guide-stop{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:62px;align-items:center;min-height:550px;padding:54px 28px}
.guide-stop-2,.guide-stop-4{grid-template-columns:minmax(330px,.8fr) minmax(0,1.2fr)}
.guide-stop-2 .guide-stop-visual,.guide-stop-4 .guide-stop-visual{grid-column:2}
.guide-stop-2 .guide-stop-copy,.guide-stop-4 .guide-stop-copy{grid-column:1;grid-row:1}
.guide-stop-visual{margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:48% 52% 43% 57%/46% 42% 58% 54%;background:#f4eee4;filter:drop-shadow(0 18px 22px rgba(61,73,68,.075))}
.guide-stop-2 .guide-stop-visual{border-radius:42% 58% 52% 48%/55% 44% 56% 45%}
.guide-stop-3 .guide-stop-visual{border-radius:56% 44% 47% 53%/43% 55% 45% 57%}
.guide-stop-4 .guide-stop-visual{border-radius:46% 54% 57% 43%/55% 46% 54% 45%}
.guide-stop-visual img{display:block;width:100%;height:100%;object-fit:cover}
.guide-stop-copy{max-width:430px;padding:44px 42px;border-radius:46% 54% 48% 52%/55% 47% 53% 45%;background:rgba(255,250,243,.94)}
.guide-stop-number{display:grid;width:76px;height:76px;margin:0 0 22px;place-items:center;border-radius:50%;background:#e96846;color:#fff;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:1.7rem;line-height:1}
.guide-stop-2 .guide-stop-number,.guide-stop-4 .guide-stop-number{background:#68a6a6}
.guide-stop h2{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(1.95rem,2.55vw,2.35rem);font-weight:500;letter-spacing:.035em;line-height:1.35;word-break:keep-all;overflow-wrap:anywhere}
.guide-stop-copy>p:last-of-type{margin:20px 0 0;color:#4f5d57;font-size:1rem;line-height:1.95}
.guide-stop-copy>a{display:inline-flex;align-items:center;gap:12px;min-height:52px;margin-top:24px;padding:11px 24px;border-radius:999px;background:#e96543;color:#fff;font-size:.88rem;font-weight:800;text-decoration:none;box-shadow:0 10px 20px rgba(196,82,50,.16)}
.guide-checklist{margin:44px 28px 0;padding:42px 48px;border-radius:48px;background:rgba(235,246,242,.94)}
.guide-checklist h2{margin:0 0 28px;text-align:center;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:1.8rem;font-weight:500;letter-spacing:.08em}
.guide-checklist ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.guide-checklist li{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:24px;background:#fffaf3}
.guide-checklist li>img{flex:0 0 auto;width:42px;height:42px;padding:9px;border-radius:50%;background:#fff}
.guide-checklist strong,.guide-checklist span{display:block}
.guide-checklist strong{font-size:.95rem}
.guide-checklist span{margin-top:2px;color:#6d7772;font-size:.75rem;line-height:1.55}
.guide-actions{display:grid;justify-items:center;margin-top:48px;text-align:center}
.guide-primary-action{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-width:420px;min-height:68px;padding:14px 34px;border-radius:999px;background:#e96543;color:#fff;font-size:1.04rem;font-weight:800;letter-spacing:.04em;text-decoration:none;box-shadow:0 12px 24px rgba(196,82,50,.18)}
.guide-resources{position:relative;background:var(--cream);padding:80px 0 120px}
.guide-resources-shell{width:min(1180px,calc(100% - 72px));margin-inline:auto}
.guide-resources-header{display:grid;grid-template-columns:1fr;gap:22px;margin-bottom:42px}
.guide-resources-header>div{position:relative;padding-left:28px}
.guide-resources-header>div::before{content:"";position:absolute;left:0;top:5px;width:7px;height:84%;border-radius:999px;background:#e96846}
.guide-resources-eyebrow{margin:0 0 12px;color:#c85837;font-size:.78rem;font-weight:800;letter-spacing:.15em}
.guide-resources-header h2{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(2.25rem,3.5vw,3.35rem);font-weight:500;letter-spacing:.045em;line-height:1.35}
.guide-resources-header h2 span{display:block;white-space:nowrap}
.guide-resources-header>p{max-width:680px;margin:0;color:#6d7772;font-size:.88rem;line-height:1.9}
.guide-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.guide-resource-link{position:relative;display:flex;min-height:218px;flex-direction:column;padding:30px 70px 30px 32px;overflow:hidden;border-radius:34px 34px 58px 34px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 14px 34px rgba(61,73,68,.055);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.guide-resource-link:nth-child(2),.guide-resource-link:nth-child(3){border-radius:34px 58px 34px 34px}
.guide-resource-link:hover{transform:translateY(-3px);background:#fffdf9;box-shadow:0 18px 38px rgba(61,73,68,.085)}
.guide-resource-meta{display:flex;align-items:center;gap:10px;color:#39745b;font-size:.72rem;font-weight:800;letter-spacing:.1em}
.guide-resource-meta>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#edf6f0;color:#39745b;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:.72rem;letter-spacing:0}
.guide-resource-link h3{margin:22px 0 10px;font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:1.42rem;font-weight:600;letter-spacing:.025em;line-height:1.5}
.guide-resource-link p{margin:0;color:#6d7772;font-size:.82rem;line-height:1.75}
.guide-resource-arrow{position:absolute;right:28px;bottom:28px;display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#fce9df;color:#b94f32;font-size:1.1rem;font-weight:800}
.guide-resource-link:focus-visible{outline:3px solid #1d6750;outline-offset:4px}
.guide-start-link:focus-visible,.guide-stop-copy>a:focus-visible,.guide-primary-action:focus-visible{outline:3px solid #1d6750;outline-offset:4px}

@media(max-width:900px){
  .guide-hero-shell{width:min(100% - 40px,760px);min-height:0;padding:108px 0 54px;grid-template-columns:1fr;gap:20px}
  .guide-hero-copy{padding:42px 16px 18px;text-align:center}
  .guide-hero-copy h1{font-size:clamp(3rem,9vw,4.7rem)}
  .guide-hero-copy h1 span{white-space:normal}
  .guide-hero-copy>p:not(.guide-eyebrow){margin-inline:auto}
  .guide-hero-art{width:min(100%,680px);min-height:0;aspect-ratio:16/11;margin-inline:auto;border-radius:50% 50% 28px 28px/38% 38% 28px 28px}
  .guide-route-shell{width:min(100% - 40px,760px);padding-bottom:90px}
  .guide-stop,.guide-stop-2,.guide-stop-4{grid-template-columns:1fr;gap:26px;min-height:0;padding:58px 12px}
  .guide-stop-visual,.guide-stop-2 .guide-stop-visual,.guide-stop-4 .guide-stop-visual{grid-column:1;grid-row:1}
  .guide-stop-copy,.guide-stop-2 .guide-stop-copy,.guide-stop-4 .guide-stop-copy{grid-column:1;grid-row:2;justify-self:center;max-width:600px;text-align:center}
  .guide-stop-number{margin-inline:auto}
  .guide-checklist{margin-inline:12px;padding:38px 30px}
  .guide-checklist ul{grid-template-columns:1fr}
  .guide-resources-shell{width:min(100% - 40px,760px)}
  .guide-resources-header{gap:20px}
}

@media(max-width:600px){
  .is-guide .header-inner{justify-content:center}
  .is-guide .brand{margin-inline:auto}
  .guide-hero-shell{width:calc(100% - 28px);padding-top:92px}
  .guide-hero-copy{padding:32px 4px 10px}
  .guide-eyebrow{margin-bottom:16px;font-size:.76rem;letter-spacing:.1em}
  .guide-hero-copy h1{font-size:clamp(2.35rem,12vw,3.35rem);line-height:1.3}
  .guide-hero-copy>p:not(.guide-eyebrow){margin-top:20px;font-size:.94rem}
  .guide-start-link{margin-top:22px}
  .guide-hero-art{aspect-ratio:4/3;border-radius:50% 50% 24px 24px/31% 31% 24px 24px}
  .guide-hero-art img{object-position:77% center}
  .guide-journey::before{opacity:.55;background-size:100% 180px,auto 100%}
  .guide-route-shell{width:calc(100% - 28px);padding-top:14px;padding-bottom:70px}
  .guide-stop,.guide-stop-2,.guide-stop-4{padding:44px 0;gap:18px}
  .guide-stop-visual{filter:drop-shadow(0 10px 14px rgba(61,73,68,.065))}
  .guide-stop-copy{width:calc(100% - 12px);padding:28px 22px;border-radius:34px;background:rgba(255,250,243,.96)}
  .guide-stop-number{width:58px;height:58px;margin-bottom:16px;font-size:1.25rem}
  .guide-stop h2{font-size:1.85rem}
  .guide-stop-copy>p:last-of-type{margin-top:14px;font-size:.92rem;line-height:1.85}
  .guide-stop-copy>a{width:100%;justify-content:center;margin-top:20px}
  .guide-checklist{margin:26px 0 0;padding:30px 18px;border-radius:32px}
  .guide-checklist h2{font-size:1.5rem}
  .guide-checklist li{padding:15px 16px}
  .guide-primary-action{width:100%;min-width:0;min-height:60px;padding-inline:20px;font-size:.95rem}
  .guide-resources{padding:62px 0 86px}
  .guide-resources-shell{width:calc(100% - 28px)}
  .guide-resources-header{margin-bottom:30px}
  .guide-resources-header>div{padding-left:20px}
  .guide-resources-header>div::before{width:5px}
  .guide-resources-header h2{font-size:clamp(1.9rem,9vw,2.2rem)}
  .guide-resources-header>p{font-size:.8rem}
  .guide-resource-grid{grid-template-columns:1fr;gap:14px}
  .guide-resource-link,.guide-resource-link:nth-child(2),.guide-resource-link:nth-child(3){min-height:0;padding:25px 62px 25px 24px;border-radius:28px 28px 46px 28px}
  .guide-resource-link h3{margin-top:17px;font-size:1.24rem}
  .guide-resource-arrow{right:20px;bottom:22px;width:34px;height:34px}
}
