@charset "UTF-8";

.wrap.longbg{
	background: url(../images/esg/in_long_bg.png);
	background-repeat: no-repeat;
	background-position: top 320px center;
	background-size: 100% auto;
}

img.max100{
	width: auto;
	max-width: 100%;
}

img.border{
	border: 1px solid #cccccc;
}

.kvesg{
	position: relative;
	display: block;
	width: 100%;
}

.kvesg .circleitem{
	position: absolute;
	
	width: 110px;
  height: 110px;
  background: rgba(212, 248, 255, 0.8);
  border-radius: 50%;

  display: flex;
  justify-content: center;  /* 水平置中 */
  align-items: center;      /* 垂直置中 */

  color: #0f376b;
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0;

  cursor: pointer;
}

.kvesg .circleitem.c1{
	top: 54%;
	left: calc(50% - 35%);
}

.kvesg .circleitem.c2{
	top: 63%;
	left: calc(50% - 29%);
}

.kvesg .circleitem.c3{
	top: 68%;
	left: calc(50% - 22%);
}

.esggoal{
	position: relative;
	display: block;
	padding: 20px 0 0 0;
}

.esggoal .memo{
	display: block;
	width: 100%;
	padding-top: 60px;
	font-size: 20px;
	letter-spacing: 0;
	text-align: center;
}

.esgtactics{
	position: relative;
	display: block;
	padding: 120px 0 0 0;
}

.esgtactics .group{
	display: flex;
	width: 100%;
	padding-top: 60px;
	justify-content: center;
}

.esgtactics .group .item{
	display: inline-block;
	width: 332px;
	padding: 0 30px;
}

.esgactive{
	position: relative;
	display: block;
	padding: 120px 0 0 0;
}

.esgactive .zone{
	position: relative;
	display: flex;
	align-items: center;
	padding-top: 60px;
}

.esgactive .zone .list{
	display: inline-block;
	width: 50%;
}

.esgactive .zone .list .item{
	position: relative;
	display: inline-block;
	width: 100%;
	padding-bottom: 30px;
}

.esgactive .zone .list .item:last-child{
	padding-bottom: 0px;
}

.esgactive .zone .list .item a{
	position: relative;
	display: inline-block;
	width: 100%;
	padding-left: 30px;

	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0;

	text-decoration: none;

	color: #333333;
}

.esgactive .zone .list .item a::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;

	width: 15px;
  height: 15px;
  background: #efbf3e;
  border-radius: 50%;

  display: flex;
  justify-content: center;  /* 水平置中 */
  align-items: center;      /* 垂直置中 */

	transform: translateY(-50%);
}

.esgactive .zone .list .item a:hover{
	color: #333333;
	text-decoration: underline;
}

.esgactive .zone .cover{
	display: inline-block;
	width: 50%;
	padding-left: 60px;
}

.esgactive .more{
	display: block;
	width: 100%;
	padding-top: 60px;
	text-align: center;
}

.esgactive .more a{
	position: relative;
	padding-right: 30px;

	font-size: 18px;
	font-weight: 500;
	letter-spacing: 1px;

	color: #333333;
	text-decoration: none;
}

.esgactive .more a::before{
	content: "";
	position: absolute;
	width: 23px;
	height: 21px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);

	background: url(../images/esg/arrow_right.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.esgactive .more a:hover{
	color: #333333;
	text-decoration: underline;
}

.esgreport{
	position: relative;
	display: block;
	padding: 120px 0 0 0;
}

.esgreport .list{
	display: flex;
	width: 100%;
	justify-content: space-between;
	padding: 60px 160px;
	gap: 30px;
}

.esgreport .list .item{
	position: relative;
	display: inline-block;
	width: 25%;
}

.esgreport .list .item a{
	position: relative;
	display: inline-block;
	width: 100%;
	padding: 10px 20px;

	background: #FFF;
	border: 1px solid #5dad9d;

	letter-spacing: 0;
	color: #333333;

	text-decoration: none;
}

.esgreport .list .item a:hover{
	color: #333333;
	background: #eeeeee;
	color: #333333;
	text-decoration: none;
}

.esgreport .list .item a span.title{
	position: relative;
	display: inline-block;
	width: 100%;
	padding-left: 15px;
	margin-bottom: 15px;

	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0;
	color: #333333;

	text-decoration: none;
}

.esgreport .list .item a span.title::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 3px;
	height: 100%;

	background: #5dad9d;
}

.esgreport .list .item a .info{
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0;
	color: #5dad9d;
}

.esgreport .list .item a .info span.date{
	flex: 1;
	color: #333333;
}

.esgreport .list .item a .info span.download{
	position: relative;
	display: inline-block;
	padding-right: 20px;
}

.esgreport .list .item a .info span.download::before{
	content: "";
	position: absolute;
	width: 16px;
	height: 22px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);

	background: url(../images/esg/download.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.esgtransition{
	display: block;
	width: 100%;
}

.esgtransition img{
	display: block;
	width: 100%;
}

.esgibg{
	position: absolute;
	-webkit-user-select: none; /* Chrome / Safari */
  -moz-user-select: none;    /* Firefox */
  -ms-user-select: none;     /* IE */
  user-select: none;         /* 標準 */
}

.esgibg.b1{
	width: 480px;

	top: 29%;
	left: calc(50% - 1280px);
}

.esgibg.b2{
	width: 400px;

	top: 40%;
	left: calc(50% + 680px);
}

.esgibg.b3{
	width: 200px;

	top: 60%;
	left: calc(50% - 1000px);
}

.kvinesg{
	position: relative;
	display: block;
	width: 100%;
	margin-top: 94px;
}

.kvinesg .intro{
	position: absolute;
	display: inline-block;
	width: 430px;
	top: 20%;
	left: calc(50% - 570px);
}

.kvinesg .intro span.title{
	display: inline-block;
	width: 100%;
	padding-bottom: 10px;
	font-size: 32px;
	font-weight: bold;
	letter-spacing: 0;
	color: #0f376b;
}

.kvinesg .intro span.memo{
	display: inline-block;
	width: 100%;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.5;
	color: #000000;
}

.kvinesg ul.category{
	position: absolute;
	display: flex;
	justify-content: center;
	width: 100%;
	top: 66%;
	left: 0;

	list-style: none;
	padding: 0;
	margin: 0;
}

.kvinesg ul.category li{
	display: inline-block;
	padding: 0 15px;
}

.kvinesg ul.category li a{
	display: inline-block;
	width: 256px;
	aspect-ratio: 16 / 6.2;

	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover !important;

	text-indent: -999999999999px;
	text-decoration: none;
}

.kvinesg ul.category li a.c1{
	background: url(../images/esg/esg_category_1.png);
}

.kvinesg ul.category li a.c1.chs, .kvinesg ul.category li a:hover.c1{
	background: url(../images/esg/esg_category_1_over.png);
}

.kvinesg ul.category li a.c2{
	background: url(../images/esg/esg_category_2.png);
}

.kvinesg ul.category li a.c2.chs, .kvinesg ul.category li a:hover.c2{
	background: url(../images/esg/esg_category_2_over.png);
}

.kvinesg ul.category li a.c3{
	background: url(../images/esg/esg_category_3.png);
}

.kvinesg ul.category li a.c3.chs, .kvinesg ul.category li a:hover.c3{
	background: url(../images/esg/esg_category_3_over.png);
}

.esgactivelist{
	display: block;
	width: 100%;
	padding: 0 0 30px 0;
}

.esgactivelist .group{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 30px;

	padding-top: 60px;
}

.esgactivelist .group .item{
	display: inline-block;
	width: calc((100% - 60px) / 3);
}

.esgactivelist .group .item a{
	display: inline-block;
	width: 100%;
	text-decoration: none;
}

.esgactivelist .group .item a .cover{
	aspect-ratio: 8 / 5;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden; /* 防止圖片超出 */
	background: #f7f7f7; /* 可選，方便看框 */
}

.esgactivelist .group .item a .cover img{
  width: 100%;
  height: 100%;
  object-fit: cover; /* 保持比例，完全顯示 */
  transition: transform 0.3s ease;
}

.esgactivelist .group .item a:hover .cover img{
	transform: scale(1.2);
	filter: brightness(1.05);
}

.esgactivelist .group .item a span.title{
	display: block;
	width: 100%;
	padding-top: 10px;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0;
	color: #333333;
}

.esgactivelist ul.pager{
	display: flex;
	width: 100%;
	justify-content: center;

	padding: 80px 0 0 0;
	margin: 0;
}

.esgactivelist ul.pager li{
	display: inline-block;
	padding: 0 5px;
	margin: 0;
	list-style-type: none;
}

.esgactivelist ul.pager li a{
	
	display: flex;
	align-items: center;
	justify-content: center;

	aspect-ratio: 1 / 1;
	min-width: 40px;


	letter-spacing: 0;
	background: #FFF;
	color: #333333;

	text-decoration: none;
}

.esgactivelist ul.pager li a:hover, ul.pager li a.chs{
	color: #FFF;
	background: #3796ae;
	
	text-decoration: none;
}

.esgactivelist .detail{
	display: block;
	width: 100%;
	padding-top: 60px;
}

.esgactivelist .detail span.title{
	display: inline-block;
	width: 100%;
	text-align: center;

	padding-bottom: 40px;

	font-size: 22px;
	font-weight: bold;
}

.esgactivelist .detail .cover{
	display: inline-block;
	width: 100%;
	padding-bottom: 40px;
}

.esgactivelist .detail .content{
	display: inline-block;
	width: 100%;
	padding-bottom: 80px;

	font-size: 18px;
	letter-spacing: 0;
	line-height: 1.5;
}

.esgactivelist .maincontent{
	display: block;
	width: 100%;
	padding: 60px 0;

	font-size: 18px;
	line-height: 1.5;
	color: #1e1e1e;
}

.esgactivelist .maincontent .outline{
	display: flex;
	width: 100%;
	padding-bottom: 60px;
	justify-content: flex-start;
	align-items: flex-start;
}

.esgactivelist .maincontent .outline .icon{
	display: inline-block;
	width: calc(60px + 15px);
	padding-right: 15px;
}

.esgactivelist .maincontent .outline .direction{
	flex: 1;
}

.esgactivelist .maincontent .outline .direction .memo ol li ul li{
	list-style: disc;
}

.esgactivelist .maincontent .outline .direction span.title{
	display: inline-block;
	width: 100%;
	font-size: 22px;
	font-weight: bold;
	color: #007d65;
	padding-top: 15px;
	padding-bottom: 15px;
}

.esgactivelist .maincontent .leftprightt{
	display: flex;
	gap: 30px;
	align-items: center;
	padding-top: 30px;
	padding-bottom: 60px;

	font-size: 18px;
}

.esgactivelist .maincontent .leftprightt .cover{
	display: inline-block;
	width: 620px;
}

.esgactivelist .maincontent .leftprightt .explain{
	display: inline-block;
	flex: 1;
}

.esgactivelist .maincontent .leftprightt .explain .item{
	display: inline-block;
	width: 100%;
	padding-bottom: 18px;
}

.esgactivelist .maincontent .leftprightt .explain span.clarify{
	display: inline-block;
	width: 100%;
	padding-bottom: 0px;
	font-size: 22px;
	font-weight: bold;
	color: #0f376b;
}

.esgactivelist .maincontent table.tbthree{
	border-radius: 30px;
	background: #eeeeee;
	overflow: hidden;

	border-collapse: collapse;
  border-spacing: 0;
}

.esgactivelist .maincontent table.tbthree thead{
	width: 100%;
	background: #5da9bd;
}

.esgactivelist .maincontent table.tbthree thead tr th{
	width: 100%;
	padding: 15px;

	font-size: 20px;
	font-weight: 500;
	color: #FFF;

	border: 1px solid #FFF; /* 顯示白色邊框線 */
}

.esgactivelist .maincontent table.tbthree thead tr th:nth-child(1) {
  width: 300px;
  text-align: center;
}

.esgactivelist .maincontent table.tbthree thead tr th:nth-child(2) {
  width: 280px; /* 第二個 th 寬度可以自己設定 */
}

.esgactivelist .maincontent table.tbthree thead tr th:nth-child(3) {
	width: auto;
  /*display: inline-block;*/
}

.esgactivelist .maincontent table.tbthree tbody tr td {

	padding: 15px;
	color: #1e1e1e;

	font-size: 18px;
	letter-spacing: 0;
	text-align: center;

	border: 1px solid #FFF; /* 顯示白色邊框線 */
}

.esgactivelist .maincontent table.tbthree tbody tr td.left {
	text-align: left;
}

.esgactivelist .maincontent .bluegroup{
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	align-items: stretch;

	padding-top: 30px;
}

.esgactivelist .maincontent .bluegroup .item{
	width: calc((100% - 40px) / 3);

	border-radius: 20px;
	background: #eeeeee;
	overflow: hidden;
}

.esgactivelist .maincontent .bluegroup .item span.etitle{
	display: inline-block;
	width: 100%;
	padding: 15px;
	background: #5da9bd;
	overflow: hidden;
	letter-spacing: 0;
	color: #FFF;

	text-align: center;

	font-size: 20px;
}

.esgactivelist .maincontent .bluegroup .item .instructions{
	display: inline-block;
	width: 100%;
	padding: 15px;
	overflow: hidden;
	letter-spacing: 0;

	font-size: 18px;
	line-height: 1.5;
}

.esgactivelist .maincontent .contactgroup{
	display: inline-block;
	width: 100%;
	padding-top: 30px;
	padding-left: 40px;
}

.esgactivelist .maincontent .contactgroup a{
	display: inline-block;
}

.esgactivelist .maincontent .contactgroup a.i1{
	width: calc(410px * 0.8);
	margin-right: 15px;
}

.esgactivelist .maincontent .contactgroup a.i2{
	width: calc(360px * 0.8);
}

.esgactivelist .maincontent .scout{
	display: block;
	width: 100%;
	padding-bottom: 20px;
}

.esgactivelist .maincontent .scout span.title{
	display: inline-block;
	width: 100%;
	padding-bottom: 5px;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0;
	color: #0f376b;
}

.esgactivelist .maincontent .scout .recon{
	display: inline-block;
	width: 100%;
	font-size: 18px;
	letter-spacing: 0;
	color: #1e1e1e;
}

.esgactivelist .maincontent .scout .recon ol li{
	width: 100%;
}

.esgactivelist .maincontent .outline .direction ol.custom-ol {
  counter-reset: item;
  list-style: none;
  padding-left: 0;
}

.esgactivelist .maincontent .outline .direction ol.custom-ol > li {
  counter-increment: item;
  margin-bottom: 5px;
}

.esgactivelist .maincontent .outline .direction ol.custom-ol > li::before {
  content: "(" counter(item) ") ";
  color: #333;
}

/* 子層 ul 不參與計數 */
.esgactivelist .maincontent .outline .direction ol.custom-ol li ul li {
  counter-increment: none;
}

.esgactivelist .maincontent .outline .direction ol.custom-ol li ul li::before {
  content: "";
}

.esgactivelist .maincontent .outline .direction .environgallery{
	display: flex;
	justify-content: flex-start;
	padding-top: 15px;
	padding-bottom: 15px;
	gap: 15px;
}

.esgactivelist .maincontent .outline .direction .environgallery .item{
	display: inline-block;
	width: calc((100% - 30px) / 3.5);
}

.esgactivelist .maincontent .outline .direction .environgallery .item span.title{
	display: inline-block;
	width: 100%;
	padding: 5px 0;
	text-align: center;
	font-size: 18px;
	font-weight: 500;
	color: #1e1e1e;
}


a.returnbtn{
	display: block;
	width: -moz-fit-content;
	width: fit-content;   /* 讓寬度依內容 */;
	padding: 10px 50px;

	background: #5dad9d;

	border-radius: 30px;

	font-size: 20px;
	letter-spacing: 0;
	color: #FFF;
	text-decoration: none;

	margin: 0 auto;
}

a.returnbtn:hover{
	background: #46887b;
	color: #FFF;
	text-decoration: none;
}


/*大於等於1921*/
@media (min-width: 1921px) {
}


/*小於等於1920*/
@media (max-width: 1920px) {

	.kvesg{
		width: 1920px;
		margin: 0 calc(50% - 960px);
	}

	.kvinesg{
		width: 1920px;
		margin-left: calc(50% - 960px);
		margin-right: calc(50% - 960px);
	}

}

/*小於等於1800*/
@media (max-width: 1800px) {
}

/*小於等於1600*/
@media (max-width: 1600px) {

	.kvesg{
		width: 1600px;
		margin: 0 calc(50% - 800px);
	}

	.kvinesg{
		width: 1600px;
		margin-top: 85px;
		margin-left: calc(50% - 800px);
		margin-right: calc(50% - 800px);
	}

	.kvesg .circleitem{
		width: calc(110px * 0.8);
		height: calc(110px * 0.8);
		font-size: 20px;
	}

	.esggoal .memo{
		padding-top: 40px;
		font-size: 18px;
	}

	.esgtactics{
		padding: 100px 0 0 0;
	}

	.esgtactics .group{
		padding-top: 40px;
	}

	.esgtactics .group .item{
		width: calc(332px * 0.8);
		padding: 0 20px;
	}

	.esgactive{
		padding: 100px 0 0 0;
	}

	.esgactive .zone{
		padding-top: 40px;
	}

	.esgactive .zone .list .item a{
		font-size: 18px;
	}

	.esgactive .zone .cover{
		padding-left: 40px;
	}

	.esgactive .more{
		padding-top: 40px;
	}

	.esgactive .more a{
		font-size: 16px;
	}

	.esgreport{
		padding: 100px 0 0 0;
	}

	.esgreport .list{
		padding: 40px 120px;
		gap: 20px;
	}

	.esgactive .zone .list .item{
		padding-bottom: 20px;
	}

	.esgreport .list .item a{
		padding: 10px 10px;
	}

	.esgreport .list .item a span.title{
		font-size: 16px;
		padding-left: 10px;
		margin-bottom: 10px;
	}

	.esgreport .list .item a .info{
		font-size: 14px;
	}

	.esgreport .list .item a .info span.download{
		padding-right: 15px;
	}

	.esgreport .list .item a .info span.download::before{
		width: 12px;
		height: 18px;
	}

	.esgibg.b1{
		width: calc(480px * 0.8);
		top: 27%;
		left: calc(50% - 920px);
	}

	.esgibg.b2{
		width: calc(400px * 0.8);
		top: 40%;
		left: calc(50% + 410px);
	}

	.esgibg.b3{
		width: calc(200px * 0.8);
		top: 56%;
		left: calc(50% - 700px);
	}

	.kvinesg .intro{
		width: 390px;
		left: calc(50% - 500px);
	}

	.kvinesg .intro span.title{
		font-size: 28px;
		padding-bottom: 6px;
	}

	.kvinesg .intro span.memo{
		font-size: 18px;
	}

	.esgactivelist .group{
		padding-top: 40px;
		gap: 20px;
	}

	.esgactivelist .group .item{
		width: calc((100% - 40px) / 3);
	}

	.esgactivelist .group .item a span.title{
		padding-top: 8px;
	}

	.esgactivelist{
		padding-bottom: 25px;
	}

	.esgactivelist .detail span.title{
		padding-bottom: 20px;
	}

	.esgactivelist .detail .cover{
		padding-bottom: 20px;
	}

	.esgactivelist .detail{
		padding-top: 40px;
	}

	.esgactivelist .detail .content{
		padding-bottom: 60px;
		font-size: 18px;
	}

	.kvinesg ul.category li{
		padding: 0 10px;
	}

	.kvinesg ul.category li a{
		width: 220px;
	}

	.esgactivelist .maincontent{
		padding: 40px 0;
		font-size: 18px;
	}

	.esgactivelist .maincontent .outline{
		padding-bottom: 40px;
	}

	.esgactivelist .maincontent .outline .icon{
		width: calc(45px + 15px);
	}

	.esgactivelist .maincontent .outline .direction span.title{
		padding: 10px 0;
		font-size: 20px;
	}

	.esgactivelist .maincontent .outline .direction .memo{
		font-size: 18px;
	}

	.esgactivelist .maincontent .leftprightt{
		gap: 20px;
		padding-top: 20px;
		padding-bottom: 40px;
	}

	.esgactivelist .maincontent .leftprightt .explain span.clarify{
		font-size: 20px;
		padding-bottom: 8px;
	}

	.esgactivelist .maincontent .leftprightt{
		font-size: 18px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th{
		padding: 10px;
		font-size: 20px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(1){
		width: 280px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(2){
		width: 260px;
	}

	.esgactivelist .maincontent table.tbthree tbody tr td{
		padding: 10px;
		font-size: 18px;
	}

	.esgactivelist .maincontent .bluegroup{
		gap: 15px;
		padding-top: 20px;
	}

	.esgactivelist .maincontent .bluegroup .item span.etitle{
		padding: 10px;
		font-size: 20px;
	}

	.esgactivelist .maincontent .bluegroup .item .instructions{
		font-size: 18px;
		padding: 10px;
	}

	.esgactivelist .maincontent .scout span.title{
		font-size: 20px;
	}

	.esgactivelist .maincontent .contactgroup a.i1{
		width: calc(410px * 0.7);
		margin-right: 10px;
	}

	.esgactivelist .maincontent .contactgroup a.i2{
		width: calc(360px * 0.7);
	}

	.esgactivelist .maincontent .leftprightt .cover{
		width: 480px;
	}

	.esgactivelist .maincontent .outline .direction .environgallery .item span.title{
		font-size: 16px;
	}

	a.returnbtn{
		padding: 8px 42px;
		font-size: 18px;
	}

}

/*小於等於1441*/
@media (max-width: 1441px) {

	.kvesg{
		width: 1442px;
		margin: 0 calc(50% - 721px);
	}

	.kvinesg{
		width: 1442px;
		margin-left: calc(50% - 721px);
		margin-right: calc(50% - 721px);
	}

}

/*小於等於1280*/
@media (max-width: 1280px) {

	.esgactivelist .maincontent .leftprightt .cover{
		width: 320px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th{
		height: 100%;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(1){
		width: 200px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(2){
		width: 220px;
	}

}

/*小於等於1160*/
@media (max-width: 1160px) {

	
}

/*小於等於1024*/
/* pad default */
@media (max-width: 1024px) {

	.esgreport .list{
		padding: 40px 0px;
	}
}

/*小於等於992*/
@media (max-width: 992px) {
}

/*小於等於960*/
@media (max-width: 960px) {

	.kvesg{
		width: 960px;
		padding-top: 60px;
		padding-bottom: 88px;
		margin: 0 calc(50% - 480px) 80px calc(50% - 480px);
	}

	.kvesg .circleitem.c1{
		top: auto;
		left: calc(50% - 194px);
		bottom: 0;
	}

	.kvesg .circleitem.c2{
		top: auto;
		left: calc(50% - 44px);
		bottom: 0;
	}

	.kvesg .circleitem.c3{
		top: auto;
		left: calc(50% + 104px);
		bottom: 0;
	}

	.kvinesg .intro{
		width: 440px;
		top: 100px;
		left: calc(50% - 220px);
	}

	.kvinesg .intro span.title{
		font-size: 32px;
	}

	.kvinesg .intro span.memo{
		font-size: 20px;
	}

	.esgtactics{
		padding: 80px 0 0 0;
	}

	.esgactive{
		padding: 80px 0 0 0;
	}

	.esgreport{
		padding: 80px 0 0 0;
	}

	.esgreport .list{
		flex-wrap: wrap;
		gap: 0;
	}

	.esgreport .list .item{
		width: 50%;
		padding: 5px;
	}

	.esgibg.b1{
		width: calc(480px * 0.6);
		top: 39%;
		left: calc(50% - 520px);
	}

	.esgibg.b2{
		width: calc(400px * 0.6);
		top: 44%;
		left: calc(50% + 210px);
	}

	.esgibg.b3{
		width: calc(200px * 0.6);
		top: 54%;
		left: calc(50% - 460px);
	}

	.kvinesg{
		width: 960px;
		margin-top: 60px;
		margin-left: calc(50% - 480px);
		margin-right: calc(50% - 480px);
	}

	.kvinesg ul.category{
		top: 52%;
	}

	.kvinesg ul.category li{
		position: absolute;
	}

	.kvinesg ul.category li:first-child{
		top: 0;
		left: calc(50% - 400px);
	}

	.kvinesg ul.category li:nth-child(2){
	    top: 50px;
	    left: calc(50% - 280px);
	}

	.kvinesg ul.category li:nth-child(3){
	    top: 100px;
	    left: calc(50% - 150px);
	}

	.kvinesg ul.category li a{
		width: 110px;
		aspect-ratio: 1 / 1;
	}

	.kvinesg ul.category li a.c1{
		background: url(../images/esg/esg_category_1_m.png);
	}

	.kvinesg ul.category li a.c1.chs, .kvinesg ul.category li a:hover.c1{
		background: url(../images/esg/esg_category_1_over_m.png);
	}

	.kvinesg ul.category li a.c2{
		background: url(../images/esg/esg_category_2_m.png);
	}

	.kvinesg ul.category li a.c2.chs, .kvinesg ul.category li a:hover.c2{
		background: url(../images/esg/esg_category_2_over_m.png);
	}

	.kvinesg ul.category li a.c3{
		background: url(../images/esg/esg_category_3_m.png);
	}

	.kvinesg ul.category li a.c3.chs, .kvinesg ul.category li a:hover.c3{
		background: url(../images/esg/esg_category_3_over_m.png);
	}

	.esgactivelist{
		padding-bottom: 20px;
	}

	.esgactivelist .group .item{
		width: calc((100% - 20px) / 2);
	}

	.esgactivelist .detail{
		padding-top: 40px;
	}

	.esgactivelist .detail span.title{
		font-size: 20px;
		padding-bottom: 10px;
	}

	.esgactivelist .detail .cover{
		padding-bottom: 10px;
	}

	.esgactivelist .detail .content{
		padding-bottom: 40px;
		font-size: 16px;
	}

	.esgactivelist .maincontent .leftprightt{
		flex-wrap: wrap;
		gap: 0;
		padding-bottom: 20px;
	}

	.esgactivelist .maincontent .leftprightt .cover{
		width: 100%;
		padding-bottom: 15px;
	}

	.esgactivelist .maincontent .leftprightt .explain span.clarify{
		font-size: 18px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th{
		font-size: 18px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(1){
		width: 150px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(2){
		width: 190px;
	}

	.esgactivelist .maincontent table.tbthree tbody tr td{
		padding: 10px;
		font-size: 16px;
	}

	.esgactivelist .maincontent .bluegroup{
		gap: 10px;
	}

	.esgactivelist .maincontent .bluegroup .item{
		width: calc((100% - 10px) / 2);
	}

	.esgactivelist .maincontent .bluegroup .item span.etitle{
		font-size: 18px;
	}

	.esgactivelist .maincontent .bluegroup .item .instructions{
		font-size: 16px;
	}

	.esgactivelist .maincontent .outline .direction .environgallery {
		flex-wrap: wrap;
	}

	.esgactivelist .maincontent .outline .direction .environgallery .item{
		width: calc((100% - 15px) / 2);
	}

}

/*小於等於768*/
@media (max-width: 768px) {
}

/*小於等於575*/
/*mobile*/
@media (max-width: 575px) {

}

@media (max-width: 480px) {

	.kvesg{
		width: 480px;
		padding-top: 60px;
		padding-bottom: 88px;
		margin: 0 calc(50% - 240px) 80px calc(50% - 240px);
	}

	.kvesg .circleitem.c1{
		left: calc(50% - 164px);
		bottom: 0;
	}

	.kvesg .circleitem.c3{
		left: calc(50% + 74px);
		bottom: 0;
	}

	.kvinesg .intro{
		width: 340px;
		top: 40px;
		left: calc(50% - 170px);
	}

	.kvinesg .intro span.title{
		font-size: 24px;
	}

	.kvinesg .intro span.memo{
		font-size: 16px;
	}

	.esggoal .memo{
		font-size: 16px;
	}

	.esgtactics{
		padding: 60px 0 0 0;
	}

	.esgtactics .group .item{
		width: 33.3333333%;
		padding: 0 5px;
	}

	.esgactive{
		padding: 60px 0 0 0;
	}

	.esgactive .zone{
		flex-direction: column-reverse;
		flex-wrap: wrap;
	}

	.esgactive .zone .list{
		width: 100%;
	}

	.esgactive .zone .list .item{
		padding-bottom: 10px;
		font-size: 16px;
	}

	.esgactive .zone .list .item a{
		padding-left: 15px;
		font-size: 16px;
	}

	.esgactive .zone .list .item a::before{
		width: 6px;
		height: 6px;
	}

	.esgactive .zone .cover{
		width: 100%;
		padding-left: 0;
		padding-bottom: 30px;
	}

	.esgactive .more{
		padding-top: 30px;
		font-size: 12px;
	}

	.esgreport{
		padding: 60px 0 0 0;
	}

	.esgreport .list .item a .info{
		font-size: 12px;
	}

	.esgreport .list .item a .info span.download::before{
		width: 8px;
		height: 12px;
	}

	.esgtransition img{
		width: 960px;
		margin: 0 calc(50% - 720px);
	}

	.esgtransition.spec img{
		width: 600px;
		margin: 0 calc(50% - 50%);
	}

	.esgibg.b1{
		width: calc(480px * 0.3);
		top: 27%;
		left: calc(50% - 220px);
	}

	.esgibg.b2{
		width: calc(400px * 0.4);
		top: 33%;
		left: calc(50% + 60px);
	}

	.esgibg.b3{
		width: calc(200px * 0.3);
		top: 42%;
		left: calc(50% - 200px);
	}

	.kvinesg{
		width: 480px;
		margin-left: calc(50% - 240px);
		margin-right: calc(50% - 240px);
	}

	.kvinesg ul.category{
		top: 55%;
	}

	.kvinesg ul.category li:first-child{
		left: calc(50% - 180px);
	}

	.kvinesg ul.category li:nth-child(2){
	    top: 15px;
	    left: calc(50% - 125px);
	}

	.kvinesg ul.category li:nth-child(3){
	    top: 35px;
	    left: calc(50% - 70px);
	}

	.kvinesg ul.category li a{
		width: 50px;
	}

	.esgactivelist{
		padding-bottom: 20px;
	}

	.esgactivelist .group .item a span.title{
		padding-top: 6px;
		font-size: 14px;
	}

	.esgactivelist .group{
		padding-top: 30px;
		gap: 10px;
	}

	.esgactivelist .group .item{
		width: calc((100% - 10px) / 2);
	}

	.esgactivelist ul.pager{
		padding: 40px 0 0 0;
	}

	.esgactivelist ul.pager li a{
		min-width: 24px;
	}

	.esgactivelist .detail{
		padding-top: 30px;
	}

	.esgactivelist .detail span.title{
		font-size: 18px;
	}

	.esgactivelist .detail .content{
		padding-bottom: 30px;
		font-size: 14px;
	}

	.esgactivelist .maincontent{
		padding: 40px 0 20px 0;
	}

	.esgactivelist .maincontent .outline{
		padding-bottom: 20px;
	}

	.esgactivelist .maincontent .outline .icon{
		width: calc(30px + 10px);
		padding-right: 10px;
	}

	.esgactivelist .maincontent .outline .direction span.title{
		font-size: 18px;
		letter-spacing: 0;
		padding: 2px 0 10px 0;
	}

	.esgactivelist .maincontent .outline .direction .memo{
		font-size: 14px;
		letter-spacing: 0;
	}

	.esgactivelist .maincontent .leftprightt{
		padding-top: 0;
		font-size: 14px;
	}

	.esgactivelist .maincontent .leftprightt .explain .item{
		padding-bottom: 10px;
	}

	.esgactivelist .maincontent .leftprightt .explain span.clarify{
		padding-bottom: 5px;
		font-size: 16px;
	}

	.esgactivelist .maincontent table.tbthree{
		border-radius: 15px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th{
		font-size: 14px;
		padding: 5px 3px;
		letter-spacing: 0;
	}

	.esgactivelist .maincontent table.tbthree tbody tr td{
		padding: 5px;
		font-size: 14px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(1){
		width: 80px;
	}

	.esgactivelist .maincontent table.tbthree thead tr th:nth-child(2){
		width: 100px;
	}

	.esgactivelist .maincontent .bluegroup{
		gap: 10px;
	}

	.esgactivelist .maincontent .bluegroup .item{
		width: calc((100% - 10px) / 2);
		border-radius: 15px;
	}

	.esgactivelist .maincontent .bluegroup .item span.etitle{
		padding: 5px;
		font-size: 13px;
	}

	.esgactivelist .maincontent .bluegroup .item .instructions{
		padding: 5px 10px;
		font-size: 14px;
	}

	.esgactivelist .maincontent .bluegroup{
		padding-top: 10px;
	}

	.esgactivelist .maincontent .contactgroup{
		padding-top: 15px;
		padding-left: 0px;
	}

	.esgactivelist .maincontent .outline .direction .memo ul{
		padding-left: 10px;
	}

	.esgactivelist .maincontent .contactgroup{
		padding-top: 10px;
	}

	.esgactivelist .maincontent .contactgroup a.i1{
		width: 50%;
		margin-right: 0px;
	}

	.esgactivelist .maincontent .contactgroup a.i2{
		width: 45%;
	}

	.esgactivelist .maincontent .scout span.title{
		font-size: 18px;
	}

	.esgactivelist .maincontent .scout{
		padding-bottom: 10px;
	}

	.esgactivelist .maincontent .scout .recon{
		font-size: 14px;
	}

	.esgactivelist .maincontent .outline .direction .environgallery .item span.title{
		font-size: 14px;
		padding: 5px 0 0 0;
	}

	a.returnbtn{
		font-size: 16px;
	}
	
}

/*小於等於414*/
@media (max-width: 414px) {
	
}

/*小於等於380*/
@media (max-width: 380px) {

}



/*小於等於350*/
@media (max-width: 350px) {

}