/*
Credit: http://www.templatemo.com
*/

body {
	margin: 0px;
	padding: 0px;
	color: #4c5148;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 16px;
	line-height: 2em;
	background-color: #fff;
	background-image: url(images/templatemo_body.jpg);
	background-repeat: repeat-x;
	background-position: top;
}

a, a:link, a:visited { color: #0000EE; text-decoration: underline; }
a:hover { text-decoration: none; }

p { margin: 0 0 15px 0; padding: 0; }
img { border: none; }

.images{border:3px solid #CCC; padding:1px; margin:5px;}
.imagesLeft{border:3px solid #CCC; padding:1px; margin:5px; float:left;}


ul { margin: 0; padding: 0; }
ul li { margin: 0; padding: 0; }

h1, h2, h3, h4, h5, h6 { color: #000; }
h1 {font-size:40px;
    font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-weight:bold;
    text-shadow:0 0 1px #bbb, 0 0 1px #bbb, 0 0 1px #bbb, 0 0 1px #bbb;}

h2 {font-size:28px;
    font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-weight:bold;
	padding: 10px 0 10px 10px;
	border-bottom:3px double; border-left:20px solid; border-color:#7CAD42;
	
	}

h3 {font-size:24px;
    font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-weight:bold;
	 margin: 0 0 10px 0; padding: 0; padding: 0 0 10px 0;}
	
h4 { font-size: 18px; margin: 0 0 20px 0; padding: 0 0 10px 0; }
h5 { font-size: 16px; margin: 0 0 10px 0; padding: 0; }
h6 { font-size: 14px; margin: 0 0 5px 0; padding: 0; }

.cleaner { clear: both; width: 100%; height: 0px; font-size: 0px;  }
.cleaner_h10 { clear: both; width:100%; height: 10px; }
.cleaner_h20 { clear: both; width:100%; height: 20px; }
.cleaner_h30 { clear: both; width:100%; height: 30px; }
.cleaner_h40 { clear: both; width:100%; height: 40px; }
.cleaner_h50 { clear: both; width:100%; height: 50px; }
.cleaner_h60 { clear: both; width:100%; height: 60px; }

.hr_divider { background: url(images/templatemo_hr_divider.jpg) bottom repeat-x; }

.float_l { float: left; }
.float_r { float: right; }

.image_wrapper { display: inline-block; padding: 6px; border: 1px solid #ccc; background: #fff; margin-bottom: 15px; }
.image_fl { float: left; margin: 3px 30px 0 0; }
.image_fr { float: right; margin: 3px 0 0 30px; }

blockquote { font-style: italic; margin-left: 10px; background:#EEE;}
cite { font-weight: bold; color:#333; }
cite span { color: #7b949f; }
em { color: #0d99d3; }

.tmo_list { margin: 20px 0 20px 20px; padding: 0; list-style: none; }
.tmo_list li { background: url(images/templatemo_list.png) no-repeat scroll 0 3px; margin: 0 0 13px; padding: 0 0 3px 25px;line-height: 1em; color: #507a19; }
.tmo_list li a { color: #507a19; text-decoration: none; }
.tmo_list li a:hover { color: #507a19; text-decoration: none; }


a.btn_more {
	display: block;
	text-decoration: none;
	font-weight: bold;
}

a.btn_more span {
	font-size: 18px;
}

.font12{font-size:12px;}
.font20{font-size:20px;}

.red{color:red;}





#templatemo_document_wrapper {
	width: 100%;
	background: url(images/templatemo_wrapper.jpg) top center no-repeat;
}

#templatemo_wrapper {
	width: 960px;
	margin: 0 auto;
	background: url(images/templatemo_header.jpg) top center no-repeat;
}

/* menu */

#templatemo_menu {
	clear: both;
	width: 960px;
	height: 50px;
	background: url(images/templatemo-menu.jpg) no-repeat;
}

#templatemo_menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#templatemo_menu ul li {
	padding: 0;
	margin: 0;
	display: inline;
}

#templatemo_menu ul li a {
	float: left;
	display: block;
	font-size: 12px;
	width: 120px;
	height: 35px;
	padding: 15px 0 0 0;
	margin-right: 2px;
	color: #494942;	
	text-decoration: none;
	font-weight: bold;
	text-align: center;
	outline: none;
	border-bottom:1px solid #BC7A30;
}

#templatemo_menu ul li a:hover, #templatemo_menu ul .current {
	color: #fff;
	background: url(images/templatmeo_menu_hover.jpg) repeat-x top
}

/* end of menu */

#templatemo_header {
	margin-top:3px;
	height: 300px;
	width: 960px;
}

#site_title {
	padding-top: 50px;
}

#site_title h1 {
	margin: 0 0 40px 0;
	padding: 0;
}

#site_title h1 a {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 40px;
	color: #d07f0b;
	font-weight: normal;
	text-decoration: none;
}

#site_title a span {
	display: block;
	font-size: 16px;
	color: #fff;
	font-weight: normal;
	margin-top: 10px;
}

#header_content {
	clear: both;
	width: 630px;
	color: #333;
	line-height: 30px;
	font-size: 18px;
	background-image:url(images/header_content_back.png);
	background-repeat:repeat-y;
	
}

#header_content p {
	margin-bottom: 20px;
}

#header_content a.more {
	display: block;
	width: 70px;
	height: 38px;
	padding: 6px 2px 0 23px;
	color: #2d4a10;
	text-align: center;
	text-decoration: none;
	background: url(images/templatemo_more.png) no-repeat;
}

#header_content a.more:hover {
	color: #fff;
}

#templatemo_main {
	clear: both;
	width: 960px;
	padding: 30px 0;
	background: url(images/templatemo-content-top.jpg) no-repeat top;
}

#templatemo_main p {
	margin-bottom: 15px;
}

#templatemo_slider {
	width: 860px;
	padding: 15px;
	margin-bottom: 30px;
	border: 5px solid #e6d8e0;
}

#frontpage_services {
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 1px solid #ccc;
}

#frontpage_services h3 {
	padding-left: 45px;
	color: #000;
	padding-top: 5px;
}

#frontpage_services .sp1 {
	background: url(images/onebit_08.png) no-repeat center left;
}

#frontpage_services .sp2 {
	background: url(images/onebit_12.png) no-repeat center left;
}

#frontpage_services .sp3 {
	background: url(images/onebit_17.png) no-repeat center left;
}

.sp_services_box {
	float: left;
	width: 300px;
	margin-right: 30px;
}




.col_w280 { 
	float: left;
	width: 280px;
}


.col_w450 { 
	float: left;
	width: 450px;
	margin-right: 60px;
}

.col_w630 { 
	float: left;
	width: 630px;
	margin-right: 40px;
}

.col_full { 
	float: left;
	width: 950px;
}

.last_box {
	margin: 0;
	padding: 0;
	
}

.ad{font-size:11px;}

.hp_news_box { padding-bottom: 15px; margin-bottom: 15px; border-bottom: 1px dashed #CCC }
#templatemo_main .hp_news_box p { margin-bottom: 0 }
.hp_news_box .date { color: #0b6d1a; margin-bottom: 0 }

.news_box {
	float: left;
	width: 450px;
	margin-right: 60px;
	margin-bottom: 60px;
}

.news_box_odd { margin-right: 0; }

.news_box h2 {
	color: #183544;
	margin-bottom: 10px;
}

.news_box .news_meta {
	margin-bottom: 10px;
}

.news_box img {
	float: left;
	width: 120px;
	height: 120px;
	margin-right: 20px;
}

.news_box_last {
	margin-bottom: 0;
}

/* gallery */

#gallery {
	clear: both;
	}
	
	.gallery_box {
		width: 450px;
		margin: 0 0 30px 0;
		border-bottom: 1px dashed #fff;
	}
	
	.gb_even { float: left; }
	.gb_odd { float: right; }
	
	.gallery_box .left {
		float: left;
		width: 110px;
	}
	
	.gallery_box .left img {
		width: 100px;
		height: 100px;
	}
	
	.gallery_box .right {
		float: right;
		width: 320px;
	}
	 
/* end of gallery */

#contact_form form { padding: 0px; }

#contact_form form { margin: 0px; padding: 0px; }

#contact_form form .input_field {
	width: 310px;
	padding: 5px;
	background: #eee;
	border: 1px solid #999;
	font-family: Verdana,Geneva,sans-serif;
    font-size: 12px;
	margin-top: 5px;
}

#contact_form form label {
	display: block;
	color: #333;
	margin-right: 10px;
	font-size: 13px;	
}

#contact_form form textarea {
	width: 438px;
	height: 200px;
	padding: 5px;
	background: #eee;
	border: 1px solid #999;
	font-family: Verdana,Geneva,sans-serif;
    font-size: 12px;
	margin-top: 5px;
}

#contact_form form .submit_btn {
	padding: 5px 14px;
	background: #eee;
	border: 1px solid #999;
	font-size: 13px;
}

/* end of main */

/* footer */

#templatemo_footer_wrapper {
	width: 100%;
	background: #2d4a10;
	border-top: 5px solid #446c1b;
}

#templatemo_footer {
	width: 960px;
	padding:20px 0;
	height:auto;
	margin: 0 auto;
	text-align: center;
	color: #fff;
	background: url(images/templatemo-footer.jpg) bottom repeat-x;
}

#templatemo_footer a { color: #fff; }

.fblock{
	width: 280px;
	padding-right: 20px;
	margin-right: 20px;
	padding-top:10px;
	float:left;
	text-align:left;
	color:#FFF;
	
	}

.fblock ul{
	list-style:none;	
	}

.fblock h5{
	color:#FFF;
	}

/* end of footer */




/* コンテンツ内挙動設定 */



.dl_list dt { background: transparent url(images/list.png) no-repeat scroll 0 0px; margin:20px 20px 5px 10px; 0 0 0; padding: 0 0 0 20px; 	line-height: 0.8em; }
.dl_list dt a:hover { color: #ff4301;}


.padding-bottom10 li{padding:10px;}



/* テーブルソーター用CSS */

#jquery-tablesorter-table th {
    font-size: 14px !important;
    color: gray !important;
    background: #f0e68c;
    cursor: n-resize;
}
#jquery-tablesorter-table th span {
    border: 1px solid gray;
    border-radius: 5px;
    color: gray;
    background: #d1d1d1;
    font-size: 8px !important;
    padding: 0 2px;
}
#jquery-tablesorter-table th, #jquery-tablesorter-table td {
    border: 1px solid #d1d1d1;
}

#jquery-tablesorter-table td{
    font-size: 14px !important;
	padding:5px;
}


/*テーブルのデフォルト設定CSS*/

/* --------- テーブル設定 ----------------- */

table.table1 {
    border: 1px #456C1B solid;
    border-collapse: collapse;
    border-spacing: 0;
}

table.table1 th {
    padding: 5px;
    border: #456C1B solid;
    border-width: 0 0 1px 1px;
    background: #CDE8BB;
    font-weight: bold;
    line-height: 120%;
    text-align: left;
}
table.table1 td {
    padding: 5px;
    border: 1px #456C1B solid;
    border-width: 0 0 1px 1px;
    text-align: left;
}

table.tableintable {
    border: 1px #CCC solid;
    border-collapse: collapse;
    border-spacing: 0;
}

table.tableintable th {
    padding: 5px;
    border: #CCC solid;
    border-width: 0 0 1px 1px;
    background: #EEE;
    font-weight: bold;
    line-height: 120%;
    text-align: left;
	font-size:12px;
}
table.tableintable td {
    padding: 5px;
    border: 1px #CCC solid;
    border-width: 0 0 1px 1px;
    text-align: left;
	font-size:12px;
}




/*レスポンシブ対応CSSここから*/


@media screen and (max-width:620px){

#templatemo_wrapper {
	width:100%;
	background-size:contain;
	background-position:center 260px;
	background-image:none;}
	
#templatemo_document_wrapper {
	background-image:none;}	
	
	#pan {
		padding-left:5px;}
	
#templatemo_menu {
	width:100%;
	height:auto;}
	
#templatemo_menu ul li a {
	width:49%;}	
	
#templatemo_header {
	width:100%;
	height:auto;
	}	
	
#site_title {
	clear:both;
	}	
	
#site_title h1 {
	line-height:1.2em;
	padding-left:5px;
	padding-right:5px;
	text-align:center;
	font-size:25px;
	
	}	
	
	
#templatemo_main {
	width:94%;
	padding:30px 3%;}	
	
#header_content {
	width:96%;
	clear:both;
	padding:0 2%;}
	
.col_w630 {
	width:100%;
	float:none;}	
	
.col_w280 {
	width:100%;
	float:none;}	
	
#templatemo_footer {
	width:94%;
	margin:0 auto;}		
	
	
	/*テーブルカラムダウン*/	
	
table.columndown  {
			display:block;
			width:96%;
			padding:0;
			margin:2%;
			/*border:1px solid #666666;
			background-color:#fff;*/}
			
table.columndown tbody {
			display:block;
			width:100%;}

table.columndown tr	{display:block;
			width:100%;
			}		
				

table.columndown td,table.columndown th {
			display:block;
			width:98%;
			border-left:none;
			padding:1%;
	}



}


/* 幅が620px以内の時 */



