@charset "utf-8";
/* CSS Document */

html {
font-size: 62.5%;
font-family: 'Noto Sans JP', sans-serif;
scroll-behavior: smooth;
scroll-padding-top:100px;
}


img{
margin: 0;
padding: 0;
vertical-align:top;
border: none;
max-width: 100%;
height: auto;
}


a{
color:#1b3a8e;
transition: 0.5s;
text-decoration: none;
}
    
a:hover{
text-decoration: underline;
}


a:hover img{
opacity: 0.8;
}







@media screen and (min-width: 415px){

a[href^="tel:"] {
  pointer-events: none;
}

}










/* body
------------------------------------------------------------*/

body{
margin: 0; 
padding: 0;    
font-size: 1.5rem;
font-weight: 400;
-webkit-text-size-adjust: 100%;
line-height: 2;
color: rgba(0,0,0,0.90)
}



@media screen and (max-width: 900px){

body{
font-size: 1.4rem;
}

}


@media print{

body{
width: 1200px;
transform: scale(0.8);
-moz-transform: scale(0.8);
-webkit-transform: scale(0.8);
transform-origin: 0 0;
}

}










/* base
------------------------------------------------------------*/

.textcenter{text-align: center;}

.textleft{text-align: left;}

.textright{text-align: right;}


.att {
padding-left: 1em;
text-indent: -1em;
}



.marginauto{margin: auto;}



.displayblock{display: block;}


.fr{float: right;}

.fl{float: left;}

.clear{clear: both;}


.lh10{line-height: 1.0;}

.lh12{line-height: 1.2;}

.lh13{line-height: 1.3;}

.lh14{line-height: 1.4;}

.lh15{line-height: 1.5;}

.lh20{line-height: 2.0;}


.fw100{font-weight: 100;}/*Thin*/
.fw300{font-weight: 300;}/*Light*/
.fw400{font-weight: 400;}/*Regular*/
.fw500{font-weight: 500;}/*Medium*/
.fw700{font-weight: 700;}/*Bold*/
.fw900{font-weight: 900;}/*Black*/


.px10{font-size: 1.0rem;}
.px11{font-size: 1.1rem;}
.px12{font-size: 1.2rem;}
.px13{font-size: 1.3rem;}
.px14{font-size: 1.4rem;}
.px15{font-size: 1.5rem;}
.px16{font-size: 1.6rem;}
.px17{font-size: 1.7rem;}
.px18{font-size: 1.8rem;}
.px19{font-size: 1.9rem;}
.px20{font-size: 2.0rem;}
.px21{font-size: 2.1rem;}
.px22{font-size: 2.2rem;}
.px23{font-size: 2.3rem;}
.px24{font-size: 2.4rem;}
.px25{font-size: 2.5rem;}
.px26{font-size: 2.6rem;}
.px27{font-size: 2.7rem;}
.px28{font-size: 2.8rem;}
.px29{font-size: 2.9rem;}
.px30{font-size: 3.0rem;}
.px31{font-size: 3.1rem;}
.px32{font-size: 3.2rem;}
.px33{font-size: 3.3rem;}
.px34{font-size: 3.4rem;}
.px35{font-size: 3.5rem;}
.px36{font-size: 3.6rem;}
.px37{font-size: 3.7rem;}
.px38{font-size: 3.8rem;}
.px39{font-size: 3.9rem;}
.px40{font-size: 4.0rem;}



@media screen and (max-width: 900px){

.px10{font-size: 0.8rem;}
.px11{font-size: 0.9rem;}
.px12{font-size: 1.0rem;}
.px13{font-size: 1.1rem;}
.px14{font-size: 1.2rem;}
.px15{font-size: 1.3rem;}
.px16{font-size: 1.4rem;}
.px17{font-size: 1.5rem;}
.px18{font-size: 1.6rem;}
.px19{font-size: 1.7rem;}
.px20{font-size: 1.8rem;}
.px21{font-size: 1.9rem;}
.px22{font-size: 2.0rem;}
.px23{font-size: 2.1rem;}
.px24{font-size: 2.2rem;}
.px25{font-size: 2.3rem;}
.px26{font-size: 2.4rem;}
.px27{font-size: 2.5rem;}
.px28{font-size: 2.6rem;}
.px29{font-size: 2.7rem;}
.px30{font-size: 2.8rem;}
.px31{font-size: 2.9rem;}
.px32{font-size: 3.0rem;}
.px33{font-size: 3.1rem;}
.px34{font-size: 3.2rem;}
.px35{font-size: 3.3rem;}
.px36{font-size: 3.4rem;}
.px37{font-size: 3.5rem;}
.px38{font-size: 3.6rem;}
.px39{font-size: 3.7rem;}
.px40{font-size: 3.8rem;}

}










/*文字（PC中央/MOB左)
------------------------------------------------------------*/

.tl{text-align: center;}

@media screen and (max-width: 768px){

.tl{text-align: left;}

}



/*文字（PC左/MOB中央)
------------------------------------------------------------*/

.tl{text-align: left;}

@media screen and (max-width: 768px){
.tl{text-align: center;
}
}










.flexbox{display: flex;}

.flexbox div:nth-child(1){margin-right: 50px;}

@media screen and (max-width: 767px){

.flexbox{display: block;}

.flexbox div:nth-child(1){margin-right: 0px; margin-bottom: 50px}


}







.red{color: red;}

.green{color: rgba(34,162,115,1.00);}

.black{color: black !important;}

.ls1px{letter-spacing: 1px;}

.bor1px{border: 1px solid rgba(0,0,0,0.25);}

.bg-blue{background: rgba(0,129,204,0.20)}



/*
------------------------------------------------------------*/

.mb05em{margin-bottom: 0.5em}
.mb1em{margin-bottom: 1em}
.mb2em{margin-bottom: 2em}
.mb3em{margin-bottom: 3em}


.mb5{margin-bottom: 5px}
.mb10{margin-bottom: 10px}
.mb15{margin-bottom: 15px}
.mb20{margin-bottom: 20px}
.mb25{margin-bottom: 25px}
.mb30{margin-bottom: 30px}
.mb35{margin-bottom: 35px}
.mb40{margin-bottom: 40px}
.mb45{margin-bottom: 55px}
.mb50{margin-bottom: 50px}

.mb60{margin-bottom: 60px}
.mb70{margin-bottom: 70px}
.mb80{margin-bottom: 80px}
.mb90{margin-bottom: 90px}
.mb100{margin-bottom: 100px}


.mb110{margin-bottom: 110px}
.mb120{margin-bottom: 120px}
.mb130{margin-bottom: 130px}
.mb140{margin-bottom: 140px}
.mb150{margin-bottom: 150px}
.mb160{margin-bottom: 160px}
.mb170{margin-bottom: 170px}
.mb180{margin-bottom: 180px}
.mb190{margin-bottom: 190px}
.mb200{margin-bottom: 200px}





/*
------------------------------------------------------------*/

.mt05em{margin-top: 0.5em}
.mt1em{margin-top: 1em}
.mt2em{margin-top: 2em}
.mt3em{margin-top: 3em}


.mt5{margin-top: 5px}
.mt10{margin-top: 10px}
.mt15{margin-top: 15px}
.mt20{margin-top: 20px}
.mt25{margin-top: 25px}
.mt30{margin-top: 30px}
.mt35{margin-top: 35px}
.mt40{margin-top: 40px}
.mt45{margin-top: 55px}
.mt50{margin-top: 50px}

.mt60{margin-top: 60px}
.mt70{margin-top: 70px}
.mt80{margin-top: 80px}
.mt90{margin-top: 90px}
.mt100{margin-top: 100px}


.mt110{margin-top: 110px}
.mt120{margin-top: 120px}
.mt130{margin-top: 130px}
.mt140{margin-top: 140px}
.mt150{margin-top: 150px}
.mt160{margin-top: 160px}
.mt170{margin-top: 170px}
.mt180{margin-top: 180px}
.mt190{margin-top: 190px}
.mt200{margin-top: 200px}



.p05em{padding: 0.5em;}

.p1em{padding: 1em;}

.ml1em{margin-left: 1em;}

.ml5{margin-left: 5px}
.ml10{margin-left: 10px}
.ml15{margin-left: 15px}
.ml20{margin-left: 20px}
.ml25{margin-left: 25px}
.ml30{margin-left: 30px}


.mr1em{margin-right: 1em;}

.mr5{margin-right: 5px}
.mr10{margin-right: 10px}
.mr15{margin-right: 15px}
.mr20{margin-right: 20px}
.mr25{margin-right: 25px}
.mr30{margin-right: 30px}

















/* 黒色ボタン
------------------------------------------------------------*/    

.bk-link-button {
text-align:center;
position:relative;
}

.bk-link-button a {
display:inline-block;
min-width:270px; 
height:60px; 
line-height:60px; 
padding:0 20px;
font-size:1.8rem;
text-align:center;
position:relative;
overflow:hidden;
-webkit-box-sizing:border-box; box-sizing:border-box;
-webkit-transition: all 0.35s ease; transition: all 0.35s ease;
}

.bk-link-button a{
background:rgba(0,0,0,1.00);
color: rgba(255,255,255,1.00);
}

.bk-link-button a:hover{
color: rgba(255,255,255,1.00);
background:rgba(0,0,0,0.80);
text-decoration: none;
}
























/* 白色ボタン
------------------------------------------------------------*/    
.wh-link-button {
text-align:center;
padding: 0;
margin: 0;
}

.wh-link-button a {
display:inline-block;
min-width:270px; 
height:60px; 
line-height:60px; 
padding:0 20px;
font-size:1.8rem;
text-align:center;
position:relative;
overflow:hidden;
-webkit-box-sizing:border-box; box-sizing:border-box;
-webkit-transition: all 0.35s ease; transition: all 0.35s ease;
}

.wh-link-button a{
background:rgba(255,255,255,1.00);
color: rgba(0,0,0,1.00);
}

.wh-link-button a:hover{
background:rgba(255,255,255,0.70);
text-decoration: none;
}





























/* ページ上部へ戻るボタン */

#back-to-top {
position:fixed;
right:0px;
bottom:0px;
z-index:999;
height:70px; 
width:70px; 
}


#back-to-top a{
background-color: #333;
display:block; 
line-height:70px; 
text-decoration:none; 
z-index:9999; 
position:relative;
color: rgba(255,255,255,1.00);
}

#back-to-top a:hover{
background-color: #1a1a1a;
}

#back-to-top span {
text-indent:100%;
white-space:nowrap; 
overflow:hidden;
display:block;
}

#back-to-top a:before {
color: rgba(255,255,255,1.00);
content: "\f077";
font-family: "Font Awesome 5 Free";
font-weight: 900;

display: flex;
justify-content: center;
align-items: center;
}




















@media screen and (max-width: 767px){

/*　ハンバーガーボタン　*/
.hamburger2 {
position: fixed;
top:0;
right: 0px;
width: 42px;
height: 60px;
cursor: pointer;
z-index: 9999;
background: rgba(0,104,55,1.00);
padding: 0 10px;
}



.hamburger2 span {
position: absolute;
width: 42px;
height: 1px;
background:rgba(255,255,255,1.00);
transition: all 0.3s;
}

.hamburger2 span:nth-child(1) {
top: 20px;
}
.hamburger2 span:nth-child(2) {
top: 29px;
}
.hamburger2 span:nth-child(3) {
top: 38px;
}






/* ナビ開いてる時のボタン */

.hamburger2.active span:nth-child(1) {
top : 33px;
transform: rotate(-30deg);
}

.hamburger2.active span:nth-child(2){
width: 0px;
}

.hamburger2.active span:nth-child(3) {
top: 33px;
transform: rotate(30deg);
}



/*　OPEN MENU　*/
.menu2 {
position: fixed;
z-index : 9990;
top  : 0px;
right : 0;
transform: translateX(100%);
transition: all 0.6s;
  
width: 100%;
height: 100%;
box-sizing: border-box;
padding: 30px;
background-color: rgba(0,104,55,1.00);
}

.menu2 p{
color: rgba(255,255,255,1.00);
font-size: 1.8rem;
font-weight: 600;
letter-spacing: 1px;
}

.menu2 ul {
margin-top: 30px;
padding-top: 1.5em;
border-top:1px solid rgba(255,255,255,0.25);
}

.menu2 ul li {
list-style-type: none;
font-size:1.5rem;
margin-bottom: 0.5em;
}

.menu2 ul li a{
display:block;
color:rgba(255,255,255,1.00);
}

.menu2 ul li a span{
padding:0 0 0 0;
position: relative;
display: inline-block;
text-decoration: none;
}

.menu2 ul li a span::after{
position: absolute;
bottom: -1px;
left: 0;
content: '';
width: 100%;
height: 1px;
background: rgba(255,255,255,1.00);
transform: scale(0, 1);
transform-origin: right top;
transition: transform .2s;
}

.menu2 ul li a span:hover{
color:rgba(255,255,255,1.00);
}

.menu2 ul li a:hover span::after {
transform-origin: left top;
transform: scale(1, 1);
}

/* このクラスを、jQueryで付与・削除する */
.menu2.active {
  transform: translateX(0%);
}

}



@media screen and (min-width: 767px){

.hamburger2{display: none;}

.menu2{display: none;}

}


@media print{

.menu2{display: none;}

}

















.ath-colfix{
flex-wrap:nowrap;
}
@media (max-width: 599px){
.ath-colfix .wp-block-column:not(:first-child) {
    margin-left: 5px;
}
}









/*　ページャー　（投稿一覧・カテゴリページ等で使用）
------------------------------------------------------------*/ 

.pager{
margin-top: 50px;
display: block;
}


.wp-pagenavi{
margin: 0 auto 0 auto;
}









/*　検索結果ページ
------------------------------------------------------------*/ 

/*　「カテゴリー：●●●の検索結果」の部分　*/ 
.search-cat{
background: rgba(0,104,55,0.10);
padding: 5px 10px;
margin-bottom: 50px;
display: block;
line-height: 1.5;
font-size: 1.5rem;
}

.search-cat span{
color: red;
} 


@media screen and (max-width: 767px){

.search-cat{
font-size: 1.2rem;
}

}



/*　Backボタン　*/ 
.back-button{
display: inline-block;
margin-bottom: 50px;
font-size: 1.2rem;
}

.back-button a{
background: rgba(0,0,0,1.00);
display: block;
color:rgba(255,255,255,1.00);
padding: 5px 10px;
text-decoration: none;
}

.back-button a:hover{
text-decoration: none;
background: rgba(0,104,55,1.00);
}


@media screen and (max-width: 767px){

.back-button{
font-size: 1.2rem;
}

}





/*　施工実績２カラム　*/ 

.cat-jisseki{
display: flex;
flex-direction: row;
justify-content: space-between;
width: 100%;
}

.cat-jisseki-left{
order:1;
width: calc(70% - 50px);
}

.cat-jisseki-right{
order:2;
width:30%;
border-left:1px solid rgba(0,104,55,0.50);
padding: 15px;
box-sizing: border-box;
}





@media screen and (max-width: 767px){

.cat-jisseki{
display: flex;
flex-direction: column;
}

.cat-jisseki-left{
order:2;
width: 100%;
}

.cat-jisseki-right{
order:1;
width:100%;
border-left:none;
padding: 0px;
margin-bottom: 75px;
}

}





/*　施工実績２カラム 検索窓詳細設定　*/

.cat-jisseki-right p{
background:rgba(0,104,55,0.25); 
padding: 0 10px;
font-size: 1.5rem;
margin-bottom: 10px;
}

.cat-jisseki-right label{
display: flex;
align-items: flex-start;
font-size: 1.3rem;
line-height: 1.3;
margin-bottom: 5px;}

.cat-jisseki-right input[type="submit"]{
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}

.cat-jisseki-right input[type="submit"]::-webkit-search-decoration{
display: none;
}

.cat-jisseki-right input[type="submit"]::focus{
outline-offset: -2px;
}

.cat-jisseki-right input[type="submit"]{
background-color: rgba(0,104,55,1.00);
border: none;
padding: 5px 10px;
border-radius: 3px;
color: white;
font-family: 'Noto Sans JP', sans-serif;
transition: 0.5s;
margin-top:15px;
}

.cat-jisseki-right input[type="submit"]:hover{
background-color: rgba(0,0,0,1.00);
}

@media screen and (max-width: 767px){

.cat-jisseki-right p{
font-size: 1.3rem;
}

.cat-jisseki-right label{
font-size: 1.1rem;
}

}














/*　施工レポート２カラム　*/ 

.cat-report{
display: flex;
flex-direction: row;
justify-content: space-between;
width: 100%;
}

.cat-report-left{
order:1;
width: calc(70% - 50px);
}

.cat-report-right{
order:2;
width:30%;
border-left:1px solid rgba(57,162,74,1.00);
padding: 15px;
box-sizing: border-box;
}





@media screen and (max-width: 767px){

.cat-report{
display: flex;
flex-direction: column;
}

.cat-report-left{
order:2;
width: 100%;
}

.cat-report-right{
order:1;
width:100%;
border-left:none;
padding: 0px;
margin-bottom: 75px;
}

}





/*　施工レポート２カラム 検索窓詳細設定　*/

.cat-report-right p{
background:rgba(57,162,74,0.25);
padding: 0 10px;
font-size: 1.5rem;
margin-bottom: 10px;
}

.cat-report-right label{
display: flex;
align-items: flex-start;
font-size: 1.3rem;
line-height: 1.3;
margin-bottom: 5px;}

.cat-report-right input[type="submit"]{
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}

.cat-report-right input[type="submit"]::-webkit-search-decoration{
display: none;
}

.cat-report-right input[type="submit"]::focus{
outline-offset: -2px;
}

.cat-report-right input[type="submit"]{
background-color: rgba(57,162,74,1.00);
border: none;
padding: 5px 10px;
border-radius: 3px;
color: white;
font-family: 'Noto Sans JP', sans-serif;
transition: 0.5s;
margin-top:15px;
}

.cat-report-right input[type="submit"]:hover{
background-color: rgba(0,0,0,1.00);
}

@media screen and (max-width: 767px){

.cat-report-right p{
font-size: 1.3rem;
}

.cat-report-right label{
font-size: 1.1rem;
}

}










