/**
 * No.22 セクションレイアウト。
 *
 * - .section-feature  フィーチャー（fig-position はセクション）
 * - .section-repeat   リピート（fig-position は __item）
 * - .section-chart    フローチャート（fig-position は __item）
 *
 * modifier: --horizontal / --vertical
 *           --fig-first / --fig-last / --fig-center（フィーチャーのみセクションに付与）
 *           --fig-half / --fig-one-thirty / --fig-quarter
 * item: --fig-first / --fig-last / --fig-center
 *
 * __detail: __head（見出し） / __body（段落） / __foot（ボタン）
 * SP は画像が常にカラム幅 100%。vertical は gallery is-style-row と同じ横スクロール。
 *
 * ブレークポイントは theme.json tablet-small（max 767px）を直書き。
 */

:is(.section-feature, .section-repeat, .section-chart),
:is(.section-feature, .section-repeat, .section-chart) .wp-block-group,
:is(.section-feature, .section-repeat, .section-chart) .wp-block-image,
:is(.section-feature, .section-repeat, .section-chart) .wp-block-heading,
:is(.section-feature, .section-repeat, .section-chart) .wp-block-buttons,
:is(.section-feature__inner, .section-repeat__inner, .section-chart__inner),
:is(.section-feature__head, .section-repeat__head, .section-chart__head, .section-feature-detail__head, .section-repeat-detail__head, .section-chart-detail__head),
:is(.section-feature__body, .section-repeat__body, .section-chart__body, .section-feature-detail__body, .section-repeat-detail__body, .section-chart-detail__body),
:is(.section-feature__track, .section-repeat__track, .section-chart__track),
.wp-block-sumida-cc-section-track,
.wp-block-sumida-cc-section-item {
	box-sizing: border-box;
	margin-top: 0;
	margin-bottom: 0;
}

:is(.section-feature, .section-repeat, .section-chart) {
	--fig-col: 50%;
	width: 100%;
}

:is(.section-feature--fig-half, .section-repeat--fig-half, .section-chart--fig-half) {
	--fig-col: 50%;
}

:is(.section-feature--fig-one-thirty, .section-repeat--fig-one-thirty, .section-chart--fig-one-thirty) {
	--fig-col: 33.333%;
}

:is(.section-feature--fig-quarter, .section-repeat--fig-quarter, .section-chart--fig-quarter) {
	--fig-col: 25%;
}

:is(.section-feature__inner, .section-repeat__inner, .section-chart__inner),
:is(.section-feature, .section-repeat, .section-chart) :is(.section-feature__inner, .section-repeat__inner, .section-chart__inner).is-layout-flex {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
}

:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure),
:is(.section-feature__detail, .section-repeat__detail, .section-chart__detail) {
	min-width: 0;
}

:is(.section-feature--horizontal, .section-repeat--horizontal, .section-chart--horizontal)
	:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure).wp-block-group {
	width: auto;
}

:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure) .wp-block-image,
:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure) .wp-block-image img,
:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure) img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	margin: 0;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

:is(.section-feature__detail, .section-repeat__detail, .section-chart__detail) {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
}

:is(.section-feature__head, .section-repeat__head, .section-chart__head, .section-feature-detail__head, .section-repeat-detail__head, .section-chart-detail__head),
:is(.section-feature__body, .section-repeat__body, .section-chart__body, .section-feature-detail__body, .section-repeat-detail__body, .section-chart-detail__body) {
	width: 100%;
	min-width: 0;
}

:is(.section-feature__body, .section-repeat__body, .section-chart__body, .section-feature-detail__body, .section-repeat-detail__body, .section-chart-detail__body) {
	display: flex;
	flex-direction: column;
}

:is(.section-feature__title, .section-repeat__title, .section-chart__title),
:is(.section-feature__head, .section-repeat__head, .section-chart__head, .section-feature-detail__head, .section-repeat-detail__head, .section-chart-detail__head) .wp-block-heading {
	margin-top: 0;
	margin-bottom: 0;
}

:is(.section-feature__foot, .section-repeat__foot, .section-chart__foot, .section-feature-detail__foot, .section-repeat-detail__foot, .section-chart-detail__foot),
:is(.section-feature, .section-repeat, .section-chart) .wp-block-buttons:is(.section-feature__foot, .section-repeat__foot, .section-chart__foot, .section-feature-detail__foot, .section-repeat-detail__foot, .section-chart-detail__foot) {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	width: 100%;
}

:is(.section-feature__body, .section-repeat__body, .section-chart__body, .section-feature-detail__body, .section-repeat-detail__body, .section-chart-detail__body) > p,
:is(.section-feature__body, .section-repeat__body, .section-chart__body, .section-feature-detail__body, .section-repeat-detail__body, .section-chart-detail__body) > .wp-block-paragraph {
	margin: 0;
	line-height: var(--wp--custom--line-height--relax);
}

/* -------------------------------------------------------------------------
   fig-size（PC）。SP は後段で 100% 上書き。
   ------------------------------------------------------------------------- */

:is(.section-feature--fig-half, .section-repeat--fig-half, .section-chart--fig-half)
	:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure),
:is(.section-feature--fig-one-thirty, .section-repeat--fig-one-thirty, .section-chart--fig-one-thirty)
	:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure),
:is(.section-feature--fig-quarter, .section-repeat--fig-quarter, .section-chart--fig-quarter)
	:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure) {
	flex: 0 0 var(--fig-col);
	width: var(--fig-col);
	max-width: var(--fig-col);
}

/* -------------------------------------------------------------------------
   fig-position: last（フィーチャーはセクション、リピート／チャートは item）
   ------------------------------------------------------------------------- */

.section-feature--horizontal.section-feature--fig-last .section-feature__inner,
.section-repeat--horizontal .section-repeat__item--fig-last .section-repeat__inner,
.section-chart--horizontal .section-chart__item--fig-last .section-chart__inner {
	flex-direction: row-reverse;
}

/* -------------------------------------------------------------------------
   fig-position: center
   __head を __detail の外（__inner 直下）に出し、__figure + __detail を
   __body でラップして flex（align-items:center）で横並びにする。

   center の構造:
     __inner（縦積み）
       __head > __title
       __body（flex 横並び・上下中央）
         __figure
         __detail.section-*-detail（縦積み）
           *-detail__body > p
           *-detail__foot > button
   ------------------------------------------------------------------------- */

.section-feature--horizontal.section-feature--fig-center .section-feature__inner,
.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner,
.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner {
	flex-direction: column;
	align-items: stretch;
}

.section-feature--horizontal.section-feature--fig-center .section-feature__inner > .section-feature__body,
.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__body,
.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner > .section-chart__body {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
	padding-right: 0;
	padding-left: 0;
}

.section-feature--horizontal.section-feature--fig-center .section-feature__inner > .section-feature__body > .section-feature__figure,
.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__body > .section-repeat__figure,
.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner > .section-chart__body > .section-chart__figure {
	flex: 0 0 var(--fig-col);
	width: var(--fig-col);
	max-width: var(--fig-col);
}

.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner {
	gap: 0;
}

.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner {
	gap: 0;
}

.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__body,
.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner > .section-chart__body {
	gap: 0;
}

/* -------------------------------------------------------------------------
   section-feature（フィーチャー）
   ------------------------------------------------------------------------- */

.section-feature.section-feature--horizontal .section-feature__inner {
	gap: var(--wp--custom--organism--sm);
}

.section-feature.section-feature--horizontal.section-feature--fig-center .section-feature__inner {
	gap: var(--wp--custom--molecule--xl);
}

.section-feature--horizontal.section-feature--fig-center .section-feature__inner > .section-feature__body {
	gap: var(--wp--custom--organism--sm);
}

.section-feature .section-feature__detail {
	gap: var(--wp--custom--molecule--xl);
	padding-right: var(--wp--custom--molecule--rg);
	padding-left: var(--wp--custom--molecule--rg);
}

/* center の外側 __head（__detail 外）のみ。detail 内は __detail の padding に任せる */
.section-feature--fig-center .section-feature__inner > .section-feature__head {
	padding-right: var(--wp--custom--molecule--rg);
	padding-left: var(--wp--custom--molecule--rg);
}

.section-feature .section-feature-detail__body > p,
.section-feature .section-feature-detail__body > .wp-block-paragraph,
.section-feature .section-feature__body > p,
.section-feature .section-feature__body > .wp-block-paragraph {
	font-size: var(--wp--preset--font-size--text-lg);
}

/* -------------------------------------------------------------------------
   section-repeat / section-chart の item（カスタムブロック）
   ------------------------------------------------------------------------- */

.section-repeat--horizontal .section-repeat__item,
.section-chart--horizontal .section-chart__item,
.section-repeat--horizontal .wp-block-sumida-cc-section-item,
.section-chart--horizontal .wp-block-sumida-cc-section-item {
	width: 100%;
}

/* -------------------------------------------------------------------------
   section-repeat（リピート）
   ------------------------------------------------------------------------- */

.section-repeat.section-repeat--horizontal .section-repeat__track {
	display: flex;
	flex-direction: column;
	row-gap: 0;
	width: 100%;
}

.section-repeat--horizontal .section-repeat__track > .section-repeat__item {
	border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat--horizontal .section-repeat__track > .section-repeat__item:first-child {
	border-top: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__head {
	padding: var(--wp--custom--molecule--xs);
	border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat.section-repeat--horizontal .section-repeat__inner {
	align-items: stretch;
	gap: 0;
}

.section-repeat .section-repeat__figure {
	padding: var(--wp--custom--molecule--xs);
	border-right: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat .section-repeat__item--fig-last .section-repeat__figure {
	border-right: 0;
	border-left: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat .section-repeat__detail {
	gap: var(--wp--custom--molecule--rg);
}

.section-repeat--horizontal .section-repeat__detail {
	padding-right: var(--wp--custom--molecule--xs);
	padding-left: var(--wp--custom--molecule--xs);
}

.section-repeat .section-repeat-detail__body > p,
.section-repeat .section-repeat-detail__body > .wp-block-paragraph,
.section-repeat .section-repeat__body > p,
.section-repeat .section-repeat__body > .wp-block-paragraph {
	font-size: var(--wp--preset--font-size--text-md);
}

/* -------------------------------------------------------------------------
   section-chart（フローチャート）
   ------------------------------------------------------------------------- */

.section-chart.section-chart--horizontal .section-chart__track {
	display: flex;
	flex-direction: column;
	gap: var(--wp--custom--molecule--rg);
	width: 100%;
}

.section-chart.section-chart--horizontal .section-chart__inner {
	align-items: stretch;
	gap: 0;
	border-top: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
	border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-chart .section-chart__figure {
	position: relative;
	padding: var(--wp--custom--molecule--xs);
	border-right: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-chart .section-chart__item--fig-last .section-chart__figure {
	border-right: 0;
	border-left: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-chart .section-chart__detail {
	gap: var(--wp--custom--molecule--rg);
	padding: var(--wp--custom--atom--xxl);
}

.section-chart .section-chart__item--fig-center .section-chart__inner > .section-chart__head {
	padding-top: var(--wp--custom--atom--xxl);
	padding-bottom: var(--wp--custom--atom--xxl);
	padding-right: var(--wp--custom--molecule--xs);
	padding-left: var(--wp--custom--molecule--xs);
	border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-chart .section-chart__body > p,
.section-chart .section-chart__body > .wp-block-paragraph {
	padding-right: var(--wp--custom--molecule--rg);
	padding-left: var(--wp--custom--molecule--rg);
	font-size: var(--wp--preset--font-size--text-md);
}

.section-chart .section-chart__foot,
.section-chart .section-chart-detail__foot {
	padding-right: var(--wp--custom--molecule--rg);
	padding-left: var(--wp--custom--molecule--rg);
}

/* 接続矢印（最後の item 以外）。同じ横長三角を、horizontal は下向き、vertical は -90° で右向き。 */
.section-chart .section-chart__item:not(:last-child) {
	position: relative;
}

.section-chart.section-chart--horizontal .section-chart__item:not(:last-child)::after,
.section-chart.section-chart--vertical .section-chart__item:not(:last-child) .section-chart__inner::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 40px 0;
	border-color: var(--wp--preset--color--line-grey) transparent transparent;
}

.section-chart.section-chart--horizontal .section-chart__item:not(:last-child)::after {
	display: block;
	margin: var(--wp--custom--molecule--rg) auto 0;
}

.section-chart.section-chart--vertical .section-chart__figure {
	border-right: 0;
	border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-chart.section-chart--vertical {
	--chart-arrow-span: 80px;
	--chart-track-gap: var(--wp--custom--molecule--xxl);
	--item-line: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-chart.section-chart--vertical .section-chart__inner {
	position: relative;
}

.section-chart.section-chart--vertical .section-chart__item:not(:last-child) .section-chart__inner::after {
	position: absolute;
	top: 50%;
	/*
	 * 回転前の border-box は横 80px。right はこの右端を基準にするため、
	 * 幅を足して中心を gap 中央へ出す（値は必ず負＝__item の外側）。
	 */
	right: calc((var(--chart-track-gap) + var(--chart-arrow-span)) / -2);
	z-index: 1;
	transform: translateY(-50%) rotate(-90deg);
}

/* -------------------------------------------------------------------------
   layout=vertical
   feature / chart: 横一列＋ overflow-x（gallery is-style-row と同じ）
   repeat: wrap 折り返し（スクロールしない）
   ------------------------------------------------------------------------- */

:is(.section-feature--vertical, .section-chart--vertical)
	:is(.section-feature__track, .section-chart__track),
:is(.section-feature--vertical, .section-chart--vertical) > .is-layout-flex {
	container-type: inline-size;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: var(--wp--custom--molecule--md);
	margin: 0;
	padding: 0;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}

.section-chart--vertical .section-chart__track {
	container-type: normal;
	align-items: stretch;
	gap: var(--chart-track-gap);
}

:is(.section-feature--vertical, .section-chart--vertical)
	:is(.section-feature__track, .section-chart__track)::-webkit-scrollbar,
:is(.section-feature--vertical, .section-chart--vertical) > .is-layout-flex::-webkit-scrollbar {
	display: none;
}

.section-repeat--vertical .section-repeat__track {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0;
	margin: 0;
	padding: 0;
	overflow: visible;
}

:is(.section-feature--vertical, .section-repeat--vertical, .section-chart--vertical)
	:is(.section-feature__item, .section-repeat__item, .section-chart__item) {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	box-sizing: border-box;
}

:is(.section-feature--vertical, .section-repeat--vertical, .section-chart--vertical)
	:is(.section-feature__item, .section-repeat__item, .section-chart__item)
	:is(.section-feature__detail, .section-repeat__detail, .section-chart__detail) {
	box-sizing: border-box;
}

.section-feature--vertical .section-feature__item {
	flex: 0 0 auto;
	width: 22.5rem;
	max-width: none;
}

.section-chart--vertical .section-chart__item {
	flex: 0 0 22.5rem;
	width: 22.5rem;
	max-width: none;
	border-top: var(--item-line);
	border-bottom: var(--item-line);
	border-right: var(--item-line);
}

.section-chart .section-chart__item--fig-center .section-chart__detail .section-chart__body > p,
.section-chart .section-chart__item--fig-center .section-chart__detail .section-chart__body > .wp-block-paragraph,
.section-chart .section-chart__item--fig-center .section-chart__detail .section-chart__foot,
.section-chart .section-chart__item--fig-center .section-chart-detail__body > p,
.section-chart .section-chart__item--fig-center .section-chart-detail__body > .wp-block-paragraph,
.section-chart .section-chart__item--fig-center .section-chart-detail__foot {
	padding-right: 0;
	padding-left: 0;
}

.section-chart .section-chart__item--fig-first .section-chart__detail .section-chart__body > p,
.section-chart .section-chart__item--fig-first .section-chart__detail .section-chart__body > .wp-block-paragraph,
.section-chart .section-chart__item--fig-first .section-chart__detail .section-chart__foot,
.section-chart .section-chart__item--fig-last .section-chart__detail .section-chart__body > p,
.section-chart .section-chart__item--fig-last .section-chart__detail .section-chart__body > .wp-block-paragraph,
.section-chart .section-chart__item--fig-last .section-chart__detail .section-chart__foot {
	padding-right: 0;
}

.section-chart--vertical .section-chart__item:not(:first-child) {
	border-left: var(--item-line);
}

/* 横スクロール時のみ、最後の __item の右ボーダーを消す */
.section-chart--vertical .section-chart__track[data-state="overflow"] .section-chart__item:last-child {
	border-right: 0;
}

.section-repeat--vertical {
	--item-line: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat--vertical .section-repeat__detail {
	padding: var(--wp--custom--molecule--xs);
	gap: var(--wp--custom--atom--xxl);
}

.section-repeat--vertical .section-repeat__detail :is(.section-repeat__head, .section-repeat__body, .section-repeat__foot, .section-repeat-detail__head, .section-repeat-detail__body, .section-repeat-detail__foot) {
	padding-right: 0;
	padding-left: 0;
}

.section-repeat--vertical .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__head {
	padding: var(--wp--custom--molecule--xs);
	padding-bottom: 0;
}

.section-repeat--vertical .section-repeat__item {
	flex: 0 0 100%;
	width: 100%;
	max-width: 100%;
	border-right: 0;
	border-left: 0;
	border-bottom: var(--item-line);
}

.section-repeat--vertical .section-repeat__item:first-child {
	border-top: var(--item-line);
}

@media (min-width: 480px) {
	.section-repeat--vertical .section-repeat__item {
		flex: 0 0 50%;
		width: 50%;
		max-width: 50%;
		border-right: 0;
	}

	.section-repeat--vertical .section-repeat__item:nth-child(-n + 2) {
		border-top: var(--item-line);
	}

	.section-repeat--vertical .section-repeat__item:nth-child(odd) {
		border-right: var(--item-line);
	}
}

@media (min-width: 1024px) {
	.section-repeat--vertical .section-repeat__item {
		flex: 0 0 25%;
		width: 25%;
		max-width: 25%;
		border-right: 0;
	}

	.section-repeat--vertical .section-repeat__item:nth-child(-n + 4) {
		border-top: var(--item-line);
	}

	/* 列間の縦線。4列目（右端）と 4 の倍数の末尾はトラック右端なので付けない */
	.section-repeat--vertical .section-repeat__item:nth-child(4n + 1),
	.section-repeat--vertical .section-repeat__item:nth-child(4n + 2),
	.section-repeat--vertical .section-repeat__item:nth-child(4n + 3) {
		border-right: var(--item-line);
	}
}

:is(.section-feature--vertical, .section-repeat--vertical, .section-chart--vertical)
	:is(.section-feature__inner, .section-repeat__inner, .section-chart__inner) {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
}

.section-repeat--vertical .section-repeat__item--fig-last .section-repeat__inner,
.section-chart--vertical .section-chart__item--fig-last .section-chart__inner,
.section-feature--vertical.section-feature--fig-last .section-feature__inner {
	flex-direction: column-reverse;
}

:is(.section-feature--vertical, .section-repeat--vertical, .section-chart--vertical)
	:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure),
:is(.section-feature--vertical, .section-repeat--vertical, .section-chart--vertical)
	:is(.section-feature__detail, .section-repeat__detail, .section-chart__detail) {
	flex: 0 0 auto;
	width: 100%;
	max-width: 100%;
}

:is(.section-feature--vertical, .section-repeat--vertical, .section-chart--vertical)
	:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure) {
	border-right: 0;
	border-left: 0;
	border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat--vertical .section-repeat__item--fig-last .section-repeat__figure,
.section-chart--vertical .section-chart__item--fig-last .section-chart__figure,
.section-feature--vertical.section-feature--fig-last .section-feature__figure {
	border-bottom: 0;
	border-left: 0;
	border-top: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
}

.section-repeat--vertical .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__body,
.section-chart--vertical .section-chart__item--fig-center .section-chart__inner > .section-chart__body,
.section-feature--vertical.section-feature--fig-center .section-feature__inner > .section-feature__body {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	padding-right: 0;
	padding-left: 0;
}

.section-feature.section-feature--vertical .section-feature__figure,
.section-feature.section-feature--vertical .section-feature__detail {
	border: 0;
}

/* -------------------------------------------------------------------------
   SP: horizontal も縦積みで、画像が常に先（画像右もマークアップの順のまま）。
   画像は常に 100%。chart vertical は横スクロール維持。
   ------------------------------------------------------------------------- */

@media (max-width: 767px) {
	:is(.section-feature--horizontal, .section-repeat--horizontal, .section-chart--horizontal)
		:is(.section-feature__inner, .section-repeat__inner, .section-chart__inner) {
		flex-direction: column;
		align-items: stretch;
		gap: var(--wp--custom--molecule--rg);
	}

	/* PC の画像右（row-reverse）は上の共通ルールより詳細度が高いので、同じセレクタで column に戻す */
	.section-feature--horizontal.section-feature--fig-last .section-feature__inner,
	.section-repeat--horizontal .section-repeat__item--fig-last .section-repeat__inner,
	.section-chart--horizontal .section-chart__item--fig-last .section-chart__inner {
		flex-direction: column;
	}

	.section-feature--horizontal.section-feature--fig-center .section-feature__inner > .section-feature__body,
	.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__body,
	.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner > .section-chart__body {
		flex-direction: column;
		align-items: stretch;
	}

	.section-feature--horizontal.section-feature--fig-center .section-feature__inner > .section-feature__body > .section-feature__figure,
	.section-repeat--horizontal .section-repeat__item--fig-center .section-repeat__inner > .section-repeat__body > .section-repeat__figure,
	.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner > .section-chart__body > .section-chart__figure {
		flex: 0 0 auto;
		width: 100%;
		max-width: 100%;
	}

	:is(.section-feature--fig-half, .section-repeat--fig-half, .section-chart--fig-half)
		:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure),
	:is(.section-feature--fig-one-thirty, .section-repeat--fig-one-thirty, .section-chart--fig-one-thirty)
		:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure),
	:is(.section-feature--fig-quarter, .section-repeat--fig-quarter, .section-chart--fig-quarter)
		:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure),
	:is(.section-feature--horizontal, .section-repeat--horizontal, .section-chart--horizontal)
		:is(.section-feature__figure, .section-repeat__figure, .section-chart__figure) {
		flex: 0 0 auto;
		width: 100%;
		max-width: 100%;
	}

	.section-repeat .section-repeat__figure,
	.section-chart.section-chart--horizontal .section-chart__figure {
		padding: 0;
		border-right: 0;
		border-left: 0;
		border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
	}

	/* 画像右も SP は画像が上なので、画像左と同じ下の線。PC の fig-last の border-left を打ち消す */
	.section-repeat--horizontal .section-repeat__item--fig-last .section-repeat__figure,
	.section-chart.section-chart--horizontal .section-chart__item--fig-last .section-chart__figure {
		border-top: 0;
		border-left: 0;
		border-bottom: var(--wp--custom--border-width--thin) solid var(--wp--preset--color--line-grey);
	}

	.section-repeat--horizontal .section-repeat__detail {
		padding-block: var(--wp--custom--molecule--xs);
		padding-inline: var(--wp--custom--molecule--rg);
	}

	.section-repeat--horizontal .section-repeat__detail :is(.section-repeat__head, .section-repeat__body, .section-repeat__foot, .section-repeat-detail__head, .section-repeat-detail__body, .section-repeat-detail__foot) {
		padding-right: 0;
		padding-left: 0;
	}

	.section-chart--horizontal .section-chart__detail {
		padding-inline: var(--wp--custom--molecule--rg);
	}

	.section-chart--horizontal .section-chart__item--fig-center .section-chart__inner > .section-chart__head {
		padding-inline: var(--wp--custom--molecule--rg);
	}

	.section-chart--horizontal .section-chart__body > p,
	.section-chart--horizontal .section-chart__body > .wp-block-paragraph,
	.section-chart--horizontal .section-chart__foot {
		padding-right: 0;
		padding-left: 0;
	}

	.section-feature--horizontal .section-feature__detail {
		padding-right: var(--wp--custom--molecule--rg);
		padding-left: var(--wp--custom--molecule--rg);
	}

	.section-feature--horizontal.section-feature--fig-center .section-feature__inner > .section-feature__head {
		padding-right: var(--wp--custom--molecule--rg);
		padding-left: var(--wp--custom--molecule--rg);
	}

	.section-feature.section-feature--horizontal .section-feature__inner {
		gap: var(--wp--custom--molecule--rg);
	}

	.section-feature--vertical .section-feature__item {
		width: min(17rem, 85vw);
	}
}

.editor-styles-wrapper :is(.section-repeat__track, .section-chart__track) .block-list-appender {
	margin: 8px 0 0;
}
