@charset "UTF-8";
/* Standalone styles for facility/detail13.php. No shared CSS or web fonts required. */
:root{--brand:#a03e64;--brand-dark:#7e2e4d;--pale:#efe4e9;--soft:#faf6f8;--ink:#292529;--muted:#645b60;--line:#dfd5da;--white:#fff;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:24px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;color:var(--ink);background:var(--white);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:1rem;line-height:1.85;overflow-wrap:anywhere}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
h1,h2,h3{line-height:1.5;font-weight:600}
ul,ol{padding:0}
img{display:block;max-width:100%;height:auto}
picture{display:block;min-width:0}
a{color:var(--brand-dark);text-underline-offset:.22em}
a:hover{color:var(--brand)}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,summary:focus-visible{outline:3px solid #185b96;outline-offset:5px}
[hidden]{display:none!important}
.wrap{width:min(1120px,calc(100% - 48px));margin-inline:auto}
.skip-link{position:absolute;z-index:10;top:10px;left:16px;transform:translateY(-180%);padding:12px 24px;background:white;border:2px solid var(--brand)}
.skip-link:focus{transform:none}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}
.brand{text-decoration:none;flex:0 1 300px;color:var(--ink)}
.brand span{display:block;font-size:.875rem;margin-bottom:10px}
.brand img{width:270px}
.header-contact{text-align:center;margin-left:auto}
.header-contact p{font-size:.875rem}
.header-contact p span{display:block}
.header-phone{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1.4;font-weight:bold;text-decoration:none;white-space:nowrap}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;min-height:52px;padding:12px 24px;background:var(--brand);border:1px solid var(--brand);color:white;text-decoration:none;font-weight:bold;line-height:1.6;border-radius:3px}
.button:hover{background:var(--brand-dark);color:white}
.button-outline{background:white;color:var(--brand-dark)}
.button-outline:hover{background:var(--soft);color:var(--brand-dark)}
.header-inquiry{font-size:.875rem;padding:14px 18px}
.site-nav{border-block:1px solid var(--line)}
.nav-inner{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.nav-inner a{display:flex;align-items:center;justify-content:center;padding:16px 8px;text-align:center;text-decoration:none;color:var(--ink);font-size:.875rem;position:relative}
.nav-inner a+a::before{content:"";width:1px;height:18px;background:var(--line);position:absolute;left:0}
.nav-inner a:hover{background:var(--soft);color:var(--brand-dark)}
.page-heading{padding:44px 0 38px;text-align:center;background:var(--soft);border-bottom:1px solid var(--pale)}
.eyebrow{font-size:.875rem;letter-spacing:.1em;color:var(--brand-dark);font-weight:bold}
h1{font-family:var(--serif);font-size:clamp(1.8rem,3.6vw,2.6rem);color:var(--brand-dark);letter-spacing:.045em;margin:12px 0 16px}
h1 span{display:block;font-size:.62em;letter-spacing:.06em;margin-bottom:8px}
.page-heading p:last-child{font-size:.9375rem}
.breadcrumb{padding-block:18px 28px;font-size:.875rem;color:var(--muted)}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:5px 12px;list-style:none}
.breadcrumb li+li::before{content:"/";padding-right:12px;color:#81767c}
.breadcrumb a{color:var(--muted)}
.gallery-main{position:relative;background:var(--soft)}
.gallery-main img{width:100%;aspect-ratio:1960/1068;object-fit:contain}
.gallery-main figcaption{background:var(--soft);font-size:.875rem;min-height:42px;padding:8px 18px;color:var(--muted);border:1px solid var(--line);border-top:0}
.gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:16px;list-style:none}
.gallery-thumbs a{display:block;padding:3px;text-decoration:none;border:2px solid transparent;color:var(--ink);text-align:center}
.gallery-thumbs a[aria-current="true"]{border-color:var(--brand)}
.gallery-thumbs a:hover{background:var(--soft)}
.gallery-thumbs img{width:100%;aspect-ratio:1960/1068;object-fit:cover}
.gallery-thumbs span{font-size:.875rem;display:block;padding:6px 2px 2px}
.intro-copy{max-width:920px;margin:32px auto;line-height:2}
strong{font-weight:700}
.quick-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:32px 0 40px;padding:24px 0;border-block:1px solid var(--line);text-align:center}
.quick-facts>div+div{border-left:1px solid var(--line)}
.quick-facts dt{font-size:.875rem;color:var(--muted)}
.quick-facts dd{color:var(--brand-dark);font-family:var(--serif);font-weight:600;font-size:1rem}
.quick-facts dd span{font-size:1.9rem;margin-inline:4px}
.contact-banner{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:26px 36px;color:white;background:var(--brand);border-radius:3px}
.contact-banner h2{font-size:1.2rem;margin-bottom:6px}
.contact-banner p{font-size:.9375rem}
.contact-banner>a{display:block;text-align:center;color:white;text-decoration:none;flex-shrink:0}
.contact-banner>a span,.contact-phone span{display:block;font-size:.875rem}
.contact-banner strong{font-family:Georgia,"Times New Roman",serif;font-size:2.4rem;line-height:1.4;white-space:nowrap}
.page-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;padding:24px 0;border-bottom:1px solid var(--line);margin-bottom:60px}
.page-nav a{padding:8px 0;font-size:.9375rem}
.section{margin-bottom:72px;scroll-margin-top:24px}
.section-title{background:var(--pale);color:var(--brand-dark);font-family:var(--serif);font-size:clamp(1.3rem,2.6vw,1.65rem);padding:18px 24px;text-align:center;margin-bottom:36px;font-weight:600}
.feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;align-items:center;margin-bottom:42px}
.feature:last-child{margin-bottom:0}
.feature img{width:100%;aspect-ratio:1960/1068;object-fit:cover}
.feature-reverse picture{order:2}
.feature-number{color:var(--brand);font-family:Georgia,serif;font-size:1.65rem;margin-bottom:4px}
.feature h3{font-family:var(--serif);font-size:1.4rem;margin-bottom:16px}
.cost-panel{margin-top:28px;background:var(--soft);border:1px solid var(--line);padding:32px}
.cost-panel h3{font-size:1.2rem;margin-bottom:20px;color:var(--brand-dark)}
.check-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px}
.check-list li{padding-left:24px;position:relative}
.check-list li::before{content:"✓";position:absolute;left:0;color:var(--brand);font-weight:bold}
.note{font-size:.875rem;color:var(--muted)}
.cost-panel .note{margin-top:24px}
.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:22px}
.text-link{display:inline-block;padding-block:10px}
.related-link{margin-top:18px;font-size:.9375rem}
.access-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px}
.access-grid h3{font-size:1.25rem;margin-bottom:16px;font-family:var(--serif)}
.address{margin-bottom:22px}
.facility-table>div{display:grid;grid-template-columns:112px minmax(0,1fr);border-top:1px solid var(--line)}
.facility-table>div:last-child{border-bottom:1px solid var(--line)}
.facility-table dt{font-weight:600;background:var(--soft);padding:16px 12px;font-size:.9375rem}
.facility-table dd{padding:16px}
.access-directions h3:not(:first-child){margin-top:24px}
.access-directions>.note{margin-top:10px}
.map-link{flex-direction:column;margin:24px 0;width:100%}
.map-link .note{font-weight:400}
.access-note{border-top:1px solid var(--line);padding-top:24px}
.access-note h3{font-size:1.1rem}
.flow-list{list-style:none;counter-reset:flow;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:30px 0 16px}
.flow-list li{counter-increment:flow;border-top:2px solid var(--brand);padding-top:20px}
.flow-list li::before{content:"0" counter(flow);font-family:Georgia,serif;font-size:1.8rem;color:var(--brand)}
.flow-list h3{font-size:1.0625rem;margin:8px 0 14px}
.flow-list p{font-size:.9375rem}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{cursor:pointer;padding:22px 44px 22px 16px;position:relative;font-weight:600;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::before{content:"Q.";color:var(--brand);font-family:Georgia,serif;font-size:1.3rem;margin-right:12px}
.faq-list summary::after{content:"＋";position:absolute;right:16px;top:24px;color:var(--brand)}
.faq-list details[open] summary::after{content:"−"}
.faq-list details[open] summary{background:var(--soft)}
.faq-list details>div{padding:20px 24px 24px 48px}
.consultation{text-align:center;background:var(--soft);border:1px solid var(--line);padding:42px 24px;margin-top:80px;margin-bottom:26px}
.consultation h2{font-family:var(--serif);font-size:clamp(1.35rem,2.6vw,1.8rem);margin:12px 0 20px}
.contact-phone{display:block;text-decoration:none;margin:24px auto 22px;width:fit-content}
.contact-phone strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,6vw,3rem);line-height:1.6;white-space:nowrap}
.consultation>.note{margin-top:14px}
.back-link{text-align:center;margin-bottom:50px}
.site-footer{background:#f4f1f3;border-top:1px solid var(--line);padding:44px 0 28px}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:32px}
.footer-name{font-family:var(--serif);font-size:1.4rem;margin-bottom:12px}
address{font-style:normal;font-size:.9375rem}
.footer-top img{width:230px}
.footer-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin:30px 0;border-block:1px solid var(--line);padding:22px 0;font-size:.875rem}
.copyright{margin-top:24px;color:var(--muted)}
.copyright small{font-size:.8rem}
.mobile-contact{display:none}
@media(max-width:1000px){.header-inner{gap:16px}.brand{flex-basis:250px}.brand img{width:230px}.header-inquiry{max-width:155px}.header-phone{font-size:1.8rem}.contact-banner{padding:24px}.contact-banner strong{font-size:2rem}.feature{gap:28px}.access-grid{gap:32px}.flow-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){
  .wrap{width:calc(100% - 32px)}
  .header-inner{padding-block:16px;gap:16px;flex-wrap:wrap}
  .brand{flex:1 1 160px}.brand img{width:205px}.brand span{font-size:.8rem;margin-bottom:6px}
  .header-contact{margin-left:0;flex:0 1 auto}.header-contact p{font-size:.8rem}.header-contact p span{display:none}.header-phone{font-size:1.5rem}
  .header-inquiry{display:none}
  .nav-inner{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.nav-inner a{font-size:.8rem;padding:10px 6px;min-height:44px}.nav-inner a:nth-child(n+4){border-top:1px solid var(--line)}.nav-inner a:nth-child(4)::before{display:none}
  .page-heading{padding:28px 0}.page-heading p:last-child{font-size:.875rem}.eyebrow{font-size:.8rem}h1{letter-spacing:.01em;line-height:1.6}
  .breadcrumb{padding:14px 0 20px;font-size:.8rem}.breadcrumb ol{gap:3px 8px}.breadcrumb li+li::before{padding-right:8px}
  .gallery-thumbs{gap:4px;margin-top:10px}.gallery-thumbs a{padding:2px}.gallery-thumbs span{font-size:.8rem;line-height:1.5;padding-top:6px}.gallery-main figcaption{padding:8px 12px}
  .intro-copy{margin:24px auto;line-height:1.9}
  .quick-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0;margin:24px 0 30px}.quick-facts>div{padding:14px 6px}.quick-facts>div:nth-child(3){border-left:0}.quick-facts>div:nth-child(n+3){border-top:1px solid var(--line)}.quick-facts dd span{font-size:1.65rem}
  .contact-banner{flex-direction:column;gap:16px;text-align:center;padding:24px 16px}.contact-banner h2{font-size:1.1rem}.contact-banner p{font-size:.875rem}.contact-banner>a{width:100%;border-top:1px solid #ffffff60;padding-top:14px}.contact-banner strong{font-size:2.2rem}
  .page-nav{gap:6px 22px;padding:18px 0;margin-bottom:38px}.page-nav a{font-size:.875rem}
  .section{margin-bottom:46px}.section-title{padding:16px;margin-bottom:26px}
  .feature{grid-template-columns:1fr;gap:18px;margin-bottom:32px}.feature-reverse picture{order:0}.feature h3{font-size:1.25rem;margin-bottom:12px}.feature-number{font-size:1.4rem}
  .cost-panel{padding:22px 18px}.check-list{grid-template-columns:1fr;gap:14px}.button-row{gap:12px}.button-row .button{width:100%}.button{padding:12px 18px}
  .access-grid{grid-template-columns:1fr;gap:30px}.facility-table>div{grid-template-columns:100px minmax(0,1fr)}.facility-table dt{padding:14px 10px}.facility-table dd{padding:14px 12px}
  .flow-list{gap:24px 20px}.faq-list summary{padding-left:8px}.faq-list details>div{padding:18px 14px 22px}.faq-list summary::before{margin-right:8px}
  .consultation{margin-top:46px;padding:30px 16px}.consultation .button{width:100%}
  .footer-top{flex-direction:column;align-items:flex-start;gap:24px}.footer-top img{width:205px}
  body{padding-bottom:calc(98px + env(safe-area-inset-bottom,0px))}
  html{scroll-padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))}
  .mobile-contact{display:grid;grid-template-columns:1.6fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:5;background:var(--brand);padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));gap:8px;border-top:1px solid var(--brand-dark)}
  .mobile-contact a{color:white;text-decoration:none;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.5;min-height:64px}
  .mobile-contact a:first-child span{font-size:.75rem}.mobile-contact strong{font-family:Georgia,serif;font-size:1.4rem;white-space:nowrap}
  .mobile-contact a:last-child{background:white;color:var(--brand-dark);border-radius:3px;font-size:.875rem;font-weight:bold}
}
@media(max-width:420px){.header-contact{flex-basis:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}.header-contact p span{display:block}.header-inner{gap:12px}.header-phone{font-size:1.4rem}.flow-list{grid-template-columns:1fr}.flow-list h3{margin:2px 0 8px}.mobile-contact{grid-template-columns:1.65fr 1fr}.mobile-contact strong{font-size:1.25rem}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media print{.site-nav,.page-nav,.mobile-contact,.header-inquiry,.button,.skip-link{display:none!important}body{padding-bottom:0;font-size:11pt}.wrap{width:100%}.section{margin-bottom:24px}.page-heading{padding:16px 0}.gallery-main{max-width:600px;margin:auto}.gallery-thumbs{display:none}.feature,.contact-banner,.facility-table>div{break-inside:avoid}.contact-banner{color:var(--ink);background:white;border:1px solid var(--line)}.contact-banner>a{color:var(--ink)}.site-footer{background:white}.faq-list details>div{display:block!important}.consultation{margin-top:24px}}
