:root{--pine:#123b32;--deep:#0b2c26;--tea:#446b59;--gold:#b88b43;--cream:#f5f0e5;--paper:#fbfaf6;--ink:#22312c;--muted:#66736d;--line:#dcded5;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.8}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.announcement{height:36px;background:var(--deep);color:#dbe7e1;font-size:12px}.announcement .wrap{height:100%;display:flex;align-items:center;justify-content:center;gap:18px}.announcement span{color:#e0ba75;letter-spacing:.1em}.announcement b{margin-left:10px}.header{height:88px;background:#fff;border-bottom:1px solid #edf0eb}.headerInner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px;line-height:1.25;color:var(--pine)}.brand i{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--gold);border-radius:50%;font-family:var(--serif);font-style:normal;font-size:23px}.brand span{font-size:9px;letter-spacing:.08em}.brand strong{font-family:var(--serif);font-size:15px;letter-spacing:.07em;font-weight:600}.header nav{display:flex;gap:26px;font-size:12px;font-weight:600}.header nav a:hover{color:var(--gold)}.contactButton{padding:11px 17px;border:1px solid var(--pine);font-size:12px}.menuLabel{display:none}.hero{position:relative;min-height:670px;color:white;background:linear-gradient(112deg,#0b332b 0%,#19473a 46%,#6d7f65 100%);overflow:hidden}.heroTexture{position:absolute;inset:0;opacity:.5;background:radial-gradient(ellipse at 83% 72%,transparent 0 9%,#102f294a 9.5% 10%,transparent 10.5% 17%,#112f2940 17.5% 18%,transparent 18.5%),linear-gradient(145deg,transparent 55%,#dcc78716 55.2% 56%,transparent 56.2%),radial-gradient(circle at 70% 20%,#d8c5822e,transparent 27%)}.hero:after{content:"茶";position:absolute;right:-30px;top:-190px;font-family:var(--serif);font-size:620px;color:#ffffff08;line-height:1}.heroInner{position:relative;z-index:1;height:560px;display:flex;align-items:center;justify-content:space-between}.heroCopy{padding-bottom:20px}.eyebrow{margin:0 0 18px;color:var(--gold);font-size:11px;letter-spacing:.24em;font-weight:700}.eyebrow.light{color:#e4c583}.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(44px,6vw,74px);line-height:1.32;letter-spacing:.06em;margin:0 0 25px}.hero h1 em{font-style:normal;color:#e2bf76}.heroLead{font-family:var(--serif);font-size:16px;line-height:2.1;color:#e7efe9;margin:0 0 30px}.heroActions{display:flex;align-items:center;gap:26px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 25px;border:1px solid transparent;font-size:12px;letter-spacing:.09em;transition:.2s}.button:hover{transform:translateY(-2px)}.button.gold{background:var(--gold);color:white}.textButton{font-size:12px;letter-spacing:.06em}.textButton b{margin-left:11px}.heroSeal{width:235px;height:235px;border:1px solid #f6e9c563;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;transform:rotate(3deg);background:#0d2d261f;backdrop-filter:blur(3px)}.heroSeal span{font-family:var(--serif);letter-spacing:.25em;font-size:13px}.heroSeal b{font-family:var(--serif);font-size:52px;line-height:1.35;color:#e3c077;font-weight:500}.heroSeal small{font-size:9px;letter-spacing:.18em}.quick{position:relative;z-index:2;height:110px;background:white;color:var(--ink);display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 15px 40px #09241d20}.quick a{padding:22px 28px;border-right:1px solid var(--line);position:relative}.quick a:last-child{border:0}.quick span{display:block;font-size:10px;color:var(--gold);letter-spacing:.12em}.quick strong{font-family:var(--serif);font-size:18px;font-weight:500}.quick b{position:absolute;right:25px;top:42px;color:var(--tea)}.section{padding:105px 0}.intro{padding-top:145px}.introGrid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.section h2,.intro h2,.exam h2,.tour h2,.school h2,.contact h2{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4vw,45px);line-height:1.55;letter-spacing:.05em;margin:0}.introText{font-family:var(--serif);color:#58665f;font-size:15px;line-height:2.15}.introText p:first-child{margin-top:0}.arrowLink{display:inline-block;margin-top:15px;color:var(--pine);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.07em;border-bottom:1px solid #9eaba4;padding-bottom:5px}.arrowLink b{margin-left:14px}.numbers{background:#ece9df;padding:54px 0 36px}.numberGrid{display:grid;grid-template-columns:repeat(4,1fr)}.numberGrid div{text-align:center;border-right:1px solid #cdd0c6}.numberGrid div:last-child{border:0}.numberGrid strong{display:block;font-family:var(--serif);font-size:38px;font-weight:500;color:var(--pine);line-height:1.2}.numberGrid strong small{font-size:15px}.numberGrid span{font-size:11px;color:var(--muted)}.dataNote{text-align:center;font-size:9px;color:#899089;margin:22px 0 0}.learn{background:white}.sectionHeading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.sectionHeading>p{max-width:430px;color:var(--muted);font-size:13px;margin:0}.courseGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.course{min-height:360px;padding:31px;display:flex;flex-direction:column;color:white;position:relative;overflow:hidden}.course:after{content:"茶";position:absolute;right:-15px;bottom:-75px;font-family:var(--serif);font-size:200px;color:#ffffff0c}.course.green{background:#2b5a49}.course.sand{background:#9a7e54}.course.rust{background:#894b3c}.courseNumber{font-family:var(--serif);font-size:12px;opacity:.7}.course h3{font-family:var(--serif);font-weight:500;font-size:27px;margin:45px 0 12px}.course p{font-size:13px;color:#f0f0e9;flex:1;position:relative;z-index:1}.course b{font-size:11px;letter-spacing:.08em;position:relative;z-index:1}.exam{background:var(--cream)}.examGrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center}.examVisual{aspect-ratio:4/5;max-height:520px;background:linear-gradient(145deg,#cfb97d,#475f4d 62%,#1b3f34);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:18px 18px 0 #ded7c6}.examVisual span{font-family:var(--serif);font-size:80px;color:#f3dfac;line-height:1}.examVisual strong{font-family:var(--serif);font-size:27px;font-weight:500;letter-spacing:.13em;border-top:1px solid #ffffff7d;border-bottom:1px solid #ffffff7d;padding:16px 0;margin:20px}.examVisual small{font-size:8px;letter-spacing:.25em}.examCopy>p:not(.eyebrow):not(.caution){color:var(--muted);font-size:14px}.nextExam{border-top:1px solid #cfd2c9;border-bottom:1px solid #cfd2c9;margin:28px 0}.nextExam div{display:flex;border-bottom:1px solid #d9dcd3;padding:12px}.nextExam div:last-child{border:0}.nextExam dt{width:100px;color:var(--gold);font-size:11px}.nextExam dd{margin:0;font-size:13px;font-weight:700}.buttonRow{display:flex;gap:10px;flex-wrap:wrap}.button.dark{background:var(--pine);color:white}.button.outline{border-color:var(--pine);color:var(--pine)}.caution{font-size:10px!important;color:#926758!important;margin-top:15px}.tour{background:var(--deep);color:white}.tourGrid{display:grid;grid-template-columns:1fr .85fr;gap:100px;align-items:center}.tourCopy>p:not(.eyebrow){color:#c9d7d1;font-family:var(--serif)}.tour ul{list-style:none;padding:0;margin:28px 0}.tour li{border-top:1px solid #ffffff26;padding:11px 0;font-size:13px}.tour li:last-child{border-bottom:1px solid #ffffff26}.tour li span{color:#e4bd70;font-family:var(--serif);margin-right:20px}.button.cream{background:#eee7d7;color:var(--deep)}.tourPoster{aspect-ratio:4/5;max-height:550px;background:#eee7d7;color:var(--deep);padding:36px;display:flex;flex-direction:column;text-align:center;overflow:hidden}.tourPoster>span{font-size:10px;letter-spacing:.25em}.tourPoster strong{font-family:var(--serif);font-size:32px;line-height:1.55;font-weight:500;letter-spacing:.12em;position:relative}.tourPoster small{font-family:var(--serif);margin-top:10px}.mountain{height:210px;position:relative;margin:15px -36px 5px;overflow:hidden}.mountain i{position:absolute;width:250px;height:250px;transform:rotate(45deg);background:#789077;bottom:-170px}.mountain i:nth-child(1){left:-20px;background:#9aad91}.mountain i:nth-child(2){left:110px;bottom:-135px;background:#58735f}.mountain i:nth-child(3){right:-80px;background:#345844}.school{background:white}.schoolGrid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center}.schoolGrid>div>p:not(.eyebrow){color:var(--muted);font-size:14px}.locations{display:grid;grid-template-columns:1fr 1fr;gap:10px}.locations div{min-height:160px;background:#eff1eb;padding:25px;display:flex;flex-direction:column}.locations span{font-size:9px;color:var(--gold);letter-spacing:.18em}.locations strong{font-family:var(--serif);font-size:28px;font-weight:500;margin-top:auto;color:var(--pine)}.locations small{color:var(--muted)}.locations .japan{background:#dfe7df}.news{background:var(--paper)}.news .sectionHeading{align-items:center}.newsList{border-top:1px solid var(--line)}.newsList a{display:grid;grid-template-columns:120px 100px 1fr 30px;align-items:center;border-bottom:1px solid var(--line);padding:20px 5px;gap:15px}.newsList time{font-family:var(--serif);font-size:12px;color:var(--muted)}.newsList span{font-size:9px;color:var(--gold);border:1px solid #cdbb98;text-align:center;padding:3px}.newsList strong{font-size:13px;font-weight:500}.newsList>b{color:var(--tea)}.contact{background:#214c3f;color:white;padding:80px 0}.contactInner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.contactInner>div:last-child{border-left:1px solid #ffffff30;padding-left:70px}.contactInner p{font-size:13px;color:#d3dfd8}footer{background:#0a2822;color:#c8d7d0;padding:58px 0 25px}.brand.inverse{color:white}.footerTop{display:flex;justify-content:space-between;align-items:start}.footerLinks{display:grid;grid-template-columns:repeat(3,auto);gap:12px 35px;font-size:11px}.footerBottom{border-top:1px solid #ffffff20;margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;font-size:9px;color:#829d91}
@media(max-width:900px){.header nav,.contactButton{display:none}.header nav.is-open{display:block;position:absolute;z-index:20;top:110px;left:17px;right:17px;background:#fff;padding:18px;box-shadow:0 18px 40px #09241d33}.header nav.is-open ul{list-style:none;padding:0;margin:0}.header nav.is-open li{border-bottom:1px solid var(--line);padding:9px}.menuLabel{display:block;background:transparent;border:1px solid var(--pine);padding:9px 12px;color:var(--pine);font-size:11px;letter-spacing:.15em}.heroSeal{width:190px;height:190px}.courseGrid{grid-template-columns:1fr}.course{min-height:270px}.examGrid,.tourGrid{gap:45px}.schoolGrid{grid-template-columns:1fr;gap:45px}.footerTop{display:block}.footerLinks{margin-top:35px}}
@media(max-width:650px){.wrap{width:min(100% - 34px,520px)}.announcement{height:auto;min-height:36px;padding:6px 0}.announcement .wrap{justify-content:start;gap:10px}.announcement a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand strong{font-size:12px}.header{height:74px}.hero{min-height:690px}.heroInner{height:580px;align-items:start;padding-top:90px}.hero h1{font-size:40px}.heroSeal{display:none}.heroLead br{display:none}.quick{height:auto;grid-template-columns:1fr;margin-bottom:-100px}.quick a{height:82px;border-right:0;border-bottom:1px solid var(--line);padding:14px 22px}.quick b{top:27px}.section{padding:75px 0}.intro{padding-top:180px}.introGrid,.examGrid,.tourGrid,.contactInner{grid-template-columns:1fr;gap:38px}.numbers{padding:42px 0 28px}.numberGrid{grid-template-columns:1fr 1fr;gap:25px 0}.numberGrid div:nth-child(2){border:0}.numberGrid strong{font-size:30px}.sectionHeading{display:block}.sectionHeading>p{margin-top:18px}.course{padding:25px}.course h3{margin-top:25px}.examVisual{max-height:380px;margin-right:18px}.examVisual span{font-size:58px}.tourGrid{display:flex;flex-direction:column}.tourPoster{width:100%;max-height:500px}.locations{grid-template-columns:1fr}.locations div{min-height:130px}.newsList a{grid-template-columns:90px 1fr 20px;gap:8px}.newsList span{grid-row:2}.newsList strong{grid-column:2}.newsList a>b{grid-column:3;grid-row:1/3}.contactInner>div:last-child{border-left:0;border-top:1px solid #ffffff30;padding:25px 0 0}.footerLinks{grid-template-columns:1fr 1fr}.footerBottom{display:block}.footerBottom span{display:block;margin-top:6px}}
.pageHero{padding:88px 0;background:linear-gradient(135deg,#eef0e8,#f8f5ec)}.pageHero h1{font-family:var(--serif);font-weight:500;font-size:clamp(34px,5vw,58px);margin:0;letter-spacing:.07em}.pageHero>p,.pageHero .wrap>p:not(.eyebrow){color:var(--muted)}.darkHero{background:var(--deep);color:#fff}.narrow{max-width:820px}.pageContent{background:#fff}.pageContent h2{font-size:28px;margin:55px 0 18px;padding-bottom:10px;border-bottom:1px solid var(--line)}.pageContent h3{font-family:var(--serif);font-size:22px;color:var(--pine)}.pageContent p,.pageContent li{font-size:15px;color:#46554e}.pageContent .lead{font-family:var(--serif);font-size:19px;line-height:2}.pageContent table{width:100%;border-collapse:collapse}.pageContent th,.pageContent td{padding:13px;border:1px solid var(--line);text-align:left}.pageContent th{width:28%;background:#eef0e9}.notice{background:#f0eee5;border-left:4px solid var(--gold);padding:24px;margin:30px 0}.notice p{margin-bottom:0}.content-cards,.archive-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.content-cards>a,.content-cards>div,.archive-cards>a{display:block;background:#f0f2ed;padding:28px;border-top:3px solid var(--tea)}.content-cards h2,.content-cards h3,.archive-cards h2{font-family:var(--serif);font-weight:500;color:var(--pine);font-size:22px;margin:0 0 12px;border:0;padding:0}.status-badge{display:inline-block;background:var(--gold);color:#fff;padding:4px 10px;font-size:10px;letter-spacing:.06em}.archive-list article{padding:30px 0;border-bottom:1px solid var(--line)}.archive-list time,.post-date{font-size:11px;color:var(--muted)}.archive-list h2{font-size:24px;margin:8px 0}.featured-image{width:100%;height:auto}.wp-element-button{display:inline-flex;background:var(--pine);color:#fff!important;padding:13px 22px}@media(max-width:750px){.content-cards,.archive-cards{grid-template-columns:1fr}.pageHero{padding:60px 0}.pageContent h2{font-size:24px}.pageContent th,.pageContent td{display:block;width:100%}.header nav.is-open{top:98px}}
