.sp_off {
	display: none;
}

/* ----------------------------------------
recruit
/recruit/用cssのため消さないこと。
---------------------------------------- */
.recruit {
	width: 98%;
	text-align: left;
	line-height: 24px;
	margin: 20px auto;
	padding: 0px 0px 0px 0px;
}

.recruit h2 {
	width: 99%;
	font-size: 16px;
	line-height: 51px;
	margin: 0px auto 10px auto;
	padding: 0px 0px 0px 0px;
	text-indent: 15px;
	background: #F0F0F0;
	border-top: solid 5px #CCC;
	border-bottom: solid 1px #CCC;
	border-left: solid 3px #666;
	display: block;
	clear: both;
}

.recruit_tb {
	font-weight: bold;
	font-size: 18px;
}

.recruit1 img {
	max-width: 100%;
	height: auto;
}

.recruit2 p {
	margin: 0;
}

.recruit2 ul {
	margin: 20px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	overflow: hidden;
}

.recruit2 ul li {
	margin: 10px auto 0px auto;
	padding: 4px;
	border: solid 1px #CCC;
	float: left;
}

.recruit2 ul li img {
	max-width: 100%;
	height: auto;
}

.recruit3 {
	width: 100%;
	overflow: hidden;
	margin: 0px auto 10px auto;
	padding: 0px 0px 0px 0px;
	text-align: center;
}

.recruit3 img {
	max-width: 94%;
}

.recruit4 {
	width: 100%;
	float: left;
	margin: 0px auto 20px auto;
	padding: 0px;
}

.recruit4 p {
	margin: 0;
}

.recruit5 {
	line-height: 28px;
	margin: 0px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	overflow: hidden;
}

.recruit5 dt {
	width: 45%;
	display: block;
	clear: left;
	background: #EEE;
	margin: 10px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	text-align: center;
	font-weight: bold;
	line-height: 35px;
}

.recruit5 dd {
	display: block;
	margin: 5px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	line-height: 25px;
	width: 100%;
}

/* ----------------------------------------
recruit(サイドバーあり)
/recruit/用cssのため消さないこと。
---------------------------------------- */
.recruit_side {
	width: 98%;
	text-align: left;
	line-height: 24px;
	margin: 20px auto;
	padding: 0px 0px 0px 0px;
}

.recruit_side h2 {
	width: 99%;
	font-size: 16px;
	line-height: 51px;
	margin: 0px auto 10px auto;
	padding: 0px 0px 0px 0px;
	text-indent: 15px;
	background: #F0F0F0;
	border-top: solid 5px #CCC;
	border-bottom: solid 1px #CCC;
	border-left: solid 3px #666;
	display: block;
	clear: both;
}

.recruit_tb {
	font-weight: bold;
	font-size: 18px;
}

.recruit1_side img {
	max-width: 100%;
	height: auto;
}

.recruit2_side p {
	margin: 0;
}

.recruit2_side ul {
	margin: 20px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	overflow: hidden;
}

.recruit2_side ul li {
	margin: 10px auto 0px auto;
	padding: 4px;
	border: solid 1px #CCC;
	float: left;
}

.recruit2_side ul li img {
	max-width: 100%;
	height: auto;
}

.recruit3_side {
	width: 100%;
	overflow: hidden;
	margin: 0px auto 10px auto;
	padding: 0px 0px 0px 0px;
	text-align: center;
}

.recruit3_side img {
	max-width: 94%;
}

.recruit4_side {
	width: 100%;
	float: left;
	margin: 0px auto 20px auto;
	padding: 0px;
}

.recruit4_side p {
	margin: 0;
}

.recruit5_side {
	line-height: 28px;
	margin: 0px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	overflow: hidden;
}

.recruit5_side dt {
	width: 45%;
	display: block;
	clear: left;
	background: #EEE;
	margin: 10px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	text-align: center;
	font-weight: bold;
	line-height: 35px;
}

.recruit5_side dd {
	display: block;
	margin: 5px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	line-height: 25px;
	width: 100%;
}

/* ----------------------------------------
sitemap
/sitemap/用cssのため消さないこと。
---------------------------------------- */
.sitemap_ti h2 {
	width: 90%;
	font-size: 24px;
	margin: 30px auto;
	font-weight: 500;
	line-height: 1;
	font-weight: bold;
	text-align: left;
	border-bottom: none !important;
}

.sitemap_wrap {
	width: 90%;
	margin: 0 auto 60px;
	background: #f8f8f8;
	padding: 30px 5%;
	box-sizing: border-box;
}

.sitemap_inner {
	margin-bottom: 30px;
}

.sitemap_inner:last-child {
	margin-bottom: 0;
}

.sitemap_inner h3 {
	font-size: 22px;
	margin: 0 0 10px;
	font-weight: 500;
	line-height: 1.7;
}

.sitemap_inner ul {
	background: #fff;
	padding: 15px 5%;
}

.sitemap_inner ul li a {
	font-size: 14px;
	color: #333;
	line-height: 1.7;
	position: relative;
	padding-left: 20px;
	margin-bottom: 5px;
	display: block;
}

.sitemap_inner ul li a::before {
	content: "";
	width: 6px;
	height: 6px;
	border-top: 1px solid #042455;
	border-right: 1px solid #042455;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	left: 0;
	top: 8px;
}

.sitemap_group {
	padding-left: 10% !important;
}

.sitemap_group_ti {
	margin-left: -5%;
}

/* sitemap
---------------------------------------- */
/* ----------------------------------------
other（例）
---------------------------------------- */
.invest_wrap {
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 500;
	font-style: normal;
	color: #262f3d;
}

.inv_main {
	width: 100%;
	margin: 0 0 50px 0;
	padding: 25px 0 0px 0;
	position: relative;
	color: #000;

	&:before {
		content: "";
		display: block;
		width: 100%;
		height: 140px;
		background: #f1f4fa;
		clip-path: ellipse(50% 50% at 50% 50%);
		position: absolute;
		bottom: 35px;
		left: 0;
		z-index: -1;
	}

	&:after {
		content: "";
		display: block;
		width: 100%;
		height: calc(100% - 100px);
		background: #f1f4fa;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
	}

	>div {
		width: 90%;
		margin: 0 auto;
		position: relative;
		z-index: 1;

		.inv_main_fuki {
			width: 220px;
			margin: 0 0 15px 0;
		}

		>h2 {
			margin: 0 0 20px 0;
			font-size: clamp(30px, 7.8vw, 33px);
			line-height: 1;
			letter-spacing: 0.05em;

			>span {
				font-size: 36px;
				color: #eb3e2a;
			}
		}

		>p {
			font-size: clamp(13px, 3.6vw, 15px);
			line-height: 1.75;

			>span {
				color: #eb3e2a;
				font-weight: 600;
			}
		}

		.inv_main_il {
			width: 70%;
			margin: 0 0 0 30%;
		}
	}
}

.inv_title {
	margin: 0 0 20px 0;

	>div {
		.inv_tl_ja {
			display: flex;
			align-items: center;
			gap: 0 10px;
			margin: 0 0 5px 0;

			>img {
				width: 40px;
			}

			>h2 {
				margin: 0;
				padding-top: 2px;
				font-size: clamp(26px, 7.2vw, 30px);
				line-height: 1;
				letter-spacing: 0.05em;
			}
		}

		.inv_tl_en {
			display: inline-block;
			padding: 1px;
			background: linear-gradient(90deg, #f5432c, #d9201a);
			border-radius: 12px 12px 12px 3px;

			>p {
				display: inline-block;
				background-color: white;
				padding: 2px 10px 0px 10px;
				border-radius: 11px 11px 11px 2px;

				>span {
					background: linear-gradient(90deg, #f5432c, #d9201a);
					-webkit-background-clip: text;
					-webkit-text-fill-color: transparent;
					background-clip: text;
					color: transparent;
					font-weight: bold;
					font-size: clamp(11px, 3vw, 13px);
					line-height: 1.2;
				}
			}
		}
	}

	>img {
		display: none;
	}
}

.inv_txt {
	font-size: clamp(12px, 3.2vw, 13px);
	line-height: 1.75;
	letter-spacing: 0.05em;
	font-weight: 600;
}

.inv_intro_txt {
	margin: 0 0 20px 0;
}

#inv_ab {
	width: 90%;
	margin: 0 auto 70px auto;

	.inv_figure {
		>h3 {
			margin: 0;
			padding: 10px 10px;
			background: #505864;
			border-radius: 5px 5px 0 0;
			font-size: clamp(12px, 3.6vw, 15px);
			line-height: 1.65;
			color: #FFF;
			letter-spacing: 0.05em;
		}

		>div {
			padding: 20px 20px 20px 20px;
			background: #f1f4fa;
			border-radius: 0 0 5px 5px;

			.inv_txt {
				margin: 0 0 20px 0;
				text-align: center;
			}

			>ul {
				>li {
					padding: 15px 0;
					background: #FFF;
					border-radius: 10px;

					&:not(:last-child) {
						margin: 0 0 15px 0;
					}

					>h4 {
						margin: 0 0 15px 0;
						padding: 0 0 15px 0;
						font-size: clamp(18px, 4.8vw, 20px);
						line-height: 1.65;
						letter-spacing: 0.05em;
						text-align: center;
						border-bottom: 1px solid #bbbbbb;
					}

					>img {
						display: block;
						width: 90%;
						margin: 0 auto 20px auto;
					}

					>p {
						font-size: clamp(12px, 3.2vw, 13px);
						line-height: 1.2;
						font-weight: 600;
						text-align: center;
						letter-spacing: 0.05em;
					}
				}
			}
		}
	}
}

#inv_type {
	width: 90%;
	margin: 0 auto 70px auto;

	>ul {
		>li {
			padding: 20px;
			background: #f1f4fa;
			border-radius: 5px;

			&:not(:last-child) {
				margin: 0 0 20px 0;
			}

			.inv_type_name {
				margin: 0 0 20px 0;

				>h3 {
					display: inline-block;
					margin: 0 0 15px 0;
					padding: 5px 12px 4px 12px;
					background: #505864;
					border-radius: 5px;
					font-size: clamp(18px, 4.8vw, 20px);
					line-height: 1.65;
					color: #FFF;
					letter-spacing: 0.1em;
				}
			}

			.inv_type_box {
				>img {
					width: 400px;
					height: auto;
					aspect-ratio: 1 / 0.5;
					object-fit: cover;
					margin: 0 0 20px 0;
					border-radius: 5px;
				}

				>div {
					>ul {
						>li {
							padding: 0 0 20px 0;
							background: #FFF;
							border-radius: 10px;

							>h4 {
								margin: 0 0 20px 0;
								padding: 20px 0 15px 90px;
								border-bottom: 1px solid #b2bfd4;
								font-size: clamp(18px, 4.8vw, 20px);
								line-height: 1.2;
								letter-spacing: 0.05em;
								position: relative;

								&:before {
									content: "";
									display: block;
									width: 75px;
									height: 68px;
									background-position: center;
									background-repeat: no-repeat;
									position: absolute;
									bottom: 0;
									left: 10px;
								}
							}

							&:nth-child(1) {
								margin: 0 0 20px 0;

								>h4 {
									color: #eb3e2a;

									&:before {
										background-image: url(/img/investment/merit_img.webp);
									}
								}
							}

							&:nth-child(2) {
								>h4 {
									color: #505864;

									&:before {
										background-image: url(/img/investment/demerit_img.webp);
									}
								}
							}

							>p {
								padding: 0 20px;
								font-size: clamp(12px, 3.2vw, 13px);
								line-height: 1.5;
								letter-spacing: 0.05em;
							}
						}
					}
				}
			}
		}
	}
}

#inv_risk {
	padding: 30px 0 30px 0;
	background: #f1f4fa;

	>div {
		width: 90%;
		margin: 0 auto;

		.inv_risk_box {
			background: #FFF;
			padding: 10px 0 25px 0;
			box-shadow: 0px 0px 6px 0px rgba(101, 101, 101, 0.1);
			border-radius: 5px;

			&:not(:last-of-type) {
				margin: 0 0 25px 0;
			}

			.inv_risk_box_tl {
				display: flex;
				align-items: center;
				gap: 0 10px;
				margin: 0 0 20px 0;
				padding: 0 10px 5px 10px;
				border-bottom: 1px solid #bbbbbb;

				>img {
					width: 50px;
				}

				>h3 {
					margin: 0;
					padding: 2px 0 0 0;
					font-size: clamp(18px, 4.8vw, 20px);
					line-height: 1.2;
					letter-spacing: 0.05em;
				}
			}

			.inv_risk_box_inner {
				padding: 0 10px;

				>p.inv_risk_box_intro {
					margin: 0 10px 15px 10px;
					font-size: clamp(12px, 3.2vw, 13px);
					line-height: 1.5;
					letter-spacing: 0.05em;
				}

				>ul {
					counter-reset: item;

					>li {
						box-sizing: border-box;
						padding: 20px 15px 0 15px;
						position: relative;
						z-index: 1;

						&:before {
							counter-increment: item;
							content: "0" counter(item);
							font-size: 80px;
							line-height: 1;
							color: #f1f4fa;
							position: absolute;
							top: 25px;
							right: 15px;
							z-index: -1;
						}

						&:not(:last-child) {
							border-bottom: 1px solid #bbbbbb;
							padding-bottom: 20px;
						}

						>img {
							display: block;
							width: 169px;
							margin: 0 auto 10px auto;
						}

						.inv_risk_name {
							margin: 0 0 15px 0;
							font-size: 22px;
							line-height: 30px;
							color: #eb3e2a;
							letter-spacing: 0.05em;
							text-align: center;
						}

						.inv_risk_txt {
							height: calc(100% - 172px);
							box-sizing: border-box;
							padding: 20px;
							background: #f1f4fa;
							font-size: 13px;
							line-height: 18px;
							letter-spacing: 0.05em;
						}
					}
				}

				.inv_risk_box_caution {
					margin: 15px 15px 0 15px;
					padding: 15px;
					background: #f0f2f6;
					border-radius: 5px;
					font-size: 10px;
					line-height: 16px;
				}
			}
		}
	}
}

/* sale(売却)
---------------------------------------- */

.sale_wrap {
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 500;
	font-style: normal;
	margin-bottom: -90px;
}

/*--main--*/

.s_main_wrap {
	width: 100%;
	height: 280px;
	background: url(../sale/img/sale_main_bg.webp) no-repeat;
	display: grid;
	place-content: center;
	background-size: cover;
}

.s_main_inner {
	margin: 0 auto;

	& h2 {
		font-size: 24px;
		line-height: 1.8;
		color: #fff;
		text-shadow: 0px 0px 12px rgba(0, 0, 0, 0.2);
		margin: 0;
		letter-spacing: 1.5px;
	}

	& p {
		font-size: 13px;
		color: #fff;
		line-height: 1.8;
		margin-top: 20px;
		letter-spacing: 1.5px;
		text-shadow: 0px 0px 12px rgba(0, 0, 0, 0.2);
	}

}

/*--/main--*/

/*--sale_result--*/

.s_result_wrap {
	padding: 40px 0 0px;
	background-color: #fafbff;
}

.s_result_inner {
	margin: 0 0 0 auto;
	width: 90%;
}

.s_con_tl {
	display: flex;
	align-items: flex-end;
	gap: 0px 30px;
	width: 1200px;
	margin: 0 auto;
}

.s_con_tl_r {
	display: flex;
	align-items: center;
	gap: 0px 20px;
}

.s_con_tl_en {
	display: flex;
	align-items: center;
}

.s_con_tl_r img {
	width: 40px;
	height: 100% !important;
	object-fit: cover;
}

.s_con_tl_r p {
	font-size: 24px;
	line-height: 40px;
	color: #000000;
}

.s_gradient-border {
	display: inline-block;
	padding: 1px;
	background: linear-gradient(90deg, #f5432c, #d9201a);
	border-radius: 12px 12px 12px 3px;

	& .label {
		display: inline-block;
		background-color: white;
		padding: 3px 14px;
		border-radius: 11px 11px 11px 2px;
		margin: 0 auto;

		& span {
			background: linear-gradient(90deg, #f5432c, #d9201a);
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
			background-clip: text;
			color: transparent;
			font-weight: bold;
			font-size: 13px;
			line-height: 13px;
		}
	}
}

.s_result_iframe {
	margin-top: 10px;

	& iframe {
		width: 100%;
		height: 370px;
	}
}

.s_result_box {
	display: flex;
	overflow-x: scroll;
	padding: 10px;
}

.s_result_items {
	list-style: none;
}

.s_result_items:not(:last-child) {
	margin-right: 25px;
}

.s_result_items a {
	background-color: #fff;
	padding: 20px 15px;
	border-radius: 10px;
	text-decoration: none;
	display: block;
	width: 240px;
	box-sizing: border-box;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);

	& .img {
		border-radius: 3px;
		height: 140px;
		overflow: hidden;

		& img {
			object-fit: cover;
			width: 100%;
			height: 100% !important;
		}
	}

	& .tl {
		font-size: 16px;
		font-weight: 500;
		margin: 20px 0 15px;
		color: #000;
		overflow: hidden;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 1;
	}

	& .txt {
		padding: 10px 15px;
		box-sizing: border-box;
		border-radius: 3px;
		background-color: #f1f4fb;

		& span {
			overflow: hidden;
			display: -webkit-box;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 2;
			font-size: 13px;
			color: #515863;
		}
	}

}

/*--/sale_result--*/

/*--s_nayami--*/
.s_nayami_wrap {
	margin-top: 70px;
}

.s_nayami_inner {
	width: 90%;
	margin: 0 auto;

	& h2 {
		margin: 0;
		font-size: 32px;
		text-align: center;

		& span {
			-webkit-text-fill-color: transparent;
			color: transparent;
			background: linear-gradient(90deg, rgb(245, 67, 44), rgb(217, 32, 26)) text;
		}
	}
}

.s_nayami_box {
	width: 100%;
	height: 520px;
	position: relative;
	margin: 60px auto 0;

	&::after {
		background: url(../sale/img/sale_nayami_ca.webp) no-repeat;
		position: absolute;
		content: "";
		right: 0;
		left: 0;
		bottom: -1px;
		width: 360px;
		height: 190px;
		margin: 0 auto;
		background-size: contain;
	}

	& p {
		width: 160px;
		height: 90px;
		display: grid;
		place-content: center;
		background-color: #fff;
		font-size: 13px;
		font-weight: 500;
		text-align: center;
		position: absolute;
		box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
		line-height: 1.5;
	}

	& .left01 {
		left: 0;
		bottom: 220px;
		border-radius: 11px 11px 2px 11px;
	}

	& .left02 {
		left: 0px;
		bottom: 340px;
		border-radius: 11px 11px 2px 11px;
	}

	& .center {
		top: -30px;
		left: 0;
		right: 0;
		margin: 0 auto;
		border-radius: 11px 11px 11px 11px;
	}

	& .right01 {
		right: 0;
		bottom: 220px;
		border-radius: 11px 11px 11px 2px;
	}

	& .right02 {
		right: 0px;
		bottom: 340px;
		border-radius: 11px 11px 11px 2px;
	}

}

/*--/s_nayami--*/

/*--s_inq--*/
.s_inq_wrap {
	background-color: #515863;
}

.s_inq_inner {
	width: 90%;
	margin: 0 auto;
	padding: 50px 0;

	& h2 {
		color: #fff;
		font-size: 24px;
		text-align: center;
		margin: 0;
	}
}

.s_inq_box {
	display: flex;
	margin-top: 40px;
	gap: 20px;
	justify-content: center;
	flex-wrap: wrap;

	& li a {
		width: 300px;
		line-height: 60px;
		border-radius: 35px;
		border: 1px solid #515964;
		font-size: 16px;
		text-align: center;
		display: block;
		color: #262f3d;
		font-weight: 600;
		box-sizing: border-box;
		position: relative;
		background-color: #ffffff;
		text-decoration: none;

		&::before {
			content: "";
			position: absolute;
			top: 0;
			bottom: 0px;
			margin: auto;
			left: 30px;
			width: 9px;
			height: 9px;
			border-radius: 50%;
			background: radial-gradient(farthest-corner, #d9201a, #f5432c);
			transition: all 0.2s;
		}

		&::after {
			content: "";
			position: absolute;
			background-repeat: no-repeat;
			background-size: contain;
			top: 0;
			bottom: 0px;
			margin: auto;
			right: 20px;
			width: 14px;
			height: 11px;
			background-image: url(../sale/img/ser_btn_arrow.webp);
			transition: all 0.2s;
		}

	}

	& li:last-child a {
		background-color: #06c755;
		color: #fff;

		&::before {
			background: #fff;
		}

		&::after {
			background-image: url(../sale/img/ser_btn_arrow_h.webp);
		}

	}

}

/*--/s_inq--*/

/*--s_strong--*/
.s_strong_wrap {
	background-color: #fafbff;
	padding: 50px 0;
}

.s_strong_inner {
	width: 90%;
	margin: 0 auto;
}

.s_strong_box {
	background-color: #fff;
	box-sizing: border-box;
	padding: 50px 30px 60px;
	display: flex;
	margin-top: 30px;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 80px;

	& li {
		width: 100%;
		position: relative;

		&:nth-child(1)::before {
			content: "";
			background: url(../sale/img/sale_str_bg01.webp)no-repeat;
			width: 87px;
			height: 55px;
			display: block;
			position: absolute;
			top: 0;
			right: 0;
		}

		&:nth-child(2)::before {
			content: "";
			background: url(../sale/img/sale_str_bg02.webp)no-repeat;
			width: 87px;
			height: 55px;
			display: block;
			position: absolute;
			top: 0;
			right: 0;
		}

		&:nth-child(3)::before {
			content: "";
			background: url(../sale/img/sale_str_bg03.webp)no-repeat;
			width: 87px;
			height: 55px;
			display: block;
			position: absolute;
			top: 0;
			right: 0;
		}

		&:nth-child(1)::after {
			bottom: -40px;
			content: "";
			width: 100%;
			height: 1px;
			background-color: #ccc;
			position: absolute;
			right: 0px;
			left: 0px;
		}

		&:nth-child(2)::after {
			bottom: -40px;
			content: "";
			width: 100%;
			height: 1px;
			background-color: #ccc;
			position: absolute;
			right: 0px;
			left: 0px;
		}

	}
}

.s_strong_img {
	width: 79px;
	height: 76px;
	margin: 35px auto 0;
}

.s_strong_txt01 {
	font-size: 20px;
	display: block;
	margin: 30px 0 20px;
	-webkit-text-fill-color: transparent;
	color: transparent;
	background: linear-gradient(90deg, rgb(245, 67, 44), rgb(217, 32, 26)) text;
	text-align: center;
	line-height: 1;
	font-weight: bold;
}

.s_strong_txt02 {
	box-sizing: border-box;
	background-color: #f1f4fb;
	border-radius: 10px;
	padding: 19px 10px;
	font-size: 13px;
	color: #515863;
	height: 110px;
}

/*--/s_strong--*/

/*--s_flow--*/
.s_bg {
	background-color: #f1f4fb;
	padding: 50px 0;
}

.s_flow_wrap {
	margin-bottom: 120px;
	position: relative;

	&::after {
		background: url(../sale/img/sale_flow_bg.webp) no-repeat;
		width: 260px;
		height: 220px;
		position: absolute;
		bottom: -120px;
		left: 0;
		content: "";
		display: block;
		background-size: contain;
	}
}

.s_flow_inner {
	width: 90%;
	margin: 0 auto;
}

.s_flow_box {
	display: flex;
	flex-wrap: wrap;
	width: 90%;
	margin: 30px auto 0;
	gap: 40px;
	position: relative;

	& li {
		width: 100%;
		border-radius: 11px;
		background-color: #fff;
		box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
		box-sizing: border-box;
		padding: 36px 30px 32px;
		z-index: 2;

		& .flex {
			display: flex;
			gap: 30px;
			margin-bottom: 17px;
			align-items: center;

			& .count {
				display: grid;
				place-content: center;
				width: 40px;
				height: 40px;
				color: #fff;
				background-color: #515863;
				border-radius: 3px;
				font-size: 18px;
				font-weight: bold;
			}

			& .tl {
				font-size: 22px;
				color: #515863;
				font-weight: bold;
				line-height: 1;
			}

		}

		& .txt {
			font-size: 13px;
			line-height: 1.6;
		}

	}

	&::after {
		background: url(../sale/img/sale_flow_arrow_sp.webp)no-repeat;
		width: 1px;
		height: 2200px;
		position: absolute;
		left: 0;
		right: 0;
		content: "";
		margin: 0 auto;
		z-index: 1;
		top: 110px;
	}

}

/*--/s_flow--*/

/*--/s_qa--*/

.s_qa_inner {
	width: 90%;
	margin: 0 auto;
}

.s_qa_box {
	background-color: #fff;
	padding: 30px 30px 50px;
	box-sizing: border-box;
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
	margin-top: 30px;

	& li:not(:last-child) {

		margin-bottom: 44px;
		border-bottom: 1px solid #ccc;

		& .flex {
			display: flex;
			align-items: flex-start;
			margin-bottom: 27px;
			justify-content: space-between;

			& .icon {
				width: 10%;

				& img {
					width: 100%;
				}
			}

			& p {
				color: #515863;
				font-weight: bold;
				font-size: 13px;
				line-height: 1.8;
				width: 80%;
			}
		}
	}

	& li:last-child {
		& .flex {
			display: flex;
			align-items: flex-start;
			margin-bottom: 27px;
			justify-content: space-between;

			& .icon {
				width: 10%;

				& img {
					width: 100%;
				}
			}

			& p {
				color: #515863;
				font-weight: bold;
				font-size: 13px;
				line-height: 1.8;
				width: 80%;
			}
		}
	}

}

/*--/s_qa--*/

/*--/s_fix--*/

.s_fix {
	width: 100%;
	height: 9vh;
	position: fixed;
	background-color: rgb(0 0 0 / 50%);
	bottom: 60px;
	z-index: 100;
	display: grid;
	place-content: center;

	& ul {
		display: flex;
		align-items: center;
		justify-content: center;

		& li a {
			width: 260px;
			line-height: 50px;
			border-radius: 35px;
			border: 1px solid #515964;
			font-size: 16px;
			text-align: center;
			display: block;
			color: #262f3d;
			font-weight: 600;
			box-sizing: border-box;
			position: relative;
			background-color: #ffffff;
			text-decoration: none;

			&::before {
				content: "";
				position: absolute;
				top: 0;
				bottom: 0px;
				margin: auto;
				left: 30px;
				width: 9px;
				height: 9px;
				border-radius: 50%;
				background: radial-gradient(farthest-corner, #d9201a, #f5432c);
				transition: all 0.2s;
			}

			&::after {
				content: "";
				position: absolute;
				background-repeat: no-repeat;
				background-size: contain;
				top: 0;
				bottom: 0px;
				margin: auto;
				right: 20px;
				width: 14px;
				height: 11px;
				background-image: url(../sale/img/ser_btn_arrow.webp);
				transition: all 0.2s;
			}

		}

		& li:last-child a {
			background-color: #06c755;
			color: #fff;

			&::before {
				background: #fff;
			}

			&::after {
				background-image: url(../sale/img/ser_btn_arrow_h.webp);
			}

		}
	}
}



/*--/s_fix-*/

/* other（例）
---------------------------------------- */