@charset "UTF-8";
/* Common, script-free header menu for all temporary pages. */
.site-header .global-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px;height:auto}
.global-header-inner>.brand-link,.global-header-inner>.brand{flex:0 1 auto;min-width:0}
.global-header-controls{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-left:auto;flex-shrink:0;min-width:0}
.global-header-controls>.header-booking{margin-left:0}
.header-online-store{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 17px;border:1px solid #193f33;background:#193f33;color:#fff!important;text-decoration:none;font:13px/1.8 "Yu Gothic",Meiryo,sans-serif;white-space:nowrap}
.header-online-store:hover{background:#2c5143;border-color:#2c5143}
.header-online-store:focus-visible{outline:3px solid #ad8145;outline-offset:3px}
.global-header-controls .header-reserve{display:block;margin:0}
.header-reservation-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;background:#193f33;color:#fff!important;text-decoration:none;font:13px/1.6 "Yu Gothic",Meiryo,sans-serif;text-align:center}
.site-menu{position:relative;display:block;flex:0 0 auto;margin:0;padding:0;border:0;background:transparent;color:inherit}
.site-menu>summary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:54px;min-height:50px;padding:5px 2px;border:0;background:transparent;color:inherit;cursor:pointer;list-style:none;font:11px/1.3 "Yu Gothic",Meiryo,sans-serif}
.site-menu>summary>.site-menu-label{white-space:nowrap;overflow-wrap:normal;word-break:keep-all;letter-spacing:0;font-size:inherit;line-height:1.2;flex-shrink:0}
.site-menu>summary::-webkit-details-marker{display:none}
.site-menu-icon{position:relative;display:block;width:24px;height:2px;background:currentColor;margin:7px 0}
.site-menu-icon::before,.site-menu-icon::after{content:"";position:absolute;left:0;width:24px;height:2px;background:currentColor}
.site-menu-icon::before{top:-7px}.site-menu-icon::after{top:7px}
.site-menu[open]>summary .site-menu-icon{background:transparent}
.site-menu[open]>summary .site-menu-icon::before{top:0;transform:rotate(45deg)}
.site-menu[open]>summary .site-menu-icon::after{top:0;transform:rotate(-45deg)}
.site-menu[open]>summary{border:0}
.site-menu>nav.site-menu-nav{position:absolute;top:calc(100% + 12px);right:0;z-index:150;display:block;width:320px;max-width:calc(100vw - 36px);max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px);overflow-y:auto;margin:0;padding:12px 22px;background:#fffef9;color:#193f33;border:1px solid #bfc8b9;box-shadow:0 8px 24px #0003;text-align:left;font:15px/1.7 "Yu Gothic",Meiryo,sans-serif;letter-spacing:0}
.site-menu:not([open])>nav.site-menu-nav{display:none}
.site-menu-nav>a,.site-menu-context>a{display:block;min-height:44px;padding:12px 0;margin:0;border:0;border-bottom:1px solid #d7d9cd;color:#193f33!important;text-decoration:none;font:15px/1.7 "Yu Gothic",Meiryo,sans-serif;letter-spacing:0;white-space:normal}
.site-menu-nav>a:hover,.site-menu-context>a:hover{color:#103027!important;text-decoration:underline;text-underline-offset:5px}
.site-menu-nav>a:last-child{border-bottom:0}
.site-menu-context{margin-top:12px;padding-top:12px;border-top:2px solid #193f33}
.site-menu-context>p{font:600 13px/1.7 "Yu Gothic",Meiryo,sans-serif;margin:0 0 6px;color:#58635d}
.site-menu>summary:focus-visible,.site-menu-nav a:focus-visible,.header-reservation-link:focus-visible{outline:3px solid #ad8145;outline-offset:3px}
.site-header.has-xmas-tabs .site-logo{display:flex}
@media(max-width:640px){
 .site-header .global-header-inner{gap:10px;min-height:76px;flex-wrap:nowrap}
 .global-header-controls{gap:8px}
 .global-header-inner>.brand-link img,.global-header-inner>.brand img,.activity-header>a:first-child img{width:120px;max-width:100%;height:auto}
 .global-header-inner>.brand-link{flex-basis:auto}
 .global-header-controls .header-contact{font-size:11px;max-width:125px;padding-block:4px}
 .global-header-controls .activity-header-contact{font-size:11px;padding-block:4px}
 .site-menu>summary{width:clamp(46px,12vw,54px);min-width:44px;min-height:48px;font-size:clamp(10px,2.65vw,11px)}
 .site-menu>nav.site-menu-nav{top:calc(100% + 10px);padding:10px 18px;max-height:calc(100dvh - 125px)}
 .global-header-controls .header-booking{font-size:12px;padding:10px 12px}
 .global-header-controls .header-reserve .btn-reserve{font-size:11px;padding:9px 10px}
 .global-header-inner .site-logo .logo-text{display:none}
 .global-header-inner .site-logo .logo-crest{width:38px}
 .global-header-inner>.brand .brand-main{font-size:12px;letter-spacing:.04em}
 .global-header-inner>.brand .brand-sub{font-size:9px}
 .header-reservation-link{max-width:96px;padding:7px 9px;font-size:11px}
}
.site-menu-nav>.site-menu-online-store{display:none}
@media(max-width:640px){
 .global-header-controls>.header-online-store{display:none}
 .site-menu-nav>.site-menu-online-store{display:block}
}
