  @charset "utf-8";

/* category_top */
.page_sustainability{padding-bottom:60px;}
.page_top{
	height:500px;
	background:url(/img/common/h1_sustainability.jpg) no-repeat top center/cover;
}
.page_top_l .page_title{color:#333;}
.page_top_l h2{
	font-size:2rem;
	letter-spacing:1px;
	line-height:2.9rem;
	margin:35px 0 10px;
}
.page_top_l p{margin:0;}
.page_middle > h2{margin-top:10px;}
.page_middle > h2 br{display:none;}
.page_middle > p{
	line-height:4.4rem;
	margin-bottom:70px;
}

.column_list{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
.column_list + h2{
	margin:90px 0 35px;
	text-align:center;
}
.column_item{width:calc((100% - 30px) / 2);}

.esg_area{
	padding:70px 40px;
	background:#EEF5FB;
}
.esg_head{
	margin:0 0 35px;
	text-align:center;
}
.esg_list{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	grid-gap:30px;
	max-width:1180px;
	padding:0;
	margin:auto;
}
.esg_item{
	list-style:none;
	margin:0;
}
.esg_link{
	display:block;
	text-decoration:none !important;
}
.esg_thumb{
	margin-bottom:15px;
	border-radius:15px;
	overflow:hidden;
}
.esg_img{transition:transform 0.3s;}
a:hover .esg_img{transform:scale(1.05);}
.esg_title{
	display:inline-block;
	position:relative;
	padding-right:15px;
	margin:0;
	font-size:1.8rem;
	font-weight:bold;
	letter-spacing:1.44px;
	line-height:2.6rem;
	transition:color 0.3s;
}
a:hover .esg_title{color:#014099;}
.esg_title::before, .esg_title::after{
	content:'';
	position:absolute;
	top:8px;
	right:0;
	width:6px;
	height:12px;
	background:no-repeat center;
	transition:opacity 0.3s;
}
.esg_title::before{
	background-image:url(/img/common/arrow_r_hover.svg);
	opacity:0;
}
a:hover .esg_title::before{opacity:1;}
.esg_title::after{background-image:url(/img/common/arrow_r.svg);}
a:hover .esg_title::after{opacity:0;}
.esg_child_list{
	padding:0;
	margin:20px 0 0;
}
.esg_child_item{
	list-style:none;
	margin-bottom:12px;
}
.esg_child_link{
	display:inline-block;
	position:relative;
	padding-left:10px;
	text-decoration:none !important;
	transition:color 0.3s;
}
.esg_child_link:hover{
	color:#014099;
	text-decoration:underline !important;
}
.esg_child_link::before{
	content:'';
	position:absolute;
	top:12px;
	left:0;
	width:4px;
	height:1px;
	background:#333;
}
.esg_child_link:hover::before{background:#014099;}

/* health */
.health img.alignright{
	max-width:150px;
	margin-top:-5px;
	border-radius:0;
}
.health .scroll_table thead th{min-width:120px;}
.health .scroll_table thead th:first-child{min-width:280px;}

/* partnership */
.partnership img.alignright{
	max-width:150px;
	margin-top:-5px;
	border-radius:0;
}

/* sdgs */
.sdgs table td{line-height:2.4rem;}
.sdgs table td p{
	line-height:2.4rem;
	margin-bottom:10px;
}
.sdgs table td ul{margin-bottom:10px;}
.sdgs table td li{
	line-height:2.4rem;
	margin-bottom:5px;
}
.sdgs table td:first-child ul{
	padding:0;
	margin:0;
}
.sdgs table td:first-child li{list-style:none;}
.sdgs table td:first-child img{border-radius:0;}
.sdgs table td:not(:last-child){font-weight:bold;}
.sdgs .scroll_table thead th:first-child{
	min-width:120px;
	width:120px;
}
.sdgs .scroll_table thead th:nth-child(2){
	min-width:150px;
	width:220px;
}

/* safety-quality */
.safety-quality .scroll_table thead th{min-width:150px;}

/* human-rights */
.human-rights img.alignright{
	max-width:150px;
	margin-top:-5px;
	border-radius:0;
}


@media screen and (max-width:1180px){

.esg_area{
	padding-right:20px;
	padding-left:20px;
}

}


@media screen and (max-width:1024px){

.page_top_l h2{
	font-size:1.8rem;
	letter-spacing:0.9px;
	line-height:2.6rem;
}
.health .scroll_table thead th{min-width:100px;}

}


@media screen and (min-width:768px) and (max-width:1024px){

.page_top{height:400px;}
.page_top_l p{
	font-size:1.3rem;
	letter-spacing:1.04px;
	line-height:2.4rem;
}
.page_middle > p{
	line-height:3.8rem;
	margin-bottom:60px;
}
.column_list + h2{margin-bottom:30px;}
.column_item{width:calc((100% - 25px) / 2);}
.esg_area{padding:55px 20px;}
.esg_list{grid-gap:30px 25px;}
.esg_title{
	font-size:1.7rem;
	letter-spacing:1.36px;
	line-height:2.5rem;
}

}


@media screen and (max-width:850px){

.page_top_l h2{
	margin:20px 0 5px;
	font-size:1.5rem;
	letter-spacing:0.75px;
	line-height:2.2rem;
}
.esg_child_item{
	font-size:1.4rem;
	letter-spacing:1.12px;
	margin-bottom:8px;
}

}


@media screen and (min-width:768px){

.sdgs .special_list{grid-template-columns:repeat(3, 1fr);}

}


@media screen and (max-width:767px){

.page_top{
	height:auto;
	padding:0;
	background:none;
}
.page_top_l .page_title{
	display:flex;
	flex-direction:column;
	justify-content:center;
	height:100px;
	padding:0 20px;
	background:url(/img/common/h1_sustainability.jpg) no-repeat center/cover;
}
.page_top_l h2{
	padding:0 20px;
	margin:35px 0 5px;
}
.page_top_l p{padding:0 20px;}
.page_middle > p{
	line-height:3.2rem;
	margin-bottom:50px;
}
.column_list + h2{margin:80px 0 20px;}
.column_item{width:calc((100% - 20px) / 2);}
.esg_area{padding:40px 20px;}
.esg_list{grid-gap:30px 20px;}
.esg_title{
	font-size:1.6rem;
	letter-spacing:1.28px;
	line-height:2.4rem;
}
.esg_title::before, .esg_title::after{top:7px;}
.esg_child_list{margin-top:15px;}
.esg_child_link::before{top:11px;}
.health img.alignright{max-width:134px;}
.health .scroll_table thead th:first-child{min-width:260px;}
.partnership img.alignright{max-width:134px;}

/* human-rights */
.human-rights img.alignright{max-width:134px;}

}


@media screen and (max-width:600px){

.page_middle > h2 br{display:block;}
.column_list{
	display:block;
	margin-bottom:-20px;
}
.column_item{
	width:auto;
	margin-bottom:30px;
}
.esg_list{grid-template-columns:100%;}

}