/*------------------------------------------------------------
	welfare
------------------------------------------------------------*/
#main .headLine04 {
	margin: 0 auto;
	font-size: 2rem;
	text-align: center;
	letter-spacing: 0;
}
/* evaluation */
#main .evaluation {
	padding: 8rem 0 10rem;
	border-radius: 20rem 0 0 0;
	background: linear-gradient(96deg, rgba(248, 226, 160, 0.20) 0%, rgba(241, 218, 147, 0.20) 100%);
}
#main .evaluation .textList {
	margin-top: 5.2rem;
	padding: 8rem 7.9rem 7.1rem;
	border-radius: 10rem 0;
	background: #FFF;
	gap: 9.09rem;
}
#main .evaluation .ttlBox {
	display: flex;
	align-items: center;
	justify-content: center;
}
#main .evaluation .textList li {
	width: calc((100% - 18.2rem) / 3);
	position: relative;
}
#main .evaluation .textList li + li::before {
	content: "";
	width: 1px;
	position: absolute;
	left: -4.6rem;
	top: 0;
	bottom: 0;
	box-sizing: border-box;
	border-left: 1px dashed #aaa;
}
#main .evaluation .textList .photo {
	margin: 3.7rem auto 1.4rem;
	width: 18rem;
}
#main .evaluation .textList p {
	line-height: 1.8;
}
@media all and (max-width: 896px) {
	#main .comAnchorList {
		margin-bottom: 5.2rem;
	}
	#main .headLine04 {
		font-size: 1.6rem;
	}
	#main .evaluation {
		padding: 5rem 0 5rem;
		border-radius: 10rem 0 0 0;
	}
	#main .headLine02 {
		margin-bottom: 3rem;
	}
	#main .headLine02::after {
		margin-top: 2.2rem;
	}
	#main .evaluation .textList {
		margin: 3.6rem 1rem 0;
		padding: 3rem 3rem 2rem;
		border-radius: 4rem 0;
		display: block;
	}
	#main .evaluation .textList li {
		padding-bottom: 2.4rem;
		width: 100%;
	}
	#main .evaluation .textList li:last-child {
		padding-bottom: 0;
	}
	#main .evaluation .textList .photo {
		margin: 3rem auto 1.8rem;
		width: 12.6rem;
	}
	#main .evaluation .textList li + li {
		padding-top: 3rem;
	}
	#main .evaluation .textList li + li::before {
		width: 100%;
		height: 1px;
		border-left: none;
		left: 0;
		bottom: 0;
		border-top: 1px dashed #aaa;
	}
}
/* support */
#main .support {
	padding-top: 8rem;
}
#main .support .headLine02 .top {
	margin-bottom: 3rem;
}
#main .support .perks01 {
	margin: 5.3rem 0 8rem;
}
#main .support .heading {
	margin-bottom: 4.5rem;
	text-align: center;
}
#main .support .heading > * {
	margin: 0 auto;
	display: block;
	width: fit-content;
}
#main .support .heading small {
	font-weight: 400;
	letter-spacing: 0.05em;
}
#main .support .heading .icon {
	width: 7.1rem;
}
#main .support .heading .jp {
	margin: 1.3rem auto 1rem;
	padding-bottom: 0.4rem;
	color: #E6002D;
	font-size: 2.4rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #E6002D;
}
#main .support .infoList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 3rem 2.99rem;
}
#main .support .infoList li {
	padding: 4rem 5.5rem 4.6rem;
	width: calc(50% - 1.5rem);
	border-radius: 10rem 0;
	background: linear-gradient(96deg, rgba(248, 226, 160, 0.20) 0%, rgba(241, 218, 147, 0.20) 100%);
}
#main .support .infoList p {
	line-height: 1.7;
	text-align: justify;
}
#main .support .infoList .photo {
	margin: -0.8rem auto 2.3rem;
	width: 15rem;
}
#main .support .infoList .photo img {
	width: 100%;
}
#main .support .infoList .infoTxt {
	margin: 0 auto;
	width: fit-content;
	display: flex;
	align-items: last baseline;
	color: #E6002D;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.6;
}
#main .support .infoList .infoTxt > * {
	width: fit-content;
	flex-shrink: 0;
}
#main .support .infoList .num {
	font-size: 12rem;
	line-height: 1.2;
}
#main .support .infoList .midTxt {
	font-size: 6rem;
}
#main .support .infoList .smlTxt {
	font-size: 2rem;
	line-height: 1.2;
	text-align: right;
}
#main .support .infoList .smlTxt span {
	vertical-align: 2rem;
	display: inline-block;
}
#main .support .infoList .smlTxt02 {
	font-size: 2rem;
	line-height: 1;
}
#main .support .infoList .title {
	margin-bottom: 1.2rem;
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
}
#main .support .infoList .title02 {
	margin: 0 auto 3rem;
	padding: 0.7rem 1.9rem;
	width: fit-content;
	color: #E6002D;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.2;
	border-radius: 0.5rem;
	border: 1px solid #E6002D;
}
#main .support .perks02 .heading {
	margin-bottom: 5.1rem;
}
#main .support .infoList02 .photo {
	margin-bottom: 2.7rem;
}
#main .support .infoList02 li {
	padding-bottom: 6.2rem;
	background: linear-gradient(96deg, rgba(230, 0, 45, 0.05) 0%, rgba(142, 20, 39, 0.05) 100%);
}
#main .support .infoList02 .item {
	width: 100%;
}
#main .support .infoList02 .subBox {
	margin-left: 2rem;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
#main .support .infoList02 .subBox .photo {
	margin: 0;
}
#main .support .infoList02 .subBox .title02 {
	margin-bottom: 2.5rem;
	margin-left: 0;
}
#main .support .subList {
	margin: 3.2rem 2rem -2.2rem;
	display: flex;
	flex-wrap: wrap;
	gap: 1.999rem;
}
#main .support .subList li {
	width: calc((100% - 4rem) / 3);
	border-radius: 0;
	padding: 0;
	background: none;
	border-radius: 2rem;
	overflow: hidden;
}
#main .support .subList li img {
	width: 100%;
}
@media all and (max-width: 896px) {
	#main .support {
		padding: 5rem 0 4rem;
	}
	#main .support .heading .jp {
		margin: 1rem auto 1rem;
		font-size: 1.7rem;
	}
	#main .support .heading {
		margin-bottom: 2.6rem;
	}
	#main .support .heading .icon {
		width: 5rem;
	}
	#main .support .perks01 {
		margin: 4.3rem 1rem 5rem;
	}
	#main .support .infoList {
		display: block;
	}
	#main .support .infoList li {
		padding: 4rem 4rem 3.2rem;
		width: 100%;
		border-radius: 4rem 0;
	}
	#main .support .infoList li + li {
		margin-top: 2rem;
	}
	#main .support .headLine04 {
		margin-bottom: 1rem;
		font-size: 1.8rem;
	}
	#main .support .infoList .infoTxt {
		font-size: 1.7rem;
	}
	#main .support .infoList .num {
		font-size: 8.4rem;
	}
	#main .support .infoList .midTxt {
		font-size: 3rem;
	}
	#main .support .infoList .smlTxt span {
		vertical-align: 1.5rem;
	}
	#main .support .infoList .smlTxt02 {
		font-size: 1.4rem;
	}
	#main .support .infoList .photo {
		margin: -0.6rem auto 2.7rem;
		width: 10.5rem;
	}
	#main .support .infoList .title {
		margin-bottom: 1.6rem;
		font-size: 1.6rem;
	}
	#main .support .infoList .smlTxt {
		font-size: 1.4rem;
	}
	#main .support .perks02 .heading {
		margin-bottom: 2.8rem;
	}
	#main .support .perks02 {
		margin: 0 1rem;
	}
	#main .support .infoList .title02 {
		margin-bottom: 2.8rem;
		padding: 0.5rem 1.1rem 0.3rem;
		font-size: 1.5rem;
		border-radius: 0.3rem;
	}
	#main .support .infoList02 .item {
		padding: 4rem;
	}
	#main .support .infoList02 .subBox {
		margin: 0;
		display: block;
	}
	#main .support .infoList02 .subBox .title02 {
		margin: 0 auto 1.5rem;
	}
	#main .support .infoList02 .subBox p {
		margin: 0 auto;
		width: fit-content;
	}
	#main .support .infoList02 .subBox .photo {
		margin: 1.2rem auto 0;
	}
	#main .support .subList {
		margin: 3rem 0 0;
		display: block;
	}
	#main .support .subList li {
		padding: 0;
		border-radius: 1.9rem;
	}
	#main .support .subList li + li {
		margin-top: 1.5rem;
	}
}