@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;}

.contain {max-width:1400px; padding-left:30px; padding-right:30px; margin:0 auto;}
.contain:after {content:""; display:block; clear:both;}

/* header */
#header {position:absolute; z-index:90; width:100%; right:0; top:0; transition:0.2s all ease;} 
#main #header  {width:63.6%; right:0;} 
#header .contain {position:relative; max-width:100%; height:100px;}
.sitelogo {position:absolute; left:30px; top:30px; z-index:1;}

#sub .sitelogo {transform:rotate(-22deg);}
#gnb {display:none;}
.head-menu02 {display:none;}
#sub #wrapper {padding-top:30px;}

.header-fixed #header {position:fixed; background:#000;}
.header-fixed #header .contain {position:relative; max-width:100%; height:80px;}
.header-fixed #header .sitelogo {left:30px; top:50%; margin-top:-20px; z-index:1;}
.header-fixed #header .sitelogo img {height:40px;}

/* all-menu */
#sub .all-navigation {background:#54f3ed;}
.all-btn-menu {display:block; position:absolute; width:25px; height:18px; top:30px;  right:30px; text-align:center; text-indent:-9999em; z-index:80; transition:all 0.5s ease-in-out;}
.all-btn-menu span {position:absolute; top:50%; right:0; margin-top:-1px; height:2px; width:20px;background:#a70015; }
.all-btn-menu span:before,
.all-btn-menu span:after {content:" "; position:absolute; right:0; width:25px; height:2px; background:#a70015; transition-duration:0.3s, 0.3s; transition-delay:0.3s, 0s;}
.all-btn-menu span:before {top:-8px; transition-property:top, transform;}
.all-btn-menu span:after {bottom:-8px; transition-property:bottom, transform;}

.all-btn-menu:hover span {transform:rotate(0deg);}
.all-btn-menu:hover span:before {transform:rotate(-90deg);top:auto;}
.all-btn-menu:hover span:after {transform:rotate(0deg);bottom:auto;}

.all-navigation .close {position:absolute; top:30px; right:30px; width:26px; height:26px; text-indent:999em; overflow:hidden; z-index:30;}
.all-navigation .close:before,
.all-navigation .close:after {content:" "; position:absolute; top:12px; left:0; width:100%; height:3px; background:#a70015; border-radius:3px; transition:0.2s all ease;}
.all-navigation .close:before {transform:rotate(45deg);}
.all-navigation .close:after {transform:rotate(-45deg);}

.all-navigation .close:hover:before {transform:rotate(15deg);}
.all-navigation .close:hover:after {transform:rotate(-15deg);}

.all-navigation {position:fixed; top:0; right:-100%;  height:100%; overflow:auto; z-index:99; padding:100px 30px 50px 30px; max-width:635px;  width:100%; transition: all 0.3s ease-in-out; background:#000; text-align:right; }
/* html.allmenu-opened .all-navigation {position:absolute;} */
.all-navigation .menu {margin-bottom:120px;}
.all-navigation .menu>ul>li {margin-bottom:10px;}
.all-navigation .menu>ul>li:last-child {margin-bottom:0;}
.all-navigation .menu>ul>li>a  {font-size:16px; font-weight:400; line-height:1.2em; letter-spacing:0; color:#a70015; display:block;}
.all-navigation .submenu {margin-top:10px; margin-bottom:20px;}
.all-navigation .submenu>ul>li>a {display:inline-block; font-size:14px; font-weight:300; line-height:1.2em; letter-spacing:0; color:#a70015;}
.all-navigation .menu>ul>li a:hover,
.all-navigation .menu02>ul>li a:hover{text-decoration:underline;}

.all-navigation .menu02 {margin-bottom:60px;}
.all-navigation .menu02>ul>li {margin-bottom:10px;}
.all-navigation .menu02>ul>li:last-child {margin-bottom:0;}
.all-navigation .menu02>ul>li>a  {font-size:16px; font-weight:400; line-height:1.2em; letter-spacing:0; color:#a70015; display:block;}

.all-navigation address  {font-style:normal; font-size:13px; font-weight:400; line-height:1.6em; letter-spacing:-0.04em; color:#a70015; margin-bottom:15px;}
.all-navigation address strong {display:block;}
.all-navigation address span {display:inline-block; margin-left:26px;}
.all-navigation .f-menu {margin-bottom:60px;}
.site-info .contain {padding:0;}
.site-info .f-menu a {display:block; font-size:13px; font-weight:500; line-height:1.7em; letter-spacing:0; color:#a70015;}
.site-info .copyright {font-size:13px; font-weight:400; line-height:1.2em; letter-spacing:0; color:#a70015;}
.site-info .copyright1 {margin-top:15px;}
 
html.allmenu-opened .all-navigation {right:0;}

/* main */
.main-cont {background:#000; position:relative;}
.main-cont .main-logo {position:absolute; right:30px; bottom:30px; text-align:right;}
.main-cont .main-logo .img {margin-top:60px;}
.main-cont address  {font-style:normal; font-size:13px; font-weight:400; line-height:1.6em; letter-spacing:-0.04em; color:#a70015; margin-bottom:15px;}
.main-cont address strong {display:block;}
.main-cont address span {display:inline-block; margin-left:26px;}
.main-cont .f-menu {margin-bottom:60px;}
.main-cont .contain {padding:0;}
.main-cont .f-menu a {display:block; font-size:13px; font-weight:500; line-height:1.7em; letter-spacing:0; color:#a70015;}
.main-cont .copyright {font-size:13px; font-weight:400; line-height:1.2em; letter-spacing:0; color:#a70015;}
.main-cont .copyright1 {margin-top:15px;}

.main-visual {width:36.4%; position:relative;}
.main-visual .slick-dots {position:absolute; bottom:30px; display:flex; width:100%; justify-content:center;}
.main-visual .slick-dots li {padding:0 2.5px;}
.main-visual .slick-dots li button {width:10px; height:10px; background:#fff; opacity:0.5; border-radius:100%; border:0; text-indent:-999em; overflow:hidden;}
.main-visual .slick-dots li.slick-active button {opacity:1;}
.main-visual .mv {height:100vh; background-repeat:no-repeat; background-position:50% 50%; background-size:cover; /* transform: scale3d(1, 1, 1); */}

/* sub */

.sub-visual {position:relative;  display:flex; align-items:center; height:420px; color:#fff; background-repeat:no-repeat; background-position:50% 50%; background-size:cover; width:100%;overflow:hidden; color:#fff; padding-bottom:70px;}
.sub-visual.type2 {padding-bottom:0;}
.sub-visual .inner {width:100%; max-width:1260px; margin:0 auto; padding-left:30px; padding-right:30px; text-align:center;}
.sub-visual h2 {font-size:52px; font-weight:800; line-height:1em; letter-spacing:-.04em; margin-bottom:20px;}
.sub-visual span {font-size:14px; font-weight:500; line-height:1em; letter-spacing:1.4em;}

.sub-visual.sv1 {background-image:url("../images/common/sv1.jpg");}
.sub-visual.sv2 {background-image:url("../images/common/sv2.jpg");}
.sub-visual.sv3 {background-image:url("../images/common/sv3.jpg");}
.sub-visual.sv4 {background-image:url("../images/common/sv4.jpg");}
.sub-visual.sv5 {background-image:url("../images/common/sv5.jpg");}
.sub-visual.sv6 {background-image:url("../images/common/sv6.jpg");}


.lnb-wrap {}
.lnb {max-width:1400px; margin:0 auto; width:100%; margin-top:-10px; margin-bottom:55px;}
.lnb ul {display:flex; justify-content: flex-end; margin:0 -10px;}
.lnb .swiper-slide {width:unset;}
.lnb ul li {position:relative;text-align:center; padding:0 10px; line-height:1em;}
.lnb ul li a {position:relative; font-weight:400; display:inline-block; color:#a70015; font-size:15px; line-height:1em; letter-spacing:-.04em; padding-bottom:2px;}
.lnb ul li:before {content:""; position:absolute; right:0; top:50%; background:#6daaac; margin-top:-4.9px; height:9px; width:1px;}
.lnb ul li:last-child:before {display:none;}
.lnb ul li.active a:after {content:""; position:absolute; left:0; width:100%; height:1px; background:#829b9b; bottom:0;}

#contArea {max-width:1400px; padding-left:30px; padding-right:30px; margin:0 auto;}
#contArea.wide {max-width:100%; padding-left:0; padding-right:0;}

.sub-title {position:relative; max-width:1400px; margin:0 auto; width:100%;}
.sub-title h2 {position:relative;}
.sub-title h2:before {content:""; position:absolute; width:100%; height:1px; background:#a70015; left:0; top:50%; margin-top:-0.5px; z-index:-1;}
.sub-title h2 > span {font-family:'great-vibes', sans-serif; background:#54f3ed; display:inline-block; color:#a70015; font-size:60px; font-weight:400; line-height:1.3em; letter-spacing:-.03em; padding-right:20px;}
.sub-title .fz30 {font-size:30px;}
.sub-title.mgb60 {margin-bottom:60px;}

#contArea .sub-title {padding:0;}
#contArea .lnb ul {margin-right:-20px;}


.real-cont {padding-bottom:100px;}
.real-cont.bt-none {padding-bottom:0;}


/* footer */
#footer {display:none; overflow:hidden; font-size:16px; padding:41px 0; background:#121212;}
#footer address {font-style:normal; font-size:13px; font-weight:400; line-height:1.6em; letter-spacing:-0.04em; color:#878787; margin-right:54px; flex:1 0 auto;}
#footer address span {display:inline-block; margin-right:26px;}

/*quick*/
.quickmenu {position:absolute; z-index:99; right:50px;}
.quickmenu li {width:120px; background:#25c6ba; border-radius:15px; box-shadow:6px 6px 10px rgba(0,0,0,0.24); margin:4px 0;}
.quickmenu li:last-child {border-radius:50px; background:#155e58; margin-top:10px;}
.quickmenu li:last-child a {color:#fff; padding:8px;}
.quickmenu li a {display:block; text-align:center; font-size:16px; font-weight:400; line-height:1em; letter-spacing:-0.03em; color:#fff; padding:15px 10px 10px 10px;}
.quickmenu li a .tit {font-size:15px; font-weight:700; line-height:1.4em; letter-spacing:-0.04em; padding-bottom:5px; margin-bottom:5px; border-bottom:1px solid rgba(255,255,255,0.34);}
.quickmenu li a .txt {font-size:13px; font-weight:500; line-height:1.4em; letter-spacing:-0.04em;} 
.quickmenu li a .txt.type2 {font-size:15px; line-height:1.2em; margin:0 -2px;}
.quickmenu li a .icon {margin-bottom:5px;}