/* フロー04：横スクロール（幅1140px・4以降がつながって見える・スクロールバー非表示） */
.section__wrapper--flow--04 {
	overflow-x: hidden;
}

.section__wrapper--flow--04 .section__inner {
	width: 100%;
	max-width: 1140px;
}

/* ブロックを100vwに広げてつながって見せつつ、見える幅は中央1140px（paddingで調整） */
.section__wrapper--flow--04 .content__block--flow--04 {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	width: 100vw;
	max-width: 100vw;
	padding-left: max(0px, calc(50vw - 570px));
	padding-right: max(0px, calc(50vw - 570px));
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
	scroll-behavior: smooth;
	touch-action: pan-x;
}

/* スクロールバーは常に非表示 */
.section__wrapper--flow--04 .content__block--flow--04::-webkit-scrollbar {
	display: none;
}

/* リスト上でドラッグで横スクロール */
.section__wrapper--flow--04 .content__block--flow--04 {
	cursor: grab;
}
.section__wrapper--flow--04 .content__block--flow--04.is-dragging {
	cursor: grabbing;
	user-select: none;
}
.section__wrapper--flow--04 .content__block--flow--04 .simplebar-track {
	cursor: pointer;
}

.content__block--flow--04 .content__list--vertical {
	display: flex;
	flex-wrap: nowrap;
	gap: 28px;
	padding-bottom: 47px;
	padding-right: 70px;
	width: max-content;
}

.content__block--flow--04 .content__list--vertical:has(> .content__items--flow--04:nth-child(5)) .content__items--flow--04 {
	flex: 0 0 auto;
	scroll-snap-align: start;
}

	.content__items--flow--04{
		width: 264px;
		padding-top: 70px;
	}
	.content__list--vertical .content__items--flow--04::before{
		display: block;
		width: 60px;
		font-size: 26px;
		text-align: center;
		margin: 0 auto;
		line-height: 1.5;
		padding: 9px 0 10px;
		border: 1px solid var(--page-main-color);
		border-radius: 50%;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		background: #fff;
	}
	.content__items--flow--04::after{
		content: '';
		display: block;
		width: calc(100% - 30px);
		height: 1px;
		background: var(--page-sub-color);
		position: absolute;
		top: 30px;
		right: -132px;
	}
	.content__items--flow--04:last-of-type::after{
		content: inherit;
	}
		.content__items__inner--flow--04{
			padding: 30px 25px 25px;
			background: #FBEDE1;
		}

				.content__subttl--flow--04{
					color: var(--page-main-color);
					padding: 0 6px;
				}
				.content__subttl--flow--04::after{
					content: '';
					display: block;
					width: 30px;
					height: 1px;
					background: var(--page-main-color);
					margin: 10px auto 12px;
				}