/*--------------------------------------------------------------
# Disable aos animation delay on mobile devices
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
    [data-aos-delay] {
      transition-delay: 0 !important;
    }
  }
  
  /*--------------------------------------------------------------
  # Header
  --------------------------------------------------------------*/
  .header {
    transition: all 0.5s;
    z-index: 997;
    padding: 15px 0;height:100px;background: #fff;
  }
  
  .header.sticked {
    background: rgba(255, 255, 255, 1);
    padding: 15px 0;
    box-shadow: 0px 3px 25px rgba(0, 0, 0, 0.3);
  }
  
  .header .logo img {
    max-height: 69px;
    margin-right: 19px;
  }
  
  .header .logo h1 {
    font-size: 30px;
    margin: 0;
    font-weight: 700;
    color: #fff;
    font-family: var(--font-primary);
  }
  
  /*--------------------------------------------------------------
  # Desktop Navigation
  --------------------------------------------------------------*/
  @media (min-width: 1280px) {
    .navbar ul.gnb{position: absolute; right: 0;top:-2px;display: block;margin: 0;}
    .navbar .gnb li{display: inline-block;line-height: 1;}
    .navbar .gnb a,
    .navbar .gnb a:focus,.navbar .gnb a:visited{font-size:12px;color:#6d6d6d;line-height: 1;padding:.5em 10px;font-weight: 400;text-transform: uppercase;background:#dcdcdc;border-radius:50px;}
	.navbar .gnb a.on{background:#1977cc;color:#fff;font-weight:700}
    .navbar {
      padding: 0;
    }
  
    .navbar ul {
      margin:28px 0 0;
      padding: 0;
      display: flex;
      list-style: none;
      align-items: center;
    }
  
    .navbar li {
      position: relative;
    }
  
    .navbar a,
    .navbar a:focus,.navbar a:visited {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 10px 50px 10px 50px;
      font-family: var(--font-primary);
      font-size: 21px;
      font-weight: 700;
      color: #222;
      white-space: nowrap;
      transition: 0.3s;letter-spacing: -0.5px;
    }
  
    .navbar a i,
    .navbar a:focus i {
      font-size: 12px;
      line-height: 0;
      margin-left: 5px;
    }
  
    .navbar a:hover,
    .navbar .active,
    .navbar .active:focus,
    .navbar li:hover>a {
      color:#00337a;
    }
  
    .navbar .get-a-quote,
    .navbar .get-a-quote:focus {
      background: #0d42ff;
      padding: 8px 20px;
      margin-left: 30px;
      border-radius: 4px;
      color: #222;
    }
  
    .navbar .get-a-quote:hover,
    .navbar .get-a-quote:focus:hover {
      color: #222;
      background: #2756ff;
    }
  
    .navbar .dropdown ul {
      display: block;
      position: absolute;
      left: 50%; 
      top: calc(100% + 30px);
      margin: 0 0 0 -100px;
      padding: 10px 0;
      z-index: 99;
      opacity: 0;
      visibility: hidden;
      background: #fff;
      box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.3);
      transition: 0.3s;
      border-radius: 4px;
    }
  
    .navbar .dropdown ul li {
      min-width: 200px;
    }
  
    .navbar .dropdown ul a {
      padding: 5px 20px;
      font-size: 16px;
      text-transform: none;
      font-weight: 500;display: block; text-align: center;
  
    }
  
    .navbar .dropdown ul a i {
      font-size: 12px;
    }
  
    .navbar .dropdown ul a:hover,
    .navbar .dropdown ul .active:hover,
    .navbar .dropdown ul li:hover>a {
      color: #0d42ff;
    }
  
    .navbar .dropdown:hover>ul {
      opacity: 1;
      top: 100%;
      visibility: visible;
    }
  
    .navbar .dropdown .dropdown ul {
      top: 0;
      left: calc(100% - 30px);
      visibility: hidden;
    }
  
    .navbar .dropdown .dropdown:hover>ul {
      opacity: 1;
      top: 0;
      left: 100%;
      visibility: visible;
    }
  }
  
  @media (min-width: 1280px) and (max-width: 1366px) {
    .navbar .dropdown .dropdown ul {
      left: -90%;
    }
  
    .navbar .dropdown .dropdown:hover>ul {
      left: -100%;
    }
  }
  
  @media (min-width: 1280px) {
  
    .mobile-nav-show,
    .mobile-nav-hide {
      display: none;
    }
  }
  
  /*--------------------------------------------------------------
  # Mobile Navigation
  --------------------------------------------------------------*/
  @media (max-width: 1279px) {
    .header {height:60px;}
    .header .logo img {
      max-height: 40px;
      margin-right: 10px;
    }
  .navbar {
      position: fixed;
      top: 0;
      right: -100%;
      width: 100%;
      max-width: 320px;
      bottom: 0;
      transition: 0.3s;
      z-index: 9997;
    }
    .navbar ul.gnb{padding-left:10px;height:115px;position: absolute; left: 0;top:0;display: block;margin: 0;z-index: 9999;}
    .navbar .gnb li{display: inline-block;line-height: 1;margin-top:15px}
    /*.navbar .gnb li+li{border-left: 1px solid rgba(255,255,255,0.3);}*/
    .navbar .gnb a, .navbar .gnb a:focus{font-size:12px;color:rgba(255,255,255,.6);;line-height: 1;padding:.5em 10px;font-weight: 400;text-transform: uppercase;background:rgba(255,255,255,.3);border-radius:50px}
    .navbar .gnb a.on{background:#1977cc;color:#fff;font-weight:700}

  
    .navbar ul {
      position: absolute;
      inset: 0;
      padding: 50px 0 10px 0;
      margin:50px 0 0;
      background: rgba(14, 29, 52, 0.9);
      overflow-y: auto;
      transition: 0.3s;
      z-index: 9998;
    }
  
    .navbar a,
    .navbar a:focus {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 10px 20px;
      font-family: var(--font-primary);
      font-size: 16px;
      font-weight: 500;
      color: #fff;
      white-space: nowrap;
      transition: 0.3s;
    }
  
    .navbar a i,
    .navbar a:focus i {
      font-size: 12px;
      line-height: 0;
      margin-left: 5px;
    }
  
    .navbar a:hover,
    .navbar .active,
    .navbar .active:focus,
    .navbar li:hover>a {
      color: #fff;
    }
  
    .navbar .get-a-quote,
    .navbar .get-a-quote:focus {
      background: #0d42ff;
      padding: 8px 20px;
      border-radius: 4px;
      margin: 15px;
      color: #fff;
    }
  
    .navbar .get-a-quote:hover,
    .navbar .get-a-quote:focus:hover {
      color: #fff;
      background: rgba(13, 66, 255, 0.8);
    }
  
    .navbar .dropdown ul,
    .navbar .dropdown .dropdown ul {
      position: static;
      display: none;
      padding: 10px 0;
      margin: 0 20px 10px;
      transition: all 0.5s ease-in-out;
      border: 1px solid #19335c;
    }
    .navbar .dropdown ul a{color:rgba(255, 255, 255, 0.7);font-weight: 400;font-size:0.85em;padding: 5px 20px;}
  
    .navbar .dropdown>.dropdown-active,
    .navbar .dropdown .dropdown>.dropdown-active {
      display: block;
    }
  
    .mobile-nav-show {
      color: #222;
      font-size: 28px;
      cursor: pointer;
      line-height: 0;
      transition: 0.5s;
      z-index: 9999;
      margin-right: 10px;
    }
  
    .mobile-nav-hide {
      color: #fff;
      font-size: 32px;
      cursor: pointer;
      line-height: 0;
      transition: 0.5s;
      position: fixed;
      right: 20px;
      top: 20px;
      z-index: 9999;
    }
  
    .mobile-nav-active {
      overflow: hidden;
    }
  
    .mobile-nav-active .navbar {
      right: 0;
    }
  
    .mobile-nav-active .navbar:before {
      content: "";
      position: fixed;
      inset: 0;
      background: rgba(14, 29, 52, 0.8);
      z-index: 9996;
    }
  }
  


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
    font-size: 14px;
    background-color:#242e3d;
    padding: 50px 0;
    color: white;
  }
  
  .footer .footer-info .logo {
    line-height: 0;
    margin-bottom: 25px;
  }
  
  .footer .footer-info .logo img {
    max-height: 40px;
    margin-right: 6px;
  }
  
  .footer .footer-info .logo span {
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #fff;
    font-family: var(--font-primary);
  }
  
  .footer .footer-info p {
    font-size: 14px;
    font-family: var(--font-primary);
  }
  
  .footer .social-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.2);
    font-size: 16px;
    color: rgba(255, 255, 255, 0.7);
    margin-right: 10px;
    transition: 0.3s;
  }
  
  .footer .social-links a:hover {
    color: #fff;
    border-color: #fff;
  }
  
  .footer h4 {
    font-size: 1.25em;
    font-weight: 700;
    position: relative;
    padding-bottom: 1em;
  }
  
  .footer .footer-links {
    margin-bottom: 30px;width:12%;
  }
  
  .footer .footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  
  .footer .footer-links ul i {
    padding-right: 2px;
    color: rgba(13, 66, 255, 0.8);
    line-height: 0;
  }
  
  .footer .footer-links ul li {
    padding: 7px 0;
    display: flex;
    align-items: center;
  }
  
  .footer .footer-links ul li:first-child {
    padding-top: 0;
  }
  
  .footer .footer-links ul a {
    color: rgba(255, 255, 255, 0.6);
    transition: 0.3s;
    display: inline-block;
    line-height: 1.3;
  }
  
  .footer .footer-links ul a:hover {
    color: #fff;
  }
  
  .footer .footer-contact p {
    line-height: 26px;
  }
  
  .footer .links{margin-bottom: 1em;}
  .footer .links a{display: inline-block;color:#fff}
  .footer .links a+a{margin-left:1em}
  .footer .copyright {line-height:1.6;font-size: 0.938em;color:rgba(255, 255, 255, 0.6);letter-spacing: 0;}
  .footer .copyright span{display: inline-block;margin:0 1em}
  .footer .line-top{border-top:1px solid rgba(255, 255, 255, 0.1)}
  
  .footer .credits {
    padding-top: 4px;
    text-align: center;
    font-size: 13px;
  }
  
  .footer .credits a {
    color: #fff;
  }


  @media (max-width:991px) {
    .footer h4 {font-size: 1em;}
	.footer .footer-links {width:24%; }
	.footer .footer-links ul li {padding:3px 0;}
  }
  @media (max-width:480px) {

  }

  /*--------------------------------------------------------------
# Scroll top button
--------------------------------------------------------------*/
.scroll-top {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    right: 15px;
    bottom: 15px;
    z-index: 99999;
    background: #0d42ff;
    width: 40px;
    height: 40px;
    border-radius: 4px;
    transition: all 0.4s;
  }
  
  .scroll-top i {
    font-size: 24px;
    color: #fff;
    line-height: 0;
  }
  
  .scroll-top:hover {
    background: rgba(13, 66, 255, 0.8);
    color: #fff;
  }
  
  .scroll-top.active {
    visibility: visible;
    opacity: 1;
  }
  
  /*--------------------------------------------------------------
  # Preloader
  --------------------------------------------------------------*/
  #preloader {
    position: fixed;
    inset: 0;
    z-index: 9999;
    overflow: hidden;
    background: #fff;
    transition: all 0.6s ease-out;
    width: 100%;
    height: 100vh;
  }
  
  #preloader:before,
  #preloader:after {
    content: "";
    position: absolute;
    border: 4px solid #0d42ff;
    border-radius: 50%;
    animation: animate-preloader 2s cubic-bezier(0, 0.2, 0.8, 1) infinite;
  }
  
  #preloader:after {
    animation-delay: -0.5s;
  }
  
  @keyframes animate-preloader {
    0% {
      width: 10px;
      height: 10px;
      top: calc(50% - 5px);
      left: calc(50% - 5px);
      opacity: 1;
    }
  
    100% {
      width: 72px;
      height: 72px;
      top: calc(50% - 36px);
      left: calc(50% - 36px);
      opacity: 0;
    }
  }


/*--------------------------------------------------------------
# Breadcrumbs
--------------------------------------------------------------*/
.breadcrumbs .page-header {
    height: 350px;
    margin-top: 100px;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    
  }
 .sub_visual01{background-image: url('../img/sub_visual01.jpg');}
 .sub_visual02{background-image: url('../img/sub_visual02.jpg');}
 .sub_visual03{background-image: url('../img/sub_visual03.jpg');}
 .sub_visual04{background-image: url('../img/sub_visual04.jpg');}
 .sub_visual05{background-image: url('../img/sub_visual05.jpg');}
 
  
  .breadcrumbs .page-header h2 {
    font-size:3.750em;
    font-weight:700;
    color: #fff;margin-bottom:.25em;
  }
  
  .breadcrumbs .page-header p {
    color: rgba(255, 255, 255, 0.8);font-size: 1em;
  }
  
  @media (max-width: 1279px) {
    .breadcrumbs .page-header {margin-top:60px}
  }
  @media (max-width:991px) {
    .breadcrumbs .page-header {height: 250px;}
    .breadcrumbs .page-header h2 {font-size:3.125em;}
  }
  @media (max-width:768px) {
    .breadcrumbs .page-header {height: 180px;}
    .breadcrumbs .page-header h2 {font-size:2.75em;}
  }
  @media (max-width:480px) {
    .breadcrumbs .page-header {background-position:65%;}
    .breadcrumbs .page-header h2 {font-size:2.25em;}
  }

  .breadcrumbs nav {
    background-color: #f1f7fc;
    padding: 20px 0;
  }
  
  .breadcrumbs nav ol {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
    font-weight:400;
    color: #555;
  }
  
  .breadcrumbs nav ol a {
    color: #555;
    transition: 0.3s;
  }
  
  .breadcrumbs nav ol a:hover {
    text-decoration: underline;
  }
  
  .breadcrumbs nav ol li+li {
    padding-left: 10px;
  }
  .breadcrumbs nav ol li:last-child{font-weight: 700;}
  
  .breadcrumbs nav ol li+li::before {
    display: inline-block;
    padding-right: 10px;
    color: rgba(0,0,0,0.3);font-weight:500;
    content: ">";
  }



  /*================= Sub =================*/
.sub-cont{padding:4em 0 7em;}
.sub-cont h2{font-size: 2.5em;color:#111;font-weight: 700;line-height:1;margin-bottom: 2em;text-align: center;letter-spacing:-1px;}
.sub-cont h4{font-size: 1.75em;color:#222;font-weight: 700;margin-top:1.5em;margin-bottom: .5em;letter-spacing:-1px;}
.sub-cont h5{font-size: 1.3em;color:#333;font-weight: 700;letter-spacing: -1px;margin-bottom: .75em;}

@media (max-width:480px) {
    .sub-cont{padding:2.5em 0;}
    .sub-cont h2{font-size: 2em;margin-bottom:1.25em;}
    .sub-cont h4{font-size: 1.4em;}
}

.page-link{color:#555}

 /* 통합검색 리스트 */
 .search-top, .search-view-top{background: #f6f7f9;padding:2em;border-radius: 10px;margin-bottom: 3em;}
 .search-top .form-label{color: #213375;font-size:1.125em;font-weight: 700;margin-bottom: .3em;letter-spacing: -1px;}
 .search-top .row>div+div{margin-top:1em}
 .info-list>.row{border-bottom: 1px solid #e3e3e3;}
 .info-list>.row:first-child{border-top: 1px solid #e3e3e3;}
 .info-list>.row:hover{background-color: #fafafa;}
 .info-list .color-title, .search-view-top .color-title{color: #222;font-size:1.3em;font-weight: 700;line-height:1;margin-bottom: .75em;letter-spacing: -1px;}
 .info-list .color-title+.row p{margin-bottom:.4em;line-height: 1.2;color:#222}
 .info-list .color-title+.row b{font-weight: 400;color: #999;letter-spacing: -0.7px;}
 .info-list .color-title+.row b, .color-title+p b{display: inline-block;margin-right: .75em;}
 .search-view-top>.row{display: flex; align-items:center; -webkit-align-items:center; }
 .table .total-price{color: #111;font-size: 1.25em;letter-spacing: -2px;}
 .table .total-price b{font-weight: 900;display: inline-block;margin-left:.5em}

 @media (max-width:980px) {
  .search-view-top .color-img{margin-bottom: 1em;}
  .search-view-top .color-img img{width:100%}
 }
 @media (max-width:768px) {
  .info-list .color-title{margin-top:.5em;}
 }

  /* tab menu */
 .nav-tabs{margin-bottom:3em;border-left:1px solid #ced2d6;}
 .nav-tabs .nav-link{border-radius: 0;color:#555 !important;font-size:1.125em;background-color: #f9f9f9;border-right:1px solid #ced2d6;border-top:1px solid #ced2d6;border-bottom:1px solid #ced2d6;letter-spacing: -1px;padding:.75em .5em;}
 .nav-tabs .nav-link:hover{background-color: #fff;border-color: #c1c5c9;}
 .nav-tabs .nav-link.active:hover{border-bottom-color:#fff}
 .nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active{color:#111 !important;font-weight: 700;border-left:none;border-top-color: #ced2d6;border-right-color: #ced2d6;}

 .mypage-sub{margin-bottom:3em}
 .mypage-sub li{position: relative;}
 .mypage-sub li+li{margin-left: .5em;padding-left: 1.5em;}
 .mypage-sub li+li::before{content: '';display: block;position: absolute;width: 1px;height: 20px;background-color: #d3d3d3;left:0;top:.5em}
 .mypage-sub .nav-link{color:#444;line-height: 1;}
 .mypage-sub.nav-underline .nav-link.active, .mypage-sub.nav-underline .show>.nav-link {
    color: #0d42ff;  border-bottom-color: currentcolor;}



 /* 제품리스트(메인공통) */

 .sub-cont .product-list{border-top:1px solid #222;overflow: hidden;padding:1.75em 0;border-bottom:1px solid #d2d2d2;}
 .product-list .pro-img {background:#fff;border: 1px solid rgba(0, 0, 0, 0.12);overflow: hidden;margin-bottom:1.25em;text-align: center;}
 .product-list .pro-img img {transition: 0.3s ease-in-out;}
 .product-list a:hover .pro-img img {transform: scale(1.1);}
 .product-list .title{font-size: 1.575em;color: #222;font-weight: 700;margin-bottom: .5em;line-height: 1.2;letter-spacing:-.5px;text-align: center;}
 .product-list p{color:#555}
 .product-veiw{padding:2em;}
 .product-veiw .pro-img{border: 1px solid rgba(0, 0, 0, 0.12);position:relative;width:100%;min-width:358px;height:230px;overflow: hidden;margin-right:50px}
 .product-veiw .pro-img img{width:420px;height: 420px; position: absolute;left:0;top:50%;margin-top:-220px}
 .product-veiw h4{margin:0 0 .75em;font-weight:700;color:#111;font-size:1.75em;}
 .product-veiw table{width:100%;min-width:250px;}

  .product-modal .modal-footer{border-top:none; padding-top:0;padding-bottom:3em}
  .product-modal .modal-content{border:none;border-radius:30px;box-shadow:0 15px 15px rgba(0, 0, 0, 0.2); }

 @media (max-width:990px) {
  .product-veiw .pro-img{margin-bottom:2em;margin-right:0}
   .product-veiw{padding:1.5em;}
  .product-veiw h4{text-align: center;margin-bottom:1em}
  .product-modal .modal-footer{padding-bottom:2.5em}
 }
 @media (max-width:500px) {
 	.product-veiw{padding:0;border:none}
	.product-veiw .pro-img img{width:100%}
 }

 /* prooduct 서브용 */
.product-table{border-top: 1px solid #222;width:100%}
.product-table tr{border-bottom:1px solid #dee2e6;}
.product-table th, .product-table td{padding:1.125em .75em;}
.product-table th{text-align:center;color:#222;background:#edf3f9}
.product-table .title{font-size:1.25em;font-weight:700;color:#111}
.product-table .photo, .product-table .quality{text-align:center;}
.product-table .photo img{border: 1px solid rgba(0, 0, 0, 0.07);}
.product-table tr:hover{background-color: #fafafa !important;}

@media screen and (max-width: 768px){
	.product-table col{width: 100% !important;}
	.product-table thead{display: none;}
	.product-table tbody tr td{width: 100%; display:block; text-align:center}
	.product-table td{padding:.4em .5em;}
	.product-table tr td:first-child{padding-top:1.75em}
	.product-table tr td:last-child{padding-bottom:1.75em}
}

  /* 게시판 */
  .board-search{margin-bottom:2em;}
  .board-gallery{border-top:1px solid #222;overflow: hidden;padding:0 1em}
  .board-gallery .row{border-bottom:1px solid #d2d2d2;padding-bottom:1.75em;margin-top:1.75em}
  .board-gallery .txt-area{position: relative; padding-left:2em}
  .board-gallery .txt-area .title{font-size:1.5em;color: #222;font-weight: 700;margin-bottom: .4em;line-height: 1.3;letter-spacing: -1px;}
  .board-gallery .txt-area .text{max-height: 95px; overflow: hidden;margin-bottom:30px}
  .board-gallery .txt-area .date{position: absolute; left: 2em; bottom: 0;color:#c6c6c6}

  .board-view{border-top:1px solid #222;overflow: hidden;}
  .board-view > div{border-bottom:1px solid #d2d2d2;}
  .board-view .title{font-size:1.5em;color: #222;font-weight: 700;line-height: 1.3;letter-spacing: -1px;padding:1em; border-bottom:1px solid #d2d2d2;text-align:center}
  .board-view .info{text-align:right;padding:1em;line-height:1.1;background:#f8f8f8}
  .board-view .info p{display:inline-block;margin-left:1.5em}
  .board-view .contents{padding:3em;}

  @media (max-width:1400px) {
    .board-gallery .txt-area .text{max-height: 73px;}
  }
  @media (max-width:990px) {
    .board-gallery .txt-area{padding-left:0}
    .board-gallery .txt-area .title{font-size:1.25em;}
    .board-gallery .txt-area .date{left:0}
  }
  @media (max-width:768px) {
    .board-gallery .txt-area{margin-top:1em;padding:0 1em}
    .board-gallery .txt-area .text{max-height: 60px; }
    .board-gallery .txt-area .date{left:1em}
  }

   /* FAQ (메인공통) */
  .faq .accordion-item {border: 0; margin-bottom: 15px;}
  .faq .accordion-collapse {border: 0;}
  .faq .accordion-button {
    padding: 15px 30px 15px 60px;
    font-weight: 600;
    border: 0;
    font-size: 18px;
    color: var(--color-default);
    text-align: left;
    background: rgba(14, 29, 52, 0.03); border:1px solid rgba(14, 29, 52, 0.04);
    border-radius: 5px !important;
  }
  .faq .accordion-button:focus {box-shadow: none;}
  .faq .accordion-button:not(.collapsed) {color: #fff; border-bottom: 0; box-shadow: none;border-radius:5px 5px 0 0 !important; background:#1977cc}
  .faq .accordion-button:not(.collapsed) i{color:#fff}
  .faq .question-icon {position: absolute; top: 14px; left: 25px; font-size: 20px;color: #0d42ff;}
  .faq .accordion-button:after {position: absolute; right: 15px; top: 15px;}
  .faq .accordion-body {padding: 0 30px 25px 60px; border: 0; background:#1977cc; border-radius:0 0 5px 5px !important;/*border:1px solid rgba(14, 29, 52, 0.04);*/ color:#fff;}
  @media (max-width:768px) {
    .faq .question-icon{top: 11px; }
  }


  /* login */
  .form-check{padding-left:0}
  .form-check .form-check-input{font-size:1.25em;margin-left:0;margin-right: .5em;}
  .form-check .form-check-label{line-height: 1;}
  .form-signin {max-width: 600px; padding: 1rem;}
  .form-signin .form-floating:focus-within {z-index: 2;}
  .form-signin input[type="id"] {margin-bottom: -1px; border-bottom-right-radius: 0; border-bottom-left-radius: 0;}
  .form-signin input[type="password"] {margin-bottom: 10px; border-top-left-radius: 0;border-top-right-radius: 0;}
  .form-signin .bot-btns{margin-top:1em;text-align: center;}
  .form-signin .bot-btns button{position: relative;letter-spacing: -1px;font-weight: 500;}
  .form-signin .bot-btns button+button::before{content: '';display: block;position: absolute;width: 1px;height: 15px;background-color: #d9d9d9;left:0;top:32%;}
  .form-signin .text-body-secondary{padding-top:1.75em;border-top:1px solid rgba(0,0,0,0.1);font-size: 0.95em;line-height: 1.4;}
  .form-signin .text-body-secondary p+p{margin-top:1em}

   /* join,  Q&A*/
  .form-join{max-width:900px;}
  .account-scroll {
    width: 100%;max-width:1300px;
    height: 200px;
    border: 1px solid #dcdcdc;
    overflow-x: hidden;
    overflow-y: scroll;
    font-weight: normal;
  }
  .terms-group {padding:1em; font-weight: 400; font-size: 0.9em; color:#444}
  .terms-group .terms-title {font-size:1em;font-weight: 700;color: #303030;  margin-bottom:7px}
  .terms-group>ul>li ul {margin-left: 15px}
  .form-join h5{margin-top: 3.5em;}
  .form-join.account .form-check .form-check-input, .form-check .form-check-input{border-color: #222;}
  .form-join.account .form-check .form-check-label, .form-check .form-check-label{color: #000;font-weight: 500;}
  .form-join.account .all-check{border-top:1px solid #d1d1d1;margin-top:2em;padding-top:1.5em}

ul.join-step {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height:100%;
}
.join-step li {
  position:relative;
  background:#fff;
  flex-grow:1;
  -ms-flex-grow:1;
  -webkit-flex-grow:1;
  color:#c2c9d0;
  height:60px;display: flex;justify-content : center;align-items:center;
  text-align:center;
  border-top:1px solid #d6dce2;
  border-bottom:1px solid #d6dce2;line-height: 1;
  box-sizing:border-box;font-size: 1.125em;letter-spacing: -1.5px;
}
.join-step li:first-of-type {border-left:1px solid #d6dce2; border-top-left-radius:30px;border-bottom-left-radius:30px;}
.join-step li:last-of-type {
  border-right:1px solid #d6dce2;
  border-top-right-radius:30px;
  border-bottom-right-radius:30px;
}
.join-step li + li:before {
  z-index:1;
  content:'';
  position:absolute;
  top:-1px;
  left:0;
  background:url("../img/step_arrow.png") -13px 0 no-repeat;
  width:11px;
  height:60px;
}
.join-step li.check {
  background:#f7fdff;
  color:#0d42ff;
  font-weight:bold;
  border-top-color:#309cff;
  border-bottom-color:#309cff;
}
.join-step li.check:first-of-type {border-left-color:#309cff}
.join-step li.check:last-of-type {border-right-color:#309cff}
.join-step li.check + li:before {background-position:0 0}
.join-step li.check:before {background-position:-26px 0}
.join-step li > p {position:relative;display:inline-block;box-sizing:border-box;padding-left:10px;}
.join-step li.complete > p {padding-left:20px;}
.join-step li > p span{font-size: 0.8em;display:inline-block;font-weight: 400;margin-right: 10px;letter-spacing: -0.8px;}
@media (max-width:480px) {
  .join-step li > p span{margin-right: 0;display: block;margin-bottom: 3px;}
  .join-step li > p{padding-left:5px;}
  .join-step li.complete > p {padding-left:10px;}
}

.join-input{margin: 3.5em 0;}
.join-input th, .join-input td{padding: 1em;}
.join-input th{width: 25%;}
@media (max-width:768px) {
  .join-input th{width:20%;}
  .join-input th, .join-input td{padding: .5em;}
}

.form-inquiry{max-width: 1300px;}
.form-inquiry th, .form-inquiry td{padding: 1em;}
.form-inquiry th{width: 15%;}
@media (max-width:768px) {
  .form-inquiry th, .form-inquiry td{padding: .5em;}
}

/*--------------------------------------------------------------
# Features Section
--------------------------------------------------------------*/

.features p{font-size:1.125em}
.features .features-item+.features-item {
  margin-top: 5em
}

@media (max-width: 640px) {
  .features .features-item+.features-item {
    margin-top: 40px;
  }
}

.features .features-item h3 {
  font-weight: 600;margin-bottom:.5em;
  font-size: 26px;
  color: #001973;
}

 /* 회사소개 */
 .info{background:#f7f8fa;padding:1.5em;}
 .info li{text-align:center;padding:1.5em;line-height:1.2}
 .info li+li{border-left:1px solid #e8e8e8;}
 .info li .title{margin:1em 0;font-weight:400;color:#222}
 .info li .txt1{font-size:1.75em;color:#0029bb;font-weight:700;margin-bottom:.25em}
 .info li .txt1.small{font-size:1.125em;}
 .info li .txt1 span{color:#222}
 .summary{width:100%;max-width:1300px;margin:0 auto;}
 .summary.w-100{max-width:calc(100% - 24px);}
 .summary .slogan{margin-bottom:2.5em;font-size:2em;font-weight:500;color:#222;letter-spacing:-1.5px;line-height:1.3;text-align:center;}
 .summary .slogan b{color:#0029bb;}
 .summary p+p{margin-top:1.5em}
 .basf-bot{margin:5em 0 3em}
 .basf-bot li{margin-bottom:.75em}

 .location .row+.row{margin-top:5em}
 .location .row i{color:#1977cc;margin-right:.4em}

  .row.history-wrap{align-items:center;}
  .history{position:relative;width:100%;max-width:540px;margin:0 auto;}
    .history:before{content:'';display:block;position:absolute;width:1px;height:100%;top:0;bottom:0;left:90px;background:#ececec;}
    .history dl{margin-bottom:2.5em;display:table;width:100%}
    .history dt, .history dd{display:table-cell;vertical-align:top;}
    .history dt{width:90px;position:relative;font-weight:700;color:#034c94;font-size:1.4em;letter-spacing:-1px}
    .history dt:after{content:'';display:block;position:absolute;width:6px;height:6px;top:.5em;right:-3px;border-radius:50px;background:#034c94;}
    .history dd{padding-left:2em;font-size:1.125em}

	@media only screen and (max-width:991px) {
		.row.history-wrap>div:first-child{text-align:center;margin-bottom:2em}
        .history:before{left:80px;}
        .history dt{width:80px;}
        .history dd{padding-left:1.75em}
        
	}
	@media only screen and (max-width:767px) {
		.history{max-width:480px;}
		.history dl{margin-bottom:1.5em;}

		.location .row>div:first-child{margin-bottom:2em}
	}
    @media only screen and (max-width:500px) {
        .history dl, .history dt, .history dd{display:block}
        .history dt{width:100%;margin-bottom:.5em;line-height:1.1}
        .history dd{padding-left:0}
        .history:before, .history dt:after{display:none;}
    }



 @media (max-width: 768px) {
 	.info li:nth-child(3), .info li:nth-child(4){border-top:1px solid #e8e8e8;}
	.info li:nth-child(3){border-left:none}
	.summary br{display:none}
	.summary .slogan{font-size:1.5em;}
 }

/*  배합상세페이지 그라데이션 확대 */
     .zoom {
      position: relative;
	  width: 500px;
      height: 500px;
      color: black;
      text-align: right;
      line-height: 100px;
      position: absolute;
      left: 320px; /* 조절 가능한 위치 */
      top: 180px;  /* 조절 가능한 위치 */
    }




/* 이용약관*/
.term{
	width:1280px;
	margin:0 auto;
	padding:0px 0px 0px 0px;
}

.term .titlearea{
	width:100%;
	padding-bottom:50px;
	border-bottom:1px solid #e5e5e5;
}

.term .titlearea .title{
	font-size:36px;
	text-align:center;
}

.term .titlearea .subtitle{
	font-size:18px;
	margin-top:15px;
	text-align:center;
}

.term .substance{
	font-size:16px;
	margin-top:50px;
}

.term .cont{ 
	line-height:1.9;
	width:100%;
	margin-top:50px;
}

.term .cont .btitle{
	font-size:20px;
}

.term .cont .sec{
	width:100%;
	margin-top:30px;
}

.term .cont .sec .subtitle{
	font-size:20px !important;
}

.term .cont .sec .text{
	line-height:1.8;
	font-size:18px;
	margin-top:10px;
/* 	line-height: 19px; */	
}

.term .cont .sec .list{
	width:100%;
	margin-top:20px;
}

.term .cont .sec .list li{
	width:100%;
	list-style:decimal;
	list-style-position:inside;
	font-size:18px;
	margin-top:5px;
}


.term .cont .sec .list02{
	width:100%;
	margin-top:10px;
	margin-bottom:10px;
}

.term .cont .sec .list02 li{
	width:100%;
	list-style:upper-alpha;
	list-style-position:inside;
	font-size:18px;
	margin-top:5px;
	color:#9e9e9e;
}

.term .cont .sec .text02{
	width:100%;
	list-style:upper-alpha;
	list-style-position:inside;
	font-size:18px;
	margin-top:5px;
	color:#9e9e9e;
	margin-top:10px;
	margin-bottom:10px;
}

.term .table{
	width:100%;
	margin:20px 0px 20px 0px;
	
}

.term .table table{
	width:100%;
	border-left:1px solid #e5e5e5;
	border-top:1px solid #e5e5e5
}

.term .table table thead th{
	border-right:1px solid #e5e5e5;
	border-bottom:1px solid #e5e5e5;
	font-weight:normal;
	font-size:15px;
	padding:10px;
	box-sizing:border-box;
	background-color:#f7f7f7;
}

.term .table table tbody th{
	border-right:1px solid #e5e5e5;
	border-bottom:1px solid #e5e5e5;
	font-weight:normal;
	font-size:15px;
	padding:10px;
	box-sizing:border-box;
}



    swiper-container {
      width: 100%;
      height: 600px;
      margin: 20px auto;
    }

    swiper-slide {
      text-align: center;
      font-size: 13px;
      background: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
    }

	.swiper-slide img {
	width: 500px;
	height: auto; /* 세로 크기를 자동 조정 */
	}

    .append-buttons {
      text-align: center;
      margin-top: 20px;
    }

    .append-buttons a {
      display: inline-block;
      border: 1px solid #007aff;
      color: #007aff;
      text-decoration: none;
      padding: 4px 10px;
      border-radius: 4px;
      margin: 0 10px;
      font-size: 15px;
    }





/*--------------------------------------------------------------
# Services Section (메인공통), 서브:비전
--------------------------------------------------------------*/
.services .service-item {
  background-color: var(--surface-color);
  text-align: center;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 85%);
  border-radius: 30px;
  padding: 80px 20px;
  transition: all ease-in-out 0.3s;
  height: 100%;
  box-shadow: 0 7px 10px rgba(0, 0, 0, 0.15);
}

.services .service-item .icon {
  margin: 0 auto;
  width: 130px;
  height: 130px;
  background: var(--accent-color);
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2em;
  transition: 0.3s;
  transform-style: preserve-3d;
}

.services .service-item .icon i {
  color: var(--contrast-color);
  font-size: 3.5em;
  transition: ease-in-out 0.3s;
}

.services .service-item .icon::before {
  position: absolute;
  content: "";
  left: -8px;
  top: -8px;
  height: 100%;
  width: 100%;
  background: color-mix(in srgb, var(--accent-color), transparent 80%);
  border-radius: 30px;
  transition: all 0.3s ease-out 0s;
  transform: translateZ(-1px);
}
.services .service-item span{text-transform: uppercase; display:block; margin-bottom:1.5em; color:#333;font-weight:900;font-size:1.125em}
.services .service-item h3 {
  font-weight: 500;
  letter-spacing:-1px;
  font-size: 1.25em;color:#2d3053;
}

.services .service-item p {
  line-height: 1.3;
  margin-bottom: 0;
}

.services .service-item:hover {
  background: var(--accent-color);
  border-color: var(--accent-color);
}

.services .service-item:hover .icon {
  background: var(--surface-color);
}

.services .service-item:hover .icon i {
  color: var(--accent-color);
}

.services .service-item:hover .icon::before {
  background: color-mix(in srgb, var(--background-color), transparent 70%);
}

.services .service-item:hover h3,.services .service-item:hover span,
.services .service-item:hover p {
  color: var(--contrast-color);
}


/*--------------------------------------------------------------
production
--------------------------------------------------------------*/
.production{width:100%;max-width:850px;margin:0 auto;}
.production dl+dl{margin-top:3em;padding-top:3em;border-top:1px solid #d8d8d8;}
.production dt{font-size:1.5em;color:#222;font-weight:700;letter-spacing:-1px}
.production dd{font-size:1.125em;}
.production dd span{display:inline-block;width:80px;background:#e7edf2;color:#222;border-radius:30px;text-align:center;margin-right:.5em;font-size:.9em;padding:.3em 0;font-weight:500;float:left}
.production dd p+p{margin-top:.75em}

@media screen and (max-width: 768px){
	.production dt{margin-bottom:1em}
}

/*--------------------------------------------------------------
factory
--------------------------------------------------------------*/
.factory img{border-radius:20px}

/*--------------------------------------------------------------
인증
--------------------------------------------------------------*/
.certificate > .row > div+div{margin-top:3em}
.certificate h4{margin-bottom:1.25em}
.certificate p{text-align:center;border:1px solid #cccccc; padding:1.5em}

@media screen and (max-width: 1400px){
	.certificate h4{font-size:1.5em}
}
@media screen and (max-width: 768px){
	.certificate .col-sm-12+.col-sm-12{margin-top:1em}
	.certificate p{padding:.75em}
	.certificate h4{margin-bottom:1em}
}
/*--------------------------------------------------------------
파트너사
--------------------------------------------------------------*/
.partner .row > div{margin-bottom:24px; }
.partner p{text-align:center;border:1px solid #cccccc; padding:1.5em}

@media screen and (max-width: 768px){
	.partner .col-md-6{width:50%}
}

 /* 갤러리 */ 
 .gallery-veiw {
    padding: 2em;
    border-radius: 10px;
    margin-bottom: 3em;
    border: 1px solid #d2d2d2;
 }
 .gallery-veiw .pro-img {
    text-align: center;
 }

 .gallery-veiw img {
    max-width: 100%;
    width: 900px;
    height: auto;
 }

 @media (max-width: 980px) {
   .gallery-veiw .pro-img {
     margin-bottom: 1.5em;
   }
   .gallery-veiw h4 {
     text-align: center;
   }
 }


/*--------------------------------------------------------------
신사업
--------------------------------------------------------------*/
.newb_title{font-size:2.25em;font-weight:900;color:#ff5a5b;text-align:center}
.newb_txt{margin-top:3em;text-align:center}
.newb_txt dt{font-size:1.5em;font-weight:600;color:#0029bb;margin-top:1.75em;margin-bottom:.3em}
.newb_txt dt p{display:inline-block;background:#e7edf2;padding:.3em 1.5em;border-radius:50px;}
.newb_txt dd{font-size:1.25em;}
.newb_txt2{margin-top:3em;font-size:1.25em;color:#111;text-align:center;font-weight:500}

 @media (max-width: 768px) {
 	.newb_txt dt{font-size:1.3em;}
	.newb_txt dd{font-size:1.125em;}
 }

/*--------------------------------------------------------------
R&D 연구개발
--------------------------------------------------------------*/
.rnd .row+.row{margin-top:5em;}
.rnd .row{display:flex; align-items:center}
.rnd .row h4{margin-top:0}
.rnd .row>div+div{padding-left:50px}


@media only screen and (max-width:991px) {
	.rnd .row{display:block}
	.rnd .row img{width:100%}
	.rnd .row>div+div{margin-top:1.5em; padding-left:10px}
}

