@CHARSET "utf-8";
/*------------------------------------------------------------------------------
	共通
------------------------------------------------------------------------------*/
html,body	{
	height:100%;
}
#body_container {
	min-height:100%;
	margin-bottom: -130px;
	height:auto !important;
	height:100%;
	background-color: #FFFFFF;
}

#body_contents	{
	height: auto;
}

#footer-space {
	height: 130px;
}
a:link	{
	color:#0066ff;
	text-decoration:none;
}

a:visited	{
	color:#0066ff;
	text-decoration:none;
}

a:hover	{
	color: #E4504B;
}

a:active	{
	color:#FF0000;
}
.t_path	{
	background-color: #FFF;
	padding: 5px;
	font-size: 12px;
}

.t_path	a	{
	color: #170072;
}

.t_path	a:hover	{
	color: #E4504B;
	text-decoration: underline;
}

.t_path_end	{
	color: #170072;
}
.body	{
	width: 980px;
	margin: 0px auto 10px;
	position: relative;
}
.error	{
	color: red;
	font-size: 12px;
	font-weight: bold;
	padding: 3px 0px 3px 20px;
	background-image: url("../image/common/exclamation.gif");
	background-repeat: no-repeat;
	background-position: 0px center;
}
.form_tb	{
	border-collapse: collapse;
	border-spacing:0;
	table-layout: auto;
	border: solid 1px #C0C0C0;
	font-size: 12px;
	background-color: white;
}

.form_tb	th	{
	padding: 5px;
	background-color: #F5F5DC;
	border: solid 1px #C0C0C0;
	color: #333333;
}

.form_tb	td	{
	padding: 5px;
	border: solid 1px #C0C0C0;
	color: #333333;
	word-break: break-all;
}

.form_tb	caption	{
	margin-bottom: 5px;
	font-size: 14px;
	font-weight: bold;
}
.dot_line	{
	background: url("../image/default/common/hr_line.gif") repeat-x 0px top;
}

/*------------------------------------------------------------------------------
	header
------------------------------------------------------------------------------*/
.header_area	{
	width: 100%;
	margin: 0;
	padding: 0;
	/*border-top: 3px solid #e60012;*/
}

.header	{
	width: 980px;
	margin: 0 auto;
	padding:0px;
	background-color: #FFF;
	font-size: 12px;
	color: #666666;
	height: 100px;
	position: relative;
}

.header h1	{
	width: 320px;
	height: 100px;
	padding: 0px;
	display: inline-block;
	margin: 0px 100px 0px 330px;
}

.header h2	{
	font-size: 12px;
	color: #999;
	height:15px;
	font-weight: normal;
	position: absolute;
	top: 5px;
	left: 5px;
}

.header p	{
	font-weight: bold;
	position: absolute;
	top: 0px;
	right: 0px;
}

.header p a	{
	color: #555555;
}

.header p a:hover	{
	color: #E4504B;
}
/*------------------------------------------------------------------------------
	footer
------------------------------------------------------------------------------*/
.footer_area	{
	width: 100%;
	margin: 0 0;
	padding:0;
	height: 187px;
	background-color: #ffffff;
	position: relative;
	border-top: 3px solid #d2332a;
}

.footer	{
	width: 980px;
	margin: 0 auto;
	padding:10px 0;
	background-color: #ffffff;
	font-size: 12px;
	height: 147px;
	color: #333333;
}

.footer a	{
	color: #333333;
}

.footer_copy	{
	width: 100%;
	margin: 0;
	/*min-width: 980px;
	margin: 0 auto;*/
	background-color: #1f1f1f;
	color: #FFF;
	font-size: 12px;
	padding: 8px 0;
	text-align: center;
	position: absolute;
	bottom: 0px;
}

.footer_copy a	{
	color: #FFFFFF;
	text-decoration: none;
}

#pagetop {
	position: fixed;
	bottom: 80px;
	right: 20px;
}

@media screen and (min-width: 981px) {
	#pagetop {
		left: calc(100% - 50% + 390px);
	}
}

@media screen and (max-width: 980px) {
	#pagetop {
		right: 20px;
	}
}


ul.footer_ul {
}
ul.footer_ul li{
	display: inline;
	padding-left: 15px;
	margin-right: 5px;
	background:  url("../image/default/common/list_top.jpg") no-repeat left center;
}
/*------------------------------------------------------------------------------
	menu
------------------------------------------------------------------------------*/
.menu_area {
	width: 100%;
	padding: 0;
	margin: 0 auto 20px;
	background-color: #FFFFFF;
	height: 50px;
}

ul.menu {
	width: 980px;
	padding: 0;
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
	background-color: #FFFFFF;
}

ul.menu li {
	margin: 0;
	padding: 0;
	float: left;
	list-style: none;
}

li.menu_0	{
	width: 140px;
}

li.menu_1,li.menu_2,li.menu_3,li.menu_4,li.menu_5,li.menu_6	{
	width: 140px;
}

ul.menu li a {
	display: block;
	overflow: hidden;
	width: 100%;
	height: 50px;
	background-image: url("../image/default/menu/menubar.jpg");
	background-repeat: no-repeat;
	position: relative;
}

ul.menu li img {
	position: absolute;
	top: 0px;
}

.menu_v {
	top: -50px !important;
}

li.menu_0 a {
	background-position: 0px -50px;
}

li.menu_0 img	{
	left: 0px;
}

li.menu_1 a {
	background-position: -140px -50px;
}

li.menu_1 img	{
	left: -140px;
}

li.menu_2 a {
	background-position: -280px -50px;
}

li.menu_2 img	{
	left: -280px;
}

li.menu_3 a {
	background-position: -420px -50px;
}

li.menu_3 img	{
	left: -420px;
}

li.menu_4 a {
	background-position: -560px -50px;
}

li.menu_4 img	{
	left: -560px;
}

li.menu_5 a {
	background-position: -700px -50px;
}

li.menu_5 img	{
	left: -700px;
}

li.menu_6 a {
	background-position: -840px -50px;
}

li.menu_6 img	{
	left: -840px;
}
/*------------------------------------------------------------------------------
	Form
------------------------------------------------------------------------------*/
.inquiry_guide	{
	width: 700px;
	margin: 10px auto 20px;;
	padding: 5px;
}

.input_form input, .input_form textarea, .input_form select	{
	border-radius: 4px;
	color: #1f1f1f;
	font-size: 14px;
	height: 20px;
	line-height: 20px;
	padding: 4px 6px;
	vertical-align: middle;
	background-color: #ffffff;
	border: 1px solid #cccccc;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
	transition: border 0.2s linear 0s, box-shadow 0.2s linear 0s;
	box-sizing: border-box;
	display: block;
	margin-bottom: 0;
	min-height: 30px;
	font-family:inherit;
	outline:none;
}

.input_form textarea	{
	height: 150px;
}

.input_form select	{
	height: 30px;
	line-height: 30px;
}

.input_form input:focus, .input_form textarea:focus {
	border-color: rgba(82, 168, 236, 0.8);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(82, 168, 236, 0.6);
	outline: 0 none;
}

.input_form select:focus {
	outline: thin dotted #333;
	outline-offset: -2px;
}

.inquiry_tb	{
	width: 700px;
	margin-left: auto;
	margin-right: auto;
	background: url("../image/default/common/hr_line.gif") repeat-x 0px top;
}

.inquiry_tb th	{
	padding: 15px 5px 10px 5px;
	width: 180px;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	background: url("../image/default/common/hr_line.gif") repeat-x 0px bottom;
}

.inquiry_tb td	{
	padding: 10px 5px 10px 15px;
	background: url("../image/default/common/hr_line.gif") repeat-x 0px bottom;
}

.inquiry_tb td > p	{
	padding-top: 5px;
}

.inquiry_tb input, .inquiry_tb textarea, .inquiry_tb select	{
	width: 480px;
}

.form_comp_ttl	{
	width: 600px;
	margin: 10px auto 30px;
	font-size: 18px;

}

.form_comp_msg	{
	width: 600px;
	margin: 10px auto 50px;
	line-height: 1.8em;
}
/*------------------------------------------------------------------------------
	サイトマップ
------------------------------------------------------------------------------*/
ul.sitemap_list	{
	list-style-type: none;
}

ul.sitemap_list li	{
	line-height: 2.0em;
	background-image: url(../image/common/ar01.gif);
	background-repeat: no-repeat;
	background-position: 0 center;
	padding-left: 20px;

}
/*------------------------------------------------------------------------------
	index
------------------------------------------------------------------------------*/
.index_news	{
}

.news_list	{
/*	width: 695px;*/
}

.news_list th	{
	padding: 10px 5px 10px 10px;
	height: 30px;
}

.news_list td	{
	padding: 10px 5px 10px;
	height: 30px;
}

.news_list tr	{
	background: url("../image/default/common/hr_line.gif") repeat-x 0px top;
}

.news_list tr:first-child {
	background: none;
}

.news_list a	{
	font-weight: normal;
	color: #333333;
	text-decoration:none;
}

.news_list a:hover	{
	color: #E4504B;
}

/*------------------------------------------------------------------------------
	news
------------------------------------------------------------------------------*/
.news_title	{
	font-size: 18px;
	font-weight: normal;
	color: #066bc5;
	padding-bottom: 5px;
	border-bottom: dashed 1px #066bc5;
	padding-left: 10px;
}

.news_posted_date1	{
	font-size: 14px;
	font-weight: normal;
	text-align: right;
	padding-right: 10px;
}

.news_posted_date2	{
	color:#066bc5;
}

.news_ar a	{
	color: #066bc5;
}

.news_ar a:hover	{
	color: #E4504B;
}
/*------------------------------------------------------------------------------
	error
------------------------------------------------------------------------------*/
.errorbg {
	background: url("../image/common/error_bgimg.jpg");
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 700px;
	height: 300px;
}
.cl_gr {
	color: #009e5c;
}
.error_bt1 {
	border: 2px #009e5c solid;
	line-height: 25px;
	text-align:center;
	font-size: 12px;
	padding: 3px 10px;
}
.error_bt2 {
	border: 2px #F90 solid;
	line-height: 25px;
	text-align:center;
	font-size: 12px;
	padding: 3px 10px;
}
/*------------------------------------------------------------------------------
	幅
------------------------------------------------------------------------------*/
.wd_330 {
	width: 330px;
}
/*------------------------------------------------------------------------------
	施工事例（case）
------------------------------------------------------------------------------*/
.case_name	{
	width: 650px;
	height:50px;
	line-height: 50px;
	font-size: 16px;
	padding-left: 50px;
	background-image: url(../image/default/case/case_title.jpg);
	background-repeat: no-repeat;
	background-position: 0 center;
}

.case_tb	{
	border-collapse: collapse;
	table-layout: fixed;
	border: solid 1px #CDCDCD;
}

/*.case_tb	{
	border-collapse: collapse;
	table-layout: fixed;
	border: solid 1px #E6E6E6;
}
*/
.case_tb th, .case_tb td	{
	padding: 15px;
	border: solid 1px #CDCDCD;
	color: #333333;
	font-wight: normal;
}

/*.case_tb th	{
	background-color: #F1F1F1;
}
*/
.case_thumbs li	{
	-webkit-transition: all .3s;
	transition: all .3s;
}

.case_thumbs li:hover	{
	-moz-opacity: 0.8;
    opacity: 0.8;
}
.fc_green	{
	color: #009e5c;
}
.bd_ds {
	border-bottom: dashed 1px #CDCDCD;
}
/*------------------------------------------------------------------------------
	paging-box
------------------------------------------------------------------------------*/
.paging_prev	{
	background-image: url(../image/default/common/prev1_btn.gif);
	background-repeat: no-repeat;
	background-position: 0px center;
	padding-left: 26px;
}

.paging_next	{
	background-image: url(../image/default/common/next1_btn.gif);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 26px;
}

a.paging_prev, .paging_next	{
	text-decoration: none;
}

a.paging_prev:hover, .paging_next:hover	{
	text-decoration: underline !important;
}

.paging_prev_n	{
	background-image: url(../image/default/common/prev2_btn.gif);
	background-repeat: no-repeat;
	background-position: 0px center;
	padding-left: 26px;
	color: #999999;
}

.paging_next_n	{
	background-image: url(../image/default/common/next2_btn.gif);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 26px;
	color: #999999;
}

.paging_number	{
	font-size: 14px;
	color: #FFF;
	line-height: 24px;
}

.paging_number span, .paging_number a	{
	display: block;
	text-align: center;
	width: 24px;
	margin: 0px 3px;
	padding: 0px 0px;
	outline:none;
	border: solid 1px #C0C0C0;
}


.paging_number span	{
	background-color: #d2332a;
	font-weight: bold;
}

.paging_number a	{
	background-color: #FFFFFF;
}

.paging_number a:hover	{
	text-decoration:none;
	background-color: #d2332a;
	color: #FFFFFF;
}
/*------------------------------------------------------------------------------
	voice
------------------------------------------------------------------------------*/
.voice_list_ttl	{
	background: url("../image/default/common/hr_line.gif") repeat-x 0px top;
	padding: 3px 3px 0;
	min-height: 45px;
}

.voice_title	{
	font-size: 25px;
	color: #1f1f1f;
	font-weight: bold;
	text-align: center;
}

.voice_name	{
	padding: 5px;
	font-size: 18px;
	font-weight: bold;
	color: #1f1f1f;
}

.voice_family	{
	padding: 5px;
}

.voice_comment	{
	padding: 5px 10px 5px 5px;
}

.voice_feature_title	{
	background: url("../image/default/voice/line_w645.jpg") no-repeat left bottom;
	color: #1f1f1f;
	font-size: 16px;
	line-height: 1.6em;
	text-align: center;
	font-weight: bold;
}

.voice_feature_comment	{
	padding: 10px 10px 0;
}

.bd_1f	{
	border: solid 1px #1f1f1f;
}

.bb_1f	{
	border-bottom: solid 2px #1f1f1f;
}

.td_ps {
	position: relative;
}

.td_ps div {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0;
}

.td a.aaa_ps  {
	position: absolute;
	bottom: 0;
	/*text-align: center;*/
	width: 100%;
}

.voice_row	{
	display: table;
	table-layout: fixed;
	margin-bottom: 26px;
	min-height: 100px;
}

.voice_row > div	{
	display: table-cell;
	width: 214px;
	vertical-align: top;
}

.voice_row > div:hover	{
	color: #E4504B;
	cursor: pointer;
}

.voice_row .vc_space	{
	display: table-cell;
	width: 26px;
}
/*------------------------------------------------------------------------------
	faq
------------------------------------------------------------------------------*/
.faq_question_list	{
	width: 750px;
	margin: 5px auto 0px;
	padding: 15px;
	border-top: solid 2px #1f1f1f;
	border-bottom: solid 2px #1f1f1f;
	line-height: 2em;
}

.faq_q_area	{
	width: 880px;
	padding: 5px 10px 5px 10px;
	margin-top: 5px auto;
	background-color: #F5F5F5;
	/*border-left: solid 5px #0099FF;*/
}

.faq_a_area	{
	width: 880px;
	padding: 5px 10px 5px 10px;
	margin-top: 5px;
	background-color: #F5F5F5;
	/*order-left: solid 5px #FF6505;*/
}

.faq_question	{
	padding: 5px 5px 5px 50px;
	background-image: url(../image/default/faq/q.png);
	background-repeat: no-repeat;
	background-position: 5px 5px;
	font-size: 14px;
	font-weight: bold;
	color: #FF3333;
	line-height: 1.4em;
}

.faq_answer	{
	padding: 5px 5px 5px 50px;
	background-image: url(../image/default/faq/a.png);
	background-repeat: no-repeat;
	background-position: 5px 5px;
	font-size: 14px;
	color: #333333;
	line-height: 1.4em;
}
