/* 各種研修サービス・プログラム（/training-service）専用スタイル。
   レイアウトの土台は common.css に依存し、ここでは企画書の図解／表
   (1) 研修ナビ（4研修カード） (2) 章見出しバンド
   (3) バリエーション（研修形態／実施手法カード） (4) 評価の壁グリッド
   (5) 開催要領パネル（3研修で共用） (6) スケジュール／該当例テーブル
   (7) 3ステップ・フロー (8) 1on1コーチング図 (9) ロープレ手順
   (10) 心理的安全性 7つの質問（高い／高くない） (11) 引用・注記ボックス
   (12) ハラスメント・アジェンダ (13) 特徴→ポイント対比 を補う。
   rem は common.css の独自設計により PC で約1px相当、SP は vw 基準で自動スケール。
   ブレークポイントは common.css に合わせて max-width: 860px。 */

/* 共通トーン（service_6.css / service_6_2.css と同じ体系。対比／注意喚起用に teal・pink を追加） */
:root {
	--hc-navy: #11589d;
	--hc-navy-d: #0d4478;
	--hc-blue: #5b9bd5;
	--hc-blue-l: #cddceb;
	--hc-blue-bg: #eef4f9;
	--hc-gray: #6b7280;
	--hc-line: #d5dee7;
	--hc-accent: #ef8b3c;
	--hc-accent-bg: #fbe4c8;
	--hc-accent-d: #8a5a1a;
	--hc-green: #7fa84b;
	--hc-green-bg: #eef3e3;
	--hc-green-d: #55702a;
	--hc-teal: #4f8a8b;
	--hc-teal-d: #356364;
	--hc-pink: #d24b6a;
}

/* 共通ベース：本ページの独自部品は Zen Kaku Gothic New を基調 */
.c-tr-nav,
.c-tr-chapter,
.c-tr-cards,
.c-tr-walls,
.c-tr-panel,
.c-tr-table,
.c-tr-flow,
.c-tr-coaching,
.c-tr-steps,
.c-tr-psafe,
.c-tr-compare,
.c-tr-quote,
.c-tr-points,
.c-tr-agenda,
.c-tr-measures,
.c-tr-note {
	font-family: "Zen Kaku Gothic New", sans-serif;
	color: #333;
}

/* 共通の注記テキスト */
.c-tr-note {
	font-size: 12rem;
	line-height: 1.8;
	color: var(--hc-gray);
	text-align: center;
}

/* ============================================================
   0. 研修ナビ（ABOUT の4研修カード）
   ============================================================ */
.c-tr-nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20rem;
	text-align: left;
}
.c-tr-nav__card {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto;
	column-gap: 16rem;
	row-gap: 6rem;
	align-items: center;
	background: #fff;
	border: 1rem solid var(--hc-line);
	border-left: 4rem solid var(--hc-navy);
	border-radius: 6rem;
	padding: 20rem 22rem;
	text-decoration: none;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.c-tr-nav__card:hover {
	box-shadow: 0 6rem 18rem rgba(17, 88, 157, 0.16);
	transform: translateY(-2rem);
}
.c-tr-nav__no {
	grid-row: 1 / 3;
	width: 44rem;
	height: 44rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--hc-navy);
	color: #fff;
	font-size: 20rem;
	font-weight: bold;
	font-family: "Oswald", serif;
	border-radius: 50%;
}
.c-tr-nav__title {
	align-self: end;
	font-size: 17rem;
	font-weight: bold;
	color: var(--hc-navy);
	line-height: 1.4;
}
.c-tr-nav__desc {
	align-self: start;
	font-size: 12rem;
	line-height: 1.6;
	color: var(--hc-gray);
}

/* ============================================================
   1. 章見出しバンド（Ⅰ〜Ⅳ）
   ============================================================ */
.c-tr-chapter-sec {
	background: linear-gradient(135deg, var(--hc-navy) 0%, var(--hc-navy-d) 100%);
	padding: 64rem 0;
	scroll-margin-top: 20rem;
}
.c-tr-chapter {
	position: relative;
	text-align: center;
	color: #fff;
	padding-top: 30rem;
}
.c-tr-chapter__no {
	position: absolute;
	top: -18rem;
	left: 50%;
	transform: translateX(-50%);
	font-family: "Oswald", serif;
	font-size: 64rem;
	font-weight: bold;
	line-height: 1;
	color: rgba(255, 255, 255, 0.16);
}
.c-tr-chapter__label {
	position: relative;
	font-size: 12rem;
	letter-spacing: 4rem;
	color: var(--hc-blue-l);
	margin-bottom: 8rem;
}
.c-tr-chapter__title {
	position: relative;
	font-family: "Zen Old Mincho", serif;
	font-size: 30rem;
	line-height: 1.4;
	color: #fff;
}
.c-tr-chapter__title:after {
	content: "";
	display: block;
	width: 60rem;
	border-bottom: 2rem solid var(--hc-blue);
	margin: 16rem auto 0;
}
.c-tr-chapter__lead {
	max-width: 760rem;
	margin: 20rem auto 0;
	font-size: 14rem;
	line-height: 1.9;
	color: rgba(255, 255, 255, 0.92);
	text-align: left;
}

/* ============================================================
   2. カード（研修形態／実施手法・汎用）
   ============================================================ */
.c-tr-cards {
	display: grid;
	gap: 24rem;
	align-items: start;
}
.c-tr-cards.--col2 {
	grid-template-columns: 1fr 1fr;
}
.c-tr-card {
	background: #fff;
	border: 1rem solid var(--hc-line);
	border-radius: 8rem;
	overflow: hidden;
}
.c-tr-card.--plain {
	padding: 22rem 24rem;
}
.c-tr-card__head {
	background: var(--hc-navy);
	color: #fff;
	font-size: 17rem;
	font-weight: bold;
	text-align: center;
	padding: 13rem 16rem;
}
.c-tr-card__head.--sub {
	background: var(--hc-navy-d);
	font-size: 15rem;
	padding: 10rem 14rem;
	border-radius: 4rem;
	margin-bottom: 12rem;
}
.c-tr-card.--plain .c-tr-card__head.--sub {
	display: inline-block;
	padding: 6rem 18rem;
}
.c-tr-card__text {
	font-size: 14rem;
	line-height: 1.8;
	color: #333;
}

/* 定義リスト（ラベル＋説明） */
.c-tr-deflist {
	list-style: none;
	margin: 0;
	padding: 20rem 24rem;
}
.c-tr-deflist > li {
	padding: 12rem 0;
	border-bottom: 1rem dashed var(--hc-line);
}
.c-tr-deflist > li:last-child {
	border-bottom: none;
	padding-bottom: 4rem;
}
.c-tr-deflist > li > strong {
	display: block;
	font-size: 15rem;
	font-weight: bold;
	color: var(--hc-navy);
	margin-bottom: 4rem;
}
.c-tr-deflist > li > span {
	display: block;
	font-size: 13rem;
	line-height: 1.7;
	color: #444;
}

/* 番号付きリスト（①②③） */
.c-tr-numlist {
	list-style: none;
	counter-reset: tr-num;
	margin: 6rem 0 0;
	padding: 0;
}
.c-tr-numlist > li {
	position: relative;
	counter-increment: tr-num;
	padding-left: 30rem;
	margin-top: 8rem;
	font-size: 13rem;
	line-height: 1.7;
	color: #444;
}
.c-tr-numlist > li:before {
	content: counter(tr-num);
	position: absolute;
	left: 0;
	top: 1rem;
	width: 20rem;
	height: 20rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--hc-blue-l);
	color: var(--hc-navy);
	font-size: 12rem;
	font-weight: bold;
	border-radius: 50%;
}
.c-tr-numlist.--wide > li {
	font-size: 14rem;
	margin-top: 12rem;
}

/* ============================================================
   3. 評価の壁グリッド
   ============================================================ */
.c-tr-walls__main {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300rem;
	gap: 24rem;
	align-items: start;
}
.c-tr-walls__diagram {
	min-width: 0;
	background: #fff;
	border: 1rem solid var(--hc-line);
	border-radius: 8rem;
	padding: 20rem 20rem 26rem;
}
/* フロー図（インラインSVG：矢印方向を原図に忠実に再現） */
.c-tr-walls__svgwrap {
	width: 100%;
	max-width: 100%;
}
.c-tr-walls__svg {
	display: block;
	width: 100%;
	height: auto;
}

/* 解説パネル */
.c-tr-walls__kaisetsu {
	border: 1rem dashed var(--hc-gray);
	border-radius: 6rem;
	padding: 16rem 18rem;
	background: #fff;
}
.c-tr-walls__kaisetsu-title {
	font-size: 13rem;
	font-weight: bold;
	color: var(--hc-navy);
	margin-bottom: 12rem;
}
.c-tr-walls__kaisetsu-item {
	margin-bottom: 12rem;
}
.c-tr-walls__kaisetsu-item:last-child {
	margin-bottom: 0;
}
.c-tr-walls__kaisetsu-name {
	font-size: 12rem;
	font-weight: bold;
	color: #333;
}
.c-tr-walls__kaisetsu-desc {
	font-size: 11rem;
	line-height: 1.6;
	color: #555;
	padding-left: 10rem;
	position: relative;
}
.c-tr-walls__kaisetsu-desc::before {
	content: "・";
	position: absolute;
	left: 0;
}
.c-tr-walls__result {
	margin-top: 28rem;
	text-align: center;
	font-size: 15rem;
	font-weight: bold;
	color: #444;
}
.c-tr-walls__result span {
	display: inline-block;
	margin-left: 6rem;
	padding: 6rem 20rem;
	background: var(--hc-pink);
	color: #fff;
	border-radius: 40rem;
	font-size: 16rem;
}

/* ============================================================
   4. 開催要領パネル（3研修で共用）
   ============================================================ */
.c-tr-panel {
	display: flex;
	flex-direction: column;
	gap: 20rem;
}
.c-tr-panel__item {
	border: 1rem solid var(--hc-line);
	border-radius: 6rem;
	overflow: hidden;
}
.c-tr-panel__head {
	background: var(--hc-navy);
	color: #fff;
	font-size: 16rem;
	font-weight: bold;
	text-align: center;
	padding: 11rem 16rem;
}
.c-tr-panel__body {
	list-style: none;
	margin: 0;
	padding: 18rem 24rem;
	background: #fff;
}
.c-tr-panel__body li {
	position: relative;
	padding-left: 18rem;
	margin-bottom: 8rem;
	font-size: 14rem;
	line-height: 1.8;
	color: #333;
}
.c-tr-panel__body li:last-child {
	margin-bottom: 0;
}
.c-tr-panel__body li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 10rem;
	width: 7rem;
	height: 7rem;
	background: var(--hc-blue);
	border-radius: 50%;
}
.c-tr-panel__body li.--sub {
	padding-left: 30rem;
	font-size: 13rem;
	color: #555;
}
.c-tr-panel__body li.--sub:before {
	left: 14rem;
	top: 9rem;
	width: 6rem;
	height: 2rem;
	border-radius: 0;
	background: var(--hc-gray);
}

/* ============================================================
   5. テーブル（スケジュール／該当例）
   ============================================================ */
.c-tr-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13rem;
	background: #fff;
	border: 1rem solid var(--hc-line);
}
.c-tr-table thead th {
	background: var(--hc-navy);
	color: #fff;
	font-weight: bold;
	font-size: 13rem;
	text-align: center;
	padding: 12rem 10rem;
	border: 1rem solid var(--hc-navy-d);
	line-height: 1.5;
}
.c-tr-table tbody th,
.c-tr-table tbody td {
	border: 1rem solid var(--hc-line);
	padding: 11rem 12rem;
	vertical-align: middle;
	line-height: 1.6;
}
.c-tr-table tbody th[scope="row"] {
	background: var(--hc-blue-bg);
	color: var(--hc-navy-d);
	font-weight: bold;
	text-align: left;
	width: 26%;
}
.c-tr-table td.--time,
.c-tr-table td.--type,
.c-tr-table th.--time,
.c-tr-table th.--type {
	text-align: center;
	white-space: nowrap;
}
.c-tr-table td.--time,
.c-tr-table td.--type {
	color: #444;
}
.c-tr-table td.--time {
	font-family: "Oswald", sans-serif;
	letter-spacing: 0.5rem;
}
.c-tr-table__li {
	display: block;
	position: relative;
	padding-left: 16rem;
	margin-bottom: 4rem;
	color: #333;
}
.c-tr-table__li:last-child {
	margin-bottom: 0;
}
.c-tr-table__li:before {
	content: "";
	position: absolute;
	left: 2rem;
	top: 8rem;
	width: 6rem;
	height: 6rem;
	background: var(--hc-blue);
	border-radius: 50%;
}
.c-tr-table tr.--break th[scope="row"],
.c-tr-table tr.--break td {
	background: #f1f3f5;
	color: var(--hc-gray);
	text-align: center;
	font-weight: normal;
}
/* 該当例テーブル（3列比較） */
.c-tr-table.--guide tbody th[scope="row"] {
	width: 16%;
	text-align: center;
	vertical-align: top;
}
.c-tr-table.--guide td {
	width: 42%;
	vertical-align: top;
}
.c-tr-table.--guide td.--ok {
	background: var(--hc-green-bg);
}
.c-tr-table.--guide td.--ok .c-tr-table__li:before {
	background: var(--hc-green);
}

/* ============================================================
   6. フロー（3ステップ・評価者研修）
   ============================================================ */
.c-tr-flow {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 34rem;
}
.c-tr-flow__item {
	position: relative;
	background: #fff;
	border: 1rem solid var(--hc-line);
	border-top: 4rem solid var(--hc-navy);
	border-radius: 6rem;
	padding: 26rem 20rem 22rem;
}
.c-tr-flow.--steps .c-tr-flow__item:not(:last-child):after {
	content: "";
	position: absolute;
	top: 50%;
	right: -24rem;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-top: 10rem solid transparent;
	border-bottom: 10rem solid transparent;
	border-left: 14rem solid var(--hc-blue);
}
.c-tr-flow__no {
	display: inline-block;
	background: var(--hc-navy);
	color: #fff;
	font-family: "Oswald", sans-serif;
	font-size: 13rem;
	font-weight: bold;
	letter-spacing: 1rem;
	padding: 4rem 14rem;
	border-radius: 40rem;
	margin-bottom: 12rem;
}
.c-tr-flow__title {
	font-size: 17rem;
	font-weight: bold;
	color: var(--hc-navy);
	line-height: 1.4;
	margin-bottom: 10rem;
}
.c-tr-flow__title small {
	display: block;
	font-size: 12rem;
	font-weight: bold;
	color: var(--hc-accent-d);
	margin-top: 2rem;
}
.c-tr-flow__text {
	font-size: 13rem;
	line-height: 1.8;
	color: #444;
	text-align: left;
}

/* ============================================================
   7. 1on1 コーチング図
   ============================================================ */
.c-tr-coaching {
	max-width: 700rem;
	margin: 0 auto;
}
/* 1on1の関係図（インラインSVG） */
.c-tr-coaching__svg {
	display: block;
	width: 100%;
	height: auto;
}

/* ============================================================
   8. ロープレ手順（番号付き縦リスト）
   ============================================================ */
.c-tr-steps {
	list-style: none;
	counter-reset: tr-step;
	margin: 0;
	padding: 0;
	max-width: 820rem;
	margin-left: auto;
	margin-right: auto;
}
.c-tr-steps__item {
	display: flex;
	align-items: flex-start;
	gap: 18rem;
	background: #fff;
	border: 1rem solid var(--hc-line);
	border-radius: 6rem;
	padding: 20rem 24rem;
	margin-bottom: 14rem;
}
.c-tr-steps__no {
	flex: 0 0 auto;
	width: 34rem;
	height: 34rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--hc-navy);
	color: #fff;
	font-family: "Oswald", sans-serif;
	font-size: 17rem;
	font-weight: bold;
	border-radius: 50%;
}
.c-tr-steps__text {
	flex: 1;
	font-size: 14rem;
	line-height: 1.85;
	color: #333;
	text-align: left;
	padding-top: 4rem;
}

/* ============================================================
   9. 心理的安全性 7つの質問（高い／高くない）
   ============================================================ */
.c-tr-psafe {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24rem;
	align-items: start;
}
.c-tr-psafe__col {
	border: 1rem solid var(--hc-line);
	border-radius: 8rem;
	overflow: hidden;
	background: #fff;
}
.c-tr-psafe__head {
	color: #fff;
	font-size: 16rem;
	font-weight: bold;
	text-align: center;
	padding: 13rem 16rem;
}
.c-tr-psafe__head strong {
	font-size: 19rem;
}
.c-tr-psafe__col.--high .c-tr-psafe__head {
	background: var(--hc-navy);
}
.c-tr-psafe__col.--low .c-tr-psafe__head {
	background: var(--hc-gray);
}
.c-tr-psafe__list {
	list-style: none;
	margin: 0;
	padding: 18rem 22rem;
}
.c-tr-psafe__list li {
	position: relative;
	padding-left: 26rem;
	margin-bottom: 12rem;
	font-size: 13rem;
	line-height: 1.7;
	color: #333;
}
.c-tr-psafe__list li:last-child {
	margin-bottom: 0;
}
.c-tr-psafe__list li:before {
	position: absolute;
	left: 0;
	top: 1rem;
	font-weight: bold;
	font-size: 15rem;
	line-height: 1.5;
}
.c-tr-psafe__col.--high .c-tr-psafe__list li:before {
	content: "\2713"; /* ✓ check mark */
	color: var(--hc-navy);
}
.c-tr-psafe__col.--low .c-tr-psafe__list li:before {
	content: "\2715"; /* ✕ multiplication x */
	color: var(--hc-pink);
}

/* ============================================================
   10. 引用・注記ボックス／要点リスト（心理的安全性）
   ============================================================ */
.c-tr-quote {
	border-radius: 8rem;
	padding: 22rem 26rem;
	margin-bottom: 20rem;
}
.c-tr-quote.--primary {
	background: var(--hc-blue-bg);
	border: 1rem solid var(--hc-blue-l);
}
.c-tr-quote__head {
	font-size: 16rem;
	font-weight: bold;
	color: var(--hc-navy-d);
	margin-bottom: 10rem;
}
.c-tr-quote__body {
	font-size: 14rem;
	line-height: 1.9;
	color: #333;
}
.c-tr-quote.--ref {
	background: var(--hc-accent-bg);
	border: 1rem solid #f0cfa3;
}
.c-tr-quote.--ref p {
	font-size: 12rem;
	line-height: 1.8;
	color: #6a5330;
	word-break: break-all;
}
.c-tr-quote.--ref p + p {
	margin-top: 6rem;
}
.c-tr-points {
	list-style: none;
	margin: 0;
	padding: 0;
}
.c-tr-points li {
	position: relative;
	padding-left: 22rem;
	margin-bottom: 12rem;
	font-size: 14rem;
	line-height: 1.85;
	color: #333;
}
.c-tr-points li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 9rem;
	width: 10rem;
	height: 10rem;
	background: var(--hc-navy);
	border-radius: 2rem;
}
.c-tr-points li.--strong {
	font-weight: bold;
	color: var(--hc-navy-d);
}
.c-tr-points li.--strong:before {
	background: var(--hc-accent);
}

/* ============================================================
   11. ハラスメント・アジェンダ（縦フロー）
   ============================================================ */
.c-tr-agenda {
	max-width: 660rem;
	margin: 0 auto;
}
.c-tr-agenda__item {
	background: var(--hc-blue-bg);
	border: 1rem solid var(--hc-blue-l);
	border-left: 5rem solid var(--hc-navy);
	border-radius: 6rem;
	padding: 20rem 26rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16rem;
	flex-wrap: wrap;
}
.c-tr-agenda__title {
	font-size: 18rem;
	font-weight: bold;
	color: var(--hc-navy-d);
	line-height: 1.4;
}
.c-tr-agenda__time {
	font-size: 13rem;
	font-weight: bold;
	color: var(--hc-gray);
	font-family: "Oswald", sans-serif;
	white-space: nowrap;
}
.c-tr-agenda__break {
	position: relative;
	text-align: center;
	font-size: 12rem;
	color: var(--hc-gray);
	padding: 8rem 0;
}
.c-tr-agenda__break:before {
	content: "▼";
	display: block;
	color: var(--hc-blue);
	font-size: 12rem;
	margin-bottom: 4rem;
}
.c-tr-agenda__break span {
	font-weight: bold;
	margin-right: 8rem;
	color: #555;
}

/* ============================================================
   12. 特徴 → ポイント 対比（パワハラ予防）
   ============================================================ */
.c-tr-compare {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 20rem;
}
.c-tr-compare__col {
	align-self: stretch;
	border-radius: 8rem;
	padding: 0 0 20rem;
	overflow: hidden;
	background: #fff;
	border: 1rem solid var(--hc-line);
	display: flex;
	flex-direction: column;
}
.c-tr-compare__head {
	color: #fff;
	font-size: 15rem;
	font-weight: bold;
	text-align: center;
	padding: 12rem 14rem;
	margin-bottom: 18rem;
}
.c-tr-compare__col.--trait .c-tr-compare__head {
	background: var(--hc-teal);
}
.c-tr-compare__col.--point .c-tr-compare__head {
	background: var(--hc-green);
}
.c-tr-compare__list {
	list-style: none;
	margin: 0;
	padding: 0 20rem;
	flex: 1;
}
.c-tr-compare__list li {
	text-align: center;
	font-size: 14rem;
	font-weight: bold;
	color: #fff;
	padding: 12rem 10rem;
	border-radius: 6rem;
	margin-bottom: 12rem;
	line-height: 1.4;
}
.c-tr-compare__col.--trait .c-tr-compare__list li {
	background: var(--hc-teal);
}
.c-tr-compare__col.--point .c-tr-compare__list li {
	background: var(--hc-green);
}
.c-tr-compare__note {
	margin: 8rem 20rem 0;
	padding-top: 14rem;
	border-top: 1rem dashed var(--hc-line);
	font-size: 12rem;
	line-height: 1.7;
	color: #555;
	text-align: left;
}
.c-tr-compare__arrow {
	width: 0;
	height: 0;
	border-top: 16rem solid transparent;
	border-bottom: 16rem solid transparent;
	border-left: 22rem solid var(--hc-accent);
}

/* ============================================================
   13. セクハラ防止策
   ============================================================ */
.c-tr-measures {
	background: var(--hc-blue-bg);
	border: 1rem solid var(--hc-blue-l);
	border-radius: 8rem;
	padding: 22rem 26rem;
}
.c-tr-measures__head {
	font-size: 15rem;
	font-weight: bold;
	color: var(--hc-navy-d);
	margin-bottom: 6rem;
}

/* ============================================================
   SP（≤860px）対応
   ============================================================ */
@media screen and (max-width: 860px) {
	.c-tr-nav {
		grid-template-columns: 1fr;
		gap: 24rem;
	}
	.c-tr-nav__card {
		padding: 28rem 28rem;
	}
	.c-tr-nav__no {
		width: 64rem;
		height: 64rem;
		font-size: 30rem;
	}
	.c-tr-nav__title {
		font-size: 28rem;
	}
	.c-tr-nav__desc {
		font-size: 22rem;
	}

	.c-tr-chapter-sec {
		padding: 80rem 0;
	}
	.c-tr-chapter__no {
		font-size: 96rem;
		top: -24rem;
	}
	.c-tr-chapter__label {
		font-size: 20rem;
	}
	.c-tr-chapter__title {
		font-size: 46rem;
	}
	.c-tr-chapter__lead {
		font-size: 24rem;
		line-height: 1.9;
	}

	.c-tr-cards.--col2 {
		grid-template-columns: 1fr;
	}
	.c-tr-card__head {
		font-size: 28rem;
		padding: 20rem;
	}
	.c-tr-card__head.--sub {
		font-size: 26rem;
	}
	.c-tr-card__text {
		font-size: 24rem;
	}
	.c-tr-deflist {
		padding: 28rem 30rem;
	}
	.c-tr-deflist > li > strong {
		font-size: 26rem;
	}
	.c-tr-deflist > li > span {
		font-size: 23rem;
	}
	.c-tr-numlist > li {
		font-size: 23rem;
		padding-left: 46rem;
		margin-top: 14rem;
	}
	.c-tr-numlist > li:before {
		width: 34rem;
		height: 34rem;
		font-size: 20rem;
	}
	.c-tr-numlist.--wide > li {
		font-size: 24rem;
	}

	.c-tr-walls__main {
		grid-template-columns: minmax(0, 1fr);
		gap: 28rem;
	}
	.c-tr-walls__diagram {
		padding: 24rem 18rem 28rem;
	}
	/* SVGは横スクロールで可読サイズを確保（狭幅時） */
	.c-tr-walls__svgwrap {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	.c-tr-walls__svg {
		width: 920rem;
	}
	.c-tr-walls__kaisetsu {
		padding: 22rem;
	}
	.c-tr-walls__kaisetsu-title {
		font-size: 22rem;
	}
	.c-tr-walls__kaisetsu-name {
		font-size: 21rem;
	}
	.c-tr-walls__kaisetsu-desc {
		font-size: 20rem;
	}
	.c-tr-walls__result {
		font-size: 26rem;
	}
	.c-tr-walls__result span {
		display: block;
		margin: 14rem auto 0;
		width: fit-content;
		font-size: 28rem;
	}

	.c-tr-panel__head {
		font-size: 28rem;
		padding: 18rem;
	}
	.c-tr-panel__body {
		padding: 26rem 30rem;
	}
	.c-tr-panel__body li {
		font-size: 24rem;
		padding-left: 26rem;
		margin-bottom: 14rem;
	}
	.c-tr-panel__body li:before {
		width: 11rem;
		height: 11rem;
		top: 15rem;
	}
	.c-tr-panel__body li.--sub {
		font-size: 22rem;
		padding-left: 44rem;
	}
	.c-tr-panel__body li.--sub:before {
		left: 22rem;
		width: 10rem;
		height: 3rem;
		top: 16rem;
	}

	.c-tr-table {
		font-size: 22rem;
	}
	.c-tr-table thead th {
		font-size: 22rem;
		padding: 16rem 12rem;
	}
	.c-tr-table tbody th,
	.c-tr-table tbody td {
		padding: 16rem 14rem;
	}
	.c-tr-table__li {
		padding-left: 24rem;
	}
	.c-tr-table__li:before {
		width: 9rem;
		height: 9rem;
		top: 13rem;
	}

	.c-tr-flow {
		grid-template-columns: 1fr;
		gap: 44rem;
	}
	.c-tr-flow.--steps .c-tr-flow__item:not(:last-child):after {
		top: auto;
		right: 50%;
		bottom: -30rem;
		transform: translateX(50%);
		border-top: 16rem solid var(--hc-blue);
		border-left: 12rem solid transparent;
		border-right: 12rem solid transparent;
		border-bottom: 0;
	}
	.c-tr-flow__no {
		font-size: 22rem;
	}
	.c-tr-flow__title {
		font-size: 28rem;
	}
	.c-tr-flow__title small {
		font-size: 22rem;
	}
	.c-tr-flow__text {
		font-size: 23rem;
	}

	.c-tr-coaching {
		max-width: 100%;
	}

	.c-tr-steps__item {
		padding: 26rem 28rem;
		gap: 22rem;
	}
	.c-tr-steps__no {
		width: 50rem;
		height: 50rem;
		font-size: 26rem;
	}
	.c-tr-steps__text {
		font-size: 24rem;
	}

	.c-tr-psafe {
		grid-template-columns: 1fr;
		gap: 24rem;
	}
	.c-tr-psafe__head {
		font-size: 26rem;
	}
	.c-tr-psafe__head strong {
		font-size: 30rem;
	}
	.c-tr-psafe__list li {
		font-size: 23rem;
		padding-left: 38rem;
		margin-bottom: 16rem;
	}
	.c-tr-psafe__list li:before {
		font-size: 26rem;
	}

	.c-tr-quote__head {
		font-size: 26rem;
	}
	.c-tr-quote__body {
		font-size: 24rem;
	}
	.c-tr-quote.--ref p {
		font-size: 20rem;
	}
	.c-tr-points li {
		font-size: 24rem;
		padding-left: 32rem;
	}
	.c-tr-points li:before {
		width: 14rem;
		height: 14rem;
		top: 12rem;
	}

	.c-tr-agenda__item {
		padding: 24rem 28rem;
	}
	.c-tr-agenda__title {
		font-size: 28rem;
	}
	.c-tr-agenda__time {
		font-size: 22rem;
	}
	.c-tr-agenda__break {
		font-size: 20rem;
	}

	.c-tr-compare {
		grid-template-columns: 1fr;
		gap: 14rem;
	}
	.c-tr-compare__head {
		font-size: 26rem;
	}
	.c-tr-compare__list li {
		font-size: 24rem;
		padding: 16rem;
	}
	.c-tr-compare__note {
		font-size: 21rem;
	}
	.c-tr-compare__arrow {
		justify-self: center;
		border-left: 16rem solid transparent;
		border-right: 16rem solid transparent;
		border-top: 22rem solid var(--hc-accent);
		border-bottom: 0;
	}

	.c-tr-measures__head {
		font-size: 26rem;
	}

	.c-tr-note {
		font-size: 21rem;
	}
}
