@charset "UTF-8";
@import url(http://fonts.googleapis.com/css?family=Roboto+Condensed);
@import url(http://fonts.googleapis.com/css?family=Open+Sans);
@import url(http://fonts.googleapis.com/css?family=Oxygen);
@import url(http://fonts.googleapis.com/css?family=PT+Mono);
@import url(http://fonts.googleapis.com/css?family=Share+Tech);

/* ---------------------------------------------------- 全体設定 ---------------------------------------------------- */

*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html, button, input, select, textarea ,body{
	font-family: 'Oxygen', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif ;
	font-weight: 400; /* normal */
	font-size:11px;
	color: #000; 
	font-smooth:always;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
	margin: 0; padding: 0; 
	}

body {
	min-height:100%;
	overflow-x: hidden;
	min-width: 960px;
}

a:link { text-decoration:none; color:#000;}
a:hover { text-decoration: none; color:#555;
    -webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	opacity:0.7;
 }
a:visited { text-decoration: underline; color:#000;}
a:active, a:focus{opacity:0.7}
table { border-spacing: 0; 	border-collapse:collapse; }
ul { list-style: none; list-style-position:outside; margin:0; padding:0;  }
ul li { margin:0; padding:0; list-style: none;}
ol { list-style: decimal;  list-style-position:outside; }
ol li { margin-bottom:5px;}

caption,th { text-align: left; }
q:before,q:after { content: ''; }
hr { border: 0;  height: 1px; background-color: #000; color: #000; }
a img,:link img,:visited img {
	border: none;
	text-align: right;
}


/* ---------------------------------------------------- コンテンツ部・エリア設定 ---------------------------------------------------- */
/* -- Media query 3 (mq3)	480px以下の場合
------------------------------------------------------------- */
@media screen and (max-width: 480px) {
#container {
	width:100%;
	height:100%;
	margin: 0 15px;
	text-align: left;
}
}
#container {
	width:100%;
	height:100%;
	margin: 0 auto;
	text-align: left;
}
#contain_inner {
	width:960px;
	margin:0 auto;
	line-height:1.8em;
}
#contain_inner.pages {
	margin-top:30px;
}
#left_box {
	float:left;
	width:320px;
	margin-right:40px;
	padding-bottom:30px;
}
.left_banner ul {
	list-style-type:none;
}
.left_banner a {
	display:block;
	margin-bottom:10px;
}
#left_boxp {
	float:left;
	width:200px;
	margin-right:70px;
	padding-bottom:30px;
}

#mainContent {
	float:right;
	width:600px;
	font-size:11px;
	line-height:21px;
	letter-spacing:0.1em;
	min-height:420px;
	position:relative;
	background-color:#FFF;
	padding:0 0 30px 0;
}
#mainContent.pages {
	float:right;
	width:690px;
	font-size:11px;
	line-height:21px;
	letter-spacing:0.1em;
	min-height:420px;
	position:relative;
	background-color:#FFF;
	padding:0 0 30px 0;
}

/* ---------------------------------------------------- メインイメージ設定 ---------------------------------------------------- */
.top_slide_base {
	width:100%;
	min-width:1200px;
	height:340px;
	max-height:340px;
	overflow:hidden;
	margin:10px 0 20px 0;
}
.slide_text {
	width:500px;
	height:110px;
	position:absolute;
	top:110px;
	left:50%;
	margin-left:-250px;
	background-image: url(../images/slider_text.png);
	background-repeat:no-repeat;
	z-index:8;
}
/* -- Media query 3 (mq3)	480px以下の場合
------------------------------------------------------------- */
@media screen and (max-width: 480px) {
.top_slide_base {
	width:100%;
	min-width:960px;
	height:340px;
	max-height:340px;
	overflow:hidden;
	margin:10px 0 20px 0;
}
.slide_text {
	width:500px;
	height:110px;
	position:absolute;
	top:110px;
	left:50%;
	margin-left:-250px;
	background-image: url(../images/slider_text.png);
	background-repeat:no-repeat;
	z-index:8;
}

}
/* ---------------------------------------------------- ヘッダー部設定 ---------------------------------------------------- */

#header {
	width:100%;
	margin:0 auto 10px auto;
	padding:0;
	border-bottom:5px double #003959;
  }
.header_inner {
	 width:960px;
	 margin:0 auto 20px auto;
 }
.head_logo {
	width:410px;
	float:left;
}
.head_logo .label {
	width:115px;
	height:100px;
	float:left;
	background-image:url(../img/logo_label.gif);
	background-repeat:no-repeat;
	display:block;
	-webkit-box-shadow: 0px 1px 5px 1px #DDD; /* Safari, Chrome用 */
	-moz-box-shadow: 0px 1px 5px 1px #DDD; /* Firefox用 */
	box-shadow: 0px 1px 5px 1px #DDD; /* CSS3 */
}
.head_logo a {
	width:275px;
	height:35px;
	background-image:url(../img/logo.gif);
	background-repeat:no-repeat;
	display:block;
	margin:60px 0 10px 135px;
}
.head_navi {
	width:550px;
	float:right;
	padding-top:70px;
}
.head_navi .btn li {
	float:right;
}
.head_navi .btn li a {/**/
	display:block;
	width:110px;
	margin-left:15px;
}
/*.head_navi .btn li a span  {
	padding-right:5px;
	padding-top:12px;
	font-weight:600;
	color:#B3CF5C;
}*/
.head_navi .btn li a:hover {
	display:block;
	background-color:rgba(255,255,255,0.6);
}
/*-----*/

/* ---------------------------------------------------- global navi 設定 ---------------------------------------------------- */

#navibar {
	width:100%;
	height:56px;
	margin:0;
	background-image:url(../images/navibar.jpg);
	background-repeat:repeat-x;
}
#navibar .inner {
	width:960px;
	height:56px;
	margin:0 auto;
}
ul#navi li {
	float:left;
	position:relative;
	z-index:2000;
}
ul#navi li a {
	width:160px;
	height:56px;
	float:left;
	font-size:13px;
	letter-spacing:.1em;
	line-height:1.3em;
	text-align:center;
	position:relative;
	text-shadow: 0 0 3px rgba(0,0,0,0.1);
	cursor:pointer;
	display:block;
	color:#FFF;
	font-weight:900;
}
ul#navi li.short a {
	letter-spacing:0;
}
ul#navi li a:hover {
	opacity:1;
	background-color:rgba(220,230,255,0.3);
}
ul#navi li:last-child a {
	width:138px;
	float:right;
	display: none;
}
ul#navi li a .navibox {
	width:160px;
	height:42px;
	margin:7px 0;
	padding:6px 0;
	border-left:1px solid #FFF;
}
ul#navi li:last-child a .navibox {
	width:138px;
	border-right:1px solid #FFF;
}
ul#navi li:nth-child(6) a .navibox {
	border-right:1px solid #FFF;
}
ul#navi li span {
	font-size:10px;
	font-family:Georgia, "Times New Roman", Times, serif;
	letter-spacing:0;
}

	#navi, #navi ul {
		padding: 0;
		list-style: none;
	}
	
	

	#navi {
		zoom:1;
	}

	/*第1階層 設定*/
	#navi ul {
		margin:-10px 0 0 0;
		_margin: 0; /*IE6 only*/
		position: absolute;
		top:57px;
		left: 0;
		z-index: 10000;
		background-color: #89B6E0;
		background-color:rgba(30,70,110,0.5);
		opacity: 0;
		-webkit-transition:visibility 0s 0.3s, all 0.3s ease-in-out;
		-moz-transition:visibility 0s 0.3s, all 0.3s ease-in-out;
		-ms-transition:visibility 0s 0.3s, all 0.3s ease-in-out;
		-o-transition:visibility 0s 0.3s, all 0.3s ease-in-out;
		transition:visibility 0s 0.3s, all 0.3s ease-in-out;
 	}
	#navi ul li {
		float: none;
		display: block;
		border: 0;
		_line-height: 0; /*IE6 only*/
	}
	#navi ul li a {    
		padding: 6px 10px 0 10px;
		width: 160px;
		height:30px;
		display: block;
		white-space: nowrap;
		float: none;
		text-transform: none;
		text-align:left;
		border-bottom:1px solid #FFF;
		font-size:12px;
		letter-spacing:.1em;
		background-position:left center;
	}
	#navi ul li.twoline a {
		height:43px;
	}
	#navi ul li a:hover {
		opacity:1;
		background-color:rgba(220,235,255,0.4);
		background-image:url(../images/global_arrow.png);
		background-repeat:no-repeat;
		background-position:left top;
		padding: 6px 10px 0 16px;
		-webkit-transition:all 0.1s ease-in-out;
		-moz-transition:all 0.1s ease-in-out;
		-ms-transition:all 0.1s ease-in-out;
		-o-transition:all 0.1s ease-in-out;
		transition:all 0.1s ease-in-out;  
	}

	#navi li:hover > ul {
		opacity: 1;
		visibility: visible;
		margin: 0;
	}
	
	#navi ul ul {
		top: 70px;
		left: 0;
		margin: 0 0 0 12px;
		_margin: 0; /*IE6 only*/
	}
	
	
	
	/*--第2階層 設定--*/
	#navi ul ul li a {
	width:163px;
	height:37px;
	margin-bottom:3px;
	padding: 12px 0px 0px 8px;
    display: block;
	text-align:left;
	opacity: 0.9;
	letter-spacing:0px;
/*--TRANSISTIONS--*/
	-webkit-transition: background 0.4s ease;
	-moz-transition: background 0.4s ease;
	-o-transition: background 0.4s ease;
	-ms-transition: background 0.4s ease;
	transition: background 0.4s ease;
    background-color: #333;
	}
	
	#navi ul li.line2 a {
		padding-top:5px;
		line-height:15px;
		height:37px;
}

	.menu_short_lv1 {
		font-size:11px !important;
		letter-spacing:0 !important;
}
	.menu_short_lv2 {
		font-size:10px !important;
		letter-spacing:0 !important;
}
	 .menu_short_lv3 {
		font-size:10px !important;
		letter-spacing:-.1em !important;
}







/* ---------------------------------------------------- target_navi 設定 ---------------------------------------------------- */

.target_navi {
	width:100%;
	height:50px;
	margin:0 0 30px 0;
	background-image:url(../images/targetnavi.jpg);
	background-repeat:repeat-x;
}
.target_navi .inner {
	width:960px;
	height:50px;
	margin:0 auto;
}
.target_navi li {
	float:left;
}
.target_navi li a {
	width:320px;
	height:50px;
	float:left;
	padding:15px;
	font-size:13px;
	font-weight:800;
	letter-spacing:.1em;
	line-height:1.3em;
	text-align:center;
	color:#FFF;
	border-left:1px solid #FFF;
}
.target_navi li a:hover {
	opacity:1;
	background-color:rgba(235,255,255,0.4);
}
.target_navi li:last-child a {
	border-right:1px solid #FFF;
}
	

/* ---------------------------------------------------- local_navi 設定 ---------------------------------------------------- */

.local_navi {
	margin-bottom:20px;
}

.local_navi li {
	background-image:url(../images/localbtn.png);
	background-repeat:no-repeat;
	margin-bottom:8px;
}
.local_navi li a {
	display:block;
	width:201px;
	height:51px;
	font-size:13px;
	font-weight:bold;
	padding:16px 5px 16px 18px;
	letter-spacing:.1em;
	color:#4991CE;
}
.local_navi li.stay a {
	opacity:0.7;
	background-color:rgba(225,255,255,0.4);
}
.local_navi li a:hover {
	background-color:rgba(225,255,255,0.4);
	opacity:0.9;
}
.local_navi li.local_sub {
	background-color:#f0f0f5;
	background-image:url(../images/localbtn2.png);
	background-repeat:no-repeat;
}
.local_navi li.local_sub a{
	display:block;
	width:201px;
	height:30px;
	font-size:12px;
	padding:5px 5px 3px 18px;
	letter-spacing:.1em;
	color:#4991CE;
	margin-top:-8px;
	border-bottom:1px dotted #4991CE;
}

.local_navi li.local_sub a:hover {
	background-image:none;
	background-color:rgba(225,255,255,0.4);
	opacity:0.9;
}


/* ---------------------------------------------------- フッター部設定 ---------------------------------------------------- */

#footer{
	width:100%;
	height:100px;
	margin:0;
	background-color:#F2F2F3;
	}
.bottom {
	width:100%;
	height:30px;
	background-color:#003959;
}
.footer_inner {
	width:960px;
	height:70px;
	margin:0 auto;
	text-align:left;
	position:relative;
}
.foot_txt {
	float:left;
	font-size:13px;
	font-weight:700;
	letter-spacing:.2em;
	margin:26px 20px 20px 0;
}
.foot_txtmini {
	float:left;
	font-size:10px;
	letter-spacing:.1em;
	line-height:1.5em;
	margin:20px 20px 20px 0;
}
.tssystem{
	width:135px;
	height:40px;
	float:left;
	margin:15px 20px 15px 0;
}
.footer_copy {
	width:960px;
	margin:0 auto;
	font-size:10px;
	font-weight:400;
	letter-spacing:.1em;
	padding:7px 0;
	color:#FFF;
}
.submenu {
	float:right;
	color:#FFF;
	letter-spacing:.2em;
	text-align:right;
}
.submenu a {
	color:#FFF;
	font-weight:800;
}
.gototop a {
	width:126px;
	height:28px;
	background-image:url(../img/totop.gif);
	background-repeat:no-repeat;
	position:absolute;
	right:10px;
	top:20px;
}
.gototop a:hover{
	background-color:rgba(240,240,240,0.8);
}


.breadcrumbs {
	text-align:left;
	width:100%;
	padding:5px 5px;
	letter-spacing:.1em;
	font-size:11px;
	height:15px;
	margin-bottom:13px;
	background-color: #E3E3E3;
	height:25px;
	color:#000;
}
.breadcrumbs_inner {
	width:960px;
	margin:0 auto;
}


.breadcrumbs a:link,.breadcrumbs a:visited {
	background:none;
	color:#000;
	}
	
.breadcrumbs a:hover,.breadcrumbs a:active {
	color:#888;
	text-decoration: underline;
	background:none;
}


.breadcrumbs span {
	color:#4991CE;
	}



.scroll{ 
	overflow: auto;
}


/* ---------------------------------------------------- CMS 設定 ---------------------------------------------------- */

.cms_area {
	width:680px;
	float:left;
}

.cms_maintitle {
	width:680px;
	height:40px;
	background-color:#003959;
	padding:7px 20px;
	font-size:14px;
	letter-spacing:.1em;
	margin-bottom:15px;
	color:#FFF;
}

.cms_maintitle > span {
	font-family: 'Share Tech', sans-serif;
	font-size:23px;
	letter-spacing:.05em;
	font-weight:500;
	color: #F3837D;
	padding:15px 20px 0 10px; ;
}


.more a {
	float:right;
	font-size:11px;
	padding:8px 10px 0 0 ;
	color:#FFF;
}
.more span  {
	padding-right:3px;
	font-weight:500;
	color:#F3837D;
}


.cms_block a {
	display:block;
	width:100%;
	font-size:11px;
	letter-spacing:.1em;
	border-bottom:1px dotted #AAA;
	padding:10px 0 8px 0;
}
.cms_block a:hover {
	background-color: #9CF ;
	opacity:0.5;
}


/* 再使用できる各種クラス */
.fltrt { /* このクラスは，ページ上でフローティングエレメントを右側に配置するのに使用できます。プローティングエレメントは，ページ上でその横に配置されるエレメントの前に配置される必要があります。 */
	float: right;
	margin-left: 8px;
}
.fltlft { /* このクラスは，ページ上でフローティングエレメントを左側に配置するのに使用できます */
	float: left;
	margin-right: 8px;
}
.clearfloat { /* このクラスは，div またはブレークエレメントに適用される必要があり，また，フローティングエレメントが完全に含まれているコンテナの末尾の直前にある最後のエレメントである必要があります */
	clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;

}

.paragraph:before,
.paragraph:after {
    content: " ";
    display: table;
}

.paragraph:after {
    clear: both;
}


* html .clearfix {
	height: 1px;
	/*¥*//*/ /*MAC IE5.x対策*/
	height: auto;
	overflow: hidden;
	/**/
}



.short1 {
	letter-spacing:0px;
}

.short2 {
	letter-spacing:-0.5px;
}
.short2 a{
	letter-spacing:-0.5px;
}

.short3 {
	letter-spacing:-0.1em;
}
.short4 {
	letter-spacing:-0.2em;
}

/* -- Media query 3 (mq3)	480px以下の場合
------------------------------------------------------------- */
@media screen and (max-width: 480px) {
}



/* ----------------------------------------------------テキスト設定 ---------------------------------------------------- */
.txt_center{
	text-align:center;
}
