@charset "UTF-8";
/* ============================================================================
   店舗一覧ページ（2026）専用 — site/shop/index-2026.html
   Figma: pluseCASA「shop」node-id=42-44
   common-2026.css の後に読む（:root の色・.pc-wrap・.pc-cta・.pc-media を使う）
   ========================================================================= */

.pc-shoplist{padding-bottom:96px}
.pc-shoplist__sec{padding-top:40px}
.pc-shoplist__sec--online{padding-top:80px}

/* 見出し: 「Shop List」26px Bold ＋ 下に「店舗一覧」16px Medium（左寄せ） */
.pc-shoplist__h{font-size:26px;font-weight:700;line-height:1.3;color:#000}
.pc-shoplist__h span{display:block;margin-top:8px;font-size:16px;font-weight:500;line-height:1.4}

/* ── 店舗カード ─────────────────────────────────────────────────────────
   ★ボタン位置をそろえる仕組み（JSなし）
   ・グリッドの行は、その行でいちばん高いカードの高さになる（align-items:stretch が既定）
   ・カードは縦flex。ボタンに margin-top:auto を付けて、カードの下端に寄せる
   → 横に並んだカードのボタンは必ず同じ高さになる。行どうしの高さはそろえない。 */
.pc-shoplist__grid{margin-top:40px;display:grid;grid-template-columns:1fr;gap:56px 26px}
.pc-shoplist__grid > *{min-width:0}
.pc-shopcard{display:flex;flex-direction:column}
.pc-shopcard__link{display:block;color:inherit;text-decoration:none}
.pc-shopcard__media{aspect-ratio:309/247}
.pc-shopcard__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pc-shopcard__link:hover .pc-shopcard__media img{transform:scale(1.04)}
.pc-shopcard__name{display:block;margin-top:10px;font-size:20px;font-weight:600;line-height:1.2;color:var(--pc-bk1);word-break:auto-phrase}
.pc-shopcard__link:hover .pc-shopcard__name{color:var(--pc-gold)}
.pc-shopcard__addr{margin-top:10px;font-size:16px;font-weight:500;line-height:1.5;color:var(--pc-bksub)}
/* ボタン: Figma reservation-button（幅219・上下10・16px・字間8px） */
.pc-shopcard__cta{margin-top:auto}
.pc-shopcard__addr{margin-bottom:16px}
.pc-cta--sm{max-width:219px;min-height:0;padding:10px;font-size:16px;letter-spacing:8px;text-indent:8px;margin-left:auto;margin-right:auto}

/* ── オンラインショップ ──────────────────────────────────────────────── */
.pc-onlinestore{margin-top:40px;display:grid;grid-template-columns:1fr;gap:16px;list-style:none;padding:0}
.pc-onlinestore a{display:flex;align-items:center;justify-content:center;padding:10px 12px;min-height:56px;
  background:var(--pc-surface);border:1px solid #A7A4A1;color:var(--pc-bk1);
  font-size:20px;font-weight:500;line-height:1.3;text-decoration:none;transition:background .3s,border-color .3s}
.pc-onlinestore a:hover{background:#FFF;border-color:var(--pc-gold)}

@media (min-width:768px){
  .pc-shoplist__grid{grid-template-columns:repeat(2,1fr)}
  .pc-onlinestore{grid-template-columns:repeat(3,1fr);gap:21px}
}
@media (min-width:1024px){
  .pc-shoplist__sec{padding-top:56px}
  .pc-shoplist__sec--online{padding-top:150px}
  .pc-shoplist__grid{margin-top:64px;grid-template-columns:repeat(3,1fr);gap:80px 26px}
  .pc-onlinestore{margin-top:64px}
  .pc-onlinestore a{font-size:22px}
}
