/* style.css */

@font-face {
    font-family: 'Isamanru';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-10@1.0/GongGothicLight.woff') format('woff');
    font-weight: 300;
    font-display: swap;
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
	font-family: 'Isamanru';
}

ol, ul {
    list-style: none
}

blockquote,
q {
    quotes: '"' '"'
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: '';
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

address {
    font-style: normal
}

textarea {
    width: 100%;
    resize: none;
}

button, img, input, select {
    vertical-align: middle
}

input, select {
	border-radius: 0px;
}

button {
	appearance: none;
	background-color: none;
	border: none;
}

a {
	text-decoration: none;
	color: #252525;
}

.ellipsis {
	display:inline-block;
	max-width:100%;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	word-wrap: normal;
	vertical-align:middle
}

table td a {
    overflow: hidden;
    height: auto;
    white-space: normal;
    word-wrap: break-word;
    word-break: break-all;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

body, html {
	overflow-x:hidden;
}

body {
	min-width:320px
	color:#353535;
	-webkit-font-smoothing: antialiased;
}

img {
	max-width: 100%;
	-webkit-user-drag: none;
}

::selection {
   background: #953710;
   color: #fff
}

::-moz-selection {
   background: #953710;
   color: #fff
}

::-webkit-selection {
    background: #953710;
   color: #fff
}

.rel {
	position: relative;
}

area {
	cursor: pointer;
}

/* MAIN */
.container {
	max-width: 1920px;
	margin: auto;
}

.section .inner {
	max-width: 750px;
	margin: auto;
	text-align: center;
}

.section_01 {
	background-image: url('/PROJECT_HTML/goryeong/img/main_bg.jpg?new');
	background-position: center;
	height: 1266px;
	padding-top: 78px;
}

.quick_btn.pc {
	position: fixed;
	margin: 80px 0 0 912px;
}

.section_02 {
	padding: 84px 0 0;
	background-color: #ffeddb;
	border: 2px solid #4a2820;
	border-width: 2px 0;
}

.section_02 .item.tour {
	margin-bottom: 96px;
}

.section_02_2 {
	padding: 84px 0;
	background-color: #fedbba;
	border: 2px solid #4a2820;
}

.section_03 {
	padding: 100px 0 125px;
	background-color: #953710;
}

.section_03 .title {
	margin-bottom: 42px;
}

.section_03 .form_zone {
	max-width: 632px;
	margin: auto;
}

.section_03 .form_zone .form_group {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
}

.section_03 .form_zone .form_group.chk {
	justify-content: flex-start;
	gap: 10px;
}

.section_03 .form_zone .form_group > label {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 144px;
	height: 60px;
	background-color: #4a2820;
	border: 2px solid #331c16;
	color: #fff;
	font-size: 24px;
}

.section_03 .form_zone .form_group input[type='text'],
.section_03 .form_zone .form_group input[type='tel'],
.section_03 .form_zone .form_group input[type='url'] {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 480px;
	height: 60px;
	padding: 0 25px;
	border: 2px solid #331c16;
	font-size: 24px;
}

.section_03 .form_zone .form_group.chk .chk_area {
	display: flex;
	align-items: center;
	gap: 54px;
}

.section_03 .form_zone .chk span {
	display: flex;
	align-items: center;
}

.section_03 .form_zone .chk input[type='radio'] {
	position: relative;
	appearance: none;
	width: 24px;
	height: 24px;
	margin-right: 8px;
	border: 2px solid #4a2820;
	background-color: #fff;
	border-radius: 50%;
}

.section_03 .form_zone .chk input[type='radio']:checked::after {
	content: '';
	display: block;
	width: 16px; 
	height: 16px;
	border-radius: 50%;
	background-color: #4a2820; 
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.section_03 .form_zone .chk label {
	color: #fff;
	font-size: 24px;
	cursor: pointer;
}

.section_03 .form_zone .pharases_area {
	margin: 30px 0 50px;
}

.section_03 .form_zone .term_area {
	padding: 32px;
	background-color: #86320f;
	border: 2px solid #4a2820;
}

.section_03 .form_zone .term_area .term_text {
	height: 180px;
	margin-bottom: 16px;
	padding: 24px;
	background-color: #fff;
	border: 2px solid #000;
	font-size: 18px;
	line-height: 160%;
	overflow-y: auto;
	text-align: left;
}

.section_03 .form_zone .term_area .chk_area {
	display: flex;
	align-items: center;
	gap: 15px;
}

.section_03 .form_zone .term_area .chk_area .block {
	font-size: 19px;
	color: #fff;
	text-wrap: nowrap;
}

.section_03 .form_zone .term_area .chk_area label {
	font-size: 19px;
	text-wrap: nowrap;
}

.section_03 .form_zone .btn_box {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin-top: 60px;
}

.section_03 .form_zone .btn_box .btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 225px;
	height: 68px;
	font-size: 25px;
	color: #fff;
	border: 2px solid #4a2820;
	cursor: pointer;
}

.section_03 .form_zone .btn_box .btn.confirm_btn {
	background-color: #f98303;
}

.section_03 .form_zone .btn_box .btn.cancle_btn {
	background-color: #000;
}

.footer {
	padding: 64px 20px;
	background-color: #22100c;
	text-align: center;
}

.footer .info {
	margin-top: 36px;
	color: #fff;
	line-height: 180%;
	font-size: 18px;
}

.footer .info a {
	appearance: none;
	color: #fff;
	
}

.quick_btn.mo {
	display: none;
}

/* MEDIA QUARIE */
@media(max-width: 1440px) {
	.quick_btn.pc {
		margin: 80px 0 0 732px;
	}
}

@media(max-width: 991px) {
	.quick_btn.pc {
		display: none;
	}

	.quick_btn.mo {
		position: absolute;
		left: 50%;
		bottom: 0;
		display: flex;
		align-items: center;
		max-width: 750px;
		width: 100%;
		transform: translateX(-50%);
	}

	.quick_btn.mo.is-fixed {
		position: fixed;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
	  }

	.quick_btn.mo li {
		flex: 1;
	}

	.quick_btn.mo li button {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 84px;
		font-size: 24px;
		color: #4a2820;
		border-top-left-radius: 16px;
		border-top-right-radius: 16px;
		cursor: pointer;
	}

	.quick_btn.mo li button.quickBtnTourMo {
		background-color: #fff;
	}

	.quick_btn.mo li button.quickBtnApplyMo {
		background-color: #4a2820;
		color: #fff;
	}

	.quick_btn.mo li button.kakaoShare {
		background-color: #ffec55;
	}
}

:root {
  --ease-smooth: cubic-bezier(.22,.61,.36,1);
}

/* ====== 애니메이션 유틸 ====== */
.will-animate { opacity: 0; }

.fade-main { transform: scale(.94); will-change: transform, opacity; }
.fade-main.is-in { animation: fadeInScaleUp .9s var(--ease-smooth) forwards; }

.fade-down { transform: translateY(-16px); will-change: transform, opacity; }
.fade-down.is-in { animation: fadeInDown .9s var(--ease-smooth) forwards; }

.flip-y { transform: perspective(800px) rotateY(-14deg); transform-origin: 50% 50%; backface-visibility: hidden; will-change: transform, opacity; }
.flip-y.is-in { animation: flipFadeInY 1s var(--ease-smooth) forwards; }

@keyframes fadeInScaleUp {
  from { opacity: 0; transform: scale(.94); }
  to   { opacity: 1; transform: scale(1); }
}
@keyframes fadeInDown {
  from { opacity: 0; transform: translateY(-16px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes flipFadeInY {
  0%   { opacity: 0; transform: perspective(800px) rotateY(-14deg); }
  60%  { opacity: 1; transform: perspective(800px) rotateY(3deg); }
  100% { opacity: 1; transform: perspective(800px) rotateY(0); }
}

/* 모션 최소화 환경 접근성 */
@media (prefers-reduced-motion: reduce) {
  .will-animate { opacity: 1 !important; transform: none !important; animation: none !important; }
}

@media(max-width: 750px) {
	.section_01 {
		height: 168.8vw;
		background-size: auto 100%;
		padding-top: 10.4vw;
	}

	.section_01 .main_title {
		width: 78.67vw;
		margin: auto;
	}

	.section_02 {
		padding: 11.2vw 0 0;
	}
	
	.section_02_2 {
		padding: 11.2vw 0;
	}
	
	.section_02_2 .inner {
		max-width: 80.53vw;
	}
	
	.section_02 .item.tour {
		width: 93.33vw;
		margin: auto;
		margin-bottom: 12.8vw;
	}

	.section_02 .item.event {
		width: 87.73vw;
		margin: auto;
	}

	.section_02 .item.mission {
		width: 80.53vw;
		margin: auto;
	}

	.section_03 {
		padding: 13.33vw 0 16.67vw;
	}

	.section_03 .title {
		width: 33.87vw;
		margin: auto;
		margin-bottom: 5.6vw;
	}

	.section_03 .form_zone {
		width: 84.27vw;
	}

	.section_03 .form_zone .form_group > label {
		width: 19.2vw;
		height: 8vw;
		font-size: 3.2vw;
	}

	.section_03 .form_zone .form_group input[type='text'], 
	.section_03 .form_zone .form_group input[type='tel'],
	.section_03 .form_zone .form_group input[type='url']{
		width: 64vw;
		height: 8vw;
		padding: 0 3.33vw;
		font-size: 16px;
	}

	.section_03 .form_zone .chk input[type='radio'] {
		width: 3.2vw;
		height: 3.2vw;
		margin-right: 1.07vw;
	}

	.section_03 .form_zone .form_group.chk .chk_area {
		gap: 7.2vw;
	}

	.section_03 .form_zone .chk label {
		font-size: 3.2vw;
	}

	.section_03 .form_zone .term_area {
		padding: 4.27vw;
	}

	/* .section_03 .form_zone .term_area .chk_area {
		flex-direction: column;
	} */

	.section_03 .form_zone .term_area .term_text {
		height: 24vw;
		padding: 3.2vw;
		margin-bottom: 2.13vw;
		font-size: 2.4vw;
	}

	.section_03 .form_zone .term_area .chk_area {
		gap: 2vw;
	}

	.section_03 .form_zone .term_area .chk_area .block {
		font-size: 2.53vw;
	}

	.section_03 .form_zone .term_area .chk_area label {
		font-size: 2.53vw;
	}

	.section_03 .form_zone .btn_box {
		gap: 2.67vw;
		margin-top: 8vw;
	}

	.section_03 .form_zone .btn_box .btn {
		height: 9.07vw;
		font-size: 3.33vw;
	}

	.quick_btn.mo li button {
		height: 11.2vw;
		font-size: 3.2vw;
	}

	.footer .logo {
		width: 17.6vw;
		margin: auto;
	}

	.footer .info {
		margin-top: 4.8vw;
		font-size: 2.4vw;
	}
}