:root { color-scheme: light; }
body { margin: 0; color: #202020; background: white; }
.rbc-container { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.owl-header, .owl-nav-row, .owl-contact, .owl-network { display: flex; align-items: center; gap: 18px; }
.owl-header { justify-content: space-between; min-height: 84px; }
.owl-logo { display: inline-flex; align-items: center; gap: 10px; color: inherit; font-weight: 850; font-size: clamp(1.18rem, 3vw, 1.9rem); letter-spacing: -.045em; }
.owl-navigation { border-block: 1px solid #ece9e5; }
.owl-nav-row { justify-content: space-between; }
#formats { display: flex; gap: clamp(11px, 3.7vw, 36px); overflow-x: auto; }
#formats a { padding-block: 13px; font-weight: 700; white-space: nowrap; }
#formats a[aria-current] { box-shadow: inset 0 -2px #272421; }
.owl-contact { gap: 12px; }
.owl-contact button, #show-topics { background: none; color: inherit; border: 0; padding: 5px 0; cursor: pointer; white-space: nowrap; font-weight: 650; font-size: .85rem; }
#show-topics { display: none; }
#content { padding-block: 27px 66px; }
#featured:empty { display: none; }
#featured { margin-bottom: 36px; }
#featured .p-wrap { position: relative; overflow: hidden; border-radius: 7px; }
#featured img { display: block; width: 100%; height: clamp(310px, 44vw, 510px); object-fit: cover; }
#featured .content-overlay { position: absolute; inset: auto 0 0; padding: clamp(20px, 5vw, 58px); background: linear-gradient(transparent, rgba(0,0,0,.83)); color: white; pointer-events: none; }
#featured .content-overlay a { color: white; pointer-events: auto; }
#featured .entry-title { font-size: clamp(1.6rem, 4.2vw, 2.85rem); }
.owl-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(185px, 255px); gap: 38px; }
#topics { border-left: 1px solid #ece9e5; padding-left: 22px; align-self: start; }
#topic-links { display: grid; grid-template-columns: minmax(0, 1fr); }
#topic-links a { padding: 8px 0; border-bottom: 1px solid #f0eeeb; }
#topic-links a[aria-current] { font-weight: 800; }
.owl-section + .owl-section { margin-top: 34px; }
.owl-section .block-header, #topics h2 { margin-bottom: 14px; }
.owl-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 27px 22px; }
.owl-grid img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.owl-grid .p-wrap { min-width: 0; }
.owl-grid .p-feat { border-radius: 6px; overflow: hidden; }
.p-cat-info { display: flex; gap: 6px; margin-block: 8px; }
.p-cat-info .cat-info-el { border: 1px solid currentColor; border-radius: 3px; padding: 2px 6px; font-size: .7rem; }
.owl-date { font-size: .8rem; opacity: .8; }
.owl-empty { padding: 18px 0 30px; }
.owl-footer { padding-block: 32px; }
.owl-footer .owl-logo { font-size: 1.2rem; }
.owl-footer .owl-network { margin-block: 12px; flex-wrap: wrap; }
.owl-network a { display: inline-flex; align-items: center; gap: 6px; }
@media (max-width: 720px) {
  .rbc-container { width: calc(100% - 28px); }
  .owl-header { min-height: 65px; }
  .owl-header .owl-contact { gap: 8px; }
  #show-topics { display: block; }
  .owl-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  #topics { display: none; grid-row: 1; border-left: 0; padding-left: 0; }
  #topics.is-open { display: block; }
  .owl-grid { gap: 18px 12px; }
  .owl-grid .entry-title { font-size: 1rem; }
}
#featured .rb-iwrap, .owl-grid .rb-iwrap { display: block; height: auto; padding-bottom: 0; }
#featured .rb-iwrap img, .owl-grid .rb-iwrap img { position: static; }
#featured .owl-card-summary { margin: 0 0 8px; }
:root {
  --owl-bg: #fff;
  --owl-panel: #fff;
  --owl-text: #202020;
  --owl-line: #e6e2dc;
  --owl-accent: #8b5413;
}
:root[data-theme="night"] {
  color-scheme: dark;
  --owl-bg: #171719;
  --owl-panel: #222225;
  --owl-text: #f1efec;
  --owl-line: #3b393a;
  --owl-accent: #f0b55e;
}
body, .footer-wrap { color: var(--owl-text); background: var(--owl-bg); }
body a, .block-title, .entry-title, .entry-summary, .p-meta-info { color: inherit; }
.footer-wrap, .owl-navigation { border-color: var(--owl-line); }
#formats a[aria-current] { box-shadow: inset 0 -2px var(--owl-accent); }
.owl-header-actions { display: flex; align-items: center; gap: 14px; position: relative; }
#menu-toggle {
  display: grid; place-content: center; gap: 4px; width: 40px; height: 40px;
  padding: 0; color: inherit; background: none; border: 1px solid var(--owl-line);
  border-radius: 5px; cursor: pointer;
}
#menu-toggle span { width: 17px; height: 2px; background: currentColor; }
#owl-menu {
  position: absolute; z-index: 20; top: calc(100% + 9px); right: 0;
  width: min(250px, 88vw); max-height: min(480px, calc(100dvh - 85px)); overflow-y: auto; padding: 15px; background: var(--owl-panel);
  color: var(--owl-text); border: 1px solid var(--owl-line); border-radius: 7px;
  box-shadow: 0 12px 30px #0004;
}
#owl-menu[hidden] { display: none; }
#owl-menu h2 { font-size: .92rem; margin: 15px 0 5px; }
#topic-links a { border-color: var(--owl-line); }
#topic-links a[aria-current] { color: var(--owl-accent); }
.owl-theme { display: flex; gap: 6px; }
.owl-theme button {
  display: grid; place-items: center; width: 42px; height: 38px; background: transparent; color: inherit; padding: 0;
  border: 1px solid var(--owl-line); border-radius: 4px; cursor: pointer;
}
.owl-theme button[aria-pressed="true"] { color: var(--owl-accent); border-color: currentColor; }
@media (min-width: 950px) { .owl-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 420px) {
  .owl-header-actions { gap: 6px; }
  .owl-header .owl-contact button { font-size: .72rem; }
}
.owl-story { max-width: 760px; margin-inline: auto; }
.owl-story > a { color: var(--owl-accent); font-weight: 700; }
.owl-story h1 { margin: 10px 0; font-size: clamp(1.7rem, 5vw, 2.65rem); }
.owl-story-body { margin-top: 28px; line-height: 1.8; }
.owl-story-body hr { display: none; }
.owl-story-body :is(h2, h3, h4):not(:first-child) { margin-top: 1.6em; }
.owl-story-body img { max-width: 100%; height: auto; display: block; margin-inline: auto; border-radius: 5px; }
.owl-story-body figure { margin: 24px 0; max-width: 100%; }
.owl-story-body figcaption { margin-top: 8px; font-size: .85rem; opacity: .8; }
.owl-story-body p, .owl-story-body h2, .owl-story-body h3 { margin: 0 0 1.1em; }
.owl-story-body a { text-decoration: underline; overflow-wrap: anywhere; }
html[data-theme] body, html[data-theme] #masthead, html[data-theme] .footer-wrap {
  background: var(--owl-bg);
  color: var(--owl-text);
}
#masthead {
  position: sticky;
  top: 0;
  z-index: 30;
}
#owl-menu .owl-network {
  display: grid;
  gap: 10px;
  padding-top: 13px;
  margin-top: 13px;
  border-top: 1px solid var(--owl-line);
  font-size: .9rem;
}
.owl-details {
  display: grid;
  gap: 0;
  margin: 22px 0;
  padding: 5px 16px;
  background: var(--owl-panel);
  border: 1px solid var(--owl-line);
  border-radius: 7px;
}
.owl-details > div {
  display: grid;
  grid-template-columns: 5.6rem minmax(0, 1fr);
  gap: 10px;
  padding: 10px 0;
}
.owl-details > div + div { border-top: 1px solid var(--owl-line); }
.owl-details dt { color: var(--owl-accent); font-weight: 700; }
.owl-details dd { margin: 0; }
.owl-details a { text-decoration: underline; }
.owl-article-guide { margin-top: 32px; }
.owl-article-guide h2 { font-size: 1.15rem; }
.owl-article-guide .owl-details { margin-top: 12px; }
.owl-details > div { grid-template-columns: minmax(0, 7.4rem) minmax(0, 1fr); }
.owl-details :is(dt, dd) {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}
.owl-details dt {
  position: relative;
  display: block;
}
.owl-details dt:has(svg) { padding-inline-start: 22px; }
.owl-details dt svg {
  position: absolute; inset-inline-start: 0; top: .3em; width: 15px; height: 15px;
  fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round;
}
@media (max-width: 420px) {
  .owl-article-guide .owl-details > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
}
.owl-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.owl-story-body .owl-lounge-table {
  overflow: hidden;
  border: 1px solid var(--owl-line);
  border-radius: 12px;
  background: var(--owl-panel);
}
.owl-lounge-table table { width: 100%; margin: 0; border: 0; border-collapse: collapse; }
.owl-lounge-table :is(th, td) {
  border: 0;
  padding: .65rem clamp(.65rem, 2.5vw, 1.15rem);
  text-align: left;
  overflow-wrap: anywhere;
}
.owl-lounge-table thead { background: var(--owl-bg); }
.owl-lounge-table tbody tr { border-top: 1px solid var(--owl-line); }
.owl-lounge-table tbody th { width: 37%; font-weight: 650; }
.owl-guide-box {
  background: var(--owl-panel);
  border: 1px solid var(--owl-line);
  border-radius: 12px;
  padding: 16px;
}
.owl-guide-box .owl-details { border: 0; padding: 0; margin: 8px 0 0; }
.owl-guide-box .owl-details dd { overflow-wrap: anywhere; }
.owl-place-name { font-weight: 700; margin: 5px 0 0; }
.owl-article-credit { font-size: .85rem; opacity: .8; margin-top: 18px; }
.owl-story-body .wp-block-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(8px, 2vw, 16px);
}
.owl-story-body .wp-block-gallery > figure {
  width: 100%;
  min-width: 0;
  margin: 0;
}
.owl-story-body .wp-block-gallery > figure:last-of-type:nth-of-type(odd) { grid-column: 1 / -1; }
.owl-story-body .wp-block-gallery img { width: 100%; }
.owl-event-guide {
  padding: clamp(16px, 4vw, 28px);
  border: 1px solid var(--owl-line);
  border-radius: 15px;
  background: var(--owl-panel);
}
.owl-event-guide-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 13px;
  border-bottom: 1px solid var(--owl-line);
}
.owl-event-guide-header h2 { margin: 0; font-size: 1.3rem; }
.owl-event-status {
  padding: 3px 10px;
  border: 1px solid var(--owl-line);
  border-radius: 999px;
  font-size: .75rem;
}
.owl-event-guide .owl-details {
  margin: 4px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.owl-event-guide .owl-guide-link a {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  color: var(--owl-accent);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
}
.owl-event-guide .owl-guide-link a::after { content: '↗' / ''; flex: none; }
.owl-story-body .owl-setlist {
  margin-block: 28px;
  padding: clamp(16px, 4vw, 28px);
  border: 1px solid var(--owl-line);
  border-radius: 15px;
  background: var(--owl-panel);
}
.owl-story-body .owl-setlist :is(h2,h3,h4) { margin: 0 0 12px; }
.owl-setlist ol { list-style: decimal-leading-zero; margin: 0; padding-left: 2.1rem; }
.owl-setlist li { padding: .6rem 0 .6rem .25rem; margin: 0; }
.owl-setlist li + li { border-top: 1px solid var(--owl-line); }
.owl-setlist li::marker { color: var(--owl-accent); font-weight: 700; font-variant-numeric: tabular-nums; }
.owl-story-body .owl-diner-still img { width: 100%; }
.owl-story-body .owl-diner-still figcaption { text-align: center; }
.owl-setlist .owl-details { margin: 0 0 12px; border: 0; padding: 0; }
.owl-story-body .owl-setlist > p:last-child { margin-bottom: 0; }
.owl-story-body .owl-opening-quote {
  padding: clamp(16px, 4vw, 28px);
  border: 1px solid var(--owl-line);
  border-radius: 12px;
  background: var(--owl-panel);
}
.owl-opening-quote .owl-quote-text p { margin: 0; color: var(--owl-text); text-align: left; }
.owl-opening-quote .owl-quote-text [lang="ja"] { font-size: 1.18rem; font-weight: 700; }
.owl-opening-quote .owl-quote-text [lang="ko"] { margin-top: .65em; }
.owl-opening-quote::before,
.owl-opening-quote::after,
.owl-opening-quote .owl-quote-text p::before,
.owl-opening-quote .owl-quote-text p::after { content: none; display: none; }
#search-toggle {
  display: grid; place-content: center; width: 40px; height: 40px;
  padding: 0; color: inherit; background: none; border: 1px solid var(--owl-line);
  border-radius: 5px; cursor: pointer;
}
#owl-menu .owl-menu-contact {
  display: grid; gap: 5px; border-top: 1px solid var(--owl-line); margin-top: 12px; padding-top: 9px;
}
#owl-menu .owl-menu-contact button { text-align: left; }
#article-search { width: min(430px, 90vw); padding: 22px; background: var(--owl-panel); color: var(--owl-text); border: 1px solid var(--owl-line); border-radius: 10px; }
#article-search::backdrop { background: #0008; }
#article-search .close { float: right; background: transparent; border: 0; color: inherit; cursor: pointer; }
#article-search [role="search"] { display: flex; gap: 8px; }
#article-search input { flex: 1; min-width: 0; }
.owl-more { display: block; margin: 24px auto 0; padding: 8px 16px; border: 1px solid var(--owl-line); border-radius: 6px; background: var(--owl-panel); color: var(--owl-text); cursor: pointer; }
.owl-more[hidden] { display: none; }
.owl-story-body iframe { max-width: 100%; }
.owl-story-body .owl-product-guide {
  margin-top: 32px; padding: clamp(18px, 4vw, 28px);
  border: 1px solid var(--owl-line); border-radius: 14px; background: var(--owl-panel);
}
.owl-story-body .owl-product-guide h2 { margin: 0 0 8px; }
.owl-story-body .owl-product-guide h3 { margin: 16px 0 6px; font-size: 1rem; }
.owl-product-guide .owl-product-name { font-weight: 700; }
.owl-product-guide ol { margin: 0 0 18px; padding-inline-start: 1.5em; list-style: decimal; }
.owl-story-body .owl-product-buy {
  display: inline-flex; gap: .55em; padding: .5em .9em; border: 1px solid currentColor;
  border-radius: 7px; color: var(--owl-accent); font-weight: 700; text-decoration: none;
}
.owl-story-body .owl-product-disclosure { margin: 10px 0 0; font-size: .86rem; }
.owl-product-guide .owl-details { margin: 12px 0 16px; padding: 0; border: 0; }
.owl-product-guide .owl-product-buy { margin: 4px 8px 4px 0; }
.owl-story-body .owl-book-toc > ol { list-style: none; padding: 0; margin: 0; }
.owl-story-body .owl-book-toc > ol > li { padding: 12px 0; }
.owl-story-body .owl-book-toc > ol > li + li { border-top: 1px solid var(--owl-line); }
.owl-story-body .owl-book-toc ol ol { margin: 6px 0 0; }
.owl-product-photo img { width: min(100%, 650px); }

.owl-wordmark {
  display: inline-grid;
  justify-items: center;
  padding-block: .08em;
  line-height: 1;
}
.owl-wordmark-name {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.55em;
  font-weight: 700;
  letter-spacing: -.075em;
  padding-inline-end: .075em;
  line-height: .88;
}
.owl-wordmark-edition {
  width: 100%;
  margin-top: .35em;
  padding-block: .36em .05em;
  border-top: 1px solid currentColor;
  font: 700 .42em/1 system-ui, sans-serif;
  letter-spacing: .25em;
  text-indent: .25em;
  text-align: center;
}
#formats { min-width: 0; gap: clamp(16px, 2.5vw, 32px); scrollbar-width: thin; }
#formats a { flex: 0 0 auto; }
.owl-kind-label { cursor: default; }
#topic-links .owl-topic-group { padding: 8px 0; border-bottom: 1px solid var(--owl-line); }
#topic-links .owl-topic-group a { display: block; border: 0; padding: 5px 0 5px 12px; }
#topic-links .owl-topic-group .owl-topic-group-title { padding-left: 0; font-weight: 750; }

.owl-workout .owl-details > div { grid-template-columns: minmax(0, 1fr) auto; }
.owl-workout dd { font-weight: 700; font-variant-numeric: tabular-nums; }

.owl-wordmark-edition { border-top-color: #b7884b; }

.owl-about-link { display: inline-block; font-weight: 650; }
#owl-menu .owl-about-link { margin: 12px 0 4px; }
.owl-about {
  max-width: 1000px;
  margin: clamp(24px, 6vw, 76px) auto;
  line-height: 1.75;
}
.owl-about-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(18px, 5vw, 70px);
  align-items: center;
  padding-bottom: clamp(24px, 5vw, 56px);
  border-bottom: 1px solid var(--owl-line);
}
.owl-about-kicker { color: var(--owl-accent); font-size: .78rem; font-weight: 700; letter-spacing: .16em; }
.owl-about h1 { margin: .18em 0 .35em; font: 700 clamp(2.5rem, 6.5vw, 5rem)/.94 Georgia, serif; letter-spacing: -.06em; }
.owl-about-intro p:last-child { max-width: 29ch; font-size: clamp(1rem, 2vw, 1.25rem); }
.owl-about figure { margin: 0; }
.owl-about figure img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 12px; }
.owl-about figcaption { margin-top: 8px; font-size: .85rem; }
.owl-about-section { margin-top: clamp(32px, 5vw, 60px); }
.owl-about-section > p { max-width: 68ch; }
.owl-about-network { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.owl-about-network a { display: flex; align-items: center; gap: 12px; padding: 16px; border: 1px solid var(--owl-line); border-radius: 12px; background: var(--owl-panel); }
.owl-about-network a:hover, .owl-about-link:hover { color: var(--owl-accent); }
.owl-about-network a > span { min-width: 0; overflow-wrap: anywhere; }
.owl-about-network small { display: block; }
.owl-about-history { margin: 0; }
.owl-about-history div { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 12px; padding: 12px 0; border-top: 1px solid var(--owl-line); }
.owl-about-history dt { color: var(--owl-accent); font-weight: 700; }
.owl-about-history dd { margin: 0; }
.owl-about-inquiries { padding: clamp(16px, 4vw, 32px); border: 1px solid var(--owl-line); border-radius: 12px; background: var(--owl-panel); }
.owl-about-inquiries h2 { margin-top: 0; }
@media (max-width: 620px) {
  .owl-about-intro, .owl-about-network { grid-template-columns: 1fr; }
  .owl-about-history div { grid-template-columns: 6rem minmax(0, 1fr); }
}


.owl-inquiry { max-width: 680px; }
.owl-inquiry h1 { font: inherit; font-size: clamp(2rem, 5vw, 3rem); font-weight: 750; }
#inquiry-form { display: grid; gap: 16px; margin-top: 24px; padding: clamp(16px, 4vw, 30px); border: 1px solid var(--owl-line); border-radius: 14px; background: var(--owl-panel); }
#inquiry-form fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
#inquiry-form fieldset[data-inquiry]:not([hidden]) { display: grid; gap: 16px; }
#inquiry-form label { display: block; font-weight: 650; }
#inquiry-form .owl-inquiry-choice label { display: inline-flex; align-items: center; gap: 6px; margin: 6px 16px 0 0; }
#inquiry-form :is(input:not([type="radio"]), textarea) { display: block; box-sizing: border-box; width: 100%; min-width: 0; margin-top: 5px; padding: 9px; border: 1px solid var(--owl-line); border-radius: 8px; color: inherit; background: var(--owl-bg); font: inherit; }
#inquiry-form [hidden] { display: none; }
#inquiry-form p { margin: 0; overflow-wrap: anywhere; }
#inquiry-form p a { text-decoration: underline; }
.owl-inquiry-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.owl-inquiry-actions button, .owl-contact .owl-inquiry-link { padding: 7px 11px; border: 1px solid var(--owl-line); border-radius: 8px; background: var(--owl-panel); color: inherit; font: inherit; cursor: pointer; }
.owl-inquiry-actions button[type="submit"] { border-color: var(--owl-accent); color: var(--owl-accent); font-weight: 700; }

#inquiry-form[hidden] { display: none; }

.owl-grid .owl-card-summary:not([hidden]) {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin: 6px 0 8px;
  font-size: .9rem;
  line-height: 1.5;
}

.owl-footer > p { margin: 16px 0 0; }

.owl-languages { display: flex; align-items: center; gap: 4px; }
.owl-languages :is(a, span) { display: grid; place-items: center; width: 32px; height: 36px; border-radius: 5px; }
.owl-languages img { width: 24px; height: 24px; border-radius: 50%; }
.owl-languages a[aria-current="page"] img { outline: 1px solid var(--owl-accent); outline-offset: 2px; }
@media (max-width: 420px) {
  .owl-languages { gap: 0; }
  .owl-languages :is(a, span) { width: 26px; }
  .owl-languages img { width: 19px; height: 19px; }
}

.owl-languages [aria-disabled="true"] { opacity: .45; }
