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

/*body::after {display: none;}*/
.capSanko::after {
	content: "（参考写真）";
}
/*========================================*/
/*=============== structure ==================*/
/*=========================================*/

 #pageTitle {
	/*background-color: #003670;*/
	padding: 2em 0 3em;
	 background-image: url("../img/bg-title.jpg");
	 background-position: center center;
	 background-repeat: no-repeat;
	 background-size: cover;
}
#pageTitle h2 {
	font-size: 24px;
	font-size: clamp(18px, 2.0vw, 24px);
	color: #fff;
}
#pageTitle h2 .engTxt {
	display: block;
	width: 19em;
	margin: 0 auto;
	color: #b4a150;
	font-size: 140%;
	letter-spacing: 0.3em;
	border-bottom: #b4a150 solid 2px;
	margin-bottom: 0.5em;
	text-shadow: 2px 2px 5px #000,-2px 2px 5px #000,-2px -2px 5px #000,2px -2px 5px #000,0px 0px 10px #000,0px 0px 20px #000,0px 0px 30px #000;
	
}
@media screen and (max-width: 599px) {
	#pageTitle h2 {
		font-size: 16px;
		font-size: clamp(15px, 4.3vw, 17px);
	}
	#pageTitle h2 .engTxt {
		display: block;
		width: 10em;
		line-height: 1.2;
	}
}

#structure {}

#structure .itemBox dd,#structure .itemBox p {
	letter-spacing: 0;
}
/*#structure #headImg h2 {
  width: 45%;
  max-width: 450px;
}*/


#structure .titWrap {
  padding: 50px 0 25px;
  letter-spacing: 0.2em;
}
#structure .titWrap p.engTxt {
  font-size: 32px;
  color: #a78d35;
  text-align: center;
  padding-bottom: 0em;
  letter-spacing: 0.3em;
}
#structure .titWrap h2 {
  font-size: 24px;
  text-align: center;
  padding: 0.5em 0;
}
#structure .pageNav {
  padding: 50px 0;
  max-width: 820px;
}
#structure .pageNav ul {
  justify-content: center;
}
#structure .pageNav ul li {
  margin: 0 1%;
  width: 31%;
}
#structure .pageNav ul li a {
  font-size: 15px;
  display: block;
  padding: 0.3em 0em;
  color: #bfa770;
  border-top: #bfa770 solid 1px;
  border-bottom: #bfa770 solid 1px;
  letter-spacing: 0.2em;
  position: relative;
  text-align: center;
}
#structure .pageNav ul li a:hover:after,
#structure #catStruct .pageNav ul li:nth-of-type(1) a:after,
#structure #catQuality .pageNav ul li:nth-of-type(2) a:after,
#structure #catSecurity .pageNav ul li:nth-of-type(3) a:after {
  content: '';
  position: absolute;
  width: 18px;
  height: 12px;
  top: 100%;
  left: calc(50% - 9px);
  border-top: #bfa770 solid 12px;
  border-left: transparent solid 9px;
  border-right: transparent solid 9px;
}

#structure .catTit h2 {
  max-width: 700px;
  margin: 0 auto;
  padding: 50px 0;
}
#structure p, #structure dd {
  font-size: 14px;
}
#structure p.caption {
  font-size: 12px;
}

/*=============== structure ==================*/
#structure #catStruct {}

#structure #catStruct .row01 {
  align-items: flex-end;
}
#structure #catStruct .row01 .leftBox {
  width: 55%;
  align-items: center;
}
#structure #catStruct .row01 .leftBox .imgBox {
  padding-top: 10px;
  width: 60%;
  max-width: 395px;
}
#structure #catStruct .row01 .leftBox .imgBox .caption {
  width: 100%;
}
#structure #catStruct .row01 .leftBox p {
  width: 35%;
}
#structure #catStruct .row01 p.caption {
  display: block;
  padding: 1em 0 0;
  font-size: 12px;
  line-height: 1.3;
  width: 100%;
}
#structure #catStruct h4,
#structure #catQuality h4{
  width: 100%;
  font-size: 20px;
  text-align: left;
  letter-spacing: 0.1em;
  margin-bottom: 0.5em;
	position: relative;
}
#structure #catStruct h4::before,
#structure #catQuality h4::before{
	content: "■";
}

#structure #catStruct .row01 .rightBox {
  width: 40%;
  max-width: 465px;
}
#structure #catStruct .row02 {
  padding: 50px 0
}
#structure #catStruct .row02 .imgBox {
  margin: 0 auto;
  padding: 20px 0;
 
}

/*=============== quarity ==================*/
#structure #catQuality {}



#structure #catQuality .row01 {}
#structure #catQuality .row01 > div {
  width: 47%;
}
#structure #catQuality .row01 > div dt {
  font-size: 16px;
  padding-bottom: 0.5em;
}

#structure #catQuality .row02 {
  padding: 50px 0;
}
#structure #catQuality .row02 .flex01 {
  width: 27%;
	max-width: 318px;
}
#structure #catQuality .row02 .flex01 .imgBox {

}
#structure #catQuality .row02 .flex01 p {
padding-top: 1em;
}
#structure #catQuality .row02 .icons {
	width: 70%;
   max-width: 836px;
}





#structure #catQuality .row03 .flex {
  padding: 15px 0;
}
#structure #catQuality .row03 .flex .leftBox {
  width: 47%;
  max-width: 560px;
}
#structure #catQuality .row03 .flex .rightBox {
  width: 51%;
  max-width: 608px;
}
#structure #catQuality h5 {
  border: #9c907d solid 2px;
  text-align: center;
  font-size: 17px;
  padding: 0.5em;
  margin: 15px 0;
}
#structure #catQuality .row04 {
  padding: 20px 0;
}
#structure #catQuality .row04 h5 {
  width: 250px;
  margin: 0;
  text-align: left;
  border: #9c907d solid 1px;
  margin-right: 10px;
  display: flex;
justify-content: center;
align-items: center;
}
#structure #catQuality .row04 .itemWrap {
  flex: 1;
}
#structure #catQuality .row04 .itemBox:nth-child(1) {
  margin-bottom: 10px;
}

#structure #catQuality .row04 .itemBox .leftBox {
  width: 150px;
  border: #9c907d solid 1px;
  display: flex;
justify-content: center;
align-items: center;
  margin-right: 1em;
  padding: 0.6em 0;
	font-size: 16px;
	line-height: 1.3;
	text-align: center;
}
#structure #catQuality .row04 .itemBox .rightBox {
  flex: 1;
  align-items: center;
  display: flex;
}
#structure #catQuality .row04 .itemBox .rightBox p {
	font-size: 16px;
}
#structure #catQuality .row04 .itemBox .rightBox .alRight {

}
#structure #catQuality .row05 {
   padding: 20px 0;
}
#structure #catQuality .row05 .flex {
  padding: 20px 0;
}
#structure #catQuality .row05 .flex p {
   flex: 1;
  padding-right: 50px;
}
#structure #catQuality .row05 .flex .imgBox {
   max-width: 914px;
}



/*=============== security ==================*/

#structure #catSecurity {}
#structure #catSecurity .row01 > h4 {
  width: 100%;
  font-size: 20px;
  text-align: center;
  border-top: #999 solid 1px;
  border-bottom: #999 solid 1px;
  letter-spacing: 0.1em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  margin-bottom: 0.5em;
}


#structure #catSecurity .row01 {
  padding: 30px 0 50px 0;
}
#structure #catSecurity .row01 p {
  padding: 15px 0;
}



#structure #catSecurity .row01 .imgBox {

}
/*#structure #catSecurity .row01 .imgBox::after {
  bottom: 17%;
}*/

#structure #catSecurity .row02 {

}
#structure #catSecurity .row02 h5 {
	font-size: 15px;
	font-size: clamp(13px, 1.4vw, 15px);
  color: #6181a4;
}
#structure #catSecurity .row02 > .leftBox {
width: 50%;
  padding-right: 3%;
  border-right: #ddd dotted 3px;
}
#structure #catSecurity .row02 .centerBox {
width: 30%;
  padding: 0 3%;
  border-right: #ddd dotted 3px;
}
#structure #catSecurity .row02 .rightBox {
  width: 20%;
  padding-left: 3%;
}
#structure #catSecurity .row02 h3 {
  background-color: #afc7e0;
  color: #fff;
  text-align: center;
  font-size: 18px;
  padding: 0.7em 0.5em;
  line-height: 1.2;
}
#structure #catSecurity .row02 #elevatorBox h3 {
  background-color: #bdd4a3;
}
#structure #catSecurity .row02 .centerBox h3 {
  background-color: #75879b;
  text-align: center;
}
#structure #catSecurity .row02 .rightBox h3 {
  background-color: #d5c895;
}

#structure #catSecurity .row02 h4 {
  font-size: 18px;
  color: #000;
  padding: 0 0 1em 0;
  text-align: center;
  width: 100%;
}

#structure #catSecurity .row02 h4.h4Sec {
  width: 80%;
}

#structure #catSecurity .row02 .centerBox h4 {
  color: #b68084;
  text-align: center;
  font-feature-settings: "palt";
letter-spacing: 0.05em;
}
#structure #catSecurity .row02 .rightBox h4 {
  color: #ab9b59;
}


#structure #catSecurity .row02 .itemWrap01 {
	padding: 30px 0;
	align-items: center;
}
#structure #catSecurity .row02 .itemBox h5 {
  text-align: center;
  font-feature-settings: "palt";
letter-spacing: 0.05em;
	padding-bottom: 0.5em;
}

#structure #catSecurity .row02 .itemWrap01 .itemBox,
#structure #catSecurity .row02 .itemWrap02 .itemBox
{

}
#structure #catSecurity .row02 .itemWrap01 .leftBox {
	width: 48%;
}
#structure #catSecurity .row02 .itemWrap01 .lineTate {
	width: 1px;
	background-color: #777;
	align-self: stretch;

}
#structure #catSecurity .row02 .itemWrap01 .item01 {
	width: 48%;
	max-width: 270px;
}
#structure #catSecurity .row02 .itemWrap01 .item02{
	width: 48%;
	max-width: 270px;
}
#structure #catSecurity .row02 .itemWrap01 .item03 {
	width: 24%;
	max-width: 284px;
}
#structure #catSecurity .row02 .itemWrap01 .item04{
	width: 22%;
	max-width: 256px;
}
/*#structure #catSecurity .row02 .itemWrap01 .item01 {
	width: 25%;
	max-width: 290px;
	
}
#structure #catSecurity .row02 .itemWrap01 .item02 {
	width: 22%;
	max-width: 260px;
	max-width: 280px;
}
#structure #catSecurity .row02 .itemWrap01 .item03 {
	width: 24%;
	max-width: 288px;
	max-width: 280px;
}
#structure #catSecurity .row02 .itemWrap01 .item04 {
	width: 22%;
	max-width: 260px;
	max-width: 280px;
}*/
/*#structure #catSecurity .row02 .itemWrap01 .imgBox.capImg::after {
	bottom:5%;
}*/
/*#structure #catSecurity .row02 .itemWrap01 .item02 .imgBox.capImg::after {
	bottom: 22%;
	right: 10%;
}*/


#structure #catSecurity .row02 .itemBox dt {
  font-size: 16px;
  color: #75879b;
  padding: 0.5em 0;
	text-align: center;
}

#structure #catSecurity .row02 .itemWrap02 .imgBox::after {
  bottom:7%;
}
#structure #catSecurity .row02 p {
  padding: 0.5em 0;
}

#structure #catSecurity .row02 #elevatorBox h4 {
  color: #000;
  text-align: left;
	position: relative;
	border-bottom: #000 solid 1px;
	padding-bottom: 0.3em;
	margin-bottom: 0.5em;
}
/*#structure #catSecurity .row02 #elevatorBox h4::before {
	content: '';
	position: absolute;
	width: 1px;
	height: 10px;
	background-color: #478B71;
	top: calc(50% - 5px);
	right: calc(100% - 5em);
		
}
#structure #catSecurity .row02 #elevatorBox h4::after {
	content: '';
	position: absolute;
	width: calc(100% - 5em);
	height: 1px;
	background-color: #478B71;
	top: 50%;
	right: 0;
		
}*/
#structure #catSecurity .row02  #elevatorBox .leftBox {
width: 35%;
  
}
#structure #catSecurity .row02  #elevatorBox .leftBox .imgBox {
	width: 100%;
  max-width: 300px;
	margin: 0 auto;
}
#structure #catSecurity .row02  #elevatorBox .rightBox {
width: 60%;
}
#structure #catSecurity .row02 #elevatorBox .itemBox dt {
  color: #478B71;
}
#structure #catSecurity .row02  #elevatorBox .rightBox .itemBox {
width: 47%;
}
#structure #catSecurity .row02  #elevatorBox .rightBox .itemBox:nth-child(1),
#structure #catSecurity .row02  #elevatorBox .rightBox .itemBox:nth-child(2){
  padding-bottom: 30px;
}
#structure #catSecurity .row02  #elevatorBox .rightBox .itemBox dl {
width: 60%;
}
#structure #catSecurity .row02  #elevatorBox .rightBox .itemBox dt {
text-indent: -1em;
  padding-left: 1em;
	text-align: left;
}
#structure #catSecurity .row02  #elevatorBox .rightBox .item04 dl {
width: 100%;
  max-width: none;
}
#structure #catSecurity .row02  #elevatorBox .rightBox .itemBox .imgBox {
width: 34%;
  max-width: 106px;
}
#structure #catSecurity #elevatorBox  .imgBox::after {
  bottom: -1.5em;
}


#structure #catSecurity .row02 #entBox h3 {
background-color: #deb3b3;
}
#structure #catSecurity .row02 #entBox dt {
color: #c8515a;
	text-align: left;
}
#structure #catSecurity .row02 #entBox .flex {
  max-width: 1000px;
  margin: 20px auto;
}
#structure #catSecurity .row02 #entBox .flex .item01 {
  width: 27%;
  max-width: 270px;
}
#structure #catSecurity .capImg2::before {
	content: "image";
	font-size: 10px;
	color: #fff;
	position: absolute;
	right: 56%;
	bottom: 0.1em;
	letter-spacing: 0em;
	
}
#structure #catSecurity .row02 #entBox .flex .item02 {
  width: 24%;
  max-width: 240px;
}
#structure #catSecurity .row02 #entBox .flex .item03 {
  width: 29%;
  max-width: 290px;
}
#structure #catSecurity .row02 #indoorBox h3 {
background-color: #dac992;
}
#structure #catSecurity .row02 #indoorBox .itemBox {
max-width: 1050px;
  margin: 20px auto;
  
}



@media screen and (max-width: 959px) {

  #structure .titWrap p.engTxt {
    font-size: clamp(22px, 3vw, 24px);
  }
  #structure .titWrap h2 {
  font-size: clamp(22px, 3vw, 24px);
  }
  #structure #catStruct h4,
  #structure #catQuality h4{
    font-size: clamp(16px, 2.2vw, 18px);
  }

  #structure #catQuality .row04 h5 {
    width: 100%;;
    text-align: center;
    border: #9c907d solid 1px;
    margin-right: 0px;
    margin-bottom: 10px;
  }
  #structure #catQuality .row04 h5 br {
    display: none;
  }

  #structure #catQuality .row04 .itemBox .leftBox {
    width: 200px;
    border: #9c907d solid 1px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 1em;
    padding: 1em 0;
  }
  #structure #catQuality .row04 .itemBox .leftBox br {
    display: none;
  }
  #structure #catQuality .row04 .itemBox .rightBox {
    flex: 1;
    align-items: center;
    display: flex;
  }
	#structure #catQuality .row02 .flex01 {
		width: 100%;
		max-width: 100%;
		padding-bottom: 30px;
		
	}
	#structure #catQuality .row02 .flex01 .imgBox {
max-width: 300px;
		margin: 0 auto;
	}
	#structure #catQuality .row02 .flex01 p {
	padding-top: 1em;
	}
	#structure #catQuality .row02 .icons {
		width: 100%;
		 max-width: 100%;
	}
  #structure #catSecurity .row02 .itemWrap01 {
    max-width: 600px;
    margin: 0 auto;
}
  #structure #catSecurity .row02  #elevatorBox .leftBox {
  width: 100%;

  }
  #structure #catSecurity .row02  #elevatorBox .leftBox .imgBox {
    max-width: 300px;
    margin: 0 auto;
  }
  #structure #catSecurity .row02  #elevatorBox .rightBox {
  width: 100%;
  }
  #structure #catSecurity .row02 .itemWrap01 .itemBox, 
  #structure #catSecurity .row02 .itemWrap02 .itemBox {
    width: 47%;
		max-width: inherit;
  }
	#structure #catSecurity .row02 .itemWrap01 .item01,
	#structure #catSecurity .row02 .itemWrap01 .item03 {
		 width: 48%;
	}
	#structure #catSecurity .row02 .itemWrap01 .item02,
	#structure #catSecurity .row02 .itemWrap01 .item04 {
		 width: 44%;
	}
	#structure #catSecurity .row02 h5 {
	font-size: 15px;
	}
 /* #structure #catSecurity .row02 .itemWrap01 .itemBox.item03 {
    width: 100%;
    margin: 0 auto;
  }
  #structure #catSecurity .row02 .itemWrap01 .itemBox.item03 .imgBox {
    margin: 0 auto;
  }*/

    #structure .pageNav {
    padding: 50px 0 0;
  }
  #structure .pageNav ul {
    width: 300px;
    margin: 0 auto;
  }
  #structure .pageNav ul li {
    margin: 0 20px;
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }
	#structure #catSecurity .row02 .itemWrap01 .leftBox {
    width: 100%;
	}
	#structure #catSecurity .row02 .itemWrap01 .lineTate {
		display: none;
	}

}

@media screen and (max-width: 599px) {
  #structure .titWrap p.engTxt {
    font-size: clamp(18px, 5.1vw, 20px);
  }
  #structure .titWrap h2 {
    font-size: clamp(18px, 5.1vw, 20px);
  }
  /*#structure #headImg h2 {
    width: 100%;
    max-width: 400px;
  }*/
  #structure p, #structure dd {
   font-size: clamp(12px, 3.5vw, 14px);
  }
  
  #structure #catStruct h4,
  #structure #catQuality h4{
   font-size: clamp(15px, 4.3vw, 17px);
  }
  #structure #catStruct .row01 .imgBox {
    max-width: 350px;
    margin: 0 auto;
    margin-top: 0.5em;
  }
  #structure #catStruct .row02 .imgBox {

    max-width: 350px;
  }
  #structure #catQuality .row01 > div {
    width: 100%;
    margin-bottom: 20px;
  }
  #structure #catQuality .row02 {
    padding: 0px 0;
  }
  #structure #catQuality .row02 .flex01 .imgBox {
    width: 100%;
    max-width: 300px;
    margin: 0 auto 0px;
  }
  #structure #catQuality .row02 .flex01 p {
    margin-left: 0;
    flex:none;
    width: 100%;
  }
  #catQuality .row02 .icons {
    padding: 0 0 30px 0;
    max-width: 350px;
    margin: 0 auto;
  }
  #structure #catQuality .row03 .flex .leftBox {
    width: 100%;
    max-width: 450px;
      margin: 0 auto;
      margin-bottom: 20px;
  }
  #structure #catQuality .row03 .flex .rightBox {
    width: 100%;
    max-width: 450px;
     margin: 0 auto;
  }
    #structure #catQuality .row04 h5 {
      font-size: clamp(13px, 3.7vw, 15px);
  }

  
  
    #structure #catQuality .row04 {
    padding-bottom: 0;
  }
  #structure #catQuality .row04 .itemBox {
    width: 100%;
    padding-bottom: 20px;
  }
  #structure #catQuality .row04 .itemBox .leftBox {
    width: 100%;
    max-width: 100%;
    padding: 2%;
    margin: 0 auto;
    margin-bottom:10px;
    background-color: #eee;
    font-size: clamp(13px, 3.7vw, 15px);
    line-height: 1.4;
  }
  
  #structure #catQuality .row04 .itemBox .rightBox {
    width: 100%;
    align-items: center;
    display: flex;
    font-size: clamp(13px, 3.7vw, 15px);
  }
  
  #structure #catSecurity .row01 > h4 {
    font-size: clamp(15px, 4.3vw, 17px);
    }
  #structure #catSecurity .row02 h3 {
    font-size: clamp(15px, 4.3vw, 17px);
  }
  #structure #catSecurity .row02 h4 {
    font-size: clamp(15px, 4.3vw, 17px);
  }
  #structure #catSecurity .row02 .itemWrap01 .itemBox,
  #structure #catSecurity .row02 .itemWrap02 .itemBox
  {
    width: 100%;
    max-width: 350px;
    padding-bottom: 15px;
    margin: 0 auto;
  }
  #structure #catSecurity .row02 .itemWrap01 .itemBox.item03 {
    max-width: 350px;
  }

  #structure #catSecurity .row02 .itemBox dt {
    font-size: 16px;
    color: #75879b;
    padding: 0.5em 0;
  }
  #structure #catSecurity .row02  #elevatorBox .rightBox .itemBox{
    width: 100%;
    max-width: 350px;
    margin: 0 auto;
    padding-bottom: 20px;
  }
  #structure #catSecurity .row02 #entBox .flex .itemBox {
    width: 100%;
    max-width: 350px;
    margin: 0 auto;
    padding-bottom: 20px;
  }
	#structure #catSecurity .row02 #entBox .flex .itemBox .imgBox {
		max-width: 280px;
		margin: 0 auto;
	}
	#structure #catSecurity .row02 #indoorBox .itemBox {
		max-width: 350px;
		margin: 20px auto;
	}
	#structure #catSecurity .row02 #entBox dt {
    text-align: center;
	}
	#structure #catSecurity .row02 #elevatorBox .leftBox {
    padding-bottom: 30px;
  }

  
}