/* Homepage continuity and the dishes guests make. */
.tcs-class-section{padding-bottom:52px}
.tcs-dietary{max-width:920px;margin-top:42px;padding:28px 0 0;display:grid;grid-template-columns:1fr 1.7fr;column-gap:48px}
.tcs-dietary h3{grid-row:1/4;font:400 29px/1.2 var(--font-family-serif);letter-spacing:-.02em;max-width:260px}
.tcs-dietary p{font:15px/1.7 Inter,'Noto Sans JP',sans-serif;letter-spacing:0;margin:0 0 12px;color:#50564c}
.tcs-dietary a{font:500 14px/1.5 Inter,'Noto Sans JP',sans-serif;letter-spacing:0;margin-top:5px}
.p-top-information{border:0;padding:0 0 40px;background:var(--color-bg-primary)}
.p-top-information__inner{gap:40px;align-items:center}
.p-top-information__news{height:auto;min-height:110px;border:0;padding:24px 0;overflow:visible}
.p-top-information__news-heading{font:500 11px/1.5 Inter,sans-serif;letter-spacing:.12em;color:#656d60}
.p-top-information__news-item-date{font:12px/1.5 Inter,sans-serif;letter-spacing:0;color:#697163}
.p-top-information__news-item-title{font:14px/1.6 Inter,'Noto Sans JP',sans-serif;letter-spacing:0;white-space:normal}
.p-top-information__news-item-link{padding:5px 0;gap:12px}
.p-top-member-ship{height:auto;width:410px;border:0;background:#eeeee5}
.p-top-member-ship__link{padding:24px;gap:16px}
.p-top-member-ship__body{padding:0}
.p-top-member-ship__heading{font:400 23px/1.25 var(--font-family-serif);letter-spacing:-.01em}
.p-top-member-ship__text{font:12px/1.5 Inter,sans-serif;letter-spacing:0;margin-top:7px}
/* The story begins immediately, without an empty viewport before its reveal. */
.p-top-well-being{isolation:isolate;overflow:hidden;background:#343b34}
.p-top-well-being__vis{position:absolute!important;inset:0;height:100%!important}
.p-top-well-being__vis-image{width:100%!important;height:100%!important;clip-path:none!important;transform:translate(-50%,-50%)!important}
.p-top-well-being__vis-image-item{transform:none!important}
.p-top-well-being__vis-image-cover{opacity:1!important;background:linear-gradient(90deg,rgba(17,24,18,.65),rgba(17,24,18,.72))!important}
.p-top-well-being__vis-marquee,.p-top-well-being__spacer-1,.p-top-well-being__image,.p-top-well-being__bottom{display:none!important}
.p-top-well-being__body{padding:110px 0!important;transform:none!important;opacity:1!important}
.p-top-well-being__body-inner{max-width:1240px}
.p-top-well-being__row{align-items:start;gap:70px}
.p-top-well-being__copy{width:52%;padding:0;font:400 clamp(42px,4.5vw,72px)/1.05 var(--font-family-serif);letter-spacing:-.025em}
.p-top-well-being__block{width:48%;padding:0;max-width:520px}
.p-top-well-being__text.c-text{font:400 18px/1.75 Inter,'Noto Sans JP',sans-serif!important;text-align:left!important;letter-spacing:0!important;text-wrap:pretty}
.p-top-well-being__text br{display:block;content:'';margin-bottom:16px}
.p-top-well-being__button{margin-top:30px}
.tcs-dishes{padding:90px 60px;background:#f0efe8;color:#30382e;scroll-margin-top:110px}
.tcs-dishes__inner{max-width:1440px;margin:auto}
.tcs-dishes__head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:36px}
.tcs-dishes__eyebrow{font:12px/1.5 Inter,sans-serif;letter-spacing:.13em;margin-bottom:16px;color:#606b59}
.tcs-dishes h2{font:400 clamp(46px,5vw,76px)/1.05 var(--font-family-serif)!important;letter-spacing:-.035em!important}
.tcs-dishes__intro{max-width:390px;font:16px/1.7 Inter,'Noto Sans JP',sans-serif;letter-spacing:0}
.tcs-dishes__stage{display:grid;grid-template-columns:1.25fr 1fr;background:#e5e7dc;min-width:0}
.tcs-dishes__photo{overflow:hidden;aspect-ratio:6/5;position:relative;background:#d5d9cb}
.tcs-dishes__photo img{width:100%;height:100%;object-fit:cover;display:block}
.tcs-dishes__detail{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vw,64px);min-width:0}
.tcs-dishes__class{font:500 12px/1.5 Inter,'Noto Sans JP',sans-serif;letter-spacing:.06em;color:#59644f;margin-bottom:22px}
.tcs-dishes h3{font:400 clamp(32px,3.4vw,52px)/1.1 var(--font-family-serif)!important;letter-spacing:-.025em!important;margin:0 0 22px}
.tcs-dishes__description{font:16px/1.75 Inter,'Noto Sans JP',sans-serif;letter-spacing:0;max-width:390px}
.tcs-dishes__link{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid #87917d;padding:16px 0;margin-top:26px;font:500 14px/1.5 Inter,'Noto Sans JP',sans-serif}
.tcs-dishes__controls{display:flex;align-items:center;gap:18px;margin-top:30px;font:12px/1.5 Inter,sans-serif}
.tcs-dishes__controls button{width:42px;height:42px;border:1px solid #a7ad9e;border-radius:50%;font-size:20px}
.tcs-dishes__choices{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-top:24px}
.tcs-dishes__choice{display:block;text-align:left;padding-bottom:12px;border-bottom:2px solid transparent;opacity:.65;transition:opacity 180ms ease,border-color 180ms ease}
.tcs-dishes__choice[aria-pressed=true]{opacity:1;border-color:#424f36}
.tcs-dishes__choice img{width:100%;aspect-ratio:3/2;object-fit:cover;margin-bottom:11px}
.tcs-dishes__choice span{font:500 13px/1.4 Inter,'Noto Sans JP',sans-serif;letter-spacing:0;display:block}
.tcs-dishes button:focus-visible,.tcs-dishes a:focus-visible{outline:2px solid #596c44!important;outline-offset:5px}
@media(hover:hover) and (pointer:fine){.tcs-dishes__choice:hover{opacity:1}.tcs-dishes__controls button:hover{background:#d2d8c7}.tcs-dishes__photo img{transition:transform 250ms cubic-bezier(.23,1,.32,1)}.tcs-dishes__photo:hover img{transform:scale(1.025)}}
@media(max-width:1024px){.p-top-information__inner{padding:0 40px;gap:16px}.p-top-information__news{border:0}.p-top-member-ship{width:100%;padding:0}.p-top-well-being__row{gap:36px}.p-top-well-being__copy,.p-top-well-being__block{width:100%;max-width:640px}.p-top-well-being__copy{margin:0}.p-top-well-being__body{padding:80px 0!important}.tcs-dishes{padding:70px 40px}.tcs-dishes__head{align-items:start}.tcs-dishes__intro{max-width:300px}.tcs-dishes__photo{aspect-ratio:auto;min-height:440px}}
@media(max-width:767px){.tcs-class-section{padding-bottom:30px}.tcs-dietary{display:block;margin-top:30px;padding-top:24px}.tcs-dietary h3{max-width:none;font-size:27px;margin-bottom:18px}.tcs-dietary p{font-size:14px}.p-top-information{padding-bottom:28px}.p-top-information__inner{padding:0 24px}.p-top-information__news{padding:12px 0 20px;align-items:start}.p-top-information__news-item{padding-left:16px}.p-top-information__news-item-link{display:grid;grid-template-columns:1fr auto;gap:4px}.p-top-information__news-item-date{grid-column:1/-1;margin:0;font-size:11px}.p-top-information__news-item-title{font-size:13px}.p-top-member-ship__link{padding:20px}.p-top-member-ship__heading{font-size:22px}.p-top-well-being__body{padding:64px 0!important}.p-top-well-being__body-inner{max-width:100%}.p-top-well-being__row{gap:28px}.p-top-well-being__copy{font-size:44px}.p-top-well-being__text.c-text{font-size:16px!important;line-height:1.75!important}.tcs-dishes{padding:60px 24px}.tcs-dishes__head{display:block;margin-bottom:28px}.tcs-dishes__intro{max-width:100%;margin-top:22px;font-size:15px}.tcs-dishes__stage{grid-template-columns:1fr}.tcs-dishes__photo{aspect-ratio:6/5;min-height:0}.tcs-dishes__detail{padding:28px}.tcs-dishes__class{margin-bottom:14px}.tcs-dishes h3{font-size:36px;margin-bottom:16px}.tcs-dishes__description{font-size:15px}.tcs-dishes__choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px}.tcs-dishes__choice span{font-size:12px}}
@media(prefers-reduced-motion:reduce){.tcs-dishes *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.tcs-dishes__photo:hover img{transform:none}}
/* Override the generated shared type rules only in these redesigned areas. */
#content .tcs-class-section{padding-bottom:52px!important}
#content .tcs-dietary h3{font:400 29px/1.2 var(--font-family-serif)!important;letter-spacing:-.02em!important}
#content .tcs-dietary p{font:400 15px/1.7 Inter,'Noto Sans JP',sans-serif!important;letter-spacing:0!important}
#content .p-top-information__news-item-title{font:400 14px/1.6 Inter,'Noto Sans JP',sans-serif!important;letter-spacing:0!important}
#content .p-top-member-ship__heading{font:400 23px/1.25 var(--font-family-serif)!important;letter-spacing:-.01em!important}
#content .p-top-well-being__copy{font:400 clamp(42px,4.5vw,72px)/1.05 var(--font-family-serif)!important;letter-spacing:-.025em!important}
#content .p-top-well-being__text{font:400 18px/1.75 Inter,'Noto Sans JP',sans-serif!important;letter-spacing:0!important}
#content .tcs-dishes__class,#content .tcs-dishes__link,#content .tcs-dishes__controls{letter-spacing:0!important}
@media(max-width:767px){#content .tcs-dietary h3{font-size:27px!important}#content .tcs-dietary p{font-size:14px!important}#content .p-top-information__news-item-title{font-size:13px!important}#content .p-top-well-being__copy{font-size:44px!important}#content .p-top-well-being__text{font-size:16px!important}.tcs-dishes h3{font-size:36px!important}}
/* Fullscreen menu (Sage, experience.js configureMenu): a weighted sheet drops with a soft leading shadow, the page dims
   under a scrim, links settle in sequence. Theme transitions are switched off so only the WAAPI phases move things;
   no !important on opacity/transform here, because !important would beat the animations. */
html body .tcs-smooth-menu,html body .tcs-smooth-menu .l-gnav__wrapper,html body .tcs-smooth-menu .l-gnav__inner,html body .tcs-smooth-menu .l-gnav__main,html body .tcs-smooth-menu .l-gnav__side,html body .tcs-smooth-menu .js-gnav-side-bg,html body .tcs-smooth-menu .js-gnav-side-bg img,html body .tcs-smooth-menu .js-gnav-item,html body .tcs-smooth-menu .l-gnav-bg{transition:none!important}
html body .tcs-smooth-menu .l-gnav__wrapper{clip-path:none!important;opacity:1!important;visibility:visible!important;}
html body .tcs-smooth-menu .l-gnav-bg{will-change:transform;box-shadow:0 46px 100px -12px rgba(24,28,22,.30)}
/* Feathered leading edge: the paper mists into the page instead of cutting a hard line across it. */
html body .tcs-smooth-menu .l-gnav-bg::after{content:"";position:absolute;left:0;right:0;top:100%;height:min(22vh,180px);background:linear-gradient(180deg,rgb(249,248,246) 0%,rgba(249,248,246,.86) 22%,rgba(249,248,246,.45) 55%,rgba(249,248,246,0) 100%);pointer-events:none}
html body .tcs-smooth-menu .l-gnav__main,html body .tcs-smooth-menu .l-gnav__inner{opacity:1!important;visibility:visible!important}
html body .tcs-smooth-menu .js-gnav-side-bg{opacity:1}
html body .tcs-smooth-menu .js-gnav-side-bg img{will-change:transform}
html body .tcs-smooth-menu .js-gnav-item{will-change:transform,opacity}
html body .tcs-smooth-menu .l-gnav__side{will-change:opacity}
html body .tcs-smooth-menu .l-gnav__side-inner{position:relative;z-index:2}
.tcs-menu-scrim{position:fixed;inset:0;z-index:19990;background:rgba(24,28,22,.42);opacity:0;pointer-events:none;display:none}
.tcs-menu-scrim.is-on{display:block;pointer-events:auto}
html body .l-gnav-toggle{z-index:20040;transition:background 180ms ease}
html body .l-gnav-toggle__bar{top:50%!important;bottom:auto!important;transform-origin:center;transition:transform 640ms cubic-bezier(.76,0,.24,1)!important}
html body .l-gnav-toggle__bar-1{transform:translateY(-4px)!important}
html body .l-gnav-toggle__bar-2{transform:translateY(4px)!important}
html body .l-gnav-toggle[aria-expanded=true] .l-gnav-toggle__bar-1{transform:rotate(45deg)!important}
html body .l-gnav-toggle[aria-expanded=true] .l-gnav-toggle__bar-2{transform:rotate(-45deg)!important}
html body .l-gnav-toggle__bar-inner{transform:none!important}
html[lang] body .c-floating-reservation{opacity:1!important;visibility:visible!important;pointer-events:auto!important;z-index:20030;transform:translate3d(0,0,0);transition:transform 250ms cubic-bezier(.23,1,.32,1),background 180ms ease!important}
html[lang] body .c-floating-reservation__heading-sub{transition:transform 250ms cubic-bezier(.23,1,.32,1),background 180ms ease!important}
@media(hover:hover) and (pointer:fine){html[lang] body .c-floating-reservation:hover{transform:translate3d(0,-3px,0);background:#3d513d;box-shadow:0 16px 30px -14px #18251b80}html[lang] body .c-floating-reservation:hover .c-floating-reservation__heading-sub{transform:rotate(-8deg);background:#fff}html body .l-gnav-toggle:hover{background:#929b8420;border-radius:50%}}
html[lang] body .c-floating-reservation:active{transform:translate3d(0,0,0) scale(.97);transition-duration:120ms!important}
html[lang] body .c-floating-reservation:focus-visible{outline:2px solid #748e5e!important;outline-offset:5px}
@media(prefers-reduced-motion:reduce){html body .l-gnav-toggle__bar,html[lang] body .c-floating-reservation,html[lang] body .c-floating-reservation__heading-sub{transition:none!important}html[lang] body .c-floating-reservation:hover,html[lang] body .c-floating-reservation:active,html[lang] body .c-floating-reservation:hover .c-floating-reservation__heading-sub{transform:none}}
