[hidden]{display:none!important}header{position:relative;z-index:30;border-bottom:1px solid #b5a88844}.demo a{margin-left:auto;letter-spacing:0;font-size:10px}.menu-toggle{background:none;border:0;letter-spacing:2px;font:11px sans-serif;padding:15px 0 15px 25px;color:inherit}.menu-toggle span{margin-left:15px;font-size:20px}.header-book{margin-left:auto;font-size:12px;border-bottom:1px solid #b69a61;padding:8px 0}.brand{white-space:nowrap}.site-menu{position:fixed;inset:0;background:#202c26;color:#eee5d3;z-index:25;padding:180px 9% 65px;overflow:auto}.menu-is-open header{background:#202c26;color:#eee5d3}.menu-title{font-size:30px;margin-bottom:30px}.site-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.site-menu nav a{padding:20px 0;border-bottom:1px solid #8c947c66;position:relative;font-size:19px}.site-menu small{display:block;font:9px sans-serif;letter-spacing:3px;color:#b69a61}.site-menu nav span{position:absolute;right:0;top:35px}.menu-is-open{overflow:hidden}.home header{background:#1c2822;color:#f2eddf}.home main{background:#1c2822}.cinema{position:relative;height:calc(100svh - 135px);min-height:600px;overflow:hidden;color:#fff}.cinema-photo{height:100%;object-position:center 50%;filter:brightness(.8);transform:scale(1.01)}.cinema-shade{position:absolute;inset:0;background:linear-gradient(90deg,#06100dc9,transparent 75%),linear-gradient(0deg,#08150ed4,transparent 45%)}.cinema-title{position:absolute;left:10%;top:16%}.cinema-title>p{letter-spacing:5px;font-size:12px}.cinema h1{font-size:clamp(50px,6.5vw,96px);line-height:1.5;letter-spacing:12px;font-weight:400;margin:20px 0 28px}.cinema-title>span{letter-spacing:7px;font-size:15px}.cinema-bottom{position:absolute;left:10%;right:7%;bottom:40px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}.cinema-bottom a{font:10px sans-serif;letter-spacing:3px}.home-portals{padding:90px 9% 110px;background:#f4f0e7}.portal-intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:50px}.portal-intro h2{margin:0}.portal-intro p{font-size:12px}.portal-grid{display:grid;grid-template-columns:repeat(3,1fr)}.portal{padding:35px 25px;border:1px solid #d1c7b6;margin:0 -1px -1px 0;position:relative;transition:background .25s}.portal:hover{background:#e5dcc9}.portal small{font:9px sans-serif;letter-spacing:2px;display:block;color:#847448;margin:12px 0}.portal h2{font-size:21px;letter-spacing:1px;margin:0}.portal-number{font:10px sans-serif;color:#8b806b}.portal-arrow{position:absolute;right:20px;top:25px}.footer-nav{display:flex;gap:25px;justify-content:center;flex-wrap:wrap;font-size:11px;margin:30px 0}.page-heading{padding:65px 9% 45px;border-bottom:1px solid #cfc4ae}.page-heading>a{font:10px sans-serif;color:#7b725e;display:block;margin-bottom:35px}.page-heading h1{font-size:40px;font-weight:400;letter-spacing:4px;margin:10px 0}.page-heading .eyebrow{margin:0}.inner .courses,.inner .food{padding-top:60px}.inner .access{border:0}.contact-options{display:flex;align-items:center;gap:35px;padding:35px 9%;background:#e8e0d1;flex-wrap:wrap}.contact-options small{font:10px sans-serif;display:block}.contact-options strong{font-size:25px;letter-spacing:2px}.contact-options button{padding:12px 18px;border:1px solid #b5a689;background:transparent;font-size:12px;margin-left:auto}.contact-options p{margin:8px 0}.menu-list{padding:70px 9%}.menu-columns{display:grid;grid-template-columns:1fr 1fr;gap:70px}.menu-columns p{padding:12px 0;border-bottom:1px solid #c8bfaf}.menu-columns b{float:right;font-weight:400;margin-left:15px}.menu-columns h3{font-size:22px;font-weight:400}.gallery-grid{padding:60px 9%;display:grid;grid-template-columns:1fr 1fr;gap:35px}.gallery-grid figure{margin:0}.gallery-grid img{height:360px}.gallery-grid figure:nth-child(3n) img{height:470px}.gallery-grid figcaption{font-size:12px;margin-top:12px}.gallery-note{padding:0 9% 60px}.recruit-panel{display:grid;grid-template-columns:1fr 1fr;padding:65px 9%;gap:60px;align-items:center}.recruit-panel img{height:460px}#opening{position:fixed;inset:0;background:#f4f0e7;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:opening-out .5s 1.4s both}#opening img{width:min(240px,52vw);mix-blend-mode:multiply;animation:logo-in 1.1s both}#opening p{font-size:11px;letter-spacing:6px;animation:logo-in 1s .2s both}#skipOpening{position:absolute;right:6%;top:35px;background:none;border:0;font:10px sans-serif;letter-spacing:3px}.is-opening{overflow:hidden}.first-reveal .cinema-photo{animation:photo-in 2.6s .8s both}.first-reveal .cinema-title{animation:copy-in 1s 1.5s both}@keyframes opening-out{to{opacity:0;visibility:hidden}}@keyframes logo-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes photo-in{from{transform:scale(1.13);filter:brightness(.3)}to{transform:scale(1.01);filter:brightness(.8)}}@keyframes copy-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.cinema-photo,.cinema-title{animation:none!important}html{scroll-behavior:auto}}@media(max-width:700px){header{padding:15px 6%}.brand strong{font-size:24px;margin-left:5px}.brand{font-size:10px;letter-spacing:1px}.header-book{font-size:11px}.menu-toggle{font-size:9px;padding-left:18px}.menu-toggle span{margin-left:5px;font-size:18px}.cinema{height:calc(100svh - 155px);min-height:570px}.cinema-title{left:7%;top:19%}.cinema h1{font-size:clamp(38px,12vw,60px);letter-spacing:5px}.cinema-photo{object-position:58% center}.cinema-title>p{font-size:10px;letter-spacing:3px}.cinema-title>span{font-size:12px;letter-spacing:5px}.cinema-bottom{left:7%;bottom:35px}.cinema-bottom>span{display:none}.home-portals{padding:60px 7%}.portal-intro{display:block;margin-bottom:30px}.portal-grid{grid-template-columns:1fr 1fr}.portal{padding:25px 15px}.portal h2{font-size:17px}.portal small{font-size:8px}.portal-arrow{right:12px;top:20px}.site-menu{padding:155px 8% 90px}.site-menu nav{grid-template-columns:1fr;gap:0}.site-menu nav a{font-size:18px;padding:15px 0}.menu-title{font-size:24px}.page-heading{padding:40px 7%}.page-heading h1{font-size:29px;letter-spacing:2px}.contact-options{padding:30px 7%;gap:20px}.contact-options button{margin-left:0}.gallery-grid{padding:35px 7%;gap:25px;grid-template-columns:1fr}.gallery-grid img,.gallery-grid figure:nth-child(3n) img{height:340px}.menu-list{padding:45px 7%}.menu-columns{grid-template-columns:1fr;gap:20px}.recruit-panel{grid-template-columns:1fr;padding:40px 7%;gap:30px}.recruit-panel img{height:300px}.footer-nav{gap:15px}.inner .booking{padding-top:40px}.home .mobile-bar{display:none}.home footer{padding-bottom:55px}}@media(max-width:330px){.header-book{display:none}.menu-toggle{margin-left:auto}.portal-grid{grid-template-columns:1fr}.cinema h1{font-size:38px}}
.access-route{max-width:1050px;margin:auto;padding:55px 7% 90px}.back-top{font:10px sans-serif;display:block;margin-bottom:35px;color:#84775c}.access-route h1{font-weight:400;font-size:36px;letter-spacing:3px;margin:15px 0 35px}.arrival-photo{margin:0}.arrival-photo img{height:min(600px,75vh);object-position:center 45%}.arrival-guide{text-align:center;font-size:18px;letter-spacing:2px;margin:35px 0}.route-video-slot{margin:0 0 45px}.route-video-slot>.eyebrow{text-align:center;letter-spacing:2px}.video-pending{aspect-ratio:16/9;max-height:470px;background:#e6dfd2;border:1px solid #d2c6af;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8b8068}.video-pending span{font-size:35px}.video-pending p{font-size:12px}.access-address{border-top:1px solid #cfc3ad;padding-top:40px}.access-address dl{display:grid;grid-template-columns:90px 1fr;gap:15px;font-size:13px;line-height:2}.access-address dd{margin:0}.sales-policy{max-width:650px;margin:30px auto;color:#beb8a7;font:11px/1.9 sans-serif}.business-notice{margin:35px 9% 0;padding:18px 22px;border:1px solid #cfc3ad;font:12px/1.8 sans-serif}.business-notice p{font:12px/1.8 sans-serif;margin:5px 0 0}.seat-policy{font:12px/1.9 sans-serif;background:#eae3d6;padding:15px;margin:0 0 25px}.pdf-menu{padding:55px 9% 80px}.pdf-actions{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:30px}.pdf-actions a{padding:14px 22px;border:1px solid #b4a17a;font-size:13px}.pdf-actions a:first-child{background:#263d31;color:#fff}.pdf-frame{width:100%;height:650px;border:1px solid #c7bda8;background:#e7dfd1}.menu-images{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.menu-images figure{margin:0}.menu-images img{width:100%;height:auto;object-fit:contain}.menu-images figcaption{font:11px/1.8 sans-serif;margin-top:10px}.menu-images a{display:block}.pdf-menu details{margin:25px 0}.pdf-menu summary{cursor:pointer;padding:18px;border:1px solid #c7bda8}.pdf-menu h2{margin-top:45px}.menu-source-note{font:12px/1.8 sans-serif;color:#766e5b}@media(max-width:700px){.access-route{padding:35px 7% 65px}.access-route h1{font-size:27px;letter-spacing:1px}.arrival-photo img{height:auto;max-height:none}.arrival-guide{font-size:15px;letter-spacing:1px;margin:25px 0}.business-notice{margin:25px 7% 0}.pdf-menu{padding:35px 7% 60px}.menu-images{grid-template-columns:1fr;gap:25px}.pdf-frame{height:500px}.sales-policy{padding:0 10px}.portal-grid .portal:last-child{grid-column:1/-1}}
@font-face{font-family:'Hokuto Brush';src:url('assets/fonts/YujiSyuku-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}.course-grid h3{font-family:'Hokuto Brush','Yu Mincho',serif;font-size:43px;letter-spacing:5px;line-height:1.7}.course-grid .course-badge{display:inline-block;background:#793d2e;color:#fff;padding:5px 12px;font:11px/1.8 sans-serif;letter-spacing:2px}.course-grid .featured{box-shadow:inset 0 3px #a88444}.reservation-choices{padding:55px 9% 20px}.choice-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.choice-buttons button{text-align:left;background:#eee7d9;border:1px solid #c7b99e;padding:28px 25px;position:relative;color:#26372c}.choice-buttons small{font:9px sans-serif;letter-spacing:2px;display:block;color:#867447}.choice-buttons strong{font-family:'Yu Mincho',serif;font-size:23px;font-weight:400;display:block;margin-top:12px}.choice-buttons span{position:absolute;right:20px;bottom:25px}.choice-buttons button[aria-expanded=true]{background:#263d31;color:#f5eddd;border-color:#263d31}.choice-buttons button[aria-expanded=true] small{color:#d4bc85}.channel-panel{padding:25px 0}.channel-action{display:inline-block;padding:15px 25px;border:1px solid #a3916d;font-size:16px}.line-action{color:#fff;background:#287342;border-color:#287342}.reservation-guidance{padding:35px 9% 50px;max-width:1100px;margin:0 auto}.reservation-guidance h2{font-size:22px;margin:25px 0 10px}.reservation-guidance p{line-height:2.3}.staff-demo-entry{padding:0 9% 50px;text-align:right}.staff-demo-entry button{background:none;border:1px solid #b6a88d;padding:10px 15px;font:11px sans-serif}.inner .business-notice{margin-bottom:60px}.web-channel .booking{padding-top:35px;padding-bottom:20px}.portal-intro h2{max-width:560px;font-size:30px;letter-spacing:2px}@media(max-width:700px){.reservation-choices{padding:35px 7% 10px}.choice-buttons{grid-template-columns:1fr;gap:12px}.choice-buttons button{padding:20px 22px}.choice-buttons strong{font-size:22px;margin-top:5px}.choice-buttons span{bottom:28px}.reservation-guidance{padding:20px 7% 40px}.channel-action{font-size:14px;padding:14px 18px}.portal-intro h2{font-size:26px}.course-grid h3{font-size:43px}}

.access-map{margin:30px 0 40px}.access-map iframe{display:block;width:100%;height:400px;background:#e8e4db}.access-map .map-link{display:inline-block;margin-top:18px}@media(max-width:700px){.access-map iframe{height:320px}.access-map{margin:25px 0 30px}}

#channel-phone,#channel-line,#channel-web{scroll-margin-top:24px}#channel-phone:focus,#channel-line:focus,#channel-web:focus{outline:none}

#channel-mail{scroll-margin-top:24px}#channel-mail:focus{outline:none}.reservation-email-address{overflow-wrap:anywhere;font-size:clamp(16px,3vw,22px);color:#cfb174}
