/* Scoped to the opt-in home design and its editor blocks. */
.kt-refined-root,.kt-home{--kt-green:#164c3a;--kt-ink:#20382f;--kt-muted:#5b6b62;--kt-paper:#f9f8f3;--kt-rule:#d8e1d8;font-family:"Noto Sans JP",sans-serif;color:var(--kt-ink);font-size:16px;line-height:1.9;letter-spacing:.025em;box-sizing:border-box}
.kt-refined-root *,.kt-home *{box-sizing:border-box}
.kt-refined-root{background:#fff;margin:0!important;width:100%;max-width:none!important}
.kt-refined-main,.kt-refined-root .wp-block-post-content,.kt-home{margin:0!important;max-width:none!important}
.kt-refined-root>*,.kt-home>*{margin-block-start:0}
.kt-refined-root img,.kt-home img{display:block;width:100%;height:auto}
.kt-refined-root p,.kt-home p{margin:0 0 1em}
.kt-refined-root a,.kt-home a{color:inherit;text-underline-offset:.35em;text-decoration-thickness:1px}
.kt-refined-root a:hover,.kt-home a:hover{color:#276d50}
.kt-refined-root a:focus-visible,.kt-home a:focus-visible{outline:3px solid #b18431;outline-offset:5px}
.kt-home h1,.kt-home h2,.kt-home h3{font-family:"Noto Serif JP",serif;color:var(--kt-green);font-weight:500;letter-spacing:.045em;line-height:1.65;margin:0 0 24px}
.kt-home h2.wp-block-heading::after{display:none}
.kt-home h2{font-size:clamp(27px,2.9vw,40px)}
.kt-home h3{font-size:23px}
.kt-shell{width:min(1200px,calc(100% - 96px));max-width:1200px!important;margin-inline:auto!important}
.kt-home .kt-eyebrow,.kt-refined-root .kt-eyebrow{font-size:12px;font-weight:500;letter-spacing:.16em;color:var(--kt-green);margin-bottom:20px}
.kt-site-header{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:96px;padding-block:18px}
.kt-brand{display:flex;align-items:center;gap:12px;margin:0!important}
.kt-brand-logo{width:60px;min-width:60px;margin:0!important}
.kt-brand-name{font-family:"Noto Serif JP",serif;line-height:1.45!important;font-size:21px;white-space:nowrap;margin:0!important}
.kt-brand-name span{font-family:"Noto Sans JP",sans-serif;font-size:10px;letter-spacing:.12em}
.kt-brand-name a{text-decoration:none}
.kt-navigation{font-size:13px;gap:25px}
.kt-preview-nav{display:flex;align-items:center;gap:28px;font-size:13px}
.kt-preview-nav a{text-decoration:none}
.kt-hero{display:grid;grid-template-columns:46% 54%;background:var(--kt-paper);min-height:580px}
.kt-hero-copy{align-self:center;padding:70px 40px 70px max(48px,calc((100vw - 1200px)/2));margin:0!important}
.kt-home h1.kt-hero-title{font-size:clamp(34px,3.7vw,55px);line-height:1.65;letter-spacing:.055em;margin-bottom:25px}
.kt-home .kt-hero-lead{font-size:16px;line-height:2.1;margin-bottom:32px}
.kt-hero-photo{margin:0!important;min-width:0;min-height:100%}
.kt-hero-photo img{height:100%;object-fit:cover;object-position:48% center}
.kt-home .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}
.kt-home .wp-block-button{margin:0}
.kt-home .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;background:var(--kt-green);color:#fff!important;border:1px solid var(--kt-green);padding:14px 28px;border-radius:100px;text-decoration:none;font-family:"Noto Sans JP",sans-serif;font-size:14px;font-weight:500;letter-spacing:.05em;line-height:1.6;transition:background .18s}
.kt-home .wp-block-button__link:hover{background:#28684e;border-color:#28684e}
.kt-home .is-style-outline .wp-block-button__link{background:transparent;color:var(--kt-green)!important}
.kt-home .kt-text-link{font-size:13px;font-weight:500;margin-top:22px;margin-bottom:0}
.kt-text-link a{text-decoration:none;border-bottom:1px solid #96ae9b;padding-bottom:8px;display:inline-block}
.kt-news{display:grid;grid-template-columns:140px 1fr;gap:30px;padding-block:24px;font-size:13px;border-bottom:1px solid var(--kt-rule)}
.kt-news p{margin:0}
.kt-news-label{color:var(--kt-green);border-right:1px solid var(--kt-rule);font-weight:500}
.kt-news a{text-decoration:none;display:flex;justify-content:space-between;gap:15px}
.kt-basic{padding-top:92px;text-align:center}
.kt-section-intro{color:var(--kt-muted);font-size:15px}
.kt-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px}
.kt-course{display:flex;flex-direction:column;position:relative;text-align:left;border:1px solid var(--kt-rule);border-radius:5px;overflow:hidden;margin:0!important;background:#f6f7ef;min-width:0}
.kt-course.kt-beauty{background:#fbf5f2;border-color:#e8d8d0}
.kt-course.kt-health{background:#f0f6f4;border-color:#cee0da}
.kt-course .kt-course-badge{position:absolute;top:17px;left:17px;z-index:1;background:#617940;color:#fff;border-radius:40px;padding:5px 12px;font-size:11px;font-weight:500;margin:0;max-width:calc(100% - 34px)}
.kt-course.kt-beauty .kt-course-badge{background:#a96351}
.kt-course.kt-health .kt-course-badge{background:#4c7873}
.kt-course-photo{margin:0!important}
.kt-course-photo img{aspect-ratio:1.55;object-fit:cover}
.kt-course-body{padding:26px 25px 28px;display:flex;flex:1;flex-direction:column;margin:0!important}
.kt-course h3{font-size:31px;margin-bottom:10px}
.kt-beauty h3{color:#914e40}
.kt-health h3{color:#305f59}
.kt-home .kt-course-fullname{font-size:13px;font-weight:500;min-height:50px;margin-bottom:15px}
.kt-course-description{font-size:14px;line-height:1.95}
.kt-home .kt-course-requirement{font-size:12px;color:var(--kt-muted);border-top:1px solid var(--kt-rule);padding-top:17px;margin-top:auto;margin-bottom:12px}
.kt-home .kt-course-status{font-size:11px;font-weight:500;color:var(--kt-green);margin-bottom:0}
.kt-course .kt-text-link{font-size:12px;margin-top:18px}
.kt-flow{padding-block:70px 92px;text-align:center}
.kt-flow h2{margin-bottom:26px}
.kt-home .kt-gate{font-size:13px;color:var(--kt-green);margin:0;position:relative;padding:20px 0 36px}
.kt-gate::after{content:"↓";display:block;position:absolute;bottom:3px;left:calc(50% - 10px);font-size:25px;line-height:1}
.kt-level{display:grid;grid-template-columns:235px 1fr;text-align:left;gap:30px;padding:30px 35px;border:1px solid #779a83;border-radius:4px;background:var(--kt-paper);margin:0!important;align-items:center}
.kt-level .kt-level-name{font-family:"Noto Serif JP",serif;font-size:28px;line-height:1.5;margin:0;border-right:1px solid #b9ccbe;padding-right:20px}
.kt-level h3{font-size:20px;margin:0 0 9px}
.kt-level p{font-size:13px;margin:0;line-height:1.9}
.kt-level.kt-meister{background:#164c3a;color:#fff;border-color:#164c3a}
.kt-meister h3{color:#fff}
.kt-schedule{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;border-top:1px solid var(--kt-rule);padding-block:70px}
.kt-schedule-intro{padding-right:30px}
.kt-schedule-intro>p:last-child{max-width:340px;font-size:15px;color:var(--kt-muted)}
.kt-event{background:var(--kt-paper);padding:38px 40px;border-radius:5px;margin:0!important}
.kt-event .kt-course-badge{display:inline-block;font-size:12px;color:var(--kt-green);border:1px solid #a4b8a7;border-radius:30px;padding:4px 14px;margin-bottom:18px}
.kt-event h3.kt-date{font-size:clamp(28px,3vw,38px);letter-spacing:.02em;margin-bottom:15px}
.kt-date span{font-family:"Noto Sans JP",sans-serif;font-size:12px;margin-left:10px}
.kt-event-name{font-family:"Noto Serif JP",serif;font-size:19px;line-height:1.85}
.kt-home .kt-offer-label{font-size:11px;color:#9b4233;margin-top:26px;margin-bottom:8px;font-weight:700}
.kt-home .kt-regular{font-size:12px;color:var(--kt-muted);margin-bottom:4px}
.kt-home .kt-price{font-family:"Noto Serif JP",serif;font-size:40px;color:#9b4233;line-height:1.5;margin-bottom:7px}
.kt-price span{font-size:14px}
.kt-home .kt-small,.kt-refined-root .kt-small{font-size:11px;color:var(--kt-muted)}
.kt-event .wp-block-buttons{margin-top:24px;margin-bottom:10px}
.kt-history{padding:0 0 60px;font-size:12px;color:var(--kt-muted)}
.kt-history .kt-eyebrow{margin-bottom:10px}
.kt-about{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-block:75px;border-top:1px solid var(--kt-rule)}
.kt-about-lead{font-size:17px;line-height:2.1}
.kt-about-copy{font-size:14px;color:var(--kt-muted)}
.kt-about-copy h3{font-size:17px;margin-top:28px;margin-bottom:12px}
.kt-contact{background:#ecf2eb;text-align:center;padding:65px 24px 70px}
.kt-contact h2{font-size:clamp(24px,2.5vw,33px)}
.kt-contact>p{font-size:14px}
.kt-contact .wp-block-buttons{justify-content:center;margin-top:25px;margin-bottom:0}
.kt-site-footer{display:grid;grid-template-columns:1fr auto;gap:32px;padding-block:50px 22px}
.kt-footer-info .kt-brand{margin-bottom:20px!important}
.kt-footer-nav{font-size:12px;align-self:center;padding-right:25px}
.kt-footer-nav p{margin-bottom:10px}
.kt-footer-nav a{text-decoration:none}
.kt-copyright{grid-column:1/-1;border-top:1px solid var(--kt-rule);padding-top:20px;font-size:10px;color:var(--kt-muted);margin:0!important;display:flex;justify-content:space-between;gap:20px}
.kt-mobile-break{display:none}
.kt-center{text-align:center}
.kt-preview{margin:0;background:white}
body.kt-refined-body .wp-site-blocks{padding:0}
.editor-styles-wrapper .kt-home{width:100%}
@media(prefers-reduced-motion:reduce){.kt-home *{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:1000px){.kt-shell{width:calc(100% - 48px)}.kt-brand-name{font-size:18px}.kt-brand-logo{width:48px;min-width:48px}.kt-hero-copy{padding:45px 25px}.kt-hero{min-height:480px}.kt-home h1.kt-hero-title{font-size:36px}.kt-course-grid{gap:15px}.kt-course-body{padding:22px 18px}.kt-schedule,.kt-about{gap:40px}.kt-level{grid-template-columns:190px 1fr;padding:26px}.kt-level .kt-level-name{font-size:23px}.kt-preview-nav{gap:16px;font-size:11px}}
@media(max-width:700px){.kt-shell{width:calc(100% - 40px)}.kt-site-header{min-height:78px;padding-block:12px;gap:15px}.kt-brand-logo{width:45px;min-width:45px}.kt-brand-name{font-size:17px}.kt-brand-name span{font-size:9px}.kt-preview-nav{flex-wrap:wrap;justify-content:flex-end;gap:4px 10px;font-size:10px;max-width:145px}.kt-hero{grid-template-columns:1fr}.kt-hero-copy{padding:46px 25px 38px}.kt-home h1.kt-hero-title{font-size:clamp(30px,8.7vw,46px);line-height:1.65}.kt-hero-lead{font-size:14px!important}.kt-hero-photo{min-height:0}.kt-hero-photo img{height:auto;aspect-ratio:1.6;object-fit:cover}.kt-news{grid-template-columns:1fr;gap:8px;padding-block:20px;font-size:12px}.kt-news-label{border:0;font-size:11px}.kt-home .kt-eyebrow{font-size:10px;margin-bottom:16px}.kt-basic{padding-top:55px}.kt-home h2{font-size:28px}.kt-section-intro{font-size:13px;line-height:1.9}.kt-mobile-break{display:block}.kt-course-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}.kt-course-body{padding:25px}.kt-course h3{font-size:32px}.kt-home .kt-course-fullname{min-height:0;margin-bottom:15px}.kt-course-photo img{aspect-ratio:1.7}.kt-course .kt-course-badge{font-size:12px}.kt-flow{padding-block:55px}.kt-level{grid-template-columns:1fr;gap:17px;padding:25px}.kt-level .kt-level-name{border-right:0;border-bottom:1px solid #b9ccbe;padding:0 0 13px;font-size:26px}.kt-level h3{font-size:18px}.kt-level p{font-size:13px}.kt-schedule{grid-template-columns:1fr;gap:25px;padding-block:45px}.kt-schedule-intro{padding:0}.kt-event{padding:28px 24px}.kt-event h3.kt-date{font-size:32px}.kt-event-name{font-size:18px}.kt-history{padding-bottom:40px}.kt-about{grid-template-columns:1fr;gap:20px;padding-block:50px}.kt-about-lead{font-size:15px}.kt-contact{padding:48px 22px}.kt-contact h2{font-size:25px}.kt-contact>p{font-size:13px}.kt-site-footer{grid-template-columns:1fr;gap:24px;padding-top:35px}.kt-footer-nav{display:flex;flex-wrap:wrap;gap:12px 20px;padding:0}.kt-footer-nav p{margin:0}.kt-copyright{flex-direction:column;gap:6px;font-size:9px}}

/* Readable type hierarchy, v1.1.1. Logo and price sizes stay unchanged. */
.kt-refined-root,.kt-home{--kt-body-size:18px;--kt-note-size:15px;--kt-control-size:16px;font-size:var(--kt-body-size)}
.kt-home .kt-hero-lead{font-size:var(--kt-body-size)!important}
.kt-home .kt-section-intro,.kt-home .kt-course-description,
.kt-home .kt-level p:not(.kt-level-name),.kt-home .kt-schedule-intro>p:last-child,
.kt-home .kt-about-lead,.kt-home .kt-about-copy,.kt-home .kt-contact>p:not(.kt-eyebrow){font-size:var(--kt-body-size)}
.kt-home .kt-course-fullname,.kt-home .kt-course-requirement,.kt-home .kt-course-status,
.kt-home .kt-gate{font-size:var(--kt-control-size)}
.kt-home .kt-course-fullname{min-height:3.8em}
.kt-home .kt-text-link,.kt-home .wp-block-button__link,
.kt-home .kt-news{font-size:var(--kt-control-size)}
.kt-home .kt-news-label{font-size:var(--kt-note-size)}
.kt-home .kt-small,.kt-refined-root .kt-small,.kt-home .kt-regular,
.kt-home .kt-offer-label,.kt-home .kt-history{font-size:var(--kt-note-size)}
.kt-home .kt-course-badge,.kt-home .kt-date span{font-size:14px}
.kt-home .kt-price span{font-size:16px}
.kt-home .kt-eyebrow,.kt-refined-root .kt-eyebrow{font-size:13px}
.kt-refined-root .kt-navigation,.kt-refined-root .kt-preview-nav{font-size:var(--kt-control-size)}
.kt-refined-root .kt-footer-nav{font-size:var(--kt-note-size)}
.kt-refined-root .kt-copyright{font-size:12px}
@media(max-width:700px){
.kt-refined-root,.kt-home{--kt-body-size:16px;--kt-note-size:14px}
.kt-home .kt-course-fullname{min-height:0}
.kt-refined-root .kt-site-header{flex-wrap:wrap}
.kt-refined-root .kt-preview-nav{max-width:none;gap:10px 16px;font-size:14px}
}

/* Keep a clear heading hierarchy beside the larger body text. */
.kt-home h1.kt-hero-title{font-size:clamp(34px,3.9vw,58px)}
.kt-home h2{font-size:clamp(30px,3.2vw,44px)}
.kt-home .kt-course h3{font-size:34px}
.kt-home .kt-level h3{font-size:24px}
.kt-home .kt-about-copy h3{font-size:22px}
.kt-home .kt-contact h2{font-size:clamp(28px,2.8vw,38px)}
@media(max-width:1000px) and (min-width:701px){
.kt-home h1.kt-hero-title{font-size:36px}
.kt-home .kt-level h3{font-size:22px}
}
@media(max-width:700px){
.kt-home h1.kt-hero-title{font-size:clamp(30px,8.7vw,46px)}
.kt-home h2{font-size:30px}
.kt-home .kt-level h3{font-size:21px}
.kt-home .kt-about-copy h3{font-size:21px}
.kt-home .kt-contact h2{font-size:28px}
}
