@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 } 

.only-desktop-tablet { display:block; } 
.only-desktop { display:block; } 
.only-tablet { display:none; } 
.only-mobile { display:none; } 

.m-br { display: none; } 


/* header */
#header { position:relative; width:100%; background:#fff; border-bottom:1px solid #ddd; z-index:100; } 
#header .contain { position:relative; display:flex; align-items:center; justify-content:space-between; height:100px; z-index:10; } 

#gnb { text-align:center; flex:1 1 auto; min-width:0; width:1%; } 
#gnb>ul { display:flex; justify-content:center; } 
#gnb>ul>li { position:relative; padding: 0 120px; } 
#gnb>ul>li>a { position:relative; display:flex; align-items:center; flex-direction: column; justify-content:center; height:100px; color: #333333; font-size: 24px; font-weight: 600; line-height: 1.5em; } 
#gnb>ul>li>a:after { content:""; position:absolute; bottom:-5px; left:50%; width:0; height:5px; background:#d12533; transition:.2s; } 
#gnb>ul>li.active>a:after { width: 150%; left: 50%; transform: translateX(-50%); } 
#gnb .submenu { position:absolute; left:0; width:100%; height:0; overflow:hidden; text-align:center; } 
#gnb .submenu>ul { padding:20px 5px 50px; } 
#gnb .submenu>ul>li>a { display:block; color: #555555; font-size: 17px; padding: 7px 0; } 
#gnb .submenu>ul>li>a:hover { color:#d12533; } 
#gnb>ul>li.active>a { color:#d12533; } 
.submenu-bg { display:none; position:absolute; width:100%; left:0; background:#fff; border-top:1px solid #ddd; } 

/* layout */

.contain { position:relative; max-width:1460px; padding-left:30px; padding-right:30px; margin:0 auto; } 
#main .contain { max-width: 1580px; } 
#contArea { max-width:1460px; padding-left:30px; padding-right:30px; margin:0 auto; } 
#contArea.wide { max-width:100%; padding-left:0; padding-right:0; } 

.list-icon { height: 10px; margin-right: 60px; } 


/* main */ 
[data-aos=fade-up] { transform: translate3d(0,100px,0); } 

.main-visual { position: relative; overflow: hidden; } 
.main-visual .item { position: relative; overflow: hidden; } 
.main-visual .image { position: relative; overflow: hidden; } 
.main-visual .image img { width: 100%; } 
.main-visual .slick-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 66px; background: url(../images/main/slide_btn.png) no-repeat 50% 50%/contain; border: none; overflow: hidden; text-indent: -9999em; z-index: 50; } 
.main-visual .slick-arrow:hover { background-image: url(../images/main/slide_btn_on.png); } 
.main-visual .slick-prev { left: 60px; } 
.main-visual .slick-next { right: 60px; transform: rotate(180deg) translateY(50%); } 
.main-visual .slick-dots { display:flex; align-items:center; position: absolute; left:200px; bottom:75px; z-index:1; } 
.main-visual .slick-dots li { padding:0 20px; } 
.main-visual .slick-dots li button { position: relative; font-size:0; display:block; width:11px; height:11px; border-radius:100%; background-color: #cccccc; border: none; transition:.3s; } 
.main-visual .slick-dots li button::after { content: ""; width: 30px; height: 30px; border-radius: 100%; border: 1px solid #cccccc; display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0; } 
.main-visual .slick-dots li.slick-active button { background-color: #d12533; } 
.main-visual .slick-dots li.slick-active button::after { opacity: 1; } 

.group-flex { display: flex; } 
.main-tit { font-size: 50px; line-height: 1em; letter-spacing: -0.01em; color: #333333; } 
.txt1 { font-size: 18px; line-height: 1.555em; } 
#main .desc { font-size: 18px; line-height: 1.444em; font-weight: 200; } 
.btn-more { position: absolute; bottom: 0; right: 0; } 
.btn-more a { position: relative; display: flex; align-items: center; justify-content: end; padding: 0 30px; border-radius: 50vh; border: 1px solid#ddd; width: 180px; height: 50px; font-size: 20px; color: #020303; background-color: #fff; } 
.btn-more a::after { content: ''; width: 13px; height: 14px; background: url(../images/main/arrow.png)no-repeat 50% 50%/contain; position: absolute; left: 30px; top: 50%; transform: translateY(-50%); } 
.btn-more a:hover { background-color: #d12533; color: #fff; border: 1px solid #d12533; } 
.btn-more a:hover::after { background-image: url(../images/main/arrow_on.png); } 

.main-about { padding: 160px 0; background-color: #f2f2f2; } 
.main-about .img { margin-right: 100px; } 
.main-about .txt-area { min-width: 0; width: 1%; flex: 1 1 auto; max-width: 910px; position: relative; } 
.main-about .txt-area .en { font-size: 20px; font-weight: 500; letter-spacing: 0.6em; color: #d12533; margin-bottom: 10px; } 
.main-about .txt-area .main-tit { margin-bottom: 45px; } 
.main-about .txt-area p { font-size: 20px; line-height: 1.8em; color: #333333; } 

.main-product { position: relative; } 
.main-product::after { content: ""; width: 100vw; height: 780px; background: url(../images/main/product_bg.jpg) no-repeat 50% 100%/cover; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); z-index: -1; } 
.main-product .group-tit { text-align: center; padding: 120px 0 80px; } 
.main-product .group-tit .en { font-size: 20px; font-weight: 300; color: #000000; } 
.main-product .group-tit small { color: #555555; } 
.main-product .group-box { height: 550px; padding: 90px 60px 0; display: flex; justify-content: space-between; background-color: #fff; box-shadow : 0px 0px 30px 5px rgba(0, 0, 0, 0.15); } 
.main-product .group-box .flex-area { display: flex; height: 310px; width: 50%; } 
.main-product .group-box .flex-area .txt-wrap { width: 50%; padding-top: 20px; padding-left: 50px; } 
.main-product .group-box .flex-area .txt-wrap .tit { position: relative; padding-top: 15px; font-size: 20px; font-weight: 600; color: #333333; margin-bottom: 20px; } 
.main-product .group-box .flex-area .txt-wrap .tit::before { content: ""; position: absolute; top: 0; left: 0; width: 40px; height: 1px; background-color: #333333; } 
.btn-more.link { margin-top: 60px; position: initial; } 
.btn-more.link a { justify-content: start; padding: 0 18px; border-radius: 0; width: 120px; height: 45px; font-size: 18px; line-height: 1.555em; } 
.btn-more.link a::after { width: 12px; height: 11px; background-image: url(../images/main/link.png); left: auto; right: 18px; } 
.btn-more.link a:hover::after { background-image: url(../images/main/link_on.png); } 

.main-support { padding: 150px 0; color: #fff !important; } 
.main-support .main-tit, .main-support .txt1 { color: #fff; } 
.main-support .tit-area { width: 27%; } 
.main-support .flex-area { display: flex; width: 73%; } 
.main-support .ico-wrap { position: relative; display: flex; align-items: center; padding-left: 160px; padding-right: 80px; width: 50%; } 
.main-support .ico-wrap .ic { min-width: 85px; } 
.main-support .ico-wrap .txt-box { position: relative; padding-left: 30px; } 
 .main-support .ico-wrap .txt-box::before { content: ""; position: absolute; top: 50%; left: -85px; transform: translateY(-50%); width: 85px; height: 85px; background: url(../images/main/ico_inquriy.png) no-repeat 50% 50%/contain; } 
 .main-support .ico-wrap .txt-box.as::before { background-image: url(../images/main/ico_as.png); } 
.main-support .ico-wrap .txt-box .tit { font-size: 24px; font-weight: 400; letter-spacing: -0.01em; } 
.main-support .txt1 { font-weight: 300; } 
.main-support .btn-plus { position: absolute; top: 50%; right: 40px; transform: translateY(-50%); width: 40px; height: 40px; background: url(../images/main/btn-plus.png) no-repeat 50% 50%/contain; } 
.main-support .btn-plus:hover { background-image: url(../images/main/btn-plus-on.png); } 


/* sub page */
.sub-visual { position:relative; height:300px; z-index:10; overflow:hidden; } 
.sub-visual .background { position:absolute; top:0; left:0; width:100%; height:100%; background-position:50% 50%; background-repeat:no-repeat; background-size:cover; transform:scale(1.09); -ms-transform:scale(1.09); /* IE 9 */
 -moz-transform:scale(1.09); /* Firefox */
 -webkit-transform:scale(1.09); /* Safari and Chrome */
 -o-transform:scale(1.09); /* Opera */
transition: all 2s ease-out 0s; transition-delay: 0.1s; z-index:0; } 
.sub-visual.load .background { transform:scale(1); -ms-transform:scale(1); /* IE 9 */
 -moz-transform:scale(1); /* Firefox */
 -webkit-transform:scale(1); /* Safari and Chrome */
 -o-transform:scale(1); /* Opera */ } 
.sub-visual .tt-wrap { width: 100%; position: absolute; left: 0; top: 50%; transform: translateY(-50%); z-index: 1; color: #fff; text-align: center; } 
.sub-visual .tt-wrap .tit { font-size: 50px; font-weight: 700; line-height: 1em; } 

.path-wrap { position:relative; border-bottom:1px solid #ddd; border-top:1px solid #ddd; z-index:50; } 
.path-wrap .wrap { max-width:1400px; margin:0 auto; } 
.path-wrap .inner { display:flex; } 
.path-wrap .home a { display:block; width:110px; height:80px; background:url("../images/common/home.png") 50% 50% no-repeat; text-indent:-999em; overflow:hidden; border-left:1px solid #ddd; border-right:1px solid #ddd; } 
.path-wrap .part { position:relative; max-width: 430px; border-right: 1px solid #ddd; z-index: 50; width: 100%; } 
.path-wrap .part > a { display:flex; align-items:center; position:relative; height:80px; color:#333333; font-size:20px; padding:0 60px 0 30px; } 
.path-wrap .part > a:after { content:""; position:absolute; top:50%; right: 28px; margin-top:-7px; width:17px; height:10px; background:url("../images/common/lnb_arrow.png") 50% 50% no-repeat; transition: .3s; } 
.path-wrap .part.active > a:after { transform: scaleY(-1); } 
.path-wrap .part ul { display:none; position:absolute; left:-1px; right:-1px; background:#fff; border:1px solid #ddd; z-index:50; } 
.path-wrap .part ul li { font-size: 20px; border-bottom:1px solid #ddd; } 
.path-wrap .part ul li:last-child { border-bottom:0; } 
.path-wrap .part ul li a { display:block; padding:22px 30px; } 
.path-wrap .part ul li a:hover,
.path-wrap .part ul li.active a { color:#fff; background:#d12533; } 

/* footer */
#footer { background-color: #323b43; padding:56px 0; } 
#footer .contain { max-width:1460px; display:flex; align-items:start; position: relative; } 
#footer .foot-logo { margin-right:90px; } 
#footer .foot-info { min-width:0; width:1%; flex:1 1 auto; max-width:700px; } 
#footer .foot-info address { font-style:normal; display:flex; margin:0 -9px -5px; flex-wrap:wrap; } 
#footer .foot-info p { padding: 0 12px; font-size: 16px; line-height: 1.5em; color: #949ea8; } 
#footer .foot-info .copy { margin-top: 20px; padding: 0; } 
#footer .foot-info .copy span { font-size: 12px; line-height: 2em; color: #414a52; } 
.scroll-top { font-size:13px; line-height: 1.846em; border: 1px solid #fff; width:50px; height:25px; position: absolute; right:30px; top: 50%; transform: translateY(-50%); z-index:100; padding: 0 13px; color: #fff; } 

/* for mobile */
.btn-m-menu { display:none; position:relative; height: 10px; } 
.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; width: 140px; } 
.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:#d12533 } 
.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:#d12533; } 
.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; } 

html.menu-opened { overflow:hidden; } 
html.menu-opened .mobile-navigation { -ms-transform:translateX(0); transform:translateX(0); } 
html.menu-opened .mobile-overlay { display:block; } 