@charset "utf-8";

/* 01 BASE
---------------------------------------------------- */

* { margin: 0; padding: 0; }
/*¥*/ a { overflow:hidden; }/**/

body {
	color:#2b2b2b;
	text-align:center;
	position:relative;
}

.imgRight{ float:right;	margin-left:20px; }
.imgLeft{ float:left; margin-right:20px; }
.imgCenter{	text-align:center;}

.textRight{	text-align:right; }
.textLeft{ text-align:left; }
.textCenter{ text-align:center; }

.clear{ clear:both; height:1px; overflow: hidden; }

.clearfix{ /zoom : 1; }
.clearfix:after{ content : ''; display : block; clear : both; height:0; }


img{ vertical-align:top; }


/* 02 DESIGN STRUCTURE
---------------------------------------------------- */

.wrapper{
	width:1000px;
	margin:auto;
	text-align:left;
}


#pageTop {
	display: none;
    position: fixed;
    bottom: 0;
    right: 20px;
    width: 120px;
    height: 70px;
    line-height: 70px;
    font-size: 13px;
	background-color:#3fd8da;
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
}
#pageTop:hover {
	background-color:#64edef;
}




/* header---------------- */

header{
	background:url(../images/common/bgimg_header.png) repeat-x 0 0;
	height:125px;
}

header h1{
	font-size:60%;
	font-weight:normal;
	float:left;
	width:460px;
	margin:39px 0 0 0;
	line-height:1.4em;
}

/* title---------------- */

#titleArea{
	background:url(../images/common/bgimg_title.png) repeat-x;
	height:130px;
}

#titleArea p{
	font-size:270%;
	margin:0;
	padding-top:30px;
	letter-spacing:0.1em;
}


/* main & sub---------------- */

#mainArea{
	width:670px;
	float:left;
	margin-top:20px;
}

#subArea{
	width:297px;
	float:right;
	margin-top:20px;
}
	
#contactArea{ margin-top:30px; }
#contactArea dd{
	border:solid 1px #29bfc0;
	padding-top:15px;
}

#contactArea dd p{
	font-size:inherit;
	font-size:85%;
	margin:0;
	padding:0 15px;
}

#contactArea dd p img{
	margin:15px 0;
}

#contactArea .contactAddress{
	background-color:#f4f4f4;
	padding:15px;
}

#contactArea .contactAddress ul{ margin-bottom:10px; }
#contactArea .contactAddress li{
	font-size:95%;
}


/* footer---------------- */

footer{
	background:#424242;
	border-top:solid 5px #3fd8da;
	color:#fff;
	margin-top:80px;
}

footer a{
	color:#fff;
}

footer .wrapper{
	position: relative;
}

#footerInfoArea{
	background:url(../images/common/bg_footerArea.png) 0 0;
	padding-bottom:50px;
}

.footerTitle{ font-size:130%; margin-top:50px; margin-bottom:10px; }


.address ul{
	float:left;
}

.addressArea01{ margin-right:48px; }
.addressArea02{ margin-right:48px; }
.addressArea03{ margin-right:48px; }

.address03 strong{ color:#3fd8da; }

#footerNaviArea{
	position: relative; 
	overflow: hidden;
}
#footerNaviArea ul{
	position: relative;
	left: 50%;
	float: left;
	margin-top:50px;
}

#footerNaviArea li{
	position: relative;
	left: -50%;
	float: left;
	margin-right:45px;
}

#footerNaviArea li:before{
	content:"\f0da";
	font-family: FontAwesome;
	display: inline-block;
	font-size:90%;
	padding-right:10px;
	color:#3fd8da;
}

#footerNaviArea li a{
	color:#fff;
}



footer .copyrights{
	padding:40px 0 100px 0;
}




/* 03 DOCUMENT STRUCTURE
---------------------------------------------------- */

p , li , dt , dd{ font-size:85%; line-height:1.8em;}	

p{ margin-top:20px; }

.paragraph{ margin-top:10px; }
.noParagraph{ margin-top:0;}

.leadTitle{
	font-size:150%;
	color:#18aeb0;
}


h2{
	border-left:solid 4px #3fd8da;
	font-size:140%;
	font-weight:normal;
	padding:5px 10px;
	margin-top:30px;
}


h3{
	border-left:solid 4px #3fd8da;
	background-color:#f4f4f4;
	font-size:100%;
	padding:5px 10px;
	margin-top:50px;
	font-weight:normal;
}



hr{
	border:none;
	border-top:solid 1px #e4e4e4;
	margin-top:50px;
}


/* 共通リスト----------------*/


.commonUlList{ margin-top:20px; }
.commonUlList li{
	list-style-type:disc;
	margin-left:15px;
	margin-bottom:5px;
}


.commonOlList{ margin-top:20px; }
.commonOlList li{
	list-style-type:decimal;
	margin-left:25px;
	margin-bottom:5px;
}

.attentionList{ margin-top:20px;}
.attentionList li{
	text-indent:-1em;
	padding-left:1em;
	list-style-type:none;
	margin-bottom:2px;
}

.attentionList-num{ margin-top:10px; margin-left:15px;}
.attentionList-num li{
	text-indent:-1.5em;
	padding-left:1.5em;
	list-style-type:none;
	margin-bottom:2px;
}

.attentionList li .attentionList-num li{
	font-size:inherit;
}


/* 共通テーブル----------------*/


.commonTable01 , .commonTable02{
	margin-top:25px;
	border-collapse:collapse;
	border:solid 1px #b4b4b4;
}	

.commonTable01 th, .commonTable01 td , .commonTable02 th, .commonTable02 td{
	border:solid 1px #b4b4b4;
	padding:10px;
	font-size:85%;
	font-weight:normal;
}

.commonTable01 th , .commonTable02 th{
	background-color:#f1f1f1;
}

.commonTable01 th{
	text-align:center;
}

.commonTable01 td .layoutTable td , .commonTable02 td .layoutTable td{
	border:none;
	font-size:inherit;
	font-size:100%;
	vertical-align:top;
	padding:5px;
}


.tbl .off { background-color:#f7fefe; }
.tbl .on { background-color: #fff; }


/* 写真3並び----------------*/

.column3photoArea {
	margin-top:30px;
}

.column3photoArea ul {
	margin-top:20px;
	margin-right:-20px;
}
.column3photoArea ul li {
	float:left;
    height:auto;
	margin-right:20px;
	margin-bottom:25px;
	width:320px;
}

.column3photoArea ul li img{
	margin-bottom:5px;
}


/* 写真4並び----------------*/

.column4photoArea {
	margin-top:50px;
}

.column4photoArea ul {
	text-align:center;
	margin-top:20px;
	margin-right:-20px;
}
.column4photoArea ul li {
	float:left;
    height:auto;
	margin-right:20px;
	margin-bottom:15px;
	text-align:center;
	width:235px;
}



/* 05 LINKTEXT DECOTAIOTN
---------------------------------------------------- */

a{ color:#18afb1; text-decoration:none; }
a:hover{ color:#3fd8da; text-decoration:underline; }

a.icon_PDF:after{
	content:"\f1c1";
	font-family: FontAwesome;
	display: inline-block;
	margin-left:10px;
	font-size:140%;
	color:#d54444;
	position:relative;
	top:2px;
}

a.icon_outLink:before{
	content:"\f18e";
	font-family: FontAwesome;
	display: inline-block;
	padding-right:10px;
	font-size:140%;
	color:#9900cc;
	position:relative;
	top:2px;
}


/* iOS8.4.1のリンク不具合に対する対処ここから */

#contentArea a:hover {opacity: 1 ;}

@media only screen and (min-device-width:900px) {
#contentArea a:hover{
	opacity:0.7;
	filter:alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
}

/* iOS8.4.1のリンク不具合に対する対処ここまで */


/* 06.EACH
---------------------------------------------------- */


/* トップページ---------------- */

.movieArea iframe{
	float:right;
	margin-left:20px;
	margin-top:20px;
	width:450px;
	height:300px;
}

.home h2{
	background-color:#f4f4f4;
	margin-top:0;
	font-size:120%;

}

#mainImgArea{
	background:url(../images/index/bgimg_main.png) repeat-x;
}

#mainImgArea p{
	margin-top:0;
}

#newsArea{
	float:left;
	width:480px;
	margin-top:40px;
}

#newsArea02{
	float:right;
	width:480px;
	margin-top:40px;
}


#newsArea dl , #newsArea02 dl{
	height:200px;
	overflow:auto;
	padding-top:10px;
}


#newsArea dt , #newsArea02 dt{
	width:100px;
	float:left;
	clear:left;
	display:block;
	padding:8px 0;
}	
	
#newsArea dd , #newsArea02 dd{
	padding:8px 5px 8px 100px;
	border-bottom:solid 1px #dbdbdb;
}	


/* 工法紹介---------------- */

body.method .movieArea iframe{
	float:right;
	margin-left:20px;
	margin-top:20px;
	width:300px;
	height:200px;
}


/* 名簿---------------- */

body.list h3{
	margin-top:30px;
}


/* 実績---------------- */

body.results .commonTable01 th, body.results .commonTable01 td{
	font-size:75%;
	padding:10px 5px 10px 7px;
}




/* 問合せ---------------- */

.inputButton{
	text-align:center;
}

option{ padding-right:15px; }
select{ margin-bottom:5px; }
input , textarea{ font-family: 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', sans-serif; }

.attention{ color:#ea4c37; }
.attention02{ color:#FF5B02; }
.attentionNote{ font-size:85%; color:#0E3191; }
.attentionEx{ font-size:85%; margin:0 5px;}

.inputText{ width:390px; padding:0 5px; }
.inputTextNormal{ width:220px; padding:0 5px; }
.inputTextShort{ width:150px; padding:0 5px; }
.inputTextVeryShort{ width:50px; padding:0 5px; }

.inputButton{ text-align:center; margin-top:30px; }	
	
.ex{ font-size:85%; color:#666; }	


/* 記事ページ---------------- */
.wp-pagenavi {
    clear: both;
	margin-top:30px;
	font-size:110%;
	text-align:center;
}
.wp-pagenavi a, .wp-pagenavi span {
    border: 1px solid #bfbfbf;
    margin: 2px;
    padding: 3px 5px;
    text-decoration: none;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	border:1px solid #e6e6e6;
	background-color:#e6e6e6;
}

.wp-pagenavi .pages{
	border:none;
}
