.blog-shell,
.article-shell {
  background:
    radial-gradient(circle at 12% 8%, rgba(25, 165, 160, .08), transparent 28rem),
    var(--bg);
}

.blog-hero {
  max-width: 840px;
  padding-top: clamp(72px, 10vw, 128px);
  padding-bottom: var(--s7);
  text-align: center;
}
.blog-hero h1 {
  margin: var(--s3) 0;
  font-size: clamp(2.3rem, 6vw, 4.5rem);
  line-height: 1.08;
  letter-spacing: -.055em;
}
.blog-hero p {
  max-width: 660px;
  margin: 0 auto;
  color: var(--ink-2);
  font-size: var(--fs-lead);
  line-height: 1.8;
}
.blog-list-section { padding-top: 0; }
.article-category { padding-top: 0; margin-bottom: var(--s7); }
.article-category > h2 { margin: 0 0 var(--s4); font-size: clamp(1.55rem, 3vw, 2.1rem); letter-spacing: -.035em; }
.station-distance-ranking-index{padding:var(--s5);border:1px solid rgba(29,109,198,.25);border-radius:var(--r-l);background:linear-gradient(135deg,#f3f8fe,#fbfdff)}.station-distance-ranking-index>p{max-width:780px;margin:-.5rem 0 var(--s5);color:var(--ink-2);line-height:1.75}
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--s4);
}
.post-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--r-l);
  background: var(--surface);
  box-shadow: var(--sh-1);
  transition: transform .2s ease, box-shadow .2s ease;
}
.post-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--sh-2);
}
.post-card-link {
  display: flex;
  min-height: 100%;
  padding: var(--s5);
  color: inherit;
  flex-direction: column;
}
.post-keyword {
  display: inline-flex;
  align-self: flex-start;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(25, 165, 160, .1);
  color: var(--teal);
  font-size: var(--fs-tiny);
  font-weight: 800;
}
.post-card h2 {
  margin: var(--s4) 0 var(--s3);
  font-size: clamp(1.25rem, 2.2vw, 1.6rem);
  line-height: 1.35;
  letter-spacing: -.025em;
}
.post-card p {
  margin-bottom: var(--s4);
  color: var(--ink-2);
  line-height: 1.72;
}
.post-meta {
  color: var(--ink-3);
  font-size: var(--fs-tiny);
}
.post-more {
  margin-top: auto;
  padding-top: var(--s5);
  color: var(--ink);
  font-weight: 800;
}
.blog-game-banner {
  display: flex;
  margin-top: var(--s8);
  padding: var(--s6);
  border-radius: var(--r-l);
  background: var(--navy);
  color: #fff;
  align-items: center;
  justify-content: space-between;
  gap: var(--s5);
}
.blog-game-banner h2 { margin: var(--s2) 0; }
.blog-game-banner p { color: rgba(255,255,255,.7); }

.blog-list-ad { margin: 0 auto var(--s8); text-align: center; min-height: 90px; }

.article-ad { max-width: 720px; margin: var(--s6) auto; text-align: center; min-height: 90px; }
.article-game-route-table { overflow-x: auto; margin: var(--s4) 0; border: 1px solid var(--line); border-radius: var(--r-s); }
.article-game-route-table table { width: 100%; border-collapse: collapse; font-size: var(--fs-small); }
.article-game-route-table caption { padding: 12px; text-align: left; font-weight: 800; }
.article-game-route-table th, .article-game-route-table td { padding: 12px; text-align: left; border-top: 1px solid var(--line); vertical-align: top; }
.article-game-route-table thead { background: var(--surface-2); }
.article-game-route-table a { display: inline-block; min-width: 80px; padding: 8px 0; color: var(--blue); font-weight: 800; }
.article-game-sequence { padding: 12px; border: 1px solid var(--line); border-radius: var(--r-s); }
.article-game-sequence summary { cursor: pointer; font-weight: 800; }
.article-game-sequence ol { columns: 2; margin-top: 16px; }
.article-game-sequence li { break-inside: avoid; }
@media (max-width: 640px) {
  .article-game-route-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .article-game-route-table tbody tr { display: grid; grid-template-columns: 1fr auto; padding: 12px; border-top: 1px solid var(--line); }
  .article-game-route-table tbody th, .article-game-route-table tbody td { border: 0; padding: 6px 0; }
  .article-game-route-table td[data-label]::before { content: attr(data-label) ': '; color: var(--ink-2); }
  .article-game-route-table tbody td:nth-child(n+3) { grid-column: 1 / -1; }
  .article-game-route-table a { display: block; padding: 10px; background: var(--surface-2); border-radius: var(--r-s); text-align: center; }
  .article-game-sequence ol { columns: 1; }
}

.article {
  max-width: 920px;
  padding-top: var(--s7);
}
.article-back { margin-bottom: var(--s6); }
.article-back a { color: var(--ink-2); font-weight: 700; }
.article-head {
  max-width: 790px;
  margin: 0 auto var(--s6);
  text-align: center;
}
.article-head .post-keyword { align-self: auto; }
.article-head h1 {
  margin: var(--s4) 0;
  font-size: clamp(2.15rem, 5.5vw, 4rem);
  line-height: 1.15;
  letter-spacing: -.05em;
}
.article-lead {
  color: var(--ink-2);
  font-size: var(--fs-lead);
  line-height: 1.75;
}
.article-head .post-meta { margin-top: var(--s4); }
.article-cover {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--line);
  border-radius: var(--r-l);
  box-shadow: var(--sh-2);
}
.article-cover--card {
  display: grid;
  max-width: 520px;
  max-height: 460px;
  margin: 0 auto;
  padding: var(--s4);
  place-items: center;
  background: linear-gradient(145deg, #eef7fb, #fff);
}
.article-cover--card img {
  display: block;
  max-width: 100%;
  max-height: 390px;
  width: auto;
  height: auto;
  object-fit: contain;
}
.article-body {
  max-width: 720px;
  margin: var(--s7) auto;
}
.article-body p,
.article-body li {
  color: var(--ink-2);
  font-size: 1.06rem;
  line-height: 1.95;
}
.article-intro {
  padding-bottom: var(--s6);
  border-bottom: 1px solid var(--line);
  color: var(--ink) !important;
  font-size: 1.2rem !important;
  font-weight: 600;
}
.article-game-start { margin: var(--s4) 0 0; }
.article-body section { padding: var(--s6) 0 0; }
/* Card padding must win over the general article section spacing. */
.article-body .article-locker-summary,
.article-body .article-locker-record {
  padding: clamp(22px, 4vw, 32px);
  margin-top: 28px;
}
.article-body .article-locker-records { padding-top: 32px; }
.article-locker-record > header { flex-wrap: wrap; gap: 12px; }
.article-body h2 {
  margin-bottom: var(--s3);
  font-size: clamp(1.5rem, 3vw, 2rem);
  line-height: 1.35;
  letter-spacing: -.03em;
}
.article-body p + p { margin-top: var(--s3); }
.article-dotheg-note { padding:var(--s5) !important; border:1px solid rgba(29,109,198,.24); border-radius:var(--r-l); background:#f4f8ff; }
.article-dotheg-note h2 { margin-bottom:var(--s2); font-size:clamp(1.25rem,2.5vw,1.6rem); }
.article-dotheg-note a { color:var(--blue); font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.article-dotheg-card { display:flex; align-items:center; justify-content:space-between; gap:var(--s5); margin-top:var(--s6); padding:var(--s5); border:1px solid rgba(29,109,198,.28); border-radius:var(--r-l); background:linear-gradient(135deg,#edf5ff,#f8fbff); }
.article-dotheg-card > div:first-child { max-width:500px; }
.article-dotheg-card p { margin-bottom:var(--s1); color:var(--blue); font-size:11px; font-weight:850; letter-spacing:.08em; }
.article-dotheg-card h2 { margin-bottom:var(--s2); color:var(--navy); font-size:clamp(1.25rem,2.5vw,1.6rem); }
.article-dotheg-card span { color:var(--ink-2); font-size:var(--fs-small); line-height:1.65; }
.article-app-card { display:flex; align-items:center; justify-content:space-between; gap:var(--s5); margin-top:var(--s6); padding:var(--s5); border:1px solid rgba(25,165,160,.3); border-radius:var(--r-l); background:linear-gradient(135deg,#eefaf8,#f8fcfb); }
.article-app-card > div:first-child { max-width:500px; }
.article-app-card p { margin-bottom:var(--s1); color:var(--teal); font-size:11px; font-weight:850; letter-spacing:.08em; }
.article-app-card h2 { margin-bottom:var(--s2); color:var(--navy); font-size:clamp(1.25rem,2.5vw,1.6rem); }
.article-app-card span { color:var(--ink-2); font-size:var(--fs-small); line-height:1.65; }
.article-app-download-link a { color:var(--teal); font-weight:850; text-decoration:underline; text-underline-offset:3px; }
.congestion-article-index > p { max-width: 760px; color: var(--ink-2); }.congestion-article-index > label { display:block; margin-top:var(--s4); font-size:var(--fs-small); font-weight:700; }.congestion-article-index > input { width:100%; margin-top:var(--s2); padding:12px 14px; border:1px solid var(--line-strong); border-radius:var(--r-s); font:inherit; }.congestion-article-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:var(--s2); max-height:580px; overflow:auto; margin-top:var(--s4); }.congestion-article-grid article { padding:var(--s3); border:1px solid var(--line); border-radius:var(--r-s); background:var(--surface); }.congestion-article-grid span { color:var(--ink-3); font-size:11px; }.congestion-article-grid h3 { margin:4px 0 var(--s2); font-size:16px; }.congestion-article-grid a { display:block; color:var(--blue); font-size:var(--fs-small); font-weight:700; }.congestion-article-times { display:flex; flex-wrap:wrap; gap:var(--s1) var(--s2); margin-bottom:var(--s2); }.congestion-article-times a { display:inline; }.congestion-article-grid article > a { color:var(--ink-2); }
.toilet-article-index > p { max-width: 760px; color: var(--ink-2); }.toilet-article-index > label { display:block; margin-top:var(--s4); font-size:var(--fs-small); font-weight:700; }.toilet-article-index > input { width:100%; margin-top:var(--s2); padding:12px 14px; border:1px solid var(--line-strong); border-radius:var(--r-s); font:inherit; }.toilet-article-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:var(--s2); max-height:620px; overflow:auto; margin-top:var(--s4); }.toilet-article-grid article { padding:var(--s3); border:1px solid var(--line); border-radius:var(--r-s); background:var(--surface); }.toilet-article-grid article[hidden] { display:none; }.toilet-article-grid span { color:var(--ink-3); font-size:11px; }.toilet-article-grid h3 { margin:5px 0 var(--s2); font-size:15px; line-height:1.45; letter-spacing:-.02em; }.toilet-article-grid h3 a { color:var(--navy); }.toilet-article-grid article > a { color:var(--blue); font-size:var(--fs-small); font-weight:700; }
.station-distance-article-index{padding:var(--s5);border:1px solid rgba(29,109,198,.25);border-radius:var(--r-l);background:linear-gradient(135deg,#f3f8fe,#fbfdff)}.station-distance-article-index>h2{margin-bottom:var(--s3)}.station-distance-article-index>p{max-width:760px;color:var(--ink-2);line-height:1.75}.station-distance-article-form{display:grid;grid-template-columns:1fr 1.3fr 1.3fr auto;gap:var(--s3);align-items:end;margin-top:var(--s5)}.station-distance-article-form label{display:grid;gap:var(--s2);color:var(--ink);font-size:var(--fs-small);font-weight:800}.station-distance-article-form select{width:100%;min-width:0;padding:12px 13px;border:1px solid var(--line-strong);border-radius:var(--r-s);background:var(--surface);color:var(--ink);font:inherit}.station-distance-article-form button{min-height:46px;padding:11px 16px;border:0;border-radius:var(--r-s);background:var(--blue);color:#fff;font:inherit;font-weight:800;cursor:pointer}.station-distance-article-form button:hover{background:#155b9f}.station-distance-article-note{margin-top:var(--s4);font-size:var(--fs-small)!important}.station-distance-article-note a{color:var(--blue);font-weight:800}
.article-congestion-data { padding: var(--s5); border: 1px solid rgba(29, 109, 198, .24); border-radius: var(--r-l); background: #f4f8ff; }
.article-congestion-data > p { color: var(--ink-2); }
.article-congestion-table-wrap { margin-top: var(--s4); overflow-x: auto; border: 1px solid var(--line); border-radius: var(--r-s); background: var(--surface); }
.article-congestion-table-wrap table { width: 100%; min-width: 650px; border-collapse: collapse; font-size: var(--fs-small); }
.article-congestion-table-wrap th, .article-congestion-table-wrap td { padding: 10px 12px; border-bottom: 1px solid var(--line); text-align: center; white-space: nowrap; }
.article-congestion-table-wrap thead th { background: var(--surface-2); color: var(--ink-2); font-size: var(--fs-tiny); }
.article-congestion-table-wrap tbody th { text-align: left; color: var(--navy); }
.article-congestion-link { margin-top: var(--s4); }.article-congestion-link a { color: var(--blue); font-weight: 800; }
.article-congestion-hours > div { display: flex; flex-wrap: wrap; gap: var(--s2); margin-top: var(--s3); }.article-congestion-hours a { padding: 7px 11px; border: 1px solid var(--line); border-radius: var(--r-pill); background: var(--surface); color: var(--blue); font-size: var(--fs-small); font-weight: 700; }.article-congestion-hours a[aria-current="page"] { background: var(--blue); border-color: var(--blue); color: #fff; }
.article-toilet-summary { padding:var(--s5); border:1px solid rgba(25,165,160,.28); border-radius:var(--r-l); background:rgba(25,165,160,.055); }.article-toilet-summary > p { color:var(--ink-2); }.article-toilet-summary-grid,.article-toilet-info-grid { display:grid; gap:1px; overflow:hidden; margin-top:var(--s4); border:1px solid var(--line); border-radius:var(--r-m); background:var(--line); }.article-toilet-summary-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }.article-toilet-summary-grid div,.article-toilet-info-grid > div { min-width:0; padding:var(--s3) var(--s4); background:var(--surface); }.article-toilet-summary-grid dt,.article-toilet-info-grid dt { color:var(--ink-3); font-size:11px; font-weight:750; }.article-toilet-summary-grid dd,.article-toilet-info-grid dd { margin-top:4px; overflow-wrap:anywhere; color:var(--ink); font-size:14px; font-weight:700; line-height:1.5; }.article-toilet-records > h2 { margin-bottom:var(--s4); }.article-toilet-record { padding:var(--s5); border:1px solid var(--line); border-radius:var(--r-l); background:var(--surface); box-shadow:var(--sh-1); }.article-toilet-record + .article-toilet-record { margin-top:var(--s4); }.article-toilet-record > header { display:flex; align-items:baseline; gap:var(--s3); padding-bottom:var(--s3); border-bottom:1px solid var(--line); }.article-toilet-record > header span { flex:none; padding:4px 8px; border-radius:var(--r-pill); background:#e8f1fb; color:var(--blue); font-size:11px; font-weight:800; }.article-toilet-record > header h3 { margin:0; color:var(--navy); font-size:18px; }.article-toilet-record h4 { margin:var(--s5) 0 var(--s2); color:var(--navy); font-size:16px; }.article-toilet-info-grid { grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:0; }.article-toilet-wide { grid-column:1 / -1; }.article-toilet-fixtures { display:grid; grid-template-columns:1fr 1fr; gap:var(--s3); }.article-toilet-fixtures > section { overflow:hidden; padding:0 !important; border:1px solid var(--line); border-radius:var(--r-m); background:var(--surface); }.article-toilet-fixtures h5 { padding:11px var(--s4); border-bottom:1px solid var(--line); background:var(--surface-2); color:var(--navy); font-size:14px; }.article-toilet-fixtures dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.article-toilet-fixtures dl div { display:flex; justify-content:space-between; gap:var(--s2); padding:10px var(--s4); border-bottom:1px solid var(--line); }.article-toilet-fixtures dt { color:var(--ink-2); font-size:12px; }.article-toilet-fixtures dd { flex:none; color:var(--navy); font-size:13px; font-weight:800; }.article-toilet-diaper-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.article-locker-summary { padding:var(--s5); border:1px solid rgba(29,109,198,.24); border-radius:var(--r-l); background:#f4f8ff; }.article-locker-summary > p { color:var(--ink-2); }.article-locker-summary dl,.article-locker-record dl { display:grid; gap:1px; overflow:hidden; margin-top:var(--s4); border:1px solid var(--line); border-radius:var(--r-m); background:var(--line); }.article-locker-summary dl { grid-template-columns:repeat(3,minmax(0,1fr)); }.article-locker-summary dl div,.article-locker-record dl div { min-width:0; padding:var(--s3) var(--s4); background:var(--surface); }.article-locker-summary dt,.article-locker-record dt { color:var(--ink-3); font-size:11px; font-weight:750; }.article-locker-summary dd,.article-locker-record dd { margin-top:4px; overflow-wrap:anywhere; color:var(--ink); font-size:14px; font-weight:700; line-height:1.5; }.article-locker-records > h2 { margin-bottom:var(--s4); }.article-locker-record { padding:var(--s5); border:1px solid var(--line); border-radius:var(--r-l); background:var(--surface); box-shadow:var(--sh-1); }.article-locker-record + .article-locker-record { margin-top:var(--s4); }.article-locker-record > header { display:flex; align-items:baseline; gap:var(--s3); padding-bottom:var(--s3); border-bottom:1px solid var(--line); }.article-locker-record > header span { flex:none; padding:4px 8px; border-radius:var(--r-pill); background:#e8f1fb; color:var(--blue); font-size:11px; font-weight:800; }.article-locker-record > header h3 { margin:0; color:var(--navy); font-size:18px; }.article-locker-record dl { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:var(--s4); }.article-locker-wide { grid-column:1 / -1; }.article-locker-page-link { margin-top:var(--s4); }.article-locker-page-link a { color:var(--blue); font-weight:800; }
.article-station-address-summary{margin:var(--s6) 0;padding:var(--s5);border:1px solid rgba(25,165,160,.28);border-radius:var(--r-l);background:rgba(25,165,160,.055)}.article-station-address-summary>p{color:var(--ink-2)}.article-station-address-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;margin-top:var(--s4);border:1px solid var(--line);border-radius:var(--r-m);background:var(--line)}.article-station-address-summary dl>div{min-width:0;padding:var(--s3) var(--s4);background:var(--surface)}.article-station-address-summary dt{color:var(--ink-3);font-size:11px;font-weight:750}.article-station-address-summary dd{margin-top:4px;overflow-wrap:anywhere;color:var(--ink);font-size:14px;font-weight:700;line-height:1.5}.article-station-address-summary dd a,.article-station-address-link a,.article-station-address-related a{color:var(--blue);font-weight:800}.article-station-address-wide{grid-column:1/-1}.article-station-address-link{margin-top:var(--s4)}.article-station-address-related{margin:var(--s6) 0;padding:var(--s5);border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface-2)}.article-station-address-related h2{margin:0}.article-station-address-related p{margin:var(--s3) 0;color:var(--ink-2)}.article-station-address-related ul{display:grid;gap:var(--s2);margin:0;padding-left:1.2em}
.article-first-last-train-summary{margin:var(--s6) 0;padding:var(--s5)!important;border:1px solid #bbd7f4;border-radius:var(--r-l);background:#f3f8fe}.article-first-last-train-summary>p{color:var(--ink-2);font-size:var(--fs-small)!important}.article-first-last-train-table-wrap{overflow-x:auto;margin-top:var(--s4);border:1px solid var(--line);border-radius:var(--r-m);background:var(--surface)}.article-first-last-train-table-wrap table{width:100%;min-width:620px;border-collapse:collapse;text-align:left}.article-first-last-train-table-wrap th,.article-first-last-train-table-wrap td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.article-first-last-train-table-wrap thead th{background:#e8f1fb;color:var(--ink-2);font-size:12px}.article-first-last-train-table-wrap tbody tr:last-child th,.article-first-last-train-table-wrap tbody tr:last-child td{border-bottom:0}.article-first-last-train-table-wrap tbody th{color:var(--navy);font-size:var(--fs-small)}.article-first-last-train-table-wrap td{color:var(--ink-2);font-size:var(--fs-small)}.article-first-last-train-table-wrap time{display:block;color:var(--navy);font-size:16px;font-weight:850}.article-first-last-train-table-wrap span{display:block;margin-top:4px;font-size:12px;line-height:1.5}.article-first-last-train-note{margin-top:var(--s3);font-size:var(--fs-small)!important;line-height:1.7!important}.article-first-last-train-related{margin:var(--s6) 0}.article-first-last-train-related>div,.first-last-train-article-links{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s3)}.article-first-last-train-related a,.first-last-train-article-links a{padding:7px 10px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--blue);font-size:12px;font-weight:800}.first-last-train-article-links{margin-top:var(--s3)}
.article-body ul {
  margin-top: var(--s3);
  padding-left: 1.4em;
}
.article-body ol { margin-top: var(--s3); padding-left: 1.5em; }
.article-transfer-guide {
  margin-top: var(--s6);
  padding: var(--s5);
  border: 1px solid rgba(25, 165, 160, .25);
  border-radius: var(--r-l);
  background: rgba(25, 165, 160, .055);
}
.article-transfer-guide > h2 { margin-bottom: var(--s3); }
.transfer-step { padding-top: var(--s5); }
.transfer-step + .transfer-step { border-top: 1px solid rgba(25, 165, 160, .18); margin-top: var(--s5); }
.transfer-step h3 { margin-bottom: var(--s2); font-size: 1.17rem; }
.article-body li + li { margin-top: var(--s2); }
.article-faq details {
  padding: var(--s4) 0;
  border-bottom: 1px solid var(--line);
}
.article-faq summary { cursor: pointer; color: var(--ink); font-weight: 800; line-height: 1.55; }
.article-faq details p { margin: var(--s3) 0 0; }
.article-sources a { color: var(--teal); font-weight: 700; }
.article-cta {
  display: flex;
  padding: var(--s6);
  border-radius: var(--r-l);
  background: linear-gradient(135deg, var(--navy), #293a68);
  color: #fff;
  align-items: center;
  justify-content: space-between;
  gap: var(--s5);
}
.article-cta h2 { margin-bottom: var(--s2); }
.article-cta p { color: rgba(255,255,255,.72); }
.article-store-links { display: flex; gap: var(--s2); flex-wrap: wrap; justify-content: flex-end; }
.article-store-links .btn { padding-inline: 19px; white-space: nowrap; }
.btn--store-play { background: #fff; color: var(--navy); box-shadow: var(--sh-1); }
.btn--store-play:hover { background: #f0f2f7; box-shadow: var(--sh-2); }
.related-posts { padding-bottom: 0; }
.related-posts h2 { margin-bottom: var(--s4); }
.related-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--s3);
}
.related-links a {
  padding: var(--s4);
  border: 1px solid var(--line);
  border-radius: var(--r-m);
  background: var(--surface);
  color: var(--ink);
  font-weight: 700;
  line-height: 1.5;
}

.article-fast-exit-summary{margin:var(--s6) 0;padding:var(--s5);border:1px solid #b9dfd2;border-radius:var(--r-l);background:#f1faf7}.article-fast-exit-summary h2,.article-fast-exit-lines>h2{color:var(--navy)}.article-fast-exit-summary>p{margin-top:var(--s2);color:var(--ink-2)}.article-fast-exit-summary dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;overflow:hidden;margin-top:var(--s4);border:1px solid var(--line);border-radius:var(--r-m);background:var(--line)}.article-fast-exit-summary dl>div{padding:var(--s3);background:var(--surface)}.article-fast-exit-summary dt{color:var(--ink-3);font-size:11px;font-weight:750}.article-fast-exit-summary dd{margin-top:4px;color:var(--navy);font-size:14px;font-weight:800}.article-fast-exit-lines{margin:var(--s6) 0}.article-fast-exit-line{margin-top:var(--s4);overflow:hidden;border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface)}.article-fast-exit-line>header{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s4);background:#f1faf7}.article-fast-exit-line>header h3{margin:0;font-size:19px}.article-fast-exit-line>header span{color:var(--ink-3);font-size:12px;font-weight:750}.article-fast-exit-direction{padding:var(--s4)}.article-fast-exit-direction+.article-fast-exit-direction{border-top:1px solid var(--line)}.article-fast-exit-direction h4{margin:0 0 var(--s3);font-size:16px}.article-fast-exit-direction>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2)}.article-fast-exit-point{padding:var(--s3);border:1px solid var(--line);border-left:4px solid #7a8795;border-radius:var(--r-s)}.article-fast-exit-point--elevator{border-left-color:#0b7a55}.article-fast-exit-point--escalator{border-left-color:#1769aa}.article-fast-exit-point>span{display:block;color:var(--ink-3);font-size:11px;font-weight:800}.article-fast-exit-point strong{display:block;margin-top:3px;color:var(--navy);font-size:15px}.article-fast-exit-point small{font-size:11px}.article-fast-exit-point p{margin-top:5px;color:var(--ink-3);font-size:12px;line-height:1.5}.article-fast-exit-link{margin-top:var(--s3);font-weight:800}.article-fast-exit-link a{color:#0b7a55}

@media (max-width: 760px) {
  .blog-grid { grid-template-columns: 1fr; }
  .blog-game-banner,
  .article-cta,
  .article-dotheg-card,
  .article-app-card {
    flex-direction: column;
    align-items: flex-start;
  }
  .article-store-links { width: 100%; justify-content: flex-start; }
  .related-links { grid-template-columns: 1fr; }
  .article { padding-top: var(--s5); }
  .article-toilet-summary-grid,.article-toilet-info-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.article-toilet-diaper-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.article-toilet-fixtures { grid-template-columns:1fr; }
  .article-locker-summary dl,.article-locker-record dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .article-station-address-summary dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .article-fast-exit-summary dl { grid-template-columns:repeat(2,minmax(0,1fr)); }.article-fast-exit-direction>div { grid-template-columns:1fr; }
  .station-distance-article-form{grid-template-columns:1fr 1fr}.station-distance-article-form button{grid-column:1/-1}
}

@media (max-width: 520px) {
  .article-toilet-record { padding:var(--s4); }.article-toilet-summary-grid,.article-toilet-info-grid,.article-toilet-diaper-grid { grid-template-columns:1fr; }.article-toilet-wide { grid-column:auto; }.article-toilet-fixtures dl { grid-template-columns:1fr; }
  .article-locker-record { padding:var(--s4); }.article-locker-summary dl,.article-locker-record dl { grid-template-columns:1fr; }.article-locker-wide { grid-column:auto; }
  .article-station-address-summary { padding:var(--s4); }.article-station-address-summary dl { grid-template-columns:1fr; }.article-station-address-wide { grid-column:auto; }
  .article-fast-exit-summary { padding:var(--s4); }.article-fast-exit-summary dl { grid-template-columns:1fr; }
  .station-distance-article-index{padding:var(--s4)}.station-distance-article-form{grid-template-columns:1fr}
}
.article-wheelchair-lift-summary{margin:var(--s6) 0;padding:var(--s5);border:1px solid rgba(25,165,160,.28);border-radius:var(--r-l);background:#f1faf7}.article-wheelchair-lift-summary>p{color:var(--ink-2)}.article-wheelchair-lift-summary dl,.article-wheelchair-lift-record dl{display:grid;gap:1px;overflow:hidden;margin-top:var(--s4);border:1px solid var(--line);border-radius:var(--r-m);background:var(--line)}.article-wheelchair-lift-summary dl{grid-template-columns:repeat(3,minmax(0,1fr))}.article-wheelchair-lift-summary dl div,.article-wheelchair-lift-record dl div{min-width:0;padding:var(--s3) var(--s4);background:var(--surface)}.article-wheelchair-lift-summary dt,.article-wheelchair-lift-record dt{color:var(--ink-3);font-size:11px;font-weight:750}.article-wheelchair-lift-summary dd,.article-wheelchair-lift-record dd{margin-top:4px;overflow-wrap:anywhere;color:var(--ink);font-size:14px;font-weight:700;line-height:1.5}.article-wheelchair-lift-records>h2{margin-bottom:var(--s4)}.article-wheelchair-lift-record{padding:var(--s5);border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface);box-shadow:var(--sh-1)}.article-wheelchair-lift-record+.article-wheelchair-lift-record{margin-top:var(--s4)}.article-wheelchair-lift-record>header{display:flex;align-items:baseline;gap:var(--s3);padding-bottom:var(--s3);border-bottom:1px solid var(--line)}.article-wheelchair-lift-record>header span{flex:none;padding:4px 8px;border-radius:var(--r-pill);background:#e2f5f2;color:#087b74;font-size:11px;font-weight:800}.article-wheelchair-lift-record>header h3{margin:0;color:var(--navy);font-size:18px}.article-wheelchair-lift-record dl{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--s4)}.article-wheelchair-lift-wide{grid-column:1/-1}.article-wheelchair-lift-page-link{margin-top:var(--s4)}.article-wheelchair-lift-page-link a{color:#087b74;font-weight:800}@media (max-width:760px){.article-wheelchair-lift-summary dl,.article-wheelchair-lift-record dl{grid-template-columns:repeat(2,minmax(0,1fr)}}@media (max-width:520px){.article-wheelchair-lift-summary{padding:var(--s4)}.article-wheelchair-lift-record{padding:var(--s4)}.article-wheelchair-lift-summary dl,.article-wheelchair-lift-record dl{grid-template-columns:1fr}.article-wheelchair-lift-wide{grid-column:auto}}
.article-busan-schedule-summary{margin:var(--s6) 0;padding:var(--s5)!important;border:1px solid #bbd7f4;border-radius:var(--r-l);background:#f3f8fe}.article-busan-schedule-summary>p{color:var(--ink-2);font-size:var(--fs-small)!important}.article-busan-schedule-groups{margin-top:var(--s4);display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-m);background:var(--line)}.article-busan-schedule-group{background:var(--surface)}.article-busan-schedule-group summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);cursor:pointer;list-style:none}.article-busan-schedule-group summary::-webkit-details-marker{display:none}.article-busan-schedule-day{flex:none;padding:3px 8px;border-radius:var(--r-pill);background:var(--navy);color:#fff;font-size:11px;font-weight:800}.article-busan-schedule-dest{flex:1;min-width:0;color:var(--navy);font-weight:800;font-size:15px}.article-busan-schedule-meta{flex:none;color:var(--ink-3);font-size:12px}.article-busan-schedule-time-wrap{max-height:320px;overflow-y:auto;padding:0 var(--s4) var(--s3);background:var(--surface-2)}.article-busan-schedule-time-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;padding-top:var(--s3)}.article-busan-schedule-time-list li{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--surface);font-size:12px}.article-busan-schedule-time-list time{font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}.article-busan-schedule-train-no{color:var(--ink-3);font-size:10px}.article-busan-schedule-note{margin-top:var(--s3);font-size:var(--fs-small)!important;line-height:1.7!important}
