/* ゆいレール路線地図（このサイト専用） */
.etrs{
  --etrs-ink:#1d272d;--etrs-sub:#4b5963;--etrs-line:#dde2e6;--etrs-paper:#fff;--etrs-wash:#f3f6f7;
  --etrs-sea:#04384c;--etrs-sea-2:#0a4d66;--etrs-foam:#cfe5ec;--etrs-sun:#b5400c;--etrs-sun-wash:#fff2ea;--etrs-focus:#1176d4;
  container-type:inline-size;position:relative;isolation:isolate;margin:32px 0;
  background:var(--etrs-paper);color:var(--etrs-ink);border:1px solid var(--etrs-line);border-radius:16px;
  box-shadow:0 1px 2px rgba(4,56,76,.06),0 8px 24px rgba(4,56,76,.06);
  font-size:16px;line-height:1.7;letter-spacing:.02em;overflow:hidden;overflow:clip;overflow-wrap:anywhere;
}
.etrs *,.etrs *::before,.etrs *::after{box-sizing:border-box}
.etrs p{margin:0}
.etrs a{color:var(--etrs-sea-2);text-decoration:underline;text-underline-offset:.2em}
.etrs button{font:inherit;letter-spacing:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.etrs :focus-visible{outline:2px solid var(--etrs-focus);outline-offset:2px}

.etrs__head{padding:24px;background:
  radial-gradient(120% 140% at 100% 0%,rgba(255,255,255,.10) 0,rgba(255,255,255,0) 55%),
  linear-gradient(160deg,var(--etrs-sea) 0%,#062c3c 100%);color:#fff}
.etrs__eyebrow{font-size:14px;line-height:1.3;font-weight:700;letter-spacing:.12em;color:var(--etrs-foam)}
.etrs__title{margin-top:8px !important;font-size:22px;line-height:1.4;font-weight:700;font-feature-settings:"palt";
  text-wrap:balance;word-break:auto-phrase;color:#fff}

.etrs__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:16px}
.etrs__mapwrap{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--etrs-line);background:var(--etrs-wash);z-index:0}
.etrs__mapwrap{scroll-margin-top:72px}
.etrs__map{width:100%;aspect-ratio:3/2;min-height:240px;background:var(--etrs-wash);z-index:0}
.etrs__side{min-width:0;display:flex;flex-direction:column}
.etrs__status{padding:0 8px 8px;font-size:14px;line-height:1.5;color:var(--etrs-sub)}

.etrs .etrs__list,.post_content .etrs .etrs__list{list-style:none !important;margin:0 !important;padding:0 !important;border-top:1px solid var(--etrs-line)}
.etrs .etrs__list>li,.post_content .etrs .etrs__list>li{margin:0 !important;padding:0 !important;list-style:none !important;border-bottom:1px solid var(--etrs-line)}
.etrs .etrs__row{
  display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;align-items:center;gap:0 12px;
  width:100%;min-height:44px;margin:0;padding:4px 8px;border:0;background:transparent;color:var(--etrs-ink);
  text-align:left;font-size:16px;line-height:1.3;border-radius:0;box-shadow:none;
  transition:background-color .2s ease;
}
.etrs .etrs__row:hover{background:var(--etrs-wash)}
.etrs .etrs__row[aria-pressed="true"]{background:var(--etrs-sun-wash);box-shadow:inset 4px 0 0 var(--etrs-sun)}
.etrs__no{font-size:14px;font-weight:700;color:var(--etrs-sub);font-variant-numeric:tabular-nums;text-align:center}
.etrs__nm{font-weight:700;min-width:0}
.etrs__min,.etrs__yen{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.etrs__min{font-weight:700;min-width:3.2em}
.etrs__yen{min-width:3.6em;color:var(--etrs-sub)}
.etrs__start{grid-column:3 / 5;font-size:14px;font-weight:700;color:var(--etrs-sun);text-align:right}

.etrs__foot{padding:0 24px 24px;display:flex;flex-direction:column;gap:8px}
.etrs__note{font-size:14px;line-height:1.7;color:var(--etrs-sub)}
.etrs__src{font-size:14px;line-height:1.7;color:var(--etrs-sub)}

/* 地図の部品 */
.etrs .leaflet-container{font:inherit;font-size:14px;background:var(--etrs-wash)}
.etrs .leaflet-control-attribution{font-size:14px;line-height:1.4}
.etrs .leaflet-control-zoom a{width:44px;height:44px;line-height:44px;font-size:22px}
.etrs-st{background:none;border:0;overflow:visible !important}
.etrs-st__dot{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;
  background:#fff;border:3px solid var(--etrs-sea);box-shadow:0 0 0 2px #fff;transition:transform .2s ease,background-color .2s ease}
.etrs-st.has-fare .etrs-st__dot{background:var(--etrs-sea)}
.etrs-st.is-on .etrs-st__dot{transform:scale(1.5);background:var(--etrs-sun);border-color:var(--etrs-sun)}
.etrs-st.is-start .etrs-st__dot{width:20px;height:20px;margin:-10px 0 0 -10px;background:var(--etrs-sun);border-color:#fff;box-shadow:0 0 0 3px var(--etrs-sun)}
.etrs-st__tag{position:absolute;left:-8px;top:18px;white-space:nowrap;padding:0 8px;border-radius:8px;
  background:var(--etrs-sun);color:#fff;font-size:14px;line-height:24px;font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.25);pointer-events:none}
.etrs .leaflet-popup-content-wrapper{border-radius:12px;color:var(--etrs-ink)}
.etrs .leaflet-popup-content{margin:8px 16px;font-size:14px;line-height:1.5;font-weight:700;white-space:nowrap}
.etrs .leaflet-popup-content span{font-weight:400;color:var(--etrs-sub);margin-left:.5em}

@container (min-width:720px){
  .etrs__grid{grid-template-columns:minmax(0,3fr) minmax(280px,2fr);align-items:start}
  .etrs__mapwrap{position:sticky;top:88px}
  .etrs__map{aspect-ratio:auto;height:min(560px,calc(100vh - 120px));min-height:360px}
}
@media (prefers-reduced-motion:reduce){
  .etrs *,.etrs *::before,.etrs *::after{transition:none !important;animation:none !important}
}
