/* 役割: 文字・フォントの共通／ページ表示・処理。
 * 利用ページ: Appeal、Aria、Article-corn、Article-elephant、Article-onshika、Cuisine、Echelon、Ember、Experience、Hearth、Kurohime、Longevity、Story、Program-bath-rest、Program-caralia、Program-fire、Program-room-day、Program-sauna、Programs、Rooms、Serene、Stay、Story-autumn、Story-corn-local、Story-history-elephant、Story-legend、Story-nojiri、Story-onshika、Story-seasonal-food、Story-spring、Story-summer、Story-winter、TOP（日英）。
 * 関係する棚: S01共通土台・S04日英・S05予約・S10履歴・S12TOP・S16導入。
 * 注意: 詳細度・!important・media・JS実行位置を保持。P/U置換依存は変更しない。placement.jsonと地図の更新.mdを参照。
 */
/* Match existing Japanese type; keep Valky headings and narrative prose exceptions. */
.hierarchy-top-experience,.top-narrative-core{font-family:yu-gothic-pr6n,"Yu Gothic",sans-serif;font-weight:400}
.hierarchy-top-experience .top-experience-heading p{font-size:16px;line-height:2;letter-spacing:.1em}
.hierarchy-top-experience>p,.top-narrative-core p{font-size:15px;line-height:2;letter-spacing:-.01em}
.top-narrative-core h2{font-family:yu-gothic-pr6n,"Yu Gothic",sans-serif;letter-spacing:.05em;line-height:2}
.hierarchy-top-experience .button,.top-narrative-core .button,.wrap .button{font-family:yu-gothic-pr6n,"Yu Gothic",sans-serif;font-size:14px;font-weight:400;line-height:2;letter-spacing:normal}
html[lang=en] .hierarchy-top-experience,html[lang=en] .top-narrative-core,html[lang=en] .wrap .button{font-family:futura-pt,Futura,sans-serif}
html[lang=en] .top-narrative-core h2,html[lang=en] .hierarchy-top-experience .button,html[lang=en] .top-narrative-core .button{font-family:futura-pt,Futura,sans-serif}

/* Compact only the TOP Experience entry CTA. */
.hierarchy-top-experience>.button{box-sizing:border-box;width:max-content;min-width:min(220px,100%);max-width:100%;min-height:48px;padding:10px 24px;gap:40px}
/* loma-lang-switch-desktop-header-20261102
   ★ TOP と下層の両方に効く。言語ボタン（JA/EN）の PC の位置・見た目は、ここだけ直す。
   TOP＝.loma-lang-switch（template-parts/top/language-switch.php）／下層＝.language・.language-rn（各ページの本文部品）。別々の部品だが規則はこの1か所。
   数字は下の --loma-lang-* だけ（top＝上から／right＝右端から。top＝ボタンの縦の中心をナビ文字の中心(36px)に合わせる（高さ34px→19px）／72＝ハンバーガーの左に22px／nav-pad＝ナビを左へ寄せる量＝ボタン幅(約96)＋right＋24）。
   全幅（スマホ含む）に効く＝背景の黒・外枠の白い細線・外側の余白・フォーカス（白い輪、タップで青い輪を出さない）。PC（769px以上）だけ＝位置・大きさ・メニュー中の非表示・ナビ寄せ。
   スマホの位置・大きさは元のまま別ファイル：TOP は loma-lang-switch-option-style、下層は language-rn-style ほかの loma-mobile-language-header-20261023（外枠1px＋余白3px＝元の余白4pxと同じ大きさ）。
   どれかの部品を増やす時は、この selector リストに足す。直したら test/check_same_look.mjs で TOP と下層が同じ見た目か確かめる。 */
/* 全幅：外枠・フォーカス */
  html body :is(.loma-lang-switch[data-loma-lang-switch], .language[aria-label=Language], .language-rn[aria-label=Language]) {
    background:#000!important;
    border:1px solid rgba(255,255,255,.6)!important;
    padding:3px!important
  }
  html body :is(.loma-lang-switch[data-loma-lang-switch], .language[aria-label=Language], .language-rn[aria-label=Language]) :is(.loma-lang-switch__option, button) {
    -webkit-tap-highlight-color:transparent
  }
  html body :is(.loma-lang-switch[data-loma-lang-switch], .language[aria-label=Language], .language-rn[aria-label=Language]) :is(.loma-lang-switch__option, button):focus:not(:focus-visible) {
    outline:none!important
  }
  html body :is(.loma-lang-switch[data-loma-lang-switch], .language[aria-label=Language], .language-rn[aria-label=Language]) :is(.loma-lang-switch__option, button):focus-visible {
    outline:2px solid #fff!important;
    outline-offset:2px!important
  }
@media (min-width:769px) {
  html { --loma-lang-top:19px; --loma-lang-top-top-nav:16px; --loma-lang-right:72px }
  html body :is(.loma-lang-switch[data-loma-lang-switch], .language[aria-label=Language], .language-rn[aria-label=Language]) {
    top:var(--loma-lang-top)!important;
    right:var(--loma-lang-right)!important;
    bottom:auto!important;
    left:auto!important;
    z-index:1001!important
  }
  html body.split-global-visible .loma-lang-switch[data-loma-lang-switch] {
    top:var(--loma-lang-top-top-nav)!important   /* TOP のスクロール後ヘッダーだけ：ナビ文字の中心に合わせる */
  }
  html body :is(.loma-lang-switch[data-loma-lang-switch], .language[aria-label=Language], .language-rn[aria-label=Language]) :is(.loma-lang-switch__option, button) {
    padding:7px 13px!important;
    font-size:12px!important;
    line-height:1!important;
    letter-spacing:.06em!important
  }
  body:has(.GlobalMenu-module-scss-module__J5OOHq__page:not(.GlobalMenu-module-scss-module__J5OOHq__off)) > .loma-lang-switch[data-loma-lang-switch],
  html.loma-menu-open body :is(.loma-lang-switch[data-loma-lang-switch], .language[aria-label=Language], .language-rn[aria-label=Language]) {
    visibility:hidden!important;
    pointer-events:none!important
  }
}
@media (min-width:901px) {
  html { --loma-lang-nav-pad:192px }
  body.split-global-visible #split-global-menu,
  html body > header.brandhead,
  html body > header.loma-room-global {
    padding-right:var(--loma-lang-nav-pad)!important
  }
}
