
/* material icons */
/* Reference: https://developers.google.com/fonts/docs/material_icons#setup_method_2_self_hosting */
@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url('https://storage.googleapis.com/production-os-assets/assets/material-icons/1629704621943/MaterialIcons-Regular.eot'); /* For IE6-8 */
src: local('Material Icons'), local('MaterialIcons-Regular'),
url('https://storage.googleapis.com/production-os-assets/assets/material-icons/1629704621943/MaterialIcons-Regular.woff2')
  format('woff2');
}
.material-icons {
display: flex;
font-family: Material Icons;
font-size: 24px;
font-style: normal;
font-weight: 400;
letter-spacing: normal;
line-height: 1;
text-transform: none;
white-space: nowrap;
word-wrap: normal;
direction: ltr;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased
}

 :root { --s-font-f79ce552:Poppins;--s-font-daa8975e:'Noto Sans JP';--s-font-cda1e569:'中ゴシックBBB JIS2004';--s-font-3f87abc1:'ヒラギノ角ゴシック','Hiragino Sans'; } 

html {
  height: 100%;
  padding: 0;
  margin: 0;
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

body {
  display: block;
  min-height: 100vh;
  background: #fff;
  font-family: sans-serif;
  line-height: 1;
  transition: background 0.5s cubic-bezier(0.4, 0.4, 0, 1);
  padding: 0;
  margin: 0;
}

a {
  background: transparent;
  color: rgb(51, 51, 51);
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: none;
  text-decoration: none;
}

button {
  background: transparent;
  color: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: none;
}

button {
  pointer-events: all;
  cursor: pointer;
  user-select: none;
}

hr {
  border: 0;
  border-top: 1px solid #ccc;
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  color: rgb(51, 51, 51);
  line-height: 1;
}

/* --- Common Base Styles --- */
.img,
.box,
.text,
.frame,
.section,
.section-inner,
.input,
.toggle,
.icon,
.video,
.video-container {
  border: 0;
  box-sizing: border-box;
  max-width: 100%;
  z-index: 0;
  position: relative;
  margin: 0;
  padding: 0;
  flex: none;
}

.img {
  height: auto;
}

.img,
.box,
.text,
.frame,
.section,
.section-inner,
.toggle,
.icon,
.video-container {
  transition: all 0.3s cubic-bezier(0.4, 0.4, 0, 1);
  transition-property: all, --g-angle, --g-color-0, --g-position-0, --g-color-1, --g-position-1, --g-color-2, --g-position-2, --g-color-3, --g-position-3, --g-color-4, --g-position-4, --g-color-5, --g-position-5, --g-color-6, --g-position-6, --g-color-7, --g-position-7, --g-color-8, --g-position-8, --g-color-9, --g-position-9, --g-color-10, --g-position-10, --g-color-11, --g-position-11;
  list-style: none;
  margin: 0;
  padding: 0;
  text-decoration: none;
  align-content: center;
}

.input,
.select {
  /* TypeSquareの ts-unused インライン上書きからフォーム要素を保護するため !important で防衛。
     詳細度は同じなのでノード固有の .sd-N 側も !important 付与が必要（$StyleBundle.formFontImportant）。

     a11y トレードオフ: ブラウザ設定 UI の「標準フォント」指定（author normal 相当）は本ルールで上書きされる。
     一方、User Style Sheet + !important（OpenDyslexic 等の a11y 拡張）は CSS カスケードの origin 順位
     （user !important > author !important）により依然として勝つ。TypeSquare 干渉対策として意図的に受容する。 */
  font-family: inherit !important;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

.input,
.richText * {
  transition: all 0.3s cubic-bezier(0.4, 0.4, 0, 1);
  transition-property: all, --g-angle, --g-color-0, --g-position-0, --g-color-1, --g-position-1, --g-color-2, --g-position-2, --g-color-3, --g-position-3, --g-color-4, --g-position-4, --g-color-5, --g-position-5, --g-color-6, --g-position-6, --g-color-7, --g-position-7, --g-color-8, --g-position-8, --g-color-9, --g-position-9, --g-color-10, --g-position-10, --g-color-11, --g-position-11;
  list-style: none;
  margin: 0;
  padding: 0;
  text-decoration: none;
  align-content: normal;
  z-index: 0;
}

/* Restore text decoration for semantic HTML elements */
.richText s,
.richText del,
.richText u {
  text-decoration: revert;
}

/* sd-base equivalent: column segment containers (see JSDoc) */
.box,
.frame,
.section,
.toggle,
.video-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.img,
.text,
.icon {
  align-items: center;
  display: flex;
  flex-direction: row;
  justify-content: center;
  overflow-wrap: anywhere;
  word-break: break-word;
  z-index: 0;
}

.box::-webkit-scrollbar {
  display: none;
}

/* --- Rich Text --- */
.richText {
  display: block;
  /* Workaround: レスポンシブCSSで display:flex に切り替わった際に
     flex-direction がデフォルト row になるのを防止する。
     display:block 時は無視され、display:flex 時のみ有効。
     HRC ではノードCSS生成時に flex-direction を補完すると
     ユーザー設定の flex-direction を上書きするリスクがあるため、
     低優先度のデフォルト値としてここで設定する。 */
  flex-direction: column;
  flex: none;
  word-break: break-word;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  line-height: 1;

* {
    border: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    -webkit-backface-visibility: hidden;
    box-sizing: border-box;
    word-spacing: 1px;

    backface-visibility: visible;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-align: inherit;
  }
  h1 {
    font-size: 3em;
    font-weight: 700;
    margin: 20px 0;
  }

  h2,
    h3 {
    font-weight: 700;
    margin: 10px 0;
  }
  h2 {
    font-size: 2em;
  }
  h3 {
    font-size: 1em;
  }
  h4,
    h5,
    h6 {
    display: block;
    font-size: 1em;
    margin: 10px 0;
  }
  h4,
    h5 {
    font-weight: 600;
  }
  h6 {
    font-weight: 500;
  }
p {
    margin: 10px 0;
  }
> p {
    min-height: 1em;
  }

  hr {
    border-top: 1px solid #ccc;
    margin: 10px 0;
  }

  em {
    font-style: italic;
  }

> blockquote {
    border-left: 3px solid rgba(0, 0, 0, 0.15);
    font-style: italic;
    margin: 10px 0;
    padding: 10px 15px;
  }

  strong {
    color: inherit;
    display: inline;
    font-family: inherit;
    font-weight: 900;
  }
  /* Table of Contents */
> [data-type="table_of_contents"] {
    line-height: 1;
    list-style: none;
    padding: 24px 24px 8px;
    margin: 0;
    border-radius: 2px;
    font-size: 16px;
    background-color: #f5f5f5;
    text-decoration: underline;
    color: #616161;

  .toc_list {
      margin: 0;
      padding: 0;
    }

  .toc_item {
      font-size: inherit;
      font-weight: inherit;
      color: currentColor;
      list-style: none;
      margin: 0 0 16px 0;

      /* Default padding */
      padding-left: 2rem;

    &.toc_item--1 {
        margin: 0 0 16px 0;
        /* Level 1 items might not need extra padding beyond the default */
        padding-left: 0; /* Reset or adjust as needed */
      }
    &.toc_item--2 {
        margin: 0 0 16px 0;
        padding-left: 2rem; /* Already default, explicit for clarity */
      }
    &.toc_item--3 {
        margin: 0 0 16px 0;
        padding-left: 4rem;
      }

    > a {
        font-size: inherit;
        font-weight: inherit;
        color: currentColor;
        border: none;
        text-decoration: none;
      }
    }
  }

> [data-type="table"] {
    overflow-x: auto;
    p {
      white-space: pre-line;
      word-break: break-all;
    }
  }
  table {
    table-layout: auto;
    border-collapse: collapse;
    border-spacing: unset;
    margin: 10px 0 10px 0;
    font-size: 14px;
    border: 1px solid #f2f2f2;
    color: #1a1a1a;
    line-height: 1.4;
  }
  th {
    background: rgba(245, 245, 245, 0.5);
  }
  th,
    td {
    min-width: 100px;
    max-width: 240px;
    border: 1px solid #f2f2f2;
    padding: 12px;

    p {
      margin: 0;
    }
  }

p > code {
    background: #eee;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    display: inline;
    margin: 2px;
    padding: 0 5px;
  }
  ol {
    margin: 0 0 0 20px;
    padding: 0;
    list-style: none;
    li {
      list-style: decimal;
      margin: 10px 0;
    }
  }

  ul {
    margin: 0 0 0 20px;
    padding: 0;
    list-style: none;
    li {
      list-style: disc;
      margin: 10px 0;
    }
  }
  li > p {
    margin: 0;
  }
  pre {
    margin: 20px 0 20px 0;
    padding: 25px 35px 25px 35px;
    background: #eeeeee;
    border-radius: 6px;
    white-space: pre-wrap;
    font-family: Menlo, Monaco, "Courier New", monospace;

    code {
      padding: 0;
      border: none;
    }
  }
  /* Images & Videos */
  img,
    video {
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
  }

  /* Links */
  a {
    color: #007cff;
    display: inline;
    text-decoration: underline;
  }

  /* Embedded Code */
  [data-type="embed_code"] {
    position: relative;
    margin: 20px 0;
    .height-adjuster {
      max-width: 1280px;
      position: relative;

      .wrapper {
        position: relative;
      }

      .wrapper[style*='padding-top'] {
        iframe {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
        }
      }
    }
  }
}

/* --- Section --- */
.section {
  width: 100%;
}

/* section-inner のスタイル
 * position: static は studio-preview との表示互換性のために維持している。
 * 元々は考慮漏れで設定されたものだが、既に使用されているため互換性維持のために必要。
 * .box クラスも同時に付与されるため、display: flex 等の基本レイアウトは継承される。
 */
.section-inner {
  position: static;
}

/* --- Dialog --- */
dialog {
  border: none;
  background-color: transparent;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  position: fixed;
  max-width: none;
  max-height: none;
  box-sizing: border-box;
  /* UA stylesheet の overflow: auto を打ち消し、モーダル内コンテンツがはみ出した際の水平パンを防ぐ (#2438) */
  /* コンテンツが dialog 表示領域を超える場合は overflow: auto に戻さず、子要素側で内部スクロール領域を確保する (studio-preview 互換) */
  overflow: visible;

&[open] {
    display: flex;
  }

&::backdrop {
    background: transparent;
  }
}

.modal-container {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  pointer-events: none;  /* backdropクリックをdialogに透過 */
  z-index: 1;
}

.modal-container > * {
  pointer-events: auto;  /* コンテンツ内のクリックを有効化 */
}

.modal-backdrop {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

/* --- Modal Transition --- */
/* モーダルトランジション中の子要素transition無効化（ちらつき防止） */
/* modal-readyが付くまで子要素のtransitionを無効化し、 */
/* appearアニメーションとの競合を防ぐ */
/* NOTE: modal-closing時も:not(.modal-ready)に該当するため、閉じるアニメーション中も適用される */
dialog[open][data-modal-transition-base]:not(.modal-ready) .modal-container * {
  transition: none !important;
}

/* 開いた直後の初期状態: modal-containerとmodal-backdropをopacity 0に */
/* dialog自体は常にopacity 1（二重掛け防止） */
dialog[open][data-modal-transition-base] > .modal-container {
  opacity: 0;
  /* transformはdata-modal-transition-baseのJSON値を使用するためJSで設定 */
}

dialog[open][data-modal-transition-base] > .modal-backdrop {
  opacity: 0;
}

/* 準備完了: トランジションでopacity 1, transform noneへ */
dialog[open][data-modal-transition-base].modal-ready > .modal-container {
  opacity: 1;
  transform: none;
  transition: opacity 400ms cubic-bezier(.4,.4,0,1), transform 400ms cubic-bezier(.4,.4,0,1);
}

dialog[open][data-modal-transition-base].modal-ready > .modal-backdrop {
  opacity: 1;
  transition: opacity 400ms cubic-bezier(.4,.4,0,1);
}

/* 閉じるアニメーション */
dialog[data-modal-transition-base].modal-closing > .modal-container {
  opacity: 0;
  transition: opacity 400ms cubic-bezier(.4,.4,0,1), transform 400ms cubic-bezier(.4,.4,0,1);
}

dialog[data-modal-transition-base].modal-closing > .modal-backdrop {
  opacity: 0;
  transition: opacity 400ms cubic-bezier(.4,.4,0,1);
}

/* アクセシビリティ: モーション軽減 */
@media (prefers-reduced-motion: reduce) {
  dialog[open][data-modal-transition-base] > .modal-container,
  dialog[open][data-modal-transition-base].modal-ready > .modal-container,
  dialog[data-modal-transition-base].modal-closing > .modal-container {
    transition: none;
    opacity: 1;
    transform: none !important;
  }

  dialog[open][data-modal-transition-base] > .modal-backdrop,
  dialog[open][data-modal-transition-base].modal-ready > .modal-backdrop,
  dialog[data-modal-transition-base].modal-closing > .modal-backdrop {
    transition: none;
    opacity: 1;
  }
}

/* --- Image Background Element --- */
/* .image__bg-container 単体構造で::before疑似要素を使用 */
.image__bg-container {
  container-type: size;  /* 幅と高さを監視（aspect-ratioクエリに必要） */
  container-name: image-container;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: -2;
  border-radius: inherit;
  transition: inherit;
}

.image__bg-container::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: var(--img-current);
  background-position: 50%;
  background-size: cover;
  border-radius: inherit;
  transition-duration: inherit;
  transition-timing-function: inherit;
  transition-delay: inherit;
  /* background-image を除外: WebKit が transition: all 継承時に
     container query による --img-current 変更を cross-fade() でアニメーションし、
     低解像度バリアントが表示され続ける問題を回避 (issue #2389) */
  transition-property:
    filter, backdrop-filter, opacity, color,
    background-color, background-position, background-size,
    border, border-color, border-width, border-radius,
    outline, outline-color, outline-width, outline-offset,
    box-shadow, text-shadow, transform, transform-origin,
    width, height, margin, padding,
    top, left, right, bottom, z-index, gap,
    letter-spacing, word-spacing, line-height, font-size, font-weight,
    clip-path;
}

/* IMPORTANT: 3つの DPR tier はソース順に依存 — ÷2.0 → ÷1.5 → ÷1.0 の順で配置し、
   境界値(DPR 1.0, 1.5)での overlap を後段 tier の勝ちで解決する。並び替え禁止。 */

/* DPR 2x（÷2.0）: 背景画像用 - 閾値（300px/500px/900px）= DPR 1x閾値 ÷ 2.0 */
@media (min-resolution: 1.5dppx) {
  /* --- horizontal (横長/正方形) - DPR 2x --- */
  /* デフォルト: < 300px → small */
  .image--horizontal .image__bg-container::before {
    --img-current: var(--img-small);
  }

  /* aspect-ratio < 1 補正: small → middle (300px未満) */
  @container (aspect-ratio < 1) and (max-width: 299px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* aspect-ratio < 0.5 補正: small → regular (300px未満、2段階アップ) */
  @container (aspect-ratio < 0.5) and (max-width: 299px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 300px以上 + aspect-ratio >= 1 → middle
     horizontalはmax-widthなし: aspect-ratio >= 1 が自然にスコープし、
     後続の幅帯ルールがソース順で上書きするためmax-width不要。
     verticalは明示的範囲限定（min-width + max-width + aspect-ratio >= 0.5）を使用。 */
  @container (min-width: 300px) and (aspect-ratio >= 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* 300px以上 + aspect-ratio < 1 補正: middle → regular */
  @container (min-width: 300px) and (max-width: 499px) and (aspect-ratio < 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 300px以上 + aspect-ratio < 0.5 補正: middle → origin (2段階アップ) */
  @container (min-width: 300px) and (max-width: 499px) and (aspect-ratio < 0.5) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 500px以上 + aspect-ratio >= 1 → regular */
  @container (min-width: 500px) and (aspect-ratio >= 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 500px以上 + aspect-ratio < 1 補正: regular → origin */
  @container (min-width: 500px) and (max-width: 900px) and (aspect-ratio < 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 500px以上 + aspect-ratio < 0.5: origin で上限キャップ（aspect-ratio < 1 と同じ結果） */

  /* 901px以上 → origin */
  @container (min-width: 901px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* --- vertical (縦長) - DPR 2x --- */
  /* デフォルト: < 300px → small（aspect-ratioガードなし: 補正CQがカスケードで上書きする） */
  .image--vertical .image__bg-container::before {
    --img-current: var(--img-small);
  }

  /* aspect-ratio < 0.5 補正: small → middle (300px未満) */
  @container (aspect-ratio < 0.5) and (max-width: 299px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* aspect-ratio < 0.25 補正: small → regular (300px未満、2段階アップ) */
  @container (aspect-ratio < 0.25) and (max-width: 299px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 300-499px + aspect-ratio >= 0.5 → middle */
  @container (min-width: 300px) and (max-width: 499px) and (aspect-ratio >= 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* 300-499px + aspect-ratio < 0.5 補正: middle → regular */
  @container (min-width: 300px) and (max-width: 499px) and (aspect-ratio < 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 300-499px + aspect-ratio < 0.25 補正: middle → origin (2段階アップ) */
  @container (min-width: 300px) and (max-width: 499px) and (aspect-ratio < 0.25) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 500-900px + aspect-ratio >= 0.5 → regular */
  @container (min-width: 500px) and (max-width: 900px) and (aspect-ratio >= 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 500-900px + aspect-ratio < 0.5 補正: regular → origin */
  @container (min-width: 500px) and (max-width: 900px) and (aspect-ratio < 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 901px以上 → origin */
  @container (min-width: 901px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }
}

/* DPR 1.5x（÷1.5）: DPR 1.01-1.5 の Android 端末等向け。
   対象デバイスは限定的だが、÷1.0 では解像度不足、÷2.0 では過剰ダウンスケールとなるため独立 tier として設置。
   閾値 = DPR 1x閾値 ÷ 1.5（端数は切り上げ: 600/1.5=400, 1000/1.5≈667, 1801/1.5≈1201） */
/* @media matches 1.0 ≤ DPR ≤ 1.5, effective 1.0 < DPR ≤ 1.5（DPR 1.0 は後段の ÷1.0 tier がソース順で勝つ） */
@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
  /* --- horizontal (横長/正方形) - DPR 1.5x --- */
  /* デフォルト: < 400px → small */
  .image--horizontal .image__bg-container::before {
    --img-current: var(--img-small);
  }

  /* aspect-ratio < 1 補正: small → middle (400px未満) */
  @container (aspect-ratio < 1) and (max-width: 399px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* aspect-ratio < 0.5 補正: small → regular (400px未満、2段階アップ) */
  @container (aspect-ratio < 0.5) and (max-width: 399px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 400px以上 + aspect-ratio >= 1 → middle */
  @container (min-width: 400px) and (aspect-ratio >= 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* 400px以上 + aspect-ratio < 1 補正: middle → regular */
  @container (min-width: 400px) and (max-width: 666px) and (aspect-ratio < 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 400px以上 + aspect-ratio < 0.5 補正: middle → origin (2段階アップ) */
  @container (min-width: 400px) and (max-width: 666px) and (aspect-ratio < 0.5) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 667px以上 + aspect-ratio >= 1 → regular */
  @container (min-width: 667px) and (aspect-ratio >= 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 667px以上 + aspect-ratio < 1 補正: regular → origin */
  @container (min-width: 667px) and (max-width: 1200px) and (aspect-ratio < 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 667px以上 + aspect-ratio < 0.5: origin で上限キャップ（aspect-ratio < 1 と同じ結果） */

  /* 1201px以上 → origin */
  @container (min-width: 1201px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* --- vertical (縦長) - DPR 1.5x --- */
  /* デフォルト: < 400px → small（aspect-ratioガードなし: 補正CQがカスケードで上書きする） */
  .image--vertical .image__bg-container::before {
    --img-current: var(--img-small);
  }

  /* aspect-ratio < 0.5 補正: small → middle (400px未満) */
  @container (aspect-ratio < 0.5) and (max-width: 399px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* aspect-ratio < 0.25 補正: small → regular (400px未満、2段階アップ) */
  @container (aspect-ratio < 0.25) and (max-width: 399px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 400-666px + aspect-ratio >= 0.5 → middle */
  @container (min-width: 400px) and (max-width: 666px) and (aspect-ratio >= 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* 400-666px + aspect-ratio < 0.5 補正: middle → regular */
  @container (min-width: 400px) and (max-width: 666px) and (aspect-ratio < 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 400-666px + aspect-ratio < 0.25 補正: middle → origin (2段階アップ) */
  @container (min-width: 400px) and (max-width: 666px) and (aspect-ratio < 0.25) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 667-1200px + aspect-ratio >= 0.5 → regular */
  @container (min-width: 667px) and (max-width: 1200px) and (aspect-ratio >= 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 667-1200px + aspect-ratio < 0.5 補正: regular → origin */
  @container (min-width: 667px) and (max-width: 1200px) and (aspect-ratio < 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 1201px以上 → origin */
  @container (min-width: 1201px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }
}

/* DPR 1x（÷1.0）: 背景画像用 - 閾値（600px/1000px/1801px） */
@media (max-resolution: 1dppx) {
  /* --- horizontal (横長/正方形) - DPR 1x --- */
  /* デフォルト: < 600px → small */
  .image--horizontal .image__bg-container::before {
    --img-current: var(--img-small);
  }

  /* aspect-ratio < 1 補正: small → middle (600px未満) */
  @container (aspect-ratio < 1) and (max-width: 599px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* aspect-ratio < 0.5 補正: small → regular (600px未満、2段階アップ) */
  @container (aspect-ratio < 0.5) and (max-width: 599px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 600px以上 + aspect-ratio >= 1 → middle */
  @container (min-width: 600px) and (aspect-ratio >= 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* 600px以上 + aspect-ratio < 1 補正: middle → regular */
  @container (min-width: 600px) and (max-width: 999px) and (aspect-ratio < 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 600px以上 + aspect-ratio < 0.5 補正: middle → origin (2段階アップ) */
  @container (min-width: 600px) and (max-width: 999px) and (aspect-ratio < 0.5) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 1000px以上 + aspect-ratio >= 1 → regular */
  @container (min-width: 1000px) and (aspect-ratio >= 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 1000px以上 + aspect-ratio < 1 補正: regular → origin */
  @container (min-width: 1000px) and (max-width: 1800px) and (aspect-ratio < 1) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 1000px以上 + aspect-ratio < 0.5: origin で上限キャップ（aspect-ratio < 1 と同じ結果） */

  /* 1801px以上 → origin */
  @container (min-width: 1801px) {
    .image--horizontal .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* --- vertical (縦長) - DPR 1x --- */
  /* デフォルト: < 600px → small（aspect-ratioガードなし: 補正CQがカスケードで上書きする） */
  .image--vertical .image__bg-container::before {
    --img-current: var(--img-small);
  }

  /* aspect-ratio < 0.5 補正: small → middle (600px未満) */
  @container (aspect-ratio < 0.5) and (max-width: 599px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* aspect-ratio < 0.25 補正: small → regular (600px未満、2段階アップ) */
  @container (aspect-ratio < 0.25) and (max-width: 599px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 600-999px + aspect-ratio >= 0.5 → middle */
  @container (min-width: 600px) and (max-width: 999px) and (aspect-ratio >= 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-middle);
    }
  }

  /* 600-999px + aspect-ratio < 0.5 補正: middle → regular */
  @container (min-width: 600px) and (max-width: 999px) and (aspect-ratio < 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 600-999px + aspect-ratio < 0.25 補正: middle → origin (2段階アップ) */
  @container (min-width: 600px) and (max-width: 999px) and (aspect-ratio < 0.25) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 1000-1800px + aspect-ratio >= 0.5 → regular */
  @container (min-width: 1000px) and (max-width: 1800px) and (aspect-ratio >= 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-regular);
    }
  }

  /* 1000-1800px + aspect-ratio < 0.5 補正: regular → origin */
  @container (min-width: 1000px) and (max-width: 1800px) and (aspect-ratio < 0.5) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }

  /* 1801px以上 → origin */
  @container (min-width: 1801px) {
    .image--vertical .image__bg-container::before {
      --img-current: var(--img-origin);
    }
  }
}

/* --- Shift Classes for Background Images --- */
/* 注意: shift classesはDPR非依存で、常にDPR 1x相当の閾値（600px/1000px）を使用 */
/* shift-1: 1段階上のバリエーション */
.image--shift-1 .image__bg-container::before {
  --img-current: var(--img-middle);
}

@container (min-width: 600px) {
  .image--shift-1 .image__bg-container::before {
    --img-current: var(--img-regular);
  }
}

@container (min-width: 1000px) {
  .image--shift-1 .image__bg-container::before {
    --img-current: var(--img-origin);
  }
}

/* shift-2: 2段階上のバリエーション */
.image--shift-2 .image__bg-container::before {
  --img-current: var(--img-regular);
}

@container (min-width: 600px) {
  .image--shift-2 .image__bg-container::before {
    --img-current: var(--img-origin);
  }
}

/* --- Text Specific --- */
.text {
  /* Note: Base styles are defined above in common group */
  /* Specific styles for .text */
  -webkit-font-smoothing: antialiased;
  position: relative; /* Already defined in base, maybe redundant */
  line-height: 1;
  word-spacing: 1px;
  /* margin: 0; is already defined in base */
}

/* --- Frame --- */
.frame {
  display: block;
  overflow: hidden;
  /* iframe は display: inline のため、親の line-height が iframe 下の baseline
     descent gap を決定する。studio-preview はリセットで広範に line-height: 1
     を適用しており、HRC でも .frame に同等の値を設定して挙動を一致させる。 */
  line-height: 1;
  /* Note: Base styles are defined above in common group */
}
/* biome-ignore lint/style/noDescendingSpecificity: 異なるコンテキストでのiframeスタイル */
.frame > iframe {
  border: none;
  width: 100%;
  height: 100%;
}

/* --- Studio Specific --- */

/* --- Toggle --- */
/* Base styles are shared with other segment containers (see JSDoc).
   Toggle-specific rules (open/closing state) are defined below. */

/* --- Input File --- */
.file {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  flex-direction: row;
  word-break: break-word;
  overflow-wrap: anywhere;
  cursor: pointer;
  outline: 2px solid transparent;
  outline-offset: -1px;
  position: relative;
  /* TypeSquareの ts-unused インライン上書きから label を保護（.input/.select と同方針） */
  font-family: inherit !important;
}

.file:focus-within {
  outline-color: rgba(56, 110, 220, 0.5);
}

.file > input[type='file'] {
  opacity: 0;
  position: absolute;
  pointer-events: none;
  inset: 0;
  width: 100%;
  height: 100%;
}

.toggle[data-toggle-closing] [data-show-toggle="open"],
.toggle[open]:not([data-toggle-closing]) [data-show-toggle="close"],
.toggle:not([open]):not([data-toggle-closing]) [data-show-toggle="open"] {
  display: none;
}

/* --- sd-video Custom Element --- */
/* object-fitはnon-inheritedかつreplaced element専用プロパティのため、
 * 非replaced要素であるsd-video自身には視覚効果を持たない。
 * ここでの宣言は子<video>が object-fit: inherit で参照するための値供給源として機能する。
 * これにより<video> UA stylesheetデフォルト(object-fit: contain)をsd-video階層で再現し、
 * objectFit未指定のレガシーデータでもstudio-previewと等価な表示となる。 */
sd-video {
  display: block;
  overflow: hidden;
  object-fit: contain;
}
/* studio-preview互換: ネイティブ<video>のように振る舞う
 * width:100%ではなくmax-width:100%を使用し、
 * sd-videoのwidth:auto時に循環依存を防ぐ（Safari互換 #2312）
 * max-height:100%で親sd-videoの高さに収める
 *   （親height:auto時はpercentageがnoneにフォールバックするCSS仕様）
 * object-fit:inheritで親sd-videoのobject-fitを継承する */
sd-video > video {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: inherit;
}

/* --- Video Container --- */
/* Video inside video-container - disable text selection */
.video-container {
  user-select: none;
}

/* Video label toggle based on container state */
.video-container[data-video-state="paused"] [data-video-label="pause"],
.video-container[data-video-state="playing"] [data-video-label="play"] {
  display: none;
}

.video-container[data-video-state="paused"] [data-video-label="play"],
.video-container[data-video-state="playing"] [data-video-label="pause"] {
  display: inline;
}

/* --- Carousel Custom Element --- */
sd-carousel {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* is-playing属性に基づくslot表示制御 */
sd-carousel:not([is-playing]) [slot="pause"],
sd-carousel[is-playing] [slot="play"] {
  display: none !important;
}

/** root-element */
.sd-1 {
  min-height: 100vh;
  overflow: clip;
}

/* --- CSS Custom Properties for Gradient Animation --- */
@property --g-angle {
  syntax: "<angle>";
  inherits: false;
  initial-value: 180deg;
}
@property --g-color-0 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-0 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0.01%;
}
@property --g-color-1 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-1 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-2 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-2 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-3 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-3 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-4 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-4 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-5 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-5 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-6 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-6 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-7 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-7 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-8 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-8 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-9 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-9 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-10 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-10 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --g-color-11 {
  syntax: "<color>";
  inherits: false;
  initial-value: transparent;
}
@property --g-position-11 {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
/* LoopBox内のnative imgがJS初期化前に固有サイズで膨張するのを防止 */
sd-loop-box > .img {
  max-width: 100%;
  height: auto;
}


:root { --s-color-ef9ac550: #3f456fff; --s-color-bb8a7149: #3f456fff; --s-color-ca9b3be3: #1a1a1aff; }
.text.theme-b7a516f7 { font-family:var(--s-font-daa8975e); font-size:32px; font-weight:900; line-height:1.5; }
@media (max-width: 540px) {
.text.theme-b7a516f7 { font-size:24px; }
}
.sd-1 { align-content:center; align-items:center; background:#EEEEEE; height:100%; padding:80px 0px 0px; width:100%; max-width:100%; }
body { background:#EEEEEE; }
.symbol-1 { align-content:center; align-items:center; background:#EEEEEE; bottom:auto; display:flex; flex:none; flex-direction:row; flex-wrap:nowrap; gap:0px; height:80px; justify-content:space-between; left:0px; margin:0; padding:0px 0px 0px 40px; position:fixed; right:0px; top:0px; width:100%; z-index:4; max-width:100%; }
.symbol-1.appear { opacity:0; transition-delay:1200ms; transition-duration:1200ms; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); }
.symbol-1 > * { --gap-h:0px; --gap-v:0px; }
.symbol-1.appear > * { --gap-h:0px; --gap-v:0px; }
.symbol-1__sd-1 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); border-bottom:0px solid #FFFFFF; border-left:0px solid #FFFFFF; border-right:0px solid #FFFFFF; border-top:0px solid #FFFFFF; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:center; padding:0px; width:220px; max-width:100%; }
.symbol-1__sd-2 { flex:none; height:auto; width:100%; max-width:100%; }
.symbol-1__sd-3 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); border-bottom:0px solid #FFFFFF; border-left:0px solid #FFFFFF; border-right:0px solid #FFFFFF; border-top:0px solid #FFFFFF; flex:none; flex-direction:row; flex-wrap:nowrap; height:100%; justify-content:flex-end; padding:0px; width:auto; max-width:100%; }
.symbol-1__sd-4 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:100%; justify-content:flex-end; margin:0px; width:auto; max-width:100%; }
.symbol-1__sd-5 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; margin:0px 30px 0px 0px; padding:0px; width:auto; max-width:calc(100% - 30px); }
.symbol-1__sd-5:hover { opacity:1; --ha:1; }
.symbol-1__sd-6 { color:#000000; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:600; height:auto; line-height:0.8; margin:0px; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-1__sd-5:hover .symbol-1__sd-6 { opacity:0; }
.symbol-1__sd-7 { color:#000000; flex:none; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:700; height:100%; left:0; line-height:0.8; margin:0; opacity:0; position:absolute; text-align:center; top:1px; translate:0px 10px; width:100%; justify-content:center; max-width:100%; }
.symbol-1__sd-5:hover .symbol-1__sd-7 { opacity:1; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px -1px; }
.symbol-1__sd-8 { background:#000000; bottom:0px; flex:none; height:2px; left:0px; margin:0; opacity:0; position:absolute; right:0px; top:auto; width:100%; max-width:100%; }
.symbol-1__sd-5:hover .symbol-1__sd-8 { opacity:1; }
.symbol-1__sd-9 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; margin:0px 30px 0px 0px; padding:0px; width:auto; max-width:calc(100% - 30px); }
.symbol-1__sd-9:hover { opacity:1; --ha:1; }
.symbol-1__sd-10 { color:#000000; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:600; height:auto; line-height:0.8; margin:0px; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-1__sd-9:hover .symbol-1__sd-10 { opacity:0; }
.symbol-1__sd-11 { color:#000000; flex:none; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:700; height:100%; left:0; line-height:0.8; margin:0; opacity:0; position:absolute; text-align:center; top:1px; translate:0px 10px; width:100%; justify-content:center; max-width:100%; }
.symbol-1__sd-9:hover .symbol-1__sd-11 { opacity:1; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px -1px; }
.symbol-1__sd-12 { background:#000000; bottom:0px; flex:none; height:2px; left:0px; margin:0; opacity:0; position:absolute; right:0px; top:auto; width:100%; max-width:100%; }
.symbol-1__sd-9:hover .symbol-1__sd-12 { opacity:1; }
.symbol-1__sd-13 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; margin:0px 30px 0px 0px; padding:0px; width:auto; max-width:calc(100% - 30px); }
.symbol-1__sd-13:hover { opacity:1; --ha:1; }
.symbol-1__sd-14 { color:#000000; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:600; height:auto; line-height:0.8; margin:0px; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-1__sd-13:hover .symbol-1__sd-14 { opacity:0; }
.symbol-1__sd-15 { color:#000000; flex:none; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:700; height:100%; left:0; line-height:0.8; margin:0; opacity:0; position:absolute; text-align:center; top:1px; translate:0px 10px; width:100%; justify-content:center; max-width:100%; }
.symbol-1__sd-13:hover .symbol-1__sd-15 { opacity:1; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px -1px; }
.symbol-1__sd-16 { background:#000000; bottom:0px; flex:none; height:2px; left:0px; margin:0; opacity:0; position:absolute; right:0px; top:NaNpx; width:100%; max-width:100%; }
.symbol-1__sd-13:hover .symbol-1__sd-16 { opacity:1; }
.symbol-1__sd-17 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; margin:0px 22px 0px 0px; padding:0px; width:72px; max-width:calc(100% - 22px); }
.symbol-1__sd-17:hover { opacity:1; --ha:1; }
.symbol-1__sd-18 { color:#000000; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:600; height:auto; line-height:0.8; margin:0px; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-1__sd-17:hover .symbol-1__sd-18 { opacity:0; }
.symbol-1__sd-19 { color:#000000; flex:none; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:700; height:100%; left:0; line-height:0.8; margin:0; opacity:0; position:absolute; text-align:center; top:1px; translate:0px 10px; width:100%; justify-content:center; max-width:100%; }
.symbol-1__sd-17:hover .symbol-1__sd-19 { opacity:1; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px -1px; }
.symbol-1__sd-20 { background:#000000; bottom:0px; flex:none; height:2px; left:0px; margin:0; opacity:0; position:absolute; right:0px; top:NaNpx; width:100%; max-width:100%; }
.symbol-1__sd-17:hover .symbol-1__sd-20 { opacity:1; }
.symbol-1__sd-21 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; margin:0px 22px 0px 0px; padding:0px; width:72px; max-width:calc(100% - 22px); }
.symbol-1__sd-21:hover { opacity:1; --ha:1; }
.symbol-1__sd-22 { color:#000000; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:600; height:auto; line-height:0.8; margin:0px; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-1__sd-21:hover .symbol-1__sd-22 { opacity:0; }
.symbol-1__sd-23 { color:#000000; flex:none; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:700; height:100%; left:0; line-height:0.8; margin:0; opacity:0; position:absolute; text-align:center; top:1px; translate:0px 10px; width:100%; justify-content:center; max-width:100%; }
.symbol-1__sd-21:hover .symbol-1__sd-23 { opacity:1; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px -1px; }
.symbol-1__sd-24 { background:#000000; bottom:0px; flex:none; height:2px; left:0px; margin:0; opacity:0; position:absolute; right:0px; top:NaNpx; width:100%; max-width:100%; }
.symbol-1__sd-21:hover .symbol-1__sd-24 { opacity:1; }
.symbol-1__sd-25 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:100%; justify-content:center; margin:0px 22px 0px 0px; padding:0px; width:94px; max-width:calc(100% - 22px); }
.symbol-1__sd-25:hover { opacity:1; --ha:1; }
.symbol-1__sd-26 { color:#000000; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:600; height:auto; line-height:0.8; margin:0px 2px 0px 0px; text-align:center; width:auto; justify-content:center; max-width:calc(100% - 2px); }
.symbol-1__sd-25:hover .symbol-1__sd-26 { opacity:0; }
.symbol-1__sd-27 { color:#333; font-size:14px; rotate:-30deg; z-index:0; }
.symbol-1__sd-28 { color:#000000; display:flex; flex:none; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:700; height:100%; left:-4px; line-height:0.8; margin:0; opacity:0; position:absolute; text-align:center; top:1px; translate:0px 10px; width:100%; justify-content:center; max-width:100%; }
.symbol-1__sd-25:hover .symbol-1__sd-28 { opacity:1; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px -1px; }
.symbol-1__sd-29 { background:#000000; bottom:0px; flex:none; height:2px; left:0px; margin:0; opacity:0; position:absolute; right:0px; top:NaNpx; width:100%; max-width:100%; }
.symbol-1__sd-25:hover .symbol-1__sd-29 { opacity:1; }
.symbol-1__sd-30 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); border-radius:0; box-shadow:none; display:flex; flex:none; flex-direction:row; flex-wrap:nowrap; height:100%; justify-content:center; margin:0px; padding:0px; width:auto; max-width:100%; }
.symbol-1__sd-31 { align-content:center; align-items:center; background:#575757; display:flex; flex:none; flex-direction:row; flex-wrap:wrap; height:100%; justify-content:center; width:120px; max-width:100%; }
.symbol-1__sd-31:hover { opacity:1; --ha:1; }
.symbol-1__sd-32 { color:#FFFFFF; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:600; height:auto; line-height:1.4; text-align:center; width:auto; z-index:1; justify-content:center; max-width:100%; }
.symbol-1__sd-31:hover .symbol-1__sd-32 { color:#000000; }
.symbol-1__sd-33 { color:#FFFFFF; font-size:14px; margin:0px 0px 0px 4px; rotate:-30deg; z-index:1; max-width:calc(100% - 4px); }
.symbol-1__sd-31:hover .symbol-1__sd-33 { color:#000000; }
.symbol-1__sd-34 { background:#FFFFFF; flex:none; height:100%; left:0; margin:0; position:absolute; scale:0 1; top:0; transform-origin:center left; width:100%; z-index:0; max-width:100%; }
.symbol-1__sd-31:hover .symbol-1__sd-34 { scale:1 1; }
.symbol-1__sd-35 { align-content:center; align-items:center; background:#000000; flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; width:120px; max-width:100%; }
.symbol-1__sd-35:hover { opacity:1; --ha:1; }
.symbol-1__sd-36 { color:#FFFFFF; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:600; height:auto; line-height:1.4; text-align:center; width:auto; z-index:1; justify-content:center; max-width:100%; }
.symbol-1__sd-35:hover .symbol-1__sd-36 { color:#000000; }
.symbol-1__sd-37 { display:none; flex:none; height:auto; width:30px; max-width:100%; }
.symbol-1__sd-38 { background:#FFFFFF; bottom:0px; flex:none; height:100%; left:0px; margin:0; position:absolute; right:0px; scale:0 1; top:0px; transform-origin:center left; width:100%; z-index:0; max-width:100%; }
.symbol-1__sd-35:hover .symbol-1__sd-38 { scale:1 1; }
.symbol-1__sd-39 { align-content:center; align-items:center; background:#FFFFFF; border-radius:0; box-shadow:none; display:none; flex:none; flex-direction:column; flex-wrap:nowrap; height:80px; justify-content:center; width:80px; max-width:100%; }
.symbol-1__sd-40 { flex:none; height:auto; margin:0px; width:40px; max-width:100%; }
.modal-menu__backdrop { background:rgba(0,0,0,0.16); }
.modal-menu__container { height:100%; justify-content:center; width:100%; }
.modal-menu__sd-1 { align-content:center; align-items:center; background:#dbe1e1; border-radius:0; box-shadow:none; flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:flex-start; margin:0px; opacity:1; overflow-x:hidden; overflow-y:auto; padding:0px; width:100%; max-width:100%; }
.modal-menu__sd-2 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #888888; border-left:0px solid #888888; border-right:0px solid #888888; border-top:0px solid #888888; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:100px 50px; padding:0px; width:auto; max-width:calc(100% - 100px); }
.modal-menu__sd-3 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:center; margin:0px 0px 60px; width:auto; max-width:100%; }
.modal-menu__sd-4 { flex:none; height:auto; width:210px; max-width:100%; }
.modal-menu__sd-5 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:1px solid #c1cccb; border-left:0px solid #c1cccb; border-right:0px solid #c1cccb; border-top:0px solid #c1cccb; flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px 0px 20px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-6 { align-content:flex-start; align-items:flex-start; flex-direction:row; flex-wrap:nowrap; justify-content:center; margin:0px 0px 40px; padding:0px; max-width:100%; }
.modal-menu__sd-7 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #c1cccb; border-left:0px solid #c1cccb; border-right:1px solid #c1cccb; border-top:0px solid #c1cccb; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:center; margin:0px; padding:0px 80px 0px 0px; width:auto; max-width:100%; }
.modal-menu__sd-8 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-8:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-9 { color:#242424; font-family:var(--s-font-f79ce552); font-size:36px; font-weight:600; height:auto; line-height:1.1; margin:0px 0px 4px; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-10 { color:#242424; font-family:var(--s-font-daa8975e); font-size:14px; font-style:normal; font-weight:500; height:auto; letter-spacing:0.05em; line-height:1.1; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-11 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:30px 0px 0px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-11:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-12 { color:#242424; font-family:var(--s-font-f79ce552); font-size:36px; font-weight:600; height:auto; line-height:1.1; margin:0px 0px 4px; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-13 { color:#242424; font-family:var(--s-font-daa8975e); font-size:14px; font-style:normal; font-weight:500; height:auto; letter-spacing:0.05em; line-height:1.1; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-14 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:20px 0px 0px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-14:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-15 { background:#c1cccb; flex:none; height:1px; margin:0px 6px 0px 0px; width:10px; max-width:calc(100% - 6px); }
.modal-menu__sd-16 { color:#333; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:500; height:auto; line-height:1.2; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-17 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:14px 0px 0px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-17:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-18 { background:#c1cccb; flex:none; height:1px; margin:0px 6px 0px 0px; width:10px; max-width:calc(100% - 6px); }
.modal-menu__sd-19 { color:#333; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:500; height:auto; line-height:1.2; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-20 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:14px 0px 0px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-20:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-21 { background:#c1cccb; flex:none; height:1px; margin:0px 6px 0px 0px; width:10px; max-width:calc(100% - 6px); }
.modal-menu__sd-22 { color:#333; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:500; height:auto; line-height:1.2; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-23 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #aaaaaa; border-left:0px solid #aaaaaa; border-right:0px solid #aaaaaa; border-top:0px solid #aaaaaa; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:center; margin:0px; padding:0px 80px 0px 20px; width:auto; max-width:100%; }
.modal-menu__sd-24 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-24:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-25 { color:#242424; font-family:var(--s-font-f79ce552); font-size:36px; font-weight:600; height:auto; line-height:1.1; margin:0px 0px 4px; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-26 { color:#242424; font-family:var(--s-font-daa8975e); font-size:14px; font-style:normal; font-weight:500; height:auto; letter-spacing:0.05em; line-height:1.1; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-27 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:30px 0px 0px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-27:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-28 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:1; flex-direction:row; flex-wrap:nowrap; gap:0px; height:auto; justify-content:flex-start; width:auto; max-width:100%; }
.modal-menu__sd-28 > * { --gap-h:0px; --gap-v:0px; }
.modal-menu__sd-29 { color:#242424; font-family:var(--s-font-f79ce552); font-size:36px; font-weight:600; height:auto; line-height:1.1; margin:0px 4px 4px 0px; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:calc(100% - 4px); }
.modal-menu__sd-30 { color:#333; font-size:20px; rotate:-30deg; z-index:0; }
.modal-menu__sd-31 { color:#242424; font-family:var(--s-font-daa8975e); font-size:14px; font-style:normal; font-weight:500; height:auto; letter-spacing:0.05em; line-height:1.1; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-32 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:30px 0px 0px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-32:hover { opacity:0.5; --ha:1; }
.modal-menu__sd-33 { color:#242424; font-family:var(--s-font-f79ce552); font-size:36px; font-weight:600; height:auto; line-height:1.1; margin:0px 0px 4px; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-34 { color:#242424; font-family:var(--s-font-daa8975e); font-size:14px; font-style:normal; font-weight:500; height:auto; letter-spacing:0.05em; line-height:1.1; padding:0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-35 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-radius:0; box-shadow:none; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px 0px 40px; padding:0px; width:auto; max-width:100%; }
.modal-menu__sd-36 { align-content:center; align-items:center; background:#575757; flex:none; flex-direction:row; flex-wrap:wrap; height:60px; justify-content:center; margin:0px 0px 10px; width:240px; max-width:100%; }
.modal-menu__sd-36:hover { opacity:1; --ha:1; }
.modal-menu__sd-36 > * { --gap-h:0px; --gap-v:0px; }
.modal-menu__sd-37 { color:#FFFFFF; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:600; height:auto; line-height:1.4; text-align:center; width:auto; z-index:1; justify-content:center; max-width:100%; }
.modal-menu__sd-36:hover .modal-menu__sd-37 { color:#000000; }
.modal-menu__sd-38 { color:#FFFFFF; font-size:14px; margin:0px 0px 0px 4px; rotate:-30deg; z-index:1; max-width:calc(100% - 4px); }
.modal-menu__sd-36:hover .modal-menu__sd-38 { color:#000000; }
.modal-menu__sd-39 { background:#FFFFFF; flex:none; height:100%; left:0; margin:0; position:absolute; scale:0 1; top:0; transform-origin:center left; width:100%; z-index:0; max-width:100%; }
.modal-menu__sd-36:hover .modal-menu__sd-39 { scale:1 1; }
.modal-menu__sd-40 { align-content:center; align-items:center; background:#000000; flex:none; flex-direction:column; flex-wrap:nowrap; height:60px; justify-content:center; margin:0px; width:240px; max-width:100%; }
.modal-menu__sd-40:hover { opacity:1; --ha:1; }
.modal-menu__sd-41 { color:#FFFFFF; font-family:var(--s-font-daa8975e); font-size:16px; font-weight:600; height:auto; line-height:1.4; text-align:center; width:auto; z-index:1; justify-content:center; max-width:100%; }
.modal-menu__sd-40:hover .modal-menu__sd-41 { color:#000000; }
.modal-menu__sd-42 { background:#FFFFFF; bottom:0px; flex:none; height:100%; left:0px; margin:0; position:absolute; right:0px; scale:0 1; top:0px; transform-origin:center left; width:100%; z-index:0; max-width:100%; }
.modal-menu__sd-40:hover .modal-menu__sd-42 { scale:1 1; }
.modal-menu__sd-43 { align-content:flex-end; align-items:flex-end; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:space-between; padding:0px; width:100%; max-width:100%; }
.modal-menu__sd-44 { color:#333; font-family:var(--s-font-cda1e569); font-size:14px; font-weight:400; height:auto; line-height:0.9; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.modal-menu__sd-44:hover { color:#aaaaaa; --ha:1; }
.modal-menu__sd-45 { align-content:center; align-items:center; background:#000000; bottom:NaNpx; flex:none; flex-direction:column; flex-wrap:nowrap; height:100px; justify-content:center; left:NaNpx; margin:0; position:fixed; right:0px; top:0px; width:100px; z-index:2; }
.modal-menu__sd-45:hover { background:#888888; --ha:1; }
.modal-menu__sd-46 { flex:none; height:auto; width:40px; max-width:100%; }
.sd-2 { align-content:flex-end; align-items:flex-end; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; gap:0px; height:auto; justify-content:flex-start; padding:0px; width:100%; max-width:100%; }
.sd-2 > * { --gap-h:0px; --gap-v:0px; }
.sd-3 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; padding:100px 80px 0px; width:100%; max-width:100%; }
.sd-3.appear { opacity:0; transition-delay:400ms; transition-duration:800ms; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px 20px; }
.sd-4 { align-content:flex-start; align-items:flex-start; background:rgb(255, 255, 255); border-bottom:1px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:flex-start; margin:0px; padding:20px; width:1000px; max-width:100%; }
.sd-5 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px 0px 10px; width:100%; max-width:100%; }
.sd-6 { color:#666666; font-family:var(--s-font-f79ce552); font-size:16px; font-weight:400; margin:0px; max-width:100%; }
.list-1 { flex:1; flex-direction:row; flex-wrap:nowrap; margin:0px 0px 0px 10px; padding:0px; width:auto; max-width:calc(100% - 10px); }
.list-1__item { align-content:center; align-items:center; background:#FFFFFF; border-radius:16px; flex-direction:row; flex-wrap:nowrap; justify-content:center; margin:0px 6px 0px 0px; padding:4px 10px; max-width:calc(100% - 6px); }
.list-1__item:hover { background:#000000; --ha:1; }
.list-1__item__sd-1 { color:#575757; font-family:var(--s-font-daa8975e); font-size:15px; font-weight:400; margin:0px; max-width:100%; }
.list-1__item:hover .list-1__item__sd-1 { color:#FFFFFF; }
.sd-7 { color:#1a1a1aff; flex:none; font-family:var(--s-font-daa8975e); font-size:32px; font-weight:900; height:auto; line-height:1.5; margin:0px 0px; text-align:left; width:100%; justify-content:flex-start; max-width:100%; }
.sd-8 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; padding:0px 80px 140px; width:100%; max-width:100%; }
.sd-8.appear { opacity:0; transition-delay:400ms; transition-duration:800ms; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px 20px; }
.sd-9 { background:rgb(255, 255, 255); color:#000000; flex:none; font-family:var(--s-font-cda1e569); font-size:16px; font-weight:400; height:auto; line-height:1.8; margin:0px; padding:20px; text-align:left; width:1000px; max-width:100%; }
.richText.sd-9 > h1 { color:var(--s-color-ca9b3be3); font-family:var(--s-font-3f87abc1); font-size:28px; line-height:1.59; margin:48px 0px 16px; }
.richText.sd-9 > h2 { border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; color:var(--s-color-ca9b3be3); font-family:var(--s-font-3f87abc1); font-size:24px; line-height:1.6; margin:28px 0px 12px; padding:0px; }
.richText.sd-9 > h3 { font-family:var(--s-font-3f87abc1); font-size:20px; line-height:1.6; margin:32px 0px 16px; }
.richText.sd-9 > h4 { font-family:var(--s-font-daa8975e); font-size:20px; }
.richText.sd-9 > ol { font-family:var(--s-font-daa8975e); line-height:1.4; }
.richText.sd-9 > p { color:#333333ff; font-family:var(--s-font-3f87abc1); font-size:18px; letter-spacing:0.02em; line-height:1.9; }
.richText.sd-9 strong { font-family:var(--s-font-3f87abc1); font-size:18px; font-weight:600; letter-spacing:0.02em; line-height:1.9; }
.richText.sd-9 table { background:#FFFFFF; border-bottom:1px solid #c1cccb; border-left:1px solid #c1cccb; border-right:1px solid #c1cccb; border-top:1px solid #c1cccb; }
.richText.sd-9 th { background:#dbe1e1; font-family:var(--s-font-daa8975e); }
.richText.sd-9 > [data-type="table_of_contents"] { background:#FFFFFF; margin:0px 0px 40px; }
.richText.sd-9 > ul { font-family:var(--s-font-daa8975e); line-height:1.4; }
.sd-10 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:center; margin:40px 0px 0px; width:1000px; max-width:100%; }
.sd-11 { align-content:center; align-items:center; background:#575757; border-radius:32px; flex:none; flex-direction:column; flex-wrap:nowrap; height:60px; justify-content:center; width:280px; max-width:100%; }
.sd-11:hover { background:#000000; --ha:1; }
.sd-12 { color:#FFFFFF; font-family:var(--s-font-daa8975e); font-size:18px; font-weight:400; height:auto; line-height:1.4; text-align:center; width:auto; justify-content:center; max-width:100%; }
.sd-13 { align-content:flex-start; align-items:flex-start; background:#EEEEEE; border-bottom:0px solid #dbe1e1; border-left:0px solid #dbe1e1; border-right:0px solid #dbe1e1; border-top:1px solid #dbe1e1; flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:center; padding:20px 40px; width:100%; max-width:100%; }
.sd-14 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:flex-start; width:100%; max-width:100%; }
.sd-15 { color:#000000; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:400; height:auto; line-height:1; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.sd-15:hover { opacity:0.5; --ha:1; }
.sd-16 { color:#333; font-family:var(--s-font-cda1e569); font-size:14px; font-weight:400; height:auto; line-height:1.4; margin:0px 14px; text-align:center; width:auto; justify-content:center; max-width:calc(100% - 28px); }
.sd-17 { color:#000000; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:400; height:auto; line-height:1; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.sd-17:hover { opacity:0.5; --ha:1; }
.sd-18 { color:#333; font-family:var(--s-font-cda1e569); font-size:14px; font-weight:400; height:auto; line-height:1.4; margin:0px 14px; text-align:center; width:auto; justify-content:center; max-width:calc(100% - 28px); }
.sd-19 { color:#000000; font-family:var(--s-font-cda1e569); font-size:14px; font-weight:400; height:auto; line-height:1; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.symbol-2 { align-content:flex-end; align-items:flex-end; background:#dbe1e1; bottom:0px; flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:flex-end; left:NaNpx; margin:0; position:absolute; right:0px; top:NaNpx; width:calc(30% - (var(--gap-h) * 0.7)); z-index:-1; max-width:calc(30% - (var(--gap-h) * 0.7)); }
.symbol-3 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:wrap; height:300px; justify-content:flex-start; width:100%; max-width:100%; }
.symbol-3.appear { opacity:0; transition-delay:400ms; transition-duration:800ms; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px 20px; }
.symbol-3__sd-1 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; overflow-x:hidden; overflow-y:hidden; width:50%; max-width:50%; }
.symbol-3__sd-1:hover { opacity:1; --ha:1; }
.symbol-3__sd-2 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; left:0; margin:0; position:absolute; top:0; width:100%; z-index:1; max-width:100%; }
.symbol-3__sd-3 { color:#FFFFFF; flex:none; font-family:var(--s-font-f79ce552); font-size:54px; font-weight:600; height:auto; letter-spacing:0.05em; line-height:1; margin:0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.symbol-3__sd-4 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px; width:auto; max-width:100%; }
.symbol-3__sd-5 { background:#FFFFFF; flex:none; height:1px; margin:0px 10px 0px 0px; width:20px; max-width:calc(100% - 10px); }
.symbol-3__sd-6 { color:#FFFFFF; flex:1; font-family:var(--s-font-daa8975e); font-size:20px; font-weight:600; height:auto; line-height:1.4; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.symbol-3__sd-7 { align-content:center; align-items:center; flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; width:100%; max-width:100%; }
.symbol-3__sd-7 > .image__bg-container::before { filter:brightness(0.6); }
.symbol-3__sd-1:hover .symbol-3__sd-7 { scale:1.1 1.1; }
.symbol-3__sd-8 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; overflow-x:hidden; overflow-y:hidden; width:50%; max-width:50%; }
.symbol-3__sd-8:hover { opacity:1; --ha:1; }
.symbol-3__sd-9 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); display:flex; flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; left:0; margin:0; position:absolute; top:0; width:100%; z-index:1; max-width:100%; }
.symbol-3__sd-10 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; width:auto; max-width:100%; }
.symbol-3__sd-11 { color:#FFFFFF; flex:none; font-family:var(--s-font-f79ce552); font-size:54px; font-weight:600; height:auto; letter-spacing:0.05em; line-height:1; margin:0px 4px 0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:calc(100% - 4px); }
.symbol-3__sd-12 { color:#FFFFFF; font-size:20px; rotate:-30deg; z-index:0; }
.symbol-3__sd-13 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px; width:auto; max-width:100%; }
.symbol-3__sd-14 { background:#FFFFFF; flex:none; height:1px; margin:0px 10px 0px 0px; width:20px; max-width:calc(100% - 10px); }
.symbol-3__sd-15 { color:#FFFFFF; flex:1; font-family:var(--s-font-daa8975e); font-size:20px; font-weight:600; height:auto; line-height:1.4; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.symbol-3__sd-16 { align-content:center; align-items:center; flex:none; flex-direction:column; flex-wrap:nowrap; height:100%; justify-content:center; width:100%; max-width:100%; }
.symbol-3__sd-16 > .image__bg-container::before { filter:brightness(0.6); }
.symbol-3__sd-8:hover .symbol-3__sd-16 { scale:1.1 1.1; }
.symbol-4 { align-content:center; align-items:center; background:#c1cccb; flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:center; padding:50px 80px; width:100%; max-width:100%; }
.symbol-4.appear { opacity:0; transition-delay:400ms; transition-duration:800ms; transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95); translate:0px 20px; }
.symbol-4__sd-1 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px 50px 0px 0px; width:50%; max-width:50%; }
.symbol-4__sd-1:hover { opacity:1; --ha:1; }
.symbol-4__sd-2 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:flex-start; margin:0px 0px 20px; width:100%; max-width:100%; }
.symbol-4__sd-3 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:1; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; padding:0px 20px 0px 0px; width:auto; max-width:100%; }
.symbol-4__sd-4 { color:#000000; flex:none; font-family:var(--s-font-f79ce552); font-size:48px; font-weight:600; height:auto; letter-spacing:0.05em; line-height:1; margin:0px; text-align:left; width:100%; justify-content:flex-start; max-width:100%; }
.symbol-4__sd-1:hover .symbol-4__sd-4 { color:#FFFFFF; }
.symbol-4__sd-5 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px; width:100%; max-width:100%; }
.symbol-4__sd-6 { background:#000000; flex:none; height:1px; margin:0px 10px 0px 0px; width:20px; max-width:calc(100% - 10px); }
.symbol-4__sd-1:hover .symbol-4__sd-6 { background:#FFFFFF; }
.symbol-4__sd-7 { color:#000000; flex:1; font-family:var(--s-font-daa8975e); font-size:20px; font-weight:600; height:auto; line-height:1.4; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.symbol-4__sd-1:hover .symbol-4__sd-7 { color:#FFFFFF; }
.symbol-4__sd-8 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); border-bottom:0px solid #000; border-left:0px solid #000; border-radius:0; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:center; margin:0px; overflow-x:hidden; overflow-y:hidden; width:auto; max-width:100%; }
.symbol-4__sd-9 { align-content:center; align-items:center; background:#000000; border-radius:50%; flex:none; flex-direction:column; flex-wrap:nowrap; height:70px; justify-content:center; overflow-x:hidden; overflow-y:hidden; width:70px; max-width:100%; }
.symbol-4__sd-10 { background:#575757; border-radius:50%; bottom:0px; flex:none; height:100%; left:0px; margin:0; position:absolute; right:0px; scale:0 1; top:0px; transform-origin:center left; width:100%; z-index:0; max-width:100%; }
.symbol-4__sd-1:hover .symbol-4__sd-10 { scale:1 1; }
.symbol-4__sd-11 { color:#dbe1e1; font-size:20px; z-index:1; }
.symbol-4__sd-12 { color:#000000; flex:none; font-family:var(--s-font-cda1e569); font-size:16px; font-weight:400; height:auto; line-height:1.4; text-align:left; width:100%; justify-content:flex-start; max-width:100%; }
.symbol-4__sd-1:hover .symbol-4__sd-12 { color:#FFFFFF; }
.symbol-4__sd-13 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); border-bottom:0px dotted #575757; border-left:1px dotted #575757; border-right:0px dotted #575757; border-top:0px dotted #575757; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px 0px 0px 50px; width:50%; max-width:50%; }
.symbol-4__sd-13:hover { opacity:1; --ha:1; }
.symbol-4__sd-14 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:flex-start; margin:0px 0px 20px; width:100%; max-width:100%; }
.symbol-4__sd-15 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:1; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; padding:0px 20px 0px 0px; width:auto; max-width:100%; }
.symbol-4__sd-16 { color:#000000; flex:none; font-family:var(--s-font-f79ce552); font-size:48px; font-weight:600; height:auto; letter-spacing:0.05em; line-height:1; margin:0px; text-align:left; width:100%; justify-content:flex-start; max-width:100%; }
.symbol-4__sd-13:hover .symbol-4__sd-16 { color:#FFFFFF; }
.symbol-4__sd-17 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px; width:100%; max-width:100%; }
.symbol-4__sd-18 { background:#000000; flex:none; height:1px; margin:0px 10px 0px 0px; width:20px; max-width:calc(100% - 10px); }
.symbol-4__sd-13:hover .symbol-4__sd-18 { background:#FFFFFF; }
.symbol-4__sd-19 { color:#000000; flex:1; font-family:var(--s-font-daa8975e); font-size:20px; font-weight:600; height:auto; line-height:1.4; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.symbol-4__sd-13:hover .symbol-4__sd-19 { color:#FFFFFF; }
.symbol-4__sd-20 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); border-bottom:0px solid #000; border-left:0px solid #000; border-radius:0; border-right:0px solid #000; border-top:0px solid #000; flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:center; margin:0px; overflow-x:hidden; overflow-y:hidden; width:auto; max-width:100%; }
.symbol-4__sd-21 { align-content:center; align-items:center; background:#000000; border-radius:50%; flex:none; flex-direction:column; flex-wrap:nowrap; height:70px; justify-content:center; overflow-x:hidden; overflow-y:hidden; width:70px; max-width:100%; }
.symbol-4__sd-22 { background:#575757; border-radius:50%; bottom:0px; flex:none; height:100%; left:0px; margin:0; position:absolute; right:0px; scale:0 1; top:0px; transform-origin:center left; width:100%; z-index:0; max-width:100%; }
.symbol-4__sd-13:hover .symbol-4__sd-22 { scale:1 1; }
.symbol-4__sd-23 { color:#dbe1e1; font-size:20px; rotate:-30deg; z-index:1; }
.symbol-4__sd-24 { color:#000000; flex:none; font-family:var(--s-font-cda1e569); font-size:16px; font-weight:400; height:auto; line-height:1.4; text-align:left; width:100%; justify-content:flex-start; max-width:100%; }
.symbol-4__sd-13:hover .symbol-4__sd-24 { color:#FFFFFF; }
.symbol-5 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; overflow-x:visible; overflow-y:visible; padding:50px 80px 30px; width:100%; max-width:100%; }
.symbol-5__sd-1 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:space-between; margin:0px 0px 50px; padding:0px 0px; width:100%; max-width:100%; }
.symbol-5__sd-2 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px 80px 0px 0px; width:auto; max-width:calc(100% - 80px); }
.symbol-5__sd-3 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; width:auto; max-width:100%; }
.symbol-5__sd-3:hover { opacity:0.7; --ha:1; }
.symbol-5__sd-4 { flex:none; height:auto; width:250px; max-width:100%; }
.symbol-5__sd-5 { color:#333; font-family:var(--s-font-daa8975e); font-size:18px; font-weight:400; height:auto; line-height:1.4; margin:20px 0px 0px; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-5__sd-6 { color:#333; font-family:var(--s-font-cda1e569); font-size:15px; font-weight:400; height:auto; line-height:1.4; margin:10px 0px 0px; text-align:left; width:auto; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-7 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; width:auto; max-width:100%; }
.symbol-5__sd-8 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px 60px 0px 0px; padding:0px; width:auto; max-width:calc(100% - 60px); }
.symbol-5__sd-9 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-9:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-10 { color:#333; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:500; height:auto; line-height:1; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-11 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:20px 0px 0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-11:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-12 { color:#333; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:500; height:auto; line-height:1; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-13 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:20px 0px 0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-13:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-14 { color:#333; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:500; height:auto; line-height:1; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-15 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:20px 0px 0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-15:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-16 { color:#333; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:500; height:auto; line-height:1; margin:0px 2px 0px 0px; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:calc(100% - 2px); }
.symbol-5__sd-17 { color:#333; font-size:14px; rotate:-30deg; z-index:0; }
.symbol-5__sd-18 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:20px 0px 0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-18:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-19 { color:#333; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:500; height:auto; line-height:1; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-20 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; gap:0px; height:auto; justify-content:flex-start; margin:0px 60px 0px 0px; padding:0px; width:auto; max-width:calc(100% - 60px); }
.symbol-5__sd-20 > * { --gap-h:0px; --gap-v:0px; }
.symbol-5__sd-21 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-21:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-22 { color:#333; font-family:var(--s-font-f79ce552); font-size:20px; font-weight:500; height:auto; line-height:1; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-23 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:20px 0px 0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-23:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-24 { background:#c1cccb; flex:none; height:1px; margin:0px 6px 0px 0px; width:10px; max-width:calc(100% - 6px); }
.symbol-5__sd-25 { color:#333; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:500; height:auto; line-height:1.2; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-26 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:20px 0px 0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-26:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-27 { background:#c1cccb; flex:none; height:1px; margin:0px 6px 0px 0px; width:10px; max-width:calc(100% - 6px); }
.symbol-5__sd-28 { color:#333; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:500; height:auto; line-height:1.2; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-29 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:14px 0px 0px; padding:0px; width:auto; max-width:100%; }
.symbol-5__sd-29:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-30 { background:#c1cccb; flex:none; height:1px; margin:0px 6px 0px 0px; width:10px; max-width:calc(100% - 6px); }
.symbol-5__sd-31 { color:#333; font-family:var(--s-font-daa8975e); font-size:14px; font-weight:500; height:auto; line-height:1.2; text-align:left; width:auto; z-index:1; justify-content:flex-start; max-width:100%; }
.symbol-5__sd-32 { align-content:flex-start; align-items:flex-start; background:rgba(0,0,0,0.0); flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:-12px 0px 0px; width:auto; max-width:100%; }
.symbol-5__sd-33 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); flex:none; flex-direction:row; flex-wrap:nowrap; height:auto; justify-content:center; width:auto; max-width:100%; }
.symbol-5__sd-33:hover { opacity:1; --ha:1; }
.symbol-5__sd-34 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); border-radius:50%; flex:none; flex-direction:column; flex-wrap:nowrap; height:auto; justify-content:flex-start; margin:0px 8px 0px 0px; width:auto; max-width:calc(100% - 8px); }
.symbol-5__sd-33:hover .symbol-5__sd-34 { background:#c1cccb; }
.symbol-5__sd-35 { background:rgba(0,0,0,0.0); color:#333; flex:none; font-size:24px; height:44px; padding:0px; width:44px; max-width:100%; }
.symbol-5__sd-36 { color:#333; font-family:var(--s-font-f79ce552); font-size:16px; font-weight:500; height:auto; line-height:1.4; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-5__sd-33:hover .symbol-5__sd-36 { opacity:0.5; }
.symbol-5__sd-37 { align-content:center; align-items:center; background:rgba(0,0,0,0.0); border-bottom:0px solid #dbe1e1; border-left:0px solid #dbe1e1; border-right:0px solid #dbe1e1; border-top:1px solid #dbe1e1; flex:none; flex-direction:row; flex-wrap:wrap; height:auto; justify-content:space-between; padding:30px 0px 0px; width:100%; max-width:100%; }
.symbol-5__sd-38 { color:#000000; font-family:var(--s-font-cda1e569); font-size:14px; font-weight:400; height:auto; line-height:1.4; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-5__sd-38:hover { opacity:0.5; --ha:1; }
.symbol-5__sd-39 { color:#575757; font-family:var(--s-font-f79ce552); font-size:12px; font-weight:400; height:auto; line-height:1.4; text-align:center; width:auto; justify-content:center; max-width:100%; }
.symbol-6 { align-content:center; align-items:center; background:#FFFFFF; border-radius:50%; bottom:auto; box-shadow:4px 4px 10px rgba(0, 0, 0, 0.1); flex-direction:column; flex-wrap:nowrap; height:50px; justify-content:center; left:auto; margin:0; position:absolute; right:15px; top:-25px; width:50px; }
.symbol-6:hover { background:#000000; --ha:1; }
.symbol-6__sd-1 { color:#333; font-size:20px; }
.symbol-6:hover .symbol-6__sd-1 { color:#FFFFFF; }
@media (max-width: 1140px) {
.symbol-1 { display:flex; }
.symbol-1 > * { --gap-h:0px; --gap-v:0px; }
.symbol-1.appear > * { --gap-h:0px; --gap-v:0px; }
.symbol-1__sd-1 { flex:none; width:200px; max-width:100%; }
.symbol-1__sd-5 { margin:0px 20px 0px 0px; max-width:calc(100% - 20px); height:100%; }
.symbol-1__sd-9 { margin:0px 20px 0px 0px; max-width:calc(100% - 20px); height:100%; }
.symbol-1__sd-13 { margin:0px 14px 0px 0px; max-width:calc(100% - 14px); height:100%; }
.symbol-1__sd-17 { margin:0px 14px 0px 0px; max-width:calc(100% - 14px); height:100%; }
.symbol-1__sd-21 { margin:0px 14px 0px 0px; max-width:calc(100% - 14px); height:100%; }
.symbol-1__sd-25 { margin:0px 16px 0px 0px; max-width:calc(100% - 16px); height:100%; }
.symbol-1__sd-28 { display:flex; }
.symbol-1__sd-30 { display:flex; }
.symbol-1__sd-31 { display:flex; flex:none; width:90px; max-width:100%; }
.symbol-1__sd-32 { margin:0px 0px 0px 4px; max-width:calc(100% - 4px); }
.symbol-1__sd-35 { flex:none; padding:0px 14px; width:90px; max-width:100%; }
.symbol-1__sd-36 { line-height:1.2; }
.symbol-1__sd-37 { display:none; }
.modal-menu__sd-14:hover { opacity:1; --ha:1; }
.modal-menu__sd-14:hover .modal-menu__sd-16 { color:#c1cccb; }
.modal-menu__sd-17:hover { opacity:1; --ha:1; }
.modal-menu__sd-17:hover .modal-menu__sd-19 { color:#c1cccb; }
.modal-menu__sd-20:hover { opacity:1; --ha:1; }
.modal-menu__sd-20:hover .modal-menu__sd-22 { color:#c1cccb; }
.symbol-3__sd-9 { display:flex; }
.symbol-4 { padding:50px 40px; }
.symbol-4__sd-4 { font-size:40px; }
.symbol-4__sd-16 { font-size:40px; }
.symbol-5 { padding:50px 40px 30px; }
.symbol-5__sd-2 { margin:0px 80px 40px 0px; max-width:calc(100% - 80px); }
.symbol-5__sd-9:hover { opacity:1; --ha:1; }
.symbol-5__sd-9:hover .symbol-5__sd-10 { color:#c1cccb; }
.symbol-5__sd-11:hover { opacity:1; --ha:1; }
.symbol-5__sd-11:hover .symbol-5__sd-12 { color:#c1cccb; }
.symbol-5__sd-13:hover { opacity:1; --ha:1; }
.symbol-5__sd-13:hover .symbol-5__sd-14 { color:#c1cccb; }
.symbol-5__sd-15:hover { opacity:1; --ha:1; }
.symbol-5__sd-15:hover .symbol-5__sd-16 { color:#c1cccb; }
.symbol-5__sd-18:hover { opacity:1; --ha:1; }
.symbol-5__sd-18:hover .symbol-5__sd-19 { color:#c1cccb; }
.symbol-5__sd-21:hover { opacity:1; --ha:1; }
.symbol-5__sd-21:hover .symbol-5__sd-22 { color:#c1cccb; }
.symbol-5__sd-23:hover { opacity:1; --ha:1; }
.symbol-5__sd-23:hover .symbol-5__sd-25 { color:#c1cccb; }
.symbol-5__sd-26:hover { opacity:1; --ha:1; }
.symbol-5__sd-26:hover .symbol-5__sd-28 { color:#c1cccb; }
.symbol-5__sd-29:hover { opacity:1; --ha:1; }
.symbol-5__sd-29:hover .symbol-5__sd-31 { color:#c1cccb; }
.symbol-5__sd-36 { display:none; }
}
@media (max-width: 840px) {
.symbol-1 { display:flex; padding:0px 0px 0px 30px; }
.symbol-1 > * { --gap-h:0px; --gap-v:0px; }
.symbol-1.appear > * { --gap-h:0px; --gap-v:0px; }
.symbol-1__sd-4 { display:none; }
.symbol-1__sd-28 { display:flex; }
.symbol-1__sd-30 { display:flex; }
.symbol-1__sd-31 { display:flex; flex:none; width:100px; max-width:100%; }
.symbol-1__sd-35 { flex:none; padding:0px 10px; width:120px; max-width:100%; }
.symbol-1__sd-37 { display:none; }
.symbol-1__sd-39 { display:flex; }
.symbol-1__sd-40 { flex:none; }
.modal-menu__sd-1 { padding:100px 60px; }
.modal-menu__sd-2 { flex:none; margin:0px 0px; width:100%; max-width:100%; }
.modal-menu__sd-5 { flex:none; flex-direction:column; flex-wrap:nowrap; width:100%; max-width:100%; }
.modal-menu__sd-6 { flex:none; flex-direction:row; margin:0px; width:100%; max-width:100%; }
.modal-menu__sd-7 { flex:none; flex-direction:column; flex-wrap:nowrap; padding:0px 40px 0px 0px; width:50%; max-width:50%; }
.modal-menu__sd-8 { border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; padding:0px; }
.modal-menu__sd-11 { border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; padding:0px; }
.modal-menu__sd-23 { flex:none; flex-direction:column; flex-wrap:nowrap; padding:0px 0px 0px 20px; width:50%; max-width:50%; }
.modal-menu__sd-24 { border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; padding:0px; }
.modal-menu__sd-27 { border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; padding:0px; }
.modal-menu__sd-32 { border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; padding:0px; }
.modal-menu__sd-35 { align-content:center; align-items:center; border-bottom:0px solid #c1cccb; border-left:0px solid #c1cccb; border-right:0px solid #c1cccb; border-top:1px solid #c1cccb; flex:none; justify-content:flex-start; margin:30px 0px; padding:30px 0px 0px; width:100%; max-width:100%; }
.modal-menu__sd-36 { flex:none; width:240px; max-width:100%; }
.modal-menu__sd-40 { flex:none; width:240px; max-width:100%; }
.sd-3 { padding:100px 0px 40px; }
.sd-4 { flex-direction:column; flex-wrap:nowrap; margin:0px 50px; padding:0px 0px 40px; max-width:calc(100% - 100px); }
.sd-6 { font-size:12px; }
.list-1__item__sd-1 { font-size:12px; }
.sd-8 { padding:0px 50px 140px; }
.richText.sd-9 > [data-type="table_of_contents"] { margin:0px 0px 40px; }
.symbol-3__sd-9 { display:flex; }
.symbol-4 { padding:50px; }
.symbol-4__sd-1 { flex:none; margin:0px 0px 40px; padding:0px; width:100%; max-width:100%; }
.symbol-4__sd-10 { flex:none; height:100%; width:100%; max-width:100%; }
.symbol-4__sd-13 { border-bottom:0px dotted #575757; border-left:0px dotted #575757; border-right:0px dotted #575757; border-top:1px dotted #575757; flex:none; margin:0px; padding:40px 0px 0px; width:100%; max-width:100%; }
.symbol-4__sd-22 { flex:none; height:100%; width:100%; max-width:100%; }
.symbol-5 { padding:50px 50px 30px; }
.symbol-5__sd-1 { align-content:center; align-items:center; flex-direction:column; flex-wrap:nowrap; justify-content:center; }
.symbol-5__sd-2 { margin:0px 0px 40px; max-width:100%; }
.symbol-5__sd-7 { align-content:flex-start; align-items:flex-start; border-bottom:0px solid #c1cccb; border-left:0px solid #c1cccb; border-right:0px solid #c1cccb; border-top:1px solid #c1cccb; flex:none; justify-content:center; padding:50px 0px 0px; width:100%; max-width:100%; }
.symbol-5__sd-32 { flex:none; flex-direction:column; flex-wrap:nowrap; justify-content:center; padding:0px; }
.symbol-5__sd-34 { margin:0px; max-width:100%; }
.symbol-5__sd-36 { display:none; }
}
@media (max-width: 540px) {
.sd-1 { padding:60px 0px 0px; }
.symbol-1 { display:flex; flex:none; height:60px; padding:0px 0px 0px 14px; }
.symbol-1 > * { --gap-h:0px; --gap-v:0px; }
.symbol-1.appear > * { --gap-h:0px; --gap-v:0px; }
.symbol-1__sd-1 { flex:none; width:200px; max-width:100%; }
.symbol-1__sd-4 { display:none; }
.symbol-1__sd-28 { display:flex; }
.symbol-1__sd-30 { display:flex; flex:none; }
.symbol-1__sd-31 { display:none; }
.symbol-1__sd-35 { flex:none; width:60px; max-width:100%; }
.symbol-1__sd-36 { display:none; font-size:16px; }
.symbol-1__sd-37 { display:flex; flex:none; width:30px; z-index:1; max-width:100%; }
.symbol-1__sd-35:hover .symbol-1__sd-38 { background:#000000; }
.symbol-1__sd-39 { display:flex; flex:none; height:100%; width:60px; max-width:100%; }
.symbol-1__sd-40 { flex:none; width:36px; max-width:100%; }
.modal-menu__container { align-content:center; align-items:center; flex-direction:column; flex-wrap:nowrap; justify-content:center; }
.modal-menu__sd-1 { justify-content:flex-start; padding:60px 30px; }
.modal-menu__sd-2 { margin:0px 0px; width:100%; max-width:100%; }
.modal-menu__sd-4 { flex:none; width:210px; max-width:100%; }
.modal-menu__sd-5 { flex-direction:row; flex-wrap:wrap; }
.modal-menu__sd-6 { flex:none; flex-direction:row; margin:0px; width:100%; max-width:100%; }
.modal-menu__sd-7 { flex:none; margin:0px; padding:0px; width:50%; max-width:50%; }
.modal-menu__sd-9 { font-size:28px; margin:0px; max-width:100%; }
.modal-menu__sd-11 { margin:24px 0px 0px; max-width:100%; }
.modal-menu__sd-12 { font-size:28px; margin:0px; max-width:100%; }
.modal-menu__sd-14 { flex:none; padding:0px 10px 0px 0px; width:100%; max-width:100%; }
.modal-menu__sd-15 { display:none; }
.modal-menu__sd-16 { flex:1; font-size:13px; width:auto; max-width:100%; }
.modal-menu__sd-17 { flex:none; padding:0px 10px 0px 0px; width:100%; max-width:100%; }
.modal-menu__sd-18 { display:none; }
.modal-menu__sd-19 { flex:1; font-size:13px; width:auto; max-width:100%; }
.modal-menu__sd-20 { flex:none; padding:0px 10px 0px 0px; width:100%; max-width:100%; }
.modal-menu__sd-21 { display:none; }
.modal-menu__sd-22 { flex:1; font-size:13px; width:auto; max-width:100%; }
.modal-menu__sd-23 { flex:none; margin:0px; padding:0px 0px 0px 20px; width:50%; max-width:50%; }
.modal-menu__sd-24 { margin:0px; max-width:100%; }
.modal-menu__sd-25 { font-size:28px; margin:0px; max-width:100%; }
.modal-menu__sd-27 { margin:24px 0px 0px; max-width:100%; }
.modal-menu__sd-29 { font-size:28px; margin:0px; max-width:100%; }
.modal-menu__sd-32 { margin:24px 0px 0px; max-width:100%; }
.modal-menu__sd-33 { font-size:28px; margin:0px; max-width:100%; }
.modal-menu__sd-35 { align-content:center; align-items:center; flex:none; flex-direction:column; flex-wrap:nowrap; justify-content:flex-start; }
.modal-menu__sd-36 { display:flex; flex:none; gap:0px; }
.modal-menu__sd-36 > * { --gap-h:0px; --gap-v:0px; }
.modal-menu__sd-36:hover > * { --gap-h:0px; --gap-v:0px; }
.modal-menu__sd-40 { flex:none; }
.modal-menu__sd-41 { font-size:16px; }
.modal-menu__sd-44 { font-size:13px; }
.modal-menu__sd-45 { flex:none; height:60px; width:60px; }
.modal-menu__sd-46 { flex:none; width:24px; max-width:100%; }
.sd-2 { padding:0px; }
.sd-2 > * { --gap-h:0px; --gap-v:0px; }
.sd-3 { padding:80px 0px 40px; }
.sd-4 { flex:none; margin:0px 30px; padding:0px 0px 20px; max-width:calc(100% - 60px); }
.sd-5 { padding:20px 0px 0px 20px; }
.sd-7 { color:var(--s-color-ca9b3be3); font-size:24px; padding:0px 20px; }
.sd-8 { padding:0px 30px 140px; }
.sd-9 { font-size:15px; }
.richText.sd-9 > h2 { border-bottom:0px solid #000; border-left:0px solid #000; border-right:0px solid #000; border-top:0px solid #000; color:var(--s-color-ca9b3be3); font-size:20px; line-height:1.5; padding:0px; }
.richText.sd-9 > h3 { font-size:18px; line-height:1.5; margin:24px 0px 12px; }
.richText.sd-9 > p { font-size:16px; letter-spacing:0.01em; line-height:1.8; }
.richText.sd-9 strong { font-family:var(--s-font-3f87abc1); font-size:16px; font-weight:600; letter-spacing:0.01em; }
.sd-11 { flex:none; height:50px; width:240px; max-width:100%; }
.sd-12 { font-size:16px; }
.sd-13 { padding:14px 20px; }
.sd-14 { flex-direction:row; flex-wrap:wrap; }
.sd-15 { font-size:12px; }
.sd-16 { font-size:12px; margin:0px 10px; max-width:calc(100% - 20px); }
.sd-17 { font-size:12px; }
.sd-18 { font-size:12px; margin:0px 10px; max-width:calc(100% - 20px); }
.sd-19 { font-size:12px; }
.symbol-2 { flex:none; width:60px; }
.symbol-3 { flex:none; flex-direction:column; flex-wrap:nowrap; height:340px; }
.symbol-3__sd-1 { flex:none; height:50%; width:100%; max-width:100%; }
.symbol-3__sd-3 { font-size:36px; }
.symbol-3__sd-6 { font-size:16px; }
.symbol-3__sd-8 { flex:none; height:50%; width:100%; max-width:100%; }
.symbol-3__sd-9 { display:flex; }
.symbol-3__sd-11 { font-size:36px; }
.symbol-3__sd-15 { font-size:16px; }
.symbol-4 { padding:40px 30px; }
.symbol-4__sd-1 { margin:0px 0px 30px; width:100%; max-width:100%; }
.symbol-4__sd-4 { font-size:36px; }
.symbol-4__sd-7 { font-size:16px; }
.symbol-4__sd-8 { flex:none; }
.symbol-4__sd-9 { flex:none; height:50px; width:50px; max-width:100%; }
.symbol-4__sd-12 { font-size:14px; line-height:1.6; }
.symbol-4__sd-13 { padding:30px 0px 0px; }
.symbol-4__sd-16 { font-size:36px; }
.symbol-4__sd-19 { font-size:16px; }
.symbol-4__sd-20 { flex:none; }
.symbol-4__sd-21 { flex:none; height:50px; width:50px; max-width:100%; }
.symbol-4__sd-24 { font-size:14px; line-height:1.6; }
.symbol-5 { padding:50px 30px 30px; }
.symbol-5__sd-1 { justify-content:center; margin:0px 0px 20px; width:100%; max-width:100%; }
.symbol-5__sd-4 { flex:none; width:220px; max-width:100%; }
.symbol-5__sd-5 { font-size:16px; }
.symbol-5__sd-6 { font-size:13px; }
.symbol-5__sd-7 { align-content:flex-start; align-items:flex-start; flex-direction:row; flex-wrap:wrap; justify-content:flex-start; padding:30px 0px 0px; }
.symbol-5__sd-8 { flex:none; margin:0px; padding:0px; width:50%; max-width:50%; }
.symbol-5__sd-20 { flex:none; margin:0px; padding:0px; width:50%; max-width:50%; }
.symbol-5__sd-20 > * { --gap-h:0px; --gap-v:0px; }
.symbol-5__sd-23 { flex:none; width:100%; max-width:100%; }
.symbol-5__sd-25 { flex:1; width:auto; max-width:100%; }
.symbol-5__sd-26 { flex:none; width:100%; max-width:100%; }
.symbol-5__sd-28 { flex:1; width:auto; max-width:100%; }
.symbol-5__sd-29 { flex:none; width:100%; max-width:100%; }
.symbol-5__sd-31 { flex:1; width:auto; max-width:100%; }
.symbol-5__sd-32 { border-bottom:0px solid #c1cccb; border-left:0px solid #c1cccb; border-right:0px solid #c1cccb; border-top:1px solid #c1cccb; flex:none; flex-direction:row; flex-wrap:nowrap; margin:30px 0px 0px; padding:20px 0px 0px; width:100%; max-width:100%; }
.symbol-5__sd-34 { margin:0px 2px 0px 0px; max-width:calc(100% - 2px); }
.symbol-5__sd-35 { flex:none; height:43px; width:43px; max-width:100%; }
.symbol-5__sd-36 { display:none; font-size:16px; }
.symbol-5__sd-37 { align-content:center; align-items:center; flex-direction:column; flex-wrap:nowrap; justify-content:flex-start; }
.symbol-5__sd-38 { font-size:13px; margin:0px 0px 30px; max-width:100%; }
.symbol-5__sd-39 { font-size:10px; }
}
@media (max-width: 320px) {
.symbol-1 { display:flex; }
.symbol-1 > * { --gap-h:0px; --gap-v:0px; }
.symbol-1.appear > * { --gap-h:0px; --gap-v:0px; }
.symbol-1__sd-1 { flex:none; width:160px; max-width:100%; }
.symbol-1__sd-30 { display:flex; }
.symbol-1__sd-31 { display:flex; }
.symbol-1__sd-35 { flex:none; width:50px; max-width:100%; }
.symbol-1__sd-37 { flex:none; width:26px; max-width:100%; }
.symbol-1__sd-39 { flex:none; width:50px; max-width:100%; }
.symbol-1__sd-40 { flex:none; width:30px; max-width:100%; }
.modal-menu__sd-1 { padding:60px 24px; }
.modal-menu__sd-9 { font-size:24px; }
.modal-menu__sd-10 { font-size:13px; }
.modal-menu__sd-12 { font-size:24px; }
.modal-menu__sd-13 { font-size:13px; }
.modal-menu__sd-25 { font-size:24px; }
.modal-menu__sd-26 { font-size:13px; }
.modal-menu__sd-29 { font-size:24px; }
.modal-menu__sd-31 { font-size:13px; }
.modal-menu__sd-33 { font-size:24px; }
.modal-menu__sd-34 { font-size:13px; }
}
.appear { opacity: 1 !important; translate: 0 0 !important; }
.symbol-1__sd-34,.symbol-1__sd-38,.modal-menu__sd-39,.modal-menu__sd-42,.symbol-4__sd-10,.symbol-4__sd-22 { display: none !important; }