@charset "utf-8";

/* PRODUCTS CSS
------------------------------------ */
.row-products .ul-prod {
  width: calc(100% + 2px);
  width:-webkit-calc(100% + 2px);
}

.section-products .heading {
  text-align: center;
  margin-bottom: 25px;
}
.section-products .heading > span {
  display: block;
}
.section-products .heading .title {
  line-height: 1;
  margin-bottom: 9px;
}
.section-products .heading .pttl {
  letter-spacing: 0.075em;
}
.section-products .ul-prod > li {
  width: 33.33333333333333%;
  box-sizing: border-box;
}


.section-products .ul-prod .item {
  border: 1px solid #dfdfdf;
  margin: -1px 0 0 -1px;
  position: relative;
  display: block;
  overflow: hidden;
  box-sizing: border-box;
}

.section-products .ul-prod .item .thumb-scale {
  display: block;
}
.section-products .ul-prod .item img {
  display: block;
  width: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.section-products .ul-prod .item .figcaption {
  display: block;
  text-transform: uppercase;
}

.section-products .ul-prod .item .figcaption > span {
  display: block;
  /*letter-spacing: 0.075em;*/
  letter-spacing: 0.02em;
  line-height: 1.1;
  position: relative;
}

.section-products .row02 .ul-prod .item .figcaption .txt1 {
	font-size: 3.2vw;
}

@media (min-width: 769px) {
.section-products .ul-prod .item:before {
  content: '';
  position: absolute;
  left: 15px;
  top: 15px;
  right: 15px;
  bottom: 15px;
  background: rgba(0, 0, 0, 0.65);
  z-index: 3;
  -webkit-transition: .3s;
  -khtml-transition: .3s;
  -moz-transition: .3s;
  -ms-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
  display: block;
  opacity: 0;
}
.section-products .ul-prod .item .figcaption {
	  position: absolute;
	  top: 50%;
	  left: 0;
	  width: 100%;
	  text-align: center;
	  -webkit-transform: translate(0, -50%);
	  -khtml-transform: translate(0, -50%);
	  -moz-transform: translate(0, -50%);
	  -ms-transform: translate(0, -50%);
	  -o-transform: translate(0, -50%);
	  transform: translate(0, -50%);
	  color: #fff;
	  z-index: 6;
	  padding-bottom: 5px;
	  -webkit-transition: .3s;
	  -khtml-transition: .3s;
	  -moz-transition: .3s;
	  -ms-transition: .3s;
	  -o-transition: .3s;
	  transition: .3s;
	  opacity: 0;
	  display: flex;
	  flex-direction: column;
	  justify-content: center;
	  align-items: center;
}
.section-products .ul-prod .item .figcaption > span {
  -webkit-transition: .3s ease;
  -khtml-transition: .3s ease;
  -moz-transition: .3s ease;
  -ms-transition: .3s ease;
  -o-transition: .3s ease;
  transition: .3s ease;
  opacity: 0;
}
.section-products .ul-prod .item .figcaption .txt1 {
  margin-bottom: 8px;
  top: -30px;
}
.section-products .ul-prod .item .figcaption .txt2 {
  margin-bottom: 13px;
  top: -20px;
}
.section-products .ul-prod .item .figcaption .txt3 {
  top: -20px;
}

.section-products .ul-prod .item .info {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  padding: 25px 35px;
}
.section-products .ul-prod .item .info > span {
  display: block;
  line-height: 1;
}

.section-products .row03 .ul-prod .item .info {
  padding-top: 32px;
}
.section-products .row03 .ul-prod .item .info .text1 {
  margin-bottom: 2px;
}
.section-products .row03 .ul-prod .item .info .text2 {
  margin-bottom: -9px;
}
.section-products .row04 .ul-prod .item .info {
  padding-top: 35px;
}
.section-products .row04 .ul-prod .item .info .f-sz75 {
  line-height: 0.7333333333333333;
  margin-bottom: 10px;
}

.section-products .row04 .ul-prod .item .info .f-sz70 {
  line-height: 0.71429;
}
.section-products .row04 .ul-prod .item.item01 .info {
  padding-top: 80px;
}
.section-products .row04 .ul-prod .item.item02 .info {
  text-align: right;
  color: #fff;
}

.section-products .ul-prod .item:hover:before {
  opacity: 1;
}
.section-products .ul-prod .item:hover .figcaption {
  opacity: 1;
}
.section-products .ul-prod .item:hover .figcaption > span {
  top: 0;
  opacity: 1;
}
.section-products .ul-prod .item:hover .figcaption span:first-of-type {
  margin-bottom: 8px;
  -webkit-transition: .2s;
  -khtml-transition: .2s;
  -moz-transition: .2s;
  -ms-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}

.section-products .ul-prod .item:hover .figcaption .txt2 {
  margin-bottom: 13px;
}
.section-products .ul-prod .item:hover .figcaption span:nth-of-type(2) {
  -webkit-transition: .3s;
  -khtml-transition: .3s;
  -moz-transition: .3s;
  -ms-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}
.section-products .ul-prod .item:hover .figcaption span:nth-of-type(3) {
  -webkit-transition: .4s;
  -khtml-transition: .4s;
  -moz-transition: .4s;
  -ms-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
}

.section-products .ul-prod .item:hover .figcaption span:nth-of-type(4) {
  -webkit-transition: .5s;
  -khtml-transition: .5s;
  -moz-transition: .5s;
  -ms-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}

.section-products .ul-prod .item:hover .figcaption span:nth-of-type(5) {
  -webkit-transition: .5s;
  -khtml-transition: .5s;
  -moz-transition: .5s;
  -ms-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
.section-products .row04 .ul-prod .item .figcaption .f-sz75 {
	line-height: 0.9;
    font-size: 5vw;
}


}
@media (max-width: 1140px) {
  .f-sz50 {
    font-size: 4rem;
  }

  .f-sz34 {
    font-size: 2rem;
  }

  .f-sz75 {
    font-size: 5.5rem;
  }

  .f-sz70 {
    font-size: 5rem;
  }
}
@media (max-width: 1023px) {
  .section-products .ul-prod > li {
    width: 50%;
  }
  .row-products .ul-prod {
    width: calc(100% + 1px);
    width: -webkit-calc(100% + 1px);
  }

  .section-products .row01 .ul-prod .item .figcaption .txt1,
  .section-products .row02 .ul-prod .item .figcaption .txt1 {
	  font-size: 4.5vw;
  }
}
@media (max-width: 991px) {

}

@media (max-width: 768px) {

  .section-products .ul-prod .item .figcaption {
	  background: rgba(0, 0, 0, 0.65);
	  color: #fff;
	  padding: 20px;
  }
  .section-products .row01 .ul-prod .item .figcaption .txt2,
  .section-products .row01 .ul-prod .item .figcaption .txt3,
  .section-products .row02 .ul-prod .item .figcaption .txt2,
  .section-products .row02 .ul-prod .item .figcaption .txt3 {
		font-size: 2.0rem;
  }
  .section-products .row03 .ul-prod .item .figcaption > span.txt2 {
		font-size: 2.5rem;
  }
  .section-products .row03 .ul-prod .item .figcaption > span.txt3 {
		font-size: 3.2rem;
	    line-height: 0.95;
  }

  .section-products .row03 .ul-prod .item .figcaption > span.txt4 {
	    font-size: 5rem;
  }

  .section-products .row04 .ul-prod .item .figcaption > span.txt4 {
	    line-height: 0.9;
	    font-size: 4.5rem;
  }

}

@media (max-width: 480px) {
  #products .sec-title .title {
	 font-size: 11.5vw;
  }
  .section-products .ul-prod > li {
    width: 100%;
  }
  .section-products .ul-prod > li:last-child {
    border-bottom: 1px solid #dfdfdf;
  }
  .section-products .ul-prod > li .item {
    margin: 0;
    border: none;
    border-top: 1px solid #dfdfdf;
  }

  .f-sz50 {
    font-size: 4rem;
  }

  .section-products .row01 .ul-prod .item .figcaption .txt1,
  .section-products .row02 .ul-prod .item .figcaption .txt1 {
    font-size: 7.5vw;
  }
  .section-products .row03 .ul-prod .item .figcaption > span.txt2 {
	  font-size: 2.0rem;
  }
  .section-products .row03 .ul-prod .item .figcaption > span.txt3 {
	  font-size: 2.5rem;
  }
  .section-products .row01 .ul-prod .item .figcaption > span.txt4,
  .section-products .row03 .ul-prod .item .figcaption > span.txt4 {
	  font-size: 4.5rem;
  }

  .section-products .row04 .ul-prod .item .figcaption > span.txt4 {
	  font-size: 4rem;
  }

  /* figcaption */
  .item .info {
	background: rgba(0, 0, 0, 0.65);
	padding: 25px;
	display: block;
  }

  .item .info span {
	display: block;
	color: #fff;
  }
}



