@charset "UTF-8";
:root{--paper:#fdfcf9;--ink:#263c34;--muted:#53635b;--sage:#e9eee6;--sage-deep:#476252;--line:#cad3c7;--clay:#a94f32;--sand:#f3e9dd;--shadow:0 4px 0 #753823,0 9px 18px #55382417;color-scheme:light;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;line-height:1.85;overflow-wrap:anywhere}body.dialog-open{overflow:hidden}h1,h2,h3,p,figure,dl,dd{margin:0}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block;object-fit:cover}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid #96502e;outline-offset:5px}a,button,summary{touch-action:manipulation}[hidden]{display:none!important}.site-wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.skip-link{position:fixed;top:8px;left:8px;z-index:50;background:#fff;padding:12px;transform:translateY(-170%)}.skip-link:focus{transform:translateY(0)}.sample-bar{background:var(--sage);font-size:12px;line-height:1.6}.sample-bar>.site-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:10px}.sample-bar a{font-weight:700}.site-header{display:flex;align-items:center;gap:30px;min-height:102px}.brand{font-family:Georgia,"Times New Roman",serif;display:inline-flex;align-items:baseline;gap:9px;font-size:39px;line-height:1;text-decoration:none;letter-spacing:-1.5px}.brand>span{font-size:17px;letter-spacing:.5px}.site-header nav{display:flex;gap:25px;margin-left:auto;font-size:13px;font-weight:700}.site-header nav a{text-decoration:none;padding-block:14px}.site-header nav a:hover{text-decoration:underline}.button{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:58px;padding:14px 24px;border:1px solid var(--clay);border-radius:7px;background:var(--clay);color:#fff;text-decoration:none;text-align:left;font-size:14px;font-weight:700;line-height:1.5;box-shadow:var(--shadow);transition:transform .18s,box-shadow .18s}.button:hover{transform:translateY(-2px);box-shadow:0 6px 0 #753823,0 13px 23px #55382420}.button:active{transform:translateY(2px);box-shadow:0 1px 0 #753823}.button>span[aria-hidden]{font-size:21px;font-weight:400;flex:none}.button-outline{color:var(--ink);background:#fff;border-color:#8a9c8e;box-shadow:0 3px 0 #c4cec2,0 8px 17px #334c3610}.button-outline:hover{box-shadow:0 5px 0 #c4cec2,0 11px 20px #334c3615}.button-small{min-height:45px;padding:11px 17px;font-size:13px}.action-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.hero{display:grid;grid-template-columns:.94fr 1.06fr;grid-template-rows:1fr auto;gap:32px 50px;padding-block:35px 64px;align-items:center}.hero-copy{padding-top:20px}.hero-label{font-size:13px;font-weight:700;letter-spacing:.06em;margin-bottom:21px}.hero h1{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(32px,3.25vw,43px);font-weight:600;line-height:1.75;letter-spacing:.03em;white-space:nowrap}.hero-description{color:var(--muted);font-size:14px;margin-top:23px;line-height:2}.hero-photo{grid-column:2;grid-row:1/3;position:relative;align-self:stretch;min-height:440px}.hero-photo img{height:100%;width:100%;border-radius:45% 45% 9px 9px;object-position:56% center}.hero-photo figcaption{position:absolute;bottom:12px;right:14px;font-size:12px;background:#fdfcf9e8;padding:3px 10px;border-radius:3px;color:var(--muted)}.hero-actions{align-self:start;padding-bottom:38px}.hero-actions .action-pair{grid-template-columns:1fr;max-width:340px;gap:17px}.sample-note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:20px}.section-space{padding-block:80px}.section-heading{max-width:760px;margin-bottom:35px}.section-heading h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-weight:600;font-size:clamp(26px,2.65vw,35px);line-height:1.7;letter-spacing:.03em}.section-heading p{font-size:15px;margin-top:16px;color:var(--muted)}.lessons-section{border-top:1px solid var(--line)}.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.lesson-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.lesson-visual{aspect-ratio:1.55;position:relative;overflow:hidden;background:var(--sage)}.lesson-visual img{width:100%;height:100%}.machine-private .lesson-visual img{object-position:left center;transform:scale(1.12)}.machine-group .lesson-visual img{object-position:right center}.lesson-visual svg{width:100%;height:100%}.lesson-type{position:absolute;bottom:14px;left:18px;background:#fffef9;padding:4px 12px;border-radius:3px;font-size:12px;font-weight:700;box-shadow:0 2px 8px #2036280c}.lesson-body{padding:27px 24px 30px;display:flex;flex-direction:column;flex:1}.lesson-body h3{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-weight:600;font-size:21px;letter-spacing:-.02em;line-height:1.65}.lesson-body>p{font-size:13px;color:var(--muted);margin-top:13px;line-height:1.9}.lesson-spec{font-size:12px;margin-top:auto;padding-top:23px}.lesson-spec>div{display:flex;justify-content:space-between;gap:15px;padding-block:8px;border-bottom:1px solid var(--line)}.lesson-spec dt{color:var(--muted)}.lesson-spec dd{font-weight:700}.lesson-price{padding-block:22px}.lesson-price>p:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.lesson-price>p>span{font-size:12px}.lesson-price strong{font-size:29px;font-weight:500;letter-spacing:-1px}.lesson-price strong small{font-size:13px;letter-spacing:0;margin-left:5px}.trial-price{text-align:right;font-size:12px;color:var(--muted);margin-top:3px}.trial-price b{font-weight:500;color:var(--ink);margin-left:8px}.lesson-body>.button{font-size:12px;padding-inline:16px;margin-top:2px}.fee-note{margin-top:20px}.fee-details{margin-top:36px;padding:30px 34px;background:var(--sage);border-radius:9px}.fee-details h3{font-size:19px}.fee-details>p:not(.sample-note){font-size:13px;color:var(--muted);margin-top:8px}.fee-details>dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:23px;gap:25px}.fee-details>dl>div{border-top:1px solid #adbba9;padding-top:16px}.fee-details dt{font-size:12px;color:var(--muted)}.fee-details dd{font-size:16px;font-weight:700;margin-top:5px}.fee-details dd span{display:block;font-size:12px;font-weight:400;color:var(--muted)}.studio-section{background:#f1eee6}.studio-photo{position:relative}.studio-photo img{width:100%;height:auto;max-height:470px;border-radius:9px;object-position:center 56%}.studio-photo figcaption{position:absolute;bottom:14px;left:18px;font-size:12px;padding:4px 11px;border-radius:3px;background:#fdfcf9ed;color:var(--muted)}.studio-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:35px}.studio-points h3{font-size:20px}.studio-points p{font-size:14px;color:var(--muted);margin-top:10px;max-width:440px}.flow-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:40px}.flow-list li{position:relative;border-top:1px solid var(--line);padding-top:22px}.step-number{display:block;font-family:Georgia,serif;font-size:34px;color:var(--sage-deep);line-height:1.3;margin-bottom:17px}.flow-list h3{font-size:18px}.flow-list p{margin-top:10px;color:var(--muted);font-size:14px}.faq-section{padding-top:0}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;position:relative;list-style:none;padding:23px 50px 23px 0;font-size:16px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"＋";position:absolute;right:8px;top:20px;font-size:24px;color:var(--sage-deep);font-weight:400}.faq-list details[open] summary::after{content:"−"}.faq-list details p{font-size:14px;color:var(--muted);padding:0 48px 25px 0;max-width:850px}.trial-section{background:var(--sage);text-align:center}.trial-inner{max-width:760px}.trial-section h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:35px;font-weight:600;line-height:1.7}.trial-section .trial-inner>p:not(.sample-note){font-size:15px;margin-top:19px;color:var(--muted)}.trial-section .button{max-width:380px;margin:30px auto 0}#trial-guide{font-size:12px;color:var(--muted);max-width:520px;margin:26px auto 0;text-align:left}#trial-guide summary{text-align:center;cursor:pointer}#trial-guide p{margin-block:15px}.site-footer{padding-block:47px 40px;display:flex;flex-wrap:wrap;align-items:center;gap:15px 28px}.site-footer p{font-size:12px;color:var(--muted);margin-left:auto}.return-link{font-size:13px;display:block;flex-basis:100%;margin-top:13px}.mobile-only,.mobile-cta{display:none}dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 48px);border:1px solid var(--line);border-radius:15px;padding:0;color:var(--ink);background:var(--paper);box-shadow:0 25px 90px #152e3a35;overscroll-behavior:contain}dialog::backdrop{background:#13271ed1}.dialog-inner{padding:42px 32px 32px;position:relative}.dialog-close{position:absolute;top:10px;right:10px;border:0;border-radius:50%;width:40px;height:40px;color:var(--ink);background:var(--sage);font-size:25px;line-height:1}.dialog-inner>h2{font-size:22px;line-height:1.6}.dialog-inner>p{font-size:13px;color:var(--muted);margin-top:10px}.dialog-inner>.dialog-notice{background:var(--sage);padding:12px 15px;border-radius:5px;font-size:12px;margin-block:20px 25px}fieldset{padding:0;border:0;margin:0 0 25px;min-width:0}legend,.field>label{font-size:14px;font-weight:700;padding:0;display:block;margin-bottom:12px}legend>span,.field>label>span{font-size:12px;font-weight:500;background:var(--sage);padding:2px 6px;border-radius:3px;margin-left:8px}.lesson-options{display:grid;gap:9px}.radio-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;font-size:14px;line-height:1.6;cursor:pointer;min-height:51px;background:#fff}.radio-option:has(input:checked){background:var(--sage);border-color:var(--sage-deep)}.radio-option input{width:18px;height:18px;accent-color:var(--sage-deep);margin:0;flex:none}.radio-option small{font-size:12px;color:var(--muted);display:block;margin-top:2px}.field{margin-bottom:24px}.field select{display:block;width:100%;min-height:50px;padding:10px 35px 10px 13px;border:1px solid #9cafa1;border-radius:6px;color:var(--ink);background:#fff;font-size:16px}.field-note{font-size:12px;color:var(--muted);margin-top:8px}.dialog-submit{width:100%;margin-top:8px}#trial-preview h3{font-size:21px;line-height:1.6}.preview-list{margin-top:20px}.preview-list>div{padding:16px 0;border-bottom:1px solid var(--line)}.preview-list dt{font-size:12px;color:var(--muted)}.preview-list dd{font-size:14px;font-weight:700;margin-top:5px}.preview-notice{font-size:13px;margin-top:23px;background:var(--sage);border-radius:5px;padding:15px}.preview-actions{margin-top:26px}.preview-actions .button{justify-content:center;padding-inline:12px}
@media(max-width:1100px){.site-wrap{width:calc(100% - 56px)}.site-header{gap:20px}.site-header nav{gap:17px}.hero{gap:25px 30px}.hero h1{font-size:32px}.lesson-grid{gap:16px}.lesson-body{padding:23px 19px 27px}.lesson-body h3{font-size:19px}.lesson-body>.button{padding-inline:12px;font-size:12px;gap:9px}.lesson-spec>div{display:block}.lesson-spec dd{margin-top:2px}.lesson-price strong{font-size:27px}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-wrap{width:calc(100% - 40px)}.sample-bar>.site-wrap{font-size:12px;gap:10px;padding-block:8px}.sample-bar a{white-space:nowrap}.site-header{min-height:77px;gap:10px;flex-wrap:wrap;padding-block:16px}.brand{font-size:33px}.brand>span{font-size:14px}.site-header nav{display:none}.site-header>.button{margin-left:auto;min-height:40px;padding:9px 13px;font-size:12px;gap:12px}.hero{padding-block:18px 44px;display:flex;flex-direction:column;gap:24px;align-items:stretch}.hero-copy{padding-top:0}.hero-label{font-size:12px;margin-bottom:12px}.hero h1{font-size:clamp(28px,6.8vw,39px);line-height:1.65;letter-spacing:.025em;white-space:normal}.hero-description{font-size:12px;margin-top:14px;line-height:1.9}.hero-photo{min-height:0;aspect-ratio:1.47}.hero-photo img{border-radius:90px 9px 9px 9px;object-position:57% center}.hero-photo figcaption{bottom:10px;right:10px;font-size:12px;padding:2px 8px}.hero-actions{padding:0}.hero-actions .action-pair{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:12px}.hero-actions .button{padding:12px;min-height:54px;font-size:12px;gap:8px}.hero-actions .button>span[aria-hidden]{font-size:18px}.hero-actions .sample-note{font-size:12px;margin-top:15px}.section-space{padding-block:49px}.section-heading{margin-bottom:26px}.section-heading h2{font-size:27px;line-height:1.6}.section-heading p{font-size:13px;margin-top:12px}.wide-only{display:none}.mobile-only{display:block}.lesson-grid{grid-template-columns:1fr;gap:24px}.lesson-visual{aspect-ratio:1.8}.lesson-body{padding:25px 24px 28px}.lesson-body h3{font-size:23px}.lesson-body>p{font-size:14px}.lesson-spec{padding-top:18px;font-size:13px}.lesson-spec>div{display:flex}.lesson-spec dd{margin-top:0}.lesson-price{padding-block:18px}.lesson-price strong{font-size:31px}.lesson-price>p>span,.trial-price{font-size:13px}.lesson-body>.button{font-size:14px;padding-inline:18px}.fee-details{padding:25px 22px;margin-top:27px}.fee-details h3{font-size:18px}.fee-details>dl{grid-template-columns:1fr;gap:0;margin-top:20px}.fee-details>dl>div{display:flex;justify-content:space-between;gap:15px;padding-block:14px}.fee-details dt{font-size:12px;padding-top:2px}.fee-details dd{font-size:14px;text-align:right;margin-top:0}.fee-details .sample-note{margin-top:8px}.studio-photo img{aspect-ratio:1.1;object-position:43% center}.studio-photo figcaption{bottom:10px;left:10px;font-size:12px;padding-inline:8px}.studio-points{grid-template-columns:1fr;gap:22px;margin-top:27px}.studio-points h3{font-size:18px}.studio-points p{font-size:13px;margin-top:7px}.flow-list{grid-template-columns:1fr;gap:0}.flow-list li{padding:24px 0 24px 52px}.flow-list li:last-child{padding-bottom:0}.step-number{position:absolute;left:0;top:22px;font-size:28px}.flow-list h3{font-size:18px}.flow-list p{font-size:13px;margin-top:7px}.faq-section{padding-top:0}.faq-list summary{font-size:14px;line-height:1.8;padding:20px 38px 20px 0}.faq-list summary::after{top:16px;right:0}.faq-list details p{font-size:13px;padding:0 13px 20px 0}.trial-section h2{font-size:29px}.trial-section .trial-inner>p:not(.sample-note){font-size:13px}.trial-section .button{margin-top:24px}.site-footer{padding-block:35px 130px;display:block}.site-footer p{margin-top:20px}.return-link{font-size:12px;margin-top:15px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;display:block;padding:10px 20px calc(6px + env(safe-area-inset-bottom));background:#fdfcf9f7;border-top:1px solid var(--line);z-index:5;box-shadow:0 -4px 20px #3440340a}.mobile-cta>.button{max-width:500px;margin-inline:auto;min-height:44px;font-size:13px;padding-block:10px}.mobile-cta>span{display:block;font-size:12px;color:var(--muted);line-height:1.5;text-align:center;margin-top:7px}.dialog-open .mobile-cta{visibility:hidden}dialog{width:calc(100% - 24px);max-height:calc(100dvh - 32px);border-radius:12px}.dialog-inner{padding:42px 23px 27px}.dialog-inner>h2{font-size:21px}.dialog-inner>p{font-size:12px}.preview-actions{gap:12px}.preview-actions .button{font-size:12px;padding:12px 10px;min-height:52px}.sample-note{font-size:12px}}
@media(max-width:360px){.site-wrap{width:calc(100% - 32px)}.sample-bar>.site-wrap{font-size:12px;gap:6px}.hero h1{font-size:26px}.hero-actions .action-pair{grid-template-columns:1fr}.hero-actions .button{font-size:13px;min-height:48px}.section-heading h2{font-size:24px}.lesson-body{padding-inline:21px}.dialog-inner{padding-inline:18px}.radio-option{font-size:13px}.mobile-cta{padding-inline:16px}.site-header>.button{font-size:12px;padding-inline:10px}.brand{font-size:29px}.brand>span{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
