@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap";:root{color:#191919;font-synthesis:none;--ink:#191919;--muted:#606060;--line:#cfcfcf;--serif:"Noto Serif JP",serif;--space:clamp(76px,9vw,132px);background:#fff;font-family:Noto Sans JP,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{-webkit-font-smoothing:antialiased;min-width:300px;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{filter:grayscale();max-width:100%;display:block}figure,blockquote,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--serif)}h2{letter-spacing:-.025em;font-size:clamp(29px,3.1vw,42px);font-weight:600;line-height:1.55}p{line-height:1.95}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:5px;outline:2px solid}.wrap{width:min(1260px,88%);margin-inline:auto}.section{padding-block:var(--space)}.section-label{letter-spacing:.16em;color:#696969;margin-bottom:24px;font-size:11px;font-weight:600}.skip-link{z-index:100;background:#fff;border:1px solid;padding:10px;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:none}.hero__mobile-break,.mobile-break{display:none}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;justify-content:space-between;align-items:center;gap:20px;min-height:56px;padding:13px 24px;font-size:13px;font-weight:600;line-height:1.5;transition:background .2s,color .2s;display:inline-flex}.button svg,.text-link svg,.journal__rows svg{flex:none;transition:transform .2s}.button:hover svg,.text-link:hover svg,.journal__rows a:hover svg{transform:translate(5px)}.button:hover{background:#3c3c3c}.button--light{color:var(--ink);background:#fff;border-color:#fff}.button--light:hover{background:#dedede}.text-link{border-bottom:1px solid;align-items:center;gap:20px;padding-bottom:7px;font-size:12px;font-weight:600;display:inline-flex}.mobile-cta{display:none}.header{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;border-bottom:1px solid #e7e7e7;position:sticky;top:0}.header__inner{align-items:center;gap:28px;width:min(1400px,94%);height:82px;margin:auto;display:flex}.brand{flex-direction:column;flex:none;line-height:1;display:flex}.brand strong{letter-spacing:-.045em;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:400}.brand span{letter-spacing:.16em;margin-top:7px;font-size:8px}.nav{align-items:center;gap:25px;margin-left:auto;display:flex}.nav a{white-space:nowrap;padding-block:14px;font-size:12px}.nav a:hover{text-underline-offset:6px;text-decoration:underline}.header__line{min-height:43px;padding:10px 17px;font-size:11px}.menu-button{display:none}.hero{grid-template-columns:49% 51%;max-width:1480px;min-height:620px;margin:auto;display:grid}.hero__copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:70px 5% 60px max(6%,50vw - 630px);display:flex}.hero h1{letter-spacing:-.055em;white-space:nowrap;font-size:clamp(35px,3.45vw,50px);font-weight:700;line-height:1.58}.hero__lead{font-family:var(--serif);margin-top:23px;font-size:clamp(15px,1.3vw,18px);font-weight:600}.hero__description{color:#454545;margin-top:18px;font-size:15px;line-height:2}.hero .button{min-width:290px;margin-top:32px}.hero__notice{color:#5c5c5c;margin-top:14px;font-size:11px}.hero__visual{background:#171717;min-height:620px;position:relative;overflow:hidden}.hero__studio{object-fit:cover;object-position:50% 50%;filter:grayscale()contrast(1.08);width:100%;height:100%;position:absolute}.hero__portrait{background:#161616;border:5px solid #fff;width:31%;height:44%;position:absolute;bottom:5%;right:4%;box-shadow:0 14px 28px #0000004d}.hero__portrait img{object-fit:cover;object-position:50% 30%;width:100%;height:calc(100% - 28px)}.hero__portrait figcaption{text-align:center;background:#fff;height:28px;font-size:10px;line-height:27px}.assurance{border-block:1px solid #bdbdbd}.assurance__inner{text-align:center;font-family:var(--serif);grid-template-columns:repeat(3,1fr);padding:22px 0;font-size:17px;display:grid}.assurance span+span{border-left:1px solid #aaa}.concerns{grid-template-columns:1fr 1.05fr;gap:8%;display:grid}.concerns__intro h2{margin-bottom:26px}.concerns__intro>p:last-child{color:var(--muted);font-size:14px}.concerns__list{border-top:1px solid #aaa;margin:0;padding:0;list-style:none}.concerns__list li{border-bottom:1px solid var(--line);grid-template-columns:62px 1fr;gap:16px;padding:23px 0;display:grid}.concerns__list li>span{color:#888;font-family:Georgia,serif;font-size:33px;font-style:italic;line-height:1}.concerns__list h3{font-size:18px;font-weight:600;line-height:1.65}.concerns__list p{color:var(--muted);margin-top:6px;font-size:12px}.concerns__answer{font-family:var(--serif);margin-top:26px;font-size:22px;font-weight:600}.program{background:#f4f4f3}.program__heading,.reasons__heading,.start__head{grid-template-columns:1fr .78fr;align-items:end;gap:9%;margin-bottom:56px;display:grid}.program__heading>p,.reasons__heading>p,.start__head>p{color:#4f4f4f;font-size:14px}.program__body{grid-template-columns:.88fr 1fr;align-items:stretch;gap:6%;display:grid}.program__photo{background:#232323;min-height:560px;position:relative}.program__photo img{object-fit:cover;width:100%;height:100%}.program__photo figcaption{background:#ffffffeb;padding:5px 8px;font-size:10px;position:absolute;bottom:14px;left:16px}.program__steps{border-top:1px solid #999;align-self:center;margin:0;padding:0;list-style:none}.program__steps li{border-bottom:1px solid #aaa;grid-template-columns:52px 1fr;gap:12px;padding:27px 0;display:grid}.program__number{font-family:Georgia,serif;font-size:29px;line-height:1.2}.program__step-title{flex-wrap:wrap;align-items:baseline;gap:5px 15px;display:flex}.program__step-title h3{font-size:25px;font-weight:600;line-height:1.4}.program__step-title span{font-size:12px;font-weight:600}.program__steps p{color:var(--muted);margin-top:11px;font-size:13px;line-height:1.85}.interlude{background:var(--ink);color:#fff}.interlude__inner{grid-template-columns:1.1fr .9fr auto;align-items:center;gap:35px;padding-block:34px;display:grid}.interlude h2{font-size:clamp(22px,2.35vw,31px)}.interlude p{color:#ddd;font-size:12px}.interlude .button{white-space:nowrap;max-width:255px;font-size:12px}.reasons__heading{margin-bottom:42px}.reasons__grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.reasons__grid article{min-width:0}.reasons__meta{border-top:1px solid #a8a8a8;align-items:baseline;gap:16px;margin-bottom:17px;padding-top:16px;display:flex}.reasons__meta>span{font-family:Georgia,serif;font-size:24px}.reasons__meta h3{font-size:20px;font-weight:600}.reasons__grid img{aspect-ratio:1.37;object-fit:cover;object-position:center;width:100%}.reasons__grid article:nth-child(2) img{object-position:50% 20%}.reasons__grid p{color:var(--muted);margin-top:16px;font-size:13px}.trainer{color:#fff;background:#1c1c1c}.trainer__inner{padding-block:var(--space);grid-template-columns:.76fr 1fr;align-items:center;gap:9%;display:grid}.trainer__portrait{background:#111;align-self:stretch;min-height:530px;overflow:hidden}.trainer__portrait img{object-fit:cover;object-position:50% 27%;width:100%;height:100%}.trainer .section-label{color:#bdbdbd}.trainer__copy>p:not(.section-label){color:#dedede;margin-top:16px;font-size:14px}.trainer__name{align-items:baseline;gap:24px;margin-top:29px;display:flex}.trainer__name strong{font-family:var(--serif);font-size:27px;font-weight:600}.trainer__name span{color:#ccc;font-size:11px}.trainer__facts{border-top:1px solid #777;margin:27px 0 24px}.trainer__facts div{border-bottom:1px solid #555;grid-template-columns:120px 1fr;gap:15px;padding:10px 0;font-size:12px;display:grid}.trainer__facts dt{font-weight:600}.trainer__facts dd{color:#d7d7d7;margin:0}.trainer .text-link{color:#fff}.start__head{margin-bottom:43px}.start__layout{grid-template-columns:1.25fr .7fr;align-items:start;gap:8%;display:grid}.start__steps{border-top:1px solid #aaa;margin:0;padding:0;list-style:none}.start__steps li{border-bottom:1px solid var(--line);grid-template-columns:52px 1fr;gap:18px;padding:24px 0;display:grid}.start__steps li>span{font-family:Georgia,serif;font-size:29px}.start__steps h3{font-size:19px}.start__steps p{color:var(--muted);margin-top:8px;font-size:13px}.start__sample{background:#f2f2f1;padding:30px}.start__sample-title{border-bottom:1px solid #aaa;padding-bottom:15px;font-size:12px;font-weight:600}.start__sample blockquote{font-family:var(--serif);background:#fff;border:1px solid #555;margin:23px 0;padding:23px;font-size:21px;font-weight:600;line-height:1.8}.start__sample>p:not(.start__sample-title){color:var(--muted);margin-bottom:23px;font-size:12px}.start__sample .button{width:100%;min-height:50px;font-size:12px}.faq{background:#f5f5f4}.faq__inner{grid-template-columns:.65fr 1fr;gap:12%;display:grid}.faq__intro>p:last-child{color:var(--muted);margin-top:23px;font-size:13px}.faq__list{border-top:1px solid #999}.faq details{border-bottom:1px solid #bdbdbd}.faq summary{cursor:pointer;justify-content:space-between;gap:16px;padding:23px 0;font-size:14px;font-weight:600;line-height:1.8;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:24px;font-weight:400;line-height:1;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details>p{color:var(--muted);padding:0 33px 24px 0;font-size:13px}.journal__head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;display:flex}.journal__rows{border-top:1px solid #aaa}.journal__rows>a{border-bottom:1px solid var(--line);grid-template-columns:55px 1fr 20px;align-items:center;gap:20px;padding:21px 0;display:grid}.journal__rows>a>span{font-family:Georgia,serif;font-size:23px}.journal__rows h3{font-size:17px;font-weight:600}.journal__rows p{color:var(--muted);margin-top:5px;font-size:12px}.journal__rows a:hover h3{text-underline-offset:5px;text-decoration:underline}.journal__rows svg{justify-self:end}.contact{color:#fff;background:#191919;padding-block:0}.contact__inner{grid-template-columns:1fr .72fr;align-items:center;gap:8%;display:grid}.contact__inner>div{padding-block:75px}.contact h2{font-size:clamp(33px,3.5vw,48px)}.contact p{color:#ddd;margin:24px 0;font-size:13px}.contact .button{min-width:275px}.contact p.contact__note{color:#b8b8b8;margin:14px 0 0;font-size:11px}.contact img{object-fit:cover;width:100%;height:100%;max-height:440px}.access{grid-template-columns:1fr .8fr;align-items:center;gap:10%;display:grid}.access address{margin-top:30px;font-size:14px;font-style:normal;line-height:2}.access dl{border-top:1px solid var(--line);max-width:510px;margin:22px 0}.access dl div{border-bottom:1px solid var(--line);grid-template-columns:95px 1fr;padding:10px 0;font-size:12px;display:grid}.access dt{color:var(--muted)}.access dd{margin:0}.access>img{aspect-ratio:1.15;object-fit:cover;width:100%}.access__phone{border-bottom:1px solid;width:fit-content;margin-top:23px;font-size:12px;display:block}.footer{border-top:1px solid #ddd;align-items:center;gap:28px;min-height:145px;padding-block:30px;display:flex}.footer nav{gap:24px;margin-left:auto;font-size:11px;display:flex}.footer small{color:var(--muted);font-size:10px}@media (width<=1120px){.header__inner{gap:19px}.nav{gap:16px}.nav a{font-size:11px}.hero{grid-template-columns:50% 50%;min-height:550px}.hero__copy{padding-left:6%}.hero h1{font-size:clamp(34px,3.65vw,42px)}.hero__visual{min-height:550px}.hero__description{font-size:13px}.hero__portrait{width:31%;height:43%}.program__photo{min-height:510px}.interlude__inner{grid-template-columns:1fr 1fr}.interlude .button{grid-column:1/-1;width:max-content}.reasons__grid{gap:16px}.reasons__meta h3{font-size:18px}.footer{flex-wrap:wrap}.footer small{text-align:right;width:100%}}@media (width<=760px){:root{--space:72px}html{scroll-padding-top:82px}body{padding-bottom:74px}.wrap{width:88%}.header__inner{justify-content:space-between;width:88%;height:70px}.brand strong{font-size:26px}.brand span{font-size:7px}.header__line{display:none}.menu-button{background:0 0;border:0;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;padding:8px;display:flex}.menu-button span{background:#191919;width:27px;height:1px;transition:transform .2s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(4px)rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-4px)rotate(-45deg)}.nav{border-bottom:1px solid var(--line);background:#fff;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:14px 6%;display:none;position:absolute;top:70px;left:0;right:0}.nav--open{display:flex}.nav a{padding:16px 0;font-size:14px}.hero{min-height:0;display:block}.hero__copy{padding:47px 6% 36px}.hero h1{white-space:normal;font-size:clamp(29px,7.8vw,38px);line-height:1.6}.hero__mobile-break{display:block}.hero__lead{margin-top:19px;font-size:clamp(13px,3.3vw,16px)}.hero__description{margin-top:15px;font-size:13px}.hero .button{width:100%;min-width:0;max-width:355px;margin-top:27px}.hero__notice{max-width:345px;font-size:10px;line-height:1.8}.hero__visual{height:330px;min-height:0}.hero__portrait{border-width:3px;width:32%;height:48%;bottom:6%}.hero__portrait img{height:calc(100% - 22px)}.hero__portrait figcaption{height:22px;font-size:8px;line-height:21px}.assurance__inner{padding:15px 0;font-size:12px}.section-label{margin-bottom:17px;font-size:10px}h2{font-size:clamp(27px,6.9vw,34px)}.concerns{display:block}.concerns__intro h2{margin-bottom:20px}.concerns__intro>p:last-child{font-size:13px}.concerns__right{margin-top:34px}.concerns__list li{grid-template-columns:43px 1fr;gap:10px;padding:20px 0}.concerns__list li>span{font-size:27px}.concerns__list h3{font-size:15px}.concerns__list p{font-size:11px}.concerns__answer{margin-top:24px;font-size:18px}.program__heading,.reasons__heading,.start__head{margin-bottom:34px;display:block}.program__heading>p,.reasons__heading>p,.start__head>p{margin-top:18px;font-size:13px}.program__body{display:block}.program__photo{height:300px;min-height:0}.program__steps{margin-top:20px}.program__steps li{grid-template-columns:40px 1fr;padding:22px 0}.program__number{font-size:25px}.program__step-title h3{font-size:23px}.program__step-title span{font-size:11px}.program__steps p{font-size:12px}.interlude__inner{padding-block:35px;display:block}.interlude h2{font-size:clamp(22px,5.5vw,29px)}.mobile-break{display:block}.interlude p{margin:17px 0;font-size:12px}.interlude .button{width:100%;max-width:none;font-size:11px}.reasons__grid{grid-template-columns:1fr;gap:38px}.reasons__meta{margin-bottom:13px}.reasons__grid img{aspect-ratio:1.7}.reasons__grid p{margin-top:12px;font-size:12px}.trainer__inner{display:block}.trainer__portrait{width:82%;height:370px;min-height:0;margin:0 auto 38px}.trainer__copy>p:not(.section-label){font-size:13px}.trainer__facts div{grid-template-columns:100px 1fr;font-size:11px}.start__layout{display:block}.start__steps li{grid-template-columns:42px 1fr;gap:12px;padding:21px 0}.start__steps h3{font-size:17px}.start__steps p{font-size:12px}.start__sample{margin-top:28px;padding:25px}.start__sample blockquote{font-size:19px}.faq__inner{display:block}.faq__intro>p:last-child{margin:17px 0 28px;font-size:12px}.faq summary{padding:20px 0;font-size:13px}.faq details>p{font-size:12px}.journal__head{display:block}.journal__head .text-link{margin-top:16px}.journal__rows>a{grid-template-columns:30px 1fr 20px;gap:11px;padding:18px 0}.journal__rows>a>span{font-size:20px}.journal__rows h3{font-size:14px}.journal__rows p{font-size:11px}.contact__inner{display:block}.contact__inner>div{padding-block:60px}.contact h2{font-size:35px}.contact p{font-size:12px}.contact .button{width:100%;min-width:0}.contact img{height:195px;margin-top:0}.access{display:block}.access address{font-size:12px}.access>img{aspect-ratio:1.7;margin-top:35px}.footer{min-height:0;display:block}.footer nav{flex-wrap:wrap;gap:16px;margin:25px 0;display:flex}.footer small{text-align:left;display:block}.mobile-cta{z-index:30;border-top:1px solid var(--line);background:#fffffffa;padding:9px 6%;display:block;position:fixed;bottom:0;left:0;right:0}.mobile-cta .button{width:100%;min-height:50px;font-size:12px}}@media (width<=350px){.hero h1{font-size:27px}.hero__lead{font-size:12px}.hero__portrait{width:36%}.assurance__inner{font-size:11px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
