@charset "utf-8";
/* CSS Document */


/*環境報告カレント矢印*/


.tabBlock{
	margin: 20px 0 40px;
}

.tabBlock ul{
	background	: url(../img/border_contribution_001.gif) repeat-x center bottom;
	clear			: both;
	overflow		: hidden;
}

.tabBlock ul li{
	float: left;
	margin-right	: 10px !important;
}

.tabBlock ul li a:hover{
	opacity: 1 !important;
}

.sub_nav02 ul li{
	margin-bottom: 0px;
}

.hd08 span{
	font-weight: normal;
}

.hd_ttl{
	border: none;
	padding: 0;
}

.olStyle01{
	margin: 0 0px 0px 26px;
}

/*ul li*/
.ulStyle04{
	margin: 20px 0;
}

.ulStyle04 li{
	float: none !important;
	text-align: left;
	display: block !important;
	margin-bottom: 10px;
	margin-right: 0 !important;
	text-indent: -1em;
	padding-left: 1em;
}

.ulStyle05{
	float: left;
	margin: 20px 15px 20px 0px;
}

.ulStyle05 li{
	float: none !important;
	text-align: left;
	display: block !important;
	margin-bottom: 10px;
	margin-right: 0 !important;
	text-indent: -1em;
	padding-left: 1em;
}

.ulStyle06{
	float: left;
	margin: 0px 25px 0 0;
}

.ulStyle06 li{
	list-style: none;
	float: none !important;
	text-align: left;
	margin: 0 15px 0px 5px;
	margin-right: 0 !important;
	text-indent: -0.8em;
	padding-left: 1em;
}
	.ulStyle06 li::before {
		content: '';
		width: 10px;
		height: 10px;
		display: inline-block;
		border-radius: 100%;
		background: #0f2188;
		position: relative;
		left: -5px;
		top: 0px;
	}
	
.ulStyle06 li:last-child{
	display:list-item !important;
}

.ulStyle06 li.listnone:before{
	content: inherit;
}

.ulStyle07{
	margin: 20px 0;
}

.ulStyle07 li{
	float: none !important;
	text-align: left;
	display: block !important;
	margin-bottom: 10px;
	margin-right: 0 !important;
	text-indent: -1.9em;
	padding-left: 1.9em;
}


.tablegroup{
	overflow: hidden;
	margin-bottom: 20px;
}

.wid35{
	width: 35% !important;
}

.hd_other{
	font-weight: bold;
	text-indent: inherit !important;
	margin-bottom: 10px;
}

body p{
	line-height: 1.8;
}

.mainBox p{
	font-size: 15px;
	text-align: left;
	text-indent: 1em;
}

.txt_areaBox{
	overflow: hidden;
	margin-top: 20px;
}

	.txt_area{
		float: left;
		width: 632px;
		text-align: left;
		line-height: 1.7;
	}
	
	.img_area{
		float: left;
		margin-left: 44px;
		width: 230px;
	}
		.img_area p{
			text-align: left;
			margin-bottom: 10px;
		}

.savingBox{
	border: 1px solid #0f2188;
	margin: 30px 0 40px;
	padding: 20px;
	position: relative;
	overflow: hidden;
}

.saving_area01{
	width: 630px;
	float: left;
}

.saving_area01 p{
	line-height: 1.8;
}

.saving_area02{
	position: absolute;
	bottom: 0;
	right: 10px;
}

	.savingBox .saving_bg{
		background: url(../../social/report3/img/saving_img_01.gif) no-repeat left top;
		position: absolute;
		top:0;
		left:0;
		width: 154px;
		height:34px;
	}
	
	.savingBox span.jirei{
		color: #fff;
		padding: 8px 10px 0 0px;
		display: block;
		font-size: 16px;
		font-weight: bold;
	}
	
	.saving_l{
		width: 600px;
		float: left;
		margin-top: 25px;
		
	}
		.saving_l .ttl_txt{
			font-size: 124%;
			font-weight: bold;
			margin-bottom: 10px;
			text-indent: 0 !important;
		}
		
	.saving_r{
		float: right;
		margin-top: 25px;
	}

span.fnt_s{
	font-size: 85%;
}

.energybox li span{
	background: none !important;
	color: #333 !important;
	font-weight: normal !important;
	font-size: 116% !important;
	padding: 5px 0 !important;
	text-align: left;
}

.energy_grapharea{
	margin: 30px 0 40px;
}

.energy_grapharea .flt_r .ulStyle04 {
	width: 465px;
	margin: 0;
}

.social_Box .flt_l{
	width:517px;
}

.social_Box .flt_r{
	width:412px;
}

.social_Box .flt_r .social_pic01{
	overflow: hidden;
}

.social_Box .flt_r .social_pic01 li{
	float: left;
	margin: 0;
}

.social_pic01 li span{
	background: none !important;
	font-size: 1.2rem !important;
	color: #333 !important;
	text-align: left !important;
	padding: 8px 0 !important;
	font-weight: normal !important;
}

.colum2Box{
	overflow: hidden;
	margin: 20px 0;
}

	.colum2Box .flt_l{
		width: 430px;
	}
	
	.colum2Box .flt_l .s_hd{
		text-indent: 0 !important;
		font-weight:bold;
		font-size: 108%;
	}
	
	.colum2Box .flt_r p{
		text-indent: 0 !important;
		font-weight: bold;
		font-size: 108%;
		padding-bottom: 10px;
	}

	.colum2Box .flt_l.jinzai{
		width: 405px;
	}

.saving_r span{
	text-align: left;
	padding: 10px 0;
	display: block;
}

.bd_top{
	border-top: 1px solid #999999;
}


.colum2Box.report2{
	overflow: hidden;
	margin: 20px 0;
}

	.colum2Box.report2 .flt_l{
		width: 680px;
	}

	.colum2Box.report2 .flt_r{
		width: 236px;
	}
	.colum2Box.report3 .flt_l{
		width: 520px;
	}
	.colum2Box.report3 .flt_r{
		width: 420px;
	}

.colum2Box.report2_01{
	overflow: hidden;
	margin: 20px 0;
}

	.colum2Box.report2_01 .flt_l{
		width: 780px;
	}

	.colum2Box.report2_01 .flt_r{
		width: 142px;
	}
	
	.colum2Box.report2_01 .flt_r span{
		display: block;
		text-align: left;
		padding: 10px 0;

	}
	

.colum2Box.report2_02{
	overflow: hidden;
	margin: 0px;
}

	.colum2Box.report2_02 .flt_l{
		width: 384px;
	}

	.colum2Box.report2_02 .flt_r{
		width: 550px;
	}
	
.colum2Box.report2_02 .energybox li span{
	font-weight: bold !important;
	color: #0f2188 !important;
}

.colum2Box.report2_03{
	overflow: hidden;
	margin: 20px 0;
}

	.colum2Box.report2_03 .flt_l{
		width: 610px;
	}

	.colum2Box.report2_03 .flt_r{
		width: 320px;
	}
	
	.colum2Box.report2_03 .flt_r span{
		text-align: left;
		padding: 10px 0;
		display: block;
	}
	
	.columInner.flt_l{
		width: 232px !important;
	}
		.columInner.flt_l .hd01 span.s_txt{
			font-size: 90%;
			letter-spacing: -0.5px;
			font-weight: normal;
		}
	
	.columInner.flt_r{
		float: left;
		width: 360px !important;
	}

.colum2Box.report2_04{
	overflow: hidden;
	margin: 20px 0;
}

	.colum2Box.report2_04 .flt_l{
		width: 520px;
	}

	.colum2Box.report2_04 .flt_r{
		width: 400px;
	}

.colum2Box.report2_05{
	overflow: hidden;
	margin: 20px 0;
}

	.colum2Box.report2_05 .flt_l{
		width: 640px;
	}

	.colum2Box.report2_05 .flt_r{
		width: 290px;
	}

	.colum2Box.report2_05 .flt_r span{
		display:block;
		text-align: left;
		padding-top: 20px;
		text-indent: -1em;
		padding-left: 1em;
	}
	
	.colum2Box.report2_05 .flt_r .retir_txt{
		line-height: 1.5;
	}
	
.colum2Box.report2_06{
	overflow: hidden;
	margin: 20px 0;
}

	.colum2Box.report2_06 .flt_l{
		width: 410px;
		margin-right: 20px;
	}

	.colum2Box.report2_06 .flt_r{
		width: 500px;
	}
	
	.colum2Box.report2_06 .flt_r .tableStyle03 td .ulStyle01{
		margin: 0;
	}

	.colum2Box.report2_06 .flt_r span{
		display:block;
		text-align: left;
		padding-top: 20px;
		text-indent: -1em;
		padding-left: 1em;
	}
	
.colum2Box.report2 .flt_r ul li span{
	background: none;
	color: #333;
	text-align: left;
	font-size: 100%;
	font-weight: normal;
	padding: 10px 0;
}

.saving_l.longbox{
	width: 556px;
}

.saving_l.shortbox{
	width: 500px;
}

.colum2Box.report2_03 .flt_r.txt_l .hd01 span{
	display: inline-block;
	padding-bottom: 0;
}

.colum2Box.report2_03 .flt_r.txt_l p{
	font-weight: normal;
}

.pic3Box{
	margin-top: 20px;
	overflow: hidden;
}
	.pic3Box figure{
		float:left;
		margin-right: 10px;
	}

	.pic3Box figure:last-child{
		float:left;
		margin-right: 0px;
	}

	.pic3Box figure span{
		display: block;
		text-align: left;
		padding: 8px 0;
	}

.employee_pic{
	overflow: hidden;
	margin-top: 20px;
}

	.employee_pic .flt_l span,
	.employee_pic .flt_r span{
		display: block;
		padding: 10px 0;
		text-align: left;
	}
	
.employeeplayer_pic{
	overflow: hidden;
}

.employeeplayer_pic .flt_l:nth-child(2){
	margin: 0 10px;
}
	.employeeplayer_pic .flt_l span,
	.employeeplayer_pic .flt_r span{
		display: block;
		padding: 10px 0;
		text-align: left;
	}

/*テーブル*/
.tableStyle03{
	border-collapse		: separate;
	*border-collapse	: collapse; /* for IE6,7 */
	border-spacing		: 0;
	empty-cells			: show;
	border-top			: 1px solid #5185c5;
	border-right		: none;
	border-bottom		: none;
	border-left			: 1px solid #5185c5;
	margin				: 0 auto 10px;
	width				: 100%;
}

	.tableStyle03 th,
	.tableStyle03 td {
		border-top		: none;
		border-right	: 1px solid #5185c5;
		border-bottom	: 1px solid #5185c5;
		border-left		: none;		
		font-weight		: normal;
	}

	.tableStyle03 th{
	margin		: 0;
	padding		: 10px;
	background-color: #f0f3fa;
	}

	.tableStyle03 td{
		padding		: 5px 10px;
		text-align	: left;
		line-height	: 1.6;
	}
	
		.tableStyle03 th:first-child{
			width: 25%;
		}

	.tableStyle03 td.table_bg03,
	.tableStyle03 th.table_bg03{
		background: #e6e6e6;
	}
	
	.tableStyle03 td .ulStyle01{
		margin: 0 15px 0 10px;
	}
	.tableStyle03 td .ulStyle01 li:last-child{
		display: list-item;
	}
	
.tableStyle03.ir_activity ul{
	margin:0 10px 0 6px;
}

.tableStyle03.ir_activity ul li{
	margin:0 0 0 15px;
}

.tableStyle04{
	display: table-cell;
	*border-collapse	: collapse; /* for IE6,7 */
	border-spacing		: 0;
	empty-cells			: show;
	border-top			: 1px solid #000000;
	border-right		: none;
	border-bottom		: none;
	border-left			: none;
	margin				: 0 auto 10px;
	width				: 100%;
}

	.tableStyle04 th,
	.tableStyle04 td {
		border-top		: none;
		border-right	: 1px solid #000000;
		border-bottom	: 1px solid #000000;
		border-left		: none;		
		font-weight		: normal;
	}

	.tableStyle04 thead th{
	margin		: 0;
	padding		: 10px;
	background-color: #EAF6FD;
	}

	.tableStyle04 thead td{
		padding		: 10px;
		text-align	: left;
		line-height	: 1.6;
		background-color:#C9CACA;
	}
	.tableStyle04 tbody th{
	margin		: 0;
	padding		: 0 30px 0;
	background-color: #EAEFF9;
	}

	.tableStyle04 tbody td{
		padding		: 10px 10px;
		text-align	: left;
		line-height	: 1.6;
		background-color:#FFF;
	}
	.tableStyle04 tbody td span{
		font-size:15px;
	}
	
	.tableStyle04 td.table_bg04{
		background: #e6e6e6;
	}
	
	.tableStyle04 td .ulStyle01{
		margin: 0 15px 0 0;
		list-style-type: disc;		}
	.tableStyle03 td .ulStyle01 li:last-child{
		display: list-item;
	}
.tableStyle05{
	border-collapse		: separate;
	*border-collapse	: collapse; /* for IE6,7 */
	border-spacing		: 0;
	empty-cells			: show;
	border-top			: 1px solid #5185c5;
	border-right		: none;
	border-bottom		: none;
	border-left			: 1px solid #5185c5;
	margin				: 0 auto 10px;
	width				: 100%;
}

	.tableStyle05 th,
	.tableStyle05 td {
		border-top		: none;
		border-right	: 1px solid #5185c5;
		border-bottom	: 1px solid #5185c5;
		border-left		: none;		
		font-weight		: normal;
	}

	.tableStyle05 th{
	margin		: 0;
	padding		: 10px;
	background-color: #f0f3fa;
	}

	.tableStyle05 td{
		padding		: 5px 10px;
		text-align	: left;
		line-height	: 1.6;
	}
	.tableStyle05 .center{
		text-align	: center;
	}
	.tableStyle05 td.table_bg03,
	.tableStyle05 th.table_bg03{
		background: #e6e6e6;
		text-align:center!important;
	}
	
	.tableStyle05 td .ulStyle01{
		margin: 0 15px 0 0px;
	}
	.tableStyle05 td .ulStyle01 li:last-child{
		display: list-item;
		margin-bottom:0;
	}
	
.tableStyle05.ir_activity ul{
	margin:0;
}

.tableStyle05.ir_activity ul li{
	margin:0;
}
	
	
.vertical {
  writing-mode: tb-lr;
  writing-mode: vertical-lr;
  -webkit-writing-mode: vertical-lr;
  letter-spacing: 0.2em;
  margin-left:10px;
  font-size:15px;
  }
.blue{
	color:#004098;
	font-size:14px!important;
	line-height: 1.4 !important;}
.mini_ta{
	border-spacing		: 0;
	empty-cells			: show;
	border-top			: 1px solid #000000;
	border-right		: none;
	border-bottom		: none;
	border-left			: none;
	margin				: 0 auto ;
	width				: 100%;
}

	.mini_ta td th,
	.mini_ta td {
		border-top		: none;
		border-right	: 1px solid #000000;
		border-bottom	: 1px solid #000000;
		border-left		: none;		
		font-weight		: normal;
	text-align:center;
	}
	.mini_ta td:last-child {
		border-right	: none;
	text-align:center;
	}
	.mini_ta thead th{
	background:#EFEFEF;
	text-align:center;
	padding:5px 0;
	}
.mini_ta thead td{
	background:#EAEFF9;
	padding:0;
	text-align:center;
	padding:5px 0;

}
.mini_ta tbody th{
	background:#EFEFEF;
	padding:0;
	padding:5px 0;
	}
.mini_ta tbody td{
	background:#FFF;
	padding:0;
	text-align:center;
	padding:5px 0;
	}
/*テキスト中の文字*/	
.text_box{
	position:relative;
}
.text_ph{
	position:absolute;
	right:0px;
}


ul li span.social04{
	font-size:112%;
	background:none;
	color:#000;
	font-weight:normal;
	text-align:left;
}

/*見出し*/
.contribution_box.flex{
	justify-content: left !important;
}

.contribution_box.spStyle{
	display: none;
}

.contribution_box.flex figure{
	margin-right: 30px;
}

.contribution_box.flex .middle{
	position: relative;
	width: 100%;
}

.contribution_box.flex .middle .icon{
	position: absolute;
	top:0;
	right: 0
}

.contribution_box.flex .middle .icon img{
	margin-right: 5px;
}
.contribution_box.flex .middle .icon img:last-child{
	margin-right: 0;
}

/*SPナビゲーション*/
/*subnav04*/
	.sub_nav04{
		margin-top: 30px;
		display: block;
	}
	
	.sub_nav04 > ul{
		border: 1px dotted #bfbfbf;
		padding: 10px 15px;
	}
	
		.sub_nav04 > ul li{
			margin: 0 !important;
			width: 100%;
			text-align: left;
		}
		
		.sub_nav04 > ul li a{
			color: #333;
			display: inline-block;
			padding: 10px 0 10px;
		}
		.sub_nav04 > ul li a:before{
			content:"▶";
			margin-right: 5px;
			color:#0f2188;
			font-size: 70%;
		}
#disaster .sub_nav04 .disaster a,#global .sub_nav04 .global a,#office .sub_nav04 .office a{
	font-weight: bold;
	color: #0f2188;
}

@media screen and (max-width: 956px) {
	.tabBlock{
		margin: 0 auto 30px;
	}
	
	.contribution_box{
		margin-top: 10px !IMPORTANT;
	}
	
	.ul_contribution li{
		float	: left;
		margin	: 0 0 10px 0;
	}
	
	.icon_area{
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}
	
	.tabBlock .spStyle{
		background: none;
		display: flex !important;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	.tabBlock .spStyle li{
		width: 48%;
		border: 2px solid #a5a5a5;
		background: #a5a5a5;
		margin-right: 0 !Important;
		margin-bottom: 10px;
	}
	
	.tabBlock .spStyle li:nth-child(2){
		border: 2px solid #f79e28;
		background: #f79e28;
	}
	.tabBlock .spStyle li:nth-child(3){
		border: 2px solid #a3c42a;
		background: #a3c42a;
	}
	.tabBlock .spStyle li:nth-child(4){
		border: 2px solid #4cbced;
		background: #4cbced;
	}
	.tabBlock .spStyle li:nth-child(5){
		border: 2px solid #36baa0;
		background: #36baa0;
	}
	
	.tabBlock .spStyle li.on{
		border: 2px solid #a5a5a5;
		background: #fff;
	}
		.tabBlock .spStyle li.on a{
			color: #a5a5a5;
			font-weight: bold;
			text-shadow: none;
		}
	.tabBlock .spStyle li.on:nth-child(2){
		border: 2px solid #F8B856;
		background: #fff;
	}
		.tabBlock .spStyle li.on:nth-child(2) a{
			color: #eda63b;
			font-weight: bold;
			text-shadow: none;
		}
	
	.tabBlock .spStyle li.on:nth-child(3){
		border: 2px solid #AACF52;
		background: #fff;
	}
		.tabBlock .spStyle li.on:nth-child(3) a{
			color: #a2ca2c;
			font-weight: bold;
			text-shadow: none;
		}
	
	.tabBlock .spStyle li.on:nth-child(4){
		border: 2px solid #81C6EE;
		background: #fff;
	}
		.tabBlock .spStyle li.on:nth-child(4) a{
			color: #65acd7;
			font-weight: bold;
			text-shadow: none;
		}
	
	.tabBlock .spStyle li.on:nth-child(5){
		border: 2px solid #85CBBF;
		background: #fff;
		text-shadow: none;
	}
	
		.tabBlock .spStyle li.on:nth-child(5) a{
			color: #44bfb4;
			font-weight: bold;
			text-shadow: none;
		}
	
	.tabBlock .spStyle li a{
		display: block;
		padding: 15px;
		font-size: 16px;
		color: #fff;
		font-weight: bold;
		/*text-shadow: 1px 1px 1px #c6c6c6;*/
	}
	
	.contribution_box.flex.pcStyle{
		display: none;
	}
	.contribution_box.spStyle{
		display: block;
		margin-bottom: 0;
	}

/*SPナビゲーション*/
/*subnav04*/
	
		.sub_nav04 > ul li a{
			color: #333;
			display: inline-block;
			padding: 10px 0 10px;
			width: 100%;
		}
}