/* CSS Document */
/********** Base **********/
body {
	color:#282828;
	font-size:13px;
	font-family:Arial, Helvetica, sans-serif;
	line-height:1.6em;
}
html, body, h1, h2, h3, h4, p, ul, li{
	margin:0;
	padding:0;
}
#wrapper{
	width:1000px;
	margin:0 auto;
}
h2{
	font-size:1.2em;
}
img{
	border:none;
}
ul{
	list-style-type:none;
}
textarea{
	resize:none;
}
label:hover{
	cursor:pointer;
}
table{
	width:100%;
	margin-top:10px;
	border:1px solid #CCCCCC;
	border-collapse:collapse;
}
th{
	width:200px;
	padding:3px 0 3px 12px;
	background:#E6E6E6;
	border:1px solid #CCCCCC;	
	text-align:left;
}
td{
	padding:6px 12px 6px;
	border:1px solid #CCCCCC;	
}
span.caution, span.caution a{
	color:#FF0000;
}


/********** Top **********/
#top{
	padding-top:16px;
	overflow:hidden;
	zoom:100%;
}
#top h1{
	padding:10px 0 5px 40px;
	float:left;
	border-bottom:1px solid #D2D2D2;
}
#top h1 a{
	width:275px;
	height:35px;
	display:block;
	overflow:hidden;
	background:url(../images/company_name.png) no-repeat 0px 0px;
	text-indent:-9999px;
}
#top h1 a:active{
	opacity:0.3;
}
span.nav{
	width:100px;
	height:50px;
	padding-bottom:5px;
	float:left;
	background:url(../images/nav_bg1.png) no-repeat -100px 50px;
	text-align:center;
}
span.nav a{
	height:30px;
	padding-top:20px;
	display:block;
	background:url(../images/nav_bg2.png) no-repeat 0 50px;
	color:#000000;
	font-weight:bold;
	text-decoration:none;
}
span.nav a:active,
span.nav a:focus{
	outline:none;
	color:#999999;
}
#currentNav{
	background-position:0 50px;
}
#currentNav a{
	background-position:0 15px;
}
#top img{
	width:105px;
	padding:7px 40px 8px;
	float:left;
	border-bottom:1px solid #D2D2D2;
}
#top img.noNav{
	padding-left:540px;
}


/********** Index:Common **********/
div.hgroup{
	border:1px solid #CCCCCC;
}
div.hgroup h2{
	height:27px;
	padding-left:10px;
	background:url(../images/long_black_h.png) no-repeat;
	border:1px solid #FFFFFF;
	color:#FFFFFF;
	font-size:1.2em;
	font-weight:normal;
	line-height:27px;
}
div.hgroup a{
	color:#FFFFFF;
}


/********** Index:Photo **********/
#indexPhoto{
	width:890px;
	height:70px;
	margin:20px 40px 0;
	padding:50px 30px 0 0;
	background:url(../images/index_photo.jpg) no-repeat;
	color:#FFFFFF;
	font-size:1.4em;
	font-weight:normal;
	text-align:right;
}


/********** Index:StaffVoice **********/
#indexStaffVoice{
	width:918px;
	margin:10px 40px 0;
	overflow:hidden;
	background:#303030;
	border:1px solid #CCCCCC;
	color:#FFFFFF;
	zoom:100%;
}
#indexStaffVoice div.hgroup{
	border-top:none !important;
	border-right:none !important;
	border-left:none !important;
}
#indexStaffVoice div.main{
	padding:10px;
	overflow:hidden;
	border:1px solid #FFFFFF;
	zoom:100%;
}
#indexStaffVoice img{
	margin:0 10px 10px 0;
	float:left;
}
#indexStaffVoice div.main div{
	padding-bottom:5px;
	overflow:hidden;
	border-bottom:1px solid #FFFFFF;
	zoom:100%;
}
#indexStaffVoice h3{
	width:650px;
	float:left;
	font-size:1.2em;
}
#indexStaffVoice div.main div span{
	width:200px;
	float:right;
	text-align:right;
}
#indexStaffVoice p{
	margin-top:10px;
	overflow:hidden;
	zoom:100%;
}
#indexStaffVoice p.readmore{
	text-align:right;
}
#indexStaffVoice a{
	color:#FFFFFF;
}

/********** Index:Business **********/
#indexBusiness{
	margin:20px 40px 0;
	overflow:hidden;
	zoom:100%;
}
#indexBusiness div{
	width:300px;
	float:left;
	background:url(../images/blog_bg.png) no-repeat 1px 30px;
	border:1px solid #CCCCCC;
}
#indexBusiness div.center{
	margin:0 7px;
}
#indexBusiness h2{
	height:26px;
	padding-left:20px;
	background:url(../images/short_white_h.png) no-repeat;
	border:1px solid #FFFFFF;
	font-size:1.2em;
	font-weight:normal;
	line-height:26px;
}
#indexBusiness img{
	display:block;
	padding:20px 31px 0;
	border-top:1px solid #CCCCCC;
}
#indexBusiness p{
	height:200px;
	margin:20px 20px 0;
}
#indexBusiness a.readmore{
	width:250px;
	margin:20px auto 10px;
	display:block;
	background:#303030;
	background:-webkit-gradient(linear, left top, left bottom, from(rgba(100,100,100,1)), to(rgba(50,50,50,1)));
	border:#666666;
	color:#FFFFFF;
	text-align:center;
	text-decoration:none;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}
#indexBusiness a.readmore:hover{
	background:#666666;
	background:-webkit-gradient(linear, left top, left bottom, from(rgba(150,150,150,1)), to(rgba(100,100,100,1)));
}


/********** Index:Topics **********/
#indexTopics{
	margin:20px 40px 0;
}


/********** Index:Information **********/
#indexInformation{
	margin:20px 40px 0;
	overflow:hidden;
	zoom:100%;
}
#indexInformation div{
	width:192px;
	height:300px;
	padding:38px;
	border:15px solid #DDDDDD;
	float:left;
	background:#C7C7C7;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}
#indexInformation div.center{
	margin:0 13px;
}
#indexInformation img{
	max-width:100%;
}
#indexInformation a:hover img{
	outline:1px solid #0000FF;
}


/********** Separate:Common **********/
#main{
	width:655px;
	padding:0 0 20px 40px;
	float:left;
	overflow:hidden;
	zoom:100%;
}
#itemTitle{
	width:230px;
	margin:20px 40px 0;
	font-size:1.6em;
	font-weight:normal;
	text-align:center;
}
#itemTitle small{
	font-size:0.6em;
}
#itemSubTitle{
	width:886px;
	height:31px;
	margin:20px 40px 10px;
	padding-left:35px;
	background:url(../images/long_white_h.png) no-repeat;
	font-weight:normal;
	line-height:31px;
}
div.article{
	margin-top:10px;
	border:1px solid #CCCCCC;
}
div.article h2{
	height:27px;
	padding-left:10px;
	background:url(../images/long_black_h.png) no-repeat;
	border:1px solid #FFFFFF;
	color:#FFFFFF;
	font-weight:normal;
	line-height:27px;
}
img.itemPhoto{
	margin-top:10px;
}


/********** Sidebar **********/
#sidebar{
	width:246px;
	padding:0 40px 20px 0;
	float:right;
	font-size:0.9em;
}
div.sideContents{
	width:236px;
	margin-top:10px;
	padding:5px;
	overflow:hidden;
	background:#333333;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	zoom:100%;
}
div.sideContents h3{
	background:#000000;
	color:#FFFFFF;
	text-align:center;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}
div.sideContents ul{
	margin:10px;
}
div.sideContents li{
	line-height:1.6em;
}
div.sideContents a{
	padding-left:15px;
	overflow:hidden;
	background:url(../images/sidebar_listmarker1.png) no-repeat 0 5px;
	color:#FFFFFF;
	text-decoration:none;
	zoom:1;
}
div.sideContents a:hover{
	background:url(../images/sidebar_listmarker2.png) no-repeat 0 5px;
	color:#999999;
}
div.sideContents li.current a{
	background:url(../images/sidebar_listmarker3.png) no-repeat 0 5px;
	color:#FF3333;
}
#sideInformation{
	width:236px;
	margin-top:10px;
	padding:5px;
	overflow:hidden;
	background:#CCCCCC;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	zoom:100%;
}
#sideInformation h3{
	background:#FFFFFF;
	color:#333333;
	text-align:center;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}
#sideInformation div{
	margin:20px 7px;
}
#sideInformation img{
	width:220px;
}
#sideInformation a:hover img{
	outline:1px solid #0000FF;
}
#sideInformation p{
	height:165px;
	margin:0 auto;
}
#sideInformation p:nth-of-type(2){
	height:80px;
}


/********** Business **********/
div.businessText{
	padding:10px;
	overflow:hidden;
	border-top:1px solid #CCCCCC;
	zoom:100%;
}
div.businessText p{
	overflow:hidden;
	zoom:100%;
}
div.businessText img{
	max-width:100%;
	margin:10px 10px 0 0;
	float:left;
	clear:both;
}
div.businessText object{
	display:block;
	margin-top:10px;
}
div.businessNote{
	padding:0 10px;
	border-top:1px solid #CCCCCC;
	text-align:right;
}
div.businessNote span{
	float:left;
}


/********** Company **********/
#companyHistory{
	margin-top:20px;
}
#companyAccess{
	margin-top:20px;
}
#companyAccess div.map{
	width:360px;
	margin-top:10px;
	padding-right:10px;
	float:left;
}
#companyAccess div.adress{
	width:263px;
	margin-top:10px;
	float:left;
	padding:10px;
	border:1px solid #CCCCCC;
}
#companyAccess ul{
	margin-top:5px;
	padding-left:1.5em;
	list-style:disc;
}


/********** Concept **********/
#conceptContent{
	margin-top:10px;
	padding:0 20px 20px;
	overflow:hidden;
	border:1px solid #CCCCCC;
	zoom:100%;
}
#conceptContent img{
	width:72px;
	padding:30px 20px 30px 30px;
	float:left;
}
#conceptContent p{
	margin:20px 0 0 122px;
	line-height:3em;
}


/********** Greeting **********/
#greetingContent{
	margin-top:10px;
	padding:0 20px 20px;
	overflow:hidden;
	border:1px solid #CCCCCC;
	zoom:100%;
}
#greetingContent img{
	width:30px;
	padding:30px 20px 30px 30px;
	float:left;
}
#greetingContent p{
	margin:20px 0 0 80px;
}


/********** Blog **********/
div.blogNote{
	padding:0 10px;
	border-top:1px solid #CCCCCC;
	border-bottom:1px solid #CCCCCC;
	text-align:right;
}
div.blogNote span{
	float:left;
}
div.blogText{
	padding:10px;
	overflow:hidden;
	zoom:100%;
}
div.blogText img{
	max-width:100%;
	margin:10px 20px 10px 0;
	float:left;
	clear:both;
}
div.blogText object{
	max-width:100%;
	margin:10px auto 0;
	display:block;
}


/********** Contact **********/
#contactContent{
	margin-top:10px;
	padding:0 20px 20px;
	border:1px solid #CCCCCC;
}
#contactContent h3{
	margin-top:20px;
	font-size:1em;
}
input.altTextField{
	margin-bottom:10px;
}
#contact_email,#contactContent textarea{
	width:350px;
}


/********** Recruit **********/
#recruitContent{
	margin-top:10px;
	padding:20px;
	overflow:hidden;
	border:1px solid #CCCCCC;
	zoom:100%;
}
#recruitContent img{
	width:28px;
	padding:30px 20px 30px 30px;
	float:left;
}
#recruitContent h3{
	margin:20px 0 0 100px;
	padding-left:15px;
	background:url(../images/recruit_marker.png) no-repeat 0 6px;
	color:#CC0000;
	font-size:1em;
}
#recruitContent p{
	margin-left:100px;
}


/********** PrivacyPolicy & Sitemap **********/
#privacyPolicyContent,
#sitemapContent{
	margin-top:10px;
	padding:20px;
	border:1px solid #CCCCCC;
}
#privacyPolicyContent h3{
	padding-top:20px;
}

#sitemapContent{
	margin-top:10px;
	padding:20px;
	border:1px solid #CCCCCC;
}
#sitemapContent ul{
	padding:0 20px;
}
#sitemapContent ul li{
	padding-top:20px;
}
#sitemapContent ul ul li{
	padding:0 0 0 14px;
	background:url(../images/sitemap2.gif) no-repeat -5px -2px;
}
#sitemapContent ul ul li:last-child{
	background:url(../images/sitemap.gif) no-repeat -5px -2px;
}

/********** 404 & 422 & 500 **********/
#statusContent{
	margin:0 40px;
}
#statusContent p{
	padding-bottom:10px;
}

/********** Pagination **********/
ul.pagination{
	margin-top:10px;
	overflow:hidden;
	zoom:100%;
}
ul.pagination li{
	margin-right:0.1em;
	display:inline;
	list-style:none;
}
ul.pagination a{
	margin-right:0.1em;
	padding:0.3em 0.6em;
	border:solid 1px #CCCCCC;
	-webkit-border-radius:0.3em;
	-moz-border-radius:0.3em;
}
ul.pagenation li.next a, li.prev a {
	font-weight:bold;
}
ul.pagination li.active{
	padding:0.3em 0.6em;
	float:left;
	display:block;
	background:#999999;
	color:#FFFFFF;
	font-weight:bold;	
	-webkit-border-radius:0.3em;
	-moz-border-radius:0.3em;
}
ul.pagination a:link, ul.pagination a:visited {  
	float:left;
	display:block;  
	text-decoration:none;  
}
ul.pagination a:hover{
	background:#CCCCCC;
}
ul.pagination li.omit{
	float:left;
}


/********** Error **********/
.fieldWithErrors input{
	border:1px solid #FF0000;
}
#errorExplanation {
  width: 400px;
  border: 2px solid red;
  padding: 7px;
  padding-bottom: 12px;
  margin: 20px 0;
  background-color: #f0f0f0;
}
#errorExplanation h2 {
  margin: -7px -7px 0;
  padding-left:10px;
  background-color: #c00;
  border-left:none;
  color: #fff;
  font-weight: bold;
  text-align: left;
}
#errorExplanation p {
  margin-bottom: 0;
  padding: 5px;
}
#errorExplanation ul {
	padding-left:20px;
}
#errorExplanation ul li {
  font-size: 12px;
  list-style: square;
}


/********** Bottom **********/
#bottom{
	margin-top:20px;
	padding-bottom:20px;
	clear:both;
	overflow:hidden;
	border-top:1px solid #CCCCCC;
	zoom:100%;
}
#bottom div{
	margin:0 40px;
	border-top:4px solid #CCCCCC;	
	text-align:right;
}
#bottom span{
	float:left;
}
#bottom a{
	margin-left:10px;
	color:#333333;
	text-decoration:none;
}
#bottom a:hover{
	color:#3333FF;
	text-decoration:underline;
}