:root{--paper: #fdfcf9;--ink: #1a1a1a;--ink-soft: #4a4742;--ink-mute: #7a7466;--rule: #e8e3d8;--accent: #c9a8a0;--accent-strong: #8a4d3f;--jp: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "Hiragino Mincho Pro", "Yu Mincho", "游明朝", YuMincho, serif;--en: "Cormorant Garamond", "Cormorant", serif}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink)}html{scroll-behavior:smooth}body{font-family:var(--jp);font-weight:300;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}.hero{position:relative;width:100%;height:100vh;min-height:560px;overflow:hidden;background:#2a2a2a}.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.55) contrast(1.02) saturate(.85);animation:kenburns 18s ease-in-out infinite alternate}@keyframes kenburns{0%{transform:scale(1.04) translate(0)}to{transform:scale(1.12) translate(-1.5%,-1%)}}.hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,#0000 65%,#0f0f0f73),linear-gradient(90deg,#b4b4b44d,#6e6e6e4d 30%,#2828288c 70%,#0a0a0ac7);pointer-events:none}.hero__nav{position:absolute;top:0;left:0;right:0;display:flex;justify-content:flex-end;gap:28px;padding:28px 56px;z-index:2}.hero__nav a{font-family:var(--en);font-style:italic;font-size:13px;letter-spacing:.4em;text-transform:uppercase;color:#fff;text-decoration:none;opacity:.85;transition:opacity .3s ease}.hero__nav a:hover{opacity:1}.hero__name{position:absolute;left:80px;top:50%;transform:translateY(-50%);z-index:2;display:flex;flex-direction:column;gap:28px;color:#fff;opacity:0;animation:fadeUp 1.6s .3s cubic-bezier(.2,.7,.2,1) forwards}.hero__rule{width:56px;height:1px;background:#fff;opacity:.7}.hero__name h1{margin:0;font-family:var(--en);font-weight:300;font-size:clamp(56px,9vw,128px);letter-spacing:.01em;line-height:.95;color:#fff}@keyframes fadeUp{0%{opacity:0;transform:translateY(calc(-50% + 28px))}to{opacity:1;transform:translateY(-50%)}}.hero__scroll{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:24px;padding:56px 0 44px;color:#fff;text-decoration:none;opacity:0;animation:scrollFadeIn 1.2s 1.6s ease forwards;background:linear-gradient(180deg,#0000,#0000002e 35%,#00000073);cursor:pointer;transition:background .4s ease}.hero__scroll:hover{background:linear-gradient(180deg,#0000,#00000047 35%,#0009)}.hero__scroll-label{font-family:var(--en);font-style:italic;font-size:clamp(44px,7vw,100px);letter-spacing:.32em;text-transform:uppercase;opacity:.92;font-weight:300;line-height:1}.hero__chevron{width:clamp(36px,5vw,72px);height:clamp(36px,5vw,72px);display:block;animation:chevBob 2.4s ease-in-out infinite;opacity:.9}@keyframes scrollFadeIn{0%{opacity:0}to{opacity:1}}@keyframes chevBob{0%,to{transform:translateY(0);opacity:.9}50%{transform:translateY(8px);opacity:.5}}.section{padding:160px 24px;display:flex;flex-direction:column;align-items:center;gap:40px}.eyebrow{scroll-margin-top:80px;font-family:var(--en);font-style:italic;font-size:14px;letter-spacing:.45em;text-transform:uppercase;color:var(--accent-strong);font-weight:500;margin:0}.rule{height:1px;width:28px;background:var(--accent);opacity:.7}.column{width:100%;max-width:560px}.body-jp{font-family:var(--jp);font-size:15px;line-height:2.1;letter-spacing:.06em;color:var(--ink-soft);text-align:justify;text-justify:inter-character}.body-jp p{margin:0 0 1.6em}.body-jp p:last-child{margin:0}.lessons__list{width:100%;max-width:720px;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--rule)}.lesson{display:grid;grid-template-columns:140px 1fr auto;gap:32px;padding:36px 8px;border-bottom:1px solid var(--rule);align-items:baseline}.lesson__id{font-family:var(--en);font-style:italic;font-size:12px;letter-spacing:.35em;color:var(--accent-strong);text-transform:uppercase}.lesson__title{font-family:var(--jp);font-size:17px;letter-spacing:.08em;line-height:1.7;color:var(--ink);margin:0 0 8px;font-weight:400}.lesson__desc{font-family:var(--jp);font-size:13px;line-height:1.95;letter-spacing:.05em;color:var(--ink-soft);margin:0}.lesson__meta{font-family:var(--en);font-style:italic;font-size:12px;letter-spacing:.18em;color:var(--ink-mute);white-space:nowrap}.chapter-break{display:flex;justify-content:center;padding:180px 0}.chapter-break .rule{width:180px}.feed{padding:0 80px 180px;display:flex;flex-direction:column;align-items:center;gap:32px}.feed__embeds{width:100%;max-width:1200px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;justify-items:center}.feed__embeds .instagram-media{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important}.feed__more{font-family:var(--jp);font-size:13px;letter-spacing:.18em;color:var(--ink-mute);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:6px;transition:color .3s ease,border-color .3s ease}.feed__more:hover{color:var(--accent);border-color:var(--accent)}.footer{border-top:1px solid var(--rule);padding:56px 80px 40px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}.footer__brand{display:flex;flex-direction:column}.footer__name{font-family:var(--en);font-weight:300;font-size:16px;letter-spacing:.05em;color:var(--ink)}.footer__copy{font-family:var(--en);font-size:11px;letter-spacing:.25em;color:var(--ink-mute);margin-top:6px}.footer__social{display:flex;align-items:center;gap:18px}.footer__social-link{display:inline-flex;align-items:center;gap:10px;color:var(--ink-mute);text-decoration:none;font-family:var(--en);font-style:italic;font-size:12px;letter-spacing:.3em;text-transform:uppercase;transition:color .3s ease}.footer__social-link:hover{color:var(--accent)}.footer__icon{width:18px;height:18px;display:block}.reveal{opacity:0;transform:translateY(20px);transition:opacity 1.2s ease,transform 1.2s cubic-bezier(.2,.7,.2,1)}.reveal.is-in{opacity:1;transform:translateY(0)}@media(max-width:1024px){.feed__embeds{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.hero__nav{padding:18px 22px;gap:16px}.hero__nav a{font-size:10px;letter-spacing:.3em}.hero__name{left:22px;top:50%;gap:18px}.hero__rule{width:28px}.hero__name h1{font-size:clamp(40px,12vw,64px)}.hero__scroll{padding:32px 0 28px;gap:14px}.hero__scroll-label{font-size:clamp(28px,9vw,48px);letter-spacing:.3em}.hero__chevron{width:clamp(22px,7vw,36px);height:clamp(22px,7vw,36px)}.section{padding:90px 24px;gap:28px}.body-jp{font-size:14px;line-height:2}.lesson{grid-template-columns:1fr;gap:10px;padding:28px 4px}.lesson__meta{justify-self:start}.chapter-break{padding:100px 0}.chapter-break .rule{width:80px}.feed{padding:0 16px 100px;gap:24px}.feed__embeds{grid-template-columns:1fr;gap:16px}.footer{padding:36px 22px 28px;flex-direction:column;align-items:center;text-align:center;gap:18px}.footer__brand{align-items:center}.footer__social-label{display:none}.footer__social-link{gap:0}.footer__icon{width:22px;height:22px}}
