@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Noto+Sans+KR:wght@300;400&family=Playfair+Display:wght@400;700;900&display=swap');

/* reset */
* {margin: 0;padding: 0;}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, tbody, tfoot, thead, tr, th, td{margin:0;padding:0;}
h1, h2, h3, h4, h5, h6 {font-weight: 700; font-size: inherit;}
a {color: inherit; text-decoration: inherit;}
img {vertical-align: middle;}
a img {border: none;}
li {list-style: none;}
address, em, i {font-style: normal;}
a:focus {outline: none}
button:focus {outline: none}


/* layout */
body {font-family: 'Noto Sans KR', sans-serif; font-size: 16px; color: #2e2e2e;}
.ko {font-family: 'Noto Sans KR', sans-serif;}
.en {font-family: 'Playfair Display', serif; font-weight: normal;}
.wrap {width: 100%; margin: 0 auto; overflow: hidden; position: relative;}
.en_b {font-family: 'DM Serif Display', serif; font-weight: normal;}

/* header ----------------------------------------------------------------------------------------------------------------------------------------- */
header {width: 100%;  position: fixed; z-index: 100;}
header .innerHeader {width: 1800px; padding: 30px 20px; margin: 0 auto; overflow: hidden;}
header .innerHeader h1.logo {float: left; width: 100px; }
header .innerHeader h1.logo a {display: block; width: 100%; height: 100%;}
header .innerHeader h1.logo img {width: 100%; }
header .innerHeader h1.logo img img {width: 100%;}
header .innerHeader a.menu {float: right; font-size: 26px; transition: all 0.4s; }
header .innerHeader a.menu:hover,header .innerHeader a.menu:focus {transform: translateX(0px); color: #d4c8be; transition: all 0.3s; }
header .innerHeader a.menu::after {content: ''; width: 0%; height: 1px; background: #d4c8be; position: absolute; bottom: -5px; left: 0; transition: all 0.3s;}
header .innerHeader a.menu:hover::after,header .innerHeader a.menu:focus::after {width: 100%; }


/* menuOpen ----------------------------------------------------------------------------------------------------------------------------------------- */
.menuOpen {background: #947C6B; display: block; width: 700px; position: absolute; top: 0; right: -100%; color: #eee; height: 100vh; font-size: 30px; text-align: center; padding: 30px; box-sizing: border-box; float: right;  z-index: 200; transition: all 0.8s;} 
.menuOpen a.close {display: block; font-size: 35px; color: #eee; float: right; margin-right: 20px; transition: all ease 0.3s;}
.menuOpen a.close:hover,.menuOpen a.close:focus {transform: rotate(181deg); transition: all ease 0.3s; color: #d4c8be }
.menuOpen ul {margin-top: 170px;}
.menuOpen ul li a {display: inline-block; margin-bottom: 130px; transition: all 0.3s;}
.menuOpen ul li a.sub {font-size: 20px; display: block; width: 9%; padding: 0; margin-top: -120px; margin-left: 270px;}
.menuOpen ul li a:hover,.menuOpen ul li a:focus {transform: translateX(0px); color: #d4c8be; transition: all 0.3s;}
.menuOpen ul li a::after {content: ''; width: 0%; height: 1px; background: #d4c8be; position: absolute; bottom: -5px; left: 0; transition: all 0.3s;}
.menuOpen ul li a:hover::after,.menuOpen ul li a:focus::after {width: 100%;}
.menuOpen.on {right: 0; transition: all 0.8s;}


/* section.visual ----------------------------------------------------------------------------------------------------------------------------------------- */
section.visual {width: 100%; height: 800px; margin-bottom: 170px; position: relative; background: url(../img/visual.png) no-repeat top/cover; background-attachment: fixed;}
section.visual::after {content: ''; display: block; z-index: 99; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3);}
section.visual .en_b {font-size: 130px; position: absolute; bottom: 40%; left: 50%; transform: translate(-50%, -50%); }
section.visual .en_b.motion .char {display: inline-block; animation: slide-up  0.4s cubic-bezier(.5, 0, .5, 0) both;animation-delay: calc(50ms * var(--char-index)); }
@keyframes slide-up {
    0%{transform: translateY(20px); opacity: 0;}
    30%{transform: translateY(20px); opacity: 0;}
}



/* section.guide ----------------------------------------------------------------------------------------------------------------------------------------- */
section.guide {width: 100%;  overflow: hidden;}
section.guide h2.en_b {font-size: 300px; color: #ddd;  margin-left: 30px;}
section.guide .inner {width: 1620px; margin: 0 auto 220px;  margin-top: 86px; overflow: hidden; position: relative;}
section.guide .inner ul.left {float: left; border-right: 1px solid #aaa; padding-right: 35px;  position: absolute; bottom: 0; }
section.guide .inner ul.left li.en_b {font-size: 40px; margin-bottom: 13px; }
section.guide .inner ul.left li.txt.ko.a {margin-bottom: 30px; font-size: 18px; }
section.guide h2.en_b.motion {animation-name: slide_l; animation-duration: 0.5s;}
@keyframes slide_l {
    0%{transform: translateX(-200px); opacity: 0;}
    30%{transform: translateX(-200px); opacity: 0;}
}
/* left */
section.guide .inner ul.left li.btn.more.en {font-size: 20px;  }
section.guide .inner ul.left li a {transition: all 0.3s;  display: inline-block; margin-top: 40px;}

section.guide .inner ul.left li a span {margin-left: 5px; font-size: 18px; transition: all 0.3s; display: inline-block; transform: rotate(45deg);}
section.guide .inner ul.left li a:hover span,section.about .right .txtBox .btn a:focus span {transform: rotate(226deg); display: inline-block; transition: all ease 0.3s; color: #777 }
section.guide .inner ul.left li a:hover,section.about .right .txtBox .btn a:focus {transform: translateX(0px); color: #777; transition: all 0.3s;}
section.guide .inner ul.left li a::after {content: ''; width: 0%; height: 1px; background: #777; position: absolute; bottom:0px; left: 0px; transition: all 0.3s;}
section.guide .inner ul.left li a:hover::after,section.about .right .txtBox .btn a:focus::after {width: 100%; transition: all 0.3s;}
section.guide .inner ul.left.motion li {animation-name: slide_l; animation-duration: 1s;}

/* right */
section.guide .inner .right {position: absolute; bottom: 0; left: 490px; }
section.guide .inner .right .en_b {font-size: 40px; margin-bottom: 20px; }
section.guide .inner .right ul.color {float: left; position: relative;}
section.guide .inner .right ul.color li {float: left;  margin: 100px 40px 0 0px;}
section.guide .inner .right ul.color li:last-child {margin-right: 0;}
section.guide .inner .right ul.color li:nth-child(1)::before {content: ''; width: 70px; height: 70px; border-radius: 50%; background: #F8C03A; position: absolute; top: 20px; left: 0px;}
section.guide .inner .right ul.color li:nth-child(2)::before {content: ''; width: 70px; height: 70px; border-radius: 50%; background: #F6F6F6; position: absolute; top: 20px; left: 100px;}
section.guide .inner .right ul.color li:nth-child(3)::before {content: ''; width: 70px; height: 70px; border-radius: 50%; background: #C1D4E2; position: absolute; top: 20px; right: 0px;}
section.guide .inner .videoline {width: 810px; height: 530px; background: #2e2e2e; border-radius: 30px; float: right;}
section.guide .inner .right ul.color.motion {animation-name: scale; animation-duration: 0.8s;}
@keyframes scale {
  0% {opacity: 0; transform: scale(0.9);}
}


/* video */
section.guide .inner .videoline {width: 810px; height: 530px; background: #2e2e2e; border-radius: 30px; float: right;}
section.guide .inner .videoline p.video {width: 780px; height: 500px;  margin: 15px auto;}
section.guide .inner .videoline p.video img {width: 100%; height: 100%;  border-radius: 30px;}


/* section.fullscreen ----------------------------------------------------------------------------------------------------------------------------------------- */
section.fullScreen {width: 100%; background: #F5F1ED; padding: 250px 0 821px;}
section.fullScreen p.img {width: 800px; margin: 0 auto; box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2) ;}
section.fullScreen p.img img {width: 100%;}
section.fullScreen p.img.motion {animation: slide 0.8s;}
@keyframes slide {
  0% {opacity: 0; transform: translateY(-100px);}
}


/* section.mockup ----------------------------------------------------------------------------------------------------------------------------------------- */
section.mockup {width: 100%; position: relative; margin-bottom: 800px;}
section.mockup .inner {width: 1620px; position: absolute; top: -500px; left: 50%; transform: translateX(-50%);}
section.mockup .inner .txtBox {margin-bottom: 80px; display: block;}
section.mockup .inner .txtBox .en {font-size: 100px; font-weight: bold; margin-bottom: 20px;}
section.mockup .inner .txtBox.motion span.ko b {font-weight: normal; overflow: hidden; display: block; animation-name: textAni; animation-duration: 1s; font-weight: normal; margin-top: 20px;}
section.mockup .inner .txtBox span { transform:  translate3d(0,0,0) skewY(0deg); overflow: hidden;}
section.mockup .inner .txtBox.motion span b {overflow: hidden; display: block; animation-name: textAni; animation-duration: 0.7s;}
@keyframes textAni {
    0% {opacity: 0;}
    30% {opacity: 0; transform:  translate3d(0, 40px,0) skewY(8deg);  transform-origin: top left;}
}

section.mockup .inner ul {float: left; margin-bottom: 100px;}
section.mockup .inner ul li {float: left; margin-right: 60px; box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.2);} 
section.mockup .inner ul li:last-child {margin-right: 0;}
section.mockup .inner ul.motion li:nth-child(1) {animation: slide_l 0.5s;}
section.mockup .inner ul.motion li:nth-child(2) {animation: slide_l 0.9s;}


section.mockup .btn.motion {font-size: 30px; text-align: center; animation: slide-up 0.8s;}
section.mockup .btn a {display: inline-block; transition: all 0.3s; }
section.mockup .btn a span {margin-left: 5px; font-size: 25px; transition: all 0.3s; display: inline-block; transform: rotate(45deg);}
section.mockup .btn a:hover span,section.about .right .txtBox .btn a:focus span {transform: rotate(226deg); display: inline-block; transition: all ease 0.3s; color: #777 }
section.mockup .btn a:hover,section.about .right .txtBox .btn a:focus {transform: translateX(0px); color: #777; transition: all 0.3s;}
section.mockup .btn a::after {content: ''; width: 0%; height: 1px; background: #777; position: absolute; bottom:0px; left: 0px; transition: all 0.3s;}
section.mockup .btn a:hover::after,section.about .right .txtBox .btn a:focus::after {width: 100%; transition: all 0.3s;}




/* footer ------------------------------------------------------------------------------------ */
/* contact */
footer {width: 100%; overflow: hidden; }
footer .contact {width: 50%; float: left; background: #B09582; overflow: hidden; position: relative; height: 962px;}
footer .contact .left {width: 478px; margin: 0 auto; }
footer .contact .left p.en {color: #eee; font-size: 20px; letter-spacing: 1px; text-align: center; margin-top: 150px; z-index: 1;}
footer .contact .left .mail {margin-top: 150px;}
footer .contact .left .mail p.img {display: block; margin: 0 20%; transform: rotate(8deg); transition: all 0.2s; z-index: -1;} 
footer .contact .left .mail p.en.mail {font-size: 50px; font-weight: normal; position: absolute; bottom: 43%;}

footer .contact .left .mail p.en.mail::after {content: ''; width: 0%; height: 1px; background: #eee; position: absolute; bottom:-5px; left: 0px; transition: all 0.2s;}

footer .contact .left .mail p.en.mail:hover::after {width: 100%; transition: all 0.2s; }
footer .contact .left .mail a:hover + p.img{transform: rotate(0deg); transition: all 0.2s;}
footer .contact .left .mail p.img.motion {animation-name: pop-up; animation-duration: 0.8s;}
@keyframes pop-up {
  0%{transform: scale(0.5); opacity: 0;}
  30%{transform: scale(1.2); opacity: 1;}
}

/* info ------------------------------------------------------------------------------------ */
footer .info  {width: 50%; float: right; background: #EDE7E3; height: 962px; }
footer .info .right {width: 100%; }
footer .info .right .txtBox {width: 689px; margin: 0 auto; border-bottom: 1px solid #2e2e2e; padding-bottom: 50px;}

footer .info .right h1.logo {width: 100px; margin-top: 176px; margin-bottom: 100px;}
footer .info .right h1.logo a {display: block; width: 100%; height: 100%;}
footer .info .right h1.logo img {width: 100%;}
footer .info .right h1.logo img img {width: 100%;}

footer .info .right p.ko {font-size: 25px; margin-bottom: 35px;}
footer .info .right p.ko span.en {font-size: 18px;}
footer .info .right p.tel {margin-bottom: 40px; font-size: 18px;}

footer .info .right .txtBox .btn.en {font-size: 30px; text-align: right;}
footer .info .right .txtBox .btn.en a {display: inline-block; transition: all 0.3s; }
footer .info .right .txtBox .btn.en span {margin-left: 5px; font-size: 26px; transition: all 0.3s; display: inline-block; transform: rotate(45deg);}
footer .info .right .txtBox .btn.en a:hover span,footer .info .right .txtBox .btn.en a:focus span {transform: rotate(226deg); display: inline-block; transition: all ease 0.3s; color: #777 }
footer .info .right .txtBox .btn.en a:hover,footer .info .right .txtBox .btn.en a:focus {transform: translateX(0px); color: #777; transition: all 0.3s;}
footer .info .right .txtBox .btn.en a::after {content: ''; width: 0%; height: 1px; background: #777; position: absolute; bottom:0px; left: 0px; transition: all 0.3s;}
footer .info .right .txtBox .btn.en a:hover::after,footer .info .right .txtBox .btn.en a:focus::after {width: 100%; transition: all 0.3s;}

footer .info .right p.copy {font-size: 18px; margin-top: 200px; text-align: center;}
footer .info .right p.txt {font-size: 14px; text-align: center; color: #555; margin-top: 10px;}


/* gotop btn */
footer .goTop {position: absolute; color: #eee; bottom: -45px; right: -80px; width: 180px; height: 100px; background: #806D60; font-size: 18px; transform: rotate(-45deg); padding-top: 13px; display: block; text-align: center; transition: all 0.3s; }
footer .goTop:hover {transition: all 0.3s; color: #d4c8be;}




















