/*
 * 可読性改善 共通タイポグラフィ定義（2026-09）
 *
 * 何のためか:
 *   本文系の文字色・太さ・PC表示サイズを、ページ別ではなく意味上の役割ごとに1か所へ集約するため。
 * 対象の決め方:
 *   2026-09-03に本番(v1.11.7 = 377ff36)で実測した76スタイルを、DOM構造で区分したもの。
 *   見出しかどうかはタグ(h1〜h6)で判定している。クラス名では判定していない。
 *   対象サイトでは .title が h3.title(見出し)と p.title(本文段落)の両方に使われており、
 *   クラス名で判定すると本文段落を見出しと誤認するためである。
 * 適用しないもの:
 *   同じセレクタに一致しても、有彩色・白・ヘッダー/ナビ内・操作部品・リンク・
 *   Noto Serif JP以外・現行700 の文字は対象外である。
 *   実DOMで機械判定し、切り分けをセレクタへ織り込んである(判定の詳細は制作元の記録にあり、
 *   本リポジトリでは実装コミット f438826・詳細度補強コミット 57073f1 で追跡できる)。
 *   §3.2の48セレクタのうち8セレクタ（p.nav / p.desc / p.title / p.desc span /
 *   p.title span / span.info-schedule-news-title / h3.title span / h3.title）は、
 *   対象画面全体で一致した要素の全件が対象外（祖先にa・ヘッダー/ナビ内 等）だったため、
 *   このファイルに宣言を書いていない（判定の詳細は制作元の記録にあり、上記コミットで追跡できる）。
 * 変えないもの:
 *   フォント種類・字間・フォントスムージング・背景色・スマートフォンのフォントサイズ。
 */

/* ブロック1〜3は、既存の #douyu-wrapper 配下のページ別CSS（id修飾子つき）に詳細度で
   負ける実測結果が出たため、すべてのセレクタへ :is(#douyu-wrapper, body) を前置し、
   id相当の詳細度を借りている（設計F5-3・段2）。body は常に祖先であるため、
   対象とする要素の集合は前置の有無で変わらない。 */

/* ------------------------------------------------------------------
 * 1. 対象文字の文字色（PC・スマートフォン共通）
 *    可読性を上げるため、無彩色のグレーをすべて黒へ寄せる
 * ------------------------------------------------------------------ */
:is(#douyu-wrapper, body) .ui-card__body li:not(.form-privacy-body li):not(.form-privacy-text li):not(.privacy-policy-body li):not([style*="color"] li),
:is(#douyu-wrapper, body) .ui-list--diamond li,
:is(#douyu-wrapper, body) .ui-list-clean li,
:is(#douyu-wrapper, body) p.membership-guide-contact__card-description,
:is(#douyu-wrapper, body) p.ui-text-muted.ui-text-sm,
:is(#douyu-wrapper, body) .founding-statement__signature p,
:is(#douyu-wrapper, body) .login-captcha-area p,
:is(#douyu-wrapper, body) .tcdce-body p:not([style*="color"]),
/* 上の行との重複ではない。記事ページには #article #douyu-wrapper .post_content.ui-card p
   相当の既存CSSがあり、上の行(id相当1つ)では詳細度で負けるため、:is(#article, body) を
   さらに重ねてid相当2つにしている。消すと記事ページの本文だけ指定が効かなくなる。
   同じ組み合わせがこのファイル内の2箇所（本ブロックとブロック3）に出てくるため、
   片方だけ直さないこと。 */
:is(#article, body):is(#douyu-wrapper, body) .post_content.ui-card .tcdce-body p:not([style*="color"]),
:is(#douyu-wrapper, body) p.ships-notice__description.ships-notice__align--left,
:is(#douyu-wrapper, body) .ui-card__body p:not(.form-help):not(.form-intro):not(.form-row):not(.career-form-help):not(.form-privacy-body p):not(.form-privacy-text p):not(.form-section-privacy p):not(.privacy-policy-body p):not(.form-section-contact-methods p):not(.form-section-career-history p):not(.ships-contact-registration-form-wrapper p):not([style*="color"]):not([style*="color"] p),
:is(#douyu-wrapper, body) p.ui-mt-md,
:is(#douyu-wrapper, body) p.ui-text-right,
:is(#douyu-wrapper, body) p.header_desc.pc,
:is(#douyu-wrapper, body) p.header_desc.mobile,
:is(#douyu-wrapper, body) p.membership-guide-contact__subtitle,
:is(#douyu-wrapper, body) p.ui-mt-lg,
:is(#douyu-wrapper, body) p.founding-statement__paragraph,
:is(#douyu-wrapper, body) td.col-date,
:is(#douyu-wrapper, body) td.col-detail,
:is(#douyu-wrapper, body) td.col-target,
:is(#douyu-wrapper, body) .info-schedule-table td.col-date,
:is(#douyu-wrapper, body) .info-schedule-table td.col-detail,
:is(#douyu-wrapper, body) .info-schedule-table td.col-target,
:is(#douyu-wrapper, body) .md-table-wrap td,
:is(#douyu-wrapper, body) td.officer-company-mobile,
:is(#douyu-wrapper, body) td.officer-name-desktop,
:is(#douyu-wrapper, body) td.officer-position-mobile,
:is(#douyu-wrapper, body) td.officer-combined-info,
:is(#douyu-wrapper, body) .s_table td,
:is(#douyu-wrapper, body) .ui-table-wrap td:not(.position-column),
:is(#douyu-wrapper, body) td.ui-text-center,
:is(#douyu-wrapper, body) td.ui-text-muted,
:is(#douyu-wrapper, body) span.md-kana,
:is(#douyu-wrapper, body) span.info-schedule-detail-badge.info-schedule-detail-badge--date,
:is(#douyu-wrapper, body) .info-schedule-table .col-detail span.info-schedule-detail-badge.info-schedule-detail-badge--date,
:is(#douyu-wrapper, body) .membership-guide-contact__hours span,
:is(#douyu-wrapper, body) span.ui-text-muted.ui-text-sm,
:is(#douyu-wrapper, body) span.info-schedule-year-range__text,
:is(#douyu-wrapper, body) .officer-table .ui-table-wrap span.officer-position-info,
:is(#douyu-wrapper, body) .officer-table .ui-table-wrap span.officer-company-info,
:is(#douyu-wrapper, body) h3.info-schedule-widget-title,
:is(#douyu-wrapper, body) h4.info-schedule-year-range__title,
:is(#douyu-wrapper, body) h2.headline:not(.membership-form *),
:is(#douyu-wrapper, body) div.no_image h1.catch {
  color: #000000;
}

/* ------------------------------------------------------------------
 * 2. 見出し・見出し内の子要素・意図的な強調文字のウェイト（PC・スマートフォン共通）
 *    既存の文字階層（見出しと本文の差）を維持するため、見出し側は700にする
 *    ※ §3.2の#43(h3.title span)・#46(h3.title)は、対象画面で一致した要素の
 *      全件が対象外（祖先a・ヘッダー/ナビ内）だったため、このブロックに含めていない
 *    ※ strong / b / em は対象画面全体で298件を機械判定した結果、
 *      全件が条件7（現行700）に該当し適用対象0件だったため、このブロックに追記していない
 *      （成果物/強調文字の適用一覧.md）
 * ------------------------------------------------------------------ */
:is(#douyu-wrapper, body) h3.info-schedule-widget-title,
:is(#douyu-wrapper, body) h4.info-schedule-year-range__title,
:is(#douyu-wrapper, body) h2.headline:not(.membership-form *),
:is(#douyu-wrapper, body) div.no_image h1.catch {
  font-weight: 700;
}

/* ------------------------------------------------------------------
 * 3. 本文系のウェイト（PC・スマートフォン共通）
 *    400のままだと明朝体の線が細く読み取りにくいため500へ上げる
 * ------------------------------------------------------------------ */
:is(#douyu-wrapper, body) .ui-card__body li:not(.form-privacy-body li):not(.form-privacy-text li):not(.privacy-policy-body li):not([style*="color"] li),
:is(#douyu-wrapper, body) .ui-list--diamond li,
:is(#douyu-wrapper, body) .ui-list-clean li,
:is(#douyu-wrapper, body) p.membership-guide-contact__card-description,
:is(#douyu-wrapper, body) p.ui-text-muted.ui-text-sm,
:is(#douyu-wrapper, body) .founding-statement__signature p,
:is(#douyu-wrapper, body) .login-captcha-area p,
:is(#douyu-wrapper, body) .tcdce-body p:not([style*="color"]),
/* 上の行との重複ではない。記事ページには #article #douyu-wrapper .post_content.ui-card p
   相当の既存CSSがあり、上の行(id相当1つ)では詳細度で負けるため、:is(#article, body) を
   さらに重ねてid相当2つにしている。消すと記事ページの本文だけ指定が効かなくなる。
   同じ組み合わせがこのファイル内の2箇所（本ブロックとブロック3）に出てくるため、
   片方だけ直さないこと。 */
:is(#article, body):is(#douyu-wrapper, body) .post_content.ui-card .tcdce-body p:not([style*="color"]),
:is(#douyu-wrapper, body) p.ships-notice__description.ships-notice__align--left,
:is(#douyu-wrapper, body) .ui-card__body p:not(.form-help):not(.form-intro):not(.form-row):not(.career-form-help):not(.form-privacy-body p):not(.form-privacy-text p):not(.form-section-privacy p):not(.privacy-policy-body p):not(.form-section-contact-methods p):not(.form-section-career-history p):not(.ships-contact-registration-form-wrapper p):not([style*="color"]):not([style*="color"] p),
:is(#douyu-wrapper, body) p.ui-mt-md,
:is(#douyu-wrapper, body) p.ui-text-right,
:is(#douyu-wrapper, body) p.header_desc.pc,
:is(#douyu-wrapper, body) p.header_desc.mobile,
:is(#douyu-wrapper, body) p.membership-guide-contact__subtitle,
:is(#douyu-wrapper, body) p.ui-mt-lg,
:is(#douyu-wrapper, body) p.founding-statement__paragraph,
:is(#douyu-wrapper, body) td.col-date,
:is(#douyu-wrapper, body) td.col-detail,
:is(#douyu-wrapper, body) td.col-target,
:is(#douyu-wrapper, body) .info-schedule-table td.col-date,
:is(#douyu-wrapper, body) .info-schedule-table td.col-detail,
:is(#douyu-wrapper, body) .info-schedule-table td.col-target,
:is(#douyu-wrapper, body) .md-table-wrap td,
:is(#douyu-wrapper, body) td.officer-company-mobile,
:is(#douyu-wrapper, body) td.officer-name-desktop,
:is(#douyu-wrapper, body) td.officer-position-mobile,
:is(#douyu-wrapper, body) td.officer-combined-info,
:is(#douyu-wrapper, body) .s_table td,
:is(#douyu-wrapper, body) .ui-table-wrap td:not(.position-column),
:is(#douyu-wrapper, body) td.ui-text-center,
:is(#douyu-wrapper, body) td.ui-text-muted,
:is(#douyu-wrapper, body) span.md-kana,
:is(#douyu-wrapper, body) span.info-schedule-detail-badge.info-schedule-detail-badge--date,
:is(#douyu-wrapper, body) .membership-guide-contact__hours span,
:is(#douyu-wrapper, body) span.ui-text-muted.ui-text-sm,
:is(#douyu-wrapper, body) span.info-schedule-year-range__text,
:is(#douyu-wrapper, body) span.officer-position-info,
:is(#douyu-wrapper, body) span.officer-company-info {
  font-weight: 500;
}

/* ------------------------------------------------------------------
 * 4. PC表示のフォントサイズと行高
 *    スマートフォンのサイズは変更しないため、PC条件のメディアクエリ内に閉じる
 *    行高は「変更前の行高 ÷ 変更前のサイズ」を無単位で置き、比率を保つ
 * ------------------------------------------------------------------ */
/* サイトは複数のブレークポイントを持つため、実測した切替幅のうち最大の値（851px）を採用している。
   小さい値を使うと、すでにスマートフォン向けレイアウトになっている画面へPC用サイズを当ててしまう。
   採用値より小さい切替幅を持つ画面（/info-schedule/ 等。769px）では、
   769px〜850pxの間でPC用サイズが効かない（意図した結果。保証範囲外）。
   §3.2の#4(p.nav)・#8(p.title)・#38(p.title span)は対象外の全件除外セレクタのため、
   サイズ変更対象からも外れている（このブロックには書かない）。 */
/* 既存の #douyu-wrapper 配下のページ別CSS（id修飾子つき）に詳細度で負けるため、
   :is(#douyu-wrapper, body) で id 相当の詳細度を借りる（設計F5-3・段2）。
   body は常に祖先であるため動作は変わらない。 */
@media screen and (min-width: 851px) {
  /* 15.2px → 16px（比率 1.80 を維持） */
  :is(#douyu-wrapper, body) .founding-statement__signature p { font-size: 16px; line-height: 1.8; }

  /* 16.8px → 18px（比率 2.00 を維持） */
  :is(#douyu-wrapper, body) p.founding-statement__paragraph { font-size: 18px; line-height: 2; }

  /* 13px → 14px（比率 1.00 を維持） */
  :is(#douyu-wrapper, body) td.col-date,
  :is(#douyu-wrapper, body) td.col-target,
  :is(#douyu-wrapper, body) .info-schedule-table td.col-date,
  :is(#douyu-wrapper, body) .info-schedule-table td.col-target { font-size: 14px; line-height: 1; }

  /* 13px → 14px（比率 1.60 を維持） */
  :is(#douyu-wrapper, body) td.col-detail,
  :is(#douyu-wrapper, body) .info-schedule-table td.col-detail { font-size: 14px; line-height: 1.6; }

  /* 9.6px → 14px（比率 1.20 を維持） */
  :is(#douyu-wrapper, body) span.md-kana { font-size: 14px; line-height: 1.2; }

  /* 12px → 14px（比率 1.40 を維持）
     有彩色の info-schedule-detail-badge は対象外のため、--date 修飾子を必ず付ける
     info-schedule-table内の高詳細度な既存CSSに勝てないため、祖先クラスを重ねた形も併記する */
  :is(#douyu-wrapper, body) span.info-schedule-detail-badge.info-schedule-detail-badge--date,
  :is(#douyu-wrapper, body) .info-schedule-table .col-detail span.info-schedule-detail-badge.info-schedule-detail-badge--date { font-size: 14px; line-height: 1.4; }
}

/* ------------------------------------------------------------------
 * 5. 公開ページに残る無彩色グレーの文字色（2026-09、範囲拡大）
 *
 * 何のためか:
 *   閲覧者側の画面に残っていた無彩色のグレー（赤=緑=青、0でも255でもない）を
 *   すべて #000000 へ揃えるため。リンク・ボタン・ヘッダー/ナビの中の文字も対象に含む。
 * 対象の決め方:
 *   2026-09-14に作業環境(8082)の対象画面22件 × PC1440px/SP390px で実測し、
 *   グレーを供給している既存の宣言（供給宣言）を特定した（成果物/供給宣言一覧.md）。
 *   ここに並ぶセレクタは、いずれも既存CSSの宣言セレクタをそのまま写したものである。
 *   自分で考えたセレクタは1つも無い。当たる要素の集合を既存宣言と一致させ、
 *   有彩色・白・純黒へ波及させないためである。
 * 変えないもの:
 *   文字色以外のすべて。このブロックに color 以外のプロパティを足さないこと。
 * ------------------------------------------------------------------ */

/* 5-A. 既存宣言に !important が無く、本ファイルのほうが後に読み込まれる箇所。
   詳細度を上げずに、読み込み順だけで上書きする。 */
:is(#douyu-wrapper, body) .ui-card__body,                                          /* 供給宣言一覧 #6 */
:is(#douyu-wrapper, body) .ui-title--boxed,                                         /* 供給宣言一覧 #15 */
:is(#douyu-wrapper, body) .ui-pagination__link,                                     /* 供給宣言一覧 #16 */
:is(#douyu-wrapper, body) .pagination-link,                                         /* 供給宣言一覧 #16 */
:is(#douyu-wrapper, body) .ui-page-section-header__category,                        /* 供給宣言一覧 #32 */
:is(#douyu-wrapper, body) .ui-badge:not(.ui-badge--primary):not(.ui-badge--success):not(.ui-badge--danger), /* 供給宣言一覧 #33(過剰適用回避のため白文字バリアントを除外。F5で発覚) */
:is(#douyu-wrapper, body) .ui-badge--warning,                                       /* 供給宣言一覧 #34 */
:is(#douyu-wrapper, body) .md-sub-title {                                           /* 供給宣言一覧 #39 */
  color: #000000;
}

/* 5-B. 既存宣言に !important は無いが、本ファイルより後に読み込まれるCSSに
   置かれているため、読み込み順では勝てない箇所。
   :is(#douyu-wrapper, body) を前置して id 相当を1つ借りる。
   body は常に祖先なので、当たる要素の集合は前置の有無で変わらない。
   供給宣言が「セレクタA, セレクタB」のようにカンマ区切りだった場合は、
   両方に同じ前置を行う（先頭にしか前置しないと、後半のセレクタに詳細度が
   足りなくなるため）。 */
:is(#douyu-wrapper, body) #douyu-wrapper ul.ui-filter-nav li a,                      /* 供給宣言一覧 #5 */
:is(#douyu-wrapper, body) #douyu-wrapper .blog_list .title,                         /* 供給宣言一覧 #7 */
:is(#douyu-wrapper, body) #douyu-wrapper .blog_list .desc,                          /* 供給宣言一覧 #8 */
:is(#douyu-wrapper, body) #douyu-wrapper .officer-table .ui-table-wrap .officer-name-mobile, /* 供給宣言一覧 #9 */
:is(#douyu-wrapper, body) #douyu-wrapper .info-schedule-filter__btn:not(.active),    /* 供給宣言一覧 #10(過剰適用回避のためactiveを除外。F5で発覚) */
:is(#douyu-wrapper, body) #douyu-wrapper .blog_list .title,                         /* 供給宣言一覧 #11(前半) */
:is(#douyu-wrapper, body) .blog_list .title,                                        /* 供給宣言一覧 #11(後半) */
:is(#douyu-wrapper, body) #douyu-wrapper .blog_list .desc,                          /* 供給宣言一覧 #12 */
:is(#douyu-wrapper, body) #douyu-wrapper .blog_list .desc,                         /* 供給宣言一覧 #13(前半) */
:is(#douyu-wrapper, body) .blog_list .desc,                                        /* 供給宣言一覧 #13(後半) */
:is(#douyu-wrapper, body) :is(.tcdce-body, .editor-styles-wrapper) h4,              /* 供給宣言一覧 #17 */
:is(#douyu-wrapper, body) #douyu-wrapper .sort-label,                              /* 供給宣言一覧 #18(前半) */
:is(#douyu-wrapper, body) .sort-label,                                             /* 供給宣言一覧 #18(後半) */
:is(#douyu-wrapper, body) #douyu-wrapper .info-schedule-news-link,                  /* 供給宣言一覧 #19 */
:is(#douyu-wrapper, body) #douyu-wrapper .info-schedule-table thead th,             /* 供給宣言一覧 #20 */
:is(#douyu-wrapper, body) #content_builder .header_catch.common_catch,              /* 供給宣言一覧 #21 */
:is(#douyu-wrapper, body) #content_builder .header_catch.common_catch,              /* 供給宣言一覧 #22 */
:is(#douyu-wrapper, body) :is(.tcdce-body, .editor-styles-wrapper) h5,              /* 供給宣言一覧 #24 */
:is(#douyu-wrapper, body) #douyu-wrapper .sort-btn,                                /* 供給宣言一覧 #25(前半) */
:is(#douyu-wrapper, body) .sort-btn,                                               /* 供給宣言一覧 #25(後半) */
:is(#douyu-wrapper, body) #douyu-wrapper .blog-sidebar__nav li a:not(.blog-sidebar__nav li.is-active a), /* 供給宣言一覧 #26(前半。is-active側の宣言のうちid無しの分岐を:not()に使い、id相当が3にならないようにした。F5で2回発覚) */
:is(#douyu-wrapper, body) .blog-sidebar__nav li a:not(.blog-sidebar__nav li.is-active a), /* 供給宣言一覧 #26(後半。同上) */
:is(#douyu-wrapper, body) #douyu-wrapper .info-schedule-no-posts,                   /* 供給宣言一覧 #28 */
:is(#douyu-wrapper, body):is(#douyu-wrapper, body) .kf-page,                        /* 供給宣言一覧 #29(祖先トークン自体を複合させ、祖先の連鎖にしない。F5で2回発覚) */
:is(#douyu-wrapper, body) #douyu-wrapper .ui-sidebar-nav__item:not(.is-active) > a, /* 供給宣言一覧 #30(過剰適用回避のためis-activeを除外。F5で発覚) */
:is(#douyu-wrapper, body) #membership-guide-contact .membership-guide-contact__card-title, /* 供給宣言一覧 #31 */
:is(#douyu-wrapper, body) #douyu-wrapper .activities-intro-text,                    /* 供給宣言一覧 #35 */
:is(#douyu-wrapper, body):is(#douyu-wrapper, body) .ships-notice__title:not(.ships-notice--alert .ships-notice__title), /* 供給宣言一覧 #36(#29と同じ理由に加え、過剰適用回避のためalertバリアントを除外。F5で3回目に発覚) */
:is(#douyu-wrapper, body):is(#douyu-wrapper, body) .ships-notice__description:not(.ships-notice--alert .ships-notice__description), /* 供給宣言一覧 #37(同上) */
:is(#douyu-wrapper, body) #douyu-wrapper .info-schedule-tab-btn:not(.active),       /* 供給宣言一覧 #38(過剰適用回避のためactiveを除外。F5で発覚) */
:is(#douyu-wrapper, body) #membership-guide-contact .membership-guide-contact__title, /* 供給宣言一覧 #40 */
:is(#douyu-wrapper, body) #membership-guide-contact .membership-guide-contact__phone-link { /* 供給宣言一覧 #41 */
  color: #000000;
}

/* ------------------------------------------------------------------
 * 6. 既存の !important 付き宣言を上書きする箇所
 *
 * 何のためか:
 *   CSSでは、!important の付いた宣言を !important 無しで上書きする経路が無い。
 *   ここに並ぶセレクタは、いずれも「既存CSSに !important 付きでグレーが宣言されている」
 *   箇所だけである。既存に !important が無い箇所へは使っていない。
 *   どの宣言を上書きしているかは 成果物/important対応表.md に1対1で対応づけてある。
 * ------------------------------------------------------------------ */

/* 6-A. 段0（本ファイルのほうが後に読み込まれる） */
#next_prev_post .nav {                                                              /* 供給宣言一覧 #23 */
  color: #000000 !important;
}

/* 6-B. 段1（詳細度で確実に上書きする） */
:is(#douyu-wrapper, body) #footer .sitemap-link,                                    /* 供給宣言一覧 #1 */
:is(#douyu-wrapper, body) #footer .footer-address,                                  /* 供給宣言一覧 #2 */
:is(#douyu-wrapper, body) #footer .footer-link-item,                                /* 供給宣言一覧 #3 */
:is(#douyu-wrapper, body) #footer .footer-bottom,                                   /* 供給宣言一覧 #4 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-toc__list li:not(.is-active) a,      /* 供給宣言一覧 #14(過剰適用回避のためis-activeを除外。F5で発覚) */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-toc__title {                        /* 供給宣言一覧 #27 */
  color: #000000 !important;
}

/* ------------------------------------------------------------------
 * 7. 目視判断により対象と定めた8色の文字色（2026-09-15）
 *
 * 何のためか:
 *   赤・緑・青の値がわずかにずれているため機械判定では有彩色に分類されるが、
 *   人が見るとグレーに見える色を #000000 へ揃えるため。
 * 対象の決め方:
 *   数式ではなくオーナーの目視判断により、次の8色をHEX値で固定した。
 *   #1E293B / #2C3E50 / #334155 / #374151 / #475569 / #4A5568 / #64748B / #6C757D
 *   彩度などの閾値は用いない。閾値では「意図して彩度を落とした配色」と
 *   「意図の弱いグレー」を区別できず、ブランド色や警告色を巻き込むためである。
 *   （対象外とした13色は 成果物/対象外とした色の記録.md にある）
 *   8色は固定のリストである。増やしても減らしてもいけない。
 * 変えないもの:
 *   文字色以外のすべて。このブロックに color 以外のプロパティを足さないこと。
 * ------------------------------------------------------------------ */

/* 7-A. 供給元が既存CSSで !important 無し。本ファイルのほうが後に読み込まれるため、
   詳細度を上げずに読み込み順だけで上書きする。 */
#douyu-wrapper .wpcf7-form label,                                                    /* 供給宣言一覧 #12 / 対象2 #374151 */
#douyu-wrapper .wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item-label {         /* 供給宣言一覧 #20 / 対象2 #374151 */
  color: #000000;
}

/* 7-B. 供給元が既存CSSで !important 無し。本ファイルより後に読み込まれるCSSに
   置かれているため、:is(#douyu-wrapper, body) で id 相当を1つ借りる。
   供給宣言が「セレクタA, セレクタB」のようにカンマ区切りだった場合は、
   両方に同じ前置を行う（#13）。 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .form-label,          /* 供給宣言一覧 #1 / 対象2 #374151 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .form-privacy-text,    /* 供給宣言一覧 #2 / 対象2 #475569 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-privacy-policy-page .privacy-policy-body,          /* 供給宣言一覧 #5 / 対象2 #334155 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .form-privacy-body h4, /* 供給宣言一覧 #6 / 対象2 #1E293B */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .section-title,        /* 供給宣言一覧 #7 / 対象2 #1E293B */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-privacy-policy-page .privacy-policy-body h4,       /* 供給宣言一覧 #8 / 対象2 #1E293B */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .form-help,            /* 供給宣言一覧 #9 / 対象2 #64748B */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .form-contacts-row-header, /* 供給宣言一覧 #10 / 対象2 #475569 */
:is(#douyu-wrapper, body) :is(.tcdce-body, .editor-styles-wrapper) ol,                             /* 供給宣言一覧 #11 / 対象2 #4A5568 */
:is(#douyu-wrapper, body) #douyu-wrapper .blog-sidebar__title,                                     /* 供給宣言一覧 #13(前半) / 対象2 #2C3E50 */
:is(#douyu-wrapper, body) .blog-sidebar__title,                                                    /* 供給宣言一覧 #13(後半) / 対象2 #2C3E50 */
:is(#douyu-wrapper, body) #douyu-wrapper .ui-sidebar__title a,                                     /* 供給宣言一覧 #14 / 対象2 #2C3E50 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .form-contacts-col-row, /* 供給宣言一覧 #16 / 対象2 #475569 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-membership-application-form .form-contacts-col-row-num, /* 供給宣言一覧 #17 / 対象2 #374151 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-contact-registration-form-wrapper .form-intro,     /* 供給宣言一覧 #18 / 対象2 #475569 */
:is(#douyu-wrapper, body) #douyu-wrapper .ships-privacy-policy-page .privacy-policy-body h3 {      /* 供給宣言一覧 #19 / 対象2 #1E293B */
  color: #000000;
}

/* 7-C. 供給元が既存CSSで !important あり。!important でしか上書きできない。 */
:is(#douyu-wrapper, body) #footer .sitemap-col-title {                              /* 供給宣言一覧 #3 / 対象2 #2C3E50 */
  color: #000000 !important;
}

/* 7-D. 供給元が要素の style 属性によるインライン指定である色。
   インラインの通常宣言は、外部CSSでは詳細度をどれだけ上げても勝てない。
   CSSのカスケードが詳細度より先に重要度で並ぶためであり、
   !important が唯一の手段である。
   クラス名では狙えないため、style属性の中身を属性セレクタで直接引いている。
   （このファイルで唯一、既存宣言のセレクタの写しではない箇所。理由は設計§5.7.4）
   詳細度は上げない（段0）。この要素の計算済み色がインラインの値ということは、
   作者スタイルシートの !important 宣言はこの要素に1つも効いていないということであり、
   こちらが !important を付ければ詳細度によらず勝つため。

   ここに並べるのは「対象2の8色のうち、F2でインライン供給が1件以上確認された色」だけである。
   2026-09-15のF2実測では #4A5568（66件）・#6C757D（4件）の2色が該当した。
   #6C757D は当初CSSファイル由来のみと想定していたが、画面12（入会案内）の本文中に
   インライン指定が見つかった。要件は対象を色で定めており供給元では定めていないため、
   対象2の8色に含まれるこの色は、供給元がインラインでも対象として扱う（設計書§8-S5）。
   F2手順4-bの確認（style属性でcolor以外の用途に同じHEXが使われていないか）は該当0件だった。 */
[style*="#4a5568" i],                                                                /* 供給宣言一覧 #4 / 対象2 #4A5568 */
[style*="#6c757d" i] {                                                               /* 供給宣言一覧 #15 / 対象2 #6C757D */
  color: #000000 !important;
}
