:root{--bg: #f5f6f6;--ink: #171d20;--main: #153c3b;--main-2: #1e4f4d;--sub: #d9e4df;--accent: #a4c76b;--accent-2: #b8d68a;--muted: #475356;--line: #c6d1cd;--white: #fff;--font: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic UI", "Yu Gothic", YuGothic, Meiryo, system-ui, -apple-system, "Segoe UI", sans-serif;--font-latin: "Helvetica Neue", Arial, "Segoe UI", system-ui, sans-serif;--wrap: 1160px;--gutter: 20px;--radius: 14px;--header-h: 64px;--shadow: 0 1px 2px rgb(21 60 59 / 6%), 0 8px 24px rgb(21 60 59 / 7%)}:root:lang(zh){--font: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif}:root:lang(ko){--font: "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif}:root:lang(en){--font: "Helvetica Neue", Arial, "Segoe UI", system-ui, -apple-system, sans-serif}[lang=ja]{font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic UI,Yu Gothic,Meiryo,sans-serif}@media(min-width:768px){:root{--gutter: 32px;--header-h: 72px}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.85;letter-spacing:.02em;overflow-x:hidden;-webkit-font-smoothing:antialiased}:root:lang(en) body{letter-spacing:0;line-height:1.7}img,picture,iframe{display:block;max-width:100%}img{height:auto}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit}button{font:inherit;color:inherit}address{font-style:normal}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}.section--dark :focus-visible,.footer :focus-visible,.cta :focus-visible{outline-color:var(--accent-2)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--main);color:var(--white);padding:10px 16px;border-radius:8px;text-decoration:none}.skip:focus{top:12px}.center{text-align:center}.muted{color:var(--muted)}.wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.wrap--narrow{max-width:calc(860px + var(--gutter) * 2)}.section{padding-block:72px}.section--tint{background:var(--white)}.section--dark{background:var(--main);color:var(--white)}@media(min-width:900px){.section{padding-block:112px}}.sec-head{margin-bottom:40px;max-width:760px}.sec-head--light .eyebrow{color:var(--accent-2)}.sec-head--light .lead{color:#ffffffd9}.eyebrow{font-family:var(--font-latin);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--main);display:inline-flex;align-items:center;gap:10px;margin-bottom:12px}.eyebrow:before{content:"";width:24px;height:3px;border-radius:2px;background:var(--accent)}.h2{font-size:clamp(26px,5.4vw,40px);line-height:1.4;font-weight:800;letter-spacing:.01em;text-wrap:balance}.h3{font-size:19px;line-height:1.5;font-weight:700}.lead{margin-top:18px;color:var(--muted);font-size:16px}@media(min-width:900px){.lead{font-size:17px}}.note{margin-top:20px;font-size:14px;color:var(--muted)}.form-note{margin-top:10px;font-size:13px;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px;border-radius:999px;border:2px solid transparent;font-weight:700;font-size:15px;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s,transform .2s}.btn--primary{background:var(--accent);color:var(--ink);border-color:var(--accent)}.btn--primary:hover{background:var(--accent-2);border-color:var(--accent-2)}.btn--ghost{background:transparent;color:var(--main);border-color:var(--main)}.btn--ghost:hover{background:var(--main);color:var(--white)}.btn--light{background:transparent;color:var(--white);border-color:#ffffffb3}.btn--light:hover{background:var(--white);color:var(--main)}.btn--sm{min-height:42px;padding:8px 18px;font-size:14px}.btn--lg{min-height:56px;padding:14px 30px;font-size:16px}.btn--block{display:flex;width:100%}.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn-row--center{justify-content:center}@media(max-width:599px){.btn-row .btn{width:100%}}.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--main)}.logo__mark{font-family:var(--font-latin);font-weight:900;font-size:22px;letter-spacing:.08em;line-height:1}.logo__text{display:flex;flex-direction:column;line-height:1.25;border-left:2px solid var(--accent);padding-left:10px}.logo__branch{font-weight:800;font-size:14px;letter-spacing:.06em}.logo__sub{font-size:10px;color:var(--muted);letter-spacing:.04em}.logo--light{color:var(--white)}.logo--light .logo__sub{color:#ffffffbf}.header{position:fixed;inset:0 0 auto;z-index:50;height:var(--header-h);background:#f5f6f6eb;backdrop-filter:blur(10px);transition:box-shadow .2s}.header.is-scrolled{box-shadow:0 1px 0 var(--line)}.header__inner{height:100%;display:flex;align-items:center;gap:20px;max-width:calc(var(--wrap) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.header .logo{margin-right:auto}.gnav{display:none}.gnav ul{display:flex;gap:22px}.gnav a{white-space:nowrap;text-decoration:none;font-weight:700;font-size:14px;padding:6px 0;border-bottom:2px solid transparent}.gnav a:hover{border-color:var(--accent)}.header>.header__inner>.langs{display:none}.header__book{display:none}@media(min-width:1200px){.gnav{display:block}.header>.header__inner>.langs{display:flex}.header__book{display:inline-flex}.burger{display:none!important}}.burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;border:0;background:transparent;cursor:pointer;border-radius:8px}.burger span{display:block;height:2px;background:var(--main);border-radius:2px;transition:transform .25s,opacity .25s}.burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){opacity:0}.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.drawer{position:fixed;inset:var(--header-h) 0 0;z-index:49;background:var(--bg);padding:24px var(--gutter) 40px;overflow-y:auto;display:flex;flex-direction:column;gap:16px;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}.drawer.is-open{opacity:1;visibility:visible;transition:opacity .2s,visibility 0s}.drawer nav a{display:block;padding:14px 4px;border-bottom:1px solid var(--line);font-weight:700;font-size:17px;text-decoration:none}.drawer .langs{margin-block:8px}@media(min-width:1200px){.drawer{display:none}}.langs{display:flex;gap:4px;flex-wrap:wrap}.langs a{display:inline-flex;align-items:center;min-height:36px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:700;text-decoration:none;color:var(--muted);border:1px solid transparent}.langs a:hover{color:var(--main);border-color:var(--line)}.langs a[aria-current=true]{background:var(--main);color:var(--white)}.footer .langs a{color:#fffc}.footer .langs a[aria-current=true]{background:var(--accent);color:var(--ink)}.hero{padding-top:calc(var(--header-h) + 16px);padding-bottom:56px;border-bottom:6px solid var(--sub)}.hero__inner{display:grid;gap:28px}.hero__media{order:-1;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4 / 3;background:var(--sub)}.hero__media img{width:100%;height:100%;object-fit:cover}.hero__title{font-size:clamp(32px,8.4vw,58px);line-height:1.32;font-weight:900;letter-spacing:.01em;color:var(--main)}.hero__title span{display:block}:root:lang(en) .hero__title{line-height:1.12}.hero__lead{margin-top:20px;font-size:16px;max-width:34em}.hero__note{margin-top:14px;font-size:13px;color:var(--muted)}@media(min-width:900px){.hero{padding-top:calc(var(--header-h) + 48px);padding-bottom:96px}.hero__inner{grid-template-columns:1fr 1.08fr;align-items:center;gap:56px}.hero__media{order:0;aspect-ratio:5 / 4}.hero__lead{font-size:17px}}.goals{display:grid;gap:16px}.goal{background:var(--white);border-radius:var(--radius);padding:28px 24px;box-shadow:var(--shadow);border-top:4px solid var(--accent)}.goal__no{display:block;font-family:var(--font-latin);font-weight:900;font-size:30px;color:var(--sub);line-height:1;margin-bottom:14px;-webkit-text-stroke:1px var(--main)}.goal p{margin-top:10px;color:var(--muted);font-size:15px}@media(min-width:768px){.goals{grid-template-columns:repeat(3,1fr);gap:24px}}.training{display:grid;gap:40px}.pillars{display:grid;gap:14px}.pillar{padding:22px 22px 22px 24px;border-radius:var(--radius);background:var(--bg);border-left:4px solid var(--main)}.pillar__en{display:block;font-family:var(--font-latin);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--main-2);margin-bottom:4px}.pillar p{margin-top:8px;color:var(--muted);font-size:15px}.training__media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4 / 5;max-height:640px}.training__media img{width:100%;height:100%;object-fit:cover}@media(min-width:900px){.training{grid-template-columns:1.25fr 1fr;gap:64px;align-items:start}.training__media{position:sticky;top:calc(var(--header-h) + 24px)}}.trainers{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.trainer{background:var(--white);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px}.trainer__head{display:flex;gap:16px;align-items:center}.trainer__initial{flex:none;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--main);color:var(--accent);font-family:var(--font-latin);font-weight:800;letter-spacing:.04em}.trainer__role{font-size:12px;color:var(--muted)}.trainer__name{font-size:20px;font-weight:800;line-height:1.4}.trainer__latin{font-family:var(--font-latin);font-size:12px;letter-spacing:.08em;color:var(--main-2)}.trainer__block{border-top:1px solid var(--line);padding-top:12px}.trainer__label{font-size:12px;font-weight:700;color:var(--main);margin-bottom:4px}.trainer__block li{font-size:14px;line-height:1.7;padding-left:14px;position:relative}.trainer__block li:before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--accent)}#trainers .center{margin-top:32px}.trial,.monthly{background:var(--sub);border-radius:var(--radius);padding:24px;margin-bottom:40px}.trial p,.monthly p{margin-top:8px;font-size:15px}.monthly{margin-top:8px;margin-bottom:0;background:var(--bg)}.plan-group{margin-bottom:44px}.plan-group__title{font-size:22px;font-weight:800;display:flex;align-items:center;gap:10px}.plan-group__title:before{content:"";width:10px;height:22px;background:var(--accent);border-radius:3px}.plan-group__lead{margin-top:6px;color:var(--muted);font-size:15px}.plans{margin-top:20px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.plans--two{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.plan{border:1px solid var(--line);border-radius:var(--radius);padding:22px 22px 20px;background:var(--white);display:flex;flex-direction:column}.plan--life{border-color:var(--main);box-shadow:inset 0 4px 0 var(--main)}.plan__name{font-family:var(--font-latin);font-weight:800;font-size:17px;letter-spacing:.04em;color:var(--main)}.plan--life .plan__name{font-family:var(--font);letter-spacing:.02em}.plan__count{font-size:14px;font-weight:700;margin-top:2px}.plan__label{margin-top:16px;font-size:12px;color:var(--muted)}.plan__price{font-size:clamp(26px,6vw,32px);font-weight:900;line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:0}.plan__per{font-size:13px;color:var(--muted);margin-top:4px}.plan__inc{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);font-size:13px;line-height:1.7}#plans .note{text-align:left}.facilities{display:flex;flex-wrap:wrap;gap:8px}.facilities li{padding:8px 16px;border-radius:999px;background:var(--white);border:1px solid var(--line);font-size:14px;font-weight:700}.facilities li:before{content:"✓";color:var(--main-2);margin-right:6px}.gallery{margin-top:32px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.gallery figure{border-radius:var(--radius);overflow:hidden;background:var(--white);box-shadow:var(--shadow)}.gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.gallery figcaption{padding:12px 16px;font-size:14px;font-weight:700}.flow{display:grid;gap:14px;counter-reset:step}.flow__step{background:#ffffff0f;border:1px solid rgb(255 255 255 / 16%);border-radius:var(--radius);padding:24px}.flow__no{display:inline-block;font-family:var(--font-latin);font-weight:800;font-size:12px;letter-spacing:.14em;color:var(--ink);background:var(--accent);border-radius:999px;padding:3px 12px;margin-bottom:12px}.flow__step p{margin-top:8px;font-size:15px;color:#ffffffdb}@media(min-width:768px){.flow{grid-template-columns:repeat(2,1fr)}}@media(min-width:1200px){.flow{grid-template-columns:repeat(4,1fr)}}.links{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.link-card{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;padding:22px 52px 22px 22px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--line);text-decoration:none;transition:border-color .2s,transform .2s}.link-card:hover{border-color:var(--main);transform:translateY(-2px)}.link-card__tag{font-family:var(--font-latin);font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--main-2)}.link-card__label{font-weight:700;line-height:1.6}.link-card__arrow{position:absolute;right:20px;top:50%;translate:0 -50%;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--main);color:var(--white);font-size:14px}.faq-list{display:grid;gap:10px}.faq{background:var(--white);border-radius:12px;border:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;display:flex;gap:12px;align-items:flex-start;padding:18px;font-weight:700;line-height:1.6;border-radius:12px}.faq summary::-webkit-details-marker{display:none}.faq__q{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--main);color:var(--accent);font-family:var(--font-latin);font-size:14px;font-weight:800}.faq__text{flex:1;padding-top:1px}.faq__icon{flex:none;position:relative;width:20px;height:28px}.faq__icon:before,.faq__icon:after{content:"";position:absolute;left:3px;top:13px;width:14px;height:2px;background:var(--main);transition:transform .2s}.faq__icon:after{transform:rotate(90deg)}.faq[open] .faq__icon:after{transform:rotate(0)}.faq__a{padding:0 18px 20px 58px;color:var(--muted);font-size:15px}.access{display:grid;gap:28px}.info{display:grid;gap:0;background:var(--bg);border-radius:var(--radius);padding:8px 22px}.info>div{display:grid;grid-template-columns:7.5em 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.info>div:last-child{border-bottom:0}.info dt{font-weight:700;font-size:14px;color:var(--main)}.info dd{font-size:15px;overflow-wrap:anywhere}.info dd a{color:var(--main);font-weight:700}.map{display:flex;flex-direction:column;gap:12px}.map iframe{width:100%;aspect-ratio:4 / 3;border:0;border-radius:var(--radius);background:var(--sub)}@media(max-width:479px){.info>div{grid-template-columns:1fr;gap:2px}}@media(min-width:900px){.access{grid-template-columns:1fr 1fr;gap:40px;align-items:start}}.cta{background:var(--main);color:var(--white);padding-block:80px;background-image:radial-gradient(circle at 85% 20%,rgb(164 199 107 / 22%),transparent 45%)}.cta__inner{text-align:center;max-width:860px}.cta .lead{color:#ffffffdb}.cta .form-note{color:#ffffffbf}.footer{background:#0f2c2b;color:#ffffffe0;padding:56px 0 32px;font-size:14px}.footer__top{display:grid;gap:32px}.footer address{margin-top:18px;line-height:1.9}.footer address a,.footer__links a,.footer nav a{color:var(--white)}.footer__cols{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.footer nav li,.footer__links li{padding-block:4px}.footer nav a,.footer__links a{text-decoration:none}.footer nav a:hover,.footer__links a:hover{text-decoration:underline}.footer__bottom{margin-top:36px;padding-top:20px;border-top:1px solid rgb(255 255 255 / 15%);display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between}.footer__top-link{color:var(--white)}@media(min-width:900px){.footer__top{grid-template-columns:1.2fr 1fr}}.mbar{position:fixed;inset:auto 0 0;z-index:40;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fffffff5;box-shadow:0 -1px 0 var(--line),0 -6px 18px #153c3b14}.mbar .btn{min-height:48px;padding:10px 12px;font-size:14px}.mbar .btn--ghost{flex:1}.mbar .btn--primary{flex:2.2}@media(max-width:899px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}@media(min-width:900px){.mbar{display:none}}.nf{min-height:100vh;display:grid;place-items:center;padding:40px var(--gutter)}.nf__box{max-width:640px;width:100%}.nf__box section{padding:20px 0;border-bottom:1px solid var(--line)}.nf__box h1,.nf__box h2{font-size:22px;font-weight:800;color:var(--main)}.nf__box p{margin:6px 0 10px;color:var(--muted)}.nf__box a{color:var(--main);font-weight:700}.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.js .reveal.is-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}}
