/* 店舗ページ(/stores/) 2026-10-28 */
.hz-st-page{padding:0 0 80px;margin-top:-30px;font-family:'Noto Sans JP',sans-serif;color:#2a3854;}
.hz-st-page img{max-width:100%;}
.hz-st-lead{margin:0 0 32px;text-align:center;font-family:'Noto Serif JP',serif;font-size:24px;line-height:1.7;font-weight:700;color:#1E2F57;}
.hz-st-lead em{font-style:normal;color:#E17C2C;}

/* 店舗を選ぶカード */
.hz-st-picker{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 0 64px;padding:0;list-style:none;}
.hz-st-picker li{margin:0;padding:0;}
.hz-st-picker a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e2ecf3;border-radius:14px;overflow:hidden;text-decoration:none;color:#2a3854;transition:transform .2s,box-shadow .2s;}
.hz-st-picker a:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(28,143,196,.15);}
.hz-st-picker-img{display:block;aspect-ratio:16/9;overflow:hidden;background:#eef6fb;}
.hz-st-picker-img img{display:block;width:100%;height:100%;object-fit:cover;}
.hz-st-picker-body{display:flex;flex-direction:column;gap:4px;flex:1;padding:16px 18px 18px;}
.hz-st-picker-body b{font-family:'Noto Serif JP',serif;font-size:22px;line-height:1.4;color:#1E2F57;}
.hz-st-picker-body small{font-size:14px;color:#4a5670;}
.hz-st-points{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;}
.hz-st-points i{font-style:normal;padding:0 10px;border-radius:100px;background:#e8f4fb;color:#1c8fc4;font-size:12px;line-height:24px;font-weight:700;}
.hz-st-picker-go{margin-top:auto;padding-top:10px;text-align:right;font-size:14px;font-weight:700;color:#0ea37e;}

/* 店舗ごとの章 */
.hz-st-store{margin:0 0 72px;padding:40px 40px 44px;background:#fff;border:1px solid #e2ecf3;border-radius:18px;scroll-margin-top:110px;}
.hz-st-head{text-align:center;margin:0 0 24px;}
.hz-st-label{display:inline-block;margin:0 0 10px;padding:0 16px;border-radius:100px;background:linear-gradient(90deg,#1c8fc4,#0ea37e);color:#fff;font-size:14px;line-height:30px;font-weight:700;letter-spacing:.08em;}
.hz-st-name{margin:0;font-family:'Noto Serif JP',serif;font-size:28px;line-height:1.5;font-weight:700;color:#1E2F57;}
.hz-st-catch{margin:6px 0 0;font-size:16px;color:#1c8fc4;font-weight:700;}
.hz-st-main{display:block;width:100%;max-height:460px;object-fit:cover;border-radius:14px;}
.hz-st-feature{margin:20px 0 0;font-size:16px;line-height:2;}

.hz-st-h3{display:flex;align-items:baseline;gap:12px;margin:48px 0 18px;padding:0 0 10px;border-bottom:2px solid #e2ecf3;font-family:'Noto Serif JP',serif;font-size:22px;line-height:1.4;font-weight:700;color:#1E2F57;}
.hz-st-h3 span{font-family:'Noto Sans JP',sans-serif;font-size:13px;letter-spacing:.12em;color:#1c8fc4;text-transform:uppercase;}

/* 店内のこだわり */
.hz-st-room{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.hz-st-room-col img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;}
.hz-st-room-col b{display:block;margin:10px 0 4px;font-size:16px;line-height:1.5;color:#1E2F57;}
.hz-st-room-col p{margin:0;font-size:14px;line-height:1.8;color:#4a5670;}

/* 施術者 */
.hz-st-team{margin:0 0 18px;font-size:16px;line-height:1.9;}
.hz-st-team em{font-style:normal;font-weight:700;color:#E17C2C;}
.hz-st-staff{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.hz-st-person{display:flex;flex-direction:column;padding:20px;border:1px solid #e2ecf3;border-radius:14px;background:#f7fbfd;}
.hz-st-person-head{display:flex;gap:16px;align-items:center;}
.hz-st-person-head img{flex:0 0 110px;width:110px;height:110px;object-fit:cover;object-position:center 20%;border-radius:50%;background:#fff;}
.hz-st-person-title{margin:0;font-size:13px;line-height:1.6;color:#1c8fc4;font-weight:700;}
.hz-st-person-name{margin:2px 0 0;font-family:'Noto Serif JP',serif;font-size:22px;line-height:1.4;font-weight:700;color:#1E2F57;}
.hz-st-person-skill{margin:4px 0 0;font-size:13px;line-height:1.6;color:#4a5670;}
.hz-st-person-works{margin:14px 0 0;padding:0;list-style:none;}
.hz-st-person-works li{position:relative;margin:0;padding:0 0 0 16px;font-size:14px;line-height:1.8;}
.hz-st-person-works li::before{content:"";position:absolute;left:2px;top:.75em;width:6px;height:6px;border-radius:50%;background:#0ea37e;}
.hz-st-person-text{margin:12px 0 0;font-size:14px;line-height:1.9;color:#4a5670;}
.hz-st-person-more{margin-top:auto;padding-top:12px;align-self:flex-end;font-size:14px;font-weight:700;color:#0ea37e;text-decoration:none;}

/* 店舗情報 */
.hz-st-info-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;}
.hz-st-info{margin:0;}
.hz-st-info div{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid #e2ecf3;}
.hz-st-info dt{flex:0 0 72px;font-size:14px;font-weight:700;color:#1c8fc4;}
.hz-st-info dd{margin:0;font-size:15px;line-height:1.8;}
.hz-st-info dd span{font-size:13px;color:#7B6C5B;}
.hz-st-info dd a{color:#1E2F57;font-weight:700;}
.hz-st-map iframe{display:block;width:100%;height:300px;border:0;border-radius:12px;}

/* ボタン */
.hz-st-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:32px 0 0;}
.hz-st-btns a{display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:240px;min-height:64px;padding:8px 24px;border-radius:100px;text-decoration:none;font-size:17px;font-weight:700;line-height:1.3;}
.hz-st-btns a span{font-size:12px;font-weight:500;}
.hz-st-line{background:#06C755;color:#fff;}
.hz-st-tel{background:#1E2F57;color:#fff;}
.hz-st-more{background:#fff;color:#1c8fc4;border:2px solid #1c8fc4;}
.hz-st-btns a:hover{opacity:.85;}

.hz-st-note{margin:-40px 0 48px;text-align:center;font-size:14px;color:#7B6C5B;}
.hz-st-links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.hz-st-links a{display:flex;flex-direction:column;min-width:280px;padding:18px 24px;border-radius:14px;background:linear-gradient(90deg,#1c8fc4,#0ea37e);color:#fff;text-decoration:none;}
.hz-st-links b{font-size:18px;}
.hz-st-links span{font-size:13px;opacity:.9;}

@media screen and (max-width:750px){
  .hz-st-page{padding:12px 0 56px;}
  .hz-st-lead{font-size:19px;margin-bottom:24px;}
  .hz-st-picker{grid-template-columns:1fr;gap:14px;margin-bottom:40px;}
  .hz-st-store{padding:24px 16px 28px;margin-bottom:48px;border-radius:14px;}
  .hz-st-name{font-size:21px;}
  .hz-st-catch{font-size:14px;}
  .hz-st-feature,.hz-st-team{font-size:15px;}
  .hz-st-h3{font-size:19px;margin-top:36px;}
  .hz-st-room{grid-template-columns:1fr 1fr;gap:12px;}
  .hz-st-room-col b{font-size:14px;}
  .hz-st-room-col p{font-size:12px;}
  .hz-st-staff,.hz-st-info-wrap{grid-template-columns:1fr;}
  .hz-st-person-head img{flex-basis:88px;width:88px;height:88px;}
  .hz-st-btns a{width:100%;min-width:0;}
  .hz-st-note{margin-top:-24px;}
  .hz-st-links a{min-width:0;width:100%;}
}
