@charset "utf-8";

/* common */
.section {padding: 60px 0;}
.tit_wrap {line-height: 1.2;}
.tit_wrap .tit {font-size: 2rem; font-family: "Godo"; margin-top: 10px;}
.tit_wrap .sub_tit {color: #f25b46; font-size: 1rem; font-weight: 400; letter-spacing: .2rem;}
.container {margin-top: -136px;}

/* main visual */
.main_visual {width: 100%; height: 100vh; position: relative; overflow: hidden; padding-top: 0;}
.main_visual::after {content: ""; width: 100%; height: 16.323%; background: url(/images/main/main_visual_bg.svg) center bottom no-repeat; z-index: 3; position: absolute; bottom: -26px; background-size: cover;}
.main_visual::before {content: ""; width: 102%; height: 158px; background: linear-gradient(transparent, rgba(0,0,0,.3)); z-index: 3; position: absolute; bottom: -1px; left: 50%; transform: translateX(-50%); background-size: cover;}
.mv_content, .slick-list, .slick-track {width: 100%; height: 100%; margin-left: 0;}
.mv_item a {display: block; width: 100%; height: 100%; position: initial; cursor: default;}
.mv_item a:focus-visible::before {content: ""; max-width: 1420px; width: 98%; height: calc(100% - 140px - 105px); border: 2px dashed #d42121; position: absolute; left: 50%; bottom: 105px; transform: translateX(-50%); z-index: 99;}
.mv_item a[target="_self"], .mv_item a[target="_blank"] {cursor: pointer;}
.mv_item a::after {content: ""; width: 100%; height: 210px; background: linear-gradient(rgba(0,0,0,.5), transparent); position: absolute; left: 0; top: 0;}
.mv_item a img {width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.mv_item a video {width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
/*.mv_wrapper {width: 100%; position: absolute; top: 60%; transform: translateY(-50%);}*/
.cnt_box {position: absolute; top: 40%; z-index: 999;}
.cnt_box p.title {font-size: 3.2rem; color: #fff; font-weight: 700; font-family: 'Godo'; text-shadow: 2px 2px 8px rgba(0,0,0,.1); margin-bottom: 30px;}
.cnt_box p.title span {-webkit-text-stroke: 1px #fff; color: transparent;}
.cnt_box .remark {font-size: 1.25rem; font-weight: 400; color: #fff; letter-spacing: .15rem; min-height: 60px; text-shadow: 2px 2px 8px rgba(0,0,0,.1);}
.mv_control {width: 100%; display: flex; align-items: center; justify-content: center; font-size: 0; padding: 0 20px; position: absolute; left: 50%; transform: translateX(-50%); bottom: 80px; z-index: 9;}
.mv_prev, .mv_next {background: url(/images/main/btn_next_b.svg) center center no-repeat; width: 30px; height: 30px; z-index: 2; cursor: pointer; transform: rotate(180deg);}
.mv_next {transform: rotate(0deg);}
.mv_play {width: 25px; height: 25px; z-index: 2; cursor: pointer; padding: 5px; border-radius: 50%;}
.mv_play.pause {background: #ee2e5b url(/images/main/btn_pause.svg) center center no-repeat; background-size: 27%;}
.mv_play.start {background: #ee2e5b url(/images/main/btn_start.svg) center center no-repeat; background-size: 27%;}
.mv_content.disabled {transform: translate3d(0px, 0, 0) !important;}
.mv_control.disabled {display: none;}
.mv_control .slick-dots {width: 100%; margin: 0 20px 0 0; display: flex!important; flex-wrap: wrap; align-items: center; gap: 15px;}
.mv_control .slick-dots li button {background: rgba(255,255,255,.5); border: 1px solid #fff; width: 8px; height: 8px; border-radius: 50%; text-indent: -9999px; vertical-align: middle; box-shadow: 2px 2px 10px rgba(100,55,0,.15); transition: .3s; position: relative;}
.mv_control .slick-dots li:hover button {background: #fff;}
.mv_control .slick-dots li.slick-active button {background: #fff; width: 6px; height: 6px; margin: 1px;}
.mv_control .slick-dots li.slick-active button::after {content: ""; width: 13px; height: 13px; border: 1px solid #fff; border-radius: 50%; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); box-shadow: 2px 2px 10px rgba(100,55,0,.15);}
button.play-pause {position: absolute; top: 50%; left: 50%; z-index: 2; width: 100px; height: 100px; border: 1px solid #fff;; transform: translate(-50%, -50%); border-radius: 50%; opacity: .5; transition: .2s; }
button.play-pause:hover { opacity: 1; }
button.play-pause:active { opacity: 1; width: 120px; height: 120px; }
button.play-pause:after { content: ''; display: block; background: url(/images/main/icon_big_pause.png) no-repeat center center; background-size: contain; width: 23px; height: 23px; margin: auto;}
button.play-pause.pause:after { background-image: url(/images/main/icon_big_play.png); }

/* tab */
main .tab_wrap {display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; margin-bottom: 50px; position: relative;}
main .tab_wrap .tab {display: flex; align-items: center; margin-right: 65px;}
main .tab_wrap .tab li + li {margin-left: 10px;}
main .tab_wrap .tab .tab_tit {font-size: 1rem; padding: 15px 34px; border-radius: 100px; color: #555; white-space: nowrap;}
main .tab_wrap .tab .tab_tit.on,
main .tab_wrap .tab .tab_tit.on:hover,
main .section02 .tab_wrap .tab .tab_tit.on:hover,
main .section02 .tab_wrap .tab .tab_tit.on:focus {color: #fff; background: linear-gradient(to right, #F58830, #EE2E5B)!important; border-color: transparent; font-weight: 500; transition: background .3s; box-shadow: 2px 2px 10px rgba(100,55,0,.15);}
main .tab_wrap .tab .tab_tit:hover,
main .tab_wrap .tab .tab_tit:focus {background: #f5f5f5;}
main .section02 .tab_wrap .tab .tab_tit:hover,
main .section02 .tab_wrap .tab .tab_tit:focus {background: #fff2e0;}
main .tab_more {display: inline-flex; align-items: center; justify-content: center; width: 49px; height: 49px; border-radius: 50%; box-shadow: 4px 4px 20px rgba(100,55,0,.15); position: absolute; right: 0; top: 15px; background: #fff;}
main .tab_more img {width: 12px; transform: rotate(0deg); transition: .3s;}
main .tab_more:hover img,
main .tab_more:focus img {transform: rotate(180deg); transition: .3s;}
main .tab_more.disabled {cursor: default;}
main .tab_more.disabled img {opacity: .2;}
main .tab_more.disabled:hover img,
main .tab_more.disabled:focus img {transform: rotate(0deg);}


/* search area */
.section.search {padding: 100px 0 60px;}
.section.search .search_inp {max-width: 600px; width: 100%; margin: 60px auto 0; position: relative;}
.section.search .search_inp label {display: block; width: 100%; height: 80px; border-radius: 50px; background-image: linear-gradient(#fff, #fff), linear-gradient(to right, #F58830 0%,  #EE2E5B 100%); background-origin: border-box; background-clip: content-box, border-box; border: 7px solid transparent; position: relative;}
.section.search .search_inp label::before {content: ""; background: url(/images/main/dgfca.png) no-repeat; background-size: cover; width: 269px; height: 68px; position: absolute; left: 15px; top: -96%; z-index: -1;}
.section.search .search_inp input {width: 100%; height: 100%; background: #fff; border: none; border-radius: 50px; padding: 0 100px 0 30px; font-size: 1.25rem;}
.section.search .search_inp input:focus-visible {outline-color: #fff;}
.section.search .search_inp input::placeholder {font-size: 1.25rem; color: #7a7a7a;}
.section.search .search_btn a {background: #EE2E5B url(/images/layout/btn_search_w.svg) center center no-repeat; display: block; width: 100px; height: 100px; background-size: 22px; position: absolute; right: 0; top: 50%; border-radius: 50%; transform: translateY(-50%); z-index: 24;}


/* section01 */
.section01 .wrap {position: relative;}
.section01 .news_list {display: flex; align-items: center; flex-wrap: wrap; margin: 0 -10px;}
.section01 .news_list .slick-slide {margin: 3px 10px;}
.section01 .news_list .news_item a {display: block; border: 1px solid #dadada;}
.section01 .news_list .news_item a:hover,
.section01 .news_list .news_item a:focus {box-shadow: 2px 2px 10px rgba(100,55,0,.15); transition: .3s; background-image: linear-gradient(#fff, #fff), linear-gradient(45deg, #F58830 0%,  #EE2E5B 70%); background-origin: border-box; background-clip: content-box, border-box; border: 1px solid transparent;}
.section01 .news_list .news_item a > div {padding: 20px;}
.section01 .news_list .news_item .headbox {display: flex; justify-content: space-between; align-items: center;}
.section01 .news_list .news_item .headbox .category {background: #E7EDFC; color: #4B6DBE; padding: 5px 10px; border-radius: 50px; font-size: .8125rem;}
.section01 .news_list .news_item .txtbox {display: block; margin: 20px 0;}
.section01 .news_list .news_item .txtbox .tit {font-size: 1.25rem; font-weight: 600; width: 100%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; word-break: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; height: 56px;}
.section01 .news_list .news_item .txtbox .txt {font-size: .9375rem; color: #555; width: 100%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; word-break: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; height: 40px; margin-top: 6px;}
.section01 .news_list .news_item .date {color: #888; font-size: .8125rem; padding-left: 15px; position: relative;}
.section01 .news_list .news_item .date::before {content: ""; background: url(/images/main/icon_cal.svg) center center no-repeat; position: absolute; left: 0; top: 1px; width: 12px; height: 12px; background-size: cover;}
.section01 .news_list .slick-dots {display: flex!important; align-items: center; justify-content: center; margin: 25px auto 0;}
.section01 .news_list .slick-dots li {padding: 0 0 20px 0; margin: 0 7px;}
.section01 .news_list .slick-dots li::before {display: none;}
.section01 .news_list .slick-dots li button {font-size: 0; width: 7px; height: 7px; border-radius: 50%; background: rgba(0,0,0,.2);}
.section01 .news_list .slick-dots li.slick-active button {background: #222;}


/* section02 */
.section02 {background: #FFF9F0; position: relative;}
.section02::before {content: ""; background: #FFF9F0 url(/images/main/section02_bg.png) top center no-repeat; background-size: cover; position: absolute; top: 0; width: 100%; height: 155px; z-index: 0;}
.section02 #target {font-family: "Godo"; font-size: 2.5rem; text-align: center; position: relative; z-index: 1; margin-top: 40px;}
.section02 .cal_wrap {position: relative;}
.section02 .cal_thum {position: relative;}
.section02 .cal_thum:hover .cal_info,
.section02 .cal_thum:focus-within .cal_info {display: flex; opacity: 1;}
.section02 .cal_item:focus-visible {outline: 2px dashed #d42121; outline-offset:1px; position: relative; z-index: 22;}
.section02 .cal_item:focus .cal_info,
.section02 .cal_item:focus-within .cal_info {display: flex; opacity: 1;}
.section02 .cal_thum .cal_cateogory {position: absolute; top: -10px; right: 10px; width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; color: #fff; z-index: 9;}
.section02 .cal_thum .cal_cateogory::before {content: ""; background: url(/images/main/icon_dgfca.svg) right bottom no-repeat; position: absolute; right: 0; bottom: 0; background-size: cover; width: 36px; height: 29px; opacity: .1;}
.section02 .cal_thum .cal_cateogory.type01 {background: #c68400;}
.section02 .cal_thum .cal_cateogory.type02 {background: #961783;}
.section02 .cal_thum .cal_cateogory.type03 {background: #175696;}
.section02 .cal_thum .cal_cateogory.type04 {background: #00695C;}
.section02 .cal_thum .cal_cateogory.type05 {background: #d65a00;}
.section02 .cal_img {display: block; width: 100%; height: 0; margin-top: 10px; padding-top: 130%; position: relative; overflow: hidden; box-shadow: 2px 2px 10px rgba(100,55,0,.05);}
.section02 .cal_thum:hover .cal_img {box-shadow: 2px 2px 10px rgba(100,55,0,.15);}
.section02 .cal_img img {width: auto; height: 100%; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.section02 .cal_list .slick-slide {margin: 0 10px; padding: 4px 0;}
.section02 .cal_info {position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 5; padding: 20px; transition: .3s; display: none; flex-wrap: wrap; align-items: flex-end; opacity: 0;}
.section02 .cal_info::before {content: ""; width: 100%; height: 100%; background: rgba(0,0,0,.8); z-index: -1; position: absolute; left: 0; top: 0;}
.section02 .info_wrap {position: absolute; top: 20%; width: 90%;}
.section02 .cal_info .col {width: 100%; display: flex; align-items: flex-start;}
.section02 .cal_info .col + .col {margin-top: 10px;}
.section02 .cal_info .col span {font-size: 1rem; color: #fff; font-weight: 200;}
.section02 .cal_info .col span.tit {width: 24%; padding-left: 5px; display: block; position: relative;}
.section02 .cal_info .col span.tit::before {content: ""; width: 1px; height: 12px; background: #fff; position: absolute; left: 0; top: 3px;}
.section02 .cal_info .col span.txt {width: 76%; display: block;}
.section02 .cal_info .col span.txt.row1 {overflow: hidden; text-overflow: ellipsis; display: -webkit-box; word-break: break-word; -webkit-line-clamp: 1; -webkit-box-orient: vertical; height: 18px;}
.section02 .cal_info .col span.txt.row2 {overflow: hidden; text-overflow: ellipsis; display: -webkit-box; word-break: break-word; -webkit-line-clamp: 3; -webkit-box-orient: vertical; height: 65px;}
.section02 .cal_info a.ticket {font-size: 1rem; display: flex; align-items: center; justify-content: center; width: 100%; height: 50px; border-radius: 4px; background: #ee2e5b; color: #fff; position: relative;}
.section02 .cal_info a.ticket:focus-visible {outline-color: #fff;}
.section02 .cal_info a.ticket span {position: relative; padding-right: 20px;}
.section02 .cal_info a.ticket span::before {content: ""; background: url(/images/main/icon_ticket.svg) center center no-repeat; width: 12px; height: 12px; background-size: cover; position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
.section02 .cal_control {margin-top: 30px; display: flex; align-items: center; justify-content: space-between;}
.section02 .cal_control .progress {display: block; width: 82%; height: 2px; overflow: hidden; background-color: rgba(0,0,0,.15); background-image: linear-gradient(to right, black, black); background-repeat: no-repeat; background-size: 0 100%; transition: background-size .4s ease-in-out; margin-right: 20px;}
.section02 .cal_control .cal_prev {background: #fff url(/images/main/btn_prev_b.svg) center center no-repeat; padding: 22.5px; width: 14px; height: 14px; border-radius: 50%; box-shadow: 2px 2px 10px rgba(100,55,0,.15); cursor: pointer;}
.section02 .cal_control .cal_next {background: #fff url(/images/main/btn_next_b.svg) center center no-repeat; padding: 22.5px; width: 14px; height: 14px; border-radius: 50%; box-shadow: 2px 2px 10px rgba(100,55,0,.15); cursor: pointer;}
.section02 .cal_control .cal_counter .total {color: #777;}


/* section03 */
.section03 {background: #FFF9F0; position: relative;}
.section03::before {content: ""; background: #FFF9F0 url(/images/main/section02_bg.png) bottom center no-repeat; background-size: cover; position: absolute; bottom: 0; width: 100%; height: 155px; z-index: 0; transform: rotate(-180deg);}
.section03 .tour_content {display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; position: relative; z-index: 1;}
.section03 .tour_info {width: calc(100% / 3);}
.section03 .tour_link {margin-top: 30px; max-width: 340px; display: flex; flex-wrap: wrap; gap: 20px;}
.section03 .tour_link li {width: calc(100% / 2 - 10px); height: 100px;}
.section03 .tour_link li.link01 a {background: #fde3ef;}
.section03 .tour_link li.link02 a {padding: 0; background: linear-gradient(#fff 50%, #0154A4 50%); overflow: hidden;}
.section03 .tour_link li.link02 a img {width: 100%; height: 100%; mix-blend-mode: inherit;}
.section03 .tour_link li.link03 a {background: #eaf9f2;}
.section03 .tour_link li.link04 a {background: #FEDD52;}
.section03 .tour_link li a {display: flex; align-items: center; width: 100%; height: 100%; padding: 0 20px; box-shadow: 2px 2px 10px rgba(100,55,0,.05); position: relative; border-radius: 30px; transition: .3s;}
.section03 .tour_link li a::after {content: ""; background: #fff url(/images/main/btn_next_b.svg) center center no-repeat; padding: 10px; width: 12px; height: 12px; border-radius: 50%; position: absolute; right: 20px; box-shadow: 2px 2px 10px rgba(100,55,0,.15); transition: .3s;}
.section03 .tour_link li a:hover::after,
.section03 .tour_link li a:focus::after {right: 15px; transition: .3s;}
.section03 .tour_link li a:hover,
.section03 .tour_link li a:focus {box-shadow: 2px 2px 10px rgba(100,55,0,.15);}
.section03 .tour_link li a img {mix-blend-mode: multiply; width: 60%; height: 50px; object-fit: contain;}
.section03 .tour_wrap {width: calc(100% / 3 * 2);}
.section03 .tour_wrap .slick-dots {display: none;}
.section03 .tour_wrap .slick-slide {margin: 0 10px 0 30px;}
.section03 .tour_wrap .slick-dots {display: none!important; align-items: center; justify-content: center;}
.section03 .tour_wrap .slick-dots li {margin: 20px; position: relative;}
.section03 .tour_wrap .slick-dots li .tour_nav {font-size: 1rem; color: #333; opacity: .2; transition: .3s;}
.section03 .tour_wrap .slick-dots li.slick-active .tour_nav, .sns .slick-dots li .tour_nav:hover {opacity: 1;}
.section03 .tour_wrap .slick-dots li + li::before {content: ""; width: 2px; height: 2px; border-radius: 50%; background: #bbb; position: absolute; left: -20px; top: 50%; transform: translateY(-50%);}
.section03 .tour_list {height: 420px; border: 1px solid #333; background: #fff; border-radius: 0 30px 0 0; position: relative; box-shadow: 2px 2px 10px rgba(100,55,0,.05); transition: .3s;}
.section03 .tour_list:hover {box-shadow: 2px 2px 10px rgba(100,55,0,.15);}
.section03 .tour_list::after {content: ""; width: 1px; height: 80px; background: #636773; position: absolute; left: -19px; top: 0;}
.section03 .tour_list.tour_blog {border-color: #00B456;}
.section03 .tour_list.tour_blog::before {content: "VISIT DAEGU 대구관광 공식 블로그"; transform: rotate(-90deg); font-size: 1rem; position: absolute; left: -169px; top: 230px; width: 300px; color: #555; text-align: right;}
.section03 .tour_list.tour_youtube {border-color: #E83E30;}
.section03 .tour_list.tour_youtube::before {content: "VISIT DAEGU 대구관광 공식 유튜브"; transform: rotate(-90deg); font-size: 1rem; position: absolute; left: -169px; top: 230px; width: 300px; color: #555; text-align: right;}
.section03 .tour_list .slick-slide {margin: 0; position: relative;}
.section03 .tour_list li {padding: 20px;}
.section03 .tour_list li .tour_img {display: block; width :100%; height: 270px; overflow: hidden; position: relative;}
.section03 .tour_list li .tour_img img {width: 100%; height: 100%; object-fit: cover; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.section03 .tour_list li .tour_tit {display: block; font-size: 1.25rem; font-weight: 600; margin: 20px 0; width: 100%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; word-break: break-word; -webkit-line-clamp: 1; -webkit-box-orient: vertical; height: 26px; transition: .3s;}
.section03 .tour_list li:hover .tour_tit {opacity: .8;}
.section03 .tour_list li .tour_date {color: #999; font-size: .8125rem; padding-left: 15px; position: relative;}
.section03 .tour_list li .tour_date::before {content: ""; background: url(/images/main/icon_cal.svg) center center no-repeat; position: absolute; left: 0; top: 1px; width: 12px; height: 12px; background-size: cover;}
.section03 .tour_list .slick-dots {display: flex!important; align-items: center; justify-content: center; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%);}
.section03 .tour_list .slick-dots li {padding: 0 0 20px 0; margin: 0 7px;}
.section03 .tour_list .slick-dots li::before {display: none;}
.section03 .tour_list .slick-dots li button {font-size: 0; width: 7px; height: 7px; border-radius: 50%; background: rgba(0,0,0,.2); border: 1px solid #888;}
.section03 .tour_list .slick-dots li.slick-active button {background: #222; border: 1px solid #222;}


/* section04 */
.section04 .sns_top {display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 50px;}
.section04 .sns_top .sns_list {display: flex; align-items: center;}
.section04 .sns_top .sns_list li + li {margin-left: 20px;}
.section04 .sns .slick-track {display: flex;}
.section04 .sns {margin: 0 -10px;}
.section04 .sns .slick-slide {margin: 0 10px;}
.section04 .sns li.slick-slide {position: relative;}
.section04 .sns li.slick-slide::before {transform: rotate(-90deg); font-size: 1rem; position: absolute; left: -90px; top: 180px; width: 200px; color: #636773; text-align: right;}
.section04 .sns li.slick-slide.youtube::before {content: "Youtube";}
.section04 .sns li.slick-slide.insta::before {content: "Instagram";}
.section04 .sns li.slick-slide.blog::before {content: "Blog";}
.section04 .sns li.slick-slide::after {content: ""; width: 1px; height: 80px; background: #636773; position: absolute; left: 12px; top: 0;}
.section04 .sns .sns_tit {font-size: 1.25rem; font-weight: 600; width: 100%; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; word-break: break-word; -webkit-line-clamp: 1; -webkit-box-orient: vertical; height: 24px; margin-top: -10px; transition: .3s;}
.section04 .sns .sns_icon {position: relative; display: block; width :100%; height: 52px; z-index: 2;}
.section04 .sns .sns_icon img {position: absolute; top: -50%; right: 20px; transition: .3s;}
.section04 .sns .sns_img {width: 100%; padding-top: 100%; overflow: hidden; background: #eee; margin: 0 auto; display: block; transition: .3s; position: relative; box-shadow: 2px 2px 10px rgba(100,55,0,.05);}
.section04 .sns a:hover .sns_img {box-shadow: 2px 2px 10px rgba(100,55,0,.15)}
.section04 .sns a:hover .sns_icon img {transform: scale(1.2); transition: .3s;}
.section04 .sns .sns_img img {width: 100%; height: 100%; object-fit: cover; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.section04 .sns li.slick-slide a {position: relative; display: block; padding: 0 40px 30px 40px; margin: 2px;}
.section04 .sns li.slick-slide a::before {content: ""; width: 100%; height: 50%; border-radius: 20px 20px 0 0;  position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); z-index: -1;}
.section04 .sns li.slick-slide.youtube a::before {background: #FFF0F1;}
.section04 .sns li.slick-slide.insta a::before {background: #FFF3EB;}
.section04 .sns li.slick-slide.blog a::before {background: #E9FAF5;}
.section04 .sns .slick-dots {display: none!important; align-items: center; justify-content: center;}
.section04 .sns .slick-dots li {margin: 20px; position: relative;}
.section04 .sns .slick-dots li .sns_nav {font-size: 1rem; color: #333; opacity: .2; transition: .3s;}
.section04 .sns .slick-dots li.slick-active .sns_nav, .sns .slick-dots li .sns_nav:hover {opacity: 1;}
.section04 .sns .slick-dots li + li::before {content: ""; width: 2px; height: 2px; border-radius: 50%; background: #bbb; position: absolute; left: -20px; top: 50%; transform: translateY(-50%);}
.section04 .sns .youtube .sns_img::before {content: ""; width: 100%; height: 100%; background: linear-gradient(rgba(0,0,0,.1), rgba(0,0,0,.3)); position: absolute; left: 0; top: 0; z-index: 1;}
.section04 .sns .youtube .sns_img::after {content: ""; background: url(/images/main/icon_play.svg) center center no-repeat; padding: 30px; width: 12px; height: 10px; border: 1px solid #fff; border-radius: 50%; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 2;}


/* section05 */
.section05 .wrap {padding: 120px 20px; position: relative;}
.section05 .wrap::before {content: ""; background: url(/images/main/section06_bg.png) 90% 3px no-repeat; width: 584px; height: 498px; background-size: 100%; position: absolute; right: 5%; bottom: -114px;}
.section05 .tit_wrap {position: relative; padding-right: 150px; display: inline-block;}
.section05 .tit_wrap .tit {display: block; position: relative; z-index: 1; font-size: 2rem; font-family: 'Godo'; margin-top: 10px;}
.section05 .tit_wrap .txt {font-size: 1.125rem; margin-top: 15px;}
.section05 .tit_wrap .support_link {position: absolute; top: -90px; right: -10px; width: 180px; height: 180px;}
.section05 .tit_wrap .support_link span {display: inline-flex; align-items: center; justify-content: center; text-align: center; width: 110px; height: 110px; border-radius: 50%; background: linear-gradient(to right, #F58830, #EE2E5B); color: #fff; font-size: .9rem; font-weight: 300; box-shadow: 2px 2px 10px rgba(100,55,0,.15); margin: 10px; position: relative; left: 50%; top: 50%; transform: translate(-50%, -50%); transition: .1s;}
.section05 .tit_wrap .support_link span::before {content: ""; background: url(/images/main/rotate_txt.png) center center no-repeat; background-size: cover; z-index: 0; width: 200px; height: 200px; animation: rotate 8s infinite linear; position: absolute;}
.section05 .tit_wrap .support_link span:hover {width: 130px; height: 130px; transition: .3s;}
.section05 .tit_wrap .support_link::before {content: ""; display: block; opacity: 0.3; position: absolute; left: 50px; top: 50px; width: 100px; height: 100px; border-radius: 50%; background: linear-gradient(to right, #F58830, #EE2E5B); transform: scale(1.45); animation: ping 1.3s ease-in-out infinite both;}
.section05 .tit_wrap .support_link:hover::before {display: none;}

/*slick 처음 로드될때 이미지 사이즈 issue*/
.mv_content,
.section01 .news_list,
.section02 .cal_list,
.section03 .tour_wrap,
.section03 .tour_list,
.section04 .sns {opacity: 0; visibility: hidden; transition: opacity 0.1s ease; -webkit-transition: opacity 0.1s ease;}

.mv_content.slick-initialized,
.section01 .news_list.slick-initialized,
.section02 .cal_list.slick-initialized,
.section03 .tour_wrap.slick-initialized,
.section03 .tour_list.slick-initialized,
.section04 .sns.slick-initialized { visibility: visible; opacity: 1;}


@media all and (max-width: 1420px) {
    /* tab */
    main .tab {width: 100%; margin-top: 25px; padding-bottom: 15px; justify-content: flex-end;}
    main .tab_more {margin-right: 20px; top: 97px;}


    /* section02 */
    .section02 .cal_control {width: 200px; margin: 25px auto 0;}
    .section02 .cal_control .progress {display: none;}


    /* section03 */
    .tour_content {margin-top: 25px;}


    /* section04 */
    .section04 .sns_top {margin-bottom: 25px;}


    /* section05 */
    .section05 .donation::after {display: none;}

}

@media all and (max-width:1200px) {
    /* common */
    .container {margin-top: -116px;}


    /* tab */
    main .tab_more {top: 91px;}


    /* main visual */
    .main_visual::after {bottom: -10px;}
    .main_visual {height: 580px;}


    /* section03 */
    .section03 .tour_list {width: 100%;}
    .section03 .tour_info {width: 100%;}
    .section03 .tour_link {max-width: inherit!important; margin-bottom: 30px;}
    .section03 .tour_link li {width: calc(100% / 4 - 15px);}
    .section03 .tour_wrap {width: 100%;}
    .section03 .tour_wrap .slick-dots {display: flex!important;}
    .section03 .tour_list::after {display: none;}
    .section03 .tour_list.tour_blog::before {display: none;}
    .section03 .tour_list.tour_youtube::before {display: none;}
    .section03 .tour_wrap .slick-slide {margin: 0 10px;}


    /* section04 */
    .section04 .sns .slick-dots {display: flex!important;}
    .section04 .sns_top .sns_list {display: none;}


    /* section05 */
    .section05 .wrap::before {background-size: 88%; right: 0; bottom: calc(-114px - 13%);}
}


@media all and (max-width:768px) {
    /* common */
    section.section {padding: 40px 0;}
    .container {margin-top: 0;}

    /* header */
    .header .bottom .wrap h1 a {background: url(/images/layout/dgfca_logo.png) left center no-repeat; background-size: cover;}
    .header .bottom .wrap h1.lang a {background: url(/images/layout/eng_logo.png) left center no-repeat; background-size: cover;}
    .header .top .util_list li:not(:last-child) a {color: #444;}
    .header .top .util_list li {border-left: 1px solid #dadada;}
    /*.header .bottom::before {background: #dadada;}*/
    .header .top {border-bottom: 1px solid #dadada;}
    .header .gnb_util .btn_search {background: url(/images/layout/btn_search_b.svg) center no-repeat;}
    .header .gnb_util .btn_ham {background: url(/images/layout/btn_menu_b.svg) center no-repeat;}
    .header .top .util_list li.util01, .header .top .util_list li.util03 {background: url(/images/layout/btn_login_b.svg) center right 15px no-repeat;}
    .header .top .util_list li.util02, .header .top .util_list li.util04 {background: url(/images/layout/btn_join_b.svg) center right 15px no-repeat;}


    /* tab */
    main .tab_more {top: 87px;}
    main .tab_wrap {margin-bottom: 15px;}
    main .tab {overflow-x: scroll; justify-content: flex-start;}
    main .tab .tab_tit {width: 100%;}


    /* main visual */
    .main_visual {height: 500px;}
    .main_visual::after {display: none;}
    .mv_item a:focus-visible::before {height: 75%; bottom: 12%;}
    .mv_item a::after {background: none;}
    .mv_control {bottom: 15px;}
    button.play-pause {width: 50px; height: 50px;}
    button.play-pause:active {width: 60px; height: 60px;}
    button.play-pause:after {width: 15px; height: 15px;}


    /* section01 */
    .section01 .news_list .news_item .txtbox .txt {height: 34px;}


    /* section03 */
    .section03 .tour_list {border: 1px solid #333;}
    .section03 .tour_link li {width: calc(100% / 2 - 20px); height: 70px;}
    .section03 .tour_link li a {border-radius: 15px;}
    .section03 .tour_link li.link02 a img {object-fit: cover;}


    /* section04 */
    .section04 .sns .sns_img {height: 250px;}


    /* section05 */
    .section05 .wrap::before {background: none;}
    .section05 .tit_wrap {width: 100%; padding-right: 0;}
}

@media all and (max-width:500px) {
    /* common */
    .tit_wrap h3.sub_tit {font-size: .9rem;}
    .tit_wrap h2.tit {font-size: 2rem;}


    /* tab */
    main .tab_more {top: 80px;}


    /* main visual */
    .main_visual {height: 210px;}
    .mv_item a img {transform: translateX(-50%) scale(1.1);}


    /* section02 */
    .section02 h1.tit {font-size: 2.375rem;}
    .section02 .cal_info .col span.txt.row2 {height: 50px;}


    /* section04 */
    .section04 .sns .sns_img {height: 200px;}


    /* section05 */
    .section05 .wrap {padding-bottom: 200px; padding-top: 50px; background: none;}
    .section05 .tit_wrap {padding-right: 0;}
    .section05 .tit_wrap .support_link {right: 38px; bottom: -180px; top: auto;}
}