@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#container {
	padding-top: 11.1rem;
}
#main .mainImg {
	position: relative;
	background-image: url(../img/diversity2/main_img.webp);
}
#main .mainImg h2{
	margin-bottom: 0;
	padding-bottom: min(4.1vw,5.2rem);
}
#main .mainImg .en {
	margin-top: max(-9.1vw,-11.6rem);
	display: block;
}
#main .mainImg .en span {
	display: inline-block;
	text-align: left;
	line-height: 1.14;
}
#main .comGrowthUl02 {
	margin-bottom: min(7.1vw,9rem);
	display: block;
}
#main .comGrowthUl02 li {
	margin-bottom: 2.2rem;
	width: auto;
	display: flex;
	flex-wrap: wrap;
	padding: min(2.4vw,3rem) min(1.6vw,2rem) min(2.4vw,3rem) min(4.3vw,5.5rem);
	justify-content: space-between;
}
#main .comGrowthUl02 li:last-child {
	margin-bottom: 0;
}
#main .comGrowthUl02 li .img {
	width: min(7.4vw,9.4rem);
	margin: 0 min(3.9vw,5rem) 0 0;
}
#main .comGrowthUl02 li .textBox {
	flex: 1;
}
#main .comGrowthUl02 li .textBox .ttl {
	text-align: left;
	display: block;
}
#main .linkPhoto{
	text-align: center;
}
#main .linkPhoto a:hover {
	opacity: 0.7;
}
#main .sec01 {
	margin-bottom: min(11vw,14rem);
}
#main .sec01:last-child {
	margin-bottom: 0;
}
#main .hTtl {
	margin-bottom: min(4.53vw,5.8rem);
}
.headLine07{
	margin-bottom: min(3.125vw,4rem);
}
#main .bigPhoto {
	margin-bottom: 9.1rem;
	text-align: center;
}
#main .bigPhoto:last-child {
	margin-bottom: 0;
}
#main .comTopics {
	margin-bottom: 7.8rem;
	padding-bottom: 3rem;
}
#main .comTopics .imgBox p {
	margin-bottom: 0;
}
#main .comTopics .imgBox .ttl {
	margin-bottom: 1.2rem;
	line-height: 1.27;
}
#main .comTopics .imgBox .photoBox {
	width: min(22.7vw,29rem);
	order: 2;
	margin: -0 -0 0 min(2.4vw,3rem);
}
#main .comTopics .imgBox .textBox {
	padding-top: 1rem;
	flex: 1;
}
#main .bigPhoto04{
	margin-bottom: 6.4rem;
	padding-top: min(3.125vw,4rem);
}
#main .reformUl {
	margin: -9.5rem 0 min(7.8vw,10rem);
	padding: min(3.9vw,5rem) min(3.5vw,4.4rem);
	border: 1px solid #0975AA;
}
#main .reformUl li {
	padding: min(2.5vw,3.1rem) min(2.8vw,3.5rem);
	margin-bottom: min(3.1vw,2.6rem);
	background-color: rgba(68, 190, 169, 0.15);
}
#main .reformUl li:last-child {
	margin-bottom: 0;
}
#main .reformUl dl {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
#main .reformUl dt {
	width: min(13.7vw,17.5rem);
	padding-right: 1rem;
	font-size: min(3.1vw,2.6rem);
	font-weight: 600;
	color: #44BEA9;
	line-height: 1.23;
}
#main .reformUl dd {
	flex: 1;
	line-height: 2;
}
#main .reformUl .liStyle01 {
	background-color: rgba(170, 205, 35, 0.15);
}
#main .reformUl .liStyle01 dt {
	color: #AACD23;
}
#main .reformUl .liStyle02 {
	background-color: rgba(255, 60, 80, 0.15);
}
#main .reformUl .liStyle02 dt {
	color: #FF3C50;
}
#main .comGrowthUl:not(.comGrowthUl02) {
	margin-bottom: 6.5rem;
}
#main .benefitsUl {
	max-width: min(80vw,96rem);
	margin: 0 auto;
}
#main .benefitsUl li {
	min-height: min(12.5vw,16rem);
	padding: min(1.6vw,2.0rem) min(2.4vw,3rem);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	border-top: 1px solid #0975AA;
	background-color: #F6FAFA;
}
#main .benefitsUl li:nth-child(2n) {
	background-color: #fff;
}
#main .benefitsUl li:last-child {
	border-bottom: 1px solid #0975AA;
}
#main .benefitsUl .lBox {
	width: min(12.5vw,16rem);
	text-align: center;
	margin-right: min(3.9vw,5rem);
}
#main .benefitsUl .lBox .txtSpan {
	font-size: 1.728rem;
	color: #0975AA;
	letter-spacing: 0.06em;
	display: block;
	margin-top: 1rem;
	font-weight: 600;
	font-feature-settings: "palt";
}
#main .benefitsUl .lBox .txtSpan:first-child {
	margin-top: 0;
}
#main .benefitsUl .rBox {
	flex: 1;
}
#main .comDl{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	font-feature-settings: "palt";
}
#main .comDl dt {
	font-size: 1.6rem;
	color: #0975AA;
	letter-spacing: 0.06em;
	line-height: 1.375;
	width: min(15.7vw,20rem);
	font-weight: 600;
	display: flex;
	align-items: center;
	padding: min(1.1vw,1.4rem) min(0.8vw,1rem) min(1.1vw,1.35rem) 0;
	border-bottom: 1px dashed #808080;
}
#main .comDl dd {
	font-size: 1.6rem;
	line-height: 1.75;
	width: calc(100% - min(15.7vw,20rem));
	padding: min(1.1vw,1.4rem) min(0.8vw,1rem) min(1.1vw,1.35rem) 0;
	border-bottom: 1px dashed #808080;
}
#main .comDl dd:last-of-type,
#main .comDl dt:last-of-type {
	border: none;
}
#main .comDl .dtStyle {
	display: none;
}
#main .comDl:has(.dtStyle) dd {
	width: auto;
}
#main .comDl dd a {
	color: #0975AA;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 0.7rem;
}
#main .comDl dd .photo {
	margin-top: min(2.45vw,3rem);
	margin-right: max(-3.125vw,-4rem);
}
#main .comDl dd .photo a:hover {
	opacity: 0.7;
}
#main .evaluationUl {
	padding-top: 1rem;
}
#main .evaluationUl li {
	min-height: min(13.7vw,17.5rem);
	padding: 0.5rem min(2vw,2rem);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 2.5rem;
	border: 1px solid #0975AA;
}
#main .evaluationUl li:last-child {
	margin-bottom: 0;
}
#main .evaluationUl li .img {
	width: min(12.5vw,16rem);
	text-align: center;
	margin-right: min(1.6vw,2rem);
}
#main .evaluationUl li .textBox {
	flex: 1;
}
#main .evaluationUl li p {
	font-size: 2.6rem;
	color: #0975AA;
	font-weight: 600;
	line-height: 1.23;
}
#main .evaluationUl li .txtSpan {
	margin-top: 1rem;
	display: block;
	font-size: 1.6rem;
	line-height: 1.5;
	text-indent: -1em;
	padding-left: 1em;
	padding-right: 2rem;
}

@media all and (min-width: 897px) {
	#main .growthBox .linkUl a {
		min-height: min(4.9vw,6.2rem);
		padding-top: min(0.78vw,1rem);
		padding-bottom: min(0.78vw,1rem);
	}
	#main .growthBox .linkUl .liStyle a {
		font-feature-settings: "palt";
		text-align: left;
		letter-spacing: -0.05em;
	}
	#main .comTextBox {
		margin-bottom: min(6.6vw,8.4rem);
	}
	.headLine10 {
		letter-spacing: -0.05em;
	}
	.headLine10 .subSpan {
		margin-bottom: 0.7rem;
	}
	#main .comTopics{
		width: auto;
		max-width: 96rem;
	}
	#main .comGrowthUl:not(.comGrowthUl02) li {
		padding-bottom: 1.5rem;
	}
	#main .comGrowthUl:not(.comGrowthUl02) li .img{
		margin-bottom: 0;
	}
	#main .comGrowthUl:not(.comGrowthUl02) li .ttl{
		min-height: 9.6rem;
		margin: 0 -1rem -0.5rem;
	}
	#main .comDl dd a:hover {
		text-decoration: none;
	}
	#main .growthBox {
		position: absolute;
		top: 50%;
		margin-top: calc(max(-31.25vw,-40rem) / 2);
		right: min(3.1vw,3.9rem);
		width: min(26.25vw,33.6rem);
	}
}	

@media all and (max-width: 896px) {
	#container {
		padding-top: 6.1rem;
	}
	#main .mainImg {
		margin-bottom: 2.2rem;
	}
	#main .mainImg h2 .txtSpan {
		font-size: 5.4rem;
		letter-spacing: -0.04em;
	}
	#main .mainImg .en{
		margin-top: -5.2rem;
		margin-right: 0.5rem;
	}
	#main .mainImg h2{
		padding-bottom: 2.9rem;
	}
	#main .mainImg p{
		margin: 0 0.5rem;
		letter-spacing: -0.05em;
	}
	.headLine10 .subSpan {
		letter-spacing: -0.025em;
	}
	#main .growthBox .linkUl .liStyle a {
		padding-top: 0.6rem;
		padding-bottom: 0.6rem;
	}
	#main .growthBox {
		margin-bottom: 3rem;
		padding-bottom: 1.3rem;
	}
	#main .comTextBox {
		padding-bottom: 0;
		margin-bottom: 2.2rem;
	}
	#main .comGrowthUl02 li {
		margin-bottom: 1.4rem;
		padding: 1.6rem 2rem;
	}
	#main .comGrowthUl02 li .img {
		width: 6.5rem;
		margin-right: 1.9rem;
	}
	#main .comGrowthUl02{
		margin-bottom: 2.8rem;
	}
	#main .linkPhoto {
		margin: 0 -1.5rem;
	}
	#main .linkPhoto img {
		width: 100%;
	}
	#main .sec01 {
		margin-bottom: 3.4rem;
	}
	#main .hTtl{
		margin-bottom: 2rem;
	}
	.headLine07 {
		font-size: 1.9rem;
		margin-bottom: 1.5rem;
	}
	#main .bigPhoto02 {
		margin: 0 -1.5rem 2.8rem 0;
		overflow-x: scroll;
	}
	#main .bigPhoto02 .subPhoto {
		width: 100%;
		display: block;
		min-width: 66rem;
	}
	#main .comTopics {
		margin: 0 0 3rem;
		padding-bottom: 1.5rem;
	}
	#main .comTopics .imgBox {
		display: block;
	}
	#main .comTopics .imgBox .textBox {
		padding: 0;
	}
	#main .comTopics .imgBox .ttl{
		line-height: 1.12;
		margin-bottom: 0.7rem;
	}
	#main .comTopics .imgBox .photoBox{
		width: auto;
		margin: 1.2rem 0 0;
	}
	#main .comTopics .imgBox .photoBox img {
		width: 100%;
	}
	#main .bigPhoto03 {
		margin: 0 -1.5rem 2.8rem 0;
		overflow-x: scroll;
	}
	#main .bigPhoto03 .subPhoto {
		width: 100%;
		display: block;
		min-width: 66rem;
	}
	#main .bigPhoto04 {
		margin-bottom: 7.5rem;
		padding-top: 0;
	}
	#main .reformUl {
		margin-bottom: 3rem;
		padding: 1.5rem 1.4rem;
	}
	#main .reformUl li {
		margin-bottom: 1.4rem;
		padding: 1rem 1.2rem;
		min-height: inherit;
	}
	#main .reformUl dl{
		display: block;
	}
	#main .reformUl dt{
		width: auto;
		font-size: 1.6rem;
		margin: 0 0 0.5rem;
	}
	#main .reformUl dd {
		font-size: 1.2rem;
		line-height: 1.75;
		letter-spacing: 0;
		font-feature-settings: "palt";
	}
	#main .comGrowthUl:not(.comGrowthUl02) {
		padding-top: 0.4rem;
		margin-bottom: 4rem;
	}
	#main .comGrowthUl:not(.comGrowthUl02) li {
		padding: 1.0rem 2rem 1.3rem;
		display: block;
	}
	#main .comGrowthUl:not(.comGrowthUl02) li .img {
		width: 8.4rem;
		margin: 0 auto 0.8rem;
	}
	#main .comGrowthUl:not(.comGrowthUl02) li .ttl {
		text-align: center;
		font-size: 2rem;
		margin-bottom: 1.2rem;
		line-height: 1.15;
		font-feature-settings: normal;
	}
	#main .benefitsUl{
		max-width: inherit;
	}
	#main .benefitsUl li {
		padding: 1.5rem 1.5rem 0.8rem;
		display: block;
		min-height: inherit;
	}
	#main .benefitsUl .lBox {
		width: auto;
		text-align: center;
		margin: 0 0 1rem;
	}
	#main .benefitsUl .lBox .img img {
		width: auto;
		max-width: inherit;
		max-height: 5rem;
	}
	#main .benefitsUl .lBox .txtSpan {
		font-size: 1.4rem;
	}
	#main .comDl dt {
		padding: 0.6rem 0.5rem 0.6rem 0;
		font-size: 1.1rem;
		letter-spacing: 0.06em;
		line-height: 1.27;
		width: 10.5rem;
		border-style: dotted;
	}
	#main .comDl dt .pad:not(.sp) {
		display: none;
	}
	#main .comDl dd {
		flex-direction: column;
		min-height: 3.8rem;
		padding: 0.6rem 0 0.6rem 0;
		font-size: 1.1rem;
		line-height: 1.54;
		display: flex;
		justify-content: center;
		width: calc(100% - 10.5rem);
		border-style: dotted;
	}
	#main .comDl dd .txtSpan {
		width: 100%;
		display: block;
		text-indent: -1em;
		padding-left: 1em;
	}
	#main .comDl dd .photo {
		margin: 1.5rem -3rem 0;
	}
	#main .comDl dd .photo img {
		width: 100%;
	}
	#main .evaluationUl {
		padding-top: 0;
	}
	#main .evaluationUl li {
		margin-bottom: 1.4rem;
		padding: 0.5rem 0.8rem;
		min-height: 11.6rem;
	}
	#main .evaluationUl li .img {
		width: 8.3rem;
		margin-right: 1rem;
		text-align: center;
	}
	#main .evaluationUl li .img img {
		width: auto;
		max-width: inherit;
		max-height: 8rem;
	}
	#main .evaluationUl li p {
		font-size: 1.5rem;
		line-height: 1.47;
		font-feature-settings: "palt";
	}
	#main .evaluationUl li .txtSpan{
		font-size: 1.1rem;
		margin-top: 0.5rem;
		line-height: 1.545;
	}
}

@media all and (min-width: 897px) and (max-width: 1279px) {

	#main .content {
		width: 90.5%;
	}
	#main .comGrowthUl02 {
		margin-left: 0;
		margin-right: 0;
	}
	#main .linkPhoto {
		width: 81.5%;
		margin: 0 auto;
	}
	#main .sec01 {
		margin-bottom: min(9.5vw,14rem);
	}
	#main .comTopics{
		width: 87%;
		margin: 0 auto min(6.7vw,6rem);
		padding: min(3.1vw,3.9rem) min(3.1vw,3.9rem);
	}
	#main .comTopics .imgBox .ttl {
		font-size: min(3.6vw,3.2rem);
	}
	#main .comTopics .imgBox .photoBox {
		width: min(23.6vw,30rem);
		margin-top: min(4.7vw,4.2rem);
	}
	#main .bigPhoto04 {
		width: 62%;
		margin: 0 auto min(7.5vw,7rem);
	}
	#main .comGrowthUl:not(.comGrowthUl02) {
		padding-top: 2.2rem;
	}
	#main .comDl dt{
		font-feature-settings: "palt";
		letter-spacing: 0;
		padding: min(0.9vw,1.3rem) min(2.5vw,2rem) min(0.9vw,1.3rem) 0;
	}
	#main .comDl dd{
		padding: min(0.9vw,1.3rem) min(0.8vw,1rem) min(0.9vw,1.1rem) 0;
	}
	#main .benefitsUl .lBox .img img {
		width: auto;
		max-width: inherit;
		max-height: min(5.6vw,5rem);
	}
	#main .benefitsUl .lBox .txtSpan{
		margin-left: -2rem;
		margin-right: -2rem;
	}
	#main .evaluationUl li {
		min-height: min(16.7vw,17.5rem);
	}
	#main .evaluationUl li .img{
		width: min(11.5vw,16rem);
	}
	#main .evaluationUl li .img img {
		width: auto;
		max-width: inherit;
		max-height: 9.5rem;
	}
	#main .comDl dd .photo {
		margin-top: min(2.0vw,3rem);
	}
	#main .growthBox {
		margin-top: calc(max(-26.7vw,-38rem) / 2);
	}
}