/* Shared menu/page dismissal control for Web and app. New controls use .hako-close and an aria-label. */
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close]){box-sizing:border-box;display:grid;place-items:center;flex:0 0 34px!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;max-width:34px!important;max-height:34px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#f7f8fa!important;color:#25272c!important;font-size:0!important;line-height:1!important;box-shadow:inset 0 0 0 1px #dfdfe1!important;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background .15s ease}
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close]):not(.dclose):not(.mypageticketlightboxclose):not(.native-stored-close):not(.native-map-mini-close){position:relative}
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close])::before,html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close])::after{content:"";position:absolute;left:10px!important;top:16px!important;width:14px!important;height:2px!important;border-radius:2px;background:currentColor;transform:rotate(45deg)!important}
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close])::after{transform:rotate(-45deg)!important}
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close])>svg{display:none!important}
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close]):active{background:#fcf6f2!important}
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close]):focus-visible{outline:2px solid #25272c;outline-offset:3px}
html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close]):disabled{opacity:.45;cursor:default}
@media(hover:hover){html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close]):hover{background:#fcf6f2!important}}
@media(prefers-reduced-motion:reduce){html body :is(.hako-close,#mClose,#authCloseMyPage,.ticketlinkclose,.mypageticketlightboxclose,.photo-close,.dclose,.native-stored-close,.native-map-mini-close,.landingmenuclose,[data-calendar-close]){transition:none}}
@media(max-width:860px){html body .dclose{display:none!important}}

/* A heading and its dismissal circle share a vertical center in every appearance. */
html body :is(.mhead,.ticketlinkhead,.ticket-crop-head,.sheet-head,.photo-dialog>header):has(>.hako-close,>#mClose,>.ticketlinkclose,>.photo-close){align-items:center}
html body :is(.mhead,.ticketlinkhead,.ticket-crop-head,.sheet-head,.photo-dialog>header):has(>.hako-close,>#mClose,>.ticketlinkclose,>.photo-close)>:is(h1,h2){margin-block:0;min-width:0;line-height:1.5}
