
::-webkit-scrollbar {

  display:none;
  
  } 
  
  


article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
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,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,caption,tbody,tfoot,thead,tr,th,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}
body{ line-height:1.5; font-size:16px; color:#000; background:#fff;-ms-overflow-style: none; } 
audio,canvas,progress,video{display:inline-block;vertical-align:baseline}
audio:not([controls]){display:none;height:0;}
ul,ol,li{list-style:none}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
fieldset,img{border:0}
hr{height:0;}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sup{top:-0.5em}
sub{bottom:-0.25em}
address,caption,em,var{font-style:normal;font-weight:normal}
a{text-decoration:none;cursor:pointer;color: inherit;}
a[href^="tel"]{font-style:normal}
a:hover,a:active,a:focus{text-decoration:none !important;}
b,strong{font-weight:bold}
dfn{font-style:italic}
img{border:0;vertical-align:top}
pre{overflow:auto}
code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}
table{border-spacing:0;border-collapse:collapse}
td,th{padding:0;}
legend, caption{overflow:hidden;text-indent:-9999999px; height:0 !important; width:0 !important;line-height:0 !important;margin:0;padding:0;}
input{vertical-align:middle;margin:0;padding:0;}
input[type="text"],input[type="password"],input[type="email"]{-webkit-appearance:none;appearance:none;border-radius:0;}
input:checked[type="checkbox"]{-webkit-appearance:checkbox;appearance:checkbox}
button,input[type="button"],input[type="submit"],input[type="reset"],input[type="file"]{border-radius:0;-webkit-appearance:button;appearance:button;}
button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}
button{overflow:visible;border:none;cursor:pointer;margin:0;padding:0;}
a,input,button,select{outline:none}
button,select{text-transform:none}
optgroup{font-weight:bold}
textarea{border:1px solid #bcbcbc;overflow:auto;-webkit-appearance:none;appearance:none;}
input::-ms-clear{display:none;}


body { width: 100%; margin: auto; font-family: "Asta Sans", sans-serif; }
body.locked { touch-action:none; -webkit-overflow-scrolling:none; overflow:hidden; overscroll-behavior:none; }
body.pop_lock {
    overflow: hidden;
    touch-action: none;
}
/*body.main { overflow-y: hidden; }*/

.mo { display: none; }
.pc { display: block; }

/**/


/*html,a,.btn { cursor: none; }*/
.btn { cursor: pointer; }

#cursor {
position: fixed;
z-index: 99999999999999999;
left: 0;
top: 0;
pointer-events: none;
will-change: transform;
}

@media (hover: hover) and (pointer: fine) {

.cursor__circle {
    width: 25px;
    height: 25px;
    margin-top: -20%;
    margin-left: -20%;
    border-radius: 50%;
    border: solid 1px #614332;
    background-color: #614332;
    transition: opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    background-color 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    border-color 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    width 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    height 0.3s cubic-bezier(0.25, 1, 0.5, 1),
    margin 0.3s;
    display: none;
}

#cursor.arrow .cursor__circle{
    width: 80px;
    height: 80px;
    margin-top: -50%;
    margin-left: -50%;
    background-color: transparent;
    border-color: #614332;
}

.cursor_drag { width: 25px; height: 25px; background-color: rgba(0,0,0,0.7); display: flex; justify-content: center; align-items: center; border-radius: 100%; left: 0; top: 0; transform: translate(-50%,-50%); transition: 0.3s; opacity: 0; position: absolute; border: 1px solid #000; background: none; }
.cursor_drag p { color: #fff; color: #000; font-size: 10px; line-height: 100%; font-weight: 500; display: inline-block; position: relative; letter-spacing: 0; }
.cursor_drag p:before { content:''; width: 5px; height: 5px; border-left: 1px solid #000; border-bottom: 1px solid #000; transform: rotate(45deg); position: absolute; left: -33px; top: 0; bottom: 0; margin: auto; }
.cursor_drag p:after { content:''; width: 5px; height: 5px; border-right: 1px solid #000; border-bottom: 1px solid #000; transform: rotate(-45deg); position: absolute; right: -33px; top: 0; bottom: 0; margin: auto; }

.cursor_click { width: 25px; height: 25px; background-color: transparent; border: 1px solid #fff; display: flex; justify-content: center; align-items: center; border-radius: 100%; left: 0; top: 0; transform: translate(-50%,-50%); transition: 0.3s; opacity: 0; position: absolute; }
.cursor_click p { color: #fff; font-size: 10px; line-height: 100%; font-weight: 500; display: inline-block; position: relative; letter-spacing: 0; transform: translateY(-5px); }
.cursor_click p:before { content:''; width: 5px; height: 5px; border-left: 1px solid #fff; border-bottom: 1px solid #fff; transform: rotate(-45deg); position: absolute; left: 0; right: 0; top: 18px; bottom: 0; margin: auto; }

#cursor{
    width: 70px;
    height: 70px;
}

.cursor_skip { width: 70px; height: 70px; display: flex; justify-content: center; align-items: center; border-radius: 100%; left: 0; top: 0; transform: translate(-50%,-50%); 
transition: opacity 1.0s; opacity: 0; position: absolute; display: none; }
.cursor_skip p { display: none; }
/* .cursor_skip::after { content: ''; width: 100%; height: 100%; background: url(../img/play.png) center no-repeat; } */
body.main .cursor_skip { display: flex; }
body.main .cursor_skip.show { opacity: 1; }
.cursor_skip:before { display: none; }

.cursor_skip2 { width: 70px; height: 70px; background-color: #000; display: flex; justify-content: center; align-items: center; border-radius: 100%; left: 0; top: 0; transform: translate(-50%,-50%); 
transition: opacity 1.0s; opacity: 0; position: absolute; display: none; }
body.main .cursor_skip2 { display: flex; }
body.main .cursor_skip2.show { opacity: 1; }
.cursor_skip2 p { font-family: 'lexend', sans-serif; color: #fff; font-size: 14px; line-height: 100%; font-weight: 600; display: inline-block; position: relative; letter-spacing: 0; text-transform: uppercase; }
.cursor_skip2:before { content:''; width: 94px; height: 94px; position: absolute; left: -12px; top: -12px; background-color: #000; opacity: 0.6; border-radius: 100%;  

    animation-name: cursor_skip, cursor_skip2;
    animation-duration: 2.1s, 2.1s;
    animation-delay: 0s, 0s;
    animation-timing-function: ease, ease;
    animation-fill-mode: both, both;
    animation-iteration-count: infinite, infinite;

}

.cursor_skip.drag { opacity: 0; }
.cursor_skip2.drag { opacity: 0; }

/* body.main .cursor_skip { display: flex; } */

/* .intro_bg { width: 167.1428%; position: absolute; left: -33%; top: -33%; animation: intro_bg 8s 0s linear infinite; } */
    
    @keyframes intro_bg {
        from { transform: rotate(-360deg); }
        to {  }
    }

#cursor.click .cursor__circle{
    width: 80px;
    height: 80px;
    background-color: transparent;
    border-color: transparent;
}
#cursor.click .cursor_click { 
    width: 65px;
    height: 65px;
opacity: 1;
}

#cursor.drag .cursor__circle{
    width: 80px;
    height: 80px;
    background-color: transparent;
    border-color: transparent;
}
#cursor.drag .cursor_drag { 
    width: 65px;
    height: 65px;
opacity: 1;
}

#cursor.drag2 .cursor__circle{
    width: 80px;
    height: 80px;
    background-color: transparent;
    border-color: transparent;
}
#cursor.drag2 .cursor_drag { 
    width: 65px;
    height: 65px;
opacity: 1;
}
#cursor.drag2 .cursor_drag { background-color: transparent; border: 1px solid #fff; }
#cursor.drag2 .cursor_drag p { color: #fff; }
#cursor.drag2 .cursor_drag p:before { border-left: 1px solid #fff; border-bottom: 1px solid #fff; }
#cursor.drag2 .cursor_drag p:after { border-right: 1px solid #fff; border-bottom: 1px solid #fff; }




}



@keyframes cursor_skip {
0% { transform: scale(0.7); }
30% { transform: scale(0.7); }
80% { transform: scale(1); }
100% { transform: scale(1);  }
}
@keyframes cursor_skip2 {
0% { opacity: 0; }
20% { opacity: 0.3; }
70% { opacity: 0.3; }
100% { opacity: 0; }
}

.imgc { z-index: 9; font-size: 0.75rem; line-height: 100%; color: #fff; position: absolute; right: 1rem; bottom: 0.75rem; text-shadow: 0 0 5px rgba(0,0,0,0.7),0 0 5px rgba(0,0,0,0.7); }


html.scroll-lock,
body.scroll-lock {
  overflow: hidden;
  height: 100%;
}

.main_skip_wrap {
  position: fixed;
  z-index: 9999999;
  pointer-events: auto;
}

/*  */

.intro_all_wrap { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: -1; background-color: #000; }

.intro_wrap { width: 100%; height: 100%; position: relative; }
/* .intro_wrap::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: -1; background-color: #000; } */

.intro_img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 2; }
.intro_img::before { content: ''; width: 100%; height: 100%; position: absolute; right: 0; top: 0; transform: scale(1); background: url(../img/intro_bg.jpg) center no-repeat; background-size: cover; z-index: 1; }

.intro_vd_box { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 1; background-color: #000; overflow: hidden; transition: 1.6s; }
.intro_vd_box>div { width: 100%; height: 100%; position: absolute; }
.intro_vd_box>div::after { content: ''; width: 100%; height: 100%; position: absolute; z-index: 3; background: url(../img/intro_bg.png) center no-repeat; background-size: cover; opacity: 0; left: 0; top: 0; }
.intro_vd { position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; width: 100%; padding-bottom: 56.25%; height: 0; z-index: 2; transition: 1.6s; }
.intro_vd::before { content:''; position: absolute; top: 50%; left: 50%; width: 100vw; height: 56.25vw; min-width: 177.78vh; min-height: 100vh; transform: translate(-50%, -50%); background: url(../img/intro_vd.jpg) center no-repeat; background-size: cover; z-index: 1; opacity: 1; transition: 1.2s; }
/* .intro_vd:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 5; } */
.intro_vd iframe { position: absolute; top: 50%; left: 50%; width: 100vw; height: 56.25vw; min-width: 177.78vh; min-height: 100vh; transform: translate(-50%, -50%); z-index: 2; border: 0; transition: 1.2s; }


.intro_txt_box { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 9; display: flex; justify-content: center; align-items: center; transition: 1.6s; color: #fff; }
.intro_txt_box>div { width: 90%; position: relative; }
.intro_txt_box h2 { font-family: 'kessler'; font-size: 8.125rem; line-height: 100%; display: flex; justify-content: center; align-items: center; gap: 2.5rem; color: #cfbfad; opacity: 0; gap: 8.5rem; }
.intro_txt_box span { display: block; width: 1px; height: 2.75rem; position: relative; margin: auto; margin-top: 1rem; }
.intro_txt_box span::before { content: ''; width: 100%; height: 0%; position: absolute; left: 0; top: 0; background-color: #cfbfad; }
.intro_txt_box h3 { font-family: 'kessler'; font-size: 2rem; line-height: 225%; color: #cfbfad; margin-top: 1rem; color: #cfbfad; opacity: 0; transform: translateY(0rem); }
.intro_txt_box p { font-family: "Nanum Myeongjo", serif; font-size: 1.375rem; line-height: 160%; opacity: 0; transform: translateY(3rem); }
.intro_txt_box img { width: 12.5rem; opacity: 0; transform: translateY(-3rem); }
.intro_txt_box h4 { font-family: 'kessler'; font-size: 1.625rem; line-height: 100%; margin-top: 1.625rem; color: #cfbfad; letter-spacing: 0.125rem; opacity: 0; transform: translateY(3rem); }


.intro_txt_box.box01>div { transform: translateY(1rem); }
.intro_txt_box.box01 p { margin-top: 1.875rem; }



.main_wrap.intro .intro_txt_box.box01 h2 { opacity: 1; gap: 2.5rem; transition: opacity 1.5s 0s, gap 1.5s 0s; }
.main_wrap.intro .intro_txt_box span::before { height: 100%; transition: 1.5s 0s; }
.main_wrap.intro .intro_txt_box.box01 h3 { opacity: 1; transform: translate(0); transition: 1.5s 0s; }
.main_wrap.intro .intro_txt_box.box01 p { opacity: 1; transform: translate(0); transition: 1.5s 0.4s; }

.main_wrap.intro2 .intro_img,
.main_wrap.intro2 .intro_txt_box.box01 { opacity: 0; transition: 1.2s 0s; }

.main_wrap.intro3 .intro_txt_box.box02 p { opacity: 1; transform: translate(0); transition: 1.5s 0s; }

.main_wrap.intro4 .intro_txt_box.box02 { opacity: 0; transition: 1.2s 0s; }

.main_wrap.intro5 .intro_vd_box>div::after { opacity: 1; transition: 1.2s 0s; }
.main_wrap.intro5 .intro_txt_box.box03 img,
.main_wrap.intro5 .intro_txt_box.box03 h4 { opacity: 1; transform: translate(0); transition: 1.5s 0s; }

.main_wrap.intro6 .intro_vd_box>div::after,
.main_wrap.intro6 .intro_txt_box.box03 { opacity: 0; transition: 1.2s 0s; }

.main_wrap.intro7 .main_txt_box { opacity: 1; transition: 1.2s 0s; }
.main_wrap.intro7 .main_txt_box h1 { transform: scale(1); transition: transform 3s 0s; }
.main_wrap.intro7 .intro_vd { opacity: 0; transition: 4s 0s; }




.main_wrap.skip .intro_vd_box,
.main_wrap.skip .intro_txt_box { opacity: 0; transition: 1.2s 0s; }
.main_wrap.skip .intro_img,
.main_wrap.skip .main_txt_box { opacity: 1; transition: 1.2s 0s; }
.main_wrap.skip .main_txt_box h1 { transform: scale(1); transition: transform 1.5s 0s; }

/* .main_wrap.skip { opacity: 0; transition: 1.3s 0s !important; } */

/**/

.all_wrap { width: 100%; height: auto; overflow: hidden; position: relative; left: 0; top: 0; z-index: 9; }
body.main .all_wrap { height: 100vh; text-align: center; }

.section { background-color: #fff; width: 100%; height: 100vh; position: relative; overflow: hidden; }

.c_red { color: #b33f64; }

.main_skip_wrap { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 999999999999980; display: none; }
.main_skip_bt { width: 100%; height: 100%; position: absolute; left: 0; top: 0; cursor: pointer; }
.main_skip_bt p { display: none; }


/**/

#section1 { width: 100%; background: none; }

.main_wrap { width: 100vw; height: 100vh; left: 0; top: 0; z-index: 9; display: flex; justify-content: center; align-items: center; overflow: hidden; }

.main01 { width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; transition: 0.8s; }

.main_img_box { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; }
.main_img { width: 100%; height: 100%; position: absolute; right: 0; bottom: 0; z-index: 2; overflow: hidden; transition: 0.8s; opacity: 0; background-color: #000; }
/* .main_img::before { content: ''; width: 100%; height: 100%; position: absolute; right: 0; top: 0; transform: scale(1); background: url(../img/main.jpg) center bottom 5% no-repeat; background-size: cover; z-index: 1; transform: scale(1); transition: 1.0s; } */
.main_img::before { content: ''; position: absolute; top: 50%; left: 50%; width: 100vw; height: 56.25vw; min-width: 177.78vh; min-height: 100vh; transform: translate(-50%, -50%); border: 0; background: url(../img/main.jpg) center no-repeat; background-size: cover; transition: 1.0s; }
.main_img::after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: url(../img/main_bg.png) center bottom no-repeat; background-size: cover; z-index: 1; opacity: 1; transition: 0.8s; }


.main_txt_box { width: 100%; height: 100%; position: absolute; left: 0; top: 0; display: flex; justify-content: center; align-items: center; z-index: 9; text-align: center; color: #fff; opacity: 0; }
.main_txt_box::before { content: ''; width: 100%; height: 100%; background: url(../img/main_bg.png) center bottom no-repeat; background-size: cover; position: absolute; left: 0; top: 0; z-index: 4; opacity: 0; transition: 0.8s; }
.main_txt_box>div { transform: translateY(-1rem); position: relative; z-index: 9; }
.main_txt_box>div>div { position: absolute; left: 0; right: 0; top: -5.5rem; margin: auto; opacity: 0; transform: translateY(-3rem); transition: 0.8s; }
.main_txt_box h1 { font-family: "Gloock", serif; font-size: 8.125rem; transform: scale(3.23); line-height: 100%; letter-spacing: 0.6875rem; padding-left: 0.6875rem; }
.main_txt_box h5 { font-size: 1.125rem; line-height: 100%; }
.main_txt_box h4 { font-size: 1.5rem; line-height: 100%; margin-top: 0.625rem; letter-spacing: 0.6875rem; padding-left: 0.6875rem; }
.main_txt_box h4 b { font-weight: 700; color: #dae0b8; }
.main_txt_box h3 { font-size: 1.75rem; line-height: 100%; position: absolute; left: 0; right: 0; margin: auto; bottom: -4.5rem; opacity: 0; transform: translateY(3rem); transition: 0.8s; }

.main_bd { width: 90%; max-width: 49.25rem; position: absolute; left: 0; right: 0; margin: auto; bottom: 0; z-index: 3; transform: translateY(100%); transition: 0.8s; }

.main_guest { width: 8.125rem; height: 8.125rem; margin: auto; border-radius: 100%; z-index: 9; cursor: pointer; position: absolute; right: 4.625rem; bottom: 4.125rem; display: flex; justify-content: center; align-items: center; opacity: 0; cursor: default; transition: 1.0s 0s; z-index: 90; }
.main_guest a { cursor: default; }
.main_guest_bg { width: 100%; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) scale(1) rotate(0); animation: main_guest_bg 12s 0s linear infinite; transition: opacity 0.3s; }
.main_guest_bg.white { opacity: 0; }
.main_guest p { font-size: 0.75rem; line-height: 128%; color: #000; position: relative; z-index: 9; font-weight: 400; transform: translate(0px,-1px); transition: 0.3s; letter-spacing: 0; }
.main_guest p span { font-size: 0.75rem; transform: translateX(-1px); }
.main_guest p b { font-size: 1.375rem; text-transform: uppercase; font-weight: 700; display: inline-block; transform: translateX(-1px); }

.main_guest>a>div { transform: translateY(0.125rem); }
.main_guest>a>div>span { display: inline-block; width: 11px; height: 11px; position: relative; }
.main_guest>a>div>span::before { content: ''; width: 1px; height: 100%; background-color: #fff; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; }
.main_guest>a>div>span::after { content: ''; width: 4px; height: 4px; border-bottom: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); position: absolute; left: 0; right: 0; bottom: 0; margin: auto; }

.main_guest.show { opacity: 1; }
.main_guest.hide { opacity: 0 !important; }

.main_guest.white .main_guest_bg.white { opacity: 1; }
.main_guest.white .main_guest_bg.black { opacity: 0; }
.main_guest.white p { color: #fff; }

@keyframes main_guest_bg {
from { transform: translate(-50%,-50%) scale(1) rotate(-360deg); }
to {  }
}

.main_ori { text-align: center; position: absolute; left: 0; right: 0; margin: auto; z-index: 9; bottom: 2.25rem; color: #fff; opacity: 0; transform: translateY(3rem); transition: 0.8s; word-break: keep-all; overflow-wrap: break-word; }
.main_ori p { font-size: 0.75rem; line-height: 166%; opacity: 0.7; }


.main_sum_box { width: 100%; height: 100%; position: absolute; right: 0; top: 0; z-index: -1; display: flex; justify-content: center; align-items: center; transition: all 0.8s, z-index 0s 1.6s; color: #fff; }
.main_sum_box::before { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: -1; background-color: #000; opacity: 0; transition: 0.8s; }
.main_sum_box>div:first-child { width: 90%; max-width: 1500px; position: relative; display: flex; justify-content: center; align-items: flex-end; flex-direction: column; transform: translateY(3rem); gap: 6.875rem; }

.sum_txt_box { width: 100%; text-align: left; color: #fff; }
.sum_txt_box>div { display: inline-block; transition: 0.8s; opacity: 0; transform: translateX(-5rem); }
.sum_txt_box h2 { font-family: "Gloock", serif; font-size: 6.25rem; line-height: 100%; position: relative; font-weight: 500; white-space: nowrap; opacity: 1; transition: 0.8s; letter-spacing: 0.6875rem; }
.sum_txt_box h2 span { color: #fff; }
.sum_txt_box h5 { font-size: 1.75rem; margin-top: 1.25rem; line-height: 100%; opacity: 1; transition: 0.8s; white-space: nowrap; }

.sum_img_box { position: absolute; top: -1rem; right: 0; display: flex; justify-content: flex-end; align-items: flex-start; gap: 1.375rem; }
.sum_img_box h3 { font-family: 'antro'; font-size: 1.5rem; line-height: 120%; text-align: left; font-weight: 600; transform: translateX(5rem); opacity: 0; color: #929292; position: absolute; right: -12.5rem; top: 4.5rem; transition: 0.8s; }
.sum_img_box h3 span { display: inline-block; margin-left: 5.375rem; }
.sum_img_box>div { width: 100%; max-width: 8.9375rem; overflow: hidden; }
.sum_img_box>div:nth-child(1) { opacity: 0; transition: 0.8s; }
.sum_img_box>div:nth-child(2) { opacity: 0; transition: 0.8s; }
.sum_img_box>div img { width: 100%; }

.sum_sum { width: 100%; max-width: 1084px; display: flex; justify-content: flex-start; align-items: flex-start; opacity: 0; transform: translateY(3rem); transition: 0.8s; color: #fff; flex-direction: column; word-break: keep-all; overflow-wrap: break-word; }
.sum_sum ul { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3.625rem 3.375rem; }
.sum_sum ul li { width: 100%; text-align: left; }
.sum_sum ul li h3 { font-size: 1.25rem; line-height: 100%; font-weight: 700; }
.sum_sum ul li p { font-size: 1.0625rem; line-height: 128%; opacity: 0.5; border-top: 1px solid rgba(255,255,255,0.5); margin-top: 0.875rem; padding-top: 1.25rem; }

.sum_ori { text-align: left; position: relative; margin-top: 5.625rem; word-break: keep-all; overflow-wrap: break-word; }
.sum_ori p { font-size: 0.75rem; line-height: 166%; opacity: 0.4; transition: 1.6s; }




.main_wrap.on .main_txt_box::before,
.main_wrap.on .main_ori,
.main_wrap.on .main_bd,
.main_wrap.on .main_txt_box>div>div,
.main_wrap.on .main_txt_box h3 { opacity: 1; transform: translate(0); transition: 1.5s 0.6s; }

.main_wrap.on2 .main_txt_box { opacity: 0; transition: 1.2s 0s; }

.main_wrap.on2 .main_sum_box { z-index: 9; transition: 0s; }
.main_wrap.on2 .sum_sum,
.main_wrap.on2 .sum_txt_box>div { opacity: 1; transform: translate(0); transition: 1.2s 0.4s; }
.main_wrap.on2 .sum_img_box>div:nth-child(1) { opacity: 1; transform: translateY(-1.75rem); transition: 1.2s 0.4s; }
.main_wrap.on2 .sum_img_box>div:nth-child(2) { opacity: 1; transform: translateY(1.75rem); transition: 1.2s 0.4s; }


.c_brown { color: #c8b1a9; }

/*  */

.location_wrap { width: 200vw; height: 100%; position: relative; transition: 1.6s; display: flex; justify-content: flex-start; align-items: center; }

.location01 { width: 100vw; height: 100%; display: flex; justify-content: center; align-items: center; position: relative; }
.location02 { width: 100vw; height: 100%; display: flex; justify-content: center; align-items: center; position: relative; }

.location_map { width: 100%; max-width: 1060px; height: calc(100% - 7.1875rem); position: absolute; right: 0; bottom: 0; z-index: 1; overflow: hidden; display: flex; justify-content: center; align-items: center; }
.location_map::before { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; background: url(../img/location_map.jpg) right top no-repeat; background-size: cover; transform: scale(1.2); transition: 1.5s; }
.location_map img { width: 100%; display: none; transform: scale(1.2); }

.location_tit { position: absolute; max-width: 1034px; text-align: left; width: 100%; height: 100%; position: absolute; left: 0; top: 0; display: flex; justify-content: center; align-items: center; z-index: 9; opacity: 0; transform: translateX(-5rem); transition: 0.8s; }
.location_tit>div { transform: translateY(0rem); }
.location_tit h2 { font-family: "Gloock", serif; font-size: 6.25rem; line-height: 100%; letter-spacing: 0.6875rem; color: #074437; } 
.location_tit h5 { font-size: 1.75rem; margin-top: 1.25rem; line-height: 100%; opacity: 1; }
.location_tit span { display: inline-block; width: 4rem; height: 1px; background-color: #074437; margin-top: 6.25rem; }
.location_tit p { font-size: 1.3125rem; line-height: 100%; margin-top: 1.25rem; }
.location_tit h3 { font-size: 3.375rem; line-height: 118%; font-weight: 300; margin-top: 1.375rem; }
.location_tit h3 b { font-weight: 700; color: #074437; }

.swiper_location { width: 100%; height: 100%; margin: 0; padding: 0; position: absolute; left: 0; top: 0; z-index: 3; }

.location_txt_box { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 8; display: flex; justify-content: center; align-items: center; color: #fff; white-space: nowrap; }
.location_txt_box>div { width: 90%; max-width: 1500px; display: flex; justify-content: center; align-items: flex-start; gap: 2.25rem; transform: translateY(-1rem); }
.location_txt_box h5 { font-family: 'kessler'; font-size: 1rem; line-height: 100%; color: #cfbfad; letter-spacing: 0.0938rem; }
.location_txt_box h2 { font-family: "Gloock", serif; font-size: 4.125rem; line-height: 100%; margin-top: 1rem; letter-spacing: 0.5rem; }
.location_txt_box h3 { font-size: 2.0625rem; line-height: 100%; font-weight: 700; }
.location_txt_box p { font-size: 1rem; line-height: 206%; opacity: 0.7; margin-top: 2rem; }
.location_txt_line { width: 100%; height: 1px; position: relative; margin-top: 4rem; }
.location_txt_line::after { content: ''; width: 0%; height: 100%; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; }

.location_txt { opacity: 0; transform: translateX(-0); text-align: left; }
.location_txt2 { opacity: 0; transform: translateX(7rem); text-align: right; }

.location_bt_box { position: absolute; left: 0; right: 0; bottom: 7.5rem; margin: auto; z-index: 9; transition: 0.8s; opacity: 0; transform: translateY(3rem); }

.swiper_location2 { width: 342px; height: auto; position: relative; }
.swiper_location2 .swiper-wrapper { flex-direction: row; gap: 0rem; }
.swiper_location2 .swiper-slide { width: 75px; height: auto; position: relative; cursor: pointer; }
.swiper_location2 .location_img { height: 75px; position: relative; border-radius: 100%; overflow: hidden; transform: scale(1); }
.swiper_location2 .location_img::before { filter: grayscale(1); }
.swiper_location2 .location_img::after { content: ''; background: none; width: 100%; height: 100%; position: absolute; left: 0; top: 0; border-radius: 100%; border: 1px solid #fff; box-sizing: border-box; z-index: 9; }
.swiper_location2 h4 { font-family: 'kessler'; color: #cfbfad; font-size: 0.75rem; line-height: 100%; margin-bottom: 0.5rem; letter-spacing: 0.0625rem; opacity: 0; transform: translateY(2rem); }

.swiper_location2 .swiper-slide-thumb-active .location_img::before { filter: grayscale(0); }
.swiper_location2 .swiper-slide-thumb-active h4 { opacity: 1; transform: translate(0); transition: 1.2s 0s; }
.swiper_location2 .swiper-slide-thumb-active .location_img .location_circle circle { animation: drawCircle 5s linear forwards; }
/* .swiper_location2 .swiper-slide-thumb-active .location_img::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; border: 3px solid #fff; z-index: 9; box-sizing: border-box; border-radius: 100%; } */

.location_circle { position: absolute; inset: 0; width: 100%; height: 100%; left: 50%; top: 50%; transform: translate(-50%,-50%) rotate(-90deg); z-index: 9; }

.location_circle circle { fill: none; stroke: #fff; stroke-width: 8; stroke-dasharray: 312; stroke-dashoffset: 312; }

@keyframes drawCircle {
    to{
        stroke-dashoffset:0;
    }
}

.location_img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; transition: 0.8s; opacity: 1; background-color: #000; overflow: hidden; }
.location_img>div { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 3; }
.location_img::before { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0;  z-index: 2; transition: 1.5s; transform: scale(1.2); }
.location_img>div::before { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: url(../img/location_bg.png) center no-repeat; background-size: cover; z-index: 8; }
.location_img>div::after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: url(../img/location_bg2.png) center right no-repeat; background-size: cover; z-index: 8; }
.location_img.img01::before { background: url(../img/location_img01.jpg) center no-repeat; background-size: cover; opacity: 0.6; }
.location_img.img02::before { background: url(../img/location_img02.jpg) center no-repeat; background-size: cover; opacity: 0.9; }
.location_img.img03::before { background: url(../img/location_img03.jpg) center no-repeat; background-size: cover; }
.location_img.img04::before { background: url(../img/location_img04.jpg) center no-repeat; background-size: cover; }

.swiper_location .swiper-slide-active .location_img::before { transform: scale(1); transition: 3s; }
.swiper_location .swiper-slide-active .location_txt { opacity: 1; transform: translate(0); transition: 1.5s 0s; }
.swiper_location .swiper-slide-active .location_txt2 { opacity: 1; transform: translate(0); transition: 1.5s 0.4s; }
.swiper_location .swiper-slide-active .location_txt_line::after { width: 100%; transition: 1.9s 0s; }



.location_ori { text-align: center; position: absolute; left: 0; right: 0; margin: auto; z-index: 9; bottom: 2.25rem; opacity: 0; transform: translateY(3rem); transition: 0.8s; word-break: keep-all; overflow-wrap: break-word; }
.location_ori p { font-size: 0.75rem; line-height: 166%; opacity: 0.7; }

.location_ori.ori02 { color: #fff; }





.location_wrap.on2 { transform: translateX(-100vw); }


.location_wrap.on .location_map::before { transform: scale(1); transition: 3s 0s; }
.location_wrap.on .location_ori.ori01,
.location_wrap.on .location_tit { opacity: 1; transform: translate(0); transition: 1.2s 0.6s; }

.location_wrap.on2 .location_bt_box,
.location_wrap.on2 .location_ori.ori02 { opacity: 1; transform: translate(0); transition: 1.2s 0.6s; }

/*  */

.premium_wrap { width: 100%; height: 100vh; position: relative; overflow: hidden; display: flex; justify-content: center; align-items: center; transition: 1.6s; background-color: #dae0b8; }
.premium_wrap>div:first-child { width: 90%; max-width: 1640px; z-index: 9; transform: translateY(3rem); position: relative; }


.premium_tit { text-align: left; width: auto; display: flex; justify-content: flex-start; align-items: center; color: #074437; position: absolute; left: 0; top: 0; opacity: 0; transform: translateX(-5rem); }
.premium_tit>div { transform: translateY(-0rem); }
.premium_tit>div>div { display: flex; justify-content: flex-start; align-items: flex-end; gap: 1.125rem; margin-top: -2.125rem; }
.premium_tit h4 { font-size: 1.625rem; line-height: 100%; }
.premium_tit h2 { font-family: "Gloock", serif; font-size: 4.875rem; line-height: 100%; letter-spacing: 0.625rem; }
.premium_tit img { width: 3.8125rem; }


.premium_content_box { width: 100%; display: flex; justify-content: space-between; align-items: flex-start; transform: translateY(0rem); }
/* .premium_content_box { width: 100%; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); align-items: start; transform: translateY(0rem); } */
.premium_content { width: 100%; max-width: 235px; opacity: 0; transform: translateY(-4rem); }

.premium_content.con01 { margin-top: 16.875rem; margin-top: 16.25rem; }
.premium_content.con02 { margin-top: 13.5rem; margin-top: 11rem; margin-top: 11.5rem; }
.premium_content.con03 { margin-top: 10.125rem; margin-top: 11rem; }
.premium_content.con04 { margin-top: 6.75rem; }
.premium_content.con05 { margin-top: 3.375rem; }

.premium_txt { text-align: left; padding-left: 1.375rem; padding-bottom: 1.75rem; box-sizing: border-box; position: relative; white-space: nowrap; }
.premium_txt::before { content: ''; width: 1px; height: 100%; position: absolute; left: 0; top: 0; background-color: #074437; }
.premium_txt h3 { font-size: 1.125rem; line-height: 124%; color: #074437; font-weight: 600; }
.premium_txt p { font-size: 0.75rem; line-height: 166%; margin-top: 0.875rem; opacity: 0.7; }

.premium_img { width: 100%; position: relative; overflow: hidden; }
.premium_img img { width: 100%; }
.premium_img h6 { text-align: left; position: absolute; padding-left: 1.375rem; bottom: 1rem; color: #fff; font-size: 0.8125rem; line-height: 154%; }

.premium_ori { text-align: right; z-index: 9; word-break: keep-all; overflow-wrap: break-word; opacity: 0; transform: translateX(5rem); }
.premium_ori p { font-size: 0.75rem; line-height: 166%; opacity: 0.7; }



.premium_wrap.on .premium_tit,
.premium_wrap.on .premium_ori { opacity: 1; transform: translate(0); transition: 1.5s 0.6s; }
.premium_wrap.on .premium_content.con01 { opacity: 1; transform: translate(0); transition: 1.2s 0.6s; }
.premium_wrap.on .premium_content.con02 { opacity: 1; transform: translate(0); transition: 1.2s 0.7s; }
.premium_wrap.on .premium_content.con03 { opacity: 1; transform: translate(0); transition: 1.2s 0.8s; }
.premium_wrap.on .premium_content.con04 { opacity: 1; transform: translate(0); transition: 1.2s 0.9s; }
.premium_wrap.on .premium_content.con05 { opacity: 1; transform: translate(0); transition: 1.2s 1.0s; }
.premium_wrap.on .premium_content.con06 { opacity: 1; transform: translate(0); transition: 1.2s 1.1s; }

/*  */

.const_wrap { width: 150vw; height: 100dvh; position: relative; transition: 1.6s; display: flex; justify-content: flex-start; align-items: center; background-color: #f3eee8; }

.const01 { width: 100vw; height: 100%; display: flex; justify-content: center; align-items: center; position: relative; }
.const01>div { width: 90%; max-width: 1720px; height: 80%; display: flex; justify-content: flex-start; align-items: center; transform: translateY(1.5rem); }
.const02 { width: 50vw; height: 100%; display: flex; justify-content: flex-start; align-items: center; position: relative; }
.const02>div { display: flex; justify-content: flex-start; align-items: flex-start; flex-direction: column-reverse; gap: 3rem; transform: translateY(3rem); }


.const_bg_box { width: 100%; height: 100%; max-width: 1158px; position: relative; }
.const_bg { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; overflow: hidden; }
.const_bg::before { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; background: url(../img/const_img00.jpg) center no-repeat; background-size: cover; transform: scale(1.2); transition: 1.5s; }
.const_bg::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 2; background: url(../img/const_bg.png) left top no-repeat; background-size: cover; }
.const_bg img { display: none; width: 100%; transform: scale(1.2); }

.const_tit { position: absolute; text-align: left; z-index: 9; left: 5.375rem; top: 6.875rem; color: #fff; opacity: 0; transform: translateX(-5rem); transition: 0.8s; }
.const_tit img { width: 14.375rem; }
.const_tit h2 { font-size: 2.0625rem; line-height: 100%; display: flex; justify-content: flex-start; align-items: flex-end; gap: 0.625rem; margin-top: 3rem; font-weight: 700; }
.const_tit h2 span { display: inline-block; width: 9.375rem; height: 1px; position: relative; margin-bottom: 2px; }
.const_tit h2 span::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; background-color: #fff; }
.const_tit p { font-size: 1rem; line-height: 188%; margin-top: 3.25rem; }

.const_txt { width: 23.8125rem !important; position: absolute; right: 5.125rem; bottom: 3.75rem; z-index: 9; opacity: 0; transform: translateX(5rem); transition: 0.8s; transform: scale(1) !important; }

.const_txt_box { text-align: left; white-space: nowrap; }
.const_txt_box>div { transform: translateY(0rem); }
.const_txt_box>div>div { margin-left: 4.25rem; opacity: 0; transform: translateX(5rem); transition: 0.8s; }
.const_txt_box h3 { font-size: 1.75rem; line-height: 100%; font-weight: 700; }
.const_txt_box h3 span { color: #074437; }
.const_txt_box h2 { font-family: "Gloock", serif; font-size: 3.25rem; line-height: 100%; color: #074437; margin-top: 0.75rem; letter-spacing: 0.125rem; }
.const_txt_box p { font-size: 1rem; line-height: 188%; opacity: 0.7; margin-top: 3.25rem; }
.const_txt_box h4 { font-size: 1.125rem; line-height: 183%; margin-top: 2.25rem; }
.const_txt_box img { width: 10.1875rem; margin-top: 4rem; }

.const_txt_box ul { margin-top: 4.25rem; display: flex; justify-content: flex-start; align-items: flex-start; gap: 0.375rem; flex-direction: column; opacity: 0; transform: translateY(3rem); transition: 0.8s; }
.const_txt_box ul li { display: flex; justify-content: flex-start; align-items: center; }
.const_txt_box ul li h5 { font-size: 1.375rem; line-height: 100%; color: #074437; font-weight: 700; background-color: #d4cfca; border-radius: 0 5rem 5rem 0; padding: 1rem 2rem; padding-left: 2.25rem; position: relative; z-index: 9; }
.const_txt_box ul li p { margin-top: 0; opacity: 1; color: #074437; line-height: 100%; font-weight: 700; padding: 0.625rem 1.875rem; padding-right: 4.625rem; border-radius: 0 5rem 5rem 0; border: 1px solid #d4cfca; border-left: none; margin-left: -0.5rem; }
.const_txt_box ul li:nth-child(2) p { padding-right: 7.5rem; }

.const_list { opacity: 0; transform: translateX(5rem); transition: 0.8s; }
.const_list ul { display: grid; grid-template-rows: repeat(4, auto); grid-auto-flow: column; grid-auto-columns: 1fr; gap: 0.75rem 1.5rem; text-align: left; }
.const_list ul li { font-size: 0.9375rem; line-height: 100%; font-weight: 600; }

.const_img_box { width: 100%; position: relative; display: grid; grid-template-columns: repeat(12, 1fr); gap: 1rem; gap: 0.5625rem; opacity: 0; transform: translateY(3rem); transition: 0.8s; }
.const_img_box h2 { position: absolute; right: 0; top: -2rem; z-index: 2; font-size: 1.25rem; line-height: 100%; font-weight: 800; color: #074437; text-transform: uppercase; display: inline-block; letter-spacing: 0; display: flex; justify-content: flex-end; align-items: center; gap: 0.4375rem; }
.const_img_box h2 b { display: inline-block; width: 7px; height: 7px; border-radius: 100%; background-color: #074437; }
.const_img_box h2 b:nth-child(2) { background-color: #797979; }
.const_img_box .const_img:nth-of-type(-n+3) { grid-column: span 4; }
.const_img_box .const_img:nth-of-type(n+4) { grid-column: span 3; }
.const_img { width: 100%; position: relative; overflow: hidden; }
.const_img img { width: 100%; display: block; transition: 0.8s; }
.const_img .imgc { font-size: 0.9375rem; line-height: 100%; right: 0.375rem; bottom: 0.375rem; }

.const_img:hover img { transform: scale(1.05); }



.const_wrap.on2 { transform: translateX(-50vw); }


.const_wrap.on .const_bg::before { transform: scale(1); transition: 3s 0s; }
.const_wrap.on .const_tit,
.const_wrap.on .const_txt,
.const_wrap.on2 .const_txt,
.const_wrap.on .const_txt_box>div>div,
.const_wrap.on .const_txt_box ul,
.const_wrap.on2 .const_txt_box>div>div,
.const_wrap.on2 .const_txt_box ul { opacity: 1; transform: translate(0); transition: 1.2s 0.6s; }

.const_wrap.on2 .const_list,
.const_wrap.on2 .const_img_box { opacity: 1; transform: translate(0); transition: 1.2s 0.6s; }

/*  */

.contact_wrap { width: 100%; height: 100%; position: relative; transition: 1.6s; display: flex; justify-content: center; align-items: flex-end; }

.contact_bg { width: 100%; max-width: 706px; height: calc(100% - 7.1875rem); overflow: hidden; position: relative; }
.contact_bg::before { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: url(../img/contact_bg.jpg) center no-repeat; background-size: cover; transform: scale(1.2); }

.contact_box { width: 90%; height: 100%; max-width: 1214px; display: flex; justify-content: center; align-items: center; position: relative; z-index: 9; transform: translateY(3rem); flex-direction: column; mix-blend-mode: darken; }

.contact_wrap .sub_contact_box { width: 100%; }
.contact_wrap .sub_contact_bottom { width: auto; opacity: 1; transform: translateY(0rem); }
.contact_wrap .sub_contact_bottom>div:last-child { flex-direction: column; align-items: center; justify-content: center; gap: 0.625rem; margin-top: 3.75rem; opacity: 0; transform: translateY(3rem); }
.contact_wrap .sub_contact_bottom>div:last-child { flex-direction: column; align-items: center; justify-content: center; gap: 0.625rem; margin-top: 3.75rem; }
.contact_wrap .sub_contact_map_box { width: 100%; max-width: 579px; height: 244px; border: none; margin-bottom: 3.75rem; }
.contact_wrap .sub_contact_txt_box { width: 100%; max-width: 456px; margin-top: 0; }
.contact_wrap .sub_contact_add { width: 100%; justify-content: space-between; text-align: center; flex-direction: row; }
.contact_wrap .sub_contact_add p { display: flex; justify-content: center; align-items: flex-start; gap: 0.5rem; }
.contact_wrap .sub_contact_add p i { display: inline-block; text-align: center; line-height: 124%; }

.sub_contact_top { display: flex; justify-content: center; align-items: center; gap: 5.25rem; }

.contact_tit { text-align: center; width: auto; display: flex; justify-content: center; align-items: center; color: #074437; opacity: 0; transform: translateY(-3rem); }
.contact_tit>div { transform: translateY(-0rem); }
.contact_tit h2 { font-family: "Gloock", serif; font-size: 4.875rem; line-height: 100%; letter-spacing: 0.25rem; padding-left: 0.25rem; }
.contact_tit h5 { font-size: 1.5625rem; line-height: 100%; margin-top: 1rem; }

.contact_txt_box { text-align: center; margin-top: 1.75rem; }
.contact_txt_box p { font-size: 1rem; line-height: 160%; color: #7e7e7e; } 
.contact_txt_box p span { color: #000; }

.sub_contact_map_box img { width: 100%; }
/* .sub_contact_map_box::before { content: ''; width: 0; height: 1px; position: absolute; left: -1px; top: -1px; background-color: #000; transition: 0.5s; }
.sub_contact_map_box::after { content: ''; width: 0; height: 1px; position: absolute; right: -1px; bottom: -1px; background-color: #000; transition: 0.5s; }
.sub_contact_map_box span { width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.sub_contact_map_box span::before { content: ''; width: 1px; height: 0; position: absolute; left: -1px; bottom: -1px; background-color: #000; transition: 0.5s; }
.sub_contact_map_box span::after { content: ''; width: 1px; height: 0; position: absolute; right: -1px; top: -1px; background-color: #000; transition: 0.5s; } */

.sub_contact_map_box:hover::before,
.sub_contact_map_box:hover::after { width: calc(100% + 2px); }
.sub_contact_map_box:hover span::before,
.sub_contact_map_box:hover span::after { height: calc(100% + 2px); }

.contact_wrap.on .contact_bg::before { transform: scale(1); transition: 2.5s 0s; }
.contact_wrap.on .contact_tit,
.contact_wrap.on .sub_contact_map_box,
.contact_wrap.on .sub_contact_bottom>div:last-child { opacity: 1; transform: translate(0); transition: 1.2s 0.6s; }

/*  */

.right_scroll_wrap { width: 12px; height: 230px; margin: auto; overflow: hidden; position: absolute; z-index: 99; left: 3.5rem; top: 0; bottom: 0; transform: translateY(1rem); opacity: 1; display: none; }
.right_scroll_img { width: 100%; height: 83.008px; background: url(../img/scroll.png) center no-repeat; transition: 0.3s; }
.right_scroll { width: 1px; height: 130px; background-color: rgba(0,0,0,0.3); margin: auto; margin-top: 16px; position: relative; transition: 0.3s; }
.right_scroll span { position: absolute; content:''; width: 10px; height: 10px; background-color: #222a65; left: -4px; top: 0; border-radius: 100%; transition: background 0.3s; }

.right_scroll_wrap.white .right_scroll_img { background: url(../img/scroll2.png) center no-repeat; }
.right_scroll_wrap.white .right_scroll { background-color: rgba(255,255,255,0.3); }
.right_scroll_wrap.white .right_scroll span { background-color: #fff; }

/*  */

#footer { overflow: visible; }

.footer { width: 100%; padding: 3.5rem 0 5.625rem; box-sizing: border-box; z-index: 90; background-color: #074437; color: #fff; position: relative; box-sizing: border-box; text-align: center; letter-spacing: -0.5px; font-size: 0.875rem; display: flex; justify-content: space-between; align-items: flex-start; }
.footer:after { content:''; width: 100%; height: 100vh; position: absolute; left: 0; top: -100vh; display: none; }
.footer>div { width: 100%; }
.footer>div>div { width: 100%; display: flex; justify-content: space-between; align-items: flex-start; }

.footer_top { padding: 0 6.25rem; box-sizing: border-box; align-items: center !important; border-bottom: 1px solid rgba(255,255,255,0.3); padding-bottom: 2rem; }
.footer_top>div { width: 100%; display: flex; justify-content: center; align-items: flex-start; gap: 1.75rem; flex-direction: column; }
.footer_top>div>div { width: 100%; display: flex; justify-content: space-between; align-items: center; }

.footer_logo { width: 14.5rem; }
.footer_top>div>.footer_logo_wrap { width: auto; justify-content: flex-start; gap: 1.5rem; }
.privacy_bt { display: inline-block; padding: 0.625rem 1.125rem; border: 1px solid rgba(255,255,255,0.5); border-radius: 2rem; color: #fff; font-size: 0.9375rem; font-weight: 600; line-height: 100%; text-decoration: none; transition: 0.3s; }
.privacy_bt:hover { background-color: #fff; color: #074437; }

.footer_info { display: flex; justify-content: center; align-items: center; }
.footer_info li { font-size: 1.125rem; padding: 0 1.25rem; line-height: 100%; position: relative; font-weight: 600; }
.footer_info li:first-child { padding-left : 0; }
.footer_info li:after { position: absolute; content:''; width: 1px; height: 0.875rem; background-color: #fff; opacity: 0.3; right: 0; bottom: 0; top: 0; margin: auto; }
.footer_info li span { color: #489b7f; }
.footer_info li:last-child:after { display: none; }

.footer_const { display: flex; justify-content: flex-start; align-items: center; }
.footer_const li { display: flex; justify-content: flex-start; align-items: center; gap: 0.375rem;  padding: 0 1rem; position: relative; line-height: 100%; font-weight: 500; }
.footer_const li:last-child { padding-right: 0; }
/* .footer_const li:after { position: absolute; content:''; width: 1px; height: 0.875rem; background-color: #000; opacity: 0.2; right: 0; bottom: 0; top: -1px; margin: auto; display: none; } */
.footer_const li:last-child:after { display: none; }
.footer_const li h4 { font-size: 0.875rem; line-height: 100%; font-weight: 400; }
.footer_const li h2 { font-size: 1.125rem; line-height: 100%; font-weight: 600; }
/* .footer_const li img { margin-left: 0.25rem; } */
.footer_const li h4 span { font-size: 1rem; display: inline-block; margin-left: 0.25rem; }
.footer_const li:nth-child(1) img { width: 8.5rem; }
.footer_const li:nth-child(2) img { width: 10.6875rem; }
.footer_const li:nth-child(3) img { width: 5.9375rem; }

.footer_const_wrap { display: flex; flex-direction: column; align-items: flex-end; gap: 0.75rem; }
.footer_kait { font-size: 0.8125rem; line-height: 150%; opacity: 0.6; text-align: right; }

.footer_pr { display: flex; justify-content: flex-start; align-items: center; margin-top: 1.875rem; }
.footer_pr li { font-size: 1rem; padding: 0 0.75rem; line-height: 100%; position: relative; }
.footer_pr li:first-child { padding-left : 0; }
.footer_pr li:after { position: absolute; content:''; width: 1px; height: 0.8125rem; background-color: #fff; opacity: 0.3; right: 0; bottom: 1px; top: 0; margin: auto; }
.footer_pr li span { color: #489b7f; }
.footer_pr li:last-child:after { display: none; }

.footer_middle { padding: 0 6.25rem; box-sizing: border-box; text-align: left; }
.footer_middle>div { width: 100%; display: flex; justify-content: space-between; align-items: flex-start; }
.footer_middle p { line-height: 180%; font-weight: 500; opacity: 0.4; margin-top: 2rem; }
.footer_middle p:nth-child(3) { margin-top: 0; }
.footer_middle p b { font-size: 16px; font-weight: 300; } 
.footer_middle p b span { font-weight: 500; }
.footer_middle p br.tab { display: none; } 
.footer_middle h5 { line-height: 100%; opacity: 0.4; font-weight: 300; margin-top: 0rem; opacity: 0.4; line-height: 148%; }
.footer_middle h5 br.tab { display: none; } 

.footer_by { margin-right: 5.625rem; position: relative; display: inline-block; padding-top: 2.125rem; padding-left: 2.25rem; box-sizing: border-box; }
.footer_by::before { content: ''; width: 1px; height: 230%; background-color: rgba(255,255,255,0.3); position: absolute; left: 0; top: 0; }
.footer_by h4 { font-size: 1rem; line-height: 156%; font-weight: 700; }
.footer_by h4 span { color: #828282; }
.footer_by h4 b { font-size: 1.375rem; }
.footer_by h2 { font-size: 2.0625rem; line-height: 100%; margin-top: 2rem; font-weight: 700; }
.footer_by h2 span { font-size: 1rem; line-height: 100%; }

.footer_bottom { padding: 0 6.25rem; box-sizing: border-box; margin-top: 1rem; align-items: flex-end !important; }
.footer_bottom h6 { line-height: 100%; font-weight: 500; letter-spacing: 0; }

.footer_bottom .top_bt { width: 47px; height: 47px; background-color: #fff; z-index: 99;position: relative; display: inline-block; cursor:pointer; }
.footer_bottom .top_bt:before { content:''; width: 6px; height: 6px; position: absolute; left: 0; right: 0; top: 0.125rem; bottom: 0; margin: auto; border-left: 1px solid #000; border-top: 1px solid #000; transform: rotate(45deg); z-index: 9;}


.footer.end:after { display: block; }


/*  */


.guest_pop_wrap, .privacy_pop_wrap { width: 62%; height: 100%; position: fixed; right: -64%; top: 0; z-index: 99999999; display: flex; justify-content: center; align-items: center; transition: 0.8s 0s; }
.guest_pop_wrap::before, .privacy_pop_wrap::before { content: ''; width: 100%; height: 92%; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; border-radius: 2rem; }
.guest_pop_bg_bt { display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; cursor: pointer; z-index: 1; }

.guest_pop { width: 84%; height: 78%; max-width: 1300px; position: relative; display: flex; justify-content: center; align-items: flex-start; z-index: 9; flex-wrap: wrap; }
.guest_pop img { width: 100%; }
.guest_pop_bg, .privacy_pop_bg { width: 100%; height: 100%; position: fixed; left: -100%; top: 0; z-index: 99999998; background-color: #000; opacity: 0.8; transition: 0.6s 0.2s; }
.guest_pop_close, .privacy_pop_close { width: 3.75rem; height: 3.75rem; position: absolute; right: 1.875rem; top: 3.875rem; cursor: pointer; transition: 0.5s; z-index: 99; background-color: #000; border-radius: 100%; }
.guest_pop_close:after, .privacy_pop_close:after { content:''; width: 1px; height: 35%; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; transform: rotate(45deg); }
.guest_pop_close:before, .privacy_pop_close:before { content:''; width: 1px; height: 35%; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; transform: rotate(-45deg); }
.guest_pop_close:hover, .privacy_pop_close:hover { transform: rotate(360deg); }

.guest_pop_tit { text-align: center; width: 100%; margin-bottom: 1.875rem; display: flex; justify-content: flex-start; align-items: flex-end; }
.guest_pop_tit h2 { font-family: 'Futura Std', sans-serif; font-size: 2.5625rem; line-height: 100%; text-transform: uppercase; }
.guest_pop_tit h5 { font-size: 1rem; line-height: 100%; position: relative; padding-left: 1rem; margin-left: 1.125rem; transform: translateY(-0.25rem); }
.guest_pop_tit h5::before { content: ''; width: 1px; height: 90%; position: absolute; left: 0; bottom: 0; top: 0; margin: auto; background-color: #000; opacity: 0.5; }
.guest_pop_tit span { display: inline-block; width: 1px; height: 2.375rem; background-color: #404040; margin: auto; margin-top: 2.1875rem; }

.guest_pop_box { width: 100%; height: calc(100% - 4.5rem); overflow-y: auto; overflow-x: hidden; scrollbar-width: none; -ms-overflow-style: none; }

.guest_pop_box::-webkit-scrollbar { display: none; }

.guest_pop_wrap.active, .privacy_pop_wrap.active { right: 2%; transition: 0.8s 0.2s; }
.guest_pop_bg.active, .privacy_pop_bg.active { left: 0; transition: 0.6s 0s; }
.privacy_pop_wrap { z-index: 100000001; }
.privacy_pop_bg { z-index: 100000000; }


.guest_wrap { position: fixed; left: 0; top: -100%; z-index: 99999999; width: 100%; height: 100vh; max-height: 1000px; overflow: hidden; text-align: left; display: flex; justify-content: center; align-items: center; background: #fff; transition: 0.8s 0s; box-sizing: border-box; overflow-x: hidden; }
.guest_wrap { position: relative; top: 0; width: 100%; height: auto; max-height: revert; margin: auto; overflow: visible; }
.guest_wrap>div>div:last-child { width: 100%; }

.guest_bg { position: fixed; left: 0; bottom: -100%; z-index: 99999998; width: 100%; height: 100%; background-color: #000; opacity: 0.7; transition: 0.6s 0s; cursor: pointer; }

.guest_wrap.active { top: 0; transition: 0.8s 0s; }
.guest_bg.active { bottom: 0; transition: 0.6s 0s; }

body.sub .guest_wrap { position: relative; top: 0; z-index: 9; }
body.sub .guest_close { display: none; }

@media all and (min-width: 800px) { 
/*	body.sub .guest_wrap { padding-top: 130px; }*/
}

/*.guest_wrap>div { overflow-x: hidden; padding-bottom: 3px; }*/
.guest_wrap>div { padding-bottom: 3px; }

/*.guest_wrap>div>div:last-child { width: 90%; max-width: 1300px; margin: auto; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; opacity: 0; transform: translateY(60px); }*/
.guest_wrap>div>div:last-child { width: 100%; max-width: 1300px; margin: auto; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }

/*.guest_tit { text-align: center; margin-bottom: 55px; opacity: 0; transform: translateY(-50px); }*/
.guest_tit { text-align: center; margin-bottom: 55px; }
.guest_tit h1 { font-size: 55px; line-height: 100%; }
.guest_tit p { font-size: 15px; line-height: 100%; opacity: 0.7; margin-top: 25px; font-weight: 500; }


.guest_wrap h2 { font-size: 18px; line-height: 100%; margin-bottom: 18px; font-weight: 600; }
.guest_box h6 { font-size: 14px; line-height: 22px; position: absolute; right: 0; top: 0; font-weight: 500; }
.guest_box b.red { color: #f71313; }
.guest_box p b.red { margin-left: 3px; }

.guest_wrap .guest_box { width: 100%; margin-right: 0%; margin-bottom: 40px; }
.guest_wrap .guest_box:nth-child(2n) { margin-right: 0; }
.guest_wrap .guest_box input { font-family: "Asta Sans", sans-serif; }

.guest_box.m { width: 100% !important; margin-top: 10px; position: relative; }

.guest_ori { width: 100%; display: flex; justify-content: center; align-items: center; margin-top: 40px; }
/*.guest_box h6 { font-size: 14px; line-height: 100%; font-weight: 500; }*/
/* .guest_kakao {  } */
.guest_kakao a { display: flex; justify-content: center; align-items: center; }
.guest_kakao p { font-size: 14px; line-height: 100%; position: relative; display: inline-block; margin-left: 10px; transform: translateY(-1px); font-weight: 500; }
.guest_kakao p:after { content:''; width: 0; height: 1px; background-color: #25282a; left: 0; bottom: -5px; position: absolute; transition: 0.4s; }

.guest_kakao:hover p:after { width: 100%; }

.per_agree_box { width: 100%; height: 175px; overflow: scroll; border: 1px solid #b6b6b6; box-sizing: border-box; padding: 0 25px; padding-top: 20px; letter-spacing: -1px;
font-size: 14px; line-height: 30px; color: #6f6f6f; padding-bottom: 40px; }
.per_agree_box::-webkit-scrollbar { display: block; width: 10px; height: 100%; background-color: #f3f3f3; }
.per_agree_box::-webkit-scrollbar-thumb { width: 100%; background-color: #cacaca; border-radius: 20px; }
.per_agree_box b { font-size: 16px; color: #25282a; }
.per_agree_box a { color: #ff4e00; position: relative; margin-left: 10px; top: -1px; }
.per_agree_box a.pc { display: inline-block; }
.per_agree_box a.m { display: none; }
.per_agree_box a:after { content:''; width: 100%; height: 1px; position: absolute; left: 0; bottom: 0; background-color: #ff4e00; }

.per_agree_bt_box { text-align: left; font-size: 13px; font-weight: 400; line-height: 15px; margin-top: 20px; height: 20px; position: relative; }
/*.per_agree_bt_box input[type="radio"] { display: none; }
.per_agree_bt_box input[type="radio"] + label { display: inline-block; position: relative; padding-left: 27px; cursor: pointer; margin-right: 30px; }
.per_agree_bt_box input[type="radio"] + label:before { content: ''; position: absolute; left: 0; top: 0; width: 18px; height: 18px; background: #fff; border: 1px solid #4d4d4d; border-radius: 100%; box-sizing: border-box; }
.per_agree_bt_box input[type="radio"] + label:after { content: ''; position: absolute; top: 6px; left: 6px; width: 6px; height: 6px; background: transparent; border-radius: 100%; }
.per_agree_bt_box input[type="radio"] + label:last-child { margin-right: 0; }
.per_agree_bt_box input[type="radio"]:checked + label:before { background: #25282a; border: 1px solid #25282a; }
.per_agree_bt_box input[type="radio"]:checked + label:after { background: #fff; }*/

.radio_bt[type='radio'] { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 1rem; height: 1rem; border: 1px solid #aaa; border-radius: 100%; outline: none; position: relative; cursor: pointer; box-sizing: border-box; }
.radio_bt[type='radio']:after { content:''; width: 0.5rem; height: 0.5rem; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; background-color: #0075ff; border-radius: 100%; display: none; }
.radio_bt[type='radio']:checked { border-color: #0075ff; }
.radio_bt[type='radio']:checked:after { display: block; }
.radio_bt[type='radio'] + label { margin-right: 0.25rem; }

.per_check_box { text-align: center; margin-top: 30px; }
.per_check_box label { font-size: 18px; }
.per_check_box input#agreeYny { display: none; }
.per_check_box input#agreeYny + label { cursor: pointer; position: relative;}
.per_check_box input#agreeYny + label > span { vertical-align: middle; padding-left: 8px; }
.per_check_box input#agreeYny + label:before { content:""; display: inline-block; width: 19px; height: 19px; border:2px solid #bbb; border-radius: 2px; vertical-align: middle; margin-top: 2px; }
.per_check_box input#agreeYny + label:after { content:''; width: 9px; height: 5px; border: 2px solid #ddd; border-top: 0; border-right: 0; transform: rotate(-45deg); transform-origin: center; position: absolute; left: 6px; top: 2px; bottom: 0; margin: auto; }

input#agreeYny:checked + label:before { content:""; background-color: #0075ff; border-color: #0075ff; }
input#agreeYny:checked + label:after { border-color: #fff; }

/**/


.info_box { width: 100%; text-align: left; }

.info_box>p { width: 100%; border: 1px solid #b6b6b6; border-top: 1px solid #25282a; box-sizing: border-box; font-size: 13px;  padding: 30px; padding-left: 22px; margin-bottom: 0px; }

.info_box>ul { border-top: 1px solid #25282a; box-sizing: border-box; text-align: left; border-bottom: 1px solid #b6b6b6; box-sizing: border-box; border-top: none; overflow: hidden; padding-top: 2px; }
.info_box>ul>li { float: left; width: 50%; height: 60px; vertical-align: top; border-top: 1px solid #b6b6b6; position: relative; box-sizing: border-box;  justify-content: flex-start; align-items: center; flex-wrap: wrap; }
.info_box>ul>li p { float: left; line-height: 58px; font-size: 16px; padding-left: 2px; width: 100%; font-weight: 500; box-sizing: border-box; position: relative; }
/*.info_box>ul>li:after { content:''; width: 105px; height: 1px; background-color: #25282a; position: absolute; left: 0; top: -1px; z-index: 9; }*/

.info_box>ul>li:nth-child(2n-1) { width: 9%; border-top: 1px solid #25282a; }
.info_box>ul>li:nth-child(2n) { width: 41%; }
.info_box>ul>li:last-child { width: 91%; height: auto; }
.info_box>ul>li:nth-last-child(2) { width: 9%; }
.info_box>ul>li:nth-child(4),.info_box>ul>li:nth-child(6) { padding: 17px 0; padding-left: 10px; }

.info_box.adress>ul { border-top: 1px solid #25282a; box-sizing: border-box; }
.info_box.adress>ul>li { width: 100%; height: 150px; border-bottom: 1px solid #b6b6b6; box-sizing: border-box; }
/*.info_box.adress>ul>li>p { float: left; }*/

.info_box input { font-size: 16px; height: 100%; line-height: 31px; border: none; outline: none; margin-top: 0px; padding-left: 10px; text-align: left; box-sizing: border-box; color: #25282a; }
.info_name { width: 100%; }

.info_number_box { height: 100%; float: left; }

.info_number01 { width: 65px; height: 100%; float: left; background: none; border: none; margin-top: 0px; padding: 0 5px; font-size: 16px; line-height: 31px; }
.info_number02 { width: 50px; float: left; }
.info_number03 { width: 50px; float: left; }
.info_box>ul>li span { float: left; line-height: 60px; margin: 0 5px; }

.info_address { width: 100%; float: left; }
.info_address>ul { width: 100%; }
.info_address>ul>li { width: 100%; height: 60px; border-bottom: 1px solid #b6b6b6; box-sizing: border-box; }
.info_address>ul>li:last-child { border: none; }
/*.info_address>ul>li p { float: left; }*/

.info_address01 { width: 15%; height: 33px; float: left; margin-right: 1%; }
/*.info_address03 { width: 34%; height: 33px; float: left; margin-right: 1%; }*/
.info_address03 { width: 65%; height: 33px; float: left; margin-right: 1%; }
.info_address04 { width: 30%; height: 33px; float: left; margin-right: 3%; }
.info_address05 { width: 50%; height: 33px; float: left; }
.info_address02 { width: 120px;; height: 35px !important; margin-top: 12px !important; float: left; margin-left: 1%; text-align: center !important; padding: 0 !important; cursor: pointer; background-color: #25282a !important; 
border: 1px solid #25282a !important; color: #fff !important; font-size: 12px !important; float: right; }


.info_bt_box { float: left; text-align: left; font-size: 13px; font-weight: 400; line-height: 16px; margin-top: 0px; height: 100%; position: relative; box-sizing: border-box; }
.info_bt_box input[type="radio"] { display: none; }
.info_bt_box input[type="radio"] + label { display: inline-block; position: relative; padding-left: 27px; cursor: pointer; margin-right: 25px; }
.info_bt_box input[type="radio"] + label:before { content: ''; position: absolute; left: 0; top: 0; width: 18px; height: 18px; background: #fff; border: 1px solid #4d4d4d; border-radius: 100%; box-sizing: border-box; }
.info_bt_box input[type="radio"]:checked + label:after { content: ''; position: absolute; top: 5px; left: 5px; width: 8px; height: 8px; background: #101f3a; border-radius: 100%; }


/**/

.guest_bt_box { width: 260px; height: 66px; margin: auto; margin-top: 0px; display: flex; justify-content: space-between; text-align: center; color: #25282a; font-size: 18px; }
.guest_bt_box>div { width: 100%; height: 100%; line-height: 64px; }
.guest_bt_box>div>a { width: 100%; height: 100%; display: block; }
.guest_regi_bt { border: 1px solid #25282a; margin-right: 0px; }
.guest_cancle_bt { background-color: #cfcfcf; }

.guest_regi_bt:hover { background-color: #25282a; color: #fff; }


.guest_close { position: absolute; top: 20px; right: 25px; z-index: 9; cursor: pointer; display: flex; justify-content: center; align-items: center; padding: 10px; }
.guest_close p { font-family: 'Futura Std', sans-serif; font-size: 12px; line-height: 100%; text-transform: uppercase; margin-right: 15px; margin-top: 1px; letter-spacing: 0; }
.guest_close>span { width: 20px; height: 20px; position: relative; display: block; }
.guest_close>span:before { content:''; width: 100%; height: 1px; background-color: #25282a; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; transform: rotate(45deg); }
.guest_close>span:after { content:''; width: 100%; height: 1px; background-color: #25282a; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; transform: rotate(-45deg); }

.m_br { display: none; }


.guest_wrap.active .guest_tit { opacity: 1; transform: translate(0); transition: 0.8s 0.2s; }
.guest_wrap.active>div>div:last-child { opacity: 1; transform: translate(0); transition: 0.8s 0.7s; }


/**/

.guest_wrap.ok { height: auto; padding: 60px 0 20px; }
.guest_ok_box { width: 100%; max-width: 1300px; margin: auto; position: relative; text-align: center; transform: translateY(20px); }

.guest_ok_box>h3 { font-size: 33px; line-height: 40px; font-weight: 700; }
.guest_ok_box>p { font-size: 15px; line-height: 30px; opacity: 0.7; margin-top: 30px; margin-bottom: 120px; }

.guest_ok_bg { position: absolute; right: -80px; top: -120px; }

/**/


/*서브*/
.sum_deco{ position: absolute; }
.sub_top .sum_deco.d01{ width: 230px; top: 5rem; right: 8%;}
.sub_top .sum_deco.d02{ width: 230px; bottom: -10rem; left: 8%; transform: rotate(180deg); }
.sub_top.active .sum_deco.d01{opacity: 1; top: 9.0625rem; transition: 1s 0s; }
.sub_top.active .sum_deco.d02{opacity: 1; bottom: -7rem; transition: 1s 0s; }

.sub_top01 { position: relative; left: 0; top: 0; width: 100%; height: 280px; z-index: 99; margin-top: 0px; }
.sub_top01:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: url(../img/sub_top.png) center top no-repeat; background-size: cover; z-index: 2; }
.sub_top_img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; }

.sub_top01 .sub_top_img { background: url(../img/sub_top.jpg) center top 10% no-repeat; background-size: cover; animation: sub_top_img 2.0s 0s both; }

.sub_top_txt { width: 100%; position: absolute; left: 0; right: 0; top: 65%; margin: auto; z-index: 9; color: #000; text-align: center; display: flex; justify-content: center; align-items: center;  }
.sub_top_txt h5 { font-size: 16px; line-height: 100%; font-weight: 300; letter-spacing: 5px; text-transform: uppercase; }
.sub_top_txt>div { width: 95px; height: 1px; background-color: #fff; margin: 0 15px; }
.sub_top_txt h3 {    font-family: 'poppins'; font-size: 2.063rem; text-transform: uppercase; line-height: 100%; font-weight: 700; letter-spacing: 10px; animation: sub_top_txt 1.0s 0.4s both; }

.sub_page{width: 100%; max-width: 1100px; margin: 0 auto;}
.sub_page img{width: 100%;}

@keyframes sub_img {
from { background: url(../img/sub_top.jpg) center bottom no-repeat; background-size: cover; }
to{ }
}
@keyframes sub_top_img {
from { transform: scale(1.2); }
to{ }
}
@keyframes sub_top_txt {
from { opacity: 0; letter-spacing: 50px; }
to{ }
}

#snb_wrap { width: 90%; height: 65px; position:relative; margin: auto; z-index: 90; border-bottom: 1px solid #000; }
#snb { width: 480px; height: 65px; position: absolute; right: 16%; top: 0; }
#snb:after {content:""; display:block; clear:both; }
#snb > li { float: left; width: 200px; position:relative; height: 65px; text-align: left; box-sizing: border-box; color: #000; }
#snb > li > a:after { content:''; position: absolute; width: 1px; height: 20px; background-color: #adadad; right: 0; top: 0; bottom: 0; margin: auto; }
#snb > li:first-child { width: 60px; }
#snb > li:first-child img { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; }
#snb > li:nth-child(3) { width: 220px; }
#snb > li:nth-child(3) > a:after { display: none; }
#snb > li:first-child + li > a {background:url('../img/snb-arr.gif') no-repeat 100% 50%; }
#snb > li:first-child + li + li > a { margin-top:1px; color: #000; }
/*#snb > li:first-child + li + li { border-bottom: 1px solid #e8e8e8; }*/
#snb > li:first-child + .ov {margin-left:0;}
#snb > li:nth-child(2):after { content:''; width: 8px; height: 8px; border-top: 1px solid #666; border-right: 1px solid #666; transform: rotate(45deg); position: absolute; right: 18px; top: 29px; transition:0.3s; }
#snb > li:nth-child(3):after { content:''; width: 8px; height: 8px; border-top: 1px solid #666; border-right: 1px solid #666; transform: rotate(45deg); position: absolute; right: 1px; top: 29px; transition:0.3s; }
#snb .ov {margin-left:-1px;}
#snb .ov > a { display: block; height: 65px; line-height: 65px; padding: 0 15px; font-size: 14px; color:#000; min-width:160px; font-weight:400; }

#snb > li:nth-child(2):hover:after { transform: rotate(135deg); top: 27px; }
#snb > li:nth-child(3):hover:after { transform: rotate(135deg); top: 27px; }

#snb .ov ul {position:absolute;left:0;top:100%;min-width:100%;background:#fff; display:none; }
#snb .ov ul li { border:1px solid #c2c2c2;margin-top:-1px; font-weight: 400; }
#snb .ov ul li:first-child {margin-top:0;}
#snb .ov ul li a { display:block;font-size:11.5px; color: #000; padding:11px 15px;white-space:nowrap; letter-spacing: 0; }
#snb .ov:hover ul {display:block;}
#snb .ov ul li a:hover { background: #ebebeb; color: #000; }
#snb .ov a { text-transform: uppercase; }
/*#snb .ov:last-child a { text-transform: uppercase; }*/

.sub_ori { width: 100%; max-width: 1100px; margin: auto; margin-top: 2rem; background-color: #f3f3f3; text-align: left; padding: 25px 30px; box-sizing: border-box; display: flex; justify-content: flex-start; align-items: center; }
.sub_ori>div { width: 55px; height: 55px; min-width: 55px; border-radius: 100%; background: #f18d00 url(../sub/ori.png) center no-repeat; margin-right: 22px; }
/* .sub_ori ul {  } */
.sub_ori ul li { font-size: 13px; line-height: 155%; color: #383838; font-weight: 400; letter-spacing: -0.5px; position: relative; }
.sub_ori ul li:before { content:'·'; position: absolute; left: -6px; margin-right: 2px; }
.sub_ori ul.ori2 li { margin-left: 20px; }
.sub_ori ul.ori2 li:first-child { margin-left: 0; font-size: 14px; margin-bottom: 3px; }
.sub_ori ul.ori2 li:first-child:before { display: none; }


body.full #sub_container { width: 100%; }
#sub_container { width: 90%; position: relative; left: 50%; transform: translateX(-50%); overflow: hidden; background-color: #fff; text-align: center; }
#sub_box { position: relative; width: 100%; margin: auto; text-align: center; padding-bottom: 80px; padding-top: 0px; box-sizing: border-box; margin-top: 80px; }
#sub_tit { width: 100%; margin-top: 0; margin-bottom: 2rem; overflow: hidden; text-align: center; }
#sub_tit h2 { font-size: 35px; color: #000; font-weight: 400; line-height: 100%; letter-spacing: -1px; text-transform: uppercase; }
.sub_line { width: 1px; height: 38px; background-color: #404040; margin: auto; margin-top: 35px; }
#sub_tit h5 { font-size: 14px; color: #858585; font-weight: 400; margin-top: 16px; }
#sub_tit h5 b { color: #222; }
#sub_tit h5 div { display: inline-block; color: #056b5c; }
#sub_tit h5 span { font-size: 13px; font-family: 'Brown'; font-weight: 700; }
#sub_page { margin-top: 50px; position: relative; }
.sub_page {transform: translateY(1rem); opacity: 0;}
.sub_page.active {transform: translate(0); opacity: 1; transition: 1s;}

/**/

ul.tabs2 { width: 100%; display: flex; justify-content: space-between; }
ul.tabs2.two { flex-wrap: wrap; }
ul.tabs2 li {width: 100%; margin-bottom: -1px; color: #222; margin-left: 2%; text-align: center; cursor: pointer; height: 45px; line-height: 45px; border: 1px solid #e9eaec; font-weight: 400; background: #e9eaec; }
ul.tabs2 li:nth-child(1) { margin-left: 0; }
ul.tabs2 li a{display: inline-block; width: 100%;}
ul.tabs2 li.selected, ul.tabs li.selected:hover { color: #fff; background: #192642; border: 1px solid #192642; }	
ul.tabs2 li.selected a, ul.tabs li.selected a:hover { color: #fff; }
ul.tabs2 li.active { color:#fff; background: #192642; border: 1px solid #192642; }

#container2 { width: 100%; max-width: 1100px; margin: auto; }

/*  */

.sub_contact_wrap { width: 100%; margin: auto; position: relative; text-align: left; color: #010101; padding-bottom: 4.375rem; padding-bottom: 0; }

/* .sub_contact_wrap h2 { font-size: 1.5rem; line-height: 100%; margin-bottom: 0.9375rem; font-weight: 500; }
.sub_contact_wrap h2 img { margin-right: 0.625rem; margin-top: 0px; }
.sub_contact_top { width: 100%; }
.sub_contact_top>div { width: 100%; display: flex; justify-content: space-between; align-items: flex-end; } */

.sub_contact_tit { text-align: center; opacity: 0; transform: translateY(-3rem); margin-bottom: 2.25rem; }
.sub_contact_tit h3 { font-family: 'optima'; font-size: 3rem; line-height: 100%; position: relative; text-transform: uppercase; white-space: nowrap; opacity: 1; }
.sub_contact_tit h5 { font-size: 1.375rem; margin-top: 0.375rem; color: #986e52; line-height: 100%; opacity: 1; font-weight: 400; white-space: nowrap; }


.sub_contact_bottom { width: 100%; margin-top: 3.75rem; opacity: 0; transform: translateY(3rem); margin-top: 0; }
.sub_contact_bottom>div:last-child { width: 100%; display: flex; justify-content: center; align-items: flex-start; gap:3rem;}

.sub_contact_map_box { width: 100%; width: 450px; height: 373px; border: 1px solid #cecece; position: relative; }
.sub_contact_map_box img { width: 100%; }

.sub_contact_txt_box { width: 100%; max-width: 450px; margin: auto; margin-top: 2rem; }
.sub_contact_txt_box h3 { display: inline-block; font-size: 2rem; line-height: 100%; font-weight: 700; position: relative; margin-bottom: 3.75rem; }
.sub_contact_txt_box h3:after { content:''; width: 100%; height: 1px; background-color: #000; position: absolute; left: 0; bottom: 0; }

.sub_contact_add { display: flex; justify-content: space-between; align-items: center; flex-direction: column; gap: 1.375rem; }
.sub_contact_add h4 { font-size: 1.375rem; line-height: 100%; font-weight: 600; }
.sub_contact_add p { font-size: 0.9375rem; line-height: 100%; margin-top: 0.5rem; color: #7e7e7e; margin-top: 0; font-weight: 500; letter-spacing: 0; text-align:center; line-height:160%; }
.sub_contact_add p span { color: #000; }
.sub_contact_top .sub_contact_add { margin-top: 3.125rem; }

.sub_contact_bt { display: flex; justify-content: flex-end; align-items: center; margin-right: 0; gap: 0.3125rem; }
.sub_contact_bt div { width: 31px; height: 31px; border-radius: 100%; display: flex; justify-content: center; align-items: center; }
.sub_contact_bt a { display: flex; justify-content: center; align-items: center; width:100%; height:100%;}

.sub_contact_bt div:nth-child(1) { background: #074437; }
.sub_contact_bt div:nth-child(2),
.sub_contact_bt div:nth-child(3) { background: #bac772; }
/* .sub_contact_bt div:nth-child(4) { border: 1px solid #bbb; } */
.sub_contact_bt div.mo { display: none; }

#map { position: relative; width: 100%; height: 100%; }
#map2 { position: relative; width: 100%; height: 100%; }

.map_marker { font-family: 'Noto Sans KR', sans-serif; width: auto; height: auto; border: 2px solid #95182c; background-color: #fff; border-radius: 25px; border-radius: 0; text-align: center; display: flex; justify-content: center; align-items: center; padding: 4px 15px 6px; position: relative; box-sizing: border-box; transform: translate(-25%); }
.map_marker img { width: 140px; }
.map_marker p { font-size: 13px; line-height: 100%; color: #1b1414; font-weight: 600; font-size: 19px; margin-top: 7px; }
.map_marker:after { content:''; width: 0px; height: 0px; border-top: 12px solid #95182c; border-left: 5px solid transparent; border-right: 5px solid transparent; position: absolute; left: 0; right: 0; bottom: -12px; margin: auto; }
/*.map_marker.mk01 { width: 82px; z-index: 9; }*/


.sub_contact_map_box::before { content: ''; width: 0; height: 1px; position: absolute; left: -1px; top: -1px; background-color: #000; transition: 0.5s; }
.sub_contact_map_box::after { content: ''; width: 0; height: 1px; position: absolute; right: -1px; bottom: -1px; background-color: #000; transition: 0.5s; }
.sub_contact_map_box span { width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.sub_contact_map_box span::before { content: ''; width: 1px; height: 0; position: absolute; left: -1px; bottom: -1px; background-color: #000; transition: 0.5s; }
.sub_contact_map_box span::after { content: ''; width: 1px; height: 0; position: absolute; right: -1px; top: -1px; background-color: #000; transition: 0.5s; }

.sub_contact_map_box:hover::before,
.sub_contact_map_box:hover::after { width: calc(100% + 2px); }
.sub_contact_map_box:hover span::before,
.sub_contact_map_box:hover span::after { height: calc(100% + 2px); }


.sub_contact_tit.active { opacity: 1; transform: translate(0); transition: 1.2s 0.2s; }
.sub_contact_bottom.active { opacity: 1; transform: translate(0); transition: 1.2s 0.2s; }


/*  */

.guest_content { width: 100%; max-width: 1100px; }

/* 개인정보처리방침 팝업 */
.privacy_content { width: 100%; text-align: left; color: #333; font-size: 1rem; line-height: 170%; letter-spacing: -0.3px; word-break: keep-all; padding-bottom: 2rem; }
.privacy_content p { margin-bottom: 0.75rem; }
.privacy_content .privacy_date { display: inline-block; padding: 0.375rem 0.875rem; background-color: #074437; color: #fff; font-size: 0.875rem; border-radius: 2rem; margin-bottom: 1.25rem; }
.privacy_content h3 { font-size: 1.1875rem; font-weight: 700; color: #074437; margin: 2.5rem 0 1rem; padding-bottom: 0.75rem; border-bottom: 1px solid #ddd; }
.privacy_content h4 { font-weight: 700; margin-bottom: 0.5rem; }
.privacy_content ol { list-style: decimal; padding-left: 1.5rem; margin-bottom: 0.75rem; }
.privacy_content ol>li { list-style: decimal; margin-bottom: 0.375rem; }
.privacy_content ol ul { margin-top: 0.375rem; }
.privacy_content ol ul li::before, .privacy_dot li::before { content: '- '; }
.privacy_content .privacy_dot li::before { content: '· '; }
.privacy_content .privacy_note { font-size: 0.875rem; color: #777; }
.privacy_content .privacy_box { background-color: #f4f6f5; padding: 1.25rem 1.5rem; border-radius: 0.75rem; margin: 1rem 0; }
.privacy_table { width: 100%; overflow-x: auto; margin: 1rem 0; }
.privacy_table table { width: 100%; min-width: 640px; border-collapse: collapse; border-top: 2px solid #074437; font-size: 0.9375rem; }
.privacy_table th { background-color: #f4f6f5; font-weight: 700; padding: 0.75rem; border-bottom: 1px solid #ccc; border-right: 1px solid #e3e3e3; text-align: center; }
.privacy_table td { padding: 0.75rem; border-bottom: 1px solid #e3e3e3; border-right: 1px solid #e3e3e3; vertical-align: middle; }
.privacy_table th:last-child, .privacy_table td:last-child { border-right: 0; }

/*  */

.sub_vr_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; padding-bottom: 30px; }
.sub_vr_wrap img { width: 100%; max-width: 1100px; }

.tabs2.vr { margin-bottom: 1.5rem; }

.vr_box { width: 100%; max-width: 1200px; margin: auto; position: relative; padding-bottom: 56.25%; padding-top: 0px; height: 0; margin-top: 0; }
.vr_box iframe { position: absolute; left: 0; right: 0; width: 100%; height: 100%; }

.vr_bt_box { width: 100%; display: flex; justify-content: flex-end; margin-top: 15px; }
.vr_bt_box ul { width: 100%; max-width: 600px; display: flex; justify-content: flex-end; }
.vr_bt_box ul li { width: 100%; margin-left: 2%; border-radius: 0px; height: 45px; line-height: 45px; text-align: center; background-color: #000; color: #fff; font-size: 16px; }
.vr_bt_box ul li a{ width: 100%; height: 100%; display: block; }
.vr_bt_box ul li:nth-child(1) { background-color: #624b40; margin-left: 0; }
.vr_bt_box ul li:nth-child(2) { background-color: #888; }
.vr_bt_box ul li:nth-child(3) { background-color: #000; }

.vr_pop { width: 95%; max-width: 1100px; margin: auto; position: relative; padding-top: 70px; padding-bottom: 100px; }
.vr_pop h2 { text-align: center; font-size: 36px; line-height: 100%; color: #000; margin: 0; padding: 0; margin-bottom: 30px; font-weight: 500; }

.vr_pop ul.tabs3 { display: flex; justify-content: space-between; float: none; margin-bottom: 15px; }
.vr_pop ul.tabs3>li { width: 100%; text-align: center; height: 55px; margin-left: 0; border-left: none; font-size: 16px; font-weight: 500; background-color: #e9eaec; box-sizing: border-box; }
.vr_pop ul.tabs3>li>a { padding: 0; letter-spacing: 0; line-height: 55px; display: block; }
.vr_pop ul.tabs3>li:first-child { margin-left:0; border-left: 1px solid #ccc; }
.vr_pop ul.tabs3 li.selected, .vr_pop ul.tabs li.selected:hover { background-color: #000e42 !important; border: 1px solid #000e42 !important; }
.vr_pop ul.tabs3 li.selected a, .vr_pop ul.tabs li.selected a:hover { color: #fff; }

.vr_pop ul.tabs2 { display: flex; justify-content: space-between; float: none; margin-bottom: 0rem; }
.vr_pop ul.tabs2>li { width: 100%; text-align: center; margin-left: 0; height: 40px; font-size: 14px; border: #f3f3f3; background: #f3f3f3; border-left: 1px solid #fff; border-top: 2px solid #f3f3f3; box-sizing: content-box; }
.vr_pop ul.tabs2>li>a { padding: 0; letter-spacing: 0; display: block; line-height: 40px; }
.vr_pop ul.tabs2>li:first-child { margin-left:0; border-left: none; }
.vr_pop ul.tabs2 li.selected, .vr_pop ul.tabs li.selected:hover { background: #fff; border: #f3f3f3; border-top: 2px solid #000e42; }
.vr_pop ul.tabs2 li.selected a, .vr_pop ul.tabs li.selected a:hover { color: #444; }

.pr_vd { position: relative; width: 100%; padding-bottom: 56.25%; height: 0; z-index: 999; margin-bottom: 0px; }
.pr_vd iframe { position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; width: 100%; height: 100%; z-index: 2; }

/*  */

.sub_event_wrap { width: 100%; max-width: 1100px; margin: auto; }
.sub_event_wrap>div { width: 100%; }

.sub_event_wrap .tabs2 { margin-bottom: 1.5rem; }
.sub_event_wrap img { width: 100%; }

.sub_event_tit {  width: 100%; position: relative; text-align: center; background-color: #f3f3f3; padding: 3.5rem 0 3rem; padding: 0; background: none; }
.sub_event_tit img { width: 100%; }
/* .sub_event_tit img { width: 16.875rem; } */
.sub_event_tit p { font-size: 0.875rem; line-height: 160%; opacity: 0.8; margin-top: 1.75rem; }
.sub_event_tit h2 { font-size: 1.75rem; line-height: 100%; font-weight: 700; margin-top: 3.5rem; color: #003c66; }
/* .sub_event_tit h2 { font-size: 1.5rem; line-height: 100%; margin-top: 4.25rem; font-weight: 500; }
.sub_event_tit h2 a { display: flex; justify-content: center; align-items: center; gap: 0 0.625rem; }
.sub_event_tit h2 span { font-family: 'lexend'; font-size: 2.625rem; } */

.sub_event_wrap table { width: 100%; display: flex; }
.sub_event_wrap table col { display: none !important; }
.sub_event_wrap table tbody { width: 100%; display: flex; justify-content: space-between; flex-wrap: wrap; }
.sub_event_wrap table tr { width: 23.5%; width: 48%; display: flex; justify-content: center; align-items: center; }
.sub_event_wrap table tr td { font-size: 1rem; line-height: 100%; border-bottom: 1px solid #ccc; padding: 0.875rem 0; text-align: center; display: inline-block; position: relative; }
.sub_event_wrap table tr td:nth-child(1) { width: 40%; }
.sub_event_wrap table tr td:nth-child(1)::after { content: ''; width: 1px; height: 30%; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; background-color: #ccc; }
.sub_event_wrap table tr td:nth-child(2) { width: 60%; }

.sub_event_db.top{margin-top: 2rem;}
.sub_event_db.top tr {background: #000; color: #fff;}
.notice{font-size: 1rem; text-align: center;margin-top: 1.4rem;}
/* .sub_event_wrap table tr:nth-child(-n+4) { border-top: 2px solid #003c66; } */

.sub_event_wrap table.tit { margin-top: 3.25rem; color: #fff; }
.sub_event_wrap table.tit tr { border: none; background-color: #003c66; }
.sub_event_wrap table.tit tr td { border: none; font-weight: 500; }
.sub_event_wrap table.tit tr:nth-child(2n) { display: none; }

/* 끝 */