@charset "utf-8";
/* *******************************************************
 * filename : main.css
 * description : 메인 레이아웃 및 컨텐츠 CSS
 * date : 2022-08-08
******************************************************** */

/* ******************  메인 레이아웃(Fullpage) ********************** */
#fullpage #mainVisual{height:100vh}
@media all and ( min-width: 1281px ) and (max-height: 750px) {
	#fullpage .section:not(#mainFooter){min-height:750px;}
	#fullpage .section .fp-tableCell{height:100% !important;}
}

/* ******************  메인 비주얼 ********************** */
#mainVisual{width:100%; height:105.8rem; position:relative; }
.main-visual-con, 
.main-visual-con .slick-list,  
.main-visual-con .slick-track, 
.main-visual-item{
	height:100%;
}
.main-visual-con{z-index:1;}
/* 메인 비주얼 :: 이미지 */
.main-visual-item{position:relative;}
.main-visual-item .main-visual-img{
	width:100%;
	height:100%;
	background-size:cover !important;
}
.main-visual-item .main-visual-m-img{display:none;}

/* 메인 비주얼 :: 텍스트 */
.main-visual-txt-con{
	position:absolute; 
	left:0px; top: 0;
	width:100%; 
	height:100%;
	z-index:1;
}
.main-visual-txt-box{
	position: relative;
	display:flex;
	align-items:center;
	justify-content: center;
	max-height: 130rem;
}
.main-visual-txt-box img {max-width: 100%; max-height: 100%;}

/* ******************  메인 컨텐츠 ********************** */
/* -------- 메인 컨텐츠 :: 공통 -------- */
/* 공통 :: 타이틀 */
.main-tit-box{  letter-spacing:-0.75px; text-align:center;}
.main-tit-box .main-tit{color:#040404; font-size:40px; font-weight:300; }
.main-tit-box .main-tit img{ max-width: 100%;}
.main-tit-box .main-sub-tit{display:block; margin-top:15px; color:#aaa; font-size:15px; letter-spacing:-0.75px; font-weight:300; line-height:1.5; }

#mainContent {background: url(/images/main/main_bg.jpg)no-repeat center/cover;}

.line-section {position: relative;}
.line-section:before {position: absolute; content: ''; width: 113.7rem; height: 6.2rem; bottom: 0; left: 50%;/*  transform:translateX(-50%); */ margin-left: -56.85rem; background: url(/images/main/main_section_line.png)no-repeat center/100%;}

.cm-link-btn {display: flex; align-items: center; justify-content: space-between; margin:4.5rem auto 0; width: 26rem; height: 7rem; border-radius: 3.5rem; padding:0 2.9rem 0 3rem; background: linear-gradient(105deg, #e938cd 10%, #1badfe 90% ); font-size: 1.9rem; font-weight: 700; letter-spacing: -0.05em; color: #fff; -webkit-box-sizing: border-box;-moz-box-sizing: border-box; box-sizing: border-box;}
.cm-link-btn i {font-size: 2.5rem;}

/* -------- 메인 컨텐츠 :: 컨텐츠1(상단 배너) -------- */
#mainContent1{}
.main-con01 {position: relative; padding:15rem 0 18rem; }
.main-con01-tit {text-align: center; margin-bottom: 9rem;}
.main-con01-tit img {max-width: 100%;}
.main-con01-banner {text-align: center; margin-bottom: 8.5rem;}
.main-con01-banner img {max-width: 100%;}

.main-con01-menu-list {display: flex; justify-content: center;}
.main-con01-menu-list li {width: 25%; width: 23.8rem; text-align: center;}
.main-con01-menu-list li a {display: block; width: 100%; height: 100%;}
.main-con01-menu-list li a img {max-width: 100%;}

/* -------- 메인 컨텐츠 :: 컨텐츠2 (메뉴 및 영상) -------- */
.main-con02 {padding:6rem 0 18rem;}
.main-con02-tit {text-align: center;}
.main-con02-tit img {max-width: 100%;}
.main-con02-video-box { }
.main-con02-video-box a {display: block; text-align: center;}
.main-con02-video-box a img {width: 100%;}
.main-con02 .cm-link-btn {margin: 1rem auto 0;}

/* -------- 메인 컨텐츠 :: 컨텐츠3 (TOPICS) -------- */
.main-con03 {padding: 9rem 0 22.5rem;}
.main-topics-con {padding: 5.5rem 0 0;}
.main-topics-list { display: flex; flex-wrap: wrap; margin:-6.2rem -4rem;}
.main-topics-list li {position: relative; width: calc(50% - 8rem); margin: 6.2rem 4rem; border: 2.5px dotted #ef4eac; border-radius: 4.6rem; -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box; background: #fff;}
.main-topics-list li .inner {display: block; width: 100%; height: 100%;}
.main-topics-list li .img-box {position: relative; width: 100%; height: 0; padding-top: 114.85%;}
.main-topics-list li .img-box span {display: flex; align-items: center; justify-content: center; position: absolute; width: 100%; height: 100%; top: 0; left: 0; padding: 4rem 4rem 2.5rem; box-sizing: border-box;}
.main-topics-list li .img-box img {max-width: 100%; max-height: 100%;}
.main-topics-list li .txt-box {border-radius: 0 0 4.6rem 4.6rem; background: #fff7fb; padding: 4.5rem 4.5rem 6.5rem; height: 32.5rem; -webkit-box-sizing: border-box;-moz-box-sizing: border-box; box-sizing: border-box;}
.main-topics-list li .txt-box .topics-tit {font-size: 2.5rem; font-weight: 700; letter-spacing: -0.04em; color: #ef4eac; line-height: 1.32;}
.main-topics-list li .txt-box .topics-sub-tit {font-size: 1.9rem; font-weight: 400; letter-spacing: -0.04em; color: #191919; line-height: 1.3; padding-top: 1.5rem;}
.main-topics-list li .txt-box .topics-txt {font-size: 1.6rem; font-weight: 400; letter-spacing: -0.04em; color: #656565; line-height: 1.5; padding-top: 2rem;}
.main-topics-list li .more-btn {position: absolute; display: flex; align-items: center; justify-content: center; bottom: -5.3rem; left: 50%; margin-left: -6.4rem; width: 12.8rem; height: 10.6rem; text-align: center; background: url(/images/main/main_con03_btn.png)no-repeat center/100%;} 
.main-topics-list li .more-btn strong {display: block; font-size: 1.7rem; font-weight: 700; letter-spacing: -0.04em; color: #fff; margin-top: -0.5rem}

/* -------- 메인 컨텐츠 :: 컨텐츠4 (SNS) -------- */
.main-con04 {padding: 7rem 0 18rem;}
.main-con04 .main-tit-box .main-tit {margin-left: 8rem;}
.main-sns-con {padding: 6.5rem 0 0;}
.main-sns-list {display: flex; flex-wrap: wrap; margin: -3rem -4rem;}
.main-sns-list li {width: calc(50% - 8rem); margin: 3rem 4rem; border-radius: 4.6rem; padding: 0.5rem; background: linear-gradient(123deg, #e938cd 10%, #1badfe 90% ); -webkit-box-sizing: border-box;-moz-box-sizing: border-box; box-sizing: border-box;}
.main-sns-list li .inner {/* display: flex; flex-direction:column; */ background: #fff; border-radius: 4.1rem; padding: 3rem 1.1rem 3rem 2.2rem; -webkit-box-sizing: border-box;-moz-box-sizing: border-box; box-sizing: border-box;}
.main-sns-list li .inner .tit-con a {position: relative; display: block; padding: 0 0 3.5rem 5.2rem;}
.main-sns-list li .inner .tit-con a .sns-profile {position: absolute; top: 0; left: 0; width: 4rem; height: 4rem; border-radius: 4rem; overflow: hidden;}
.main-sns-list li .inner .tit-con a .sns-profile img {position: absolute; width: 100%; height: 100%; top: 0; left: 0;}
.main-sns-list li .inner .tit-con a .sns-tit {font-size: 1.6rem; font-weight: 700; letter-spacing: -0.05em; color: #000; line-height: 1.3;}
.main-sns-list li .inner .tit-con a .sns-id {display: block; font-size: 1.4rem; font-weight: 400; color: #000; line-height: 1.3; margin-top:0.5rem;} 
.main-sns-list li .inner .sns-con {display: block; height: 40rem; overflow-x: hidden; overflow-y: auto; display: block; padding-left: 5.1rem; -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}


/* -------- 메인 컨텐츠 :: 컨텐츠5 (SCHEDULE) -------- */
.main-con05 {padding: 7.5rem 0 15rem;}
.main-schedule-con {padding-top: 3.5rem;}
.main-schedule-con .calendar-top-con { position: relative; max-width: 165px; margin: 0px auto 3rem; display: flex; align-items: center; justify-content: center;}
.main-schedule-con .calendar-top-con .current-month {font-size: 4rem; font-weight: 800; letter-spacing: -0.05em; color: #000000; line-height: 1.2;}
.main-schedule-con .calendar-top-con a {position: absolute; top: 50%; margin-top: -1.5rem; width: 3rem; height: 3rem;}
.main-schedule-con .calendar-top-con a i {font-size: 3rem;}
.main-schedule-con .calendar-top-con a.prev-month-btn {left: 0;}
.main-schedule-con .calendar-top-con a.prev-month-btn i { transform: rotate(-180deg); color: #e834cb; }
.main-schedule-con .calendar-top-con a.next-month-btn {right: 0;}
.main-schedule-con .calendar-top-con a.next-month-btn i {color: #1badfe; }
.main-schedule-con .schedule-list {position: relative; max-width: 77rem; margin: 0 auto 2.5rem; display: flex; align-items: center; justify-content: end;}
.main-schedule-con .schedule-list li {position: relative; margin-left: 1rem; padding-left: 2.2rem;}
.main-schedule-con .schedule-list li span {display: block; font-size: 1.6rem; font-weight: 500; letter-spacing: -0.045em; color: #000000; line-height: 1.3;}
.main-schedule-con .schedule-list li:before {position: absolute; content: ''; top: 0.2rem; left: 0; width: 1.6rem; height: 1.6rem; border-radius: 1.6rem;}
.main-schedule-con .schedule-list li:nth-child(1):before {background-color: #ef4eac;}
.main-schedule-con .schedule-list li:nth-child(2):before {background-color: #f40505;}
.main-schedule-con .schedule-list li:nth-child(3):before {background-color: #1badfe;}
.main-schedule-con .schedule-list li:nth-child(4):before {background-color: #febb1b;}

.main-schedule-con .schedule-con-wrap {position: relative; max-width: 77rem; margin: 0 auto;}
.main-schedule-con .schedule-con-wrap .schedule-con-bg {position: absolute; width: 100%; height: 100%; top: 0; left: 0;}
.main-schedule-con .schedule-con-wrap .schedule-con-bg img {position: absolute; width: 100%; height: 100%; top: 0; left: 0;}
.main-schedule-con .schedule-con {position: relative; padding: 8.3rem 3rem 3.5rem; -webkit-box-sizing: border-box;-moz-box-sizing: border-box; box-sizing: border-box;}
.schedule-con .calendar-tbl {width: 100%;}
.schedule-con .calendar-tbl th {border-top: 2px solid #7f7f7f; border-bottom: 2px solid #7f7f7f; padding: 1.3rem 0; font-size: 1.25rem; font-weight:400; letter-spacing: -0.045em; color: #000000;}
.schedule-con .calendar-tbl th.sunday {color: #e20000;}
.schedule-con .calendar-tbl td {padding: 1.5rem 0.7rem ; border-bottom: 1px solid #bcbcbc; border-left: 1px solid #f2f2f2; vertical-align: top;}
.schedule-con .calendar-tbl td:first-of-type {border-left: 0;}
.schedule-con .calendar-tbl td .date {display: block; font-size: 1.25rem; font-weight: 400; letter-spacing: -0.05em; color: #000000;}
.schedule-con .calendar-tbl td.prev-moth-date .date,
.schedule-con .calendar-tbl td.next-moth-date .date {color: #cccccc;}
.schedule-con .calendar-tbl td.sunday .date { color: #d80404;}
.schedule-con .schedule-list-wrapper {margin-top: 0.3rem; min-height: 2.3rem;}
.schedule-con .schedule-list-wrapper a {display: block;}
.schedule-con .schedule-list-wrapper a .schedule-list-con {display: flex;}
.schedule-con .schedule-list-wrapper a .schedule-list-con li { }
.schedule-con .schedule-list-wrapper a .schedule-list-con li i {font-size: 2.3rem;}
.schedule-con .schedule-list-wrapper a .schedule-list-con li.schedule-item01 i {color: #ef4eac;}
.schedule-con .schedule-list-wrapper a .schedule-list-con li.schedule-item02 i {color: #f40505;}
.schedule-con .schedule-list-wrapper a .schedule-list-con li.schedule-item03 i {color: #1badfe;}
.schedule-con .schedule-list-wrapper a .schedule-list-con li.schedule-item04 i {color: #febb1b;}

/* 스케줄 팝업 */
.schedule-modal-content {position:relative; width:96%; max-width:68rem; margin:60px auto; }
.schedule-modal-content .modal-close-btn {position: absolute; top: -6rem; right: -6rem; width: 6rem; height: 6rem; border-radius: 6rem; line-height: 6rem; background: #fff; font-size: 3.2rem; color: #000;}
.schedule-modal-content .modal-close-btn i {line-height: 6rem;}
.schedule-modal-content .modal-close-btn:hover i {color: #000;}
.schedule-inner-box {padding: 3rem 4rem 5.5rem; background-color: #fff; border-radius: 2rem; -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.schedule-pop-con .date {display: block; width: 15rem; height: 4rem; display: flex; align-items: center; justify-content: center; text-align: center; font-size: 1.6rem; font-weight: 500; letter-spacing: -0.045em; color: #fff; border-radius: 2rem; background: #ef4eac; margin:0 auto 2rem;}

.schedule-pop-con .schedule-list li {margin-bottom: 1rem;}
.schedule-pop-con .schedule-list li:last-child {margin-bottom: 0;}
.schedule-pop-con .schedule-list li .txt {display: block; position: relative; padding-left: 3rem; font-size: 1.6rem; font-weight: 400; color: #686868; line-height: 1.4; transition: all 0.3s;}
.schedule-pop-con .schedule-list li .txt:before {position: absolute; content: '\ea40'; left: 0; top: -0.5rem; font-size: 2.3rem; font-family: xeicon;}
.schedule-pop-con .schedule-list li a.txt:hover {color: #ef4eac;}

.schedule-pop-con .schedule-list li.schedule-item01 .txt:before {color: #ef4eac;}
.schedule-pop-con .schedule-list li.schedule-item02 .txt:before {color: #f40505;}
.schedule-pop-con .schedule-list li.schedule-item03 .txt:before {color: #1badfe;}
.schedule-pop-con .schedule-list li.schedule-item04 .txt:before {color: #febb1b;}

/* -------- 메인 컨텐츠 :: 컨텐츠6 (하단 배너) -------- */
.main-con06 {padding: 0 0 15rem;}
.main-banner-con {max-width: 77rem; margin: 0 auto;}
.main-banner-list {display: flex; flex-wrap: wrap; margin: -1rem 0;}
.main-banner-list li {margin: 1rem 0;}
.main-banner-list li a {display: block;}
.main-banner-list li a img {max-width: 100%;}
.main-banner-list li.half-row {display: flex; margin: 1rem -1rem;}
.main-banner-list li.half-row .main-banner-item {width: calc(50% - 2rem); margin: 0 1rem;}

.main-sns-banner-list {display: flex; margin: 0 -2.1rem; padding-top: 4.5rem;}
.main-sns-banner-list li {width: calc(100% - 4.2rem); margin: 0 2.1rem;}
.main-sns-banner-list li a {display: block; width: 100%;}
.main-sns-banner-list li a span {position: relative; display: block; width: 100%; height: 0; padding-top: 100%; border-radius: 50%; overflow: hidden;}
.main-sns-banner-list li a span img {position: absolute; width: 100%; height: 100%; top: 0; left: 0;}

/* ******************  메인 오른쪽 퀵메뉴 ********************** */

/* 메인 인트로 영상 */
.main-con02-video-box .video-wrap {position: relative; margin-top: 5rem;}
.main-con02-video-box .video-iframe-box {position: relative;padding-top:56.3%;height: 0; background-color: #fff; border-radius: 6rem; overflow: hidden;}
.main-con02-video-box .video-iframe-box  iframe {position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;}
.main-con02-video-box .video-cover-box { position: absolute;  top: 0px;left: 0px;  width: 100%;height: 100%;border-radius: 6rem;  overflow: hidden; cursor: pointer;}
.main-con02-video-box .thumb {display: block; position: relative; width: 100%; height: 100%; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; -o-transition: all 0.4s; -ms-transition: all 0.4s; transition: all 0.4s;}
.main-con02-video-box .thumb img {  width: 100%; height: 100%;}
/* .main-con02-video-box .btn-cover {position: absolute;  top: 50%; left: 50%; width: 11rem; height: 11rem; margin: -5.5rem 0 0 -5.5rem; border-radius: 50%; z-index: 10;}
.main-con02-video-box .btn-cover img{position: relative; max-width: 100%;} */