/* tgh-store: mock/store_tsukishima.html の style を移植。自動生成 */

.crumb{font-size:12px;color:var(--charcoal);padding:18px 0 0}
.crumb a{text-decoration:none}
.fv{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;padding:28px 0 72px}
.fv h1{font-family:var(--f-display);font-weight:400;font-size:clamp(48px,7vw,92px);line-height:1.02;color:var(--pine-teal);margin:10px 0 6px}
.fv h1 small{display:block;font-family:var(--f-mincho);font-size:clamp(20px,2.4vw,28px);font-weight:700;margin-top:10px;letter-spacing:.04em}
.tgh-badge{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--pine-teal);border:1.5px solid var(--pine-teal);border-radius:var(--radius);padding:5px 14px}
.fv .lead{margin:18px 0 26px}
.fv .ctas{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.fv .photo{position:relative;width:min(100%,40vh);justify-self:center}
.fv .photo .circle{width:100%;box-shadow:0 24px 60px rgba(45,71,57,.18)}
.fv .photo img{width:100%;height:100%;object-fit:cover}
.fv .photo .dot-a{position:absolute;left:-6px;top:10%;width:22px;height:22px;background:var(--terracotta);border-radius:50%}
.fv .photo .dot-b{position:absolute;right:4%;bottom:-8px;width:54px;height:54px;background:var(--lime-cream);border-radius:50%}
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1.5px solid var(--pine-teal);margin-bottom:0}
.facts div{padding:22px 20px 22px 0}
.facts dt{font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--pine-teal)}
.facts dd{margin:6px 0 0;font-size:17px;font-weight:500;line-height:1.55}
.tbd{color:var(--charcoal);font-size:13px;font-weight:400}
.feat{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:center}
.feat ul{list-style:none;margin:28px 0 0;padding:0}
.feat li{display:flex;gap:16px;padding:16px 0;border-top:1px solid var(--bone);font-size:16px}
.feat li:last-child{border-bottom:1px solid var(--bone)}
.feat li b{font-family:var(--f-display);font-weight:400;color:var(--terracotta);font-size:20px;min-width:30px}
.feat .ph-wide{position:relative;border-radius:28px;overflow:hidden}
.feat .ph-wide img{width:100%;height:auto}
@media (min-width:901px){.feat .ph-wide img{height:min(414px,40vh);object-fit:cover}}
.feat.feat-solo{grid-template-columns:1fr;max-width:760px} /* 自店の2枚目の写真が無い店（D-2309） */
.inst{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.inst ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(45,71,57,.25)}
.inst li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(45,71,57,.25);align-items:baseline}
.inst li b{font-family:var(--f-mincho);font-size:17px;color:var(--pine-teal)}
.inst li span{font-size:13px;color:var(--charcoal);text-align:right}
.inst .ctas{margin-top:24px}
.rv{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.rv .score{display:flex;align-items:center;gap:18px}
.rv .score .n{font-family:var(--f-display);font-size:88px;line-height:1;color:var(--ivory-mist)}
.rv .score .st{font-size:30px;letter-spacing:.06em;color:var(--jasmine)}
.rv .score small{display:block;font-family:var(--f-sans);font-size:13px;color:var(--bone);margin-top:6px;letter-spacing:.04em}
.rv .ctas{margin-top:24px}
.rv .btn-ghost{border-color:var(--ivory-mist);color:var(--ivory-mist)}
.rv .btn-ghost:hover{background:var(--ivory-mist);color:var(--pine-teal)}
.pr{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.pr .cta{margin-top:28px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:flex-start;text-align:left}
.pr .cta a.link{font-size:14px;font-weight:600;color:var(--pine-teal)}
.faq .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.acc{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:stretch}
.map{position:relative;border-radius:28px;background:var(--bone);min-height:380px;overflow:hidden}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.map .open{position:absolute;right:14px;bottom:14px;background:var(--ivory-mist);color:var(--pine-teal);font-size:13px;font-weight:600;padding:8px 16px;border-radius:999px;text-decoration:none;box-shadow:0 4px 14px rgba(45,71,57,.18)}
.steps{list-style:none;margin:20px 0 0;padding:0;counter-reset:s}
.steps li{counter-increment:s;display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--bone)}
.steps li::before{content:counter(s);flex:none;width:30px;height:30px;border-radius:50%;background:var(--pine-teal);color:#fff;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center}
.addr{font-size:17px;line-height:1.7;margin:14px 0 0}
.cta{text-align:center}
.cta .ctas{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px}
.cta .btn-ghost{border-color:var(--ivory-mist);color:var(--ivory-mist)}
.cta .btn-ghost:hover{background:var(--ivory-mist);color:var(--pine-teal)}
.others{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}
.others a{text-decoration:none;text-align:center}
.others .circle{position:relative;width:min(100%,260px);margin:0 auto 16px}
.others img{width:100%;height:100%;object-fit:cover}
.others b{font-family:var(--f-mincho);font-size:18px;color:var(--pine-teal)}
footer.ft{background:var(--bone);padding:44px 0;font-size:13px;color:var(--charcoal)}
footer.ft a{text-decoration:none;margin-right:18px;display:inline-block;white-space:nowrap;line-height:2}
@media (max-width:900px){
 .fv,.feat,.acc,.rv,.pr,.inst,.faq .wrap{grid-template-columns:1fr;gap:32px}
 .facts{grid-template-columns:1fr 1fr}
 .others{gap:14px}
}
@media (max-width:760px){
 .fv{padding:12px 0 48px;gap:28px}
 .fv .photo{order:2;max-width:320px;margin:0 auto;width:100%}
 .fv .ctas .btn{width:100%}
 .facts div{padding:16px 12px 16px 0}.facts dd{font-size:15px}
 .inst li{flex-direction:column;gap:2px}.inst li span{text-align:left}
 .pr .cta .btn{width:100%}
 .rv .score .n{font-size:64px}
 .others{grid-template-columns:1fr;gap:28px}
 .map{min-height:260px}
}
/* 自店の写真が無い店は写真枠を出さない＝1列（D-2309・10/6） */
.fv.fv-solo{grid-template-columns:1fr}
/* 店舗別の Google クチコミ（グリッド・2026-10-20 #237） */
.sec-teal .gr-plugin{margin-top:48px}
/* 見出し文字（Top rated・Based on）の色はプラグイン CSS が !important なので、ウィジェット側の style_vars（make_store_feeds.php）で生成り色にしている */
@media (max-width:768px){.sec-teal .gr-plugin{margin-top:32px}}
