:root{--meadow-green: #4a7c59;--meadow-dark: #2d5a3f;--poppy-red: #c4454d;--cornflower: #6488b4;--soft-pink: #d4919a;--cream: #faf8f3;--warm-white: #fdfcf9;--text-dark: #2a2a28;--text-body: #3d3d3a;--text-light: #6b6b65;--gold-accent: #b8963e;--border-subtle: rgba(74, 124, 89, .15);--shadow-soft: 0 2px 20px rgba(45, 90, 63, .08);--shadow-card: 0 4px 30px rgba(45, 90, 63, .1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:Noto Sans JP,sans-serif;font-weight:300;color:var(--text-body);background:var(--cream);line-height:1.9;overflow-x:hidden}.page-wrapper{display:flex;flex-direction:column;min-height:100vh}.page-wrapper>main{flex:1}.nav-lang{display:flex;align-items:center;gap:0;flex-shrink:0}.nav-lang-divider{width:1px;height:14px;background:var(--border-subtle);margin-right:.8rem}.lang-btn{border:none;background:transparent;padding:4px 7px;font-size:.72rem;cursor:pointer;border-radius:3px;font-family:Cormorant Garamond,serif;font-weight:500;color:var(--text-light);transition:color .3s;letter-spacing:.05em;text-decoration:none;display:inline-block}.lang-btn.active{color:var(--meadow-dark);font-weight:600}.lang-btn:hover:not(.active){color:var(--meadow-dark)}.nav-lang-mobile{display:none}.nav{position:fixed;top:var(--info-bar-height, 0px);left:0;right:0;z-index:900;background:#faf8f3eb;backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);transform:translateY(-100%);transition:transform .4s ease}.nav.visible{transform:translateY(0)}.nav-inner{max-width:1000px;margin:0 auto;padding:.7rem 2rem;display:flex;align-items:center;justify-content:space-between}.nav-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none}.nav-logo-mark{height:28px;opacity:.8}.nav-logo-text{height:22px;opacity:.85}.nav-links{display:flex;gap:1.8rem;list-style:none}.nav-links a{font-size:.78rem;color:var(--text-light);text-decoration:none;letter-spacing:.06em;transition:color .3s;font-weight:400;white-space:nowrap}.nav-links a:hover{color:var(--meadow-dark)}.hamburger{display:none;background:none;border:none;cursor:pointer;width:28px;height:20px;position:relative}.hamburger span{display:block;width:100%;height:1.5px;background:var(--text-dark);position:absolute;left:0;transition:all .3s}.hamburger span:nth-child(1){top:0}.hamburger span:nth-child(2){top:50%;transform:translateY(-50%)}.hamburger span:nth-child(3){bottom:0}@media(max-width:960px)and (min-width:769px){.nav-links{gap:.8rem}.nav-links a{font-size:.72rem;letter-spacing:.03em}.nav-inner{padding:.7rem 1.2rem}.lang-btn{font-size:.68rem;padding:4px 5px}}@media(max-width:768px){.nav-inner{padding:.7rem 1.2rem}.hamburger{display:block}.nav-lang{display:none}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#faf8f3fa;flex-direction:column;gap:0;border-bottom:1px solid var(--border-subtle);padding:.5rem 0}.nav-links.open{display:flex}.nav-links li{padding:0;display:flex;flex-direction:column}.nav-links a{padding:.8rem 1.5rem;border-bottom:1px solid var(--border-subtle)}.nav-lang-mobile{display:flex;flex-direction:row!important;gap:.25rem;padding:.8rem 1.5rem!important;border-top:1px solid var(--border-subtle)}.nav-lang-mobile .lang-btn{padding:5px 12px;font-size:.78rem}.nav-lang-mobile .lang-btn.active{background:var(--meadow-green);color:#fff;border-radius:4px}section{padding:3.5rem 1.2rem}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:#faf8f359;backdrop-filter:blur(2px)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#faf8f31a,#faf8f300 30% 60%,#faf8f399)}.hero-content{text-align:center;position:relative;z-index:2;padding:2rem;animation:fadeUp 1.2s ease forwards;display:flex;flex-direction:column;align-items:center}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-logo-container{display:inline-block;background:#ffffffe0;padding:1.5rem 2.5rem;border-radius:4px;margin-bottom:2rem;box-shadow:0 4px 40px #00000014}.hero-logo-mark{height:50px;display:block;margin:0 auto .8rem}.hero-logo-img{height:50px;display:block;margin:0 auto}.hero-tagline{font-family:"Noto Serif JP",serif;font-size:clamp(.85rem,1.5vw,1rem);font-weight:300;color:var(--text-dark);letter-spacing:.12em;line-height:2.2;margin:0 0 2.5rem;text-shadow:0 1px 8px rgba(255,255,255,.9);background:#ffffff8c;backdrop-filter:blur(4px);padding:1rem 2rem;border-radius:6px;max-width:min(90vw,680px);width:fit-content;word-break:normal;overflow-wrap:break-word}.hero-scroll{display:inline-block;width:1px;height:50px;background:linear-gradient(to bottom,var(--gold-accent),transparent);animation:scrollPulse 2s ease infinite}@keyframes scrollPulse{0%,to{opacity:.4}50%{opacity:1}}section{padding:5rem 2rem}.section-inner{max-width:780px;margin:0 auto}.section-label{font-family:Cormorant Garamond,serif;font-size:.75rem;letter-spacing:.4em;text-transform:uppercase;color:var(--gold-accent);margin-bottom:.5rem}.section-title{font-family:"Noto Serif JP",serif;font-size:clamp(1.3rem,2.5vw,1.7rem);font-weight:300;color:var(--text-dark);margin-bottom:2rem;line-height:1.6}.section-divider{width:40px;height:1px;background:var(--gold-accent);margin-bottom:2rem;opacity:.6}p+p{margin-top:1rem}.about{background:var(--warm-white);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.method-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2.5rem}@media(max-width:600px){.method-principles{grid-template-columns:1fr}}.principle{text-align:center;padding:1.5rem 1rem}.principle-icon{font-size:1.8rem;margin-bottom:.8rem;display:block}.principle-title{font-family:"Noto Serif JP",serif;font-weight:400;font-size:.9rem;color:var(--text-dark);margin-bottom:.5rem}.principle-text{font-size:.8rem;color:var(--text-light);line-height:1.8}.method-note{margin-top:2.5rem;padding:1.5rem 2rem;background:#4a7c590a;border-left:2px solid var(--meadow-green);font-size:.85rem;color:var(--text-light);line-height:1.9}.instructor{background:var(--cream)}.instructor-card{display:grid;grid-template-columns:200px 1fr;gap:2.5rem;align-items:start;margin-top:2rem}@media(max-width:600px){.instructor-card{grid-template-columns:1fr}}.instructor-photo{width:200px;height:200px;border-radius:50%;object-fit:cover;border:3px solid rgba(74,124,89,.15)}.instructor-name{font-family:Cormorant Garamond,serif;font-size:1.4rem;font-weight:400;color:var(--text-dark);margin-bottom:.2rem;letter-spacing:.08em}.instructor-name-ja{font-family:"Noto Serif JP",serif;font-size:.9rem;font-weight:300;color:var(--text-light);margin-bottom:1.2rem}.instructor-bio{font-size:.85rem;line-height:2;color:var(--text-body)}.instructor-bio p+p{margin-top:.8rem}.career-intro{font-size:.85rem;line-height:2;color:var(--text-body);margin-top:.5rem}.bio-highlight{display:inline-block;font-size:.78rem;padding:.2rem .6rem;background:#4a7c590f;border-radius:3px;margin:.2rem .3rem .2rem 0;color:var(--meadow-dark)}.instructor-concert{width:100%;border-radius:4px;margin-top:1.5rem;border:1px solid var(--border-subtle)}.courses{background:var(--warm-white);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.course-cards{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:2rem}.course-card{padding:2rem;background:#fff;border:1px solid var(--border-subtle);border-radius:6px;box-shadow:var(--shadow-soft);transition:box-shadow .3s}.course-card:hover{box-shadow:var(--shadow-card)}.course-card-label{font-family:Cormorant Garamond,serif;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--cornflower);margin-bottom:.5rem}.course-card-title{font-family:"Noto Serif JP",serif;font-size:1.05rem;font-weight:400;color:var(--text-dark);margin-bottom:1rem}.course-card-detail{font-size:.82rem;color:var(--text-light);line-height:1.9}.course-card-detail strong{font-weight:500;color:var(--text-body)}.course-subjects{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.course-tag{font-size:.72rem;padding:.25rem .6rem;background:#4a7c590f;border-radius:3px;color:var(--meadow-dark);white-space:nowrap}.course-photo{width:100%;border-radius:4px;margin-bottom:1rem;border:1px solid var(--border-subtle)}.camerata-section{margin-top:3rem;text-align:center;padding:2rem;border:1px solid var(--border-subtle);border-radius:6px;background:#fff}.camerata-photo{width:100%;max-width:600px;border-radius:4px;margin:1rem auto 0;display:block;border:1px solid var(--border-subtle)}.news{background:var(--warm-white);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.news-list{margin-top:2rem}.news-item{display:block;padding:1rem 0;border-bottom:1px solid var(--border-subtle);text-decoration:none;color:inherit}.news-item:last-child{border-bottom:none}.news-item:hover .news-title{color:var(--gold, #8b6f4e)}.news-item{display:flex;flex-wrap:wrap;gap:.5rem .8rem;align-items:baseline}.news-date{font-size:.8rem;color:var(--text-light);white-space:nowrap;min-width:100px}.news-title{font-family:"Noto Serif JP",serif;font-size:.95rem;color:var(--text-dark);font-weight:400;transition:color .2s}.news-tags{display:inline-flex;flex-wrap:wrap;gap:.3rem;align-items:center}.news-tag{font-size:.7rem;padding:.1rem .55rem;border:1px solid #c8b89a;border-radius:999px;color:#8b6f4e;white-space:nowrap}.news-updated-icon,.post-updated-icon{margin-left:.3rem;font-size:.7em;opacity:.5}.news-new-icon,.post-new-icon{margin-left:.3rem;font-size:.5em;color:var(--meadow-green, #4a7c59);opacity:.6}.news-more{margin-top:1.5rem;text-align:right}.news-more-link{font-size:.85rem;color:#8b6f4e;text-decoration:none;letter-spacing:.03em}.news-more-link:hover{text-decoration:underline}.contact{background:var(--cream)}.contact-description{margin-bottom:1.5rem;font-size:.88rem;text-align:center}.contact-methods{display:flex;justify-content:center;gap:1.5rem;margin-top:2rem}.contact-method{padding:1.5rem 2rem;background:#fff;border:1px solid var(--border-subtle);border-radius:6px;text-align:center;text-decoration:none;color:var(--text-body);transition:all .3s;display:block}.contact-method:hover{box-shadow:var(--shadow-card);border-color:var(--meadow-green)}.contact-method-icon{font-size:1.5rem;margin-bottom:.5rem}.contact-method-label{font-size:.78rem;color:var(--text-light);letter-spacing:.08em;margin-bottom:.3rem}.contact-method-value{font-size:.9rem;color:var(--meadow-dark);font-weight:400}.contact-form{max-width:500px;margin:2rem auto 0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.82rem;color:var(--text-light);margin-bottom:.4rem;letter-spacing:.05em}.form-group input,.form-group textarea{width:100%;padding:.7rem 1rem;border:1px solid var(--border-subtle);border-radius:4px;font-family:Noto Sans JP,sans-serif;font-size:.88rem;color:var(--text-body);background:#fff;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--meadow-green)}.form-submit{display:block;width:100%;padding:.8rem;background:var(--meadow-green);color:#fff;border:none;border-radius:4px;font-size:.9rem;font-family:Noto Sans JP,sans-serif;cursor:pointer;transition:background .3s;margin-top:1rem}.form-submit:hover{background:var(--meadow-dark)}.form-submit:disabled{opacity:.6;cursor:not-allowed}.form-status{margin-top:1rem;padding:.8rem 1rem;border-radius:4px;font-size:.85rem;text-align:center}.form-status.success{background:#4a7c5914;color:var(--meadow-dark);border:1px solid rgba(74,124,89,.2)}.form-status.error{background:#c4454d14;color:var(--poppy-red);border:1px solid rgba(196,69,77,.2)}.cf-turnstile{margin:1rem 0}.contact-instagram{margin-top:2.5rem;font-size:.82rem;color:var(--text-light);text-align:center}.contact-sns-link{display:block;text-align:center;font-size:.82rem;color:var(--meadow-green);text-decoration:none;margin-top:.5rem;transition:color .2s}.contact-sns-link:hover{color:var(--meadow-dark)}.access{background:var(--warm-white);border-top:1px solid var(--border-subtle)}.access-info{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}@media(max-width:600px){.access-info{grid-template-columns:1fr}}.access-map{width:100%;aspect-ratio:4/3;border-radius:4px;border:1px solid var(--border-subtle);overflow:hidden}.access-map iframe{width:100%;height:100%;border:none;display:block}.access-details{font-size:.85rem;line-height:2}.access-details dt{font-weight:500;color:var(--text-dark);font-size:.78rem;letter-spacing:.08em;margin-top:1rem}.access-details dt:first-child{margin-top:0}.access-details dd{color:var(--text-body)}.footer{padding:3rem 2rem;text-align:center;background:var(--meadow-dark);color:#fff9;font-size:.75rem;letter-spacing:.08em}.footer-logo{height:36px;margin-bottom:.8rem;opacity:.7;filter:brightness(10)}.footer-mark{height:40px;margin-bottom:.5rem;opacity:.5;filter:brightness(10);display:block;margin-left:auto;margin-right:auto}.related-sites{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.15)}.footer-social{display:flex;justify-content:center;gap:1.2rem;margin-bottom:1.5rem}.footer-social a{color:#ffffff8c;text-decoration:none;transition:color .2s;display:flex;align-items:center}.footer-social a:hover{color:#fff}.footer-archive{opacity:.55}.footer-archive-label{font-size:.62rem;letter-spacing:.1em;color:#ffffffb3;margin-bottom:.5rem;text-transform:uppercase}.footer-archive-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem 1rem}.footer-archive-links a{font-size:.68rem;color:#fff9;text-decoration:none;transition:color .2s}.footer-archive-links a:hover{color:#ffffffe6}@media(max-width:480px){.hero-logo-container{padding:1rem 1.5rem}.hero-logo-mark,.hero-logo-img{height:38px}.hero-tagline{padding:.8rem 1rem;letter-spacing:.08em}.contact-method-value{word-break:break-all}.social-links{flex-wrap:wrap;gap:.8rem}}@media(max-width:400px){.news-item{flex-direction:column;gap:.2rem}.news-date{min-width:unset}}.post-body{font-size:.9rem;line-height:2;color:var(--text-body)}.post-body p+p{margin-top:1.5rem}.post-content ul{padding-left:1.5rem;margin:1.5rem 0}.post-content li{margin-bottom:.5rem}.post-content iframe{display:block;margin-top:2rem;border-radius:4px}.post-content hr{border:none;width:40px;height:1px;background:var(--gold-accent);opacity:.6;margin:3rem 0}.audio-player{max-width:360px;margin:2rem auto;text-align:center;background:#111;border-radius:12px;padding:.8rem .8rem .5rem}.audio-player-label{margin-bottom:.5rem;font-style:italic;color:#ffffffb3;font-size:.82rem}.audio-player iframe{margin-top:0;border-radius:8px;max-width:100%}.video-shorts{max-width:270px;margin:2rem auto;text-align:center}.video-shorts iframe{margin-top:0;border-radius:8px;max-width:100%;height:auto;aspect-ratio:9 / 16}.lang-fallback-notice{padding:.8rem 1.2rem;margin-bottom:1.5rem;background:#6488b414;border-left:2px solid var(--cornflower);font-size:.82rem;color:var(--text-light);font-style:italic;border-radius:0 4px 4px 0}.detail-page{max-width:780px;margin:0 auto;padding:8rem 2rem 5rem}.detail-page-title{font-family:"Noto Serif JP",serif;font-size:clamp(1.3rem,2.5vw,1.7rem);font-weight:300;color:var(--text-dark);line-height:1.6;margin-bottom:1rem}.detail-intro{font-size:.9rem;line-height:2;color:var(--text-body);margin-bottom:3rem}.detail-hero-image{width:100%;border-radius:4px;border:1px solid var(--border-subtle);margin-bottom:2rem}.detail-section{margin-bottom:2.5rem}.detail-section-title{font-family:"Noto Serif JP",serif;font-size:1rem;font-weight:400;color:var(--text-dark);margin-bottom:.8rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.detail-section p{font-size:.88rem;line-height:1.9;color:var(--text-body)}.detail-cta{margin-top:3rem;padding:2rem;background:#fff;border:1px solid var(--border-subtle);border-radius:6px;text-align:center}.detail-cta-link{display:inline-block;padding:.7rem 2rem;background:var(--meadow-green);color:#fff;text-decoration:none;border-radius:4px;font-size:.88rem;transition:background .3s}.detail-cta-link:hover{background:var(--meadow-dark)}.event-card-link{display:block;position:relative;border:1px solid var(--border-subtle);border-radius:6px;padding:1.2rem 1.5rem;margin-top:2.5rem;background:#4a7c5908;text-decoration:none;transition:border-color .3s}.event-card-link:hover{border-color:var(--meadow-green)}.event-card-label{display:block;font-size:.75rem;color:var(--meadow-dark);margin-bottom:.5rem;letter-spacing:.03em}.event-card-title{display:block;color:var(--text-dark);font-size:.9rem}.event-card-desc{display:block;font-size:.82rem;color:var(--text-light);margin-top:.5rem;line-height:1.7}.detail-cta-bare{margin-top:3rem;text-align:center}.detail-back{margin-top:2rem;font-size:.85rem}.detail-back a{color:var(--text-light);text-decoration:none;transition:color .2s}.detail-back a:hover{color:var(--meadow-dark)}.instructor-highlights{display:flex;flex-wrap:wrap;gap:.4rem}.detail-quote{padding:1.2rem 1.5rem;background:#4a7c590a;border-left:2px solid var(--meadow-green);border-radius:0 4px 4px 0;margin-bottom:1.2rem}.detail-quote p{font-size:.88rem;line-height:2;color:var(--text-body)}.detail-points{display:flex;flex-direction:column;gap:1rem}.detail-point{padding:1rem 1.2rem;background:#fff;border:1px solid var(--border-subtle);border-radius:6px}.detail-point p{font-size:.88rem;line-height:2;color:var(--text-body);margin:0}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:.5rem}.detail-columns .detail-section{margin-bottom:0;padding:1.5rem;background:#fff;border:1px solid var(--border-subtle);border-radius:6px}.detail-columns .detail-section-title{border-bottom:none;padding-bottom:0;margin-bottom:.6rem}@media(max-width:600px){.detail-columns{grid-template-columns:1fr;gap:1rem}}.detail-fee{font-size:1.1rem;font-weight:500;color:var(--text-dark)}.detail-note{font-size:.82rem;color:var(--text-light);margin-top:.5rem}.detail-map-link{display:inline-block;margin-top:1rem;font-size:.85rem;color:var(--meadow-green);text-decoration:none;transition:color .3s}.detail-map-link:hover{color:var(--meadow-dark)}.detail-list{padding-left:1.5rem;font-size:.88rem;line-height:2;color:var(--text-body)}.detail-list li{margin-bottom:.3rem}.study-table{display:flex;flex-direction:column;gap:.8rem}.study-row{font-size:.85rem;line-height:1.8;padding-left:1rem;border-left:2px solid var(--border-subtle)}.study-institution{display:block;font-weight:400;color:var(--text-dark)}.study-detail{display:block;color:var(--text-light);font-size:.82rem}.detail-subtitle{font-family:"Noto Serif JP",serif;font-size:.95rem;font-weight:300;color:var(--text-light);margin-bottom:1rem}.timeline{display:flex;flex-direction:column}.timeline-item{display:flex;gap:.8rem;align-items:baseline;font-size:.85rem;line-height:1.8;padding:.35rem 0}.timeline-item.has-year{margin-top:.3rem}.timeline-year{font-family:Cormorant Garamond,serif;font-size:.88rem;color:var(--meadow-dark);font-weight:600;letter-spacing:.05em;white-space:nowrap;min-width:3.5rem}.timeline-desc{color:var(--text-body)}.course-card-link{display:block;text-decoration:none;color:inherit;position:relative;transition:border-color .3s;cursor:pointer}.course-card-link:hover{border-color:var(--meadow-green)}.course-more-link{display:inline-block;margin-top:1rem;font-size:.82rem;color:var(--meadow-green);text-decoration:none;letter-spacing:.03em;transition:color .2s}.course-more-link:hover{color:var(--meadow-dark)}.course-more-hint{display:block;text-align:right;margin-top:auto;padding-top:.8rem;font-size:.75rem;color:var(--text-light);letter-spacing:.03em;transition:color .2s}.course-card-link:hover .course-more-hint{color:var(--meadow-green)}.instructor-more{margin-top:1.5rem;text-align:center}@media(max-width:600px){.detail-page{padding:7rem 1.2rem 4rem}}.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}.info-bar[data-astro-cid-6o43mjfs]{position:fixed;top:0;left:0;right:0;z-index:1001;background:var(--meadow-dark);color:#fffffff2;text-align:center;padding:.45rem 1rem;font-family:Noto Sans JP,sans-serif;font-size:.78rem;letter-spacing:.05em}.info-bar-link[data-astro-cid-6o43mjfs]{color:#fffffff2;text-decoration:none;transition:opacity .2s}.info-bar-link[data-astro-cid-6o43mjfs]:hover{opacity:.8}.footer-logo-link[data-astro-cid-sz7xmlte]{display:block;text-decoration:none}.music-bg[data-astro-cid-lts77xnq]{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:100;overflow:hidden}.music-bg[data-astro-cid-lts77xnq] svg[data-astro-cid-lts77xnq]{width:100%;height:100%}
