/*
Theme Name: enfold-child
Template: enfold
Theme URI: xxxx
Description: xxxx
Author: xxxx
Author URI: xxxx
Version: xxxx
*/

@import url("https://fonts.googleapis.com/earlyaccess/nanummyeongjo.css");
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css");

body {
  font-family: "Pretendard", "Nanum Myeongjo", sans-serif;
  word-break: keep-all;
}

.sm-txt {
  font-size: 18px;
  font-family: "Pretendard";
  font-weight: 500;
  line-height: normal;
}

.title {
  font-family: "Nanum Myeongjo";
  font-size: 82px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

/* 메인 */

#main01 {
}

.main-slider-btn {
  padding: 15px 0;
}

.main-slider-btn span:first-child {
  color: #fff;

  text-align: center;
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  margin-bottom: 8px;
}

.main-slider-btn span:last-child {
  color: #fff;

  text-align: center;
  font-family: Pretendard;
  font-size: 25px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

#main01 .container {
  max-width: 100%;
  padding: 0;
}

#main01 .section01 {
  text-align: center;
  margin-top: 95px;
}

#main01 .section01 .sm-txt {
  color: #304172;
}

#main01 .section01 .title {
  margin-top: 25px;
}

#main01 .section01 .main-slick {
  display: flex;
  margin-left: 100px;
  margin-top: 96px;
}

#main01 .section01 .main-slick .box {
  width: 468px;
  height: 507px;
  background-size: cover;
  background-position: center;
  margin-right: 28px;
}

#main01 .section01 .main-slick .box01 {
  background-image: url(/wp-content/uploads/2025/11/mainproduct01.png);
}

#main01 .section01 .main-slick .box02 {
  background-image: url(/wp-content/uploads/2025/11/mainproduct02.png);
}

#main01 .section01 .main-slick .box03 {
  background-image: url(/wp-content/uploads/2025/11/mainproduct03.png);
}

#main01 .section01 .main-slick .box04 {
  background-image: url(/wp-content/uploads/2025/11/mainproduct04.png);
}

#main01 .section01 .main-slick .box05 {
  background-image: url(/wp-content/uploads/2025/11/mainproduct05.png);
}

#main01 .section01 .main-slick .box06 {
  background-image: url(/wp-content/uploads/2025/11/mainproduct06.png);
}

#main01 .section01 .main-slick .box .txt {
  color: #fff;
  text-align: center;
  font-family: Pretendard;
  font-size: 30px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  padding-top: 45px;
}

#main02 .container {
  max-width: 100%;
  padding: 0;
}

#main02 .section01 {
  position: relative;
}

#main02 .main-slick02 {
}

#main02 .main-slick02 .sm-txt,
#main02 .main-slick02 .title {
  text-align: center;
  color: #fff;
}

#main02 .main-slick02 .title {
  line-height: 80px;
  padding-top: 25px;
}

#main02 .main-slick02 .con {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
}

#main02 .main-slick02 .con .txt01 {
  color: #fff;
  font-family: Pretendard;
  font-size: 34px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -1.02px;
}

#main02 .main-slick02 .con .txt02 {
  color: #fff;
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.54px;
  margin-top: 26px;
  margin-bottom: 110px;
  height: 72px;
}

#main02 .main-slick02 .box {
  position: relative;
  background-size: cover;
  background-position: center;
  padding-top: 97px;
  padding-bottom: 175px;
}

#main02 .main-slick02 .box01 {
  background-image: url(/wp-content/uploads/2025/11/main-section02img055.png);
}

#main02 .main-slick02 .box02 {
  background-image: url(/wp-content/uploads/2025/11/main-section02img022.png);
}

#main02 .main-slick02 .box03 {
  background-image: url(/wp-content/uploads/2025/11/main-section02img033.png);
}

#main02 .main-slick02 .box04 {
  background-image: url(/wp-content/uploads/2025/11/main-section02img044.png);
}

#main02 .main-slick02 .box05 {
  background-image: url(/wp-content/uploads/2025/11/main-section02img011.png);
}

#main02 .main-slick02 .box .border {
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  top: 56%;
}

#main02 .main-slick02 .box .img-box {
  width: 468px;
  height: 590px;
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column-reverse;
  padding-bottom: 39px;
}

#main02 .main-slick02 .box01 .img-box {
  background-image: url(/wp-content/uploads/2025/11/mainsection021-new.png);
}

#main02 .main-slick02 .box02 .img-box {
  background-image: url(/wp-content/uploads/2025/11/mainsection022-new.png);
}

#main02 .main-slick02 .box03 .img-box {
  background-image: url(/wp-content/uploads/2025/11/mainsection023-new.png);
}

#main02 .main-slick02 .box04 .img-box {
  background-image: url(/wp-content/uploads/2025/11/mainsection024-new.png);
}

#main02 .main-slick02 .box05 .img-box {
  background-image: url(/wp-content/uploads/2025/11/mainsection025-new.png);
}

#main02 .main-slick02 .con .img-box .txt {
  color: #fff;
  text-align: center;
  font-family: Pretendard;
  font-size: 25px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.75px;
}

#main02 .main-slick02 .con .left {
  padding-top: 54px;
  padding-left: 230px;
  flex: 4;
}

#main02 .main-slick02 .con .center {
  z-index: 1;
  flex: 4;
  display: flex;
  justify-content: center;
}

#main02 .main-slick02 .con .right {
  padding-top: 54px;
  padding-right: 230px;
  text-align: right;
  flex: 4;
}

#main02 .main-slick02 .con .abtn a {
  color: #fff;
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.54px;
  padding: 15px 34px;
  border-radius: 34.5px;
  border: 1px solid #d9d9d9;
  background: rgba(217, 217, 217, 0.2);
}

#main02 .main-slick02 .con .txt03 {
  color: #fff;
  text-align: right;
  font-family: Pretendard;
  font-size: 34px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -1.02px;
}

#main02 .nav-btn {
  display: flex;
  justify-content: center;
  position: absolute;
  left: 50%;
  bottom: 10%;
  z-index: 2;
  gap: 500px;
  transform: translateX(-50%);
}

#main02 .slick-dots {
  position: absolute;
  bottom: 105px;
  left: 50%;
  transform: translateX(-50%);
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 12px;
}

#main02 .slick-dots li {
  list-style: none;
  width: 60px;
  height: 4px;
  background: #ddd;
  overflow: hidden;
  border-radius: 2px;
  position: relative;
}

#main02 .slick-dots li button {
  width: 100%;
  height: 6px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  position: absolute;
  top: 0;
}

#main02 .slick-dots li button span {
  display: block;
  height: 100%;
  width: 0%;

  transition: width 0s;
}

#main02 .slick-dots li.slick-active button span {
  width: 100%;
  transition: width 4s linear; /* autoplaySpeed와 동일하게 */
  background: #1a6aac; /* 메인컬러 */
  height: 100%;
}

:root {
  --t: 0.9s;
}

/* 초기 상태 설정 */
.main-slick02 .box .sm-txt,
.main-slick02 .box .title {
  transition: transform var(--t) ease, opacity var(--t) ease,
    filter var(--t) ease;
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
  }
}

/* 기본: 투명도/블러 초기화 */
.main-slick02 .box {
  will-change: transform, opacity, filter, clip-path;
}

/* 센터 이미지 박스 */
.main-slick02 .box .center .img-box {
  transform: scale(1);
  opacity: 1;
  transition: transform var(--t) ease, opacity var(--t) ease,
    filter var(--t) ease;
}
.main-slick02 .box.is-enter .center .img-box {
  transform: scale(1.08);
  opacity: 0;
  filter: blur(8px);
}
.main-slick02 .box.is-leave .center .img-box {
  transform: scale(0.96);
  opacity: 0;
  filter: blur(8px);
}

/* 기본 스타일 */
.main-slick02 .box .center .img-box {
  position: relative;
  overflow: hidden;
}
.main-slick02 .box .center .img-box::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    75deg,
    transparent 40%,
    rgba(255, 255, 255, 0.35) 50%,
    transparent 60%
  );
  transform: translateX(-120%);
  pointer-events: none;
}

/* sweep-active 클래스가 붙을 때마다 애니메이션 실행 */
.main-slick02 .box .center .img-box.sweep-active::after {
  animation: sweep var(--t) ease 0.1s both;
}

@keyframes sweep {
  to {
    transform: translateX(120%);
  }
}

/* 좌/우 텍스트 애니메이션 */
.main-slick02 .box .left,
.main-slick02 .box .right {
  transition: transform var(--t) ease, opacity var(--t) ease,
    filter var(--t) ease;
}
.main-slick02 .box.is-enter .left {
  transform: translateY(20px);
  opacity: 0;
  filter: blur(4px);
}
.main-slick02 .box.is-enter .right {
  transform: translateY(20px);
  opacity: 0;
  filter: blur(4px);
}
.main-slick02 .box.is-leave .left {
  transform: translateY(-20px);
  opacity: 0;
  filter: blur(4px);
}
.main-slick02 .box.is-leave .right {
  transform: translateY(-20px);
  opacity: 0;
  filter: blur(4px);
}

.main-slick02 .box.is-enter .sm-txt {
  transform: translateY(20px);
  opacity: 0;
  filter: blur(4px);
}
.main-slick02 .box.is-leave .sm-txt {
  transform: translateY(-20px);
  opacity: 0;
  filter: blur(4px);
}
.main-slick02 .box.is-enter .title {
  transform: translateY(20px);
  opacity: 0;
  filter: blur(4px);
}
.main-slick02 .box.is-leave .title {
  transform: translateY(-20px);
  opacity: 0;
  filter: blur(4px);
}

#main03 {
  margin-top: 120px;
}

#main03 .section01 {
  text-align: center;
}

#main03 .section01 .sm-txt {
  color: #304172;
}

#main03 .section01 .title {
  padding-top: 25px;
}

#main03 .section01 .sm-txt02 {
  font-size: 22px;
  padding-top: 50px;
}

#main03 .section02 {
  margin-top: 208px;
  display: flex;
  justify-content: center;
  gap: 55px;
}

#main03 .section02 .box {
  width: 31%;
}

#main03 .section02 .box .txt01 {
  color: #000;
  font-family: "Nanum Myeongjo";
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

#main03 .section02 .box .txt02 {
  color: #000;
  font-family: Pretendard;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
  padding-top: 16px;
}

#main03 .section02 .box .imgbox {
  height: 600px;
  background-size: cover;
  background-position: center;
  margin-top: 38px;
}

#main03 .section02 .box01 .imgbox {
  background-image: url(/wp-content/uploads/2025/11/mainsection03-1-new.png);
}

#main03 .section02 .box02 .imgbox {
  background-image: url(/wp-content/uploads/2025/10/mainsection03-2.png);
}

#main03 .section02 .box03 .imgbox {
  background-image: url(/wp-content/uploads/2025/10/mainsection03-3.png);
}

#main03 .section02 .box01,
#main03 .section02 .box03 {
  padding-top: 195px;
}

:root {
  --reveal-distance: 150px;
  --reveal-duration: 1.5s;
}

#main03 .section02 .reveal-up {
  transform: translateY(calc(var(--reveal-distance) * -1));
  opacity: 0;
  filter: blur(10px);
  transition: transform var(--reveal-duration) cubic-bezier(0.19, 1, 0.22, 1),
    opacity var(--reveal-duration) ease, filter var(--reveal-duration) ease;
  will-change: transform, opacity, filter;
}

/* 등장 */
#main03 .section02 .reveal-up.is-inview {
  transform: translateY(0);
  opacity: 1;
  filter: blur(0);
}

/* 리듬감 있게 순차 등장 */
#main03 .section02 .box01.reveal-up {
  transition-delay: 0.1s;
}
#main03 .section02 .box03.reveal-up {
  transition-delay: 0.6s;
}

#main04 {
  background-image: url(/wp-content/uploads/2025/11/main04-bg-new.png);
  background-size: cover;
  background-position: center;
  padding-top: 80px;
}

#main04 .section {
  display: flex;
}

#main04 .left {
  width: 50%;
}

#main04 .left .txt01 {
  color: #fff;
  font-family: Pretendard;
  font-size: 70px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

#main04 .left .txt02 {
  color: #fff;
  font-family: Pretendard;
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.72px;
  padding-top: 48px;
}

#main04 .left .txt03 {
  color: #fff;
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.54px;
  padding-top: 24px;
}

#main04 .right {
  width: 50%;
}

#main04 .right .contact-box {
}

#main04 .right .contact-box .row {
}

#main04 .right .contact-box .row .txt {
  color: #fff;
  font-family: Pretendard;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.6px;
  position: relative;
}

#main04 .right .contact-box .row .txt::after {
  content: "*";
  position: absolute;
  color: #6b9eff;
  font-size: 20px;
  margin-left: 2px;
}

#main04 .right .contact-box .row input {
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.54px;
  background: transparent;
  border: none;
  border-bottom: 1px solid #bbb;
  margin-top: 10px;
  color: #fff;
}

#main04 .right .contact-box .row select {
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.54px;
  border: none;
  margin-top: 10px;
  border-radius: 5px;
  padding-top: 10px;
  padding-bottom: 10px;
}

#main04 .right .contact-box .row input::placeholder,
#main04 .right .contact-box .row textarea::placeholder {
  color: #555;
}

.agreebox textarea {
  color: #000 !important;
  font-size: 20px !important;
  border-radius: 10px !important;
  padding: 15px 10px !important;
  background: #ebebeb !important;
}

.agreebox {
  text-align: right;
}

.agreebox .wpcf7-list-item label {
  display: flex;
  gap: 10px;
}

.agreebox .wpcf7-list-item label input {
  width: 20px;
  height: 20px;
  margin: 0;
}

.agreebox .wpcf7-list-item label .wpcf7-list-item-label {
  font-size: 18px !important;
}

#main04 .right .contact-box .row textarea {
  font-family: Pretendard;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.54px;
  background: transparent;
  margin-top: 15px;
}

#main04 .right .contact-box .center input {
  border-radius: 34.5px;
  border: 1px solid #d9d9d9;
  background: rgba(217, 217, 217, 0.2);
  backdrop-filter: blur(20px);
  font-size: 18px;
  padding: 15px 34px;
}

#main05 {
  padding-top: 90px;
  padding-bottom: 140px;
}

#main05 .sm-txt {
  color: #304172;
}

#main05 .section01 {
  text-align: center;
}

#main05 .img-bg {
  background-image: url(/wp-content/uploads/2025/10/main05-bg.png);
  background-size: cover;
  background-position: center;
  margin-top: 48px;
  display: flex;
  justify-content: center;
}

#main05 .img-bg .left {
  width: 30%;
  padding-right: 30px;
  display: flex;
  align-items: center;
}

#main05 .img-bg .right {
  width: 30%;
  padding-left: 30px;
  display: flex;
  align-items: center;
}

#main05 .img-bg .center {
  width: 40%;
  padding: 227px 0;
}

#main05 .img-bg .center .txt01 {
  color: #fff;
  text-align: center;
  font-family: Pretendard;
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.96px;
}

#main05 .img-bg .center .txt02 {
  color: #fff;
  text-align: center;
  font-family: Pretendard;
  font-size: 26px;
  font-style: normal;
  font-weight: 400;
  line-height: 38px; /* 146.154% */
  letter-spacing: -0.78px;
  padding-top: 32px;
}

#main05 .img-bg .left > div,
#main05 .img-bg .right > div {
  width: 100%;
  height: 1px;
  background-color: #fff;
}

/* 푸터 */
.wpml-ls-legacy-list-horizontal a {
  background-color: #fff !important;
}

footer .copyright {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  padding: 50px 0 20px;
}

footer .left {
}

footer .left .txt01 {
  color: #333;
  font-family: "Nanum Myeongjo";
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  padding-bottom: 24px;
}

footer .left .txt02 {
  color: #888;
  font-family: "Nanum Myeongjo";
  font-size: 25px;
  font-style: normal;
  font-weight: 600;
  line-height: 33px;
}

footer .right {
  text-align: right;
}

footer .right .footer-logo {
  margin-bottom: 36px;
}

footer .right .txt {
  color: #444;
  font-family: Pretendard;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
}

footer .right .copy {
  color: #444;
  text-align: center;
  font-family: Pretendard;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 18px;
  padding-top: 60px;
  text-align: right;
}

/* 제품소개 */
.vp-portfolio__item {
  border: 1px solid #ddd;
  border-radius: 10px;
}

.vp-filter__style-default .vp-filter__item a {
  font-size: 18px;
}

.product-box {
  display: flex;
  padding: 0 100px;
}

.product-box .left {
  width: 40%;
}

.product-box .left .product-slick img {
  border: 1px solid #ddd;
}

.product-box .right {
  width: 60%;
  padding-top: 50px;
  margin-left: 0 !important;
}

.product-box .right .product-title {
  font-size: 32px;
  font-weight: 600;
  line-height: normal;
  margin-top: 30px;
}

.product-box .right .product-cate {
  font-size: 20px;
  font-weight: 500;
  line-height: normal;
  display: flex;
  color: #077edd;
}

.product-box .right .product-cate div {
  border: 2px solid #077edd;
  padding: 5px 10px;
  border-radius: 5px;
}
.product-box .right .product-cate h3 {
  border: 2px solid #077edd;
  padding: 5px 10px;
  border-radius: 5px;
  color: inherit !important;
}

.product-box .right table {
  margin-top: 30px;
}

.product-box .right table tr {
}

.product-box .right table tr td {
  background-color: #fff;
  width: 25%;
  color: #333;
  font-size: 24px;
  line-height: normal;
  border: none;
  padding: 0;
  padding-bottom: 25px;
}

.product-box .right table tr td:nth-child(1),
.product-box .right table tr td:nth-child(3) {
  width: 20%;
  font-weight: 700;
}

.product-box .right table tr td:nth-child(2),
.product-box .right table tr td:nth-child(4) {
  width: 30%;
}

.product-box .right .spec-desc {
  font-size: 18px;
  line-height: normal;
  border-top: 1px solid #ddd;
  padding-top: 15px;
}

.product-set-box {
  padding: 0px 100px;
  /* margin-top: 100px; */
}

.product-set-box .set-title {
  font-size: 32px;
  font-weight: 600;
  text-align: center;
  line-height: normal;
}

.product-set-box .set-box {
  display: flex;
  flex-wrap: wrap;
  margin-top: 50px;
  gap: 20px;
  justify-content: space-between;
}

.product-set-box .set-box .box {
  width: 49%;
  display: flex;
  box-shadow: 4px 4px 6px 2px #e9e6e6;
}

.product-set-box .set-box .box .left {
  flex: 6;
  display: flex;
}

.product-set-box .set-box .box .left img {
}

.product-set-box .set-box .box .tit {
  font-size: 22px;
  font-weight: 500;
  color: #2239b9;
}

.product-set-box .set-box .box .desc {
  font-size: 18px;
  line-height: normal;
  padding: 10px 15px 0;
}

.product-set-box .set-box .box .right {
  flex: 6;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  /* padding-top: 50px; */
  justify-content: center;
}

.product-banner {
  width: 100%;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
}

.product-banner::before {
  content: "";
  position: absolute;
  background: url(/wp-content/uploads/2025/10/product-banner-scaled.jpg);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  filter: brightness(0.5);
}

.product-banner .banner-title {
  font-size: 82px;
  font-weight: 600;
  line-height: normal;
  color: #fff;
}

.product-banner .banner-desc {
  font-size: 20px;
  line-height: normal;
  margin-top: 20px;
  color: #fff;
}

.product-wrap {
  margin-top: 100px;
  margin-bottom: 100px;
}

.product-slick .slick-dots {
  position: absolute;
  width: 400px;
  margin: 0;
  bottom: 10px;
  display: flex;
  justify-content: center;
}

.product-slick .slick-dots button {
  display: none;
}

.product-slick-btn {
  position: absolute;
  display: flex;
  padding: 0 10px;
  width: 400px;
  justify-content: space-between;
  top: 50%;
  transform: translateY(-50%);
}

.product-title {
  text-align: center;
  font-size: 60px;
  line-height: normal;
  font-weight: 600;
  /* margin: 50px 0 100px; */
  margin: 0;
}

.shop-link-btn {
  text-align: right;
  margin-top: 10px;
}

.shop-link-btn a {
  font-size: 20px;
  line-height: normal;
  border: 1px solid #333;
  padding: 10px 15px;
  display: inline-block;
  border-radius: 10px;
}

.shop-link-btn a:hover {
  color: #fff;
  background-color: #17277d;
}

.meta-key-shop_link {
  color: #3f51b5;
}

.portfolio-buy-wrap {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.portfolio-buy-btn {
  display: inline-block;
  padding: 10px 20px;
  border-radius: 4px;
  color: #fff !important;
  background-color: #3e51bb;
  font-size: 18px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.portfolio-buy-btn:hover {
  background: #444;
}

/* 문의하기 */

.contact-wrap {
  background-image: none !important;
}

.contact-wrap .left div,
.contact-wrap .txt,
.contact-wrap input,
.contact-wrap textarea {
  color: #333 !important;
}

.contact-wrap .img-box {
  margin-top: 30px;
}

.contact-wrap .img-box img {
  width: 70%;
  border-radius: 20px;
}

/* 각 파이프 규격 */

.pipe-spec {
  margin-bottom: 50px;
}

.pipe-spec .sm-title {
  text-align: center;
  font-size: 20px;
  color: #7d7761;
  font-weight: 500;
}

.pipe-spec table {
  margin-top: 30px;
}

.pipe-spec table thead tr td {
  background-color: #7d7761;
  text-align: center;
  font-size: 18px;
  color: #fff;
  line-height: normal;
  padding: 20px;
}

.pipe-spec table tbody tr td {
  text-align: center;
  font-size: 18px;
  line-height: 30px;
  vertical-align: middle;
  padding: 20px;
  background-color: #fff;
  color: #333;
}

.pipe-spec .desc {
  font-size: 15px;
  text-align: right;
}

.delivery-wrap {
}

.delivery-wrap .box {
}

.delivery-wrap .box .tit,
.delivery-wrap .box02 .tit {
  font-size: 36px;
  font-weight: 500;
  line-height: normal;
}

.delivery-wrap .box > ul {
  padding-top: 30px;
}

.delivery-wrap .box > ul > li {
  font-size: 18px;
  line-height: 40px;
}

.delivery-wrap .box > ul > li > ul {
}

.delivery-wrap .box > ul > li > ul > li {
  list-style: upper-latin;
}

.table-top-desc {
  text-align: right;
  font-size: 18px;
  padding-top: 30px;
}

.delivery-wrap table {
  margin-top: 10px;
}

/* 연구개발 */
.rnd-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 100px;
  margin-bottom: 100px;
}

.rnd-box .left {
  width: 50%;
  padding-right: 50px;
  word-break: keep-all;
}

.rnd-box .right {
  width: 50%;
}

.rnd-box .left .txt01 {
  font-family: "Nanum Myeongjo";
  font-size: 20px;
  line-height: normal;
  font-weight: 600;
  color: #1d4e75;
}

.rnd-box .left .txt02 {
  font-size: 32px;
  line-height: normal;
  padding-top: 20px;
  font-weight: 600;
  color: #17277d;
}

.rnd-box .left .txt03 {
  font-size: 20px;
  line-height: 30px;
  padding-top: 20px;
}

/* 파이프 */
.scroll-txt {
  display: none;
}

.pipe-name {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.pipe-name h3 {
  font-size: 30px;
  font-weight: 500;
}

.pipe-name .special-heading-border {
  width: 30%;
}

.pipe-content {
  font-size: 18px;
  line-height: 30px;
  margin-top: 15px;
  height: 225px;
}

.pipe-content strong {
  color: #123c6b;
}

.pipe-content-strong {
  font-size: 15px;
  font-weight: 600;
}

/* 포트폴리오 */
.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}

.kboard-category-list {
  display: flex;
  justify-content: center;
  background: #fff !important;
  border: none !important;
  gap: 15px;
  margin-bottom: 100px !important;
  flex-wrap: wrap;
}

.kboard-category-list li {
  font-size: 18px !important;
  border: 1px solid #ddd;
  border-radius: 25px;
  padding: 5px 25px !important;
}

.kboard-category-list li #text {
  display: none;
}

.kboard-inquiry-wrap {
  margin-top: 50px;
  text-align: left;
  margin-bottom: 50px;
}

.kboard-inquiry-btn {
  display: inline-block;
  padding: 10px 20px;
  border-radius: 4px;
  color: #fff !important;
  background-color: #3e51bb;
  font-size: 18px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.kboard-inquiry-btn:hover {
  background: #444;
}

/* 상점 */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
  margin-top: 100px !important;
}

/* 공지사항 */
.hyhitech-kboard-document-wrap {
  margin-top: 50px;
}

.hyhitech-kboard-document-wrap .kboard-title {
  border-top: 3px solid #888888;
  border-bottom: 1px solid #cccccc;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.hyhitech-kboard-document-wrap .kboard-title h1 {
  color: #000 !important;
  font-weight: 500 !important;
  font-size: 22px !important;
  padding: 20px 30px !important;
}

.hyhitech-kboard-document-wrap .kboard-title > div {
  font-size: 17px;
  font-weight: 300;
  color: #888888;
  padding-right: 30px;
  font-family: "S-CoreDream";
}

.hyhitech-kboard-document-wrap .content-view {
  font-size: 18px;
  color: #111111;
  font-weight: 200;
  padding: 22px 22px 22px 30px !important;
}

.hyhitech-document-navi .kboard-prev-document,
.hyhitech-document-navi .kboard-next-document {
  padding: 25px 0 25px 30px !important;
}

.hyhitech-document-navi .prev-btn,
.hyhitech-document-navi .next-btn {
  font-size: 18px !important;
  font-weight: 200 !important;
  color: #222222 !important;
  display: flex !important;
}

.hyhitech-document-navi .prev-btn {
  justify-content: flex-start;
}

.hyhitech-document-navi .next-btn {
  justify-content: flex-end;
}

.hyhitech-document-navi .next-btn .navi-next-txt {
  padding-right: 15px;
}

.hyhitech-document-navi .navi-prev-txt,
.hyhitech-document-navi .navi-next-txt {
  font-weight: 200;
  color: #888888;
}

.hyhitech-document-navi .prev-btn .navi-document-title {
  color: #888888;
}

.hyhitech-document-navi .navi-arrow img {
  display: none !important;
}

.hy-nav-center {
  text-align: center;
}

.hy-nav-center a {
  display: inline-block;
  background-color: #123c6b !important;
  margin-top: 70px !important;
  color: #ffffff !important;
  font-weight: 500 !important;
  font-size: 20px !important;
  padding: 15px 70px !important;
  border-radius: 50px !important;
}

#kboard-default-document .kboard-document-navi {
  border-top: 2px solid #ebebeb !important;
}

.twoh-port-btn {
  display: inline-block;
  background-color: #123c6b !important;
  margin-top: 70px !important;
  color: #ffffff !important;
  font-weight: 500 !important;
  font-size: 20px !important;
  padding: 15px 70px !important;
  border-radius: 50px !important;
  background-color: #123c6b !important;
  line-height: normal !important;
  height: auto;
}

.kboard-control .center {
  text-align: center;
  border-top: 2px solid #ddd;
}

.kboard-control .center-nav a {
  background-color: #004b87 !important;
  border-radius: 20px;
  font-size: 15px !important;
  padding: 5px 20px !important;
  height: auto;
}
.kboard-control .center-nav {
  text-align: right;
  margin: 20px 0;
}

.acf-extra-image {
  display: block;
  max-width: 100%;
  height: auto;
  margin-top: 20px;
}

.portfolio-grid-gallery {
  display: flex;
  flex-wrap: wrap;
}

.portfolio-extra-content {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid #eee;
  font-size: 15px;
  line-height: 1.7;
}

/* 이 포트폴리오 인스턴스에만 적용 */
.vp-uid-6b9b74d7 .vp-portfolio__items {
  position: static !important;
  display: flex;
  flex-wrap: wrap;
}

/* 4열 그리드 (데스크탑) */
.vp-uid-6b9b74d7 .vp-portfolio__item-wrap {
  position: static !important; /* element.style의 absolute 무시 */
  width: 25%;
  box-sizing: border-box;
  padding: 7.5px; /* 플러그인 gap 15px 비슷하게 */
}

/* 태블릿 2열 */
@media (max-width: 1024px) {
  .vp-uid-6b9b74d7 .vp-portfolio__item-wrap {
    width: 50%;
  }
}

/* 모바일 1열 */
@media (max-width: 640px) {
  .vp-uid-6b9b74d7 .vp-portfolio__item-wrap {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  /* 메인 */
  .main-slider-btn span:first-child {
    font-size: 10px !important;
  }

  .main-slider-btn .span-txt {
    font-size: 12px !important;
  }

  .title {
    font-size: 40px;
  }

  #main01 .section01 .title {
    margin-top: 10px;
  }

  #main01 .section01 .main-slick {
    margin-left: 0;
    margin-top: 20px;
  }

  #main01 .section01 .main-slick .box {
    height: 400px;
    margin-right: 0;
  }

  #main02 .container {
    width: 100% !important;
    max-width: 100% !important;
  }

  #main02 .main-slick02 .title {
    line-height: normal;
  }

  #main02 .main-slick02 .con {
    flex-direction: column;
  }

  #main02 .main-slick02 .con .left {
    padding: 0;
    text-align: center;
  }

  #main02 .main-slick02 .con .txt01 {
    font-size: 28px;
  }

  #main02 .main-slick02 .con .txt02 {
    margin-bottom: 35px;
  }

  #main02 .main-slick02 .con .right {
    display: none;
  }

  #main02 .main-slick02 .con .abtn a {
    padding: 10px 34px;
  }

  #main02 .main-slick02 .con .center {
    margin: 70px 20px 0;
  }

  #main02 .main-slick02 .box .img-box {
    height: 350px;
  }

  #main02 .main-slick02 .box .border {
    top: 50%;
  }

  #main02 .slick-dots {
    width: 100%;
    margin: 0 auto;
    gap: 0;
  }

  #main02 .nav-btn {
    width: 100%;
    justify-content: space-between;
    padding: 0 15px;
    bottom: 8%;
    gap: 0;
  }

  #main02 .slick-dots li:first-child {
    margin-left: 0;
  }

  #main02 .slick-dots li {
    width: 40px;
  }

  #main03 {
    margin-top: 0;
  }

  #main03 .section01 .sm-txt02 {
    font-size: 18px;
    padding-top: 35px;
  }

  #main03 .section02 {
    margin-top: 50px;
    flex-direction: column;
  }

  #main03 .section02 .box01,
  #main03 .section02 .box03 {
    padding-top: 0;
  }

  #main03 .section02 .box {
    width: 100%;
  }

  #main03 .section02 .box .imgbox {
    margin-top: 10px;
  }

  #main03 .section02 .box02,
  #main03 .section02 .box03 {
    margin-top: 30px;
  }

  #main03 .section02 .box .imgbox {
    height: 350px;
  }

  #main04 .section {
    flex-direction: column;
  }

  #main04 .left,
  #main04 .right {
    width: 100%;
  }

  #main04 .left .txt01 {
    font-size: 36px;
  }

  #main04 .left .txt02 {
    padding-top: 20px;
  }

  #main04 .left .txt03 {
    padding-top: 20px;
  }

  #main04 .right {
    margin-top: 50px;
  }

  #main04 .right .contact-box .center input {
    padding: 10px 34px;
  }

  #main04 .right .contact-box .center {
    text-align: center;
    display: flex;
    justify-content: center;
  }

  #main04 .right .contact-box .center p {
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 50%;
  }

  #main05 .section01 .title {
    padding-top: 25px;
  }

  #main05 .container {
    width: 100% !important;
    max-width: 100% !important;
  }

  #main05 .img-bg {
    flex-direction: column;
    align-items: center;
  }

  #main05 .img-bg .center {
    padding: 50px 15px;
    width: 100%;
  }

  #main05 .img-bg .left,
  #main05 .img-bg .right {
    padding: 0;
  }

  #main05 .img-bg .left {
    margin-top: 100px;
  }

  #main05 .img-bg .right {
    margin-bottom: 100px;
  }

  #main05 .img-bg .center .txt01 {
    font-size: 28px;
  }

  #main05 .img-bg .center .txt02 {
    font-size: 18px;
  }

  /* 푸터 */
  footer .copyright {
    flex-direction: column;
  }

  footer .left {
    width: 100%;
  }

  footer .right {
    width: 100%;
    margin-top: 30px;
  }

  footer .left .txt01 {
    font-size: 26px;
  }

  footer .left .txt02 {
    font-size: 24px;
  }

  footer .right .txt {
    font-size: 15px;
    text-align: left;
  }

  footer .right .footer-logo {
    margin-bottom: 0;
    margin-top: 20px;
  }

  /* 연구개발 */
  .rnd-box {
    flex-direction: column;
  }

  .rnd-box .left {
    width: 100%;
    padding: 0;
  }

  .rnd-box .left .txt02 {
    font-size: 30px;
  }

  .rnd-box .left .txt03 {
    font-size: 18px;
  }

  .rnd-box .right {
    width: 100%;
  }

  /* 제품소개 */
  .product-title {
    font-size: 36px;
    margin: 30px 0 50px;
  }

  .product-banner {
    height: 560px;
  }

  .product-banner .banner-title {
    font-size: 40px;
  }

  /* 제품소개 - 상세페이지 */
  .product-box {
    flex-direction: column;
    padding: 0;
  }

  .product-box .left {
    width: 100%;
  }

  .product-box .right {
    width: 100%;
  }

  .product-slick .slick-dots {
    width: 100%;
  }

  .product-box .right .product-cate {
    justify-content: center;
  }

  .product-box .right table tr td {
    font-size: 18px;
  }

  .product-box .right .spec-desc {
    line-height: 25px;
  }

  .product-set-box {
    padding: 0;
  }

  .product-set-box .set-box .box {
    width: 100%;
    flex-direction: column;
  }

  .product-slick-btn {
    width: 100%;
  }

  .product-box .right .product-cate {
    font-size: 18px;
  }

  .product-set-box .set-box .box .tit,
  .product-set-box .set-box .box .desc {
    font-size: 18px;
  }

  .product-set-box .set-box .box .right {
    padding: 10px 0;
  }

  .vp-filter__style-default .vp-filter__item a {
    font-size: 15px;
  }

  /* 파이프규격 */
  .pipe-table {
    overflow-x: scroll;
    margin-bottom: 15px;
  }

  /* 크로스브라우징용 */
  .pipe-table::-webkit-scrollbar {
    height: 7px; /* 스크롤바 두께 */
  }

  .pipe-table::-webkit-scrollbar-thumb {
    background-color: #7d7761; /* 스크롤바 색상 */
    border-radius: 5px;
  }

  .pipe-table::-webkit-scrollbar-track {
    background-color: #f2f2f2; /* 트랙 색상 */
  }

  .pipe-spec table {
    width: 800px;
  }

  .scroll-txt {
    display: block;
    text-align: right;
    margin-top: 20px;
  }

  .pipe-spec table {
    margin-top: 10px;
  }

  .pipe-spec table thead tr td,
  .pipe-spec table tbody tr td {
    font-size: 16px;
  }

  .pipe-content {
    height: 100%;
  }

  /* 공지사항 */
  .hyhitech-kboard-document-wrap .kboard-title {
    flex-direction: column;
  }

  .hyhitech-kboard-document-wrap .kboard-title h1 {
    text-align: center;
  }

  .hyhitech-kboard-document-wrap .kboard-title > div {
    padding-bottom: 10px;
    padding-right: 0;
  }

  .hyhitech-document-navi .next-btn {
    justify-content: flex-start;
  }
}

/* 비디오 썸네일 전용 contain */

.has-video .fancybox__thumb {
  background-size: contain !important;
  background-position: center center !important;
  background: #000; /* 비디오 배경(선택) */
  background-repeat: no-repeat;
}
