
:root{--pink:#e72179;--ink:#20202a;--muted:#62616b;--paper:#fff;--soft:#f6f6f8;--pale:#fff0f6;--line:#dfdfe5;--space:clamp(24px,6vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'Noto Sans JP',sans-serif;font-size:16px;line-height:1.9;letter-spacing:.025em}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #0076bb;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{word-break:keep-all;overflow-wrap:anywhere;line-height:1.5}p{overflow-wrap:anywhere}img{display:block;max-width:100%}button{cursor:pointer}::selection{background:#ffcee2} .skip{position:fixed;left:10px;top:-100px;z-index:30;background:white;padding:12px}.skip:focus{top:10px}
.nav{height:92px;padding:0 var(--space);display:flex;align-items:center;justify-content:space-between;gap:24px;position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line);transition:box-shadow .2s}.nav.is-scrolled{box-shadow:0 2px 8px #20202a09}.brand{text-decoration:none;line-height:1}.brand b{font-family:Montserrat,sans-serif;display:block;font-size:29px;letter-spacing:-.07em;font-weight:900}.brand b em{font-style:normal;color:var(--pink)}.brand small{display:block;font-size:10px;letter-spacing:.16em;margin-top:8px;font-weight:700}.nav__links{display:flex;gap:27px;align-items:center;font-size:14px;font-weight:700}.nav__links a{text-decoration:none}.nav__links a:not(.btn):hover{color:var(--pink)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:15px 28px;border:1px solid transparent;border-radius:4px;background:var(--pink);color:white;text-decoration:none;font-weight:700;font-size:15px;transition:background .2s,transform .2s;gap:10px}.btn:hover{background:#c91464;transform:translateY(-2px)}.btn--outline{background:transparent;border-color:var(--line);color:var(--ink)}.btn--outline:hover{background:var(--soft)}.nav .btn{min-height:44px;padding:10px 22px;font-size:14px}.section{padding:96px var(--space)}.section__inner{max-width:1200px;margin:auto}.eyebrow{font:700 13px/1.5 Montserrat,sans-serif;letter-spacing:.14em;color:var(--pink);margin-bottom:18px}.eyebrow span{font-family:'Noto Sans JP',sans-serif;margin-left:16px;font-weight:500;letter-spacing:.04em;color:var(--muted)}h2{font-size:clamp(28px,3.2vw,43px);font-weight:800;letter-spacing:.025em}.lead{color:var(--muted);max-width:650px;margin-top:24px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-head>p{max-width:370px;color:var(--muted);font-size:15px}
.section--hero{padding:42px var(--space) 54px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:45px;align-items:center}.hero-kicker{display:flex;align-items:center;gap:13px;font-size:13px;font-weight:700;letter-spacing:.08em;margin-bottom:24px}.hero-kicker:before{content:'';height:2px;width:26px;background:var(--pink)}h1{font-size:clamp(37px,4.25vw,62px);line-height:1.5;font-weight:900;letter-spacing:.015em}h1 .accent{color:var(--pink)}.hero-copy>p{font-size:16px;margin-top:24px;line-height:2}.hero-copy .btn{margin-top:30px;min-width:250px}.hero-note{display:block;font-size:12px;color:var(--muted);margin-top:12px}.hero-art{position:relative;padding:12px 0 40px}.hero-frame{position:relative;background:var(--ink);border-radius:120px 8px 8px 8px;overflow:hidden}.hero-frame img{width:100%;height:480px;object-fit:cover;object-position:49% 45%}.hero-photo-label{position:absolute;left:22px;bottom:19px;font:600 12px Montserrat;color:#fff;letter-spacing:.15em;background:#20202ac9;padding:7px 12px}.hero-stamp{position:absolute;right:-14px;top:-6px;width:111px;height:111px;border-radius:50%;background:var(--pink);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(9deg);font-weight:700;line-height:1.5;font-size:14px}.hero-stamp b{font:800 27px Montserrat}.hero-caption{position:absolute;bottom:7px;left:-30px;background:var(--paper);border-left:5px solid var(--pink);padding:15px 25px;font-weight:800;font-size:19px}.hero-bottom{display:flex;align-items:center;gap:28px;border-top:1px solid var(--line);padding-top:25px;margin-top:26px}.hero-bottom>span{font:600 11px Montserrat;color:var(--muted);letter-spacing:.15em}.hero-bottom p{font-size:14px;font-weight:600}.hero-bottom i{width:1px;height:17px;background:var(--line)}.marquee{background:var(--pink);color:white;font:800 clamp(23px,4vw,53px)/1 Montserrat;letter-spacing:.02em;white-space:nowrap;overflow:hidden;padding:24px 0;text-align:center}.marquee span{color:#ffffff75;margin:0 24px}
.section--about{background:var(--soft)}.about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:center}.about-image{position:relative}.about-image img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:8px}.about-image .photo-note{font-size:12px;color:var(--muted);margin-top:10px}.about-text p{margin-top:24px;color:var(--muted)}.values{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.values span{border:1px solid #efb6ce;padding:7px 16px;color:#b9145a;font-size:14px;background:var(--paper);border-radius:3px}
.features__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.feature{border-top:2px solid var(--ink);padding-top:23px}.feature-index{display:flex;justify-content:space-between;align-items:center;color:var(--pink);font:700 15px Montserrat;margin-bottom:23px}.feature .material-icons{font-size:32px}.feature h3{font-size:22px;margin-bottom:16px}.feature p{color:var(--muted);font-size:15px}
.section--plans{background:var(--soft)}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.plan{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--pink);padding:38px;display:flex;flex-direction:column}.plan .en{font:600 13px Montserrat;color:var(--pink);letter-spacing:.08em;margin-bottom:9px}.plan h3{font-size:27px}.plan .desc{margin-top:15px;color:var(--muted);font-size:15px}.plan dl{margin:28px 0;display:grid;grid-template-columns:85px 1fr;gap:0;font-size:14px}.plan dt,.plan dd{margin:0;padding:13px 0;border-top:1px solid var(--line)}.plan dt{font-weight:700}.plan dd{color:var(--muted)}.plan .btn{margin-top:auto}.note{font-size:13px;color:var(--muted);margin-top:22px}.support-list{border-top:1px solid var(--line)}.support-row{display:grid;grid-template-columns:65px 260px 1fr;gap:26px;align-items:start;padding:29px 0;border-bottom:1px solid var(--line)}.support-row .num{font:600 26px Montserrat;color:var(--pink)}.support-row h3{font-size:20px}.support-row p{font-size:15px;color:var(--muted)}
.section--business{background:var(--ink);color:white}.section--business .eyebrow{color:#ff78b2}.section--business .lead{color:#ccccd4}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.equation{padding:29px;background:#2d2d38;border:1px solid #4b4b56}.equation>p{font-size:14px;color:#dddde3}.equation .formula{font-size:25px;font-weight:700;line-height:1.7;margin:14px 0}.equation .formula span{color:#ff78b2}.equation small{font-size:13px;color:#dddde3}.cost-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:23px}.cost-list div{border-top:1px solid #666570;padding-top:15px}.cost-list b{font-size:14px;display:block}.cost-list p{font-size:13px;color:#d0cfd7;margin-top:6px}.business-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}.business-links .btn--outline{color:white;border-color:#777}.business-links .btn--outline:hover{background:#353540}.section--business .note{color:#cfced7}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;counter-reset:steps;margin-top:42px}.step{border-top:1px solid var(--line);padding-top:20px}.step .step-no{font:700 12px Montserrat;letter-spacing:.1em;color:var(--pink)}.step h3{margin:12px 0;font-size:20px}.step p{font-size:14px;color:var(--muted)}.section--faq{background:var(--soft)}.faq-layout{display:grid;grid-template-columns:.8fr 1.6fr;gap:80px}details{border-bottom:1px solid var(--line)}details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;position:relative;padding:23px 35px 23px 34px;font-size:16px;font-weight:700;line-height:1.8}summary::-webkit-details-marker{display:none}summary:before{content:'Q';position:absolute;left:0;color:var(--pink);font-family:Montserrat}summary:after{content:'+';position:absolute;right:4px;font-size:23px;font-weight:400;top:16px}details[open] summary:after{content:'−'}details p{padding:0 34px 23px;color:var(--muted);font-size:15px}
.section--cta{background:var(--pale)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-layout h2{font-size:clamp(29px,3.4vw,45px)}.contact-layout .intro{margin-top:24px;color:var(--muted)}.contact-methods{margin-top:32px;padding-top:25px;border-top:1px solid #edbed2}.contact-methods a{display:inline-block;font-family:Montserrat;font-size:27px;font-weight:700;text-decoration:none}.contact-methods p{font-size:13px;color:var(--muted);margin-top:5px}.consultation{padding:32px;background:var(--paper);border:1px solid #f0d0de}.consultation h3{font-size:21px}.consultation>p{font-size:14px;color:var(--muted);margin:10px 0 24px}.field{margin-top:17px}.field label{display:block;font-size:14px;font-weight:700;margin-bottom:8px}.field input,.field select{width:100%;min-height:48px;border:1px solid #bdbcc5;border-radius:3px;padding:10px 12px;color:var(--ink);background:white}.consultation .btn{width:100%;margin-top:24px}.consultation .form-note{font-size:12px;margin:12px 0 0}.email-fallback{font-size:13px;margin-top:12px}.footer{background:var(--ink);color:#fff;padding:42px var(--space) 30px}.footer-main{display:flex;justify-content:space-between;gap:40px;max-width:1200px;margin:auto}.footer .brand b{font-size:25px}.footer .company{font-size:13px;color:#d2d1d9;margin-top:18px}.footer-links{display:flex;align-items:start;gap:24px;font-size:13px}.copyright{max-width:1200px;margin:28px auto 0;padding-top:20px;border-top:1px solid #484752;font-size:11px;color:#c3c2cb;letter-spacing:.04em}.mobile-cta{display:none}.fi{transition:opacity .6s,transform .6s}.fi.is-pending{opacity:0;transform:translateY(18px)}
@media(min-width:1500px){.hero-frame img{height:540px}.section--hero{padding-top:65px;padding-bottom:65px}}
@media(max-width:1050px){.nav__links{gap:17px}.nav__links .desktop-link{display:none}.hero-grid{gap:26px}.hero-frame img{height:440px}h1{font-size:43px}.about-grid{gap:40px}.support-row{grid-template-columns:50px 215px 1fr;gap:20px}.contact-layout{gap:35px}.hero-bottom{gap:18px}}
@media(max-width:768px){html{scroll-padding-top:85px}.nav{height:75px;padding:0 22px;gap:15px}.brand b{font-size:24px}.brand small{font-size:9px;letter-spacing:.1em}.nav__links>a:not(.btn){display:none}.nav .btn{font-size:12px;min-height:40px;padding:8px 13px}.section{padding:64px 24px}.section--hero{padding:32px 24px 35px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-kicker{font-size:12px;margin-bottom:18px}h1{font-size:clamp(35px,8.8vw,56px);line-height:1.5}.hero-copy>p{font-size:15px;margin-top:20px}.hero-copy .btn{margin-top:23px;width:100%}.hero-note{text-align:center}.hero-art{padding:0 0 35px;margin-top:4px}.hero-frame{border-top-left-radius:75px}.hero-frame img{height:auto;aspect-ratio:1.25;object-position:50% 45%}.hero-stamp{width:88px;height:88px;top:-15px;right:-8px;font-size:12px}.hero-stamp b{font-size:22px}.hero-caption{left:-8px;bottom:3px;font-size:16px;padding:12px 17px}.hero-photo-label{font-size:10px;bottom:18px;left:15px}.hero-bottom{margin-top:12px;gap:10px;flex-wrap:wrap;padding-top:20px}.hero-bottom>span{width:100%;font-size:10px}.hero-bottom p{font-size:12px}.hero-bottom i{height:12px}.marquee{font-size:25px;padding:19px 0;text-align:left}.section-head{display:block;margin-bottom:28px}.section-head>p{margin-top:20px}.eyebrow{font-size:12px;margin-bottom:14px}.eyebrow span{font-size:12px}.about-grid,.features__grid,.plan-grid,.business-grid,.faq-layout,.contact-layout{grid-template-columns:1fr;gap:34px}.about-text{grid-row:1}.about-image img{aspect-ratio:1.45}.features__grid{gap:30px}.feature-index{margin-bottom:14px}.feature h3{font-size:21px}.plan{padding:26px}.plan h3{font-size:25px}.support-row{grid-template-columns:32px 1fr;gap:10px 18px;padding:24px 0}.support-row .num{font-size:22px}.support-row p{grid-column:2}.support-row h3{font-size:19px}.equation{padding:24px}.equation .formula{font-size:23px}.business-links .btn{width:100%}.steps{grid-template-columns:1fr 1fr;gap:25px 22px}.step h3{font-size:18px}.step p{font-size:14px}.faq-layout{gap:26px}.contact-layout{gap:30px}.consultation{padding:24px}.footer{padding:36px 24px 105px}.footer-main{display:block}.footer-links{margin-top:24px;flex-wrap:wrap;gap:15px 23px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:19;background:white;border-top:1px solid var(--line);padding:10px 18px calc(10px + env(safe-area-inset-bottom));display:flex;gap:12px;align-items:center}.mobile-cta>span{font-size:11px;font-weight:700;line-height:1.6;min-width:76px}.mobile-cta .btn{flex:1;min-height:43px;padding:9px 12px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.fi.is-pending{opacity:1;transform:none}}
/* Multipage franchise website */
.nav{padding-inline:clamp(22px,3.5vw,60px)}.brand-wrap{display:flex;align-items:center;gap:20px;text-decoration:none}.brand-sub{font-size:12px;font-weight:700;line-height:1.65;border-left:1px solid var(--line);padding-left:18px}.nav__links{gap:21px;font-size:13px}.nav__links [aria-current=page]{color:var(--pink)}.menu-toggle{display:none}.site-section{padding:76px var(--space)}.page-hero{padding:28px var(--space) 65px;background:var(--soft);border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 38px;font-size:12px;color:var(--muted)}.breadcrumbs li:not(:last-child):after{content:'/';margin-left:10px;color:#aaa}.page-hero h1{font-size:clamp(32px,4.2vw,54px);line-height:1.5;max-width:970px}.page-hero .lead{max-width:780px}.page-title-en{font:800 12px Montserrat;color:var(--pink);letter-spacing:.14em;margin-bottom:14px}.page-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.page-nav a{background:white;border:1px solid var(--line);padding:7px 17px;text-decoration:none;font-size:14px}.page-nav a:hover{border-color:var(--pink);color:var(--pink)}.section--hero{padding-top:48px}.hero-frame img{height:430px}.hero-photo-label{display:none}.hero-copy h1{font-size:clamp(37px,3.8vw,58px)}.home-stats{display:grid;grid-template-columns:1fr 1fr 1.6fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:36px;padding:25px 0;gap:25px}.home-stats>div{border-right:1px solid var(--line)}.home-stats>div:last-child{border-right:0}.home-stats b{font:800 42px Montserrat;color:var(--pink);margin-right:8px}.home-stats span{font-size:14px;font-weight:600}.home-stats p{font-size:12px;color:var(--muted)}.home-stats .stat-note{align-self:center;font-size:13px;color:var(--muted);padding-right:10px}.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.route-card{padding:30px;background:var(--paper);border:1px solid var(--line);text-decoration:none;display:block;border-top:3px solid var(--pink);transition:border .2s,background .2s}.route-card:hover{border-color:var(--pink);background:var(--pale)}.route-card .eyebrow{font-size:12px}.route-card h3{font-size:23px;margin-bottom:15px}.route-card p{font-size:15px;color:var(--muted)}.route-card .read{display:block;margin-top:25px;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:5px}.tint{background:var(--soft)}.columns{display:grid;grid-template-columns:1fr 1fr;gap:56px}.prose{max-width:900px;margin:auto}.prose h2{font-size:30px;margin:40px 0 20px}.prose h2:first-child{margin-top:0}.prose h3{font-size:22px;margin:30px 0 14px}.prose p{margin:0 0 20px}.prose ul,.prose ol{padding-left:24px;margin:20px 0}.prose li{margin:8px 0}.answer-summary{border-left:4px solid var(--pink);padding:24px 28px;background:var(--pale);margin-bottom:35px}.answer-summary b{display:block;margin-bottom:9px;font-size:18px}.answer-summary p{margin:0;color:#4f4048}.table-wrap{overflow-x:auto;border:1px solid var(--line);margin:26px 0}table.compare{width:100%;border-collapse:collapse;min-width:580px;font-size:15px}.compare th,.compare td{padding:20px 24px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.compare th{background:var(--soft);font-weight:700}.compare thead th{background:var(--ink);color:white}.compare tr:last-child td,.compare tr:last-child th{border-bottom:0}.link-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.link-row a{font-weight:700;font-size:15px}.related{padding:50px var(--space);background:var(--soft);border-top:1px solid var(--line)}.related h2{font-size:24px;margin-bottom:23px}.related .route-card h3{font-size:19px}.related .route-card{padding:22px}.cta-band{padding:60px var(--space);background:var(--pale)}.cta-band .section__inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-band h2{font-size:30px}.cta-band p{font-size:15px;margin-top:12px;color:var(--muted)}.footer-main{display:grid;grid-template-columns:1fr 1.5fr}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:13px 22px}.footer .meta{font-size:12px;color:#cac9d2;margin-top:16px}.footer a:hover{color:#ff9bc8}.home-directory{display:grid;grid-template-columns:.9fr 1.4fr;gap:65px}.pref-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pref-links a{display:flex;justify-content:space-between;gap:10px;padding:15px 17px;border:1px solid var(--line);background:white;text-decoration:none;font-size:14px;font-weight:700}.pref-links a span{color:var(--pink);font-family:Montserrat}.pref-links a:hover{border-color:var(--pink)}.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:110px 100px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);font-size:15px;text-decoration:none}.news-item time{font-family:Montserrat;font-size:13px}.news-item .tag{font-size:12px;color:var(--pink)}.school-toolbar{padding:26px;background:var(--soft);border:1px solid var(--line);margin:0 0 25px}.finder-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:16px}.finder-grid label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.finder-grid input,.finder-grid select{width:100%;min-height:48px;border:1px solid #bbb;border-radius:3px;padding:9px 12px;background:white;font:inherit;font-size:14px}.finder-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:18px;font-size:14px}.reset-btn{background:white;border:1px solid #aaa;border-radius:3px;padding:7px 14px;color:var(--ink);font-size:13px}.school-group{padding-top:36px}.school-group h2{display:flex;align-items:center;gap:20px;font-size:28px;border-bottom:2px solid var(--ink);padding-bottom:17px;margin-bottom:25px}.school-group h2 span{font-size:13px;font-weight:400;color:var(--muted)}.school-group h2 a{font-size:13px;margin-left:auto;font-weight:500}.school-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.school-card{border:1px solid var(--line);padding:23px;display:flex;flex-direction:column;gap:13px;background:white}.school-card h3{font-size:19px}.school-card .address{font-size:14px;color:var(--muted)}.school-card .status{font-size:11px;letter-spacing:.02em;color:#5d5d67}.school-card .status.planned{color:#b11059;background:var(--pale);padding:3px 8px;align-self:start}.school-card .school-actions{margin-top:auto;display:flex;gap:16px;flex-wrap:wrap;padding-top:7px}.school-actions a{font-size:13px;font-weight:700}.school-empty{padding:50px;text-align:center;background:var(--soft)}[hidden]{display:none!important}.source-note{font-size:13px;color:var(--muted);line-height:1.8;margin-top:25px}.source-note a{color:inherit}.company-table{display:grid;grid-template-columns:180px 1fr;border-top:1px solid var(--line)}.company-table dt,.company-table dd{margin:0;padding:22px;border-bottom:1px solid var(--line);font-size:15px}.company-table dt{background:var(--soft);font-weight:700}.article-meta{font-size:13px;color:var(--muted);margin-top:20px}.contact-layout{align-items:start}.contact-extra{margin-top:30px;border-top:1px solid var(--line);padding-top:25px}.contact-extra h3{font-size:18px;margin-bottom:15px}.contact-extra ul{padding-left:20px;font-size:14px}.faq-page{max-width:900px;margin:auto}.faq-page details p{font-size:16px}.faq-page h2{font-size:25px;margin:40px 0 20px}.faq-page h2:first-child{margin-top:0}.support-list{margin-top:20px}.category-label{display:inline-block;font-size:12px;color:var(--pink);border:1px solid #e6b5ca;padding:4px 10px;margin-bottom:16px}.school-guide{background:var(--pale);padding:24px;margin:32px 0;font-size:15px}.school-guide b{display:block;margin-bottom:8px}.home-stats .btn{font-family:inherit;font-size:14px}.scroll-hint{font-size:12px;color:var(--muted)}
@media(max-width:1180px){.brand-sub{display:none}.nav__links{gap:15px;font-size:12px}}
@media(max-width:950px){.nav__links{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 90px);overflow:auto;background:white;padding:22px;border-bottom:1px solid var(--line)}.nav__links.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav__links a,.nav__links .desktop-link{display:block;padding:14px;border-bottom:1px solid var(--line);font-size:15px}.nav__links .btn{display:flex;margin-top:15px}.menu-toggle{display:block;background:white;border:1px solid var(--line);padding:9px 15px;font-size:13px;color:var(--ink)}.nav{height:78px}.home-directory{gap:35px}.school-grid{grid-template-columns:repeat(2,1fr)}.route-grid{gap:18px}.route-card{padding:23px}.finder-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.site-section{padding:50px 24px}.page-hero{padding:24px 24px 43px}.page-hero h1{font-size:32px}.breadcrumbs{font-size:11px;margin-bottom:26px}.page-nav{gap:8px}.page-nav a{font-size:12px;padding:7px 12px}.nav__links>a:not(.btn){display:block}.hero-copy h1{font-size:36px}.hero-frame img{height:auto;aspect-ratio:1.3}.home-stats{grid-template-columns:1fr 1fr;gap:20px;margin-top:15px}.home-stats>div:nth-child(2){border-right:0}.home-stats .stat-note{grid-column:1/-1;font-size:12px}.home-stats b{font-size:35px}.route-grid,.columns,.home-directory{grid-template-columns:1fr;gap:22px}.route-card{padding:26px}.route-card h3{font-size:22px}.route-card .read{margin-top:17px}.pref-links{grid-template-columns:1fr 1fr;gap:9px}.pref-links a{padding:12px 15px}.news-item{grid-template-columns:100px 1fr;gap:8px 12px}.news-item b{grid-column:1/-1;font-weight:600}.cta-band{padding:42px 24px}.cta-band .section__inner{display:block}.cta-band h2{font-size:27px}.cta-band .btn{width:100%;margin-top:22px}.footer-main{display:block}.footer-links{grid-template-columns:1fr 1fr;gap:15px}.prose h2{font-size:26px}.prose h3{font-size:21px}.answer-summary{padding:21px}.table-wrap{margin:22px 0}.compare th,.compare td{padding:16px}.related{padding:40px 24px}.school-toolbar{padding:20px}.finder-grid{grid-template-columns:1fr;gap:13px}.finder-footer{align-items:start}.school-grid{grid-template-columns:1fr}.school-group h2{font-size:24px;gap:12px;flex-wrap:wrap}.school-group h2 a{margin-left:0}.school-card{padding:23px}.company-table{grid-template-columns:100px 1fr}.company-table dt,.company-table dd{font-size:13px;padding:16px 12px}.section--hero{padding-top:32px}.faq-page details p{font-size:15px}.school-empty{padding:30px}.scroll-hint{display:block}}
/* LINE相談ボタン（FC本部LINEへの導線） */
.btn.btn-line{background:#06c755;border-color:#06c755;color:#fff}
.btn.btn-line:hover,.btn.btn-line:focus-visible{background:#05b34c;border-color:#05b34c;color:#fff}
.contact-methods a.btn-line{display:flex;width:100%;max-width:360px;margin:10px 0 22px;font-family:inherit;font-size:16px;line-height:1.4;letter-spacing:.04em}
/* 1文字だけ次行に落ちる改行を防ぐ */
p,.lead,.intro,.btn{text-wrap:pretty}
.btn{word-break:keep-all;overflow-wrap:anywhere}
.home-stats b small{font-size:.42em;margin-left:.08em;letter-spacing:0}
.nw{white-space:nowrap}
/* 日本語を文節で折り返し、最終行に1〜2文字だけ落ちる改行を防ぐ（2026-10-08） */
h1,h2,h3,h4,th,td,dt,dd,li,summary,.btn,.eyebrow,.card h3{word-break:auto-phrase;text-wrap:pretty}
h1,h2,h3,h4,th,.btn{text-wrap:balance}
main{word-break:auto-phrase}
@media (max-width:760px){
 table.compare{min-width:640px}
 .compare th,.compare td{padding:16px 18px}
 .compare th:first-child,.compare td:first-child{white-space:nowrap}
 .company-table dt{padding-left:14px;padding-right:10px}
}
/* 会社概要の表：長い社名・住所で列が画面外に押し出されないようにする */
.company-table{grid-template-columns:180px minmax(0,1fr)}
.company-table dd{min-width:0;overflow-wrap:anywhere}
@media (max-width:768px){.company-table{grid-template-columns:100px minmax(0,1fr)}}
/* 「どこでも改行可」だと均等割りが単語の途中で切るため、はみ出す時だけ折り返す指定に変更（2026-10-08） */
h1,h2,h3,p,.btn,.company-table dd{overflow-wrap:break-word}
@media (max-width:768px){.company-table{grid-template-columns:112px minmax(0,1fr)}}
/* 公式ロゴ（re-dia.jp と同じ logo03/logo04）に差し替え（2026-10-08） */
.brand-logo{display:block;height:56px;width:auto}
.footer .brand-logo{height:60px}
@media (max-width:768px){.brand-logo{height:46px}.footer .brand-logo{height:52px}}
/* 公式サイトの表示サイズに合わせる：ヘッダー160×58／フッター290×105（2026-10-08実測） */
.brand-logo{height:58px}
.footer .brand-logo{height:105px}
@media (max-width:768px){.brand-logo{height:48px}.footer .brand-logo{height:84px}}
/* 現行の正式ロゴ（横長・RDAマーク＋REDIA DANCE ACADEMY）をブランドピンクで使用（2026-10-08 三木さん指示） */
.brand-logo{height:30px;width:auto}
.footer .brand-logo{height:34px}
@media (max-width:768px){.brand-logo{height:24px}.footer .brand-logo{height:28px}}
/* 監修・更新日の表示（E-E-A-T）と要点ブロック（2026-10-08） */
.byline{font-size:13px;color:var(--muted);border-left:3px solid var(--pink);padding:6px 0 6px 12px;margin:0 0 26px}
.byline a{color:inherit}
.key-facts{margin:18px 0 24px}
/* 4列のプラン比較表：スマホでは列幅を確保して横スクロールで読む */
table.compare-wide{min-width:760px}
table.compare-wide th[scope="row"]{min-width:7.5em}
@media (max-width:768px){table.compare-wide{min-width:820px;font-size:14px}}
/* スマホの見出し：11文字のカタカナ（ダンスインストラクター）が1行に収まる大きさに */
@media (max-width:768px){.page-hero h1{font-size:28px}}
/* 幅360px級の端末でも「ダンスインストラクター」が1行に収まるよう、画面幅に合わせて縮める */
@media (max-width:768px){.page-hero h1{font-size:min(28px,calc((100vw - 52px) / 11.5))}}
@media (max-width:768px){.page-hero h1{font-size:min(28px,calc((100vw - 50px) / 12.3))}}
