:root{--navy:#07162f;--navy2:#10284e;--ink:#0b1730;--soft:#34425d;--purple:#6e32ba;--orange:#f58a16;--gold:#ffb238;--cloud:#f4f6fa;--line:#d9deea;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cloud);color:var(--ink);font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}a{color:inherit}.header{display:flex;align-items:center;gap:28px;min-height:78px;padding:0 clamp(20px,5vw,84px);background:var(--navy);color:#fff}.brand{font-size:16px;font-style:italic;font-weight:900;letter-spacing:-.04em;text-decoration:none}.brand b{color:var(--gold)}nav{display:flex;gap:clamp(14px,2.2vw,34px);margin-left:auto}nav a{color:rgba(255,255,255,.72);font-size:13px;text-decoration:none}.social{display:flex;gap:9px}.social a{display:grid;place-items:center;width:35px;height:35px;border:1px solid rgba(255,255,255,.42);border-radius:50%;text-decoration:none}.social svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}.detail-hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:590px;background:var(--navy);color:#fff}.detail-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(80px,10vw,155px) clamp(24px,8vw,145px)}.kicker{margin:0 0 16px;color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.17em}.detail-hero h1{margin:0 0 28px;font-size:clamp(3rem,6vw,6.4rem);letter-spacing:-.09em;line-height:.98}.detail-hero h1 span{color:var(--gold)}.detail-hero-copy>p:not(.kicker){max-width:530px;margin:0;color:rgba(255,255,255,.75);line-height:1.9}.detail-hero-image{min-height:360px;background-image:linear-gradient(90deg,rgba(7,22,47,.36),transparent 55%),var(--hero-image);background-position:center;background-size:cover}.section{padding:clamp(70px,10vw,145px) clamp(24px,10vw,170px);background:#fff}.section h2{margin:0;font-size:clamp(2.45rem,5.2vw,5rem);letter-spacing:-.075em;line-height:1.06}.intro-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,10vw,150px);background:#fffaf5}.intro-split>p:not(.kicker){align-self:end;max-width:590px;margin:0;color:var(--soft);line-height:2}.coach{display:grid;grid-template-columns:minmax(180px,.55fr) 1.45fr;align-items:center;gap:clamp(32px,7vw,100px);padding:clamp(42px,6vw,86px) 0;border-bottom:1px solid var(--line)}.portrait{width:min(100%,235px);aspect-ratio:3/4;background-image:url('/coach-source.png');background-position-x:95%;background-repeat:no-repeat;background-size:604% auto;box-shadow:15px 15px 0 var(--gold)}.portrait.one{background-position-y:21%}.portrait.two{background-position-y:60%}.portrait.three{background-position-y:99%}.number{color:var(--orange);font-size:13px;font-weight:800;letter-spacing:.15em}.coach h2{margin:15px 0 7px;font-size:clamp(2rem,3vw,3rem)}.role{margin:0 0 24px;color:var(--purple);font-weight:700}.bio{color:var(--soft);line-height:1.8}.license{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}.license li{padding:7px 10px;background:var(--cloud);color:var(--soft);font-size:13px}.line-cta,.guide-cta{display:flex;align-items:end;justify-content:space-between;gap:28px;background:linear-gradient(118deg,#4b197d,#7330bd);color:#fff}.line-cta h2,.guide-cta h2{max-width:780px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 18px;background:var(--gold);color:var(--navy);font-size:14px;font-weight:700;text-decoration:none}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:26px}.schedule{border-top:1px solid var(--line)}.schedule article{display:grid;grid-template-columns:110px 1fr auto;gap:15px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.schedule p{margin:0;color:var(--orange);font-size:12px;font-weight:800}.schedule h3{margin:0;font-size:19px}.note{color:var(--soft);line-height:1.9}.access{display:flex;flex-direction:column;padding:clamp(30px,4vw,55px);background:var(--navy);color:#fff}.access h2{margin-bottom:auto}.access-photo{height:170px;margin:30px 0 0;background:url('/activity/skill-group.png') center/cover}.place{margin:28px 0 25px;font-size:26px;font-weight:700;line-height:1.5}.place span{color:var(--gold)}address{margin-bottom:32px;color:rgba(255,255,255,.75);font-style:normal;line-height:1.9}.access a{color:var(--gold);font-weight:700}.fees{background:var(--cloud)}.fee-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:45px}.fee-intro>p:not(.kicker){align-self:end;max-width:520px;margin:0;color:var(--soft);line-height:1.9}.fee-table{border-top:2px solid var(--navy)}.fee{display:grid;grid-template-columns:1.25fr .85fr 1fr;gap:18px;align-items:center;min-height:74px;padding:16px 20px;border-bottom:1px solid var(--line);background:#fff}.fee strong{font-size:18px}.fee span:last-child{color:var(--soft);font-size:14px}.fee.head{min-height:45px;background:var(--navy);color:#fff;font-size:12px;font-weight:700}.fee.head span:last-child{color:rgba(255,255,255,.72)}.faq-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-bottom:clamp(50px,7vw,95px);background:#fffaf5}.faq-intro>p:not(.kicker){align-self:end;max-width:520px;margin:0;color:var(--soft);line-height:1.9}.faq{padding-top:0}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;gap:20px;padding:27px 0;cursor:pointer;font-size:clamp(1rem,1.7vw,1.26rem);font-weight:700;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--orange);font-size:12px}.faq summary b{margin-left:auto;color:var(--purple);font-size:25px;font-weight:400}.faq details[open] summary b{transform:rotate(45deg)}.faq p{margin:0 0 28px 52px;color:var(--soft);line-height:1.9}.footer{display:grid;grid-template-columns:1.2fr 1fr auto;align-items:end;gap:25px;padding:50px clamp(24px,7vw,115px);background:#030a19;color:#fff}.footer p{margin:14px 0 0;color:rgba(255,255,255,.52);font-size:12px}.footer-links{display:flex;flex-wrap:wrap;gap:12px 22px}.footer-links a{color:rgba(255,255,255,.72);font-size:13px;text-decoration:none}.copyright{white-space:nowrap}@media(max-width:780px){.header{flex-wrap:wrap;gap:16px;min-height:68px;padding:14px 20px}nav{order:3;flex-basis:100%;gap:16px;margin:0;overflow-x:auto}nav a{flex:0 0 auto;white-space:nowrap}.social{margin-left:auto}.detail-hero{grid-template-columns:1fr;min-height:0}.detail-hero-copy{min-height:440px;padding:75px 24px}.detail-hero-image{min-height:280px}.section{padding:75px 24px}.intro-split,.two-col,.fee-intro,.faq-intro{grid-template-columns:1fr;gap:25px}.coach{grid-template-columns:1fr;gap:35px}.portrait{width:180px}.line-cta,.guide-cta{flex-direction:column;align-items:flex-start}.schedule article{grid-template-columns:1fr;gap:6px}.fee-table{overflow-x:auto}.fee{grid-template-columns:minmax(175px,1.2fr) minmax(128px,.8fr) minmax(155px,1fr);min-width:500px}.faq p{margin:0 0 24px 32px}.footer{grid-template-columns:1fr;padding:40px 24px}.copyright{grid-row:3}}
