@charset "utf-8";
/* CSS Document */

/*共通*/
.ttl01{
	text-align: center;
}

.ttl01 h2{
	font-size: 40px;
	margin-bottom: 15px;
	font-family: 'Cinzel', serif;
	font-weight: normal;
}

.ttl02 h3{
	color: #49a60a;
    font-size: 43px;
    line-height: 1.4;
    text-align: center;
	margin-bottom: 15px;
}

h2.ttl02{
    font-size: 30px;
    color: #006ead;
    padding: 15px 0;
    border-top: 1px dotted #9b9999;
    border-bottom: 1px dotted #9b9999;
    margin-bottom: 10px;
    background-color: #fff;
}

/*ボタン*/
.btn01{
	text-align: center;
}

.btn01 a {
    font-size: 16px;
    text-align: center;
    padding: 8px 0 14px;
    display: inline-block;
    background: url("../img/common/btn01.png") no-repeat center center;
    margin-top: 30px;
	width: 317px;
	color: #fff;
}

.two-bnr{
	display: flex;
    margin: 0 auto;
    margin-top: 30px;
    width: 620px;
}

.btn02{
	text-align: center;
}

.btn02 a {
    font-size: 16px;
    text-align: center;
    padding: 8px 0 14px;
    display: inline-block;
    background: url("../img/common/btn02.png") no-repeat center center;
    margin-top: 30px;
	width: 317px;
	color: #fff;
}

.btn03{
	padding: 40px 0 0;
    text-align: center;
}

.btn03 a{
	background-color: #ec7d05;
    color: #fff;
    font-size: 20px;
    display: inline-block;
    padding: 25px 60px;
    border-radius: 40px;
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
    text-decoration: none;
}

.two-bnr-02{
	display: flex;
    margin: 0 auto;
    margin-top: 50px;
    width: 650px;
}

.two-bnr-02 > div:first-child{
	margin-right: 20px;
}


.btn04 a{
	border: 1px solid #43bb56;
    display: inline-block;
    padding: 20px 100px;
    background-color: #43bb56;
	color:#fff;
	margin-top: 50px;
}

.btn04 a:hover{
	border: 1px solid #43bb56;
    color: #43bb56;
    background-color: #fff;
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

.btn05 a{
	border: 1px solid #ec7d05;
    display: inline-block;
    padding: 20px 70px;
    background-color: #ec7d05;
	color:#fff;
}

.btn05 a:hover{
	border: 1px solid #ec7d05;
    color: #ec7d05;
    background-color: #fff;
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

/*トップページ
=========================================== */
body.home h2{
	overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
}

#topBox02 h2,#topBox03 h2,#topBox04 h2{
	overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
}

#topBox02{
	background-color: #ecf8ff;
	padding: 22px 0 40px;
}

#topBox02 h2{
	height: 171px;
	background: url("../img/top-ttl01.png") no-repeat center center;
	margin-bottom: 20px;
}

.top-servicebox{
	display: flex;
    justify-content: space-between;
}

.top-servicebox{
	margin-bottom: 32px;
}

.top-servicebox h3{
	padding: 15px 0;
	color: #fff;
	background-color: #025db9;
	text-align: center;
	font-size: 18px;
}

#topBox03{
	height: 596px;
	background: url("../img/top-sec01.jpg") no-repeat center center;
	margin-bottom: 60px;
}

#topBox03 ul li{
	overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
}

#topBox04{
	background-color: #ecf8ff;
	padding: 30px 0 60px;
}

#topBox04 .btn06 {
    position: absolute;
    top: 90px;
    right: 0;
}

#topBox04 .btn06 a{
	display: inline-block;
	padding: 5px;
	width: 150px;
	background:#fff url(../img/common/f-sitemap.jpg) no-repeat right 10px center;
}

#topBox04 h2{
	height: 142px;
	background: url("../img/top-ttl02.png") no-repeat center center;
	margin-bottom: 20px;
    margin-top: -50px;
}

#topBox04 .top_works-cate{
	padding: 5px 0;
    color: #fff;
    background-color: #025db9;
    text-align: center;
}

#topBox04 .workBox{
	margin-right: 15px;
}

#topBox04 .top_works-title{
	padding: 15px 10px;
    background-color: #fff;
}

#topBox05 ul{
	display: flex;
    justify-content: space-between;
}

#topBox06{
	text-align: center;
}

#topBox06 img{
	width: 100%;
	height: auto;
}

#topBox07 .wrap{
	display: flex;
	justify-content: space-between;
}

#topBox07 .wrap > div{
	width:47%;
}

#topBox07 .whats h2{
	height: 103px;
	background: url("../img/top-ttl03.jpg") no-repeat center center;
	margin-bottom: 20px;
}

#topBox07 .twitter-box h2{
	height: 103px;
	background: url("../img/top-ttl04.jpg") no-repeat center center;
	margin-bottom: 20px;
}

#topBox08{
	background:#f2fbc1 url("../img/common/bg01.jpg") no-repeat center top;
	padding: 190px 0 45px;
}

#topBox08 .wrap{
	overflow: hidden;
}

#topBox08 .wrap .text{
	float: left;
	width: 650px;
}

#topBox08 .wrap .text p{
	margin-bottom:15px;
}

#topBox08 .wrap .text h3{
	font-size: 30px;
	text-align: center;
	margin-bottom: 15px;
}

#topBox08 .wrap img{
	float: right;
}

section#topBox11 {
    background-color: #025db9;
    padding: 20px 0;
}

section#topBox11 p {
    text-align: center;
    color: #fff;
    font-size: 24px;
}

/*新着情報*/

.whatsbox{
	border:1px solid #333;
}

.whats_in{
	padding:20px;
	overflow-y: scroll;
	height: 400px;
}

.whats-date{
	color: #f27a22;
	margin-right:20px;
}

.whats-cont{
	padding: 20px;
}

.top_news-title{
	font-size: 15px;
}

.whats_box{
	display:flex;
	border-bottom:1px dotted #333;
	padding: 10px;
}

.whats_box a:hover{
	text-decoration: underline;
}


/*2.サービステンプレート
=========================================== */
.service-sec01{
	background: url(../img/service-ttl01.jpg) no-repeat top 10px center;
	height: 245px;
	margin-bottom: 60px;
}

.service-sec01 .wrap{
	text-align: center;
}

.service-sec01 .wrap h2{
	font-size: 20px;
    color: #6eb230;
    line-height: 1.3;
    margin-bottom: 40px;
}

.service-sec01 .wrap h3{
	    font-size: 40px;
    font-weight: bolder;
    line-height: 1.4;
}

.service-sec{
	display: flex;
}

.service-sec .text{
	margin-left: 30px;
}

.service-sec .text h3{
	font-size:20px;
	margin-bottom:10px;
}

.serviceBox02{
	background: url(../img/common/bg02.jpg) repeat;
	height: 410px;
	margin-bottom: 80px;
	padding: 60px 0;
}

.serviceBox02 h3{
	overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
}

.serviceBox02 .wrap{
	background: url(../img/service-sec01.png) no-repeat top center;
	height: 384px;
}

.serviceBox02 .wrap ul{
	position: absolute;
    top: 60px;
    left: 395px;
}

.serviceBox02 .wrap ul li{
	font-size: 28px;
	font-weight: bolder;
	margin-bottom: 10px;
}

.serviceBox03 h3{
	font-size: 28px;
	color: #fff;
	background-color: #025db9;
	text-align: center;
	padding: 10px 0;
	border-radius: 35px;
	margin-bottom: 25px;
}

.serviceBox03 .table01 table th, .serviceBox03 .table01 table td {
    padding: 15px 50px;
    border: 1px solid #b5b5b5;
}

.serviceBox03 .table01{
	margin-bottom: 15px;
}

.serviceBox04{
	background: url(../img/common/bg03.jpg) repeat;
	margin-bottom: 80px;
	padding: 80px 0;
}

.serviceBox04 h3{
	font-size: 28px;
	color: #fff;
	background-color: #025db9;
	text-align: center;
	padding: 10px 0;
	border-radius: 35px;
	margin-bottom: 25px;
}

.flow_box{
	background: url(../img/service-sec02.png) no-repeat top center;
	height: 351px;
}

.flow_box .flow{
	display: none;
}

/*会社概要
=========================================== */
.gmap iframe {
    height: 600px;
}

#infoBox01 h2{
	overflow: hidden;
  	text-indent: 100%;
 	white-space: nowrap;
 	height: 52px;
 	background: url(../img/info-ttl01.jpg) no-repeat center center;
 	margin-bottom: 40px;
}

#infoBox02 h2{
	overflow: hidden;
  	text-indent: 100%;
 	white-space: nowrap;
 	height: 52px;
 	background: url(../img/info-ttl02.jpg) no-repeat center center;
 	margin-bottom: 50px;
}

/*施工実績
=========================================== */

#workBtn01 h2{
	overflow: hidden;
  	text-indent: 100%;
 	white-space: nowrap;
 	height: 53px;
 	background: url(../img/work-ttl01.jpg) no-repeat center center;
 	margin-bottom: 40px;
}

#workBtn01 ul{
	display: flex;
	 justify-content: space-between;
	 margin-bottom: 20px;
}

#workBtn01 ul li{
	padding: 15px 0;
	text-align: center;
	width: 23%;
	background-color: #025db9;
}

#workBtn01 ul li:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

#workBtn01 ul li a{
	color: #fff;
	font-size: 18px;
}

#work_box h2{
	overflow: hidden;
  	text-indent: 100%;
 	white-space: nowrap;
 	height: 53px;
 	background: url(../img/work-ttl02.jpg) no-repeat center center;
 	margin-bottom: 40px;
}

.work-list article{
	display: inline-block;
	width: 206px;
	margin-right: 12px;
	margin-bottom: 70px;
}

.work-list article .works-cate{
	background-color: #025db9;
	text-align: center;
	color: #fff;
	padding: 10px 0;
	font-size: 16px;
}

.work-list article h3{
	margin-top: 10px;
}

.work-list article:nth-child(5n){
	margin-right: 0;
}

/*5.施工実績（詳細）
=========================================== */
section#s-work_box .wrap{
	overflow: hidden;
}

.img_box{
	float: left;
	width: 48%;
}

.text_box{
	float: right;
	width: 48%;
}

.text_box h2{
	font-size: 18px;
    background-color: #eeeeee;
    padding: 20px;
    margin-bottom: 25px;
}

.img_box ul{
	overflow: hidden;
}

.img_box ul li{
	float: left;
	width: 50%;
	position: relative;
}

.img_box ul li p{
	position: absolute;
	bottom: 10px;
	padding:5px 10px;
	background-color: #333;
	color: #fff;
}


/*お問い合わせ
=========================================== */

#contactBox{
	font-size:18px;
	text-align:center;
	margin-bottom:30px;
}

.tel_box{
	margin-bottom: 80px;
	text-align: center;
	background-color: #ebf9fc;
	padding: 50px 100px 80px;
}

#contactBox .boxN{
	margin-bottom:50px;
	text-align: center;
	padding: 40px 0;
}

#contactBox .boxN p{
	text-align:center;
}

#contactBox02 h2{
	overflow: hidden;
  	text-indent: 100%;
 	white-space: nowrap;
 	height: 50px;
 	background: url(../img/contact-ttl01.png) no-repeat center center;
 	margin-bottom: 40px;
}

#contactBox02 .boxN{
	margin-bottom:50px;
	text-align: center;
}

#contactBox02 .boxN h4{
	font-size:20px;
	font-weight:bold;
	margin-bottom:15px;
}

#contactBox02 .boxN p{
	text-align:center;
	font-size: 16px;
}

/*依頼・見積もりフォーム*/

#offerBox h2{
	overflow: hidden;
  	text-indent: 100%;
 	white-space: nowrap;
 	height: 64px;
 	background: url(../img/offer-ttl01.png) no-repeat center center;
 	margin-bottom: 40px;
}

#offerBox .boxN{
	margin-bottom:50px;
	text-align: center;
}

#offerBox .boxN h4{
	font-size:20px;
	font-weight:bold;
	margin-bottom:15px;
}

#offerBox .boxN p{
	text-align:center;
	font-size: 16px;
}

.contact-text01{
	margin-bottom: 40px;
}

select.select-css02 {
    padding: 10px;
    margin-bottom: 10px;
}

/*フォーム*/
.req {
    width: 30px;
    margin: 0 0 0 10px;
    text-align: center;
    display: inline-block;
    font-size: 11px;
    color: #fff;
    font-weight: normal;
    background-color: #e60012;
}

.contactTable{
	margin:0 auto 30px auto;
}

.contactTable h3{
	font-size: 25px;
    color: #006ead;
    padding: 5px 0;
    border-top: 1px dotted #9b9999;
    border-bottom: 1px dotted #9b9999;
    margin-bottom: 10px;
    background-color: #fff;
}

.contactTable table{
	width:100%;
	margin:0 auto 40px auto;
	    border-top: 1px solid #cccccc;
}

.contactTable th,
.contactTable td{
	padding:20px;
	text-align:left;
	vertical-align:middle;
	font-weight:normal;
	font-size: 15px;
	border-bottom:1px solid #cecece;
}

.contactTable th{
	width:43%;
	font-weight:bold;
	background-color:#ebf9fc;
}

.midashi th{
	background-color: #54bed9;
	color: #fff;
	font-size: 19px;
	padding: 5px 0 5px 20px;
}

.midashi td{
	background-color: #54bed9;
	padding: 5px;
}

.contactTable input, .contactTable textarea {
    border: 1px solid #cecece;
    padding: 3px;
    background-color: #fff;
    font-size: 15px;
    border-radius: 2px;
    margin: 5px;
}

.contactB{
	margin-bottom:50px;
	background-color: #f0f6f7;
	padding: 40px;
}

.contactB h4{
	font-size:23px;
	font-weight:bold;
	margin-bottom:20px;
}

.formBt input {
    width: 440px;
    margin: 0 auto;
    padding: 15px 0;
    text-align: center;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    border: none!important;
	background: #006ead url("../img/common/mark01.png") no-repeat right 20px center;
	cursor: pointer;
}

.formBt input:hover{
	opacity:0.5;
}

.select-css {
	display: block;
	font-size: 16px;
	font-family: sans-serif;
	font-weight: 700;
	color: #444;
	line-height: 1.3;
	padding: .6em 1.4em .5em .8em;
	width: 100%;
	max-width: 100%; 
	box-sizing: border-box;
	margin: 0;
	border: 1px solid #aaa;
	box-shadow: 0 1px 0 1px rgba(0,0,0,.04);
	border-radius: .5em;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
	  linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
	background-repeat: no-repeat, repeat;
	background-position: right .7em top 50%, 0 0;
	background-size: .65em auto, 100%;
	margin-top: 5px;
}
.select-css::-ms-expand {
	display: none;
}
.select-css:hover {
	border-color: #888;
}
.select-css:focus {
	border-color: #aaa;
	box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
	box-shadow: 0 0 0 3px -moz-mac-focusring;
	color: #222; 
	outline: none;
}
.select-css option {
	font-weight:normal;
}

.formBt {
    margin: 0px auto;
    text-align: center;
}

.contactBox{
	padding: 40px 30px;
	background-color: #f6f6f6;
}

.contactBox .inner{
	height: 450px;
	padding: 0 20px 0 0;
	overflow-y: scroll;
}

.contactB h4{
	font-family: 'Sawarabi Mincho', sans-serif;
	font-size:24px;
	font-weight:bold;
	text-align:center;
	margin-bottom:35px;
}

/*住所*/
.zip-box td{
	position: relative;
}

.zip-box td button.zip-button{
	position: absolute;
    left: 250px;
    top: 20px;
    padding: 5px 40px;
}


/*ブログ
=========================================== */
.blog-list{
	float:left;
	width: 821px;
}

.blog-side{
	float:right;
	width:225px;
}

.blogs-cont{
	width:495px;
	margin-left:20px;
	position: relative;
}

.blogs-title h2,.blogs-title h3{
	font-size: 18px;
	line-height:1.3;
	margin-top:15px;
}

article.blogs{
	margin-bottom:40px;
    padding-bottom: 40px;
}

article.blogs{
	border-bottom: 1px solid #ddd;
}

.news-cate{
	display: inline-block;
	padding: 2px 50px;
	color:#fff;
}

.single-blogs .blog-date{
	padding-top:10px;
}

.single-blogs h2{
	font-size:20px;
	background-color: #ebf9fc;
	padding: 30px 20px;
	margin-bottom: 25px;
}

.blogs-cont .blogs-date{
	position: absolute;
	top:0;
	right:0;
	color: #666;
}

/*カテゴリー一覧*/
.category #blogBox01 .wrap > h2{
  padding: 1rem 2rem;
  border-left: 5px solid #000;
  background: #F5F5F6;
  font-size: 22px;
  margin-bottom: 30px;
}

/*ブログ詳細
=========================================== */

.blog-info{
	margin-bottom:20px;
}

.blog-cont p img{
	margin: 20px 0;
}

.blog-cont p{
	margin-bottom:10px;
}

.blog-cont h2{
	font-size: 18px;
    padding: 15px 0;
	border-top: 2px solid #cccccc;
	border-bottom: 2px solid #cccccc;
	margin-bottom:10px;
	background-color: #fff;
}

.blog-cont h3{
	font-size: 20px;
	margin-bottom:10px;
}

.post-navigation{
	margin:30px 0 50px;
}

.post-navigation ul {
	text-align: center;
}

.post-navigation ul li {
	display:inline-block;
}

.post-navigation ul li a{
	width:128px;
	height: 38px;
	display:table-cell;
	text-decoration:none;
	text-align:center;
	vertical-align:middle;
	border:solid 1px #006ead;
	color:#006ead;
}

.post-navigation ul li a:hover{
	background-color: #006ead;
	color:#fff;
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

.post-navigation ul li.blog-back{
	margin:0 5px;
}

.single span.staff-names {
	margin: 0 10px 0 0;
}

/*ページャー*/
.wp-pagenavi {
	text-align: center;
	margin-top: 60px;
	background-color: #dcdcdc;
}

.wp-pagenavi a, .wp-pagenavi span {
	font-size:17px;
	background-color: #fff;
	border: solid 1px #000!important;
	color: #333!important;
	padding: 5px 11px!important;
	margin: 5px!important;
	display: inline-block;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current,span.pages {
	background: #000;
	color:#fff!important;
}

span.pages {
	display: none;
}

.works-list02 article .news-cate{
	display:block;
	padding:5px;
	text-align:center;
}

/*関連記事*/
#s-blogBox01 .whats > h2{
    font-size: 24px;
    padding: 0 0 5px;
    border-bottom: solid #000 1px;
    margin: 0 0 20px;
}

#s-blogBox01 .whats article{
	width: 30%;
}