/* ===========================================================

	Title:					common.css
	Created:			2015-08-13
	Last Created:		2015-08-25

=========================================================== */
/*

	body
	header
	global-navigation
	globalNavi
	contens
	btPageTop
	footer-navi
	footer

=========================================================== */
/*

	body

=========================================================== */
body {
	background-color: #000000;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Arial, Helvetica, sans-serif, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #111;
	text-align: center;
	-webkit-text-size-adjust: 100%;
}
/* ===========================================================

	header

=========================================================== */
.header-fix {
	background-color: #fff;
	/*position: fixed;*/
	width: 100%;
	height: 120px;
	/*height: 90px;*/
	z-index: 100;
}
.header-fix .header {
	position: relative;
	width: 100%;
	height: 120px;
	/*height: 90px;*/
	margin: 0 auto;
	text-align: left;
	color: #111;
}

@media screen and (min-width : 1024px) {
.header-fix {
	height: 70px;
	/*height: 60px;*/
}
.header-fix .header {
	width: 1000px;
	height: 70px;
	/*height: 60px;*/
}
}
/* logo
----------------------------------------------------------- */
.header h1 {
	position: absolute;
	/*top: 40px;*/
	left: 10px;
	font-size: 10px;
	border: none;
}
@media screen and (max-width : 1024px) {
.header h1 {
	top: 40px;
}
}
@media screen and (min-width : 1024px) {
.header h1 {
	top: 0;
}
}
/* code
----------------------------------------------------------- */
.header .code {
	position: absolute;
	top: 10px;
	left: 10px;
	line-height: 20px;
	height: 20px;
	font-size: 12px;
	border: solid 1px #ddd;
	margin: 0;
	padding: 0 10px;
	display: inline-block;
	font-weight: bold;
	color: #333;
}

@media screen and (min-width : 1024px) {
.header .code {
	top: 22px;
	/*top: 17px;*/
	left: 362px;
	line-height: 1;
	font-size: 10px;
	padding: 0;
	border: none;
	width: 120px;
	height: 25px;
	overflow: hidden;
 	*text-indent: -9999px; /* for IE7/6 */
	background: url(/asset/img/ja/hed/code.png) no-repeat 0 0; /* for IE7/6 */
}
.header .code:before {
	content: url(/asset/img/ja/hed/code.png);
	display: inline-block;
	font-size: 0;
	line-height: 0;
}
}
/* huSearch
----------------------------------------------------------- */
/* Searche Part */
#huSearch {
	display: none;
	position: absolute;
	top: 15px;
	/*top: 10px;*/
	right: 95px;
}

@media screen and (min-width : 1024px) {
#huSearch {
	display: block;
}
}
#huSearch form {
	display: block;
	margin: 0px;
	padding: 0px;
	height: 40px;
	width: 280px;
	background: #e8e8e8;
}
#huSearch form p {
	padding: 0;
	margin: 0;
}
#huSearch form p input.text {
	font-size: 12px;
	line-height: 40px;
	height: 40px;
	margin: 0;
	padding: 0 0 0 10px;
	width: 200px;
	display: block;
	float: left;
	border: none;
	background: none;
}
#huSearch form p input:focus {
	outline: none !important;
	background: none;
}
#huSearch form p input.submit {
	margin: 0;
	padding: 0;
	height: 40px;
	width: 40px;
	float: right;
	background-image: url(/asset/img/common/hed/ic_search.png);
	background-position: left top;
}
/* hed-language
----------------------------------------------------------- */
ul.hed-language {
	position: absolute;
	top: 15px;
	/*top: 10px;*/
	right: 10px;
	margin: 0;
}
ul.hed-language li a {
	line-height: 20px;
	height: 20px;
	font-size: 12px;
	margin: 0;
	padding: 0 10px;
	display: inline-block;
	color: #fff;
	background-color: #000;
}
ul.hed-language li a:hover {
	background-color: #BDA00D;
	text-decoration: none;
}

@media screen and (min-width : 1024px) {
ul.hed-language li {
	margin: 0;
	padding: 0;
	width: 80px;
	height: 40px;
}
ul.hed-language li a {
	display: block;
	text-indent: -9999px;
	width: 80px;
	height: 40px;
	outline: none;
	background-repeat: no-repeat;
	background-position: left 0;
	padding: 0;
}
ul.hed-language li a:hover {
	background-position: right 0;
}
ul.hed-language li.bt-japanese a {
	background-image: url(/asset/img/en/hed/bt_japanese.png);
}
ul.hed-language li.bt-english a {
	background-image: url(/asset/img/ja/hed/bt_english.png);
}
}
/* ===========================================================

	global-navigation

=========================================================== */
/* gn-fix
----------------------------------------------------------- */
.gn-fix {
	display: block;
	width: 100%;
}
/* global-navigation
----------------------------------------------------------- */
.gn-fix .global-navigation {
	position: relative;
	width: 980px;
	height: 60px;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	color: #111;
	font-size: 11px;
	line-height: 1.2;
	word-break: keep-all;
}
.global-navigation li {
	float: left;
	position: relative;
	z-index: 1;
	margin: 0;
}
.global-navigation li a.gn-btn {
	overflow: hidden;
	display: block;
	text-indent: 100%;
	width: 163px;
	height: 60px;
	white-space: nowrap;
	background-image: url(/asset/img/ja/gn/glovalnavigation_fixed.png);
	background-repeat: no-repeat;
	color: #fff;
}
.global-navigation li#gn-ir a.gn-btn {
	overflow: hidden;
	display: block;
	text-indent: 100%;
	width: 165px;
	height: 60px;
	white-space: nowrap;
	background-image: url(/asset/img/ja/gn/glovalnavigation_fixed.png);
	background-repeat: no-repeat;
	color: #fff;
}
/* gn-btn link */
.gn-fix .global-navigation li#gn-about a.gn-btn {
	background-position: 0 0;
}
.gn-fix .global-navigation li#gn-feature a.gn-btn {
	background-position: -163px 0;
}
.gn-fix .global-navigation li#gn-portfolio a.gn-btn {
	background-position: -326px 0;
}
.gn-fix .global-navigation li#gn-esg a.gn-btn {
	background-position: -489px 0;
}
.gn-fix .global-navigation li#gn-finance a.gn-btn {
	background-position: -652px 0;
}
.gn-fix .global-navigation li#gn-ir a.gn-btn {
	background-position: -815px 0;
}
/* gn-btn over */
.gn-fix .global-navigation li#gn-about a.gn-btn:hover {
	background-position: 0 -60px;
}
.gn-fix .global-navigation li#gn-feature a.gn-btn:hover {
	background-position: -163px -60px;
}
.gn-fix .global-navigation li#gn-portfolio a.gn-btn:hover {
	background-position: -326px -60px;
}
.gn-fix .global-navigation li#gn-esg a.gn-btn:hover {
	background-position: -489px -60px;
}
.gn-fix .global-navigation li#gn-finance a.gn-btn:hover {
	background-position: -652px -60px;
}
.gn-fix .global-navigation li#gn-ir a.gn-btn:hover {
	background-position: -815px -60px;

}
/* current */
#about .gn-fix .global-navigation li#gn-about a.gn-btn {
	background-position: 0 -120px;
}
#feature .gn-fix .global-navigation li#gn-feature a.gn-btn {
	background-position: -163px -120px;
}
#portfolio .gn-fix .global-navigation li#gn-portfolio a.gn-btn {
	background-position: -326px -120px;
}
#portfolio .gn-fix .global-navigation li#gn-esg a.gn-btn {
	background-position: -489px -120px;
}
#finance .gn-fix .global-navigation li#gn-finance a.gn-btn {
	background-position: -652px -120px;
}
#ir .gn-fix .global-navigation li#gn-ir a.gn-btn {
	background-position: -815px -120px;
}
/* sub-menu */
.global-navigation li ul.sub-menu {
	display: none;
	position: absolute;
	top: 60px;
	left: 0;
	background: #000;
	margin: 0;
	padding: 0;
	display: block;
	min-width: 163px;
	border: solid 1px #303030;
	border-top: none;
}
.global-navigation li:hover ul.sub-menu {
	display: block;
}
.global-navigation li ul.sub-menu li {
	float: none;
	margin: 0;
	padding: 0;
	font-size: 13px;
	border-top: solid 1px #303030;
}
.global-navigation li ul.sub-menu li a {
	display: block;
	width: auto !important;
	padding: 13px 15px 13px 26px;
	margin: 0;
  position: relative;
}
.global-navigation li ul.sub-menu li a:before {
  position: absolute;
  top: 22px;
  left: 16px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #C9C7C5;
}

.global-navigation li ul.sub-menu li a:link, .global-navigation li ul.sub-menu li a:visited {
	text-decoration: none;
	color: #fff;
}
.global-navigation li ul.sub-menu li a:hover {
	color: #C9C7C5;
	text-decoration: none;
}
.global-navigation li ul.sub-menu li a.current {
	color: #C9C7C5;
}
/* slicknav_nav
----------------------------------------------------------- */
.slicknav_menu {
 *zoom: 1;
}
.slicknav_menu .slicknav_menutxt {
	display: block;
	line-height: 1.188em;
	float: left;
}
.slicknav_menu .slicknav_icon {
	float: left;
	margin: 0.188em 0 0 0.438em;
}
.slicknav_menu .slicknav_no-text {
	margin: 0;
}
.slicknav_menu .slicknav_icon-bar {
	display: block;
	width: 1.125em;
	height: 0.125em;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	-webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0.0);
	-moz-box-shadow: 0 0 0 rgba(0, 0, 0, 0.0);
	box-shadow: 0 0 0 rgba(0, 0, 0, 0.0);
}
.slicknav_menu:before {
	content: " ";
	display: table;
}
.slicknav_menu:after {
	content: " ";
	display: table;
	clear: both;
}
.slicknav_nav {
	clear: both;
	margin: 0;
	text-align: left;
}
.slicknav_nav a {
	color: #fff !important;
	text-decoration: none !important;
	font-size: 14px !important;
}
.slicknav_nav li {
	display: block;
	margin: 0;
	border-top: solid 1px #414f78;
}
.slicknav_nav ul {
	display: block;
	margin: 0 !important;
	background: #525766;
}
.slicknav_nav ul li {
	clear: both;
	border-top: solid 1px #6a6e79;
}
.slicknav_nav ul li a {
	font-size: 13px !important;
}
.slicknav_nav ul li:before {
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\e604";
	float: left;
	padding: 0 5px 0 10px;
	display: inline-block;
	line-height: 35px;
	height: 35px;
	font-size: 2px !important;
}
.slicknav_nav .slicknav_arrow {
	font-size: 10px;
	margin: 0;
	float: right;
	font-weight: normal;
	line-height: 40px;
	height: 40px;
	display: inline-block;
}
.slicknav_nav .slicknav_arrow i {
	line-height: 40px;
	height: 40px;
	display: inline-block;
}
.slicknav_nav .slicknav_item {
	cursor: pointer;
}
.slicknav_nav .slicknav_item a {
	display: inline;
}
.slicknav_nav .slicknav_row {
	display: block;
}
.slicknav_nav a {
	display: block;
}
.slicknav_nav .slicknav_parent-link a {
	display: inline;
}
.slicknav_brand {
	float: left;
}
.slicknav_menu {
	font-size: 16px;
	box-sizing: border-box;
	background: #0a1464;
	/*background: #1A274C;*/
	padding: 0;
}
.slicknav_menu * {
	box-sizing: border-box;
}
.slicknav_menu .slicknav_menutxt {
	color: #fff;
	font-weight: bold;
	text-shadow: 0 1px 3px #000;
}
.slicknav_menu .slicknav_icon-bar {
	background-color: #1A274C;
	/*background-color: #fff;*/
}
.slicknav_btn {
	margin: 5px 5px 6px;
	text-decoration: none;
	text-shadow: 0 0 0 rgba(255, 255, 255, 1.0) !important;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	background-color: #fff;
	/*background-color: #B99A00;*/
}
.slicknav_nav {
	color: #fff;
	margin: 0;
	padding: 0;
	font-size: 0.875em;
	list-style: none;
	overflow: hidden;
}
.slicknav_nav ul {
	list-style: none;
	overflow: hidden;
	padding: 0;
	margin: 0 0 0 20px;
}
.slicknav_nav .slicknav_row {
	padding: 0 10px;
	margin: 0;
	line-height: 40px;
	height: 40px;
}
.slicknav_nav .slicknav_row:hover {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	background: none;
	color: inherit;
}
.slicknav_nav a {
	padding: 5px 10px;
	margin: 2px 5px;
	text-decoration: none;
	color: #fff;
}
.slicknav_nav a:hover {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	background: none;
	color: #222;
}
.slicknav_nav .slicknav_txtnode {
	margin-left: 15px;
}
.slicknav_nav .slicknav_item a {
	padding: 0;
	margin: 0;
}
.slicknav_nav .slicknav_parent-link a {
	padding: 0;
	margin: 0;
}
.slicknav_brand {
	color: #fff;
	font-size: 18px;
	line-height: 30px;
	padding: 7px 12px;
	height: 44px;
}
.global-navigation {
	display: none;
}

@media screen and (min-width : 1024px) {
.gn-fix {
	background-color: #0a1464;
	/*background-color: #1a274c;*/
	top: 70px;
	width: 100%;
	height: 60px;
	z-index: 100;
}
.global-navigation {
	display: block;
}
.slicknav_menu {
	display: none;
}
i.fa.fa-caret-right {
	font-size: 14px;
	display: inline-block;
}
}
.slickmenuTop {
	display: block;
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 100;
}
/* ===========================================================

	title

=========================================================== */
#title {
	clear: both;
	text-align: center;
	padding: 0 0 20px;
}
#title h2 {
	border-bottom: solid 3px #0a1464;
	/*border-bottom: solid 3px #b99a00;*/
	border: none;
	border-left: solid 5px #0a1464;
	/*border-left: solid 5px #b99a00;*/
	/*height: 40px;*/
	line-height: 96px;
	/*padding: 15px;*/
	padding: 0 15px 0 ;
	font-size: 22px;
	font-weight: bold;
	margin: 0 auto;
	/*background-color: #0a1464;*/
	background-color: #f0f0f0;
	display: block;
	/*color: #fff;*/
	color: #000;
	text-align: left;
	background-image : url(/asset/img/common/ic/ic_blue_deer.png);
	background-repeat: no-repeat;
	background-position: right 0;
}

@media screen and (min-width : 1024px) {
	#title {
		padding: 0 0 30px;
	}
	#title h2 {
		font-size: 28px;
		/*padding: 25px 15px 25px 20px;*/
		padding: 0 15px 0 20px;
	}
	#title h2.small {
		font-size: 25px;
	}
}
/* ===========================================================

	sub-navi

=========================================================== */
.sub-navi {
	margin: 15px 10px 0;
	padding: 0;
	background: #fff;
	border-radius: 3px;
}
.sub-navi ul {
	margin: 0 10px 0;
	padding: 10px 0 5px;
	/*padding: 20px 0 10px;*/
	border-bottom: none;
	/*border-bottom: solid 1px #555;*/
	font-size: 14px;
}
.sub-navi li {
	display: inline-block;
	margin: 0 0 10px;
	padding: 0 10px;
	border-left: dotted 1px #999;
	line-height: 1.4;
}
.sub-navi li:first-child,
.sub-navi li.first-child {
	border: none;
}
.sub-navi li a {
	color: #0a1464;
	padding: 5px 10px 5px 15px;
  position: relative;
}
.sub-navi li a:before {
  position: absolute;
  top: 13px;
  left: 4px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #0A1464;
}
.sub-navi li a:hover {
	color: #0a1464;
	/*color: #B99A00;*/
	text-decoration: underline;
	/*text-decoration: none;*/
}
.sub-navi li a.current {
	padding: 5px 5px 5px 10px;
	background-color: #0a1464;
	/*background-color: #B99A00;*/
	border-radius: 3px;
	behavior: url(/asset/js/PIE.htc);
	background-image: none;
	position: relative;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.sub-navi {
		display: none;
	}
}


/* ===========================================================

	topicPath

=========================================================== */
.topic-path {
	clear: both;
	height: 20px;
	line-height: 20px;
	color: #fff;
	margin: 0 10px 15px;
	padding: 10px 0 0;
}
.topic-path ol a:link, .topic-path ol a:visited {
	color: #eee;
}
.topic-path ol a:hover {
}

.topic-path ol {
	clear: both;
	margin: 0;
	padding: 0;
	height: 20px;
	line-height: 20px;
	font-size: 11px;
}
.topic-path ol li {
	float: left;
	margin: 0;
	height: 20px;
	line-height: 20px;
}
.topic-path ol li:last-child {
	margin: 0 0 15px;
}
.topic-path ol li.ic-home {
}
.topic-path ol li a {
	background: url(/asset/img/common/ic/ic_topicpath.png) right 50% no-repeat;
	margin: 0 7px 0 0;
	padding: 0 15px 0 0;
	height: 20px;
	line-height: 20px;
}
.topic-path ol a:link, .topic-path ol a:visited {
	text-decoration: underline;
}
.topic-path ol a:hover {
	text-decoration: none;
}
@media screen and (min-width : 1024px) {
	.topic-path ol {
		font-size: 12px;
	}
}
/* ===========================================================

	contens

=========================================================== */
.contents {
	width: 100%;
}

@media screen and (min-width : 1024px) {
	.contents {
		width: 1000px;
		margin: 0 auto;
	}
}
/* main
----------------------------------------------------------- */
.main {
	margin: 0 5px 30px;
	padding: 20px;
	text-align: left;
	background: #fff;
	border-radius: 3px;
	behavior: url(/asset/js/PIE.htc);
	position: relative;
}

@media screen and (min-width : 1024px) {
	.main {
		margin: 0 10px 50px;
		padding: 50px 50px 40px;
	}
}
/* feature
----------------------------------------------------------- */

@media screen and (max-width : 1024px) {
	#efforts .sus-float {
		float: none;
		margin-left: 0px;
	}
}
@media screen and (max-width : 1024px) {
	#efforts .float-left {
		float: none !important;
	}
}

/* column
----------------------------------------------------------- */
.column-2-left,
.column-2-right,
.column-3-left,
.column-3-center,
.column-3-right,
.column-4-left,
.column-4-L-center,
.column-4-R-center,
.column-4-right,
#current-portion span {
		width: 100%;
}
@media screen and (min-width : 1024px) {
	.column-2-left {
		width: 420px;
		float: left;
	}
	.column-2-right {
		width: 420px;
		float: right;
	}
	.column-3-left {
		width: 270px;
		float: left;
	}
	.column-3-center {
		width: 270px;
		margin: 0 0 0 25px;
		float: left;
	}
	.column-3-right {
		width: 270px;
		float: right;
	}
	.column-4-left {
		width: 210px;
		float: left;
	}
	.column-4-L-center {
		width: 210px;
		/*margin: 0 0 0 25px;*/
		float: left;
		margin-left: 13px;
	}
	.column-4-R-center {
		width: 210px;
		float: left;
		margin-left: 13px;
	}
	.column-4-right {
		width: 210px;
		float: right;
	}
	.column-2w-left {
		width: 645px;
		float: left;
	}
	.column-2w-right {
		width: 645px;
		float: right;
	}
	
	.column-5-left {
		width: 420px;
		float: left;
		position: absolute;
	}
	.column-5-right {
		width: 840px;
		float: right;
	}
	
}

.column-2-left_gresb,
.column-2-right_gresb,
#current-portion span {
		width: 100%;
}
@media screen and (min-width : 1024px) {
	.column-2-left_gresb {
		width: 270px;
		float: left;
	}
	.column-2-right_gresb {
		width: 480px;
		float: right;
		text-align: left;
		margin-top: 40px;
	}

	.ecoaction {
		max-width: 620px;
		margin: 0 auto;
	}
	
	.ecoaction-text {
		max-width: 350px;
	}
	
	.ecoaction-img img{
		max-width: 80%;
	}
	.ea21 {
		text-align: left;
		padding-left: 45%;
	}
	.ea21_en {
		text-align: right;
	}

}

	.ecoaction {
		margin-bottom: 0;
	}

	.ecoaction-text p {
		margin-bottom: 0.5em;
	}
	
	@media screen and (min-width : 1024px) {
	.ecoaction-img-initiative img {
		transform: translateX(25%);
	}
  }
.en_column-2-left_gresb,
.en_column-2-right_gresb,
#current-portion span {
		width: 100%;
}
@media screen and (min-width : 1024px) {
	.en_column-2-left_gresb {
		width: 270px;
		float: left;
	}
	.en_column-2-right_gresb {
		width: 520px;
		float: right;
		text-align: left;
		margin-top: 30px;
	}
}


/* tit
----------------------------------------------------------- */
h3 {
	clear: both;
	margin: 0 0 20px;
	border-bottom: solid 3px #000;
	line-height: 1.3;
}
h3 span {
	border-bottom: solid 3px #C6A86F;
	display: inline-block;
	font-size: 20px;
	margin: 0 0 -3px;
	padding: 0 0 3px;
	font-weight: bold;
}
h4 {
	padding: 0;
	margin: 0 0 10px;
	line-height: 1.6;
	font-size: 15px;
	font-weight: bold;
}
h4 span {
	font-weight: bold;
}
h5 {
	margin: 0 0 10px;
	font-weight: bold;
	border-bottom: dotted 1px #bbb;
	padding: 0 0 3px;
}
h6 {
	font-weight: bold;
	color: #111;
	margin: 0 30px 10px;
}
em {
	color: #b99a00;
	font-weight: bold;
}
strong {
	font-weight: bold!important;
}
.read {
	margin-bottom: 15px;
	font-weight: bold;
	letter-spacing: 0.1em;
	font-size: 28px;
	line-height: 1.6;/*font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;*/
}
.ffReset {
	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace !important;
}
/* text
----------------------------------------------------------- */
p, ul, ol, dl, .indent-table {
	font-size: 13px;
	margin: 0 0 2em;
	line-height: 1.8;
}
ul li, ol li {
	margin: 0 0 1em;
}
ol ol {
	padding: 5px 0 0;
}
.txt-s {
	font-size: 12px !important;
	line-height: 1.6 !important;
}
.cont-margin {
	margin-bottom: 2.5em !important;
}
@media screen and (min-width : 1024px) {
	.cont-margin {
		margin-bottom: 3em !important;
	}
}
/* link
----------------------------------------------------------- */
a:link, a:visited {
	text-decoration: none;
	color: #092a6c;
}
a:hover {
	text-decoration: underline;
	color: #111;
}
.link-reverse a:link, .link-reverse a:visited, a.link-reverse:link, a.link-reverse:visited {
	color: #111;
	text-decoration: underline;
}
.link-reverse a:hover, a.link-reverse:hover {
	color: #092a6c;
	text-decoration: none;
}
/* page-link-target */
.page-link-target {
	margin-top: -130px !important;
	padding-top: 130px !important;
	display: block;
}
/* link-arrow */
.link-a, .link-arrow1, .link-a a {
	padding: 0 0 0 15px;
	background-image: url(/asset/img/common/ic/ic_arrow_b.png);
    background-size: 8px 12px;
    background-position: 2px 50%;
    background-repeat: no-repeat;
}
.link-b, .link-b a {
	background: url(/asset/img/common/ic/ic_arrow_d.png) 0 50% no-repeat;
	padding: 0 0 0 12px;
}
/* blank */
.blank {
	background: url(/asset/img/common/ic/ic_blank.png) right 50% no-repeat !important;
	padding: 0 18px 0 0 !important;
}
/* link-button */
.link-button-a, .link-button-b {
	height: 35px;
	line-height: 35px;
	padding: 0 40px;
	display: inline-block;
	color: #111 !important;
	font-size: 13px;
	text-align: center;
	border: solid 1px #ccc;
}
.link-button-a span {
	background-image: url(/asset/img/common/ic/ic_arrow_b.png);
    background-size: 8px 12px;
    background-position: 0 50%;
    background-repeat: no-repeat;
	padding: 0 0 0 15px;
}
.link-button-a:hover, .link-button-b:hover {
	border: solid 1px #b99a00;
	text-decoration: none;
	color: #fff !important;
}
.link-button-a:hover span {
	color: #b99a00;
}
/* dl-button */
.dl-button {
	text-align: right;
}
.dl-button a {
	display: inline-block;
  padding: 7px 10px;
  background: #C9C7C5;
  line-height: 1;
	border: 1px solid #adadad;
  border-radius: 3px;
	color: #fff;
}
.dl-button a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	text-decoration: none;
}
.dl-button img {
    vertical-align: middle;
    margin-right: 10px;
}
p.data-box {
	text-align: right;
	line-height: 1;
    padding: 7px 0;
}

@media screen and (min-width : 1024px) {
	.dl-button {
		text-align: left;
		float: left;
	}
}


/* table
----------------------------------------------------------- */
table {
	width:  100%;
	margin: 0 0 2em;
	border: solid 1px #ccc;
	line-height: 1.6;
	font-size: 13px;
}
table th {
	width: 25%;
	padding: 10px 10px;
	border: solid 1px #ccc;
	background: #F6F4EA;
}
table th .portfolio-back-color1,.portfolio-back-color2,.portfolio-back-color3,.portfolio-back-color4,.portfolio-back-color5,.portfolio-back-color6 {
	width: 16%;
	padding: 10px 10px;
	border: solid 1px #ccc;
	background: #F6F4EA;
}
.port-summary {
	/*width: -25%;*/
	padding: 10px 10px;
	border: solid 1px #ccc;
	background: #F6F4EA;
	text-align: center;
	white-space: nowrap !important;
}
.port-summary-align {
	text-align: right;
}
table tr.lastChild th {
}
table td {
	border-top: solid 1px #ccc;
	border: solid 1px #ccc;
	padding: 10px 10px;
	vertical-align: top;
}
table img {
	vertical-align: text-bottom;
}
table th.th-2nd, table tr.th-2nd th {
	background: #f0f0f0 !important;
}
table td.td-2nd {
	vertical-align: middle;
	text-align: center;
	background: #f9f9f9;
}
table.td-padding-mini td {
	padding: 5px 10px;
}
table.padding-mini th, table.padding-mini td {
	padding: 5px 10px;
}
table .total th, table .total td, table .total {
	background: #efefef;
}
/* scroll-table */
.table-wrap {overflow: auto; position:relative;}
.scroll-table th,
.scroll-table td {
	white-space: nowrap;
}
.scroll-table-coution {
	margin: 0 0 5px;
	font-size: 11px;
	color: #999;
	padding: 0 0 0 23px;
	background-image: url(/asset/img/common/ic/ic_scroll_side.png);
    background-size: 18px 7px;
    background-position: 0 50%;
    background-repeat: no-repeat;
}
@media screen and (min-width : 1024px) {
	.scroll-table th,
	.scroll-table td {
		white-space: inherit;
	}
	.scroll-table-coution { display: none;}
}
/* responsive-table */
@media screen and (max-width : 767px) {
	.responsive-table {
		border: none;
		border-top: solid 1px #ddd;
	}
	.responsive-table th {
		display: block;
		width: auto;
		border-top: none;
	}
	.responsive-table td {
		display: block;
		width: auto;
		border-top: none;
	}
}

/* th-top */
table.th-top th {
	width: auto;
	text-align: center;
}
table.th-top td {
}
table.th-top th.firstChild, table.th-top td.firstChild {
}
table.th-top th.firstChild-none {
	border-left: solid 1px #fff !important;
}
table.th-top td.firstChild-none {
	border-left: solid 1px #ccc !important;
}

/* img
----------------------------------------------------------- */
.img img,
.img {
	width: 100%;
	height: auto;
}
.responsive-img img,
img.responsive-img {
	width: 100%;
	max-width: 720px;
	height: auto;
}
@media screen and (min-width : 1024px) {
	.responsive-img img,
	img.responsive-img {
		width: auto;
		height: auto;
		max-width: 100%;
	}
}

.responsive-img_gresb_public img,
img.responsive-img_gresb_public {
	width: 100%;
	max-width: 720px;
	height: auto;
}
@media screen and (min-width : 1024px) {
	.responsive-img_gresb_public img,
	img.responsive-img_gresb_public {
		width: auto;
		height: auto;
		max-width: 100%;
		margin-left: 0px;
	}
}

/* responsive-margin
----------------------------------------------------------- */
@media screen and (max-width: 767px) {
	.responsive-margin,
	table.responsive-margin {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* responsive
----------------------------------------------------------- */
@media screen and (max-width: 767px) {
	.responsive {
		margin-left: 0 !important;
		margin-right: 0 !important;
		clear: both !important;
		float: none !important;
		width: 100% !important;
	}
}
/* ===========================================================

	bt-pagetop

=========================================================== */
body .bt-pagetop {
	clear: both;
	width: 40px;
	height: 40px;
	margin: 0;
	display: none;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 999;
	cursor: pointer;
}
.bt-pagetop a {
	display: block;
	text-indent: -9999px;
	width: 40px;
	height: 40px;
	outline: none;
	background-image: url(/asset/img/common/ic/ic_pagetop.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
}
.bt-pagetop a:hover {
}
/* ===========================================================

	footer-navi

=========================================================== */
.footer-navi {
	display: none;
	clear: both;
	width: 100%;
	text-align: center;
	padding: 30px 0 30px;
	background: #f1f1f1;
}
.footer-navi-inner {
	clear: both;
	width: 1000px;
	margin: 0 auto;
	text-align: left;
}
.footer-navi-inner:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.footer-navi-inner {
	zoom: 1;
}
.footer-navi .box {
	float: left;
	display: inline;
	width: 163px;
	/*width: 196px;*/
}
.footer-navi #fot-navi-about {
	margin: 0 0 0 10px;
}
.footer-navi #fot-navi-feature {
}
.footer-navi #fot-navi-portfolio {
}
.footer-navi #fot-navi-esg {
}
.footer-navi #fot-navi-finance {
}
.footer-navi #fot-navi-ir {
}
.footer-navi h3 {
	padding: 0;
	margin: 0 30px 0 0;
	border: none;
	background: none;
	overflow: inherit;
	font-size: 13px;
	height: 25px;
	line-height: 25px;
}
.footer-navi h3 a {
}
.footer-navi h3 a:link, .footer-navi h3 a:visited {
	text-decoration: none;
	color: #333;
	font-weight: bold;
}
.footer-navi h3 a:hover {
	text-decoration: none;
	color: #0A1464;
}
.footer-navi ul {
	font-size: 12px;
	line-height: 1.3;
	margin: 0 20px 0 0;
	padding: 0;
}
.footer-navi ul li {
	margin: 0 0 2px;
	overflow: hidden;
}
.footer-navi ul a {
	padding: 2px 0 2px 12px;
	display: block;
  position: relative;
}
.footer-navi ul a:before {
  position: absolute;
  top: 6px;
  left: 0;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #0A1464;
}
.footer-navi a:link, .footer-navi a:visited {
	text-decoration: none;
	color: #111;
}
.footer-navi a:hover {
	text-decoration: none;
	color: #0A1464;
}
.footer-navi a.current {
	color: #0A1464;
	font-weight: bold;
}

@media screen and (min-width : 1024px) {
	.footer-navi {
		display: block;
	}
	.footer-navi-inner {
		width: 1000px;
	}
}
/* ===========================================================

	footer

=========================================================== */
.footer {
	clear: both;
	width: 100%;
	padding: 25px 0;
	overflow: hidden;
	color: #fff;
	border-top: solid 1px #555;
}
.footer-inner {
	position: relative;
	clear: both;
	width: 100%;
	margin: 0 auto;
}
.footer ul {
	margin: 0;
	padding: 10px 10px 0;
	text-align: left;
	overflow: hidden;
	font-size: 11px;
	line-height: 1;
	width: 825px;
}
.footer ul li {
	display: inline-block;
	margin: 0 0 10px;
	padding: 0 10px;
	border-left: solid 1px #999;
}
.footer ul li:first-child {
	padding: 0 10px 0 0;
	border-left: none;
}
.footer ul li a {
	color: #fff;
}
.footer ul li a:link, .footer ul li a:visited {
	text-decoration: none;
	color: #fff;
}
.footer ul li a:hover {
	color: #666;
}
.footer ul li a.current {
	color: #b99a00;
	font-weight: bold;
}
.footer p {
	margin: 0;
}
.footer p.copy {
	text-align: left;
	clear: both;
	font-size: 10px;
	line-height: 1;
	padding: 10px 10px 10px;
}
.footer p.fot-banner {
	text-align: center;
	padding: 10px;
}
.footer p.fot-banner .event-banner {
	display: none;
}
@media screen and (min-width : 1024px) {
.footer {
	border: none;
}
.footer-inner {
	width: 1100px;
	text-align: center;
}
.footer ul {
}
.footer p.copy {
	padding: 0 10px 10px;
}
.footer p.fot-banner {
	position: absolute;
	top: -15px;
	right: 0px;
	z-index: 1;
}

}

.smp-space {
	display: none;
	/* line-height: 0; */
}

@media screen and (min-width: 1024px) {
	.smp-space {
		display: block; 
	}
}
@media screen and (min-width: 1024px) {
	.column-2-right_gresb_en{
		width: 260px;
		float: right;
		text-align: left;
		margin-left: 40px;
	}
}

@media screen and (min-width: 1024px) {
.esg_index_background2 {
    width: 600px;
    margin: 0 100px 0 152px;
	}
}
@media screen and (min-width: 1024px) {
	.column-2-left_gresb_ja {
		width: 310px;
		float: left;
	}
}
@media screen and (min-width: 1024px) {
	.column-2-right_gresb_ja {
		width: auto;
		float: left;
		text-align: left;
		margin-left: 85px;
	}
}
@media screen and (min-width: 1024px) {
	.column-2-right_gresb_en {
		width: auto;
		float: right;
		text-align: left;
		margin-right: 10px;
		}
}


@media screen and (min-width: 1024px) {
	.esg_energy_saving {
		display: flex;
		}
	.scenario {
		width: 750px !important;
	}	
	}
@media screen and (max-width : 767px) {
	
}