@charset "utf-8";
/* layout.css는 전체적인 레이아웃 스타일을 정의합니다. */

#skipToContent a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skipToContent a:focus, 
#skipToContent a:active {width:200px;height:50px;background:#21272e;color:#fff;font-size:14px;font-weight:bold;text-align:center;text-decoration:none;line-height:50px}

#wrapper{position:relative;padding-top:140px;}
/* header */
#header {position:fixed;left:0;top:0;right:0;z-index:90;background-color: #fff;transition:.3s;}
#header:after{content:'';width:100%;height:1px;background-color: #ccc;position: absolute;left:0;top:140px;opacity:0;transition:.2s;}
#header:hover:after{opacity:1;}
#header .contain{display:flex;align-items:center;justify-content:flex-end;max-width:1780px;height:140px;}
#header .sitelogo {position:absolute; top:44px; left:60px; z-index:2}
#header .sitelogo a {display:block;}

#header .inner{position:relative;padding-bottom:0;}
#header .inner .link{height:40px;padding-top:15px;}
#header .inner .link ul{display:flex;justify-content:flex-end;margin:0 -12px;}
#header .inner .link ul li{position:relative;padding:0 12px;}
#header .inner .link ul li:after{content:'';width:1px;height:10px;background-color: #ccc;position: absolute;right:0;top:6px;}
#header .inner .link ul li:last-child:after{display:none;}

#header .inner .wrap{position:relative;}

#header.header-up{transform:translateY(-100%);}

#gnb{padding-right:295px;}
#gnb>ul {display:flex; justify-content:flex-end;margin:0 -69px;} 
#gnb>ul>li {position:relative; text-align:center; padding:0 69px;}
#gnb>ul>li>a {position:relative; display:inline-block; color:#333;line-height:100px;font-size:20px;font-weight:700;}
#gnb>ul>li>a:after{content:'';width:24px;height:24px;border-radius:50%;background-color:var(--snd);position: absolute;left:50%;bottom:-12px;transform:translateX(-50%);z-index:1;transition:.2s;opacity:0;}
#gnb>ul>li:hover>a:after{opacity:1;}

#gnb .submenu {position:absolute; left:0; width:100%; height:0; overflow:hidden; z-index:20;}
#gnb .submenu ul {display:block; padding:30px 0 35px;}
#gnb .submenu ul li {margin-bottom:10px;text-align:center;}
#gnb .submenu ul li:last-child{margin-bottom:0;}
#gnb .submenu ul li a {display:inline-block;font-size:16px; line-height:1.3em;position:relative;}
#gnb .submenu ul li a:hover {color:var(--pri);}

html[lang=en] #gnb {padding-right:240px;}
html[lang=en] #gnb>ul {margin:0 -32px;}
html[lang=en] #gnb>ul>li {padding:0 32px;}

.submenu-bg {position: absolute;left:0;top:140px;right:0;background-color:#fff;}

.lang {max-width:100px;width:100%;position:absolute;right:67px;top:50%;margin-top:-20px;z-index:1;}
.lang .tit {width:100%;display:flex;justify-content:center;align-items:center;height:40px;}
.lang .tit span{position:relative;padding-left:34px;color: #333;line-height:1.2em;}
.lang .tit span:before{content:'';position: absolute;left:0;top:-2px;width:21px;height:21px;background:url('/images/common/ic-lang.png')no-repeat 0 50%/contain;}
.lang .lang-open {display:none; position:absolute; top:40px;width:100%; left:0;padding:15px 10px;border:1px solid #ccc;text-align:center;background-color: #fff;border-radius:var(--bd8);}
.lang .lang-open ul li{margin-bottom:3px;}
.lang .lang-open ul li:last-child{margin-bottom:0;}
.lang .lang-open ul li a {transition:.3s;color: #333;}
.lang .lang-open ul li a:hover{color:var(--pri);}
.lang.active .lang-open {display:block;}
.lang.active .tit:after{transform:rotate(180deg);}

#header.header-up{transform:translateY(-100%);}


.contain {position:relative; max-width:1460px; padding-left:30px; padding-right:30px; margin:0 auto;}
#contArea {max-width:1460px; padding-left:30px; padding-right:30px; margin:0 auto;}
#contArea.wide {max-width:100%; padding-left:0; padding-right:0;}

/* main */ 
.main-visual {position:relative; overflow:hidden;height:790px;}
.main-visual .video{position:relative;height:100%;}
.main-visual .video:after{content:'';width:100%;height:100%;background:rgba(0,0,0,.4);position: absolute;left:0;top:0;}
.main-visual video{position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.main-visual .tt-wrap{position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:1460px;width:100%;padding:0 30px;color: #fff;z-index:1;}
.main-visual .tt-wrap .year{font-size: clamp(1.75rem, 0.8947rem + 3.4211vw, 5rem);line-height:1.1em;font-weight:700;font-family:var(--gm);}
.main-visual .tt-wrap .tit{margin-bottom:10px;font-size: clamp(1.5rem, 0.9079rem + 2.3684vw, 3.75rem);line-height:1.2em;font-weight:800;}
.main-visual .tt-wrap .date{margin-bottom:5px;font-size: clamp(1.125rem, 0.8289rem + 1.1842vw, 2.25rem);line-height:1.3em;font-weight:500;}
.main-visual .tt-wrap .place{font-size: clamp(0.875rem, 0.7105rem + 0.6579vw, 1.5rem);line-height:1.3em;font-weight:500;}

.main-visual .scroll {position:absolute; bottom:45px; left:50%;text-align:center; z-index:50; animation:move_up_down 2s linear infinite;} 
@keyframes move_up_down { 
  0%,100%{ 
    transform:translate(-50%,0); 
  } 
  50% { 
    transform:translate(-50%,15px); 
  } 
}

.main-bnr{padding:35px 0 20px;background:url('/images/main/main-bnr-bg.jpg')no-repeat 50% 50%/cover;color: #fff;overflow:hidden;}
.main-bnr .contain{display:flex;align-items:center;}
.main-bnr .notice{display:flex;align-items:flex-end;position:relative;padding-left:155px;padding-right:60px;margin-right:60px;max-width:940px;min-width:0;width:1%;flex:1 1 auto;}
.main-bnr .notice:after{content:'';width:1px;height:80px;background-color: #eabeca;position: absolute;right:0;top:50%;transform:translateY(-50%);}
.main-bnr .notice .wrap{min-width:0;width:1%;flex:1 1 auto;padding-right:40px;}
.main-bnr .notice .wrap .tit{margin-bottom:15px;font-size:var(--fz24);font-weight:800;line-height:1.2em;}
.main-bnr .notice .wrap .sld .item a{display:flex;}
.main-bnr .notice .wrap .sld .item a .date{margin-right:20px;}
.main-bnr .notice .wrap .sld .item a p{min-width:0;width:1%;flex:1 1 auto;display: inline-block;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;}
.main-bnr .notice .arrs{display:flex;}
.main-bnr .notice .arrs .slick-arrow{margin-right:10px;width:40px;height:40px;border-radius:50%;font-size:0;background-color:#fff;background-position:50% 50%;border:1px solid #e4e4e4;background-repeat:no-repeat;background-size:10px;transition:.3s;}
.main-bnr .notice .arrs .slick-arrow:last-child{margin-right:0;}
.main-bnr .notice .arrs .slick-prev{background-image:url('/images/main/arr-prev.png');}
.main-bnr .notice .arrs .slick-next{background-image:url('/images/main/arr-next.png');}
.main-bnr .notice .arrs .slick-arrow:hover{background-color:#f69031;border-color: #f69031;}
.main-bnr .notice .arrs .slick-prev:hover{background-image:url('/images/main/arr-prev-on.png');}
.main-bnr .notice .arrs .slick-next:hover{background-image:url('/images/main/arr-next-on.png');}
.main-bnr .d-day{position:relative;padding-right:225px;}
.main-bnr .d-day:after{content:'';width:89px;height:83px;background:url('/images/main/bnr-img.png')no-repeat 100% 50%/contain;position: absolute;right:40px;bottom:-20px;}
.main-bnr .d-day .tit{font-size:var(--fz20);font-weight:800;line-height:1.4em;}
.main-bnr .d-day .day{font-size: clamp(1.75rem, 1.2237rem + 2.1053vw, 3.75rem);font-weight:800;line-height:1.15em;}

.sec1{margin:100px 0;}
.sec1 ul{display:flex;margin:0 -20px;}
.sec1 ul li{width:33.3333%;padding:0 20px;}
.sec1 ul li .img{position:relative;}
.sec1 ul li .img img{border-radius:var(--bd36);}
.sec1 ul li .img .btn-more{display:flex;justify-content:center;align-items:center;position:absolute;right:30px;bottom:30px;width:150px;height:42px;border-radius:21px;border:1px solid #ccc;transition:.3s;background-color: #fff;}
.sec1 ul li .img .btn-more span{position:relative;padding-left:20px;color: #333;line-height:1.2em;transition:.3s;}
.sec1 ul li .img .btn-more span:before{content:'';position: absolute;left:0;top:3px;width:13px;height:11px;background:url('/images/main/more-arr.png')no-repeat 0 50%/contain;transition:.3s;}
.sec1 ul li a:hover .img .btn-more{background-color:var(--pri);}
.sec1 ul li a:hover .img .btn-more span{color: #fff;}
.sec1 ul li a:hover .img .btn-more span:before{background-image:url('/images/main/more-arr-on.png');}
.sec1 ul li .wrap{margin-top:30px;padding-left:40px;}
.sec1 ul li .wrap .tit{margin-bottom:10px;font-size:var(--fz26);font-weight:800;line-height:1.2em;color: #242424;}

.sec2{margin-bottom:150px;}
.sec2 .box-con{display:flex;border-radius:var(--bd24);overflow:hidden;}
.sec2 .box-con .col{width:50%;}
.sec2 .box-con .col.schedule{padding:30px 40px;background-color: #fff2e8;}
.sec2 .box-con .col.schedule .tit-wrap{display:flex;align-items:center;justify-content:space-between;padding-bottom:15px;margin-bottom:15px;border-bottom:1px solid #ccc;}
.sec2 .box-con .col.schedule .tit-wrap .schedule-tit{font-size:var(--fz24);font-weight:800;color: #333;line-height:1.2em;}
.doc-more{display:flex;justify-content:center;align-items:center;width:80px;height:30px;border-radius:15px;line-height:1.2em;background-color: #fff;border:1px solid #ccc;transition:.3s;}
.doc-more:hover{background-color:var(--pri);color: #fff;}
.sec2 .box-con .col.schedule .cnt .row{display:flex;}
.sec2 .box-con .col.schedule .cnt .row .date{position:relative;width:135px;padding-left:25px;color: #333;font-size:var(--fz18);font-weight:800;}
.sec2 .box-con .col.schedule .cnt .row .date:before{content:'';width:13px;height:13px;background-color:var(--pri);border-radius:50%;position: absolute;left:0;top:5px;}
.sec2 .box-con .col.schedule .cnt .row .info{min-width:0;width:1%;flex:1 1 auto;padding-top:3px;}
.sec2 .box-con .col.schedule .cnt .row .info ul li{margin-bottom:10px;}
.sec2 .box-con .col.schedule .cnt .row .info ul li:last-child{margin-bottom:0;}
.sec2 .box-con .col.schedule .cnt .row .info ul li .tit{margin-bottom:3px;font-weight:800;}
.sec2 .box-con .col.map{position:relative;}
.sec2 .box-con .col.map .tit{display:inline-block;position: absolute;left:30px;top:30px;font-size:var(--fz24);font-weight:800;color: #333;padding:15px 30px;line-height:1.2em;border-radius:28px;background-color: #fff;}
.sec2 .box-con .col.map .more{display:flex;justify-content:center;align-items:center;position: absolute;right:50px;bottom:45px;width:76px;height:76px;border-radius:50%;background-color:var(--pri);}

.sec3{padding-bottom:100px;}
.sec3 .flex{display:flex;margin:0 -22px;}
.sec3 .flex>div{width:50%;padding:0 22px;}
.sec3 .news .tit-wrap{display:flex;align-items:center;justify-content:space-between;margin-bottom:50px;}
.sec3 .news .tit-wrap .tit{color:#333;font-size:var(--fz26);font-weight:800;}
.sec3 .news ul li{margin-bottom:18px;}
.sec3 .news ul li:last-child{margin-bottom:0;}
.sec3 .news ul li a{display:flex;position:relative;padding-left:16px;line-height:1.3em;}
.sec3 .news ul li a:before{content:'';width:3px;height:3px;border-radius:50%;background-color: #555;position: absolute;left:0;top:8px;}
.sec3 .news ul li a .date{min-width:87px;margin-right:10px;}
.sec3 .news ul li a p{min-width:0;width:1%;flex:1 1 auto;display: inline-block;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;}

.sec3 .link ul{display:flex;flex-wrap:wrap;margin:0 -10px -20px;}
.sec3 .link ul li{width:50%;padding:0 10px;margin-bottom:20px;}
.sec3 .link ul li a{display:flex;align-items:center;position:relative;min-height:130px;height:100%;padding:20px 35px;border:1px solid #ccc;border-radius:var(--bd16);transition:.3s;background-color: #fff;}
.sec3 .link ul li a .tit{position:relative;padding-bottom:45px;letter-spacing:0;color: #333;font-weight:800;font-size:var(--fz24);line-height:1.3em;transition:.3s;}
.sec3 .link ul li a .tit:after{content:'';position: absolute;left:0;bottom:5px;width:18px;height:17px;background:url('/images/main/link-arr.png')no-repeat 0 50%/contain;transition:.3s;}
.sec3 .link ul li a:after{content:'';position: absolute;right:30px;top:50%;margin-top:-27px;width:58px;height:55px;background:url('/images/main/sec3-ic1.png')no-repeat 100% 50%/contain;transition:.3s;}
.sec3 .link ul li.st2 a:after{background-image:url('/images/main/sec3-ic2.png');}
.sec3 .link ul li.st3 a:after{background-image:url('/images/main/sec3-ic3.png');}
.sec3 .link ul li.st4 a:after{background-image:url('/images/main/sec3-ic4.png');}

.sec3 .link ul li a:hover{background-color:var(--pri);}
.sec3 .link ul li a:hover .tit{color: #fff;}
.sec3 .link ul li a:hover .tit:after{background-image:url('/images/main/link-arr-on.png');}
.sec3 .link ul li a:hover:after{background-image:url('/images/main/sec3-ic1-on.png');}
.sec3 .link ul li.st2 a:hover:after{background-image:url('/images/main/sec3-ic2-on.png');}
.sec3 .link ul li.st3 a:hover:after{background-image:url('/images/main/sec3-ic3-on.png');}
.sec3 .link ul li.st4 a:hover:after{background-image:url('/images/main/sec3-ic4-on.png');}

.doc-bnr{display:flex;align-items:center;position:relative;height:154px;background:url('/images/common/bnr-bg.jpg')no-repeat 100% 50%/cover;}
.doc-bnr:before{content:'';position: absolute;right:0;top:-216px;width:176px;height:216px;background:url('/images/common/bnr-deco.jpg')no-repeat 100% 50%/contain;z-index:-1;}
.doc-bnr .contain{max-width:1114px;width:100%;}
.doc-bnr ul{display:flex;align-items:center;margin:0 -15px;}
.doc-bnr ul li{padding:0 15px;width:25%;}
.doc-bnr ul li a{display:flex;justify-content:center;align-items:center;height:80px;padding:10px;background-color: #fff;border:1px solid #ddd;}

/* sub page */
.sub-visual {position:relative; height:360px; z-index:10;overflow:hidden;}
.sub-visual .tit{position: absolute;left:0;top:50%;transform:translateY(-50%);z-index:1;color: #fff;width:100%;text-align:center;font-size: clamp(1.75rem, 1.2237rem + 2.1053vw, 3.75rem);line-height:1.2em;font-weight:800;}
.sub-visual .festival{display:flex;justify-content:flex-end;position: absolute;left:50%;bottom:30px;transform:translateX(-50%);max-width:1460px;width:100%;padding:0 30px;color: #fff;font-weight:500;z-index:1;}
.sub-visual .festival .date{margin-bottom:10px;font-size: clamp(1rem, 0.6711rem + 1.3158vw, 2.25rem);line-height:1.2em;}
.sub-visual .festival .place{font-size: clamp(0.875rem, 0.7105rem + 0.6579vw, 1.5rem);line-height:1.2em;}
.sub-visual .background {
	position:absolute; 
	top:0; 
	left:0;
	width:100%; height:100%;	
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
	transform:scale(1.09);
    -ms-transform:scale(1.09); /* IE 9 */
    -moz-transform:scale(1.09); /* Firefox */
    -webkit-transform:scale(1.09); /* Safari and Chrome */
    -o-transform:scale(1.09); /* Opera */
	transition: all 2s ease-out 0s;
	transition-delay: 0.1s;
	z-index:0;
}
.sub-visual.load .background {
	transform:scale(1);
    -ms-transform:scale(1); /* IE 9 */
    -moz-transform:scale(1); /* Firefox */
    -webkit-transform:scale(1); /* Safari and Chrome */
    -o-transform:scale(1); /* Opera */
}

.lnb{background-color:var(--pri);}
.lnb ul{display:flex;justify-content:center;}
.lnb ul li{width:auto;padding:0 22px;}
.lnb ul li a{display: flex;justify-content:center;align-items:center;position:relative;height:80px;line-height:1.3em;color: #fff;font-size: clamp(0.9375rem, 0.8553rem + 0.3289vw, 1.25rem);text-align:center;font-weight:500;}
.lnb ul li a:after{content:'';width:calc(100% + 20px);height:5px;background-color:var(--snd);position: absolute;left:50%;bottom:-1px;transform:translateX(-50%);opacity:0;}
.lnb ul li.active a{color:var(--snd);}
.lnb ul li.active a:after{opacity:1;}

.real-cont {padding:100px 0 180px;}
/* .real-cont.type2{padding-bottom:250px;} */

/* footer */
#footer {padding:50px 0;background-color: #333;}
#footer .contain{display:flex;align-items:center;}
#footer .foot-logo{margin-right:75px;padding-bottom:20px;}
#footer .foot-info{min-width:0;width:1%;flex:1 1 auto;margin-right:60px;color: #fff;}
#footer .foot-info address{margin-bottom:13px;font-style:normal;}
#footer .foot-info address p{margin:0 -5px;}
#footer .foot-info address p span{padding:0 5px;}
#footer .foot-info .copy{letter-spacing:0;line-height:1.3em;}
#footer .foot-info .copy span{margin-right:14px;}
#footer .foot-info .copy a{display:inline-block;color: #d5d5d5;font-size:12px;}

.scroll-top{display:flex;justify-content:center;align-items:center;width:60px;height:60px;border-radius:50%;background-color:var(--pri);}
.scroll-top span{position:relative;padding-top:15px;color: #fff;line-height:1.2em;font-size:14px;font-weight:700;letter-spacing:0;}
.scroll-top span:after{content:'';width:15px;height:8px;background:url('/images/common/top.png')no-repeat 50% 50%/contain;position: absolute;left:50%;top:0;margin-left:-7.5px;}

.insta-bnr{position: fixed;right:30px;bottom:40px;z-index:100;display:flex;justify-content:center;align-items:center;width:140px;height:140px;border-radius:50%;background-color: #fff;border:1px solid #ccc;text-align:center;}
.insta-bnr .ic{display:flex;justify-content:center;align-items:center;margin-bottom:5px;}
.insta-bnr p{line-height:1.25em;color: #333;font-weight:700;}

/* for mobile */
.only-mobile {display:none;}
.btn-m-menu {display:block; position:absolute; top:50%; margin-top:-12px; right:0; width:24px; height:24px;  text-align:center; text-indent:-9999em; z-index:99; transition:all 0.5s ease-in-out;}
.btn-m-menu span {position:absolute; right:0; top:50%; margin-top:-1px; height:2px; width:23px;background:#000;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; right:0; width:24px; height:2px; background:#000; transition-duration:0.3s, 0.3s; transition-delay:0.3s, 0s;}
.btn-m-menu span:before {top:-10px; transition-property:top, transform;}
.btn-m-menu span:after {bottom:-10px; transition-property:bottom, transform;}
.mobile-navigation {position:fixed; top:0; right:0; padding:20px 0; width:400px; height:100%; overflow:auto; transition:.3s ease-in-out; -ms-transform:translateX(100%); transform:translateX(100%); background:#fff; z-index:202;}
.mobile-navigation .home {margin-bottom:20px; padding-left:15px;}
.mobile-navigation .home img {height:23px;}
.mobile-navigation .nav-menu>ul{margin-top:30px;}
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #dfdfdf;}
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:12px 15px; display:block; color:#454545; font-size:18px; font-weight:500; line-height:1.3em;}
.mobile-navigation .nav-menu>ul>li a:after{content:""; position:absolute; top:50%; right:15px; transform:translateY(-75%) rotate(45deg); width:10px; height:10px; border-right:2px solid #2c2c2c; border-bottom:2px solid #2c2c2c;}
.mobile-navigation .nav-menu>ul>li:last-child a:after{display:none;}
.mobile-navigation .nav-menu>ul>li.active>a {color:#ba254d}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:#ba254d;}
.mobile-navigation .nav-menu .submenu {display:none; margin:-1px 0 0 0; padding:0 15px 15px;}
.mobile-navigation .nav-menu .submenu>ul:after {content:"";display:block;clear:both;}
.mobile-navigation .nav-menu .submenu>ul>li>a {display:block; position:relative; padding:5px 15px; color:#454545; font-size:16px; font-weight:400; line-height:1.3em;}
.mobile-navigation .nav-menu .submenu>ul>li>a:after {display:block; content:"";position:absolute; top:14px; left:5px; width:4px; height:4px; background:#dfdfdf; border-radius:50%; transition:.3s ease-in-out;}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover{color:#ba254d}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after {background:#ba254d}
.mobile-navigation .close {position:absolute; top:20px; right:15px; width:24px; height:24px; text-indent:-9999em; overflow:hidden;}
.mobile-navigation .close:before,
.mobile-navigation .close:after {content:" "; position:absolute; top:12px; left:0; width:100%; height:2px; background:#2c2c2c;}
.mobile-navigation .close:before {transform:rotate(45deg);}
.mobile-navigation .close:after {transform:rotate(-45deg);}

.mobile-overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:#000; opacity:0.6; z-index:201;}

html.menu-opened {overflow:hidden;}
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0); }
html.menu-opened .mobile-overlay {display:block;}