@charset "utf-8";
/*------------------------------------------------------------
	welfare
------------------------------------------------------------*/
#main .pageTitle {
	margin-bottom: 0;
}
#main .bgBox {
	padding: 0.5rem 0 45.3rem;
	position: relative;
}
#main .bgBox::before {
	position: absolute;
	top: -31.3rem;
	left: 0;
	width: 100%;
	height: 31.4rem;
	background: #FFF;
	clip-path: polygon(5.625vw 0,100% 0,100% 100%,0 100%);
	content: '';
}
#main .bgBox.style01::before {
	background: #EDF6FF;
}
#main .bgBox .headLine02 {
	margin: -23rem 0 7.6rem;
}
#main .bgBox .headLine02 .comEnText {
	margin: 0 auto 1.3rem;
}
#main .bgBox .headLine02 .jp {
	margin: 0 auto;
}
#main .textList {
	display: flex;
	flex-wrap: wrap;
	gap: 4rem;
}
#main .textList > li {
	padding: 4.6rem 4rem 3.2rem;
	width: calc((100% - 8rem) / 3);
	background: #F8F8F8;
}
#main .textList > li.spec {
	padding: 2.9rem 16rem 5.2rem;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#main .textList > li.spec .topBox {
	margin-right: 6rem;
}
#main .textList > li.spec .topBox .photo {
	margin-bottom: 1.5rem;
}
#main .textList > li.spec .topBox .title {
	padding: 1rem;
	width: 48rem;
	min-height: 8.4rem;
	border-radius: 4.2rem;
}
#main .textList > li.spec .textBox {
	margin: 2rem -18rem 0 0;
	max-width: 52.6rem;
}
#main .textList > li.spec .textBox .text {
	color: #000;
	font-size: 2.2rem;
	font-weight: 600;
	line-height: 1.5;
}
#main .textList li .photo {
	margin: 0 auto 2.3rem;
	width: 8rem;
}
#main .textList li .title {
	margin: 0 auto;
	padding: 2rem 0 3rem;
	color: #002168;
	font-size: 3.6rem;
	font-weight: 800;
	line-height: 1.32;
	text-align: center;
	background: #FFF;
	border-radius: 4rem;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
}
#main .textList li .title:has(small) {
	padding: 1.5rem 0 !important;
}
#main .textList li .title small {
	margin-top: -0.4rem;
	display: block;
	font-size: 2rem;
	font-weight: 500;
}
#main .textList li .color {
	color: #0073EF;
}
#main .textList li .subUl {
	margin-top: 2.3rem;
}
#main .textList li .subUl li {
	margin-bottom: 0.5rem;
	padding-left: 1.1em;
	font-size: 2rem;
	font-weight: 600;
	color: #000;
	text-indent: -1.1em;
}
#main .textList li .subUl.flexBetween li {
	width: 50%;
}
#main .textList li .note {
	margin: 1.5rem -2rem 0;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.35;
	color: #000;
	text-align: center;
	min-height: 5.4rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	letter-spacing: 0;
}
#main .numbers .textList li:not(.spec) {
	padding: 2.9rem 4rem 4.4rem;
}
#main .numbers .textList li:not(.spec) .photo {
	margin-bottom: 1.9rem;
}
#main .numbers .textList li:not(.spec) .title {
	padding: 2.5rem 4rem;
}
#main .caring {
	padding-bottom: 49.6rem;
	background: #EDF6FF;
}
#main .caring .headLine02 {
	margin-bottom: 7.4rem;
}
#main .caring .textList > li {
	padding-bottom: 5rem;
	background: #FFF;
}
#main .caring .textList > li .title {
	padding: 2.5rem 1rem 2.7rem;
	background: #F8F8F8;
}
#main .other {
	padding-bottom: 25.9rem;
}
@media all and (max-width: 896px) {
	#main .pageTitle {
		margin-bottom: 0;
	}
	#main .bgBox {
		padding: 0.5rem 0 16rem !important;
	}
	#main .bgBox::before {
		top: -10rem;
		height: 10.1rem;
		clip-path: polygon(4rem 0,100% 0,100% 100%,0 100%);
	}
	#main .bgBox .headLine02 {
		margin: -6rem 0 4rem !important;
	}
	#main .bgBox .headLine02 .comEnText {
		margin: 0 auto 0.4rem;
	}
	#main .textList {
		display: block;
	}
	#main .textList > li {
		margin-bottom: 3rem;
		padding: 2rem 1.5rem !important;
		width: auto;
		display: block !important;
	}
	#main .textList > li:last-child {
		margin-bottom: 0;
	}
	#main .textList > li.spec .topBox {
		margin-right: 0;
	}
	#main .textList > li.spec .topBox .title {
		width: auto;
	}
	#main .textList > li.spec .textBox {
		margin: 0;
		max-width: inherit !important;
	}
	#main .textList > li.spec .textBox .text {
		font-size: 1.6rem;
	}
	#main .textList li .photo {
		margin: 0 auto 1rem !important;
		width: 5rem !important;
	}
	#main .textList li .title {
		margin: 0 0 2rem;
		padding: 1rem 0 !important;
		min-height: inherit !important;
		font-size: 2rem;
	}
	#main .textList li .title small {
		margin-top: 0;
		font-size: 1.4rem;
	}
	#main .textList li .subUl {
		margin-top:1.5rem;
	}
	#main .textList li .subUl li {
		margin-bottom: 0.5rem;
		font-size: 1.6rem;
	}
	#main .textList li .note {
		margin: 1.5rem 0 0;
		font-size: 1.4rem;
		min-height: inherit;
		display: block;
	}
	#main .caring .textList > li .title {
		margin-bottom: 0 !important;
	}
	#main .other {
		padding-bottom: 8rem !important;
	}
}