@charset "UTF-8";

*, *:before, *:after { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
.all_wrap{overflow: hidden;position: relative;}

.jarallax {position: relative;z-index: 0;height: 100%;}
.jarallax > .jarallax-img {position: absolute;  object-fit: cover;  top: 0;  left: 0;  width: 100%;  height: 100%;  z-index: -1;}


/* 관리자 로그인 */
.main_admin {position: fixed; z-index: 11; top: 105px;right: 10px ;}
.main_admin a {font-size: 14px; background: #fff; border-radius: 5px; margin-bottom: 5px; width: 100px; height: 30px; display: inline-block; text-align: center;line-height: 30px;font-weight: 500; }


/* 공통 */
.width{width: 92% !important; max-width: 1360px; margin: 0 auto; position: relative;}
.width1100{width: 92% !important; max-width: 1100px; margin: 0 auto; position: relative;}

.common{padding: 160px 0px;}

:root{
	--main-color: #453a3a;

    --fs128: 12.8rem;
    --fs100: 10rem;
    --fs95: 9.5rem;
    --fs96: 9.6rem;
    --fs85: 8.5rem;
    --fs80: 8.0rem;
    --fs75: 7.5rem;
    --fs70: 7.0rem;
    --fs65: 6.5rem;
    --fs62: 6.2rem;
    --fs60: 6.0rem;
    --fs58: 5.8rem;
    --fs55: 5.5rem;
    --fs54: 5.4rem;
    --fs52: 5.2rem;
    --fs50: 5.0rem;
    --fs48: 4.8rem;
    --fs46: 4.6rem;
    --fs45: 4.5rem;
    --fs42: 4.2rem;
    --fs40: 4.0rem;
    --fs38: 3.8rem;
    --fs37: 3.7rem;
    --fs36: 3.6rem;
    --fs35: 3.5rem;
    --fs34: 3.4rem;
    --fs32: 3.2rem;
    --fs30: 3.0rem;
    --fs29: 2.9rem;
    --fs28: 2.8rem;
    --fs27: 2.7rem;
    --fs26: 2.6rem;
    --fs25: 2.5rem;
    --fs24: 2.4rem;
    --fs23: 2.3rem;
    --fs22: 2.2rem;
    --fs21: 2.1rem;
    --fs20: 2.0rem;
    --fs19: 1.9rem;
    --fs18: 1.8rem;
    --fs17: 1.7rem;
    --fs16: 1.6rem;
    --fs15: 1.5rem;
    --fs14: 1.4rem;
}


@media all and (max-width: 1024px) {
	.common{padding: 90px 0px;}
	.board_title{margin-bottom: 90px;}
}

.gar_re { font-family: 'EB Garamond Regular';}
.gar_sb {  font-family: 'EB Garamond SemiBold';}
.gar_b {  font-family: 'EB Garamond Bold'; }
.top0 {padding-top: 0;}
.center{text-align: center;}
.left{text-align: left;}
.box_wrap {display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;}



#header{width: 100%;background: transparent; position: fixed;top: 0;z-index: 999; transition: 0.3s all; }
#header .head_menu .logo{}
#header.scroll{background: var(--main-color);}

#header .head_menu{position: relative;display: flex;justify-content: space-between;align-items: center;width: 100%; height: 90px;}
#header .head_menu .pc_head { width: 85%;}
#header .head_menu .main_menu { width: 100%; display: flex; justify-content: right; align-items: center; text-align: center; height: 100%; z-index: 9;}
#header .head_menu .main_menu .dept1 { width: 20%; position: relative; padding: 15px 0px;}
#header .head_menu .main_menu .dept1 > a { font-size: 2.0rem; font-weight: 400;  color: #fff;}
#header .head_menu .main_menu .dept1 > a.active {  font-weight: bold; }
#header .head_menu .main_menu .dept1 > a.menuon {  font-weight: bold; }

#header .head_menu .sub_menu { position: absolute; top: 100%;transform: translateX(-50%); width: 100%;  display: none; padding-bottom: 30px;}
#header .head_menu .main_menu .dept2 { padding: 12px 0px; }
#header .head_menu .main_menu .dept2 a { font-size: 1.7rem; color: #fff; display: block;}
#header .main_menu .dept2>a:hover,
#header .main_menu .dept2>a:active,
#header .main_menu .dept2>a.menuon,
#header .main_menu .dept2>a:focus { font-weight: bold;}
#header .menu_bg {background: transparent; width: 100%;height: 0;left: 0;z-index: 1;position: absolute; transition: 0.3s all;}
#header.scroll .menu_bg {background: var(--main-color); }

.menu_open { position: fixed; width: 100%; height: 100vh;
background: #fff; top: 0; left: 0; z-index: 999; padding: 55px 50px 50px 50px; display: none; }
.menu_open .site_map_wrap h2 { margin-bottom: 150px; display: flex; justify-content: space-between; align-items: center;}
.menu_open .site_map { display: flex; justify-content: space-between; width: 100%; }
.menu_open .site_map .dept1 { width: 24%; }
.menu_open .site_map .dept1:last-child { border-right: 0px; }
.menu_open .site_map .dept1 > a { font-size: 2.8rem; font-weight: 700; padding-bottom: 30px; border-bottom: 2px solid #eee; display: block; margin-bottom: 30px;}
.menu_open .site_map .dept1 > a.active { color: var(--main-color); }
.menu_open .site_map .dept1 .site_menu{padding-left:30px;}
.menu_open .site_map .dept2 a { font-size: 2.0rem; position: relative; line-height: 120%; margin-bottom: 30px; display: inline-block; padding-bottom: 3px; }
.menu_open .site_map .dept2 a::after { content: ''; width: 0; height: 3px; background: var(--main-color); position: absolute; bottom: 0; left: 0; transition: 0.3s all; }
.menu_open .site_map .dept2 a:hover::after { width: 100%; }
.hd_bg { background: #fff; width: 100%; height: 0; left: 0; z-index: 1; position: absolute; }
.site_foot{padding-top: 20px;margin-top: 150px; border-top: 2px solid #eee; text-align: center;}

#header .menu_bar { z-index: 99; position: relative; text-align: right; display: flex; flex-direction: column; justify-content: center; align-items: end; gap: 6px 0 ;}
#header .menu_bar span { width: 22px; height: 2px; background: #fff; display: block;  }

#header .menu_bar span:nth-child(1) { }
#header .menu_bar span:nth-child(2) { width: 14px; }
#header .menu_bar span:nth-child(3) { width: 10px; }
#header .menu_bar2 { z-index: 9999; position: relative; }
#header .menu_bar2 span:nth-child(1) { display: none; }
#header .menu_bar2 span:nth-child(2) { width: 22px; transform: rotate(130deg); }
#header .menu_bar2 span:nth-child(3) {  width: 22px; transform: rotate(45deg); top: 0px; position: absolute; }
#header .menu_bar2 span { width: 22px; height: 2px; background: #262626; display: block; margin: 6px}

#header .head_tran_wrap {display: flex;gap: 0 20px;}
#header .head_translation {display: flex; gap: 0 10px; border: 1px solid #fff; padding: 4px 8px; border-radius: 30px; box-sizing: border-box;}
#header .head_translation span { font-size: 1.6rem; font-weight: 400; color: #fff;}
#header .head_translation li.on span, #header .head_translation li:hover span {font-weight: 700;}

/* 모바일 */
.mobile_head {width: 100%; height: 60px; display: flex; justify-content: space-between; align-items: center; padding: 0px 15px; display: none; position: fixed; background: var(--main-color); z-index: 99; }
.mobile_head .mobile_logo { width: 55px; }
.mobile_head .mobile_logo img { width: 100%; }
.mobile_head .mobile_btn {display: flex; gap: 0 20px;}
.mobile_head .mob_translation {display: flex; gap: 0 10px; border: 1px solid #fff; padding: 4px 8px; border-radius: 30px; box-sizing: border-box;}
.mobile_head .mob_translation li {display: flex; align-items: center;}
.mobile_head .mob_translation span { font-size: 1.6rem; font-weight: 400; color: #fff;}
.mobile_head .mob_translation li.on span{font-weight: 700;}



#mobile_menu {  display: none; position: fixed; top: 0; right: -75%; width: 75%; background: #fff; z-index: 1000; height: 100vh; overflow-y: scroll; -ms-overflow-style: none; scrollbar-width: none;}
#mobile_menu::-webkit-scrollbar{display: none;}
#mobile_menu .mob_logo { width: 100%; padding: 0px 10px; height: 70px; background: #fff;display: flex; justify-content: space-between; align-items: center;}
#mobile_menu .mob_logo a { width: 55px; }
#mobile_menu .mob_logo a img { width: 100%; }
#mobile_menu .mobile_close { font-size: 30px; cursor: pointer; color: #333;}
#mobile_menu .mob_menu .top_menu {display: flex;justify-content: space-between; align-items: center; padding: 15px 0px; font-size: 14px; margin: 0px 10px; border-bottom: 1px solid #8e8e8e;}
.mobile_open{font-size: 24px;}
.mobile_open i {color: #fff;}
#mobile_menu .mob_menu .topmenu.on { color: #fff; }
#mobile_menu .mob_menu .sub_menu { padding: 15px 0px; margin: 0px 20px; border-bottom: 1px solid #ccc; background: #fff; visibility: visible; }
#mobile_menu .mob_menu .sub_menu a {display: block; color: #333 ;font-size: 15px; padding: 10px; background: #fff;}
#mobile_menu .mob_menu_btn{display: flex; padding: 10px 0px; margin: 0px 20px; justify-content: space-between;}
#mobile_menu .mob_menu_btn li{width: 49%;}
#mobile_menu .mob_menu_btn a{font-size: 17px;  background: #ddd;display: flex; height: 50px; justify-content: center; align-items: center;}
#mobile_menu .mob_menu_btn a i{font-size: 16px; margin-right: 5px;}
.mob_bg {  display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: rgba(0, 0, 0, 0.5); z-index: 99;}

@media screen and ( max-width: 1400px ){
#pcmenu .topmenu { font-size: 16px; }
#pcmenu .submenu a { font-size: 14px; }
}
@media screen and ( max-width: 1024px ){
#header { display: none; }
.mobile_head{display: flex;}
}


/* #################################메인페이지 시작################################# */
/* 공통 */
.right {width: 49px; height: 49px; border-radius: 50%; background: #fff; display: flex; justify-content: center; align-items: center; border: 2px solid #ddd; overflow: hidden;}


.right:hover img {animation: right_ani 0.5s  cubic-bezier(0.7, 0, 0.3, 1) 1; ; animation-iteration-count: 1; }


@keyframes right_ani {
    0% { transform: translateX(0%); }
    40% { transform: translateX(32px); } /* 빠르게 이동 */
    41% { transform: translateX(-32px); } /* 빠르게 반대편으로 이동 */
    100% { transform: translateX(0%); }
  }
/* 메인비주얼 */
.theme_visual {position: relative;}
.Hfull {position: relative; z-index: 8;}
.swiper_visual {display:block;height:100%;margin:0px auto;overflow:hidden;position:relative; z-index: 1;}
.swiper_visual .swiper-slide {position:relative; height: auto !important;}
.swiper_visual .swiper-slide .main_visual img{width: 100%;}
.swiper_visual .swiper-slide .main_visual #video {width: 100% ; height: auto;}


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


.scrollDown {position: absolute; left: 11%; bottom: 0; z-index: 3; height: 180px;}
.scrollDown span {display: block; width: 80px; height: 80px; background: var(--main-color); border-radius: 50%; }
.scrollDown p {position: absolute; left: 50%; top: -30px; transform: translate(-50%, 0%) rotate(-90deg);font-size: 14px; color: #fff; font-weight: 300 ;  width: 130%; letter-spacing: 0; animation: scroll infinite 1s linear; }




@media all and (max-width: 1024px){
    .Hfull {margin-top: 60px;}
}
@media all and (max-width: 768px){
    .right {width: 35px; height: 35px; }
}

@keyframes scroll {
    0% {top: -30px;} 
    50% {top: -40px;}
    100% {top: -30px;}
}

/* 메인 텍스트 */
.maintext_box { position: absolute; z-index: 5; left: 0; right: 0; top: 0; height: 100%; display: flex; justify-content: center; flex-direction: column; padding-bottom: 5%;}
.maintext_box h2{ color: #fff; font-size: var(--fs58); font-weight: 700;    line-height: 1.2;  text-align: center; text-shadow: 0 0 7px rgba(0, 0, 0, 0.2); opacity: 0; } 
.maintext_box h2 br {display: none; opacity: 0;}
.maintext_box h6{ color: #fff; font-size: var(--fs26); text-align: center; line-height: 1.6; font-weight: 500; opacity: 0;margin-bottom:20px;}
.maintext_box p{ color: #fff; font-size: var(--fs22); text-align: center; line-height: 1.4; font-weight: 500; opacity: 0;}
.maintext_box .more_btn {display: block; margin-left: auto; margin-right: auto; cursor: pointer; margin-top: 60px; display: flex; }
.maintext_box .more_btn p{ color: #fff; font-size: var(--fs18); opacity: 1;}
.maintext_box .more_btn i{ color: #fff; font-size: var(--fs18); opacity: 1;}
@media all and (max-width: 1024px){
}
@media all and (max-width: 768px){
    .pc{display: none !important;}
    .mob{display: block !important;}
    
}



@media all and (max-width: 1600px) {
}
@media all and (max-width: 1200px) {
    
}
@media all and (max-width: 1024px) {
}
@media all and (max-width: 900px) {
}
@media all and (max-width: 768px) {
  .maintext_box  { padding-bottom: 10%;}
  .maintext_box p br {display: none; }
}
@media all and (max-width: 650px) {
    .maintext_box h2{ font-size: var(--fs45);}
    .maintext_box h6{font-size: var(--fs26); margin-bottom: 20px;}
    .maintext_box p{font-size: var(--fs22); margin-top: 10px;}
    .maintext_box h2 br {display: block;}
    .maintext_box .more_btn { margin-top: 40px;}
    .maintext_box .more_btn p { margin-top: 0;}
}

/* 하단 */
#ft{background: var(--main-color);}
#ft .ft_wrap {padding: 40px 0;}
#ft .box_wrap {justify-content: space-between;}
#ft .foot_info {text-align: left; margin: 30px 0;}
#ft .foot_info2 {text-align: left;} 
#ft span {font-size: var(--fs16); color: #fff; font-weight: 300;  line-height: 1.6;}
#ft p {font-size: var(--fs14); color: #b18071;  font-weight: 300;}
#ft .foot_info2 p {} 
@media all and (max-width: 1400px) {
}
@media all and (max-width: 1200px) {
}
@media all and (max-width: 1024px) {
  #ft .box_wrap {flex-direction: column;}
  #ft .foot_info {text-align: center;}
  #ft .foot_info .flogo {margin-bottom: 20px;}
  #ft br {display: none;}
  #ft span {text-align: center; width: 100%; display: block;}
  #ft .nbsp {display: none;}
  #ft p {text-align: center;}
}
@media all and (max-width: 900px) {
}
@media all and (max-width: 768px) {
}
@media all and (max-width: 650px) {
}


/* sub_visual */
.sub_visual{width: 100%;height: 450px; background-repeat: no-repeat !important;background-size: cover !important;background-position: center top !important; display: flex; flex-direction: column; align-items: start; justify-content: center;}
.sub_visual .sub_top_text{text-align: center; color: #fff; padding-top: 50px;}
.sub_visual .sub_top_text h3{font-size: var(--fs35); font-weight: 800; color: #fff; text-align: center; line-height: 1.2;}
.sub_visual .sub_top_text p{font-size: var(--fs28); color: #fff; text-align: center; line-height: 1.2; font-weight: 500;}
@media all and (max-width: 1024px) {
	.sub_visual{height: 350px;}
}
@media all and (max-width: 650px) {
}

/* lnb */
.lnb_wrap{position: relative;}
.lnb{background: #fff; border-bottom: 1px solid #ddd;}
.lnb .lnb_map{height: 60px; display: flex; align-items: center; border-left: 1px solid #f1f1f1;}
.lnb .lnb_map .home{width: 60px; height: 100%;background: #fff;display: flex;justify-content: center;align-items: center;}
.lnb .lnb_map .home a{color: #333;}
.lnb .lnb_map .home i{font-size: 20px;}
.lnb .lnb_map > li{width: 250px; height: 100%;border-right: 1px solid #f1f1f1; padding: 0px 15px;position: relative;}
.lnb .lnb_map li.dep a{width: 100%; height: 100%;display: flex;align-items: center; font-size: 14px;}
.lnb .lnb_map li.dep a span{width: 100%;display: flex; justify-content: space-between;align-items: center; font-size: 1.7rem; color: #333;}
.lnb .lnb_map li.dep a span i{font-size: 16px;}
.lnb .lnb_map li.dep ul{display: none;position: absolute;left: 0; top: 61px;width: 100%;z-index: 10;}
.lnb .lnb_map li.dep ul li{width: 100%; background: #f9f9f9; border-bottom: 1px solid #fff;}
.lnb .lnb_map li.dep ul li a{padding: 15px 15px;font-size: 1.6rem;}
.lnb .lnb_map li.dep ul li a:hover{background: var(--main-color); color: #fff;transition: 0.3s all;}
.lnb .lnb_map li.dep ul li a.on{background: #f1f1f1;}

@media screen and (max-width:1400px) {
  .lnb .lnb_map{width: 100% !important;}
}
@media screen and (max-width:900px){
  .lnb .lnb_map{height: 55px;}
  .lnb .lnb_map .home i{font-size: 16px;}
  .lnb .lnb_map li.dep ul{top: 56px;}
}
@media screen and (max-width:600px){
  .lnb .lnb_map{height: 50px;}
  .lnb .lnb_map .home{width: 12%;}
  .lnb .lnb_map li{width: 44%;}
  .lnb .lnb_map li:last-child{width: 44%;}
  .lnb .lnb_map li.dep ul{top: 51px;}
  .lnb .lnb_map li.dep a{font-size: 12.5px;}
  .lnb .lnb_map li.dep ul li a{font-size: 12.5px;}
}

/* #################################메인페이지 시작################################# */

/* 페이지 네비, 게시판 등 */
/* .bo_cate_link{border-radius: 30px;}
.bo_v_topcon .bo_v_cate{border-radius: 30px;} */
#bo_gall .is_notice{border-radius: 30px;}
.quick_banner{z-index: 99; right: 20px; bottom: 20px; position: fixed;animation: quickBounce .8s infinite alternate;}
@keyframes quickBounce {
    from {
      transform: translateY(0px);
    }
    to {
      transform: translateY(-15px);
    }
  }

@keyframes quickBounce2 {
	0%,
	80%,
	100% {
		-webkit-transform: scale(0);
		transform: scale(0);
	}

	40% {
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}

#top_btn{width: 45px; height: 45px;border: none; background: #fff; border-radius: 50%;box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2); transition: 0.3s all;}
#top_btn span{font-size: 14px; font-weight: bold;}
#top_btn:hover{background: #eee; color: #000;}

.floating_menu { width: 45px; height: 45px; border-radius: 50%; background: var(--main-color); position: fixed; bottom: 52px; z-index: 99; }
.floating_menu input { position: absolute; width: 45px; height: 45px; margin: 0; opacity: 0; cursor: pointer; }
.floating_menu input:checked ~ .floating_plus { transform: rotate(135deg); }
.floating_menu input:checked ~ .floating_nav li:nth-child(1) { transform: translatey(-52px); opacity: 1; }
.floating_menu input:checked ~ .floating_nav li:nth-child(2) { transform: translatey(-104px); opacity: 1; }
.floating_menu input:checked ~ .floating_nav li:nth-child(3) { transform: translatey(-156px); opacity: 1; }
.floating_menu input:checked ~ .floating_nav li:nth-child(4) { transform: translatey(-208px); opacity: 1; }
.floating_menu input ~ .floating_plus { transform: rotate(0); }
.floating_menu > .floating_plus { display: flex; justify-content: center; align-items: center; width: 45px; height: 45px; font-size: 20px; color: #FFFFFF; background:var(--main-color); border-radius: 50%; transform: rotate(0); transition: all 0.5s ease; pointer-events: none; box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2); }
.floating_menu > .floating_plus i { line-height: normal !important; }
.floating_menu > .floating_nav { display: flex; justify-content: center; align-items: center; padding: 0; margin: 0; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: -1; }
.floating_nav li { display: flex; justify-content: center; align-items: center; width: 45px; height: 45px; border-radius: 50%; background: #fff; cursor: pointer; position: absolute; transition: all 0.5s ease; box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2); opacity: 0; }
.floating_menu > .floating_nav li a i { font-size: 20px; color: #222; }
.floating_menu > .floating_nav li a i.xi-kakaotalk { font-size: 28px; margin-top: 3px; }

.pg_wrap{margin-top: 60px; display: flex; justify-content: center; width: 100%;}
.pg_wrap .pg{display: flex;}
.pg_page{width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; margin: 0 2px; background-color: none; border: 1px solid #ccc;}
.pg_current{border: 1px solid #8e8e8e; width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; margin: 0 2px; background: none;}


/* 갤러리 */
@media all and (max-width: 1024px) {
	.gall_row .col-gn-4{width: 33.33333%;}
	.gall_row .col-gn-5{width: 25%;}
}

@media all and (max-width: 850px) {
	.gall_row .col-gn-4, .gall_row .col-gn-3, .gall_row .col-gn-5{width: 50%;}
	#bo_cate ul{flex-wrap: wrap;}
    #bo_cate li {width: 32.5% ; display: flex; align-items: center;}
    #bo_cate a {font-size: 10px;  line-height: 35px; height: 35px; width: 100%; display: inline-block;}
}

@media all and (max-width: 600px) {
    #bo_cate li {width: 49% ;}
	.gall_row .col-gn-4, .gall_row .col-gn-3, .gall_row .col-gn-5, .gall_row .col-gn-2{width: 100%;}
}

/* 리스트 */
@media all and (max-width: 850px) {
	.prdt_list .prdt_top th.psize, .prdt_list .prdt_table .psize{display: none;}
	.prdt_list .prdt_top th.pcolor, .prdt_list .prdt_table .pcolor{display: none;}
}

@media all and (max-width: 650px) {
    
	.prdt_list .prdt_top th.num{min-width: 60px;}
	.prdt_list .prdt_top th.pintro, .prdt_list .prdt_table .pintro{display: none;}
	.prdt_list .prdt_top th.pname{width: 100%;}
	.prdt_list .prdt_table .pname{text-align: center;}
}



/* 퀵 */
.quick_menu{position: fixed; z-index: 10; top: 50%;  right: 20px; transform: translate(0, -50%); display: flex; flex-direction: column; width: 80px; border-radius: 40px; overflow:hidden; background: #fff; box-shadow: 3px 3px 15px rgba(32   , 96,132, 0.14); }
.quick_menu a:first-child {padding-top: 18px;}
.quick_menu a:last-child {padding-bottom: 18px;}
.quick_menu a{display: flex; flex-direction: column; justify-content: center; align-items: center;  padding: 15px 0px; }
.quick_menu a span{font-size: 14px; transition: all 0.3s; margin-top: 10px; color: #494949;}

.quick_menu a:hover span {color: var(--main-color); font-weight: 700;}
.quick_menu2{position: fixed; z-index: 15; bottom: 0; width: 100%; background: #fff; display: flex; display: none; border-top:  1px solid #dddddd; padding: 15px 0; }
.quick_menu2 a{display: flex; flex-direction: column; width: 25%; text-align:center; border-right: 1px solid #dddddd; align-items: center;}
.quick_menu2 a:last-child{border-right: 0px;}
.quick_menu2 a span{font-size: 1.4rem; font-weight: 500; color: #494949; margin-top: 10px;}
.quick_menu2 a img {height: 32px; width: auto;}


@media all and (max-width: 1024px) {
  .quick_menu2 {display: flex;}
  .quick_menu {display: none;}
}



/* 써클 애니메이션 */
