/* Private Gym AMBI — white ground, signal blue #0066E3, black bands; display type follows the AMBI logo (tall condensed sans, wide tracking) */
body.gym{
  --g-blue:#0066e3;
  --g-ink:#111;
  --g-sub:#4a4f57;
  --g-line:#e2e5ea;
  --g-tint:#f2f5fa;
  --g-cond:"Oswald","Noto Sans JP",sans-serif;
  --g-body:"Noto Sans JP","Hiragino Sans",sans-serif;
  background:#fff;color:var(--g-ink);font-family:var(--g-body);font-weight:300;letter-spacing:.03em
}
body.gym .site-head{background:color-mix(in srgb,#fff 94%,transparent)}
body.gym .nav a[aria-current="page"],body.gym .nav a:hover{color:var(--g-blue);border-color:var(--g-blue)}
.g-wrap{max-width:1120px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.g-hero{padding-block:clamp(40px,7vw,88px)}
.g-hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
.g-hero-in > *{min-width:0}
.g-kicker{font-size:1.05rem;font-weight:400}
.g-title{font-family:var(--g-cond);font-weight:400;color:var(--g-blue);font-size:clamp(2.3rem,6vw,4.4rem);line-height:1.05;margin:14px 0 0;letter-spacing:.02em}
.g-title span{display:block;white-space:nowrap}.g-title span:first-child{font-family:var(--g-body);font-weight:400;font-size:.62em;letter-spacing:.12em}.g-title span:last-child{font-weight:400;letter-spacing:.32em;font-size:1.35em;margin-top:6px}
.g-lead{margin-top:22px;color:var(--g-sub);line-height:2;max-width:32em}
.g-hero-img{width:100%;height:auto;border-radius:4px;object-fit:cover}
.g-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.g-btn{display:inline-flex;align-items:center;padding:12px 26px;background:var(--g-blue);color:#fff;text-decoration:none;font-weight:400;border:1px solid var(--g-blue);border-radius:2px}
.g-btn:hover{background:#0052b8}
.g-ghost{background:transparent;color:var(--g-blue)}
.g-ghost:hover{background:var(--g-tint)}
.g-btn:focus-visible{outline:2px solid var(--g-ink);outline-offset:3px}
@media (max-width:780px){.g-hero-in{grid-template-columns:1fr}}

.g-band{background:var(--g-blue);color:#fff}
.g-band-in{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-block:28px;text-align:center}
.g-band b{display:block;font-family:var(--g-cond);font-weight:500;letter-spacing:.04em;font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.1;font-variant-numeric:tabular-nums}
.g-band small{font-size:.5em;font-weight:400;margin-left:2px}
.g-band span{font-size:.85rem}

.g-sec{padding-block:clamp(56px,9vw,100px)}
.g-tint{background:var(--g-tint)}
.g-black{background:#000;color:#fff}
.g-black p{color:#c9ced6}
.g-en{font-family:var(--g-cond);font-weight:400;letter-spacing:.28em;color:var(--g-blue);font-size:.95rem;margin:0}
.g-h2{font-family:var(--g-body);font-weight:400;font-size:clamp(1.6rem,3.6vw,2.2rem);margin:6px 0 28px;line-height:1.4}
.g-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.g-split > *{min-width:0}
.g-split p{line-height:2}
@media (max-width:780px){.g-split{grid-template-columns:1fr;gap:28px}}

.g-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.g-plan{border:1px solid var(--g-line);padding:28px 24px;border-radius:4px;background:#fff}
.g-plan-main{border:2px solid var(--g-blue)}
.g-plan-name{font-weight:700;margin:0}
.g-price{font-family:var(--g-cond);font-weight:500;letter-spacing:.02em;color:var(--g-blue);font-size:2.6rem;margin:6px 0 14px;font-variant-numeric:tabular-nums}
.g-price small{font-size:1rem;color:var(--g-sub);font-weight:400}
.g-plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:.92rem}
.g-plan li::before{content:"○";color:var(--g-blue);margin-right:8px;font-weight:700}
.g-plan li.no{color:#9aa0a8}
.g-plan li.no::before{content:"×";color:#9aa0a8}
.g-note{font-size:.82rem;color:var(--g-sub);margin-top:14px}
@media (max-width:780px){.g-plans{grid-template-columns:1fr}}

.g-benefit{list-style:none;margin:0;padding:0;border-top:1px solid #333}
.g-benefit li{display:flex;justify-content:space-between;gap:16px;padding:18px 4px;border-bottom:1px solid #333}
.g-benefit b{font-family:var(--g-cond);font-weight:500;font-size:1.6rem;color:#fff}

.g-machines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.g-machine{display:flex;flex-direction:column;gap:12px}
.g-machine img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:3px;background:var(--g-tint)}
.g-tag{font-size:.75rem;color:var(--g-blue);font-weight:700}
.g-machine h3{font-family:var(--g-body);font-weight:700;font-size:1.05rem;margin:2px 0 4px}
.g-machine p{font-size:.88rem;color:var(--g-sub);line-height:1.8}
@media (max-width:960px){.g-machines{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.g-machines{grid-template-columns:1fr}}

.g-rules{list-style:none;margin:0;padding:0;border-top:1px solid var(--g-line)}
.g-rules li{padding:14px 4px 14px 22px;border-bottom:1px solid var(--g-line);position:relative;font-size:.93rem}
.g-rules li::before{content:"";position:absolute;left:4px;top:24px;width:8px;height:2px;background:var(--g-blue)}

body.gym .cta{background:var(--g-tint)}
body.gym .cta .btn{background:var(--g-blue);border-color:var(--g-blue);border-radius:2px}
body.gym .cta .btn.ghost{background:transparent;color:var(--g-blue)}
.g-logo{display:block;width:clamp(240px,34vw,440px);height:auto;margin-top:14px}
