/* Shared navigation: load after the page styles. */
.site-header{background:var(--paper,#f7f8f2);z-index:40}
.site-header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.site-header-actions{display:flex;align-items:center;gap:20px}
.site-header .header-line{min-height:46px;padding:9px 22px;gap:9px;font-size:12px;white-space:nowrap;border-radius:4px}
a.btn[href*="thelocal.thejapanholdings-info.workers.dev/r/dashboard"],.btn.btn-line,.membership-line .btn-line,.closing .btn-line,.schedule-bottom .btn-line,.mobile-cta .btn-line,a.legal-line[href*="thelocal.thejapanholdings-info.workers.dev/r/dashboard"]{background:#06c755;border-color:#06c755;color:#fff}
a.btn[href*="thelocal.thejapanholdings-info.workers.dev/r/dashboard"]:hover,.btn.btn-line:hover,.membership-line .btn-line:hover,.closing .btn-line:hover,.schedule-bottom .btn-line:hover,a.legal-line[href*="thelocal.thejapanholdings-info.workers.dev/r/dashboard"]:hover{background:#05b34d;border-color:#05b34d;color:#fff}
.btn-line>svg{width:24px;height:24px;flex:0 0 24px}
.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:84px;height:46px;flex:0 0 84px;border:0;border-radius:25px;background:#182219;color:#fff;cursor:pointer;padding:0}
.menu-toggle>span{width:29px;height:1px;background:currentColor;display:block}
.menu-toggle:hover{background:#344431}
.menu-toggle:focus-visible,.menu-close:focus-visible,.site-menu a:focus-visible,.social-icons a:focus-visible{outline:3px solid #9cb95d;outline-offset:5px}
.site-menu{box-sizing:border-box;position:fixed;inset:0 0 0 auto;margin:0;width:min(600px,100vw);height:100dvh;max-height:none;max-width:none;border:0;padding:0;background:#182219;color:#f7f8f2;overflow-y:auto;overscroll-behavior:contain}
.site-menu::backdrop{background:rgba(23,30,23,.48)}
html:has(.site-menu[open]){overflow:hidden}
.site-menu-top{display:flex;align-items:center;justify-content:space-between;padding:24px 42px 0}
.site-menu-top h2{font-size:11px;font-weight:400;letter-spacing:.2em;margin:0}
.menu-close{position:relative;width:46px;height:46px;border:1px solid #73816e;border-radius:50%;background:transparent;color:#fff;cursor:pointer}
.menu-close span{position:absolute;width:22px;height:1px;left:11px;top:22px;background:currentColor;transform:rotate(45deg)}
.menu-close span:last-child{transform:rotate(-45deg)}
.site-menu-content{padding:20px 52px 38px}
.menu-membership>p{font-size:17px;font-family:"Zen Old Mincho","Yu Mincho",serif;margin:0 0 16px;line-height:1.7}
.menu-prices{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:baseline;font-size:11px;line-height:1.7}
.menu-prices strong{font-size:29px;font-weight:500;letter-spacing:-.04em}
.menu-prices small{display:block;width:100%;font-size:10px;color:#c5cdbf}
.menu-join{display:flex;align-items:center;justify-content:space-between;min-height:55px;padding:12px 20px;background:#d9ed9c;color:#182219;font-size:14px;margin:20px 0 12px;border-radius:3px}
.site-menu .menu-line{display:flex;width:100%;min-height:48px;padding:10px 16px;font-size:12px;gap:10px;justify-content:center;border-radius:3px}
.drawer-links{margin-top:30px;display:flex;flex-direction:column}
.drawer-links a{display:flex;justify-content:space-between;align-items:center;padding:17px 0;border-top:1px solid #52604b;color:inherit;font-size:14px;line-height:1.6;gap:14px}
.drawer-links a:last-child{border-bottom:1px solid #52604b}
.drawer-links a:hover{color:#d9ed9c}
.social-links.social-icons{display:flex;gap:15px;flex-wrap:wrap;margin-top:22px}
.social-links.social-icons a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;padding:10px;border:1px solid currentColor;border-radius:50%;color:inherit;transition:background .2s}
.social-icons svg{display:block;width:24px;height:24px;flex-shrink:0}
.social-links.social-icons a:hover{background:#d9ed9c;color:#182219}
.site-menu .social-icons{color:#f7f8f2;margin-top:28px}
.menu-signoff{font-size:9px;letter-spacing:.12em;color:#b8c3ae;margin-top:27px}
.no-script-nav{display:flex;flex-wrap:wrap;gap:15px;padding:20px;font-size:13px;border-bottom:1px solid #bfc8b4}
@media(max-width:700px){.site-header-inner{min-height:72px;gap:10px}.site-header .logo{width:125px;height:37px}.site-header .logo img{width:182px;left:-29px;top:-37px}.site-header-actions{gap:10px}.site-header .header-line{font-size:10px;padding:8px 11px;min-height:42px;gap:6px}.header-line-extra{display:none}.header-line svg{width:20px;height:20px;flex-basis:20px}.menu-toggle{width:64px;height:42px;flex-basis:64px}.menu-toggle>span{width:24px}.site-menu-top{padding:18px 22px 0}.site-menu-content{padding:20px 25px 35px}.menu-prices{gap:5px 17px}.menu-prices strong{font-size:26px}.menu-membership>p{font-size:17px}.site-menu .menu-line{font-size:11px;padding:10px}.drawer-links a{padding:16px 0;font-size:13px}}
@media(prefers-reduced-motion:no-preference){.site-menu[open]{animation:menu-enter .23s ease-out}@keyframes menu-enter{from{transform:translateX(100%);opacity:.5}to{transform:translateX(0);opacity:1}}}
.site-header .logo img{height:auto}
.sns-section .social-links.social-icons a{width:70px;height:70px}
.sns-section .social-links.social-icons svg{width:30px;height:30px}
.site-menu .menu-membership>p{color:#f0f3e8}
.menu-toggle{border-radius:12px}
