:root{--paper:#f3f0e8;--cream:#faf8f2;--ink:#171916;--text:#3e413c;--moss:#66705d;--gold:#a58d5b;--line:#3e413c33;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--text);font-family:var(--sans);letter-spacing:.055em;margin:0;font-size:16px;line-height:1.9}body.menu-open{overflow:hidden}img{width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,select{font:inherit}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3,.brand-jp{font-family:var(--serif);font-weight:400}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:100;background:#fff;padding:8px 16px;position:fixed;top:-100px;left:16px}.skip:focus{top:16px}.sample-note{background:var(--ink);color:#ffffffb8;letter-spacing:.14em;text-align:center;height:24px;margin:0;padding:2px 5vw;font-size:9px}.site-header{z-index:20;color:#fff;justify-content:space-between;align-items:center;height:84px;padding:0 clamp(24px,5vw,72px);transition:all .5s;display:flex;position:fixed;top:24px;left:0;right:0}.site-header.scrolled,.site-header.open{height:76px;color:var(--ink);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f3f0e8f0;top:0}.brand{align-items:baseline;gap:14px;display:flex}.brand-jp{letter-spacing:.2em;font-size:28px}.brand-en{letter-spacing:.28em;font-family:Georgia,serif;font-size:11px}.site-header nav{letter-spacing:.16em;align-items:center;gap:32px;font-size:11px;display:flex}.nav-cta{border:1px solid;padding:13px 22px}.menu-button{color:inherit;background:0 0;border:0;width:42px;height:42px;padding:10px;display:none}.menu-button span:not(.sr-only){background:currentColor;width:22px;height:1px;margin:6px auto;display:block}.hero{color:#fff;background:var(--ink);align-items:center;min-height:calc(100svh - 24px);display:flex;position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";pointer-events:none;background:linear-gradient(90deg,#12141299 0%,#1214122e 43%,#12141200 72%);position:absolute;inset:0}.hero-copy{z-index:1;width:min(680px,74vw);margin-left:clamp(28px,9vw,140px);padding-top:70px;position:relative}.hero-brand{font-family:var(--serif);letter-spacing:.22em;margin-bottom:34px;font-size:13px}.hero h1{letter-spacing:.11em;text-shadow:0 2px 18px #0000002e;margin-bottom:34px;font-size:clamp(2.8rem,5vw,5.5rem);line-height:1.45}.hero-sub{font-family:var(--serif);margin-bottom:40px;font-size:clamp(.9rem,1.2vw,1.1rem);line-height:2.05}.button{letter-spacing:.16em;cursor:pointer;border:1px solid;justify-content:center;align-items:center;min-height:56px;padding:0 32px;font-size:12px;transition:all .3s;display:inline-flex}.button-light{color:var(--ink);border-color:var(--cream);background:#faf8f2f0}.button:hover{transform:translateY(-2px)}.scroll{z-index:2;letter-spacing:.2em;writing-mode:vertical-rl;align-items:center;gap:12px;font:9px Georgia,serif;display:flex;position:absolute;bottom:36px;right:3vw}.scroll span{background:#ffffffb3;width:1px;height:54px}.section{max-width:1440px;margin:auto;padding:clamp(110px,14vw,210px) clamp(28px,8vw,120px)}.section-label{color:var(--moss);letter-spacing:.3em;margin-bottom:28px;font-size:10px}.section-label:before{content:"";vertical-align:middle;background:var(--gold);width:34px;height:1px;margin-right:16px;display:inline-block}h2{color:var(--ink);letter-spacing:.1em;font-size:clamp(2.1rem,4vw,4.5rem);line-height:1.55}.about{grid-template-columns:40px minmax(300px,1fr) minmax(300px,.85fr);gap:clamp(30px,7vw,110px);display:grid}.vertical-mark{writing-mode:vertical-rl;letter-spacing:.28em;color:#8a8d87;font:9px Georgia,serif}.about-copy{align-self:end;max-width:510px}.about-copy p{margin-bottom:36px}.space{background:var(--ink);color:#ffffffc2;grid-template-columns:minmax(0,1.65fr) minmax(360px,.7fr);min-height:780px;display:grid}.space-image{background:url(/assets/images/hero-sky-tea-room.jpg) 50%/cover no-repeat}.space-copy{align-self:center;padding:clamp(70px,9vw,135px) clamp(38px,6vw,92px)}.space h2{color:#fff;margin-bottom:48px;font-size:clamp(2.5rem,4.2vw,4.8rem)}.space-copy>p:not(.section-label){font-family:var(--serif);line-height:2.1}.space ul{border-top:1px solid #ffffff2e;margin:42px 0 0;padding:32px 0 0;list-style:none}.space li{letter-spacing:.12em;border-bottom:1px solid #ffffff24;padding:14px 0;font-size:12px}.time-heading{grid-template-columns:1fr 1fr;align-items:end;column-gap:9vw;display:grid}.time-heading .section-label,.time-heading h2{grid-column:1}.time-heading>p:last-child{grid-area:2/2;max-width:420px;margin-bottom:22px}.time-steps{border-top:1px solid var(--line);grid-template-columns:repeat(6,1fr);margin:100px 0 0;padding:0;list-style:none;display:grid}.time-steps li{border-left:1px solid var(--line);min-height:260px;padding:28px 20px 20px}.time-steps li:last-child{border-right:1px solid var(--line)}.time-steps span{color:var(--gold);font:12px Georgia,serif}.time-steps h3{letter-spacing:.1em;margin:66px 0 16px;font-size:18px}.time-steps p{font-size:12px;line-height:1.9}.tea{background:var(--cream);grid-template-rows:auto auto;grid-template-columns:1.2fr .8fr;display:grid}.tea-main{grid-row:1/3;margin:0}.tea-main img{object-fit:cover;height:100%}.tea-copy{padding:clamp(80px,10vw,150px) clamp(40px,8vw,120px)}.tea-copy h2{margin-bottom:40px}.tea-copy small{color:#777;margin-top:36px;font-size:10px;display:block}.tea-detail{width:64%;margin:0 0 0 auto}.tea-detail img{aspect-ratio:1.3;object-fit:cover}.host{grid-template-columns:minmax(280px,.7fr) minmax(320px,1fr);align-items:center;gap:clamp(50px,11vw,170px);display:grid}.host-image{margin:0 0 0 8vw}.host-image img{aspect-ratio:4/5;object-fit:cover}.host-copy{max-width:560px}.host-copy h2{margin-bottom:55px}.host-name{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);letter-spacing:.12em;padding:26px 0;font-size:21px}.host-name small{margin-right:18px;font-size:10px}.host-name span{letter-spacing:.2em;margin:7px 0 0 50px;font:10px Georgia,serif;display:block}.fiction{color:#777;margin-top:34px;font-size:10px}.guide{background:var(--paper);grid-template-columns:1fr 1fr;gap:10vw;display:grid}.guide-heading p:last-child{margin-top:36px}.assurances{margin:12px 0 0;padding:0;list-style:none}.assurances li{border-bottom:1px solid var(--line);font-family:var(--serif);letter-spacing:.12em;padding:22px 10px 22px 40px;position:relative}.assurances li:before{content:"";border-left:1px solid var(--moss);border-bottom:1px solid var(--moss);width:13px;height:7px;position:absolute;top:31px;left:2px;transform:rotate(-45deg)}.information{background:#e8e3d7;grid-template-columns:.8fr 1.2fr;padding:clamp(90px,11vw,150px) clamp(28px,8vw,120px);display:grid}.info-intro{padding-right:8vw}.info-list{margin:0}.info-list>div{border-bottom:1px solid #17191629;grid-template-columns:160px 1fr;padding:22px 0;display:grid}.info-list dt{letter-spacing:.15em;font-size:11px}.info-list dd{font-family:var(--serif);margin:0;font-size:18px}.info-list small{font:9px var(--sans);color:#6c6f69;margin-left:12px}.reserve{color:#ffffffbf;background:#1d2922;grid-template-columns:.8fr 1.2fr;gap:11vw;padding:clamp(100px,13vw,180px) clamp(28px,8vw,120px);display:grid;position:relative}.reserve h2{color:#fff}.reserve .section-label{color:#b6bcae}.reserve form{align-self:start}.form-row{grid-template-columns:1fr 1fr;gap:26px;display:grid}.reserve label{color:#ffffffb3;letter-spacing:.16em;margin-bottom:24px;font-size:10px;display:block}.reserve input,.reserve select{color:#fff;background:0 0;border:0;border-bottom:1px solid #ffffff59;border-radius:0;outline:none;width:100%;height:52px;margin-top:8px;padding:0 4px;display:block}.reserve select option{color:var(--ink)}.reserve input:focus,.reserve select:focus{border-color:#fff}.button-gold{background:var(--gold);border-color:var(--gold);color:#fff;width:100%;margin-top:18px}.form-error{color:#efd2c7;min-height:24px;font-size:12px}.form-success{border:1px solid #ffffff4d;margin-top:24px;padding:18px;font-size:12px}.inquiry{border-bottom:1px solid;padding-bottom:5px;font-size:11px;position:absolute;bottom:clamp(70px,9vw,120px);left:clamp(28px,8vw,120px)}footer{background:var(--ink);color:#ffffffa6;grid-template-columns:1fr 1fr 1.4fr;gap:7vw;padding:70px clamp(28px,7vw,100px) 35px;font-size:11px;display:grid}footer .brand{color:#fff;align-self:start}.footer-note{line-height:2}footer small{letter-spacing:.18em;border-top:1px solid #ffffff1f;grid-column:1/-1;padding-top:30px;font:8px Georgia,serif}.reveal{opacity:0;transition:opacity 1s,transform 1s;transform:translateY(28px)}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.button{transition:none}}@media (width<=900px){body{font-size:15px}.site-header{height:70px;padding:0 22px}.site-header.scrolled,.site-header.open{height:66px}.menu-button{z-index:2;display:block;position:relative}.site-header nav{background:var(--paper);color:var(--ink);font-family:var(--serif);opacity:0;visibility:hidden;flex-direction:column;justify-content:center;gap:32px;font-size:17px;transition:all .35s;display:flex;position:fixed;inset:0}.site-header.open nav{opacity:1;visibility:visible}.nav-cta{margin-top:10px}.hero{min-height:calc(100svh - 24px)}.hero>img{object-position:63% center}.hero:after{background:linear-gradient(90deg,#121412ad,#1214121f)}.hero-copy{width:82vw;margin-left:28px}.hero-brand{font-size:10px}.hero h1{font-size:clamp(2.25rem,9.8vw,4rem)}.scroll{display:none}.section{padding:100px 26px}.about{grid-template-columns:1fr;gap:40px}.vertical-mark{display:none}.space{grid-template-columns:1fr}.space-image{min-height:58vw}.space-copy{padding:80px 28px}.time-heading{display:block}.time-steps{grid-template-columns:repeat(2,1fr);margin-top:60px}.time-steps li:nth-child(odd){border-left:1px solid var(--line)}.time-steps li:nth-child(2n){border-right:1px solid var(--line)}.tea{grid-template-columns:1fr}.tea-main{grid-row:auto}.tea-main img{aspect-ratio:4/3}.tea-copy{padding:90px 28px}.tea-detail{width:72%}.host{grid-template-columns:1fr}.host-image{width:76%;margin:0}.guide,.information,.reserve{grid-template-columns:1fr}.guide{gap:45px}.information{gap:55px;padding:90px 28px}.reserve{gap:60px;padding:100px 28px 130px}.inquiry{bottom:70px;left:28px}footer{grid-template-columns:1fr 1fr}.footer-note{grid-column:1/-1}}@media (width<=560px){h2{font-size:2rem}.sample-note{white-space:nowrap;font-size:8px;overflow:hidden}.brand-jp{font-size:23px}.brand-en{font-size:9px}.hero-copy{padding-top:40px}.hero-sub{font-size:12px}.button{width:100%}.time-steps{grid-template-columns:1fr}.time-steps li{border-right:1px solid var(--line);min-height:190px}.time-steps h3{margin-top:36px}.host-image{width:88%}.form-row{grid-template-columns:1fr;gap:0}.info-list>div{grid-template-columns:110px 1fr}.info-list dd{font-size:15px}footer{grid-template-columns:1fr;gap:28px}footer small{grid-column:1}}@media (width>=901px){.hero-copy{width:min(820px,78vw)}.hero h1{letter-spacing:.1em;font-size:clamp(2.8rem,4.6vw,5.1rem)}}@media (width<=560px){.hero-copy{width:calc(100vw - 48px);margin-left:24px}.hero-brand{letter-spacing:.12em;white-space:nowrap;font-size:8px}.hero h1{letter-spacing:.045em;font-size:2rem;line-height:1.65}.hero-sub{line-height:1.85}.hero .button{width:auto;padding:0 24px}.site-header{padding-left:20px;padding-right:16px}}.sites-ready .reveal{opacity:1;transform:none}.mobile-title{display:none}.guide h2{font-size:clamp(2.1rem,3.1vw,3.5rem)}.time-steps{border-top:0;grid-template-columns:repeat(3,1fr);gap:44px 7vw;margin-top:84px}.time-steps li,.time-steps li:last-child{border-left:0;border-right:0;border-top:1px solid var(--line);min-height:190px;padding:28px 0 22px}.time-steps h3{margin:38px 0 14px}.time-steps p{max-width:18em}@media (width<=900px){.time-steps{grid-template-columns:repeat(2,1fr);gap:20px 8vw}.time-steps li,.time-steps li:nth-child(odd),.time-steps li:nth-child(2n){border-left:0;border-right:0}.guide h2{font-size:clamp(2rem,6vw,3.2rem)}}@media (width<=560px){.desktop-title{display:none}.mobile-title{display:inline}.time-steps{grid-template-columns:1fr;gap:0}.time-steps li{min-height:165px}.guide h2{font-size:2rem;line-height:1.65}}h1,h2,h3{word-break:keep-all;overflow-wrap:normal}.about h2{font-size:clamp(2.35rem,3.55vw,4rem)}.space h2{font-size:clamp(2.35rem,3.45vw,4.15rem)}.info-intro h2{font-size:clamp(2.2rem,3.35vw,3.75rem)}@media (width>=901px) and (width<=1200px){.about{grid-template-columns:32px minmax(0,1.25fr) minmax(300px,.75fr);gap:4vw}.about h2{font-size:clamp(2.25rem,3.5vw,3.1rem)}.space{grid-template-columns:55% 45%}.space h2{font-size:clamp(2.3rem,3.6vw,3.25rem)}.space-copy{padding-left:5vw;padding-right:5vw}.guide{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:6vw}.guide h2{font-size:clamp(2.15rem,3.4vw,2.85rem)}.information{grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr)}.info-intro h2{font-size:clamp(2.1rem,3.3vw,2.75rem)}}@media (width<=560px){.about h2,.guide h2,.info-intro h2{letter-spacing:.065em;font-size:1.65rem;line-height:1.7}.space h2{letter-spacing:.07em;font-size:2rem;line-height:1.65}}
