:root{--blue:#53c6ee;--deep:#0a2439;--ink:#132a3b;--pale:#eefaff;--line:#c7e4ee;--max:1160px;--pad:clamp(20px,5vw,48px)}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{font-family:"Noto Sans JP",sans-serif;color:var(--ink);font-size:16px;line-height:1.9;letter-spacing:.03em;background:#fff}a{color:inherit;text-decoration:none}.container{width:min(100%,var(--max));margin:auto;padding-inline:var(--pad)}header{height:78px;display:flex;align-items:center;gap:32px;padding-inline:var(--pad);background:#fff;position:sticky;z-index:10;top:0;border-bottom:1px solid var(--line)}.brand img{display:block;width:85px;max-height:58px;object-fit:contain}nav{display:flex;gap:25px;font-size:14px;font-weight:700;margin-left:auto}.head-cta{background:var(--deep);color:#fff;padding:10px 17px;font-size:13px;font-weight:700}.hero{min-height:calc(100svh - 78px);display:grid;align-items:center;position:relative;overflow:hidden;color:#fff;background:var(--deep)}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,32,49,.93),rgba(7,32,49,.72) 50%,rgba(7,32,49,.18)),url('assets/runfit-hero.webp') center/cover no-repeat}.hero-inner{position:relative;padding-block:clamp(82px,12vw,160px)}.hero-brand{font-family:"Barlow Condensed",sans-serif;font-size:clamp(34px,4.5vw,58px);font-weight:800;line-height:1;letter-spacing:.01em;margin-bottom:18px}.hero-brand span{color:var(--blue)}.eyebrow{font-family:"Barlow Condensed",sans-serif;letter-spacing:.2em;font-weight:700;font-size:14px;color:#c8f4ff}.blue{color:#1586ae}h1,h2{font-weight:900;line-height:1.25;letter-spacing:-.045em}h1{font-size:clamp(48px,7.6vw,94px);margin-top:16px}h1 em{font-style:normal;color:var(--blue)}.hero p:not(.eyebrow){font-size:clamp(15px,1.8vw,19px);margin-top:29px;color:#e5f5fa}.hero-points{display:flex;gap:10px;flex-wrap:wrap;margin-top:31px}.hero-points span{border:1px solid rgba(255,255,255,.6);padding:7px 13px;font-size:13px;font-weight:700}.button{display:inline-flex;flex-direction:column;text-align:center;background:var(--blue);color:var(--deep);padding:16px 28px;margin-top:31px;font-weight:900;line-height:1.4;min-width:275px;transition:.18s}.button:hover{transform:translateY(-3px);background:#a3e8fb}.button strong{font-family:"Barlow Condensed",sans-serif;font-size:23px;letter-spacing:.05em}.intro{background:var(--blue);padding-block:clamp(72px,10vw,132px)}.intro-grid,.smart-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:end}h2{font-size:clamp(32px,5vw,61px);margin-top:12px}.intro-grid>p,.smart-grid>p{font-size:16px}.features{padding-block:clamp(75px,10vw,132px);background:var(--pale)}.photo-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:12px;margin-top:36px}.photo-layout img{display:block;width:100%;height:100%;object-fit:cover}.photo-main{min-height:460px}.photo-layout>div{display:grid;grid-template-rows:1fr auto;gap:12px}.photo-layout>div img{height:295px}.photo-layout p{font-size:14px;padding:18px;background:#fff}.machine-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:12px}.machine-grid article{padding:22px 15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:133px}.machine-grid b{font-family:"Barlow Condensed",sans-serif;font-size:38px;color:#1997c2;line-height:1}.machine-grid span{display:block;font-size:13px;font-weight:700;line-height:1.5;margin-top:12px}.caption,.plan-note{font-size:12px;color:#507082;margin-top:14px}.plans{padding-block:clamp(75px,10vw,132px)}.center{text-align:center}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--deep);margin-top:42px}.plan-grid article{background:#fff;text-align:center;padding:43px 18px}.plan-grid .plan-featured{background:var(--blue)}.plan-grid p{font-weight:700}.plan-grid strong{display:block;font-family:"Barlow Condensed",sans-serif;font-size:clamp(54px,5vw,76px);letter-spacing:-.05em;line-height:1;margin-top:18px}.plan-grid small{font-family:"Noto Sans JP",sans-serif;font-size:13px;letter-spacing:0}.plan-grid span{display:block;font-size:12px;margin-top:14px;color:#456372}.smart{background:var(--deep);color:#fff;padding-block:clamp(72px,10vw,125px)}.smart .blue{color:var(--blue)}.smart-grid>p{color:#d6edf4}.join{background:var(--blue);padding-block:clamp(75px,10vw,130px)}.join .container{max-width:890px}.join ol{list-style:none;padding:0;margin-top:39px;border-top:1px solid rgba(10,36,57,.35)}.join li{display:grid;grid-template-columns:66px 1fr;gap:20px;padding:21px 0;border-bottom:1px solid rgba(10,36,57,.35)}.join li span{font-family:"Barlow Condensed",sans-serif;font-size:32px;line-height:1}.join h3{font-size:18px}.join li p,.payment{font-size:14px;margin-top:4px}.payment{margin-top:18px}.message{padding-block:clamp(75px,10vw,130px)}.message .container{max-width:900px}.message blockquote{font-size:clamp(28px,4.8vw,56px);font-weight:900;line-height:1.42;letter-spacing:-.04em;margin-top:14px}.message p{max-width:590px;margin-top:28px}.message cite{display:block;font-style:normal;font-weight:700;margin-top:16px}.contact{background:var(--pale);padding-block:clamp(75px,11vw,140px);text-align:center}.contact .container{max-width:730px}.contact>p{margin-top:22px}.contact .button{background:var(--deep);color:#fff}footer{background:var(--deep);color:#d8eaf1;padding:30px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px}footer img{width:58px;max-height:53px;object-fit:contain;filter:brightness(0) invert(1)}footer small{font-size:10px}.mobile-cta{display:none}@media(max-width:760px){body{padding-bottom:61px}header{height:66px}.brand img{width:62px;max-height:49px}header nav{display:none}.head-cta{font-size:11px;margin-left:auto;padding:8px 10px}.hero{min-height:calc(100svh - 66px)}.hero-photo{background:linear-gradient(180deg,rgba(7,32,49,.68),rgba(7,32,49,.94) 72%),url('assets/runfit-hero.webp') center/cover no-repeat}.hero-inner{padding-block:74px 88px}.intro-grid,.smart-grid{grid-template-columns:1fr;gap:27px}.photo-layout{grid-template-columns:1fr}.photo-main{min-height:280px}.photo-layout>div{grid-template-columns:1fr 1fr;grid-template-rows:none}.photo-layout>div img{height:180px}.photo-layout p{font-size:12px}.machine-grid{grid-template-columns:repeat(2,1fr)}.plan-grid{grid-template-columns:1fr}.plan-grid article{padding:30px}.join li{grid-template-columns:50px 1fr;gap:13px}.mobile-cta{display:block;position:fixed;z-index:20;bottom:0;left:0;right:0;background:var(--blue);color:var(--deep);font-size:13px;font-weight:900;text-align:center;padding:9px}.mobile-cta strong{font-family:"Barlow Condensed",sans-serif;font-size:20px;margin-left:7px}footer{padding-bottom:25px;flex-wrap:wrap}}

.photo-subgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;height:295px}.photo-subgrid img{height:100%!important}.manager-grid{display:grid;grid-template-columns:minmax(220px,310px) 1fr;gap:clamp(32px,6vw,78px);align-items:center;max-width:980px!important}.manager-grid>img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.location{background:var(--pale);padding-block:clamp(75px,10vw,130px)}.location-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:34px}.location address{font-style:normal;font-weight:700;line-height:1.9}.map-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:12px}.map-grid iframe{width:100%;min-height:410px;border:0}.route-card{background:var(--deep);color:#fff;padding:clamp(27px,4vw,42px);display:flex;flex-direction:column;justify-content:space-between}.route-card p{font-size:17px;font-weight:700;line-height:1.8}.route-card a{display:block;background:var(--blue);color:var(--deep);padding:14px;font-size:14px;font-weight:900;text-align:center}@media(max-width:760px){.photo-subgrid{height:180px;gap:8px}.manager-grid{grid-template-columns:1fr;gap:27px}.manager-grid>img{max-width:270px;aspect-ratio:1/1}.location-head{display:block}.location address{margin-top:22px}.map-grid{grid-template-columns:1fr}.map-grid iframe{min-height:300px}.route-card{gap:28px}}

.contact .contact-phone{margin-top:18px;font-size:15px;font-weight:700}.contact .contact-phone a{color:#0b7398;text-decoration:underline;text-underline-offset:4px}