@charset "utf-8";
/* Products */
.products-info {position: relative; display: flex; justify-content: flex-end; overflow: hidden;}
.products-info:before {position: absolute; content: ''; z-index: -1; left: 0; bottom: 0; width: 407px; height: 466px; background: url('../images/sub/bg-product-info.png') no-repeat left bottom; background-size: contain;}
.products-info .sec-cnt {display: flex; flex-direction: column; justify-content: space-between; gap: 80px; position: relative; flex: 1; max-width: 850px; padding-left: 30px; padding-right: 120px; padding-bottom: 60px;}
.products-info .large-photo {display: flex; flex-direction: column; justify-content: center; width: calc(50% - 120px); position: relative; border-radius: calc(var(--products-gallery-radius) * 2) 0 0 calc(var(--products-gallery-radius) * 2); background: #f5f5f5;}
.products-info .large-photo .img {position: relative; width: 100%; padding-bottom: 83.096%; overflow: hidden;}
.products-info .large-photo .img img {position: absolute; width: 100%; height: 100%; max-width: 100%; max-height: 100%; right: 0; top: 50%; transform: translateY(-50%); object-fit: contain; padding: 100px 0 100px 100px;}
.products-list {width: 100%;}
.products-list ul {display: flex; flex-wrap: wrap; gap: 24px 0; height: auto;}
.products-list ul li {width: 50%;}
.products-list ul li a {display: flex; gap: 22px;}
.products-list .photo {position: relative; width: 100px; height: 100px; overflow: hidden; border-radius: var(--products-list-radius); box-shadow: 4px 4px 24px rgba(0,0,0,.12); background: #fff;}
.products-list .photo img {position: absolute; width: 100%; height: 100%; max-width: 100%; max-height: 100%; right: 0; top: 50%; transform: translateY(-50%); object-fit: contain;}
.products-list ul li.active .photo:before {position: absolute; content: ''; z-index: 1; top: 0; right: 0; bottom: 0; left: 0; border-radius: var(--products-list-radius); border: 3px solid #0081cc;}
.products-list .list-info {display: flex; flex-direction: column; justify-content: space-between; flex: 1;}

.deco-tit {position: relative; padding-top: 25px;}
.deco-tit:before {position: absolute; content: ''; top: 0; left: 0; width: 7px; height: 7px; background: #0081cc;}
.products-gallery .items {display: flex; flex-wrap: wrap; gap: 80px 20px;}
.products-gallery .item { width: calc((100% - 60px) / 4); color: #2c2c2c;}
.products-gallery .thumb {position: relative; width: 100%; padding-bottom: 100%; margin-bottom: 30px; overflow: hidden;border-radius: var(--products-gallery-radius);}
.products-gallery .thumb:before {position: absolute; content: ''; z-index: 1; top: 0; bottom: 0; right: 0; left: 0; border-radius: var(--products-gallery-radius); border: 1px solid #ddd; transition: .2s;}
.products-gallery .thumb img {position: absolute; width: 100%; height: 100%; max-width: 100%; max-height: 100%; left: 0; top: 50%; transform: translateY(-50%); object-fit: contain;}
.products-gallery .item:hover .thumb { box-shadow: 5px 5px 30px rgba(0,0,0,.12);}
.products-gallery .item:hover .thumb:before {border: 4px solid #0081cc;}

.products-info .scroll-down {position: absolute; left: -160px; top: 50%; transform: translateY(-50%); text-align: center; color: #0081cc;}
.products-info .scroll-down .txt {writing-mode: tb; margin-bottom: 15px; font-size: 17px; font-weight: 500;}
.products-info .scroll-down span {display: inline-block; width: 10px; height: 11px; background: url('../images/sub/scroll-down-blue.png') no-repeat center center; background-size: contain; animation:scrollDown .7s linear infinite alternate;}


/* Products View*/
.products-view {position: relative;}
.products-view:before {position: absolute; content: ''; z-index: -1; right: 0; bottom: 0; width: 407px; height: 466px; background: url('../images/sub/bg-product-info.png') no-repeat left bottom; background-size: contain; transform: rotateY(180deg)}
.products-view .flex-wrap {display: flex;}

.products-view .product-photo {width: 38.5714%;}
.products-view .product-photo .img {position: relative; width: 100%; padding-bottom: 100%; overflow: hidden;}
.products-view .product-photo .img img {position: absolute; width: 100%; height: 100%; max-width: 100%; max-height: 100%; left: 0; top: 50%; transform: translateY(-50%); object-fit: contain;}
.products-view .product-photo .product-for .img img {padding: 40px;}
.products-view .product-photo .img:before {position: absolute; z-index: 1; content: ''; top: 0; right: 0; bottom: 0; left: 0; border-radius: var(--products-gallery-radius); border: 1px solid #ddd;}
.products-view .product-photo .product-nav .img {border-radius: calc(var(--products-gallery-radius) / 2);}
.products-view .product-photo .product-nav .img:before {border-radius: calc(var(--products-gallery-radius) / 2);}
.products-view .product-photo .product-nav .slick-current .img:before {border: 3px solid #0081cc;}
.products-view .slick-list {padding-right: 1px; margin-right: -1px;}

.product-nav {position: relative; padding: 0 40px; margin-top: 25px;}
.product-nav .slick-slide {padding: 0 5px;}
.product-nav .slick-arrow {position: absolute; top: 50%; margin-top: -7px; width: 9px; height: 14px; z-index: 10; overflow: hidden; border: 0; text-indent: -9999em;}
.product-nav .slick-prev {left: 0; background: url('../images/sub/product-prev.png') no-repeat center center; background-size: contain;}
.product-nav .slick-next {right: 0; background: url('../images/sub/product-next.png') no-repeat center center; background-size: contain;}
.products-view .product-photo .product-nav .img img {object-fit: cover;}

.products-view .product-info {display: flex; flex-direction: column; justify-content: space-between; gap:40px; flex: 1; padding-left: 100px;}
.hyphen-list li {padding-left: 7px; position: relative;}
.hyphen-list li:before {position: absolute; content: '-'; left: 0;}
.btn-list {display: flex; align-items: center; justify-content: center; width: 211px; height: 70px; border: 1px solid #0081cc; font-weight: 700; font-size: 18px; color: #0081cc; border-radius: 8px;}

.accordion-list>ul>li:not(:last-child) {margin-bottom: 10px;}
.accordion-list .tit {color:#2c2c2c; line-height:1.5em;}
.accordion-list .tit a {position:relative; display:flex; align-items:center; padding:23px 100px 23px 60px; text-decoration:none !important; transition:none; border-radius: 37px; background: #f4f4f4;}
.accordion-list .tit a:after {content:""; position:absolute; right:60px; top:26px; display:inline-block; width:14px; height:14px; border-right:2px solid #aaa; border-bottom:2px solid #aaa; transform:rotate(45deg);}
.accordion-list .cnt {display:none; position:relative; padding:40px 60px;}
.accordion-list .cnt .buttons {margin-bottom:0;}
.accordion-list .q {display:inline-block; margin-right:15px; flex:0 0 38px; width:38px; height:38px; text-align:center; color:#fff; font-size:18px; font-weight:600; line-height:38px; background:#28ac9a; border-radius:100%;}
.accordion-list li.active {position:relative;}
.accordion-list li.active .tit a {background: #0081cc; color: #fff;}
.accordion-list li.active .tit a:after {transform:rotate(-135deg); margin-top:5px; border-color:#fff;}
.accordion-list .none {padding:70px 0; text-align:center; color:#999;}
.accordion-wrap {display: flex; gap: 70px;}
.accordion-wrap .photo {width: var(--accordion-img-width); height: 0; position: relative; padding-bottom: var(--accordion-img-width); overflow: hidden;}
.accordion-wrap .photo:before {position: absolute; content: ''; z-index: 1; top: 0; right: 0; bottom: 0; left: 0; border: 1px solid #ddd; border-radius: 24px;}
.accordion-wrap .photo img {position: absolute; width: 100%; height: 100%; max-width: 100%; max-height: 100%; left: 0; top: 50%; transform: translateY(-50%); object-fit: contain;}
.accordion-wrap .table-wrap {flex: 1;}
.accordion-wrap .table-wrap table {border-collapse: collapse; width: 100% !important; border-top: 1px solid #505050;}
.accordion-wrap .table-wrap table th {font-weight: 600; font-size: 16px; color: #2c2c2c; border-bottom: 1px solid #505050;}
.accordion-wrap .table-wrap table td {font-size: 15px; border-bottom: 1px solid #ddd;}
.accordion-wrap .table-wrap table th,
.accordion-wrap .table-wrap table td {padding: 10px 30px;}

/* welcome */
.welcome {overflow: hidden;}
.welcome h2 {margin-bottom: 120px;}
.sec-oem .desc p {line-height: 1.888em; color: #2c2c2c;}
.sec-oem .desc p:not(:last-child) {margin-bottom: 45px;}
.sec-oem .contain {display: flex;}
.sec-oem .img {width: 31.071428%;}
.sec-oem .txt {flex: 1; padding-left: 115px;}
#contArea.short .g-img {width: 1200px;}
.g-img {width:1400px;height:550px; margin: 0 auto; position: relative; max-width: 100%;}
.g-img img {position: absolute; width: 100%; height: 100%; max-width: 100%; min-height: 100%; left: 50%; top: 0; transform: translateX(-50%); object-fit: cover;}

/* Catalog */
.btn-catalog {display: flex; align-items: center; gap: 12px; width: fit-content; font-weight: 500; font-size: 16px; color: #2c2c2c; border-radius: 8px; border: 1px solid #ddd; background: #fafafa; padding: 17px 28px; margin: 0 auto;}
.pdf-viewer-iframe {position:relative; padding-bottom:90vh;}
.pdf-viewer-iframe iframe {position:absolute; top:0; left:0; width:100%; height:100%;}

/* Greetings */
.sec-txt h2 {line-height: 1.421em;}
.greetings {position: relative; padding-top: 130px; display: flex;}
.greetings:before {position: absolute; top: 45px; right: 100px; content: 'Since 1989'; font-weight: 700; font-size: 160px; color: #f7f7f7; font-style: italic;}
.greetings .photo {position: sticky; top: 380px; left: 0; width: 50%; height: fit-content; padding-right: 80px;}
.greetings .txt {flex: 1; height: auto; position: relative;}
.greetings .txt::-webkit-scrollbar {display: none;}
.greetings .txt .inner{max-width: 630px; padding-right: 30px; line-height: 1.8888em;}
.greetings .desc p {margin-bottom: 50px;}
.greetings .sign {display: flex; align-items: center; gap: 40px;}

/* History */
.history_box {width:100%; position:relative;}
.history_box:after {content:''; display:block; width:100%; clear:both;}
.history_box .history_year_wrap {width:200px; height:calc(100vh - 200px); max-height:780px; position:absolute; left:50%; top:0; transform:translateY(-50%); margin-top:0; margin-left:-420px; transition:transform 0.6s; z-index:10;}
.history_box .history_year_wrap:before {content:''; display:block; width:100%; height:150px; background:linear-gradient(to bottom, white 13%, rgba(255,255,255,0.9) 29%, rgba(255,255,255,0.8) 39%, rgba(255,255,255,0.7) 47%, rgba(255,255,255,0.6) 55%, rgba(255,255,255,0.5) 61%, rgba(255,255,255,0.4) 68%,  rgba(255,255,255,0.2) 83%, transparent); position:absolute; left:0; top:0; z-index:30; display:none;}
.history_box .history_year_wrap:after {content:''; display:block; width:100%; height:150px; background:linear-gradient(to top, white 13%, rgba(255,255,255,0.9) 29%, rgba(255,255,255,0.8) 39%, rgba(255,255,255,0.7) 47%, rgba(255,255,255,0.6) 55%, rgba(255,255,255,0.5) 61%, rgba(255,255,255,0.4) 68%,  rgba(255,255,255,0.2) 83%, transparent); position:absolute; left:0; bottom:0; z-index:30;}
.history_box .history_year_wrap.fixed {position:fixed; top:0; margin-top:0; transform:translateY(100px);}
.history_box .history_year_wrap.fixed:before {display:block;}
.history_box .history_year_wrap.bottom {position:absolute; top:auto; bottom:0; transform:translateY(10%);}
.history_box .history_year {width:100%; height:100%; overflow:hidden;}
.history_box .history_year .swiper-slide {display:flex; justify-content:center; align-items:center; height:80px; font-size:58px; color:rgba(45,49,50,0.2); line-height:1.3em; font-weight:700; text-align:center; cursor:pointer;}
.history_box .history_year .swiper-slide-active {height:110px; font-size:78px; color:#2d3132; font-weight:700;}
.history_box .history_list {float:right; width:calc(50% - 10px);}
.history_box .history_list > div:not(:first-child) {padding-top:90px;}
.history_box .history_list>div>ul>li {width:100%; position:relative; padding-left:105px; margin-bottom:15px;}
.history_box .history_list>div>ul>li:last-child {margin-bottom:0;}
.history_box .history_list>div>ul>li .date {display:block; width:105px; font-size:1.125em; line-height:1.66em; font-weight:600; position:absolute; left:0; top:0;}
.history_box .history_list>div>ul>li .txt {line-height:1.4444em; color: #2c2c2c;}
.history_box .history_list>div>ul>li .txt li:not(:last-child) {margin-bottom: 12px;}
.history_box .history_list>div>ul>li .img {border-radius: 28px; overflow: hidden;display:block; width:100%; max-width:340px; margin:20px 0 40px;}
.history_box .history_list .active li .date {color:#0081cc;}
.history_box .history_year_wrap {transition:transform 0.6s linear;}

/* ESG */
.sec-esg {overflow: hidden;}
.sec-esg .img {width: 50%;}
.sec-esg .img img {border-radius: var(--products-gallery-radius); }
.sec-esg .flex-item {display: flex;}
.sec-esg .flex-item:nth-child(even) {flex-direction: row-reverse;}
.sec-esg .flex-item:not(:last-child) {margin-bottom: 85px;}
.sec-esg .flex-item:nth-child(even) .img {text-align: right;}
.sec-esg .flex-item .txt {flex: 1; display: flex; align-items: center; justify-content: center;}
.esg-deco {position: relative; margin-bottom: 50px;}
.esg-deco:before {position: absolute; content: ''; top: -30px; left: -30px; width: 30px; height: 30px; background: url('../images/sub/esg-deco.png') no-repeat center center; background-size: contain;}

/* 경영이념 */
.ideology-circles .contain {position: relative; display: flex; justify-content: space-between; gap: 30px;}
.ideology-circles .contain:before{position: absolute; z-index: -1; content: ''; left: 30px; right: 30px; top: 50%; height: 1px; background: #505050;}
.ideology-circles .circle {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 15px; width: 280px; height: 280px; border-radius: 100%; border: 1px solid #505050; background: #fff;}

.ideology-values .flex-item {display: flex;}
.ideology-values .flex-item:not(:last-child) {margin-bottom: 120px;}
.ideology-values .photo {position: relative; width: 48.33334%;}
.ideology-values .photo .img {border-radius: 180px; overflow: hidden;}
.ideology-values .photo .caption {position: absolute; left: -22px; bottom: 0; font-size: 120px; line-height: .73em;}
.ideology-values .txt {flex: 1; display: flex; flex-direction: column; align-items: center; justify-content:center;}
.ideology-values .txt .icon img {width: 36px; filter: grayscale(1);}
.ideology-values h2 {margin: 30px 0 45px;}

/* 오시는길 */
.sec-directions .flex-item {display: flex; gap: 40px;}
.sec-directions .flex-item:not(:last-child) {margin-bottom: 95px;}
.sec-directions .txt {flex: 1;}
.sec-directions .photo {width: 66.666667%;}
.sec-directions .img {border-radius: var(--board-gallery-radius); overflow: hidden; margin-bottom: 35px;}