*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.9;background:var(--outer)}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #1595ac;outline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,.brand,.phone{font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif}p{overflow-wrap:anywhere}.shell{max-width:1060px;margin:0 auto;background:var(--paper);box-shadow:0 0 70px #0002}.skip{position:absolute;left:12px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;padding:24px 48px;border-bottom:1px solid var(--line);background:var(--head);color:var(--head-ink)}.brand small{display:block;font-size:11px;font-family:sans-serif;letter-spacing:.16em}.brand strong{font-size:34px;line-height:1.4;font-weight:500;letter-spacing:.12em}.brand i{font-style:normal;display:inline-block;font-size:10px;letter-spacing:.25em;margin-left:8px}.header-contact{text-align:right;font-size:11px;line-height:1.5}.phone{display:block;font-size:24px;letter-spacing:.04em}.nav{display:flex;justify-content:center;gap:48px;padding:13px 20px;font-size:12px;letter-spacing:.06em;border-bottom:1px solid var(--line)}.hero{position:relative;min-height:475px;display:flex;align-items:center;padding:54px 58px;background-image:var(--hero-overlay),url(tilleul-2026-hero.jpg);background-size:cover;background-position:center}.hero-content{position:relative;max-width:600px}.eyebrow{font-family:Georgia,serif;font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.hero h1{font-size:43px;line-height:1.65;letter-spacing:.09em;font-weight:500}.hero p{font-size:14px;line-height:2;margin-top:22px}.actions{display:flex;gap:14px;align-items:center;margin-top:30px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:13px 25px;background:var(--accent);color:var(--onaccent);font-size:14px;border:1px solid var(--accent);transition:filter .2s}.btn:hover{filter:brightness(1.1)}.btn span{font-size:20px;line-height:1}.text-link{font-size:13px;border-bottom:1px solid currentColor;padding:5px 0}.hero small{display:block;font-size:10px;margin-top:16px;opacity:.85}.intro{padding:66px 64px;text-align:center;border-bottom:1px solid var(--line);background:var(--intro)}.ornament{font-size:18px;letter-spacing:.6em;color:var(--accent);margin-bottom:20px}.intro h2{font-size:26px;font-weight:500;letter-spacing:.1em;line-height:1.8}.intro p{max-width:660px;margin:23px auto 0;font-size:14px;line-height:2.3}.topics{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}.topics span{border:1px solid var(--line);padding:5px 20px;font-size:12px;background:var(--paper)}.teachers{padding:62px 48px 64px}.section-heading{text-align:center;margin-bottom:34px}.section-heading h2{font-size:28px;letter-spacing:.08em;font-weight:500}.section-heading p{font-size:13px;color:var(--muted);margin-top:12px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.teacher{background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;position:relative}.teacher-photo{width:100%;height:245px;object-fit:cover;object-position:50% 20%;background:var(--intro)}.teacher-body{padding:22px;display:flex;flex-direction:column;flex:1}.teacher h3{font-size:24px;letter-spacing:.12em;font-weight:500;font-family:"Yu Mincho",serif}.teacher h3 small{font-size:12px;letter-spacing:.05em;margin-left:8px}.reading{font-size:10px;letter-spacing:.12em;color:var(--muted);min-height:22px}.teacher .copy{font-size:12px;line-height:1.9;margin:13px 0 20px;color:var(--muted)}.profile{border-top:1px solid var(--line);padding-top:15px;margin-top:auto;font-size:12px;display:flex;justify-content:space-between;align-items:center;color:var(--accent)}.source-note{text-align:right;font-size:10px;color:var(--muted);margin:14px 0}.center{text-align:center;margin-top:30px}.center .btn{min-width:280px}.guidance{padding:56px 48px;background:var(--intro);border-block:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.step-number{font:italic 30px Georgia,serif;color:var(--accent);opacity:.7}.steps h3{font-size:16px;margin:8px 0}.steps p{font-size:12px;color:var(--muted);line-height:2}.steps a{display:inline-block;font-size:12px;margin-top:12px;border-bottom:1px solid var(--accent)}.faq{padding:56px 64px}.faq details{border-bottom:1px solid var(--line);padding:20px 0;font-size:13px}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'＋';color:var(--accent)}.faq details[open] summary:after{content:'－'}.faq details p{padding:15px 24px 2px;color:var(--muted)}.faq a{text-decoration:underline;text-underline-offset:4px}.closing{text-align:center;background:var(--closing);padding:55px 30px;color:var(--closing-ink)}.closing h2{font-size:26px;line-height:1.8;font-weight:500;letter-spacing:.08em}.closing .actions{justify-content:center}.closing .phone{margin-top:24px;font-size:30px}.closing small{font-size:11px;display:block}.footer{padding:28px 30px 35px;text-align:center;font-size:10px;line-height:2.4;color:var(--muted)}.footer-links{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-bottom:14px}.mobile-bar{display:none}.tilleul{--outer:#66263c;--ink:#342c37;--paper:#fffdf9;--card:#fff;--muted:#71666f;--accent:#8c6632;--onaccent:#fff;--line:#dfd2bf;--head:#201821;--head-ink:#edd8ad;--intro:#f8f3ed;--closing:#35203e;--closing-ink:#f8eedf;--hero-overlay:linear-gradient(90deg,rgba(23,5,35,.65),rgba(28,4,39,.15))}.tilleul .hero{color:#fff3df}.tilleul .hero .eyebrow{color:#e8cb89}.tilleul .hero .btn{background:#ead4a5;color:#342039;border-color:#ead4a5}.tilleul .hero-content{text-shadow:0 2px 10px #22002c88}.tilleul .hero .btn{text-shadow:none}.tilleul .nav{background:#fffaf2}.leggera{--outer:#eaf5f8;--ink:#514352;--paper:#fffdfd;--card:#fff;--muted:#776b75;--accent:#ac5a80;--onaccent:#fff;--line:#eadde5;--head:#fffdfd;--head-ink:#6a4b68;--intro:#fbf5fa;--closing:#f3e8f3;--closing-ink:#60485e;--hero-overlay:linear-gradient(90deg,rgba(255,253,251,.46),rgba(255,255,255,0))}.leggera .brand strong{font-size:32px}.leggera .hero{min-height:510px;background-position:60% center}.leggera .hero h1{font-size:42px;color:#604460}.leggera .hero-content{max-width:470px}.leggera .btn{border-radius:50px}.leggera .teacher{border-radius:4px;overflow:hidden}.leggera .teacher-photo{height:245px}.leggera .intro .ornament{font-size:23px}.leggera .nav{color:#84647f}body:has(.leggera){background:#eaf5f8}
@media(max-width:700px){.header{padding:18px 22px}.brand strong,.leggera .brand strong{font-size:27px}.brand i{font-size:8px;display:block;margin-left:0}.brand small{font-size:9px}.header-contact{font-size:9px}.header-contact .phone{font-size:16px}.nav{gap:24px;font-size:11px;padding:11px 8px}.hero{min-height:490px;padding:40px 28px;background-position:65% center}.hero h1{font-size:32px;line-height:1.7}.hero p{font-size:13px}.hero .eyebrow{font-size:9px}.hero .actions{gap:20px}.leggera .hero{min-height:560px;align-items:flex-end;background-size:auto 100%;background-position:100% top;background-image:linear-gradient(0deg,rgba(255,252,251,.97) 0%,rgba(255,252,251,.85) 28%,rgba(255,255,255,0) 65%),url(tilleul-2026-hero.jpg)}.leggera .hero h1{font-size:31px}.leggera .hero-content{max-width:100%}.leggera .hero p{margin-top:12px}.leggera .hero .eyebrow{margin-bottom:8px}.leggera .hero .actions{margin-top:20px}.intro{padding:44px 26px}.intro h2{font-size:23px}.intro p{font-size:13px;text-align:left}.topics{gap:8px}.topics span{padding:4px 14px}.teachers{padding:44px 20px}.section-heading h2{font-size:23px}.section-heading p{font-size:12px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.teacher-photo,.leggera .teacher-photo{height:180px}.teacher-body{padding:15px 12px}.teacher h3{font-size:21px;letter-spacing:.06em}.teacher h3 small{font-size:10px;margin-left:3px}.teacher .copy{font-size:11px;line-height:1.9;margin:8px 0 16px}.profile{font-size:10px;gap:5px}.source-note{font-size:9px;text-align:left}.guidance{padding:42px 26px}.steps{grid-template-columns:1fr;gap:22px}.steps article{padding-bottom:22px;border-bottom:1px solid var(--line)}.steps article:last-child{border:0;padding-bottom:0}.step-number{float:left;width:45px;line-height:1.4}.steps h3,.steps p,.steps a{margin-left:50px}.steps h3{margin-top:0}.steps p{font-size:13px}.faq{padding:42px 25px}.faq details p{padding-left:0;padding-right:0}.closing{padding:42px 24px}.closing h2{font-size:23px}.closing .actions{flex-direction:column}.footer{padding-bottom:100px}.footer-links{gap:8px 18px}.mobile-bar{position:fixed;z-index:5;bottom:0;left:0;right:0;display:flex;box-shadow:0 -2px 20px #0001;padding:9px 14px calc(9px + env(safe-area-inset-bottom));gap:10px;background:var(--paper);border-top:1px solid var(--line)}.mobile-bar a{padding:10px;text-align:center;flex:1;font-size:12px;border:1px solid var(--accent);color:var(--accent)}.mobile-bar a:last-child{background:var(--accent);color:var(--onaccent)}.leggera .mobile-bar a{border-radius:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
