body {
	padding: 0;
	margin: 0;
	width: 100%;
	background: #f6a800;
}

.imagemap {
	position: relative;
	width: 100%;
}

img {
	width: 100%;
	display: block;
}

.container {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}

/* blink 요소 애니메이션 */
.blink {
	position: absolute;
	top: 37.516%;
	left: 50%;
	transform: translateX(-50%);
	width: 52.6%;
	height: 2.932%;
	animation: fadeBlink 4s infinite;
}

/* minions 요소 애니메이션 */
.minions {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform:translateX(-50%);
	width: 100%;
	height: auto;
	animation: moveMinions 2s infinite;
}

/* blink 애니메이션 keyframes */
@keyframes fadeBlink {
	0%, 100% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
}

/* minions 애니메이션 keyframes 
@keyframes moveMinions {
	0%, 100% {
		transform: translateX(-50%) translateY(0);
	}
	50% {
		transform: translateX(-50%) translateY(2%);
	}
} */

ul {
	width: 100%;
	list-style: none;
	padding: 0;
	margin: 0;
}

a {
	text-decoration: none;
	color:white;
}

.click_5km {
    position: absolute;
    top: 19%;
    left: 50%;
    transform: translateX(-50%);
    width: 81%;
    height: 10.1%;
    cursor: pointer;
	}
	
.click_10km {
    position: absolute;
    top: 32.4%;
    left: 50%;
    transform: translateX(-50%);
    width: 81%;
    height: 10.1%;
    cursor: pointer;
	}
	
.kakao_channel {
	position: absolute;
    top: 53.4%;
    left: 50%;
    transform: translateX(-50%);
    width: 37%;
    height: 21.1%;
    cursor: pointer;
	}
	
.bg-yellow {
	background: #f6a800;
	}


.faq_question {
	margin: 0 auto;
	width: 82%;
	padding: 4% 3% 4% 3%;
	border-radius: 20px;
	background: #FFF;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	z-index: 2;
	position: relative; /* 추가 */
	margin-bottom:3%;
	}

.faq_answer {
	margin: 0 auto;
	width: 82%;
	margin-top: -10%;
	padding: 12% 3% 4% 3%;
	border-radius: 0px 0px 20px 20px;
	background: #c6702c;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	z-index: 1;
	position: relative; /* 추가 */
	}

/* ::after 가상요소로 아이콘 삽입 */
.faq_question::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
    display: block;
    width: 5%;
    height: 25%;
    background-image: url(../images/arrow_open.png);
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.3s ease, background-image 0.3s ease;
}

.faq_answer img, .faq_question img {
	max-width:690px;
	}

/* 열림 상태일 때 이미지 변경 */
.faq_question.open::after {
	background-image: url('../images/arrow_close.png');
}

.mt {
	margin-top:3%;
	}

.mv_arrow {
	position: absolute;
	top: 10%;
	left: 50%;
	transform:translateX(-50%);
	width: 100%;
	height: auto;
	animation: move_td 2s infinite;
	}

@keyframes move_td {
	0%, 100% {
		transform: translateX(-50%) translateY(0);
	}
	50% {
		transform: translateX(-50%) translateY(10%);
	}
}


  .modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
  }

  /* 갤러리 컨테이너 스타일 */
  .gallery-container {
    width: 90%;
    max-width: 480px;
    background: #000;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
  }

  .gallery-main {
    max-width: 100%;
    overflow: hidden;
	margin:0 auto;
	border-radius:10px;
  }

  .gallery-thumbnails {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px auto;
    max-width: 90%;
  }

  .thumbnail {
    width: 14%;
    height: auto;
    margin: 1%;
    cursor: pointer;
  }

  h1 {
    text-align: center;
  }

  .confirm-button {
	display: block;
    margin: 20px auto 0 auto;
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
    background: #ffe000;
    color: #000;
    border: none;
    font-weight: 500;
    border-radius: 10px;
  }

  .confirm-button2 {
    display: block;
    margin: 20px auto 0 auto;
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
	background: #ffe000;
	color:#000;
  }
 
  p { color:#FFF; font-size:14px;}
  
.course_5km {
    position: absolute;
    top: 51%;
    left: 10%;
    width: 36%;
    height: 19%;
    cursor: pointer;
	}
	
.course_10km {
    position: absolute;
    top: 51%;
    left: 54%;
    width: 36%;
    height: 19%;
    cursor: pointer;
	}
	
#main-image {
    cursor: pointer;
}


#fadeText {
    opacity: 1;
    transition: opacity 1s ease-in-out;
}

/* 레이어 기본 비표시 */
#noticeLayer {
	position: fixed;
	inset: 0;
	display: none;
	z-index: 9999;
}

/* 열렸을 때 표시 */
#noticeLayer.open { display: block; }

/* 반투명 검은 배경 */
#noticeLayer .layer-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.7); /* opacity 0.7 */
}

/* 다이얼로그(이미지 컨테이너) 중앙 정렬 */
#noticeLayer .layer-dialog {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80vw;              /* 가로 80% */	
	max-width: 600px;        /* 선택: 너무 커지는 것 방지 */
	max-height: 90vh;         /* 세로도 화면 넘어가지 않게 */
}

/* 이미지 반응형 */
#noticeLayer .notice-img {
	display: block;
	width: 100%;
	height: auto;
	user-select: none;
	-webkit-user-drag: none;
}

/* 닫기 버튼: 이미지 바깥 우측 상단 */
#noticeLayer .layer-dialog { position: absolute; }
#noticeLayer .layer-close {
	position: absolute;
	top: -14px;               /* 이미지 밖으로 살짝 */
	right: -14px;
	padding: 8px 12px;
	background: #111;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	border-radius: 16px;
	cursor: pointer;
	white-space: nowrap;
	box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

/* 모바일에서 탭표시 부각 */
#noticeLayer .layer-close:active { transform: scale(0.98); }

/* iOS 사파리 스크롤 막힘 보완 */
html.modal-open, body.modal-open {
	overflow: hidden;
	touch-action: none;
}
