@charset "utf-8";
/* Reset */
*{margin:0;padding:0;}
html,body{width:100%;}
html{overflow-y:scroll; overflow-x:hidden; font-size: 100%;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,form,fieldset,p,button{margin:0;padding:0}

body,h1,h2,h3,h4,input,button{font-family:'Noto Sans KR', 'Play', 'sans-serif'; font-size: clamp(14px, 0.833vw, 18px); font-weight:400; letter-spacing:0px; color:#333;}
body{overflow:hidden; height:100%; background:#07133b; word-break:keep-all; padding:0; margin:0; position:relative;}
body.noScroll {position:fixed; width:100%; height:100%; left:0; top:0; overflow:hidden;}
img,fieldset,iframe{border:0 none}
div {display:block; box-sizing:border-box;}
li{list-style:none; box-sizing:border-box;}
input,select,button{vertical-align:middle; font-family:'Noto Sans KR', 'sans-serif'; font-size: clamp(14px, 0.833vw, 18px); /* 16px 기준 */ font-weight:400; letter-spacing:0px; outline:none; color:#333; display:block; box-sizing:border-box;}
textarea {font-family:'Noto Sans KR', 'sans-serif';}
input {letter-spacing:0;}
input, select:focus {outline: none;}
*:focus {outline:none; box-shadow: none;}
optgroup {font-weight: bolder;}
img{vertical-align:middle}
em,address{font-style:normal}
label,button{cursor:pointer}
button{margin:0;padding:0; border:0; background:none; cursor:pointer;}
a{color:#333;text-decoration:none}
a:hover{text-decoration:none;}
button *{position:relative}
legend,hr{visibility:hidden;width:0;height:0;font-size:0;line-height:0}
caption{display:none; overflow:hidden;}
table{border-collapse:collapse;table-layout:fixed; border-collapse:collapse;border-spacing:0;}
table caption{display:none;}
img {max-width:100%;}

*::-webkit-scrollbar {width: 6px; height:6px;}
*::-webkit-scrollbar-thumb {background-color: #ccc; border-radius: 6px;}
*::-webkit-scrollbar-thumb:hover {background:#1d50a2;}
*::-webkit-scrollbar-track {background-color: #f0f0f0; border-radius: 6px;}
*:hover::-webkit-scrollbar-thumb {background:#1d50a2;}

.comnChk {display:inline-flex; justify-content:flex-start; align-items:center; gap:28px;}
.comnChk input {display:flex; justify-content:flex-start; align-items:center; gap:0px; cursor:pointer; width:0; height:0; position:relative;}
.comnChk input:before {content:''; width:20px; height:20px; background:url(../img/bg_chk_off.svg) no-repeat 50% 50%; background-size:20px; flex:0 0 auto;}
.comnChk input:checked:before {content:''; background:url(../img/bg_chk_on.svg) no-repeat 50% 50%; background-size:20px;}

.fs-102 {font-size: clamp(48px, 5.313vw, 120px);}
.fs-48 {font-size: clamp(28px, 2.5vw, 56px);}
.fs-40 {font-size: clamp(26px, 2.083vw, 48px);}
.fs-36 {font-size: clamp(22px, 1.875vw, 44px);}
.fs-32 { font-size: clamp(20px, 1.667vw, 40px); }
.fs-30 {font-size: clamp(18px, 1.563vw, 36px);}
.fs-24 {font-size: clamp(18px, 1.25vw, 28px);}
.fs-20 {font-size: clamp(14px, 1.042vw, 22px);}
.fs-18 {font-size: clamp(12px, 0.938vw, 20px);}
.fs-14 {font-size: clamp(12px, 0.729vw, 16px);}

.wrap {position:relative;}
.inner {width:100%; max-width:1280px; margin:0 auto;}

.mitHead {position:relative; display:flex; justify-content:space-between; align-items:center; background:#07133b url(../img/bg_top.png) repeat-x left top; background-size:auto 100%; overflow:hidden; box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35);}
.mitHead .txtSec {padding:200px 100px;; position:relative; z-index:10;}
.mitHead .txtSec h2 {color:#39bee9; font-weight:700; font-family: 'Montserrat', sans-serif;}
.mitHead .txtSec h2 span {color:#FFF;}
.mitHead .txtSec .desc {color:#e96273; font-weight:700; font-family: 'Montserrat', sans-serif; line-height:1.4;}
.mitHead .txtSec .desc br {display:none;}
.mitHead .txtSec .desc.kor {color:#FFF; font-weight:100; letter-spacing:4px; font-family:'Noto Sans KR';}
.mitHead .txtSec .period {position:relative; margin-top:40px;}
.mitHead .txtSec .period .pTxt {color:#39bee9;}
.mitHead .txtSec .period .pTxt.kor {color:#FFF; font-family:'Noto Sans KR';}
.mitHead .imgSec {position:absolute; right:0; top:50%; transform:translate(0, -50%); width:70%;}

.mCont {position:relative; padding:80px 0;}
.mCont * {color:#FFF; font-family:'Noto Sans KR';}
.mCont .headTitle {color:#FFF; text-align:center; font-weight:700; font-family: 'Montserrat', sans-serif; line-height:1.1; margin-bottom:80px; padding-bottom:40px; border-bottom:1px solid rgba(255, 255, 255, 0.1);}
.mCont .inner {display:flex; flex-direction:column; gap:80px;}

.comnBlock {position:relative; text-align:center;}
.comnBlock .title {margin-bottom:30px; font-weight:600; font-family: 'Montserrat', sans-serif;}
.comnBlock .inCont {opacity:0.6;}
.comnBlock .inCont.fit {opacity:1.0; width:100%; max-width:640px; margin:0 auto; background:#243261; border-radius:16px; padding:30px; display:flex; flex-direction:column; gap:20px;}
.comnBlock input[type="text"], .comnBlock input[type="number"], .comnBlock input[type="password"] {display:inline-block; width:100%; height:46px; line-height:44px; background:#d7dced; border:0; border-radius:6px; padding:0 16px; color:#000;}
.comnBlock select {width:100%; display:inline-block; height:46px; line-height:44px; border:0; border-radius:6px; -webkit-appearance: none; -moz-appearance:none; appearance: none; background:#d7dced url(../img/ar_select.svg) no-repeat right 10px center; background-size:12px; padding:0 32px 0 10px;color: #333;}

.inputBox {position:relative;}
.inputBox .inTitle {text-align:left; margin-bottom:16px;}
.inputBox .perBox {position:relative;}
.inputBox .perBox.labels {display:flex; flex-flow:row wrap; gap:8px 16px;}
.inputBox .perBox.labels label {width:calc(50% - 8px);}
.inputBox.terms {text-align:left;}
.inputBox.terms .terms {position:relative; border-radius:8px 0px 0px 8px; padding:16px; background:#1a2755; height:100px; overflow:hidden; overflow-y:auto;}
.inputBox.terms .terms p {font-size:14px; font-weight:300; font-family:'Noto Sans KR'; line-height:1.4; position:relative; padding-left:10px; color:#848ba4;}
.inputBox.terms .terms p:after {content:''; position:absolute; left:0; top:7px; width:3px; height:3px; background:#848ba4; border-radius:50%;}
.inputBox.terms .terms p strong {font-weight:700; color:#848ba4;}
.inputBox.terms .terms p em {color:#39bee9;}
.inputBox.terms label {text-align:left; margin-top:16px;}

.gswbtns {display:flex; justify-content:center; align-items:center; gap:10px;}
a.gswbtn {display:inline-block; padding:14px 32px; font-size:16px; font-weight:500; border-radius:8px; text-align:center;}
input.gswbtn {display:inline-block; padding:14px 32px; font-size:16px; font-weight:500; border-radius:8px; text-align:center;}
a.gswbtn.confirm {background:#39bee9; border:1px solid #39bee9; color:#FFF;}
input.gswbtn.confirm {background:#39bee9; border:1px solid #39bee9; color:#FFF;}

.footer {position:relative; padding-bottom:80px; border-top:1px solid rgba(255, 255, 255, 0.1);}
.footer .inner {padding:40px 0 0 0; display:flex; justify-content:center; align-items:center; gap:16px; flex-direction:column;}
.footer .inner .btmLogo {width:128px; height:39px; background:url(../img/knu.png) no-repeat 50% 50%; background-size:100%;}
.footer .inner .copyright {flex:1 1 0; color:#FFF; text-align:center;}
.footer .inner .copyright span {font-size:14px; position:relative;}

@media only screen and (max-width:1200px) {
	.mitHead .txtSec .desc br {display:block;}
	.mitHead .txtSec .desc.kor {letter-spacing:0;}
	.mitHead .txtSec {padding:100px;}
}

@media only screen and (max-width:1024px) {
	.mitHead .txtSec {padding:80px 40px;}
}

@media only screen and (max-width:768px) {
	.mitHead {display:block;}
	.mitHead .txtSec {padding:40px; margin-bottom:100px;}
	.mitHead .txtSec .desc br {display:none;}
	.mitHead .txtSec .desc.kor {line-height:1.2; margin-top:10px;}
	.mitHead .txtSec .period {margin-top:20px;}
	.mitHead .txtSec .period .pTxt {line-height:1.2;}
	.mitHead .txtSec .period .pTxt span {display:block;}
	.mitHead .txtSec .period .pTxt.kor {margin-top:20px;}
	.mitHead .imgSec {top:unset; right:-60px; bottom:0; transform:none; width:100%;}
	.mCont {padding:40px 0;}
	.mCont .headTitle {padding:0 20px 40px; margin-bottom:40px;}
	.mCont .inner {padding:0 20px; gap:40px;}
	.comnBlock .title {margin-bottom:20px;}
	.comnBlock .inCont.fit {padding:16px; border-radius:8px;}

	.inputBox .perBox.labels {flex-flow:column wrap;}
	.inputBox .perBox.labels label {width:100%;}
	.inputBox.terms .terms p {font-size:12px;}
	a.btn.confirm {width:100%; padding:10px 0; text-align:center;}

	.footer {padding-bottom:40px;}
	.footer .inner {justify-content:flex-start; align-items:flex-start; padding:40px 20px 0;}
	.footer .inner .copyright {text-align:left;}
	.footer .inner .copyright br {display:none;}
	.footer .inner .copyright span {display:block;}
}

.priceBox {
	margin-top: 12px;
}
.priceLabel {
	font-size: 14px;
	color: #777;
}
.priceValue {
	font-size: 22px;
	font-weight: 700;
}