/* First visit and access: short overview, native disclosures, original terms intact. */
.visit-guide{--visit-sans:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,Meiryo,sans-serif}
.visit-guide .lead{font-size:16px;line-height:1.85;max-width:43em}
.visit-guide .btn-dark,.visit-guide .btn-line,.visit-guide summary,.visit-guide .visit-jump-links a{font-family:var(--visit-sans);letter-spacing:.02em}
.visit-guide .btn-dark,.visit-guide .btn-line{min-height:48px;font-size:14.5px;padding:13px 20px}
.visit-guide :is(.sec,.visit-secondary,.faqs,.route-sec,.next){margin-top:44px}
.visit-guide .visit-fold{border-top:1px solid #d9cbb7;border-bottom:1px solid #d9cbb7;background:transparent}
.visit-guide .visit-fold>summary{position:relative;display:block;list-style:none;cursor:pointer;color:var(--ink);padding:20px 36px 20px 0;font-size:15px;line-height:1.65;min-height:60px}
.visit-guide summary::-webkit-details-marker{display:none}
.visit-guide .visit-fold>summary:after,.visit-guide .visit-step>summary:after{content:'＋';position:absolute;right:5px;top:21px;color:#806839;font-size:18px;font-weight:400;line-height:1}
.visit-guide .visit-fold[open]>summary:after,.visit-guide .visit-step[open]>summary:after{content:'−'}
.visit-guide .visit-fold-title{display:block;font-weight:600}
.visit-guide .visit-fold-note{display:block;font-size:14px;font-weight:400;line-height:1.75;color:#665c4e;margin-top:5px}
.visit-guide .visit-fold-body{padding:3px 0 24px;font-size:15px;line-height:1.85}
.visit-guide .visit-fold-body>p:first-child{margin-top:0}
.visit-guide .visit-fold-body>p:last-child{margin-bottom:0}
.visit-guide .visit-fold-body p{font-size:15px;line-height:1.85}
.visit-guide .visit-fold-body .snum{display:none}
.visit-guide .visit-fold-body h2{font-size:1.15rem;margin-top:8px}
.visit-guide .visit-fold-body h2:after{display:none}
.visit-guide .visit-fold-body .sec{margin-top:30px}
.visit-guide .visit-fold-body a:not(.btn-dark):not(.btn-line){color:var(--ink);text-underline-offset:4px}
.visit-guide .visit-fold>summary:focus-visible,.visit-guide .visit-step>summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.first-guide .first-start-links{margin-top:22px}
.first-guide .booking-hint{font-size:14.5px;line-height:1.8;color:#665c4e;margin:16px 0 0}
.first-guide .welcome-fold{margin:20px 0 0;border-bottom:0}
.first-guide .welcome-fold>summary{min-height:50px;padding-top:14px;padding-bottom:14px;font-size:14px}
.first-guide .welcome-fold>summary:after{top:17px}
.first-guide .welcome-fold strong{font-family:'Shippori Mincho','Yu Mincho',serif;font-weight:500;font-size:18px;color:var(--ink)}
.first-guide .first-page-nav{margin:0;padding-top:5px;gap:2px 22px}
.first-guide .first-page-nav a{font-size:14px;letter-spacing:0}
.first-guide .gal-movie{margin-top:28px}
.first-guide .gm-cap{margin-top:10px;gap:10px}
.first-guide .gm-cap .en{font-family:'Cormorant Garamond',serif;color:#806839;font-size:14px;letter-spacing:.14em}
.first-guide .gm-cap .jp{font-family:var(--visit-sans);color:#665c4e;font-size:14px;letter-spacing:.01em}
.first-guide .visit-tap-hint{font-size:14px;color:#665c4e;margin:0 0 16px}
.first-guide .visit-step{border-bottom:1px solid #d9cbb7}
.first-guide .visit-step>summary{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;align-items:center;list-style:none;cursor:pointer;padding:20px 34px 20px 0;color:var(--ink);min-height:66px;line-height:1.6}
.first-guide .visit-step .step-num{font-size:21px;color:#806839;line-height:1}
.first-guide .visit-step-title{font-family:var(--visit-sans);font-size:15px;font-weight:600;letter-spacing:.01em}
.first-guide .visit-step-body{padding:0 0 24px 46px;font-size:15px;line-height:1.85}
.first-guide .visit-step-body p{margin:0 0 12px;font-size:15px}.first-guide .visit-step-body p:last-child{margin-bottom:0}
.first-guide #consultation{margin-top:28px;padding:0;border:0}
.first-guide #booking-options{margin-top:30px}
.first-guide .topic-list dt{font-family:var(--visit-sans);font-size:15px;font-weight:600}
.first-guide .topic-list dd{font-size:14.5px}
.first-guide .consult-option h3{font-family:var(--visit-sans);font-size:16px;letter-spacing:.01em}
.first-guide .faqs summary{font-family:var(--visit-sans);font-size:15px;line-height:1.75;letter-spacing:.01em}
.first-guide .faq-a{font-size:15px;line-height:1.85}
.first-guide .nearby-links{margin-top:32px;padding:22px}
.access-guide .visit-jump-links{display:flex;flex-wrap:wrap;gap:4px 26px;border-bottom:1px solid #d9cbb7;padding:4px 0 12px;margin:12px 0 0}
.access-guide .visit-jump-links a{display:inline-flex;align-items:center;gap:20px;min-height:44px;color:var(--ink);text-decoration:none;font-size:14.5px}
.access-guide .visit-jump-links span{color:#806839}
.access-guide .grid{margin-top:28px;gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.access-guide .photo{margin:0}.access-guide .photo img{aspect-ratio:4/3;object-fit:cover}
.access-guide .photo p{font-size:14.5px;line-height:1.8;color:#665c4e;margin:12px 0 16px}
.access-guide .maplink{font-family:var(--visit-sans);font-size:14.5px;letter-spacing:.02em;min-height:48px;padding:12px}
.access-guide .map-fold{margin-top:14px}.access-guide .map-fold>summary,.access-guide .contact-fold>summary{font-size:14px;padding-top:16px;padding-bottom:16px;min-height:54px}
.access-guide .map-fold>summary:after,.access-guide .contact-fold>summary:after{top:19px}
.access-guide .map-fold .visit-fold-body{padding-bottom:14px}
.access-guide .map{height:320px;max-height:65vh}
.access-guide .facts>div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:16px 0}
.access-guide .facts dt{font-family:var(--visit-sans);font-size:14px;letter-spacing:.02em;color:#665c4e;margin-top:2px}
.access-guide .facts dd{margin:0;font-size:15px;line-height:1.85}
.access-guide .contact-fold{border-top:0}
.access-guide .extra-facts{border-top:0}
.access-guide .extra-facts>div{grid-template-columns:1fr;gap:5px;border:0;padding:8px 0}
.access-guide .contact-fold .visit-fold-body{padding-bottom:14px}
.access-guide .notice{font-size:14px;line-height:1.8;padding:13px 15px;margin:18px 0}
.access-guide .route-wrap{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px;align-items:start}
.access-guide .movie video{aspect-ratio:16/9;object-fit:contain;background:#1c1712}
.access-guide .movie p{font-size:14px;line-height:1.8;color:#665c4e}
.access-guide .route li{font-size:15px;line-height:1.85;padding:13px 0 13px 40px}
.access-guide .route li:before{top:13px;font-size:20px;color:#806839}
.access-guide .visit-secondary{margin-top:28px}
.access-guide .todaybox{margin:36px 0 26px;padding:22px;border-left:1px solid var(--gold)}
.access-guide .todayt{font-size:15px;line-height:1.85}
.access-guide #clinic-location,.visit-guide details{scroll-margin-top:90px}
@media(max-width:720px){
 .visit-guide{padding-left:20px;padding-right:20px}
 .visit-guide .lead{font-size:15px}
 .visit-guide .btn-dark,.visit-guide .btn-line{font-size:14.5px;padding-left:15px;padding-right:15px}
 .visit-guide .visit-fold>summary{padding-right:28px}
 .first-guide .visit-step>summary{gap:10px;grid-template-columns:26px minmax(0,1fr)}
 .first-guide .visit-step-body{padding-left:0}
 .first-guide .first-page-nav{gap:0 14px}
 .first-guide .first-page-nav a{font-size:13.5px;min-height:44px}
 .first-guide .topic-list>div{grid-template-columns:1fr;gap:6px}
 .access-guide .grid,.access-guide .route-wrap{grid-template-columns:1fr;gap:26px}
 .access-guide .route li:first-child{padding-top:0}.access-guide .route li:first-child:before{top:0}
 .access-guide .facts>div{grid-template-columns:64px minmax(0,1fr)}
 .access-guide .extra-facts>div{grid-template-columns:1fr}
 .access-guide .todaybox{padding:18px}
}

/* One secondary route to the full paid consultation options. */
.first-guide .first-consult-reminder>a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-size:14px;line-height:1.8;text-underline-offset:4px}
