@charset "utf-8";
/*  
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

[00] HTMLタグの再定義

*/

body,form,p,li,ul,dl,dt,dd {
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka,
	"ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, Sans-Serif;
}

/*  
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

[01] PC 

*/

/*  1-1  ヘッダー
--------------------------------------------------------------------------------------*/

@media only screen and (min-width: 769px) {

.pc{ display: block;}
.sp{ display: none;}

#header_part{
	width: 100%;
	height: 120px;
	border-bottom: 1px solid #ccc;
	background: #FFF;
	background-image:url(/common_sp/jigyoubu/img/bg_header_01.gif);
	background-repeat: no-repeat;
	background-position: center top;
	box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.3);
	overflow: hidden;
}
/* ナビゲーションなし */
.no_menu #header_part{
	height: 80px;
	border-bottom: 3px solid #122889;
}
.no_menu #naviBlock{
	display: none;
}
.no_menu .formSearch {
	top:32px;
}
.header_inner{
	width:950px;
	margin: 0 auto;
	position: relative;
}
/*  ロゴ　*/
#crop_logo{
	width: auto;
	height: auto;
	position: absolute;
	top:18px;
	left: 0px;
}
#crop_logo img{
	width: 100%;
	height: auto;
}
#header_description{
	position: absolute;
	top:36px;
	left: 160px;
	width: 400px;
	font-size: 16px;
	font-weight: bold;
	line-height: 130%;
}
/*  メニューボタン　*/
.header_btn{
	display: none;
}
/* 検索 */
.formSearch {
	position:absolute;
	top:-50px;
	right: -20px;
	width:100%;
	text-align: center;
	width: 300px;
}
.formSearch input.inbase {
	display: inline-block;
	width: 260px;
	height: 24px;
	line-height: 1;
	border-radius: 10rem;
	border: 1px solid #d4d4d4;
	padding: 0.6rem 1rem;
	box-sizing: border-box;
}
.formSearch_inner {
	padding:14px 20px;
	background-color: none;
	float: none;
	width: 100%;
	box-sizing: border-box;
}
.formSearch form.search {
	position: relative;
}
.formSearch input.submit {
	position: absolute;
	top: 4px;
	right:8px;
}
/*  問い合わせボタン　*/
a#header_contact{
	display: block;
	line-height: 1;
	text-decoration: none;
	color: #000;
	width: 105px;
	text-align: center;
	padding:6px 0;
	font-size: 12px;
	border: 1px solid #ccc;
	background: #FFF;
	position: absolute;
	top:10px;
	right: 187px;
	border-radius: 2px;
}
a#header_contact_usa{
	display: block;
	line-height: 1;
	text-decoration: none;
	color: #000;
	width: 105px;
	text-align: center;
	padding:6px 0;
	font-size: 12px;
	border: 1px solid #ccc;
	background: #FFF;
	position: absolute;
	top:10px;
	right: 0;
	border-radius: 2px;
}

a#header_contact:hover{
	opacity: 0.9;
}

a#header_contact_usa:hover{
	opacity: 0.9;
}


/*  言語選択　*/
#header_language a {
	display: block;
	padding: 3px 5px;
	font-size: 12px;
	color:#000;
	text-decoration: none;
}
.language_btn{
	display:none;
}
.language_list {
	background-color: #fff;
	position: absolute;
	top:10px;
	right:1px;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	overflow: hidden;
}
.language_list li{
	width: 58px;
	float: left;
	text-align: center;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}
#header_language a.active {
	background-color: #e7e9f3;
}
/*  メニュー内ボタン　*/
.btn1{
	display: none;
}

/*  1-2　ナビゲーション
--------------------------------------------------------------------------------------*/
#naviBlock{
	position: absolute;
	top: 80px;
	width: 100%;
	background: #122889;
	height: 40px !important;
}
#globalNavi{

}
#globalNavi ul{
	width: 950px;
	height: 40px;
	overflow: hidden;
	display: table;
	table-layout: fixed;
	margin: 0 auto;
	border-left: 1px solid #7287BE;
}
#globalNavi li{
	cursor: pointer;
	list-style: none;
	margin: 0;
	padding:0;
	border-bottom:none;
	position: relative;
	text-align: center;
	display: table-cell;
	border-right: 1px solid #7287BE;
}
#globalNavi ul a {
	text-decoration: none;
	font-size: 15px;
	padding: 12px;
	display: block;
	line-height: 1;
	color: #FFF;
}
#globalNavi ul a:hover{
	opacity: 0.8;
}
#globalNavi li span,
#globalNavi ul ul{
	display: none;
}


/* -------------------------------------
	added by PU-f.
------------------------------------- */
.mega-opened-overlay {
	width: 100%;
	height: 100%;
	display: block;
	position: fixed;
	top: 120px;
	background: rgba(0,0,0,0.6);
	z-index: 1000;
	opacity: 0;
}
#globalNavi ul {
	overflow: visible;
}
#globalNavi .has_child {
	position: static;
}
#globalNavi .mega-menu {
		display: none;
	position: absolute;
	left: 50%;
    width: 780px;
    margin: 22px 0 0 -390px;
    padding: 20px 40px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #e1e1e1;
	box-shadow: 0 2px 2px 1px rgba(0,0,0,0.6);
	z-index: 1500;
}

#globalNavi .mega-menu:after {
	content: "";
	position: absolute;
	top: -20px;
	left: 765px;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 20px 20px 20px;
	border-color: transparent transparent #e1e1e1 transparent;
	z-index: 101;
}

#globalNavi .mega-menu .mega-header {
	margin-bottom: 15px;
}
#globalNavi .mega-menu .mega-title {
	float: left;
    font-size: 26px;
    vertical-align: bottom;
}
#globalNavi .mega-menu .mega-title a {
	color: #000;
	font-size: 26px;
	padding: 0;
}
#globalNavi .mega-menu .mega-link {
	float: right;
    vertical-align: bottom;
}
#globalNavi .mega-menu .mega-link .link-1 {
	float: right;
	min-height: 15px;
	padding: 0 0 0 25px;
    background: url(/common_n/img/icn_link1.gif) no-repeat 0 center;
    line-height: 1.5em;
}

#globalNavi .mega-menu .mega-link .link-1 a {
	padding: 0;
	color: #000;
	font-size: 13px;
}
#globalNavi .mega-menu .mega-link .link-1 a:hover {
	opacity: 1;
	text-decoration: underline;
}
#globalNavi .mega-menu .mega-list {
	clear: both;
	display: block !important;
	border: none;
}

#globalNavi .mega-menu .mega-list li {
	display: block;
	float: left;
	width: 248px;
    margin: 0 15px 8px 0;
    border: 1px solid #ccc;
	background: #fff;
	color: #000;
	text-align: left;
}
#globalNavi .mega-menu .mega-list li:nth-child(3n){
	margin-right: 0;
}
#globalNavi .mega-menu .mega-list li a {
	display: table-cell;
	width: 217px;
	height: 35px;
	padding: 3px 3px 3px 28px;
	vertical-align: middle;
	background: url(/common_n/img/icn_link2.gif) no-repeat 13px 49%;
	color: #000;
	font-size: 13px;
}
#globalNavi .mega-menu .mega-list li a:hover {
	opacity: 1;
	text-decoration: underline;
}
#globalNavi .mega-menu .mega-list li a span {
	display: block;
}
#globalNavi .mega-close {
	position: absolute;
    top: -24px;
    right: -23px;
    z-index: 500;
    width: 47px;
    height: 47px;
    background: url(/common_n/img/btn_mega_close.png) no-repeat 0 0;
    cursor: pointer;
}
#globalNavi .mega-close:hover {
	background-position: 0 -47px;
}

/*  1-3　フッター
--------------------------------------------------------------------------------------*/
#footer_part{
	border-top: 3px solid #122889;
	position: relative;
	background-image: url(/common_sp/jigyoubu/img/footer_bg_01.gif);
	background-position: center top;
	background-repeat: no-repeat;
	margin-top:30px;
}
.footer_inner{
    width: 950px;
    margin: 0 auto;
    position: relative;
    padding: 35px 0 38px 0;
}
.footer_pagetop{
	position: absolute;
	top:-49px;
	right: 0px;
	width: 180px;
	height: 45px;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	background: #FFF;
	border-top-left-radius : 3px;
	-webkit-border-top-left-radius: 3px;
	-moz-border-radius-topleft: 3px;
	border-top-right-radius : 3px;
	-webkit-border-top-right-radius: 3px;
	-moz-border-radius-topright: 3px;
	border-top-right-radius : 3px;
	-webkit-border-top-right-radius:3px;
	-moz-border-radius-topright:3px;
}
.footer_pagetop a{
	font-size: 13px;
	text-decoration: none;
	color: #000;
	display: block;
	padding: 15px 15px;
	line-height: 1;
	background-image: url(/common_sp/jigyoubu/img/icn_gototop_pc.gif);
	background-position: right 18px center;
	background-repeat: no-repeat;
	margin: 0 15px;
}

#footer_main{
}
.footer_title,
.footer_logo{
	display: none;
}
.footer_logo img{
	width: 110px;
	height: auto;
}
.footer_links{
	color: #FFF;
	width: 50%;
	float: left;
}

.footer_links li {
	display: inline;
}

.footer_links li:first-child a {
    border-left: 1px solid #fff;
}
.footer_links li a{
	font-size: 13px;
	text-decoration: none;
	color: #FFF;
	display: inline-block;
	padding: 0 1.5em;
	border-right: 1px solid #fff;
    text-decoration: none;
}
.footer_links a:hover{
	text-decoration:underline;
}
.copyright{
	text-align: right;
	font-size: 13px;
	padding: 0;
	width: 50%;
	float: right;
}

/*  1-4　コンテンツ
--------------------------------------------------------------------------------------*/
#content_wp{
	overflow: hidden;
	width: 950px;
	margin: 0 auto;
	padding-top: 8px;
	font-size: 13px;
	line-height: 180%;
}
#main_part{
	width:680px;
	float: right;
	padding-bottom: 60px
}
#sub_part{
	width:220px;
	float:left;
}
#main_part p{
margin: 0 0 2em;
}
/* コンテンツエリア100% */
.wide #main_part{
	width:100%;
	float: none;
}

/*  1-5　共通スタイル
--------------------------------------------------------------------------------------*/
/* クリアフィックス */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    *zoom: 1;
}

}

/*  フッター不具合による追加　
--------------------------------------------------------------------------------------*/

#all {
	min-height: calc(100vh - 143px);
}
#footer_part {
	margin-top: 43px;
	height: 97px;
}







/*  
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

[02] スマートフォン

*/

@media only screen and (max-width: 768px) {

.sp{ display: block;}
.pc{ display: none;}

/*  2-1  ヘッダー
--------------------------------------------------------------------------------------*/
	#header_part{
		position: fixed;
		width: 100%;
		height: 40px;
		border-bottom: 1px solid #ccc;
		background: #FFF;
		z-index:999;
		background-image:url(/common_sp/jigyoubu/img/bg_header_01.gif);
		background-repeat: no-repeat;
		background-position: top;
		background-size: auto 100%;
		overflow: visible;
	}
	.header_inner{
		width: 100%;
		height: 40px;
	}
	/*  ロゴ　*/
	#crop_logo{
		width: 75px;
		height: auto;
		position: absolute;
		top:11px;
		left: 10px;
	}
	#crop_logo img{
		width: 100%;
		height: auto;
	}
	#header_description{
		display: none;
	}

	/* 検索 */
	.formSearch {
		position:relative;
		margin: 0;
		width:100%;
		border-bottom: 1px solid #ccc;
		text-align: center;
		padding: 15px 0 15px 0;
		background: #eee;
	}
	.formSearch input.inbase {
		display: inline-block;
		width: 87%;
		height: 32px;
		line-height: 1;
		border-radius: 10rem;
		border: 1px solid #d4d4d4;
		padding: 0.6rem 1rem;
		box-sizing: border-box;
		font-size: 16px;
		tap-highlight-color: rgba(0, 0, 0, 0);
	}
	.formSearch-inner {
		padding:14px 20px;
		background-color: #f4f4f4;
		float: none;
		width: 100%;
		box-sizing: border-box;
	}
	.formSearch form.search {
		position: relative;
	}
	.formSearch input.submit {
		top:8px;
		right:0px;
	}
	

	/* 言語ボタン */
	#header_language {
		width: 40px;
		height: 40px;
		position: absolute;
		top:0px;
		right: 40px;
		border-left: 1px solid #ccc;
		background: #FFF;
		text-align: center;
	}
	#header_language img {
		width: 24px;
		height:auto;
		margin-top: 8px;
	}
	#header_language a {
		display: block;
		padding: 3px 5px;
		font-size: 12px;
		color:#000;
		text-decoration: none;
	}
	#header_part .language img {
		width: 20px;
		height: auto;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
	}
	#header_part .language_btn{
		display: block;
	}
	ul.language_list {
		background-color: #fff;
		position: absolute;
		top: 40px;
		right:0px;
		border: 1px solid #ccc;
		width: 80px;
		display: none;
	}
	ul.language_list li {
		width:158px;
		text-align: center;
		float: none;
		height:auto;
	}
	ul.language_list  li{
		float: none;
		width: 100%;
	}
	#header_language a.active {
		background-color: #e7e9f3;
	}
	/*  問い合わせボタン　*/
	a#header_contact{
		display: none;
	}
	a#header_contact_usa{
		display: none;
	}

	/*  メニュー内ボタン　*/
	.btn1{
		background: #eee;
		padding:10px 10px 0 10px;
	}
	.btn1 a{
		display: block;
		background: #122889;
		border-radius: 4px;
		color: #FFF;
		text-align: center;
		padding: 10px;
		text-decoration: none;
	}
	.btn1 a:hover{
		opacity: 0.9;
	}

/*  2-2  ナビゲーション
--------------------------------------------------------------------------------------*/
	#header_btn{
		width: 40px;
		height: 40px;
		border-left: 1px solid #ccc;
		position: absolute;
		top:0px;
		right:0px;
		background: #FFF;
		border-left: 1px solid #ccc;
		box-sizing: border-box;
		display: block;
	}
	/* メニューボタンの変形 */
	#header_btn .menu_trigger,
	#header_btn .menu_trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu_trigger {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		width: 23px;
		height: 18px;
	}
	#header_btn .menu_trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #000;
		border-radius: 2px;
	}
	#header_btn .menu_trigger span:nth-of-type(1) { top: 0;}
	#header_btn .menu_trigger span:nth-of-type(2) { top: 8px;}
	#header_btn .menu_trigger span:nth-of-type(3) { bottom: 0;}
	#header_btn .menu_trigger.active span:nth-of-type(1) { transform: translateY(8px) rotate(-45deg);}
	#header_btn .menu_trigger.active span:nth-of-type(2) { opacity: 0;}
	#header_btn .menu_trigger.active span:nth-of-type(3) { transform: translateY(-8px) rotate(45deg);}
	
	/* スマホアコーディオン */
	#naviBlock{
		display: none;
		z-index: 999;
		position: absolute;
		top:41px;
		width: 100%;
		overflow: auto;
		background:rgba(51,51,51,0.9)
	}
	#globalNavi ul a {
		text-decoration: none;
		font-size: 13px;
		color: #000;
		padding: 15px;
		display: block;
		line-height: 1;
		background: url(/common_sp/jigyoubu/img/icn_link2.gif) no-repeat left center #FFF;
		background-size: 5px auto;
		margin-left: 15px
	}
	#globalNavi ul{
		margin: 0;
		padding: 0;
		width: 100%;
		height: auto;
		display:block;
		background: #FFF;
	}
	#globalNavi li{
		cursor: pointer;
		list-style: none;
		margin: 0;
		padding:0;
		border-bottom: 1px solid #ccc;
		font-size: 13px;
		position: relative;
		text-align: left;
		display:block;
	}
	#globalNavi ul ul{
		border: none;
	}
	#globalNavi li li{
		border: none;
		border-top: 1px dashed #ccc;
	}
	#globalNavi li li a{
		background: none;
	}
	#globalNavi li span{
		position: absolute;
		display: block;
		width: 2em;
		border: 1px solid #ccc;
		text-align: center;
		top: 10px;
		right: 10px;
		border-radius: 3px;
		line-height: 1;
		font-size:14px;;
		padding: 0.4em 0 0.4em 0;
		box-sizing: border-box;
		font-family: Arial, Helvetica, "sans-serif"
	}


/*  2-3  フッター
--------------------------------------------------------------------------------------*/
	#footer_part{
		border-top: 4px solid #122889;
		position: relative;
		padding-top: 15px;
	}
	.footer_pagetop{
		position: absolute;
		top:10px;
		right: 10px;
		width: 20px;
		height: 20px;
		background: url(../img/icn_gototop.gif) no-repeat left top;
		background-size: 100% auto;
	}
	.footer_pagetop a {
		width: 20px;
		height: 20px;
		display: block;
		text-indent: -9999px;
	}
	.pagetop_pc{
		display: none;
	}
	#footer-main{
	}
	.footer_title{
		text-align: center;
		font-size: 14px;
		font-weight: bold;
		padding-bottom: 10px;
		line-height: 130%;
	}
	.footer_logo{
		text-align: center;
		padding-bottom: 15px
	}
	.footer_logo img{
		width: 110px;
		height: auto;
	}
	.footer_links{
		text-align: center;
		color: #ccc;
	}

	.footer_links li{
		display: inline;
	}
	.footer_links li:first-child a {
	    border-left: 1px solid #666;
	}
	.footer_links a{
		font-size: 11px;
		text-decoration: none;
		color: #000;
		border-right: solid #666 1px;
		padding: 0 5px;
	}
	.copyright{
		text-align: center;
		font-size: 13px;
		padding: 10px 0;
	}
/*  2-4　コンテンツ
--------------------------------------------------------------------------------------*/
	#content_wp{
		overflow: hidden;
		width: 94%;
		margin: 0 auto;
		padding-top: 40px
	}
	#main_part{
		width:94%;
		float: none;
		margin: 0 auto;
		margin-bottom: 20px;
		padding-bottom: 0px;
		padding-top: 20px;
		line-height: 180%;
	}
	#sub_part{
		width:100%;
		float: none;
	}
	#navi{
		display: none;
	}



	/* -------------------------------------
		added by PU-f.
	------------------------------------- */
	#globalNavi .mega-menu .mega-header {
		display: none;
	}


}
