@charset "utf-8";

.contsWrapper {
min-width:960px
}
.contsInner {
width: 100%;
}
#content{
width:100%;
margin:15px auto 80px;
}
a {
color: #414141;
text-decoration: underline;
}
/*===========================================================================
	共通ヘッダー
============================================================================*/

#header {
margin: 0 auto;
width: 960px;
min-width:960px;
}
#header #base {
margin: 0 auto;
width: 960px;
padding: 15px 0;
}
.headLogo{
float: left;
padding: 25px 0 0;
}
/* ========== SNSヘッダー ========== */
#header .socialBox {
text-align: right;
margin: 0;
padding: 0;
z-index: 999999;
float: right;
}
#header .socialBox ul{}
#header .socialBox li {
text-align: left;
margin: 0;
padding: 0;
float: left;
}
#header .socialBox li.fbBox {
width: 110px;
margin: 0px 0px 0px 7px;
padding: 0;
}
#header .socialBox li.twBox {
width: 90px;
margin: 0px 0px 0px 0px;
padding: 0;
}
#header .socialBox li.gpBox {
width: 45px;
margin: 0px 0px 0px 7px;
padding: 0;
}
#header .socialBox li.hatenaBox {
margin: 0px 0px 0px 7px;
padding: 0;
}
#header .socialBox li.mixiBox {
width: 75px;
margin: 0px 0px 0px 7px;
padding: 0;
}
/* ========== sitemap english ========== */
.pageLink {
	width: 140px;
	margin-left: auto;
	margin-right: 0;
	font-size: 12px;
}
.pageLink li {
	float: left;
	margin-top: 16px;
	margin-left: 12px;
}
.pageLink a {
	text-decoration: none;
}
.pageLink a:hover {
	text-decoration: underline;
}
/*===========================================================================
	共通キービジュアルエリア
============================================================================*/
#main{
margin: 0;
width: 100%;
text-align: center;
}
#main::after {
	display: block;
	content: "";
	width: 100%;
	height: 40px;
	background: #005ca9;
}
#main.am{
background: url(/assets/img/common/bg_kv_am.png) no-repeat center;
background-size: auto 360px;
}
#main.pm{
	background: url(/assets/img/common/bg_kv_pm.png) no-repeat center;
background-size: auto 360px;
}

@media screen and (min-width: 2000px) {
#main.am{
background: url(/assets/img/common/bg_kv_am.png) no-repeat center;
background-size: cover;
}
#main.pm{
	background: url(/assets/img/common/bg_kv_pm.png) no-repeat center;
background-size: cover;
}

}/* END OF min-width 2000px layout */

.catch{
padding: 220px 0 60px;
}
.catch img {
vertical-align: bottom;
}
/* ========== パンくず ========== */
.topicPathArea{
width: 960px;
margin: 10px auto 17px;
}
.topicPath{
vertical-align: middle;
text-align: left;
}
.topicPath li{
position: relative;
display: inline-block;
margin-right: 10px;
font-size: 12px;
}
.topicPath li:after{
position: absolute;
top: -1px;
content: "\003e";
margin-left: 5px;
}
.topicPath li:last-child:after{
content:none;
}
.topicPath a {
	text-decoration: none;
}
.topicPath a:hover {
	text-decoration: underline;
}
/* ========== gNav ========== */
.gNavArea{
width: 960px;
margin:0 auto 40px;
}
.gNav{
letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
text-align: center;}
.gNav img {
	vertical-align: middle;
}
.gNav li{
letter-spacing:normal;
display: inline-block;
font-size: 16px;
margin-left:15px;
}
.gNav li a{
position: relative;
color:#fff;
width: 180px;
height: 48px;
line-height: 48px;
display: block;
-ms-transform: translateZ(0);
-webkit-transform: translateZ(0);
transform: translateZ(0);
/*overflow: hidden;*/
}
.gNav li:first-child{
margin-left: 0;}
.gNav01{
background:#4484c7;}
.gNav02{
background:#f38c7e;}
.gNav03{
background:#cacaca;}
.gNav04{
background:#ffc269;}
.gNav05{
background:#5eb8b8;}

.gNav li a:before {
content: "";
position: absolute;
z-index: -1;
left: 0;
right: 0;
top: 0;
bottom: 0;
border-style: solid;
border-width: 0;
-ms-transition-property: border-width;
-webkit-transition-property: border-width;
transition-property: border-width;
-ms-transition-duration: 0.1s;
-webkit-transition-duration: 0.1s;
transition-duration: 0.1s;
-ms-transition-timing-function: ease-out;
-webkit-transition-timing-function: ease-out;
transition-timing-function: ease-out;
}

.gNav li a:hover:before,
.gNav li a:focus:before,
.gNav li a:active:before {
z-index: 10;/*IE9で表示する*/
-webkit-transform: translateY(0);
transform: translateY(0);
border-width: 4px;
}
.gNav01 a:before {	border-color: #355ac8;}
.gNav02 a:before {	border-color: #e14c4c;}
.gNav03 a:before {	border-color: #969696;}
.gNav04 a:before {	border-color: #ff8d5c;}
.gNav05 a:before {	border-color: #4b8484;}
/*gNavの現在地をアクティブにする IE9用にz-indexを記述する*/
.gNav01 .active::before { border: 4px solid #355ac8; z-index: 10;}
.gNav02 .active::before { border: 4px solid #e14c4c; z-index: 10;}
.gNav03 .active:before { border: 4px solid #969696; z-index: 10;}
.gNav04 .active::before { border: 4px solid #ff8d5c; z-index: 10;}
.gNav05 .active::before { border: 4px solid #4b8484; z-index: 10;}
/*===========================================================================
	共通フッターエリア
============================================================================*/
#gFooter{
width: 960px;
margin:0 auto;
}
#footer{
padding: 60px 0 0;
font-size: 11px;
}
#footer_upper{
	position: relative;
margin: 0 auto 20px;
padding-bottom: 16px;
width: 100%;
min-width:960px;
background:url('/assets/img/common/line_01.jpg') repeat-x 50% 100%;
}
#footer_nav a:link,
#footer_nav a:visited {
text-decoration: none;
color: #4d4d4d;
}
#footer_nav a:active,
#footer_nav a:hover {
text-decoration: underline;
color: #4d4d4d;
}
#footer_nav{
width:960px;
margin: 0 auto;
padding: 14px 0;
}
#footer_nav li{
float: left;
margin: 0 7px 0 0;
padding: 0 7px 0 0;
line-height: 11px;
border-right: 1px solid #4d4d4d;
}
#footer_nav li.last{
border-right: none;
margin: 0;
padding: 0;
}
.btnWrap {
	width: 100%;
	position: relative;
}
.bnr_edc{
	text-align: center;
	margin-bottom: 50px;

}
.pagetopBtn {
display: none;
position: fixed;
right: 40px;
bottom: 100px;
}
.pagetopBtn.fix {
position: fixed;
right: 40px;
bottom: 100px;
top: auto;
z-index: 10;
}
.pagetopBtn.fixBottom {
position: absolute;
right: 40px;
bottom: auto;
top: 39px;
-ms-transform: translateY(-100%);
-webkit-transform: translateY(-100%);
transform: translateY(-100%);
}

.pagetopBtn a:hover {
opacity: 0.7;
}
#footer_bottom{
border-top: 1px solid #185A9A;
padding: 14px 0;
font-size: 11px;
}
#footer_bottom ul{
margin: 0 auto;
width: 960px;
}
#footer_bottom ul li{
float: left;
}
#footer_bottom ul li#copyright{
float: right;
}
/*===========================================================================
	共通コンテンツ　エリア
============================================================================*/
/* ========== ボタン共通箇所 ========== */
.topSecBtn {
margin: 0 auto;
width: 320px;
height: 80px;
text-align: center;
}
.topSecBtn a {
display: block;
text-decoration: none;
}
.topSecBtn01{
margin-top: 56px;
background: url(/assets/img/top/btn_top_sec_on.png) no-repeat;
}
.topSecBtn a:hover {
opacity: 0;
}
.topSecBtn02{
background: url(/assets/img/top/btn_top_service_on.png) no-repeat center center;
}
.topSecBtn02 img {
	line-height: 1;
}
.topSecBtn04 {
background: url(/assets/img/top/btn_top_outline_on.png) no-repeat;
}
.topSecBtn05 {
background: url(/assets/img/top/btn_top_recruit_on.png) no-repeat;
}
.backBtn {
	margin-top: 64px;
	background: url(/assets/img/common/btn_back_on.png) no-repeat;
}

/* ========== PDF ========== */
.iconPdf a::before {
	padding-right: 5px;
	content: url(/assets/img/top/icon_pdf_topics.png);
}
.iconPdf a:hover {
	text-decoration: underline;
}
/* ========== トピックス ========== */
/*news topページ共通とirページ共通部分に反映*/
.topicsList {
	margin-left: 40px;
}
.date {
	position: relative;
	margin-bottom: 10px;
	padding-left: 76px;
}
/*top news*/
.topicsText {
	margin-bottom: 35px;
	padding-left: 76px;
	line-height: 1.5;
}
.topicsText a {
	color: #fff;
}
.topicsText a:hover {
	text-decoration: underline;
}

.newTopics::before {
	content: "";
	position: absolute;
	top: 14px;
	left: -2px;
	display: inline-block;
	width: 60px;
	height: 15px;
	background: url(/assets/img/top/icon_new_topics.png) no-repeat center center;
	vertical-align: middle;
}
.newsTopics::before {
	position: absolute;
	top: 0;
	left: -2px;
	content: "";
	display: inline-block;
	width: 60px;
	height: 15px;
	background: url(/assets/img/top/icon_news_topics.png) no-repeat center center;
	vertical-align: middle;
}
.irTopics::before {
	position: absolute;
	top: 0;
	left: -2px;
	content: "";
	display: inline-block;
	width: 60px;
	height: 15px;
	background: url(/assets/img/top/icon_ir_topics.png) no-repeat center center;
	vertical-align: middle;
}
.iconPdf {
	padding-left: 15px;
}
.date,
.iconPdf a {
	color: #fff;
}
.iconPdf a::before {
	padding-right: 5px;
	content: url(/assets/img/top/icon_pdf_topics.png);
}
.pager {
	width: 360px;
	margin: 40px auto 0;
	font-size: 0;
}
.pager li {
	display: inline-block;
	margin-right: 24px;
	font-size: 16px;
	text-align: center;
}
.pager li:last-child {
	margin-right: 0;
}
.pager li a {
	display: block;
	width: 36px;
	height: 36px;
	line-height: 36px;
	background: #fff;
	text-decoration: none;
}
.topics .pager li a { border: 2px solid #365aa8;}
.ir .pager li a {
	 border: 2px solid #969696;
	 color: #969696;
}

.pager li a:hover {
	opacity: 0.7;
}

/*===========================================================================
	共通コンテンツ　エリア
============================================================================*/
.contsAreaTtl {
	margin: 80px 0 66px;
}
.contsAreaTtl img,
.contsAreaTtl02 img {
	vertical-align: middle;
}
.contsAreaTtl02 {
	margin: 80px 0 64px;
}
.contsAreaTtl02 p {
	font-size: 16px;
	margin-top: 40px;
}
.contactTx {
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 32px;
}
/* ========== 基本的なテキスト ========== */
.tx {
	margin-bottom: 40px;
	font-size: 16px;
	line-height: 2;
}
.txSmall {
	font-size: 16px;
	line-height: 2;
}
.txRight {
	text-align: right;
}
.txRight02 {
	text-align: right;
	padding-right: 40px;
	margin-top: 16px;
}
/* ========== 墨色タイトル ========== */
.contsTtlNormal {
	font-size: 20px;
	color: #414141;
}
/* ========== 小見出しの次のタイトル(テキストが各カラー) ========== */
.contsTtlColor {
	margin-top: 60px;
	margin-bottom: 24px;
	font-size: 24px;
	font-weight: bold;
}
.contsTxColor {
	margin-top: 24px;
	margin-bottom: 60px;
	line-height: 2;
}
.outline .contsTtlColor {
	color: #ffc269;
	line-height: 1.5;
}
.ir .contsTtlColor {
	color: #c7c7c7;
	line-height: 1.5;
}

/* ========== 墨色タイトルの下のdlテキスト ========== */
.info {
	margin-bottom: 80px;
}
.info dt {
	display: inline-block;
	width: 120px;
	margin-top: 20px;
	font-size: 14px;
	vertical-align: top;
}
.info dd {
	display: inline-block;
	margin-top: 16px;
	width: 500px;
	font-size: 14px;
	line-height: 1.5;
}
.info dd a {
	color: #4483c6;
}
.info span {
	padding: 0 30px;
}
.icon::before {
	display: inline-block;
	content: "\25CE";
}

/* ========== 画像のマージン ========== */
.img {
	margin-top: 80px;
	margin-bottom: 80px;
}
/* ========== 枠付きbox ========== */
.borderBox {
	width: 672px;
	padding: 30px 0;
	text-align: center;
}
.outline .borderBox {
	border: 2px solid #ffc269;
	text-align: left;
}
.ir .borderBox {
	border: 2px solid #c7c7c7;
	text-align: left;
}
.botderBoxTx01 {
	line-height: 2;
	font-size: 16px;
}
/* ========== 枠付きboxの中の要素が横並び ========== */
.borderBoxIn {
	display: table;
	margin: 0 auto;
	width: 600px;
	line-height: 2;
}
.borderBoxImg {
	display: table-cell;
	width: 120px;
	vertical-align: middle;
}
.borderBoxTx {
	width: 480px;
	padding-left: 20px;
	box-sizing: border-box;
	line-height: 2;
	text-align: left;
}
.secOlStyleTtl {
	margin-bottom: 32px;
	font-size: 16px;
}
.secOlStyle {
	padding-left: 16px;
	font-size: 16px;
	line-height: 2;
}
.secOlStyle li {
	margin-bottom: 24px;
	list-style: decimal;
}
/* ========== こちら　などのテキストリンク ========== */
.secListLogoTxLink {
	position: relative;
	margin-bottom: 40px;
	font-size: 14px;
}
.secListLogoTxLink:last-child {
	margin-bottom: 0;
}

.secListLogoTxLink a {
	color: #005ba9;
}
.secListLogoTxLink::after {
	position: absolute;
	content:"\003e";
	color: #005BA9;
	margin: -1px 0 0 3px;
}
.secListLogoTx {
	margin: 16px 0;
	font-size: 14px;
	line-height: 1.5;
}

/* ========== youtube動画を貼り付ける際はこちら ========== */
.youtube_area{
	text-align: center;
}

/*.youtube_area{
	position: relative;
	height: 0;
	padding: 30px 0 56.25%;
	overflow: hidden;
}
.youtube_area iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}*/
