@charset "utf-8";
/* layout.css는 전체적인 레이아웃 스타일을 정의합니다. */ 

#skipToContent a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skipToContent a:focus, 
#skipToContent a:active {width:200px;height:50px;background:#21272e;color:#fff;font-size:14px;font-weight:bold;text-align:center;text-decoration:none;line-height:50px;outline-color:#f37736;}

.only-desktop-tablet {display:block;}
.only-desktop {display:block;}
.only-tablet {display:none;}
.only-mobile {display:none;}

#wrapper {position:relative; overflow:hidden;}

/* header */
#header {position:fixed; top:0; left:0; width:100%; z-index:100; transition:.3s;}
#header .contain {max-width:1780px; position:relative; display:flex; align-items:center; justify-content:space-between; height:var(--header-height); z-index:10;}

.sitelogo a {display:block; background:url("../images/common/logo-w.png") no-repeat 0 center / contain; width:177px; height:44px; font-size:0; line-height:0;}

#gnb>ul {display:flex;text-align:center;} 
#gnb>ul>li {position:relative; padding:0 50px;}
#gnb>ul>li>a {display:flex; align-items:center; flex-direction:column; justify-content:center;height:var(--header-height); color:#fff; font-size:var(--font-size-20); font-weight:600; letter-spacing:-.03em; line-height:1.3em;}
#gnb .submenu {position:absolute; left:0; width:100%; height:0; overflow:hidden; text-align:center;}
#gnb .submenu>ul {padding:22px 5px 50px;}
#gnb .submenu>ul>li>a {display:block; padding:10px 0; color:#454545; line-height:1.33em; letter-spacing:-.03em;}
#gnb .submenu>ul>li>a:hover {color:var(--color-primary); text-decoration:underline;}
.submenu-bg {display:none; position:absolute; width:100%; left:0; background:#fff url('../images/common/sub-bg.png') no-repeat left 0 bottom 0; border-top:1px solid #ebebeb;}
#gnb>ul>li:hover>a {color:var(--color-primary) !important;}

.header-right {display:flex; align-items:center;}

.language {margin-right:47px;position:relative; display:inline-block;}
.language .toggle-button {display:flex; align-items:center; gap:4px; background:none; border:0; color:#fff; font-weight:600;}
.language .toggle-button .ico {width:17px; height:16px; background:url('../images/common/lang-w.png') no-repeat 50% 50% / contain;}
.language .toggle-button .txt {width:40px;}
.language .toggle-button .chevron {content:""; margin-top:-4px; width:6px; height:6px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(45deg);}

.language .toggle-layer {display:none; position:absolute; left:0; top:38px;width:100%; text-align:center;}
.language .toggle-layer a {display:inline-block; color:#fff; background:#000; font-size:var(--font-size-14);font-weight:600; border-radius:12px; line-height:23px; padding:0 17px;}
.language.active .toggle-button .chevron {transform:rotate(-135deg); margin-top:0;}

.header-right .sns {display:flex; align-items:center;}
.header-right .sns a {width:32px; height:28px;background-size:contain; background-repeat:no-repeat; background-position:50% 50%; font-size:0;}
.header-right .sns a:not(:last-child) {margin-right:12px;}
.header-right .sns .ico1 {background-image:url('../images/common/sns1.png');}
.header-right .sns .ico2 {background-image:url('../images/common/sns2.png');}

#header.header-active {background:#fff; border-bottom:1px solid #ddd;}
#header.header-active .sitelogo a {background-image:url('../images/common/logo.png');}
#header.header-active #gnb>ul>li>a {color:#242424;}
#header.header-active .btn-m-menu span {background:#242424;}
#header.header-active .btn-m-menu span:before,
#header.header-active .btn-m-menu span:after {background:#242424;}
#header.header-active .language .toggle-button {color:#242424;}
#header.header-active .language .toggle-button .ico {background-image:url('../images/common/lang.png');}
#header.header-active .language .toggle-button .chevron {border-color:#242424;}
#header.header-active .header-right .sns .ico1 {background-image:url('../images/common/sns1-on.png');}
#header.header-active .header-right .sns .ico2 {background-image:url('../images/common/sns2-on.png');}

#header.header-fixed {background:#fff; border-bottom:1px solid #ddd;}
#header.header-fixed .sitelogo a {background-image:url('../images/common/logo.png');}
#header.header-fixed #gnb>ul>li>a {color:#242424;}
#header.header-fixed .btn-m-menu span {background:#242424;}
#header.header-fixed .btn-m-menu span:before,
#header.header-fixed .btn-m-menu span:after {background:#242424;}
#header.header-fixed .language .toggle-button {color:#242424;}
#header.header-fixed .language .toggle-button .ico {background-image:url('../images/common/lang.png');}
#header.header-fixed .language .toggle-button .chevron {border-color:#242424;}
#header.header-fixed .header-right .sns .ico1 {background-image:url('../images/common/sns1-on.png');}
#header.header-fixed .header-right .sns .ico2 {background-image:url('../images/common/sns2-on.png');}

/* for mobile */
.btn-m-menu {margin-left:30px;display:none; position:relative; width:26px; height:26px;}
.btn-m-menu span {position:absolute; left:0; right:0; top:50%; height:2px; margin-top:-1px; background:#fff;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; left:0; right:0; height:2px; background:#fff;}
.btn-m-menu span:before {top:-9px;}
.btn-m-menu span:after {bottom:-9px;}

.mobile-navigation {display:none; position:fixed; top:0; right:0; width:300px; height:100%; overflow:auto; transition:.2s linear; -ms-transform:translateX(100%); transform:translateX(100%); background:#fff; z-index:102;}
.mobile-navigation .home {display:flex; align-items:center; height:80px; padding:0 20px; color:#242424; font-size:19px; font-weight:700; line-height:1.5em;}
.mobile-navigation .home img {height:42px;}
.mobile-navigation .nav-menu>ul {border-top:1px solid #ddd;}
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #ddd;}
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:10px 48px 10px 20px; display:block; color:#242424; font-size:19px; font-weight:700; line-height:1.5em;}
.mobile-navigation .nav-menu>ul>li>a:after {content:""; position:absolute; top:50%; right:20px; transform:translateY(-75%) rotate(45deg); width:11px; height:11px; border-right:2px solid #505050; border-bottom:2px solid #505050;}
.mobile-navigation .nav-menu>ul>li.active>a {color:#fff; background:var(--color-primary);}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:#fff;}
.mobile-navigation .nav-menu .submenu {display:none; background:#f8f8f8; color:#454545; font-size:16px; font-weight:400; line-height:1.5em;}
.mobile-navigation .nav-menu .submenu ul li {border-top:1px solid #e5e5e5;}
.mobile-navigation .nav-menu .submenu ul li a {display:block; padding:12px 20px;}
.mobile-navigation .nav-menu .submenu ul li a:hover {color:var(--color-primary);}
.mobile-navigation .close {position:absolute; top:25px; right:15px; width:26px; height:26px; text-indent:-9999em; overflow:hidden;}
.mobile-navigation .close:before,
.mobile-navigation .close:after {content:" "; position:absolute; top:12px; left:0; width:100%; height:3px; background:#242424; border-radius:3px;}
.mobile-navigation .close:before {transform:rotate(45deg);}
.mobile-navigation .close:after {transform:rotate(-45deg);}
.mobile-overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:#000; opacity:0.6; z-index:101;}

.m-language ul {display:flex;}
.m-language ul li {flex:1; text-align:center;border-top:1px solid #ddd;}
.m-language ul li a {display:flex; align-items:center; justify-content:center; height:45px;}
.m-language ul li.on {border-top:1px solid var(--color-primary); border-bottom:1px solid var(--color-primary);}
.m-language ul li.on a {background:var(--color-primary); color:#fff;}

html.menu-opened {overflow:hidden;}
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0);}
html.menu-opened .mobile-overlay {display:block;}

/* main */
#main #container .contain {max-width:1460px;}

.section-inner {padding:110px 80px 20px;}

.m-tt {margin-bottom:12px;font-size:var(--font-size-18); font-weight:700; letter-spacing:0; line-height:1.4em; color:#242424; text-align:center;}

.m-tit {font-size:var(--font-size-40); font-weight:700; letter-spacing:-.03em; line-height:1.4em; color:#242424; text-align:center;}

.m-txt {font-size:var(--font-size-18); font-weight:400; letter-spacing:-.03em; color:#fff;}

.more {display:inline-flex; align-items:center; font-size:var(--font-size-18); font-weight:600; letter-spacing:-.03em; line-height:1.4em; color:#fff;}
.more:after {content:''; margin-left:29px; width:80px; height:60px; background:url('../images/main/more.png') no-repeat 50% 50% /contain; transition:.3s;}
.more:hover {color:var(--color-primary);}
.more:hover:after {background-image:url('../images/main/more-on.png');}

.main-visual {height:100vh;position:relative; overflow:hidden;}
.main-visual video {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}

.main-product .m-tit {margin-bottom:55px;}
.main-product .list ul {display:flex; margin:-16px;}
.main-product .list ul li {width:33.333%; padding:16px;}
.main-product .list a {display:block;border-radius:50px 0 50px 0;overflow:hidden;}
.main-product .list .img-wrap {position:relative;}
.main-product .list .img-wrap .hover {background:rgba(222,0,43,.78);position:absolute;left:0; top:0; width:100%; height:100%; transition:.3s; display:flex; align-items:center; justify-content:center; opacity:0;}
.main-product .list .img-wrap .img img {width:100%;}
.main-product .list .cnt {padding:28px 20px 25px;}
.main-product .list .tit {margin-bottom:10px;font-size:var(--font-size-24); font-weight:600; letter-spacing:-.03em; line-height:1.4em; color:#000;}
.main-product .list a:hover {box-shadow:20px 20px 45px rgba(0,0,0,0.15);}
.main-product .list a:hover .hover {opacity:1;}

.main-about {background:url('../images/main/about-bg.jpg') no-repeat 50% 50% / cover;}
.main-about .contain {display:flex; align-items:center;}
.main-about .head {flex:1 1 auto; min-width:0; width:1%;}
.main-about .m-tt {color:#ababab; text-align:left;}
.main-about .m-tit {margin-bottom:18px;color:#fff; text-align:left;}
.main-about .m-txt {margin-bottom:85px;}
.main-about .links {width:600px;}
.main-about .links ul {display:flex; flex-wrap:wrap;}
.main-about .links ul li {width:50%;}
.main-about .links ul li:nth-child(2) a {border-bottom:0;}
.main-about .links ul li:nth-child(3) a {border-right:0;}
.main-about .links a {position:relative;border:1px solid rgba(255,255,255,0.6);min-height:300px;display:flex; align-items:flex-end; color:#fff;}
.main-about .links a:before {z-index:10;content:''; position:absolute; right:25px; top:25px; width:60px; height:60px; background-size:contain; background-position:50% 50%; background-repeat:no-repeat;}
.main-about .links .ico1:before {background-image:url('../images/main/about1.png');}
.main-about .links .ico2:before {background-image:url('../images/main/about2.png');}
.main-about .links .ico3:before {background-image:url('../images/main/about3.png');}
.main-about .links a:after {opacity:0; transition:.3s; content:''; position:absolute; left:0; top:0; width:100%; height:100%; background:var(--color-primary);}
.main-about .links a .inner {padding:55px 42px; position:relative; z-index:1;}
.main-about .links a .inner .tit {margin-bottom:20px;font-size:var(--font-size-24); font-weight:600; line-height:1.4em;}
.main-about .links a:hover {border-color:var(--color-primary);}
.main-about .links a:hover:after {opacity:1;}
.main-about .links a:hover:before {background-image:url('../images/main/view.png') !important;}

.main-service .contain {display:flex; background:url('../images/main/service-bg.jpg') no-repeat left 70px bottom 18px;}
.main-service .head {width:570px;}
.main-service .m-tt {text-align:left;}
.main-service .m-tit {margin-bottom:25px;font-weight:500; text-align:left;}
.main-service .m-txt {color:#454545;}
.main-service .links {flex:1 1 auto; min-width:0; width:1%;color:#fff;}
.main-service .links ul {display:flex;}
.main-service .links ul li {width:50%;}
.main-service .links a {position:relative;overflow:hidden; display:flex; flex-direction:column;}
.main-service .links .img img {width: 100%;}
.main-service .links .cnt {height:296px;position:relative;padding:40px 44px;}
.main-service .links .ico  {margin-bottom:30px;width:25px; height:24px; background-size:contain ; background-repeat:no-repeat; background-position:50% 50%;}
.main-service .links .tit {margin-bottom:15px;font-size:var(--font-size-24); font-weight:700; letter-spacing:-.03em; line-height:1.4em;}
.main-service .links .more{position:absolute; right:44px; bottom:30px;}
.main-service .links .box1 {border-radius:0 0 0 50px; background:var(--color-primary);}
.main-service .links .box2 {margin-top:-30px;flex-direction:column-reverse; border-radius:0 50px 0 0; background:#000;}
.main-service .links .box1 .ico {background-image:url('../images/main/service-ico1.png');}
.main-service .links .box2 .ico {background-image:url('../images/main/service-ico2.png');}
.main-service .links .more:after {background-image:url('../images/main/more.png') !important;}


/* sub */
.sub-visual {position:relative; height:460px; color:#fff; overflow:hidden; background:#333;}
.sub-visual .bg {position:absolute; top:0; left:0; width:100%; height:100%; overflow:hidden; transition:2s; opacity:1; transform:scale(1.1); background-repeat:no-repeat; background-position:50% 0; background-size:cover;}
.sub-visual .inner {margin-top:50px;position:absolute; top:50%; left:0; width:100%; padding:0 20px; transform:translateY(-50%);}
.sub-visual .tt {display:flex; align-items:center;}
.sub-visual .tt:before {margin-right:40px;content:''; width:62px; height:1px; background:#fff;}
.sub-visual .tit {margin:50px 0 95px;font-size:var(--font-size-70); font-weight:800; letter-spacing:-.03em; line-height:1em;}
.sub-visual .bg1 {background-image:url("../images/common/sv1.jpg");}
.sub-visual .bg2 {background-image:url("../images/common/sv2.jpg");}
.sub-visual .bg2-1 {background-image:url("../images/common/sv2-1.jpg");}
.sub-visual .bg2-2 {background-image:url("../images/common/sv2-2.jpg");}
.sub-visual .bg2-3 {background-image:url("../images/common/sv2-3.jpg");}
.sub-visual .bg3 {background-image:url("../images/common/sv3.jpg");}
.sub-visual .bg4 {background-image:url("../images/common/sv4.jpg");}
/* .sub-visual .bg4-2 {background-image:url("../images/common/sv4-2.jpg");} */
.loaded .sub-visual .bg {transform:scale(1); opacity:1;}

.lnb ul {display:flex;}
.lnb ul li {width:auto; position:relative;}
.lnb ul li:before {content:''; position:absolute; left:0; top:50%; width:1px; height:8px; margin-top:-4px;background:rgba(255,255,255,.6);}
.lnb ul li:first-child:before {display:none;}
.lnb ul li a {border-radius:16px; padding:0 20px; display:flex; align-items:center; font-weight:700;justify-content:center; text-align:center; height:32px; color:#fff;}
.lnb ul li.active a {background:var(--color-primary);}
.lnb ul li.active:before {display:none;}
.lnb ul li.active + li:before {display:none;}

#contArea {max-width:1260px; padding-left:30px; padding-right:30px; margin:0 auto;}
#contArea.wide {max-width:100%; padding-left:0; padding-right:0;}
#contArea.wide .sub-title {padding-left:10px; padding-right:10px;}
.contain {width:100%; max-width:1260px; padding-left:30px; padding-right:30px; margin:0 auto;}

.sub-title {padding:90px 0 50px; text-align:center;}
.sub-tit {margin-bottom:20px;font-size:var(--font-size-40); font-weight:700; letter-spacing:-.03em; line-height:1.4em; color:#242424;}
.sub-tt {font-size:var(--font-size-18); font-weight:400; letter-spacing:-.03em; line-height:1.4em;}

.real-cont {min-height:300px; padding-bottom:120px;}

/* quick */
.quick {visibility: hidden; opacity: 0; transform:translateX(0); width:200px; position:fixed; right:20px; bottom:120px; z-index:100;}
.quick .inner {position:relative;}
.quick .toggle {position:absolute;left:-35px; top:38px; height:45px; width:35px; border-radius:6px 0 0 6px; background:var(--color-primary) url('../images/common/quick-close.png') no-repeat 50% 50%; border:0;}
.quick .contact-link {margin-bottom:8px;background:#fff; border:1px solid #ddd; border-radius:20px; padding:15px 10px 20px;}
.quick .contact-link .title {padding-bottom:10px; margin-bottom:17px;border-bottom:1px solid #ddd; text-align:center; font-size:var(--font-size-24); font-weight:700; letter-spacing:0; line-height:1.4em; color:var(--color-primary);}
.quick .contact-link .tel {margin-bottom:5px;display:block;text-align:center; font-size:var(--font-size-24); font-weight:700; letter-spacing:0; line-height:1.4em; color:#242424;}
.quick .etc {margin-bottom:18px;padding-left:5px;}
.quick .etc dl {display:flex; line-height:1.4em; margin-bottom:2px;}
.quick .etc dl:last-child {margin-bottom:0;}
.quick .etc dl dt {margin-right:7px;}
.quick .etc dl dt img {margin-top:.18em;}
.quick .etc dl dd {font-size:var(--font-size-14); font-weight:400; letter-spacing:-.03em; line-height:1.4em;}
.quick .etc .holiday {font-size:var(--font-size-13); color:#686868;}
.quick .contact-link .btn {text-align:center; border-radius:6px; display:block;font-size:var(--font-size-15); font-weight:600; color:#fff; line-height:44px;}
.quick .contact-link .btn + .btn {margin-top:10px;}
.quick .contact-link .btn1 {background:#898989;}
.quick .contact-link .btn2 {background:#333;}
.quick .quick-btn {border-radius:10px; height:60px;font-weight:600;display:flex; align-items:center; justify-content:center; text-align:center; color:#fff;}
.quick .quick-btn.btn1 {background-color:#000;}
.quick .quick-btn.btn2 {margin-top:10px; background:var(--color-primary);}
.quick .quick-btn:before {margin-right:16px;content:''; width:30px; height:30px; background-size:contain; background-repeat:no-repeat; background-position:50% 50%;}
.quick .quick-btn.btn1:before {background-image:url('../images/common/quick-ico1.png');}
.quick .quick-btn.btn2:before {background-image:url('../images/common/quick-ico2.png');}
.quick.active {transform:translateX(220px);}
.quick.active .toggle {background-image:url('../images/common/quick-open.png');}

.quick-top {margin:10px auto 0;border-radius:100%; border:1px solid #9a9998; display:flex; flex-direction:column; justify-content:center; width:72px; height:72px; text-align:center; color:#454545; font-size:var(--font-size-14); font-weight:500; line-height:1.3em; background:#fff; letter-spacing:0;z-index:90;}
.quick-top:before {content:""; display:block; margin:0 auto 7px; width:0; height:0; border-left:6px solid transparent; border-right:6px solid transparent; border-bottom:8px solid #454545;}

/* footer */
#footer {padding:0 60px;background:#000; color:#ddd; font-size:var(--font-size-15); font-weight:400; letter-spacing:-.02em; line-height:1.4em;}
#footer .contain {max-width:1460px;}
#footer address {font-style:normal;}
#footer span {display:inline-block;}

/* .foot-top {padding:25px 0; border-bottom:1px solid rgba(255,255,255,0.3);}
.foot-top .contain {display:flex; align-items:center; justify-content:space-between;}
.foot-top .links {display:flex;}
.foot-top .links a{font-weight:700;font-size:1rem; margin-right:45px; transition:none;} */

.scroll-top {position: fixed; right: 60px; bottom:60px; z-index: 90;display:flex; align-items:center; justify-content:center; font-size:0; line-height:0; width:44px; height:44px; border-radius:100%; background:#fff; border:1px solid #dfdfdf;}
.scroll-top:before {content:""; display:block; width:0; height:0; border-left:6px solid transparent; border-right:6px solid transparent; border-bottom:8px solid #454545;}

.foot-wrap {padding:48px 0;border-bottom:1px solid rgba(255,255,255,0.3);}
.foot-wrap .contain {display:flex; justify-content:space-between;}
.foot-wrap .links a{font-weight:700;font-size:1rem; margin-right:45px; transition:none;}
.foot-wrap .links a:last-child {margin-right: 0;}
.foot-wrap .col .title {margin-bottom:20px;font-size:1rem; font-weight:700; letter-spacing:-.02em; line-height:1.4em; color:#fff;}
.foot-wrap address dl {margin-bottom:8px;display:flex; letter-spacing:-.02em; line-height:1.4em;}
.foot-wrap address dl:last-child {margin-bottom:0;}
.foot-wrap address dl dt {width:105px;font-size:1rem; font-weight:500;}
.foot-wrap address dl dd:not(:last-child) {margin-right:20px;}
.foot-wrap .f-cs dl dt {margin-bottom:15px;}
.foot-wrap .send {display:flex;}
.foot-wrap .send .input {width:300px; margin-right:20px;font-size:var(--font-size-14);flex:1 1 auto; min-width:0; width:1%; height:46px; background:transparent; border:0; border-bottom:1px solid #999;}
.foot-wrap .send .btn-pack {display:flex; align-items:center; justify-content:center; margin-left:0;min-width:140px; height:46px; color:var(--color-primary); background:transparent; border:0; border-bottom:1px solid var(--color-primary);}

.foot-btm {padding:40px 0 90px;}
.copyright {color:#fff;font-weight:300;}
