@charset "utf-8";
body{
font-family:
 "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, Sans-Serif;
 -apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
}
/*--- ↓ リセットCSS ↓ ----------------------------------------*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;  
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}
/*--- ↑ リセットCSS ↑ ----------------------------------------*/

*{
	margin: 0;
	padding: 0;
}

-box-sizing: border-box-
html {
  box-sizing: border-box;
}
*, *::before, *::after {
  box-sizing: inherit;
}
/*------------------------------------------------*/

html,body{
	font-size: 16px;
/*	background: white;*/
	box-sizing: border-box;
}

/*--- ↓ ヘッダー1 開始 ↓ ----------------------------------------*/
.header1{
  color: #F2F2F2;
  background-color: rgb(33, 36, 73);
  height: 50px;
  display:flex ;
}
.logo{
    flex-grow:3;
    padding:1rem 0 1rem 1rem ; 
    letter-spacing: 0.5em;
    font-size: calc(16px + 6 * (100vw - 600px)/600);
    }
@media (min-width: 1200px) {
      .logo{
        font-size: 29px;
      }
    }    
.title{
    flex-grow: 5;
    padding:1.1rem 0 1.1rem 0 ;
    letter-spacing: 0.2em;
font-size: calc(13px + 6 * (100vw - 600px)/600);
}
@media (min-width: 1200px) {
  .logo{
    font-size: 25px;
  }
}

/*--- ↓ ハンバーグメニュー開始 ↓ ----------------------------------------*/
/*
.nav {
  width: 40%;
  position: relative;
  height: 100vh;:?
/*  overflow-y:visible; */
/*  overflow: hidden;*/

/*  background-color: green;*/
/*}*/
/*label{
  width: 30px;
  height: 30px;
  border: 1.5px solid #F2F2F2;
  position: absolute;
  right: 10px;
  top: 10px;
  z-index: 1000;
}

span {
  width: 20px;
  height: 2px;
  background-color: #F2F2F2;
  position: absolute;
  right: 15px;
  transition: .3s;
  z-index: 100;
}
.span1 {
  top: 17px;
}

.span2 {
  top: 24px;
}

.span3 {
  top: 31px;
}
#check:checked ~ .span2 {
  display: none;
}

#check:checked ~ .span1 {
  width: 27px;
  transform: rotate(45deg);
  top: 24px;
  right: 12px;
}

#check:checked ~ .span3 {
  width: 27px;
  transform: rotate(-45deg);
  top: 24px;
  right: 12px;
}

#check {
  display: none;
}
.nav ul {
  width: 100%;
  height: 100%;
  background-color: #2a9ee04a;
  margin: 0;
  padding: 0;
  text-align: center;
  list-style: none;
  position: absolute;
  top: 0;
  right: -100%;
  transition: 0.3s;
  z-index: 10;
}
.nav li {
  margin-top: 20px;
}
#check:checked ~ ul {
  right: 0;
}*/

/*--- ↑ ハンバーグメニュー終了 ↑ ----------------------------------------*/
/*--- ↑ ヘッダー1 終了 ↑ ----------------------------------------*/
/*--- ↓ ヘッダー2 開始 ↓ ----------------------------------------*/
.header2{
	padding: 0.5rem 0;
	background: white;	
}
.header2 ul{
	max-width: 980px;
	display: flex;
	list-style: none;
	justify-content: center;
	margin: 0 auto;
}
.header2 ul li{
	font-size: calc(10px + 6 * (100vw - 600px)/600);
	padding: 0 0.9rem;
	color: black;
  letter-spacing: 0.05em;
}

@media (min-width: 1200px) {
    .header2 ul li{
      font-size: 16px; /*-ディスプレイ幅1200px以上のフォント16pxに固定-*/
    }
}

/*--- ↑ ヘッダー2 終了 ↑ ----------------------------------------*/
/*--- ↓ トップ画像 開始 ↓ ----------------------------------------*/
.topgazo{
  max-width: 1140px;
    /*--- width: 100%;----------------------------------------*/
  display: flex;
  margin: 0 auto;
  }
.img1{
  flex: 30; 
}
.img12{
  flex: 1;
}
.img2{
  flex: 30; 
}
.img23{
  flex: 1;
}
.img3{
  flex: 30; 
}
img{
  max-width: 100%;
}

/*--- ↑ トップ画像 終了 ↑ ----------------------------------------*/

/*--- ↓ アイテム 開始 ↓ ----------------------------------------*/
.itemtitle{
  max-width: 1140px;
    /*--- width: 100%;----------------------------------------*/
  display: flex;
  margin: 0 auto;
  }
.img01{
flex: 1.2;
  }
.itemtitle1{
  flex: 27;
  margin-top: 3px; 
}
.coment{
  flex: 62; 
  position: relative;
}
.comentin p{
  position:absolute;
  bottom:15%;
  left:3.5%;
  letter-spacing: 0.1em;
	font-size: calc(10px + 6 * (100vw - 600px)/600);
	padding: 0 0.9rem;
	color: black;
  letter-spacing: 0.05em;  
}
@media (min-width: 1200px) {
  .comentin p{
    font-size: 18px; /*-ディスプレイ幅1200px以上のフォント16pxに固定-*/
  }
}
img{
  max-width: 100%;
}

.item{
	max-width: 1140px;
	margin: 0 auto;
  padding-bottom: 1.5rem;
	background: white;
  border: 0.4rem solid;
  border-color: rgb(153, 205, 50, 0.7);
}

.itemin{
	max-width: 96%;
	display: flex;	
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto;
	padding-top: 1.1rem;
	background: white;
}

.box{
	width: 18%;
	height: auto;
	margin-bottom: 0.2rem;
}

.box a img{
	width: 100%;
	margin-bottom: 0.07rem;
	border:solid 0.12rem white;
	overflow: hidden;
	transition: all 0.2s;
}

.box figure{
	font-size: 0.9rem;
  font-weight: 600;
	text-align: center;
	margin-bottom: 0.4rem;
	color: grey;
	transition: all 0.2s;
  font-size: calc(10px + 6 * (100vw - 600px)/600);
	padding: 0 0.9rem;
  letter-spacing: 0.02em;  
  }
@media (min-width: 1200px) {
  .box figure{
  font-size: 15px; /*-ディスプレイ幅1200px以上のフォント15pxに固定-*/
  }
}
.box a{
	font-family: source-han-sans-japanese, sans-serif;
	text-decoration: none;
}
/*--- ↑ アイテム 終了 ↑ ----------------------------------------*/

/*--- ↓ 足場架け払い 開始 ↓ ----------------------------------------*/

.itemtitle1{
margin-top: 12px;
} 
.asiba{
    max-width: 1140px;
      margin: 0 auto;
      background: white;
      border: 0.4rem solid;
      border-color: rgb(34, 170, 212, 0.7);
  }

.asibain{
	max-width: 96%;
	display: flex;	
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto 0.5rem auto;
	padding-top: 1.1rem;
	background: white;
}

.asibabox{
	width: 24%;
	height: auto;
	margin-bottom: 0.2rem;
}

.asibabox2{
	width: 12%;
	height: auto;
	margin-bottom: 0.2rem;
}
.asibabox a img{
	width: 100%;
	margin-bottom: 0.07rem;
	border:solid 0.12rem white;
	overflow: hidden;
	transition: all 0.2s;
}

.asibabox figure{
	font-size: 0.9rem;
	text-align: center;
	margin-bottom: 0.4rem;
		color: grey;
		transition: all 0.2s;
    font-size: calc(10px + 6 * (100vw - 600px)/600);
    letter-spacing: 0.3em;
}
@media (min-width: 1200px) {
  .asibabox figure{
  font-size: 15px; /*-ディスプレイ幅1200px以上のフォント15pxに固定-*/
  }
}
.asibabox2 figure{
	font-size: 0.9rem;
	text-align: center;
	margin-bottom: 0.4rem;
		color: grey;
		transition: all 0.2s;
    font-size: calc(10px + 6 * (100vw - 600px)/600);
    letter-spacing: 0.3em;
}
@media (min-width: 1200px) {
  .asibabox2 figure{
  font-size: 15px; /*-ディスプレイ幅1200px以上のフォント15pxに固定-*/
  }
}
.asibabox a{
	color: #3079ed;
	font-family: source-han-sans-japanese, sans-serif;
	text-decoration: none;
}

/*--- ↑ 足場架け払い 終了 ↑ ----------------------------------------*/

/*--- ↓ 請負工事 開始 ↓ ----------------------------------------*/


.ukeoi{
  max-width: 1140px;
    margin: 0 auto;
    background: white;
    border: 0.4rem solid;
    border-color: rgb(255, 140, 0, 0.7);
}

.ukeoiin{
max-width: 96%;
display: flex;	
justify-content: space-between;
flex-wrap: wrap;
margin: 0 auto 0.5rem auto;
padding-top: 1.1rem;
background: white;
}

.ukeoibox{
width: 24%;
height: auto;
margin-bottom: 0.2rem;
}
.ukeoibox2{
  width: 17.2%;
  height: auto;
  margin-bottom: 0.2rem;
  }

.ukeoibox a img{
width: 100%;
margin-bottom: 0.07rem;
border:solid 0.12rem white;
overflow: hidden;
transition: all 0.2s;
}

.ukeoibox figure{
font-size: 0.9rem;
text-align: center;
margin-bottom: 0.4rem;
  color: grey;
  transition: all 0.2s;
  font-size: calc(10px + 6 * (100vw - 600px)/600);
  letter-spacing: 0.3em;
}
@media (min-width: 1200px) {
  .ukeoibox figure{
  font-size: 15px; /*-ディスプレイ幅1200px以上のフォント15pxに固定-*/
  }
}
.ukeoibox2 figure{
  font-size: 0.9rem;
  text-align: center;
  margin-bottom: 0.4rem;
    color: grey;
    transition: all 0.2s;
    font-size: calc(10px + 6 * (100vw - 600px)/600);
    letter-spacing: 0.3em;
  }
  @media (min-width: 1200px) {
    .ukeoibox2 figure{
    font-size: 15px; /*-ディスプレイ幅1200px以上のフォント15pxに固定-*/
    }
  }
.ukeoibox a{
color: #3079ed;
font-family: source-han-sans-japanese, sans-serif;
text-decoration: none;
}


/*--- ↑ 請負工事 終了 ↑ ----------------------------------------*/

/*--- ↓ アクセス 開始 ↓ ----------------------------------------*/
.axcess{
  max-width: 1140px;
  margin: 0.5rem auto;
  background-color: white;
}
.axcessin{
  display: flex;
  width: 100%;
  height: auto;
  margin: 0.7rem auto 1rem auto;
  }
 .axcessmap-wrap{
width: 49%;
 } 
.axcessmap{
  position: relative;
  width: 100%;
  height: 0;
   padding-top:75% ; /* 比率を4:3に固定 */
  }
.axcessmap iframe{
  position: absolute;
  left: 0;
  top:0;
  width: 100%;
  height: 100%;
}
.axcesssukima{
  width: 2%; 
}
.para-wrap{
  width: 49%;
  position: relative;
  background: white;
  border: 0.4rem solid;
  border-color: hotpink;
} 
.paratitle{
  width: 96%;
  height: auto;
  margin: 0.5rem auto 0.5rem auto;
}

.paragazo{
  width: 96%;
  height: auto;
  margin: 0.5rem auto 0.5rem auto;
}

/*--- ↑ アクセス 終了 ↑ ----------------------------------------*/

/*--- ↓ フッター 開始 ↓ ----------------------------------------*/
.footer{
  max-width: 1140px;
  margin: 0.6rem auto;
  display: flex;
 }
.footerleft{
  text-align: right;
  line-height: 1.5em;
  letter-spacing: 0.1em;
  width: 49%;
  color: #F2F2F2;
  background-color: rgb(33, 36, 73);
 	font-size: calc(10px + 6 * (100vw - 600px)/600);
	padding: 1.5rem 0;
  letter-spacing: 0.05em;
}
@media (min-width: 1200px) {
  .footerleft{
    font-size: 16px; /*-ディスプレイ幅1200px以上のフォント16pxに固定-*/
  }
}
.footersukima{
  width: 2%;
  background-color: rgb(33, 36, 73);
  padding: 1.5rem 0;
}
.footerright{
  line-height: 1.5em;
  letter-spacing: 0.1em;
  width: 49%;
  color: #F2F2F2;
  background-color: rgb(33, 36, 73);
  font-size: calc(10px + 6 * (100vw - 600px)/600);
	padding: 1.5rem 0;
  letter-spacing: 0.05em;
}
@media (min-width: 1200px) {
  .footerright{
    font-size: 16px; /*-ディスプレイ幅1200px以上のフォント16pxに固定-*/
  }
}

/*--- ↑ フッター 終了 ↑ ----------------------------------------*/

/*--- ↓ 電話・問い合わせ 開始 ↓ ----------------------------------------*/
.spfooter{
  background-color: blue; 
}
/*--- ↑ 電話・問い合わせ 終了 ↑ ----------------------------------------*/