@charset "utf-8";
/* CSS Document */
header{
	background-color:#FFF;
}
.header_inner .header_right .header_nav a{
	color:#333;
}
.header_inner .header_right .nav-toggle a{
	color:#FFF;
}
/*------------------------------------------- 
page*/

.page{
	padding:120px 0 0;
}
.page .top_banner{
	width:100%;
	height:300px;
	background-size:cover;
	background-position:center center;
	position:relative;
}
.page .top_ttl{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size:50px;
	font-weight:bold;
	position:absolute;
	top:50%;
	left:60px;
	white-space: nowrap;
}
.page .top_ttl span{
	background-color:#D5051B;
	color:#FFF;
	padding:5px 5px 10px;
}
.page .main_content{
	width:800px;
	margin:100px auto 0;
}
.page .main_content h2{
	text-align:center;
	font-size:38px;
	font-weight:bold;
}
.page .main_content h3{
	text-align:center;
	font-size:28px;
	font-weight:bold;
	margin:20px 0 0;
}
.page .main_content .img{
	text-align:center;
	margin:40px 0 0;
}
.page .main_content p{
	margin:40px 0 0;
}
.merit{
	margin:100px 0 0;
}
.merit h3{
	text-align:center;
	font-size:28px;
	font-weight:bold;
	margin:20px 0 0;
}
.merit_inner_bg{
	background-color:#EEEEEB;
	padding:60px 0;
	margin:60px 0 0;
}
.merit_inner{
	display:flex;
	justify-content:space-between;
	width:800px;
	margin:0 auto;
}
.merit_inner_number{
	position:absolute;
	left:20px;
	top:-20px;
	width:40px;
	height:40px;
	line-height:40px;
	text-align:center;
	font-size:24px;
	background-color:#FCA000;
	color:#FFF;
}
.merit_inner_ttl{
	font-size:20px;
	font-weight:bold;
	margin:20px 20px 0;
}
.merit_inner_txt{
	margin:10px 20px 0;
	padding:0 0 20px;
}
.merit_panel{
	background-color:#FFF;
	width:250px;
	position:relative;
}
.merit_panel img{
	width:100%;
}
.interior{
	margin:100px 0 0;
}
.interior_ttl{
	font-size:28px;
	font-weight:bold;
	text-align:center;
}
.interior p{
	margin:40px auto 0;
	width:680px;
}
.contact_btn{
	display:flex;
	justify-content:center;
	margin:60px 0 0;
}
.contact_btn a{
	display:block;
	padding:20px 50px;
	background-color:#BC2D28;
	color:#fff;
}
.page .comment{
	padding:60px 0;
	margin:100px 0 0;
}
.page .comment_inner{
	width:800px;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
}
.comment_left .name{
	font-size:24px;
}
.comment_right{
	margin-left:40px;
}
.comment_ttl{
	font-size:24px;
	font-weight:bold;
	background-position:right center;
	background-repeat:no-repeat;
}
.comment_txt{
	margin:20px 0 0;
}
/*------------------------------------------- 
heater*/

.panelheater .top_banner{
	background-image:url(../images/heater/top_bg.jpg)
}
.panelheater .comment{
	background-color:#FCA000;
	color:#fff;
}
.panelheater .comment_ttl{
	background-image:url(../images/recruit_bg01.png);
}

/*------------------------------------------- 
facility*/

.facility .top_banner{
	background-image:url(../images/facility/top_bg.jpg)
}

/*------------------------------------------- 
housing*/

.housing .top_banner{
	background-image:url(../images/housing/top_bg.jpg)
}
.housing .merit_inner{
	flex-wrap:wrap;
	width:550px;
}
.housing .merit_panel{
	margin:40px 0 0;
}

/*------------------------------------------- 
heating*/

.heating .top_banner{
	background-image:url(../images/heating/top_bg.jpg)
}

/*------------------------------------------- 
products*/
.products .top_banner{
	background-image:url(../images/products/top_bg.jpg)
}
.products .comment{
	background-color:#D5051B;
	color:#fff;
}
.products .bottom_content{
	width:680px;
}
.product_contents{
	border:solid 1px #333;
	padding:20px;
	margin:40px 0 0;
}
.product_contents_inner{
	display:flex;
}
.page .product_contents .product_contents_ttl{
	margin:0;
	font-size:18px;
	font-weight:bold;
}
.pro_con_right{
	margin:0 0 0 40px;
}

/*------------------------------------------- 
company*/
.company_info{
	width:680px;
	margin:100px auto 0;
}
.company_info .logo{
	text-align:center;
}
.company_info .cap{
	font-size:20px;
	text-align:center;
	margin:60px 0 0;
}
.company_info h3{
	font-size:28px;
	font-weight:bold;
	text-align:center;
}
.company_info dl{
	margin:60px 0 0;
}
.company_info dt{
	float:left;
	width:90px;
	padding:20px 0;
}
.company_info dd{
	padding:20px 0 20px 120px;
	border-top:solid 1px #ccc;
}
.company_info dd:last-child{
	border-bottom:solid 1px #ccc;
}
.com_service{
	width:680px;
	margin:100px auto 0;
}
.com_service .cap{
	font-size:20px;
	text-align:center;
	margin:60px 0 0;
}
.com_service h3{
	font-size:28px;
	font-weight:bold;
	text-align:center;
}
.com_service .com_service_inner{
	display:flex;
	justify-content:space-between;
	margin:40px 0 0;
}
.com_service .com_service_inner a{
	width:320px;
	padding:50px 0;
	text-align:center;
	border:solid 1px #ccc;
	color:#333;
}
.com_service .com_service_inner .service_name{
	font-size:20px;
	font-weight:bold;
}
.com_service .com_service_inner .service_icon{
	margin:20px 0 0;
}

/*------------------------------------------- 
company*/
.support .anchor{
	display:flex;
	justify-content:space-between;
	width:680px;
	margin:60px auto 0;
}
.support .anchor a{
	color:#333;
	padding:30px 0;
	font-size:20px;
	text-align:center;
	width:210px;
	display:block;
	border:solid 1px #ccc;
}
.ques{
	width:680px;
	margin:0 auto 0;
	padding:120px 0 0;
}
.ques h3{
	font-size:20px;
	font-weight:bold;
}
.ques dl{
	margin:20px 0 0;
}
.ques dt{
	float:left;
	width:4px;
	padding:20px 0;
}
.ques dd{
	padding:20px 0 20px 60px;
	border-top:solid 1px #ccc;
}
.ques dd:last-child{
	border-bottom:solid 1px #ccc;
}
.sec01 h3 span{
	color:#BD2D28;
}
.sec02 h3 span{
	color:#EFA400;
}
.sec03 h3 span{
	color:#949495;
}

/*------------------------------------------- 
recruit*/
.recruit_page .top_banner{
	background-image:url(../images/recruit/top_bg.jpg)
}

/*------------------------------------------- 
staff*/
.staff_page .top_banner{
	background-image:url(../images/staff/top_bg.jpg)
}
.staff_page .main_content{
	width:680px;
}
.staff_talk{
	width:680px;
	margin:100px auto 0;
}
.staff_talk h3{
	font-size:20px;
	font-weight:bold;
	text-align:center;
}
.staff_talk_inner{
	display:flex;
	justify-content:space-between;
	text-align:center;
	margin:20px 0 0;
}
.staff_talk_inner .img{
	width:158px;
}
.staff_talk_inner .img img{
	width:100%;
}
.staff_talk_inner .position{
	margin:20px 0 0;
	font-weight:bold;
}
.staff_talk_inner .name{
	font-size:20px;
	font-weight:bold;
}
.staff_introduction{
	margin:50px auto 0;
	padding:50px 0 0;
	width:680px;
	border-top:solid 1px #999;
}
.staff_introduction > p{
	margin:50px 0 0;
}
.prof_box{
	display:flex;
	justify-content:space-between;
	width:300px;
	font-size:12px;
	margin:10px auto 0;
}
.prof_box .prof_txt:nth-child(2){
	text-align:right;
}
.prof_box .name{
	font-size:18px;
	font-weight:bold;
}
.introduction_inner{
	display:flex;
	justify-content:space-between;
}
.introduction_inner .catch{
	-ms-writing-mode: tb-rl;
  	writing-mode: vertical-rl;
  	font-size:24px;
  	font-weight:bold;
	line-height:2;
	margin:40px 60px 0 0;
}
.introduction_inner .catch span{
	border-right: solid 3px #BD2D28;
	padding:0 4px 0 0;
}

/*------------------------------------------- 
single*/
.single_title{
	font-size:28px;
	font-weight:bold;
}
.single .main_content .single_date{
	margin:10px 0 0;
	text-align:right;
}
.articles{
	width:800px;
	margin:40px auto 0;
	padding:40px 0 0;
	border-top: solid 1px #ccc;
}
.articles li:first-child{
	margin:0;
}
.articles li{
	margin:10px 0 0;
}
.articles_btn{
	text-align:center;
	margin:20px 0 0;
}

@media only screen and (max-width: 768px){
	.page{
		padding:80px 0 0;
	}
	.page .top_ttl{
		display:none;
	}
	.page .main_content{
		width:96%;
	}
	.page .main_content h2 img{
		max-width:100%;
	}
	.merit_inner{
		width:100%;
		display:block;
	}
	.merit_inner .merit_panel{
		width:70%;
		margin:40px auto 0;
	}
	.merit_inner .merit_panel img{
		width:100%;
	}
	.interior p{
		width:96%;
	}
	.interior p img{
		width:100%;
	}
	.page .comment_inner{
		width:100%;
		display:block;
	}
	.comment_left{
		width:96%;
		margin:0 auto;
		text-align:center;
	}
	.comment_left p:nth-child(2){
		margin:20px 0 0;
	}
	.comment_right{
		width:96%;
		margin:20px auto 0;
	}
	
	/*------------------------------------------- 
	heater*/
	.panelheater .comment_ttl{
		background-image:none;
	}
	
	/*------------------------------------------- 
	housing*/
	.housing .merit_inner{
		width:100%;
	}
	
	/*------------------------------------------- 
	products*/
	.product_contents_inner{
		display:block;
	}
	.products .bottom_content{
		width:96%;
	}
	.products .bottom_content p img{
		width:100%;
	}
	.pro_con_left{
		margin:20px 0 0;
	}
	.pro_con_right{
		margin:20px 0 0;
	}
	/*------------------------------------------- 
	company*/
	.company_info{
		width:96%;
	}
	.com_service{
		width:96%;
	}
	.com_service .com_service_inner{
		display:block;
	}
	.com_service .com_service_inner a{
		width:70%;
		margin:20px auto 0;
		display:block;
	}
	/*------------------------------------------- 
	company*/
	.ques{
	width:96%;
	}
	.support .anchor{
		display:block;
		width:60%;
	}
	.support .anchor a{
		width:100%;
		margin:20px 0 0;
	}
	
	/*------------------------------------------- 
	staff*/
	.staff_page .main_content img{
		width:100%;
	}
	.staff_page .main_content h2 img{
		width:auto;
	}
	.staff_talk{
		width:96%;
	}
	.staff_talk_inner{
		display:block;
	}
	.staff_talk_box{
		width:40%;
		margin:40px auto 0;
	}
	.staff_talk_inner .img{
		width:100%;
	}
	.staff_talk_box img{
		width:100%;
	}
	.staff_introduction{
		width:96%;
		margin:60px auto 0;
	}
	.staff_introduction > p img{
		width:100%;
	}
	.introduction_inner{
		display:block;
		width:60%;
		margin:0 auto;
	}
	.prof img{
		width:100%;
	}
	.introduction_inner .catch{
		display:flex;
		justify-content:center;
		margin:40px auto 0;
	}
	/*------------------------------------------- 
	single*/
	.articles{
		width:96%;
	}
}