
.mobile-menu-toggle{display:none}
.mobile-menu-panel[hidden]{display:none!important}
.site-header .ticket-button svg{display:none!important}
.ticket-button .nav-triangle{grid-column:2;grid-row:1/3;align-self:center;color:#d82923;font:12px/1 Arial,sans-serif}
.header-ai .ai-arrow,.fixed-actions i{font:12px/1 Arial,sans-serif!important;transform:none!important}
.fixed-actions>.fixed-ticket i{position:absolute;top:50%;right:14px;transform:translateY(-50%)!important;line-height:1}

@media(min-width:821px){
  html.entry-priority .fixed-actions>.fixed-entry{position:fixed;z-index:1001;top:103px;right:calc(2.2vw + 25px);width:246px;min-height:72px;padding:12px 14px}
  .header-ai{top:calc(100% + 90px)}
}
@media(min-width:821px) and (max-width:1500px){
  html.entry-priority .fixed-actions>.fixed-entry{top:95px;right:calc(1.4vw + 15px)}
}
@media(min-width:821px) and (max-width:1200px){
  html.entry-priority .fixed-actions>.fixed-entry{width:246px}
}

@media(max-width:820px){
  .site-header{grid-template-columns:minmax(0,1fr) 82px 44px;gap:7px;padding-inline:13px}
  .site-header .brand{grid-column:1;grid-row:1;min-width:0}
  .site-header .brand img{width:118px}
  .site-header .brand span{margin-left:5px;font-size:10px}
  .site-header .ticket-button{grid-column:2;grid-row:1;width:82px;height:44px;padding:0 8px;justify-items:center}
  .site-header .ticket-button span{font-size:11px;letter-spacing:.08em}
  .ticket-button .nav-triangle{display:none}
  .mobile-menu-toggle{grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:44px;height:44px;padding:0;border:1px solid #bda46a80;background:#171410;color:#f5f0e5;cursor:pointer}
  .mobile-menu-toggle .menu-bars{display:block;width:18px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}
  .mobile-menu-toggle .menu-bars:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:1px solid currentColor}
  .mobile-menu-toggle .menu-word{font:8px/1 Arial,sans-serif;letter-spacing:.08em}
  .mobile-menu-toggle:focus-visible{outline:2px solid #fff;outline-offset:3px}
  .mobile-menu-open .mobile-menu-toggle{background:#a82b22;border-color:#c9a963}
  .mobile-menu-open .header-ai{display:none}
  .mobile-menu-panel{position:fixed;z-index:999;inset:0;background:#0e0d0bf7;color:#f2ede4;overflow:auto;overscroll-behavior:contain;padding:102px 6% calc(115px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}
  .mobile-menu-panel .menu-kicker{margin:0 0 17px;color:#bda46a;font:10px/1.5 Arial,sans-serif;letter-spacing:.24em}
  .mobile-menu-panel nav{display:grid;justify-content:stretch;gap:0;width:100%;max-width:600px;margin:0 auto}
  .mobile-menu-panel nav a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 6px;align-items:center;column-gap:8px;min-width:0;min-height:51px;padding:10px 3px;border-bottom:1px solid #bda46a3a;color:#f2ede4;text-decoration:none}
  .mobile-menu-panel nav a b{grid-column:1;font:600 14px/1.3 Arial,sans-serif;letter-spacing:.075em}
  .mobile-menu-panel nav a small{grid-column:2;margin:0;color:#b8ab93;font:11px/1.4 'Yu Gothic',Meiryo,sans-serif;letter-spacing:0;text-align:left;white-space:nowrap}
  .mobile-menu-panel nav a:after{grid-column:3;content:"";position:static;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid #bda46a;background:none}
  .mobile-menu-panel nav a:focus-visible{outline:2px solid #bda46a;outline-offset:2px}
  body.mobile-menu-open{overflow:hidden}
}
@media(max-width:360px){
  .site-header{grid-template-columns:minmax(0,1fr) 74px 40px;gap:5px;padding-inline:10px}
  .site-header .brand img{width:102px}
  .site-header .brand span{font-size:9px;margin-left:4px}
  .site-header .ticket-button{width:74px}
  .site-header .ticket-button span{font-size:10px}
  .mobile-menu-toggle{width:40px}
}
