@charset "UTF-8";
/* ブロックレイアウト */
.static-block {
  padding: 16px;
  border: 1px solid var(--c-line_primary);
  border-radius: 8px;
  background-color: var(--c-background_1);
}

/* ボタン */
.static-button {
  display: grid;
  transition: var(--transition-base);
  border-radius: 4px;
  font-size: var(--font-size-base);
  font-weight: 700;
  line-height: 1.5;
  place-content: center;
  text-align: center;
}
.static-button.--primary {
  /* プライマリーカラー */
  position: relative;
  z-index: 0;
  padding: 12px 16px;
  overflow: hidden;
  background: var(--c-background-grad_primary);
  color: var(--c-font_3);
}
.static-button.--primary::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition: opacity var(--transition-base);
  opacity: 0;
  background: var(--c-primary);
}
.static-button.--primary:hover::before {
  opacity: 1;
}
.static-button.--primary:disabled, .static-button.--primary.--disabled {
  opacity: 0.4;
  pointer-events: none;
}
.static-button.--secondary {
  /* セカンダリカラー */
  padding: 11px 15px;
  border: 1px solid var(--c-font_1);
  background-color: var(--c-background_1);
}
.static-button.--secondary:hover {
  background-color: var(--c-background_5);
}
.static-button.--block {
  /* ブロックボタン、幅100% */
  display: block;
  width: 100%;
}
.static-button.--right {
  /* 右配置 */
  margin-left: auto;
}

.static-image {
  max-width: 100%;
}
.static-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.static-image .static-image-caption {
  margin-top: 8px;
  font-size: var(--font-size-base);
  line-height: 1.5;
}

/* テキストリンク */
.static-link {
  display: inline-block;
  transition: opacity var(--transition-base);
  font-size: var(--font-size-base);
  line-height: 1.5;
}
.static-link:hover {
  opacity: 0.6;
}
.static-link.--border {
  /* 下線付き */
  text-decoration: underline;
}
.static-link.--color {
  /* 青字 */
  color: var(--c-link);
}
.static-link.--color.--icon::before {
  background-color: var(--c-link);
}
.static-link.--icon {
  /* アイコン */
  position: relative;
  padding-left: 24px;
}
.static-link.--icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  background-color: var(--c-font_1);
  mask-position: center center;
  mask-size: 16px 16px;
  mask-repeat: no-repeat;
}
.static-link.--icon.-sample::before {
  mask-image: url("/contents/common/image/icon_sample.svg");
}
.static-link.--anchor {
  /* アンカーリンク */
  position: relative;
  padding-left: 24px;
}
.static-link.--anchor::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  background-color: var(--c-font_1);
  mask-position: center center;
  mask-size: 16px 16px;
  mask-repeat: no-repeat;
  mask-image: url("/contents/common/image/icon_anchor-link.svg");
}

/* リスト */
.static-list {
  display: grid;
  gap: 4px;
  font-size: var(--font-size-base);
  line-height: 1.5;
  counter-reset: list-counter;
}
.static-list-item {
  position: relative;
  padding-left: 16px;
}
.static-list-item::before {
  position: absolute;
}
.static-list:not(.--num) .static-list-item::before {
  /* 順序無し */
  content: "";
  top: 8.5px;
  left: 6px;
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background-color: #000;
  font-weight: normal;
}
.static-list.--num {
  /* 順序有り */
}
.static-list.--num .static-list-item {
  counter-increment: list-counter;
}
.static-list.--num .static-list-item::before {
  content: counter(list-counter) ".";
  top: 0;
  left: 1.5px;
  font-family: var(--font-base);
  font-weight: bold;
}

/* セクション */
.static-section {
  padding: 16px;
  border-radius: 8px;
  background: var(--c-background_1);
}
.static-section + .static-section {
  margin-top: 8px;
}
@media (min-width: 768px) {
  .static-section {
    padding: 0;
  }
  .static-section + .static-section {
    margin-top: 64px;
  }
}

/* テーブル */
.static-table-wrapper {
  width: 100%;
  overflow-x: auto;
}

.static-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border: 1px solid var(--c-line_primary);
  border-radius: 8px;
}
.static-table th,
.static-table td {
  /* 各セルの調整 */
  width: 113px;
  padding: 16px;
  text-align: left;
}
@media (min-width: 768px) {
  .static-table th,
  .static-table td {
    width: 180px;
  }
}
.static-table th {
  background-color: var(--c-background_3);
}
.static-table td {
  background-color: var(--c-background_1);
}
.static-table.--vertical th:not(:last-of-type),
.static-table.--vertical td:not(:last-of-type) {
  border-right: 1px solid var(--c-line_primary);
}
.static-table.--vertical .static-table-head th {
  border-bottom: 1px solid var(--c-line_primary);
}
.static-table.--vertical .static-table-head tr:first-of-type th:first-of-type {
  border-radius: 8px 0 0 0;
}
.static-table.--vertical .static-table-head tr:first-of-type th:last-of-type {
  border-radius: 0 8px 0 0;
}
.static-table.--vertical .static-table-body tr:last-of-type td:first-of-type {
  border-radius: 0 0 0 8px;
}
.static-table.--vertical .static-table-body tr:last-of-type td:last-of-type {
  border-radius: 0 0 8px 0;
}
.static-table.--vertical .static-table-body tr:not(:first-of-type) td {
  border-top: 1px solid var(--c-line_primary);
}
.static-table.--horizontal tr:not(:first-of-type) th,
.static-table.--horizontal tr:not(:first-of-type) td {
  border-top: 1px solid var(--c-line_primary);
}
.static-table.--horizontal tr:first-of-type th {
  border-radius: 8px 0 0 0;
}
.static-table.--horizontal tr:first-of-type td:last-of-type {
  border-radius: 0 8px 0 0;
}
.static-table.--horizontal tr:last-of-type th {
  border-radius: 0 0 0 8px;
}
.static-table.--horizontal tr:last-of-type td:last-of-type {
  border-radius: 0 0 8px 0;
}
.static-table.--horizontal tr th {
  border-right: 1px solid var(--c-line_primary);
}
.static-table.--horizontal tr td:not(:last-of-type) {
  border-right: 1px solid var(--c-line_primary);
}

/* テキスト */
.static-text {
  font-size: var(--font-size-base);
  line-height: 1.5;
}
.static-text strong,
.static-text .static-strong {
  /* 強調テキスト */
  color: var(--c-primary);
  font-weight: 700;
}

/* タイトル */
.static-title {
  line-height: 1.5;
}
.static-title.--size-1 {
  /* サイズ-1 */
  font-size: var(--font-size-x-large);
}
.static-title.--size-2 {
  /* サイズ-2 */
  font-size: var(--font-size-large);
}
.static-title.--size-3 {
  /* サイズ-3 */
  font-size: var(--font-size-medium);
}
.static-title.--size-4 {
  /* サイズ-4 */
  font-size: var(--font-size-base);
}
.static-title.--border {
  /* ライン付き */
  padding-bottom: 12px;
  border-bottom: 2px solid var(--c-line_primary);
}
.static-title.--bg {
  /* 背景付き */
  padding: 8px 16px;
  background-color: var(--c-background-form-section-heading);
}