/* stores.html（店舗一覧）専用スタイル
   共通の骨格・部品は base.css。ここは .p-stores- 接頭辞のみ */

/* ---------- 店舗の節（写真｜情報） ---------- */
.p-stores-media img {
  width: 100%; height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}
.p-stores-info { margin-top: 32px; }
.p-stores-info .t-h2 { margin-bottom: 24px; }
@media (min-width: 768px) {
  .p-stores-media { grid-column: 1 / 12; }
  .p-stores-info { grid-column: 13 / 24; margin-top: 0; }
  .p-stores-store--rev .p-stores-media { grid-column: 13 / 24; }
  .p-stores-store--rev .p-stores-info { grid-column: 1 / 12; }
}

/* ---------- 道順の簡略図 ---------- */
.p-stores-map-wrap { margin-top: 32px; }
.p-stores-map {
  width: 100%; height: auto;
  color: var(--ink);
}
@media (min-width: 768px) {
  .p-stores-map { max-width: 460px; }
}
.p-stores-map text {
  font-family: var(--f-sans); font-size: 12px; fill: var(--ink);
}
.p-stores-map__line,
.p-stores-map__route {
  fill: none; stroke: var(--ink); stroke-width: 1;
}
.p-stores-map__route { stroke-dasharray: 3 3; stroke-linecap: round; }
.p-stores-map__bldg { fill: var(--mist); stroke: var(--ink); stroke-width: 1; }
.p-stores-map__landmark { fill: var(--taupe-2); stroke: var(--ink); stroke-width: 1; }
.p-stores-map__solid { fill: var(--ink); stroke: none; }
.p-stores-map-note { margin-top: 10px; }

.p-stores-info .c-btn { margin-top: 32px; }

/* ---------- 出張・宅配 ---------- */
.p-stores-visit { display: grid; gap: 40px; margin-top: 32px; }
@media (min-width: 768px) {
  .p-stores-visit { grid-template-columns: repeat(23, minmax(0, 1fr)); gap: 0; }
  .p-stores-visit__col:nth-child(1) { grid-column: 1 / 11; }
  .p-stores-visit__col:nth-child(2) { grid-column: 13 / 23; }
}
.p-stores-visit__col .t-h4 { margin-bottom: 12px; }
.p-stores-visit__col .c-link { margin-top: 16px; }
