@charset "utf-8";

/* css Document
*****************************************************************/
@import "../../n_common/css/_variable.css";

.flow-outer{
	font-family: var(--font_min);
	padding: 100px 0 72px;
	@media (width < 810px) {
		padding: 40px 0 32px;
	}
}
.kanta-wrap{
	max-width: 1340px;
}
.flow-ttl{
	display: flex;
	align-items: center;
	gap: 18px;
	font-size: clamp(22px, -0.557px + 2.785vw, 44px);/*44~22(1600~810)*/
	font-weight: 500;
	line-height: 1.4;
	margin-bottom: 36px;
	@media (width < 810px) {
		gap: 12px;
		margin-bottom: 16px;
	}
}
.flow-ttl__step{
	flex-shrink: 0;
	width: 2.55em;/*112/44*/
}
.flow-ttl__jp{
	word-break: keep-all;
	text-align: left;
}
.flow-item{
	display: flex;
	flex-direction: row-reverse;
	gap: 32px;
	padding-top: 98px;
	margin-top: 64px;
	border-top: 2px solid #90D3EC;
	position: relative;
	@media (width < 810px) {
		flex-direction: column;
		align-items: center;
		gap: 24px;
		padding-top: 48px;
		margin-top: 40px;
	}
	&::before{
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 74px solid transparent;
		border-left: 74px solid transparent;
		border-top: 28px solid #90D3EC;
		border-bottom: 0;
		position: absolute;
		top: 0;
		left: 50%;
		translate: -50% 0;
		@media (width < 810px) {
			border-right: 55px solid transparent;
			border-left: 55px solid transparent;
			border-top: 21px solid #90D3EC;
		}
	}
	&:first-of-type{
		padding-top: 0;
		margin-top: 0;
		border-top: none;
		&::before{
			content: none;
		} 
	}
}
.flow-contents{
	flex-grow: 1;
	@media (width < 810px) {
		width: 100%;
	}
}
.flow-txt{
	text-align: left;
	font-size: clamp(16px, 9.848px + 0.759vw, 22px);/*22~16(1600~810)*/
	font-weight: 400;
	line-height: 1.8;
	&.--indent{
		padding-left: 1em;
		text-indent: -1em;
	}
}
.flow-img{
	flex-shrink: 0;
	width: 53.75%;/*860/1600*/
	@media (width < 810px) {
		width: 100%;
		max-width: 600px;
	}
	img{
		width: 100%;
		max-width: none;
	}
	figure{
		position: relative;
		figcaption{
			font-size: clamp(14px, 7.848px + 0.759vw, 20px);/*20~14(1600~810)*/
			font-weight: 500;
			position: absolute;
			right: 10px;
			bottom: 10px;
			@media (width < 810px) {
				right: 5px;
				bottom: 5px;
			}
		}
	}
}

.flow-detail{
	text-align: left;
	padding: 16px 20px;
	background: color-mix(in srgb, #fff 80%, #90D3EC 20%);
	margin-top: 32px;
	@media (width < 810px) {
		padding: 12px 16px;
		margin-top: 24px;
	}
}
.flow-detail__ttl{
	font-size: clamp(16px, 9.848px + 0.759vw, 22px);/*22~16(1600~810)*/
	font-weight: 500;
}
.flow-detail__list{
	font-size: clamp(15px, 9.873px + 0.633vw, 20px);/*20~15(1600~810)*/
	font-weight: 500;
	line-height: 1.75;
	margin-top: 4px;
	>li{
		padding-left: 1em;
		position: relative;
		&::before{
			content: "・";
			position: absolute;
			top: 0;
			left: 0;
		}
	}
}

