/* ============================================================
   inner.css — 下層ページ共通 + 各ページ固有スタイル
   読み込み順: base.css → common.css → pages/inner.css
   ページ固有スタイルは必ず body のページクラスで囲む
   ============================================================ */

/* ===== 共通ヒーローセクション ===== */

.inner-hero {
	position: relative;
	overflow: hidden;
	padding: 160px 110px 80px;
	min-height: 380px;
	display: flex;
	flex-direction: column;
	gap: 50px;
}

.inner-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: url('../../images/common/back_gradetion.png');
	background-position: right center;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: 0.5;
	-webkit-mask-image: linear-gradient(to right, transparent 0%, black 35%);
	mask-image: linear-gradient(to right, transparent 0%, black 35%);
	pointer-events: none;
}

.inner-hero__title-area {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.inner-hero__heading {
	display: flex;
	align-items: center;
	gap: 12px;
}

.inner-hero__dot {
	display: block;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: linear-gradient(135deg, #00A7D4 0%, #0071BC 100%);
	flex-shrink: 0;
	margin-top: 8px;
	align-self: flex-start;
}

.inner-hero__en {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 30px;
	color: #00A7D4;
	line-height: 1;
}

.inner-hero__ja {
	font-weight: 700;
	font-size: 40px;
	color: var(--color-heading-dark);
	line-height: 1.4;
}

/* ===== パンくずリスト ===== */

.inner-hero__breadcrumb {
	position: relative;
	order: -1;
	align-self: flex-end;
}

.inner-hero__breadcrumb ol {
	display: flex;
	align-items: center;
	gap: 13px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.inner-hero__breadcrumb li {
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
}

.inner-hero__breadcrumb li a {
	color: #000;
	text-decoration: none;
}

.inner-hero__breadcrumb li a:hover {
	color: #00A7D4;
	opacity: 1;
}

.inner-hero__breadcrumb li[aria-current="page"] {
	color: #00A7D4;
	line-height: 1.6;
}

.inner-hero__breadcrumb li[aria-current="page"] a {
	color: #00A7D4;
	font-weight: 700;
	text-decoration: none;
}

.inner-hero__breadcrumb li + li::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 1px;
	background: #959595;
	vertical-align: middle;
	margin-right: 13px;
}

/* ===== コンテンツエリア ===== */

.inner-content {
	max-width: 850px;
	margin: 0 auto 120px;
	padding: 0 20px;
}


/* ===== セクションラベル共通 ===== */

.section-label {
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex-shrink: 0;
}

.section-label__heading {
	display: flex;
	align-items: center;
	gap: 10px;
}

.section-label__dot {
	display: block;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: linear-gradient(135deg, #00A7D4 0%, #0071BC 100%);
	flex-shrink: 0;
}

.section-label__en {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 20px;
	color: #00A7D4;
	line-height: 1;
}

.section-label__ja {
	font-weight: 700;
	font-size: 30px;
	color: var(--color-heading-dark);
	line-height: 1.4;
	margin: 0;
}


/* ============================================================
   個人情報保護等に関する基本方針 (page-policy-privacy)
   ============================================================ */

.page-policy-privacy .inner-content {
	margin-top: 70px;
}

/* 前置き文 */
.page-policy-privacy .policy-lead {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-privacy .policy-lead + .policy-lead {
	margin-top: 0;
}

/* レベル1リスト（1〜10の番号付きリスト）*/
.page-policy-privacy .policy-level1 {
	list-style: none;
	padding: 0;
	margin: 70px 0 0;
	display: flex;
	flex-direction: column;
	gap: 72px;
}

.page-policy-privacy .policy-level1__item {
	display: flex;
	flex-direction: column;
	gap: 17px;
}

.page-policy-privacy .policy-level1__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
	counter-increment: policy-level1;
}

.page-policy-privacy .policy-level1__heading::before {
	content: counter(policy-level1) '. ';
}

.page-policy-privacy .policy-level1 {
	counter-reset: policy-level1;
}

/* 本文共通 */
.page-policy-privacy .policy-body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
	display: flex;
	flex-direction: column;
	gap: 17px;
}

/* レベル2（2-1., 2-2. 等のサブ見出し）*/
.page-policy-privacy .policy-level2 {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.page-policy-privacy .policy-level2__item {
	display: flex;
	flex-direction: column;
	gap: 17px;
}

.page-policy-privacy .policy-level2__heading {
	font-weight: 700;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* インデント付きリスト（（1）（2）レベル）*/
.page-policy-privacy .policy-indent {
	padding-left: 16px;
	display: flex;
	flex-direction: column;
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-privacy .policy-indent__item {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.page-policy-privacy .policy-indent__num {
	flex-shrink: 0;
	white-space: nowrap;
}

.page-policy-privacy .policy-indent__text {
	flex: 1;
	min-width: 0;
}

/* 2段階インデント（①②レベル）*/
.page-policy-privacy .policy-indent2 {
	padding-left: 48px;
	display: flex;
	flex-direction: column;
}

.page-policy-privacy .policy-indent2__item {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-privacy .policy-indent2__num {
	flex-shrink: 0;
	white-space: nowrap;
}

.page-policy-privacy .policy-indent2__text {
	flex: 1;
	min-width: 0;
}

/* 枠付きボックス */
.page-policy-privacy .policy-box {
	border: 1px solid #00A7D4;
	border-radius: 20px;
	padding: 22px 26px;
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.page-policy-privacy .policy-box--contact {
	padding: 32px;
	gap: 17px;
}

.page-policy-privacy .policy-box ul {
	margin: 0 0 0 24px;
	padding: 0;
}

.page-policy-privacy .policy-box ul li {
	list-style: disc;
	line-height: 30px;
}

/* ボックス内：ulの後の次カテゴリ見出しに30pxのスペース */
.page-policy-privacy .policy-box ul + p {
	margin-top: 30px;
}

/* お問合せボックス内 */
.page-policy-privacy .policy-contact__label {
	font-size: 16px;
	font-weight: 500;
	line-height: 30px;
}

.page-policy-privacy .policy-contact__name {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
}

.page-policy-privacy .policy-contact__address {
	font-weight: 500;
	font-size: 16px;
	line-height: 27px;
}

/* 本文内リンク */
.page-policy-privacy .policy-link {
	color: var(--color-muted);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.page-policy-privacy .policy-link:hover {
	opacity: 0.7;
}

/* 附則 */
.page-policy-privacy .policy-appendix {
	margin-top: 70px;
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* ============================================================
   情報セキュリティ基本方針 (page-policy-infosec)
   ============================================================ */

.page-policy-infosec .inner-content {
	margin-top: 70px;
}

/* セクション全体コンテナ（gap: 78px で各ブロックを区切る）*/
.page-policy-infosec .infosec-sections {
	display: flex;
	flex-direction: column;
	gap: 78px;
	counter-reset: infosec-item;
}

/* 前置き文 */
.page-policy-infosec .infosec-lead {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* 各番号付き項目 */
.page-policy-infosec .infosec-item {
	display: flex;
	flex-direction: column;
	gap: 17px;
}

/* 項目見出し */
.page-policy-infosec .infosec-item__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
	counter-increment: infosec-item;
}

.page-policy-infosec .infosec-item__heading::before {
	content: counter(infosec-item) '. ';
}

/* 項目本文 */
.page-policy-infosec .infosec-item__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* 末尾署名（会社名・代表者名）*/
.page-policy-infosec .infosec-closing {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* ============================================================
   サイトポリシー (page-policy-sitepolicy)
   ============================================================ */

.page-policy-sitepolicy .inner-content {
	margin-top: 70px;
}

/* セクション全体コンテナ（gap: 72px で各項目を区切る）*/
.page-policy-sitepolicy .sitepolicy-sections {
	display: flex;
	flex-direction: column;
	gap: 72px;
	counter-reset: sitepolicy-item;
}

/* 各番号付き項目 */
.page-policy-sitepolicy .sitepolicy-item {
	display: flex;
	flex-direction: column;
	gap: 17px;
}

/* 項目見出し */
.page-policy-sitepolicy .sitepolicy-item__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
	counter-increment: sitepolicy-item;
}

.page-policy-sitepolicy .sitepolicy-item__heading::before {
	content: counter(sitepolicy-item) '. ';
}

/* 項目本文（<p> または <div> どちらにも対応）*/
.page-policy-sitepolicy .sitepolicy-item__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* div本文内の複数 <p> は隙間なく詰める */
.page-policy-sitepolicy .sitepolicy-item__body p {
	margin: 0;
	line-height: 30px;
}

/* 個人情報項目のサブ番号リスト（①②…）*/
.page-policy-sitepolicy .sitepolicy-sublist {
	list-style: decimal;
	padding-left: 24px;
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-sitepolicy .sitepolicy-sublist li {
	line-height: 30px;
}

/* 本文内リンク */
.page-policy-sitepolicy .sitepolicy-link {
	color: var(--color-muted);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.page-policy-sitepolicy .sitepolicy-link:hover {
	opacity: 0.7;
}

/* ============================================================
   勧誘方針 (page-policy-solicitation)
   ============================================================ */

.page-policy-solicitation .inner-content {
	margin-top: 70px;
}

.page-policy-solicitation .solicitation-sections {
	display: flex;
	flex-direction: column;
	gap: 78px;
	counter-reset: solicitation-item;
}

.page-policy-solicitation .solicitation-lead {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-solicitation .solicitation-item {
	display: flex;
	flex-direction: column;
	gap: 17px;
}

.page-policy-solicitation .solicitation-item__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
	counter-increment: solicitation-item;
}

.page-policy-solicitation .solicitation-item__heading::before {
	content: counter(solicitation-item) '. ';
}

.page-policy-solicitation .solicitation-item__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* div本文内の複数 <p> は隙間なく詰める */
.page-policy-solicitation .solicitation-item__body p {
	margin: 0;
	line-height: 30px;
}

/* ============================================================
   反社会的勢力に対する基本方針 (page-policy-antisocial)
   ============================================================ */

.page-policy-antisocial .inner-content {
	margin-top: 70px;
}

.page-policy-antisocial .antisocial-sections {
	display: flex;
	flex-direction: column;
	gap: 72px;
	counter-reset: antisocial-item;
}

.page-policy-antisocial .antisocial-lead {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-antisocial .antisocial-item {
	display: flex;
	flex-direction: column;
	gap: 17px;
}

.page-policy-antisocial .antisocial-item__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
	counter-increment: antisocial-item;
}

.page-policy-antisocial .antisocial-item__heading::before {
	content: counter(antisocial-item) '. ';
}

.page-policy-antisocial .antisocial-item__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* 附則（複数行を隙間なく表示）*/
.page-policy-antisocial .antisocial-appendix {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-antisocial .antisocial-appendix p {
	margin: 0;
	line-height: 30px;
}

/* 「以上」右寄せ */
.page-policy-antisocial .antisocial-closing {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
	text-align: right;
}

/* ============================================================
   リスク管理基本方針 (page-policy-risk)
   ============================================================ */

.page-policy-risk .inner-content {
	margin-top: 70px;
}

/* セクション全体コンテナ（gap: 78px で各ブロックを区切る）*/
.page-policy-risk .risk-sections {
	display: flex;
	flex-direction: column;
	gap: 78px;
}

/* テキストブロック（lead文・本文）*/
.page-policy-risk .risk-body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* ブロック内の各 <p> は隙間なく詰める */
.page-policy-risk .risk-body p {
	margin: 0;
	line-height: 30px;
}

/* リスク番号リスト（1〜5、太字18px、プライマリカラー）*/
.page-policy-risk .risk-list {
	list-style: decimal;
	padding-left: 27px;
	font-weight: 700;
	font-size: 18px;
	color: #00A7D4;
}

.page-policy-risk .risk-list li {
	line-height: 30px;
}

/* 附則（「附則」ラベル + 日付列の横並び）*/
.page-policy-risk .risk-appendix {
	display: flex;
	gap: 16px;
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-risk .risk-appendix__label {
	flex-shrink: 0;
	white-space: nowrap;
}

.page-policy-risk .risk-appendix__dates p {
	margin: 0;
	line-height: 30px;
}

/* 「以上」右寄せ */
.page-policy-risk .risk-closing {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
	text-align: right;
}

/* ============================================================
   お客さま本位の業務運営に関する方針 (page-policy-customer)
   ============================================================ */

.page-policy-customer .inner-content {
	margin-top: 70px;
}

.page-policy-customer .customer-sections {
	display: flex;
	flex-direction: column;
	gap: 72px;
}

/* 前置き文 */
.page-policy-customer .customer-lead {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* 番号付き項目 */
.page-policy-customer .customer-item {
	display: flex;
	flex-direction: column;
	gap: 16px;
	counter-increment: customer-item;
}

.page-policy-customer .customer-sections {
	counter-reset: customer-item;
}

.page-policy-customer .customer-item__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
}

.page-policy-customer .customer-item__heading::before {
	content: counter(customer-item) '. ';
}

.page-policy-customer .customer-item__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-customer .customer-item__body p {
	margin: 0;
}

/* 附則 */
.page-policy-customer .customer-appendix {
	display: flex;
	gap: 48px;
	align-items: flex-start;
}

.page-policy-customer .customer-appendix__dates {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-customer .customer-appendix__dates p {
	margin: 0;
}

.page-policy-customer .customer-appendix__company {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
	margin-left: auto;
	white-space: nowrap;
}

/* 非該当の原則セクション */
.page-policy-customer .customer-note {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.page-policy-customer .customer-note__label {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-customer .customer-note__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-customer .customer-note__body p {
	margin: 0;
}

.page-policy-customer .customer-note__link {
	color: var(--color-muted);
	text-decoration: underline;
}

/* 取組状況セクション */
.page-policy-customer .customer-report {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.page-policy-customer .customer-report__heading {
	font-weight: 700;
	font-size: 25px;
	line-height: 1.4;
	color: #00A7D4;
}

/* テーブル */
.page-policy-customer .customer-table-wrap {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.page-policy-customer .customer-table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #00A7D4;
}

.page-policy-customer .customer-table th,
.page-policy-customer .customer-table td {
	border: 1px solid #00A7D4;
	padding: 14px 20px;
	font-size: 16px;
	line-height: 30px;
	text-align: center;
}

.page-policy-customer .customer-table th {
	background-color: #00A7D4;
	color: #fff;
	font-weight: 700;
}

.page-policy-customer .customer-table th:first-child {
	border-right-color: #fff;
}

.page-policy-customer .customer-table td {
	font-weight: 500;
	color: #000;
}

.page-policy-customer .customer-table__pdf-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--color-muted);
	text-decoration: none;
	font-weight: 500;
}

.page-policy-customer .customer-table__pdf-link:hover {
	opacity: 0.75;
}

.page-policy-customer .customer-table__pdf-icon {
	display: block;
	flex-shrink: 0;
}

/* 関係性セクション */
.page-policy-customer .customer-relation {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.page-policy-customer .customer-relation__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
}

.page-policy-customer .customer-relation__pdf-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--color-muted);
	text-decoration: underline;
	font-weight: 500;
	font-size: 16px;
}

.page-policy-customer .customer-relation__pdf-link:hover {
	opacity: 0.75;
}

.page-policy-customer .customer-relation__pdf-icon {
	display: block;
	flex-shrink: 0;
}

/* ============================================================
   マネー・ローンダリング及びテロ資金供与防止のための基本方針 (page-policy-aml)
   ============================================================ */

.page-policy-aml .inner-content {
	margin-top: 70px;
}

.page-policy-aml .aml-sections {
	display: flex;
	flex-direction: column;
	gap: 72px;
	counter-reset: aml-item;
}

/* 前置き文 */
.page-policy-aml .aml-lead {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

/* 番号付き項目 */
.page-policy-aml .aml-item {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.page-policy-aml .aml-item__heading {
	font-weight: 700;
	font-size: 18px;
	line-height: 30px;
	color: #00A7D4;
	counter-increment: aml-item;
}

.page-policy-aml .aml-item__heading::before {
	content: counter(aml-item) '. ';
}

.page-policy-aml .aml-item__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-policy-aml .aml-item__body p {
	margin: 0;
}

/* ============================================================
   経営理念・代表メッセージ (page-philosophy-message)
   ============================================================ */

/* ---- キャッチコピーセクション ---- */

/* キャッチ〜スライダー共通背景エリア */
.page-philosophy-message .pm-catch-area {
	position: relative;
	background-color: #ffffff;
	overflow: hidden;
}

/* 小さいellipse：左側（中央基準で固定） */
.page-philosophy-message .pm-catch-area__ellipse--small {
	position: absolute;
	left: calc(50% - 620px);
	top: -80px;
	width: 440px;
	height: auto;
	pointer-events: none;
	z-index: 0;
}

/* 大きいellipse：右側（中央基準で固定） */
.page-philosophy-message .pm-catch-area__ellipse--large {
	position: absolute;
	left: calc(50% + 80px);
	top: 10px;
	width: 580px;
	height: auto;
	pointer-events: none;
	z-index: 0;
}

.page-philosophy-message .pm-catch {
	padding: 100px 110px;
	text-align: center;
}

.page-philosophy-message .pm-catch__inner {
	position: relative;
	z-index: 1;
	max-width: 1220px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
}

.page-philosophy-message .pm-catch__title {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-weight: bold;
	font-size: 62px;
	line-height: 1.2;
}

.page-philosophy-message .pm-catch__title-blue {
	color: #00A7D4;
}

.page-philosophy-message .pm-catch__title-dark {
	color: var(--color-heading-dark);
}

.page-philosophy-message .pm-catch__sub {
	font-weight: 500;
	font-size: 17px;
	line-height: 1.8;
	color: #000000;
}

/* ---- Mission / Vision セクション ---- */

.page-philosophy-message .pm-mission-vision {
	padding: 16px 110px;
	max-width: calc(1220px + 220px);
	margin-left: auto;
	margin-right: auto;
}

.page-philosophy-message .pm-mission-vision__row {
	display: flex;
	align-items: center;
	gap: 60px;
	padding: 64px 0;
}

.page-philosophy-message .pm-mission-vision .section-label {
	width: 300px;
	min-width: 220px;
}

.page-philosophy-message .pm-mission-vision__sep {
	border: none;
	border-top: 1px solid #E5E5E5;
	margin: 0;
}

.page-philosophy-message .pm-mission-vision__content {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.page-philosophy-message .pm-mission-vision__lead {
	font-weight: 700;
	font-size: 30px;
	line-height: 1.5;
	color: #000;
	margin: 0;
}

.page-philosophy-message .pm-mission-vision__quote {
	font-weight: 700;
	font-size: 34px;
	line-height: 1.4;
	color: #000;
	margin: 0;
}

.page-philosophy-message .pm-mission-vision__quote-grad {
	background: linear-gradient(to right, #9BD7E8, #00A7D4);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ---- フォトスライダー ---- */

.page-philosophy-message .pm-photos {
	overflow: hidden;
	width: 100%;
	padding: 100px 0;
}

.page-philosophy-message .pm-photos__track {
	display: flex;
	align-items: center;
	animation: pmPhotosScroll 32s linear infinite;
}

.page-philosophy-message .pm-photos__set {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	gap: 20px;
	padding-right: 60px;
}

.page-philosophy-message .pm-photos__slide {
	flex-shrink: 0;
	overflow: hidden;
	border-radius: 20px;
	position: relative;
	box-shadow: 0 0 40px rgba(0, 0, 0, 0.15);
}

.page-philosophy-message .pm-photos__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* 各スライドの個別サイズ・位置 */
/* 元デザイン計測値を0.7倍でスケール、重なりはgap(20px)込みで計算 */
/* 画像1：ループ境界で6と高さが被らないよう少し下げ */
.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(1) {
	width: 345px;
	height: 237px;
	transform: translateY(38px);
}
/* 画像2：画像3より62px上、1との間隔を広げる */
.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(2) {
	width: 271px;
	height: 183px;
	margin-left: 40px;
	transform: translateY(-41px);
	z-index: 1;
}
/* 画像3：2の右から49px内側に左端、2より下、2の上に重なる */
.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(3) {
	width: 330px;
	height: 223px;
	margin-left: -69px;
	transform: translateY(41px);
	z-index: 2;
}
/* 画像4：画像5より183px上、3との間隔を広げる */
.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(4) {
	width: 339px;
	height: 232px;
	margin-left: 40px;
	transform: translateY(-82px);
	z-index: 1;
}
/* 画像5：4の右から195px内側に左端、4より下、4の上に重なる */
.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(5) {
	width: 284px;
	height: 192px;
	margin-left: -215px;
	transform: translateY(82px);
	z-index: 2;
}
/* 画像6：ループ境界で1と高さが被らないよう少し上げ、5との間隔を広げる */
.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(6) {
	width: 330px;
	height: 223px;
	margin-left: 40px;
	transform: translateY(-38px);
}

@keyframes pmPhotosScroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

/* ---- Value セクション ---- */

.page-philosophy-message .pm-value-section {
	padding: 100px 40px;
}

.page-philosophy-message .pm-value-section__inner {
	max-width: 1400px;
	margin: 0 auto;
	border-radius: 20px;
	background: url('../../images/philosophy-message/philosophy-message_value_bg.jpg') center / cover no-repeat;
	padding: 80px;
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.page-philosophy-message .pm-value-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	padding-top: 35px;
}

.page-philosophy-message .pm-value-card {
	background: #fff;
	border-radius: 16px;
	padding: 55px 28px 36px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	position: relative;
	box-shadow: 0 0 20px rgba(0, 167, 212, 0.15);
}

.page-philosophy-message .pm-value-card__num {
	position: absolute;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: linear-gradient(to bottom right, #9BD7E8, #00A7D4);
	color: #fff;
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 22px;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.page-philosophy-message .pm-value-card__icon {
	width: 250px;
    height: 230px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.page-philosophy-message .pm-value-card__icon img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
}

.page-philosophy-message .pm-value-card__body {
	font-weight: 500;
	font-size: 14px;
	line-height: 1.8;
	color: #000;
	text-align: left;
	margin: 0;
	align-self: stretch;
}

/* ---- Message セクション ---- */

.page-philosophy-message .pm-message {
	padding: 100px 110px;
}

.page-philosophy-message .pm-message__inner {
	max-width: 1220px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.page-philosophy-message .pm-message__top {
	display: flex;
	align-items: flex-start;
	gap: 80px;
}

.page-philosophy-message .pm-message__top .section-label {
	width: 260px;
	flex-shrink: 0;
}

.page-philosophy-message .pm-message__photo-wrap {
	flex: 1;
	min-width: 0;
	height: 480px;
	overflow: hidden;
	border-radius: 20px;
}

.page-philosophy-message .pm-message__photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;}

.page-philosophy-message .pm-message__body-area {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.page-philosophy-message .pm-message__heading {
	font-weight: 600;
	font-size: 32px;
	line-height: 1.7;
	color: #00A7D4;
	margin: 0 0 8px;
}

.page-philosophy-message .pm-message__body {
	font-weight: 500;
	font-size: 16px;
	line-height: 2;
	color: #000;
	margin: 0;
}

.page-philosophy-message .pm-message__sig {
	display: table;
	margin-left: auto;
	text-align: left;
	margin-top: 16px;
}

.page-philosophy-message .pm-message__sig-company {
	font-weight: 500;
	font-size: 14px;
	line-height: 1.8;
	color: #000;
	margin: 0;
}

.page-philosophy-message .pm-message__sig-name {
	font-weight: 700;
	font-size: 20px;
	line-height: 1.6;
	color: #000;
	margin: 0;
}

/* ===== レスポンシブ（1024px以下）===== */

@media (max-width: 1024px) {
	.inner-hero {
		padding: 100px 40px 48px;
		min-height: 0;
		gap: 32px;
	}

	.inner-hero__heading {
		gap: 8px;
	}

	.inner-hero__dot {
		margin-top: 5px;
		width: 10px;
		height: 10px;
	}

	.inner-hero__en {
		font-size: 22px;
	}

	.inner-hero__ja {
		font-size: 26px;
	}

	.inner-hero__breadcrumb {
		align-self: flex-start;
	}

	.inner-hero__breadcrumb ol {
		flex-wrap: wrap;
		gap: 4px;
	}

	.inner-hero__breadcrumb li {
		font-size: 10px;
	}

	.inner-hero__breadcrumb li + li::before {
		margin-right: 4px;
		width: 9px;
	}

	.inner-content {
		padding: 0 24px;
	}

	.section-label__dot {
		width: 10px;
		height: 10px;
		margin-top: 2px;
	}

	.section-label__en {
		font-size: 17px;
	}

	.section-label__ja {
		font-size: 18px;
	}

	.page-policy-privacy .inner-content {
		margin-top: 48px;
	}

	.page-policy-privacy .policy-level1 {
		gap: 48px;
		margin-top: 48px;
	}

	.page-policy-privacy .policy-box {
		padding: 20px 20px;
	}

	.page-policy-privacy .policy-box--contact {
		padding: 24px 20px;
	}

	.page-policy-privacy .policy-indent2 {
		padding-left: 16px;
	}

	.page-policy-infosec .inner-content {
		margin-top: 48px;
	}

	.page-policy-infosec .infosec-sections {
		gap: 48px;
	}

	.page-policy-sitepolicy .inner-content {
		margin-top: 48px;
	}

	.page-policy-sitepolicy .sitepolicy-sections {
		gap: 48px;
	}

	.page-policy-solicitation .inner-content {
		margin-top: 48px;
	}

	.page-policy-solicitation .solicitation-sections {
		gap: 48px;
	}

	.page-policy-antisocial .inner-content {
		margin-top: 48px;
	}

	.page-policy-antisocial .antisocial-sections {
		gap: 48px;
	}

	.page-policy-risk .inner-content {
		margin-top: 48px;
	}

	.page-policy-risk .risk-sections {
		gap: 48px;
	}

	.page-policy-customer .inner-content {
		margin-top: 48px;
	}

	.page-policy-customer .customer-sections {
		gap: 48px;
	}

	.page-policy-aml .inner-content {
		margin-top: 48px;
	}

	.page-policy-aml .aml-sections {
		gap: 48px;
	}

	.page-policy-customer .customer-appendix {
		flex-direction: column;
		gap: 8px;
	}

	.page-policy-customer .customer-appendix__company {
		margin-left: 0;
	}

	.page-policy-customer .customer-report__heading {
		font-size: 20px;
	}

	.page-policy-customer .customer-table th,
	.page-policy-customer .customer-table td {
		padding: 10px 12px;
		font-size: 14px;
	}

	.page-policy-customer .customer-table__pdf-icon,
	.page-policy-customer .customer-relation__pdf-icon {
		width: 16px;
		height: 16px;
	}

	/* philosophy-message */
	.page-philosophy-message .pm-catch {
		padding: 60px 40px;
	}

	.page-philosophy-message .pm-catch__title {
		font-size: 36px;
	}

	.page-philosophy-message .pm-catch-area__ellipse--large {
		width: 300px;
	}

	.page-philosophy-message .pm-catch-area__ellipse--small {
		width: 180px;
	}

	.page-philosophy-message .pm-mission-vision {
		padding: 0 40px;
	}

	.page-philosophy-message .pm-mission-vision__row {
		gap: 40px;
		padding: 48px 0;
	}

	.page-philosophy-message .pm-mission-vision .section-label {
		width: 180px;
		min-width: 180px;
	}

	.page-philosophy-message .pm-mission-vision__quote {
		font-size: 22px;
	}

	/* デスクトップ値を0.6倍でスケール */
	.page-philosophy-message .pm-photos {
		padding: 100px 0;
	}

	.page-philosophy-message .pm-photos__track {
		animation-duration: 19s;
	}

	.page-philosophy-message .pm-photos__set {
		padding-right: 36px;
	}

	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(1) { width: 207px; height: 142px; transform: translateY(23px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(2) { width: 163px; height: 110px; margin-left: 24px; transform: translateY(-25px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(3) { width: 198px; height: 134px; margin-left: -49px; transform: translateY(25px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(4) { width: 203px; height: 139px; margin-left: 24px; transform: translateY(-49px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(5) { width: 170px; height: 115px; margin-left: -137px; transform: translateY(49px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(6) { width: 198px; height: 134px; margin-left: 24px; transform: translateY(-23px); }

	.page-philosophy-message .pm-value-section {
		padding: 60px 40px;
	}

	.page-philosophy-message .pm-value-cards {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.page-philosophy-message .pm-message {
		padding: 60px 40px;
	}

	.page-philosophy-message .pm-message__top {
		flex-direction: column;
		gap: 32px;
	}

	.page-philosophy-message .pm-message__top .section-label {
		width: auto;
	}

	.page-philosophy-message .pm-message__heading {
		font-size: 18px;
	}
}

@media (max-width: 600px) {
	.inner-hero {
		padding: 88px 20px 36px;
		gap: 28px;
	}

	.inner-hero__ja {
		font-size: 22px;
	}

	.inner-hero__en {
		font-size: 18px;
	}

	/* philosophy-message */
	.page-philosophy-message .pm-catch {
		padding: 50px 20px;
		text-align: left;
	}

	.page-philosophy-message .pm-catch__inner {
		align-items: flex-start;
		text-align: center;
	}

	.page-philosophy-message .pm-catch__title {
		font-size: 32px;
	}

	.page-philosophy-message .pm-catch__sub {
		font-size: 16px;
	}

	.page-philosophy-message .pm-catch-area__ellipse--large {
		width: 260px;
		left: auto;
		right: -80px;
		top: -20px;
	}

	.page-philosophy-message .pm-catch-area__ellipse--small {
		width: 160px;
		left: -60px;
		top: -40px;
	}

	.page-philosophy-message .pm-mission-vision {
		padding: 25px 20px;
	}

	.page-philosophy-message .pm-mission-vision__row {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		padding: 25px 0;
	}

	.page-philosophy-message .pm-mission-vision .section-label {
		width: auto;
		min-width: 0;
	}

	.page-philosophy-message .pm-mission-vision__quote {
		font-size: 20px;
	}

	/* デスクトップ値を0.55倍でスケール */
	.page-philosophy-message .pm-photos {
		padding: 50px 0;
	}

	.page-philosophy-message .pm-photos__track {
		animation-duration: 18s;
	}

	.page-philosophy-message .pm-photos__set {
		padding-right: 22px;
	}

	.page-philosophy-message .pm-photos__slide {
		border-radius: 15px;
	}

	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(1) { width: 190px; height: 130px; transform: translateY(21px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(2) { width: 149px; height: 101px; margin-left: 22px; transform: translateY(-23px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(3) { width: 182px; height: 123px; margin-left: -38px; transform: translateY(23px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(4) { width: 186px; height: 128px; margin-left: 22px; transform: translateY(-45px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(5) { width: 156px; height: 106px; margin-left: -118px; transform: translateY(45px); }
	.page-philosophy-message .pm-photos__set .pm-photos__slide:nth-child(6) { width: 182px; height: 123px; margin-left: 22px; transform: translateY(-21px); }

	.page-philosophy-message .pm-value-section {
		padding: 50px 20px;
	}

	.page-philosophy-message .pm-value-section__inner {
		padding: 40px 20px;
		border-radius: 15px;
		gap: 25px;
	}

	.page-philosophy-message .pm-value-card__num {
		top: -20px;
		width: 40px;
		height: 40px;
		font-size: 18px;
	}

	.page-philosophy-message .pm-value-card {
		border-radius: 15px;
		padding: 40px 20px 20px;
		gap: 10px;
	}

	.page-philosophy-message .pm-value-card__icon {
		width: 120px;
		height: 110px;
	}

	.page-philosophy-message .pm-mission-vision__lead {
		font-size: 20px;
		letter-spacing: 0.03em;
	}

	.page-philosophy-message .section-label__ja {
		font-size: 18px;
	}

	.page-philosophy-message .pm-message__inner {
		gap: 25px;
	}

	.page-philosophy-message .pm-message {
		padding: 50px 20px;
	}

	.page-philosophy-message .pm-message__photo {
		border-radius: 15px;
	}

	.page-philosophy-message .pm-message__body {
		font-size: 14px;
		line-height: 1.8;
	}

	.page-philosophy-message .pm-message__sig-name {
    	font-size: 18px;
	}
}


/* ============================================================
   会社概要 (page-company)
   ============================================================ */

/* ----- セクションラベル ----- */

.page-company .section-label {
	margin-bottom: 40px;
}

/* ----- 会社概要セクション ----- */

.page-company .co-profile-section {
	padding: 100px 40px;
}

.page-company .co-profile-section__inner {
	max-width: 1100px;
	margin: 0 auto;
}

.page-company .co-profile {
	display: flex;
	gap: 60px;
	align-items: stretch;
	margin-top: 60px;
}

/* テーブル */

.page-company .co-table {
	flex: 1;
	min-width: 0;
}

.page-company .co-table__row {
	display: flex;
	align-items: center;
	padding: 22px 0;
	/* dt幅(240px)まで青、それ以降グレーの1px下線 */
	background-image: linear-gradient(to right, #00A7D4 240px, #C8C8C8 240px);
	background-size: 100% 1px;
	background-position: bottom;
	background-repeat: no-repeat;
}

.page-company .co-table__term {
	width: 240px;
	flex-shrink: 0;
	font-weight: 500;
	font-size: 16px;
	color: #000;
	line-height: 1.7;
}

.page-company .co-table__desc {
	flex: 1;
	font-weight: 500;
	font-size: 16px;
	color: #000;
	line-height: 1.7;
	margin: 0;
	padding-left: 24px;
}

.page-company .co-table__desc a {
	color: #00A7D4;
	text-decoration: underline;
}

/* マップ */

.page-company .co-map {
	width: 420px;
	flex-shrink: 0;
	border-radius: 8px;
	overflow: hidden;
	background: #e8e8e8;
}

.page-company .co-map__iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

/* ----- 沿革セクション ----- */

.page-company .co-history-section {
	background: var(--color-light-bg);
	padding: 100px 40px;
}

.page-company .co-history-section__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

.page-company .co-history-section .section-label {
	width: 200px;
	flex-shrink: 0;
	margin-bottom: 0;
}

/* タイムライン */

.page-company .co-timeline {
	flex: 1;
	list-style: none;
	padding: 0;
	margin: 0;
	position: relative;
}

/* 縦線: year(130px) + month(50px) + node-margin-left(24px) + half-node(7px) - half-line(0.5px) = 210.5px
   top: node margin-top(6) + half-height(7) = 13px
   bottom: entry height(28) - node center(13) = 15px */
.page-company .co-timeline::before {
	content: '';
	position: absolute;
	left: 210.5px;
	top: 13px;
	bottom: 15px;
	width: 1px;
	background: #00A7D4;
	z-index: 0;
}

.page-company .co-timeline__group {
	list-style: none;
	padding: 0;
	margin: 0;
}

.page-company .co-timeline__group + .co-timeline__group {
	margin-top: 60px;
}

.page-company .co-timeline__entries {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 60px;
}

.page-company .co-timeline__entry {
	display: flex;
	align-items: flex-start;
	position: relative;
}

.page-company .co-timeline__year {
	width: 130px;
	display: flex;
	align-items: baseline;
	justify-content: flex-end;
	padding-right: 20px;
	box-sizing: border-box;
	flex-shrink: 0;
	white-space: nowrap;
}

.page-company .co-timeline__year-num {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 27px;
	letter-spacing: 0.07em;
	color: #000;
	line-height: 1;
}

.page-company .co-timeline__year-unit {
	font-weight: 700;
	font-size: 18px;
	color: #000;
	line-height: 1;
}

.page-company .co-timeline__month {
	width: 50px;
	box-sizing: border-box;
	font-family: 'Outfit', sans-serif;
	font-weight: 500;
	font-size: 16px;
	color: #000;
	flex-shrink: 0;
	line-height: 1;
	padding-top: 6px;
}

.page-company .co-timeline__node {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 3px solid #00A7D4;
	background: #fff;
	flex-shrink: 0;
	margin-left: 24px;
	margin-right: 36px;
	margin-top: 6px;
	position: relative;
	z-index: 1;
}

.page-company .co-timeline__text {
	flex: 1;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.7;
	color: #000;
	margin: 0;
}

/* ----- レスポンシブ ----- */

@media (max-width: 1024px) {
	.page-company .co-profile-section {
		padding: 80px 40px;
	}

	.page-company .section-label {
		margin-bottom: 25px;
	}

	.page-company .co-history-section {
		padding: 80px 40px;
	}

	.page-company .co-map {
		width: 220px;
		height: 280px;
	}
}

@media (max-width: 768px) {
	.page-company .co-profile-section {
		padding: 50px 20px;
	}

	.page-company .co-profile {
		flex-direction: column;
		margin-top: 0;
		gap: 25px;
	}

	.page-company .co-map {
		width: 100%;
		height: 260px;
	}

	.page-company .co-history-section {
		padding: 50px 20px;
	}

	.page-company .co-history-section__inner {
		flex-direction: column;
		gap: 32px;
	}

	.page-company .co-history-section .section-label {
		width: auto;
	}
}

@media (max-width: 600px) {
	.page-company .section-label__en {
		font-size: 16px;
	}

	.page-company .section-label__ja {
		font-size: 18px;
	}

	.page-company .co-table__term {
		width: 90px;
		font-size: 14px;
	}

	/* 見出し幅(100px)に合わせて青線幅を更新 */
	.page-company .co-table__row {
		background-image: linear-gradient(to right, #00A7D4 60px, #C8C8C8 100px);
	}

	.page-company .co-table__desc {
		font-size: 14px;
		line-height: 1.8;
		padding-left: 6px;
	}

	.page-company .co-timeline__group + .co-timeline__group {
		margin-top: 25px;
	}

	.page-company .co-timeline__entries {
		gap: 25px;
	}

	/* 縦線位置: 80(year) + 28(month) + 24(margin-left) + 7(half node) - 0.5 = 138.5px */
	.page-company .co-timeline::before {
		left: 109.5px;
	}

	.page-company .co-timeline__year {
		width: 70px;
		padding-right: 5px;
	}

	.page-company .co-timeline__year-num {
		font-size: 18px;
	}

	.page-company .co-timeline__year-unit {
		font-size: 13px;
	}

	.page-company .co-timeline__month {
		width: 26px;
		font-size: 13px;
	}

	.page-company .co-timeline__node {
		margin-left: 7px;
		margin-right: 9px;
	}

	.page-company .co-timeline__text {
		font-size: 14px;
		line-height: 1.8;
	}
}

/* ============================================================
   page-support — お問い合わせ・よくあるご質問
   ============================================================ */

/* ===== FAQ セクション ===== */

.page-support .su-faq-section {
	padding: 100px 110px;
	background: #fff;
}

.page-support .su-faq-inner {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	gap: 80px;
	align-items: flex-start;
}

.page-support .su-faq-inner .section-label {
	width: 200px;
	min-width: 200px;
	position: sticky;
	top: 80px;
}

.page-support .su-faq-content {
	flex: 1;
	min-width: 0;
}

.page-support .su-faq-category + .su-faq-category {
	margin-top: 110px;
}

.page-support .su-faq-category__heading {
	font-weight: 700;
	font-size: 18px;
	color: #0071BC;
	margin: 0 0 40px;
	line-height: 1.5;
}

.page-support .su-faq-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* ===== FAQ アイテム ===== */

.page-support .faq-item {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}

.page-support .faq-item__btn {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 24px;
	background: none;
	border: none;
	cursor: pointer;
	text-align: left;
	position: relative;
}

.page-support .faq-item__btn::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background-image: repeating-linear-gradient(to right, #00A7D4 0, #00A7D4 1px, transparent 1px, transparent 9px);
	opacity: 0;
	transition: opacity 0.3s ease;
}

.page-support .faq-item.is-open .faq-item__btn::after {
	opacity: 1;
}

.page-support .faq-item__q-label {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 24px;
	color: #00A7D4;
	flex-shrink: 0;
	line-height: 1;
}

.page-support .faq-item__q-text {
	flex: 1;
	font-weight: 500;
	font-size: 16px;
	color: #000;
	line-height: 1.6;
}

.page-support .faq-item__icon {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	position: relative;
}

.page-support .faq-item__icon::before,
.page-support .faq-item__icon::after {
	content: '';
	position: absolute;
	background: #00A7D4;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: transform 0.25s ease, opacity 0.25s ease;
}

.page-support .faq-item__icon::before {
	width: 14px;
	height: 2px;
}

.page-support .faq-item__icon::after {
	width: 2px;
	height: 14px;
}

.page-support .faq-item.is-open .faq-item__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
	opacity: 0;
}

.page-support .faq-item__answer {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.page-support .faq-item.is-open .faq-item__answer {
	grid-template-rows: 1fr;
}

.page-support .faq-item__answer-inner {
	overflow: hidden;
	min-height: 0;
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 0 24px;
}


.page-support .faq-item__a-label {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 24px;
	color: #00A7D4;
	flex-shrink: 0;
	line-height: 1;
	padding-top: 24px;
	padding-bottom: 24px;
}

.page-support .faq-item__a-text {
	flex: 1;
	min-width: 0;
	padding-top: 24px;
	padding-bottom: 24px;
}

.page-support .faq-item__a-text p {
	font-weight: 500;
	font-size: 15px;
	color: #000;
	line-height: 1.9;
	margin: 0;
}

.page-support .faq-item__a-text p + p {
	margin-top: 10px;
}

.page-support .faq-item__a-text a {
	color: #959595;
	text-decoration: underline;
}

.page-support .faq-item__formula {
	background: #F5F5F5;
	border-left: 3px solid #00A7D4;
	padding: 10px 14px;
	border-radius: 0 4px 4px 0;
	font-size: 14px;
	line-height: 1.8;
}

.page-support .faq-note-ref {
	font-size: 0.75em;
	vertical-align: super;
	line-height: 0;
	color: var(--color-sub);
}

.page-support .faq-item__note {
	font-weight: 500;
	font-size: 13px;
	color: var(--color-sub);
	line-height: 1.8;
	margin: 0;
	display: flex;
	gap: 4px;
}

.page-support .faq-note-marker {
	flex-shrink: 0;
}

/* ===== お問い合わせセクション ===== */

.page-support .su-contact-section {
	background: url('../../images/support/contact_background.jpg') center / cover no-repeat;
	padding: 100px 110px;
}

.page-support .su-contact-inner {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	gap: 80px;
	align-items: flex-start;
}

.page-support .su-contact-inner .section-label {
	width: 200px;
	min-width: 200px;
}

.page-support .su-contact-content {
	flex: 1;
	min-width: 0;
}

.page-support .su-contact-lead {
	font-weight: 700;
	font-size: 20px;
	color: #000;
	line-height: 1.8;
	margin: 0 0 32px;
}

.page-support .su-contact-action {
	display: flex;
	align-items: center;
	gap: 32px;
}

.page-support .su-contact-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #00A7D4;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	padding: 16px 36px;
	border-radius: 50px;
	white-space: nowrap;
	text-decoration: none;
	flex-shrink: 0;
	box-shadow: 0 0 20px rgba(0, 167, 212, 0.15);
	transition: opacity 0.2s;
}

.page-support .su-contact-btn:hover {
	opacity: 0.8;
}

.page-support .su-contact-notes {
	flex: 1;
}

.page-support .su-contact-notes p {
	font-weight: 500;
	font-size: 13px;
	color: var(--color-sub);
	line-height: 1.8;
	margin: 0;
}

/* ============================================================
   IR情報 (page-ir)
   ============================================================ */

.page-ir .ir-section {
	padding: 100px 110px;
}

.page-ir .ir-section--alt {
	background: var(--color-light-bg);
}

.page-ir .ir-section__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	gap: 80px;
	align-items: flex-start;
}

.page-ir .ir-section__label {
	width: 400px;
	min-width: 330px;
	position: sticky;
	top: 80px;
}

.page-ir .ir-section__label .section-label__ja {
	white-space: nowrap;
}

.page-ir .ir-section__label .section-label__en {
	white-space: nowrap;
}

.page-ir .ir-section__content {
	flex: 1;
	min-width: 0;
}

.page-ir .ir-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.page-ir .ir-list__item {
	border-top: 1px solid #E5E5E5;
}

.page-ir .ir-list__item:first-child {
	border-top: none;
}

.page-ir .ir-list__item:last-of-type {
	border-bottom: 1px solid #E5E5E5;
}

.page-ir .ir-list__expandable {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

/* 追加アイテム先頭：item5のborder-bottomと重ならないよう上線なし */
.page-ir .ir-list__expandable-inner .ir-list__item:first-child {
	border-top: none;
}

/* 追加アイテム末尾：下線を付与 */
.page-ir .ir-list__expandable-inner .ir-list__item:last-child {
	border-bottom: 1px solid #E5E5E5;
}

.page-ir .ir-list__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 4px;
	text-decoration: none;
	color: #000;
	font-weight: 500;
	transition: color 0.2s;
}

.page-ir .ir-list__link:hover {
	color: #00A7D4;
	opacity: 1;
}

.page-ir .ir-list__text {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.6;
	color: #000;
}

.page-ir .ir-list__pdf-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	display: block;
}

.page-ir .ir-list__chevron {
	width: 8px;
	height: 8px;
	border-top: 2px solid #00A7D4;
	border-right: 2px solid #00A7D4;
	transform: rotate(45deg);
	flex-shrink: 0;
}

.page-ir .ir-more-wrap {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

.page-ir .ir-more-wrap[hidden] {
	display: none;
}

.page-ir .ir-more-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 13px 40px;
	border: 1px solid #00A7D4;
	border-radius: 50px;
	background: #fff;
	color: #00A7D4;
	font-weight: 500;
	font-size: 15px;
	cursor: pointer;
	transition: background 0.2s, color 0.2s;
}

.page-ir .ir-more-btn:hover {
	background: #00A7D4;
	color: #fff;
	opacity: 1;
}

.page-ir .ir-more-icon {
	display: block;
	width: 7px;
	height: 7px;
	border-bottom: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
	margin-top: -4px;
}

/* ===== レスポンシブ ===== */

@media (max-width: 1024px) {
	.page-ir .ir-section {
		padding: 80px 40px;
	}

	.page-ir .ir-section__inner {
		gap: 48px;
	}

	.page-ir .ir-section__label {
		width: 260px;
		min-width: 260px;
	}

	.page-ir .ir-list__text {
		font-size: 14px;
	}

	.page-support .su-faq-section {
		padding: 80px 40px;
	}

	.page-ir .ir-more-btn {
		font-size: 14px;
	}

	.page-support .su-faq-inner {
		gap: 48px;
	}

	.page-support .su-faq-inner .section-label {
		width: 160px;
		min-width: 160px;
	}

	.page-support .su-faq-category + .su-faq-category {
		margin-top: 80px;
	}

	.page-support .su-contact-section {
		padding: 80px 40px;
	}

	.page-support .su-contact-inner {
		gap: 48px;
	}

	.page-support .su-contact-inner .section-label {
		width: 160px;
		min-width: 160px;
	}

	.page-support .su-contact-lead {
		font-size: 18px;
	}
}

@media (max-width: 768px) {
	.page-ir .ir-section {
		padding: 50px 20px;
	}

	.page-ir .ir-section__inner {
		flex-direction: column;
		align-items: stretch;
		gap: 32px;
	}

	.page-ir .ir-section__label {
		width: auto;
		min-width: 0;
		position: static;
	}

	.page-support .su-faq-section {
		padding: 60px 20px;
	}

	.page-support .su-faq-inner {
		flex-direction: column;
		gap: 32px;
	}

	.page-support .su-faq-inner .section-label {
		width: auto;
		min-width: 0;
		position: static;
	}

	.page-support .su-faq-category + .su-faq-category {
		margin-top: 60px;
	}

	.page-support .su-faq-category__heading {
		font-size: 16px;
	}

	.page-support .faq-item__btn {
		padding: 16px 16px;
	}

	.page-support .faq-item__q-text {
		font-size: 14px;
		line-height: 1.8;
	}

	.page-support .faq-item__answer-inner {
		padding: 0 16px;
	}

	.page-support .su-contact-section {
		padding: 48px 20px;
	}

	.page-support .su-contact-inner {
		flex-direction: column;
		gap: 24px;
	}

	.page-support .su-contact-inner .section-label {
		width: auto;
		min-width: 0;
	}

	.page-support .su-contact-lead {
		font-size: 16px;
	}

	.page-support .su-contact-action {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
}


/* ============================================================
   お知らせ一覧 (page-news)
   ============================================================ */

.page-news .news-section {
	padding: 100px 110px;
}

.page-news .news-section__inner {
	max-width: 855px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 100px;
}

.page-news .news-year-group {
	display: flex;
	flex-direction: column;
}

.page-news .news-year-group[hidden] {
	display: none;
}

.page-news .news-year-col {
	width: auto;
	min-width: 0;
	margin-bottom: 32px;
}

.page-news .news-year {
	font-weight: 500;
	font-size: 30px;
	color: #0071BC;
	line-height: 1;
	letter-spacing: 0.05em;
}

.page-news .news-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.page-news .news-list__item {
	border-bottom: 1px solid #E5E5E5;
}

.page-news .news-list__link {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 28px 0;
	text-decoration: none;
	color: #000;
	transition: color 0.2s;
}

.page-news .news-list__link:hover {
	color: #00A7D4;
	opacity: 1;
}

.page-news .news-list__date {
	font-weight: 500;
	font-size: 14px;
	color: #959595;
	line-height: 1;
}

.page-news .news-list__title {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.6;
	color: inherit;
}

.page-news .news-list__pdf-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	display: block;
}

/* ===== ページネーション ===== */

.page-news .news-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	margin-top: 64px;
}

.page-news .news-pagination__pages {
	display: flex;
	align-items: center;
	gap: 4px;
}

.page-news .news-pagination__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 40px;
	padding: 0 6px;
	border: none;
	background: none;
	color: #959595;
	font-family: 'Outfit', sans-serif;
	font-weight: 500;
	font-size: 20px;
	cursor: pointer;
	transition: color 0.2s;
	line-height: 1;
}

.page-news .news-pagination__prev,
.page-news .news-pagination__next {
	font-size: 20px;
}

.page-news .news-pagination__prev::before,
.page-news .news-pagination__next::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
}

.page-news .news-pagination__prev::before {
	transform: rotate(-135deg);
}

.page-news .news-pagination__next::before {
	transform: rotate(45deg);
}

.page-news .news-pagination__btn:hover:not(:disabled) {
	color: #00A7D4;
}

.page-news .news-pagination__btn--active {
	color: #00A7D4;
	font-weight: 700;
}

.page-news .news-pagination__btn:disabled {
	opacity: 0.3;
	cursor: default;
}

/* ===== レスポンシブ ===== */

@media (max-width: 1024px) {
	.page-news .news-section {
		padding: 80px 40px;
	}

	.page-news .news-section__inner {
		gap: 80px;
	}
}

@media (max-width: 768px) {
	.page-news .news-section {
		padding: 48px 20px 80px;
	}

	.page-news .news-section__inner {
		gap: 64px;
	}

	.page-news .news-year {
		font-size: 32px;
	}

	.page-news .news-year-col {
		margin-bottom: 15px;
	}

	.page-news .news-list__link {
		padding: 20px 0;
	}

	.page-news .news-list__title {
		font-size: 14px;
		line-height: 1.8;
	}

}

/* =============================================================
   NEWS DETAIL PAGE (page-news-detail)
   ============================================================= */

.page-news-detail .inner-hero__dot {
	display: none;
}

.page-news-detail .inner-hero__en {
	font-size: 14px;
	color: var(--color-muted);
	font-family: 'Outfit', sans-serif;
	font-weight: 400;
}

.page-news-detail .inner-hero__ja {
	font-size: 28px;
}

.page-news-detail .inner-content {
	margin-top: 70px;
}

.page-news-detail .news-article__header {
	padding-bottom: 28px;
	margin-bottom: 48px;
	border-bottom: 1px solid #E0E0E0;
}

.page-news-detail .news-article__date {
	font-size: 14px;
	color: var(--color-text-muted);
	margin-bottom: 14px;
}

.page-news-detail .news-article__title {
	font-size: 26px;
	font-weight: 700;
	line-height: 1.6;
	color: #000;
}

.page-news-detail .news-article__body {
	font-size: 16px;
	line-height: 30px;
	color: #000;
}

.page-news-detail .news-article__body p + p {
	margin-top: 24px;
}

.page-news-detail .news-article__back {
	margin-top: 64px;
	display: flex;
	justify-content: center;
}

.page-news-detail .news-article__back .btn-blue {
	padding: 16px 56px;
}

@media (max-width: 600px) {
	.page-news-detail .inner-content {
		margin-top: 40px;
	}

	.page-news-detail .news-article__title {
		font-size: 20px;
	}

	.page-news-detail .news-article__body {
		font-size: 15px;
		line-height: 26px;
	}

	.page-news-detail .news-article__body p + p {
		margin-top: 20px;
	}

	.page-news-detail .inner-hero__ja {
		font-size: 18px;
	}
}

/* =============================================================
   PRODUCTS PAGE
   ============================================================= */

/* --- キャッチ --- */
.page-products .pr-catch {
	padding: 100px 90px;
}
.page-products .pr-catch__inner {
	display: flex;
	align-items: center;
	max-width: 1220px;
	margin: 0 auto;
}
.page-products .pr-catch__text {
	flex: 1;
}
.page-products .pr-catch__title {
	font-size: 37px;
	font-weight: 700;
	line-height: 1.6;
	color: #000;
	margin-bottom: 36px;
	letter-spacing: 0.74px;
}
.page-products .pr-catch__title-en {
	font-family: 'Outfit', sans-serif;
	font-weight: 700;
	font-size: 40px;
	font-style: normal;
	letter-spacing: 1.2px;
}
.page-products .pr-catch__body {
	font-size: 18px;
	line-height: 2;
	color: #000;
}
.page-products .pr-catch__image {
	flex: 0 0 500px;
	overflow: hidden;
}
.page-products .pr-catch__image img {
	width: calc(100% + 100px);
	height: auto;
	margin: -50px;
	display: block;
}

/* --- pr-hoken コンテナ（ライトブルー丸角） --- */
.page-products .pr-hoken {
	margin: 0 20px;
	background: linear-gradient(to bottom, #effbfe, #f2fbfd);
	border-radius: 20px;
}
.page-products .pr-hoken__inner {
	padding: 100px 0;
	max-width: 1220px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 60px;
}
.page-products .pr-hoken__block {
	display: flex;
	flex-direction: column;
	gap: 30px;
}
.page-products .pr-hoken__block-heading {
	display: flex;
	align-items: center;
	gap: 24px;
	position: relative;
	padding-left: 32px;
}
.page-products .pr-hoken__dot {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
	background: #00A7D4;
	border-radius: 50%;
	filter: blur(5px);
}
.page-products .pr-hoken__block-title {
	font-size: 28px;
	font-weight: 700;
	color: #000;
	white-space: nowrap;
}
.page-products .pr-hoken__block-sub {
	font-size: 18px;
	font-weight: 500;
	color: #000;
	white-space: nowrap;
}
.page-products .pr-hoken__block-desc {
	font-size: 15px;
	line-height: 1.9;
	color: #000;
	letter-spacing: 0.15px;
}

/* --- しくみ 3カードレイアウト --- */
.page-products .pr-shikumi__cards {
	display: grid;
	grid-template-columns: 1fr 29px 1fr 29px 1fr;
	align-items: stretch;
	gap: 0 15px;
}
.page-products .pr-shikumi__card {
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 0 30px rgba(0, 167, 212, 0.15);
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.page-products .pr-shikumi__card-header {
	background: #00A7D4;
	padding: 0 20px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	line-height: 1.4;
	flex-shrink: 0;
}
.page-products .pr-shikumi__card-content {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 30px 10px;
}
.page-products .pr-shikumi__card-title {
	font-size: 20px;
	font-weight: 600;
	color: #000;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.44px;
	margin-bottom: 28px;
}
.page-products .pr-shikumi__card-content img {
	width: 100%;
	max-width: 200px;
	height: 140px;
	display: block;
	margin: 0 auto 28px;
	object-fit: contain;
}
.page-products .pr-shikumi__card-desc {
	font-size: 14px;
	font-weight: 500;
	text-align: center;
	line-height: 1.8;
}
.page-products .pr-shikumi__arrow {
	align-self: center;
	width: 36px;
	height: 36px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* --- プラン --- */
.page-products .pr-plan {
	padding: 100px 90px;
	background: #fff;
}
.page-products .pr-plan__inner {
	max-width: 1220px;
	margin: 0 auto;
}
.page-products .pr-plan__title {
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 20px;
	color: #000;
}
.page-products .pr-plan__hr {
	border: none;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
	margin: 0 0 30px;
}
.page-products .pr-plan__subtitle {
	font-size: 18px;
	line-height: 35px;
	text-align: center;
	color: #000;
	margin-bottom: 48px;
}
.page-products .pr-plan__cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 19px;
}
.page-products .pr-plan__card {
	border-radius: 20px;
	box-shadow: 0 0 30px rgba(0, 167, 212, 0.15);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background: #e3f3f7;
}
.page-products .pr-plan__card-header {
	position: relative;
	min-height: 165px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px 36px;
}
.page-products .pr-plan__card-banner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}
.page-products .pr-plan__card-logo {
	max-width: 324px;
	width: 100%;
	height: auto;
	display: block;
	position: relative;
	z-index: 1;
	padding-bottom: 20px;
}
.page-products .pr-plan__card-logo--bg {
	max-width: 360px;
}
.page-products .pr-plan__card-body {
	padding: 24px 36px 40px;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.page-products .pr-plan__card-subtitle {
	font-size: 20px;
	font-weight: 700;
	color: #0071BC;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.6px;
	margin-bottom: 24px;
}
.page-products .pr-plan__card-features-label {
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	color: #000;
	margin-bottom: 12px;
}
.page-products .pr-plan__card-features-box {
	background: #F6FCFF;
	border-radius: 15px;
	padding: 16px 24px;
	flex: 1;
	margin-bottom: 32px;
}
.page-products .pr-plan__card-features {
	list-style: none;
}
.page-products .pr-plan__card-features li {
	font-size: 14px;
	line-height: 27px;
	color: #000;
}
.page-products .pr-plan__btn {
	align-self: center;
	justify-content: center;
	min-width: 235px;
}

/* --- トラブル（WHITE背景・ブルー枠カード） --- */
.page-products .pr-trouble {
	padding: 100px 90px;
	background: #fff;
}
.page-products .pr-trouble__inner {
	max-width: 1220px;
	margin: 0 auto;
}
.page-products .pr-trouble__title {
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	color: #000;
	margin-bottom: 20px;
}
.page-products .pr-trouble__hr {
	border: none;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
	margin: 0 0 30px;
}
.page-products .pr-trouble__subtitle {
	font-size: 18px;
	line-height: 35px;
	color: #000;
	text-align: center;
	margin-bottom: 56px;
}
.page-products .pr-trouble__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-bottom: 28px;
}
.page-products .pr-trouble__item {
	background: #fff;
	border: 1px solid #00A7D4;
	border-radius: 20px;
	box-shadow: 0 0 15px rgba(0, 167, 212, 0.15);
	padding: 30px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-evenly;
	min-height: 320px;
	gap: 40px;
}
.page-products .pr-trouble__item img {
	max-width: 160px;
	width: 100%;
	height: auto;
	flex-shrink: 0;
}
.page-products .pr-trouble__item-text {
	font-size: 16px;
	color: #000;
	text-align: center;
	line-height: 27px;
}
.page-products .pr-trouble__item-text small {
	display: block;
	font-size: 12px;
	color: #666;
	margin-top: 4px;
}
.page-products .pr-trouble__note {
	font-size: 14px;
	line-height: 27px;
	color: #000;
}

/* --- サマリー --- */
.page-products .pr-summary {
	margin: 0 20px 20px;
	padding: 100px 90px;
	background: url('../../images/common/back_gradetion.png') center center / cover no-repeat;
	border-radius: 20px;
}
.page-products .pr-summary__inner {
	max-width: 1220px;
	margin: 0 auto;
	text-align: center;
}
.page-products .pr-summary__title {
	font-size: 30px;
	font-weight: 700;
	color: #000;
	margin-bottom: 12px;
	letter-spacing: 0.9px;
}
.page-products .pr-summary__sub {
	font-size: 20px;
	color: #000;
	margin-bottom: 20px;
	letter-spacing: 0.6px;
}
.page-products .pr-summary__hr {
	border: none;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
	margin: 0 0 40px;
}
.page-products .pr-summary__no1 {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	margin-bottom: 40px;
}
.page-products .pr-summary__no1-deco {
	width: 37px;
	height: auto;
}
.page-products .pr-summary__no1-deco--right {
	transform: scaleX(1px);
}
.page-products .pr-summary__no1-content {
	display: flex;
	align-items: center;
	gap: 16px;
}
.page-products .pr-summary__no1-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.page-products .pr-summary__no1-label {
	font-size: 25px;
	font-weight: 700;
	color: #000;
	letter-spacing: 0.75px;
}
.page-products .pr-summary__no1-badge {
	width: 135px;
	height: auto;
	flex-shrink: 0;
}
.page-products .pr-summary__no1-source {
	font-size: 12px;
	color: #6d6d6d;
	text-align: left;
}
.page-products .pr-summary__no1-source a {
	font-size: 12px;
	color: #6d6d6d;
}

.page-products .pr-summary__products {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 32px;
	max-width: 1220px;
	margin: 0 auto;
}
.page-products .pr-summary__product {
	background: #fff;
	border-radius: 30px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
	padding: 40px 60px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	text-align: center;
	text-decoration: none;
}
.page-products .pr-summary__product-logo {
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.page-products .pr-summary__product-logo img {
	max-width: 345px;
	max-height: 80px;
	width: auto;
	height: auto;
	object-fit: contain;
}
.page-products .pr-summary__product-text {
	font-size: 16px;
	font-weight: 700;
	color: #0071BC;
	line-height: 1.5;
	letter-spacing: 0.48px;
	text-decoration: none;
}

/* --- レスポンシブ 1024px --- */
@media (max-width: 1024px) {
	.page-products .pr-catch {
		padding: 80px 40px;
	}
	.page-products .pr-hoken {
		margin: 0 10px;
	}
	.page-products .pr-hoken__inner {
		padding: 80px 40px;
	}
	.page-products .pr-summary {
		margin: 0 10px;
		padding: 80px 40px;
	}
	.page-products .pr-plan,
	.page-products .pr-trouble {
		padding: 80px 40px;
	}
	.page-products .pr-hoken__block-sub {
		font-size: 17px;
	}
}

/* --- レスポンシブ 768px --- */
@media (max-width: 768px) {
	.page-products .pr-catch {
		padding: 50px 24px;
	}
	.page-products .pr-catch__inner {
		flex-direction: column;
		gap: 32px;
	}
	.page-products .pr-catch__image {
		flex: 0 0 auto;
		width: 100%;
		max-width: 320px;
		margin: 0 auto;
		overflow: unset;
	}
	.page-products .pr-catch__title {
		font-size: 24px;
	}
	.page-products .pr-catch__body {
		font-size: 15px;
	}
	.page-products .pr-hoken {
		margin: 0;
		border-radius: 0;
	}
	.page-products .pr-hoken__inner {
		padding: 50px 20px;
		gap: 50px;
	}
	.page-products .pr-hoken__block-heading {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
	.page-products .pr-hoken__block-sub {
		white-space: normal;
		font-size: 14px;
	}
	.page-products .pr-hoken__block {
		gap: 25px;
	}
	.page-products .pr-hoken__block-title {
		font-size: 20px;
	}
	.page-products .pr-shikumi__cards {
		grid-template-columns: 1fr;
		gap: 20px 0;
	}
	.page-products .pr-shikumi__arrow {
		transform: rotate(90deg);
		margin: 0 auto;
	}
	/* 保険の種類のドット位置調整（サブタイトルなしのため下げる） */
	.page-products .pr-hoken__block:nth-child(2) .pr-hoken__dot {
		transform: translateY(calc(-50% + 9px));
	}
	.page-products .pr-summary {
		margin: 0;
		border-radius: 0;
		padding: 60px 24px;
	}
	.page-products .pr-summary__product-text {
		font-size: 14px;
		line-height: 1.8;
	}
	.page-products .pr-plan,
	.page-products .pr-trouble {
		padding: 50px 20px;
	}
	.page-products .pr-plan__title,
	.page-products .pr-trouble__title,
	.page-products .pr-summary__title {
		font-size: 20px;
	}
	.page-products .pr-plan__subtitle,
	.page-products .pr-trouble__subtitle {
		font-size: 15px;
	}
	.page-products .pr-plan__cards {
		grid-template-columns: 1fr;
	}
	.page-products .pr-plan__hr {
		margin: 0 0 25px;
	}
	.page-products .pr-trouble__grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}
	.page-products .pr-trouble__item {
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
		min-height: auto;
		padding: 20px;
		gap: 20px;
	}
	.page-products .pr-trouble__item img {
		width: 72px;
		flex-shrink: 0;
	}
	.page-products .pr-trouble__item-text {
		font-size: 13px;
		text-align: left;
		line-height: 1.7;
	}

	.page-products .pr-trouble__hr {
		margin: 0 0 25px;
	}
	.page-products .pr-summary__no1-label {
		font-size: 18px;
	}
	.page-products .pr-summary__products {
		grid-template-columns: 1fr;
	}
	.page-products .pr-summary__product {
		padding: 25px 20px;
		border-radius: 15px;
	}
	/* border-radius 15px */
	.page-products .pr-shikumi__card {
		border-radius: 15px;
	}
	.page-products .pr-plan__card {
		border-radius: 15px;
	}
	.page-products .pr-trouble__item {
		border-radius: 15px;
	}
	/* hoken block title wrap */
	.page-products .pr-hoken__block-title {
		white-space: normal;
	}
	.page-products .pr-hoken__block-heading {
		padding-left: 25px;
	}
	.page-products .pr-hoken__dot {
		top: 23%;
		width: 12px;
    	height: 12px;
	}
	.page-products .pr-hoken__block-desc {
		font-size: 14px;
		line-height: 1.8;
	}
	.page-products .pr-shikumi__card-header {
		font-size: 14px;
		height: 48px;
	}
	.page-products .pr-shikumi__card-content {
		padding: 20px;
	}
	.page-products .pr-shikumi__card-title {
		font-size: 16px;
		margin-bottom: 25px;
	}
	.page-products .pr-shikumi__card-content img {
		height: 120px;
		margin: 0 auto 20px;
	}
	
	/* catch title-en size */
	.page-products .pr-catch__title-en {
		font-size: 23px;
	}
	.page-products .pr-catch__title {
		font-size: 20px;
		margin-bottom: 25px;
	}
	/* subtitle text-align left */
	.page-products .pr-plan__subtitle,
	.page-products .pr-trouble__subtitle {
		text-align: left;
		line-height: 1.8;
		margin-bottom: 25px;
	}
	/* summary no1 layout */
	.page-products .pr-summary__no1 {
		position: relative;
		flex-direction: column;
		align-items: center;
		gap: 8px;
		padding: 0 16px;
	}
	.page-products .pr-summary__no1-deco {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 44px;
		left: -10px;
		margin-bottom: 0;
	}
	.page-products .pr-summary__no1-deco--right {
		left: auto;
		right: -10px;
	}
	.page-products .pr-summary__no1-content {
		position: relative;
		z-index: 1;
		flex-direction: column;
		align-items: center;
		gap: 8px;
		width: 100%;
	}
	.page-products .pr-summary__no1-badge {
		width: 100px;
	}
	.page-products .pr-summary__no1-label {
		font-size: 13px;
		text-align: center;
	}
	/* product logo overflow fix */
	.page-products .pr-summary__product-logo {
		height: auto;
		max-width: 100%;
	}
	.page-products .pr-summary__product-logo img {
		max-width: 80%;
		max-height: 60px;
	}
	.page-products .pr-summary__sub {
		font-size: 18px;
	}

	.page-products .pr-summary__no1-text {
		align-items: center;
		text-align: center;
	}

	/* plan card body padding */
	.page-products .pr-plan__subtitle {
		margin-bottom: 25px;
	}
	.page-products .pr-plan__card-header {
		min-height: unset;
	}
	.page-products .pr-plan__card-body {
		padding: 20px 20px 32px;
	}
	.page-products .pr-plan__card-subtitle {
		font-size: 16px;
	}
	.page-products .pr-plan__card-features-label {
	}
	.page-products .pr-plan__card-features-box {
		padding: 16px 20px;
		margin-bottom: 25px;
	}
	.page-products .pr-plan__card-features li {
		line-height: 24px;
	}
}

/* ============================================================
   お店のあんしん保険 (page-products-anshin)
   ============================================================ */

/* ----- 共通コンテナ ----- */
.page-products-anshin .anshin-container {
	max-width: 1200px;
	margin: 0 auto;
}

/* ----- 商品概要セクション ----- */
.page-products-anshin .anshin-overview {
	padding: 80px 0 60px;
	background: #fff;
}

.page-products-anshin .anshin-overview .section-label {
	margin-bottom: 32px;
}

.page-products-anshin .anshin-lead {
	font-size: 16px;
	line-height: 1.9;
	color: var(--color-text);
	margin-bottom: 40px;
}

.page-products-anshin .anshin-plan-table-wrap {
	overflow-x: auto;
}

.page-products-anshin .anshin-plan-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 16px;
}

.page-products-anshin .anshin-plan-table th,
.page-products-anshin .anshin-plan-table td {
	padding: 16px 24px;
	border: 1px solid #D9EFF5;
	text-align: left;
}

.page-products-anshin .anshin-plan-table thead th {
	background: #00A7D4;
	color: #fff;
	font-weight: 700;
	text-align: center;
}

.page-products-anshin .anshin-plan-table thead th:first-child {
	background: #E8F6FC;
	color: var(--color-heading-dark);
}

.page-products-anshin .anshin-plan-table tbody td {
	vertical-align: middle;
}

.page-products-anshin .anshin-plan-table tbody tr:nth-child(even) td {
	background: var(--color-light-bg);
}

.page-products-anshin .plan-table__check {
	text-align: center;
	color: #00A7D4;
	font-weight: 700;
	font-size: 18px;
}

.page-products-anshin .plan-table__opt {
	text-align: center;
	color: var(--color-sub);
	font-size: 13px;
}

/* ----- 補償内容セクション ----- */
.page-products-anshin .anshin-coverage {
	padding: 40px 0 60px;
}

.page-products-anshin .anshin-coverage .section-label {
	margin-bottom: 40px;
}

/* ----- アコーディオン ----- */
.page-products-riskguard .cov-accordion,
.page-products-anshin .cov-accordion ,
.page-products-powerup .cov-accordion{
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 12px rgba(0, 167, 212, 0.1);
	margin-bottom: 16px;
}

.page-products-riskguard .cov-accordion__btn,
.page-products-anshin .cov-accordion__btn ,
.page-products-powerup .cov-accordion__btn{
	width: 100%;
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px 32px;
	background: #00A7D4;
	border: none;
	cursor: pointer;
	text-align: left;
	transition: background 0.2s ease;
}

.page-products-riskguard .cov-accordion__btn:hover,
.page-products-anshin .cov-accordion__btn:hover ,
.page-products-powerup .cov-accordion__btn:hover{
	filter: brightness(0.92);
}

.page-products-riskguard .cov-accordion.is-open .cov-accordion__btn,
.page-products-anshin .cov-accordion.is-open .cov-accordion__btn ,
.page-products-powerup .cov-accordion.is-open .cov-accordion__btn{
	background: #00A7D4;
}

/* オプションアコーディオン（04）：タイトル+タグを左寄せ、アイコンを右端に */
.page-products-riskguard .cov-accordion--option .cov-accordion__title,
.page-products-anshin .cov-accordion--option .cov-accordion__title ,
.page-products-powerup .cov-accordion--option .cov-accordion__title{
	flex: none;
}
.page-products-riskguard .cov-accordion--option .cov-accordion__icon,
.page-products-anshin .cov-accordion--option .cov-accordion__icon ,
.page-products-powerup .cov-accordion--option .cov-accordion__icon{
	margin-left: auto;
}

/* オプションアコーディオン（04）ネイビー */
.page-products-riskguard .cov-accordion--option,
.page-products-anshin .cov-accordion--option ,
.page-products-powerup .cov-accordion--option{
	box-shadow: none;
	box-shadow: 0 0 0 1px #0071BC, 0 2px 12px rgba(0, 167, 212, 0.1)!important;
}
.page-products-riskguard .cov-accordion--option .cov-accordion__btn,
.page-products-anshin .cov-accordion--option .cov-accordion__btn,
.page-products-riskguard .cov-accordion--option.is-open .cov-accordion__btn,
.page-products-anshin .cov-accordion--option.is-open .cov-accordion__btn ,
.page-products-powerup .cov-accordion--option.is-open .cov-accordion__btn{
	background: #0071BC;
}
/* 04内：保険金数字・テーブルヘッダーをネイビーに */
.page-products-riskguard .cov-accordion--option .cov-amount__num,
.page-products-anshin .cov-accordion--option .cov-amount__num ,
.page-products-powerup .cov-accordion--option .cov-amount__num{
	color: #0071BC;
}
.page-products-riskguard .cov-accordion--option .cov-table thead th,
.page-products-anshin .cov-accordion--option .cov-table thead th ,
.page-products-powerup .cov-accordion--option .cov-table thead th{
	background: #0071BC;
}

/* 数字バッジ */
.page-products-riskguard .cov-accordion__badge,
.page-products-anshin .cov-accordion__badge ,
.page-products-powerup .cov-accordion__badge{
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	color: #fff;
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 28px;
	flex-shrink: 0;
	line-height: 1;
	min-width: 2em;
}

/* タイトル */
.page-products-riskguard .cov-accordion__title,
.page-products-anshin .cov-accordion__title ,
.page-products-powerup .cov-accordion__title{
	flex: 1;
	font-weight: 700;
	font-size: 20px;
	color: #fff;
	line-height: 1.4;
}

/* オプションタグ（アコーディオンボタン内） */
.page-products-riskguard .cov-accordion__option-tag,
.page-products-anshin .cov-accordion__option-tag ,
.page-products-powerup .cov-accordion__option-tag{
	display: inline-flex;
	align-items: center;
	padding: 3px 12px;
	border: 1px solid rgba(255, 255, 255, 0.8);
	border-radius: 20px;
	font-size: 13px;
	font-weight: 500;
	color: #fff;
	white-space: nowrap;
	flex-shrink: 0;
}

/* ∨／∧ トグルアイコン（シェブロン） */
.page-products-riskguard .cov-accordion__icon,
.page-products-anshin .cov-accordion__icon ,
.page-products-powerup .cov-accordion__icon{
	position: relative;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.page-products-riskguard .cov-accordion__icon::before,
.page-products-anshin .cov-accordion__icon::before,
.page-products-riskguard .cov-accordion__icon::after,
.page-products-anshin .cov-accordion__icon::after ,
.page-products-powerup .cov-accordion__icon::after{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transition: opacity 0.2s ease;
}

.page-products-riskguard .cov-accordion__icon::before,
.page-products-anshin .cov-accordion__icon::before ,
.page-products-powerup .cov-accordion__icon::before{
	transform: translate(-50%, -65%) rotate(45deg);
	opacity: 1;
}

.page-products-riskguard .cov-accordion__icon::after,
.page-products-anshin .cov-accordion__icon::after ,
.page-products-powerup .cov-accordion__icon::after{
	transform: translate(-50%, -35%) rotate(-135deg);
	opacity: 0;
}

.page-products-riskguard .cov-accordion.is-open .cov-accordion__icon::before,
.page-products-anshin .cov-accordion.is-open .cov-accordion__icon::before ,
.page-products-powerup .cov-accordion.is-open .cov-accordion__icon::before{
	opacity: 0;
}

.page-products-riskguard .cov-accordion.is-open .cov-accordion__icon::after,
.page-products-anshin .cov-accordion.is-open .cov-accordion__icon::after ,
.page-products-powerup .cov-accordion.is-open .cov-accordion__icon::after{
	opacity: 1;
}

/* アコーディオン本体 */
.page-products-riskguard .cov-accordion__body,
.page-products-anshin .cov-accordion__body ,
.page-products-powerup .cov-accordion__body{
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.35s ease;
}

.page-products-riskguard .cov-accordion.is-open .cov-accordion__body,
.page-products-anshin .cov-accordion.is-open .cov-accordion__body ,
.page-products-powerup .cov-accordion.is-open .cov-accordion__body{
	max-height: 10000px;
}

.page-products-riskguard .cov-accordion.is-open,
.page-products-anshin .cov-accordion.is-open ,
.page-products-powerup .cov-accordion.is-open{
	box-shadow: 0 0 0 2px #00A7D4, 0 2px 12px rgba(0, 167, 212, 0.1);
}

/* ----- アコーディオン内コンテンツ ----- */
.page-products-riskguard .cov-body,
.page-products-anshin .cov-body ,
.page-products-powerup .cov-body{
	padding: 48px 40px;
}

.page-products-riskguard .cov-body__top,
.page-products-anshin .cov-body__top ,
.page-products-powerup .cov-body__top{
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 48px;
	align-items: start;
	margin-bottom: 48px;
}

/* 価格表示 */
.page-products-riskguard .cov-price,
.page-products-anshin .cov-price ,
.page-products-powerup .cov-price{
	display: flex;
	align-items: baseline;
	gap: 6px;
	margin-bottom: 24px;
}

.page-products-riskguard .cov-price__label,
.page-products-anshin .cov-price__label ,
.page-products-powerup .cov-price__label{
	font-size: 13px;
	font-weight: 700;
	color: #00A7D4;
	background: var(--color-light-bg);
	border: 1px solid #00A7D4;
	border-radius: 4px;
	padding: 3px 10px;
	line-height: 1.4;
}

.page-products-riskguard .cov-price__num,
.page-products-anshin .cov-price__num ,
.page-products-powerup .cov-price__num{
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 52px;
	color: #00A7D4;
	line-height: 1;
}

.page-products-riskguard .cov-price__unit,
.page-products-anshin .cov-price__unit ,
.page-products-powerup .cov-price__unit{
	font-size: 20px;
	font-weight: 700;
	color: #00A7D4;
}

.page-products-riskguard .cov-body__text,
.page-products-anshin .cov-body__text ,
.page-products-powerup .cov-body__text{
	font-size: 15px;
	line-height: 1.9;
	color: var(--color-text);
}

.page-products-riskguard .cov-body__photo img,
.page-products-anshin .cov-body__photo img ,
.page-products-powerup .cov-body__photo img{
	width: 100%;
	height: 260px;
	object-fit: cover;
	border-radius: 10px;
	display: block;
}

/* アイコングリッド */
.page-products-anshin .cov-icons ,
.page-products-powerup .cov-icons {
	background: var(--color-light-bg);
	border-radius: 10px;
	padding: 32px;
	margin-bottom: 40px;
}

.page-products-anshin .cov-icons__title ,
.page-products-powerup .cov-icons__title {
	font-weight: 700;
	font-size: 15px;
	color: var(--color-heading-dark);
	margin-bottom: 20px;
}

.page-products-anshin .cov-icons__grid ,
.page-products-powerup .cov-icons__grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 12px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.page-products-anshin .cov-icon-item ,
.page-products-powerup .cov-icon-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	background: #fff;
	border-radius: 8px;
	padding: 18px 8px 14px;
	text-align: center;
}

.page-products-anshin .cov-icon-item img ,
.page-products-powerup .cov-icon-item img {
	width: 52px;
	height: auto;
}

.page-products-anshin .cov-icon-item span ,
.page-products-powerup .cov-icon-item span {
	font-size: 11px;
	font-weight: 500;
	color: var(--color-text);
	line-height: 1.4;
}

/* 補償詳細テーブル */
.page-products-riskguard .cov-detail-table-wrap,
.page-products-anshin .cov-detail-table-wrap ,
.page-products-powerup .cov-detail-table-wrap{
	margin-bottom: 40px;
	overflow-x: auto;
}

.page-products-riskguard .cov-detail-table,
.page-products-anshin .cov-detail-table ,
.page-products-powerup .cov-detail-table{
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.page-products-riskguard .cov-detail-table th,
.page-products-anshin .cov-detail-table th,
.page-products-riskguard .cov-detail-table td,
.page-products-anshin .cov-detail-table td ,
.page-products-powerup .cov-detail-table td{
	padding: 14px 20px;
	border: 1px solid #D9EFF5;
	text-align: left;
	line-height: 1.6;
}

.page-products-riskguard .cov-detail-table thead th,
.page-products-anshin .cov-detail-table thead th ,
.page-products-powerup .cov-detail-table thead th{
	background: #00A7D4;
	color: #fff;
	font-weight: 700;
}

.page-products-riskguard .cov-detail-table tbody tr:nth-child(even) td,
.page-products-anshin .cov-detail-table tbody tr:nth-child(even) td ,
.page-products-powerup .cov-detail-table tbody tr:nth-child(even) td{
	background: var(--color-light-bg);
}

.page-products-riskguard .cov-detail-table tbody td:first-child,
.page-products-anshin .cov-detail-table tbody td:first-child ,
.page-products-powerup .cov-detail-table tbody td:first-child{
	font-weight: 700;
	white-space: nowrap;
}

/* CTAボタン */
.page-products-anshin .cov-cta-wrap ,
.page-products-powerup .cov-cta-wrap {
	text-align: center;
	padding-top: 8px;
}

.page-products-anshin .cov-cta-btn ,
.page-products-powerup .cov-cta-btn {
	display: inline-block;
	background: linear-gradient(90deg, #00A7D4 0%, #00A7D4 100%);
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	padding: 18px 64px;
	border-radius: 50px;
	text-decoration: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.page-products-anshin .cov-cta-btn:hover ,
.page-products-powerup .cov-cta-btn:hover {
	opacity: 0.85;
	transform: translateY(-2px);
}

/* 特約・オプションセクション */
.page-products-riskguard .cov-options-sub,
.page-products-anshin .cov-options-sub ,
.page-products-powerup .cov-options-sub{
	margin-bottom: 48px;
}

.page-products-riskguard .cov-options-sub__title,
.page-products-anshin .cov-options-sub__title ,
.page-products-powerup .cov-options-sub__title{
	font-weight: 700;
	font-size: 18px;
	color: var(--color-heading-dark);
	border-left: 4px solid #00A7D4;
	padding-left: 14px;
	margin-bottom: 20px;
}

.page-products-riskguard .cov-options-sub__text,
.page-products-anshin .cov-options-sub__text ,
.page-products-powerup .cov-options-sub__text{
	font-size: 15px;
	line-height: 1.8;
	color: var(--color-text);
	margin-bottom: 24px;
}

.page-products-riskguard .cov-options-photos,
.page-products-anshin .cov-options-photos ,
.page-products-powerup .cov-options-photos{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.page-products-riskguard .cov-options-photo-item,
.page-products-anshin .cov-options-photo-item ,
.page-products-powerup .cov-options-photo-item{
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}

.page-products-riskguard .cov-options-photo-item img,
.page-products-anshin .cov-options-photo-item img ,
.page-products-powerup .cov-options-photo-item img{
	width: 100%;
	height: 200px;
	object-fit: cover;
	display: block;
}

.page-products-riskguard .cov-options-photo-item__label,
.page-products-anshin .cov-options-photo-item__label ,
.page-products-powerup .cov-options-photo-item__label{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 167, 212, 0.85);
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	padding: 10px 16px;
	text-align: center;
}

.page-products-riskguard .cov-options-list,
.page-products-anshin .cov-options-list ,
.page-products-powerup .cov-options-list{
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

.page-products-riskguard .cov-options-list li,
.page-products-anshin .cov-options-list li ,
.page-products-powerup .cov-options-list li{
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 15px;
	line-height: 1.5;
	padding: 16px 20px;
	background: var(--color-light-bg);
	border-radius: 8px;
	border-left: 3px solid #00A7D4;
}

.page-products-riskguard .cov-options-list li::before,
.page-products-anshin .cov-options-list li::before ,
.page-products-powerup .cov-options-list li::before{
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #00A7D4;
	flex-shrink: 0;
}

/* ----- アコーディオン詳細コンテンツ（新デザイン） ----- */
.page-products-riskguard .cov-detail,
.page-products-anshin .cov-detail ,
.page-products-powerup .cov-detail{
	padding: 40px 60px;
}

.page-products-riskguard .cov-detail__heading,
.page-products-anshin .cov-detail__heading ,
.page-products-powerup .cov-detail__heading{
	font-size: 28px;
	font-weight: 700;
	color: var(--color-heading-dark);
	margin-bottom: 32px;
	display: flex;
	align-items: baseline;
	gap: 12px;
}

.page-products-riskguard .cov-detail__num,
.page-products-anshin .cov-detail__num ,
.page-products-powerup .cov-detail__num{
	font-family: 'Outfit', sans-serif;
	font-size: 44px;
	font-weight: 600;
	color: var(--color-heading-dark);
	line-height: 1;
}

/* オプションタグ（h3見出し内） */
.page-products-riskguard .cov-detail__tag,
.page-products-anshin .cov-detail__tag ,
.page-products-powerup .cov-detail__tag{
	display: inline-flex;
	align-items: center;
	padding: 4px 16px;
	border: 2px solid var(--color-heading-dark);
	border-radius: 20px;
	font-size: 16px;
	font-weight: 700;
	color: var(--color-heading-dark);
	white-space: nowrap;
	flex-shrink: 0;
	align-self: center;
}

/* サブブロック */
.page-products-riskguard .cov-block,
.page-products-anshin .cov-block ,
.page-products-powerup .cov-block{
	margin-bottom: 0;
}

.page-products-riskguard .cov-block + .cov-block,
.page-products-anshin .cov-block + .cov-block ,
.page-products-powerup .cov-block + .cov-block{
	margin-top: 40px;
}

.page-products-riskguard .cov-block__title,
.page-products-anshin .cov-block__title ,
.page-products-powerup .cov-block__title{
	display: flex;
	align-items: center;
	gap: 16px;
	font-size: 20px;
	font-weight: 700;
	color: var(--color-heading-dark);
	margin-bottom: 24px;
	white-space: nowrap;
}
.page-products-riskguard .cov-block__title::after,
.page-products-anshin .cov-block__title::after ,
.page-products-powerup .cov-block__title::after{
	content: '';
	flex: 1;
	height: 1px;
	background: #00A7D4;
}
.page-products-riskguard .cov-block__title--no-line::after,
.page-products-anshin .cov-block__title--no-line::after ,
.page-products-powerup .cov-block__title--no-line::after{
	display: none;
}

/* 保険金額カード上部レイアウト */
.page-products-riskguard .cov-block__top,
.page-products-anshin .cov-block__top ,
.page-products-powerup .cov-block__top{
	display: grid;
	grid-template-columns: 1fr 360px;
	gap: 32px;
	align-items: stretch;
	margin-bottom: 32px;
}


.page-products-riskguard .cov-amount,
.page-products-anshin .cov-amount ,
.page-products-powerup .cov-amount{
	font-size: 16px;
	font-weight: 700;
	color: var(--color-heading-dark);
	background: var(--color-light-bg);
	border-radius: 10px;
	padding: 40px 30px;
	margin-bottom: 16px;
	display: flex;
	justify-content: center;
	align-items: baseline;
	gap: 10px;
}

.page-products-riskguard .cov-amount__label,
.page-products-anshin .cov-amount__label ,
.page-products-powerup .cov-amount__label{
	white-space: nowrap;
	font-size: 24px;
}

.page-products-riskguard .cov-amount__num,
.page-products-anshin .cov-amount__num ,
.page-products-powerup .cov-amount__num{
	font-family: 'Outfit', sans-serif;
	font-size: 64px;
	font-weight: 600;
	color: #00A7D4;
	line-height: 1;
}

.page-products-riskguard .cov-amount__unit,
.page-products-anshin .cov-amount__unit ,
.page-products-powerup .cov-amount__unit{
	white-space: nowrap;
	font-size: 24px;
}

.page-products-powerup .cov-amount__group {
	display: contents;
}

.page-products-riskguard .cov-amount-box,
.page-products-anshin .cov-amount-box ,
.page-products-powerup .cov-amount-box{
	background: var(--color-light-bg);
	border-radius: 10px;
	padding: 32px 30px;
	margin-bottom: 16px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.page-products-riskguard .cov-amount-box .cov-amount,
.page-products-anshin .cov-amount-box .cov-amount ,
.page-products-powerup .cov-amount-box .cov-amount{
	background: none;
	border-radius: 0;
	padding: 0;
	margin-bottom: 0;
}

.page-products-riskguard .cov-amount-box .cov-block__note,
.page-products-anshin .cov-amount-box .cov-block__note ,
.page-products-powerup .cov-amount-box .cov-block__note{
	text-align: center;
}

.page-products-riskguard .cov-block__desc,
.page-products-anshin .cov-block__desc ,
.page-products-powerup .cov-block__desc{
	font-size: 16px;
	line-height: 1.8;
	color: var(--color-text);
	margin-bottom: 10px;
}

.page-products-riskguard .cov-block__note,
.page-products-anshin .cov-block__note ,
.page-products-powerup .cov-block__note{
	font-size: 12px;
	color: var(--color-sub-text);
	line-height: 1.7;
}

.page-products-riskguard .cov-block__table-lead,
.page-products-anshin .cov-block__table-lead ,
.page-products-powerup .cov-block__table-lead{
	font-size: 15px;
	line-height: 1.8;
	color: var(--color-text);
	margin-bottom: 16px;
}

.page-products-riskguard .cov-block__plan-lead,
.page-products-anshin .cov-block__plan-lead ,
.page-products-powerup .cov-block__plan-lead{
	font-size: 15px;
	margin-bottom: 16px;
}
.page-products-riskguard .cov-block__plan-lead--price,
.page-products-anshin .cov-block__plan-lead--price ,
.page-products-powerup .cov-block__plan-lead--price{
	color: #0071BC;
}
.page-products-riskguard .biz-accordion--food .cov-block__plan-lead--price   { color: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .cov-block__plan-lead--price  { color: #D36D87; }
.page-products-anshin .biz-accordion--salon .cov-block__plan-lead--price  { color: #D36D87; }
.page-products-riskguard .biz-accordion--retail .cov-block__plan-lead--price { color: #A26C50; }
.page-products-anshin .biz-accordion--retail .cov-block__plan-lead--price { color: #A26C50; }

.page-products-riskguard .cov-block__plan-lead--accent,
.page-products-anshin .cov-block__plan-lead--accent ,
.page-products-powerup .cov-block__plan-lead--accent{
	color: #00A7D4;
}

.page-products-riskguard .biz-accordion--salon .cov-block__plan-lead--accent { color: #D36D87; }
.page-products-anshin .biz-accordion--salon .cov-block__plan-lead--accent { color: #D36D87; }
.page-products-riskguard .biz-accordion--retail .cov-block__plan-lead--accent { color: #A26C50; }
.page-products-anshin .biz-accordion--retail .cov-block__plan-lead--accent { color: #A26C50; }

.page-products-riskguard .cov-block__photo,
.page-products-anshin .cov-block__photo ,
.page-products-powerup .cov-block__photo{
	border-radius: 10px;
	overflow: hidden;
	min-height: 200px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
}

.page-products-riskguard .cov-block__photo img,
.page-products-anshin .cov-block__photo img ,
.page-products-powerup .cov-block__photo img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* プランボタン */
.page-products-riskguard .cov-plans__lead,
.page-products-anshin .cov-plans__lead ,
.page-products-powerup .cov-plans__lead{
	font-size: 20px;
	color: var(--color-text);
	margin-bottom: 14px;
	text-align: center;
	font-weight: 600;
}

.page-products-riskguard .cov-plans,
.page-products-anshin .cov-plans ,
.page-products-powerup .cov-plans{
	display: flex;
	gap: 10px;
	justify-content: center;
	list-style: none;
	padding: 0;
	margin: 0 0 32px;
}

.page-products-riskguard .cov-plans__item,
.page-products-anshin .cov-plans__item ,
.page-products-powerup .cov-plans__item{
	border: 1px solid #00A7D4;
	color: #00A7D4;
	font-weight: 700;
	font-size: 24px;
	padding: 10px 40px;
	min-width: 100px;
	text-align: center;
}

.page-products-riskguard .cov-plans__item span,
.page-products-anshin .cov-plans__item span ,
.page-products-powerup .cov-plans__item span{
	font-size: 16px;
}

/* 番号付きアイコングリッド */
.page-products-riskguard .cov-numbered-grid,
.page-products-anshin .cov-numbered-grid ,
.page-products-powerup .cov-numbered-grid{
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 12px;
	list-style: none;
	padding: 0;
	margin: 0 0 28px;
	background: #D7EBF3;
	border-radius: 10px;
	padding: 12px;
}

.page-products-riskguard .cov-numbered-item,
.page-products-anshin .cov-numbered-item ,
.page-products-powerup .cov-numbered-item{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	background: #fff;
	border-radius: 8px;
	padding: 44px 8px 16px;
	text-align: center;
}

.page-products-riskguard .cov-numbered-item__num,
.page-products-anshin .cov-numbered-item__num ,
.page-products-powerup .cov-numbered-item__num{
	position: absolute;
	top: 10px;
	left: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background: linear-gradient(135deg, #00A7D4 0%, #0071BC 100%);
	color: #fff;
	border-radius: 50%;
	font-family: 'Outfit', sans-serif;
	font-size: 13px;
	font-weight: 600;
	flex-shrink: 0;
}

.page-products-riskguard .cov-numbered-item img,
.page-products-anshin .cov-numbered-item img ,
.page-products-powerup .cov-numbered-item img{
	width: auto;
	height: 70px;
}

.page-products-riskguard .cov-numbered-item__label,
.page-products-anshin .cov-numbered-item__label ,
.page-products-powerup .cov-numbered-item__label{
	font-size: 11px;
	color: var(--color-text);
	line-height: 1.4;
}

/* 費用補償テキスト */
.page-products-anshin .cov-expense__lead ,
.page-products-powerup .cov-expense__lead {
	font-size: 14px;
	color: var(--color-text);
	margin-bottom: 6px;
}

.page-products-anshin .cov-expense__types ,
.page-products-powerup .cov-expense__types {
	font-size: 13px;
	color: var(--color-sub-text);
	margin-bottom: 20px;
}

/* テーブル */
.page-products-riskguard .cov-table-wrap,
.page-products-anshin .cov-table-wrap ,
.page-products-powerup .cov-table-wrap{
	margin-bottom: 0;
}

.page-products-riskguard .cov-table,
.page-products-anshin .cov-table ,
.page-products-powerup .cov-table{
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.page-products-riskguard .cov-table th,
.page-products-anshin .cov-table th,
.page-products-riskguard .cov-table td,
.page-products-anshin .cov-table td ,
.page-products-powerup .cov-table td{
	border: 1px solid #D9D9D9;
	padding: 16px 20px;
	text-align: center;
	line-height: 1.6;
	vertical-align: middle;
	background: unset;
}

.page-products-riskguard .cov-table thead th,
.page-products-anshin .cov-table thead th ,
.page-products-powerup .cov-table thead th{
	background: #00A7D4;
	color: #fff;
	font-weight: 500;
}

.page-products-riskguard .cov-table__th--kind,
.page-products-anshin .cov-table__th--kind,
.page-products-riskguard .cov-table__td--kind,
.page-products-anshin .cov-table__td--kind ,
.page-products-powerup .cov-table__td--kind{
	text-align: left;
	font-weight: 700;
	background: var(--color-light-bg);
	white-space: nowrap;
}

.page-products-riskguard .cov-table--expense .cov-table__th--kind,
.page-products-anshin .cov-table--expense .cov-table__th--kind ,
.page-products-powerup .cov-table--expense .cov-table__th--kind{
	width: 215px;
	white-space: normal;
	text-align: center;
}
.page-products-riskguard .cov-table--expense .cov-table__td--kind,
.page-products-anshin .cov-table--expense .cov-table__td--kind ,
.page-products-powerup .cov-table--expense .cov-table__td--kind{
	width: 215px;
	white-space: normal;
	background: #fff;
	text-align: center;
	font-weight: 700;
}

.page-products-riskguard .cov-table--expense td:last-child,
.page-products-anshin .cov-table--expense td:last-child ,
.page-products-powerup .cov-table--expense td:last-child{
	text-align: left;
}

.page-products-riskguard .cov-table--expense tbody tr:nth-child(even) td,
.page-products-anshin .cov-table--expense tbody tr:nth-child(even) td ,
.page-products-powerup .cov-table--expense tbody tr:nth-child(even) td{
	background: #F5F5F5;
}

/* セクションラベル（「基本補償」など） */
.page-products-anshin .cov-section-label ,
.page-products-powerup .cov-section-label {
	font-size: 14px;
	font-weight: 700;
	color: var(--color-sub);
	border-bottom: 1px solid #D9D9D9;
	padding-bottom: 8px;
	margin-bottom: 12px;
}

/* 注意書き */
.page-products-riskguard .cov-legal-note,
.page-products-anshin .cov-legal-note ,
.page-products-powerup .cov-legal-note{
	font-size: 14px;
	line-height: 1.8;
	margin-top: 16px;
	margin-bottom: 32px;
}

/* シミュレーションCTA */
.page-products-riskguard .cov-simulation,
.page-products-anshin .cov-simulation ,
.page-products-powerup .cov-simulation{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 20px;
	background: #fff;
	position: relative;
	margin-top: 64px;
}

.page-products-riskguard .cov-simulation__blob,
.page-products-anshin .cov-simulation__blob ,
.page-products-powerup .cov-simulation__blob{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	padding: 40px 140px;
	background: linear-gradient(155deg, #FFFFFF 0%, #FFFFFF 40%, #B7E4F0 100%);
	box-shadow: 0 0 40px rgba(0, 113, 188, 0.15);
	border-radius: 500px;
	text-decoration: none;
	cursor: pointer;
	transition: opacity 0.2s ease;
}

.page-products-riskguard .cov-simulation__blob:hover,
.page-products-anshin .cov-simulation__blob:hover ,
.page-products-powerup .cov-simulation__blob:hover{
	opacity: 0.8;
}
.page-products-riskguard .cov-simulation::before,
.page-products-anshin .cov-simulation::before ,
.page-products-powerup .cov-simulation::before{
	content: '';
	display: block;
	position: absolute;
	top: -32px;
	left: 0;
	right: 0;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}
.page-products-riskguard .biz-accordion--salon .cov-simulation::before,
.page-products-anshin .biz-accordion--salon .cov-simulation::before {
	background: radial-gradient(circle at 1.5px 1.5px, #D36D87 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}
.page-products-riskguard .biz-accordion--retail .cov-simulation::before,
.page-products-anshin .biz-accordion--retail .cov-simulation::before {
	background: radial-gradient(circle at 1.5px 1.5px, #A26C50 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}

.page-products-riskguard .cov-simulation__logo,
.page-products-anshin .cov-simulation__logo ,
.page-products-powerup .cov-simulation__logo{
	height: 40px;
	width: auto;
}

.page-products-riskguard .cov-simulation__btn,
.page-products-anshin .cov-simulation__btn ,
.page-products-powerup .cov-simulation__btn{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #00A7D4;
	font-weight: 700;
	font-size: 18px;
}

.page-products-riskguard .cov-simulation__icon::before,
.page-products-anshin .cov-simulation__icon::before ,
.page-products-powerup .cov-simulation__icon::before{
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300A7D4' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
}

.page-products-riskguard .cov-simulation__note,
.page-products-anshin .cov-simulation__note ,
.page-products-powerup .cov-simulation__note{
	font-size: 12px;
	color: var(--color-sub);
}

/* =====================================================
   業務リスクの補償セクション
   ===================================================== */
.page-products-anshin .anshin-biz-section {
	background: var(--color-light-bg);
	padding: 0 40px 180px;
}

.page-products-anshin .anshin-biz-note {
	font-size: 13px;
	color: var(--color-text-muted);
	margin-top: 12px;
	text-align: center;
}

/* ----- biz-accordion コンテナ ----- */
.page-products-riskguard .biz-accordions,
.page-products-anshin .biz-accordions {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-top: 40px;
}

.page-products-riskguard .biz-accordion,
.page-products-anshin .biz-accordion {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid #00A7D4;
	box-shadow: 0 2px 12px rgba(0, 167, 212, 0.1);
}
.page-products-riskguard .biz-accordion--salon,
.page-products-anshin .biz-accordion--salon {
	border-color: #D36D87;
	box-shadow: 0 2px 12px rgba(224, 91, 138, 0.1);
}
.page-products-riskguard .biz-accordion--retail,
.page-products-anshin .biz-accordion--retail {
	border-color: #A26C50;
	box-shadow: 0 2px 12px rgba(140, 98, 57, 0.1);
}

/* ----- biz-accordion ボタン ----- */
.page-products-riskguard .biz-accordion__btn,
.page-products-anshin .biz-accordion__btn {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 32px;
	border: none;
	cursor: pointer;
	text-align: left;
	transition: opacity 0.2s ease;
}

.page-products-riskguard .biz-accordion--food .biz-accordion__btn { background: #00A7D4; }
.page-products-anshin .biz-accordion--food .biz-accordion__btn { background: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .biz-accordion__btn { background: #D36D87; }
.page-products-anshin .biz-accordion--salon .biz-accordion__btn { background: #D36D87; }
.page-products-riskguard .biz-accordion--retail .biz-accordion__btn { background: #A26C50; }
.page-products-anshin .biz-accordion--retail .biz-accordion__btn { background: #A26C50; }

.page-products-riskguard .biz-accordion__title,
.page-products-anshin .biz-accordion__title {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	white-space: nowrap;
	flex-shrink: 0;
}

.page-products-riskguard .biz-accordion__industries,
.page-products-anshin .biz-accordion__industries {
	font-size: 14px;
	color: #00A7D4;
	white-space: nowrap;
	background-color: #fff;
	border-radius: 4px;
	padding: 5px 14px;
	margin-left: auto;
}
.page-products-riskguard .biz-accordion--salon .biz-accordion__industries  { color: #D36D87; }
.page-products-anshin .biz-accordion--salon .biz-accordion__industries  { color: #D36D87; }
.page-products-riskguard .biz-accordion--other .biz-accordion__icon { margin-left: auto; }
.page-products-riskguard .biz-accordion--retail .biz-accordion__industries { color: #A26C50; }
.page-products-anshin .biz-accordion--retail .biz-accordion__industries { color: #A26C50; }

.page-products-riskguard .biz-accordion__industries-badge,
.page-products-anshin .biz-accordion__industries-badge {
	display: none;
	border: 1px solid rgba(255, 255, 255, 0.7);
	border-radius: 3px;
	padding: 1px 8px;
	font-size: 11px;
	margin-left: 8px;
	white-space: nowrap;
}

/* ----- chevron アイコン ----- */
.page-products-riskguard .biz-accordion__icon,
.page-products-anshin .biz-accordion__icon {
	position: relative;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.page-products-riskguard .biz-accordion__icon::before,
.page-products-anshin .biz-accordion__icon::before,
.page-products-riskguard .biz-accordion__icon::after,
.page-products-anshin .biz-accordion__icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transition: opacity 0.2s ease;
}

.page-products-riskguard .biz-accordion__icon::before,
.page-products-anshin .biz-accordion__icon::before {
	transform: translate(-50%, -65%) rotate(45deg);
	opacity: 1;
}

.page-products-riskguard .biz-accordion__icon::after,
.page-products-anshin .biz-accordion__icon::after {
	transform: translate(-50%, -35%) rotate(-135deg);
	opacity: 0;
}

.page-products-riskguard .biz-accordion.is-open .biz-accordion__icon::before,
.page-products-anshin .biz-accordion.is-open .biz-accordion__icon::before {
	opacity: 0;
}

.page-products-riskguard .biz-accordion.is-open .biz-accordion__icon::after,
.page-products-anshin .biz-accordion.is-open .biz-accordion__icon::after {
	opacity: 1;
}

/* ----- biz-accordion ボディ ----- */
.page-products-riskguard .biz-accordion__body,
.page-products-anshin .biz-accordion__body {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.35s ease;
}

.page-products-riskguard .biz-accordion.is-open .biz-accordion__body,
.page-products-anshin .biz-accordion.is-open .biz-accordion__body {
	max-height: 10000px;
}

.page-products-riskguard .biz-accordion__inner,
.page-products-anshin .biz-accordion__inner {
	background: #fff;
}

/* biz accordion: 写真を左に配置 */
.page-products-riskguard .biz-accordion .cov-block__top,
.page-products-anshin .biz-accordion .cov-block__top {
	grid-template-columns: 360px 1fr;
}

/* ----- 業種別 heading icon ----- */
.page-products-riskguard .biz-detail__heading,
.page-products-anshin .biz-detail__heading {
	align-items: center;
}

.page-products-riskguard .biz-detail__icon,
.page-products-anshin .biz-detail__icon {
	width: 32px;
	height: 32px;
	flex-shrink: 0;
}

/* biz-accordion 内のh3: 黒文字＋右に線 */
.page-products-riskguard .biz-accordion .cov-detail__heading::after,
.page-products-anshin .biz-accordion .cov-detail__heading::after {
	content: '';
	flex: 1;
	height: 1px;
	background: #00A7D4;
	align-self: center;
}
.page-products-riskguard .biz-accordion--salon .cov-detail__heading::after  { background: #D36D87; }
.page-products-anshin .biz-accordion--salon .cov-detail__heading::after  { background: #D36D87; }
.page-products-riskguard .biz-accordion--retail .cov-detail__heading::after { background: #A26C50; }
.page-products-anshin .biz-accordion--retail .cov-detail__heading::after { background: #A26C50; }

/* ----- 保険金支払実例ボックス（3カラム） ----- */
.page-products-riskguard .biz-example-box,
.page-products-anshin .biz-example-box,
.page-products-powerup .biz-example-box {
	display: flex;
	align-items: center;
	margin: 24px 0 32px;
	border: 1.5px solid rgba(0, 167, 212, 0.35);
	background-color: var(--color-light-bg);
	border-radius: 12px;
	overflow: hidden;
}

.page-products-riskguard .biz-example-box__tag,
.page-products-anshin .biz-example-box__tag,
.page-products-powerup .biz-example-box__tag {
	position: relative;
	padding: 20px 20px;
	font-size: 14px;
	font-weight: 700;
	white-space: nowrap;
	align-self: stretch;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 180px;
}

.page-products-riskguard .biz-example-box__tag::after,
.page-products-anshin .biz-example-box__tag::after,
.page-products-powerup .biz-example-box__tag::after {
	content: '';
	position: absolute;
	top: 12px;
	bottom: 12px;
	right: 0;
	width: 1.5px;
	background: rgba(0, 167, 212, 0.35);
}

.page-products-riskguard .biz-example-box__body,
.page-products-anshin .biz-example-box__body,
.page-products-powerup .biz-example-box__body {
	flex: 1;
	padding: 24px 32px;
}

.page-products-riskguard .biz-example-box__scenario,
.page-products-anshin .biz-example-box__scenario,
.page-products-powerup .biz-example-box__scenario {
	font-size: 14px;
	color: var(--color-text);
	line-height: 1.7;
}

.page-products-riskguard .biz-example-box__right,
.page-products-anshin .biz-example-box__right,
.page-products-powerup .biz-example-box__right {
	white-space: nowrap;
	padding: 20px 28px;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.page-products-riskguard .biz-example-box__sublabel,
.page-products-anshin .biz-example-box__sublabel,
.page-products-powerup .biz-example-box__sublabel {
	font-size: 11px;
	color: var(--color-text-muted);
	margin-bottom: 4px;
}

.page-products-riskguard .biz-example-box__num,
.page-products-anshin .biz-example-box__num,
.page-products-powerup .biz-example-box__num {
	font-size: 28px;
	font-weight: 700;
	color: #00A7D4;
	display: block;
	line-height: 1.2;
}

.page-products-riskguard .biz-accordion--salon .biz-example-box__num { color: #D36D87; }
.page-products-anshin .biz-accordion--salon .biz-example-box__num { color: #D36D87; }
.page-products-riskguard .biz-accordion--retail .biz-example-box__num { color: #A26C50; }
.page-products-anshin .biz-accordion--retail .biz-example-box__num { color: #A26C50; }

.page-products-riskguard .biz-example-box__num-unit,
.page-products-anshin .biz-example-box__num-unit,
.page-products-powerup .biz-example-box__num-unit {
	font-size: 16px;
	color: var(--color-text);
}

.page-products-riskguard .biz-accordion--salon .biz-example-box,
.page-products-anshin .biz-accordion--salon .biz-example-box {
	border-color: rgba(224, 91, 138, 0.35);
	background-color: #FEF0F5;
}
.page-products-riskguard .biz-accordion--salon .biz-example-box__tag,
.page-products-anshin .biz-accordion--salon .biz-example-box__tag {
	background: #FEF0F5;
}
.page-products-riskguard .biz-accordion--salon .biz-example-box__tag::after,
.page-products-anshin .biz-accordion--salon .biz-example-box__tag::after {
	background: rgba(224, 91, 138, 0.35);
}

.page-products-riskguard .biz-accordion--retail .biz-example-box,
.page-products-anshin .biz-accordion--retail .biz-example-box {
	border-color: rgba(140, 98, 57, 0.35);
	background-color: #FAF5F0;
}
.page-products-riskguard .biz-accordion--retail .biz-example-box__tag,
.page-products-anshin .biz-accordion--retail .biz-example-box__tag {
	background: #FAF5F0;
}
.page-products-riskguard .biz-accordion--retail .biz-example-box__tag::after,
.page-products-anshin .biz-accordion--retail .biz-example-box__tag::after {
	background: rgba(140, 98, 57, 0.35);
}

/* ----- 補償項目リスト（タイトル+説明） ----- */
.page-products-riskguard .biz-coverage-list,
.page-products-anshin .biz-coverage-list {
	list-style: none;
	padding: 0;
	margin: 16px 0 0;
}

.page-products-riskguard .biz-coverage-list__item,
.page-products-anshin .biz-coverage-list__item {
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid #E8E8E8;
}

.page-products-riskguard .biz-coverage-list__item:last-child,
.page-products-anshin .biz-coverage-list__item:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.page-products-riskguard .biz-coverage-list__name,
.page-products-anshin .biz-coverage-list__name {
	font-size: 14px;
	font-weight: 700;
	color: #00A7D4;
	margin-bottom: 3px;
}

.page-products-riskguard .biz-accordion--salon .biz-coverage-list__name { color: #D36D87; }
.page-products-anshin .biz-accordion--salon .biz-coverage-list__name { color: #D36D87; }
.page-products-riskguard .biz-accordion--retail .biz-coverage-list__name { color: #A26C50; }
.page-products-anshin .biz-accordion--retail .biz-coverage-list__name { color: #A26C50; }

.page-products-riskguard .biz-coverage-list__example,
.page-products-anshin .biz-coverage-list__example {
	font-size: 13px;
	color: var(--color-text-muted);
	line-height: 1.5;
}

/* ----- 業種別テーブルヘッダー ----- */
.page-products-riskguard .biz-accordion--food .cov-table thead th { background: #00A7D4; }
.page-products-anshin .biz-accordion--food .cov-table thead th { background: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .cov-table thead th { background: #D36D87; }
.page-products-anshin .biz-accordion--salon .cov-table thead th { background: #D36D87; }
.page-products-riskguard .biz-accordion--retail .cov-table thead th { background: #A26C50; }
.page-products-anshin .biz-accordion--retail .cov-table thead th { background: #A26C50; }

.page-products-riskguard .biz-accordion .cov-table tbody tr:nth-child(odd)  { background: #fff; }
.page-products-anshin .biz-accordion .cov-table tbody tr:nth-child(odd)  { background: #fff; }
.page-products-riskguard .biz-accordion .cov-table tbody tr:nth-child(even) { background: #F5F5F5; }
.page-products-anshin .biz-accordion .cov-table tbody tr:nth-child(even) { background: #F5F5F5; }

.page-products-riskguard .biz-accordion .cov-table__th--kind,
.page-products-anshin .biz-accordion .cov-table__th--kind,
.page-products-riskguard .biz-accordion .cov-table__td--kind,
.page-products-anshin .biz-accordion .cov-table__td--kind {
	width: 260px;
	white-space: nowrap;
}

.page-products-riskguard .biz-accordion .cov-table tbody td:not(.cov-table__td--kind),
.page-products-anshin .biz-accordion .cov-table tbody td:not(.cov-table__td--kind) {
	text-align: left;
	padding-left: 24px;
}

/* ----- biz プランテーブル ----- */
.page-products-riskguard .biz-plan-th,
.page-products-anshin .biz-plan-th {
	color: #fff;
	font-weight: 500;
	white-space: nowrap;
}

.page-products-riskguard .biz-accordion--food .biz-plan-th { background: #00A7D4; }
.page-products-anshin .biz-accordion--food .biz-plan-th { background: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .biz-plan-th { background: #D36D87; }
.page-products-anshin .biz-accordion--salon .biz-plan-th { background: #D36D87; }
.page-products-riskguard .biz-accordion--retail .biz-plan-th { background: #A26C50; }
.page-products-anshin .biz-accordion--retail .biz-plan-th { background: #A26C50; }

.page-products-riskguard .biz-accordion--food .plan-td-group--price { color: #00A7D4; }
.page-products-anshin .biz-accordion--food .plan-td-group--price { color: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .plan-td-group--price { color: #D36D87; background: #FEF0F5; }
.page-products-anshin .biz-accordion--salon .plan-td-group--price { color: #D36D87; background: #FEF0F5; }
.page-products-riskguard .biz-accordion--retail .plan-td-group--price { color: #A26C50; background: #F8F2EC; }
.page-products-anshin .biz-accordion--retail .plan-td-group--price { color: #A26C50; background: #F8F2EC; }

.page-products-riskguard .biz-accordion--food .plan-td-price { color: #00A7D4; }
.page-products-anshin .biz-accordion--food .plan-td-price { color: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .plan-td-price { color: #D36D87; }
.page-products-anshin .biz-accordion--salon .plan-td-price { color: #D36D87; }
.page-products-riskguard .biz-accordion--retail .plan-td-price { color: #A26C50; }
.page-products-anshin .biz-accordion--retail .plan-td-price { color: #A26C50; }

.page-products-riskguard .biz-accordion--food .plan-td-option-price { color: #00A7D4; }
.page-products-anshin .biz-accordion--food .plan-td-option-price { color: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .plan-td-option-price { color: #D36D87; }
.page-products-anshin .biz-accordion--salon .plan-td-option-price { color: #D36D87; }
.page-products-riskguard .biz-accordion--retail .plan-td-option-price { color: #A26C50; }
.page-products-anshin .biz-accordion--retail .plan-td-option-price { color: #A26C50; }

.page-products-riskguard .biz-accordion--salon .plan-td-coverage { background: #FEF0F5; }
.page-products-anshin .biz-accordion--salon .plan-td-coverage { background: #FEF0F5; }
.page-products-riskguard .biz-accordion--retail .plan-td-coverage { background: #F8F2EC; }
.page-products-anshin .biz-accordion--retail .plan-td-coverage { background: #F8F2EC; }

/* biz plan table: first two columns wider for "基本補償 + 飲食業特約" header */
.page-products-riskguard .biz-plan__table .anshin-plan__col--group    { width: 160px; }
.page-products-anshin .biz-plan__table .anshin-plan__col--group    { width: 160px; }
.page-products-riskguard .biz-plan__table .anshin-plan__col--coverage { width: 190px; }
.page-products-anshin .biz-plan__table .anshin-plan__col--coverage { width: 190px; }

/* biz plan section: 飲食業特約内の業務リスク特約セクションに揃える */
.page-products-riskguard .biz-accordion .anshin-plan__table-wrap { margin-bottom: 0; }
.page-products-anshin .biz-accordion .anshin-plan__table-wrap { margin-bottom: 0; }
.page-products-riskguard .biz-accordion .anshin-plan__notes      { margin-top: 16px; }
.page-products-anshin .biz-accordion .anshin-plan__notes      { margin-top: 16px; }

/* ----- CTAセクション ----- */
/* ===== オプションのご案内 ===== */
.page-products-anshin .anshin-option-section {
	padding: 0 40px 100px;
	margin-top: -120px;
	position: relative;
	z-index: 1;
}

.page-products-anshin .anshin-option-card {
	background: linear-gradient(135deg, #CBEAFF 0%, #E5F5FF 100%);
	border-radius: 20px;
	padding: 56px 60px;
	text-align: center;
	max-width: 980px;
	margin: 0 auto;
	box-shadow: 0 8px 32px rgba(0, 167, 212, 0.14);
}

.page-products-anshin .anshin-option-card__title {
	font-size: 28px;
	font-weight: 700;
	color: #0071BC;
	margin-bottom: 20px;
}

.page-products-anshin .anshin-option-card__text {
	font-size: 15px;
	color: var(--color-text);
	line-height: 1.8;
	margin-bottom: 32px;
}

.page-products-anshin .anshin-option-card__btn {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	background: #fff;
	border-radius: 100px;
	padding: 20px 60px;
	text-decoration: none;
	box-shadow: 0 4px 20px rgba(0, 167, 212, 0.18);
	transition: opacity 0.2s;
}
.page-products-anshin .anshin-option-card__btn:hover { opacity: 0.75; }

.page-products-anshin .anshin-option-card__btn-logos {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
}

.page-products-anshin .anshin-option-card__btn-logo {
	height: 22px;
	width: auto;
}

.page-products-anshin .anshin-option-card__btn-logo:first-child {
	height: 18px;
}

.page-products-anshin .anshin-option-card__btn-link {
	font-size: 15px;
	font-weight: 700;
	color: #00A7D4;
	display: flex;
	align-items: center;
	gap: 6px;
}

.page-products-anshin .anshin-option-card__btn-icon {
	display: inline-block;
	width: 14px;
	height: 14px;
	vertical-align: middle;
}

/* ===== ご注意点 ===== */
.page-products-anshin .anshin-caution-section {
	padding: 0 40px 100px;
}

.page-products-anshin .anshin-caution__label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 18px;
	font-weight: 700;
	color: #00A7D4;
	margin-bottom: 24px;
}

.page-products-anshin .anshin-caution__dot {
	font-size: 12px;
	background: linear-gradient(135deg, #00A7D4 0%, #0071BC 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.page-products-anshin .anshin-caution__heading {
	font-size: 15px;
	font-weight: 700;
	color: var(--color-text);
	margin-bottom: 12px;
}

.page-products-anshin .anshin-caution__item {
	font-size: 14px;
	color: var(--color-text);
	margin-bottom: 4px;
}

.page-products-anshin .anshin-caution__text {
	font-size: 14px;
	color: var(--color-text);
	line-height: 1.8;
	margin-top: 12px;
}

/* ===== 重要事項説明書 ===== */
.page-products-anshin .anshin-docs-section {
	padding: 0 40px 100px;
}

.page-products-anshin .anshin-docs__lead {
	font-size: 14px;
	color: var(--color-text-sub);
	text-align: center;
	margin-bottom: 24px;
}

.page-products-anshin .anshin-docs__list {
	list-style: none;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
	max-width: 800px;
	margin: 0 auto 16px;
}

.page-products-anshin .anshin-docs__item {
	border-bottom: 1px solid #e0e0e0;
	padding: 16px 0;
}

.page-products-anshin .anshin-docs__link {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 15px;
	font-weight: 700;
	color: var(--color-text);
	text-decoration: none;
}
.page-products-anshin .anshin-docs__link:hover { opacity: 0.7; }

.page-products-anshin .anshin-docs__icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.page-products-anshin .anshin-docs__number {
	font-size: 12px;
	color: var(--color-text-muted);
	text-align: right;
	margin-bottom: 16px;
}
/* ===== バナー ===== */
.page-products-anshin .anshin-banner-section {
	padding: 0 40px 0;
}

.page-products-anshin .anshin-banner__link {
	display: block;
	transition: opacity 0.2s;
}

.page-products-anshin .anshin-banner__link:hover {
	opacity: 0.9;
}

.page-products-anshin .anshin-banner__img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 12px;
}

.page-products-anshin .anshin-banner__note {
	font-size: 12px;
	color: var(--color-text-sub);
	text-align: right;
	margin-top: 8px;
}

.page-products-anshin .top-contact {
	position: relative;
	padding: 100px 0 20px;
	background: #fff;
}

.page-products-anshin .top-contact__inner {
	position: relative;
	z-index: 1;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 110px;
}

.page-products-anshin .top-contact__label {
	margin-bottom: 60px;
}

.page-products-anshin .top-contact__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	position: relative;
	z-index: 2;
}

.page-products-anshin .top-contact__body {
	background: #F2FBFD;
	border-radius: 20px;
	margin-top: -182px;
	margin-left: calc(-50vw + 50% + 27px);
	margin-right: calc(-50vw + 50% + 27px);
	padding: 222px 60px 60px;
	position: relative;
	z-index: 1;
}

.page-products-anshin .top-contact__card {
	background: #fff;
	border-radius: 20px;
	padding: 40px 48px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
}

.page-products-anshin .top-contact__card-title {
	font-weight: 700;
	font-size: 18px;
	color: var(--color-heading-dark);
	text-align: center;
}

.page-products-anshin .top-contact__divider {
	width: 100%;
	border: none;
	border-bottom: 1px solid #e0e0e0;
	padding: 20px 0 0 0;
}

.page-products-anshin .top-contact__tel-area {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 20px 0 4px;
}

.page-products-anshin .top-contact__tel-header {
	font-weight: 500;
	font-size: 14px;
	color: var(--color-sub);
	text-align: center;
}

.page-products-anshin .top-contact__tel-row {
	display: flex;
	align-items: center;
	gap: 12px;
}

.page-products-anshin .top-contact__tel-label {
	font-weight: 500;
	font-size: 15px;
	color: var(--color-heading-dark);
}

.page-products-anshin .top-contact__tel-num {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 30px;
	color: #00A7D4;
	text-decoration: none;
	letter-spacing: 0.04em;
	line-height: 1;
	transition: opacity 0.2s;
}

.page-products-anshin .top-contact__tel-num:hover { opacity: 0.75; }

.page-products-anshin .top-contact__tel-note {
	font-weight: 500;
	font-size: 13px;
	color: var(--color-muted);
	text-align: center;
}

.page-products-anshin .top-contact__sub {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 32px;
}

.page-products-anshin .top-contact__sub-text {
	font-weight: 700;
	font-size: 16px;
	color: var(--color-heading-dark);
}

/* ----- パワーアッップラン ヒーロー ----- */
.page-products-powerup .inner-hero {
	background: #fff;
}

.page-products-powerup .inner-hero::before {
	display: none;
}

.page-products-powerup .powerup-hero__title {
	font-size: 36px;
	font-weight: 700;
	color: #0071BC;
	line-height: 1.3;
	margin: 0;
}

.page-products-powerup .powerup-hero__text {
	font-size: 16px;
	line-height: 1.8;
	color: var(--color-text);
}

/* ----- ページヒーロー（inner-hero共通を使用、差分のみ上書き） ----- */
.page-products-anshin .inner-hero {
	background: #fff;
}

.page-products-anshin .inner-hero::before {
	display: none;
}

.page-products-anshin .anshin-hero__logo {
	margin: 0;
	line-height: 1;
}

.page-products-anshin .anshin-hero__logo img {
	height: 72px;
	width: auto;
	display: block;
	max-width: 100%;
}

.page-products-anshin .anshin-hero__text {
	font-size: 16px;
	line-height: 1.8;
	color: var(--color-text);
	white-space: nowrap;
}

/* ----- 基本補償セクション ----- */
.page-products-anshin .anshin-kihon {
	background: var(--color-light-bg);
	padding: 80px 40px 0;
}

.page-products-anshin .anshin-kihon__head {
	text-align: center;
	margin-bottom: 48px;
}

.page-products-anshin .anshin-kihon__title {
	font-size: 28px;
	font-weight: 700;
	color: var(--color-heading-dark);
	margin-bottom: 20px;
	padding-bottom: 20px;
	position: relative;
}

.page-products-anshin .anshin-kihon__title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}

.page-products-anshin .anshin-kihon__lead {
	font-size: 16px;
	line-height: 1.8;
}

/* ----- 料金プランテーブル ----- */
.page-products-anshin .anshin-plan {
	background: #fff;
	border-radius: 12px;
	padding: 40px 60px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.page-products-anshin .anshin-plan__title {
	font-size: 20px;
	font-weight: 700;
	color: var(--color-heading-dark);
	margin-bottom: 20px;
}

.page-products-anshin .anshin-plan__table-wrap {
	margin-bottom: 8px;
}

.page-products-anshin .anshin-plan__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	table-layout: fixed;
}

.page-products-anshin .anshin-plan__col--group    { width: 120px; }
.page-products-anshin .anshin-plan__col--coverage { width: 90px; }
.page-products-anshin .anshin-plan__col--sub      { width: 140px; }

.page-products-anshin .anshin-plan__table th,
.page-products-anshin .anshin-plan__table td {
	border: 1px solid #D9D9D9;
	padding: 10px 8px;
	text-align: center;
	line-height: 1.5;
}

.page-products-anshin .anshin-plan__table thead th {
	background: #00A7D4;
	color: #fff;
	font-weight: 500;
	white-space: nowrap;
}

.page-products-riskguard .plan-th-base,
.page-products-anshin .plan-th-base {
	background: #00A7D4;
}

.page-products-riskguard .plan-td-coverage,
.page-products-anshin .plan-td-coverage {
	background: #F0FBFF;
}

.page-products-riskguard .plan-td-group,
.page-products-anshin .plan-td-group {
	background: #F0FBFF;
	font-weight: 700;
	color: var(--color-heading-dark);
	white-space: nowrap;
}

.page-products-riskguard .plan-td-group--price,
.page-products-anshin .plan-td-group--price {
	background: #F0FBFF;
	color: #00A7D4;
}

.page-products-anshin .anshin-plan__table .plan-tr-gray .plan-td-group,
.page-products-anshin .anshin-plan__table .plan-tr-gray .plan-td-sub {
	background: #F5F5F5;
}

.page-products-anshin .anshin-plan__table .plan-tr-blue .plan-td-sub {
	background: #F0FBFF;
}

.page-products-riskguard .plan-td-sub,
.page-products-anshin .plan-td-sub {
	text-align: center;
	background: #F0FBFF;
	color: var(--color-text);
}

.page-products-riskguard .plan-td-merge,
.page-products-anshin .plan-td-merge {
	color: var(--color-text);
}

.page-products-riskguard .plan-td-price,
.page-products-anshin .plan-td-price {
	color: #00A7D4;
	font-weight: 700;
}

.page-products-riskguard .plan-td-dash,
.page-products-anshin .plan-td-dash {
	color: var(--color-muted);
}

.page-products-anshin .anshin-plan__table .plan-td-spacer {
	height: 8px;
	padding: 0;
	background: #fff;
	border-left-style: hidden;
	border-right-style: hidden;
}

/* オプション行 */
.page-products-riskguard .plan-tr-option .plan-td-option-label,
.page-products-anshin .plan-tr-option .plan-td-option-label {
	text-align: center;
	background: #F0FBFF;
	color: var(--color-text);
	vertical-align: middle;
}
.page-products-riskguard .plan-td-option-label__inner,
.page-products-anshin .plan-td-option-label__inner {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.page-products-riskguard .plan-td-option-price,
.page-products-anshin .plan-td-option-price {
	color: #0071BC;
	font-weight: 700;
	background: #fff;
}

/* オプションタグ（テーブルセル内） */
.page-products-anshin .plan-option-tag {
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	border: 1px solid #00A7D4;
	border-radius: 20px;
	font-size: 11px;
	font-weight: 500;
	color: #00A7D4;
	background: #fff;
	flex-shrink: 0;
}

.page-products-anshin .anshin-plan__notes {
	list-style: none;
	padding: 0;
	margin: 0;
}

.page-products-anshin .anshin-plan__notes li {
	font-size: 14px;
	line-height: 1.8;
}

/* ===== レスポンシブ (960px以下) ===== */
@media (max-width: 960px) {
	.page-products-anshin .anshin-kihon,
	.page-products-anshin .anshin-coverage,
	.page-products-anshin .anshin-cta-section {
		padding-left: 24px;
		padding-right: 24px;
	}

	.page-products-riskguard .cov-body__top,
	.page-products-anshin .cov-body__top {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.page-products-riskguard .cov-body__photo,
	.page-products-anshin .cov-body__photo {
		order: -1;
	}

	.page-products-anshin .cov-icons__grid {
		grid-template-columns: repeat(5, 1fr);
	}

	.page-products-riskguard .cov-options-photos,
	.page-products-anshin .cov-options-photos {
		grid-template-columns: repeat(3, 1fr);
	}

	.page-products-anshin .anshin-cta-card {
		grid-template-columns: 1fr;
	}

	.page-products-anshin .anshin-cta-card__photo {
		display: none;
	}

	.page-products-anshin .anshin-cta-card__content {
		padding: 48px 40px;
	}
}

/* ===== レスポンシブ (600px以下) ===== */
@media (max-width: 600px) {
	.page-products-anshin .anshin-hero__logo img {
		height: 48px;
	}

	.page-products-anshin .anshin-hero__text {
		white-space: normal;
	}

	.page-products-anshin .anshin-kihon {
		padding: 50px 0;
	}

	.page-products-anshin .anshin-plan {
		padding: 25px 16px;
		margin: 0 5px;
	}

	.page-products-anshin .anshin-coverage {
		padding: 25px 5px 0;
	}

	.page-products-riskguard .cov-accordion, .page-products-anshin .cov-accordion, .page-products-powerup .cov-accordion {
		margin-bottom: 10px;
	}

	.page-products-riskguard .cov-accordion__badge, .page-products-anshin .cov-accordion__badge, .page-products-powerup .cov-accordion__badge {
		font-size: 20px;
		justify-content: left;
	}

	.page-products-riskguard .cov-accordion__btn,
	.page-products-anshin .cov-accordion__btn {
		padding: 16px 20px;
		gap: 0px;
	}

	.page-products-riskguard .cov-accordion__option-tag, .page-products-anshin .cov-accordion__option-tag, .page-products-powerup .cov-accordion__option-tag {
		margin-left: 5px;
	}

	.page-products-riskguard .cov-accordion__title,
	.page-products-anshin .cov-accordion__title {
		font-size: 16px;
	}

	.page-products-riskguard .cov-body,
	.page-products-anshin .cov-body {
		padding: 28px 20px;
	}

	.page-products-riskguard .cov-price__num,
	.page-products-anshin .cov-price__num {
		font-size: 40px;
	}

	.page-products-anshin .cov-icons {
		padding: 20px;
	}

	.page-products-anshin .cov-icons__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
	}

	.page-products-anshin .cov-icon-item {
		padding: 12px 6px 10px;
	}

	.page-products-anshin .cov-icon-item img {
		width: 40px;
	}

	.page-products-anshin .anshin-banner__note {
		font-size: 10px;
		color: var(--color-text-sub);
		text-align: left;
		margin-top: 8px;
	}


	.page-products-riskguard .cov-block__title, .page-products-anshin .cov-block__title, .page-products-powerup .cov-block__title {
		font-size: 18px;
	}

	.page-products-riskguard .cov-options-photos,
	.page-products-anshin .cov-options-photos {
		grid-template-columns: 1fr;
	}

	.page-products-riskguard .cov-options-list,
	.page-products-anshin .cov-options-list {
		grid-template-columns: 1fr;
	}

	.page-products-riskguard .cov-amount__label, .page-products-anshin .cov-amount__label, .page-products-powerup .cov-amount__label {
		font-size: 18px;
	}

	.page-products-riskguard .cov-amount__unit, .page-products-anshin .cov-amount__unit, .page-products-powerup .cov-amount__unit {
		font-size: 18px;
	}

	.page-products-riskguard .cov-plans__item span, .page-products-anshin .cov-plans__item span, .page-products-powerup .cov-plans__item span {
		font-size: 14px;
	}
	.page-products-riskguard .cov-detail__tag, .page-products-anshin .cov-detail__tag, .page-products-powerup .cov-detail__tag {
		padding: 2px 10px;
		border: 1px solid var(--color-heading-dark);
		font-size: 12px;
	}

	.page-products-riskguard .cov-block__desc, .page-products-anshin .cov-block__desc, .page-products-powerup .cov-block__desc {
		font-size: 14px;
		line-height: 1.8;
	}

	.page-products-riskguard .cov-block__table-lead, .page-products-anshin .cov-block__table-lead, .page-products-powerup .cov-block__table-lead {
		font-size: 14px;
		line-height: 1.8;
	}


	.page-products-anshin .anshin-cta-section {
		padding: 60px 0 80px;
	}

	.page-products-anshin .anshin-cta-card__content {
		padding: 40px 24px;
		gap: 16px;
	}

	.page-products-anshin .anshin-cta-card__title {
		font-size: 22px;
	}

	.page-products-anshin .cov-cta-btn {
		padding: 16px 40px;
		font-size: 15px;
	}

	.page-products-anshin .anshin-biz-section {
		padding: 50px 0px 100px;
	}

	.page-products-anshin .anshin-caution-section {
		padding: 0 20px 50px;
	}

	.page-products-anshin .anshin-docs-section {
		padding: 0 20px 50px;
	}
	.page-products-anshin .anshin-docs__link {
		flex-wrap: nowrap;
		align-items: center;
		width: 100%;
	}
	.page-products-anshin .anshin-docs__name {
		flex: 1 1 0;
		min-width: 0;
		font-size: 14px;
	}
	.page-products-anshin .docs-pdf-size,
	.page-products-anshin .anshin-docs__icon {
		flex-shrink: 0;
	}

	.page-products-anshin .anshin-banner-section {
		padding: 0 20px 0;
	}
	.page-products-anshin .biz-accordions {
		margin: 25px 5px 0px;
		gap: 10px;
	}

	/* biz-example-box SP */
	.page-products-anshin .biz-example-box {
		flex-direction: column;
		align-items: stretch;
	}

	.page-products-anshin .biz-example-box__tag {
		min-width: auto;
		white-space: normal;
		padding: 14px 16px;
	}

	.page-products-anshin .biz-example-box__tag::after {
		display: none;
	}

	.page-products-anshin .biz-example-box__body {
		padding: 16px;
		position: relative;
	}
	.page-products-anshin .biz-example-box__body::before {
		content: '';
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 80%;
		height: 1.5px;
		background: rgba(0, 167, 212, 0.35);
	}
	.page-products-anshin .biz-accordion--salon .biz-example-box__body::before {
		background: rgba(211, 109, 135, 0.35);
	}
	.page-products-anshin .biz-accordion--retail .biz-example-box__body::before {
		background: rgba(162, 108, 80, 0.35);
	}

	.page-products-anshin .biz-example-box__right {
		padding: 14px 16px;
		white-space: normal;
		text-align: right;
		align-items: flex-end;
	}

	.page-products-anshin .anshin-kihon__head {
		margin: 0 20px 25px;
	}

	.page-products-anshin .anshin-kihon__title {
		font-size: 20px;
		margin-bottom: 20px;
		padding-bottom: 20px;
	}

	.page-products-anshin .anshin-kihon__lead {
		font-size: 15px;
		line-height: 1.8;
	}

	/* アコーディオン内コンテンツ SP */
	.page-products-anshin .cov-detail {
		padding: 24px 16px;
	}

	.page-products-anshin .cov-detail__heading {
		font-size: 18px;
		gap: 8px;
		margin-bottom: 25px;
		align-items: center;
	}

	.page-products-anshin .cov-detail__num {
		font-size: 30px;
	}

	.page-products-anshin .cov-block__top,
	.page-products-anshin .biz-accordion .cov-block__top {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	/* biz-accordion テーブル SP */
	.page-products-anshin .biz-accordion .cov-table {
		table-layout: fixed;
	}

	.page-products-anshin .biz-accordion .cov-table__th--kind,
	.page-products-anshin .biz-accordion .cov-table__td--kind {
		width: 45%;
		white-space: normal;
		font-size: 12px;
	}

	.page-products-anshin .biz-accordion .cov-table tbody td:not(.cov-table__td--kind) {
		font-size: 12px;
		padding-left: 12px;
	}

	.page-products-anshin .cov-amount {
		padding: 25px 20px;
	}

	.page-products-anshin .cov-amount__num {
		font-size: 33px;
	}

	.page-products-anshin .cov-numbered-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 8px;
		margin: 0 0 25px;
	}

	.page-products-anshin .cov-numbered-item {
        padding: 15px 6px 6px;
	}

	.page-products-anshin .cov-numbered-item img {
		width: 70px;
	}

	.page-products-anshin .cov-plans__lead {
		font-size: 14px;
		line-height: 1.8;
	}

	.page-products-anshin .cov-plans {
		flex-wrap: wrap;
		gap: 8px;
		margin-bottom: 20px;
	}

	.page-products-anshin .cov-plans__item {
		font-size: 14px;
		padding: 4px;
		min-width: auto;
	}

	.page-products-anshin .cov-table--expense {
		table-layout: fixed;
		font-size: 12px;
	}

	.page-products-riskguard .cov-block__title, .page-products-anshin .cov-block__title, .page-products-powerup .cov-block__title {
		margin-bottom: 16px;
	}

	.page-products-riskguard .cov-numbered-item__num, .page-products-anshin .cov-numbered-item__num, .page-products-powerup .cov-numbered-item__num {
		font-size: 11px;
		width: 24px;
    	height: 24px;
	}

	.page-products-anshin .cov-table--expense .cov-table__th--kind,
	.page-products-anshin .cov-table--expense .cov-table__td--kind {
		width: 38%;
		white-space: normal;
		font-size: 12px;
	}

	.page-products-anshin .cov-simulation__blob {
		padding: 27px;
		border-radius: 200px;
		gap: 8px;
	}

	.page-products-riskguard .cov-simulation, .page-products-anshin .cov-simulation, .page-products-powerup .cov-simulation {
		padding: 0px;
		background: #fff;
		position: relative;
		margin-top: 64px;
	}

	.page-products-riskguard .cov-simulation__btn, .page-products-anshin .cov-simulation__btn, .page-products-powerup .cov-simulation__btn {
		font-weight: 600;
		font-size: 14px;
	}

	.page-products-riskguard .cov-simulation__logo, .page-products-anshin .cov-simulation__logo, .page-products-powerup .cov-simulation__logo {
		height: 32px;
		width: auto;
	}

	.page-products-riskguard .cov-simulation__note, .page-products-anshin .cov-simulation__note, .page-products-powerup .cov-simulation__note {
		font-size: 10px;

	}

	.page-products-anshin .anshin-option-section {
		padding: 0 16px 60px;
		margin-top: -50px;
	}
	.page-products-anshin .anshin-option-card {
		padding: 36px 20px;
	}
	.page-products-anshin .anshin-option-card__title {
		font-size: 20px;
	}
	.page-products-anshin .anshin-option-card__text {
		font-size: 13px;
		text-align: left;
	}
	.page-products-anshin .anshin-option-card__btn {
		padding: 16px 24px;
		width: 100%;
		box-sizing: border-box;
	}
	.page-products-anshin .anshin-option-card__btn-logos {
		display: block;
	}

	/* top-contact SP */
	.page-products-anshin .top-contact {
		padding: 50px 0 10px;
		overflow: hidden;
	}
	.page-products-anshin .top-contact__inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	.page-products-anshin .top-contact__label {
		margin-bottom: 32px;
	}
	.page-products-anshin .top-contact .section-label__ja {
		font-size: 20px;
	}
	.page-products-anshin .top-contact__body {
		margin-top: -55px;
		margin-left: -10px;
		margin-right: -10px;
		padding: 70px 20px 50px;
		border-radius: 15px;
	}
	.page-products-anshin .top-contact__cards {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.page-products-anshin .top-contact__card {
		padding: 32px 24px;
	}
	.page-products-anshin .top-contact .btn-blue {
		width: 100%;
		justify-content: center;
		padding-left: 24px;
		padding-right: 24px;
	}
	.page-products-anshin .top-contact__tel-area {
		padding: unset;
	}
	.page-products-anshin .top-contact__divider {
		padding: 10px 0 0 0;
	}
	.page-products-anshin .top-contact__tel-row {
		flex-direction: column;
		align-items: center;
		gap: 4px;
	}
	.page-products-anshin .top-contact__tel-label {
		font-size: 13px;
	}
	.page-products-anshin .top-contact__tel-num {
		font-size: 26px;
	}
	.page-products-anshin .top-contact__sub {
		flex-direction: column;
		align-items: center;
		gap: 16px;
		text-align: center;
	}
}

/* ============================================================
   ビジネスリスクGuard (page-products-riskguard)
   ============================================================ */

/* ----- 共通コンテナ ----- */
.page-products-riskguard .riskguard-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
}

/* ----- ヒーロー差分 ----- */
.page-products-riskguard .inner-hero {
	background: #fff;
}

.page-products-riskguard .inner-hero::before {
	display: none;
}

.page-products-riskguard .riskguard-hero__logo {
	margin: 0;
	line-height: 1;
}

.page-products-riskguard .riskguard-hero__logo img {
	height: 72px;
	width: auto;
	display: block;
	max-width: 100%;
}

.page-products-riskguard .riskguard-hero__text {
	font-size: 16px;
	line-height: 1.8;
	color: var(--color-text);
	white-space: nowrap;
}

/* ----- 基本補償セクション ----- */
.page-products-riskguard .riskguard-kihon {
	background: var(--color-light-bg);
	padding: 80px 40px 16px;
}

.page-products-riskguard .riskguard-kihon__head {
	text-align: center;
	margin-bottom: 48px;
}

.page-products-riskguard .riskguard-kihon__title {
	font-size: 28px;
	font-weight: 700;
	color: var(--color-heading-dark);
	margin-bottom: 20px;
	padding-bottom: 20px;
	position: relative;
}

.page-products-riskguard .riskguard-kihon__title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}

.page-products-riskguard .riskguard-kihon__lead {
	font-size: 16px;
	line-height: 1.8;
}

/* ----- 料金プランテーブル ----- */
.page-products-riskguard .riskguard-plan {
	background: #fff;
	border-radius: 12px;
	padding: 40px 60px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.page-products-riskguard .riskguard-plan__title {
	font-size: 20px;
	font-weight: 700;
	color: var(--color-heading-dark);
	margin-bottom: 20px;
}

.page-products-riskguard .riskguard-plan__notes {
	list-style: none;
	padding: 0;
	margin: 8px 0 0;
	font-size: 13px;
	color: var(--color-sub);
	line-height: 1.8;
}

.page-products-riskguard .riskguard-plan__notes li + li {
	margin-top: 4px;
}

/* ----- anshin-plan__table をriskguardでも使用 ----- */
.page-products-riskguard .anshin-plan__table-wrap {
	margin-bottom: 8px;
	overflow-x: auto;
}

.page-products-riskguard .anshin-plan__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	table-layout: fixed;
}

.page-products-riskguard .riskguard-plan__col--group { width: 120px; }
.page-products-riskguard .riskguard-plan__col--sub   { width: 200px; }

.page-products-riskguard .anshin-plan__table th,
.page-products-riskguard .anshin-plan__table td {
	border: 1px solid #D9D9D9;
	padding: 10px 8px;
	text-align: center;
	line-height: 1.5;
}

.page-products-riskguard .anshin-plan__table thead th {
	background: #00A7D4;
	color: #fff;
	font-weight: 500;
	white-space: nowrap;
}

.page-products-riskguard .anshin-plan__table .plan-tr-gray .plan-td-group,
.page-products-riskguard .anshin-plan__table .plan-tr-gray .plan-td-sub {
	background: #F5F5F5;
}

.page-products-riskguard .anshin-plan__table .plan-tr-blue .plan-td-sub {
	background: #F0FBFF;
}

.page-products-riskguard .anshin-plan__notes {
	list-style: none;
	padding: 0;
	margin: 8px 0 0;
	font-size: 13px;
	color: var(--color-sub);
	line-height: 1.8;
}

/* ----- 補償内容アコーディオンラッパー ----- */
.page-products-riskguard .riskguard-coverage {
	padding: 40px 0 0;
}

/* ----- 業種別特約セクション ----- */
.page-products-riskguard .riskguard-biz-section {
	background: var(--color-light-bg);
	padding: 80px 40px 180px;
}

.page-products-riskguard .riskguard-biz-section .riskguard-kihon__head {
	padding-top: 80px;
}

/* biz-accordion --food / --salon / --other のアクセントカラー */
.page-products-riskguard .biz-accordion--other .biz-accordion__btn { background: #00A7D4; }
.page-products-riskguard .biz-accordion--food .plan-td-group--price   { color: #00A7D4; }
.page-products-riskguard .biz-accordion--salon .plan-td-group--price  { color: #D36D87; background: #FEF0F5; }
.page-products-riskguard .biz-plan__table .riskguard-plan__col--group { width: 140px; }
.page-products-riskguard .biz-plan__table .riskguard-plan__col--sub   { width: 200px; }
.page-products-riskguard .biz-accordion .anshin-plan__table-wrap { margin-bottom: 0; }
.page-products-riskguard .biz-accordion .anshin-plan__notes      { margin-top: 16px; }

/* ----- オプションセクション ----- */
.page-products-riskguard .anshin-option-section {
	padding: 0 40px 100px;
	margin-top: -120px;
	position: relative;
	z-index: 1;
}

.page-products-riskguard .anshin-option-card {
	background: linear-gradient(135deg, #CBEAFF 0%, #E5F5FF 100%);
	border-radius: 20px;
	padding: 56px 60px;
	text-align: center;
	max-width: 980px;
	margin: 0 auto;
	box-shadow: 0 8px 32px rgba(0, 167, 212, 0.14);
}

.page-products-riskguard .anshin-option-card__title {
	font-size: 28px;
	font-weight: 700;
	color: #0071BC;
	margin-bottom: 20px;
}

.page-products-riskguard .anshin-option-card__text {
	font-size: 15px;
	color: var(--color-text);
	line-height: 1.8;
	margin-bottom: 32px;
}

.page-products-riskguard .anshin-option-card__btn {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	background: #fff;
	border-radius: 100px;
	padding: 20px 60px;
	text-decoration: none;
	box-shadow: 0 4px 20px rgba(0, 167, 212, 0.18);
	transition: opacity 0.2s;
}
.page-products-riskguard .anshin-option-card__btn:hover { opacity: 0.75; }

.page-products-riskguard .anshin-option-card__btn-logos {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
}

.page-products-riskguard .anshin-option-card__btn-logo {
	height: 22px;
	width: auto;
}

.page-products-riskguard .anshin-option-card__btn-logo:first-child {
	height: 18px;
}

.page-products-riskguard .anshin-option-card__btn-link {
	font-size: 15px;
	font-weight: 700;
	color: #00A7D4;
	display: flex;
	align-items: center;
	gap: 6px;
}

.page-products-riskguard .anshin-option-card__btn-icon {
	display: inline-block;
	width: 14px;
	height: 14px;
	vertical-align: middle;
}

/* ----- ご注意点セクション ----- */
.page-products-riskguard .anshin-caution-section {
	padding: 0 40px 100px;
}

.page-products-riskguard .anshin-caution__label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 18px;
	font-weight: 700;
	color: #00A7D4;
	margin-bottom: 24px;
}

.page-products-riskguard .anshin-caution__dot {
	font-size: 12px;
	background: linear-gradient(135deg, #00A7D4 0%, #0071BC 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.page-products-riskguard .anshin-caution__heading {
	font-size: 15px;
	font-weight: 700;
	color: var(--color-text);
	margin-bottom: 12px;
}

.page-products-riskguard .anshin-caution__item {
	font-size: 14px;
	color: var(--color-text);
	margin-bottom: 4px;
}

.page-products-riskguard .anshin-caution__text {
	font-size: 14px;
	color: var(--color-text);
	line-height: 1.8;
	margin-top: 12px;
}

/* ----- 重要事項説明書セクション ----- */
.page-products-riskguard .anshin-docs-section {
	padding: 0 40px 100px;
}

.page-products-riskguard .anshin-docs__lead {
	font-size: 14px;
	color: var(--color-text-sub);
	text-align: center;
	margin-bottom: 24px;
}

.page-products-riskguard .anshin-docs__list {
	list-style: none;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
	max-width: 800px;
	margin: 0 auto 16px;
}

.page-products-riskguard .anshin-docs__item {
	border-bottom: 1px solid #e0e0e0;
	padding: 16px 0;
}

.page-products-riskguard .anshin-docs__link {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 15px;
	font-weight: 700;
	color: var(--color-text);
	text-decoration: none;
}
.page-products-riskguard .anshin-docs__link:hover { opacity: 0.7; }

.page-products-riskguard .anshin-docs__icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.page-products-riskguard .anshin-docs__number {
	font-size: 12px;
	color: var(--color-text-muted);
	text-align: right;
	margin-bottom: 16px;
}

/* ----- バナーセクション ----- */
.page-products-riskguard .anshin-banner-section {
	padding: 0 40px 0;
}

.page-products-riskguard .anshin-banner__link {
	display: block;
	transition: opacity 0.2s;
}

.page-products-riskguard .anshin-banner__link:hover { opacity: 0.9; }

.page-products-riskguard .anshin-banner__img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 12px;
}

.page-products-riskguard .anshin-banner__note {
	font-size: 12px;
	color: var(--color-text-sub);
	text-align: right;
	margin-top: 8px;
}

/* ----- お問い合わせ・事故連絡セクション（top-contact 流用） ----- */
.page-products-riskguard .top-contact {
	position: relative;
	padding: 100px 0 20px;
	background: #fff;
}

.page-products-riskguard .top-contact__inner {
	position: relative;
	z-index: 1;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 110px;
}

.page-products-riskguard .top-contact__label {
	margin-bottom: 40px;
}

.page-products-riskguard .top-contact__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	margin-bottom: 24px;
	position: relative;
	z-index: 2;
}

.page-products-riskguard .top-contact__body {
	background: #F2FBFD;
	border-radius: 20px;
	margin-top: -182px;
	margin-left: calc(-50vw + 50% + 27px);
	margin-right: calc(-50vw + 50% + 27px);
	padding: 222px 60px 60px;
	position: relative;
	z-index: 1;
}

.page-products-riskguard .top-contact__card {
	background: #fff;
	border-radius: 16px;
	padding: 32px 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
}

.page-products-riskguard .top-contact__card-title {
	font-weight: 700;
	font-size: 18px;
	color: var(--color-heading-dark);
	text-align: center;
}

.page-products-riskguard .top-contact__divider {
	width: 100%;
	border: none;
	border-bottom: 1px solid #e0e0e0;
	padding: 20px 0 0 0;
}

.page-products-riskguard .top-contact__tel-area {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 20px 0 4px;
}

.page-products-riskguard .top-contact__tel-header {
	font-weight: 500;
	font-size: 14px;
	color: var(--color-sub);
	text-align: center;
}

.page-products-riskguard .top-contact__tel-row {
	display: flex;
	align-items: center;
	gap: 12px;
}

.page-products-riskguard .top-contact__tel-label {
	font-weight: 500;
	font-size: 15px;
	color: var(--color-heading-dark);
}

.page-products-riskguard .top-contact__tel-num {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 30px;
	color: #00A7D4;
	text-decoration: none;
	letter-spacing: 0.04em;
	line-height: 1;
	transition: opacity 0.2s;
}

.page-products-riskguard .top-contact__tel-num:hover { opacity: 0.75; }

.page-products-riskguard .top-contact__tel-note {
	font-weight: 500;
	font-size: 13px;
	color: var(--color-muted);
	text-align: center;
}

.page-products-riskguard .top-contact__sub {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 32px;
}

.page-products-riskguard .top-contact__sub-text {
	font-weight: 700;
	font-size: 16px;
	color: var(--color-heading-dark);
}

/* ===== riskguard 飲食業向けアコーディオン内コンポーネント ===== */

/* ----- プランカード ----- */
.page-products-riskguard .riskguard-product-card {
	display: flex;
	align-items: center;
	gap: 32px;
	background: var(--color-light-bg);
	border-radius: 16px;
	padding: 24px 32px;
	margin-bottom: 40px;
}

.page-products-riskguard .riskguard-product-card__info {
	flex: 1;
}

.page-products-riskguard .riskguard-product-card__name {
	font-size: 28px;
	font-weight: 600;
	color: #00A7D4;
	margin-bottom: 8px;
}

.page-products-riskguard .riskguard-product-card__desc {
	font-size: 14px;
	line-height: 1.8;
	color: var(--color-sub-text);
}

.page-products-riskguard .riskguard-product-card__price-wrap {
	flex-shrink: 0;
}

.page-products-riskguard .riskguard-product-card__price-label {
	font-size: 13px;
	color: var(--color-sub-text);
	margin-bottom: 2px;
}

.page-products-riskguard .riskguard-product-card__price {
	display: flex;
	align-items: baseline;
	gap: 4px;
	justify-content: flex-end;
}

.page-products-riskguard .riskguard-product-card__price-num {
	font-family: 'Outfit', sans-serif;
	font-size: 56px;
	font-weight: 600;
	color: #00A7D4;
	line-height: 1;
}

.page-products-riskguard .riskguard-product-card__price-unit {
	font-size: 16px;
	font-weight: 700;
	color: var(--color-heading-dark);
}

/* ----- 補償セクション（休業時 / 業務リスク） ----- */
.page-products-riskguard .riskguard-cov-section {
	margin-bottom: 48px;
}

/* セクション間の点線区切り */
.page-products-riskguard .riskguard-cov-section + .riskguard-cov-section {
	position: relative;
	padding-top: 48px;
	margin-top: 0;
}

.page-products-riskguard .riskguard-cov-section + .riskguard-cov-section::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}

.page-products-riskguard .riskguard-cov-section__heading {
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 24px;
}

.page-products-riskguard .riskguard-subsection__title {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 24px;
	display: flex;
	align-items: center;
	gap: 16px;
}

.page-products-riskguard .riskguard-subsection__title::after {
	content: '';
	flex: 1;
	height: 1px;
	background: #00A7D4;
}

.page-products-riskguard .riskguard-subsection__note {
	margin-top: 12px;
}

/* ----- 休業ブロック（左半分: box+テキスト / 右半分: 画像） ----- */
.page-products-riskguard .kyugyo-block {
	display: grid;
	grid-template-columns: 1fr 360px;
	gap: 32px;
	align-items: start;
	margin-bottom: 24px;
}

.page-products-riskguard .kyugyo-block__left {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.page-products-riskguard .kyugyo-block__left .cov-amount {
	margin-bottom: 16px;
}

.page-products-riskguard .kyugyo-block__left .cov-block__desc {
	margin-bottom: 8px;
}

.page-products-riskguard .kyugyo-block__photo {
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
}

.page-products-riskguard .kyugyo-block__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ----- 3カラムテーブル ----- */
.page-products-riskguard .biz-accordion .cov-table--3col .cov-table__th--kind,
.page-products-riskguard .biz-accordion .cov-table--3col .cov-table__td--kind {
	width: auto;
	white-space: nowrap;
}

.page-products-riskguard .biz-accordion .cov-table--3col th {
	text-align: center;
}
.page-products-riskguard .biz-accordion .cov-table--3col td {
	text-align: left;
}

/* ===== riskguard 理美容・サロン業: ピンクを無効化してブルーに統一 ===== */
.page-products-riskguard .biz-accordion--salon {
	border-color: #00A7D4;
	box-shadow: 0 2px 12px rgba(0, 167, 212, 0.1);
}
.page-products-riskguard .biz-accordion--salon .biz-accordion__btn {
	background: #00A7D4;
}
.page-products-riskguard .biz-accordion--salon .biz-accordion__industries {
	color: #00A7D4;
}
.page-products-riskguard .biz-accordion--salon .biz-coverage-list__name {
	color: #00A7D4;
}
.page-products-riskguard .biz-accordion--salon .biz-example-box {
	border-color: rgba(0, 167, 212, 0.35);
	background: var(--color-light-bg);
}
.page-products-riskguard .biz-accordion--salon .biz-example-box__tag {
	background: var(--color-light-bg);
}
.page-products-riskguard .biz-accordion--salon .biz-example-box__tag::after {
	background: rgba(0, 167, 212, 0.35);
}
.page-products-riskguard .biz-accordion--salon .biz-example-box__num {
	color: #00A7D4;
}
.page-products-riskguard .biz-accordion--salon .cov-table thead th {
	background: #00A7D4;
}
.page-products-riskguard .biz-accordion--salon .cov-simulation::before {
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}

/* ============================================================
   page-products-riskguard SP（600px以下）
   ============================================================ */
@media (max-width: 600px) {

	/* ヒーロー */
	.page-products-riskguard .riskguard-hero__logo img {
		height: 33px;
	}
	.page-products-riskguard .riskguard-hero__text {
		white-space: normal;
	}

	/* コンテナ・セクション余白 */
	.page-products-riskguard .riskguard-container {
		padding: 0;
	}
	.page-products-riskguard .riskguard-biz-section {
		padding: 50px 0 80px;
	}
	.page-products-riskguard .riskguard-biz-section .riskguard-kihon__head {
		padding-top: 40px;
	}
	.page-products-riskguard .riskguard-kihon {
		padding: 50px 16px 16px;
	}
	.page-products-riskguard .riskguard-kihon__title {
		font-size: 20px;
	}
	.page-products-riskguard .riskguard-kihon__head {
		margin-bottom: 24px;
	}
	.page-products-riskguard .riskguard-plan {
		padding: 24px 16px;
	}

	/* biz-accordions */
	.page-products-riskguard .biz-accordions {
		margin: 25px 5px 0;
		gap: 10px;
	}

	/* プランカード */
	.page-products-riskguard .riskguard-product-card {
		flex-direction: column;
		align-items: flex-end;
		gap: 16px;
		padding: 20px 16px;
	}
	.page-products-riskguard .riskguard-product-card__name {
		font-size: 20px;
	}
	.page-products-riskguard .riskguard-product-card__price-num {
		font-size: 40px;
	}

	/* 補償セクション見出し */
	.page-products-riskguard .riskguard-cov-section__heading {
		font-size: 20px;
	}
	.page-products-riskguard .riskguard-subsection__title {
		font-size: 16px;
	}

	/* cov-detail */
	.page-products-riskguard .cov-detail {
		padding: 24px 16px;
	}

	/* 休業ブロック（横並び→縦積み） */
	.page-products-riskguard .kyugyo-block {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	/* cov-amount */
	.page-products-riskguard .cov-amount {
		padding: 25px 20px;
	}
	.page-products-riskguard .cov-amount__num {
		font-size: 33px;
	}

	/* cov-block__top（写真+補償リスト 横→縦） */
	.page-products-riskguard .biz-accordion .cov-block__top {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	/* biz-example-box SP */
	.page-products-riskguard .biz-example-box {
		flex-direction: column;
		align-items: stretch;
	}
	.page-products-riskguard .biz-example-box__tag {
		min-width: auto;
		white-space: normal;
		padding: 14px 16px;
	}
	.page-products-riskguard .biz-example-box__tag::after {
		display: none;
	}
	.page-products-riskguard .biz-example-box__body {
		padding: 16px;
		position: relative;
	}
	.page-products-riskguard .biz-example-box__body::before {
		content: '';
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 90%;
		height: 1.5px;
		background: rgba(0, 167, 212, 0.35);
	}
	.page-products-riskguard .biz-example-box__right {
		padding: 14px 16px;
		white-space: normal;
		text-align: right;
		align-items: flex-end;
	}

	/* 3カラムテーブル SP: 既存の padding-left:24px を上書き（詳細度対策） */
	.page-products-riskguard .biz-accordion .cov-table--3col tbody td:not(.cov-table__td--kind) {
		padding: 10px 12px 10px 104px;
		text-align: left;
	}

	/* 3カラムテーブル SP: ヘッダーを左ラベルに変換、データを横並び */
	.page-products-riskguard .biz-accordion .cov-table--3col,
	.page-products-riskguard .biz-accordion .cov-table--3col thead,
	.page-products-riskguard .biz-accordion .cov-table--3col tbody,
	.page-products-riskguard .biz-accordion .cov-table--3col tr,
	.page-products-riskguard .biz-accordion .cov-table--3col td {
		display: block;
		width: 100%;
	}
	.page-products-riskguard .biz-accordion .cov-table--3col thead {
		display: none;
	}
	.page-products-riskguard .biz-accordion .cov-table--3col tr {
		border: 1px solid #D9D9D9;
		margin-bottom: 8px;
	}
	.page-products-riskguard .biz-accordion .cov-table--3col td {
		position: relative;
		padding: 10px 12px 10px 104px;
		font-size: 13px;
		line-height: 1.6;
		border: none;
		border-bottom: 1px solid #D9D9D9;
		box-sizing: border-box;
		min-height: 44px;
	}
	.page-products-riskguard .biz-accordion .cov-table--3col td:last-child {
		border-bottom: none;
	}
	.page-products-riskguard .biz-accordion .cov-table--3col td::before {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		width: 84px;
		background: #00A7D4;
		color: #fff;
		font-weight: 700;
		font-size: 11px;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		padding: 4px 6px;
		line-height: 1.4;
	}
	.page-products-riskguard .biz-accordion .cov-table--3col td:nth-child(1)::before {
		content: '保険金の種類';
	}
	.page-products-riskguard .biz-accordion .cov-table--3col td:nth-child(2)::before {
		content: '保険金額';
	}
	.page-products-riskguard .biz-accordion .cov-table--3col td:nth-child(3)::before {
		content: '補償内容';
	}

	/* テーブル文字サイズ */
	.page-products-riskguard .cov-table,
	.page-products-anshin .cov-table {
		font-size: 12px;
	}
	.page-products-riskguard .anshin-plan__table,
	.page-products-anshin .anshin-plan__table {
		font-size: 12px;
	}

	.page-products-riskguard .cov-legal-note, .page-products-anshin .cov-legal-note, .page-products-powerup .cov-legal-note {
		font-size: 12px;
		margin: 16px 20px 0;
	}

	.page-products-riskguard .biz-accordion .cov-table--3col tbody td:not(.cov-table__td--kind) {
		font-size: 12px;
	}

	/* オプションカード SP */
	.page-products-riskguard .anshin-option-section {
		padding: 0 16px 50px;
		margin-top: -50px;
	}
	.page-products-riskguard .anshin-option-card {
		padding: 36px 20px;
	}
	.page-products-riskguard .anshin-option-card__title {
		font-size: 20px;
	}
	.page-products-riskguard .anshin-option-card__text {
		font-size: 13px;
		text-align: left;
	}
	.page-products-riskguard .anshin-option-card__btn {
		padding: 16px 24px;
		width: 100%;
		box-sizing: border-box;
	}
	.page-products-riskguard .anshin-option-card__btn-logos {
		display: block;
	}

	/* シミュレーションCTA SP */
	.page-products-riskguard .cov-simulation__blob {
		padding: 27px;
		border-radius: 200px;
		gap: 8px;
	}
	.page-products-riskguard .cov-simulation__logo {
		height: 24px;
	}

	/* ご注意点・重要書類・バナー SP */
	.page-products-riskguard .anshin-caution-section {
		padding: 0 20px 50px;
	}
	.page-products-riskguard .anshin-docs-section {
		padding: 0 20px 50px;
	}
	.page-products-riskguard .anshin-docs__link {
		flex-wrap: nowrap;
		align-items: center;
		width: 100%;
	}
	.page-products-riskguard .anshin-docs__name {
		flex: 1 1 0;
		min-width: 0;
		font-size: 14px;
	}
	.page-products-riskguard .docs-pdf-size,
	.page-products-riskguard .anshin-docs__icon {
		flex-shrink: 0;
	}
	.page-products-riskguard .anshin-banner-section {
		padding: 0 20px 0;
	}

	.page-products-riskguard .anshin-banner__note {
		font-size: 10px;
		color: var(--color-text-sub);
		text-align: left;
		margin-top: 8px;
	}

	/* top-contact SP */
	.page-products-riskguard .top-contact {
		padding: 56px 0 10px;
		overflow: hidden;
	}
	.page-products-riskguard .top-contact__inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	.page-products-riskguard .top-contact__label {
		margin-bottom: 32px;
	}
	.page-products-riskguard .top-contact .section-label__ja {
		font-size: 20px;
	}
	.page-products-riskguard .top-contact__body {
		margin-top: -55px;
		margin-left: -10px;
		margin-right: -10px;
		padding: 70px 20px 50px;
		border-radius: 15px;
	}
	.page-products-riskguard .top-contact__cards {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.page-products-riskguard .top-contact__card {
		padding: 32px 24px;
	}
	.page-products-riskguard .top-contact .btn-blue {
		width: 100%;
		justify-content: center;
		padding-left: 24px;
		padding-right: 24px;
	}
	.page-products-riskguard .top-contact__tel-area {
		padding: unset;
	}
	.page-products-riskguard .top-contact__divider {
		padding: 10px 0 0 0;
	}
	.page-products-riskguard .top-contact__tel-row {
		flex-direction: column;
		align-items: center;
		gap: 4px;
	}
	.page-products-riskguard .top-contact__tel-label {
		font-size: 13px;
	}
	.page-products-riskguard .top-contact__tel-num {
		font-size: 26px;
	}
	.page-products-riskguard .top-contact__sub {
		flex-direction: column;
		align-items: center;
		gap: 16px;
		text-align: center;
	}
}

/* ============================================================
   page-products-powerup
   ============================================================ */

/* ----- コンテナ ----- */
.page-products-powerup .powerup-container {
	max-width: 1200px;
	margin: 0 auto;
}

/* ----- イントロ ----- */
.page-products-powerup .powerup-intro-section {
	padding: 60px 0;
	background: #fff;
}

.page-products-powerup .powerup-intro__text {
	font-size: 15px;
	line-height: 1.9;
	color: var(--color-text);
	border: 1px solid #E0E0E0;
	border-radius: 8px;
	padding: 28px 36px;
}

/* ----- プランセクション共通 ----- */
.page-products-powerup .powerup-plan-section,
.page-products-powerup .bizsupport-plan-section {
	background: var(--color-light-bg);
	padding: 80px 40px;
}

.page-products-powerup .plan-section__title {
	text-align: center;
}

.page-products-powerup .plan-section__title-img {
	height: 60px;
	width: auto;
}

/* ----- プランブロック ----- */
.page-products-powerup .plan-block {
	background: var(--color-light-bg);
	border-radius: 16px;
	padding: 60px 0;
}

.page-products-powerup .plan-block__heading {
	font-size: 28px;
	font-weight: 700;
	color: var(--color-heading-dark);
	text-align: center;
	margin-bottom: 20px;
	padding-bottom: 20px;
	position: relative;
}

.page-products-powerup .plan-block__heading::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 3px;
	background: radial-gradient(circle at 1.5px 1.5px, #00A7D4 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}

.page-products-powerup .plan-block__sep {
	display: none;
}

.page-products-powerup .plan-block__lead {
	font-size: 16px;
	line-height: 1.9;
	text-align: center;
	margin-bottom: 48px;
}

.page-products-powerup .plan-block__warning {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.8;
	color: #C0392B;
	margin-bottom: 12px;
}

.page-products-powerup .plan-block__biznote {
	font-size: 12px;
	line-height: 1.8;
	color: var(--color-muted);
	margin-bottom: 24px;
}

/* ----- アコーディオン ----- */
.page-products-powerup .plan-accordions {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 48px;
}

.page-products-powerup .plan-accordion {
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid #00A7D4;
	box-shadow: 0 2px 12px rgba(0, 167, 212, 0.1);
}

.page-products-powerup .plan-accordion__btn {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px 32px;
	background: #00A7D4;
	border: none;
	cursor: pointer;
	text-align: left;
	transition: background 0.2s ease;
}
.page-products-powerup .plan-accordion__btn:hover { filter: brightness(0.92); }

.page-products-powerup .plan-accordion__name {
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	flex: 1;
}

.page-products-powerup .plan-accordion__badge {
	display: none;
}

.page-products-powerup .plan-accordion__option-tag {
	display: inline-flex;
	align-items: center;
	padding: 3px 12px;
	border: 1px solid rgba(255, 255, 255, 0.8);
	border-radius: 20px;
	font-size: 13px;
	font-weight: 500;
	color: #fff;
	white-space: nowrap;
	flex-shrink: 0;
}

.page-products-powerup .plan-accordion--option {
	border-color: #0071BC;
	box-shadow: 0 2px 12px rgba(0, 113, 188, 0.1);
}

.page-products-powerup .plan-accordion--option .plan-accordion__btn,
.page-products-powerup .plan-accordion--option.is-open .plan-accordion__btn {
	background: #0071BC;
}

/* 借家人：オプションタグを保険名の直後に配置 */
.page-products-powerup .plan-accordion--option .plan-accordion__name {
	flex: none;
}

/* 借家人：内部コンテンツの #00A7D4 を #0071BC に */
.page-products-powerup .plan-accordion--option .cov-block__title::after {
	background: #0071BC;
}
.page-products-powerup .plan-accordion--option .cov-amount__num {
	color: #0071BC;
}
.page-products-powerup .plan-accordion--option .pua-clause {
	color: #0071BC;
}
.page-products-powerup .plan-accordion--option td.pua-amount-cell {
	color: #0071BC;
}
.page-products-powerup .plan-accordion--option .cov-simulation::before {
	background: radial-gradient(circle at 1.5px 1.5px, #0071BC 1.5px, transparent 1.5px);
	background-size: 12px 3px;
	background-repeat: repeat-x;
}
.page-products-powerup .plan-accordion--option .cov-simulation__btn {
	color: #0071BC;
}
.page-products-powerup .plan-accordion--option .cov-simulation__icon::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230071BC' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");
}

/* plan-accordion 見出し：名前1行目、約款名2行目右寄せ */
.page-products-powerup .plan-accordion .cov-detail__heading {
	flex-wrap: wrap;
}

/* 借家人：h3内オプションタグ */
.page-products-powerup .plan-accordion--option .pua-h3-option-tag {
	display: inline-flex;
	align-items: center;
	padding: 2px 10px;
	border: 1.5px solid #0071BC;
	border-radius: 20px;
	font-size: 13px;
	font-weight: 500;
	color: #0071BC;
	white-space: nowrap;
	flex-shrink: 0;
	margin-left: 6px;
}

/* 借家人：保険金額（2プラン＋写真） */
.page-products-powerup .plan-accordion--option .cov-amount {
	flex-wrap: wrap;
	justify-content: center;
}
.page-products-powerup .plan-accordion--option .cov-amount__label {
	flex-basis: 100%;
	text-align: center;
	margin-bottom: 4px;
}
@media (max-width: 900px) {
	.page-products-powerup .plan-accordion--option .cov-block__top {
		grid-template-columns: 1fr;
	}
}

/* 借家人：2,000万円プラン行グレー */
.page-products-powerup .pua-row--2000 td {
	background: #F5F5F5;
}

/* 借家人：保険料テーブル */
.page-products-powerup .plan-accordion--option .cov-table thead th {
	background: #0071BC;
}
.page-products-powerup .cov-table .pua-biz-cell {
	background: #F5F5F5;
	text-align: center;
	vertical-align: middle;
}
.page-products-powerup .pua-plan--1000 {
	color: #0071BC;
	font-weight: 700;
	text-align: center;
}
.page-products-powerup .pua-plan--2000 {
	color: #0071BC;
	font-weight: 700;
	text-align: center;
}

/* 飲食業PL保険：h3内フォークアイコン */
.page-products-powerup .pua-h3-icon {
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
	height: 1.1em;
	width: auto;
	flex-shrink: 0;
}

/* 飲食業PL保険：売上高レンジ保険料テーブル */
.page-products-powerup .pua-sales-table thead th {
	background: #00A7D4;
}
.page-products-powerup .pua-rank-cell {
	background: #F5F5F5;
	text-align: center;
	font-weight: 700;
	width: 48px;
}
.page-products-powerup .pua-row--even td {
	background: #F5F5F5;
}
.page-products-powerup .cov-table .pua-amount-rowspan {
	background: #F2FBFD;
	color: #00A7D4;
	font-weight: 700;
	font-size: 16px;
	text-align: center;
	vertical-align: middle;
	line-height: 1.6;
}

.page-products-powerup .plan-accordion__icon {
	position: relative;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	margin-left: auto;
}
.page-products-powerup .plan-accordion__icon::before,
.page-products-powerup .plan-accordion__icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transition: opacity 0.2s ease;
}
.page-products-powerup .plan-accordion__icon::before {
	transform: translate(-50%, -65%) rotate(45deg);
	opacity: 1;
}
.page-products-powerup .plan-accordion__icon::after {
	transform: translate(-50%, -35%) rotate(-135deg);
	opacity: 0;
}
.page-products-powerup .plan-accordion.is-open .plan-accordion__icon::before {
	opacity: 0;
}
.page-products-powerup .plan-accordion.is-open .plan-accordion__icon::after {
	opacity: 1;
}

.page-products-powerup .plan-accordion__body {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.35s ease;
}
.page-products-powerup .plan-accordion.is-open .plan-accordion__body {
	max-height: 10000px;
}

.page-products-powerup .plan-accordion__inner {
	background: #fff;
	padding: 20px 24px;
}

.page-products-powerup .plan-accordion__desc {
	font-size: 14px;
	line-height: 1.9;
	color: var(--color-text);
}

/* ----- アコーディオン内部コンテンツ（pua-） ----- */
.page-products-powerup .pua-header {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}

.page-products-powerup .pua-header__title {
	font-size: 18px;
	font-weight: 700;
	color: var(--color-heading-dark);
}

.page-products-powerup .pua-header__clause {
	font-size: 12px;
	color: #00A7D4;
	margin-left: auto;
}

.page-products-powerup .pua-eligible {
	font-size: 13px;
	color: var(--color-muted);
	line-height: 1.8;
	margin-bottom: 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid #E8F0F4;
}

.page-products-powerup .pua-section {
	margin-bottom: 28px;
}

.page-products-powerup .pua-section__title {
	font-size: 14px;
	font-weight: 700;
	color: var(--color-text);
	padding-bottom: 8px;
	border-bottom: 1px solid #D0E8F5;
	margin-bottom: 16px;
}

.page-products-powerup .pua-coverage {
	display: flex;
	gap: 24px;
	align-items: flex-start;
	margin-bottom: 16px;
}

.page-products-powerup .pua-coverage__info {
	flex-shrink: 0;
}

.page-products-powerup .pua-coverage__label {
	font-size: 13px;
	color: var(--color-text);
	margin-bottom: 4px;
}

.page-products-powerup .pua-coverage__amount {
	font-size: 20px;
	font-weight: 700;
	color: var(--color-text);
	line-height: 1.2;
}

.page-products-powerup .pua-coverage__amount strong {
	font-size: 36px;
	color: var(--color-primary);
}

.page-products-powerup .pua-coverage__amount-sub {
	display: block;
	font-size: 14px;
	font-weight: 400;
	margin-top: 4px;
}

.page-products-powerup .pua-coverage__amount-sub strong {
	font-size: 24px;
}

.page-products-powerup .pua-coverage__img-wrap {
	flex: 1;
	min-width: 0;
}

.page-products-powerup .pua-coverage__img {
	width: 100%;
	max-width: 280px;
	height: 180px;
	object-fit: cover;
	border-radius: 8px;
	display: block;
}

.page-products-powerup .pua-coverage__desc {
	font-size: 14px;
	line-height: 1.9;
	color: var(--color-text);
}

.page-products-powerup .pua-example-table {
	width: 100%;
	border-collapse: collapse;
}

.page-products-powerup .pua-example-table__th {
	background: var(--color-light-bg);
	font-size: 13px;
	font-weight: 700;
	color: var(--color-text);
	padding: 12px 16px;
	text-align: left;
	white-space: nowrap;
	border: 1px solid #D0E8F5;
	width: 100px;
}

.page-products-powerup .pua-example-table__td {
	font-size: 13px;
	color: var(--color-text);
	padding: 12px 16px;
	border: 1px solid #D0E8F5;
	line-height: 1.7;
}

.page-products-powerup .pua-premium-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 12px;
}

.page-products-powerup .pua-premium-table__th {
	background: #00A7D4;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 10px 14px;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.3);
}

.page-products-powerup .pua-premium-table__note-inline {
	display: block;
	font-size: 10px;
	font-weight: 400;
	margin-top: 2px;
	opacity: 0.9;
}

.page-products-powerup .pua-premium-table__td {
	font-size: 13px;
	color: var(--color-text);
	padding: 12px 14px;
	border: 1px solid #D0E8F5;
	text-align: left;
}

.page-products-powerup .pua-premium-table__td--center {
	text-align: center;
}

.page-products-powerup .pua-premium-table__td--amount {
	text-align: center;
	font-size: 13px;
}

.page-products-powerup .pua-premium-table__td--amount strong {
	font-size: 18px;
	font-weight: 700;
	color: #00A7D4;
	display: block;
}

.page-products-powerup .pua-premium-note {
	font-size: 12px;
	color: var(--color-muted);
	line-height: 1.7;
}

.page-products-powerup .pua-sim {
	background: var(--color-light-bg);
	border-radius: 10px;
	padding: 20px 24px;
	text-align: center;
	margin-top: 8px;
}

.page-products-powerup .pua-sim__plan {
	font-size: 13px;
	font-weight: 700;
	color: #00A7D4;
	margin-bottom: 8px;
}

.page-products-powerup .pua-sim__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 15px;
	font-weight: 700;
	color: #00A7D4;
	text-decoration: none;
	transition: opacity 0.2s;
}
.page-products-powerup .pua-sim__link:hover { opacity: 0.7; }

.page-products-powerup .pua-sim__icon {
	width: 16px;
	height: 16px;
}

.page-products-powerup .pua-sim__note {
	font-size: 11px;
	color: var(--color-muted);
	margin-top: 6px;
}

/* ----- アコーディオン内部拡張クラス（cov構造＋powerup独自） ----- */
.page-products-powerup .cov-table--expense {
	table-layout: fixed;
}
.page-products-powerup .cov-table--expense .cov-table__td--kind {
	width: 215px;
}
.page-products-powerup .cov-detail__heading {
	margin-bottom: 12px;
}
.page-products-powerup .pua-clause {
	font-size: 14px;
	font-weight: 400;
	color: #00A7D4;
	white-space: nowrap;
	margin-left: auto;
	align-self: center;
}
.page-products-powerup .pua-lead {
	font-size: 14px;
	color: var(--color-sub-text);
	line-height: 1.8;
	margin-bottom: 32px;
}
.page-products-powerup .cov-table th {
	border: 1px solid #D9D9D9;
	padding: 16px 20px;
	text-align: center;
	line-height: 1.6;
	vertical-align: middle;
}
.page-products-powerup .pua-th-note {
	display: block;
	font-size: 11px;
	font-weight: 400;
	margin-top: 4px;
}
.page-products-powerup td.pua-amount-cell {
	color: #00A7D4;
	font-weight: 700;
	font-size: 18px;
	background: var(--color-light-bg);
}

/* ----- 図解（パワーアッップラン） ----- */
.page-products-powerup .powerup-diagram {
	background: #fff;
	border-radius: 12px;
	border: 1px solid #D0E8F5;
	padding: 36px 40px;
	margin-bottom: 40px;
	text-align: center;
}

.page-products-powerup .powerup-diagram__img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto 20px;
}

.page-products-powerup .powerup-diagram__caption {
	font-size: 14px;
	line-height: 1.8;
	color: var(--color-text);
	text-align: center;
	margin-bottom: 28px;
}

.page-products-powerup .powerup-diagram__visual {
	display: flex;
	justify-content: center;
	margin-bottom: 20px;
	position: relative;
}

.page-products-powerup .powerup-diagram__box {
	padding: 24px 28px;
	text-align: center;
	border-radius: 10px;
	min-width: 200px;
}

.page-products-powerup .powerup-diagram__box--usen {
	background: #fff;
	border: 1px solid #00A7D4;
	position: relative;
	z-index: 2;
	margin-right: -24px;
}

.page-products-powerup .powerup-diagram__box--sonpo {
	background: #00A7D4;
	position: relative;
	z-index: 1;
	padding-left: 44px;
}

.page-products-powerup .powerup-diagram__overlap-label {
	display: inline-block;
	background: #E0F4FB;
	color: #00A7D4;
	font-size: 10px;
	font-weight: 700;
	padding: 2px 8px;
	border-radius: 3px;
	margin-bottom: 10px;
}

.page-products-powerup .powerup-diagram__box-name {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 10px;
}

.page-products-powerup .powerup-diagram__box--usen .powerup-diagram__box-name {
	color: var(--color-text);
}

.page-products-powerup .powerup-diagram__box--sonpo .powerup-diagram__box-name {
	color: #fff;
}

.page-products-powerup .powerup-diagram__box-amount {
	font-size: 12px;
	line-height: 1.5;
}

.page-products-powerup .powerup-diagram__box--usen .powerup-diagram__box-amount {
	color: #00A7D4;
}

.page-products-powerup .powerup-diagram__box--sonpo .powerup-diagram__box-amount {
	color: #fff;
}

.page-products-powerup .powerup-diagram__box-amount strong {
	display: block;
	font-size: 22px;
	font-weight: 700;
	margin-top: 2px;
}

.page-products-powerup .powerup-diagram__notes {
	list-style: none;
	padding: 0;
	margin: 0;
}

.page-products-powerup .powerup-diagram__notes li {
	font-size: 12px;
	color: var(--color-muted);
	line-height: 1.7;
}

/* ----- 契約情報テーブル ----- */
.page-products-powerup .plan-info-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 24px;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
}

.page-products-powerup .plan-info-table__th {
	background: #fff;
	color: #00A7D4;
	font-size: 13px;
	font-weight: 700;
	padding: 14px 20px;
	text-align: left;
	white-space: nowrap;
	width: 140px;
	border-right: 1px solid #E8F5FB;
}

.page-products-powerup .plan-info-table__td {
	font-size: 13px;
	color: var(--color-text);
	padding: 14px 20px;
	border-bottom: 1px solid #F0F0F0;
}

/* ----- 注意事項 ----- */
.page-products-powerup .plan-notes {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}

.page-products-powerup .plan-notes__item {
	font-size: 12px;
	color: var(--color-muted);
	line-height: 1.8;
}

/* ----- パワーアッループラン情報パネル ----- */
.page-products-powerup .pua-info-panel {
	background: #fff;
	border-radius: 12px;
	padding: 48px 56px;
	margin-top: 40px;
}

.page-products-powerup .pua-info-panel__intro {
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	line-height: 1.8;
	margin-bottom: 40px;
}

/* 重複補償ダイアグラム */
.page-products-powerup .pua-overlap-diagram {
	text-align: center;
	margin-bottom: 24px;
}

.page-products-powerup .pua-overlap-diagram__img {
	max-width: 78%;
	height: auto;
}

.page-products-powerup .pua-overlap-diagram__main {
	display: flex;
	align-items: stretch;
}

.page-products-powerup .pua-overlap-diagram__left-col {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: relative;
	margin-right: -1px;
}

.page-products-powerup .pua-overlap-diagram__tag {
	display: inline-block;
	background: #00A7D4;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 4px 4px 0 0;
	white-space: nowrap;
}

.page-products-powerup .pua-overlap-diagram__left-box {
	border: 1px solid #00A7D4;
	background: #fff;
	padding: 20px 24px;
	text-align: center;
	min-width: 140px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
}

.page-products-powerup .pua-overlap-diagram__right-col {
	flex: 1;
}

.page-products-powerup .pua-overlap-diagram__sonpo-box {
	border: 1px solid #00A7D4;
	padding: 16px 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	min-width: 260px;
	height: 100%;
	box-sizing: border-box;
}

.page-products-powerup .pua-overlap-diagram__sonpo-name {
	color: #00A7D4;
	font-size: 15px;
	font-weight: 700;
	text-align: center;
	white-space: nowrap;
}

.page-products-powerup .pua-overlap-diagram__usen-box {
	border: 1.5px solid #00A7D4;
	padding: 12px 20px;
	text-align: center;
	width: 100%;
	box-sizing: border-box;
}

.page-products-powerup .pua-overlap-diagram__usen-name {
	color: #00A7D4;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.6;
}

.page-products-powerup .pua-overlap-diagram__connector {
	width: 36px;
	height: 2px;
	background: #000;
	position: relative;
	flex-shrink: 0;
}
.page-products-powerup .pua-overlap-diagram__connector::after {
	content: '';
	position: absolute;
	right: -1px;
	top: 50%;
	transform: translateY(-50%);
	border-left: 8px solid #000;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}

.page-products-powerup .pua-overlap-diagram__total-box {
	border: 1px solid #00A7D4;
	background: #fff;
	padding: 20px 24px;
	text-align: center;
	min-width: 100px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.page-products-powerup .pua-overlap-diagram__box-label {
	font-size: 13px;
	color: var(--color-sub);
	margin-bottom: 4px;
}

.page-products-powerup .pua-overlap-diagram__box-num {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
}

.page-products-powerup .pua-overlap-diagram__box-unit {
	font-size: 15px;
	font-weight: 700;
}

.page-products-powerup .pua-info-panel__overlap-note {
	font-size: 14px;
	line-height: 1.8;
	text-align: center;
	margin-bottom: 40px;
}

/* 保険情報グリッド */
.page-products-powerup .pua-info-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 60px;
	row-gap: 0;
	margin-bottom: 24px;
}

.page-products-powerup .pua-info-grid__item {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 20px;
	padding: 20px 0;
	border-bottom: 1px solid #E0E0E0;
}

.page-products-powerup .pua-info-grid__term {
	color: #00A7D4;
	font-size: 13px;
	font-weight: 700;
	white-space: nowrap;
	flex-shrink: 0;
}

.page-products-powerup .pua-info-grid__desc {
	font-size: 14px;
	line-height: 1.6;
}

/* 備考リスト */
.page-products-powerup .pua-info-panel__notes {
	list-style: none;
	padding: 0;
	margin: 0 0 20px;
}

.page-products-powerup .pua-info-panel__notes li {
	font-size: 12px;
	color: #000;
	line-height: 1.8;
}

/* フッターエリア */
.page-products-powerup .pua-info-panel__footer {
	margin-top: 40px;
	text-align: center;
}

.page-products-powerup .pua-info-panel__footer > p {
	font-size: 14px;
	color: #000;
	line-height: 1.8;
}

.page-products-powerup .pua-info-panel__footer > p:nth-child(3) {
	margin-top: 28px;
}

.page-products-powerup .pua-info-panel__pdf {
	max-width: 78%;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	margin-top: 20px;
	margin-bottom: 12px;
	border-bottom: 1px solid #E0E0E0;
	padding: 14px 0;
}

.page-products-powerup .pua-info-panel__pdf-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	color: #000;
}
.page-products-powerup .pua-info-panel__pdf-link:hover { opacity: 0.7; }

.page-products-powerup .pua-info-panel__pdf-name {
	font-size: 16px;
	font-weight: 600;
}

.page-products-powerup .pua-info-panel__pdf-size,
.docs-pdf-size {
	font-size: 13px;
	font-weight: 500;
	color: var(--color-sub);
}

.page-products-powerup .pua-info-panel__pdf-icon {
	display: inline-block;
	width: 20px;
	height: 24px;
	background-image: url("../../images/common/pdf_icon.svg");
	background-repeat: no-repeat;
	background-size: contain;
}

.page-products-powerup .pua-info-panel__doc-id {
	font-size: 11px;
	color: var(--color-muted);
	text-align: right;
	margin-top: 16px;
}

/* ===== Bizサポートプラン ===== */

/* セクションヘッダー */
.page-products-powerup .biz-alert {
	font-size: 16px;
	color: #E03030;
	font-weight: 600;
	text-align: center;
	margin-top: 32px;
	line-height: 1.8;
}

.page-products-powerup .biz-caution {
	font-size: 14px;
	text-align: center;
	margin-top: 12px;
	margin-bottom: 48px;
	line-height: 1.8;
}

/* アコーディオン内 - 見出し */
.page-products-powerup .biz-heading {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
}

.page-products-powerup .biz-clause {
	font-size: 12px;
	color: #00A7D4;
	font-weight: 400;
	white-space: nowrap;
	flex-shrink: 0;
}

/* リード文 */
.page-products-powerup .biz-lead {
	font-size: 14px;
	line-height: 1.9;
	color: #000;
	margin-bottom: 32px;
}

/* 青いフィーチャーテキスト */
.page-products-powerup .biz-feature-text {
	color: #0071BC;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.7;
	text-align: center;
	margin-bottom: 20px;
}

/* 補償例 ドット箇条書き */
.page-products-powerup .biz-dots {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	padding: 0;
	margin: 0;
}

.page-products-powerup .biz-dots li {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	line-height: 1.5;
}

.page-products-powerup .biz-dots li::before {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #00A7D4;
	flex-shrink: 0;
}

/* biz-dots 用レイアウト調整 */
.page-products-powerup .biz-example-box--dots {
	align-items: flex-start;
}

.page-products-powerup .biz-example-box--dots .biz-example-box__tag {
	padding-top: 20px;
}

.page-products-powerup .biz-example-box--dots .biz-example-box__body {
	padding: 16px 20px;
}

/* ----- cov-block ノートリスト ----- */
.page-products-powerup .cov-block__note-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

/* ----- SUPPORT1 / SUPPORT2 カード ----- */
.page-products-powerup .biz-support-cards {
	display: flex;
	gap: 16px;
}
.page-products-powerup .biz-support-card {
	flex: 1;
	position: relative;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
	margin-top: 24px;
}
.page-products-powerup .biz-support-card__badge {
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	background: linear-gradient(90deg, #00A7D4 0%, #00BFD3 100%);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding: 10px 36px;
	border-radius: 50px;
	white-space: nowrap;
	letter-spacing: 0.08em;
}
.page-products-powerup .biz-support-card__body {
	padding: 36px 24px 24px;
}
.page-products-powerup .biz-support-card__text {
	font-size: 14px;
	line-height: 1.8;
	padding-bottom: 16px;
	border-bottom: 1px solid #E8E8E8;
	margin-bottom: 16px;
}
.page-products-powerup .biz-support-card__note {
	font-size: 12px;
	line-height: 1.8;
}
.page-products-powerup .biz-support-card__notes {
	list-style: none;
	padding: 0;
	margin: 0;
}
.page-products-powerup .biz-support-card__notes li {
	font-size: 12px;
	line-height: 1.8;
	margin-top: 4px;
}

/* ----- シミュレーション サブノート ----- */
.page-products-powerup .cov-simulation__subnote {
	font-size: 12px;
	color: var(--color-sub);
	text-align: center;
	margin-top: 12px;
}

/* ----- お問い合わせテキスト ----- */
.page-products-powerup .plan-contact-text {
	font-size: 13px;
	color: var(--color-muted);
	line-height: 1.8;
	margin-bottom: 32px;
	text-align: center;
}

/* ----- 書類ダウンロード ----- */
.page-products-powerup .plan-docs {
	margin-top: 8px;
}

.page-products-powerup .plan-docs__lead {
	font-size: 14px;
	color: var(--color-text);
	margin-bottom: 12px;
}

.page-products-powerup .plan-docs__list {
	list-style: none;
	padding: 0;
	margin: 0 0 12px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.page-products-powerup .plan-docs__item {
	border-bottom: 1px solid #E0E0E0;
	padding-bottom: 8px;
}

.page-products-powerup .plan-docs__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 700;
	color: #00A7D4;
	text-decoration: none;
	transition: opacity 0.2s;
}
.page-products-powerup .plan-docs__link:hover { opacity: 0.7; }

.page-products-powerup .plan-docs__icon {
	width: 18px;
	height: 18px;
}

.page-products-powerup .plan-docs__number {
	font-size: 12px;
	color: var(--color-muted);
	text-align: right;
	margin-bottom: 0;
}

.page-products-powerup .plan-docs__divider {
	border: none;
	border-bottom: 1px solid #E0E0E0;
	margin-top: 16px;
}

/* ----- バナーセクション ----- */
.page-products-powerup .powerup-banner-section {
	padding: 100px 0 0px;
}

.page-products-powerup .powerup-banner-section .anshin-banner__link {
	display: block;
	transition: opacity 0.2s;
}
.page-products-powerup .powerup-banner-section .anshin-banner__link:hover { opacity: 0.9; }

.page-products-powerup .powerup-banner-section .anshin-banner__img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 12px;
}

.page-products-powerup .powerup-banner-section .anshin-banner__note {
	font-size: 12px;
	color: var(--color-text-sub);
	text-align: right;
	margin-top: 8px;
}

/* ----- お問い合わせ（top-contact流用） ----- */
.page-products-powerup .top-contact {
	position: relative;
	padding: 100px 0 20px;
	background: #fff;
}

.page-products-powerup .top-contact__inner {
	position: relative;
	z-index: 1;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 110px;
}

.page-products-powerup .top-contact__label {
	margin-bottom: 40px;
}

.page-products-powerup .top-contact__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	margin-bottom: 24px;
	position: relative;
	z-index: 2;
}

.page-products-powerup .top-contact__body {
	background: #F2FBFD;
	border-radius: 20px;
	margin-top: -182px;
	margin-left: calc(-50vw + 50% + 27px);
	margin-right: calc(-50vw + 50% + 27px);
	padding: 222px 60px 60px;
	position: relative;
	z-index: 1;
}

.page-products-powerup .top-contact__card {
	background: #fff;
	border-radius: 16px;
	padding: 32px 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
}

.page-products-powerup .top-contact__card-title {
	font-weight: 700;
	font-size: 18px;
	color: var(--color-heading-dark);
	text-align: center;
}

.page-products-powerup .top-contact__divider {
	width: 100%;
	border: none;
	border-bottom: 1px solid #e0e0e0;
	padding: 20px 0 0 0;
}

.page-products-powerup .top-contact__tel-area {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 20px 0 4px;
}

.page-products-powerup .top-contact__tel-header {
	font-weight: 500;
	font-size: 14px;
	color: var(--color-sub);
	text-align: center;
}

.page-products-powerup .top-contact__tel-row {
	display: flex;
	align-items: center;
	gap: 12px;
}

.page-products-powerup .top-contact__tel-label {
	font-weight: 500;
	font-size: 15px;
	color: var(--color-heading-dark);
}

.page-products-powerup .top-contact__tel-num {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	font-size: 30px;
	color: #00A7D4;
	text-decoration: none;
	letter-spacing: 0.04em;
	line-height: 1;
	transition: opacity 0.2s;
}

.page-products-powerup .top-contact__tel-num:hover { opacity: 0.75; }

.page-products-powerup .top-contact__tel-note {
	font-weight: 500;
	font-size: 13px;
	color: var(--color-muted);
	text-align: center;
}

.page-products-powerup .top-contact__sub {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 32px;
}

.page-products-powerup .top-contact__sub-text {
	font-weight: 700;
	font-size: 16px;
	color: var(--color-heading-dark);
}

/* ----- パワーアッププラン モバイル対応 ----- */
@media (max-width: 767px) {
	.page-products-powerup .plan-block {
		padding: 32px 20px 40px;
	}
	.page-products-powerup .pua-coverage {
		flex-direction: column;
	}
	.page-products-powerup .pua-coverage__img {
		max-width: 100%;
		height: 200px;
	}
	.page-products-powerup .pua-example-table__th {
		width: 72px;
	}
}

/* ----- パワーアッププラン SP (600px) ----- */
@media (max-width: 600px) {

	/* ヒーロー */
	.page-products-powerup .powerup-hero__title {
		font-size: 22px;
	}
	.page-products-powerup .powerup-hero__text {
		font-size: 14px;
		line-height: 1.8;
	}

	/* セクション共通 */
	.page-products-powerup .powerup-plan-section,
	.page-products-powerup .bizsupport-plan-section {
		padding: 50px 0;
	}
	.page-products-powerup .plan-accordions {
		margin: 50px 5px;
		gap: 10px;
	}
	.page-products-powerup .pua-info-panel {
		margin-left: 5px;
		margin-right: 5px;
	}
	.page-products-powerup .plan-section__title-img {
		height: 36px;
	}

	/* plan-block */
	.page-products-powerup .plan-block {
		padding: 32px 0 0;
	}
	.page-products-powerup .plan-block__heading {
		font-size: 20px;
		margin-left: 20px;
		margin-right: 20px;
	}
	.page-products-powerup .plan-block__lead {
		font-size: 15px;
		text-align: left;
		margin-left: 20px;
		margin-right: 20px;
		margin-bottom: 25px;
	}
	.page-products-powerup .biz-alert,
	.page-products-powerup .biz-caution {
		text-align: left;
		margin: 0 20px 10px;
	}

	/* アコーディオンボタン */
	.page-products-powerup .plan-accordion__btn {
		flex-wrap: wrap;
		padding: 16px 20px;
		gap: 8px 12px;
	}
	.page-products-powerup .plan-accordion__name {
		font-size: 16px;
		flex: 1 1 auto;
	}
	.page-products-powerup .plan-accordion__icon {
		flex-shrink: 0;
	}
	.page-products-powerup .plan-accordion--option .plan-accordion__name {
		flex: none;
	}
	.page-products-powerup .plan-accordion--option .plan-accordion__icon {
		margin-left: auto;
	}

	/* アコーディオン内コンテンツ SP */
	.page-products-powerup .plan-accordion__inner {
		padding: 20px 16px;
	}
	.page-products-powerup .cov-detail {
		padding: 0;
	}
	.page-products-powerup .cov-detail__heading {
		font-size: 18px;
		gap: 4px 8px;
		margin-bottom: 20px;
		align-items: center;
		flex-wrap: wrap;
	}
	.page-products-powerup .pua-clause {
		margin-left: 0;
	}
	.page-products-powerup .cov-amount {
		padding: 25px 20px;
		flex-wrap: wrap;
	}
	.page-products-powerup .cov-amount__group {
		display: flex;
		align-items: baseline;
		gap: 4px;
		justify-content: center;
		width: 100%;
	}
	.page-products-powerup .cov-amount__num {
		font-size: 33px;
	}

	/* cov-block__top 縦積み */
	.page-products-powerup .cov-block__top {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	/* biz-example-box SP */
	.page-products-powerup .biz-example-box {
		flex-direction: column;
		align-items: stretch;
	}
	.page-products-powerup .biz-example-box__tag {
		min-width: auto;
		white-space: normal;
		padding: 14px 16px;
	}
	.page-products-powerup .biz-example-box__tag::after {
		display: none;
	}
	.page-products-powerup .biz-example-box__body {
		padding: 16px;
		position: relative;
	}
	.page-products-powerup .biz-example-box__body::before {
		content: '';
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 90%;
		height: 1.5px;
		background: rgba(0, 167, 212, 0.35);
	}

	/* biz-support-cards 縦積み */
	.page-products-powerup .biz-support-cards {
		flex-direction: column;
	}

	/* テーブル SP */
	.page-products-powerup .cov-table {
		table-layout: fixed;
		width: 100%;
		font-size: 12px;
	}
	.page-products-powerup .cov-table th,
	.page-products-powerup .cov-table td {
		padding: 8px 6px;
		white-space: normal;
	}
	/* pua-sales-table 列幅 SP */
	.page-products-powerup .pua-sales-table th:nth-child(1),
	.page-products-powerup .pua-sales-table td:nth-child(1) {
		width: 12%;
	}
	.page-products-powerup .pua-sales-table th:nth-child(2),
	.page-products-powerup .pua-sales-table td:nth-child(2) {
		width: 38%;
	}

	/* cov-simulation__blob */
	.page-products-powerup .cov-simulation__blob {
		padding: 27px;
		border-radius: 200px;
		gap: 8px;
	}
	.page-products-powerup .cov-simulation__logo {
		height: 24px;
	}

	/* pua-info-panel */
	.page-products-powerup .pua-info-panel {
		padding: 25px 16px;
	}
	.page-products-powerup .pua-info-panel__intro {
		font-size: 16px;
		text-align: left;
		margin-bottom: 24px;
	}
	.page-products-powerup .pua-overlap-diagram__img {
		max-width: 100%;
	}
	.page-products-powerup .pua-info-panel__overlap-note {
		text-align: left;
		font-size: 12px
	}
	.page-products-powerup .pua-info-grid {
		grid-template-columns: 1fr;
	}
	.page-products-powerup .pua-info-grid__term {
		width: 6em;
	}
	.page-products-powerup .pua-info-panel__footer {
		text-align: left;
		padding: 0 20px;
	}
	.page-products-powerup .pua-info-panel__pdf {
		max-width: 100%;
	}
	.page-products-powerup .pua-info-panel__pdf-link {
		display: flex;
		width: 100%;
		flex-wrap: nowrap;
		align-items: center;
	}
	.page-products-powerup .pua-info-panel__pdf-name {
		flex: 1 1 0;
		min-width: 0;
		font-size: 14px;
	}
	.page-products-powerup .pua-info-panel__pdf-size {
		flex-shrink: 0;
	}
	.page-products-powerup .pua-info-panel__pdf-icon {
		flex-shrink: 0;
	}

	/* テーブル文字サイズ */
	.page-products-powerup .cov-table {
		font-size: 12px;
	}

	/* cov-legal-note */
	.page-products-powerup .cov-legal-note {
		font-size: 11px;
		margin: 16px 0 0;
	}

	.page-products-powerup .powerup-banner-section {
		padding: 50px 0 0;
	}
	.page-products-powerup .powerup-banner-section .anshin-banner__note {
		font-size: 10px;
		color: var(--color-text-sub);
		text-align: left;
		margin-top: 8px;
		padding: 0 20px;
	}

	/* top-contact SP */
	.page-products-powerup .top-contact {
		padding: 50px 0 10px;
		overflow: hidden;
	}
	.page-products-powerup .top-contact__inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	.page-products-powerup .top-contact__label {
		margin-bottom: 32px;
	}
	.page-products-powerup .top-contact .section-label__ja {
		font-size: 20px;
	}
	.page-products-powerup .top-contact__body {
		margin-top: -55px;
		margin-left: -10px;
		margin-right: -10px;
		padding: 70px 20px 50px;
		border-radius: 15px;
	}
	.page-products-powerup .top-contact__cards {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.page-products-powerup .top-contact__card {
		padding: 32px 24px;
	}
	.page-products-powerup .top-contact .btn-blue {
		width: 100%;
		justify-content: center;
		padding-left: 24px;
		padding-right: 24px;
	}
	.page-products-powerup .top-contact__tel-area {
		padding: unset;
	}
	.page-products-powerup .top-contact__divider {
		padding: 10px 0 0 0;
	}
	.page-products-powerup .top-contact__tel-row {
		flex-direction: column;
		align-items: center;
		gap: 4px;
	}
	.page-products-powerup .top-contact__tel-label {
		font-size: 13px;
	}
	.page-products-powerup .top-contact__tel-num {
		font-size: 26px;
	}
	.page-products-powerup .top-contact__sub {
		flex-direction: column;
		align-items: center;
		gap: 16px;
		text-align: center;
	}
}

/* ===================================
   anshin SP table styles
=================================== */
.page-products-anshin .anshin-sp-plan-tables {
	margin-top: 0;
}
.page-products-anshin .anshin-sp-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 12px;
	margin-bottom: 0;
}
.page-products-anshin .anshin-sp-table th,
.page-products-anshin .anshin-sp-table td {
	padding: 12px 10px;
	border: 1px solid #ddd;
	text-align: center;
	vertical-align: middle;
	line-height: 1.5;
}
.page-products-anshin .anshin-sp-table thead th {
	background: #00A7D4;
	color: #fff;
	font-weight: 700;
	font-size: 12px;
}

.page-products-anshin .anshin-sp-table .anshin-sp-plan-name {
	font-weight: 500;
	background: #00A7D4;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	width: 30%;
}
.page-products-anshin .anshin-sp-table .anshin-sp-price {
	color: #00A7D4;
	font-weight: 700;
}
.page-products-anshin .anshin-sp-table .anshin-sp-dash {
	color: #959595;
}
.page-products-anshin .anshin-sp-table .anshin-sp-kind {
	text-align: left;
	font-weight: 700;
}
.page-products-anshin .anshin-sp-section-title {
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	background: #6D6D6D;
	padding: 6px 12px;
}
.page-products-anshin .anshin-sp-section-title--price {
	background: #00A7D4;
	margin-top: 12px;
}
.page-products-anshin .anshin-sp-option-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 12px;
	background: #FFF9EC;
	border: 1px solid #ddd;
	border-top: none;
	font-size: 13px;
}
.page-products-anshin .anshin-sp-option-label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-weight: 700;
}
.page-products-anshin .anshin-sp-option-price {
	font-weight: 700;
	color: #00A7D4;
	font-size: 15px;
}
/* biz別カラー */
.page-products-anshin .anshin-sp-table--salon thead th {
	background: #D36D87;
}
.page-products-anshin .anshin-sp-table--salon .anshin-sp-plan-name {
	color: #D36D87;
	background: #FEF0F5;
}
.page-products-anshin .anshin-sp-table--salon .anshin-sp-price {
	color: #D36D87;
}
.page-products-anshin .anshin-sp-option-row--salon {
	background: #FEF0F5;
}
.page-products-anshin .anshin-sp-option-row--salon .anshin-sp-option-price {
	color: #D36D87;
}
.page-products-anshin .anshin-sp-table--retail thead th {
	background: #A26C50;
}
.page-products-anshin .anshin-sp-table--retail .anshin-sp-plan-name {
	color: #A26C50;
	background: #F8F2EC;
}
.page-products-anshin .anshin-sp-table--retail .anshin-sp-price {
	color: #A26C50;
}
.page-products-anshin .anshin-sp-option-row--retail {
	background: #F8F2EC;
}
.page-products-anshin .anshin-sp-option-row--retail .anshin-sp-option-price {
	color: #A26C50;
}
.page-products-anshin .anshin-sp-table .anshin-sp-merge {
	vertical-align: middle;
	background: #F2FBFD;
	font-size: 12px;
}

/* 休業時の補償 SP 4列テーブル */
.page-products-anshin .anshin-sp-kyugyo-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 12px;
	table-layout: fixed;
}
.page-products-anshin .anshin-sp-kyugyo-table th,
.page-products-anshin .anshin-sp-kyugyo-table td {
	padding: 10px 6px;
	border: 1px solid #ddd;
	text-align: center;
	vertical-align: middle;
	line-height: 1.4;
	color: #0071BC;
}
.page-products-anshin .anshin-sp-kyugyo-table thead th {
	background: #F2FBFD;
	color: #000;
	font-weight: 500;
	font-size: 11px;
}
.page-products-anshin .anshin-sp-kyugyo-table thead .anshin-sp-kyugyo-th--plan {
	width: 23%;
	background: #00A7D4;
	color: #fff;
	font-weight: 500;
}
.page-products-anshin .anshin-sp-kyugyo-table thead .anshin-sp-kyugyo-th--option {
	width: 26%;
	/* background: #fff; */
	color: #000;
	font-weight: 500;
	font-size: 11px;
}
.page-products-anshin .anshin-sp-kyugyo-th--option .plan-option-tag {
	display: block;
	margin: 4px auto 0;
	font-size: 10px;
	padding: 2px 6px;
}
.page-products-anshin .anshin-sp-kyugyo-table .anshin-sp-plan-name {
	background: #00A7D4;
	color: #fff;
	font-weight: 500;
	width: 23%;
}
.page-products-anshin .anshin-sp-kyugyo-table .anshin-sp-price {
	color: #00A7D4;
	font-weight: 700;
}
.page-products-anshin .anshin-sp-kyugyo-table .anshin-sp-dash {
	color: #959595;
}
.page-products-anshin .anshin-sp-kyugyo-price {
	color: #00A7D4;
	font-weight: 700;
	font-size: 13px;
	vertical-align: middle;
}

/* === anshin-sp-biz-table: 3列ビズテーブル === */
.page-products-anshin .anshin-sp-biz-table {
	table-layout: fixed;
	font-size: 12px;
}
.page-products-anshin .anshin-sp-biz-table th,
.page-products-anshin .anshin-sp-biz-table td {
	padding: 10px 6px;
}
.page-products-anshin .anshin-sp-biz-table thead .anshin-sp-biz-th--plan {
	background: #00A7D4;
	color: #fff;
	font-weight: 500;
	font-size: 11px;
	width: 25%;
}
.page-products-anshin .anshin-sp-biz-table thead .anshin-sp-biz-th--basic {
	background: #F2FBFD;
	color: #000;
	font-weight: 500;
	font-size: 11px;
}
.page-products-anshin .anshin-sp-biz-table thead .anshin-sp-biz-th--option {
	background: #F2FBFD;
	color: #000;
	font-weight: 700;
	font-size: 11px;
	width: 28%;
}
.page-products-anshin .anshin-sp-biz-th--option .plan-option-tag {
	display: block;
	margin: 4px auto 0;
	font-size: 10px;
	padding: 2px 6px;
}
.page-products-anshin .anshin-sp-biz-table .anshin-sp-plan-name {
	width: 25%;
	font-size: 12px;
}
.page-products-anshin .anshin-sp-biz-option-price {
	color: #00A7D4;
	font-weight: 700;
	font-size: 13px;
	vertical-align: middle;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--salon thead .anshin-sp-biz-th--plan {
	background: #D36D87;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--salon thead .anshin-sp-biz-th--basic {
	background: #FEF0F5;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--salon thead .anshin-sp-biz-th--option {
	background: #FEF0F5;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--salon .anshin-sp-plan-name {
	background: #D36D87;
	color: #fff;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--salon .anshin-sp-biz-option-price {
	color: #D36D87;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--retail thead .anshin-sp-biz-th--plan {
	background: #A26C50;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--retail thead .anshin-sp-biz-th--basic {
	background: #F8F2EC;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--retail .anshin-sp-plan-name {
	background: #A26C50;
	color: #fff;
}
.page-products-anshin .anshin-sp-biz-table.anshin-sp-table--retail .anshin-sp-biz-option-price {
	color: #A26C50;
}

/* ===================================
   anshin SP transposed table overrides
=================================== */
.page-products-anshin .plan-td-sub--label {
	font-weight: 700;
}

@media (max-width: 768px) {
	.page-products-anshin .cov-block__top,
	.page-products-anshin .biz-accordion .cov-block__top {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.page-products-anshin .anshin-plan__table--sp .plan-th-base {
		color: #fff;
		text-align: center;
		vertical-align: middle;
		letter-spacing: 0;
		font-weight: 500;
		width: 110px;
	}
	.page-products-anshin .anshin-plan__table--sp .plan-tr-gray .plan-td-group,
	.page-products-anshin .anshin-plan__table--sp .plan-tr-blue .plan-td-group {
		background: #00A7D4;
		color: #fff;
		text-align: center;
		white-space: normal;
		font-weight: 500;
		letter-spacing: 0;
		width: 110px;
	}

	.page-products-anshin .anshin-sp-table thead th {
		font-weight: 500;
		font-size: 14px;
	}

	/* biz-accordion ボタン SP レイアウト */
	.page-products-anshin .biz-accordion__btn,
	.page-products-riskguard .biz-accordion__btn {
		flex-wrap: wrap;
		padding: 16px 20px;
		gap: 10px 0;
	}
	.page-products-anshin .biz-accordion__title,
	.page-products-riskguard .biz-accordion__title {
		flex: 1;
		white-space: normal;
		font-size: 16px;
	}
	.page-products-anshin .biz-accordion__icon,
	.page-products-riskguard .biz-accordion__icon {
		flex-shrink: 0;
	}
	.page-products-anshin .biz-accordion__industries,
	.page-products-riskguard .biz-accordion__industries {
		width: 100%;
		order: 3;
		margin-left: 0;
		white-space: normal;
		font-size: 11px;
	}

	.page-products-anshin .anshin-plan__notes li {
		font-size: 12px;
	}
}

/* ===== 方針系ページ SP（600px以下）===== */
@media (max-width: 600px) {

	/* inner-content 下余白縮小・パディングリセット */
	.inner-content {
		margin-bottom: 60px;
		padding: 0 20px;
	}

	/* ---- 個人情報保護等に関する基本方針 ---- */
	.page-policy-privacy .policy-link {
		word-break: break-all;
	}
	.page-policy-privacy .policy-lead {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-privacy .policy-level1 {
		gap: 32px;
		margin-top: 40px;
	}
	.page-policy-privacy .policy-level1__heading {
		font-size: 16px;
		line-height: 26px;
	}
	.page-policy-privacy .policy-body {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-privacy .policy-indent {
		font-size: 15px;
		line-height: 26px;
		padding-left: 0;
	}
	.page-policy-privacy .policy-indent2__item {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-privacy .policy-box {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-privacy .policy-contact__label,
	.page-policy-privacy .policy-contact__address {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-privacy .policy-contact__name {
		font-size: 16px;
		line-height: 26px;
	}
	.page-policy-privacy .policy-level2__heading {
		line-height: 26px;
	}
	.page-policy-privacy .policy-appendix {
		font-size: 15px;
		line-height: 26px;
	}

	/* ---- 情報セキュリティ基本方針 ---- */
	.page-policy-infosec .infosec-sections {
		gap: 32px;
	}
	.page-policy-infosec .infosec-lead,
	.page-policy-infosec .infosec-item__body,
	.page-policy-infosec .infosec-closing {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-infosec .infosec-item__heading {
		font-size: 16px;
		line-height: 26px;
	}

	/* ---- サイトポリシー ---- */
	.page-policy-sitepolicy .sitepolicy-sections {
		gap: 32px;
	}
	.page-policy-sitepolicy .sitepolicy-link {
		word-break: break-all;
	}
	.page-policy-sitepolicy .sitepolicy-item__body,
	.page-policy-sitepolicy .sitepolicy-sublist {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-sitepolicy .sitepolicy-item__heading {
		font-size: 16px;
		line-height: 26px;
	}

	/* ---- 勧誘方針 ---- */
	.page-policy-solicitation .solicitation-sections {
		gap: 32px;
	}
	.page-policy-solicitation .solicitation-lead,
	.page-policy-solicitation .solicitation-item__body {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-solicitation .solicitation-item__heading {
		font-size: 16px;
		line-height: 26px;
	}

	/* ---- 反社会的勢力に対する基本方針 ---- */
	.page-policy-antisocial .antisocial-sections {
		gap: 32px;
	}
	.page-policy-antisocial .antisocial-lead,
	.page-policy-antisocial .antisocial-item__body,
	.page-policy-antisocial .antisocial-appendix,
	.page-policy-antisocial .antisocial-closing {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-antisocial .antisocial-item__heading {
		font-size: 16px;
		line-height: 26px;
	}

	/* ---- リスク管理基本方針 ---- */
	.page-policy-risk .risk-sections {
		gap: 32px;
	}
	.page-policy-risk .risk-body {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-risk .risk-list {
		font-size: 16px;
		line-height: 26px;
	}

	/* ---- お客さま本位の業務運営に関する方針 ---- */
	.page-policy-customer .customer-sections {
		gap: 32px;
	}
	.page-policy-customer .customer-lead,
	.page-policy-customer .customer-item__body,
	.page-policy-customer .customer-note__body {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-customer .customer-item__heading {
		font-size: 16px;
		line-height: 26px;
	}
	.page-policy-customer .customer-relation__pdf-link {
		font-size: 15px;
	}
	.page-policy-customer .customer-table-wrap {
		overflow-x: auto;
	}

	/* ---- マネー・ローンダリング及びテロ資金供与防止のための基本方針 ---- */
	.page-policy-aml .aml-sections {
		gap: 32px;
	}
	.page-policy-aml .aml-lead,
	.page-policy-aml .aml-item__body {
		font-size: 15px;
		line-height: 26px;
	}
	.page-policy-aml .aml-item__heading {
		font-size: 16px;
		line-height: 26px;
	}
}
