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

/*========================================*/
/*=============== equipment/equip01 ==================*/
/*=========================================*/
.imgBox {
  position: relative;
}
.imgBox.capImg::after {
  content: 'image';
  position: absolute;
  font-size: 11px;
  color: #fff;
  width: calc(100% - 10px);
	letter-spacing: 0em;
  right: 0.5em;
  bottom: 1px;
  text-align: right;
  z-index: 1;
 /* text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.5), 1px -1px 0px rgba(0, 0, 0, 0.5), -1px 1px 0px rgba(0, 0, 0, 0.5), 1px 1px 0px rgba(0, 0, 0, 0.5);*/
}
.imgBox.capImg2::before {
  content: 'image';
  position: absolute;
  font-size: 11px;
  color: #fff;
  width: calc(100% - 10px);
	letter-spacing: 0em;
  right: 53%;
  bottom: 1px;
  text-align: right;
  z-index: 1;
  /*text-shadow: -1px -1px 0px rgba(0, 0, 0, 0.5), 1px -1px 0px rgba(0, 0, 0, 0.5), -1px 1px 0px rgba(0, 0, 0, 0.5), 1px 1px 0px rgba(0, 0, 0, 0.5);*/
}
.imgBox.capImg2.capBk::before {
  color: #000;
  /*text-shadow: -1px -1px 0px rgba(255, 255, 255, 0.5), 1px -1px 0px rgba(255, 255, 255, 0.5), -1px 1px 0px rgba(255, 255, 255, 0.5), 1px 1px 0px rgba(255, 255, 255, 0.5);*/
}
.imgBox.capBk::after {
  color: #000;
  /*text-shadow: -1px -1px 0px rgba(255, 255, 255, 0.5), 1px -1px 0px rgba(255, 255, 255, 0.5), -1px 1px 0px rgba(255, 255, 255, 0.5), 1px 1px 0px rgba(255, 255, 255, 0.5);*/
}
.imgBox.capSeko::after {
  content: '当社施工例';
  font-size: 13px;
}
.imgBox.gainen::after {
  content: '概念図';
}


.pageNav {
  padding: 40px 0;
  max-width: 820px;
}
.pageNav ul {
  justify-content: center;
	max-width: 900px;
	margin: 0 auto;
}
.pageNav ul li {
  margin: 0 1%;
  width: 23%;
}
.pageNav ul li a {
  font-size: 15px;
  display: block;
  padding: 0.3em 0em;
  color: #00417e;
  border-top: #00417e solid 1px;
  border-bottom: #00417e solid 1px;
  letter-spacing: 0.2em;
  position: relative;
  text-align: center;
}
.pageNav ul li a:hover:after, #catKitchen .pageNav ul li:nth-of-type(1) a:after, #catBath .pageNav ul li:nth-of-type(2) a:after, #catSany .pageNav ul li:nth-of-type(3) a:after, #catRest .pageNav ul li:nth-of-type(4) a:after {
  content: '';
  position: absolute;
  width: 18px;
  height: 12px;
  top: 100%;
  left: calc(50% - 9px);
  border-top: #00417e solid 12px;
  border-left: transparent solid 9px;
  border-right: transparent solid 9px;
}
#equipment .catTit {
  padding: 50px 0;
  max-width: 900px;
}
#equipment .catTit p {
  text-align: center;
  font-size: 16px;
  padding-top: 1em;
}
#equipment .catMain {
  position: relative;
}
#equipment .catMain .imgBox {}
#equipment .catMain .txtBox {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#equipment dd, #equipment p {
  font-size: 15px;
}
#equipment p.lf13 {
  line-height: 1.3;
}
#equipment .itemBox dd .caption {
  padding: 0.2em 0;
}
#equipment .caption {
  font-size: 12px;
  line-height: 1.3;
  display: inline-block;
}
@media screen and (max-width: 959px) {
  #equipment p.lf13 {
    line-height: 1.6;
  }
	.pageNav ul li a {
		font-size: 1.8vw;
		letter-spacing: 0.1em;
	}
  
}
@media screen and (max-width: 599px) {
	.pageNav {
    padding: 50px 0 0;
  }
  .pageNav ul {
    /*max-width: 300px;*/
    margin: 0 auto;
		justify-content: space-between
  }
  .pageNav ul li {
    /*margin: 0 20px;*/
    width: 47%;
    margin-bottom: 20px;
    text-align: center;
		padding: 0;
  }
	.pageNav ul li a {
		font-size: 13px;
		font-size: clamp(10px, 3.5vw, 13px);
		letter-spacing: 0.1em;
	}
  #equipment .catMain {
    width: 100%;
  }

  #equipment .catTit {
    padding: 30px 0;
  }
  #equipment .catTit p {
    text-align: justify;
    font-size: 14px;
    padding-top: 1em;
  }
  #equipment .catTit p br {
    display: none;
  }
}
/*========================================*/
/*=============== equipment/equip01/kitchen ==================*/
/*=========================================*/
#kit00 {
	
}

#kit00 .mainPh {
  width: 74%;
}
#kit00 .rightBox {
  width: 22%;
	align-content: space-between;
	display: flex;
	flex-wrap: wrap;
}
#kit00 .rightBox .itemBox {
  width: 100%;
}
#kit00 .flex00 .rightBox .itemBox:first-child {
  margin-bottom: 1em;
}
.itemWraps {
  padding: 50px 0;
  gap: 20px 4%;
  justify-content: flex-start;
}
.itemBox {
  width: 22%;
  max-width: 260px;
}
.itemW {
  width: 47%;
	max-width: 47%;
}
#kit01 {
  padding: 30px 0;
	border-top: #000 solid 1px;
}
#kit01 .flex-container {
  /*align-items: center;*/
	
}
#kit01 .h3Wrap {
	padding-bottom: 1.5em;
}
#kit01 h3 {
  font-size: 18px;
	font-weight: 600;
  padding: 0;
	padding-bottom: 0.3em;
  line-height: 1;
  flex-wrap: nowrap;
  white-space: nowrap;
  align-items: center;
  justify-content: flex-start;
  letter-spacing: 0em;
}
#kit01 p.lead {
  font-size: 16px;
  flex: 1;
  padding-left: 0.5em;
}

#kit01 .flex01 {}
#kit01 .flex01 .leftBox {
  width: 28%;
}
#kit01 .flex01 .leftBox .conro {
	padding-top: 10px;
}
#kit01 .flex01 .rightBox {
  width: 70%;
	align-content: space-between;
}
#kit01 .flex01 .rightBox .itemBox {
  width: 48.5%;
  max-width: 100%;
	align-items: flex-start;
}
#kit01 .flex01 .rightBox .itemBox .imgBox {
	width: 34%;
	max-width: 116px;
}
.capImg.maker::after {
	content: "メーカー提供";

}
.fuchi::after {
	text-shadow: 1px 1px 0px #000,-1px 1px 0px #000,-1px -1px 0px #000,1px -1px 0px #000;
}
.capBk.fuchi::after {
	text-shadow: 1px 1px 0px #fff,-1px 1px 0px #fff,-1px -1px 0px #fff,1px -1px 0px #fff;
}

#kit01 .flex01 .rightBox .itemBox dl {
	flex: 1;
}
#kit01 .flex01 .rightBox dt {
	background-color: #c8c9ca;
	color: #000;
  justify-content: center;
  font-size: 15px;
  padding: 0;
  height: 1.8em;
	display: flex;
	border: none;
}
#kit01 .flex01 .rightBox dd {
	align-items: flex-start;
}
#kit01 .flex01 .rightBox dd p {
	font-size: 13px;
	line-height: 1.3;
	padding-right: 1em;
	width: 65%;
}
#kit01 .flex01 .rightBox dd span {
	font-size: 11px;
	display: inline-block;
}
#kit01 .flex01 .rightBox dd .imgBox {
  width: 33%;
  max-width: 110px;
  margin: 1% 0;
}
#kit01 .flex01 .rightBox dd .imgBox.maker::after {
	content: "メーカー提供";
}
#kit01 .flex01 .rightBox dd .txtBox {
  width: 60%;
}
#kit01 .flex01 .rightBox dd h5 {
  font-size: 15px;
  padding: 0.6em 0;
}
#kit01 .flex01 .rightBox dd p {
  font-size: 13px;
  line-height: 1.4;
}
#kit01 .merit {
  justify-content: flex-start;
  align-items: center;
  color: #000;
  padding-top: 1em;
}
#kit01 .merit dt {
  font-size: 15px;
  border: #000 solid 1px;
  width: 5.5em;
  height: 5em;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
#kit01 .merit dd {
  flex: 1;
  margin-left: 0.6em;
  
	
}
#kit01 .merit dd li {
  text-align: left;
	font-size: 14px;
}
#kit02 .itemBox .imgBox {}
#kit02 .itemBox dl {}
.itemBox dt {
  font-size: 17px;
  font-size: clamp(14px, 1.6cqw, 16px);
  line-height: 1.2;
  height: 3.4em;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding: 0;
  padding-top: 0.3em;
  margin-bottom: 0.3em;
  border-bottom: #000 solid 1px;
	text-align: center;
}

#kit03 {
	background-color: #ececed;
	padding: 30px;
}
#kit03 .titBox {
	padding-bottom: 0px;
}
#kit03 .titBox h3 {
	font-size: 16px;
}

#kit03 .titBox h3 span {
	font-size: 160%;
	letter-spacing: 0.2em;
}
#kit03 .titBox p {
	letter-spacing: -0.05em;
	padding: 0.5em 0 1em 0;
}
#kit03 .flex01 {

}
#kit03 .flex01 .item {
	width: 29%;
	max-width: 270px;
}
#kit03 .flex01 .item dl {}
#kit03 .flex01 .item dt {
	font-size: clamp(14px, 1.6cqw, 16px);
	padding: 0.7em 0;
}
#kit03 .flex01 .item dd {
	font-size: clamp(13px, 1.4cqw, 15px);
}
#kit03 .flex01 .item01 {}
#kit03 .flex01 .or {
	width: 8%;
	align-self: center;
}
#kit03 .flex01 .item02 {}
#kit03 .flex01 .item03 {}



#equipment .itemBox dt p {
  line-height: 1.2;
  text-align: center;
}
#equipment .itemBox dt p span {
  font-size: 70%;
  text-align: center;
}


#catBath {
	padding-bottom: 50px;
}
#bath01 .mainPh {
	width: 74%;
}
#bath01 .mainPh img {
	object-fit: cover;
	widows: 100%;
	height: 100%;
}
#bath01 .rightBox{
	width: 22%;
}
#bath01 .rightBox .itemBox{
	width: 100%;
	padding-bottom: 20px;
}
#bath01 .rightBox .itemBox:nth-child(3){
	padding-bottom: 0px;
}
#bath01 .flex02 {
	padding-top: 30px;
}


#bath02 {
	padding-top: 4%;
}
#bath02 .txtBox {
	width: 68%;
}
#bath02 .txtBox h4 {
	font-size: 24px;
}
#bath02 .txtBox h4 span {
	font-size: 65%;
}
#bath02 .txtBox p {
	padding-top: 1em;
	font-size: 16px;
}

#bath03 {
	background-color: #dedbdb;
	padding: 30px;
}
#bath03 .flex01 {
	align-items: flex-end;
}
#bath03 .flex01 .txtBox {
	width: 77%;
	container-type: inline-size;
}
#bath03 .flex01 .txtBox h3 {
	font-size: 2.8cqw;
	padding-bottom: 0.2em;
}
#bath03 .flex01 .txtBox p {
	font-size: 1.8cqw;
}
#bath03 .flex01 .logo01 {
	width: 13%;
}
#bath03 .flex01 .logo02 {
	width: 7%;
}
#bath03 .flex02 {
	padding-top: 20px;

}
#bath03 .flex02 .itemBox {
	background-color: #fff;
	box-shadow: 0px 2px 6px rgba(0,0,0,0.5);
	width: 32%;
	padding: 15px;
	max-width: 100%;
	container-type: inline-size;
}
#bath03 .flex02 .itemBox h4 {
	width: 100%;
	font-size: 8cqw;
	color: #366382;
	padding-bottom: 0.3em;
}
#bath03 .flex02 .itemBox p {
	width: 50%;
	font-size: 5cqw;
	line-height: 1.5;
	padding-top: 1em;
}
#bath03 .flex02 .itemBox .imgBox {
	width: 44%;
}




#equipment .itemBox .capImg02::before {
  content: 'image';
  position: absolute;
  font-size: 11px;
  color: #000;
  right: 55%;
  bottom: 1px;
  text-align: right;
  z-index: 1;
 /* text-shadow: 0px 0px 1px #fff, 0px 0px 1px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff;*/
	letter-spacing: 0em;
}


#sany01 {
  padding-bottom: 50px;
}
#sany01 .leftBox,
#rest01 .leftBox{
  width: 48%;
}
#sany01 .leftBox .imgBox,
#rest01 .leftBox .imgBox {
	height: 100%;
}
#sany01 .leftBox .imgBox img,
#rest01 .leftBox .imgBox img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
#sany01 .rightBox,
#rest01 .rightBox {
  width: 48%;
  gap: 23px 6%;
}
#sany01 .rightBox .itemBox,
#rest01 .rightBox .itemBox {
  width: 46%;
  max-width: 220px;
}
#sany01 .rightBox .item06 .capImg02::before {
  color: #fff;
  text-shadow: 0px 0px 1px #000, 0px 0px 1px #000, 0px 0px 2px #000, 0px 0px 2px #000;
}

#rest01 .flex02 .item06 .imgBox.capImg2::before {}
#rest01 {}

@media screen and (max-width: 1200px) {
  #kit01 .flex01 .rightBox dd p {
    line-height: 1.4;
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
	#equipment .titWrap p {
    font-size: clamp(16px, 2.2vw, 18px);
}

	#kit00 .rightBox, 
	#bath01 .rightBox, 
	#sany01 .rightBox, 
	#rest01 .rightBox {
		width: 100%;
    padding: 3% 0;
    gap: 20px 2%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 100%;
  }

	#kit00 .mainPh,
	#bath01 .mainPh,
	#sany01 .leftBox, #rest01 .leftBox {
		max-width: 600px;
		margin: 0 auto;
		padding-bottom: 30px;
		
	}

.itemWraps {
    padding: 0px 0;
    gap: 20px 2%;
    justify-content: center;
}

  .itemBox,
	#kit00 .rightBox .itemBox,
	#bath01 .rightBox .itemBox,
	#sany01 .rightBox .itemBox,
	#rest01 .rightBox .itemBox
	{
    width: 32%;
    max-width: 	100%;
  }
	.itemW {
		width: 65%;
	}
	#bath03 {
		margin-top: 30px;
	}
	#bath03 .flex01 .txtBox p {
    font-size: 12px;
	}
	#bath03 .flex02 .itemBox {
		/*align-content: flex-start;*/
	}
	#bath03 .flex02 .itemBox p {
		width: 100%;
		font-size: 12px;
		line-height: 1.5;
		padding-top: 1em;
	}
	#bath03 .flex02 .itemBox .imgBox {
		width: 100%;
	}



	
}
@media screen and (max-width: 599px) {
     #equipment .titWrap p {
      font-size: clamp(14px, 4vw, 16px);
    }
	    #kit00 .mainPh, #bath01 .mainPh, #sany01 .leftBox, #rest01 .leftBox {
       width: 100%;
        margin: 0 auto;
        padding-bottom: 30px;
    }
	    .itemWraps, #kit00 .rightBox, #bath01 .rightBox, #sany01 .rightBox, #rest01 .rightBox {
        width: 80%!important;
				max-width: 350px!important;
				margin: 0 auto;
    }
	    .itemBox, #kit00 .rightBox .itemBox, #bath01 .rightBox .itemBox, #sany01 .rightBox .itemBox, #rest01 .rightBox .itemBox {
        width: 100%;
    }
	#kit01 {
		margin-top: 30px;
	}
	#kit01 h3 {
		font-size: clamp(15px, 4.3vw, 17px);
		text-align: center;
	}
	#kit01 p.lead {
		font-size: clamp(12px, 3.5vw, 14px);
	}

	#kit01  {
		border: #777 solid 1px;
		padding: 20px;

	}
	#kit01 .flex01 .leftBox {
		width: 70%;
		margin: 0 auto;
	}
	#kit01 .flex01 .leftBox .conro {
		padding-top: 10px;
	}
	#kit01 .flex01 .rightBox {
		width: 100%;
		padding-top: 20px;
	}
	#kit01 .flex01 .rightBox .itemBox {
    width: 100%;
    max-width: 100%;
    align-items: flex-start;
	}
	#kit03 {
		margin-top: 20px;
	}
	#kit03 .titBox p {
		font-size: clamp(12px, 3.5vw, 14px);
	}
	 /*   #kit01 .flex01 .rightBox dd p {
        line-height: 1.4;
        font-size: 13px;
    }*/
	#kit03 .flex01 .item {
		width: 100%;
		max-width: 270px;
		margin: 0 auto;
	}
	#kit03 .flex01 .or {
    width: 100%;
		padding: 0 40%;
    align-self: center;
		margin: 5px auto;
}
	.itemW .imgBox {
		width: 75%;
		margin: 0 auto;
	}
	#bath03 {
		width: 100%;
		padding: 15px 20px;
	}
	#bath03 .flex01 .txtBox {
		width: 100%;
	}
	#bath03 .flex01 .txtBox h3 {
		font-size: 5.8cqw;
		padding-bottom: 0.2em;
	}
	#bath03 .flex01 .txtBox p {
		font-size: 4.2cqw;
	}
	#bath03 .flex01 .logo01 {
		width: 60%;
		padding: 0 10%;
	}
	#bath03 .flex01 .logo02 {
		width: 40%;
		padding: 0 10%;
	}
	#bath03 .flex02 .itemBox {
		width: 100%;
		margin-bottom: 20px;
}
	#bath03 .flex02 .itemBox p {
		padding-top: 0em;
  }
	#bath03 .flex02 .itemBox .imgBox {
    padding: 3% 20%;
  }
	
}

