
::-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-family:'Dotum'; 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;font-family:'Dotum';}
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;font-family:'Dotum';}
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: 'Noto Sans KR', sans-serif; overflow-x: hidden; }

/*body.main { overflow-y: hidden; }*/

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

/*  */


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

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

@media (hover: hover) and (pointer: fine) {
  .cursor__circle {
  	display: none;
    width: 25px;
    height: 25px;
    margin-top: -50%;
    margin-left: -50%;
/*    margin-top: 0;
    margin-left: 0;*/
    border-radius: 50%;
    border: solid 1px #004e71;
/*	background-color: #004e71;*/
    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);
      display: none;
  }

  .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; }
  .cursor_drag p { color: #fff; 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.arrow .cursor__circle{
    width: 80px;
    height: 80px;
    background-color: transparent;
    border-color: #004e71;
  }

  #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: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; }
}



.right_scroll_wrap { width: 10px; height: 230px; margin: auto; overflow: hidden; position: absolute; z-index: 99; right: 32px; top: 0; bottom: 0; transform: translateY(0px); opacity: 1; display: none; }
.right_scroll_img { width: 100%; height: 94px; 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: #6e4840; 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; }

/**/

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

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

.intro_all_wrap { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; }
.intro_all_wrap::before { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 10; background: url(../img/intro_bg.png) center bottom no-repeat; background-size: cover; opacity: 0; }
.intro_wrap { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 9; }

.intro_vd_box { position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 1; z-index: 1; opacity: 0; }
.intro_vd { position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; width: 100%; padding-bottom: 56.25%; height: 0; }
.intro_vd::after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 99; }
.intro_vd iframe { position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; width: 100%; height: 100%; z-index: 2; }

.intro_vd_box.box01 { opacity: 1; }
.intro_vd_box.box01 .intro_vd::before { content:''; width: 100%; height: 100%; position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; background: url(../img/intro_vd.jpg) center no-repeat; background-size: 100%; z-index: 1; }

@media all and (max-width: 1640px) { 
  .intro_vd iframe { width: 140%; height: 140%; }
  .intro_vd::before { width: 140%; height: 140%; }
}

@media all and (max-width: 1440px) { 
  .intro_vd { padding-bottom: 75.25%; }
  .intro_vd iframe { width: 150%; height: 150%; transform: translate(-50%,-50%); }
  .intro_vd::before { width: 150%; height: 150%; transform: translate(-50%,-50%); }
}

@media all and (max-width: 1024px) { 
  .intro_vd { padding-bottom: 133.25%; }
  .intro_vd iframe { width: 260%; height: 260%; }
  .intro_vd::before { width: 260%; height: 260%; }
}
@media all and (max-width: 767px) { 
  .intro_vd { padding-bottom: 177.78%; }
  .intro_vd iframe { width: 350%; height: 350%; }
  .intro_vd::before { width: 350%; height: 350%; }
}

.intro_bg_box { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 2; }
.intro_bg_box>div { position: absolute; background-color: #fff; }
.intro_bg01 { width: 100%; height: 50%; left: 0; top: 0; }
.intro_bg02 { width: 100%; height: 50%; left: 0; bottom: 0; }
.intro_bg03 { width: 22%; height: 100%; left: 0; top: 0; }
.intro_bg04 { width: 22%; height: 100%; right: 0; top: 0; }

.intro_img_box { width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0; z-index: 9; }
.intro_img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-color: #000; opacity: 0; }
.intro_img::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.intro_img.img01::after { background: url(../img/intro_img01.jpg) center no-repeat; background-size: cover; }
 
.intro_tit_box { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 10; display: flex; justify-content: center; align-items: center; color: #fff; opacity: 0; }
.intro_tit_box h3 { font-family: "Nanum Myeongjo", serif; font-size: 1.875rem; line-height: 100%; }
.intro_tit_box>div { width: 100%; max-width: 740px; margin: auto; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 5rem 0; }
.intro_tit_box>div>div { width: 100%; display: flex; align-items: center; }
.intro_tit_box>div>div:nth-child(1) { justify-content: flex-start; }
.intro_tit_box>div>div:nth-child(2) { justify-content: flex-end; }

.intro_tit_box.box03 { opacity: 1; }
.intro_tit_box h3 span { opacity: 0; }

/*  */

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

/**/

.main_wrap { width: 100vw; height: 100vh; position: relative; overflow: hidden; display: flex; justify-content: center; align-items: center; }

.main_box { width: 100%; height: 100%; position: relative; z-index: 9; }


.main_content {
    width: 100%;
    height: 100%;
    position: relative;
    background-color: #000;
}

.main_img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 9; opacity: 1; transform: scale(1.2); transition: 1.0s 0s; }
.main_img.img01 {  background: url(../img/main2.jpg) center no-repeat; background-size: cover; }
.main_img.img01::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 0; background: url(../img/main_bg2.png) center bottom no-repeat; background-size: cover; }
.main_img.img02 {  background: url(../img/main.jpg) center no-repeat; background-size: cover; }
.main_img.img02::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 0; background: url(../img/main_bg.png) center bottom no-repeat; background-size: cover; }

.main_box .swiper_main.swiper-container { width: 100%; height: 100%;}


.swiper_main2 { width: 179px; height: 32px; position: absolute; left: 0; right: 0; bottom: 5.5rem;  margin: auto; z-index: 99; }
.swiper_main2 .swiper-wrapper { display: flex; justify-content: space-between; width: calc(32px * 2 + 17px);}
.swiper_main2 .swiper-slide { width: 32px; height: 32px; cursor: pointer; border: none; overflow: hidden; box-sizing: border-box; border-radius: 100%; }
.swiper_main2 .swiper-slide-thumb-active { opacity: 1; }
.swiper_main2 .swiper-slide:before { content:''; width: 6px; height: 6px; position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; background-color: #fff; z-index: 99; border-radius: 100%; opacity: 0.5; }
.swiper_main2 .swiper-slide-thumb-active:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; border: 1px solid #fff; z-index: 99; border-radius: 100%; box-sizing: border-box; }

.swiper_main2 .swiper-slide-thumb-active:before { opacity: 1; }



.main_txt_box { width: 100%; height: 100%; position: absolute; z-index: 100; display: flex; justify-content: center; align-items: center; }
.main_txt_box.txt01 { color: #000; }
.main_txt_box.txt02 { color: #fff; }
.main_txt_box>div { transform: translateY(-9.75rem); }
.main_txt_box h4 { font-size: 1rem; line-height: 180%; opacity: 0; transform: translateY(-3rem); font-weight: 400; margin-top: 2rem;}
.main_txt_box h2 { font-size: 3.4375rem; line-height: 124%; margin-top: 1.25rem; font-weight: 200; opacity: 0; transform: translateY(-3rem); margin-top: 3rem; }
.main_txt_box h2 b { font-weight: 700; }
.main_txt_box>div>div { font-size: 1.2rem; max-width: 16.625rem; margin: auto; text-align: center; padding: 0.35rem 0; margin-top: 2.8rem; opacity: 0; transform: translateY(-3rem);}
.main_txt_box.txt01>div>div { border: 1px solid #000;}
.main_txt_box.txt02>div>div { border: 1px solid #fff;}
.main_txt_box div b { font-weight: 700; }
.main_logo { width: 11.8125rem; opacity: 0; transform: translateY(3rem); margin-top: 2.875rem; }
.main_txt_box h3 { width: 11.75rem; height: 2.25rem; font-size: 0.9375rem; line-height: 2rem; font-weight: 500; border: 1px solid #6e4840; color: #6e4840; margin: auto; margin-top: 6rem; box-sizing: border-box; opacity: 0; transform: translateY(3rem); }

.main_tit { font-family: 'copperplate'; width: 100%; height: 100%; position: absolute; z-index: 80; text-align: center; transform: translateY(-8rem); color: #000; display: flex; justify-content: center; align-items: center; transition: 1.5s 0s; opacity: 0.77; mix-blend-mode: soft-light; }
.main_tit h1 { font-size: 10rem; line-height: 120%; font-weight: 100; text-transform: uppercase; transition: 0.8s; }
.main_tit h1>span { display: flex; justify-content: center; align-items: center; overflow: hidden; }
.main_tit h1 b { display: inline-block; font-weight: 400; transform: translateY(85%); }
.main_tit h1 b.spacing { margin-right: 3.25rem; }
.main_tit h1>span:last-child b { font-weight: 400; }

.main_guest_wrap { position: absolute; left: 7.25rem; bottom: 6.25rem; z-index: 999; display: flex; justify-content: flex-start; align-items: center; opacity: 0; transform: translateX(-5rem); }
/* .main_guest_wrap a { cursor: default; } */
.main_guest { width: 5.5rem; height: 5.5rem; background-color: #fff; background: none; margin: auto; border-radius: 100%; z-index: 99; cursor: pointer; position: relative; display: flex; justify-content: center; align-items: center; opacity: 1; cursor: default; opacity: 1; }
.main_guest_bg { width: 163.6363%; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) scale(1) rotate(0); animation: main_guest_bg 22s 0s linear infinite; }
.main_guest p { font-size: 0.85rem; line-height: 135%; color: #fff; position: relative; z-index: 9; font-weight: 400; transform: translateY(-0px); }
.main_guest p b { font-size: 2.25rem; display: inline-block; transform: translateY(1px); margin-right: 1px; font-weight: 700; }
.main_guest p span { font-size: 0.625rem; text-transform: uppercase; opacity: 0.8; }
/* .main_guest img:first-child { width: 100%; } */

.main_guest_txt { text-align: left; color: #fff; display: flex; justify-content: flex-start; align-items: center; margin-left: 4.125rem; }
.main_guest_txt h3 { font-family: 'lexend'; font-size: 1.75rem; line-height: 100%; font-weight: 700; }
.main_guest_txt p { font-size: 0.875rem; line-height: 100%; margin-left: 0.625rem; }
.main_guest_txt img { width: 25.25rem; transform: translateY(-1rem); transform: translate(10rem,-2rem); opacity: 0; }

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

.main_txt { font-family: 'antro'; line-height: 100%; position: absolute; right: 7%; bottom: 18%; z-index: 9; opacity: 0; transform: translate(10rem,-1rem); color: #fff; }
.main_txt h2 { font-size: 4.57625rem; transform: rotate(-4deg); letter-spacing: -0.3125rem; font-weight: 400; }
.main_txt b { font-size: 4.5625rem; font-weight: 400; }
.main_txt span { transform: translate(12rem,3rem); display: inline-block; }

.main_fixed { width: 100%; max-width: 1200px; height: 3.375rem; display: flex; justify-content: space-between; align-items: center; position: absolute; left: 0; right: 0; margin: auto; bottom: -3.375rem; z-index: 90; gap: 1px; }
.main_fixed>div { width: 100%; height: 100%; background: none; display: flex; justify-content: center; align-items: center; flex: 1; color: #fff; position: relative; z-index: 1;}
.main_fixed>div>p { font-size: 1rem; line-height: 100%; }
.main_fixed>div>p b { color: #ba945c; }

.main_fixed > div::before {
  content: "";
  position: absolute;
  inset: 0;
  /* background: linear-gradient(25deg, #d70a84, #51127f); */
  background: url(../img/main_fixed_bg.png)center no-repeat;	
  background-size: 1200px 100%;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}

/* 각 div별로 정확한 배경 위치 조정 */
.main_fixed > div:nth-child(1)::before {
  background-position: left center;
}
.main_fixed > div:nth-child(2)::before {
  background-position: center center;
}
.main_fixed > div:nth-child(3)::before {
  background-position: right center;
}

.main_sum_tit {  position: absolute; z-index: 10; left: 0; right: 0; margin: auto; /* top: 25%; */ top: 27%; display: flex; justify-content: center; align-items: center; opacity: 0; transition: 1.0s 0s; text-align: left; /* mix-blend-mode: difference; */ color: #fff;}
/* .main_sum_tit>div { width: 200%; margin-left: -50%; } */
.main_sum_tit h5 { font-family: 'trajan'; font-size: 0.9375rem; line-height: 100%; margin-left: 3rem; font-weight: 400;}
.main_sum_tit h2 { font-family: 'Abhaya Libre', sans-serif; /* font-size: 13.5rem; */ font-size: 8.5rem; letter-spacing: 4.5rem; padding-left: 2.25rem; line-height: 100%; font-weight: 600; transition: 1.5s 0s; }

.main_sum { width: 100%; height: 23rem; display: flex; justify-content: center; align-items: center; background-color: #fff; position: absolute; left: 0; bottom: -23rem; z-index: 998; transition: 1.0s 0s; }
.main_sum>div { width: 90%; max-width: 1200px; }
.main_sum ul { display: flex; justify-content: space-between; align-items: flex-start; gap: 4.25rem 4.5%; flex-wrap: wrap; }
.main_sum ul li { width: 30%; text-align: left; }
.main_sum ul li h3 { font-size: 1.25rem; line-height: 100%; font-weight: 800; padding-bottom: 0.625rem; border-bottom: 1px solid #000; }
.main_sum ul li p { font-size: 0.875rem; line-height: 100%; margin-top: 1.5rem; opacity: 0.7; }


.main_wrap.on .swiper-slide-active .main_img { animation: main_img 4s 0s both; }
.main_wrap.on .swiper_main2 { opacity: 1; transition: 1.2s 0.4s; }
.main_wrap.on .swiper-slide-active .main_txt_box h2 { transform: translate(0); opacity: 1; transition: 1.2s 0.4s; }
.main_wrap.on .swiper-slide-active .main_txt_box h4 { transform: translate(0); opacity: 1; transition: 1.2s 0.4s; }
.main_wrap.on .swiper-slide-active .main_txt_box>div>div { transform: translate(0); opacity: 1; transition: 1.2s 0.4s; }

@keyframes main_img {
	from { transform: scale(1.22); }
	to { transform: scale(1); }
}




.main_wrap.on .main_img,
.main_wrap.on2 .main_img { transform: scale(1); transition: transform 3s 0s, top 1.0s 0s; }
.main_wrap.on .main_txt_box::before { height: 100%; transition: 3s 0s; }
.main_wrap.on .main_txt_box::after { height: 100%; transition: 3s 0s; }


.main_wrap.on .main_logo { transform: translate(0); opacity: 1; transition: 1.2s 1.0s; }
.main_wrap.on .main_txt_box h3 { transform: translate(0); opacity: 1; transition: 1.2s 1.0s; }
.main_wrap.on .main_guest_wrap { transform: translate(0); opacity: 1; transition: 1.2s 1.0s; }
.main_wrap.on .main_txt { transform: translate(0); opacity: 1; transition: 1.2s 1.0s; }
.main_wrap.on .main_fixed { bottom: 0; transition: 1.0s 1.8s; }

.main_wrap.on2 .main_img { top: -34%; transition: top 1.5s 0.8s, transform 1.5s 0.8s !important; }
.main_wrap.on2 .main_sum_tit { opacity: 1; }
.main_wrap.on2 .main_sum_tit h2 { letter-spacing: 0; padding-left: 0; transition: 1.5s 0.8s; }
.main_wrap.on2 .main_sum_tit h5 { margin-left: 1rem; transition: 1.5s 0.8s; }
.main_wrap.on2 .main_sum { bottom: 0; }
.main_wrap.on2  .main_txt_box { opacity: 0; transition: 1.0s 0s; }
.main_wrap.on2 .main_img.img01::after { content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1; background: url(../img/main_bg.png) center bottom no-repeat; background-size: cover; }


/**/


.premium_wrap { width: 100vw; height: 100vh; position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; transition: 0.8s; transform: translateX(0); background: url(../img/premium_bg.jpg)center no-repeat; background-size: cover;}
.premium_wrap>div:last-child { width: 90%; max-width: 1460px; position: relative; z-index: 9; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; transform: translateY(1rem); margin-top: 2.5rem;}

.premium_logo { position: relative; opacity: 0; transform: translateY(-3rem);  }

.premium_content { width: 25%; height: 16rem; position: relative; display: flex; justify-content: flex-start; align-items: flex-start; padding: 3rem 3.25rem; box-sizing: border-box; text-align: left; }
.premium_content>div { width: 100%; height: 100%; position: relative; }
.premium_content::before { content: ''; width: 0%; height: 1px; background-color: #8f8f8f; left: 0; right: 0; margin: auto; bottom: 0; position: absolute; }
.premium_content::after { content: ''; width: 1px; height: 0%; background-color: #8f8f8f; right: 0; margin: auto; top: 0; bottom: 0; position: absolute; }
/* .premium_content.con01>div { display: flex; justify-content: flex-start; align-items: center; }
.premium_content.con01>div img { margin-top: 1rem; } */
.premium_content.con01>div,
.premium_content.con02>div,
.premium_content.con03>div,
.premium_content.con04>div { opacity: 0; transform: translateY(-3rem); }
.premium_content.con05>div,
.premium_content.con06>div,
.premium_content.con07>div,
.premium_content.con08>div { opacity: 0; transform: translateY(3rem); }
.premium_content.con04::after,
.premium_content.con08::after { display: none; }
.premium_content.con05::before,
.premium_content.con06::before,
.premium_content.con07::before,
.premium_content.con08::before { display: none; }
.premium_content p { font-size: 0.9375rem; line-height: 178%; }
.premium_content h3 { font-family: "Poppins"; font-size: 1.4375rem; line-height: 128%; margin-top: 1.125rem; color: #2e1263; font-weight: 700;}
.premium_content h3 span { font-family: 'Noto Sans KR', sans-serif; font-weight: 800; font-size: 1.3375rem;}
.premium_content h6 { font-size: 0.75rem; line-height: 100%; position: absolute; right: -0.625rem; bottom: -0.625rem; color: #cacaca; font-weight: 700; }

.premium_content.con04 img { position: absolute; bottom: -1rem; max-width:13.5rem; }

.c_gold { color: #a22174 !important; }

.premium_wrap.on .premium_logo { transform: translate(0); opacity: 1; transition: 1.2s 0.8s; }
.premium_wrap.on .premium_content::before { width: 90%; transition: 2.5s 0s; }
.premium_wrap.on .premium_content::after { height: 90%; transition: 2.5s 0s; }
.premium_wrap.on .premium_content>div { transform: translate(0); opacity: 1; transition: 1.2s 0.8s; }



/**/

#section3 { width: 100%; z-index: 1; }

.location_wrap { width: 100vw; height: 100vh; position: relative; overflow: hidden; display: flex; justify-content: flex-start; align-items: center; transition: 0.8s; }

.location01 { width: 100%; height: 100%; position: relative; }

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

.location_content { width: 100%; height: 100%; position: relative; z-index: 9; display: flex; justify-content: center; align-items: center; background-color: #fff; }
.location_content>div { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; }

.location_bg_box { width: 100%; height: 100%; opacity: 1; position: absolute; transform: scale(1.2); }
.location_bg_box::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: 3; opacity: 1; }
.location_bg_box.box01 { background: url(../img/location_bg01.jpg)center no-repeat; background-size: cover; }
.location_bg_box.box02 { background: url(../img/location_bg02.jpg)center no-repeat; background-size: cover; }
.location_bg_box.box03 { background: url(../img/location_bg03.jpg)center no-repeat; background-size: cover; }
.location_bg_box.box04 { background: url(../img/location_bg04.jpg)center no-repeat; background-size: cover; }



/* .location_vd_box { position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 1; z-index: 2; background-color: #000; }
.location_vd { position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; width: 100%; padding-bottom: 56.25%; height: 0; }
.location_vd::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: 3; opacity: 1; }
.location_vd:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 5; }
.location_vd iframe { position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; width: 100%; height: 100%; z-index: 2; opacity: 0.5; } */

/* .location_vd_box.box03 iframe { width: 120%; height: 120%; } */

@media all and (max-width: 1640px) { 
	.location_vd iframe { width: 140%; height: 140%; }
    .location_vd::before { width: 140%; height: 140%; }
}

@media all and (max-width: 1440px) { 
	.location_vd iframe { width: 200%; height: 200%; }
    .location_vd::before { width: 200%; height: 200%; }
}

@media all and (max-width: 1100px) { 
	.location_vd iframe { left: 50%; top: 0; transform: translateX(-91.5vh); width: 180vh; height: 100vh; }
    .location_vd::before { left: 50%; top: 0; transform: translateX(-91.5vh); width: 180vh; height: 100vh; }
}

.location_txt_box { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; position: relative; z-index: 9; color: #fff; }
.location_txt_box>div { width: 90%; transform: translateY(0rem); }
.location_txt_box h1 { font-family: 'Abhaya Libre', sans-serif; font-size: 5.4rem; line-height: 100%; opacity: 0; transform: translateY(-3rem); }
.location_txt_box h3 { font-size: 1.875rem; font-weight: 200; margin-top: 1.5rem; transform: translateY(3rem); opacity: 0; }
.location_txt_box h3 b { font-weight: 700; }
.location_txt_box p { font-size: 1.08rem; line-height: 180%; opacity: 0.4; transform: translateY(3rem); opacity: 0; margin-top: 1.5rem; }

.location_open { width: 12.5rem; height: 3.5rem; display: flex; justify-content: center; align-items: center; text-align: center; border-radius: 3.125rem; border: 1px solid rgba(255,255,255,0.4); margin-top: 2.625rem; opacity: 0; transform: translateY(2rem); }
.location_open>div { transform: translateY(0.125rem); }
.location_open h4 { font-size: 1.625rem; line-height: 100%; display: flex; justify-content: center; align-items: flex-end; gap: 0.125rem; }
.location_open h4 span { font-size: 0.9375rem; }
.location_open h4 b { font-weight: 500; }

.c_red { color: #e8340c; }
.location_square_box .c_red { color: #d4992a; }


.swiper_location .swiper-slide-active .location_bg_box { transform: scale(1); transition: 3.5s 0s; }
.swiper_location .swiper-slide-active .location_square>div>span::before { width: 85%; transition: 2.5s 0.2s; }
.swiper_location .swiper-slide-active .location_square>div>span::after { height: 85%; transition: 2.5s 0.2s; }
.swiper_location .swiper-slide-active .location_txt_box h1 { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }
.swiper_location .swiper-slide-active .location_txt_box h3 { transform: translate(0); opacity: 1; transition: 1.2s 0.6s; }
.swiper_location .swiper-slide-active .location_txt_box p { transform: translate(0); opacity: 0.7; transition: 1.2s 0.6s; }
.swiper_location .swiper-slide-active .location_open { transform: translate(0); opacity: 1; transition: 1.2s 0.6s; }


.location_bt_wrap { width: 100%; max-width: 1580px; height: 32px; position: absolute; left: 0; right: 0; margin: auto; bottom: 0; top: 0; margin: auto; transform: translateY(22.5rem); z-index: 9; display: flex; justify-content: flex-start; align-items: center; }
.location_bt_wrap>div { width: 640px; padding-left: 340px; height: 100%; position: relative; display: flex; justify-content: space-between; align-items: center; box-sizing: border-box; }
/* .swiper_location .location_bt_wrap { background-color: rgba(0,0,0,0.5); } */
.location_content .location_bt_wrap>div { padding: 0; }

.location_slide_num { width: 300px; height: 12px; z-index: 100; line-height: 100%; font-size: 12px; font-weight: 500; color: #fff; text-align: center; letter-spacing: 0; display: flex; justify-content: space-between; align-items: center; }
.location_slide_num p:last-child { opacity: 1; display: none; }
.location_slide_num .timeline { width: 92%; height: 20px; border-radius: 0; opacity: 1; background: none; position: relative; outline: none; transform: translateY(-1px); }
.location_slide_num .timeline span { content:''; width: 100%; height: 2px; position: absolute; left: 0; bottom: 0; top: 0; margin: auto; background-color: #fff; opacity: 1;
animation: bullet 5s 0s both linear; }
.location_slide_num .timeline.active span { animation: bullet2 5s 0s both linear; }
.location_slide_num .timeline span.stop { animation-play-state: paused !important; }
.location_slide_num .timeline:before { content:''; width: 100%; height: 2px; position: absolute; left: 0; bottom: 0; top: 0; margin: auto; background-color: #fff; opacity: 0.3; }
.location_slide_num .timeline p { font-size: 11px; line-height: 100%; color: #fff; position: absolute; top: 0; left: -8px; letter-spacing: 0.5px; z-index: -1; opacity: 0; transition: 0.5s; display: none; }


@keyframes bullet {
	from { width: 0; }
	to {  }
}
@keyframes bullet2 {
	from { width: 0; }
	to {  }
}

.location_arrow { display: flex; justify-content: center; align-items: center; gap: 0px; }
.location_arrow .swiper-pagination { width: 58px; font-family: 'Noto Sans KR', sans-serif; display: flex; color: #fff; justify-content: center; align-items: center; gap: 6px; bottom: 0; position: relative; margin: 0; padding: 0; font-size: 12px; line-height: 100%; transform: translateY(-1px); }
.location_arrow .swiper-pagination span { width: 13px; }
.location_arrow .swiper-pagination .slash { width: 1px; height: 9px; background-color: #fff; display: block; transform: translateY(1px); }
.location_arrow .swiper-pagination .swiper-pagination-total { opacity: 0.5; }
.location_arrow .swiper-button-prev,
.location_arrow .swiper-button-next { width: 25px; height: 25px; position: relative; bottom: 0; left: 0; outline: none; margin: 0; padding: 0; }
.location_arrow .swiper-button-prev::after { content: ''; width: 7px; height: 7px; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border-left: 1px solid #fff; border-bottom: 1px solid #fff; transform: rotate(45deg); }
.location_arrow .swiper-button-next::after { content: ''; width: 7px; height: 7px; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border-right: 1px solid #fff; border-bottom: 1px solid #fff; transform: rotate(-45deg); }

.location_play_bt { width: 20px; height: 30px; position: relative; }
.location_play_bt>div { width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; cursor: pointer; border-radius: 100%; }
.location_play_bt>div>img { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; }
.swiper-button-play { display: none; }

.swiper_location_2 { width: 31px; height: 173px; z-index: 99; position: absolute; right: 2.5rem; top: 0; bottom: 0; margin: auto; z-index: 9; }
.swiper_location_2 .swiper-wrapper { display: flex; justify-content: space-between; flex-direction: column; gap: 0 10px; }
.swiper_location_2 .swiper-slide { width: 31px !important; height: 31px; cursor: pointer; border: none; overflow: hidden; box-sizing: border-box; border-radius: 100%; }
.swiper_location_2 .swiper-slide-thumb-active { opacity: 1; }
.swiper_location_2 .swiper-slide:before { content:''; width: 5px; height: 5px; position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; background-color: #fff; z-index: 9; border-radius: 100%; opacity: 0.5; }
.swiper_location_2 .swiper-slide-thumb-active:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; border: 1px solid #fff; box-sizing: border-box; z-index: 9; border-radius: 100%; box-sizing: border-box; }

.swiper_location_2 .swiper-slide-thumb-active:before { opacity: 1; }

/* .location_wrap.active2 .cy_wrap { right: 0; transition: 0.8s 0.2s; }
.location_wrap.active2::after { left: 0; transition: 1.0s 0s; } */


.location_wrap.on .location_bg { transform: scale(1); transition: 2.5s 0s; }
.location_wrap.on .location_tit_box h4  { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }
.location_wrap.on .location_tit_box h2  { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }
.location_wrap.on .location_tit_box span  { transform: translate(0); opacity: 1; transition: 1.2s 0.8s; }
.location_wrap.on .location_tit_box p  { transform: translate(0); opacity: 1; transition: 1.2s 0.8s; }
.location_wrap.on .location_tit  { transform: translate(0); opacity: 1; transition: 1.5s 0.2s; }




/**/

#section4 { width: 100%; z-index: 1; }

.brand_wrap { width: 100vw; height: 100vh; position: relative; overflow: hidden; display: flex; justify-content: flex-start; align-items: center; transition: 0.8s; }

.brand_vd_box { position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 1; z-index: 2; background-color: #000; overflow: hidden;}
.brand_vd { position: absolute; top: 0; left: 0; width: 100%;  height: 100%; }
.brand_vd:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 5; }
.brand_vd iframe { position: absolute; top: 50%; transform: translate(-50%,-50%); left: 50%; width: 100%; height: 56.25vw; z-index: 2; opacity: 0.5; min-height: 100vh; min-width: 177.78vh; } 
.brand_vd_box:before { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-color: #2e1263; opacity: 0.5; z-index: 3; mix-blend-mode :color-dodge; }

.brand_txt_box { position: absolute; color: #fff; z-index: 3; text-align: left; right: 11%; height: 23.625rem; display: flex; flex-direction: column; justify-content: flex-end;}
.brand_txt_box:before { content:''; width: 100%; height: 100%; border-left: 1px solid #fff; position: absolute; opacity: 0; }
.brand_txt_box>div { padding-left: 3.75rem;}
.brand_txt_box img { opacity: 0; transform: translateX(4rem);}
.brand_txt_box p { font-size: 0.9375rem; line-height: 260%; margin-top: 4.2rem; font-weight: 300; opacity: 0; transform: translateX(4rem);}

/* .location_vd_box.box03 iframe { width: 120%; height: 120%; } */

/**/

.brand_wrap.on .brand_txt_box:before { opacity: 0.3; transition: 1.2s 0.4s; }
.brand_wrap.on .brand_txt_box img { opacity: 1; transform:translateX(0); transition: 1.5s 0.4s; }
.brand_wrap.on .brand_txt_box p { opacity: 1; transform:translateX(0); transition: 1.5s 0.4s; }



/*  */

/**/

#footer { overflow: visible; }

.footer { width: 100%; padding: 3.75rem 6.25rem 4.25rem; box-sizing: border-box; z-index: 999; position: relative; box-sizing: border-box; letter-spacing: -0.0313rem; font-size: 0.875rem; background: url(../img/footer_bg.png)center no-repeat; background-size:cover ;	
/*  background-color: #2e1263; color: rgba(255,255,255,0.7); */ display: flex; justify-content: flex-start; align-items: flex-start; color: #fff;}
.footer:after { content:''; width: 100%; height: 100vh; position: absolute; left: 0; top: -100vh; display: none; }
body.main .footer { border: none; }

.footer_left { text-align: left; }
.footer_middle { text-align: left;  transform: translate(3.125rem, -0.5rem); }
.footer_right { text-align: right; }

.footer_const { display: flex; justify-content: flex-start; align-items: flex-end; }
.footer_const li { position: relative; padding: 0 0.875rem; line-height: 100%; }
.footer_const li:after { position: absolute; content:''; width: 1px; height: 0.75rem; background-color: #fff; opacity: 0.4; right: 0; bottom: 0px; margin: auto; }
.footer_const li:nth-child(2) { padding-left: 0.625rem; }
.footer_const li:first-child::after { display: none; }
.footer_const li:last-child:after { display: none; }
.footer_const li b { font-weight: 700; }

.footer p { line-height: 150%; margin-top: 1.25rem; margin-top: 1.75rem; opacity: 0.5;}

.footer_right { position: absolute; right: 5%; display: flex; justify-content: space-between; gap:6px; }
.footer_right>div img { width: 7.5625rem; }

.footer_right div { width: 100%; text-align: center; font-size: 0.875rem; padding: 0 1.75rem;  white-space: nowrap; line-height: 270%;}
.footer_right div:first-child { background-color: #fff; color: #2e1263;font-weight: 700;}
.footer_right div:last-child { border: 1px solid rgba(255,255,255,0.3); color: #fff; font-weight: 400;}

.footer_bt { width: 11.25rem; width: auto; font-size: 1rem; line-height: 100%; font-weight: 500; color: #fff; text-align: left; position: relative; transform: translateY(-1px); }

.footer_info { display: flex; justify-content: flex-start; align-items: center; margin-top: 0.5rem; }
.footer_info li { line-height: 100%; position: relative; padding: 0 1rem; opacity: 0.5;}
.footer_info li:first-child { padding-left: 0;}

.footer_info li:after { position: absolute; content:''; width: 1px; height: 0.7rem; background-color: #fff; opacity: 0.3; right: 0; bottom: 0; top: 1px; margin: auto; }
.footer_info li span { color: #fff; }
.footer_info li:last-child { padding-right: 0; }
.footer_info li:last-child:after { display: none; }

/* .footer_info:nth-child(2) li { padding: 0; padding-left: 0.375rem; } */

.footer_info:nth-child(3) li:nth-child(1) { padding: 0; }
.footer_info:nth-child(3) li:nth-child(2) { padding-left: 0.375rem; }
.footer_info:nth-child(3) li:nth-child(1):after { display: none; }

.footer h6 { line-height: 100%; margin-top: 3.125rem; letter-spacing: 0; color: #fff; font-size: 0.75rem; }


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

.top_bt { width: 60px; height: 60px; background-color: #191919; z-index: 99999; position: absolute; right: 90px; top: 30px; cursor: pointer; border-radius: 100%; opacity:  0; transition: 0.8s; }
.top_bt:before { content:''; width: 12px; height: 12px; position: absolute; left: 0; right: 0; top: 5px; bottom: 0; margin: auto; border-left: 1px solid rgba(255,255,255,1); border-top: 1px solid rgba(255,255,255,1); transform: rotate(45deg); z-index: 9; }
/* .top_bt::after { content: ''; width: 1px; height: 64px; background-color: #fff; position: absolute; left: 0; right: 0; margin: auto; top: 24px; } */



.footer.on:after { display: block; }
.footer.on .top_bt { opacity: 1; top: -30px; transition: 0.8s 0.2s; }
.footer.active .top_bt { opacity: 1; top: -30px; }

.fp-auto-height { height: auto !important;}

/*body.main .footer { width: 100%; }*/


/*서브*/

/* body.sub .all_wrap { margin-top: -65px; } */

.sub_top { position: relative; left: 0; top: 0; width: 100%;/*  max-width: 1725px;  */height: 22.625rem; margin: auto; z-index: 1; overflow: hidden; }
.sub_top:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 2; }
.sub_top_img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1;  background: url(../img/sub_top.jpg) center no-repeat; background-size: cover; animation: sub_top_img 3s 0s both; }

/* .sub_top_img.img01 { background: url(../img/sub_top01.jpg) center no-repeat; background-size: cover; opacity: 0.6; }
.sub_top_img.img02 { background: url(../img/sub_top02.jpg) center no-repeat; background-size: cover; opacity: 1; }
.sub_top_img.img03 { background: url(../img/sub_top03.jpg) center no-repeat; background-size: cover; opacity: 1; }
.sub_top_img.img04 { background: url(../img/sub_top04.jpg) center no-repeat; background-size: cover; opacity: 1; }
.sub_top_img.img05 { background: url(../img/sub_top05.jpg) center no-repeat; background-size: cover; opacity: 0.4; }
.sub_top_img.img06 { background: url(../img/sub_top06.jpg) center no-repeat; background-size: cover; opacity: 0.5; } */

.sub_top_bg { position: absolute; animation: sub_top_bg 22s 0s linear infinite; }
.sub_top_bg.bg01 { left: 9%; bottom: -30%; }
.sub_top_bg.bg02 { right: -4%; bottom: -20%; }
.sub_top_bg.bg03 { left: -5%; bottom: -35%; }
.sub_top_bg.bg04 { left: 27%; bottom: -33%; }
.sub_top_bg.bg05 { left: 13%; top: -28%; }


.sub_top_txt { width: 100%; max-width: 1100px; height: 100%; margin: auto; position: absolute; left: 0; right: 0; top: 0%; display: flex; justify-content: center; align-items: center; z-index: 9; color: #fff; text-align: center; animation: sub_top_txt 1.0s 0.6s both; }
.sub_top_txt h2 { font-family: 'copperplate'; font-size: 2.375rem; line-height: 100%; font-weight: 500; letter-spacing: 0rem; padding-left: 0rem; text-transform: uppercase; margin-top: 2rem; animation: sub_top_txt2 1.2s 1.2s both; }
.sub_top_txt h2 span { color: #0aa6b0; }

@keyframes sub_img {
	/* from { background: url(../img/sub_top.jpg) center bottom no-repeat; background-size: cover; } */
	from { background: url(../img/sub_top2.jpg) center bottom 90% no-repeat; background-size: cover; }
	to{ }
}
@keyframes sub_top_img {
	from { transform: scale(1.2); }
	to{ }
}
@keyframes sub_top_txt {
	from { opacity: 0; }
	to{ }
}
@keyframes sub_top_txt2 {
	from { letter-spacing: 3.5rem; padding-left: 4.125rem; }
	to{  }
}

#snb_wrap { width: 1100px; height: 65px; position: relative; margin: auto; margin-top: 0px; z-index: 99; }
#snb { width: 480px; height: 65px; position: absolute; right: 0; 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: #333; }
#snb > li > a { width: 100%; height: 100%; display: block; box-sizing: border-box; }
#snb > li > a:after { content:''; position: absolute; width: 1px; height: 20px; background-color: #bbb; 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 + li > a { margin-top:1px; color: #333; }
/*#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: 6px; height: 6px; border-top: 1px solid #333; border-right: 1px solid #333; transform: rotate(45deg); position: absolute; right: 18px; top: 29px; transition:0.3s; }
#snb > li:nth-child(3):after { content:''; width: 6px; height: 6px; border-top: 1px solid #333; border-right: 1px solid #333; transform: rotate(45deg); position: absolute; right: 18px; 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:#333; 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: 12px; 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; }*/

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: 8.75rem; padding-top: 0px; box-sizing: border-box; margin-top: 5rem; }
#sub_tit { width: 100%; margin-top: 0; overflow: hidden; text-align: center; }
#sub_tit h2 { font-size: 2.5625rem; 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: 'Futura Std'; font-weight: 700; }
.sub_page { margin-top: 2.875rem; position: relative; }

.sub_ori { width: 100%; max-width: 1100px; margin: auto; 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: #2e1263 url(../sub/ori.png) center no-repeat; margin-right: 18px; }
/* .sub_ori ul {  } */
.sub_ori ul li { font-size: 13px; line-height: 155%; color: #383838; font-weight: 500; letter-spacing: -1px; 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; }

.sub_tab_bt { width: 100%; margin-bottom: 20px; }
.sub_tab_bt ul { width: 100%; display: flex; justify-content: space-between; align-items: center; }
.sub_tab_bt ul li { width: 100%; margin-right: 1%; font-size: 18px; line-height: 60px; border: 1px solid #ccc; box-sizing: border-box; }
.sub_tab_bt ul li a { width: 100%; height: 100%; display: block; }
.sub_tab_bt ul li:last-child { margin-right: 0; }
.sub_tab_bt ul li.active { background-color: #000; color: #fff; border: 1px solid #000; }

.sub_img_wrap { padding-bottom: 5rem;}

/**/

.sub_cy_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; padding-bottom: 80px; }
.sub_cy_wrap img { width: 100%; max-width: 1100px; }
.sub_cy_wrap img.half { width: 50%; float: left; }

.sub_page.img { width: 100%; max-width: 1100px; margin: auto; margin-top: 3.125rem; height: auto; position: relative; }
.sub_page.img img { width: 100%; max-width: 1100px; }
.sub_img { margin-bottom: 100px; }
.sub_page.img img.half { width: 50%; float: left; }


ul.tabs2 { width: 100%; display: flex; justify-content: space-between; margin-bottom: 2.188rem; }
ul.tabs2.two { flex-wrap: wrap; }
ul.tabs2 li { width: 100%; color: #222; margin-left: 1%; text-align: center; cursor: pointer; font-size: 16px; height: 2.813rem; line-height: 2.813rem; border: 1px solid #e9eaec; font-weight: 400; background: #e9eaec; }
ul.tabs2 li a { width: 100%; height: 100%; display: block; }
ul.tabs2 li:nth-child(1) { margin-left: 0; }

ul.tabs2 li.selected, ul.tabs li.selected:hover { color: #fff; background: #2e1263 ; border: 1px solid #2e1263 ; }	
ul.tabs2 li.selected a, ul.tabs li.selected a:hover { color: #fff; }
ul.tabs2 li.active { color:#fff; background: #2e1263 ; border: 1px solid #2e1263 ; }

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

/**/

.sub_over_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; text-align: left; margin-bottom: 2.5rem; }

.sub_over_top { width: 100%; margin: auto; position: relative; display: flex; justify-content: space-between; align-items: flex-end; opacity: 0; }

.swiper_planning { width: 84%; margin: 0; padding: 0; }
.swiper_planning .sub_planning_img { width: 100%; height: 50vw; max-height: 546px; }
.sub_planning_img.img01 { background: url(../sub/planning01.jpg) center no-repeat; background-size: cover; }
.sub_planning_img.img02 { background: url(../sub/planning02.jpg) center no-repeat; background-size: cover; }
.sub_planning_img.img03 { background: url(../sub/planning03.jpg) center no-repeat; background-size: cover; }
.sub_planning_img.img04 { background: url(../sub/planning04.jpg) center no-repeat; background-size: cover; }

.swiper_planning_thumb { width: 14.36%; margin: 0; padding: 0; }

.swiper_planning_thumb .swiper-wrapper { display: flex; justify-content: space-between; flex-direction: column; }
.swiper_planning_thumb .swiper-slide { height: 100%; height: 17vw; max-height: 94px; cursor: pointer; border: none; overflow: hidden; margin-top: 0.375rem; position: relative; }
.swiper_planning_thumb .sub_planning_img { width: 100%; height: 100%; filter: grayscale(1); }
.swiper_planning_thumb .swiper-slide-thumb-active .sub_planning_img { opacity: 1; filter: grayscale(0); }
.swiper_planning_thumb .swiper-slide-thumb-active:after { content:''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; border: 3px solid #000; box-sizing: border-box; }

.swiper-button-next-planning { position: absolute; width: 75px; height: 47px; right: -12.9%; top: 0%; bottom: 0; margin: auto; padding: 0; outline: none; z-index: 99; cursor: pointer; }
.swiper-button-prev-planning { position: absolute; width: 75px; height: 47px; left: -12.9%; top: 0%; bottom: 0; margin: auto; padding: 0; outline: none; z-index: 99; cursor: pointer; }
.swiper-button-next-planning img { width: 100%; }
.swiper-button-prev-planning img { width: 100%; }

.sub_over_bottom { width: 100%; margin: auto; position: relative; margin-top: 4.5rem; opacity: 0; }
.sub_over_txt_box { margin-top: 35px; display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; padding-bottom: 0px; }
.sub_over_txt_box>div { width: 31%; margin-bottom: 50px; }
.sub_over_txt_box>div h4 { font-size: 1.25rem; line-height: 100%; font-weight: 600; color: #231815; border-bottom: 1px solid #383838; padding-bottom: 18px; }
.sub_over_txt_box>div p { font-size: 0.875rem; line-height: 170%; height: 3rem; margin-top: 18px; opacity: 0.7; font-weight: 500; }



.sub_over_top.active { opacity: 1; transition: 1.0s 0s; }
.sub_over_bottom.active { opacity: 1; transition: 1.0s 0s; }

.sub_over_top.active .over_tit b:nth-child(1) { transform: translate(0); transition: 1.3s 0.0s; }
.sub_over_top.active .over_tit b:nth-child(2) { transform: translate(0); transition: 1.3s 0.07s; }
.sub_over_top.active .over_tit b:nth-child(3) { transform: translate(0); transition: 1.3s 0.14s; }
.sub_over_top.active .over_tit b:nth-child(4) { transform: translate(0); transition: 1.3s 0.21s; }
.sub_over_top.active .over_tit b:nth-child(5) { transform: translate(0); transition: 1.3s 0.28s; }
.sub_over_top.active .over_tit b:nth-child(6) { transform: translate(0); transition: 1.3s 0.35s; }
.sub_over_top.active .over_tit b:nth-child(7) { transform: translate(0); transition: 1.3s 0.42s; }
.sub_over_top.active .over_tit b:nth-child(8) { transform: translate(0); transition: 1.3s 0.49s; }

.sub_over_top.active .over_img_box { opacity: 1; clip-path: inset(2% 37% 0% 37% round 300px); transform: rotate(30deg); transition: opacity 1.2s 1.0s, clip-path 1.5s 1.85s, transform 1.3s 3.8s; }
.sub_over_top.active .over_vd_box { transform: rotate(-30deg); transition: 1.3s 3.8s; }
.sub_over_top.active .over_txt_box.white { transform: rotate(-30deg); transition: 1.3s 3.8s; }
.sub_over_top.active .over_txt_box h4 { opacity: 1; transform: translate(0); transition: 1.3s 2.8s; }
.sub_over_top.active .over_txt_box h2 { opacity: 1; transform: translate(0); transition: 1.3s 2.8s; }



/**/

.sub_brand_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; padding-bottom: 6.25rem; }

.sub_brand_top { width: 100%; position: relative; overflow: hidden; }
.sub_brand_top_img { width: 100%; transform: scale(1.2); }
.sub_brand_top_img img { width: 100%; }
.sub_brand_tit { position: absolute; left: 4.5rem; top: 4.5rem; text-align: left; z-index: 9; opacity: 0; transform: translateX(5rem); }
.sub_brand_tit h4 { font-size: 1.25rem; line-height: 100%; }
.sub_brand_tit h2 { font-size: 1.875rem; line-height: 126%; font-weight: 200; margin-top: 1.375rem; }
.sub_brand_tit h2 b { font-weight: 700; }
.sub_brand_top h5 { font-family: 'Athena', sans-serif;  position: absolute; right: 3.75rem; bottom: 2rem; font-size: 1.5rem; line-height: 100%; color: #fff; z-index: 9; letter-spacing: 0; opacity: 0; transform: translateX(-5rem); }

.sub_brand_bottom { width: 100%; margin-top: 80px; }
.sub_brand_txt_box { width: 100%; }
.sub_brand_txt_box>div { transform: translateY(0); position: relative; display: flex; justify-content: center; align-items: center; }
.sub_brand_txt_box h2 { font-size: 2.8125rem; line-height: 100%; font-weight: 200; color: #122f5c; opacity: 0; transform: translateY(-3rem); }
.sub_brand_txt_box h2 b { font-weight: 600; }
.sub_brand_txt_box h3 { font-size: 2.375rem; line-height: 100%; font-weight: 200; letter-spacing: 4.5rem; padding-left: 3rem; color: #122f5c; }
.sub_brand_txt_box h3 b { font-weight: 600; letter-spacing: 2.5rem; padding-left: 2.5rem; margin-left: 1.5rem; }
.sub_brand_txt_box h3:first-child { opacity: 0; transform: translateX(-5rem); }
.sub_brand_txt_box h3:last-child { opacity: 0; transform: translateX(5rem); padding-left: 0; }
.sub_brand_logo { width: 6.125rem; transform: translateY(11px); opacity: 0; }
.sub_brand_txt_box p { font-size: 0.875rem; line-height: 214%; margin-top: 3.75rem; opacity: 0.7; opacity: 0; transform: translateY(3rem); }
.sub_brand_txt_box p br.tab { display: none; }

.sub_brand_content { position: relative; display: flex; justify-content: center; align-items: center; gap: 0 2.75rem; margin-top: 6.25rem; }
.sub_brand_content>div { opacity: 0; }
.sub_brand_content h4 { font-size: 0.8125rem; line-height: 100%; color: #000; margin-top: 1.125rem; font-weight: 500; }
.sub_brand_content p { font-size: 0.8125rem; line-height: 100%; color: #757575; margin-top: 0.625rem; }
.sub_brand_content p span { color: #ba9c55; }
.sub_brand_img { width: 100%; max-width: 227px; position: relative; }
.sub_brand_img img { width: 100%; filter: grayscale(0); transition: 0.6s; }
.sub_brand_img span { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
/* .sub_brand_img::after { content: ''; width: 0%; height: 1px; position: absolute; left: 0; top: 0; background-color: #fff; transition: 0.5s; z-index: 9; }
.sub_brand_img::before { content: ''; width: 0%; height: 1px; position: absolute; right: 0; bottom: 0; background-color: #fff; transition: 0.5s; z-index: 9; }
.sub_brand_img span::after { content: ''; width: 1px; height: 0%; position: absolute; right: 0; top: 0; background-color: #fff; transition: 0.5s; z-index: 9; }
.sub_brand_img span::before { content: ''; width: 1px; height: 0%; position: absolute; left: 0; bottom: 0; background-color: #fff; transition: 0.5s; z-index: 9; } */

.sub_brand_top.active .sub_brand_top_img { transform: scale(1); transition: 2.0s 0s; }
.sub_brand_top.active .sub_brand_tit { opacity: 1; transform: translate(0); transition: 1.2s 0.2s; }
.sub_brand_top.active h5 { opacity: 1; transform: translate(0); transition: 1.2s 0.4s; }
.sub_brand_txt_box.active .sub_brand_logo { opacity: 1; transition: 1.5s 0.2s; }
.sub_brand_txt_box.active h3 { transform: translate(0); opacity: 1; transition: 1.5s 0.2s; }
.sub_brand_txt_box.active p { transform: translate(0); opacity: 1; transition: 1.2s 0.4s; }
.sub_brand_content.active>div:nth-child(1) { opacity: 1; transition: 1.2s 0.2s; }
.sub_brand_content.active>div:nth-child(2) { opacity: 1; transition: 1.2s 0.4s; }
.sub_brand_content.active>div:nth-child(3) { opacity: 1; transition: 1.2s 0.6s; }

/*  */

.sub_location_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; text-align: left; padding-bottom: 5rem; }

/* .sub_location_tit { transform: translate(0); position: absolute; left: 0; top: 0; z-index: 9; display: inline-block; }
.sub_location_tit p { font-size: 1.125rem; line-height: 166%; opacity: 0; transform: translateX(5rem); }
.sub_location_tit h3 { font-size: 2rem;  line-height: 131%; font-weight: 200; margin-top: 1.25rem; opacity: 0; transform: translateX(5rem); }
.sub_location_tit h3 b { font-weight: 700; }

.c_blue { color: #2785a3; }

.sub_location_wrap .wraps { margin-top: 12rem;}

.sub_location_map_box { width: 100%; display: flex; justify-content: space-between; align-items: flex-end; position: relative; margin-top: 4.75rem; border: 1px solid #000; box-sizing: border-box; opacity: 0; border: none; margin-top: 3rem; }
.sub_location_map_wrap { width: 100%; position: relative; margin-left: 0%; }
.sub_location_map { width: 100%; height: 650px; position: relative; overflow: hidden; background-color: #f6f7f7; }
.sub_location_map_m { display: none; }
.sub_location_move { width: 600%; height: 600%; margin-left: -250%; margin-top: -148%; cursor: move; display: flex; justify-content: center; align-items: center; }
.sub_location_map img { width: 16.8%; }
.sub_location_map.active img { transform: scale(1.2); }
.sub_location_map.active2 img { transform: scale(1.45); }

.sub_location_map_plus { width: auto; height: 3.125rem; display: flex; justify-content: flex-end; align-items: center; position: absolute; bottom: 1.25rem; right: 1.25rem; z-index: 9; gap: 0 0.5rem; }
.sub_location_map_plus>div { width: 3.125rem; height: 3.125rem; border-radius: 100%; position: relative; cursor: pointer; }
.sub_location_map_plus>div:before { content: ''; width: 30%; height: 0.0625rem; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; z-index: 9; }
.sub_location_map_plus>div:after { content: ''; width: 0.0625rem; height: 30%; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; }
.sub_location_map_plus>div:nth-child(1) { background-color: #000; }
.sub_location_map_plus>div:nth-child(2) { background-color: #fff; border:1px #3d3d3d solid; }
.sub_location_map_plus>div:nth-child(2):before { background-color: #000; }

.sub_location_map_pop { width: 100%; height: 100%; position: fixed; left: 0; top: -100%; z-index: 999999999999999; transition: 0.8s; display: flex; justify-content: center; align-items: center; overflow: hidden; }
.sub_location_map_pop>div { width: 80%; position: relative; }
.sub_location_map_pop img { width: 100%; }
.sub_location_map_pop_close { width: 3.125rem; height: 3.125rem; border-radius: 100%; position: absolute; background-color: #000; z-index: 9; right: 1.25rem; top: 1.25rem; transform: rotate(-45deg); cursor: pointer; }
.sub_location_map_pop_close:before { content: ''; width: 40%; height: 1px; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; z-index: 9; }
.sub_location_map_pop_close:after { content: ''; width: 1px; height: 40%; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; background-color: #fff; }
.sub_location_map_pop_bg { width: 100%; height: 100%; position: fixed; left: -100%; top: 0; z-index: 9999998; background-color: #000; opacity: 0.7; transition: 0.6s 0.2s }

.sub_location_map_pop.active { top: 0; transition: 0.8s 0.2s; }
.sub_location_map_pop_bg.active { left: 0; transition: 0.6s 0s; }


.sub_location_bottom { width: 100%; margin: auto; position: relative; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }

.sub_location_content { width: 50%; display: flex; position: relative; box-sizing: border-box; }
.sub_location_content.con01 { justify-content: flex-end; align-items: flex-end; padding: 3.75rem 2.75rem 2.75rem 4.75rem; }
.sub_location_content.con02 { justify-content: flex-start; align-items: flex-end; padding: 3.75rem 0 2.75rem 2.75rem; }
.sub_location_content.con03 { justify-content: flex-end; align-items: flex-start; padding: 2.75rem 2.75rem 3.75rem 4.75rem; }
.sub_location_content.con04 { justify-content: flex-start; align-items: flex-start; padding: 2.75rem 0 3.75rem 2.75rem; }
.sub_location_content>div { width: 100%; position: relative; display: inline-block; opacity: 0; }
.sub_location_content.con01::after { content: ''; width: 0; height: 1px; background-color: #a0a0a0; position: absolute; left: 0; right: 2.75rem; bottom: 0; margin: auto; }
.sub_location_content.con02::after { content: ''; width: 1px; height: 0; background-color: #a0a0a0; position: absolute; left: 0; top: 0; bottom: 2.75rem; margin: auto; }
.sub_location_content.con03::after { content: ''; width: 1px; height: 0; background-color: #a0a0a0; position: absolute; right: 0; top: 2.75rem; bottom: 0; margin: auto; }
.sub_location_content.con04::after { content: ''; width: 0; height: 1px; background-color: #a0a0a0; position: absolute; left: 2.75rem; right: 0; top: 0; margin: auto; }


.sub_location_txt_box { position: relative; z-index: 9; }
.sub_location_txt_box h3 { font-size: 1.375rem; line-height: 100%; font-weight: 700; }
.sub_location_txt_box p { font-size: 0.875rem; line-height: 100%; margin-top: 1rem; }

.sub_location_icon_box { display: flex; justify-content: flex-start; align-items: center; gap: 0.625rem; margin-top: 2.125rem; }

.sub_location_tit.active h5 { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }
.sub_location_tit.active h3 { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }
.sub_location_tit.active h2 { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }
.sub_location_tit.active p { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }
.sub_location_map_box.active { opacity: 1; transition: 1.2s 0s; }
.sub_location_bottom.active .sub_location_content.con01::after { width: calc(100% - 2.75rem); opacity: 1; transition: 1.2s 0s; }
.sub_location_bottom.active .sub_location_content.con04:after { width: calc(100% - 2.75rem); opacity: 1; transition: 1.2s 0s; }
.sub_location_bottom.active .sub_location_content.con02::after { height: calc(100% - 2.75rem); opacity: 1; transition: 1.2s 0s; }
.sub_location_bottom.active .sub_location_content.con03::after { height: calc(100% - 2.75rem); opacity: 1; transition: 1.2s 0s; }
.sub_location_bottom.active .sub_location_content>div { transform: translate(0); opacity: 1; transition: 1.2s 0.2s; }


.sub_location_bottom.active { opacity: 1; transition: 1.2s 0s; }

.sub_location_content>div.active .sub_location_img { opacity: 1; transition: 1.2s 0s; }
.sub_location_content>div.active .sub_location_img img { transform: scale(1); transition: 2s 0s; }
.sub_location_content>div.active .sub_location_txt_box img { transform: translate(0); opacity: 1; transition: 1.5s 0.2s; }
.sub_location_content>div.active .sub_location_txt_box h1 { transform: translate(0); opacity: 1; transition: 1.5s 0.2s; }
.sub_location_content>div.active .sub_location_txt_box.box05 h1 { transform: rotate(90deg) translate(3rem,-8.25rem); opacity: 1; transition: 1.5s 0.2s; }
.sub_location_content>div.active .sub_location_txt_box>div { transform: translate(0); opacity: 1; transition: 1.2s 0.4s; } */

/*  */

.sub_premium_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 2.875rem 3.375rem; text-align: left; padding-bottom: 5rem; }

.sub_premium_content { width: calc(50% - 1.6875rem); display: flex; justify-content: center; align-items: center; position: relative; box-sizing: border-box; opacity: 0; transform: translateY(3rem); }
.sub_premium_content::before { content: ''; width: 0; height: 1px; position: absolute; left: -1px; top: -1px; background-color: #000; transition: 0.5s; }
.sub_premium_content::after { content: ''; width: 0; height: 1px; position: absolute; right: -1px; bottom: -1px; background-color: #000; transition: 0.5s; }

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

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

.sub_premium_content>div { width: 100%; height: 100%; padding: 3.375rem 3.125rem; display: flex; justify-content: space-between; align-items: center; box-sizing: border-box; }

.sub_premium_txt_box h2 { font-size: 1.625rem; line-height: 100%; color: #031837; font-weight: 700; }
.sub_premium_txt_box p { font-size: 0.875rem; line-height: 178%; margin-top: 1.25rem; opacity: 0.7; }

.sub_premium_icon { width: 53px; height: 53px; display: flex; justify-content: center; align-items: center; }

.sub_premium_content.con02 .sub_premium_txt_box h2,
.sub_premium_content.con03 .sub_premium_txt_box h2,
.sub_premium_content.con06 .sub_premium_txt_box h2 { color: #4a99b2; }

.sub_premium_content.active { transform: translate(0); opacity: 1; transition: 1.3s 0.2s; }

/*  */

.sub_complex_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; text-align: left; padding-bottom: 6.25rem; }

.sub_complex_tit { opacity: 1; text-align: center; opacity: 0; }
.sub_complex_tit h3 { font-size: 30px; line-height: 100%; font-weight: 200; }
.sub_complex_tit h2 { font-size: 54px; line-height: 100%; font-weight: 700; margin-top: 1.25rem; }

.sub_complex_box { margin-top: 12.5rem; position: relative; }
.sub_complex_box h1 { font-family: 'copperplate'; font-size: 6.875rem; line-height: 100%; opacity: 0.11; position: absolute; right: 0; top: 0; z-index: 1; transform: translate(85%,0%) rotate(90deg); transform-origin: left top; letter-spacing: -0.375rem; opacity: 0; }

.sub_complex_bg { position: absolute; z-index: 1; left: 15.375rem; bottom: 24.5rem; opacity: 0; }

.sub_complex_top { display: flex; justify-content: center; align-items: center; position: relative; z-index: 9; }
.sub_complex_bottom { display: flex; justify-content: space-between; align-items: flex-start; position: relative; z-index: 9; padding-bottom: 16.25rem; }


.sub_complex_content { position: relative; }
.sub_complex_content.con01 { transform: translateX(2rem); }
.sub_complex_content.con02 { margin-top: -1rem; }
.sub_complex_content.con03 { margin-top: 5.375rem; transform: translateX(-3.125rem); }

.sub_complex_img_box { position: relative; z-index: 8; opacity: 0; }
.sub_complex_img_box.box01 { transform: translate(5rem,5rem); }
.sub_complex_img_box.box02 { transform: translate(-5rem,-5rem); }
.sub_complex_img_box.box03 { transform: translate(-5rem,5rem); }

.sub_complex_txt_box { width: 19.125rem; position: absolute; height: 30.5rem; z-index: 1; display: flex; justify-content: center; flex-wrap: wrap; flex-direction: column; padding: 3.125rem 2.125rem; box-sizing: border-box; gap: 3.125rem; opacity: 0; }
.sub_complex_txt_box.box01 { background-color: #eee9d9; justify-content: flex-end; left: -16rem; top: -6.875rem; transform: translate(-5rem,-5rem); }
.sub_complex_txt_box.box02 { background-color: #462b2e; z-index: 9; justify-content: flex-start; right: -15.75rem; bottom: -16.25rem; transform: translate(-5rem,-5rem); }
.sub_complex_txt_box.box03 { width: 16.0625rem; height: 31.75rem; background-color: #eee; justify-content: flex-start; right: -3.125rem; top: -15.25rem; transform: translate(5rem,-5rem); }
.sub_complex_txt_box>div { width: 100%; }
 
.sub_complex_txt_box h2 { font-family: 'antro'; line-height: 100%; width: 140%; position: absolute; right: 16%; bottom: 18%; z-index: 9; font-size: 3.625rem; transform: rotate(-4deg); letter-spacing: -0.25rem; font-weight: 400; }
.sub_complex_txt_box.box01 h2 { left: -11.5rem; top: 4rem; }
.sub_complex_txt_box.box02 h2 { left: -12rem; bottom: 4rem; }
.sub_complex_txt_box.box03 h2 { left: -10.625rem; bottom: -6.25rem; }

.sub_complex_txt_box h3 { font-family: "Nanum Myeongjo", serif; font-size: 1.375rem; line-height: 100%; font-weight: 700; }
.sub_complex_txt_box p { font-size: 0.875rem; line-height: 178%; margin-top: 0.875rem; opacity: 0.7; font-weight: 500; }
.sub_complex_txt_box.box02 h3 { color: #eee9d9; margin-top: 1rem; }
.sub_complex_txt_box.box02 p { color: #eee9d9; font-weight: 300; }
.sub_complex_txt_box.box03 h3 { color: #000; margin-top: 1rem; }
.sub_complex_txt_box.box03 p { color: #000; font-weight: 300; }


.sub_complex_tit.active { transform: translate(0); opacity: 1; transition: 1.3s 0.2s; }
.sub_complex_box.active h1 { opacity: 0.11; transition: 1.3s 0.2s; }
.sub_complex_box.active .sub_complex_bg { transform: translate(0); opacity: 1; transition: 1.3s 0.2s; }
.sub_complex_top.active .sub_complex_img_box,
.sub_complex_bottom.active .sub_complex_img_box { transform: translate(0); opacity: 1; transition: 1.3s 0.2s; }
.sub_complex_top.active .sub_complex_txt_box,
.sub_complex_bottom.active .sub_complex_txt_box { transform: translate(0); opacity: 1; transition: 1.3s 0.2s; }

/*  */

.sub_contact_wrap { width: 100%; max-width: 1100px; margin: auto; position: relative; text-align: left; color: #010101; }

.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; flex-wrap: wrap; }

.sub_contact_bottom { width: 100%; margin-top: 5.3125rem; margin-bottom: 4.375rem; }
.sub_contact_bottom>div { width: 100%; display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; }

.sub_contact_map_box { width: 100%; width: 547px; height: 396px; border: 1px solid #cecece; position: relative; }
.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 img { width: 100%; }

.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_box { width: 100%; display: flex; justify-content: flex-start; align-items: flex-end; gap: 3.25rem; border-bottom: 1px solid #b1b1b1; margin-bottom: 2.625rem; padding-bottom: 2.625rem; opacity: 0; }
.sub_contact_box:last-child { margin: 0; padding: 0; border: none; }

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

.sub_contact_txt_box { width: auto; margin: 1.5625rem 0; margin: 0; }
.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; display: block; }
.sub_contact_add>div:first-child { padding-bottom: 2rem;}
.sub_contact_add h4 { font-size: 1.375rem; line-height: 100%; font-weight: 600; }
.sub_contact_add p { font-size: 0.9375rem; line-height: 140%; margin-top: 0.6rem; }
.sub_contact_add h6 { margin-top: 0.6rem; line-height: 140%;}
.sub_contact_top .sub_contact_add { margin-top: 3.125rem; }

.sub_contact_bt { display: flex; justify-content: flex-start; align-items: center; margin-right: 0; margin-top: 2.5rem; gap: 0.3125rem; }
.sub_contact_bt a { display: block; }

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

.map_marker { font-family: 'Pretendard'; width: auto; height: 36px; border: 2px solid #042f41; background-color: #fff; border-radius: 25px; text-align: center; display: flex; justify-content: center; align-items: center; padding: 0 15px; position: relative;
box-sizing: border-box; }
.map_marker p { font-size: 13px; line-height: 100%; color: #000; font-weight: 600; }
.map_marker:after { content:''; width: 0px; height: 0px; border-top: 8px solid #042f41; border-left: 5px solid transparent; border-right: 5px solid transparent; position: absolute; left: 0; right: 0; bottom: -8px; margin: auto; }
/*.map_marker.mk01 { width: 82px; z-index: 9; }*/
/*  */

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

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

/**/

.sub_gongo_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; color: #000; }

.sub_gongo_top { width: 100%; height: 494px; display: flex; justify-content: space-between; align-items: center; overflow: hidden; }

.sub_gongo_img_box { width: 57.545%; height: 100%; background: url(../sub/gongo.jpg) center no-repeat; background-size: cover; }

.sub_gongo_txt_box { width: 40%; height: 100%; display: flex; flex-direction: column; justify-content: space-between; text-align: left; }
.sub_gongo_txt_box>div { width: 100%; height: 50%; border: 1px solid #b2b2b2; box-sizing: border-box; margin-bottom: 5%; position: relative; }
.sub_gongo_txt_box>div>a { width: 100%; height: 100%; display: block; box-sizing: border-box; padding: 50px 30px 45px; }
.sub_gongo_txt_box>div:nth-child(2) { margin-bottom: 0; }
.sub_gongo_logo { margin-left: 2px; }
.sub_gongo_txt_box h2 { font-size: 28px; line-height: 100%; margin-top: 10px; margin-left: -2px; }
.sub_gongo_txt_box p { font-size: 12px; line-height: 167%; opacity: 0.7; margin-top: 25px; }

.sub_gongo_bt { width: 48px; height: 48px; background-color: #e3e3e3; position: absolute; right: 35px; bottom: 35px; border-radius: 100%; }
.sub_gongo_bt>div { width: 30px; height: 17px; position: absolute; left: -10px; top: 0; bottom: 0; margin: auto; transition: 0.4s; }
.sub_gongo_bt>div:before { content:''; width: 100%; height: 1px; background-color: #000; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; }
.sub_gongo_bt>div:after { content:''; width: 10px; height: 10px; border-right: 1px solid #000; border-bottom: 1px solid #000; transform: rotate(-45deg); transform-origin: center; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; }

.sub_gongo_notice { width: 100%; display: flex; justify-content: space-between; align-items: center; margin-top: 30px; }
.sub_gongo_notice a { width: 13%; display: block; }
.sub_gongo_notice img:nth-child(1) { width: 59%; }
.sub_gongo_notice a img:nth-child(1) { width: 100%; }
.sub_gongo_notice img:nth-child(3) { width: 28%; }

.sub_gongo_txt_box>div>a:before { content:''; width: 0; height: 1px; background-color: #000; position: absolute; left: -1px; top: -1px; transition: 0.4s; }
.sub_gongo_txt_box>div>a:after { content:''; width: 1px; height: 0; background-color: #000; position: absolute; right: -1px; top: -1px; transition: 0.4s; }
.sub_gongo_txt_box>div:before { content:''; width: 0; height: 1px; background-color: #000; position: absolute; right: -1px; bottom: -1px; transition: 0.4s; }
.sub_gongo_txt_box>div:after { content:''; width: 1px; height: 0; background-color: #000; position: absolute; left: -1px; bottom: -1px; transition: 0.4s; }

.sub_gongo_txt_box>div:hover>a:before { width: calc(100% + 2px); }
.sub_gongo_txt_box>div:hover>a:after { height: calc(100% + 2px); }
.sub_gongo_txt_box>div:hover:before { width: calc(100% + 2px); }
.sub_gongo_txt_box>div:hover:after { height: calc(100% + 2px); }

.sub_gongo_txt_box>div:hover .sub_gongo_bt>div { left: -3px; }

/**/

.news_wrap { width: 100%; max-width: 1100px; margin: auto; height: auto; position: relative; }

.news_content_box { width: 100%; max-width: 1300px; margin: auto; }
.news_content_vd { width: 100%; box-sizing: border-box; padding: 52px 0; display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #a2a2a2; border-bottom: 1px solid #a2a2a2; text-align: left; margin-bottom: 50px; }
.news_img { width: 55%; max-width: 550px; }
.news_img img { width: 100%; }
.news_txt_box { width: 45%; }
.news_txt_box h6 { font-size: 11.5px; line-height: 100%; padding: 3px 9px; border-radius: 10px; margin-left: -2px; margin-bottom: 8px; margin-top: -10px; text-transform: uppercase; background-color: #ff7200; color: #fff; font-weight: 500; display: inline-block; }
.news_txt_box h4 { font-size: 14px; line-height: 100%; color: #754e38; font-weight: 500; }
.news_txt_box h3 { font-size: 22px; line-height: 100%; font-weight: 600; margin-top: 8px; overflow: hidden; padding-bottom: 3px; }
.news_txt_box p { font-size: 15px; line-height: 192%; opacity: 0.6; font-weight: 400; margin-top: 20px;  }
.news_bt { display: flex; justify-content: flex-start; align-items: center; margin-top: 35px; font-size: 14px; font-weight: 800; text-transform: uppercase; position: relative; display: inline-block; opacity: 1; transition: 0.3s; }
.news_bt:after { content:''; width: 0; height: 1px; background-color: #737373; position: absolute; left: 40px; top: 0; bottom: 0; margin: auto; transition: 0.5s; }

.news_content_vd:hover .news_bt:after { width: 40px; }

.news_content { display: flex; justify-content: flex-start; flex-wrap: wrap; width: 100%; position: relative; overflow: hidden; text-align: left; color: #000; }
.news_content>li { width: 32%; margin-right: 2%; border: 1px solid #bbb; box-sizing: border-box; position: relative; }
.news_content>li>a { width: 100%; height: 100%; display: block; position: relative; padding: 40px; padding-bottom: 45px; padding-left: 35px; box-sizing: border-box; }
.news_content>li:after { content:''; width: 1px; height: 0; background-color: #000; position: absolute; left: -1px; bottom: -1px; transition: 0.5s; z-index: 9; }
.news_content>li:before { content:''; width: 1px; height: 0; background-color: #000; position: absolute; right: -1px; top: -1px; transition: 0.5s; z-index: 9; }
.news_content>li:nth-child(3n) { margin-right: 0; }
.news_content>li:nth-child(n+4) { margin-top: 6%; }

.news_content>li h4 { font-size: 17px; line-height: 100%; color: #ff6000; font-weight: 500; }
.news_content>li h2 { font-size: 18px; line-height: 137%; font-weight: 700; margin-top: 15px; height: 137%; text-overflow: ellipsis; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; }
.news_content>li p { font-size: 15px; line-height: 192%; opacity: 0.7; margin-top: 15px; height: 192%; text-overflow: ellipsis; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; }
.news_content>li h6 { font-size: 11.5px; line-height: 100%; padding: 3px 9px; position: absolute; right: 0; top: 0; margin-bottom: 8px; text-transform: uppercase; background-color: #ff7200; color: #fff; font-weight: 500; display: inline-block; }

.news_content>li>a:after { content:''; width: 0; height: 1px; background-color: #000; position: absolute; left: -1px; top: -1px; transition: 0.5s; z-index: 9; }
.news_content>li>a:before { content:''; width: 0; height: 1px; background-color: #000; position: absolute; right: -1px; bottom: -1px; transition: 0.5s; z-index: 9; }

.news_content>li:hover:after,.news_content>li:hover:before { height: calc(100% + 2px); }
.news_content>li:hover>a:after,.news_content>li:hover>a:before { width: calc(100% + 2px); }
.news_content>li:hover .news_bt:after { width: 40px; }

/**/

.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; }

.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: #4f372b !important; border: 1px solid #4f372b !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 #4f372b; }
.vr_pop ul.tabs2 li.selected a, .vr_pop ul.tabs li.selected a:hover { color: #444; }