/* naka only. Existing typography and the shared site shell are inherited. */
.obusedo-naka-page { width:100%; max-width:none; margin:0; padding:0; background:#fff; }
.obusedo-naka { --naka-gray:#f7f7f7; --naka-ink:#221815; --naka-line:#ddd; color:var(--naka-ink); background:#fff; font-family:inherit; font-size:14px; line-height:2; letter-spacing:.25px; width:100%; max-width:none; margin:0; padding:0; }
.obusedo-naka *, .obusedo-naka *::before, .obusedo-naka *::after { box-sizing:border-box; }
.obusedo-naka :where(h2,h3,h4,p,figure,table) { margin:0; padding:0; font-family:inherit; }
.obusedo-naka h2, .obusedo-naka h3, .obusedo-naka h4 { color:inherit; font-weight:500; text-align:left; }
.obusedo-naka h2 { font-size:30px; line-height:1.35; }
.obusedo-naka h3 { font-size:20px; line-height:1.6; margin:24px 0 15px; }
.obusedo-naka p { font-size:14px; line-height:28px; }
.obusedo-naka p + p { margin-top:16px; }
.obusedo-naka img { display:block; width:100%; max-width:100%; height:auto; }
.obusedo-naka .wp-block-group { margin-block-start:0; margin-block-end:0; }
.obusedo-naka .naka-inner { width:calc(100% - 48px); max-width:1000px; margin-left:auto; margin-right:auto; }
.obusedo-naka .naka-section { padding:100px 0; background:#fff; scroll-margin-top:110px; }
.obusedo-naka .naka-gray { background:var(--naka-gray); width:100vw; max-width:none; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.obusedo-naka .naka-hero { position:relative; isolation:isolate; height:420px; overflow:hidden; }
.obusedo-naka .naka-hero-image { position:absolute; inset:0; z-index:-2; margin:0; }
.obusedo-naka .naka-hero-image img { width:100%; height:100%; object-fit:cover; object-position:50% 45%; }
.obusedo-naka .naka-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(0,0,0,.38),transparent); }
.obusedo-naka .naka-hero-copy { padding-top:78px; color:#fff; }
.obusedo-naka .naka-hero-kana { font-size:20px; line-height:1.4; margin:0 0 15px; }
.obusedo-naka .naka-hero-title { font-size:65px; line-height:1.1; color:#fff; margin:0; }
.obusedo-naka .naka-intro { padding:100px 0 0; text-align:center; }
.obusedo-naka .naka-intro h2, .obusedo-naka .naka-section-title { text-align:center; }
.obusedo-naka .naka-intro-lead { font-size:20px; margin:30px 0 22px; }
.obusedo-naka .naka-intro-text + .naka-intro-text { margin-top:0; }
.obusedo-naka .naka-brand { width:142px; margin:50px auto 0; }
.obusedo-naka .naka-columns { display:grid!important; grid-template-columns:minmax(0,500fr) minmax(0,420fr); gap:80px; align-items:start!important; margin:0; }
.obusedo-naka .naka-columns > .wp-block-column { min-width:0; width:auto; margin:0; padding:0; }
.obusedo-naka .naka-reverse { grid-template-columns:minmax(0,420fr) minmax(0,500fr); }
.obusedo-naka .naka-label { font-size:12px; line-height:1.5; color:#777; margin:0 0 18px; }
.obusedo-naka .naka-copy h2 { margin-bottom:25px; }
.obusedo-naka .naka-feature-photo { margin:0; }
.obusedo-naka .naka-feature-photo img { aspect-ratio:4/5; object-fit:cover; }
.obusedo-naka .naka-space-photo img { object-position:50% 35%; }
.obusedo-naka .naka-sweets-photo img { object-position:50% 69%; }
.obusedo-naka .naka-section-intro { text-align:center; margin:26px 0 36px; }
.obusedo-naka .naka-section p,
.obusedo-naka .naka-section-intro { text-align:left; }
.obusedo-naka .naka-intro-text { text-align:center; }
.obusedo-naka .naka-gallery { display:grid; width:min(1000px, calc(100vw - 40px))!important; max-width:1000px!important; margin-left:auto; margin-right:auto; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 20px; }
.obusedo-naka .naka-gallery > .wp-block-group__inner-container { display:grid; width:min(1000px, calc(100vw - 40px))!important; max-width:1000px!important; margin-left:auto; margin-right:auto; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 20px; }
.obusedo-naka .naka-gallery figure,
.obusedo-naka .naka-gallery > .wp-block-group__inner-container > .wp-block-image { min-width:0; width:auto; margin:0; }
.obusedo-naka .naka-gallery > .wp-block-image { min-width:0; width:auto; margin:0; }
.obusedo-naka .naka-gallery img { aspect-ratio:32/21; object-fit:cover; }
.obusedo-naka .naka-gallery figcaption { font:inherit; font-size:13px; line-height:1.6; color:inherit; text-align:left; margin:12px 0 0; padding:0; }
.obusedo-naka .naka-gallery-high img { object-position:50% 24%; }
.obusedo-naka .naka-gallery-sign img { object-position:50% 43%; }
.obusedo-naka .naka-gallery-garden img { object-position:90% 28%; }
.obusedo-naka .naka-table { width:100%; max-width:800px; margin:45px auto 0; overflow-x:auto; }
.obusedo-naka .naka-table table { border-collapse:collapse; width:100%; border:0; table-layout:fixed; }
.obusedo-naka .naka-table tr { display:table-row; min-width:0; padding:0; }
.obusedo-naka .naka-table td, .obusedo-naka .naka-table th { display:table-cell; min-width:0; }
.obusedo-naka .naka-table td, .obusedo-naka .naka-table th { border:0; border-top:1px solid var(--naka-line); padding:18px 20px; text-align:left; font-weight:400; font-size:14px; line-height:28px; vertical-align:top; background:transparent; overflow-wrap:anywhere; }
.obusedo-naka .naka-table tr:last-child td { border-bottom:1px solid var(--naka-line); }
.obusedo-naka .naka-table td:first-child { width:185px; }
.obusedo-naka .naka-table a { color:inherit; }
.obusedo-naka .naka-access { padding:100px 0 60px; }
.obusedo-naka .naka-access h2 { margin-bottom:24px; }
.obusedo-naka .naka-map-embed { width:100%; margin:35px auto 48px; line-height:0; }
.obusedo-naka .naka-map-embed iframe { display:block; width:100%; height:auto; min-height:500px; aspect-ratio:2/1; border:0; }
.obusedo-naka .naka-access > .naka-inner > .naka-section-intro { margin-bottom:0; }
.obusedo-naka .naka-address-title { font-size:20px; margin:0 0 16px; }
.obusedo-naka .naka-map-button { margin-top:24px; }
.obusedo-naka .naka-map-button { width:100%; }
.obusedo-naka .naka-access .wp-block-buttons.naka-map-actions { display:block; width:100%; margin:0; padding:0; text-align:center; }
.obusedo-naka .naka-access .naka-map-actions > .wp-block-button { display:block; width:100%; max-width:480px; margin:0 auto; }
.obusedo-naka .naka-access .naka-map-actions .wp-block-button__link { display:block; box-sizing:border-box; width:100%; background:transparent; color:var(--naka-ink); border:1px solid #999; border-radius:0; padding:12px 20px; font:inherit; text-decoration:none; box-shadow:none; text-align:center; }
.obusedo-naka .naka-map-button .wp-block-button__link { display:block; width:100%; background:transparent; color:var(--naka-ink); border:1px solid #999; border-radius:0; padding:12px 20px; font:inherit; text-decoration:none; box-shadow:none; }
.obusedo-naka a:focus-visible { outline:2px solid #a52229; outline-offset:4px; }
.obusedo-naka .naka-map-button a:hover { background:#fff; opacity:1; }
/* Keep the supplied Gutenberg group wrappers compatible with older WordPress. */
.obusedo-naka .wp-block-group__inner-container { max-width:none; }
@media (max-width:1050px) { .obusedo-naka .naka-columns { gap:40px; } }
@media (max-width:781px) {
 .obusedo-naka .naka-inner { width:calc(100% - 40px); }
 .obusedo-naka .naka-section { padding:60px 0; scroll-margin-top:70px; }
 .obusedo-naka .naka-columns { display:flex!important; flex-direction:column; gap:32px; }
 .obusedo-naka .naka-columns > .wp-block-column { width:100%; flex-basis:auto!important; }
 .obusedo-naka .naka-reverse > .wp-block-column:first-child { order:2; }
 .obusedo-naka .naka-reverse > .wp-block-column:last-child { order:1; }
 .obusedo-naka .naka-hero { height:300px; }
 .obusedo-naka .naka-hero-copy { padding-top:65px; }
 .obusedo-naka .naka-hero-kana { font-size:15px; }
 .obusedo-naka .naka-hero-title { font-size:38px; }
 .obusedo-naka .naka-intro { padding-top:55px; }
 .obusedo-naka .naka-intro-lead { font-size:18px; }
 .obusedo-naka h2 { font-size:26px; }
 .obusedo-naka .naka-gallery,
 .obusedo-naka .naka-gallery > .wp-block-group__inner-container { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; }
 .obusedo-naka .naka-table td { padding:14px 10px; }
 .obusedo-naka .naka-table td:first-child { width:88px; }
 .obusedo-naka .naka-access .naka-columns { align-items:stretch!important; }
 .obusedo-naka .naka-map-embed { margin:28px auto 36px; }
 .obusedo-naka .naka-map-embed iframe { min-height:260px; aspect-ratio:4/3; }
}
@media (prefers-reduced-motion:reduce) { .obusedo-naka a { transition:none!important; } }

/* Match the Sanada-tei page's final desktop spacing and alignment. */
.obusedo-naka .naka-intro { padding:100px 0 10px; }
.obusedo-naka .naka-intro-text { margin-top:28px; }
.obusedo-naka .naka-map-embed iframe { height:470px; min-height:0; }
@media (min-width:782px) {
 .obusedo-naka .naka-intro-text {
  text-align:center !important;
  margin-top:56px !important;
 }
 .obusedo-naka .naka-section-intro {
  text-align:center !important;
  margin-top:52px !important;
 }
}
@media (max-width:781px) {
 .obusedo-naka .naka-intro { padding:55px 0 0; }
 .obusedo-naka .naka-feature-photo img { aspect-ratio:10/7; }
 .obusedo-naka .naka-map-embed iframe { height:320px; min-height:0; }
}
