.home-header{display:none;max-width:1110px;height:clamp(180px,22vw,270px);margin:0 auto;overflow:hidden}.home-header:has(img){display:block}.home-header img{display:block;width:100%;height:100%;object-fit:cover}.home-top{display:grid;grid-template-columns:minmax(0,590px) minmax(300px,430px);gap:clamp(34px,5vw,72px);align-items:start;max-width:1110px;margin:0 auto;padding:clamp(38px,6vw,76px) 0 28px}.home-top .home-intro{max-width:590px}.home-photos{display:grid;gap:14px}.home-photos img{display:block;width:100%;height:clamp(145px,15vw,205px);object-fit:cover;border-radius:4px}.home-details{display:block;max-width:1110px;margin:0 auto 44px;padding:0}.home-side{max-width:590px}.home-info{max-width:590px;grid-template-columns:.82fr .85fr 1fr 1.25fr;gap:5px;margin-top:27px}.home-info>div{min-height:105px;padding:14px 14px 12px}.home-info small{font-size:21px}.home-info strong{font-size:31px}.home-info em{font-size:16px}.home-info .ladies-day{padding:14px 16px}.home-info .ladies-day b{font-size:27px}.home-info .ladies-day span{font-size:21px}.home-info .ladies-day small{font-size:11px}.event-block{margin:32px 0 48px}.event-block h2{font-family:'Playfair Display','Noto Sans JP',serif;font-size:27px;letter-spacing:.04em}.contact-brand{font-family:'Noto Sans JP',sans-serif}.contact-brand strong{display:block;font-family:'Zen Kurenaido','Noto Sans JP',sans-serif;font-size:35px;line-height:1.1}
@media(max-width:699px){.site-header{width:84px;padding:14px 7px}.bottom-nav{width:84px;padding:7px 6px 12px}.site{margin-left:84px}.brand span{font-size:18px;letter-spacing:0;white-space:nowrap}.brand small{font-size:5px;letter-spacing:.02em;white-space:nowrap}.bottom-nav button{font-size:10px}.page:has(.home-top){display:flex;flex-direction:column}.home-header{order:0;height:150px}.home-top{display:contents}.home-top .home-intro{order:1;max-width:none;padding:32px 0 24px}.home-details{order:2;padding:0;margin-bottom:30px}.school-intro{order:3}.home-photos{order:4;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));height:clamp(200px,62vw,260px);margin-top:28px;gap:6px}.home-photos img{width:100%;height:100%;min-width:0;object-fit:cover}.home-photos img:first-child{grid-row:span 2}.home-photos img:only-child{grid-column:1/-1;grid-row:1/-1}.home-photos img:nth-child(2):last-child{grid-column:2;grid-row:1/-1}.home-side{max-width:none}.home-info{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:24px}.home-info>div{min-width:0;min-height:94px;padding:12px}.home-info>div:nth-child(3),.home-info .ladies-day{grid-column:span 2}.home-info small{font-size:18px}.home-info strong{font-size:26px}.home-info .ladies-day b{font-size:24px}.home-info .ladies-day span{font-size:19px}}
@media(max-width:699px){.contact-block>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%}.contact-block>div .button{width:100%;min-width:0;height:44px;padding:9px 6px;font-size:clamp(10px,3.1vw,13px);white-space:nowrap}.school-contact{padding-left:0}}
@media(min-width:700px){.school-contact{padding-left:0}}
.article>.preview{display:block;width:min(100%,760px);aspect-ratio:3/2;height:auto;max-height:none;object-fit:cover;margin:20px 0;border-radius:10px}.article .gallery img{object-fit:cover}
@media(max-width:699px){.article>.preview{width:100%;margin:16px 0;aspect-ratio:3/2}}
@media(min-width:700px){.page:has(.event-block){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,64px);row-gap:0;max-width:1040px}.page:has(.event-block)>.eyebrow,.page:has(.event-block)>.section-title{grid-column:1/-1}.page:has(.event-block)>.event-block{display:flex;flex-direction:column;margin:28px 0 48px}.page:has(.event-block)>.event-block .image-box{height:auto;aspect-ratio:4/3}.page:has(.event-block)>.event-block .card{flex:1;margin:13px 0 0;padding:17px 0;border:0;border-radius:0;background:transparent;box-shadow:none}}
@media(min-width:700px){.menu-items{max-width:780px}.menu-item{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:28px;align-items:baseline}.menu-item>span:first-child{min-width:0}.menu-item>span:first-child .copy{display:inline;margin:0 0 0 1.1em;white-space:normal;word-break:normal;overflow-wrap:break-word}.menu-item>.price{min-width:4.5em;text-align:right;white-space:nowrap}}
.menu-item>.price{font-family:'Noto Sans JP',sans-serif;font-variant-numeric:normal}
#site .event-block h2{font-family:'Zen Kaku Gothic New','Noto Sans JP',sans-serif}
.page:has(.event-block)>.event-block .card{margin:13px 0 0;padding:17px 0;border:0;border-radius:0;background:transparent;box-shadow:none}
.mobile-nav-toggle,.mobile-nav-overlay{display:none}

@media(max-width:699px){.bottom-nav button,.bottom-nav a,.bottom-nav button:hover,.bottom-nav a:hover,.bottom-nav button:focus-visible,.bottom-nav a:focus-visible,.bottom-nav .active{position:relative;background:transparent;box-shadow:none;border-radius:0;color:var(--muted)}.bottom-nav .active{color:var(--gold);font-weight:600}.bottom-nav button::after,.bottom-nav a::after{content:'';position:absolute;left:14px;right:14px;bottom:3px;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:center;transition:transform .16s ease}.bottom-nav .active::after,.bottom-nav button:hover::after,.bottom-nav a:hover::after,.bottom-nav button:focus-visible::after,.bottom-nav a:focus-visible::after{transform:scaleX(1)}}

/* Mobile-only hamburger navigation. */
@media(max-width:699px){
  .site-header,.bottom-nav{width:min(49vw,200px);transform:translateX(-100%);transition:transform .22s ease;will-change:transform}
  .site-header{height:96px;padding:16px 18px 16px 66px;z-index:21}
  .bottom-nav{inset:96px auto 0 0;padding:9px 13px 18px;z-index:21}
  .site{margin-left:0;padding:58px 16px 34px}
  .brand span{font-size:24px;letter-spacing:0;white-space:nowrap}
  .brand small{font-size:7px;letter-spacing:.05em;white-space:nowrap}
  .mobile-nav-toggle{position:fixed;top:8px;left:8px;z-index:23;display:grid;place-content:center;gap:5px;width:42px;height:42px;padding:0;border:1px solid rgba(255,199,125,.32);border-radius:7px;background:rgba(22,16,13,.94);color:var(--gold);cursor:pointer}
  .mobile-nav-toggle span{display:block;width:20px;height:2px;border-radius:1px;background:currentColor}
  .mobile-nav-overlay{position:fixed;inset:0;z-index:20;display:block;width:100%;height:100%;padding:0;border:0;background:rgba(0,0,0,.42);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility 0s linear .22s;cursor:pointer}
  body.mobile-nav-open{overflow:hidden}
  body.mobile-nav-open .site-header,body.mobile-nav-open .bottom-nav{transform:translateX(0)}
  body.mobile-nav-open .mobile-nav-overlay{opacity:1;visibility:visible;transition-delay:0s}
}

/* Compact mobile information cards and event photos without changing their content. */
@media(max-width:699px){
  .home-info{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
  .home-info>div,.home-info>div:nth-child(3),.home-info .ladies-day{grid-column:auto;min-height:86px;padding:8px 5px}
  .home-info small{margin-bottom:4px;font-size:9px;line-height:1.15;letter-spacing:0}
  .home-info strong{font-size:15px;line-height:1.15;overflow-wrap:anywhere}
  .home-info em{margin-top:4px;font-size:9px;line-height:1.15}
  .home-info .ladies-day{padding:8px 5px}
  .home-info .ladies-day small{margin-bottom:4px;font-size:8px;line-height:1.1}
  .home-info .ladies-day b{font-size:11px;line-height:1.1;letter-spacing:0}
  .home-info .ladies-day span{margin-top:4px;font-size:9px;line-height:1.1;letter-spacing:0}
  .event-block{margin:24px 0 32px}
  .event-block .image-box{height:auto;aspect-ratio:16/9;max-height:185px}
}

/* Reduce only the desktop gap before NOTICE and the following HOME content. */
@media(min-width:700px){
  .home-top{padding-bottom:8px}
  .home-details{margin:0 auto 36px}
}
