/* ============================================
   c-heading-05 - Text + Ornament + Line Heading
   テキスト + オーナメント + ライン（片側）
   デフォルト: テキスト左 → オーナメント → ライン右
   --right:    ライン左 → オーナメント → テキスト右
   ============================================ */
.c-heading-05 {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  font-size: var(--font-size-2-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
  letter-spacing: var(--letter-spacing-wide);
  margin-block-start: var(--space-7-xl) !important;
  margin-block-end: var(--space-4-xl) !important;
}

/* デフォルト: テキスト左、ライン右 */
.c-heading-05::after {
  content: "";
  flex: 1;
  height: 13px;
  min-width: var(--space-6-xl);
  background:
    url("../../images/icon/icon--ot-02.svg") left center / 14px 13px no-repeat,
    linear-gradient(var(--color-primary-light), var(--color-primary-light)) 18px 50% / calc(100% - 18px) 1px no-repeat;
}

/* --right: テキスト右、ライン左 */
.c-heading-05--right {
  flex-direction: row-reverse;
}

.c-heading-05--right::after {
  background:
    url("../../images/icon/icon--ot-03.svg") right center / 14px 13px no-repeat,
    linear-gradient(var(--color-primary-light), var(--color-primary-light)) 0 50% / calc(100% - 18px) 1px no-repeat;
}

@container (max-width: 599px) {
  .c-heading-05 {
    font-size: var(--font-size-xl);
  }

  .c-heading-05::after {
    min-width: var(--space-3-xl);
    background-size: 11px 10px, calc(100% - 14px) 1px;
  }
}
