/* ===== store detail page ===== */
.store-hero{max-width:1100px;margin:6px auto 0;padding:0 24px;position:relative;z-index:1}
.store-hero__img{aspect-ratio:16/7.6;border-radius:12px;overflow:hidden;background:#e7e4de}
.store-hero__img img{width:100%;height:100%;object-fit:cover;display:block}

.store-head{max-width:1100px;margin:0 auto;padding:34px 24px 0;text-align:center}
.store-head__name{font-size:26px;font-weight:700;line-height:1.5}
.store-head__sns{margin-top:12px;font-size:13px;color:#555;letter-spacing:.04em}
.store-head__sns a{color:#555}
.store-head__sns a:hover{color:#000}

.store-body{max-width:1100px;margin:0 auto;padding:52px 24px 0;
  display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start}
.store-concept__h{font-size:19px;font-weight:700;line-height:1.7;margin-bottom:18px}
.store-concept p{font-size:13.5px;color:#4a4a4a;line-height:2.15;margin-bottom:18px}

.store-info{background:#fff;border-radius:12px;padding:8px 28px;
  box-shadow:0 6px 22px rgba(0,0,0,.05)}
.store-info__row{display:flex;flex-direction:column;gap:5px;padding:16px 0;border-bottom:1px solid #eee}
.store-info__row:last-child{border-bottom:none}
.store-info__row dt{font-size:11px;color:#999;letter-spacing:.08em}
.store-info__row dd{font-size:13px;color:#2b2b2b;line-height:1.7}
.store-info__row dd a{color:#2b2b2b}
.store-info__row dd a:hover{color:#000}

.store-gallery{max-width:1100px;margin:0 auto;padding:52px 24px 0;
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.store-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;display:block}

.store-menu{max-width:820px;margin:0 auto;padding:56px 24px 0}
.store-menu__item{display:flex;justify-content:space-between;align-items:baseline;
  padding:16px 2px;border-bottom:1px solid #e6e3dd;gap:20px}
.store-menu__name{font-size:14px;font-weight:700}
.store-menu__note{font-size:11.5px;color:#999;margin-top:3px}
.store-menu__price{font-size:14px;white-space:nowrap}

.store-back{max-width:1100px;margin:0 auto;padding:16px 24px 0;font-size:12px;color:#888}
.store-back a:hover{color:#000}

@media(max-width:900px){
  .store-body{grid-template-columns:1fr;gap:34px}
  .store-gallery{grid-template-columns:1fr 1fr}
}

@media(max-width:820px){
  .store-hero{margin-top:0;padding:0}
  .store-hero__img{aspect-ratio:16/10;border-radius:10px}
  .store-head{padding:26px 0 0}
  .store-head__name{font-size:22px}
  .store-body{padding:34px 0 0;grid-template-columns:1fr;gap:28px}
  .store-concept__h{font-size:18px}
  .store-info{padding:6px 20px}
  .store-gallery{padding:34px 0 0;grid-template-columns:1fr 1fr;gap:12px}
  .store-menu{padding:44px 0 0}
  .store-menu__item{gap:14px}
  .store-back{padding:16px 0 0}
}
