@charset "utf-8";
@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 700;
    src: local('Spoqa Han Sans Neo Bold'),
    url('../fonts/SpoqaHanSansNeo-Bold.woff2') format('woff2'),
    url('../fonts/SpoqaHanSansNeo-Bold.woff') format('woff'),
    url('../fonts/SpoqaHanSansNeo-Bold.ttf') format('truetype');
}


@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 500;
    src: local('Spoqa Han Sans Neo Medium'),
    url('../fonts/SpoqaHanSansNeo-Medium.woff2') format('woff2'),
    url('../fonts/SpoqaHanSansNeo-Medium.woff') format('woff'),
    url('../fonts/SpoqaHanSansNeo-Medium.ttf') format('truetype');
}

@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 400;
    src: local('Spoqa Han Sans Neo Regular'),
    url('../fonts/SpoqaHanSansNeo-Regular.woff2') format('woff2'),
    url('../fonts/SpoqaHanSansNeo-Regular.woff') format('woff'),
    url('../fonts/SpoqaHanSansNeo-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 300;
    src: local('Spoqa Han Sans Neo Light'),
    url('../fonts/SpoqaHanSansNeo-Light.woff2') format('woff2'),
    url('../fonts/SpoqaHanSansNeo-Light.woff') format('woff'),
    url('../fonts/SpoqaHanSansNeo-Light.ttf') format('truetype');
}

@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 100;
    src: local('Spoqa Han Sans Neo Thin'),
    url('../fonts/SpoqaHanSansNeo-Thin.woff2') format('woff2'),
    url('../fonts/SpoqaHanSansNeo-Thin.woff') format('woff'),
    url('../fonts/SpoqaHanSansNeo-Thin.ttf') format('truetype');
}

/* Reset */
html{height: 100%;}
body {margin:0;padding:0;font-size:0.75em;height:100%;font-family: 'Spoqa Han Sans Neo', sans-serif;font-weight:400;word-break: keep-all;overflow-x: hidden;}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img, dl, dt, dd, p {margin:0;padding:0;border:0}
/*h1, h2, h3, h4, h5, h6 {font-size:1em}*/
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
header ul, nav ul, footer ul {margin:0;padding:0;list-style:none}
legend {position:absolute;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle}
input, button {margin:0;padding:0;font-size:1em}
button,input[type=button],input[type=submit]{cursor:pointer;}
input[type=text], input[type=password], input[type=submit], input[type=image], button {border-radius:0;-webkit-appearance:none}
textarea, select {font-size:1em;}
textarea {border-radius:0;-webkit-appearance:none}
p {margin:0;padding:0;word-break:break-all}
pre {overflow-x:scroll;font-size:1.1em}
a:link, a:visited {color:inherit;text-decoration:none}
ul,ol,li{list-style:none;padding:0;margin:0;}
input, button, textarea, select {font-family: 'Spoqa Han Sans Neo', sans-serif;outline: none}
hr {content: '';display:block;padding:0;border:0;margin: 0;}


/*사파리 버튼 초기화*/
input[type="text"], input[type="password"], input[type="button"], input[type="submit"], textarea { -webkit-appearance: none; -webkit-border-radius: 0; }


/*placeholder*/
input::-ms-input-placeholder { font-weight: 500; color: #8f98a4; }
input::-webkit-input-placeholder { font-weight: 500; color: #8f98a4; }
input::-moz-placeholder { font-weight: 500; color: #8f98a4; }

textarea::-ms-input-placeholder { font-weight: 500; color: #8f98a4; }
textarea::-webkit-input-placeholder { font-weight: 500; color: #8f98a4; }
textarea::-moz-placeholder { font-weight: 500; color: #8f98a4; }


/*셀렉트 커스텀*/
select {
    -webkit-appearance: none; /* 화살표 없애기 for chrome*/
    -moz-appearance: none; /* 화살표 없애기 for firefox*/
    appearance: none; /* 화살표 없애기 공통*/
    background-image: url('../img/ico_arrow_bottom1.svg');
    background-repeat: no-repeat;
    background-position: calc(100% - 33px) center;
    background-size: 17px;
    background-color: #fff;
    cursor: pointer; 
}
select::-ms-expand { display: none; /* 화살표 없애기 for IE10, 11*/ }


/*드래그*/
::selection { background: #08b2f5; color: #fff; }
::-moz-selection { background: #08b2f5; color: #fff; }


/*--------------------------------------------------------------------------------------------------------------------------*/


/*공통 CSS*/
/*layout style*/
section { padding-top: 170px; box-sizing: border-box; }
.container > .wrap { min-height: 980px;width: 1080px; margin: 0 auto; padding: 80px 0 140px; box-sizing: border-box; }


/*header style*/
.header { position: fixed; top: 0; left: 0; right: 0; z-index: 100; width: 100%; }
.header .hd { position: relative; height: 90px; background: #fff; }
.header .hd .inner { display: flex; justify-content: space-between; align-items: center; max-width: 1080px; height: 100%; margin: 0 auto; }
.header .hd .hd-logo { width: 287px; height: 32px; background: url('../img/img_logo1.png') center center no-repeat; background-size: contain; }
.header .hd .hd-menu { display: flex; align-items: center; }
.header .hd .hd-menu .btn-group-sns { margin-right: 25px; }
.header .hd .hd-menu .btn-group-sns a { margin-right: 12px; }
.header .hd .hd-menu .btn-group-sns a:last-child { margin-right: 0; }
.header .hd .hd-menu .btn-language { margin-left: 20px;width:60px; display: flex; justify-content: center; align-items: center; height: 32px; padding: 0 12px; border: 1px solid #000; border-radius: 16px; box-sizing: border-box; font-size: 16px; font-weight: 700; color: #000; }
.header .hd .hd-menu .btn-language:hover { background: #000; color: #fff; }

.header .hd2 { height: 80px; background: #7f35b2; }
.header .hd2 .inner { display: flex; align-items: center; max-width: 1080px; height: 100%; margin: 0 auto; }
.header .hd2 .hd-menu { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.header .hd2 .hd-menu a { font-size: 22px; font-weight: 700; color: #fff; letter-spacing: -0.66px; }
.header .hd2 .hd-menu a:first-child { display: none; }
.header .hd2 .hd-menu a div { position: relative; }
.header .hd2 .hd-menu a div:after { content: ''; display: block; position: absolute; left: 0; bottom: -5px; width: 0; height: 3px; margin: 0 auto; background: #fff; /*transition: width 0.3s ease-out 0s, left 0.3s ease-out 0s; */}
.header .hd2 .hd-menu a:hover div:after,
.header .hd2 .hd-menu a.active div:after { width: 100%; }

.header .hd .hd-hamburger { display: none; }


/*footer style*/
.footer { background: #222; }
.footer .ft .inner { display: flex; justify-content: space-between; align-items: flex-start; max-width: 1080px; margin: 0 auto; padding: 50px 0; box-sizing: border-box; }
.footer .ft .ft-logo { width: 100px; }
.footer .ft .company-info { margin-top: -5px; }
.footer .ft .company-info.m { display: none; }
.footer .ft .company-info p { font-size: 14px; font-weight: 400; color: #999; letter-spacing: -0.7px; line-height: 24px; }
.footer .ft .company-info p span { color: #fff; }
.footer .ft .company-info .copyright { margin-top: 25px; font-size: 14px; font-weight: 400; color: #999; letter-spacing: -0.7px; }


/*title style*/
.top-page { margin-bottom: 80px; text-align: center; }
.top-page .tit { margin-bottom: 10px; font-size: 50px; font-weight: 700; color: #000; letter-spacing: -1.5px; }
.top-page .txt { font-size: 16px; font-weight: 400; color: #222; letter-spacing: -0.8px; }


/*thumbnail style*/
.thumb { width: 100%; background-position: center center; background-repeat: no-repeat; background-size: cover; }


/*메인*/
.festival-intro { display: flex; justify-content: center; align-items: center; height: 950px; background: url('../img/bg_main1.png') center center no-repeat; background-size: cover; }
.festival-intro .img-poster { display: block; width: 495px; margin-right: 180px; }
.festival-intro .group { text-align: center; }
.festival-intro .txt-group { margin-bottom: 15px; }
.festival-intro .txt-group .txt { margin-bottom: 35px; font-size: 28px; font-weight: 400; color: #161616; letter-spacing: -0.84px; }
.festival-intro .txt-group img { display: block; margin: 0 auto; }
.festival-intro .txt-group .txt1 { font-size: 40px; font-weight: 500; color: #161616; letter-spacing: -3px; }
.festival-intro .txt-group .txt1 strong{ font-size: 50px; font-weight: 700; color: #161616; letter-spacing: -3px; }
.festival-intro .txt-group .txt2 { font-size: 79px; font-weight: 700; color: #161616; letter-spacing: -3px; }
/*24년 수정*/
.festival-intro .txt-group .txt3 { margin-top: 10px; font-size: 22px; font-weight: 400; color: #e74291; letter-spacing: -0.4px; }
.festival-intro .txt-group .txt4 { margin-top: 10px; font-size: 18px; font-weight: 500; color: #e74291; letter-spacing: -0.2px; }
.festival-intro .btn-group {margin-top:60px;}
/*24년 수정 end*/
.festival-intro .btn-group .btn { display: flex; justify-content: center; align-items: center; width: 100%; max-width: 340px; height: 60px; margin: 0 auto 10px; background: #7f35b2; font-size: 18px; font-weight: 700; color: #fff; letter-spacing: -0.9px; opacity: 0; transition: .2s all ease-out; animation: motion1 1s ease-out; animation-fill-mode: forwards; border-radius:5px; }
.festival-intro .btn-group .btn:nth-child(2) { animation-delay: .1s; }
.festival-intro .btn-group .btn:nth-child(3) { animation-delay: .2s; }
.festival-intro .btn-group .btn:nth-child(4) { animation-delay: .3s; }
.festival-intro .btn-group .btn:nth-child(5) { animation-delay: .4s; }
.festival-intro .btn-group .btn:last-child { margin-bottom: 0; }
.festival-intro .btn-group .btn:hover { background: #fff; color: #7f35b2; }

.festival-intro .group .disable_txt{ display:none; }

/*motion*/
@keyframes motion1 {
	0% { transform: translateY(50px); opacity: 0; }
	100% { transform: translateY(0); opacity: 1; }
}


/*걷기축제*/
.festival.active { padding-top: 290px; box-sizing: border-box; }

.tab-menu { display: flex; height: 60px; margin: 80px 0; }
.tab-menu.active { display: flex; align-items: center; position: fixed; top: 170px; left: 0; right: 0; z-index: 100; width: 100%; margin: 0 auto; border-bottom: 1px solid #ccc; box-sizing: border-box; background: #fff; }
.tab-menu .inner { display: flex; align-items: center; }
.tab-menu.active .inner { width: 100%; max-width: 1080px; height: 100%; margin: 0 auto; }
.tab-menu a { margin-right: 60px; font-size: 18px; font-weight: 400; color: #000; letter-spacing: -0.66px;margin-bottom: 3px;}
.tab-menu a:hover,
.tab-menu a.active { font-weight: 700; color: #7f35b2 }
.tab-menu a div { position: relative; }
.tab-menu a div:after { content: ''; display: block; position: absolute; left: 0; width: 0; height: 2px; margin: 2px auto 0; background: #7f35b2; transition: width 0.3s ease-out 0s, left 0.3s ease-out 0s; }
.tab-menu a:hover div:after,
.tab-menu a.active div:after { width: 100%; }

.info-group-festival { margin-bottom: 120px; }
.info-group-festival:last-child { margin-bottom: 0; }
.info-group-festival .top-group { margin-bottom: 30px; }
.info-group-festival .top-group .tit { margin-bottom: 10px; font-size: 16px; font-weight: 400; color: #222; letter-spacing: -0.48px; }
.info-group-festival .top-group .tit2 { font-size: 36px; font-weight: 700; color: #222; letter-spacing: -1.08px; }
.info-group-festival .img-info { width: 100%; margin-bottom: 50px; }
.info-group-festival .img-info.m { display: none; }
.info-group-festival .box { display: flex; }
.info-group-festival .ly-l { width: 340px; margin-right: 60px; }
.info-group-festival .ly-r { width: calc(100% - 400px); }

.info-group-festival .img-poster { display: block; width: 340px; }
.info-group-festival .tit-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; line-height: 42px; }
.info-group-festival .tit-group .txt { font-size: 32px; font-weight: 400; color: #222; letter-spacing: -0.96px; line-height: 42px; }
.info-group-festival .tit-group .txt2.m { display: none; font-size: 14px; font-weight: 400; color: #222; letter-spacing: -0.7px; line-height: 22px; }
.info-group-festival .txtred { background-color: #f6f8fa; color: #eb5f52; font-size: 20px;font-weight: 700; text-align: center; vertical-align: middle;border-radius: 10px; box-sizing: border-box;    padding: 50px 0;margin-top: 30px;}


.info-group-festival .festival-info { border-top: 1px solid #222; box-sizing: border-box; }
.info-group-festival .festival-info li { display: flex; padding: 17px 0 16px; border-bottom: 1px solid #ccc; box-sizing: border-box; }
/*24년 수정*/
.info-group-festival .festival-info p.v1{color:#eb5f52;}
/*24년 수정 end*/
.info-group-festival .festival-info .tit { width: 100px; margin-top: 1px; font-size: 16px; font-weight: 700; color: #222; letter-spacing: -0.8px; }
.info-group-festival .festival-info .txt { width: calc(100% - 100px); font-size: 16px; font-weight: 400; color: #222; letter-spacing: -0.8px; line-height: 26px; }
.info-group-festival .festival-info-v1 .tit { width: 180px; }
.info-group-festival .festival-info-v1 .txt { width: calc(100% - 180px); }

.info-group-festival .btn { display: flex; justify-content: center; align-items: center; width: 100%; height: 50px; margin-top: 40px; border-radius: 10px; box-sizing: border-box; background: #7f35b2; font-size: 18px; font-weight: 700; color: #fff; letter-spacing: -0.9px; }
.info-group-festival .festival-warn { margin-top: 20px; }
.info-group-festival .festival-warn p { padding-left: 15px; box-sizing: border-box; text-indent: -15px; font-size: 14px; font-weight: 400; color: #999; letter-spacing: -0.7px; line-height: 24px; }
.info-group-festival .festival-warn p.v1 { color: #eb5f52; }

.festival-warn2 { margin-bottom: 90px; padding: 40px; border-radius: 14px; box-sizing: border-box; background: #f6f8fa; }
.festival-warn2 .tit { margin-bottom: 15px; font-size: 18px; font-weight: 700; color: #222; letter-spacing: -0.9px; }
.festival-warn2 .tit br { display: none; }
.festival-warn2 .txt { font-size: 16px; font-weight: 400; color: #222; letter-spacing: -0.8px; line-height: 26px; }

.info-group-festival .festival-content { margin-bottom: 50px; font-size: 16px ;font-weight: 400; color: #222; letter-spacing: -0.48px; line-height: 26px; }
.info-group-festival .txtred { font-size: 22px ; color: #eb5f52;font-weight: 700;}
.info-group-festival .souvenir-info > .tit { margin-bottom: 30px; font-size: 20px; font-weight: 700; color: #222; letter-spacing: -1px; }
.info-group-festival .list-souvenir { display: flex; margin-bottom: 50px; }
.info-group-festival .list-souvenir li { margin-right: 27px; }
.info-group-festival .list-souvenir li:last-child { margin-right: 0; }
.info-group-festival .list-souvenir img { display: block; width: 150px; margin: 0 auto 15px; }
.info-group-festival .list-souvenir .txt { font-size: 16px; font-weight: 400; color: #222; text-align: center; letter-spacing: -0.8px; }


/*공지사항*/
.list-board { margin-bottom: 50px; }
.list-board li { border-bottom: 1px solid #ccc; box-sizing: border-box; }
.list-board li:first-child { border-top: 1px solid #ccc; box-sizing: border-box; }
.list-board a { display: block; position: relative; padding: 30px 0; box-sizing: border-box; }
.list-board .tit-board { margin-bottom: 10px; font-size: 22px; font-weight: 500; color: #222; letter-spacing: -1.1px; }
.list-board .txt-board { max-width: 320px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 400; color: #000; letter-spacing: -0.7px; color:#999; }
.list-board .board-date { position: absolute; right: 0; bottom: 30px; font-size: 14px; font-weight: 400; color: #999; letter-spacing: -0.7px; }

.paging { display: flex; justify-content: center; align-items: center; }
.paging .btn-paging-arrow { display: flex; justify-content: center; align-items: center; width: 20px; height: 20px; }

.paging .btn-paging-num { display: flex; justify-content: center; align-items: center; margin: 0 20px; }
.paging .btn-paging-num a { padding: 0 15px; font-size: 18px; font-weight: 400; color: #000; letter-spacing: -0.54px; }
.paging .btn-paging-num a:hover,
.paging .btn-paging-num a.active { font-weight: 700; }


/*공지사항 상세*/
.notice-view .top-board { position: relative; padding: 30px 0; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; box-sizing: border-box; }
.notice-view .top-board .tit-board { margin-bottom: 10px; font-size: 22px; font-weight: 500; color: #000; letter-spacing: -1.1px; }
.notice-view .top-board .board-date { max-width: 320px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 400; color: #999; letter-spacing: -0.7px; }

.board-content { margin-bottom: 50px; padding: 60px 0; border-bottom: 1px solid #ccc; box-sizing: border-box; }
.board-content *{font-size: 1rem;}
.board-content img { display: block; max-width: 100%; margin: 0 auto;}
/*.board-content .txt { font-size: 14px; font-weight: 400; color: #000; letter-spacing: -0.7px; line-height: 26px; word-break: break-all; }
*/
.notice-view .btn-list { display: flex; justify-content: center; align-items: center; width: 200px; height: 45px; margin: 0 auto; border: 1px solid #ccc; border-radius: 10px; box-sizing: border-box; font-size: 16px; font-weight: 500; color: #222; letter-spacing: -0.8px; transition: .2s all ease-out; }
.notice-view .btn-list:hover { border-color: transparent; background: #08b2f5; color: #fff; }


/*1일차*/
.course.active { padding-top: 290px; box-sizing: border-box; }

.info-group-course { margin-bottom: 100px; }
.info-group-course:last-child { margin-bottom: 0; }

.info-group-course .img-info .tit { margin-bottom: 30px; font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }
.info-group-course .img-info .img-map { display: block; width: 100%; margin: 0 auto 55px; }
.info-group-course .img-info .img-map.m { display: none; }
.info-group-course .img-info .img-course { display: block; width: 1000px; max-width: 100%; margin: 0 auto 30px; }
.info-group-course .box { display: flex; }
.info-group-course .ly-l { width: 400px; }
.info-group-course .ly-r { width: calc(100% - 400px); }

.info-group-course .tit-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }
.info-group-course .tit-group .txt { margin-top: 20px; font-size: 18px; font-weight: 400; color: #222; letter-spacing: -0.9px; line-height: 28px; }
.info-group-course .txt-group .tit { margin-bottom: 33px; font-size: 22px; font-weight: 500; color: #000; letter-spacing: -0.66px; }
.info-group-course .txt-group .tit br { display: none; }
.info-group-course .txt-group .txt { font-size: 18px; font-weight: 400; color: #222; letter-spacing: -1.1px; line-height: 28px; }

.info-group-course .course-summary { display: flex; justify-content: center; align-items: center; margin-top: 40px; padding: 20px; border-radius: 10px; box-sizing: border-box; background: #F9EFFF; }
.info-group-course .course-summary p { margin-right: 30px; font-size: 18px; font-weight: 400; color: #999; letter-spacing: -0.9px; }
.info-group-course .course-summary p:last-child { margin-right: 0; }
.info-group-course .course-summary p span { color: #7F35B2; }

.info-group-course .ly-l .course-summary { display: none; }
.info-group-course .img-course.m { display: none; }

/*220819 추가*/
.img-add .img-banner-add { display: block; width: 100%; margin: 0 auto 55px; }
.img-add .img-banner-add.m { display: none; }
/*220819 추가 end*/

.info-group-program { margin-bottom: 80px; }
.info-group-program .box { display: flex; margin-bottom: 70px; }
.info-group-program .box:last-child { margin-bottom: 0; }
.info-group-program .ly-l { width: 400px; }
.info-group-program .ly-r { width: calc(100% - 400px); }
.info-group-program .tit-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }
.info-group-program .txt-group p { font-size: 18px; font-weight: 400; color: #222; letter-spacing: -1.1px; line-height: 28px; }
.info-group-program .txtred { background-color: #f6f8fa; color: #eb5f52; font-size: 20px;font-weight: 700; text-align: center; vertical-align: middle;border-radius: 10px; box-sizing: border-box;    padding: 50px 0;margin-top: 30px;}

/*241007 추가*/
.info-group-program .ly-r .img-add{margin-top:30px;}
/*241007 추가*/

.info-group-program .tit-group2 { position: relative; padding-left: 18px; box-sizing: border-box; }
.info-group-program .tit-group2:before { content: ''; display: block; position: absolute; left: 0; width: 3px; height: 100%; background: #000; }
.info-group-program .tit-group2 .tit { font-size: 22px; font-weight: 400; color: #000; letter-spacing: -0.66px; line-height: 32px; }
.info-group-program .tit-group2 .tit2 { font-size: 22px; font-weight: 400; color: #999; letter-spacing: -0.66px; line-height: 32px; }
.info-group-program .txt-group2 { margin-bottom: 10px; padding: 30px 40px; border-radius: 10px; box-sizing: border-box; background: #f6f8fa; }
.info-group-program .txt-group2.skyblue{background: #F3FBFF !important;}
.info-group-program .txt-group2:last-child { margin-bottom: 0; }
.info-group-program .txt-group2 .txt { margin-bottom: 8px; font-size: 18px; font-weight: 400; color: #eb5f52; letter-spacing: -0.9px; }
.info-group-program .txt-group2 .txt2 { margin-bottom: 15px; font-size: 22px; font-weight: 500; color: #000; letter-spacing: -0.66px; line-height: 32px; }
.info-group-program .txt-group2 .txt2.skyblue{color:#08b2f5 ;}
.info-group-program .txt-group2 .txt2 br { display: none; }
.info-group-program .txt-group2 .txt3 { font-size: 18px; font-weight: 400; color: #999; letter-spacing: -0.9px; line-height: 28px; }
.info-group-shop { margin-bottom: 80px; }
.info-group-shop:last-child { margin-bottom: 0; }
.info-group-shop .top-group { margin-bottom: 40px; }
.info-group-shop .top-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }


.tbl { width: 100%; border-collapse: collapse; }
.tbl tr { border-bottom: 1px solid #ccc; box-sizing: border-box; }
.tbl tr:first-child { border-top: 2px solid #000; box-sizing: border-box; }
.tbl th { height: 60px; border-right: 1px solid #ccc; box-sizing: border-box; background: #f6f8fa; font-size: 18px; font-weight: 500; color: #222; letter-spacing: -0.9px; }
.tbl th:last-child { border-right: none; }
.tbl td { height: 60px; padding: 20px 0; border-right: 1px solid #ccc; box-sizing: border-box; font-size: 16px; font-weight: 400; color: #222; text-align: center; letter-spacing: -0.8px; }
.tbl td:last-child { border-right: none; }

.tbl-v1 th:nth-child(1) { width: 10%; }
.tbl-v1 th:nth-child(2) { width: 20%; }
.tbl-v1 th:nth-child(3) { width: 30%; }
.tbl-v1 th:nth-child(4) { width: 20%; }
.tbl-v1 th:nth-child(5) { width: 20%; }

.tbl-v2 tr.bg { background: #f3fbff; }
.tbl-v2 th:nth-child(1) { width: 10%; }
.tbl-v2 th:nth-child(2) { width: 20%; }
.tbl-v2 th:nth-child(3) { width: 30%; }
.tbl-v2 th:nth-child(4) { width: 20%; }
.tbl-v2 th:nth-child(5) { width: 20%; }


.sec-null{text-align: center;border-bottom: 1px solid #ccc;border-top: 1px solid #ccc;padding: 90px 0;}
.sec-null img{width: 80px;}
.sec-null .big_typo{font-size: 40px; padding-top: 30px; color: #000;}
.sec-null p{font-size: 18px; color: #999;padding-top: 15px;}

/*교통정보*/
.traffic.active { padding-top: 290px; box-sizing: border-box; }
.info-group-traffic { margin-bottom: 60px; }
.info-group-traffic .img-traffic { display: block; max-width: 100%; margin-bottom: 40px; }
.info-group-traffic .img-traffic.m { display: none; }
.info-group-traffic .box { display: flex; }
.info-group-traffic .ly-l { width: 400px; }
.info-group-traffic .ly-r { width: calc(100% - 400px); }
.info-group-traffic .tit-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }
.info-group-traffic .txt-group p { font-size: 16px; font-weight: 400; color: #999; letter-spacing: -0.8px; line-height: 28px; }
/*24년수정*/
.info-group-traffic .txt-group p.v1{color:#eb5f52;}
/*24년수정 end*/

.info-group-time .top-group { margin-bottom: 40px; }
.info-group-time .top-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }

.info-group-time { margin-bottom: 80px; }
.info-group-time:last-child { margin-bottom: 0; }
.info-group-time .box { display: flex; }
.info-group-time .ly-l { width: 400px; }
.info-group-time .ly-r { width: calc(100% - 400px); }

.info-group-time .tit-group { position: relative; padding-left: 18px; box-sizing: border-box; }
.info-group-time .tit-group:before { content: ''; display: block; position: absolute; left: 0; width: 3px; height: 100%; background: #000; }
.info-group-time .tit-group .tit { font-size: 22px; font-weight: 400; color: #000; letter-spacing: -0.66px; line-height: 32px; }

.info-group-time .list-time { display: flex; margin: 0 -10px; }
.info-group-time .list-time li { width: 50%; margin-bottom: 40px; padding: 0 10px; box-sizing: border-box; }
.info-group-time .list-time .item { padding: 25px; border-radius: 14px; box-sizing: border-box; background: #f6f8fa; }
.info-group-time .list-time .item .top { padding-bottom: 15px; border-bottom: 2px dashed #ccc; box-sizing: border-box; }
.info-group-time .list-time .item .place { position: relative; }
.info-group-time .list-time .item .place:before { content: ''; position: absolute; top: 6px; left: 5px; width: 1px; height: calc(100% - 24px); border-left: 2px dashed #ccc; box-sizing: border-box; }
.info-group-time .list-time .item .place div { position: relative; margin-bottom: 15px; padding-left: 32px; box-sizing: border-box; font-size: 16px; font-weight: 400; color: #222; letter-spacing: -0.8px; }
.info-group-time .list-time .item .place div:last-child { margin-bottom: 0; }
.info-group-time .list-time .item .place div:before { content: ''; display: block; position: absolute; top: calc(50% - 6px); left: 0; width: 12px; height: 12px; border: 2px solid #ccc; border-radius: 50%; box-sizing: border-box; background: #fff; }
.info-group-time .list-time .item .bottom { padding-top: 15px; box-sizing: border-box; }
.info-group-time .list-time .item .time { display: flex; align-items: center; margin-bottom: 5px; }
.info-group-time .list-time .item .time:last-child { margin-bottom: 0; }
.info-group-time .list-time .item .time .tit { margin-right: 10px; font-size: 14px; font-weight: 400; color: #999; letter-spacing: -0.7px; }
.info-group-time .list-time .item .time .txt { font-size: 16px; font-weight: 400; color: #7F35B2; letter-spacing: -0.8px; }

.txt-group3{font-size: 16px;font-weight: 400;color:#eb5f52;letter-spacing: -0.8px;line-height: 28px;}


/*가이드*/
.prepare-info .top-group { margin-bottom: 30px; }
.prepare-info .top-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }

.list-prepare { display: flex; flex-wrap: wrap; margin: 0 -20px 92px; }
.list-prepare li { width: 25%; margin-bottom: 28px; padding: 0 20px; box-sizing: border-box; }
.list-prepare .img-group { height: 180px; margin-bottom: 25px; border-radius: 10px; box-sizing: border-box; background: #F0FAFF; }
.list-prepare .img-group .thumb { height: 100%; background-size: contain; }
.list-prepare .txt-group .txt { margin-bottom: 10px; font-size: 20px; font-weight: 500; color: #000; letter-spacing: -0.6px; }
.list-prepare .txt-group .txt2 { font-size: 14px; font-weight: 400; color: #222; letter-spacing: -0.7px; line-height: 24px; }




/*협찬*/
.list-present li { display: flex; margin-bottom: 20px; padding: 30px; border-radius: 10px; box-sizing: border-box; background: #f6f8fa; }
.list-present li:last-child { margin-bottom: 0; }
.list-present .img-group { width: 180px; height: 180px; margin-right: 30px; border-radius: 10px; box-sizing: border-box; background: #fff; }
.list-present .img-group .thumb { height: 100%; background-size: contain; }
.list-present .txt-group { width: calc(100% - 210px); }
.list-present .txt-group .txt { margin-bottom: 5px; font-size: 18px; font-weight: 400; color: #000; letter-spacing: -0.9px; }
.list-present .txt-group .txt2 { margin-bottom: 20px; font-size: 22px; font-weight: 700; color: #08b2f5; letter-spacing: -0.66px; }
.list-present .txt-group .txt3 { font-size: 14px; font-weight: 400; color: #999; letter-spacing: -0.7px; line-height: 24px; }
.list-present .txtred {width: 100%; background-color: #f6f8fa; color: #999999; font-size: 20px;font-weight: 400; text-align: center; vertical-align: middle;border-radius: 10px; box-sizing: border-box;    padding: 30px 0;}


.list-support { display: flex; flex-wrap: wrap; margin: 0 -20px; }
.list-support li { width: 25%; margin-bottom: 40px; padding: 0 20px; box-sizing: border-box; }
.list-support a { display: block;height: 240px; border-radius: 10px; box-sizing: border-box; background: #f6f8fa; }
.list-support .thumb { height: 100%; background-size: contain; }

.present-info .img-guide { display: block; max-width: 100%; margin-bottom: 60px; }
.present-info .img-guide.m { display: none; }
.present-info .box { display: flex; }
.present-info .ly-l { width: 400px; }
.present-info .ly-r { width: calc(100% - 400px); }
.present-info .tit-group .tit { margin-bottom: 20px; font-size: 18px; font-weight: 400; color: #222; letter-spacing: -0.9px; line-height: 28px; }
.present-info .tit-group .tit2 { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }


.company-group .top-group { margin: 120px 0 40px; }
.company-group .top-group .tit { font-size: 32px; font-weight: 700; color: #222; letter-spacing: -0.96px; }

/* 230608 CSS 추가 */
.tbl-v3 tr th{background: none; border-right: none;}
.tbl-v3 tr th:nth-child(1) { width: 28%; }
.tbl-v3 tr td{padding-left: 25px; padding-right: 25px; box-sizing: border-box; word-break: break-all;}
.tbl-v3 tr td:only-child{text-align: left;}
.tbl-v3 tr td:nth-child(2){text-align: left;}
.tbl-v3 .discount{margin-top: 10px;}
.tbl-v3 .discount span{padding-left: 30px; background: url(../img/ico_ticket.png) no-repeat left center; background-size: 24px auto; font-size: 16px; line-height: 19px; letter-spacing: -0.48px; color: #08b2f5;}

.cover-info h3{font-size: 32px; font-weight: 600; line-height: 40px; letter-spacing: -0.96px;}
.cover-info .list-cover{display: flex; flex-wrap: wrap; margin-top: 30px;}
.cover-info .list-cover > li{width: calc((100% - 120px) / 4); padding-top: 30px; padding-bottom: 240px; position: relative; border-top: 2px solid #000;}
.cover-info .list-cover > li + li:not(:nth-child(5n)){margin-left: 40px;}
.cover-info .list-cover > li:nth-child(n+5){margin-top: 70px;}
.cover-info .list-cover > li dl > dt{font-size: 28px; line-height: 34px; font-weight: 600; letter-spacing: -0.84px;}
.cover-info .list-cover > li dl > .small-tit{font-size: 22px; letter-spacing: -0.66px;}
.cover-info .list-cover > li dl > dd{font-size: 18px; line-height: 28px; letter-spacing: -0.54px; margin-top: 15px; word-break: break-all;}
.cover-info .list-cover > li .cover-img{position: absolute; left: 0; bottom: 0; display: block; width: 100%; height: 200px; object-fit: cover;}


@media only screen and (max-width: 1080px) {
	.scroll-hidden {
		-ms-overflow-style: none; /* IE and Edge */
		scrollbar-width: none; /* Firefox */
	}
	.scroll-hidden::-webkit-scrollbar {
		display: none; /* Chrome, Safari, Opera*/
	}
	
	/*layout style*/
	section { padding-top: 110px; box-sizing: border-box; }
	.container > .wrap {width: 100%;min-height: 0; padding: 50px 20px 160px; box-sizing: border-box; }
	
	/*header style*/
	.header .hd { height: 60px; padding: 0 20px; box-sizing: border-box; }
	.header .hd .hd-logo { width: 179px; height: 20px; background-image: url('../img/img_logo1_m.png'); }
	
	.header .hd .hd-menu .btn-group-sns { display: none; }
	.header .hd .hd-menu .btn-support img { width: 54px; }
	.header .hd .hd-menu .btn-language { height: 26px; margin-left: 15px; padding: 0 10px; box-sizing: border-box; font-size: 14px; }
	
	.header .hd2 { height: 50px; }
	.header .hd2 .hd-menu { height: 100%; padding-left: 20px; box-sizing: border-box; white-space: nowrap; overflow-x: auto; }
	.header .hd2 .hd-menu a { margin-right: 20px; font-size: 16px; }
	.header .hd2 .hd-menu a:first-child { display: block; }
	.header .hd2 .hd-menu a:last-child { margin-right: 0; padding-right: 20px; box-sizing: border-box; }
	
	/*footer style*/
	.footer .ft .inner { display: block; padding: 40px 20px 76px; box-sizing: border-box; }
	.footer .ft .ft-logo { width: 90px; margin-bottom: 40px; }
	.footer .ft .company-info { display: none; padding-top: 30px; border-top: 1px solid #666; box-sizing: border-box; }
	.footer .ft .company-info.m { display: block; }
	.footer .ft .company-info p { line-height: 22px; }
	.footer .ft .company-info p:last-of-type { margin-top: 20px; }
	.footer .ft .company-info .copyright { margin-top: 30px; padding-top: 30px; border-top: 1px solid #666; box-sizing: border-box; line-height: 22px; }
	
	/*title style*/
	.top-page { margin-bottom: 50px; }
	.top-page .tit { font-size: 36px; }
	.top-page .txt { font-size: 14px; }
	
	/*메인*/
	.festival-intro { display: block; height: 229vw; padding-top: 140vw; box-sizing: border-box; background: url('../img/bg_main1_pc.png') center top no-repeat; background-size: cover; }
	.festival-intro .img-poster { display: none; }
	.festival-intro .txt-group { display: none; }
    /* 24년 수정 */
    .festival-intro .btn-group { margin-top:8px; padding: 0 9.744vw; box-sizing: border-box; }
    /* 24년 수정 END*/
    .festival-intro .btn-group .btn { max-width: inherit; height: 12.821vw; margin-bottom: 3.846vw; border: 1px solid #fff; box-sizing: border-box; background: rgba(255, 255, 255, 1); font-size: 4.615vw; color:#7f35b2; }
    .festival-intro .btn-group .btn:hover { background-color:#7f35b2; color:#fff; }

    .festival-intro .group .disable_txt{ display:block; color: #fff; font-weight: 700; font-size: 4vw; padding: 8vw 0 5vw 0; }

    /*걷기축제*/
    .festival.active { padding-top: 210px; box-sizing: border-box; }
    .festival .container > .wrap { padding: 50px 0 160px; box-sizing: border-box; }
    
    .tab-menu { height: 50px; margin-bottom: 50px; }
    .tab-menu .inner { padding-left: 20px; box-sizing: border-box; white-space: nowrap; overflow-x: auto; }
    .tab-menu.active { top: 110px; height: 50px; }
    .tab-menu a { margin-right: 30px; font-size: 16px; }
    .tab-menu a:last-child { margin-right: 0; padding-right: 20px; box-sizing: border-box; }
    .tab-menu a div:after { margin-top: 0; }
    
    .info-group-festival { margin-bottom: 60px; }
    .info-group-festival .top-group { margin-bottom: 30px; padding: 0 20px; box-sizing: border-box; }
    .info-group-festival .top-group .tit { font-size: 14px; }
    .info-group-festival .top-group .tit2 { font-size: 30px; letter-spacing: -1.08px; }
    .info-group-festival .img-info { display: none; }
    .info-group-festival .img-info.m { display: block; }
    .info-group-festival .box { display: block; }
    .info-group-festival .ly-l { width: auto; margin-right: 0; padding: 0 20px; box-sizing: border-box; }
    .info-group-festival .ly-r { width: auto; padding: 0 20px; box-sizing: border-box; }
    
    .info-group-festival .img-poster { width: calc(100% - 40px); margin: 0 auto 40px; }
    .info-group-festival .tit-group { margin-bottom: 10px; }
    .info-group-festival .tit-group .tit { font-size: 24px; line-height: 34px; letter-spacing: -1.2px; }
    .info-group-festival .tit-group .tit.m { margin-bottom: 20px; font-size: 20px; letter-spacing: -1px; line-height: normal; }
    .info-group-festival .tit-group .tit.m br { display: none; }
    .info-group-festival .tit-group .txt { display: none; }
    .info-group-festival .tit-group .txt2.m { display: block; margin-bottom: 30px; }
    
    .info-group-festival .festival-info li { display: block; padding: 20px 20px 15px; box-sizing: border-box; }
    .info-group-festival .festival-info .tit { width: auto; margin-top: 0; margin-bottom: 5px; }
    .info-group-festival .festival-info .txt { width: auto; }
    
    .info-group-festival .btn { margin-top: 30px; }
    
    .festival-warn2 { width: calc(100% - 40px); margin: 0 auto 60px; padding: 30px 25px; box-sizing: border-box; }
    .festival-warn2 .tit { margin-bottom: 8px; line-height: 26px; }
    .festival-warn2 .tit br { display: block; }
    .festival-warn2 .txt { line-height: 24px; }
    
    .info-group-festival .festival-content { letter-spacing: -0.8px; }
    .info-group-festival .list-souvenir { flex-wrap: wrap; margin: 0 -10px 50px; }
    .info-group-festival .list-souvenir li { width: 50%; margin: 0; margin-bottom: 20px; padding: 0 10px; box-sizing: border-box; }
    
    /*공지사항*/
    .list-board a { padding: 25px 0; box-sizing: border-box; }
    .list-board .board-date { position: static; margin-top: 20px; }
    
    .paging .btn-paging-num { margin: 0; }
    .paging .btn-paging-num a { padding: 0 10px; }

    /*공지사항 상세*/
    .notice-view .top-board{padding: 25px 0;}
    .notice-view .top-board .tit-board { margin-bottom: 10px; }
    
    .board-content { margin-bottom: 40px; padding: 40px 0 50px; box-sizing: border-box; }
    .board-content img { margin-bottom: 30px; }
    
    .notice-view .btn-list { width: 100%; }
    
    /*1일차*/
    .course.active { padding-top: 190px; box-sizing: border-box; }
    .course .container > .wrap { padding: 50px 0 160px; box-sizing: border-box; }
    .course .tab-menu { margin-bottom: 30px; }
    
    .info-group-course { margin-bottom: 80px; padding: 0 20px; box-sizing: border-box; }
    .info-group-course .img-info .tit { display: none; }
    .info-group-course .img-info .img-map { display: none; }
    .info-group-course .img-info .img-map.m { display: block; margin-bottom: 40px; }
    .info-group-course .img-info .img-course { display: none; }
    .info-group-course .img-course.m { display: block; width: 100%; margin-bottom: 40px; }

    /*220819 추가*/
    .img-add .img-banner-add { display: none; }
    .img-add .img-banner-add.m { display: block; margin-bottom: 40px; }
    /*220819 추가 end*/
    
    .info-group-course .box { display: block; }
    .info-group-course .ly-l { width: 100%; }
    .info-group-course .ly-r { width: 100%; }
    
    .info-group-course .course-summary { margin: 30px 0 40px; padding: 20px 0; box-sizing: border-box; }
    .info-group-course .ly-l .course-summary { display: flex; }
    .info-group-course .ly-r .course-summary { display: none; }
    .info-group-course .course-summary p { margin-right: 8px; font-size: 14px; }
    
    .info-group-course .txt-group .tit { margin-bottom: 25px; line-height: 32px; }
    .info-group-course .txt-group .tit br { display: block; }
    .info-group-course .txt-group .txt { letter-spacing: -0.9px; word-break: break-all; }
    .info-group-course .txt-group .txt2 { display: none; }
    
    .info-group-program { padding: 0 20px; box-sizing: border-box; }
    .info-group-program .box { display: block; margin-bottom: 50px; }
    .info-group-program .ly-l { width: 100%; }
    .info-group-program .ly-r { width: 100%; }
    
    .info-group-program .tit-group .tit { margin-bottom: 25px; }
    .info-group-program .txt-group p { padding-left: 15px; box-sizing: border-box; text-indent: -15px; font-size: 14px; }
    
    .info-group-program .tit-group2 { margin-bottom: 30px; }
    .info-group-program .tit-group2 .tit { font-size: 18px; line-height: 26px; }
    .info-group-program .tit-group2 .tit2 { font-size: 18px; color: #999; line-height: 26px; }

    
    .info-group-program .txt-group2 { padding: 30px; box-sizing: border-box; }
    .info-group-program .txt-group2 .txt { font-size: 14px; }
    .info-group-program .txt-group2 .txt2 { margin-bottom: 10px; font-size: 20px; }
    .info-group-program .txt-group2 .txt2 br { display: block; }
    .info-group-program .txt-group2 .txt3 { font-size: 14px; line-height: 24px; letter-spacing: -0.7px; }
    
    .info-group-shop { padding: 0 20px; box-sizing: border-box; }
    
    .box-table { overflow-x: auto; }
    .tbl { width: 1080px; table-layout: fixed; }

    .sec-null{margin: 0 20px;}    
    .sec-null img{width: 20%;}
    .sec-null .big_typo{font-size: 24px; }
    .sec-null p{font-size: 14px;}
    
    /*교통정보*/
    .traffic.active { padding-top: 190px; box-sizing: border-box; }
    .traffic .tab-menu { margin-bottom: 30px; }
    .traffic .tab-menu .inner { padding-left: 0; }
    .traffic .tab-menu.active .inner { padding-left: 20px; }
    
    .info-group-traffic { margin-bottom: 50px; }
    .info-group-traffic .img-traffic { display: none; }
    .info-group-traffic .img-traffic.m { display: block; }
    
    .info-group-traffic .box { display: block; }
    .info-group-traffic .ly-l { width: 100%; }
    .info-group-traffic .ly-r { width: 100%; }
    
    .info-group-traffic .tit-group .tit { margin-bottom: 30px; }
    .info-group-traffic .txt-group { padding: 25px; border-radius: 10px; box-sizing: border-box; background: #f6f8fa; }
    .info-group-traffic .txt-group p { padding-left: 15px; box-sizing: border-box; text-indent: -15px; font-size: 14px; color: #222; letter-spacing: -0.7px; line-height: 24px; }
    
    .info-group-time .top-group .tit { font-size: 24px; letter-spacing: -0.72px; }
    
    .info-group-time .box { display: block; margin-bottom: 30px; }
    .info-group-time .box:last-child { margin-bottom: 0; }
    .info-group-time .ly-l { width: 100%; }
    .info-group-time .ly-r { width: 100%; }
    
    .info-group-time .tit-group { margin-bottom: 25px; }
    .info-group-time .tit-group .tit { font-size: 18px; letter-spacing: -0.54px; line-height: 26px; }
    
    .info-group-time .list-time { display: block; }
    .info-group-time .list-time li { width: 100%; margin-bottom: 10px; }
    
    /*가이드*/
    .guide .container > .wrap { padding: 50px 0 160px; box-sizing: border-box; }
    
    .prepare-info { padding: 0 20px; box-sizing: border-box; }
    .prepare-info .top-group .tit { font-size: 28px; }
    
    .list-prepare { margin: 0 auto 80px; }
    .list-prepare li { width: 100%; margin-bottom: 30px; padding: 0; }
    .list-prepare li:last-child { margin-bottom: 0; }
    .list-prepare .img-group { height: 46.154vw; }
    
    .present-info .img-guide { display: none; }
    .present-info .img-guide.m { display: block; margin-bottom: 40px; }
    .present-info .box { display: block; padding: 0 20px; box-sizing: border-box; }
    .present-info .ly-l { width: 100%; }
    .present-info .ly-r { width: 100%; }
    
    .present-info .tit-group { margin-bottom: 30px; }
    .present-info .tit-group .tit { margin-bottom: 5px; }
    .present-info .tit-group .tit br { display: none; }
    
    .list-present li { display: block; margin-bottom: 30px; padding: 25px; box-sizing: border-box; }
    .list-present .img-group { width: 100%; height: 30.769vw; margin-right: 0; margin-bottom: 20px; }
    .list-present .img-group .thumb { background-size: contain; }
    .list-present .txt-group { width: 100%; }
    .list-present .txt-group .txt { font-size: 16px; }
    .list-present .txt-group .txt2 { margin-bottom: 10px; font-size: 18px; }
    
    /*협찬*/
    .company-group{padding: 0 20px;}
    .support .container > .wrap { padding: 50px 0 160px 0; box-sizing: border-box; }
    .list-support { margin: 0 -10px; }
    .list-support li { width: 50%; margin-bottom: 24px; padding: 0 10px; box-sizing: border-box; }
    .list-support a { height: 42.308vw; }

    /* 230608 CSS 추가 */
    .tbl-v3{width: 100%;}
    .tbl-v3 tr th{height: 50px; font-size: 16px;}
    .tbl-v3 tr th:nth-child(1) { width: 32%; }
    .tbl-v3 tr td{padding: 20px 15px;}
    .tbl-v3 .discount{margin-top: 0;}
    .tbl-v3 .discount span{display: block; padding-left: 0; padding-top: 21px; background-size: 21px auto; background-position: top center; letter-spacing: -0.48px; color: #08b2f5;}

    .cover-info{padding-left: 20px; padding-right: 20px;}
    .cover-info h3{font-size: 28px; line-height: 35px; letter-spacing: -0.84px;}
    .cover-info .list-cover{margin-top: 30px;}
    .cover-info .list-cover > li{width: 100%; padding-bottom: 230px;}
    .cover-info .list-cover > li + li:not(:nth-child(5n)){margin-left: 0;}
    .cover-info .list-cover > li:nth-child(n+5){margin-top: 30px;}
    .cover-info .list-cover > li + li{margin-top: 30px;}
    .cover-info .list-cover > li .cover-img{border-radius: 10px;}

}

@media only screen and (max-width: 280px) {

    /*footer style*/
    .footer .ft .ft-logo {width: 220px; }
    .footer .ft .company-info p {font-size: 13px;}

    /*header style*/
    .header .hd .hd-logo { width: 140px;}
    .header .hd .hd-menu .btn-support img { width: 40px;}
    .header .hd .hd-menu .btn-language{height: 22px;font-size: 11px;margin-left: 10px;padding: 0 5px;}

    .info-group-festival .festival-info .txt{ font-size: 13px; letter-spacing: -0.9px;}
    .info-group-festival .list-souvenir img{width: 100px;}
}
}