/* Independently authored from the supplied visual reference, with original photos.
   Design read: Japanese beauty LP with blue hero, pink ribbons and green CTAs.
   DESIGN_VARIANCE:4; MOTION_INTENSITY:2; VISUAL_DENSITY:6.
   Fixed light theme and repeated layouts follow the user's explicit reference. */
:root{color-scheme:light;--text:#404040;--muted:#656565;--pink:#f0dee6;--pink-light:#fcf7f9;--pink-line:#e9dfe4;--rose:#a33f37;--mincho:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;--gothic:var(--mincho)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:12px}body{margin:0;font:16px/1.9 var(--gothic);color:var(--text);background:#fff}p,h1,h2,h3,h4,figure,blockquote,dl{margin:0}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button{font:inherit;cursor:pointer;color:inherit}button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #245995;outline-offset:5px}button:active,a.cta-button:active{transform:translateY(2px)}mark{background:linear-gradient(transparent 10%,#fff28c 10%,#fff28c 94%,transparent 94%);color:inherit;padding:1px 2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.page-width{width:min(960px,calc(100% - 40px));margin-inline:auto}.section-body{padding:52px 0 56px}.section-band{font-size:30px;line-height:1.55;padding:26px 20px;text-align:center;font-weight:700;background:var(--pink);position:relative}.section-band:after{content:"";position:absolute;left:50%;bottom:-20px;transform:translateX(-50%);border-top:21px solid var(--pink);border-left:23px solid transparent;border-right:23px solid transparent}.secondary-band{font-size:27px}.subheading{font-size:28px;line-height:1.7;text-align:center;margin:5px 0 30px}.center{text-align:center}.small-note{font-size:12px;line-height:1.8;color:var(--muted);margin-top:20px}.body-copy{margin-top:24px;line-height:2}.sp-only{display:none}.skip-link{position:fixed;left:12px;top:-80px;background:#fff;padding:12px;z-index:10}.skip-link:focus{top:10px}
.hero{max-width:1280px;margin:auto;overflow:hidden}.hero-top{padding:14px 20px 18px;text-align:center;background:linear-gradient(95deg,#e5ebf2,#a8b8cf 48%,#698aba);font-family:var(--mincho);color:#fff;text-shadow:1px 1px 3px #4e709d,0 0 5px #6d8dba;line-height:1.5;letter-spacing:.04em}.hero-top p:first-child{font-size:30px}.hero-top p:last-child{font-size:52px}.hero-stage{position:relative;aspect-ratio:1.16;isolation:isolate;overflow:hidden;background:#edf5fa}.hero-model{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:-1}.hero-content{position:absolute;left:4.4%;top:4%;width:60%;height:92%}.hero-lead{font:700 46px/1.45 var(--mincho);color:#ad760e;text-shadow:1px 1px 0 #fff}.hero-lead>span{padding-left:9%}.hero h1{font:700 113px/1.26 var(--mincho);color:#fff;letter-spacing:.04em;text-shadow:2px 2px 0 #6e8fba,-1px -1px 0 #6e8fba,0 0 8px #6e8fba,0 0 22px #a4b6d4;margin-top:7%;width:75%}.hero h1>span{white-space:nowrap}.hero-tags{display:grid;grid-template-columns:1fr 1fr;width:75%;gap:9px;margin-top:6%}.hero-tags span{font:700 25px/1.4 var(--mincho);border:1px solid #8293a2;background:linear-gradient(#f3f5f7,#d4d7dc);text-align:center;padding:9px 5px;color:#263340;box-shadow:inset 0 0 0 2px #f4f7f9}.hero-message{position:absolute;right:3%;bottom:7%;font:700 38px/1.4 var(--mincho);color:#fff;text-align:center;text-shadow:1px 1px 2px #a77724,0 0 6px #bc8416,0 0 20px #edc772}.hero-message strong{font-size:57px}.hero-photo-note{position:absolute;bottom:5px;right:12px;color:#404c60;font-size:11px;background:#ffffffc9;padding:0 5px}.hero-bottom{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:24px;min-height:210px;padding:12px 8% 12px 5%;background:linear-gradient(100deg,#e8ebf3,#aebcd3 45%,#7195c4);color:#fff;font-family:var(--mincho)}.gold-seal{border-radius:50%;width:185px;height:185px;display:flex;flex-direction:column;justify-content:center;align-items:center;line-height:1.3;color:#3e3320;background:linear-gradient(130deg,#fff5b8,#f5df8b 35%,#c39a3b 72%,#f4df96);border:2px solid #d0ab50;outline:2px solid #ecdb9b;outline-offset:4px;box-shadow:inset 0 0 0 5px #f2df9f}.gold-seal span{font-size:19px}.gold-seal strong{font-size:30px}.gold-seal b{font-size:44px}.hero-course{text-align:center;text-shadow:1px 1px 3px #6a85ab}.hero-course>p:first-child{font-size:23px}.hero-course>p:last-child{font-size:27px;line-height:1.5}.hero-course strong{font-size:63px;font-weight:500;letter-spacing:-.02em}.hero-course>p:last-child>span{font-size:24px;margin-left:14px}
.cta-block{padding:30px 20px 44px;text-align:center;background:#fff}.cta-call{font-size:28px;font-weight:700;line-height:1.5;margin-bottom:26px;display:flex;justify-content:center;align-items:center;gap:22px}.cta-call:before,.cta-call:after{content:"";width:2px;height:43px;background:#252525;transform:rotate(-24deg)}.cta-call:after{transform:rotate(24deg)}.cta-button{display:block;position:relative;width:min(720px,100%);margin:auto;border:3px solid #fff;border-radius:25px;padding:23px 38px;color:#fff;background:linear-gradient(#8abf65,#3c8128 17%,#32751f 80%,#448c2b);box-shadow:2px 5px 6px #00000050,inset 0 1px 4px #b7df90;font-size:27px;line-height:1.25;font-weight:700;text-align:center;text-shadow:1px 2px 1px #26551a;transition:filter .15s,transform .15s}.cta-button:hover{filter:brightness(1.05)}.cta-button strong{font-size:31px}.cta-button>span{position:absolute;right:22px;top:50%;transform:translateY(-52%);font:400 50px/1 Arial,sans-serif}.cta-caption{margin-top:17px;font-size:13px}.compact{padding-top:10px;padding-bottom:45px}.compact .cta-call{font-size:26px}.final-cta{padding-top:0;padding-bottom:60px}
.problem-section{padding-bottom:40px}.question-banner{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;background:linear-gradient(90deg,#fff,#f1f1f1);min-height:250px}.question-banner h2{font-size:39px;line-height:1.6;text-align:center;z-index:1}.question-banner img{height:285px;object-fit:cover;object-position:42% 65%}.check-list{list-style:none;padding:0;margin:20px 0}.check-list>li{padding:18px 7px 18px 49px;border-bottom:1px dashed #c9c9c9;position:relative;line-height:1.8;font-weight:600}.check-list>li:before{content:"✓";position:absolute;top:8px;left:1px;font:700 35px/1.5 Arial,sans-serif;color:#646464}.problem-list{color:var(--rose)}.problem-message{margin-top:32px}.problem-message>p{margin-top:24px;line-height:2}.problem-message .emphasis{font-size:22px;font-weight:700;color:var(--rose)}.goal-compare{display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;margin:15px auto 22px;max-width:820px}.goal-compare>div{padding:28px 12px;text-align:center;border:2px solid var(--pink-line);background:#fff;min-height:240px;display:flex;flex-direction:column;justify-content:center}.goal-compare>div:last-child{background:var(--pink-light);border-color:#ddbdcc}.goal-label{font-size:15px;color:var(--rose);font-weight:700;margin-bottom:12px}.goal-compare h3{font-size:23px;line-height:1.6}.goal-compare>div>p:last-child{font-size:14px;margin-top:14px}.compare-arrow{font-size:30px;text-align:center;color:#cba6b8}.future-section .subheading{margin-top:42px}.barrier-group{max-width:780px;margin:auto}.barrier-group>div{padding:20px 0}.barrier-group h4{font-size:21px;color:var(--rose);text-align:center;text-decoration:underline;text-underline-offset:5px;font-weight:500;margin-bottom:16px}.barrier-group p{font-size:16px;line-height:2;border-bottom:1px dashed #ccc;padding-bottom:20px}.solution-statement{text-align:center;font-size:25px;line-height:1.8;margin:25px 0 8px}.solution-statement strong{font-size:29px}
.reason-list{padding-top:54px;padding-bottom:52px;display:grid;gap:55px}.reason{position:relative;border:3px solid var(--pink-line);border-radius:23px;padding:75px 45px 35px;background:#fff;max-width:800px;width:100%;margin:auto}.reason-ribbon{position:absolute;left:0;right:23px;top:-17px;height:65px;display:flex;align-items:center;padding:0 30px 0 125px;background:var(--pink);font-size:21px;line-height:1.4;overflow:visible}.reason-ribbon:after{content:"";position:absolute;inset:5px 12px 5px 20px;border-top:2px dashed #fff;border-bottom:2px dashed #fff;pointer-events:none}.reason-number{position:absolute;left:0;top:-11px;width:86px;height:86px;border-radius:50%;background:var(--pink);border:3px solid #fff;outline:2px dashed #fff;outline-offset:-7px;font:700 48px/1 Arial,sans-serif;display:grid;place-items:center;z-index:1}.reason-image{max-height:350px;aspect-ratio:1.55;object-fit:cover;object-position:center 55%}.reason>p{line-height:2;margin-top:25px}.reason-text-visual{background:linear-gradient(120deg,#fdfbfc,var(--pink-light));padding:36px 10px;text-align:center;font:24px/1.9 var(--mincho);color:#705565}.reason-text-visual strong{font-size:27px}.curriculum-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.curriculum-grid article{padding:25px;background:var(--pink-light);border:1px solid var(--pink-line);border-radius:16px}.curriculum-grid h4{font-size:22px;text-align:center;line-height:1.5;border-bottom:1px solid #dfcad4;padding-bottom:16px}.curriculum-grid p{font-size:15px;line-height:1.9;margin-top:17px}
.salon-photo{margin:auto;max-width:820px}.salon-photo img{aspect-ratio:1.85;object-fit:cover}.salon-photo figcaption{font-size:11px;text-align:right;color:var(--muted);margin-top:5px}.profile-heading{text-align:center;margin:32px 0}.profile-heading>p{font-size:16px}.profile-heading h3{font-size:30px;line-height:1.7;margin-top:13px}.profile-facts{display:grid;grid-template-columns:1fr 1fr;max-width:700px;margin:30px auto;gap:20px}.profile-facts>div{text-align:center;padding:20px;background:var(--pink-light);border:1px solid var(--pink-line)}.profile-facts span{display:block;font-size:14px;line-height:1.7}.profile-facts strong{display:block;font-size:37px;color:#946477;line-height:1.5}.teacher-letter{background:var(--pink-light);border:2px solid var(--pink-line);padding:37px 40px;margin-top:35px;line-height:2}.teacher-letter h3{font-size:25px;line-height:1.7;text-align:center;margin-bottom:25px}.teacher-letter>p+p{margin-top:22px}.letter-signature{text-align:right}.voice-box{border:3px solid var(--pink-line);background:var(--pink-light);border-radius:20px;max-width:800px;margin:10px auto 30px;padding:33px 30px;text-align:center}.quote-mark{font:74px/.8 Georgia,serif;color:#b58b9d}.voice-box blockquote>p{font:600 31px/1.9 var(--mincho)}.voice-box cite{display:block;font-size:13px;font-style:normal;margin-top:20px}.faq-title{font-size:27px;text-align:center;margin:45px 0 25px}.faq-list details{border-bottom:1px solid #ddd;padding:20px 0}.faq-list summary{display:flex;align-items:baseline;gap:14px;font-size:19px;font-weight:700;cursor:pointer;list-style:none;padding-right:24px;position:relative;line-height:1.7}.faq-list summary:after{content:"＋";position:absolute;right:0;top:1px;font-weight:400}.faq-list details[open] summary:after{content:"−"}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font:25px/1.7 Arial,sans-serif;color:#986078}.faq-list details>div{display:flex;gap:14px;margin-top:15px;padding-right:25px}.faq-list details>div>span{font:25px/1.5 Arial,sans-serif;color:#6989a7;flex-shrink:0}.faq-list details p{font-size:15px;line-height:2}
.consultation-table{max-width:760px;margin:35px auto;border-top:1px solid #d3d3d3}.consultation-table>div{display:grid;grid-template-columns:42% 58%;border-bottom:1px solid #d3d3d3}.consultation-table dt{background:#f5f5f5;padding:18px 22px;font-weight:500}.consultation-table dd{margin:0;padding:18px 22px}.consultation-table dd strong{color:var(--rose)}.consultation-flow{max-width:760px;margin:42px auto 0}.consultation-flow>h3{font-size:23px;text-align:center}.consultation-flow ol{list-style:none;padding:0;margin:25px 0 0;display:grid;gap:21px}.consultation-flow li{display:flex;gap:20px;align-items:flex-start;padding:23px;background:var(--pink-light);border:1px solid var(--pink-line)}.consultation-flow li>span{width:38px;height:38px;border-radius:50%;background:var(--pink);display:grid;place-items:center;font-size:23px;line-height:1;flex-shrink:0}.consultation-flow h4{font-size:18px;line-height:1.8}.consultation-flow p{font-size:14px;margin-top:5px}.final-cta .cta-call{font-size:27px}footer{padding:43px 20px 25px;background:#f2f2f2;text-align:center;font-size:13px}footer>.page-width>p{margin-top:15px}.footer-brand{font:40px/1.5 Georgia,serif;margin-top:0!important}.footer-brand span{font-size:19px}.footer-links{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;margin:24px 0 12px}.footer-links button{font-size:12px;border:0;border-bottom:1px solid #555;background:none;padding:3px 0}.copyright{font-size:11px;color:#777}.footer-links button:hover{color:var(--rose)}
dialog{border:2px solid var(--pink-line);border-radius:16px;padding:0;background:#fff;color:var(--text);width:min(520px,calc(100% - 32px));max-height:85dvh;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#0007}.dialog-inner{padding:44px 36px 32px;position:relative}.dialog-close{position:absolute;right:6px;top:4px;border:0;background:transparent;font-size:30px;width:44px;height:44px;line-height:1}.dialog-inner>p{font-size:12px;color:var(--muted)}.dialog-inner h2{font-size:25px;margin:12px 0 20px}.dialog-inner p{font-size:14px;line-height:2}.dialog-inner p+p{margin-top:15px}.dialog-info{background:var(--pink-light);padding:18px;margin-top:20px}.booking-status{font-weight:700}.dialog-dismiss{border:0;border-bottom:1px solid #666;background:none;padding:6px 0;margin-top:25px;font-size:13px}
@media(max-width:1000px){.hero-top p:first-child{font-size:2.5vw}.hero-top p:last-child{font-size:4.1vw}.hero-lead{font-size:3.7vw}.hero h1{font-size:9.1vw}.hero-tags span{font-size:2.1vw}.hero-message{font-size:3.2vw}.hero-message strong{font-size:4.5vw}.hero-bottom{grid-template-columns:17vw 1fr;gap:2vw;min-height:17vw;padding-block:1vw}.gold-seal{width:15vw;height:15vw}.gold-seal span{font-size:1.5vw}.gold-seal strong{font-size:2.4vw}.gold-seal b{font-size:3.5vw}.hero-course>p:first-child{font-size:1.9vw}.hero-course>p:last-child{font-size:2.4vw}.hero-course strong{font-size:5.1vw}.hero-course>p:last-child>span{font-size:2vw;margin-left:1vw}.hero-tags{gap:6px}.hero-tags span{padding:6px 3px}}
@media(max-width:767px){body{font-size:14px}.page-width{width:calc(100% - 24px)}.sp-only{display:block}.section-body{padding:38px 0 35px}.section-band{padding:17px 10px;font-size:20px;line-height:1.6}.section-band:after{bottom:-17px;border-top-width:18px;border-left-width:20px;border-right-width:20px}.secondary-band{font-size:20px}.subheading{font-size:20px;line-height:1.7;margin:0 0 23px}.small-note{font-size:10px;margin-top:16px}.body-copy{font-size:14px;line-height:2;margin-top:22px}.hero-top{padding:6px 10px 8px;line-height:1.5}.hero-top p:first-child{font-size:clamp(10px,2.9vw,18px)}.hero-top p:last-child{font-size:clamp(20px,5.4vw,34px);letter-spacing:.025em}.hero-stage{aspect-ratio:1.16}.hero-content{left:4.4%;top:4%;width:62%}.hero-lead{font-size:clamp(15px,4.25vw,29px);line-height:1.5}.hero h1{font-size:10.5vw;line-height:1.23;margin-top:8%;letter-spacing:.015em}.hero-tags{margin-top:7%;width:78%;gap:4px}.hero-tags span{font-size:2.75vw;line-height:1.4;padding:4px 2px;box-shadow:inset 0 0 0 1px #f7fafb}.hero-message{right:3%;bottom:8%;font-size:3.8vw;line-height:1.4}.hero-message strong{font-size:5.2vw}.hero-photo-note{font-size:6px;right:5px;bottom:2px;padding:0 2px}.hero-bottom{grid-template-columns:24% 1fr;gap:8px;padding:7px 4% 7px 6%;min-height:84px}.gold-seal{width:20vw;height:20vw;max-width:130px;max-height:130px;border-width:1px;outline-width:1px;outline-offset:2px;box-shadow:inset 0 0 0 2px #f2df9f}.gold-seal span{font-size:2.2vw}.gold-seal strong{font-size:3.5vw}.gold-seal b{font-size:4.5vw}.hero-course>p:first-child{font-size:2.3vw;line-height:1.8}.hero-course>p:last-child{font-size:3.4vw;white-space:nowrap;line-height:1.7}.hero-course strong{font-size:6.3vw}.hero-course>p:last-child>span{font-size:2.6vw;margin-left:4px}.cta-block{padding:22px 10px 36px}.cta-call{font-size:20px;gap:13px;margin-bottom:22px}.cta-call:before,.cta-call:after{height:34px;width:1.5px}.cta-button{border-radius:19px;border-width:3px;padding:15px 26px 16px;font-size:17px;line-height:1.35;box-shadow:2px 4px 5px #00000050,inset 0 1px 3px #b7df90}.cta-button strong{font-size:20px;white-space:nowrap}.cta-button>span{right:10px;font-size:34px}.cta-caption{font-size:11px;margin-top:13px}.compact{padding-top:0;padding-bottom:35px}.compact .cta-call{font-size:18px}.question-banner{min-height:150px;grid-template-columns:1.05fr .95fr}.question-banner h2{font-size:24px;line-height:1.65}.question-banner img{height:155px;object-position:42% 58%}.check-list{margin:13px 0}.check-list>li{font-size:13px;padding:13px 2px 13px 36px;line-height:1.8}.check-list>li:before{font-size:29px;top:6px;left:0}.problem-section{padding-bottom:32px}.problem-message{margin-top:24px}.problem-message>p{font-size:13px;margin-top:19px}.problem-message .emphasis{font-size:16px;line-height:1.9}.goal-compare{grid-template-columns:1fr 22px 1fr;margin-top:8px;margin-bottom:17px}.goal-compare>div{padding:18px 6px;min-height:210px}.goal-label{font-size:11px;margin-bottom:12px}.goal-compare h3{font-size:15px;line-height:1.8}.goal-compare>div>p:last-child{font-size:11px;line-height:1.9;margin-top:12px}.compare-arrow{font-size:17px}.future-section .subheading{margin-top:30px}.barrier-group>div{padding:15px 0}.barrier-group h4{font-size:17px;line-height:1.7;margin-bottom:13px}.barrier-group p{font-size:13px;line-height:1.9;padding-bottom:18px}.solution-statement{font-size:18px;line-height:1.9;margin-top:15px}.solution-statement strong{font-size:20px}.reason-list{padding-top:47px;padding-bottom:38px;gap:43px}.reason{padding:60px 18px 24px;border-radius:20px;border-width:3px}.reason-ribbon{height:44px;right:16px;top:-13px;padding:0 14px 0 80px;font-size:13px;line-height:1.5}.reason-number{width:65px;height:65px;font-size:34px;top:-10px;border-width:2px;outline-width:1px;outline-offset:-5px}.reason-ribbon:after{inset:4px 10px;border-width:1.5px}.reason-image{max-height:280px;aspect-ratio:1.32;object-position:center 55%}.reason>p{font-size:13px;line-height:1.95;margin-top:21px}.reason-text-visual{padding:26px 6px;font-size:16px}.reason-text-visual strong{font-size:17px}.curriculum-grid{grid-template-columns:1fr;gap:17px}.curriculum-grid article{padding:21px;border-radius:12px}.curriculum-grid h4{font-size:20px;line-height:1.6;padding-bottom:13px}.curriculum-grid h4 br{display:none}.curriculum-grid p{font-size:13px;margin-top:14px}.salon-photo img{aspect-ratio:1.45}.salon-photo figcaption{font-size:9px}.profile-heading{margin-block:27px}.profile-heading>p{font-size:12px}.profile-heading h3{font-size:22px;line-height:1.8;margin-top:11px}.profile-facts{gap:12px;margin-block:24px}.profile-facts>div{padding:18px 7px}.profile-facts span{font-size:10px}.profile-facts strong{font-size:28px}.teacher-letter{padding:24px 19px;margin-top:25px;font-size:13px;line-height:2}.teacher-letter h3{font-size:18px;line-height:1.8;margin-bottom:20px}.teacher-letter>p+p{margin-top:20px}.letter-signature{font-size:12px}.voice-box{padding:23px 13px;border-width:2px;border-radius:15px;margin-top:0;margin-bottom:23px}.quote-mark{font-size:56px}.voice-box blockquote>p{font-size:21px;line-height:2}.voice-box cite{font-size:10px;margin-top:16px}.faq-title{font-size:22px;margin:32px 0 16px}.faq-list details{padding:17px 0}.faq-list summary{font-size:13px;gap:11px;padding-right:20px}.faq-list summary>span{font-size:23px}.faq-list details>div{gap:11px;padding-right:12px;margin-top:13px}.faq-list details>div>span{font-size:23px}.faq-list details p{font-size:12px;line-height:2}.consultation-section .center{font-size:12px;line-height:2}.consultation-table{margin:26px auto}.consultation-table dt,.consultation-table dd{padding:14px 11px;font-size:12px}.consultation-table>div{grid-template-columns:48% 52%}.consultation-flow{margin-top:30px}.consultation-flow>h3{font-size:19px}.consultation-flow ol{gap:13px;margin-top:19px}.consultation-flow li{padding:16px 13px;gap:12px}.consultation-flow li>span{width:29px;height:29px;font-size:18px}.consultation-flow h4{font-size:13px}.consultation-flow p{font-size:11px;line-height:1.9}.final-cta{padding-top:5px;padding-bottom:40px}.final-cta .cta-call{font-size:19px}footer{padding:30px 8px 23px;font-size:11px}footer>.page-width>p{margin-top:13px}.footer-brand{font-size:32px}.footer-brand span{font-size:15px}.footer-links{gap:19px;margin:22px 0 13px}.footer-links button{font-size:10px}footer .small-note{font-size:9px}.copyright{font-size:9px}.dialog-inner{padding:39px 23px 27px}.dialog-inner h2{font-size:22px}.dialog-inner p{font-size:12px}.dialog-inner>p{font-size:11px}.dialog-dismiss{font-size:12px}}
@media(max-width:359px){.cta-call{font-size:18px;gap:9px}.cta-button{padding-inline:21px;font-size:15px}.cta-button strong{font-size:17px}.cta-button>span{right:8px;font-size:29px}.question-banner h2{font-size:21px}.reason-ribbon{padding-left:70px;font-size:12px}.reason-number{width:57px;height:57px;font-size:31px;top:-6px}.hero-course>p:last-child{font-size:3.2vw}.hero-course strong{font-size:6vw}.section-band{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.reason-ribbon:before{content:"";position:absolute;right:-1px;top:0;border-top:32.5px solid transparent;border-bottom:32.5px solid transparent;border-right:15px solid #fff}
@media(max-width:767px){.reason-ribbon:before{border-top-width:22px;border-bottom-width:22px;border-right-width:11px}}
/* Shippori Mincho is self-hosted in weights 400, 500, 600 and 700.
   Keep Japanese copy, Latin labels and numerals in the same family. */
body{font-family:var(--mincho);font-size:17px;line-height:2;letter-spacing:.015em;font-weight:400}
button,input,select,textarea{font-family:inherit}
.section-band,.subheading,.reason-ribbon{font-weight:600;letter-spacing:.03em}
.hero-lead{font-weight:600;letter-spacing:.01em}
.body-copy{font-size:17px;line-height:2.05}
.reason>p,.teacher-letter{line-height:2.05}
.cta-button{font-weight:600;line-height:1.4;letter-spacing:.015em}
.cta-button strong{font-weight:700}
.reason-number,.consultation-flow li>span,.faq-list summary>span,.faq-list details>div>span,.footer-brand,.quote-mark{font-family:var(--mincho)}
@media(max-width:767px){
  body{font-size:15px;line-height:2}
  .body-copy,.reason>p,.problem-message>p,.barrier-group p,.curriculum-grid p,.teacher-letter{font-size:14px;line-height:2.05}
  .check-list>li{font-size:14px;line-height:1.9}
  .faq-list summary{font-size:14px}
  .faq-list details p{font-size:13px;line-height:2.05}
  .reason-ribbon{font-size:13px;line-height:1.6}
}
@media(max-width:359px){.reason-ribbon{font-size:12px}}
/* Consultation-led hero and prominent course pricing. */
.hero-stage{aspect-ratio:.95}
.hero-content{width:62%;height:auto}
.hero-lead>span{padding-left:0;font-size:.85em;white-space:nowrap}
.hero h1{margin-top:6%;width:100%;font-size:inherit;line-height:1.25;letter-spacing:.02em}
.hero h1>span{display:block;white-space:nowrap}
.hero-duration-lead{font-size:80px;line-height:1.35}
.hero-duration-lead strong{font-size:122px;font-weight:700}
.hero-main-line{font-size:140px;line-height:1.25}
.hero-career-line{font-size:100px;line-height:1.35}
.hero-message{bottom:34%}
.hero-tags{position:absolute;left:5%;right:5%;bottom:35px;width:90%;margin:0;gap:14px}
.hero-tags span{font-size:44px;padding:18px 8px;font-weight:700;line-height:1.45;border:2px solid #8293a2;background:linear-gradient(#f9fafb,#d8dfe7);box-shadow:inset 0 0 0 3px #fff}
.consultation-offer{display:block;min-height:0;padding:28px 20px 25px;text-align:center;background:linear-gradient(100deg,#dce5f1,#7794bd 55%,#5277a6);text-shadow:1px 2px 3px #3a567d}
.offer-period{display:inline-block;color:#293f62;background:linear-gradient(120deg,#fff4c5,#e7c56c);padding:3px 35px 7px;font-size:39px;font-weight:700;line-height:1.4;text-shadow:none;letter-spacing:.16em}
.offer-title{display:flex;align-items:baseline;justify-content:center;gap:28px;font-size:140px;font-weight:700;line-height:1.3;letter-spacing:.04em;margin-top:5px;white-space:nowrap}
.offer-title>span{font-size:190px;line-height:1.2}
.offer-meta{font-size:24px;line-height:1.7;letter-spacing:.04em;margin-top:3px}
.tuition-section{background:linear-gradient(#f8fbfd,#eef3f8)}
.tuition-panel{padding:48px 42px 45px;background:#fff;border:2px solid #b0c1d7;box-shadow:0 5px 20px #5277a612;text-align:center}
.tuition-eyebrow{font-size:19px;color:#536c8c;line-height:1.8}
.tuition-panel>h3{font-size:40px;font-weight:600;line-height:1.7;margin-top:16px;letter-spacing:.04em}
.tuition-facts{display:grid;grid-template-columns:1fr 1.55fr;margin-top:35px;border-top:1px solid #ccd7e5;border-bottom:1px solid #ccd7e5}
.tuition-fact{padding:29px 15px 33px}
.tuition-fact+.tuition-fact{border-left:1px solid #ccd7e5}
.tuition-label{font-size:23px;font-weight:600;letter-spacing:.1em;color:#536c8c;line-height:1.6}
.tuition-value{display:flex;align-items:baseline;justify-content:center;gap:10px;color:#3c5f8e;line-height:1.3;white-space:nowrap}
.tuition-term strong{font-size:156px;font-weight:500}
.tuition-term span{font-size:43px}
.tuition-price{padding-top:25px}
.tuition-price strong{font-size:99px;font-weight:500;letter-spacing:-.02em}
.tuition-price span{font-size:34px}
.tuition-inclusions{display:grid;grid-template-columns:1fr 1fr;gap:13px 24px;list-style:none;padding:0;max-width:760px;text-align:left;margin:32px auto}
.tuition-inclusions>li{position:relative;padding-left:26px;font-size:16px;line-height:1.9}
.tuition-inclusions>li:before{content:"✓";position:absolute;left:0;color:#536c8c}
.tuition-consult-note{font-size:20px;line-height:1.9;margin:29px 0 23px}
@media(min-width:768px) and (max-width:1279px){
  .hero-duration-lead{font-size:6.25vw}.hero-duration-lead strong{font-size:9.53vw}.hero-main-line{font-size:10.94vw}.hero-career-line{font-size:7.81vw}
  .hero-tags span{font-size:3.44vw;padding:1.4vw 7px}.hero-tags{bottom:2.7vw;gap:1.1vw}
  .offer-period{font-size:3vw}.offer-title{font-size:10.9vw;gap:2vw}.offer-title>span{font-size:14.8vw}.offer-meta{font-size:1.9vw}
  .tuition-price strong{font-size:8vw}.tuition-price span{font-size:28px}.tuition-term strong{font-size:125px}.tuition-term span{font-size:35px}
}
@media(max-width:767px){
  .hero-duration-lead{font-size:6.3vw;line-height:1.35}.hero-duration-lead strong{font-size:11vw}.hero-main-line{font-size:13vw;line-height:1.25}.hero-career-line{font-size:8.5vw;line-height:1.35}
  .hero h1{margin-top:6%}.hero-tags{left:4%;right:4%;width:92%;bottom:14px;gap:8px}
  .hero-tags span{font-size:5.1vw;padding:8px 3px;border-width:1px;box-shadow:inset 0 0 0 2px #fff;line-height:1.4}
  .consultation-offer{padding:15px 10px 16px}
  .offer-period{font-size:5.1vw;padding:2px 21px 4px;letter-spacing:.12em}
  .offer-title{font-size:11.2vw;gap:10px;margin-top:4px;letter-spacing:.02em}
  .offer-title>span{font-size:15.1vw}
  .offer-meta{font-size:3.1vw;line-height:1.7;margin-top:4px;letter-spacing:.025em}
  .tuition-panel{padding:29px 18px 30px}
  .tuition-eyebrow{font-size:12px;line-height:1.9}
  .tuition-panel>h3{font-size:25px;line-height:1.8;margin-top:14px}
  .tuition-facts{grid-template-columns:1fr;margin-top:23px}
  .tuition-fact{padding:21px 5px 24px}
  .tuition-fact+.tuition-fact{border-left:0;border-top:1px solid #ccd7e5}
  .tuition-label{font-size:17px;line-height:1.7}
  .tuition-term strong{font-size:100px}.tuition-term span{font-size:34px}
  .tuition-price{padding-top:8px;gap:6px}.tuition-price strong{font-size:65px}.tuition-price span{font-size:25px}
  .tuition-inclusions{grid-template-columns:1fr;gap:10px;margin:24px 0}
  .tuition-inclusions>li{font-size:13px;padding-left:22px;line-height:1.9}
  .tuition-consult-note{font-size:16px;line-height:1.9;margin:24px 0 21px}
  .tuition-panel .cta-button{padding-inline:16px}
  .tuition-panel .cta-button strong{font-size:18px}
}
@media(max-width:359px){.tuition-price strong{font-size:54px}.tuition-panel{padding-inline:13px}.tuition-panel .cta-button strong{font-size:16px}.tuition-panel>h3{font-size:23px}}
@media print{.cta-button{box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.section-body{padding-block:30px}.reason,.teacher-letter,.voice-box,.consultation-flow li,.tuition-panel{break-inside:avoid}}
