/********************************************************** 
* card-motion - 텍스트 효과
***********************************************************/
.card-motion figure { position:relative; overflow:hidden; background:none; }
.card-motion figure img { opacity:0; -webkit-clip-path:polygon(0 0, 0 0, 0 100%, 0 100%); clip-path:polygon(0 0, 0 0, 0 100%, 0 100%); -webkit-transition:clip-path 2.8s cubic-bezier(.19, 1, .22, 1), opacity 2s ease, -webkit-clip-path 2.8s cubic-bezier(.19, 1, .22, 1); transition:clip-path 2.8s cubic-bezier(.19, 1,.22,1), opacity 2s ease, -webkit-clip-path 2.8s cubic-bezier(.19, 1, .22, 1); }

.card-motion.animate figure img { opacity:1; -webkit-clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); }

.card-motion figure .video_card { opacity:0; -webkit-clip-path:polygon(0 0, 0 0, 0 100%, 0 100%); clip-path:polygon(0 0, 0 0, 0 100%, 0 100%); -webkit-transition:clip-path 2.8s cubic-bezier(.19, 1, .22, 1), opacity 2s ease, -webkit-clip-path 2.8s cubic-bezier(.19, 1, .22, 1); transition:clip-path 2.8s cubic-bezier(.19, 1,.22,1), opacity 2s ease, -webkit-clip-path 2.8s cubic-bezier(.19, 1, .22, 1); }
.card-motion.animate figure .video_card { opacity:1; -webkit-clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); }


@media(max-width:1024px){
    .card-motion figure img{ opacity:1; -webkit-clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); }
    .card-motion figure .video_card { opacity:1; -webkit-clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); }
}	

/**** panel ****/
.panel-wrap .panel .panel-title { position:relative; cursor:pointer; }
.panel-wrap .panel .panel-content { display:none; }
.panel-wrap .panel .icon-panel { position:absolute; right:5%; top:50%; width:16px; height:16px; transform:translate(0, -50%); }
.panel-wrap .panel .icon-panel::before, .panel-wrap .panel .icon-panel::after { content:""; position:absolute; background-color:#93c3eb; transition:transform 0.25s ease-out, opacity 0.25s ease-out; }
.panel-wrap .panel .icon-panel::before { top:0; left:50%; width:2px; height:100%; margin-left:-1px; }
.panel-wrap .panel .icon-panel::after { top:50%; left:0; width:100%; height:2px; margin-top:-1px; }
.panel-wrap .panel .icon-panel.open::before { transform:rotate(-45deg);  background-color:#fff; }
.panel-wrap .panel .icon-panel.open::after {transform:rotate(-45deg);  background-color:#fff;  }


#content{ background: #f9f7f3;}
.main_cont_wrap { position: relative; padding: 9rem 0 3rem; }
 
.arch_f_in { opacity:0;}
 
 
.upBtn { overflow:hidden; position:relative;}
.upBtn span { display: block; transition:0.4s; }
.upBtn span:nth-of-type(1) { transform: translateY(0);}
.upBtn span:nth-of-type(2) { position: absolute;  top:0 ; transform: translateY(200%);}
a:hover .upBtn span:nth-of-type(1) {transform: translateY(-200%);}
a:hover .upBtn span:nth-of-type(2) {transform: translateY(0);}

/********************************************************** 
* main_arch
***********************************************************/
.main_arch { width: 100%; padding: 0;  }
.main_arch .inner {width: 100%; height: 100vh; margin: 0 auto; position: relative; overflow: hidden; }
#main_arch_video { width: 100%; height: 100%; object-fit: cover; } 
.main_arch .inner > ul { position:absolute; top: 3rem; left:50%; transform:translateX(-50%); width: 100%; max-width:1700px; display: flex; align-items:center; justify-content: space-between; }
.main_arch .inner > ul li {font-family: "Aboreto", serif; color:#fff; font-size:1.25rem;}

.scrdwn { font-size:15px; color:#fff;  font-family: "Aboreto", serif; position: absolute;  bottom: 3rem; left: 0%; width: 100%; text-align: center; }
.scrdwn > i { width: 13px; height: 90px; display: inline-block; background: url("../img/scrdwn_icon.png") 50% 50%/cover no-repeat; margin-top:1rem;}

.main_arch .arch {  position:absolute; top:50%; left: 50%; transform:translate(-50%,-50%); overflow:hidden; 
width: 28.375rem; height:26.313rem; border-radius:227px 227px 0 0; } 
.main_arch .arch > img { width:2500px; max-width:2500px; height: 100%;object-fit:cover; position:absolute; top:50%; left: 50%; transform:translate(-50%,-50%);    object-position: center;  }
.arch_letter { position:absolute; top:45%; left: 50%; transform:translate(-50%,-50%); } 

.arch_movin_txt { overflow:hidden; display: flex; align-items:center; white-space: nowrap; width: 100%; position:absolute; bottom: 2rem; left:0; transform:translateY(140px);opacity:0; cursor: default;}
.arch_movin_txt p { animation: scrollLeft 10s linear infinite; font-family: "Aboreto", serif; color:#fff; font-size:6.625rem; margin-right:2rem;}
@keyframes scrollLeft {
    0% {
        transform: translateX(0); 
    }

    100% {
        transform: translateX(-50%); 
    }
}


/********************************************************** 
* main_softhera
***********************************************************/
.main_softhera { background: url("../img/main_softhera_bg.jpg") 50% 50%/cover no-repeat;     padding: 8rem 0 8rem; }
.main_softhera .inner {  position:relative; display: flex; justify-content:center; align-items:center; }
.main_softhera .tits { display: flex; align-items:center; flex-direction:column; text-align:center; width: 50%; line-height:1.4;}
.main_softhera .emphasize { color:#75859e; }
.main_softhera .tit01 { font-size:1.375rem; }
.main_softhera .tit02 { font-size:6.35rem; color:#75859e;/*  font-family: "Aboreto", serif; */ margin-top:0rem; line-height: 1;  }
.main_softhera .tit03 { font-size:1.563rem; margin-top:2.5rem;}
.main_softhera .tit04 { font-size:1.188rem; margin-top:2rem;}
.main_softhera .moreBtn { font-size:1.125rem; font-family: "Aboreto", serif; color:#fff; background:#75859e; width: 11rem; height: 2.938rem; display: flex; align-items: center; justify-content:center; margin-top:3rem; gap:0.5rem; cursor: pointer;}
.main_softhera .moreBtn i { display: block; width: 1.75rem; height: 0.375rem; background: url("../img/softhera_btn_arrow.png") 50% 50%/cover no-repeat;}
.main_softhera .imgs { position:relative; width: 43%;}
.rotate-bg { position: absolute; top: 3%; left: 1%; z-index: 2; width: 10.75rem; height: 7.313rem;}
.rotate-bg img { animation:rotate 10s linear infinite; }
@keyframes rotate{
	0%{ transform: rotate(0deg);}
	100%{ transform: rotate(360deg);}
}

.main_softhera .re01_sun{position: absolute;background:url(../img/main_softhera_line.png) no-repeat;width:0;max-width:100%;height:100%; z-index:0}
.ani_delay.re01_sun.animate {animation: wave 2.5s ease-out forwards;}
@keyframes wave {0% {width: 0;}100% {width: 100%;}}
@keyframes wave0 {0% {top:85px;opacity: 0;}100% {top:40px;opacity: 1;}}
@keyframes wave11 {0% {top:135px;opacity: 0;}100% {top:90px;opacity: 1;}}
@keyframes wave22 {0% {top:240px;opacity: 0;}100% {top:189px;opacity: 1;}}
@keyframes wave33 {0% {top:52px;opacity: 0;}100% {top:102px;opacity: 1;}}
@keyframes wave44 {0% {bottom:115px;opacity: 0;}100% {bottom:55px;opacity: 1;}}
@keyframes wave55 {0% {bottom:-125px;opacity: 0;}100% {bottom:-78px;opacity: 1;}}
@keyframes wave1 {0% {top:130px;opacity: 0;}100% {top:91px;opacity: 1;}}
@keyframes wave2 {0% {top:121px;opacity: 0;}100% {top:74px;opacity: 1;}}
@keyframes wave3 {0% {top:-42px;opacity: 0;}100% {top:5px;opacity: 1;}}
@keyframes wave4 {0% {bottom:-170px;opacity: 0;}100% {bottom:-136px;opacity: 1;}}
@keyframes wave5 {0% {bottom:-110px;opacity: 0;}100% {bottom:-99px;opacity: 1;}}


/********************************************************** 
* main_banner
***********************************************************/
.main_banner strong { font-weight:600;}
.main_banner {background: url("../img/main_banner_bg.jpg") 50% 50%/cover no-repeat; padding:0; line-height:1.4; }
.main_banner .tits { padding: 7rem 0; text-align:center; color:#fff;} 
.main_banner .tit01 { font-size: 1rem;  font-family: "Aboreto", serif;} 
.main_banner .tit02 { font-size: 1.75rem; margin-top: 1rem; display: flex; align-items:center; justify-content:center;} 
.main_banner .tit02 span { font-family: "Aboreto", serif; font-size: 1.75rem;}
.main_banner .tit02 + .tit02 { margin-top:0rem;}
.main_banner .tit03 { font-size: 1.25rem;margin-top: 1.5rem;} 
 

.bgDiv01 {  background: url("../img/bgDiv01.jpg") 50% 50%/cover no-repeat; }
/********************************************************** 
* main_svf
***********************************************************/
.main_svf {  padding: 9rem 0 5rem; }
.main_svf .inner { display: flex; justify-content:flex-start; align-items:center; max-width:1920px; margin: 0 auto;}
.main_svf .emphasize { color:#75859e; }
.main_svf .tits { display: flex; align-items:center; flex-direction:column; text-align:center; width: 50%; line-height:1.4;}
.main_svf .tit01 { font-size:1.375rem; }
.main_svf .tit02 {  font-size:6.35rem; color:#75859e;  margin-top:0rem; }
.main_svf .tit03 { font-size:1.563rem; margin-top:1rem;}
.main_svf .tit04 { font-size:1.188rem; margin-top:2rem;}
.main_svf .imgs { position:relative;}
.main_svf .rotate-bg { position: absolute; top: 3%; left:auto ; right: 1%; }
.main_svf .moreBtn { font-size:1.125rem; font-family: "Aboreto", serif; color:#fff; background:#75859e; width: 11rem; height: 2.938rem; display: flex; align-items: center; justify-content:center; margin-top:3rem; gap:0.5rem; cursor: pointer;}
.main_svf .moreBtn i { display: block; width: 1.75rem; height: 0.375rem; background: url("../img/softhera_btn_arrow.png") 50% 50%/cover no-repeat;}


/********************************************************** 
* main_body
***********************************************************/
.main_body { text-align: center; line-height:1.4; padding: 0 0 9rem;}
.main_body ul { display: flex; align-items:center; justify-content:center; margin-top:5rem; gap: 8rem;}
.main_body li { font-family: "Aboreto", serif; font-size:6.25rem; }
.main_body .txt { text-align:center; margin-top:5rem; font-size:1.188rem;}
.main_body li.n02 { display: flex; align-items:flex-start; }
.spell_wrap { line-height:1; height:89px;  border-bottom: 3px solid #000;  padding: 0.4rem 0; margin-right: 3rem; }
.main_spell_swiper {height:100%;  font-size:4.625rem; overflow: hidden; color:#75859e;}
.main_spell_swiper p { }

.main_spell_swiper .swiper-slide p {overflow:hidden;}
.main_spell_swiper .swiper-slide p span {  transform: translateY(100%); }
.main_spell_swiper .swiper-slide.aniActive p span {  display: inline-block;   transform: translateY(0%); }
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(1) {transition:0.2s; }
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(2) {transition:0.4s;}
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(3) { transition:0.6s;}
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(4) {transition:0.8s;}
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(5) {transition:1.0s;}
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(6) {transition:1.2s;}
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(7) {transition:1.4s;}
.main_spell_swiper .swiper-slide.aniActive p span:nth-of-type(8) {transition:1.6s;}
@keyframes slideUpIn {
    0% {
        transform: translateY(100%); 
    }
    100% {
        transform: translateY(0%); 
    }
}


/********************************************************** 
* main_hvr
***********************************************************/
.main_hvr { padding:0; transition:0.5s;}
/* .main_hvr.on01 { background: url("../img/main_hvr_bg_b.jpg") 50% 50%/cover no-repeat; }  */
.main_hvr .hvrBg { position:absolute;top:0; left:0; width: 100%; height: 100%; opacity:0; visibility:hidden; transition:.6s ease-out;object-fit: cover;}
.main_hvr.on01 .hvrBg.n01 {  opacity:1; visibility:visible; }
.main_hvr.on02 .hvrBg.n02 {  opacity:1; visibility:visible; }
.main_hvr.on03 .hvrBg.n03 {  opacity:1; visibility:visible; }
.main_hvr.on04 .hvrBg.n04 {  opacity:1; visibility:visible; }
.main_hvr > ul {  display: flex; align-items:flex-start;}
.main_hvr > ul li { width: 25%; height: 43rem; padding: 6.25rem; position:relative; border-right:1px solid rgba(255,255,255,0.6); cursor:default; }
.main_hvr > ul li:last-of-type { margin-right:0;}
.main_hvr > ul li p { opacity:0.4; color:#fff; transition:0.5s;}
.main_hvr > ul li.on p { opacity:1;}
.main_hvr > ul li .aphb {  font-family: "Aboreto", serif; font-size:6.25rem; }
.main_hvr > ul li .txts { position:absolute; right:4.25rem; bottom:6.25rem;}
.main_hvr > ul li .txt01 { font-family: "Aboreto", serif; font-size: 1.5rem; border-bottom:1px solid #fff; display: inline-block;}
.main_hvr > ul li .txt02 { font-size: 1.125rem; line-height:1.5; margin-top:2rem;}

.main_hvr ul li .aphb_pc { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
/********************************************************** 
* main_itro
***********************************************************/
.main_itro { line-height:1.4;}
.main_itro .inner { position:relative;}
.main_itro_swiper { margin-top:2.5rem;}
.main_itro_swiper .swiper-slide { width: auto !important; }
.main_itro  strong { font-weight:500;}
.main_itro .tits { padding-left: 6.875rem; position:relative; color:#4e4139;}
.main_itro .tit01 { font-family: "Aboreto", serif; font-size:2.688rem; line-height:1.5;}
.main_itro .tit01 strong { font-weight:600;}
.main_itro .tit02 { font-size:1.25rem; margin-top:1rem;}
.main_itro_swiper .txt01 { margin-top:1rem; font-size:1.063rem;}
.main_itro_swiper span { font-family: "Aboreto", serif; font-size:1.438; }
.swiper-button-next.main-itro-next, .swiper-button-prev.main-itro-prev{ width: 5.438rem; height: 5.438rem; top:auto; bottom:0;  }
.swiper-button-next.main-itro-next:after, .swiper-button-prev.main-itro-prev:after { display: none;}
.swiper-button-next.main-itro-next {background: url("../img/main-itro-next.png") 50% 50%/cover no-repeat; right: 6.875rem; } 
.swiper-button-prev.main-itro-prev{background: url("../img/main-itro-prev.png") 50% 50%/cover no-repeat; left:auto; right: 14rem;}
.main_itro .rotate-bg { top:auto; left: 5%; bottom:-19%; width: 15.938rem; height: 15.938rem; z-index: 0;	}

/********************************************************** 
* main_info
***********************************************************/
.main_info { line-height:1.5; padding: 9rem 0 0rem;}
.main_info .tit { font-family: "Aboreto", serif; font-weight: 600; font-size:1.875rem; text-align:center; }
.main_info .emphasize { color:#75859e;}
.main_info .inner { max-width:1920px; margin:2.5rem auto 0; display: flex; align-items:center; gap: 6rem; }
.main_info .illu {/* box-shadow: 2px 2px 11px rgba(119, 113, 107, .2); */} 
.main_info .txts { padding-bottom: 3rem;}
.main_info .schedule { margin-top: 2rem;}
.main_info .schedule li { display: flex; font-size: 1.25rem; font-weight: 500; color:#4e4139;}
.main_info .schedule li.sig { display: inline-block; color:#b0a286; border-bottom: 2px solid #b0a286;  margin-top:1.5rem;}
.main_info .schedule li .dys {  width: 6.625rem; display: flex; align-items: center;  justify-content: space-between; margin-right:1rem;} 
.main_info .schedule li .sm { font-size: 1.063rem; }
.main_info .schedule li .tm { font-weight:400; }
.main_info .schedule li + li {    margin-top: 0.4rem;}
.main_info .cntct { font-family: "Aboreto", serif; font-weight: 600; font-size: 2.25rem; margin-top:2.2rem; display: inline-block; letter-spacing:2px; color:#4e4139;}
.main_info .addrss { font-size: 1.438rem; font-weight: 600;margin-top:2.5rem; color:#4e4139;}
.main_info .addrss02 {color:#4e4139; font-size: 1.188rem; margin-top: 1rem;} 
.main_info .btns { display: flex; align-items:center; justify-content:flex-start; gap: 1rem;	margin-top:1.5rem; }
.main_info .btns a {	width: 10.563rem; height: 2.813rem; display: flex; align-items:center; justify-content:center; border-radius:23px; color:#fff; }
.main_info .btns a.kko { background: #d9ba3d; border: 1px solid #d9ba3d; }
.main_info .btns a.kko i { display: block; width: 1.5rem; height: 1.375rem; background: url("../img/main_info_kko.png") 50% 50%/cover no-repeat; margin-right:0.5rem; }
.main_info .btns a.nvr { background: #469c55; border: 1px solid #469c55; }
.main_info .btns a.nvr i { display: block; width: 0.938rem; height: 0.938rem; background: url("../img/main_info_nvr.png") 50% 50%/cover no-repeat;margin-right:0.5rem; }
.main_info .parking { display: flex; align-items:flex-start; font-size: 1.188rem;margin-top:2.5rem; gap:1rem; color:#4e4139;}
.main_info .parking .blue { font-size: 1.313rem;  color:#75859e; font-weight:500;}