
::selection {
	background-color:var(--purple);
	color:#fff;
}

#main_container section {
	position:relative;
	overflow:hidden;
	box-sizing:border-box;
	padding:10.5rem 0 12rem;
}
#main_container .title {
	text-align:center;
	color:#fff;
}
#main_container .title h2 {
	font-size:7rem;
	font-weight:900;
}
#main_container .title h2 span{
	position: relative;
	display: inline-block;
	padding:0 10rem;
}
#main_container .title h2 span::before,
#main_container .title h2 span::after{
	content: '';
	position: absolute;
	top: 50%; 
	transform: translateY(-50%);
	width: 6rem; height: 2.6rem;
	background: url(../_img/main/main_txt_deco.png) no-repeat center center / 100% 100%;
}
#main_container .title h2 span::before{left: 0;}
#main_container .title h2 span::after{right: 0;}
#main_container .title p {
	margin-top:3rem;
	font-size:2rem;
	line-height:1.6;
}
#main_container .title p > a {
	color:#000;
}
#main_container .title p .under {
	text-decoration:underline;
	text-underline-offset:5px;
}
#main_container .title p b{color: var(--purple);}
@media (max-width: 991.98px) {
	#main_container section {
		padding:8rem 0;
	}
	#main_container .title h2 {
		font-size:4rem;
	}
	#main_container .title h2 span{padding:0 7rem;}
	#main_container .title h2 span::before,
	#main_container .title h2 span::after{width: 4.6rem; height: 2rem;}
	#main_container .title p {
		margin-top:2rem;
		font-size:1.8rem;
	}
}
@media(max-width:576.98px){
	#main_container .title h2 {
		font-size:3.2rem;
	}
	#main_container .title h2 span{padding:0 4.5rem;}
	#main_container .title h2 span::before,
	#main_container .title h2 span::after{width: 3rem; height: 1.3rem;}
}


#main_container .sec01 {
	height:100vh;
	max-height:102rem;
	background: #fff;
	padding:0;
}
#main_container .sec01 .inner{
	width: 100%;
	margin:0 auto;
	padding: 10rem 0 5.5rem;
	position:relative;
	overflow:hidden;
	text-align: center;
}
#main_container .sec01 .inner,
#main_container .sec01 .inner > div{height: 100%;}
#main_container .sec01 .inner > div img{
	height: 100%;
	object-fit: cover;
	object-position: center;
}
/* #main_container .sec01 .inner > div:nth-child(2){
	transition:all 1s ease;
	opacity:0;
	transform: translateY(30%);
}
#main_container .sec01 .inner > div:nth-child(1),
#main_container .sec01 .inner > div:nth-child(3){
	position:absolute;
	z-index:1;
	transition:all 1.6s ease .2s;
}
#main_container .sec01 .inner > div:nth-child(1){
	left:-100%;
}
#main_container .sec01 .inner > div:nth-child(3){
	right:-100%;
}

#main_container .sec01.is-play  .inner > div:nth-child(2){
	opacity:1;
	transform: translateY(0%);
}
#main_container .sec01.is-play .inner > div:nth-child(1){
	left:0%;
	animation:Move1 6s infinite linear;
}
#main_container .sec01.is-play .inner > div:nth-child(3){
	right:0%;
	animation:Move2 6s infinite linear;
} */

@keyframes Move1 {
	0%{
		transform:translateX(0);
	}
	50%{
		transform:translateX(10rem);
	}
	100%{
		transform:translateX(0);
	}
}
@keyframes Move2 {
	0%{
		transform:translateX(0);
	}
	50%{
		transform:translateX(-10rem);
	}
	100%{
		transform:translateX(0);
	}
}

@media(max-width:1679.98px){
	#main_container .sec01 {height:80rem;}
}
@media(max-width:1199.98px){
	#main_container .sec01 {height:66rem;}
	#main_container .sec01 .inner {padding: 10rem 0 8.5rem;}
}
@media(max-width:767.98px){
	#main_container .sec01 {
		height:46rem;
	}
	#main_container .sec01 .inner {
		padding: 7rem 0 5rem;
		max-width: 650px;
	}
	/* 
	#main_container .sec01.is-play .inner > div:nth-child(2) img{
		max-width:55rem !important;
	}
	#main_container .sec01.is-play .inner > div:nth-child(1) img,
	#main_container .sec01.is-play .inner > div:nth-child(3) img{
		max-width:24rem !important;
	} */
}
@media(max-width:576.98px){
	#main_container .sec01 {
		height:36rem;
	}
	#main_container .sec01 .inner {max-width: 400px;}
	/* #main_container .sec01.is-play .inner > div:nth-child(2) img{
		max-width:40rem !important;
	}
	#main_container .sec01.is-play .inner > div:nth-child(1) img,
	#main_container .sec01.is-play .inner > div:nth-child(3) img{
		max-width:16rem !important;
	}
	@keyframes Move1 {
		0%{
			transform:translateX(0);
		}
		50%{
			transform:translateX(2rem);
		}
		100%{
			transform:translateX(0);
		}
	}
	@keyframes Move2 {
		0%{
			transform:translateX(0);
		}
		50%{
			transform:translateX(-2rem);
		}
		100%{
			transform:translateX(0);
		}
	} */
}




#main_container .sec02 {
	padding-top:13rem;
	background:#fff ;
}
#main_container .sec02 .container{position: relative; z-index: 1;}
#main_container .sec02 .title{color: #000000;}
#main_container .sec02 .deco-box{
	max-width: 1800px;
	margin:5rem auto 0;
	position: relative;
}
#main_container .sec02 .deco-box .deco{
	position: absolute;
	top: 40%;
	transform: translateY(-50%);
}
#main_container .sec02 .deco-box .deco.deco1{left: 0%;}
#main_container .sec02 .deco-box .deco.deco2{right: 0%;}
#main_container .sec02 .youtube-box {
	margin: 0 auto;
	text-align:center;
	max-width:100rem;
	box-shadow: 2rem 0 3rem rgba(0,54,92,.2);
}

#main_container .sec02 .youtube-box .inner {
	z-index: 1;
  position: relative;
	padding-top: 56.25%;
}
#main_container .sec02 .youtube-box iframe,
#main_container .sec02 .youtube-box .img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#main_container .sec02 .links{
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	margin: 0 auto;
	margin-top: 9rem;
}
#main_container .sec02 .links a{
	display: block;
	width: calc(50% - 1rem);
}
@media (max-width: 1800px){
	#main_container .sec02 .deco-box .deco img{max-width: 35rem;}
	#main_container .sec02 .youtube-box{max-width: 80rem;}
}
@media (max-width: 1199.98px){
	#main_container .sec02 {padding-top: 12rem;}
	#main_container .sec02 .deco-box .deco{top: 35%;}
	#main_container .sec02 .deco-box .deco img{max-width: 30rem;}
	#main_container .sec02 .youtube-box{max-width: 65rem;}
}
@media (max-width: 991.98px) {
	#main_container .sec02 {padding-top: 8rem;}
	#main_container .sec02 .deco-box {margin:3rem auto 0;}
	#main_container .sec02 .deco-box .deco img{max-width: 28rem;}
	#main_container .sec02 .deco-box .deco.deco1{left: -3.5%;}
	#main_container .sec02 .deco-box .deco.deco2{right: -3.5%;}
	#main_container .sec02 .links{margin-top: 5rem; gap: 1rem;}
	#main_container .sec02 .links a{width: 100%;}
}
@media (max-width: 767.98px){
	#main_container .sec02 .deco-box .deco img{max-width: 24rem;}
	#main_container .sec02 .youtube-box{max-width: 50rem;}
	#main_container .sec02 .links{margin-top: 4rem;}
}
@media (max-width: 575.98px){
	#main_container .sec02 .deco-box .deco {display: none;}
}




/*#main_container .sec03*/
#main_container .sec03:not(.sec_festival){padding-bottom: 31rem;}
#main_container .sec03 .title{position: relative;}
#main_container .sec03 .title h2 {color:#222;}


#main_container .sec03 .section_tabs{}
#main_container .sec03 .section_tabs ul{
	list-style:none;
	padding:0;
	display:flex;
	justify-content: center;
	align-items: center;
	gap:0 1rem;
}
#main_container .sec03 .section_tabs ul > li{
	width:50%;
	max-width:30rem;
}
#main_container .sec03 .section_tabs ul a{
	display:flex;
	align-items: center;
	justify-content: center;
	font-size:2.2rem;
	font-weight: 500;
	color:#666;
	position:relative;
	gap:0 1rem;
	border-bottom:2px solid #bbb;
	height:6rem;
}
#main_container .sec03 .section_tabs ul a.is-active{
	position:relative;
	border-bottom:2px solid var(--purple);
	color:var(--purple);
	font-weight:900;
}

#main_container .sec03  .section_tabs_contents:not(.on){
	display:none;
}
#main_container .sec03  .section_tabs_contents .ktx_info{
	font-size: 1.8rem;
	color: #777;
}
#main_container .sec03 .tabArea_head{
	display:flex;
	justify-content: space-between;
	align-items: center;
	border-bottom:1px solid #ddd;
	padding-bottom:3rem;
	margin-bottom:4rem;
}
#main_container .sec03 .tab {
	list-style:none;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	justify-content: flex-start;
	gap:6px 5px;
}
#main_container .sec03 .tab > li > a{
	display:flex;
	height:5rem;
	padding:0 3rem;
	align-items: center;
	justify-content: center;
	font-size:1.5rem;
	color:var(--purple);
	border:1px solid var(--purple);
	border-radius:5rem;
	background:#fff;
	font-weight:600;
}
#main_container .sec03 .tab > li.on > a{
	color:#fff;
	background:var(--purple);
}


#main_container .sec03 .tabArea_search{
	display:flex;
	width:34rem;
}
#main_container .sec03 .tabArea_search input{
	border:1px solid #222;
	height:5rem;
	width:100%;
	padding:0 2rem;
	font-size: 1.6rem;
	outline:none;
}
#main_container .sec03 .tabArea_search input::placeholder{
	color: #999;
}
#main_container .sec03 .tabArea_search button{
	background:#222;
	color:#fff;
	border:none;
	outline: none;
	width:14rem;
	font-size:1.6rem;
	font-weight:600;
}

#main_container .sec03 .tabBox {
	display:none;
	position:relative;
	box-sizing:border-box;
	
}
#main_container .sec03 .tabBox .noData {
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	font-size:1.8rem;
	color:#ccc;
	height:20rem;
}

#main_container .sec03 .main-swiper-type1 .swiper-slide > a {
	display:block;
	overflow:hidden;
	position:relative;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide > a:hover:after {
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
	box-sizing:border-box;
	border:5px solid var(--purple);
	z-index:10;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box {
	position:relative;
	font-size:1.8rem;
	color:#444;
	letter-spacing:-0.4px;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .cate {
	display:block;
	margin-top:2rem;
	font-size:1.8rem;
	font-weight:600;
	color:var(--purple);
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box h3 {
	position:relative;
	margin-top:2rem;
	font-size:2rem;
	font-weight:bold;
	line-height:1.4;
	color:#222;
	white-space:normal;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
	height:6rem;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box h3.over {
	-webkit-line-clamp:5;
	height:auto;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .day,
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .loca {
	position:relative;
	color: #777;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .day > i,
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .loca > i{
	font-size:2.2rem;
	color:#222;
	position:absolute;
	left:0;
	top:3px;
	margin-right:1rem;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .day {
	margin:1.5rem 0 0.2rem;
	font-size:1.6rem
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .loca {
	padding-bottom: 1.5rem;
	font-size:1.6rem;
	border-bottom:1px solid #777777;
	overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .tit {
	position:relative;
	padding-bottom:1.5rem;
	border-bottom:1px solid #777777;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .btn-more {
	position:absolute;
	left:0;
	bottom:0;
	display:inline-block;
	padding-right:2rem;
	font-size:1.5rem;
	color:#444;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .btn-more:before {
	content: "\e942";
	font-family:"xeicon";
	position:absolute;
	right:0;
	top:2px;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .btn-more.over:before {
	content: "\e945";
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .host {
	margin-top:1.5rem;
	padding-top:1.5rem;
	border-top:1px solid #ccc;
	font-size:1.6rem;
	font-weight:600;
	color:#444;
	height:7rem;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .btn-modal {
	display:block;
	margin-top:2rem;
	margin-bottom: 1px;
	text-align:center;
	font-size:1.6rem;
	border:1px solid var(--purple);
	color:var(--purple);
	box-sizing:border-box;
	padding:1.2rem;
	font-weight:600;
}
#main_container .sec03 .main-swiper-type1 .swiper-slide .txt-box .btn-modal:hover {
	background:var(--purple);
	color:#fff;
}
#main_container .sec03 .program-next,
#main_container .sec03 .program-prev,
#main_container .sec03 .program-next2,
#main_container .sec03 .program-prev2,
#main_container .sec03 .festival-next,
#main_container .sec03 .festival-prev {
	position:absolute;
	top:15rem;
	width:7rem;
	height:7rem;
	border-radius:50%;
	background:#000;
	text-align:center;
	font-size:3rem;
	line-height:7.4rem;
	color:#fff;
	z-index:10;
	box-shadow: 3px 3px 8px rgba(0,0,0,.2);
}
#main_container .sec03 .program-prev,
#main_container .sec03 .program-prev2,
#main_container .sec03 .festival-prev {
	left:-3.5rem;
}
#main_container .sec03 .program-next,
#main_container .sec03 .program-next2,
#main_container .sec03 .festival-next {
	right:-3.5rem;
}

#main_container .sec03 .performance .tabBox .txt-box {
	padding: 2rem;
	padding-right: 6rem;
	background: #fff;
}
#main_container .sec03 .performance .tabBox .txt-box i{
	position: absolute;
	bottom: 1.5rem; right: 1.5rem;
	display: flex;
	align-items:center;
	justify-content: center;
	width: 4rem; height: 4rem;
	font-size: 2rem;
	color: var(--purple);
	background: #fff;
	border-radius: 50%;
	opacity: 0;
}
#main_container .sec03 .performance .tabBox .txt-box p{
	height: 5rem;
	font-size: 1.6rem;
	font-weight: bold;
	color: var(--purple);
}
#main_container .sec03 .performance .tabBox .txt-box h3 {
	margin-top: 1rem;
	font-size: 2rem;
	font-weight: bold;
	color: #000;
	display: block;
	overflow: hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
	height: auto;
}
#main_container .sec03 .performance .tabBox a:hover:after {
	border-bottom-right-radius: 3rem;
}
#main_container .sec03 .performance .tabBox a:hover .txt-box{
	background: var(--purple);
	border-bottom-right-radius: 3rem;
}
#main_container .sec03 .performance .tabBox a:hover .txt-box h3,
#main_container .sec03 .performance .tabBox a:hover .txt-box p{
	color: #fff;
}
#main_container .sec03 .performance .tabBox a:hover .txt-box i{opacity: 1;}

#main_container .sec03 .program_link{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1.5rem;
	margin-top: 6rem;
}
#main_container .sec03 .program_link a{
	display: flex;
	align-items: center;
	gap: 1.5rem;
	height: 5rem;
	padding: 0 2rem 0 3rem;
	font-size: 1.8rem;
	font-weight: bold;
	border-radius: 2.5rem;
}
#main_container .sec03 .program_link a:nth-child(odd){
	color: #fff;
	background: var(--purple);
}
#main_container .sec03 .program_link a:nth-child(even){
	color: #000;
	background: #67f1cf;
}

#main_container .sec03 .tabDesc{
	margin-bottom: 4rem;
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.6;
}

#main_container .sec03 .tabBox .swiper-container{min-height: 30rem;}
#main_container .sec03 div.not_list{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 30rem;
	text-align: center;
}

@media(max-width:1500px){
	#main_container .sec03 .tabArea_head2{
		flex-direction: column;
	}
	#main_container .sec03 .tabArea_head2 .tabArea_btn_box{margin-top:1.5rem;}
}
@media(max-width:1199.98px){
	#main_container .sec03:not(.sec_festival){padding-bottom: 20rem;}
	#main_container .sec03 .tabArea_head{
		flex-direction: column;
	}
	#main_container .sec03 .tabArea_search{
		margin-top:1.5rem;
	}
	#main_container .sec03 .tabArea_head2 .tabArea_search{margin-top: 0;}
}
@media (max-width: 991.98px) {
	#main_container .sec03:not(.sec_festival){padding-bottom: 15rem;}
	#main_container .sec03 .program_link a:nth-child(1) img{width: 20rem;}
	#main_container .sec03 .program_link a:nth-child(2) img{width: 15.3rem;}
	#main_container .sec03 .program_link a:nth-child(3) img{width: 18rem;}

	#main_container .sec03 .tabBox {
		margin-top:4rem;
	}
	#main_container .sec03 .tabBox .noData {
		height:14rem;
	}
	#main_container .sec03 .tab > li > a {
		padding: 0 2rem;
		justify-content: center;
		text-align:center;
		line-height:1.1;
	}
	#main_container .sec03 .section_tabs ul a{
		font-size: 2rem;
	}

	#main_container .sec03 .main-swiper-type1 .swiper-slide > a {
		border-radius:2.4rem;
	}
	#main_container .sec03 .main-swiper-type1 .swiper-slide > a:hover:after {
		border:3px solid var(--pink);
		border-radius:2.4rem;
	}
	#main_container .sec03 .program-next,
	#main_container .sec03 .program-prev,
	#main_container .sec03 .festival-next,
	#main_container .sec03 .festival-prev {
		top:23rem;
		width:5rem;
		height:5rem;
		font-size:2.4rem;
		line-height:5rem;
	}
	#main_container .sec03 .program-prev,
	#main_container .sec03 .festival-prev {
		left:-1.5rem;
	}
	#main_container .sec03 .program-next,
	#main_container .sec03 .festival-next {
		right:-1.5rem;
	}

	#main_container .sec03 .performance .tabBox a {border-radius:0;}
	#main_container .sec03 .performance .tabBox a:hover:after {
		border:3px solid var(--purple);
		border-radius:0;
		border-bottom-right-radius: 2.4rem;
	}
	#main_container .sec03 .performance .tabBox a:hover .txt-box{
		border-bottom-right-radius: 2.4rem;
	}

	#main_container .sec03 .tabDesc{
		font-size: 1.8rem;
		line-height: 1.6;
	}
}
@media (max-width: 767.98px) {
	#main_container .sec03:not(.sec_festival){padding-bottom: 10rem;}
	#main_container .sec03 .program-next,
	#main_container .sec03 .program-prev,
	#main_container .sec03 .festival-next,
	#main_container .sec03 .festival-prev {
		top:17rem;
	}

	#main_container .sec03 .program_link{
		margin-top: 3rem;
		flex-wrap: wrap;
		gap: 1.5rem 1rem;
	}
}
@media (max-width: 575.98px) {
	#main_container .sec03 .program-next,
	#main_container .sec03 .program-prev,
	#main_container .sec03 .festival-next,
	#main_container .sec03 .festival-prev {
		display:none;
	}
	#main_container .sec03 .tab > li > a{
		height:4.5rem;
		padding:0 1rem;
		font-size:1.4rem;
	}

	#main_container .sec03 .performance .tabBox .txt-box {
    padding: 1.5rem;
    padding-right: 4.5rem;
	}
	#main_container .sec03 .performance .tabBox .txt-box i {
		bottom: 1rem; right: 1rem;
    width: 3.5rem;
    height: 3.5rem;
    font-size: 1.8rem;
	}
	#main_container .sec03 .performance .tabBox a .txt-box p{height: 7rem;}
	#main_container .sec03 .performance .tabBox a .txt-box p br{display: none;}
	#main_container .sec03 .section_tabs ul a{
		font-size: 1.8rem;
	}

	#main_container .sec03 .program-prev,
	#main_container .sec03 .program-prev2,
	#main_container .sec03 .festival-prev {
		left:-5px;
	}
	#main_container .sec03 .program-next,
	#main_container .sec03 .program-next2,
	#main_container .sec03 .festival-next {
		right:-5px;
	}
}

/*sec03 program_wrap*/
#main_container .sec03 .program_wrap{
	display:flex;
}
#main_container .sec03 .program_wrap .program_list{
	width:50%;
	padding-right:2rem;
}
#main_container .sec03 .program_wrap .program_list h3{
	font-size:2rem;
	font-weight:bold;
	margin-bottom:2rem;
	color: #444444;
}
#main_container .sec03 .program_wrap .program_list h3 span{
	font-weight:300;
}
#main_container .sec03 .program_wrap .program_list ul{
	list-style:none;
	padding:0;
	border:1px solid #ddd;
	border-top-color: #000000;
	overflow-y: auto;
	height:75rem;
}


#main_container .sec03 .program_wrap .program_list ul li{
	border-bottom:1px solid #ddd;
}
#main_container .sec03 .program_wrap .program_list ul li:last-child{
	border-bottom:0;
}
#main_container .sec03 .program_wrap .program_list ul li .item{
	padding:3.4rem 3rem;
	display:flex;
	align-items: center;
	color:#222;
}
#main_container .sec03 .program_wrap .program_list ul li .item .thumb{
	width:16rem;
	flex-shrink: 0;
}
#main_container .sec03 .program_wrap .program_list ul li .item .thumb span{
	position:relative;
	display:block;
	padding-top:135%;
	background-size:cover;
	background-position: center center;
}
#main_container .sec03 .program_wrap .program_list ul li .item:hover .thumb span::before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	border:5px solid #036eb8;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info{
	padding-left:3rem;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info hr{
	border-top:1px solid #888;
	margin:2rem 0;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info h4{
	font-size:2rem;
	font-weight:bold;
	word-wrap: break-word; 
	display: -webkit-box; 
	-webkit-line-clamp: 2; 
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info h4 strong{
	display:block;
	color:var(--purple);
	font-weight:700;
	margin-bottom:5px;
	font-size:.8em;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info .date,
#main_container .sec03 .program_wrap .program_list ul li .item .info .addr{
	font-size:1.4rem;
	color:#777;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info .name{
	font-size:1.6rem;
	font-weight:500;
	color:#222;
	margin-bottom:1rem;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info .more_btn{
	display: flex;
	gap: 1rem;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info .more{
	display:flex;
	align-items: center;
	justify-content: center;
	height:5rem;
	border:1px solid var(--purple);
	color:var(--purple);
	max-width: 50%;
	width:20rem;
	font-weight:600;
}
#main_container .sec03 .program_wrap .program_list ul li .item:hover{
	background:#f1f1f1;
}
#main_container .sec03 .program_wrap .program_list ul li .item .info .more:hover{
	background:var(--purple);
	color:#fff;
}

#main_container .sec03 .program_wrap .program_map{
	position:relative;
	height:80rem;
	width:50%;
}
#main_container .sec03 .program_wrap .program_map .marker{
	position:absolute;
	left:50%;
	top:50%;
	z-index:15;
}
#main_container .sec03 .program_wrap .program_map .marker.disable{
	filter: grayscale(100%) brightness(0);
}
#main_container .sec03 .program_wrap .program_map iframe,
#main_container .sec03 .program_wrap .program_map #map{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

@media(max-width:1199.98px){
	#main_container .sec03 .program_wrap .program_list ul li .item {
		padding: 2.5rem 2rem;
	}
	#main_container .sec03 .program_wrap .program_list ul li .item .thumb{
		width:14rem;
	}
	#main_container .sec03 .program_wrap .program_list ul li .item .info{
		padding-left:2rem;
	}
	#main_container .sec03 .program_wrap .program_list ul li .item .info h4{
		font-size:1.8rem;
	}
	#main_container .sec03 .program_wrap .program_list ul li .item .info hr {
		margin: 1.5rem 0;
	}
	
	#main_container .sec03 .program_wrap .program_list ul li .item .info .more {
		height: 4.5rem;
		width: 18rem;
	}
}
@media(max-width:991.98px){
	#main_container .sec03 .program_wrap{
		flex-direction: column;
	}
	#main_container .sec03 .program_wrap .program_map{
		order:-1;
		width:100%;
		height:35vh;
	}
	#main_container .sec03 .program_wrap .program_list{
		width:100%;
		padding-right:0;
		margin-top:3rem;
	}
	#main_container .sec03 .program_wrap .program_list h3{
		font-size:2.2rem;
	}
	@media (max-width: 1199.98px) {
		#main_container .sec03 .program_wrap .program_list ul li .item .info hr {
			margin: 1rem 0;
		}
	}
}
@media(max-width:576.98px){
	#main_container .sec03 .program_wrap .program_list ul li .item .thumb{
		width:12rem;
	}
	#main_container .sec03 .program_wrap .program_list ul li .item .info h4{
		font-size:1.6rem;
	}
	#main_container .sec03 .program_wrap .program_list ul{
		height:50vh;
	}
}




/*sec_festival*/
#main_container .sec_festival{
	background:var(--purple);
}
#main_container .sec_festival .mySwiper{
	margin-top: 3rem;
	padding-bottom: 1px;
	min-height: 30rem;
	overflow:hidden;
}
#main_container .sec_festival .mySwiper .item_list{min-height: 30rem;}
#main_container .sec_festival .mySwiper .item_list > p{
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	text-align: center;
	font-size: 2rem;
	font-weight: 600;
}
#main_container .sec03 .festival-next, 
#main_container .sec03 .festival-prev{
	--color: var(--purple);
	color:#358acb;
	background: #fff;
}
#main_container .sec_festival .txt-box .cate,
#main_container .sec_festival .txt-box .tit h3,
#main_container .sec_festival .txt-box .day,
#main_container .sec_festival .txt-box .loca,
#main_container .sec_festival .txt-box .host{
	color:#fff !important;
}
#main_container .sec_festival .txt-box .day{
	font-weight:300 !important;
}
#main_container .sec_festival .txt-box .host{
	font-weight:400 !important;;
}
#main_container .sec03.sec_festival .main-swiper-type1 .swiper-slide > a:hover:after ,
#main_container .sec03.sec_festival .main-swiper-type1 .swiper-slide .txt-box .tit,
#main_container .sec03.sec_festival .main-swiper-type1 .swiper-slide .txt-box .loca{
	border-color: #fff;
}
#main_container .sec03.sec_festival .main-swiper-type1 .swiper-slide > a:hover:after{
	border-color: #67f1cf;
}

#main_container .sec03.sec_festival .more{
	display: block;
	margin-top: 1rem;
	padding: 1.2rem 1rem;
	text-align: center;
	font-size: 2rem;
	font-weight: 600;
	color:#fff;
	border: 1px solid #fff;
}
#main_container .sec03.sec_festival .more:hover{
	color:#000;
	background: #67f1cf;
	border-color: #67f1cf;
}
#main_container .sec03.sec_festival .more_btn{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.5rem;
	width: 22.5rem;
	height: 5rem;
	margin: 6rem auto 0;
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	border: 2px solid #ffffff;
	border-radius: 2.5rem;
}

/*sec_instagram*/
#main_container .sec_instagram {text-align: center; background:#f9f9f9;}
#main_container .sec_instagram .title{
	position: relative;
	color:#222;	
}
#main_container .sec_instagram .title .deco-box{
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%,-50%);
	max-width: 915px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#main_container .sec_instagram .instar-wrap {
	position:relative;
	margin-top:5rem;
	margin-bottom: 6.5rem;
}
#main_container .sec_instagram .instar-swiper {}
#main_container .sec_instagram .instar-swiper .swiper-slide > a {
	display:block;
	position:relative;

}
#main_container .sec_instagram .instar-swiper .swiper-slide > a:after {
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
	border:5px solid #eee;
}
#main_container .sec_instagram .instar-swiper .swiper-slide > a:hover:after{
	border:5px solid var(--purple);
}

#main_container .sec_instagram .instar-swiper .swiper-slide > a > .top > img,
#main_container .sec_instagram .instar-swiper .swiper-slide > a > .btm > img {
	width:100%;
}
#main_container .sec_instagram .instar-swiper .swiper-slide > a > .img {
	padding-bottom:100%;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
}
#main_container .sec_instagram .instar-next,
#main_container .sec_instagram .instar-prev {
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	width:7rem;
	height:7rem;
	border-radius:50%;
	background:#000;
	text-align:center;
	font-size:3rem;
	line-height:7.4rem;
	color:#fff;
	z-index:10;
}
#main_container .sec_instagram .instar-prev {
	left:-3.5rem;
}
#main_container .sec_instagram .instar-next {
	right:-3.5rem;
}
#main_container .sec_instagram .more_btn{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.5rem;
	width: 24.5rem;
	height: 5rem;
	margin: 6rem auto 0;
	font-size: 1.8rem;
	font-weight: bold;
	color: #000;
	border: 2px solid #000;
	border-radius: 2.5rem;
}
@media (max-width: 991.98px) {
	#main_container .sec_instagram .title .deco1 img{max-width: 11rem;}
	#main_container .sec_instagram .title .deco2 img{max-width: 7rem;}

	#main_container .sec_instagram .more_btn img {width: 20rem;}

	#main_container .sec_instagram .instar-wrap {
		margin-top:3rem;
		margin-bottom: 4rem;
	}
	#main_container .sec_instagram .instar-swiper .swiper-slide > a:hover:after {
		border:3px solid var(--pink);
	}
	#main_container .sec_instagram .instar-next,
	#main_container .sec_instagram .instar-prev {
		width:5rem;
		height:5rem;
		font-size:2.4rem;
		line-height:5rem;
	}
	#main_container .sec_instagram .instar-prev {
		left:-1.5rem;
	}
	#main_container .sec_instagram .instar-next {
		right:-1.5rem;
	}
}
@media (max-width: 767.98px) {
	#main_container .sec_instagram .title .deco-box {width: calc(100% + 40px);}
	#main_container .sec_instagram .title .deco1 img{max-width: 8rem;}
	#main_container .sec_instagram .title .deco2 img{max-width:5rem;}
}
@media (max-width: 575.98px) {
	#main_container .sec_instagram .title .deco-box ,
	#main_container .sec_instagram .instar-prev,
	#main_container .sec_instagram .instar-next {
		display:none;
	}
}



#main_container .sec05 .title {
	text-align:center;
	color:#666;
}
#main_container .sec05 .title h2 {
	color:#222;
}
#main_container .sec05 .title p > a {
	color:#222;
}
#main_container .sec05 .row {
	margin-top:8rem;
}
#main_container .sec05 .row > div[class^='col-'] {
	margin-bottom:2rem;
}
#main_container .sec05 .row > div[class^='col-'] .box {
	box-sizing:border-box;
	border:1px solid #ccc;
	border-radius:2rem;
	padding:4rem;
	position:relative;
}
#main_container .sec05 .row > div[class^='col-'] .box dl > dt {
	position:relative;
	font-size:2.2rem;
	font-weight:600;
	color:#222;
	padding-right:6rem;
}
#main_container .sec05 .row > div[class^='col-'] .box dl > dt:after {
	content: "\e91a";
	font-family:"xeicon";
	font-size:3rem;
	color:#444;
	position:absolute;
	right:0;
	top:-8px;
}
#main_container .sec05 .row > div[class^='col-'] .box dl > dd {
	font-size:1.8rem;
	line-height:1.6;
	color:#444;
	margin-top:3rem;
	display:none;
}
#main_container .sec05 .row > div[class^='col-'] .box.on:after,
#main_container .sec05 .row > div[class^='col-'] .box:hover:after{
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
	border:3px solid var(--pink);
	border-radius:2rem;
}
#main_container .sec05 .row > div[class^='col-'] .box.on dl > dt:after {
	content: "\e913";
}
@media (max-width: 991.98px) {
	#main_container .sec05 .row {
		margin-top:4rem;
	}
	#main_container .sec05 .row > div[class^='col-'] {
		margin-bottom:1rem;
	}
	#main_container .sec05 .row > div[class^='col-'] .box {
		border-radius:1.5rem;
		padding:3rem;
	}
	#main_container .sec05 .row > div[class^='col-'] .box dl > dt {
		font-size:2rem;
	}
	#main_container .sec05 .row > div[class^='col-'] .box dl > dt:after {
		font-size:2.4rem;
		top:-2px;
	}
	#main_container .sec05 .row > div[class^='col-'] .box dl > dd {
		line-height:1.4;
		margin-top:2rem;
	}
	#main_container .sec05 .row > div[class^='col-'] .box.on:after,
	#main_container .sec05 .row > div[class^='col-'] .box:hover:after{
		border:2px solid var(--pink);
		border-radius:1.5rem;
	}
}
@media (max-width: 575.98px) {
	#main_container .sec05 .row > div[class^='col-'] .box {
		padding:2rem;
	}
}




/* sec_youtube */
#main_container .sec_youtube {
	position: relative;
	text-align: center;
	padding: 9.5rem 0;
	background:#67f1cf;
}
#main_container .sec_youtube .container{
	z-index: 1;
	position: relative;
}
#main_container .sec_youtube .deco-box{
	position: absolute;
	top: 38%; left: 50%;
	transform: translate(-50%,-50%);
	max-width: 1800px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#main_container .sec_youtube .title{color: #000;}
#main_container .sec_youtube ul{
	display: flex;
	gap: 3rem;
	margin: 5.5rem 0;
}
#main_container .sec_youtube ul li{width: calc(100% / 3);}
#main_container .sec_youtube ul li .youtube{
	position: relative;
	padding-top: 56.3%;
}

.youtube-list {
    text-align: center; /* ul 안의 li 요소들을 가운데 정렬 */
    list-style: none;   /* 기본 ul의 점 스타일 제거 */
    padding: 0;
}

.youtube-list li {
    display: inline-block; /* li를 인라인 블록으로 만들어 가로로 중앙에 정렬 */
    margin: 0 auto;        /* 중앙 정렬 */
}

#main_container .sec_youtube ul li .youtube::before,
#main_container .sec_youtube ul li .youtube::after{
	z-index: 10;
	content: '';
	position: absolute;
}
#main_container .sec_youtube ul li .youtube::before{
	top: 50%; left: 50%;
	transform: translate(-50%,-50%);
	width: 5rem; height: 5rem;
	background: url(../_img/main/play_btn.png) no-repeat center center / 100% 100%;
}
#main_container .sec_youtube ul li .youtube::after{
	z-index: 10;
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	border: 5px solid #fff;
	opacity: 0;
}
#main_container .sec_youtube ul li:hover .youtube::after{opacity: 1;}
#main_container .sec_youtube ul li .youtube > *{
	position: absolute;
	top: 0; left: 0;
	width: 100%; 
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#main_container .sec_youtube ul li p{
	margin-top: 1.5rem;
	font-size: 2rem;
	font-weight: bold;
	color: #000;
}
#main_container .sec_youtube .more_btn{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.5rem;
	width: 22.5rem;
	height: 5rem;
	margin: 6rem auto 0;
	font-size: 1.8rem;
	font-weight: bold;
	color: #000;
	border: 2px solid #000;
	border-radius: 2.5rem;
}
@media (max-width: 1500px){
	#main_container .sec_youtube .deco-box {top: 40%;}
	#main_container .sec_youtube .deco-box img{width: 34rem;}
}
@media (max-width: 1199.98px){
	#main_container .sec_youtube .deco-box {
		max-width: 1100px;
		top: 43.5%;
	}
	#main_container .sec_youtube .deco-box img{width: 28rem;}
	#main_container .sec_youtube ul{gap:3rem 2rem;}
}
@media (max-width: 991.98px){
	#main_container .sec_youtube .deco-box {top: 13%;}
	#main_container .sec_youtube .deco-box img{width: 22rem;}
	#main_container .sec_youtube ul{
		flex-wrap: wrap;
		margin: 3.5rem 0;
	}
	#main_container .sec_youtube ul li{width: 100%;}
	#main_container .sec_youtube ul li p{font-size: 1.8rem;}
	#main_container .sec_youtube .more_btn img {width: 20rem;}
}
@media (max-width:767.98px) {
	#main_container .sec_youtube .deco-box {top: 15%;}
	#main_container .sec_youtube .deco-box img{width: 16rem;}
}
@media (max-width:575.98px){
	#main_container .sec_youtube .deco-box{display: none;}
}




/*sec_partnership*/
#main_container .sec_partnership {
	background:#fff;
	padding-bottom:15rem;
}
#main_container .sec_partnership .title{color: #000;}
#main_container .sec_partnership .flex {
	display:flex;
	flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	align-items:center;
	justify-content: center;
	gap: 4.5rem 6rem;
	max-width: 1430px;
	width: 100%;
	margin: 0 auto;
	margin-top:7rem;
}
#main_container .sec_partnership .flex > .in > .img > a {
	display:block;
}
@media (max-width: 1199.98px) {
	#main_container .sec_partnership{padding-bottom: 12rem;}
	#main_container .sec_partnership .flex {gap: 3rem 4rem;}
}
@media (max-width: 991.98px) {
	#main_container .sec_partnership{padding-bottom: 10rem;}
	#main_container .sec_partnership .flex {
		gap: 2rem 3rem;
		margin-top:4rem;
	}
	#main_container .sec_partnership a img{transform: scale(.8);}
}
@media (max-width: 767.98px) {
	#main_container .sec_partnership{padding-bottom: 8rem;}
	#main_container .sec_partnership .flex{gap: 2rem;}
	#main_container .sec_partnership .flex > .in {
		width: calc((100%/3) - 1.6rem);
	}
	#main_container .sec_partnership .flex > .in div,
	#main_container .sec_partnership .flex > .in a{width: 100%;}
	#main_container .sec_partnership a img{max-width: 100%; transform: scale(1);}
}


#main_container .sec07 {
	padding-bottom:0;
}
#main_container .sec07 .row {
	align-items:center;
}
#main_container .sec07 .row > div[class^='col-'] .txt {
	box-sizing:border-box;
	padding-left:8rem;
}
#main_container .sec07 .row > div[class^='col-'] .txt h2 {
	font-size:5.8rem;
	font-weight:800;
	color:#222;
}
#main_container .sec07 .row > div[class^='col-'] .txt h2 > span {
	color:var(--pink);
}
#main_container .sec07 .row > div[class^='col-'] .txt p {
	font-size:2.2rem;
	line-height:1.6;
	margin-top:2rem;
}
#main_container .sec07 .row > div[class^='col-'] .txt p .under {
	text-decoration:underline;
	text-underline-offset:5px;
}
#main_container .sec07 .row > div[class^='col-'] .txt .btn-program {
	display:inline-block;
	position:relative;
	margin-top:4rem;
	box-sizing:border-box;
	font-size:2.2rem;
	font-weight:500;
	text-align:center;
	background:var(--pink);
	color:#fff;
	padding:1.6rem 4rem;
	border-radius:1rem;
}
#main_container .sec07 .row > div[class^='col-'] .txt .btn-program > i {
	margin-left:1rem;
	transform:rotate(-45deg);
	font-size:2.6rem;
	position:relative;
	top:2px;
}

@media (max-width: 1480px) {
	#main_container .sec07 .row > div[class^='col-'] .txt {
		padding-left:6rem;
	}
	#main_container .sec07 .row > div[class^='col-'] .txt h2 {
		font-size:5rem;
	}
}
@media (max-width: 1199.98px) {
	#main_container .sec07 .row > div[class^='col-'] .txt {
		padding-left:0;
		margin-top:4rem;
		text-align:center;
	}
}
@media (max-width: 991.98px) {
	#main_container .sec07 .row > div[class^='col-'] .txt h2 {
		font-size:3.6rem;
	}
	#main_container .sec07 .row > div[class^='col-'] .txt p {
		font-size:1.8rem;
		margin-top:1rem;
	}
	#main_container .sec07 .row > div[class^='col-'] .txt .btn-program {
		margin-top:2rem;
		font-size:1.8rem;
		padding:1.4rem 3.5rem;
		border-radius:1rem;
	}
	#main_container .sec07 .row > div[class^='col-'] .txt .btn-program > i {
		margin-left:0.5rem;
		font-size:2.2rem;
	}
}
@media (max-width: 575.98px) {
	#main_container .sec07 .row > div[class^='col-'] .img {
		box-sizing:border-box;
		padding:0 6rem;
	}
	#main_container .sec07 .row > div[class^='col-'] .txt h2 {
		font-size:3rem;
	}
}




/* 프로그램 모달 */
.modal-content {
	border:2px solid var(--pink);
	border-radius:1rem;
	cursor:default;
}
.modal-body {
	padding:0;
}
.program-modal {
	box-sizing:border-box;
	position:relative;
	padding:4rem;
}
.program-modal .close {
	font-size:3rem;
	opacity:0.6;
}
.program-modal .tit {
	font-size:2.6rem;
	font-weight:700;
	color:var(--pink);
	padding-right:6rem;
	padding-bottom:1rem;
	border-bottom:1px solid #ddd;
	white-space:normal;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
}
.program-modal .txt {
	margin-top:2rem;
	font-size:1.6rem;
	line-height:1.6;
	color:#444;
}
.program-modal .btnArea {
	margin-top:2rem;
	text-align:center;
}
.program-modal .btn-close {
	text-align:center;
	font-size:1.6rem;
	font-weight:600;
	color:#222;
	display:inline-block;
	box-sizing:border-box;
	padding:1rem;
	width:16rem;
	border:1px solid #222;
	border-radius:0.6rem;
	cursor:pointer;
}



/* 유투브 모달 */
#youtubeModal .modal-content {
	border:5px solid var(--purple);
	border-radius:0;
	cursor:default;
}
.youtube-modal .txt{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding:2rem 3.5rem;
	background: var(--purple);
}
.youtube-modal .txt b{
	overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.youtube-modal .btn-close{
	font-size: 2.4rem;
	color: #fff;
}
.youtube-modal .contents{
	padding:4rem 3.5rem;
	background: #fff;
}
.youtube-modal .contents > div{
	position: relative;
	padding-top: 56.3%;
}
.youtube-modal .contents > div > *{
	position: absolute;
	top: 0; left: 0;
	width: 100%; 
	height: 100%;
	object-fit: cover;
	object-position: center;
}
@media (max-width:991.98px) {
	.youtube-modal .txt{padding:1.5rem;}
	.youtube-modal .btn-close{font-size: 2rem;}
	.youtube-modal .contents{padding:1.5rem;}
}



