@charset "utf-8";

/* ===========================================================



	Title:	common.css

	Created:	2016-10-26



=========================================================== */

/*



	body

	header

	global-navigation

	contens

	topicpath

	main

	aside

	btPageTop

	footer



=========================================================== */

/*



	body



=========================================================== */

html {

	font-size: 62.5%

}

body {

	font-family: "メイリオ", Meiryo, "游ゴシック", "YuGothic", sans-serif;

	font-weight: 500;

	color: #111;

	text-align: center;

	font-size: 13px;

	font-size: 1.3rem;

	-webkit-text-size-adjust: 100%;

}

html * {

	max-height: 999999px;

} /* Chrome font size adjust  */



/* ===========================================================



	header



=========================================================== */

header {

}

/* header

----------------------------------------------------------- */

.header {

	position: relative;

	width: 100%;

	min-width: 1200px !important;

	height: 80px;

	background-color: #fff;

	z-index: 99999;

	border-bottom: solid 1px #ddd;

}

@media screen and (max-width: 1024px) {

.header {

	width: 100%;

	min-width: 100% !important;

	height: 130px;

}

}

/* logo

----------------------------------------------------------- */

.header h1 {

	float: left;

	margin: 0;

	padding: 21px 0 0 15px;

	font-size: 11px;

}

@media screen and (max-width: 1024px) {

.header h1 {

	float: none;

	margin: 0;

	padding: 50px 0 0 0;

	text-align: center;

}

}

/* code

----------------------------------------------------------- */

.header .code {

	float: left;

	margin: 20px 0 0 20px;

	padding: 0;

	width: 92px;

	height: 36px;

	border: solid 1px #ddd;

	text-align: center;

}

.header .code span {

	font-size: 11px;

	display: block;

	line-height: 15px;

	padding: 3px 0 0;

}

@media screen and (max-width: 1024px) {

.header .code {

	float: none;

	width: 100%;

	height:initial;

	border: none;

	display: block;

	text-align: center;

	margin: 0;

}

.header .code span {

	font-size: 10px;

	height: 20px;

	line-height: 19px;

	display: inline-block;

	margin: 5px auto 0 ;

	padding: 0 10px;

	border: solid 1px #ddd;

}

.header .code span br {

	display: none;

}

}



/* hed-language

----------------------------------------------------------- */

.header ul.hed-language {

	position: absolute;

	top: 0;

	right: 0;

	margin: 0;

	font-size: 12px;

	font-size: 1.2rem;

}

ul.hed-language li {

	margin: 0;

}

ul.hed-language li a {

	display: block;

	width: 80px;

	height: 80px;

	line-height: 80px;

	text-align: center;

	color: #fff;

	background-color: #005bac;

}

ul.hed-language li a:hover {

	opacity: 0.8;

	text-decoration: none;

}

@media screen and (max-width: 1024px) {

.header ul.hed-language {

	position: fixed;

	top: 0;

	right: 40px;

	z-index: 999999;

	font-size: 11px;

	font-size: 1.1rem;

}

ul.hed-language li a {

	width: 40px;

	height: 35px;

	line-height: 35px;

}

}

/* header-search

----------------------------------------------------------- */

.header-search {

	position: absolute;

	top: 0;

	right: 80px;

}

.header-search p {

	display: block;

	width: 80px;

	height: 80px;

	margin: 0;

	cursor: pointer;

	background-color: #e60012;

	background-image: url(/assets/img/common/ic/ic_search_a.png);

	background-size: 12px 12px;

	background-repeat: no-repeat;

	background-position: 50% 49%;

	/*　Scott Kellum Method */

	overflow: hidden;

	text-indent: 100%;

	white-space: nowrap;

}

.header-search p:hover {

	opacity: 0.5;

}

.header-search form {

	display: none;

	height: 80px;

	line-height: 80px;

	width: 680px;

	background-color: #e60012;

	position: absolute;

	top: 0;

	right: 0;

	z-index: 100;

}

.header-search form input[type="text"] {

	font-size: 14px;

	font-size: 1.4rem;

	height: 80px;

	line-height: 80px;

	margin: 0;

	padding: 0 30px;

	width: 660px;

	display: block;

	float: left;

	border: none;

	background: none;

	color: #fff;

}

.header-search form input:focus {

	outline: none !important;

	background: none;

}

.header-search form input[type="submit"] {

	margin: 0;

	padding: 0;

	height: 80px;

	line-height:80px;

	width: 15px;

	float: right;

	border: none;

	background-color: inherit;

	/*　Scott Kellum Method */

    overflow: hidden;

    text-indent: 100%;

    white-space: nowrap;

}



@media screen and (max-width: 1024px) {

.header .header-search {

	position: fixed;

	top: 0;

	right: inherit;

	left: 0;

	z-index: 999999;

}

.header-search p {

	display: none;

}

.header-search form {

	display: block;

	height: 35px;

	line-height: 35px;

	width: 200px;

	background-color: #f9f9f9;

	position: relative;

}

.header-search form input[type="text"] {

	height: 35px;

	line-height: 35px;

	width: 160px;

	padding: 0 10px;

	color: #111;

}

.header-search form input[type="submit"] {

	height: 35px;

	line-height: 35px;

	width: 40px;

	background-repeat: no-repeat;

	background-position: 50% 50%;

	background-image: url(/assets/img/common/ic/ic_search_b.png);

	background-size: 12px 12px;

	border-right: solid 1px #ddd;

}

}

/* ===========================================================



	global-navigation



=========================================================== */

nav {

}

.header .global-navigation {

	position: absolute;

	top: 0;

	right: 160px;

}

.global-navigation ul.gn {

	display: table;

	table-layout: fixed;

	width: 590px;

	min-width: 590px !important;

	margin: 0;

}

.global-navigation > ul.gn > li {

	position: relative;

	display: table-cell;

	vertical-align: middle;

	margin: 0;

}

.global-navigation ul.gn > a {

	display: none;

}

.global-navigation ul.gn a:hover {

	text-decoration: none;

}

.global-navigation ul.gn li a.gn-btn {

	position: relative;

	overflow: hidden;

	display: block;

	width: 100%;

	height: 80px;

	line-height: 1px;

	font-size: 13px;

	font-size: 1.3rem;

	color: #111111;

	border-left: solid 1px #ddd;

}

.global-navigation ul.gn li a.gn-btn span {

	display: block;

	line-height: 80px;

	font-weight: bold;

}

.global-navigation ul.gn li#gn-about a.gn-btn span,

.global-navigation ul.gn li#gn-feature a.gn-btn span {

	line-height: 18px;

	margin: 20px 0 0;

}

.global-navigation ul.gn li a.gn-btn:hover {

	color: #005BAC;

}

.global-navigation ul.gn li a.gn-btn:after {

	content: "";

	position: absolute;

	left: 50%;

	width: 0;

	height: 0;

	border-style: solid;

	border-width: 3px 3.5px 0 3.5px;

	border-color: #ccc transparent transparent transparent;

	margin: 0 0 0 -3px;

	display: inline-block;

	transition: .2s ease-in-out;

	bottom: 10px;

}

.global-navigation ul.gn li a.gn-btn:hover:after {

	border-color: #005BAC transparent transparent transparent;

}

#about .global-navigation ul.gn li#gn-about a.gn-btn,

#feature .global-navigation ul.gn li#gn-feature a.gn-btn,

#portfolio .global-navigation ul.gn li#gn-portfolio a.gn-btn,

#finance .global-navigation ul.gn li#gn-finance a.gn-btn,

#ir .global-navigation ul.gn li#gn-ir a.gn-btn {

	color: #005bac;

}

#about .global-navigation ul.gn li#gn-about a.gn-btn:after,

#feature .global-navigation ul.gn li#gn-feature a.gn-btn:after,

#portfolio .global-navigation ul.gn li#gn-portfolio a.gn-btn:after,

#finance .global-navigation ul.gn li#gn-finance a.gn-btn:after,

#ir .global-navigation ul.gn li#gn-ir a.gn-btn:after {

	border-color: #005BAC transparent transparent transparent;

}

.global-navigation ul.gn .secondary {

	display: none;

	position: absolute;

	top: 80px;

	left: 50%;

	z-index: 999900;

	width: 240px;

	min-width: 240px;

	text-align: left;

	background-color: #fff;

	padding: 20px;

	/* box-shadow */

	box-shadow:0px 15px 22px -10px rgba(0,0,0,0.3);

	-moz-box-shadow:0px 15px 22px -10px rgba(0,0,0,0.3);

	-webkit-box-shadow:0px 15px 22px -10px rgba(0,0,0,0.3);

}

.global-navigation ul.gn .secondary:before,

.global-navigation ul.gn .secondary:after {

	content: "";

	width: 50%;

	height: 3px;

	display: inline-block;

	position: absolute;

	top: 0;

}

.global-navigation ul.gn .secondary:before  {

	left: 0;

	background-color: #E60012;

}

.global-navigation ul.gn .secondary:after {

	left: 50%;

	background-color: #005bac;

}

.global-navigation ul.gn .secondary li {

	margin: 0;

	font-size: 12px;

	font-size: 1.2rem;

}

.global-navigation ul.gn .secondary li ul {

	display: none;

}

.global-navigation ul.gn .secondary li a {

	display: block;

	padding: 6px 20px 6px 10px;

	color: #111;

	transition: .2s ease-in-out;

	position: relative;

}

.global-navigation ul.gn .secondary li a:after {

	position: absolute;

	content: "";

	vertical-align: middle;

	top: 15px;

	right:  10px;

	width: 8px;

	height: 8px;

	border-top: 1px solid #ccc;

	border-right: 1px solid #ccc;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.global-navigation ul.gn .secondary li a:link, .global-navigation ul.gn .secondary li a:visited {

	color: #111;

	text-decoration: none;

}

.global-navigation ul.gn .secondary li a:hover,

.global-navigation ul.gn .secondary li a.current {

	color: #005bac;

}

.global-navigation ul.gn .secondary li a:hover:after {

	border-top: 1px solid #005bac;

	border-right: 1px solid #005bac;

}

.global-navigation ul .gn-blank-pc {
	width: 10px;
	margin-left: 5px;
}
.global-navigation ul .gn-blank-sp {
	display: none;
}

@media screen and (max-width: 1024px) {
	.global-navigation ul .gn-blank-sp {
		width: 10px;
		margin-left: 5px;
		display: inline;
	}
	.global-navigation ul .gn-blank-pc {
		display: none;
	}
}


/* ===========================================================



	slicknav_nav



=========================================================== */

.slicknav_menu {

	display: none;

}

@media screen and (max-width: 1024px) {

.header .global-navigation {

	position: inherit;

	top: inherit;

	left: inherit;

	background: none;

	width: 100%;

	height: auto;

	border: none;

}

.gn {

	display: none !important;

}

.slicknav_menu {

	font-size: 16px;

	*zoom: 1;

	display: block;

	background-color: #fff;

	padding: 0;

	position: fixed;

	min-width: 100%;

	top: 0;

	z-index: 99999;

	border-bottom: solid 1px #ddd;

}

.slicknav_menu * {

	box-sizing: border-box;

}

.slicknav_menu * {

	box-sizing: border-box;

}

.slicknav_menu_inner {

	height: 100%;

	position: relative;

	overflow: scroll;

	overflow-x: hidden;

	overflow-y: auto;

}

.slicknav_menu:before {

	content: " ";

	display: table;

}

.slicknav_menu:after {

	content: " ";

	display: table;

	clear: both;

}

.slicknav_menu .slicknav_icon-bar {

	background-color: #fff;

}

/* ハンバーガーメニュー */

.slicknav_btn {

	position: relative;

	text-decoration: none;

	background-color: #E60012;

	display: block;

	vertical-align: middle;

	float: right;

	width: 40px;

	height: 35px;

	cursor: pointer;

}

.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {

	margin-top: 3px;

}

.slicknav_menu .slicknav_menutxt {

}

.slicknav_menu .slicknav_icon {

	position: relative;

	display: block;

	width: 40px;

	height: 35px;

}

.slicknav_menu .slicknav_no-text {

	margin: 0;

}

.slicknav_menu .slicknav_icon-bar {

	display: block;

	width: 20px;

	height: 2px;

	margin: 12px 0 0 10px;

	transition: .3s ease-in-out;

}

/* close-btn */

.slicknav_menu .slicknav_open  .slicknav_icon-bar {

}

.slicknav_menu .slicknav_open  .slicknav_icon-bar:first-child {

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

	margin-top: 17px;

}

.slicknav_menu .slicknav_open  .slicknav_icon-bar:nth-of-type(2) {

	opacity: 0

}

.slicknav_menu .slicknav_open  .slicknav_icon-bar:last-child {

	-webkit-transform: rotate(-45deg);

	transform: rotate(-45deg);

	margin-top: -7px;

}



/* menu */

.slicknav_nav {

	clear: both;

	text-align: left;

	background-color: #E60012;

	color: #fff;

	font-size: 14px;

	border-top: none;

	/*navi scroll*/

	width: 100% !important;

	height: 100%;

	position: fixed;

	top: 35px;

	left: 0;

	overflow: scroll !important;

	display: block;

	margin: 0;

	padding: 0 0 36px;

}

.slicknav_nav li {

	display: block;

	margin: 0;

	padding: 0;

	clear: both;

}

.slicknav_nav a.gn-btn {

	display: block !important;

	padding: 10px !important;

	color: #fff;

	font-weight: bold;

	border-bottom: solid 1px #bc3a3a;

}

.slicknav_nav a.gn-btn br {

	display: none;

}

.slicknav_nav a.gn-btn:hover {

	text-decoration: none !important;

}

.slicknav_nav a.gn-btn span {

	color: #fff;

}

.slicknav_nav ul.secondary {

	display: block;

	overflow: hidden;

	width: 100% !important;

	margin: 0 !important;

	padding: 0;

	background-color: #005BAC;

}

.slicknav_nav ul li + li {

	border-top: solid 1px #003a6e;

}

.slicknav_nav ul li a {

	display: block;

	padding: 10px;

	text-decoration: none;

	color: #fff;

	line-height: 18px;

	font-size: 12px !important;

}

/* 3rd */

.slicknav_nav ul li ul {

	border-top: solid 1px #245897;

	padding-left: 20px;

}



/* slicknav option */

.slicknav_nav .slicknav_arrow {

}

.slicknav_nav .slicknav_item {

	position: relative;

	cursor: pointer;

}

.slicknav_nav .slicknav_item .slicknav_arrow i {

	position: absolute;

	right: 10px;

	top: 50%;

	width: 20px;

	height: 20px;

	line-height: 17px;

	margin: -10px 0 0;

	text-align: center;

	color: #fff;

	border: solid 1px #fff;

	font-size: 15px;

}

.slicknav_nav .slicknav_item .slicknav_arrow i.icon-plus:before {

	content: "+" !important;

}

.slicknav_nav .slicknav_item .slicknav_arrow i.icon-minus:before {

	content: "-" !important;

}

.slicknav_nav .slicknav_item a {

	display: inline;

	padding: 0;

	margin: 0;

}

.slicknav_nav .slicknav_row {

	display: block;

}

.slicknav_nav .slicknav_row:hover {

	-webkit-border-radius: 0;

	-moz-border-radius: 0;

	border-radius: 0;

	background: none;

	color: inherit;

	text-decoration: none;

}

}

/* ===========================================================



	contens



=========================================================== */

.contents {

	width: 1200px;

	margin: 0 auto;

	text-align: left;

}

@media screen and (max-width: 1024px) {

.contents {

	width: auto;

	margin: 0 10px;

}

}

/* ===========================================================



	topic path



=========================================================== */

.topic-path {

	clear: both;

	height: 55px;

	line-height: 55px;

	overflow: hidden;

	width: 1200px;

	margin: 0 auto;

}

.topic-path ol {

	clear: both;

	height: 55px;

	line-height: 55px;

	font-size: 11px;

	font-size: 1.1rem;

}

.topic-path ol li {

	float: left;

	margin: 0;

}

.topic-path ol li:before {

	content: "/";

	padding: 0 12px;

	color: #ccc !important;

}

.topic-path ol li:first-child {

	padding: 0

}

.topic-path ol li:first-child:before {

	content: "";

	padding: 0;

}

.topic-path ol li a {

}

.topic-path ol li:before {

	content: "/";

}

.topic-path ol a:link, .topic-path ol a:visited {

	text-decoration: underline;

	color: #333;

}

.topic-path ol a:hover {

	text-decoration: none;

}

@media screen and (max-width: 1024px) {

.topic-path {

	width: auto;

	margin: 0 0 10px;

}

.topic-path ol {

	width: auto;

	margin: 0 10px;

}

}

/* ===========================================================



	title



=========================================================== */

.title {

}

.title h1 {

	font-size: 34px;

	font-size: 3.4rem;

	letter-spacing: 1px;

	line-height: 1.4;

	padding: 0 0 10px 70px;

	margin: 0 0 40px;

	position: relative;

	border-bottom: solid 1px #005BAC;

}



.title h1.size2 {

	font-size: 30px;

	font-size: 3.0rem;

	letter-spacing: 1px;

	line-height: 1.2;

}



.title h1:before,

.title h1:after {

	content: "";

	position: absolute;

	display: block;

}

.title h1:before {

	background-color: #005BAC;

	top: 0;

	left: 0;

	width: 40px;

	height: 40px;

}

.title h1:after {

	background-color: #E60012;

	top: 20px;

	left: 30px;

	width: 20px;

	height: 20px;

}

.title h1 .sub {

	font-size: 20px;

	font-size: 2.0rem;

	letter-spacing: 0;

}



@media screen and (max-width: 1024px) {

.title h1 {

	font-size: 22px;

	font-size: 2.2rem;

	padding: 0 0 10px 50px;

	margin: 0 0 30px;

}

.title h1:before {

	width: 30px;

	height: 30px;

}

.title h1:after {

	top: 15px;

	left: 22px;

	width: 15px;

	height: 15px;

}

}



/* ===========================================================



	main



=========================================================== */

main {

	width: 920px;

	float: right;

	padding: 0 0 50px;

}

main section, .cont-margin {

	margin-bottom: 40px !important;

}

@media screen and (max-width: 1024px) {

main {

	width: 100%;

	float: none;

}

}

/* tit

----------------------------------------------------------- */

main h1.sub_title {
	color: #005BAC;
	font-size: 23px;
	font-size: 2.3rem;
}

main h2 {

	border: solid 1px #ddd;

	border-left: solid 3px #E60012;

	margin: 0 0 20px;

	padding: 5px 5px 5px 10px;

	position: relative;

	line-height: 1.4;

	color: #111;

}

main h2:before {

	content: " ";

	width: 1px;

	height: 100%;

	display: inline-block;

	border-left: solid 3px #E60012;

}

main h2 .sub {

	font-size: 18px;

	font-size: 1.8rem;

}

main h3 {

	margin: 0 0 30px;

	padding: 0 0 5px;

	border-bottom: double 3px #ccc;

	font-size: 18px;

	font-size: 1.8rem;

	line-height: 1.4;

}

main h3 .sub {

	font-size: 16px;

	font-size: 1.6rem;

}

main h4 {

	margin: 0 0 20px;

	padding: 5px 10px;

	border: solid 1px #ccc;

	background-color: #f0f0f0;

	font-size: 15px;

	font-size: 1.5rem;

	line-height: 1.8;

}

main h5 {

	margin: 0 0 10px;

	color: #E60012;

	font-size: 14px;

	font-size: 1.4rem;

	line-height: 1.8;	

}

main .txt-ss {

	font-size: 10px;

	font-size: 1.0rem;

	

}

main .txt-s {

	font-size: 12px;

	font-size: 1.2rem;

}

main .txt-l {

	font-size: 18px;

	font-size: 1.8rem;

}

main .txt-ll {

	font-size: 26px;

	font-size: 2.6rem;

}

h5 {

}

h6 {

}

em {

	color: #E60012;

	font-weight: bold;

}

strong {

	font-weight: bold!important;

}

main .underline {

	/*text-decoration: underline;

	text-decoration-color: #E60012;*/

	border-bottom: solid 1px #111;

}

.read {

	font-size: 20px;

	font-size: 2.0rem;

	line-height: 35px;

	letter-spacing: 1px;

}

.ffReset {

	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace !important;

}

@media screen and (max-width: 1024px) {

main h2 {

	font-size: 16px;

	font-size: 1.6rem;

}

main h3 {

	padding: 0;

}

}

/* text

----------------------------------------------------------- */

p, ul, ol, dl, .indent-table {

	margin: 0 0 20px;

	font-size: 13px;

	font-size: 1.3rem;

	line-height: 1.8;

}

ul li, ol li {

	margin: 0;

}

ol ol {

	padding: 5px 0 0;

}

/* link

----------------------------------------------------------- */

a:link, a:visited {

	text-decoration: none;

	color: #005BAC;

}

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: #005BAC;

	text-decoration: none;

}

/* link-arrow */

.link-a, .link-a a {

	position: relative;

	padding-left: 10px;

}

.link-a:before, .link-a a:before {

	position: absolute;

	content: "";

	top: 50%;

	left: 0;

	width: 0;

	height: 0;

	margin-top: -3px;

	border-style: solid;

	border-width: 3.5px 0 3.5px 4px;

	border-color: transparent transparent transparent #E60012;

}

.link-b, .link-b a {

	position: relative;

	padding-left: 15px;

}

.link-b:before, .link-b a:before {

	position: absolute;

	content: "";

	top: 50%;

	left: 0;

	width: 6px;

	height: 6px;

	margin-top: -3px;

	border-top: 1px solid #E60012;

	border-right: 1px solid #E60012;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

/* blank */

.blank {

	background-image: url(/assets/img/common/ic/ic_blank_a.png) !important;

	background-size: 10px 9px !important;

	background-repeat: no-repeat !important;

	background-position: right 50% !important;

	padding: 0 18px 0 0 !important;

}

/* link-button */

.link-button-a,

.link-button-b,

.link-button__open,

.link-button__close {

	height: 35px;

	line-height: 34px;

	padding: 0 40px 0 55px;

	display: inline-block;

	color: #005BAC !important;

	font-size: 13px;

	text-align: center;

	border: solid 1px #005BAC;

	position: relative;

	overflow: hidden;

	-webkit-transition: all 0.2s ease;

	-moz-transition: all 0.2s ease;

	-o-transition: all 0.2s ease;

	transition: all .2s ease;

}

.link-button-a:hover,

.link-button-b:hover,

.link-button__open:hover,

.link-button__close:hover {

	background: #005BAC;

	border: solid 1px #005BAC;

	text-decoration: none;

	color: #fff !important;

}

.link-button-a:before,

.link-button-b:before,

.link-button__open:before,

.link-button__close:before,

.link-button__close:after {

	position: absolute;

	content: " ";

	vertical-align: middle;

}

/* link-button-a */

.link-button-a:before {

	top: 50%;

	left: 35px;

	width: 5px;

	height: 5px;

	margin: -4px 0 0 0;

	border-top: 1px solid #005BAC;

	border-right: 1px solid #005BAC;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.link-button-a:hover:before {

	border-top: 1px solid #fff;

	border-right: 1px solid #fff;

}

/* link-button-b */

.link-button-b {

	color: #fff !important;

	border: solid 1px #fff;

}

.link-button-b:hover {

	background: #fff;

	border: solid 1px #fff;

	color: #005BAC !important;

}

.link-button-b:before {

	top: 50%;

	left: 35px;

	width: 5px;

	height: 5px;

	margin: -4px 0 0 0;

	border-top: 1px solid #fff;

	border-right: 1px solid #fff;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.link-button-b:hover:before {

	border-top: 1px solid #005BAC;

	border-right: 1px solid #005BAC;

}

/* link-button__open */

.link-button__open:before {

	top: 50%;

	left: 35px;

	width: 5px;

	height: 5px;

	margin: -6px 0 0 0;

	border-right: 1px solid #005BAC;

	border-bottom: 1px solid #005BAC;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.link-button__open:hover:before {

	border-right: 1px solid #fff;

	border-bottom: 1px solid #fff;

}

/* link-button__close */

.link-button__close:before,

.link-button__close:after {

	top: 50%;

	left: 27px;

	width: 14px;

	height: 14px;

	border-right: 1px solid #005BAC;

}

.link-button__close:before {

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

	margin: -13px 0 0 0;

}

.link-button__close:after {

	-webkit-transform: rotate(-45deg);

	transform: rotate(-45deg);

	margin: -3px 0 0 0;

}

.link-button__close:hover:before,

.link-button__close:hover:after {

	border-right: 1px solid #fff;

}



/* banner */

ul.banner {

}

.banner li  {

	display: inline-block;

	margin: 0 10px 10px 0;

	background-color: #E60012;

}

.banner a {

	transition: .2s ease-in-out;

}

.banner a:hover {

	opacity: 0.95;

}

.banner img  {

	vertical-align: middle;

}

/* table

----------------------------------------------------------- */

table {

	width: 920px;

	margin: 0 0 20px;

	border-top: solid 1px #ddd;

}

@media screen and (max-width: 1024px) {

table {

	width: 100%;

}

}

table th {

	width: 25%;

	padding: 5px 10px;

	border-bottom: solid 1px #ddd;

	background: #f0f0f0;

	font-weight: bold;

}

table td {

	border-bottom: solid 1px #ddd;

	border-right: solid 1px #ddd;

	padding: 5px 10px;

	vertical-align: top;

}

table tr:nth-child(odd) td {

}

table td:last-child {

	border-right: none;

}

table img {

	vertical-align: text-bottom;

}

table th.th-2nd, table tr.th-2nd th {

	background: #f5f5f5 !important;

}

table td.td-2nd {

	vertical-align: middle;

	text-align: center;

	background: #f2f6fa;

}

table.td-padding-mini td {

	padding: 2px 8px;

}

table.padding-mini th, table.padding-mini td {

	padding: 2px 8px;

}

table .sub-total th, table .sub-total td, table .sub-total {

	background: #f2f6fa;

	border-right: solid 1px #fff;

}

table .total th, table .total td, table .total {

	background: #555;

	color: #fff;

	border-right: solid 1px #fff;

}

/* th-top */

table.th-top th {

	width: auto;

	text-align: center;

	border-right: solid 1px #ddd;

}

table.th-top th:last-child {

	border-right: none;

}

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;

}

/* min-table */

table.min-table {

	width: 600px !important;

	margin-left: 300px !important;

}



/* scroll-table , responsive-table*/

.scroll-table {

}

.scroll-table-coution {

	display: none;

}

.responsive-table {

}



@media screen and (max-width: 1024px) {

.table-wrap {

	overflow: auto;

	position: relative;

}

.scroll-table th, .scroll-table td {

	white-space: nowrap;

}

.scroll-table-coution {

	display: block;

	margin: 0 0 5px;

	font-size: 12px;

	color: #999;

	padding: 0 0 0 45px;

	background-image: url(/assets/img/common/ic/ic_scroll_side.png);

	background-size: 37px 14px;

	background-position: 0 50%;

	background-repeat: no-repeat;

}

.responsive-table {

	width: 100%;

	border-left: none;

}

.responsive-table th {

	display: block;

	width: auto;

	border-right: none;

}

.responsive-table td {

	display: block;

	width: auto !important;

	border-right: none;

}

.responsive-table .nbsp {

	display: none;

}

.responsive-table th.cell-width-1, .responsive-table td.cell-width-1 {

	width: auto !important;

}

}

/* img

----------------------------------------------------------- */

.img img, .img {

	width: 100%;

	height: auto;

}

.responsive-img img, img.responsive-img {

}



@media screen and (max-width: 1024px) {

.responsive-img img, img.responsive-img {

	width: 100% !important;

	max-width: 720px;

	height: auto;

}

}



/* column

----------------------------------------------------------- */

.column-1 {

	width: 440px;

}

.column-2-left {

	width: 440px;

	float: left;

}

.column-2-right {

	width: 440px;

	float: right;

}

.column-2-left table,

.column-2-right table {

	width: 440px;

}

.column-3-left {

	width: 280px;

	float: left;

}

.column-3-center {

	width: 280px;

	margin: 0 0 0 40px;

	float: left;

}

.column-3-right {

	width: 280px;

	float: right;

}

.column-2w-left {

	width: 600px;

	float: left;

}

.column-2w-right {

	width: 600px;

	float: right;

}

@media screen and (max-width: 1024px) {

.column-1,

.column-2-left,

.column-2-right ,

.column-2-left table,

.column-2-right table,

.column-3-left,

.column-3-center,

.column-3-right,

.column-2w-left,

.column-2w-right {

	width: 100%;

	float: none;

	margin: 0;

}

}

/* ===========================================================



	aside



=========================================================== */

aside {

	float: left;

	width: 220px;

	padding: 0 0 50px;

}

@media screen and (max-width: 1024px) {

aside {

	display: none;

}

}

aside h1 {

	padding: 20px 10px;

	background-color: #005BAC;

	font-size: 16px;

	font-size: 1.6rem;

	line-height: 25px;

	text-align: center;

	color: #fff;

	letter-spacing: 1px;

}

aside ul {

}

aside ul li {

	margin: 0;

	border-bottom: solid 1px #ddd;

	background-color: #f1f1f1;

}

aside ul li a {

	position: relative;

	display: block;

	padding: 13px 10px 13px 27px;

	color: #111 !important;

}

aside ul li a:hover, aside ul li a.current {

	text-decoration: none;

	color: #005BAC !important;

}

aside ul li a.current {

	font-weight: bold;

}

aside ul li a:before {

	position: absolute;

	top: 18px;

	left: 10px;

	content: "";

	width: 12px;

	height: 12px;

	border-radius: 6px;

	background-color: #005BAC;

}

aside ul li a:after {

	position: absolute;

	top: 21px;

	left: 15px;

	content: "";

	width: 0;

	height: 0;

	border-style: solid;

	border-width: 3px 0 3px 4px;

	border-color: transparent transparent transparent #fff;

}

/* secondary */

aside ul li ul {

	margin: 0;

}

aside ul li ul  li {

	margin: 0 0 0 20px;

	border-top: solid 1px #ddd;

	border-bottom: none;

	border-left: solid 1px #ddd;

}

aside ul li ul  li a {

	padding: 6px 15px 6px 10px;

}

aside ul li ul  li a:before,

aside ul li ul  li a:after {

	display: none;

}

/* ===========================================================



	bt-pagetop



=========================================================== */

body .bt-pagetop {

	clear: both;

	width: 30px;

	height: 30px;

	margin: 0;

	display: none;

	position: fixed;

	right: 30px;

	bottom: 30px;

	z-index: 100;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.bt-pagetop a {

	position: relative;

	display: block;

	width: 30px;

	height: 30px;

	background-color: #000;

	/*　Scott Kellum Method */

	overflow: hidden;

	text-indent: 100%;

	white-space: nowrap;

}

.bt-pagetop a:before {

	content: " ";

	position: absolute;

	top: 50%;

	left: 50%;

	width: 2px;

	height: 12px;

	margin: -6px 0 0 -1px;

	background-color: #fff;

	-webkit-transform: rotate(-45deg);

	transform: rotate(-45deg);

}

.bt-pagetop a:after {

	content: " ";

	position: absolute;

	top: 50%;

	left: 50%;

	width: 8px;

	height: 8px;

	margin: -5px 0 0 -5px;

	border-top: solid 2px #fff;

	border-left: solid 2px #fff;

}

.bt-pagetop a:hover {

	background-color: #005BAC;

}

@media screen and (max-width: 1024px) {

body .bt-pagetop {

	right: 15px;

	bottom: 25px;

}

}

/* ===========================================================



	footer



=========================================================== */

.footer {

	position: relative;

	clear: both; 

	overflow: hidden;

}

.footer:before,

.footer:after {

	content: "";

	width: 50%;

	height: 3px;

	display: inline-block;

	position: absolute;

	top: 0;

}

.footer:before  {

	left: 0;

	background-color: #E60012;

}

.footer:after {

	left: 50%;

	background-color: #005bac;

}



/* footer-navi

----------------------------------------------------------- */

.footer-navi {

	width: 1200px;

	margin: 0 auto;

	padding: 30px 0;

	text-align: left;

}

.footer-navi h1 {

	float: right;

}

@media screen and (max-width: 1024px) {

.footer-navi {

	display: none;

}

}

.footer-navi section {

	float: left;

	display: inline;

	width: 190px;

}

.footer-navi #fot-navi-about {

	width: 240px;

}

.footer-navi #fot-navi-feature {

}

.footer-navi #fot-navi-portfolio {

}

.footer-navi #fot-navi-finance {

}

.footer-navi #fot-navi-ir {

}

.footer-navi h2 {

	padding: 0;

	margin: 0 20px 5px 0;

	border: none;

	background: none;

	overflow: inherit;

	font-size: 13px;

	font-size: 1.3rem;

}

.footer-navi h2 a {

	font-weight: bold;

}

.footer-navi h2 a:link, .footer-navi h1 a:visited {

	text-decoration: none;

}

.footer-navi h2 a:hover {

	text-decoration: none;

}

.footer-navi ul {

	font-size: 11px;

	font-size: 1.1rem;

	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 17px;

	display: block;

	position: relative;

}

.footer-navi ul a:before {

	position: absolute;

	top: 3px;

	left: 0;

	content: "";

	width: 12px;

	height: 12px;

	border-radius: 6px;

	background-color: #005BAC;

}

.footer-navi ul a:after {

	position: absolute;

	top: 6px;

	left: 5px;

	content: "";

	width: 0;

	height: 0;

	border-style: solid;

	border-width: 3px 0 3px 4px;

	border-color: transparent transparent transparent #fff;

}

.footer-navi a:link, .footer-navi a:visited {

	text-decoration: none;

}

.footer-navi a:hover {

	text-decoration: none;

}

.footer-navi a.current {

	font-weight: bold;

	color: #005BAC;

}



/* footer-navi

----------------------------------------------------------- */

.footer-navi-support {

	border-top: solid 1px #dddddd;

	width: 1200px;

	margin: 0 auto;

	text-align: left;

	padding: 20px 0 30px;

}

.footer-navi-support ul {

	float: left;

	margin: 0;

}

.footer-navi-support ul li {

	display: inline-block;

	margin: 0;

	padding: 0;

}

.footer-navi-support li a {

	border-left: solid 1px #ccc;

	font-size: 11px;

	font-size: 1.1rem;

	line-height: 20px;

	height: 20px;

	padding: 0 10px;

}

.footer-navi-support li:first-child a {

	padding: 0 10px 0 0;

	border-left: none;

}

.footer-navi-support li a:link, .footer-navi-support li a:visited {

	text-decoration: none;

}

.footer-navi-support li a:hover {

}

.footer-navi-support li a.current {

	font-weight: bold;

}

@media screen and (max-width: 1024px) {

.footer-navi-support {

	width: 100%;

	height: inherit;

	line-height: inherit;

	text-align: left;

	padding: 0;

	overflow: hidden;

}

.footer-navi-support ul {

	width: 100%;

}

.footer-navi-support ul li {

	display: block;

	padding: 0;

}

.footer-navi-support ul li a,

.footer-navi-support li:first-child a {

	position: relative;

	display: block;

	margin: 0;

	padding: 10px 24px 10px 10px;

	border: none;

	border-bottom: solid 1px #999;

	height: auto;

	line-height: 1.4;

	font-size: 13px;

	text-decoration: none;

}

.footer-navi-support ul li a:before {

	position: absolute;

	content: " ";

	vertical-align: middle;

	top: 50%;

	right: 10px;

	width: 5px;

	height: 5px;

	margin: -4px 0 0;

	border-top: 1px solid #fff;

	border-right: 1px solid #fff;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

}

/* footer-navi

----------------------------------------------------------- */

.copyright {

	float: right;

	margin: 0;

	line-height: 20px;

	height: 20px;

}

.copyright small {

	font-size: 11px;

	font-size: 1.1rem;

}

@media screen and (max-width: 1024px) {

.copyright {

	float: none;

	text-align: center;

	overflow: hidden;

	line-height: 1.6;

	height: auto;

	margin: 0;

	padding: 20px 20px 50px;

}

}

.esg-card {
	border: solid 1px #CCCCCC;
	flex-direction: row;
	margin-bottom: 20px;
	padding-left: 20px;
	width: auto;
	height: auto;
}
.esg-container {
	display: flex;
	margin-bottom: 20px;
}
.esg-mark {
	margin-right: 20px;
}
.esg-mark-bels {
	width: 100px;
	flex-shrink: 0;
}
.esg-model {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.esg-model-bels {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-top: 18px;
}
.esg-model-inner {
	margin-top: 0;
	margin-left: 10px;
	margin-right: 10px;
}
.esg-model-inner-en-first {
	margin-top: 0;
	margin-left: 0;
	margin-right: 10px;
}
.esg-model-inner-en-first p,
.esg-model-inner p {
	font-size: 11px;
	line-height: 13px;
	text-indent: -25px;
	margin-left: 25px;
}
.MUFG-container {
	display: flex;
	flex-direction: row;
}
.MUFG-pic {
	margin: 0 20px;
}
@media screen and (max-width: 1024px) {
	.esg-container {
		display: flex;
	}
	.esg-mark {
		margin-right: 0;
	}
	.esg-model {
		display: flex;
	}
	.esg-model-inner-en-first {
		margin-top: 0;
		margin-left: 10px;
		margin-right: 10px;
	}
	.esg-model-inner p {
		text-indent: -25px;
	   	margin-left: 25px;
   }
	.MUFG-container {
		display: flex;
		flex-direction: column;
	}
	.MUFG-pic {
		margin: 0 20px;
		text-align: center;
	}
}