@charset "UTF-8";

* {
	margin: 0px;
	padding: 0px;
}

html, body {
	height: 100%;
}

div#page {
	width: 100%;
	min-width: 760px;
	min-height: 100%;
	margin: 0px auto;
	overflow: hidden;
	position: relative;
}


/* --------------------------------------------------------------------- */
/* contents */
/* --------------------------------------------------------------------- */

div#homeContentsArea {
	width: 100%;
	/*height: 490px;*/
	text-align: center;
	position: absolute;
	z-index: 9000;
	left: -10px;
	top: 0px;
	/*z-index: 10;*/
	}
	div#homeContentsInner {
		width: 760px;
		margin: 0 auto;
		position: relative;
		}
		div#homeContentsArea1 {
			width: 250px;
			position: absolute;
			left: 510px;
			top: 0px;
			}
			div#homeContentsArea2 {
				width: 250px;
				/*height: 490px;*/
				position: relative;
			}
			h1#homeLogo {
				position: absolute;
				left: 0px;
				top: 390px;
				/zoom: 1;
			}
			nav#homeMenu1 {
				display: block;
				text-align: left;
				}
				nav#homeMenu1 ul li {
					position: absolute;
				}
				nav#homeMenu1 ul li#hMenu1_1 {
					background: url(../../images/menu1_on.gif) no-repeat left top;
					left: 0px;
					top: 474px;
				}
				nav#homeMenu1 ul li#hMenu1_2 {
					background: url(../../images/menu2_on.gif) no-repeat left top;
					left: 130px;
					top: 474px;
				}
				nav#homeMenu1 ul li#hMenu1_3 {
					background: url(../../images/menu3_on.gif) no-repeat left top;
					left: 0px;
					top: 518px;
				}
				nav#homeMenu1 ul li#hMenu1_4 {
					background: url(../../images/menu4_on.gif) no-repeat left top;
					left: 130px;
					top: 518px;
				}
				nav#homeMenu1 ul li#hMenu1_5{
					background: url(../../images/menu5_on.gif) no-repeat left top;
					left: 0px;
					top: 563px;
				}
				nav#homeMenu1 ul li#hMenu1_6 {
					background: url(../../images/menu6_on.gif) no-repeat left top;
					left: 130px;
					top: 563px;
					}
					/*------- submenu -------*/
					nav#homeMenu1 ul li span.hMenuSubBox {
						display: block;
						position: relative;
						}
						nav#homeMenu1 ul li span.hMenuSubBox div.hMenuSubArea {
							display: block;
							width: 111px;
							position: absolute !important;
							left: -110px;
							top: -2px;
							background: #ffffff;/* ieの背景透明がhover効かない対策 */
							/* js */
							visibility: hidden;
							}
							nav#homeMenu1 ul li span.hMenuSubBox div.hMenuSubArea ul {
								display: block;
								width: 100px;
								background: #d6e2df;
								padding-bottom: 1px;
								/*
								/vertical-align: bottom;
								/zoom: 1;
								/position: relative;
								*/
								}
								nav#homeMenu1 ul li span.hMenuSubBox div.hMenuSubArea ul li {
									position: relative;
									/vertical-align: bottom;
									/zoom: 1;
									/position: relative;
									}
									nav#homeMenu1 ul li span.hMenuSubBox div.hMenuSubArea ul li img {
										padding: 1px 1px 0px 1px;
										background: #d6e2df;/* ie lt8 */
										/vertical-align: bottom;
										/zoom: 1;
										/position: relative;
									}





			nav#homeMenu2 {
				display: block;
				text-align: left;
				}
				nav#homeMenu2 ul li {
					position: absolute;
					/*position: relative;*/
				}
				nav#homeMenu2 ul li#hMenu2_1 {
					left: 0px;
					top: 552px;
				}
				nav#homeMenu2 ul li#hMenu2_2 {
					left: 130px;
					top: 552px;
				}
				nav#homeMenu2 ul li#hMenu2_3 {
					left: 0px;
					top: 570px;
				}
				nav#homeMenu2 ul li#hMenu2_4 {
					left: 130px;
					top: 570px;
				}
				/**/
				nav#homeMenu2 ul li a {
					display: block;
					position: relative;
					/zoom: 1;
				}
				nav#homeMenu2 ul li span.menuBox{
					display: block;
					background: url(../images/obj1.gif) no-repeat 0px center;
					height: 10px;
				}
				nav#homeMenu2 ul li span.menuF1 {
					width: 123px;
				}
				nav#homeMenu2 ul li span.menuF2 {
					width: 68px;
				}
				nav#homeMenu2 ul li span.menuF3 {
					width: 102px;
				}
				nav#homeMenu2 ul li span.menuF4 {
					width: 68px;
					}
					nav#homeMenu2 ul li span.menuBox span {
						display: block;
						position: absolute;
						/zoom: 1;
					}
					nav#homeMenu2 ul li span.menuBox span.regular {
						z-index: 1;
					}
					nav#homeMenu2 ul li span.menuBox span.hover {
						z-index: 2;
						visibility: hidden;
						}
						nav#homeMenu2 ul li span.menuBox span img {
							padding-left: 9px;
						}
			nav#homeMenu3 ul#homeLang {
				width: 77px;
				text-align: left;
				position: absolute;
				left: 75px;
				top: 688px;
				background: url(../images/bg_menu_lang.gif) no-repeat 36px 0px;
				}
				nav#homeMenu3 ul#homeLang li.langL {
					float: left;
				}
				nav#homeMenu3 ul#homeLang li.langR {
					float: right;
					}
					nav#homeMenu3 ul#homeLang li a {
						display: block;
						position: relative;
						}
						nav#homeMenu3 ul#homeLang li a span.menuBox {
							display: block;
							height: 8px;
						}
						nav#homeMenu3 ul#homeLang li a span.menuEn {
							display: block;
							width: 34px;
						}
						nav#homeMenu3 ul#homeLang li a span.menuCh {
							display: block;
							width: 35px;
							}
							nav#homeMenu3 ul#homeLang li a span.menuBox span {
									display: block;
									position: absolute;
							}
							nav#homeMenu3 ul#homeLang li a span.menuBox span.regular {
								z-index: 1;
							}
							nav#homeMenu3 ul#homeLang li a span.menuBox span.hover {
								z-index: 2;
								visibility: hidden;
								}
								nav#homeMenu3 ul#homeLang li a span.menuBox span img {
									display: block;
									margin: 0 auto;
								}
			nav#homeMenu3 ul#headerMenuSns {
				width: 66px !important;
				position: absolute;
				left: 0px;
				top: 680px;
				}
				nav#homeMenu3 ul#headerMenuSns li {
					width: 22px;
					float: left;
					}
					nav#homeMenu3 ul#headerMenuSns li a {
						display: block;
						margin-right: 5px !important;
						margin-left: 0px !important;
					}
			p#homeCopyright {
				position: absolute;
				left: 0px;
				top: 605px;
				}

div#homeVisualArea {
	width: 100%;
	height: 100%;
	text-align: left;
	/*background: #cccccc;*/
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 1;
	/zoom: 1;
	}
	div#homeVisualInner {
	width: 100%;
	height: 100%;
	text-align: left;
	overflow: hidden;
	position: relative;
	/zoom: 1;
	}
	p#homeVisualCover img {
		position: absolute;
		left: 0px;
		top: 0px;
		z-index: 8000;/*js??*/
	}
	div#homeVisualArea ul li {
		position: absolute;
		right: 0px;
		top: 0px;
		z-index: 1;
		}

div#homeTopicsArea {
	width: 100%;
	height: 39px;
	border-top: #e1e1e1 solid 1px;
	background: #f4f4f4;
	text-align: center;
	overflow: hidden;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 10000;
	}
	div#homeTopicsInner {
		width: 760px;
		height: 39px;
		margin: 0 auto;
		position: relative;
		overflow: hidden;
		/zoom: 1;
		}
		nav#homeBannerArea {
			display: block;
			padding-left: 30px;
			background: url(../../images/home_news_link_bg.png) left top no-repeat;
			position: absolute;
			right: -2px;
			top: 0px;
			z-index: 900;
			}
			nav#homeBannerArea ul {
				width: 365px;
				border-left: #e1e1e1 solid 1px;

				}
				nav#homeBannerArea ul li {
					float: left;
					border-right: #e1e1e1 solid 1px;
					background: #f4f4f4;
				}
		h2#homeTitleNews {
			display: block;
			position: absolute;
			left: 0px;
			top: 14px;
		}
		ul#homeNewsList {
			text-align: left;
			margin-left: 55px;
			position: relative;
			}
			ul#homeNewsList li {
				width: 1000px;
				line-height: 1.4;
				font-size: 85%;
				/*padding-top: 12px;*/
				position: absolute;
				left: 0px;
				top: 12px;
				}
				ul#homeNewsList li a {
					color: #000000;
				}
				ul#homeNewsList li a:hover span {
					text-decoration: none !important;
					color: #ffffff;
					background: #000000;
				}
				ul#homeNewsList li time {
					display: inline-block;
					/display: inline;
					/zoom: 1;
					/position: relative;
					padding-right: 0.6em;
				}


/* --------------------------------------------------------------------- */
/* loading */
/* --------------------------------------------------------------------- */

div#homeLoadingArea {
	width: 100%;
	text-align: center;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 50000;
	}
	div#homeLoadingBox {
		width: 396px;
		margin: 0 auto;
		position : relative;
		}
		p#loadingIcon1 {
			position: absolute;
			left: 167px;
			top: 0px;
			z-index: 10001;
		}
		p#loadingIcon2 {
			position: absolute;
			left: 167px;
			top: 0px;
			z-index: 10002;
			}
			p#loadingIcon1 span,
			p#loadingIcon2 span {
				display: block;
				width: 60px;
				/*height: 60px;*/
				height: 60px;
				position: relative;
				overflow: hidden;
			}
		p#loadingView {
			font-family: "Helvetica", "Arial", "Verdana", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro","&#xff2d;&#xff33;&#x20;&#xff30;&#x30b4;&#x30b7;&#x30c3;&#x30af;",メイリオ, Meiryo,Osaka,"ＭＳ Ｐゴシック", sans-serif;
			width: 396px;
			text-align: center;
			color: #49a38d;
			padding-top: 70px;
			}
			p#loadingView span.loadingNum {
				font-size: 138.5%;
				font-weight: bold;
			}
			p#loadingView span.loadingDigit {
				font-size: 93%;
			}

div#homeOpCover1 {
	width: 100%;
	height: 100%;
	/*background: url(../../images/bg_op.gif) repeat;*/
	background: #ffffff;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 5;
	}
	div#homeOpCover2 {
	width: 100%;
	height: 100%;
	background: #ffffff;
	}

/* --------------------------------------------------------------------- */
/* js */
/* --------------------------------------------------------------------- */

div#homeVisualArea,
div#homeVisualArea img,
div#homeContentsArea1 {
	/*-webkit-transform-origin: 50% 55%;*/
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	-ms-transform-style: preserve-3d;
	-o-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

div#homeLoadingArea,
div#homeContentsArea,
div#homeVisualArea,
div#homeTopicsArea {
	visibility: hidden;
}

/*背景3dアニメーション立体はみ出し対策*/
div#homeContentsArea1 {
	-webkit-transform: translateZ(10px);
	-moz-transform: translateZ(10px);
	-ms-transform: translateZ(10px);
	-o-transform: translateZ(10px);
}


.toplbox {background: #f4f4f4; z-index: 1000; position: relative; z-index: 1000; }
#toptoopp {
width: 1010px;
margin: 0 auto;
	background: #f4f4f4;
}



#kanrenBox {
	width: 770px;
	padding: 0px 0;
	text-align: left;
	float: left;
}

.kanrentit {
	margin: 0 0 20px 0;
}

#kanrenBox h4 {
	font-size: 13px;
	font-weight: bold;
	margin: 7px 0 4px;
	text-align: left;
	line-height: 1.3;
}

#kanrenBox a {
	color: #000;
	text-decoration: none;
}

#kanrenBox p {
	font-size: 12px;
	text-align: left;
		line-height: 1.6;
}

#kanrenBox ul {
	overflow: hidden;
	margin-right: -30px;
}




#kanrenBox li {
	width: 165px;
	height: 270px;
	float: left;
	margin-right: 25px;
	list-style: none;
}

#blogbox {
	float: right;
	width: 240px;
	clear: right;
	text-align: left;
}



#blogbox ul {
	background: #fff;
	padding: 15px;
}

#blogbox a {
	color: #000;
	text-decoration: none;
}

#blogbox li {
	list-style: none;
	margin-bottom: 15px;
	font-size: 11px;
	line-height: 1.5;
}

.nfoo {background: #fff; position: relative; z-index: 1000; }
.nffoo {
width: 1000px;
margin: 0 auto;
text-align: right;
}

.textArea h3 {
	font-size: 12px;
	font-weight: bold;
	line-height: 1.3;
}

.textArea p {
	margin-top: 5px;
}

.tabcontentsAera img {

}

p.example {
height: 55px;
position: relative;
}

p.example img {
position: absolute;
clip: rect(0px 55px 55px 0px);
}

.toptxxx p {
	margin-bottom: 1.5em;
	line-height: 1.7;
}

.texbb {
	font-size: 16px;
	font-weight: bold;
	margin: 10px 0 15px;
	color: #7F7F7F;
}


#ntopwbox {
	background: #fff;
}

.ntowi {
	width: 1010px;
	margin: 45px auto;
	text-align: left;
}

.ntopleft {
	width: 730px;
	float: left;
}

.ntopright {
	width: 240px;
	float: right;
}

.ntopright li {
	list-style: none;
}