@charset "utf-8";
/* 공통 */
	body { width: 100%; height: 100%; font-family: "Freesentation", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif; font-size:16px; font-weight: 400; line-height: 1.5em; word-break: keep-all; word-wrap: break-word; color: #262727; }
	
	@font-face {
		font-family: 'SEBANG_Gothic_Bold';
		src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2104@1.0/SEBANG_Gothic_Bold.woff') format('woff');
		font-weight: normal;
		font-style: normal;
	}

	.sebang { font-family: "SEBANG_Gothic_Bold", sans-serif; }
	.noto { font-family: "Noto Sans KR", sans-serif; }

	.mob { display: none; }
	@media (max-width:991px) {
		html, body{ font-size: 14px; }
		.web{ display: none !important; }
		.mob{ display: block; }
	}

	@media (max-width:767px) {
		html, body{ font-size: 12px; }
	}

	h1, .h1 { margin: 0; padding: 0; font-size: 2em; font-weight: 400; }/*32*/
	h2, .h2 { margin: 0; padding: 0; font-size: 1.63em; font-weight: 400; }/*26*/
	h3, .h3 { margin: 0; padding: 0; font-size: 1.50em; font-weight: 400; }/*24*/
	h4, .h4 { margin: 0; padding: 0; font-size: 1.38em; font-weight: 400; }/*22*/
	h5, .h5 { margin: 0; padding: 0; font-size: 1.25em; font-weight: 400; }/*20*/
	h6, .h6 { margin: 0; padding: 0; font-size: 1.12em; font-weight: 400; }/*18*/

	.s_tt { font-size: 12px; }
	
	.display_none { display: none; }

/* 컨텐츠 공통*/
	.con_pd{ min-height: 750px; padding-top: 0; padding-bottom: 15rem; }
	@media (max-width:991px) {
		.con_pd{ min-height: 300px; padding-top: 0; padding-bottom: 70px; }
	}

/* 기준색 */
	.tc01 { color: var(--PU-48) !important; }
	.tc02 { color: var(--RD-FF) !important; }
	.tc03 { color: var(--GR-32) !important; }
	.tc04 { color: var(--RD-FF) !important; }
	.tc05 { color: var(--BK-99) !important; }
	.tc06 { color: var(--BK-66) !important; }
	.tc07 { color: var(--BL-00) !important; }

/* 배경 */
	.bc01 { color: var(--white) !important; background: var(--PU-48) !important; }
	.bc02 { color: var(--white) !important; background: var(--RD-FF) !important; }
	.bc03 { color: var(--white) !important; background: var(--GR-32) !important; }
	.bc04 { color: var(--white) !important; background: var(--BL-2C) !important; }
	.bc05 { background: var(--BK-F5) !important; }
	.bc06 { color: var(--white) !important; background: var(--BL-16) !important; }
	.bc07 { color: var(--white) !important; background: var(--GR-32) !important; }

	/* .gra01 {background: -webkit-gradient(linear, left top, right top, color-stop(0, #75ffff), color-stop(0.5, #aaff92), color-stop(1, #ffff5c));
			background: -moz-linear-gradient(left, #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: -webkit-linear-gradient(left,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: -o-linear-gradient(left,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: -ms-linear-gradient(left,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: linear-gradient(left,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#75ffff', endColorstr='#ffff5c', gradientType=1);}

	.gra02 {background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #75ffff), color-stop(0.5, #aaff92), color-stop(1, #ffff5c));
			background: -moz-linear-gradient(top, #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: -webkit-linear-gradient(top,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: -o-linear-gradient(top,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: -ms-linear-gradient(top,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			background: linear-gradient(top,  #75ffff 0%, #aaff92 50%, #ffff5c 100%);
			filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#75ffff', endColorstr='#ffff5c', gradientType=0);} */

/* 라인 */
	.bo01 { border: 1px solid var(--PU-28) !important; }
	.bo02 { border: 1px solid var(--RD-FF) !important; }
	.bo03 { border: 1px solid var(--GR-32) !important; }
	.bo04 { border: 1px solid var(--BL-2C) !important; }

/* 버튼 색상 */
	.bt01 { color: var(--white) !important; background: var(--RD-FF); border: 1px solid var(--RD-FF); }
	.bt02 { color: var(--white) !important; background: var(--BK-9E); border: 1px solid var(--BK-9E); }
	.bt03 { color: var(--white) !important; background: var(--black); border: 1px solid var(--black); }
	.bt04 { background: var(--BK-F0); border: 1px solid var(--BK-F0); }
	.bt05 { border: 1px solid var(--BK-DD); }
	.bt06 { color: var(--white) !important; background: var(--BL-46); border: 1px solid var(--BL-46); }
	.bt07 { color: var(--white) !important; background: var(--BL-31); border: 1px solid var(--BL-31); }

/* sns 컬러 */
	.kakao_co  { color: #361d1d; }
	.naver_co  { color: #34b833; }
	.fbook_co  { color: #3150b3; }
	.google_co { color: #3150b3; }

	.kakao_bg { color: #361d1d; background: #ffd325; }
	.naver_bg { color: var(--white); background: #34b833; }
	.fbook_bg { color: var(--white); background: #3150b3; }

/* 히어로 */
	.hero { position: relative; display: flex; align-items: center; height: 740px; text-align: center; }
	.hero h1 { padding: 0 0 20px 0; font-size: 3em; font-weight: 800; color: var(--white); }
	.hero img { width: auto; }
	@media (max-width:991px) {
		.hero { height: auto; padding: 150px 0 200px 0; background-size: cover; background-position: center; }
		.hero h1 { font-size: 2em; }
	}

/* 로케이션 */
	.location { display: none; border-bottom:1px solid var(--BK-D3); }
	.location .menu { display:flex; background: var(--white); }
	.location .menu > li{ position: relative; float: left; width: 220px; border-right: 1px solid var(--BK-D3); padding: 0; vertical-align: middle; }
	.location .menu > li:nth-child(1){ width: 60px; border-left: 1px solid var(--BK-D3); }
	.location .menu > li > p { display: block; position: relative; padding: 20px; line-height: 20px; cursor: pointer; }
	.location .menu > li > p:before { content: ""; position: absolute; top: 0; right: 0; width: 60px; height: 60px; background: url(../../img/common/location_bg.png) no-repeat; background-position: center -60px; }
	.location .menu > li > span{ display: block; padding: 20px; line-height: 20px; }
	.location .menu .home a { display: block; height: 60px; padding: 0; background: url(../../img/common/icon_home.png) no-repeat; background-position: center -60px; }
	.location .menu > li > p.on { background: var(--BK-EE); }
	.location .menu > li > p.on:before { transform: rotate(180deg); }
	.location .sub{ display: none; position: absolute; top:60px; left: -1px; right: -1px; z-index: 10; border: 1px solid var(--BK-D3); border-top: 0; background: var(--white); }
	.location .sub a{ display: block; padding: 10px 20px; }
	.location .sub a:hover{ background: var(--BK-F7); }
	@media (max-width:991px) {
		.location .container { padding: 0; }
		.location .menu { margin-top: 0; }
		.location .menu > li{width: 50%; border: 0; }
		.location .menu > li:nth-child(2){ border-right: 1px solid #ddd; }
		.location .menu > li > p{ padding: 15px; }
		.location .menu > li > p:before { width: 50px; height: 50px; background-position: center -65px; }
		.location .menu > li > span{ padding: 15px; }
		.location .menu .home{ display: none; }
		.location .sub{ top:50px; }
	}

/* 탭 */
/* 탭메뉴 */
	.tab { position: absolute; left: 0; bottom: 0;
			   width: 100%; padding: 30px 0; border-bottom: 0; background: rgba(128, 142, 199, 0.5); }
    .tab + .tab { padding: 0 0 40px 0; }
	.tab ul { display: flex; justify-content: center; flex-wrap: wrap; gap: 20px; }
	.tab li a { position: relative; display: block; height: 50px; line-height: 50px; font-size: 1.5em; text-align: center; color: var(--white); }
	.tab li a::after{ content:""; position:absolute; bottom:0; left:0;
										display:block; width:100%; height:3px; background-color: var(--white);
										transform:scale3d(0,1,1); transform-origin:center center; transition:transform .3s; }
	.tab li a:hover:after { transform:scale3d(1,1,1);	}
	.tab .on a { font-weight: 800; border-bottom: 3px solid var(--white); }
	.tab .on a::after{ display: none; }

.event .tab li { width: calc(100% / 6); }
	.event .tab li a { width: 100%; }
	@media (max-width:767px) {
		.tab  { padding: 10px 0; }
		.tab ul { gap: 10px; }
		.tab li a { height: 40px; line-height: 40px;  font-size: 1.1em; }
	}

	#sub .tt,
	#board .tt,
	#member .tt { margin: 0 0 100px 0; padding: 60px 0; color: #283278; border-bottom: 1px solid #283278; background: #e3eaf8; }
	#sub .tt > div,
	#board .tt > div,
	#member .tt > div { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; }
	#sub .tt > div::before,
	#board .tt > div::before,
	#member .tt > div::before,
	#sub .tt > div::after,
	#board .tt > div::after,
	#member .tt > div::after { display: none; }
			#sub .tt h2,
			#board .tt h2,
			#member .tt h2 { font-size: 2.88em; font-weight: 700;  }
	@media (max-width:991px) {
			#sub .tt,
			#board .tt,
			#member .tt { margin: 0 0 30px 0; padding: 30px 0; }
			#sub .tt > div,
			#board .tt > div,
			#member .tt > div { align-items: center; flex-direction: column; gap: 10px; }
	}
	
/* 문의 공통 */
.f_info div { display: block; margin: 0 auto; font-size: 1.2em; color: var(--RD-FF); }
	.f_info div img { border: 1px solid #ff725a; }
	.f_info div h6 { font-weight: 600; padding: 20px 0; }

/* 약관 모달 */
	.modal-body .scroll{ height: 550px; overflow-y: scroll; }
	.modal .close{ left: auto; right: 0; }

/* -- 약관 -- */
	.terms .con{ padding:15px 10px; border-bottom: 1px solid #e5e5e5; }

	.terms ul li{ position: relative; }
	.terms .list01 li{ padding:0 0 0 25px; }
	.terms .list01 i { position: absolute; left: 10px; }
	.terms .list02 li{ padding:0 0 0 35px; }
	.terms .list02 i { position: absolute; left: 10px; }
	.terms .list03 li{ padding:0 0 0 30px; }
	.terms .list03 i { position: absolute; left: 10px; }

	.terms table{ border-top: 2px solid #15aae8; }
	.terms table th{ font-weight: 300; background: #eee; }
	.terms table th, .terms table td{ padding:10px; border-top: 1px solid var(--BK-DD); }

	.terms .tit{ padding: 15px 0 0 0; font-weight: 500; }
	.terms .sub_tit{ padding: 15px 0 5px 0; font-weight: 500; }
	.terms p{ padding: 5px 5px 0 5px; }

	.terms .circle > li:nth-child(1) > i:before{ content: "①"; }
	.terms .circle > li:nth-child(2) > i:before{ content: "②"; }
	.terms .circle > li:nth-child(3) > i:before{ content: "③"; }
	.terms .circle > li:nth-child(4) > i:before{ content: "④"; }
	.terms .circle > li:nth-child(5) > i:before{ content: "⑤"; }
	.terms .circle > li:nth-child(6) > i:before{ content: "⑥"; }
	.terms .circle > li:nth-child(7) > i:before{ content: "⑦"; }
	.terms .circle > li:nth-child(8) > i:before{ content: "⑧"; }
	.terms .circle > li:nth-child(9) > i:before{ content: "⑨"; }
	.terms .circle > li:nth-child(10) > i:before{ content: "⑩"; }
	.terms .circle > li:nth-child(11) > i:before{ content: "⑪"; }

	.terms .num > li:nth-child(1) > i:before{ content: "1."; }
	.terms .num > li:nth-child(2) > i:before{ content: "2."; }
	.terms .num > li:nth-child(3) > i:before{ content: "3."; }
	.terms .num > li:nth-child(4) > i:before{ content: "4."; }
	.terms .num > li:nth-child(5) > i:before{ content: "5."; }
	.terms .num > li:nth-child(6) > i:before{ content: "6."; }
	.terms .num > li:nth-child(7) > i:before{ content: "7."; }
	.terms .num > li:nth-child(8) > i:before{ content: "8."; }
	.terms .num > li:nth-child(9) > i:before{ content: "9."; }
	.terms .num > li:nth-child(10) > i:before{ content: "10."; }
	.terms .num > li:nth-child(11) > i:before{ content: "11."; }
	.terms .num > li:nth-child(12) > i:before{ content: "12."; }
	.terms .num > li:nth-child(13) > i:before{ content: "13."; }
	.terms .num > li:nth-child(14) > i:before{ content: "14."; }
	.terms .num > li:nth-child(15) > i:before{ content: "15."; }

	.terms .brac > li:nth-child(1) > i:before{ content: "1)"; }
	.terms .brac > li:nth-child(2) > i:before{ content: "2)"; }
	.terms .brac > li:nth-child(3) > i:before{ content: "3)"; }
	.terms .brac > li:nth-child(4) > i:before{ content: "4)"; }
	.terms .brac > li:nth-child(5) > i:before{ content: "5)"; }
	.terms .brac > li:nth-child(6) > i:before{ content: "6)"; }
	.terms .brac > li:nth-child(7) > i:before{ content: "7)"; }
	.terms .brac > li:nth-child(8) > i:before{ content: "8)"; }
	.terms .brac > li:nth-child(9) > i:before{ content: "9)"; }
	.terms .brac > li:nth-child(10) > i:before{ content: "10)"; }
	.terms .brac > li:nth-child(11) > i:before{ content: "11)"; }
	.terms .brac > li:nth-child(12) > i:before{ content: "12)"; }
	.terms .brac > li:nth-child(13) > i:before{ content: "13)"; }
	.terms .brac > li:nth-child(14) > i:before{ content: "14)"; }
	.terms .brac > li:nth-child(15) > i:before{ content: "15)"; }
	.terms .brac > li:nth-child(16) > i:before{ content: "16)"; }
	.terms .brac > li:nth-child(17) > i:before{ content: "17)"; }
	.terms .brac > li:nth-child(18) > i:before{ content: "18)"; }
	.terms .brac > li:nth-child(19) > i:before{ content: "19)"; }
	.terms .brac > li:nth-child(20) > i:before{ content: "20)"; }
	.terms .brac > li:nth-child(21) > i:before{ content: "21)"; }
	.terms .brac > li:nth-child(22) > i:before{ content: "22)"; }
	.terms .brac > li:nth-child(23) > i:before{ content: "23)"; }
	.terms .brac > li:nth-child(24) > i:before{ content: "24)"; }
	.terms .brac > li:nth-child(25) > i:before{ content: "25)"; }

	.terms .han > li:nth-child(1) > i:before{ content: "가."; }
	.terms .han > li:nth-child(2) > i:before{ content: "나."; }
	.terms .han > li:nth-child(3) > i:before{ content: "다."; }
	.terms .han > li:nth-child(4) > i:before{ content: "라."; }
	.terms .han > li:nth-child(5) > i:before{ content: "마."; }

	.terms .hyphen > li > i:before{ content: "-"; }
	.terms .squ > li > i:before{ content: "*"; }

/* 리스트 */
.dot_list { display: flex; flex-direction: column; gap: 5px; width: 100%; }
	.dot_list li { position: relative; padding: 0 0 0 10px; }
	/* .dot_list li::before { content: "-"; position: absolute; left: 0; } */
	.dot_list dd { position: relative; padding: 0 0 0 10px; }
	.dot_list dd::before { content: "-"; position: absolute; left: 0; }

/* 안내사항 */
.info_list { position: relative; padding: 0 0 0 10px; }
	.info_list li::before { content: "-"; position: absolute; left: 0; }

/* 뉴스레터 구독 섹션 */
.newsletter_section { padding: 45px 0; background: url(../../img/00_main//news_bg.jpg) center no-repeat; background-size: cover; }
.newsletter_inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; max-width: 90%; margin: 0 auto; }
.newsletter_txt h2 { font-family: "Isamanru"; font-size: 32px; font-weight: 900; color: #2b5fda; letter-spacing: 1px; margin: 0 0 8px; }
.newsletter_txt p { font-size: 14px; color: #555; line-height: 1.7; margin: 0; }
.newsletter_form { flex: 1; }
.newsletter_form .input_box { display: flex; gap: 10px; }
.newsletter_form .input_box input[type="email"] {
    flex: 1; height: 48px; padding: 0 16px;
    border: 1px solid #cdd3de; border-radius: 0;
    font-size: 14px; color: #333; background: #fff;
    outline: none;
}
.newsletter_form .input_box input[type="email"]:focus { border-color: #2b5fda; }
.newsletter_form .input_box button {
    white-space: nowrap; height: 48px; padding: 0 28px;
    background: #2b5fda; color: #fff; border: none;
    border-radius: 0; font-size: 15px; font-weight: 700;
    cursor: pointer; transition: background 0.2s;
}
.newsletter_form .input_box button:hover { background: #1a4bc4; }
.newsletter_form .agree_box { margin-top: 10px; font-size: 13px; color: #555; }
.newsletter_form .agree_box label { display: flex; align-items: center; gap: 6px; cursor: pointer; }
/* .newsletter_form .agree_box input[type="checkbox"] { display: none; }
.newsletter_form .agree_box span.chk_icon {
    display: inline-block; width: 16px; height: 16px; min-width: 16px;
    border: 1px solid #aaa; border-radius: 3px; background: #fff;
    position: relative; transition: all 0.15s;
}
.newsletter_form .agree_box input[type="checkbox"]:checked + span.chk_icon {
    background: #2b5fda; border-color: #2b5fda;
}
.newsletter_form .agree_box input[type="checkbox"]:checked + span.chk_icon::after {
    content: ''; position: absolute; left: 3px; top: 1px;
    width: 8px; height: 5px;
    border-left: 2px solid #fff; border-bottom: 2px solid #fff;
    transform: rotate(-45deg);
} */
.newsletter_form .agree_box a { text-decoration: underline; }

@media (max-width: 768px) {
    .newsletter_inner { flex-direction: column; align-items: flex-start; gap: 20px; }
    .newsletter_form { width: 100%; }
    .newsletter_txt h2 { font-size: 24px; }
}
