/*
Theme Name: 5 FIVE GYM
Theme URI: https://example.com/
Author: 5 FIVE GYM
Description: Original black and silver personal gym theme with motion effects and editable LINE/booking URLs.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: five-five-gym
*/
:root{--bg:#08090b;--panel:#111317;--panel2:#171a1f;--silver:#d9dde3;--silver2:#8e96a2;--white:#f6f7f9;--muted:#a2a8b2;--line:#30343b;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--bg);color:var(--white);font-family:"Noto Sans JP",system-ui,-apple-system,sans-serif;line-height:1.75;overflow-x:hidden}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.wrap{width:min(1160px,calc(100% - 44px));margin:auto}.display{font-family:"Barlow Condensed","Arial Narrow",Impact,sans-serif;text-transform:uppercase;letter-spacing:.035em}.silver-text{background:linear-gradient(110deg,#fff 0%,#a9b0bb 42%,#f7f8fa 62%,#7d8692 100%);background-clip:text;-webkit-background-clip:text;color:transparent}.eyebrow{font:700 .76rem "Barlow Condensed",sans-serif;letter-spacing:.22em;color:var(--silver2);text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow:before{content:"";width:28px;height:1px;background:var(--silver2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:15px 22px;border:1px solid var(--silver);background:var(--silver);color:#08090b;font-size:.85rem;font-weight:800;letter-spacing:.04em;transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s;position:relative;overflow:hidden;cursor:pointer}.btn:after{content:"";position:absolute;inset:0;transform:translateX(-110%);background:linear-gradient(100deg,transparent,#fff9,transparent);transition:transform .6s}.btn:hover:after{transform:translateX(110%)}.btn:hover{transform:translateY(-3px);background:#fff;color:#08090b}.btn.secondary{background:transparent;color:var(--white);border-color:#656b75}.btn.secondary:hover{color:#08090b;border-color:#fff}.btn .arrow{font-size:1.2rem;transition:transform .25s}.btn:hover .arrow{transform:translateX(4px)}.header{height:82px;position:fixed;top:0;left:0;width:100%;z-index:30;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}.header.scrolled{background:#08090bef;border-color:#ffffff16;backdrop-filter:blur(14px)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:flex;align-items:center;gap:11px}.logo-mark{width:40px;height:40px;border:1px solid #aeb4be;display:grid;place-items:center;font:800 1.45rem "Barlow Condensed";transform:skew(-7deg);position:relative}.logo-mark:after{content:"";position:absolute;inset:4px;border:1px solid #777f8b}.logo-copy{font:800 1.15rem "Barlow Condensed";letter-spacing:.13em;line-height:1.05}.logo-copy small{display:block;color:#8d949f;font:600 .57rem "Noto Sans JP";letter-spacing:.18em;margin-top:5px}.nav-links{display:flex;align-items:center;gap:27px;font-size:.76rem;font-weight:600;color:#d2d5db}.nav-links a:not(.btn):hover{color:#fff}.nav-links .btn{padding:10px 15px;font-size:.74rem}.hero{min-height:790px;height:min(900px,100svh);position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden;background:#08090b}.hero-image{position:absolute;inset:0;z-index:-3;background-position:center 45%;background-size:cover;transform:scale(1.08);animation:heroZoom 12s ease-out forwards}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#08090b 0%,rgba(8,9,11,.94) 27%,rgba(8,9,11,.55) 58%,rgba(8,9,11,.2) 100%),linear-gradient(0deg,#08090b 0%,transparent 30%,rgba(8,9,11,.28) 100%)}.hero:after{content:"";position:absolute;z-index:-1;right:-12vw;top:14%;width:58vw;height:58vw;max-height:680px;max-width:680px;border:1px solid #ffffff12;border-radius:50%;box-shadow:0 0 0 45px #ffffff06,0 0 0 90px #ffffff03}.hero-content{padding-top:72px;max-width:750px;position:relative}.hero-kicker{display:flex;align-items:center;gap:12px;font:600 .78rem "Barlow Condensed";letter-spacing:.28em;color:#c0c5ce;animation:rise .8s .1s both}.hero-kicker span{display:inline-block;width:36px;height:1px;background:#c0c5ce}.hero h1{font:800 clamp(4.7rem,11vw,9.6rem)/.82 "Barlow Condensed",Impact,sans-serif;letter-spacing:-.01em;margin:32px 0 25px}.hero h1 .line2{display:block;margin-top:12px}.hero h1 .outline{color:transparent;-webkit-text-stroke:1.5px #dfe3e9}.hero-ja{font-size:clamp(1rem,2vw,1.25rem);font-weight:700;letter-spacing:.1em;margin:32px 0 10px;animation:rise .8s .35s both}.hero-desc{max-width:475px;color:#b3b8c1;font-size:.91rem;margin:0 0 29px;animation:rise .8s .45s both}.hero-buttons{display:flex;flex-wrap:wrap;gap:12px;animation:rise .8s .55s both}.hero-meta{display:flex;gap:30px;margin-top:46px;color:#9299a4;font:600 .75rem "Barlow Condensed";letter-spacing:.12em;animation:rise .8s .65s both}.hero-meta span{display:flex;align-items:center;gap:9px}.hero-meta i{width:5px;height:5px;border-radius:50%;background:#c7ccd4;display:inline-block}.hero-side{position:absolute;right:28px;bottom:115px;writing-mode:vertical-rl;font:600 .68rem "Barlow Condensed";letter-spacing:.24em;color:#9da3ad}.scroll-cue{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:13px;color:#969ca6;font:600 .68rem "Barlow Condensed";letter-spacing:.25em}.scroll-cue:after{content:"";height:42px;width:1px;background:linear-gradient(#d9dde3,transparent);animation:scrollLine 1.7s infinite}.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0d0f12}.ticker-track{display:flex;width:max-content;animation:marquee 32s linear infinite}.ticker span{font:700 1.15rem "Barlow Condensed";letter-spacing:.16em;color:#a6adb7;padding:19px 26px;white-space:nowrap}.ticker b{color:#59616d;margin-left:35px}.section{padding:112px 0;position:relative}.section-head{max-width:720px;margin-bottom:48px}.section-head h2{font-size:clamp(2rem,4.4vw,3.55rem);line-height:1.35;letter-spacing:.02em;margin:18px 0}.section-head p{color:var(--muted);max-width:620px}.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.intro-number{font:800 clamp(8rem,18vw,15rem)/.8 "Barlow Condensed";letter-spacing:-.07em;color:#171a1f;position:sticky;top:120px}.intro-number span{font-size:.22em;display:block;letter-spacing:.2em;color:#7b828d;margin-top:24px}.intro-copy h3{font-size:clamp(1.4rem,3vw,2rem);line-height:1.6;margin:0 0 20px}.intro-copy p{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:38px}.stat{border-top:1px solid #5a616c;padding-top:17px}.stat strong{font:700 2.2rem "Barlow Condensed";display:block}.stat span{font-size:.74rem;color:var(--muted)}.features{background:linear-gradient(180deg,#0b0c0f,#111318 48%,#0b0c0f)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature{min-height:320px;padding:30px 26px;background:linear-gradient(145deg,#191c21,#101216);border:1px solid #2c3037;position:relative;overflow:hidden;transition:transform .35s var(--ease),border-color .35s}.feature:hover{transform:translateY(-8px);border-color:#8f97a4}.feature:after{content:"";position:absolute;right:-28px;bottom:-58px;width:145px;height:145px;border:1px solid #ffffff0c;transform:rotate(35deg)}.feature-num{font:700 3rem/.9 "Barlow Condensed";color:#505762}.feature-icon{font-size:1.5rem;color:#d6dbe2;margin-top:27px}.feature h3{font-size:1.14rem;margin:10px 0}.feature p{color:#a5abb4;font-size:.88rem;margin:0}.feature-link{display:inline-flex;margin-top:22px;font:600 .75rem "Barlow Condensed";letter-spacing:.12em;color:#cbd0d8}.visual-band{min-height:470px;display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden}.visual-band:before{content:"";position:absolute;inset:0;z-index:-2;background-position:center 43%;background-size:cover;filter:grayscale(1)}.visual-band:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#08090b 0%,rgba(8,9,11,.87) 44%,rgba(8,9,11,.28) 100%),linear-gradient(0deg,#08090b,transparent 25%,#08090b55)}.band-content{padding:85px 0;max-width:650px}.band-content h2{font:800 clamp(3.5rem,8vw,7rem)/.9 "Barlow Condensed";margin:20px 0}.band-content p{color:#c1c5cc;max-width:500px}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.program{border:1px solid var(--line);background:var(--panel);padding:29px 25px;transition:background .3s,border-color .3s,transform .3s}.program:hover{background:#1a1d23;border-color:#9ba2ad;transform:translateY(-5px)}.program .label{font:700 .75rem "Barlow Condensed";letter-spacing:.18em;color:#8e96a2}.program h3{font-size:1.18rem;margin:15px 0 7px}.program p{color:var(--muted);font-size:.88rem}.program .price{font:700 2rem "Barlow Condensed";margin-top:23px}.program .price small{font:400 .72rem "Noto Sans JP";color:var(--muted)}.program ul{list-style:none;padding:0;margin:17px 0 24px}.program li{font-size:.82rem;color:#c1c5cd;padding:8px 0;border-bottom:1px solid #292d33}.program li:before{content:"＋";color:#c8ced7;margin-right:9px}.program .btn{width:100%}.price-note{font-size:.74rem;color:#7e8692;margin-top:16px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{padding:25px 23px;border-top:1px solid #858d99;background:linear-gradient(180deg,#14171b,transparent)}.step .n{font:700 2.5rem "Barlow Condensed";color:#d4d9e0}.step h3{margin:10px 0;font-size:1.08rem}.step p{font-size:.87rem;color:var(--muted)}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:700}summary::-webkit-details-marker{display:none}summary:after{content:"＋";font-size:1.4rem;font-weight:400;color:#aeb5c0;transition:transform .25s}details[open] summary:after{transform:rotate(45deg)}details p{color:var(--muted);font-size:.9rem;margin:14px 35px 0 0}.cta{padding:105px 0;text-align:center;background:radial-gradient(ellipse at 50% 0%,#333943 0%,#15181d 38%,#090a0c 75%);border-top:1px solid #343941;border-bottom:1px solid #343941;position:relative;overflow:hidden}.cta:before{content:"5";position:absolute;top:-130px;left:50%;transform:translateX(-50%);font:900 34rem/.9 "Barlow Condensed";color:#ffffff04;pointer-events:none}.cta-inner{position:relative}.cta h2{font-size:clamp(2rem,5vw,3.8rem);line-height:1.35;margin:20px 0}.cta p{color:#b0b6c0;max-width:570px;margin:0 auto 28px}.cta-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-card{border:1px solid var(--line);background:var(--panel);padding:30px}.contact-card h3{margin:0 0 12px}.contact-card p{color:var(--muted);font-size:.9rem}.contact-card .btn{margin-top:8px}.placeholder{font-size:.73rem!important;color:#828995!important}footer{padding:32px 0;border-top:1px solid var(--line);color:#838a95;font-size:.75rem}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap}.footer-brand{font:800 1.2rem "Barlow Condensed";letter-spacing:.16em;color:#e5e8ec}.footer-brand small{display:block;font:600 .6rem "Noto Sans JP";color:#8d949f;letter-spacing:.18em}.footer-links{display:flex;gap:20px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes heroZoom{to{transform:scale(1)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes scrollLine{0%,100%{transform:scaleY(.5);transform-origin:top;opacity:.5}50%{transform:scaleY(1);transform-origin:top;opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}@media(max-width:800px){.wrap{width:min(100% - 34px,1160px)}.header{height:72px}.nav-links{gap:14px}.nav-links a:not(.btn){display:none}.nav-links .btn{padding:10px 12px}.hero{min-height:740px;height:92svh;max-height:900px}.hero-image{background-position:58% center}.hero:before{background:linear-gradient(90deg,#08090b 0%,rgba(8,9,11,.88) 45%,rgba(8,9,11,.42) 100%),linear-gradient(0deg,#08090b,transparent 30%)}.hero h1{font-size:clamp(4.5rem,16vw,7.5rem)}.hero-side{right:12px;bottom:105px}.hero-meta{gap:14px;flex-wrap:wrap;margin-top:32px}.section{padding:78px 0}.intro-grid{grid-template-columns:1fr;gap:25px}.intro-number{position:static;font-size:7rem}.intro-number span{display:inline;margin-left:15px}.feature-grid,.program-grid,.steps{grid-template-columns:1fr}.feature{min-height:0}.visual-band{min-height:430px}.visual-band:before{background-position:58% center}.band-content{padding:70px 0}.stats{gap:10px}.stat strong{font-size:1.8rem}.contact-grid{grid-template-columns:1fr}.section-head{margin-bottom:32px}}@media(max-width:430px){.logo-mark{width:35px;height:35px}.logo-copy{font-size:1rem}.nav-links .btn{font-size:.68rem;padding:9px}.hero h1{font-size:4.4rem}.hero-desc{font-size:.84rem}.hero-buttons .btn{width:100%}.hero-meta{font-size:.68rem}.stats{grid-template-columns:1fr 1fr}.stat:last-child{grid-column:1/-1}}

@media (min-width: 768px) {
  .hero h1 {
    font-size: clamp(3.5rem, 7vw, 6rem);
    line-height: 1;
    letter-spacing: 0;
  }
}
/* PRICEカードの上下に少し隙間を追加 */
.section#price .program-grid + .program-grid {
  margin-top: 16px;
}
/* PRICEカード同士の隙間を調整 */
.section#price .program-grid {
  row-gap: 16px;
}

.section#price .program-grid + .program-grid {
  margin-top: 16px;
}
/* スマホ表示：見出しの文字サイズと改行を調整 */
@media (max-width: 767px) {
  .hero h1 {
    font-size: clamp(2.5rem, 8vw, 3.2rem);
    line-height: 1.15;
    letter-spacing: -0.04em;
    text-wrap: balance;
  }

  .cta h2 {
    font-size: clamp(1.8rem, 6vw, 2.4rem);
    line-height: 1.3;
    text-wrap: balance;
  }
}