:root{--ink:#453b33;--paper:#faf8f2;--brown:#8e6d50;--line:#e5ddd0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:#fbfaf6}.brand{font:600 28px 'Shippori Mincho',serif;letter-spacing:.03em;white-space:nowrap}.brand span{font-size:17px;margin-left:5px}.brand small{display:block;font:600 8px 'DM Sans';letter-spacing:.19em;color:#aa917a;margin-top:3px}nav{display:flex;align-items:center;gap:32px;font-size:12px;font-weight:500}.nav-contact{border:1px solid #cbbdaf;padding:13px 18px}.nav-contact span{margin-left:20px}.hero{position:relative;min-height:600px;height:calc(100svh - 84px);max-height:830px;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,247,239,.93),rgba(250,247,239,.7) 30%,rgba(250,247,239,0) 72%),url('hero.png') center/cover}.hero-copy{position:relative;margin-left:9%;padding-bottom:15px}.eyebrow{font:600 10px 'DM Sans',sans-serif;letter-spacing:.2em;color:#ad8c6d;margin:0 0 22px}.hero h1{font:600 clamp(38px,4.3vw,67px)/1.65 'Shippori Mincho',serif;letter-spacing:.04em;margin:0}.hero-copy>p:not(.eyebrow){font-size:14px;line-height:2.2;margin:24px 0;color:#6f6155}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:45px;min-width:205px;background:#77634f;color:#fffaf2;border:0;padding:17px 20px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.button:hover{background:#9b7b5c}.hero-scroll{position:absolute;bottom:28px;left:9%;font:600 9px 'DM Sans';letter-spacing:.2em;color:#8d7967}.intro{text-align:center;padding:125px 6% 100px}.intro h2,.section-head h2,.about h2,.contact h2{font:600 clamp(29px,3.4vw,50px)/1.65 'Shippori Mincho',serif;letter-spacing:.05em;margin:0}.intro>p:not(.eyebrow){font-size:14px;line-height:2.2;color:#887b6f;margin:30px 0}.intro-line{display:block;width:1px;height:58px;background:#c7ad92;margin:45px auto 0}.section{max-width:1500px;margin:auto;padding:100px 8% 130px}.videos{background:#f5f0e7;max-width:none}.videos>.section-head,.videos>.video-grid,.videos>.note{max-width:1260px;margin-left:auto;margin-right:auto}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:54px}.section-head>p,.about-copy>p:not(.eyebrow),.contact p{font-size:14px;line-height:2.1;color:#85796d}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.video-card{border:0;background:none;padding:0;text-align:left;color:inherit;cursor:pointer}.thumbnail{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#eee4d4}.thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.video-card:hover img{transform:scale(1.025)}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:62px;height:62px;padding-left:3px;border:1px solid #fff;background:#56463880;border-radius:50%;color:white;font-size:14px}.video-label{display:block;font:600 10px 'DM Sans';letter-spacing:.16em;color:#a2876a;margin:20px 0 10px}.video-label span{font:500 11px 'Noto Sans JP';letter-spacing:0;color:#a49587;margin-left:12px}.video-card strong{display:block;font:600 18px/1.7 'Shippori Mincho',serif}.video-desc{display:block;color:#8d8072;font-size:12px;margin-top:8px}.note{color:#9a8f83;font-size:12px;margin-top:32px}.about{display:grid;grid-template-columns:1fr 1fr;background:#fbfaf6}.about-photo{min-height:560px}.about-photo img{width:100%;height:100%;object-fit:cover}.about-copy{padding:100px 13%;align-self:center}.about-copy>p:not(.eyebrow){margin-top:24px}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid #bda58e;padding-bottom:10px;margin-top:20px}.text-link span{margin-left:35px}.statement{text-align:center;padding:115px 6%;background:#e9e1d4}.statement p{font:600 clamp(29px,3vw,46px)/1.8 'Shippori Mincho';letter-spacing:.06em;margin:0 0 30px}.statement span{font:600 9px 'DM Sans';letter-spacing:.2em;color:#a79582}.social-list{border-top:1px solid var(--line)}.social-list>div{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:16px;padding:25px 0;border-bottom:1px solid var(--line)}.social-list strong{font:500 26px 'DM Sans'}.social-list span,.social-list small{font-size:12px;color:#9a8d80}.contact{background:#756351;color:#fffaf3;padding:85px 8%;display:flex;justify-content:space-between;align-items:center;gap:30px}.contact .eyebrow{color:#e2cfb7}.contact p{color:#eee1d1}.light-button{background:#faf6ed;color:#655543}.light-button:hover{background:#e5d8c6}footer{display:flex;align-items:center;gap:30px;padding:45px 8%;font-size:11px;color:#a29688}footer .brand{color:#51463a}footer p{margin-left:auto}dialog{max-width:min(90vw,500px);border:0;background:#fffdf8;color:#453b33;padding:48px}dialog::backdrop{background:#382b22a8}dialog h2{font:600 24px/1.6 'Shippori Mincho'}dialog>p:not(.eyebrow){font-size:14px;line-height:2;color:#8b7d6f}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:28px;cursor:pointer}.close-action{margin-top:14px}@media(max-width:700px){.header{height:70px;padding:0 5%}.brand{font-size:23px}.brand span{font-size:14px}.brand small{font-size:7px}nav{gap:16px;font-size:11px}nav a:nth-child(2),.nav-contact{display:none}.hero{height:740px;min-height:0;display:block}.hero-photo{height:56%;bottom:auto;background:linear-gradient(0deg,#f8f5ed,transparent 50%),url('hero.png') 67% center/cover}.hero-copy{position:absolute;left:6%;right:6%;bottom:95px;margin:0;padding:0}.hero h1{font-size:34px;line-height:1.6}.hero-copy>p:not(.eyebrow){font-size:13px;line-height:2;margin:18px 0}.hero-scroll{left:6%;bottom:24px}.intro{padding:85px 6% 70px}.intro>p:not(.eyebrow){font-size:13px}.section{padding:80px 6%}.section-head{display:block;margin-bottom:35px}.section-head>p{margin-top:20px}.video-grid{grid-template-columns:1fr;gap:40px}.about{grid-template-columns:1fr}.about-photo{height:300px;min-height:0}.about-copy{padding:75px 6%}.statement{padding:75px 6%}.social-list>div{grid-template-columns:1fr auto}.social-list>div span{display:none}.contact{display:block;padding:70px 6%}.contact .button{margin-top:18px}footer{padding:36px 6%;flex-wrap:wrap}footer>a:last-child{width:100%}footer p{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.thumbnail img{transition:none}}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* channel-avatar */
.channel-avatar{display:block;width:42px;height:42px;flex:0 0 42px;border-radius:50%;object-fit:cover}.brand,.logo{display:inline-flex;align-items:center;gap:12px}.brand-text{display:block}.logo-text{display:inline-block}@media(max-width:700px){.channel-avatar{width:36px;height:36px;flex-basis:36px}}
.brand .brand-text{display:block;font-size:inherit;margin-left:0}.logo .logo-text{display:inline-block;font-size:inherit}

/* video-sprite-grid */
.video-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px}.video-grid .thumbnail,.video-grid .thumb{aspect-ratio:var(--tile-ratio,1);position:relative;overflow:hidden}.video-sprite{position:absolute;inset:0;display:block;background-image:url("video-grid.png");background-size:400% 500%;background-repeat:no-repeat}.video-card .video-kicker{display:block;margin:12px 0 6px;font-size:10px;letter-spacing:.04em;opacity:.7}.video-card strong{font-size:15px;line-height:1.6}.video-card[hidden]{display:none!important}@media(max-width:700px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.video-card strong{font-size:13px}}
