@charset "utf-8";
/**
 * StyleName : _base
 * -Main contents styles
 */


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


/** Pankuz **/
.pankuz p{
	margin-bottom:10px;
	font-size:11px;
	color:#aaa;
	letter-spacing:0.03em;
}


/** Articles **/
#mainArticles{
	width:620px;
	margin-bottom:30px;
}
#mainArticles h2,
#listTopics h2{
	font-size:28px;
	letter-spacing:0.1em;
	padding:5px 0;
	margin:0;
}
#mainArticles .article h3,
.mainContents div.gallery h3,
.mainServices h2,
#mainTopics h2{
	margin-bottom:30px;
	letter-spacing:0.15em;
	font-weight:normal;
	font-size:18px;
}

.article, #mainTopics #mainTopics_body,
 #listTopics #listTopics_body, .gallery .article_body{
	width:620px;
	padding:25px 0;
	line-height:1.8;
}
.mainArticles .article .image{
	text-align:center;
	margin-bottom:15px;
	width:auto;
	overflow:hidden;
	max-width:620px;
}
.mainArticles .article_right .image{
	float:right;
	margin-left:20px;
	margin-bottom:0;
	max-width:330px;
	width:auto;
	overflow:hidden;
}
.mainArticles .article_left .image{
	float:left;
	margin-right:20px;
	margin-bottom:0;
	max-width:330px;
	width:auto;
	overflow:hidden;
}
.mainArticles .article img{
	max-width:620px;
}
.mainArticles .article_right img, 
.mainArticles .article_left img{
	max-width:330px;
}

.mainArticles .article p{
	margin-bottom:20px;
}


/** gallery **/
.mainArticles ul.galleryImages{
	margin-left:4px;
}

.mainArticles ul.galleryImages li{
	float:left;
	overflow:hidden;
	width:185px;
	height:120px;
	margin:0 8px 20px 8px;
/*	border:dotted 1px #ccc;*/
}
.mainArticles ul.galleryImages li .image{
	margin-bottom:10px;
	text-align:center;
}
.mainArticles ul.galleryImages li .image img{
	max-width:200px;
	max-height:160px;
}
.mainArticles ul.galleryImages li .title{
	margin:0;
	padding:0;
	text-align:center;
	font-size:11px;
	font-weight:bold;
}

/** Services **/
#mainServices #mainServices_body{
	width:620px;
}
.mainServices .services{
	padding-top:4px;
}
.mainServices .service{
	width:300px;
}
.mainServices .services li.odd{
	float:left;
}
.mainServices .services li.even{
	float:right;
}
.mainServices .service h3{
	overflow:hidden;
	height:41px;
	line-height:41px;
	margin-bottom:20px;
	font-size:16px;
	font-weight:bold;
	text-align:center;
}
.mainServices .service h3 a{
	text-decoration:none;
	color:#FFF;
}
.mainServices .service h3 a:hover{
	color:#bbb;
}
.mainServices .service .description{
	overflow:hidden;
	height:40px;
	line-height:1.8;
	padding:0 10px 15px 10px;
}

.mainServices .service .more a{
	padding:10px 5px;
	margin-bottom:15px;
	display:block;
	text-align:right;
	text-decoration:none;
	font-size:12px;
}
.mainServices .service .more a:hover{
	color:#bbb;
}

/** Topics **/
#mainTopics #mainTopics_body,
#listTopics #listTopics_body{
	padding-bottom:0;
}
.mainTopics .topics li
{
	padding:25px 0;
	border-bottom:solid 1px #999;
	border-top:none;
	font-size:12px;
}
.mainTopics .topics li .thumb
{
	width:auto;
	max-width:150px;
	height:auto;
	max-height:150px;
	float:left;
	overflow:hidden;
	margin-right:20px;
}
.mainTopics .topics li h3
{
	font-weight: bold;
	font-size:16px;
	border:none;
}
.mainTopics .topics li h3 a
{
	color:#fff;
}
.mainTopics .topics li h3 a:hover
{
	color:#bbb;
	text-decoration:none;
}
.mainTopics .topics li .description
{
	margin-top:12px;
}
.mainTopics .topics li .more
{
	margin-top:10px;
	text-align:right;
}
.mainTopics .topics li .more a
{
	text-decoration:none;
}
.mainTopics .topics li .more a:hover
{
	text-decoration:underline;
}
.mainTopics .topics li .date
{
	margin-bottom:12px;
	line-height:1;
	font-size:11px;
	font-family: "ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif;
}
.mainTopics .topics li.photo_gallery .category
{
	padding:3px 7px 2px;
	margin-right:8px;
	border-radius:2px;
	font-size:10px;
	color:#fff;
}

/** mainTopics **/
#mainTopics .topics{
	overflow:hidden;
	margin-top:-25px;
}
#mainTopics .listview
{
	margin-top:-1px;
	font-size:12px;
	text-align:center;
}
#mainTopics .listview a
{
	padding:10px;
	display:block;
	text-decoration:none;
	letter-spacing:0.3em;
	color:#fff;
	font-family: "ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif;
}
#mainTopics .listview a:hover
{
	text-decoration:underline;
	color:#fff;
}
#mainTopics .topics li
{
	padding:12px 0 13px 0;
	position:relative;
}
#mainTopics .topics li .thumb
{
	max-width:80px;
	max-height:60px;
	margin-right:15px;
}
#mainTopics .topics li .thumb img
{
	max-width:80px;
	max-height:60px;
}
#mainTopics .topics h3,
#mainTopics .topics .description{
	padding-right:100px;
}
#mainTopics .topics h3
{
	font-size:13px;
}
#mainTopics .topics .description{
	font-size:11px;
	color:#aaa;
	margin-top:2px;
}
#mainTopics .topics li .date
{
	font-size:10px;
	margin:2px 0 4px;
}
#mainTopics .topics li.photo_gallery .category
{
	padding:2px 8px 1px;
	font-size:9px;
}
#mainTopics .topics li .more
{
	position:absolute;
	right:0;
	bottom:17px;
	font-size:11px;
}
/** listTopics **/
#listTopics .topics li .thumb img
{
	max-width:150px;
	max-height:150px;
}
#listTopics #paging{
	margin-top:15px;
}
/*.mainTopics ul li h3{
	width:120px;
	margin:0;
	float:left;
	font-size:11px;
	font-weight:normal;
	text-align:center;
	background-color:#333;
	color:#fff;
}
.mainTopics ul li{
	line-height:44px;
	margin-bottom:5px;
	border-bottom:solid 1px #555;
}
.mainTopics ul li p{
	float:right;
	width:450px;
}
.mainTopics ul li p a:hover{
	text-decoration:underline;
}
.mainTopics ul li p a{
	text-decoration:none;
}*/


/** MAP **/
#gmap
{
	width:500px;
	height:360px;
}

/** Table
------------------------------ **/
#article_company .company,
#article_contact .contact{
	padding-bottom:0;
}

#article_company .article_body,
#article_contact .article_body{
	padding:0 2px;
	width:620px;
}

table.contactTable,
table.companyTable{
	border-collapse:collapse;
	width:620px;
}
table.contactTable th,
table.companyTable th,
table.contactTable td,
table.companyTable td{
	padding:17px 5px;
	text-align:left;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #999;
}
table.contactTable th,
table.companyTable th{
	width:130px;
	vertical-align:top;
	zoom:1;
}

/** Contact
------------------------------ **/
table.contactTable .textField{
	width:420px;
}
table.contactTable input.button{
	padding-left:10px;
	padding-right:10px;
}
table.contactTable tr th {
	text-align:right;
	width:110px;
	vertical-align:middle;
}
table.contactTable tr.must th {
    background-position: 4px center;
    background-repeat: no-repeat;
    padding-left: 40px;
}
table.contactTable input[type="text"],
table.contactTable input[type="password"],
table.contactTable textarea{
	padding:4px;
	border: solid 1px #777;
	font-size:14px;
}
table.contactTable input.validator-invalid{
	border-style:solid;
}
table.contactTable input.validator-valid{
	border-style:solid;
}
.validator-form .validator-field.validator-invalid,
.validator-form .validator-invalid,
.validator-form .validator-field.validator-valid,
.validator-form .validator-valid {
    background-color: transparent;
}
.validator-form .validator-field.validator-invalid input,
.validator-form .validator-invalid input {
    background-color: #ffdddd;
}
.validator-form .validator-valid input {
    background-color: #EEFFDD;
}

/** Company
------------------------------ **/
table.companyTable td{
	width:400px;
}