
/* Products List ============================================================== */
.pro-list {
  text-align: center;
  border: 1px solid #eaeaea;
  margin-bottom: 100px;
  box-shadow: 2px 9px 10px -3px rgba(0, 0, 0, 0.2);
}
.pro-list * {
  transition: all 0.5s;
}
.pro-list .pro-img {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  height: 0;
  padding-bottom: 75%;
}
.pro-list .pro-img img {
  max-height: 100%;
}
.pro-list .pro-img .img-center a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.pro-list .pro-img:hover {
  cursor: pointer;
}
.pro-list .pro-img:hover:before, .pro-list .pro-img:hover:after {
  opacity: 0.7;
}
.pro-list .pro-img:before {
  width: 30px;
  height: 2px;
}
.pro-list .pro-img:after {
  width: 2px;
  height: 30px;
}
.pro-list .pro-img:before, .pro-list .pro-img:after {
  content: "";
  background-color: #fff;
  position: absolute;
  z-index: 77;
  top: 50%;
  left: 50%;
  opacity: 0;
  transition: all 0.5s ease-in-out;
  transform: translate(-50%, -50%);
}
.pro-list .pro-img .hover-mask {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.1) 100%);
  opacity: 0;
  z-index: 10;
  pointer-events: none;
}
.pro-list .pro-img:hover .hover-mask {
  opacity: 1;
}
.pro-list .pro-img:hover img {
  transform: scale(1.2);
}
.pro-list .pro-text {
  position: relative;
  line-height: 1.5rem;
  padding: 20px 0 40px 0;
  font-weight: bold;
}
.pro-list .pro-text .pro-text-icon {
  position: absolute;
  bottom: -30px;
  left: calc(50% - 25px);
  background-color: #95643a;
  width: 50px;
  height: 50px;
}
.pro-list .pro-text .pro-text-icon:before {
  position: absolute;
  top: 16px;
  left: 16px;
  content: "";
  background: url(icons/icon-arrow.svg) no-repeat;
  padding: 9px;
}
.pro-list .pro-text:before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 0%;
  height: 3px;
  background-color: #95643a;
  transition: all 0.5s;
}
.pro-list:hover .pro-text:before {
  width: 100%;
}
.pro-list:hover .pro-text-icon {
  transform: rotate(90deg) scale(0.8);
}

/* Product Detail ============================================================ */
.pro-detail-wrap {
  margin: 0 0 20px 0;
}
@media (max-width: 480px) {
  .pro-detail-wrap {
    margin: 0 0 20px 0;
  }
}

.pro-detail-left {
  width: 90%;
  margin: 2% auto 0 auto;
}
@media (max-width: 992px) {
  .pro-detail-left {
    margin: 2% auto 10% auto;
  }
}

.pro-detail {
  padding: 0;
}

.pro-detail-pic {
  position: relative;
  overflow: hidden;
  width: 95%;
  margin: 0 auto;
  margin-top: 10px;
  height: 0;
  padding-bottom: 65%;
}
.pro-detail-pic img {
  max-height: 100%;
}
.pro-detail-pic .img-center a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.pro-detail-title h1 {
  font-weight: 600;
}

.pro-detail-info {
  padding: 1rem 0;
  border-bottom: 1px solid #d6d6d6;
}

.upload-file-zone {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
}
.upload-file {
  margin: 0 30px 10px 0;
}

ol.pro-detail-button {
  margin: 2rem 0 1rem 0;
  padding: 0;
}
ol.pro-detail-button li {
  display: inline-block;
  list-style-type: none;
  margin: 0 1px 10px 0;
  font-size: inherit;
  line-height: inherit;
}

.btn-basic {
  padding: 1px 13px;
  display: flex; flex-flow: row-reverse; align-items: center;
  border: 1px solid #95643a;
  color: #999 !important;
  font-weight: 400;
}
.btn-basic:hover {
  color: #fff !important;
}

.btn-hover {
  position: relative;
}
.btn-hover:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #593E23;
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition: all 0.3s;
}
.btn-hover:hover:before {
  transform: scaleX(1);
}

.btn-inquiry {
  color: #fff !important;
  font-weight: 400;
  background: #95643a;
  padding: 2px 15px;
  position: relative; display: flex; flex-flow: row-reverse; align-items: center;
}
.btn-inquiry:hover {
  color: #fff;
  background: #593E23;
}
.btn-inquiry:after {
  content: "";
  /*position: absolute;
  top: 9px;
  left: 20px;*/
  background: url(icons/icon-inquiry-2.svg) no-repeat;
  width: 15px;
  height: 15px;
  display: block; margin: 0 5px 0 0;
}

.btn-back {
  position: relative;
}
.btn-back:after {
  content: "";
  /*position: absolute;
  top: 7px;
  left: 20px;*/
  background: url(icons/icon-back.svg) no-repeat;
  width: 17px;
  height: 17px;
  transition: all 0.3s;
  display: block; margin: 0 5px 0 0;
}
.btn-back:hover:after {
  background: url(icons/icon-back-2.svg) no-repeat;
}

.btn-prev {
  position: relative;
}
.btn-prev:after {
  content: "";
  /*position: absolute;
  top: 7px;
  left: 20px;*/
  background: url(icons/icon-prev-2.svg) no-repeat;
  width: 17px;
  height: 17px;
  transition: all 0.3s;
  display: block; margin: 0 5px 0 0;
}
.btn-prev:hover:after {
  background: url(icons/icon-prev.svg) no-repeat;
}

.btn-next {
  position: relative;
}
.btn-next:after {
  content: "";
  /*position: absolute;
  top: 7px;
  left: 20px;*/
  background: url(icons/icon-next-2.svg) no-repeat;
  width: 17px;
  height: 17px;
  transition: all 0.3s;
  display: block; margin: 0 5px 0 0;
}
.btn-next:hover:after {
  background: url(icons/icon-next.svg) no-repeat;
}

.tab-list {
  text-align: center;
  background: #F4EFEB;
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
  border-top: solid 1px rgba(255, 255, 255, 0.5);
  padding: 0;
  position: sticky; top: 70px; z-index: 100; overflow-x: auto; display: flex; flex-flow: row; justify-content: center;
}
.tab-list li {
  display: inline-block;
  padding: 3px 2em;
  margin: 0px -2px;
  border-left: solid 1px RGBA(30, 24, 12, 0.1);
  list-style: none;
  text-align: center;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 2.5em;
  cursor: pointer;
  white-space:nowrap;
}
@media (max-width: 991px) {
  .tab-list {justify-content: flex-start;}
  .tab-list li {padding: 3px 20px;}
}
@media (max-width: 760px) {
  .pro-list {margin-bottom: 70px;}
  .tab-list li {
    /*display: block;
    border-bottom: solid 1px rgba(255, 255, 255, 0.2);*/
  }
}
.tab-list li:last-child {
  border-right: solid 1px RGBA(30, 24, 12, 0.1);
}
.tab-list li a {
  color: #1E180C;
  transition: all 0.5s;
}
.tab-list li a:hover {
  color: #95643a;
}

.tab-list-content {
  padding: 30px;
  width: 100%;
  max-width: 1258px;
  margin: 2% auto;
}
.pro-detail-tab-title {
  margin: 2% 0;
  font-size: 2rem;
  font-weight: bold;
  color: #1E180C;
}
@media (max-width: 760px) {
    .tab-list-content {padding: 20px;}
}
@media (max-width: 460px) {
  .pro-detail-tab-title {
    font-size: 1.2rem;
  } 
}
.pro-detail-tab-title span {
  color: #95643a;
}

.related-pro {
  padding-left: 0 !important;
}
.related-pro li {
  text-align: center;
  padding: 0 20px;
}
.related-pro li figure {
  position: relative;
  overflow: hidden;
  padding-bottom: 60%;
}
.related-pro li figure .img-center a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.related-pro li h3 {
  padding-top: 20px;
  font-size: 0.9rem;
  font-weight: 400;
  color: #000;
}
.related-pro li img {
  max-height: 100%;
}

.process {
  display: flex;
  flex-flow: wrap;
  margin: calc(20px + 1%) 0 0 0;
}
.process > div {
  width: 31.33%;
  position: relative;
  background: #FAF7F5;
  padding: 20px;
  border-radius: 10px;
  margin: 0 3% calc(20px + 1%) 0;
  z-index: 1;
}
.process > div:nth-child(3n+3) {
  margin-right: 0;
}
.process > div .icon {
  display: inline-block;
  background: #fff;
  border-radius: 40px;
  padding: 10px;
}
.process > div .tit {
  font-weight: 700;
  font-size: 150%;
  margin: 20px 0 5px 0;
}
.process > div .txt {
  margin: 0;
}
.process > div .num {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 375%;
  color: rgb(149, 100, 58);
  font-weight: 700;
  opacity: 0.12;
  line-height: 1;
}
@media (max-width: 768px) {
    .process > div, .process > div:nth-child(3n+3) {
        width: 48.5%; margin: 0 3% calc(20px + 1%) 0;
    }
    .process > div:nth-child(2n+2) {
        margin-right: 0;
    }
}
@media (max-width: 576px) {
    .process > div .icon img {
        width: 50px;
    }
    .process > div .num {
        font-size: 337.5%;
    }
}
@media (max-width: 430px) {
    .process > div, .process > div:nth-child(3n+3), .process > div:nth-child(2n+2) {
        width: 100%; margin: 0 0 20px 0;
    }
}