*,
*::before,
*::after{
	box-sizing:border-box;
	margin:0;
	padding:0;
}

html,body{
	width:100%;
	height:100%;
}

body {
	-webkit-tap-highlight-color: transparent;
	font-family: 'Noto Sans KR', sans-serif;
	background:#000;
}

img{
	max-width:100%;
	display:block;
}

button,input,textarea,select{
	font-family:inherit;
	border:0;
	background:none;
	outline:none;
}

a{
	text-decoration:none;
	color:inherit;
}

ul,ol{
	list-style:none;
}

.imagemap{
	position:relative;
	width:100%;
}

.container {
	width:100%;
	margin:0 auto;
	max-width:800px;
}

.select_answer01 {
	position:absolute;
	top:30.92%;
	height:2.85%;
	left:50%;
	transform:translateX(-50%);
	width:65.18%;
	cursor:pointer;
	z-index:1;
}

.select_answer02 {
	position:absolute;
	top:35.36%;
	height:2.85%;
	left:50%;
	transform:translateX(-50%);
	width:65.18%;
	cursor:pointer;
	z-index:1;
}

.submit {
	position:absolute;
	top:40.22%;
	height:2.85%;
	left:50%;
	transform:translateX(-50%);
	width:65.18%;
	opacity:0;
	cursor:pointer;
	z-index:1;
}

.mypage {
    position: absolute;
    top: 44.92%;
    height: 2.85%;
    left: 50%;
    transform: translateX(-50%);
    width: 65.18%;
    opacity: 0;
    cursor: pointer;
    z-index: 1;
}

.select_answer01 img,
.select_answer02 img {
	pointer-events:none;
	width:100%;
	height:100%;
	border-radius:4px;
}

.select_answer01.active::before,
.select_answer02.active::before {
	content:"";
	position:absolute;
	top:-5px;
	left:-5px;
	right:-5px;
	bottom:-5px;
	border-radius:8px;
	background:linear-gradient(to right, #a8ff78, #78ffd6);
	z-index:-1;
	box-shadow:0 0 15px rgba(120, 255, 214, 0.6);
}

input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	background-color: #000;
	border: 2px solid #8cc21e;
	border-radius: 4px;
	cursor: pointer;
}

input[type="checkbox"]:checked {
	background-color: #8cc21e;
	border-color: #8cc21e;
}

input[type="checkbox"]:checked::after {
	color: #fff;
	font-size: 18px;
	display: block;
	text-align: center;
}

/* step02 */

#step02 .phone {
	position: absolute;
	top: 52%;
	left: 50%;
	height: 5%;
	width: 70%;
	transform: translateX(-50%);
	text-align: center;
	font-size: clamp(0px, 5.5vw, 40px);
}

#step02 .checkbox_adult {
	position: absolute;
	top: 62%;
	left: 84.6%;
	width: 5%;
	height: 3.5%;
}

#step02 .checkbox_privacy {
	position: absolute;
	top: 73%;
	left: 84.6%;
	width: 5%;
	height: 3.5%;
}

#step02 #privacy_detail {
	position: absolute;
	top: 77%;
	left: 10%;
	width: 13%;
	height: 3%;
	cursor: pointer;
}

#step02 .submit {
	position: absolute;
	top: 86.5%;
	left: 50%;
	width: 66%;
	height: 5.9%;
	transform: translateX(-50%);
	cursor: pointer;
	opacity: 0;
}

/* 개인정보 레이어팝업 */

body.privacy-layer-open {
	overflow: hidden;
}

.privacy_layer {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	display: none;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 20px;
	box-sizing: border-box;
}

.privacy_layer.is-open {
	display: flex;
}

.privacy_layer_dim {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.78);
}

.privacy_layer_box {
	position: relative;
	z-index: 2;
	width: min(92vw, 760px);
	max-height: 86vh;
	padding: clamp(20px, 4vw, 34px);
	box-sizing: border-box;
	background: #000;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 14px;
	color: #fff;
	box-shadow: 0 18px 60px rgba(0, 0, 0, 0.55);
}

.privacy_layer_content {
	max-height: calc(86vh - 110px);
	overflow-y: auto;
	padding-right: 4px;
	box-sizing: border-box;
}

.privacy_text_group {
	margin: 0 0 clamp(24px, 4vw, 42px);
}

.privacy_text_group_bottom {
	margin-bottom: 0;
}

.privacy_layer p {
	margin: 0 0 8px;
	color: #fff;
	font-size: clamp(12px, 3.1vw, 25px);
	line-height: 1.42;
	font-weight: 700;
	word-break: keep-all;
	letter-spacing: -0.03em;
}

.privacy_layer .privacy_title {
	font-weight: 800;
}

.privacy_layer .privacy_indent {
	padding-left: 24px;
}

.privacy_red {
	color: #ff0000;
}

.privacy_agree_text {
	display: inline-block;
	margin-left: clamp(18px, 4vw, 42px);
	color: #fff;
}

.privacy_agree_btn {
	display: block;
	width: 100%;
	height: clamp(48px, 8vw, 62px);
	margin-top: 24px;
	border: 0;
	border-radius: 8px;
	background: #8cc21e;
	color: #000;
	font-size: clamp(17px, 3.8vw, 24px);
	font-weight: 800;
	cursor: pointer;
}

@media (max-width: 480px) {
	.privacy_layer {
		padding: 14px;
	}

	.privacy_layer_box {
		width: 100%;
		padding: 20px 16px;
		border-radius: 10px;
	}

	.privacy_layer .privacy_indent {
		padding-left: 14px;
	}
}


.gohome_correct {
    position: absolute;
    top: 93.4%;
    left: 50%;
    transform: translateX(-50%);
    width: 66%;
    height: 4%;
    cursor: pointer;
}

.gohome_wrong {
    position: absolute;
    top: 82.2%;
    left: 50%;
    transform: translateX(-50%);
    width: 66%;
    height: 9%;
    cursor: pointer;
}


/* MYPAGE */

#mypage .phone {
	position: absolute;
    top: 50.5%;
    left: 50%;
    height: 6.4%;
    width: 70%;
    transform: translateX(-50%);
    text-align: center;
    font-size: clamp(0px, 5.5vw, 40px);
}

#mypage .submit {
    position: absolute;
    top: 62.5%;
    left: 50%;
    width: 80%;
    height: 6.9%;
    transform: translateX(-50%);
    cursor: pointer;
    opacity: 0;
}