/* エントランス画面。メニュー用スタイルは別フレームで管理する。 */
html body.sense-entry-active .current-live-entrance.sense-entry-popup {display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: flex-start !important; min-height: 100svh !important; padding: 0px !important; overflow: hidden !important; background: rgb(255, 255, 255) !important; color: rgb(0, 0, 0) !important; font-family: "Noto Sans JP", system-ui, -apple-system, sans-serif !important;}
.current-live-entrance > .homegrid-sr-only {position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0px !important; overflow: hidden !important; clip: rect(0px, 0px, 0px, 0px) !important; white-space: nowrap !important; border: 0px !important;}
.current-live-entrance-top {display: flex; flex: 0 0 50svh; flex-direction: column; align-items: center; width: 100%; max-width: 500px; height: 50svh; margin: 0px auto;}
.current-live-entrance-logo {display: block; width: 192px; height: auto; margin: 16px 0px 0px;}
.current-live-entrance-hero {position: relative; display: flex; flex: 1 1 0%; align-items: center; justify-content: center; width: 100%; min-height: 0px; overflow: hidden;}
.current-live-entrance-hero > img {display: block; width: 100%; height: auto; max-height: 100%; object-fit: contain; object-position: center top;}
.current-live-entrance-enter {position: absolute; bottom: 15px; left: 50%; z-index: 2; display: flex; align-items: center; justify-content: center; gap: 9px; width: 160px; min-height: 50px; padding: 10px 24px; transform: translateX(-50%); border-radius: 999px; background: rgb(255, 255, 255); color: rgb(0, 0, 0); font: 600 16px / 1.4 "Noto Sans JP", system-ui, sans-serif; white-space: nowrap; box-shadow: rgba(0, 0, 0, 0.13) 0px 10px 20px; cursor: pointer; border: 1px solid rgb(17, 17, 17) !important;}
.current-live-entrance-enter:hover {background: rgb(245, 245, 245);}
.current-live-entrance-enter:focus-visible, .current-live-service-tab:focus-visible, .current-live-service-panel a:focus-visible {outline: rgb(20, 115, 230) solid 3px; outline-offset: -3px;}
.current-live-entrance-services {display: flex; flex: 0 0 45svh; flex-direction: column; width: 100%; max-width: 400px; height: 45svh; min-height: 0px; margin: 0px auto; background: rgb(255, 255, 255);}
.current-live-entrance-services > hr {width: 100%; margin: 0px; border-width: 1px 0px 0px; border-style: solid none none; border-color: rgb(156, 163, 175) currentcolor currentcolor; border-image: none;}
.current-live-entrance-heading {flex: 0 0 auto; margin: 0px; padding: 8px 4px; color: rgb(17, 17, 17); font: 500 14px / 1.35 "Noto Sans JP", system-ui, sans-serif; text-align: center;}
.current-live-entrance-switcher {display: flex; flex: 1 1 0%; min-height: 0px;}
.current-live-entrance-tabs {position: relative; display: flex; flex: 0 0 50%; flex-direction: column; min-width: 0px; background: rgb(0, 0, 0);}
.current-live-service-tab {display: flex; flex: 0 0 80px; align-items: center; justify-content: center; width: 100%; height: 80px; margin: 0px; padding: 0px 20px 0px 16px; border-radius: 0px; opacity: 0.5; cursor: pointer; transition: opacity 0.3s, filter 0.3s; border: 0px !important;}
.current-live-service-tab:hover {filter: brightness(1.03);}
.current-live-service-tab.is-active {opacity: 1;}
.current-live-service-tab img {display: block; width: 100%; max-width: 100%; height: auto; max-height: 72px; object-fit: contain;}
.current-live-service-luce {background: rgb(0, 0, 0);}
.current-live-service-ink {background: rgb(249, 250, 251);}
.current-live-service-roma {background: linear-gradient(90deg, rgb(108, 144, 120), rgb(147, 181, 158));}
.current-live-service-roma img {width: auto; height: 72px;}
.current-live-entrance-panels {position: relative; flex: 0 0 50%; min-width: 0px; overflow: hidden;}
.current-live-service-panel {position: absolute; inset: 0px; display: flex; flex-direction: column; opacity: 0; transform: scale(0.95) translateY(10px); pointer-events: none; transition: opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1), transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);}
.current-live-service-panel.is-active {opacity: 1; transform: none; pointer-events: auto;}
.current-live-service-panel > p {position: relative; z-index: 2; flex: 0 0 auto; width: 100%; margin: 0px; padding: 5px 4px; box-sizing: border-box; color: rgb(255, 255, 255); background: rgb(0, 0, 0); font: 500 10px / 1.4 "Noto Sans JP", system-ui, sans-serif; letter-spacing: 0.08em; text-align: center; white-space: nowrap;}
.current-live-panel-ink > p {color: rgb(0, 0, 0); background: rgb(255, 255, 255);}
.current-live-panel-roma > p {background: linear-gradient(90deg, rgb(108, 144, 120), rgb(147, 181, 158));}
.current-live-service-panel > img {display: block; width: 100%; height: 100%; min-height: 0px; object-fit: cover; object-position: center top;}
.current-live-service-panel > a {position: absolute; bottom: 10px; left: 5%; z-index: 3; display: flex; align-items: center; justify-content: center; gap: 5px; width: 90%; min-height: 38px; padding: 7px 14px; box-sizing: border-box; border: 1px solid; border-radius: 999px; color: rgb(255, 255, 255); background: rgb(0, 0, 0); font: 500 14px / 1.3 "Noto Sans JP", system-ui, sans-serif; text-decoration: none; white-space: nowrap; box-shadow: rgba(0, 0, 0, 0.18) 0px 6px 14px;}
.current-live-panel-ink > a {color: rgb(0, 0, 0); background: rgb(255, 255, 255);}
.current-live-panel-roma > a {background: linear-gradient(90deg, rgb(108, 144, 120), rgb(147, 181, 158));}
.current-live-entrance-ticker {display: flex; flex: 0 0 auto; width: 100%; margin: 0px; padding: 4px 0px; overflow: hidden; color: rgb(255, 255, 255); background: rgb(0, 0, 0); font: 500 10px / 1.25 "Noto Sans JP", system-ui, sans-serif; white-space: nowrap;}
.current-live-entrance-ticker span {display: inline-block; flex: 0 0 auto; padding-right: 2em; animation: 15s linear 0s infinite normal none running current-live-ticker;}
@keyframes current-live-ticker { 
  100% { transform: translateX(-100%); }
}
@media (max-height: 650px) {
.current-live-entrance-logo {width: 164px; margin-top: 8px;}
.current-live-service-tab {flex-basis: 62px; height: 62px;}
.current-live-service-tab img {max-height: 56px;}
.current-live-service-roma img {height: 54px;}
.current-live-entrance-heading {padding: 5px 3px; font-size: 12px;}
.current-live-service-panel > p {font-size: 8px;}
.current-live-service-panel > a {min-height: 32px; padding-block: 5px; font-size: 12px;}
}
@media (prefers-reduced-motion: reduce) {
.current-live-service-tab, .current-live-service-panel {transition: none;}
.current-live-entrance-ticker span {animation: auto ease 0s 1 normal none running none;}
}
html body.sense-entry-active .current-live-entrance.sense-entry-popup {font-family: "Noto Sans JP", "Noto Sans JP Fallback", "Hiragino Sans", "ヒラギノ角ゴシック ProN", "Hiragino Kaku Gothic ProN", "Yu Gothic", 游ゴシック, Meiryo, メイリオ, sans-serif !important;}
.current-live-entrance-top {flex-basis: calc(var(--current-live-vh, 1vh) * 50); height: calc(var(--current-live-vh, 1vh) * 50);}
.current-live-entrance-enter {padding: 12px 32px; font-family: inherit; font-size: 16px; font-weight: 500; line-height: 24px;}
.current-live-entrance-services {flex: 0 0 307px; height: 307px; min-height: 307px; background: transparent;}
.current-live-entrance-heading {margin: 8px 0px; padding: 0px; font-family: inherit; font-size: 14px; line-height: 20px; font-weight: 500 !important;}
.current-live-entrance-services > hr {height: 2px; border: 1px inset rgb(209, 213, 219); box-sizing: border-box;}
.current-live-entrance-switcher {flex: 0 0 240px; height: 240px;}
.current-live-entrance-tabs {background: rgb(47, 47, 47);}
.current-live-service-tab {display: block; padding: 0px; background-color: rgb(47, 47, 47);}
.current-live-service-tab > span {display: flex; align-items: center; justify-content: center; height: 100%; padding: 0px 20px 0px 16px; box-sizing: border-box;}
.current-live-service-tab img, .current-live-service-roma img {width: 100%; height: auto; max-height: none;}
.current-live-service-luce {background: rgb(47, 47, 47);}
.current-live-service-ink {background: rgb(249, 250, 251);}
.current-live-service-roma {background: linear-gradient(90deg, rgb(108, 144, 120), rgb(147, 181, 158));}
.current-live-entrance-panels {height: 240px;}
.current-live-service-panel > p {padding: 4px 16px; font-family: inherit; font-size: 10px; line-height: 15px; font-weight: 500 !important;}
.current-live-panel-luce > p, .current-live-panel-roma > p {color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important;}
.current-live-service-panel > a {min-height: 38px; padding: 8px 24px; font-family: inherit; font-size: 14px; font-weight: 500; line-height: 20px;}
.current-live-entrance-ticker {display: block; height: 29px; padding: 4px 16px; box-sizing: border-box; background: rgb(47, 47, 47); font-family: inherit; font-size: 10px; line-height: 15px; color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important; font-weight: 500 !important;}
.current-live-entrance-ticker span {color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important; opacity: 1 !important;}
@media (max-height: 650px) {
.current-live-entrance-logo {width: 192px; margin-top: 16px;}
.current-live-service-tab {height: 80px;}
.current-live-service-tab img, .current-live-service-roma img {width: 100%; height: auto; max-height: none;}
.current-live-entrance-heading {margin: 8px 0px; padding: 0px; font-size: 14px;}
.current-live-service-panel > p {font-size: 10px;}
.current-live-service-panel > a {min-height: 38px; padding: 8px 24px; font-size: 14px;}
}
