#t0{
	background-image: url('../../members/image/img_members_fv_pc.webp');
	background-position: center;
	/*height: clamp( 450px, 50vw, 640px );*/
	height: 450px;
	
	@media screen and (max-width: 768px) {
	  height: 100vw;
	  background-image: url('../../members/image/img_members_fv_sp.webp');
	}
}

#t0_members{
	position: absolute;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	text-align: left;
	left: 10%;
}
#t0_members h1{
	font-family: "Shippori Mincho", sans-serif;
	font-size: 40px;
	font-weight: 600;
	color: #197B3E;
	margin-bottom: 1em;
	
	@media screen and (max-width: 768px) {
	  font-size: 30px;
	}
}

#t0 #t0_members p{
	font-family: "Noto Sans JP", sans-serif;
	position: static;
	font-size: 18px;
	color: #595757;
	text-shadow: none;
	
	@media screen and (max-width: 768px) {
	  font-size: 16px;
	  line-height: 1.8;
	  padding:0 5px 20vw;
	}
}

.content_wrap #features{
	padding: 112px 0 64px;
	
	@media screen and (max-width: 768px) {
		padding-block: 6vw 8vw;
	}
}





.members_hd{
	font-family: "Shippori Mincho", sans-serif;
	font-size: 32px;
	font-weight: 600;
	color: #595757;
	text-align: center;
	letter-spacing: 0.08em;
	line-height: 1.5;
	position: relative;
	padding-bottom: 32px;
	padding-left: 2.5em;
	width: fit-content;
	margin-inline: auto;
	
	@media screen and (max-width: 768px) {
		padding-left: 0;
		padding-top: 2.5em;
		font-size: 6vw;
	}
}
.members_hd br{
	display: none;
	
	@media screen and (max-width: 768px) {
		display: inline;
	}
}
.members_hd::before,
.members_hd::after{
	content: '';
	position: absolute;
	display: block;
	margin: auto;
}
.members_hd::before{
	width: 2em;
	height: 1.75em;
	top: 0; left: 0;
	background-position: left center;
	background-size: contain;
	background-repeat: no-repeat;
	margin-bottom: 32px;
	
	@media screen and (max-width: 768px) {
		inset: 0 0 auto;
		margin-bottom: 20px;
	}
}
.members_hd::after{
	inset: auto 0 0;
	width: 50px;
	height: 3px;
	background: #197B3E;
}

#features .container{
	max-width: 720px;
	margin-inline: auto;
}

#features .members_hd::before{
	background-image: url('../../members/image/members_icon1.svg');
}

.features-list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
	margin-top: 40px;
	padding-bottom: 20px;
	
	@media screen and (max-width: 768px) {
		margin-top: 7vw;
		grid-template-columns: 1fr;
	}
}

.features-list li{
	background: #F7F7F7;
	padding: 0.5rem;
	border-radius: 5px;
}
.features-list h3{
	background: #5FB690;
	height: 3em;
	padding: 0.5em;
	border-radius: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	color: #fff;
}
.features-list p{
	font-size: 15px;
	padding: 0.5em;
}

.features-footer{
	border: solid 2px #F56E78;
	border-radius: 5px;
	padding: 22px;
	margin-top: 40px;
	position: relative;
	
	
	
}
.features-footer p{
	font-size: 22px;
	line-height: 1.4;
	text-align: center;
	color: #F56E78;
	padding-top: 0.5em;
}

@media screen and (max-width: 768px) {
	.features-footer p{
		font-size: 18px;
	}
	.features-footer p br{
		display: none;
	}
}


.features-footer h4{
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.3em;
	text-indent: 0.3em;
	color: #fff;
	
	position: absolute;
	inset: -0.8em 0 auto;
	margin: auto;
	width: 3em;
	line-height: 1.6;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
}
.features-footer h4::before,
.features-footer h4::after{
	content: '';
	position: absolute;
	margin: auto;
	display: block;
	width: 1.6em; height: 1.6em;
	border-radius:5rem;
	background: #F56E78;
	top: 0; bottom: 0;
	z-index: -1;
}
.features-footer h4::before{
	left: 0;
}
.features-footer h4::after{
	right: 0;
}

.content_wrap #merit{
	background: url('../../plan/image/bg_breakdown.webp');
	padding-bottom: 64px;
	
	@media screen and (max-width: 768px) {
		padding-block: 6vw 8vw;
	}
}

#merit .container{
	max-width: 720px;
	margin-inline: auto;
}

#merit .members_hd::before{
	background-image: url('../../members/image/members_icon2.svg');
}
.merit_lead{
	margin-block: 2em;
	font-size: 18px;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.merit_lead br{
		display: none;
	}
}

.merit_list_hd{
	background: #197B3E;
	color: #fff;
	font-size: 26px;
	font-weight: 600;
	text-align: center;
	border-radius: 10px 10px 0 0;
	padding: 0.5em;
	margin-bottom: 10px;
}
.merit_list_wrap{
	background: #fff;
	border-radius: 10px;
	padding: 30px;
	box-shadow: 4px 4px 0 rgba(0,0,0,0.1);
}
.merit_detail{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
	margin-bottom: 20px;
}
.merit_detail > dl{
	background: #eee;
	border-radius: 5px;
	padding: 8px;
	position: relative;
}
.merit_detail dt{
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	letter-spacing: 4%;
}
.merit_detail dt img{
	display: block;
	margin: 20px auto;
	width: 40px; height: auto;
}
.merit_detail dt span{
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px; height: 30px;
	top: 5px; left: 5px;
	background: #197B3E;
	color: #fff;
	border-radius: 5px;
	font-size: 16px;
}

.merit_detail dd{
	margin-top: 50px;
	background: #F56E78;
	border-radius: 5px;
	padding: 10px;
	margin: 5px;
}
.merit_detail dd h4{
	background: #fff;
	border-radius: 5px;
	text-align: center;
	font-size: 16px;
	padding-block: 5px;
}
.merit_detail dd p{
	font-size: 26px;
	color: #FFFF00;
	text-align: center;
	font-weight: 700;
}
.merit_detail dd span{
	font-size: 75%;
}

@media screen and (max-width: 768px) {
	.merit_detail{
		grid-template-columns:1fr;
	}
	.merit_list_wrap{
		padding: 15px;
	}
}


.merit_list_caption{
	font-size: 15px;
}

.content_wrap #flow{
	padding: 112px 0 64px;
	
	@media screen and (max-width: 768px) {
		padding-block: 6vw 8vw;
	}
}
#flow .container{
	max-width: 720px;
	margin-inline: auto;
}
#flow .members_hd::before{
	background-image: url('../../members/image/members_icon3.svg');
}

.flow_list{
	margin-top: 40px;
}
.flow_list li{
	position: relative;
	border: solid 2px #5FB690;
	border-radius: 5px;
}
.flow_list li + li{
	margin-top: 80px;
}
.flow_list li:not(:last-child)::after{
	content: '';
	display: block;
	position: absolute;
	inset: auto 0 -50px;
	margin: auto;
	width: 20px; height: 20px;
	background: url('../../members/image/members_arw3.svg') center bottom / contain no-repeat;
	
	
}
.flow_list_num{
	position: absolute;
	left: 20px; top: -20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background:#5FB690;
	border-radius: 5px;
	color: #fff;
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 45px;
	line-height: 1.2;
	padding: 6px 10px;
	
	@media screen and (max-width: 768px) {
		position: relative;
		top: 0; bottom: 0; left: 0; right: auto;
		display: block;
		border-radius: 0;
		font-size: 25px;
	}
}
.flow_list_num span{
	font-size: 22px;
	
	@media screen and (max-width: 768px) {
		font-size: 25px;
		
		&::after{
			content: ' ';
		}
	}
}
.flow_list li h3{
	background: #EBF0E6;
	padding-block: 0.5em;
	font-size: 26px;
	font-family: "Shippori Mincho", sans-serif;
	font-weight: 600;
	text-align: center;
	color: #197B3E;
	
	@media screen and (max-width: 768px) {
		font-size: 20px;
		flex: 2;
	}
}
.flow_list_body{
	max-width: 500px;
	margin-inline: auto;
	padding-block: 1em;
	font-size: 16px;
	
	@media screen and (max-width: 768px) {
		flex-basis: 100%;
		padding: 20px;
	}
}

.members_btn{
	position: relative;
	display: block;
	border: solid 2px #197B3E;
	border-radius: 5px;
	background: linear-gradient(to bottom, #7FCCA4, #197B3E);
	color: #fff;
	text-align: center;
	padding-block: 10px;
	text-decoration: none;
	font-size: 19px;
	font-weight: bold;
	margin-top: 20px;
}
.members_btn::after{
	content: '';
	display: block;
	position: absolute;
	inset: 0 20px 0 auto;
	margin: auto;
	width: 20px; height: 20px;
	background: url('../../members/image/members_arw2.svg') center bottom / contain no-repeat;
}
.members_btn:hover{
	opacity: 0.8;
}

.breakdown_cta img{
	max-width: 100%;
}