@charset "utf-8";

/*
	** CONTENTS CSS
*/

.bg-wrapper {
	background: #fbfbfb;
	padding: 60px 0 100px;
}
@media all and (max-width: 767px) {
	.bg-wrapper {
		padding: 40px 0 80px;
	}
}

.search-title {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px 20px;
	margin-bottom: 33px;
}
.search-title .title {
	font-size: var(--font-size-26);
	font-weight: 600;
}
.search-title .text {
	font-size: var(--font-size-26);
}
.search-total {
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 3px 15px;
}
.search-total .total {
	font-weight: 600;
	color: #a9a9a9;
}
.search-arr {
	display: inline-flex;
	align-items: center;
	gap:0 15px;
}
.search-arr .btn.active {
	color: var(--primary-color);
}
@media all and (max-width: 1023px) {
	.search-total {
		justify-content: flex-start;
	}
	.search-arr {
		margin-left: auto;
	}
}
@media all and (max-width: 767px) {
	.search-wrapper {
		padding: 40px 0 60px;
	}
	.search-title {
		align-items: flex-end;
		margin-bottom: 25px;
	}
	.search-title .title {
		font-size: var(--font-size-22);
	}
	.search-title .text {
		font-size: var(--font-size-18);
	}
	.search-total {
		flex-wrap: wrap;
	}
}



.search-result {
	display: flex;
	gap: 0 6%;
}
.search-result-filter {
	flex: 0 0 20%;
}
.search-filter-title {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 20px;
}
.search-filter-title .title {
	font-size: var(--font-size-20);
	font-weight: 600;
	color: #9f9f9f;
}
.search-filter-title .btn {
	margin-left: auto;
	font-size: var(--font-size-14);
	color: #acacac;
}
.search-filter-item {
	border-bottom: 1px solid #dadada;
}
.search-filter-item .filter-item-btn {
	width: 100%;
	height: 70px;
	font-size: var(--font-size-18);
	font-weight: 600;
	text-align: left;
	position: relative;
}
.search-filter-item .filter-item-btn::after {
	display: block;
	content:"\f106";
	font-family:"Font Awesome 6 Pro";
	font-weight: 300;
	position: absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
	transition: var(--transition);
}
.search-filter-item .filter-item-btn.active::after {
	transform:translateY(-50%) rotate(180deg);
}
.search-filter-item .filter-item-list {
	margin-bottom: 25px;
}
.search-result :is(.filter-open, .filter-close) {
	display: none;
}
@media all and (max-width: 1199px) {
	.search-result {
		gap: 0 4%;
	}
}
@media all and (max-width: 1023px) {
	.search-result-filter {
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 550;
		width: 100%;
		height: 100vh;
		background: #fff;
		padding: 30px 20px;
		overflow: hidden auto;
		display: none;
	}
	.search-filter-title .title {
		font-size: var(--font-size-18);
	}
	.search-filter-item .filter-item-btn {
		height: 60px;
		font-size: var(--font-size-17);
	}
	.search-filter-item .filter-item-list {
		margin-bottom: 20px;
	}
	.search-result :is(.filter-open, .filter-close) {
		display: inline-flex;
	}
}



.search-result-list {
	flex: 1 1 0;
}
.search-row:not(:last-child) {
	margin-bottom: 80px;
}
.search-card-item {
	width: 100%;
	margin-bottom: 22px;
	background: #fff;
	border: 1px solid #e5e5e5;
	box-shadow: 0 5px 5px rgba(0,0,0,0.04);
	border-radius: 12px;
	position: relative;
	overflow: hidden;
	transition: var(--transition);
}
.search-card-item .card-info {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 40px 45px;
}
.search-card-item .card-info .text {
	color: #707070;
}
.search-card-item .card-info .text-sm {
	font-size: var(--font-size-14);
}
.search-card-item .title-box {
	flex: 0 0 26%;
}
.search-card-item .title-box .title {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-weight: 600;
}
.search-card-item .filter-box {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 15px;
}
.search-card-item .filter-box .item {
	display: inline-flex;
	padding: 5px 15px;
	border-radius: 3px;
	border: 1px solid #e1e1e1;
	font-size: var(--font-size-14);
	font-weight: 300;
}
.search-card-item .time-box {
	flex: 0 0 44%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0 30px;
}
.search-card-item .time-box .time-col {
	flex: 1 1 0;
	text-align: center;
}
.search-card-item .time-box .time {
	margin-bottom: 10px;
	font-size: var(--font-size-26);
	font-weight: 600;
}
.search-card-item .time-box .hours {
	display: flex;
	flex-direction: column;
	gap: 30px;
	text-align: center;
	font-weight: 600;
	color: var(--primary-color);
}
.search-card-item .time-box .hours .bar {
	width: 90px;
	height: 2px;
	background: #dcdcdc;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}
.search-card-item .time-box .hours .bar::before,
.search-card-item .time-box .hours .bar::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 6px;
	background: #dcdcdc;
}
.search-card-item .time-box .hours .bar::before {
	left: 0;
}
.search-card-item .time-box .hours .bar::after {
	right: 0;
}
.search-card-item .price-box {
	flex: 0 0 140px;
}
.search-card-item .price-box .text {
	font-size: var(--font-size-15);
}
.search-card-item .price-box .price {
	font-size: var(--font-size-20);
	white-space: nowrap;
}
.search-card-item .price-box .price .strong {
	font-size: var(--font-size-22);
	color: var(--primary-color);
	font-weight: 600;
}
.search-card-item .card-btn {
	border-radius: 0;
	position: absolute;
	top: 0;
	right: 0;
	width: 55px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f8f8f8;
}
.search-card-item .card-btn::after {
	content: "\f105";
	font-size: var(--font-size-24);
	font-family: "Font Awesome 6 Pro";
	font-weight: 400;
}
.search-card:is(.ship, .stay, .car) .search-card-item:hover,
.search-card-item.active {
	border-color: var(--secondary-color);
}
.search-card-item:hover .card-btn {
	background: var(--secondary-color);
	color: #fff;
	transition: var(--transition);
	transition-delay: 0.2s;
}
.search-card-item.active .card-btn {
	color: var(--secondary-color);
	background: transparent;
	height: 60px;
	transition-delay: 0s;
}
.search-card-item.active .card-btn::after {
	content: "\f00d";
}
.search-card-item.active:has(.seat-item.active) .card-btn {
	display: none;
}
.search-card-item.active:has(.seat-item.active) .card-seat {
	display: block;
	pointer-events: none;
}
@media all and (max-width: 1199px) {
	.search-card-item .card-info {
		padding: 32px;
	}
	.search-card-item .time-box {
		gap: 0 20px;
	}
	.search-card-item .time-box .time {
		font-size: var(--font-size-24);
	}
	.search-card-item .time-box .hours {
		gap: 25px;
	}
	.search-card-item .price-box .price {
		font-size: var(--font-size-18);
	}
	.search-card-item .card-btn {
		width: 40px;
	}
}
@media all and (max-width: 767px) {
	.search-row:not(:last-child) {
		margin-bottom: 50px;
	}
	.search-card-item {
		margin-bottom: 15px;
	}
	.search-card-item .card-info {
		flex-direction: column;
		align-items: flex-start;
		gap: 15px 0;
		padding: 22px 20px;
	}
	.search-card-item .card-info .text {
		font-size: var(--font-size-15);
	}
	.search-card-item .card-info .text-sm {
		font-size: var(--font-size-13);
	}
	.search-card-item .title-box {
		flex: 0 0 auto;
		width: 100%;
		padding-bottom: 15px;
		border-bottom: 1px solid #e5e5e5;
	}
	.search-card-item .filter-box {
		gap: 4px;
		margin-top: 10px;
	}
	.search-card-item .filter-box .item {
		padding: 5px 10px;
	}
	.search-card-item .time-box {
		flex: 0 0 auto;
		gap: 0 10px;
		width: 100%;
	}
	.search-card-item .time-box .time-col:first-child {
		text-align: left;
	}
	.search-card-item .time-box .time-col:last-child {
		text-align: right;
	}
	.search-card-item .time-box .time {
		font-size: var(--font-size-20);
	}
	.search-card-item .time-box .hours {
		gap: 20px;
	}
	.search-card-item .price-box {
		flex: 0 0 auto;
		display: flex;
		align-self: flex-end;
		align-items: flex-end;
		gap: 0 12px;
		margin-top: 10px;
		line-height: 1;
	}
	.search-card-item .price-box .price {
		font-size: var(--font-size-16);
	}
	.search-card-item .card-btn {
		width: 30px;
	}
	.search-card-item .card-btn::after {
		font-size: var(--font-size-20);
	}
	.search-card-item.active .card-btn {
		height: 40px;
	}
}


.search-card.ship:has(.card-btn) .card-info {
	padding-right: 100px;
}
.card-seat {
	display: none;
	padding: 30px;
	background: #f6f6f6;
}
.card-seat .seat-list {
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
.card-seat .seat-item {
	display: flex;
	align-items: center;
	gap: 0 20px;
	height: 68px;
	padding: 0 33px;
	background: #fff;
	border: 1px solid #fff;
	border-radius: 8px;
	text-align: left;
}
.card-seat .seat-item::after {
	content: "\f058";
	font-family: "Font Awesome 6 Pro";
	font-size: var(--font-size-26);
	font-weight: 900;
	color: #dedede;
}
.card-seat .seat-item .type {
	flex: 0 0 110px;
	font-weight: 600;
}
.card-seat .seat-item .seat .num {
	margin-left: 5px;
	color: #9e9e9e;
}
.card-seat .seat-item .seat .left {
	color: #000;
}
.card-seat .seat-item .price {
	display: inline-flex;
	align-items: center;
	margin-left: auto;
	font-size: var(--font-size-15);
	text-align: right;
}
.card-seat .seat-item .price .strong {
	width: 100px;
	font-size: var(--font-size-20);
}
.card-seat .seat-item:disabled {
	opacity: 0.5;
	cursor: default;
}
.card-seat .seat-item:is(:not(:disabled):hover, .active) {
	background: var(--secondary-color);
	color: #fff;
}
.card-seat .seat-item:is(:not(:disabled):hover, .active)::after {
	color: #fff;
}
.card-seat .seat-item:is(:not(:disabled):hover, .active) .seat .num {
	color: #fff;
}
.card-seat .seat-item:is(:not(:disabled):hover, .active) .seat .left {
	color: var(--primary-color);
}
@media all and (max-width: 1199px) {
	.search-card.ship:has(.card-btn) .card-info {
		padding-right: 50px;
	}
}
@media all and (max-width: 767px) {
	.card-seat {
		padding: 15px 10px;
	}
	.card-seat .seat-list {
		gap: 6px 0;
	}
	.card-seat .seat-item {
		flex-wrap: wrap;
		gap: 0 10px;
		height: 60px;
		padding: 0 12px;
	}
	.card-seat .seat-item::after {
		font-size: var(--font-size-18);
	}
	.card-seat .seat-item .type {
		flex: 0 0 auto;
		font-size: var(--font-size-14);
	}
	.card-seat .seat-item .seat {
		font-size: var(--font-size-13);
	}
	.card-seat .seat-item .seat .num {
		font-size: var(--font-size-17);
		margin-left: 3px;
	}
	.card-seat .seat-item .price {
		flex-direction: column;
		align-items: flex-end;
		font-size: var(--font-size-13);
	}
	.card-seat .seat-item .price .strong {
		width: auto;
		font-size: 1.2em;
	}
}

.search-card.stay {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 2%;
}
.search-card.stay .search-card-item {
	flex: 0 0 32%;
	margin-bottom: 0;
	display: block;
}
.search-card.stay .card-img {
	aspect-ratio: 5 / 3;
}
.search-card.stay .card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.search-card.stay .card-info {
	flex-direction: column;
	align-items: flex-start;
	padding: 25px;
}
.search-card.stay .title-box {
	flex: none;
	margin-bottom: 20px;
}
.search-card.stay .title-box .title {
	font-size: var(--font-size-22);
	color: #262626;
}
.search-card.stay .title-box .text {
	color: var(--primary-color);
	font-weight: 600;
	margin-bottom: 10px;
}
.search-card.stay .text-box .text {
	margin-top: 5px;
}
.search-card.stay .price-box {
	flex: none;
	margin-top: 20px;
	margin-left: auto;
}
.search-card.stay .price-box .strong {
	font-size: var(--font-size-20);
	color: #262626;
}
.search-card.stay.car .card-img {
	border-bottom:1px solid #e5e5e5;
	display: flex;
	align-items: center;
	justify-content: center;
}
.search-card.stay.car .card-img img {
	width: auto;
	height: auto;
}
@media all and (max-width: 1023px) {
	.search-card.stay .search-card-item {
		flex: 0 0 49%;
	}
}
@media all and (max-width: 767px) {
	.search-card.stay .search-card-item {
		flex: 0 0 100%;
	}
	.search-card.stay .card-info {
		padding: 25px 20px;
	}
	.search-card.stay .title-box {
		margin-bottom: 0;
		padding-bottom: 0;
		border: none;
	}
	.search-card.stay .title-box .title {
		font-size: var(--font-size-20);
	}
	.search-card.stay .title-box .text {
		margin-bottom: 5px;
	}
	.search-card.stay .price-box {
		margin-top: 5px;
	}
	.search-card.stay .price-box .price {
		font-size: var(--font-size-18);
	}
}


.search-card.confirm .search-card-item {
	margin-bottom: 30px;
	border-color: var(--secondary-color);
}
.search-card.confirm .card-info {
	padding: 40px 6%;
}
.search-card.confirm .card-info + .card-info {
	border-top: 1px solid var(--secondary-color);
}
.search-card.confirm .date-box {
	flex: 0 0 19%;
}
.search-card.confirm .date-box .date {
	font-size: var(--font-size-24);
	font-weight: 600;
}
.search-card.confirm .title-box {
	flex: 0 0 22%;
}
.search-card.confirm .time-box {
	flex: 0 0 30%;
}
.search-card.confirm .total {
	border-color: #e5e5e5;
}
.search-card.confirm .total .title-box .title {
	gap: 0 12px;
	font-size: var(--font-size-18);
}
.search-card.confirm .total .price-box {
	flex: 0 0 200px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	gap: 0 10px;
}
.search-card.confirm .total .price-box .price {
	line-height: 1;
}
.search-card.confirm .total .price-box .price .strong {
	color: #000;
}
.reserve-button-wrap .button {
	--button-height: calc(var(--height) + 10px);
	min-width: 240px;
}
@media all and (max-width: 1199px) {
	.search-card.confirm .card-info {
		padding: 32px;
	}
	.search-card.confirm .date-box .date {
		font-size: var(--font-size-22);
	}
}
@media all and (max-width: 1023px) {
	.search-card.confirm .card-info {
		flex-wrap: wrap;
	}
	.search-card.confirm .date-box {
		flex: 0 0 100%;
	}
	.search-card.confirm .date-box .date {
		font-size: var(--font-size-20);
	}
	.search-card.confirm .time-box {
		flex: 0 0 44%;
	}
}
@media all and (max-width: 767px) {
	.search-card.confirm .card-info {
		padding: 25px 20px;
	}
	.search-card.confirm :is(.date-box, .title-box, .time-box, .price-box) {
		flex: 0 0 auto !important;
	}
	.search-card.confirm .date-box .date {
		font-size: var(--font-size-16);
	}
	.search-card.confirm .total .title-box .title {
		font-size: var(--font-size-16);
	}
	.reserve-button-wrap .button {
		min-width: auto;
	}
}



/* ## 상품 슬라이드 s ## */
.goods-slide {
	position: relative;
}
.goods-slide .swiper-slide {
	padding: 5px;
}
.goods-slide .item-box {
	display: block;
	border-radius: 8px;
	border: 1px solid #f0f0f0;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.05);
	overflow: hidden;
}
.goods-slide .img-box {
	aspect-ratio: 7 / 4;
	border-bottom: 1px solid #f0f0f0;
	overflow: hidden;
}
.goods-slide .img-box img {
	width: 100%;
	max-height: 100%;
	object-fit: cover;
	transition: var(--transition);
}
.goods-slide .text-box {
	padding: 30px 40px;
	background: #fff;
	display: flex;
	flex-direction: column;
	position: relative;
	transition: var(--transition);
}
.goods-slide .text-box::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 8px;
	background: var(--secondary-color);
}
.goods-slide .item-box:hover .img-box img {
	transform: scale(1.1);
}
.goods-slide .item-box:hover .text-box {
	transform: translateY(-8px);
}
.goods-slide .text-box .category {
	margin-bottom: 15px;
	font-size: var(--font-size-18);
	color: var(--primary-color);
}
.goods-slide .text-box .title {
	min-height: 65px;
	margin-bottom: 20px;
	font-size: var(--font-size-24);
	font-weight: 600;
	color: #262626;
	word-break: keep-all;
}
.goods-slide .text-box .text {
	min-height: 47px;
	margin-bottom: 35px;
	font-size: var(--font-size-18);
	color: #7e7e7e;
	word-break: keep-all;
}
.goods-slide .text-box .price {
	font-size: var(--font-size-18);
	color: #262626;
	text-align: right;
	margin-top: auto;
}
.goods-slide .text-box .price strong {
	font-size: var(--font-size-20);
}
.goods-slide.car .img-box {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
}
.goods-slide.car .img-box img {
	width: auto;
}
.goods-slide .text-box .tag-box {
	display: flex;
	flex-wrap: wrap;
	gap:5px;
	margin-bottom:5px;
}
.goods-slide .text-box .tag-box .tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding:4px 15px;
	border:1px solid #e1e1e1;
	border-radius: 3px;
	font-size: var(--font-size-14);
	font-weight: 400;
	min-width: 68px;
}
@media all and (max-width: 1023px) {
	.goods-slide .text-box {
		padding: 25px 30px;
	}
	.goods-slide .text-box .category {
		font-size: var(--font-size-16);
	}
	.goods-slide .text-box .title {
		min-height: 59px;
		margin-bottom: 15px;
		font-size: var(--font-size-22);
	}
	.goods-slide .text-box .text {
		min-height: 42px;
		margin-bottom: 30px;
		font-size: var(--font-size-16);
	}
}
@media all and (max-width: 767px) {
	.goods-slide .text-box {
		padding: 22px !important;
	}
	.goods-slide .text-box .title {
		min-height: 52px !important;
		font-size: var(--font-size-20) !important;
	}
	.goods-slide .text-box .price {
		font-size: var(--font-size-16);
	}
	.goods-slide .text-box .tag-box .tag {
		padding:4px 10px;
		min-width: 60px;
	}
}
/* ## 상품 슬라이드 e ## */

/* ## 이벤트 슬라이드 s ## */
.event-slide .img-box {
	display: block;
	width: 100%;
	aspect-ratio: 32 / 5;
	border-radius: 8px;
	overflow: hidden;
}
.event-slide .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* ## 이벤트 슬라이드 e ## */




.search-main > section {
	position: relative;
	margin-bottom: 90px;
}
.search-main > section:last-child {
	margin-bottom: 0;
}
.search-main-title {
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	gap:0 25px;
}
.search-main-title .title {
	font-weight: 600;
	font-size: var(--font-size-28);
	color: var(--secondary-color);
	word-break: keep-all;
}
.search-main-more {
	position: absolute;
	top: 6px;
	right: 0;
	font-weight: 600;
	font-size: var(--font-size-18);
	color: var(--secondary-color);
}
.search-main-title .tab-type02 .tab-box {
	margin-bottom: 0;
}
.search-main-title .tab-type02 .tab-item {
	flex: 0 0 auto;
}
.search-main-title .tab-type02 .tab-btn {
	height: 35px;
	padding: 0 22px;
}
@media all and (max-width: 1023px) {
	.search-main > section {
		margin-bottom: 70px;
	}
	.search-main-title .title {
		font-size: var(--font-size-26);
	}
	.search-main-title .tab-type02 .tab-list {
		gap: 8px;
	}
	.search-main-title .tab-type02 .tab-btn {
		font-size: var(--font-size-16);
	}
	.search-main-more {
		font-size: var(--font-size-16);
	}
}
@media all and (max-width: 767px) {
	.search-main > section {
		margin-bottom: 50px;
	}
	.search-main-title {
		margin-bottom: 20px;
		flex-direction: column;
		gap:12px;
		align-items: flex-start;
	}
	.search-main-title .title {
		font-size: var(--font-size-22);
	}
	.search-main-title .tab-type02 {
		overflow-x: auto;
	}
	.search-main-title .tab-type02 .tab-btn {
		height: 33px;
		padding: 0 18px;
		font-size: var(--font-size-16);
	}
	.search-main-more {
		top: 5px;
		font-size: var(--font-size-15);
	}
}



.search-main .goods-slide .text-box {
	padding: 22px 25px;
}
.search-main .goods-slide .text-box .category {
	margin-bottom: 10px;
	font-size: var(--font-size-16);
}
.search-main .goods-slide .text-box .title {
	min-height: 59px;
	font-size: var(--font-size-22);
}
.search-main .goods-slide .text-box .text {
	min-height: 42px;
	margin-bottom: 20px;
	font-size: var(--font-size-16);
}



.search-main-menu .menu-box {
	display: flex;
	gap: 0 30px;
}
.search-main-menu .menu-item {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0 10px;
	width: 100%;
	height: 140px;
	padding: 0 25px 0 35px;
	border-radius: 8px;
	background-color: #fff;
	border: 1px solid var(--secondary-color);
	box-shadow: 0 0 10px rgba(0,0,0,0.15);
	transition: var(--transition);
}
.search-main-menu .menu-item .text {
	font-weight: 600;
	font-size: var(--font-size-24);
	color: var(--secondary-color);
	word-break: keep-all;
}
.search-main-menu .menu-item:hover .img {
	animation: swing 0.8s infinite ease-in-out;
}
.search-main-menu .menu-item:hover {
	border-color: #f0f0f0;
}
@keyframes swing {
	0% {transform: rotate(0);}
	50% {transform: rotate(5deg);}
	100% {transform: rotate(0);}
}
@media all and (max-width: 1023px) {
	.search-main-menu .menu-box {
		gap: 0 20px;
	}
	.search-main-menu .menu-item {
		height: 120px;
		padding: 0 20px;
	}
	.search-main-menu .menu-item .text {
		font-size: var(--font-size-20);
	}
	.search-main-menu .menu-item .img img {
		height: 55px;
	}
}
@media all and (max-width: 767px) {
	.search-main-menu .menu-box {
		display: block;
	}
	.search-main-menu .menu-item {
		height: 70px;
		margin-bottom: 12px;
		box-shadow: 0 0 5px rgba(0,0,0,0.1);
	}
	.search-main-menu .menu-item .text {
		font-size: var(--font-size-18);
	}
	.search-main-menu .menu-item .img img {
		height: 38px;
	}
}



.stay-view-img {
	aspect-ratio: 7 / 5;
	position: relative;
	display: block;
    width: 100%;
	height: 100%;
}
.stay-view-img::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.15);
	opacity: 0;
	transition: 0.1s ease-in-out;
}
.stay-view-img:hover::before {
	opacity: 1;
}
.stay-view-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.stay-view-img-more {
	position: absolute;
	right: 12px;
	bottom: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0 7px;
	padding: 10px 15px;
	border-radius: 3px;
	background: rgba(0,0,0,0.65);
	color: #fff;
	font-size: var(--font-size-14);
	font-weight: 300;
}


.stay-view-gallery {
	position: relative;
}
.stay-view-gallery .list-box {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 15px;
}
.stay-view-gallery .list-box > li:nth-child(1) {
	grid-column: 1 / span 2;
	grid-row: 1 / span 2;
}
.stay-view-text {
	margin-top: 50px;
}
.stay-view-text .title {
	font-size: 2.5em;
	font-weight: 600;
	margin-bottom: 20px;
}
.stay-view-text .addr {
	font-size: var(--font-size-18);
	font-weight: 300;
	padding-bottom: 20px;
	margin-bottom: 30px;
	border-bottom: 1px solid #e2e2e2;
	display: flex;
	gap: 10px;
}
.stay-view-text .addr::before {
	margin-top: -2px;
	content: "\f3c5";
	font-weight: 300;
	font-family: "Font Awesome 6 Pro";
	font-size: var(--font-size-18);
	color: #000;
}
.stay-view-text .text {
	font-weight: 300;
	line-height: 1.6;
}
.stay-view-text .info-list {
	margin-top: 30px;
	display: flex;
	flex-wrap: wrap;
	gap: 15px 35px;
	color: #6e6e6e;
}
.stay-view-text .info-list .info {
	display: inline-flex;
	gap: 10px;
}
.stay-view-text .info-list .info::before {
	margin-top: -2px;
	font-weight: 900;
	font-family: "Font Awesome 6 Pro";
	font-size: var(--font-size-18);
	color: #c5c5c7;
}
.stay-view-text .info-list .util {
	flex: 0 0 100%;
}
.stay-view-text .info-list .time::before {content: "\f017";}
.stay-view-text .info-list .call::before {content: "\f095";}
.stay-view-text .info-list .util::before {content: "\f7b6";}
.stay-view-card {
	margin-top: 75px;
}
.stay-view-card-item {
	display: flex;
	gap: 20px;
	padding: 30px;
	border-radius: 8px;
	background: #f4f4f5;
	margin-bottom: 25px;
}
.stay-view-card .stay-view-img {
	display: block;
	flex: 0 0 22%;
	min-width: 200px;
	height: 193px;
	border-radius: 6px;
	overflow: hidden;
}
.stay-view-card .stay-view-img-more {
	padding: 7px 12px;
	font-size: var(--font-size-13);
}
.view-card-info {
	position: relative;
	flex: 1 1 0;
}
.view-card-info .title-md {
	padding: 0 15px;
}
.view-card-info .text-box {
	display: flex;
	align-items: center;
	gap: 0 3%;
	padding: 28px 30px;
	background: #fff;
	border-radius: 6px;
}
.view-card-info .desc-list {
	flex: 0 0 60%;
}
.view-card-info .desc-list dl {
	display: flex;
	gap: 0 20px;
	margin-bottom: 10px;
}
.view-card-info .desc-list dl:last-child {
	margin-bottom: 0;
}
.view-card-info .desc-list dt {
	font-weight: 300;
	white-space: nowrap;
}
.view-card-info .desc-list dd {
	color: #747474;
}
.view-card-info .price-box {
	margin-left: auto;
	font-size: var(--font-size-24);
	font-weight: 600;
	color: #262626;
	white-space: nowrap;
}
.view-card-info .card-btn {
	height: 43px;
	border-radius: 99px;
	white-space: nowrap;
}
.view-card-info .detail-more {
	position: absolute;
	top: 5px;
	right: 10px;
}
.view-card-info .detail-more .icon-custom {
	transition: var(--transition);
}
.view-card-info .detail-more:hover .icon-custom {
	transform: translateX(3px);
}
@media all and (max-width: 1023px) {
	.stay-view-gallery .list-box {
		grid-template-columns: repeat(3, 1fr);
		gap: 10px;
	}
	.stay-view-gallery .list-box > li:is(:nth-child(4), :nth-child(5)) {
		display: none;
	}
	.stay-view-text .title {
		font-size: 2.2em;
	}
	.stay-view-text .addr {
		padding-bottom: 15px;
		margin-bottom: 25px;
	}
	.stay-view-text .info-list .info::before {
		margin-top: 0;
		font-size: var(--font-size-16);
	}
	.stay-view-card-item {
		gap: 18px;
		padding: 22px;
	}
	.view-card-info .text-box {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px 0;
		padding: 22px;
	}
	.view-card-info .title-md {
		padding: 0 10px;
	}
	.view-card-info .desc-list {
		flex: 0 0 100%;
	}
	.view-card-info .desc-list dl {
		gap: 0 15px;
		font-size: var(--font-size-15);
	}
	.view-card-info .price-box {
		font-size: var(--font-size-22);
	}
	.view-card-info .card-btn {
		width: 100%;
		height: 40px;
		margin-top: 10px;
	}
	.view-card-info .detail-more {
		font-size: var(--font-size-15);
	}
}
@media all and (max-width: 767px) {
	.stay-view-img-more {
		right: 8px;
    	bottom: 8px;
		padding: 7px 12px;
    	font-size: var(--font-size-13);
	}
	.stay-view-gallery .list-box {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(3, 1fr);
		gap: 6px;
	}
	.stay-view-text .title {
		font-size: var(--font-size-26);
		margin-bottom: 10px;
	}
	.stay-view-text .addr {
		font-size: var(--font-size-16);
		margin-bottom: 20px;
	}
	.stay-view-text .info-list {
		margin-top: 25px;
		gap: 15px 30px;
	}
	.stay-view-card-item {
		flex-direction: column;
		padding: 18px;
		margin-bottom: 15px;
	}
	.stay-view-card .stay-view-img {
		flex: 0 0 auto;
	}
	.view-card-info .title-md {
		padding: 0 5px;
	}
	.view-card-info .text-box {
		padding: 20px 15px;
	}
	.view-card-info .price-box {
		font-size: var(--font-size-18);
	}
}


.reserve-search-box {
	border-radius: 15px;
}
.reserve-search-box .cont-box {
	padding: 50px 4%;
	border-radius: 0 0 15px 15px;
	background: #fff;
	position: relative;
}
.reserve-search-box .form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px 30px;
	border-top: none;
}
.reserve-search-box .form-row {
	flex: 1;
	padding: 0;
	border: none;
}
.reserve-search-box .form-group {
	gap: 5px;
}
.reserve-search-box .form .select {
	width: 100%;
}
.reserve-search-box .form-button {
	margin: 0 10px;
}
.reserve-search-box .form-row.form-size-md {
	flex: 0 0 300px;
}
.reserve-search-box .form-row.form-size-sm {
	flex: 0 0 240px;
}
.reserve-search-box .form-row.form-size-xs {
	flex: 0 0 110px;
}
.reserve-search-box .select-list .button-wrap {
	margin-top:20px;
}
.reserve-form .calendar-wrap {
	width: 750px;
	padding:30px 10px;
	left:50%;
	transform:translateX(-50%);
}
.reserve-search-box .count-wrap {
	width: 370px;
	padding:25px 30px;
}
.reserve-search-title {
	font-family: "SEBANG_Gothic", sans-serif;
	font-size: 2.2em;
	color: #fff;
	margin-bottom:20px;
}
@media all and (max-width: 1023px) {
	.reserve-search-box .cont-box {
		padding:30px;
	}
	.reserve-search-box .form {
		gap:15px;
	}
	.reserve-search-box .form-row,
	.reserve-search-box .form-row.form-size-md {
		flex:1;
	}
	.reserve-search-box .form-row.form-size-xs {
		flex:0 0 100%;
	}
	.reserve-search-box .form-button {
		margin:0 5px;
	}
	.reserve-search-box .count-wrap {
		left: auto;
		right: 0;
	}
}
@media all and (max-width: 767px) {
	.reserve-search-box {
		transform:none !important;
	}
	.reserve-search-box:has(.calendar-wrap.active) {
		z-index: 505;
	}
	.reserve-search-box .cont-box {
		padding: 20px 25px;
		border-radius: 0 0 10px 10px;
	}
	.reserve-search-box .form {
		gap: 5px 8px;
	}
	.reserve-search-box .form-row {
		flex:0 0 100% !important;
	}
	.reserve-search-box .form-row.form-size-xs {
		margin-top:10px;
	}
	.reserve-form .calendar-wrap {
		width: 100%;
		position: fixed;
		left:0;
		top:0;
		transform:none;
		height: 100vh;
		overflow-y: auto;
		padding:20px 20px 80px;
		background: #fff;
		border:none;
		box-shadow: none;
		border-radius: 0;
	}
	.reserve-search-box .calendar-wrap .button-wrap {
		position: fixed;
		left:0;
		bottom:0;
		width: 100%;
		padding:20px;
		background: #fff;
		margin:0;
		z-index: 5;
	}
	.reserve-search-box :is(.calendar-wrap, .count-wrap) .button-wrap .button {
		width: 100%;
	}
	.reserve-search-box .count-wrap {
		width: 100%;
		padding:20px;
	}
	.reserve-search-title {
		font-size: var(--font-size-24);
		margin-bottom:15px;
	}
}

.reserve-search-box[class*="sub-search-"] {
	padding:100px 0;
	border-radius: 0;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	position: relative;
	z-index: 10;
}
.reserve-search-box[class*="sub-search-"] .cont-box {
	border-radius: 15px;
}
.sub-search-ship {background-image:url("../img/contents/ship-search-bg.jpg");}
.sub-search-stay {background-image:url("../img/contents/stay-search-bg.jpg");}
.sub-search-car {background-image:url("../img/contents/car-search-bg.jpg");}
@media all and (max-width: 1023px) {
	.reserve-search-box[class*="sub-search-"] {
		padding:80px 0;
	}
}
@media all and (max-width: 767px) {
	.reserve-search-box[class*="sub-search-"] {
		padding:50px 0;
	}
	.reserve-search-box[class*="sub-search-"] .cont-box {
		transform:none !important;
	}
}

.reserve-search-box.sub-bar {
	border-top:1px solid #eee;
	border-radius: 0;
	box-shadow: 0 4px 4px rgba(0,0,0,0.05);
	position: sticky;
	left: 0;
	top:0;
	width: 100%;
	background: #fff;
	z-index: 10;
}
.reserve-search-box.sub-bar .cont-box {
	padding:30px 0;
}
.reserve-search-box.sub-bar .form {
	gap:10px 15px;
}
.reserve-search-box.sub-bar .select-btn {
	border:none;
	background:#f5f6f6;
	border-radius: 5px;
	color: #111;
	font-weight: 500;
	font-size: var(--font-size-16);
	padding:0 20px;
}
.reserve-search-box.sub-bar .select-btn::after {
	display: none;
}
@media all and (max-width: 767px) {
	.reserve-search-box.sub-bar {
		position: relative;
		left: auto;
		top:auto;
	}
	.reserve-search-box.sub-bar .cont-box {
		padding:20px 0;
	}
}

.reserve-set-box {
	border-top:1px solid #eee;
	box-shadow: 0 4px 4px rgba(0,0,0,0.05);
	padding:30px 0;
	position: relative;
	z-index: 1;
}
.reserve-set-box .list-box {
	border-radius: 6px;
	background:#f5f6f6;
	color: #414141;
}
.reserve-set-box .item-box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding:20px 30px;
	gap:0 30px;
}
.reserve-set-box .item-box:not(:first-child) {
	border-top:1px solid #dcdcdc;
}
.reserve-set-box .title {
	font-weight: 600;
	color: var(--primary-color);
}
@media all and (max-width: 1023px) {
	.reserve-set-box .item-box {
		padding:15px 30px;
		gap:5px 20px;
	}
	.reserve-set-box .title {
		flex:0 0 100%;
	}
}
@media all and (max-width: 767px) {
	.reserve-set-box {
		padding:20px 0;
	}
	.reserve-set-box .item-box {
		padding:15px 20px;
		gap:2px 0;
		font-size: var(--font-size-15);
	}
	.reserve-set-box .item-box .desc {
		flex:0 0 100%;
	}
}

.reserve-template .item-box {
	margin-bottom:70px;
}
.reserve-template .cont-box {
	border:1px solid #e7e7e7;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 4px 4px rgba(0,0,0,0.1);
	background:#fff;
	margin-top:20px;
}
.reserve-template .cont-box [data-toggle] {
	display: none;
}
.reserve-template .cont-box [data-toggle].active {
	display: block;
}
.reserve-template .form-row {
	padding:15px 40px;
	border-bottom:none;
}
.reserve-template .form-row:not(:first-child) {
	border-top:1px solid #e7e7e7;
}
.reserve-template .form-title {
	font-size: var(--font-size-18);
	font-weight: 300;
	background: none;
}
.reserve-template .form-input {
	border-radius: 0;
	border-color: #d2d2d2;
}
.reserve-template .form-item .button {
	border-radius: 0;
}
.reserve-template .count {
	justify-content: flex-start;
	gap:0;
	border-radius: 0;
	flex:0 0 155px;
}
.reserve-template :is(.count-btn, .count-value) {
	height: 45px !important;
	border-radius: 0;
	border-color: #d2d2d2;
}
.reserve-template .count-btn {
	flex:0 0 45px;
	color: #a7a7a7;
}
.reserve-template .count-value {
	border-left:none;
	border-right: none;
}
.reserve-template .count.active :is(.count-btn, .count-value) {
	border-color: var(--primary-color);
}
.reserve-template .title-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding:20px 50px;
	background:var(--secondary-color);
}
.reserve-template .item-box:has(.cont-box.active) .title-box {
	border-radius: 12px 12px 0 0;
}
.reserve-template .title-box .title {
	font-size: var(--font-size-20);
	color: #fff;
	font-weight: 600;
}
.reserve-template .title-box .etc {
	display: flex;
	align-items: center;
	gap:0 20px;
}
.reserve-template .title-box .checkbox-text {
	color: #fff;
	font-size: var(--font-size-16);
}
.reserve-template .title-box .checkbox-check {
	border-color: var(--secondary-color);
	background:#fff;
}
.reserve-template .title-box .checkbox-check::before {
	color: var(--secondary-color);
}
.reserve-template .title-box .checkbox-input:checked + .checkbox-check {
	background:var(--primary-color);
	border-color: var(--primary-color);
}
.reserve-template .checkbox-input:checked + .checkbox-check::before {
	color: #fff;
}
.reserve-template .title-box .more {
	font-size: var(--font-size-28);
	color: #fff;
}
.reserve-template .title-box .more.active {
	transform:scaleY(-1);
}
.reserve-template .checkbox-text {
	font-size: var(--font-size-18);
}
.reserve-template .button-wrap .button {
	min-width: 200px;
	font-size: var(--font-size-18);
	height: 60px;
}
@media all and (max-width: 1023px) {
	.reserve-template .title-box {
		padding:20px 30px;
	}
	.reserve-template .form-row {
		padding:15px 30px;
	}
}
@media all and (max-width: 767px) {
	.reserve-template .title-md {
		margin-bottom:15px;
		font-size: var(--font-size-20);
	}
	.reserve-template .item-box {
		margin-bottom: 40px;
	}
	.reserve-template .title-box {
		padding:15px 20px;
	}
	.reserve-template .title-box .title {
		font-size: var(--font-size-17);
	}
	.reserve-template .form-row {
		padding:15px 20px;
	}
	.reserve-template .form-title {
		font-size: var(--font-size-16);
		display: flex;
		gap:0;
	}
	.reserve-template .title-box .etc {
		gap:0 8px;
	}
	.reserve-template .title-box .more {
		font-size: var(--font-size-24);
	}
	.reserve-template .title-box .checkbox-text {
		font-size: var(--font-size-15);
	}
	.reserve-template .cont-box {
		margin-top:10px;
	}
	.reserve-template :is(.count-btn, .count-value) {
		height: 40px !important;
	}
	.reserve-template .checkbox-text {
		font-size: var(--font-size-16);
	}
	.reserve-template .button-wrap .button {
		min-width: 120px;
		font-size: var(--font-size-16);
		height: 50px;
	}
}

.reserve-template .item-view .form-row {
	padding-top:30px;
	padding-bottom:30px;
	font-size: var(--font-size-18);
	gap:0 10px;
}
.reserve-template .item-view .form-item {
	line-height: 1;
	gap:0 8px;
	flex:1;
}
.reserve-template .item-view .form-item.num {flex:0.5;}
.reserve-template .item-view .form-item.name {flex:0.6;}
.reserve-template .item-view .form-item.info {
	margin-left: auto;
	justify-content: flex-end;
}
.reserve-template .item-view .form-item.price {
	justify-content: flex-end;
}
.reserve-template .item-view .form-item .title {
	font-size: var(--font-size-14);
	color: #a1a1a1;
}
.reserve-template .item-view .form-item.price .desc {
	font-size: var(--font-size-20);
	font-weight: 600;
}
.reserve-template .item-view .title-box {
	padding-top:30px;
	padding-bottom:30px;
}
.reserve-template .item-view .title-box .form-item {
	flex: none;
}
.reserve-template .item-view .title-box .title {
	font-size: var(--font-size-18);
	font-weight: 400;
	color: #fff;
}
.reserve-template .item-view .title-box .desc {
	font-size: var(--font-size-24);
	font-weight: 600;
	color: #fff;
}
.reserve-template .item-view .flex-auto {
	gap:0 50px;
}
.reserve-template .item-view .flex-auto .form-item {
	flex:none;
}
.reserve-complete-text {
	font-size: 2.4em;
	font-weight: 600;
	color: var(--secondary-color);
	text-align: center;
	margin-bottom: 60px;
}
.reserve-complete-badge {
	margin-bottom:50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 50px;
	background:var(--secondary-color);
	color: #fff;
	border-radius: 25px;
	padding:0 40px;
	font-size: var(--font-size-20);
	font-weight: 300;
	gap:0 10px;
}
.search-card.confirm + .reserve-template {
	margin-top:70px;
}
.reserve-template .item-img .form-row {
	padding:40px;
	gap:0 40px;
}
.reserve-template .item-img .img-box {
	flex:0 0 320px;
	border-radius: 6px;
	overflow:hidden;
}
.reserve-template .item-img .desc-box {
	flex:1 1 auto;
	display: flex;
	flex-direction: column;
	gap:20px 0;
}
.reserve-template .item-img .name {
	font-size: var(--font-size-26);
	font-weight: 600;
}
.reserve-template .item-img .list-item {
	display: flex;
	align-items: center;
	gap:0 20px;
	font-size: var(--font-size-18);
	margin-top:10px;
}
.reserve-template .item-img .list-desc {
	color: #747474;
}

.reserve-template .tag-box {
	display: flex;
	flex-wrap: wrap;
	gap:5px 10px;
}
.reserve-template .tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding:4px 15px;
	border:1px solid #e5e5e5;
	border-radius: 3px;
	font-size: var(--font-size-15);
	font-weight: 300;
}
@media all and (max-width: 1023px) {
	.reserve-template .item-view .form-row {
		gap:8px 10px;
		flex-wrap: wrap;
	}
	.reserve-template .item-view .form-item.num {
		flex:0 0 100%;
	}
	.reserve-template .item-view .form-item.name {
		flex:1;
	}
	.reserve-template .item-view .form-item {
		flex:1;
		flex-direction: column;
		align-items: flex-start;
		gap:5px;
	}
	.reserve-template .item-view .flex-auto {
		gap:8px 30px;
	}
	.reserve-template .item-view .flex-auto .form-item {
		flex-direction: row;
		align-items: center;
	}
	.reserve-complete-text {
		font-size: 2.2em;
	}
	.reserve-template .item-view .title-box .form-item {
		flex-direction: row;
		align-items: center;
	}
	.reserve-template .item-img .form-row {
		padding:30px;
		gap:0 30px;
	}
	.reserve-template .item-img .img-box {
		flex:0 0 300px;
	}
}
@media all and (max-width: 767px) {
	.reserve-template .item-view .form-row {
		padding-top:15px;
		padding-bottom:15px;
		font-size: var(--font-size-16);
	}
	.reserve-template .item-view .form-item {
		flex-direction: row;
		align-items: center;
		gap:5px 10px;
	}
	.reserve-template .item-view .form-item:not(:first-child) {
		margin-top:10px;
	}
	.reserve-template .item-view .form-item.price {
		justify-content: flex-start;
	}
	.reserve-template .item-view .form-item .title {
		flex:0 0 90px;
	}
	.reserve-template .item-view .title-box {
		padding-top:15px;
		padding-bottom:15px;
		display: block;
	}
	.reserve-template .item-view .title-box .form-item {
		font-size: var(--font-size-14);
	}
	.reserve-template .item-view .title-box .form-item .title {
		flex:0 0 90px;
	}
	.reserve-complete-text {
		font-size: var(--font-size-26);
		margin-bottom:30px;
	}
	.reserve-complete-badge {
		height: 42px;
		padding:0 30px;
		font-size: var(--font-size-18);
		margin-bottom:40px;
	}
	.search-card.confirm + .reserve-template {
		margin-top:40px;
	}
	.reserve-template .item-view .form-item.info {
		margin-left: 0;
		justify-content: flex-start;
	}
	.reserve-template .item-img .form-row {
		padding:20px;
	}
	.reserve-template .item-img .img-box img {
		width: 100%;
	}
	.reserve-template .item-img .desc-box {
		margin-top:20px;
		gap:5px 0;
	}
	.reserve-template .item-img .name {
		font-size: var(--font-size-20);
	}
	.reserve-template .item-img .list-item {
		font-size: var(--font-size-16);
		margin-top:5px;
		gap:0 15px;
	}
	.reserve-template .item-img .list-title {
		white-space: nowrap;
		align-self: flex-start;
	}
	.reserve-template .tag-box {
		gap:5px;
	}
	.reserve-template .tag-box .tag {
		padding:4px 10px;
		font-size: var(--font-size-14);
	}
}


.goods-view-box {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	border:1px solid #eaeaea;
	border-radius: 12px;
	overflow:hidden;
	background:#fff;
	margin-bottom:80px;
}
.goods-view-box :is(.img-box, .text-box) {
	padding:40px;
}
.goods-view-box .img-box {
	flex:0 0 35%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
.goods-view-box .img-box .text {
	color: #a0a0a0;
	font-size: var(--font-size-13);
	text-align: center;
	margin-top:20px;
}
.goods-view-box .info-box {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap:0 20px;
	color: #858585;
	margin-top:60px;
}
.goods-view-box .info-box i {
	color: #c5c5c7;
	margin-right: 5px;
}
.goods-view-box .text-box {
	flex:0 0 65%;
}
.goods-view-box .text-box .type {
	color: var(--primary-color);
}
.goods-view-box .text-box .title {
	font-size: 2.2em;
	font-weight: 600;
	margin-bottom:40px;
}
.goods-view-box .tag-box {
	display: flex;
	flex-wrap: wrap;
	gap:5px 10px;
	margin:30px 0;
}
.goods-view-box .tag-box .tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding:4px 15px;
	border:1px solid #e5e5e5;
	border-radius: 3px;
	font-size: var(--font-size-14);
	font-weight: 300;
}
.goods-view-box .option-box .name {
	color: #727272;
	font-weight: 600;
	margin-bottom:10px;
}
.goods-view-box .option-box .radio {
	flex-wrap: wrap;
	align-items: stretch;
	gap:10px 15px;
	width: 100%;
	height: 100%;
}
.goods-view-box .option-box .radio-label {
	flex:0 calc(33.333333% - 10px);
	display: flex;
	flex-direction: column;
	border:1px solid #e5e5e5;
	border-radius: 12px;
	background:#f9f9f9;
	overflow:hidden;
	padding:20px 25px;
	gap:15px 0;
}
.goods-view-box .option-box .radio-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap:5px 10px;
	font-weight: 600;
}
.goods-view-box .option-box .radio-title::after {
	content:"\f00c";
	font-family: "Font Awesome 6 Pro";
	font-weight: 900;
	display: flex;
	align-items: center;
	justify-content: center;
	flex:0 0 30px;
	height: 30px;
	line-height: 1;
	border-radius: 100%;
	background:#c7c7c7;
	font-size: var(--font-size-14);
	color: #fff;
}
.goods-view-box .option-box .radio-text {
	border-top:1px solid #e5e5f5;
	padding:15px 0 0;
	margin:0;
	color: #484848;
	font-size: var(--font-size-15);
	line-height: 1.4;
}
.goods-view-box .option-box .radio-price {
	font-size: var(--font-size-18);
	font-weight: 900;
	text-align: right;
	margin-top:auto;
}
.goods-view-box .option-box .radio-label:has(:checked) {
	background: #fff;
	border-color: var(--secondary-color);
}
.goods-view-box .option-box .radio-label:has(:checked) .radio-title::after {
	background:var(--secondary-color);
}
.goods-view-box .total-box {
	flex:0 0 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	background:var(--secondary-color);
	padding:20px 40px;
	gap:5px 10px;
	color: #fff;
	font-weight: 300;
}
.goods-view-box .total-price {
	font-size: var(--font-size-28);
	font-weight: 900;
}
.goods-view-box .total-box .button {
	border-radius: 25px;
	min-width: 180px;
	font-size: var(--font-size-18);
	margin-left:20px;
}
.goods-view-box .price-box {
	margin-top: 30px;
	color: #262626;
	white-space: nowrap;
}
.goods-view-box .price-box .text {
	font-size: var(--font-size-15);
	color: #a6a6a6;
}
.goods-view-box .price-box .price {
	font-size: var(--font-size-24);
}
.goods-item:not(:last-child) {
	padding-bottom:60px;
	margin-bottom:60px;
	border-bottom:1px solid #d2d2d2;
}
@media all and (max-width: 1023px) {
	.goods-view-box {
		display: block;
	}
	.goods-view-box .img-box {
		padding-bottom:0;
	}
	.goods-view-box .info-box {
		margin-top:20px;
	}
}
@media all and (max-width: 767px) {
	.goods-view-box {
		margin-bottom:40px;
	}
	.goods-view-box :is(.img-box, .text-box) {
		padding:20px;
	}
	.goods-view-box .img-box {
		padding-bottom:0;
	}
	.goods-view-box .info-box {
		margin-top:10px;
		font-size: var(--font-size-15);
		gap:2px 15px;
	}
	.goods-view-box .text-box .title {
		font-size: var(--font-size-26);
		margin-bottom:25px;
	}
	.goods-view-box .tag-box {
		margin:25px 0;
		gap:5px;
	}
	.goods-view-box .tag-box .tag {
		padding:4px 10px;
	}
	.goods-view-box .option-box .radio {
		flex-direction: column;
	}
	.goods-view-box .option-box .radio-label {
		padding:20px;
	}
	.goods-view-box .total-box {
		flex-wrap: wrap;
		padding:20px;
	}
	.goods-view-box .total-price {
		font-size: var(--font-size-24);
	}
	.goods-view-box .total-box .button {
		min-width: 150px;
		margin-left: 10px;
	}
	.goods-view-box .price-box {
		margin-top: 20px;
	}
	.goods-view-box .price-box .price {
		font-size: var(--font-size-22);
	}
	.goods-item:not(:last-child) {
		padding-bottom:40px;
		margin-bottom:40px;
	}
}

.ask-box {
	max-width: 700px;
	margin:0 auto;
}
.ask-form .board-write {
	border-top:none;
}
.ask-form .form-board-title:not(:first-child) {
	margin-top:60px;
}
.ask-form .agree-body {
	border: 1px solid #e7e7e7;
}
@media all and (max-width: 767px) {
	.ask-form .form-board-title:not(:first-child) {
		margin-top:40px;
	}
}


.mypage-wrapper {
	display: flex;
	gap: 0 6%;
}
.mypage-menu {
	flex: 0 0 20%;
}
.mypage-menu .menu-btn {
	display: flex;
	justify-content: center;
	height: 135px;
	padding-top: 40px;
	border-radius: 12px;
	background: linear-gradient(120deg, #368596, #192547);
	color: #fff;
}
.mypage-menu .title {
	font-size: var(--font-size-24);
}
.mypage-menu .menu-list {
	background: #fff;
	border: 1px solid #dbdbdb;
	border-radius: 12px;
	margin-top: -30px;
	padding: 30px;
}
.mypage-menu .menu-item {
	padding: 20px 5px;
}
.mypage-menu .menu-item:not(:last-child) {
	border-bottom: 1px dashed #dbdbdb;
}
.mypage-menu .menu-lnk {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: var(--font-size-18);
	color: #4e4e4e;
}
.mypage-menu .menu-lnk::after {
	content: "\f105";
	font-family: "Font Awesome 6 Pro";
	font-weight: 600;
	font-size: 12px;
	color: #cdcdcd;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 1px solid #cdcdcd;
	border-radius: 50%;
}
.mypage-menu .menu-lnk.active {
	color: var(--secondary-color);
	font-weight: 600;
}
.mypage-menu .menu-lnk.active::after {
	border-color: var(--secondary-color);
	background: var(--secondary-color);
	color: #fff;
}
.mypage-menu .menu-box {
	margin-top: 15px;
}
.mypage-menu .menu-box a {
	display: block;
	padding: 4px 0;
	color: #797979;
}
.mypage-menu .menu-box a::before {
	content: "-";
	margin-right: 5px;
}
.mypage-menu .menu-box a.active {
	color: var(--primary-color);
	font-weight: 600;
}
.mypage-cont {
	flex: 1 1 0;
}
.mypage-cont .sub-title,
.search-result-list .sub-title {
	margin-bottom: 50px;
}
.mypage-cont-title {
	font-size: 2.5em;
	font-weight: 600;
	color: var(--secondary-color);
	text-align: center;
	margin-bottom: 50px;
}
.mypage-cont .tab-type02 {
	--tab-height: calc(var(--height) - 12px);
}
.mypage-cont .tab-type02 .tab-list {
	gap: 8px;
}
.mypage-cont .tab-type02 .tab-item {
	flex: 0 0 auto;
}
.mypage-cont .tab-type02 .tab-btn {
	height: var(--tab-height);
	padding: 0 18px;
	border-color: #959595;
	font-size: var(--font-size-16);
	color: #959595;
}
.mypage-cont .tab-type02 .tab-btn.active {
	border-color: #000;
	background: #000;
	color: #fff;
}
.mypage-cont .register-form .form {
	background: #fff;
}
@media all and (max-width: 1199px) {
	.mypage-wrapper {
		gap: 0 4%;
	}
	.mypage-menu .menu-list {
		padding: 20px 15px;
	}
}
@media all and (max-width: 1023px) {
	.mypage-menu {
		width: 220px;
		height: calc(100vh - 85px);
		position: absolute;
		top: 85px;
		left: -220px;
		z-index: 5;
		transition: var(--transition);
	}
	.mypage-menu.active {
		left: 0;
	}
	.mypage-menu .menu-btn {
		position: absolute;
		top: 20px;
		right: -45px;
		width: 45px;
		height: 45px;
		padding-top: 0;
		border-radius: 0 8px 8px 0;
		align-items: center;
	}
	.mypage-menu .menu-btn::after {
		content: "\f550";
		font-family: "Font Awesome 6 Pro";
		font-weight: 400;
	}
	.mypage-menu.active .menu-btn::after {
		content: "\f00d";
	}
	.mypage-menu .title {
		display: none;
	}
	.mypage-menu .menu-list {
		height: 100%;
		margin-top: 0;
		border-radius: 0;
		padding: 10px 15px;
		border: none;
		box-shadow: 10px 30px 30px rgba(0,0,0,0.05);
	}
}
@media all and (max-width: 767px) {
	.mypage-menu {
		height: calc(100vh - 75px);
		top: 75px;
	}
	.mypage-menu .menu-item {
		padding: 15px 5px;
	}
	.mypage-menu .menu-lnk {
		font-size: var(--font-size-17);
	}
	.mypage-cont .sub-title,
	.search-result-list .sub-title {
		margin-bottom: 30px;
	}
	.mypage-cont .tab-type02 {
		--tab-height: calc(var(--height) - 6px);
	}
	.mypage-cont .tab-type02 .tab-box {
		margin-bottom: var(--space-sm);
	}
	.mypage-cont .tab-type02 .tab-list {
		gap: 5px;
	}
	.mypage-cont .tab-type02 .tab-btn {
		padding: 0 15px;
	}
}


.search-card.mypage .card-head {
	display: flex;
	align-items: center;
	gap: 0 15px;
	background: #f8f8f8;
	height: 60px;
	padding: 0 35px;
}
.search-card.mypage .card-head .badge {
	border-radius: 99px;
}
.search-card.mypage .card-head .text {
	font-weight: 600;
}
.search-card.mypage .card-head .btn {
	margin-left: auto;
	color: #9f9f9f;
}
.search-card.mypage .card-info .date-box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
	font-size: var(--font-size-18);
}
.search-card.mypage .card-info .date-box .badge {
	white-space: nowrap;
}
.search-card.mypage .time-box {
	flex: 0 0 40%;
}
.search-card.mypage + .reserve-template {
	margin-top: 70px;
}
.mypage-view-button.button-wrap {
	margin-top: 10px;
	padding: 0 45px 30px;
}
.mypage-view-button.button-wrap .button {
	height: 50px;
	font-size: var(--font-size-16);
}
.reserve-template .item-view .form-item.btn {
	flex: 0 0 15%;
}
.reserve-template .item-view .form-item.visitor {
	gap: 20px 8px;
}
.reserve-template .item-view .form-item.visitor .form-item {
	flex-basis: 32%;
	padding: 0;
}
.reserve-template .item-view .flex-wrap {
	flex-wrap: wrap;
}
@media all and (max-width: 1023px) {
	.reserve-template .item-view .form-item.visitor {
		flex-direction: row;
	}
}
@media all and (max-width: 767px) {
	.search-card.mypage .card-head {
		gap: 8px 10px;
		flex-wrap: wrap;
		height: auto;
		padding: 15px;
	}
	.search-card.mypage .card-head .text {
		font-size: var(--font-size-14);
	}
	.search-card.mypage .card-head .btn {
		font-size: var(--font-size-14);
	}
	.search-card.mypage .card-info .date-box {
		font-size: var(--font-size-16);
	}
	.search-card.mypage + .reserve-template {
		margin-top: 40px;
	}
	.mypage-view-button.button-wrap {
		padding: 0 20px 15px;
	}
	.mypage-view-button.button-wrap .button {
		height: 40px;
	}
	.reserve-template .item-view .form-item.visitor {
		display: block;
	}
}



.tour-book-wrap {
	overflow: hidden;
}
.tour-book-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0 35px;
}
.tour-book-list .img-box {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 380px;
	padding: 10px;
	border-radius: 12px;
	overflow: hidden;
}
.tour-book-list .item01 .img-box {background: #a1cd51;}
.tour-book-list .item02 .img-box {background: #006a51;}
.tour-book-list .img-box img {
	max-width: 100%;
	max-height: 100%;
	transition: var(--transition);
}
.tour-book-list .button {
	min-width: 195px;
}
.tour-book-list .item:hover .img-box img {
	transform: scale(1.1) rotate(-2deg);
}

@media all and (max-width: 1023px) {
	.tour-book-list {
		gap: 0 25px;
	}
	.tour-book-list .img-box {
		height: 280px;
	}
	.tour-book-list .button {
		min-width: auto;
	}
}
@media all and (max-width: 767px) {
	.tour-book-list {
		grid-template-columns: repeat(1, 1fr);
		gap: 50px 0;
	}
	.tour-book-list .img-box {
		height: 240px;
	}
}


.introduce-box {
	text-align: center;
}
.introduce-box .title-box {
	font-size: 2.5em;
}
.introduce-box .title-box .title {
	margin-top:-5px;
	line-height: 1;
}
.introduce-box .desc {
	margin:50px 0;
	font-size: var(--font-size-20);
	font-weight: 300;
	line-height: 1.7;
}
.introduce-box .img-box {
	height: 540px;
	background:url("../img/contents/introduce-img.jpg") no-repeat center center / cover;
	background-attachment: fixed;
}
@media all and (max-width: 767px) {
	.introduce-box .title-box {font-size: var(--font-size-30);}
	.introduce-box .title-box .title {
		margin-top:0;
	}
	.introduce-box .desc {
		margin:30px 0; font-size: var(--font-size-18);
	}
	.introduce-box .img-box {height: 300px;}
}


.guide-item {
	padding: 80px 0;
	border-bottom: 1px solid #d2d2d2;
	display: flex;
	align-items: flex-start;
	gap: 0 30px;
}
.guide-item:first-child {
	padding-top: 0;
}
.guide-item:last-child {
	padding-bottom: 0;
	border-bottom: none;
}
.guide-item-title {
	flex: 0 0 30%;
}
.guide-item-title .title {
	font-size: 2.25em;
	font-weight: 600;
	word-break: keep-all;
}
.guide-item-title .icon {
	margin-top: 40px;
}
.guide-item-cont {
	flex: 1 1 0;
}
.guide-item-cont .title {
	color: var(--primary-color);
	font-size: var(--font-size-20);
	font-weight: 600;
	margin-bottom: 10px;
}
.guide-item-cont .text {
	font-size: var(--font-size-18);
	line-height: 1.5;
	margin-bottom: 10px;
	word-break: keep-all;
}
.guide-item-cont .text.large {
	font-size: var(--font-size-20);
}
.guide-item-cont .text.small {
	font-size: var(--font-size-16);
}
.guide-item-cont .text-list {
	font-size: var(--font-size-18);
	line-height: 1.5;
	margin-bottom: 10px;
	word-break: keep-all;
}
.guide-item-cont .text-list li {
	position: relative;
	padding-left: 15px;
	margin-bottom: 10px;
	word-break: keep-all;
}
.guide-item-cont .text-list li::before {
	content: "";
	position: absolute;
	top: 11px;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #d2d2d2;
}
.guide-item-cont .text-list li:has(.tit) {
	display: flex;
	gap: 0 10px;
}
.guide-item-cont .text-list li .tit {
	flex-shrink: 0;
	font-weight: 600;
}
@media all and (max-width: 1023px) {
	.guide-item {
		padding: 60px 0;
	}
	.guide-item-title .title {
		font-size: var(--font-size-28);
	}
	.guide-item-title .icon {
		width: 180px;
	}
}
@media all and (max-width: 767px) {
	.guide-item {
		display: block;
		padding: 50px 0;
	}
	.guide-item-title {
		position: relative;
		margin-bottom: 40px;
	}
	.guide-item-title .title {
		font-size: var(--font-size-24);
	}
	.guide-item-title .icon {
		margin-top: 0;
		width: 120px;
		position: absolute;
		z-index: -1;
		right: -10px;
		top: -20px;
		opacity: 0.5;
	}
	.guide-item-cont .text {
		font-size: var(--font-size-16);
	}
	.guide-item-cont .text.large {
		font-size: var(--font-size-18);
	}
	.guide-item-cont .text.small {
		font-size: var(--font-size-15);
	}
	.guide-item-cont .text-list {
		font-size: var(--font-size-16);
	}
	.guide-item-cont .text-list li::before {
		top: 8px;
	}
	.guide-item-title .card-img {
		text-align: center;
	}
	.guide-item-title .card-img img {
		width: 250px;
	}
}




.refund-item {
	box-shadow: 3px 3px 6px rgba(0,0,0,0.15);
	display: flex;
	align-items: center;
	border-radius: 20px;
	padding:50px 50px 50px 0;
	margin-bottom: 40px;
}
.refund-item .img-box {
	flex:0 0 20%;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}
.refund-item .cont-box {
	flex: 1 1 auto;
}
.refund-item .title {
	font-size: var(--font-size-22);
	font-weight: 600;
	margin-bottom:20px;
}
.refund-item .list-item {
	font-size: var(--font-size-18);
	margin-top:10px;
	padding-left:15px;
	position: relative;
	font-weight: 300;
}
.refund-item .list-item::before {
	display: block;
	content:"";
	width: 5px;
	height: 5px;
	background: #d2d2d2;
	border-radius: 100%;
	position: absolute;
	left:0;
	top:9px;
}
.refund-item .list-item .strong {
	font-weight: 600;
}
.refund-item .list-item .list-item {
	font-size: var(--font-size-16);
	margin-top:5px;
}
.refund-item .list.dash .list-item::before {
	content:"-";
	width: auto;
	height: auto;
	background: none;
	top:0;
}
@media all and (max-width: 1023px) {
	.refund-item {
		padding:30px 30px 30px 0;
	}
	.refund-item .img-box {
		flex:0 0 25%;
	}
	.refund-item .title {
		font-size: var(--font-size-20);
	}
}
@media all and (max-width: 767px) {
	.refund-item {
		display: block;
		padding:25px;
		margin-bottom:20px;
		box-shadow: 2px 2px 6px rgba(0,0,0,0.15);
	}
	.refund-item .img-box {
		width: 100%;
		height: auto;
		margin-bottom: 15px;
	}
	.refund-item .img-box img {
		max-width: 60px;
	}
	.refund-item .title {
		font-size: var(--font-size-18);
		margin-bottom: 10px;
	}
	.refund-item .list-item {
		margin-top:5px;
		font-size: var(--font-size-16);
		padding-left:10px;
	}
	.refund-item .list-item::before {
		width: 4px;
		height: 4px;
		top:8px;
	}
}

.search-filter {
	display: flex;
	align-items: center;
	justify-content: center;
	gap:0 8px;
	margin-bottom:40px;
	overflow-x: auto;
}
.search-filter .btn {
	border:1px solid #bfbfbf;
	border-radius: 25px;
	color: #a4a4a4;
	height: 40px;
	padding:0 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
}
.search-filter .btn.active {
	background: var(--secondary-color);
	border-color: var(--secondary-color);
	color: #fff;
	font-weight: 500;
}
@media all and (max-width: 767px) {
	.search-filter {
		justify-content: flex-start;
		margin-bottom:30px;
	}
}



.package-view {
	display: flex;
	gap: 40px;
}
.package-view .cont-box {
	flex: 1 1 0;
	padding: 35px;
	border-radius: 12px;
	background: #fff;
	border: 1px solid #eaeaea;
}
.package-reserve {
	width: 380px;
}
.package-reserve .select-btn {
	width: 100%;
    padding: 15px 25px;
	border: 1px solid var(--secondary-color);
    background: #fff;
    border-radius: 99px;
}
.package-reserve .reserve-form {
	padding: 35px;
	border-radius: 12px;
	background: #f4f4f5;
	border: 1px solid #eaeaea;
}
.package-reserve .form-row {
	position: relative;
	display: block;
	border: none;
}
.package-reserve .form-row:not(:last-child) {
	margin-bottom: 30px;
}
.package-reserve .calendar-wrap {
	left: auto;
	right: 0;
	transform: translateX(0);
}
.package-reserve .count-box {
	margin-bottom: 20px;
}
.package-reserve .count-title {
	font-size: var(--font-size-15);
	color: #a6a6a6;
}
.package-reserve .count-title .price {
	margin-top: 5px;
	font-size: var(--font-size-20);
	color: #000;
}
.package-reserve .count {
	gap:0;
	flex:0 0 auto;
	background: #fff;
	border: 1px solid var(--secondary-color);
}
.package-reserve :is(.count-btn, .count-value) {
	flex:0 0 45px;
	height: 45px !important;
	border:none;
}
.package-reserve .count-btn {
	color: #a7a7a7;
}
.package-reserve .total-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background:var(--secondary-color);
	padding:20px 40px;
	gap:5px 10px;
	color: #fff;
	font-weight: 300;
	border-radius: 0 0 12px 12px;
	margin-top: -10px;
}
.package-reserve .total-price {
	font-size: var(--font-size-24);
	font-weight: 700;
}
.package-reserve .reserve-btn {
	margin-top: 25px;
	border-radius: 12px;
	height: calc(var(--button-height) + 10px);
	font-size: var(--font-size-18);
}
@media all and (max-width: 1023px) {
	.package-view {
		display: block;
	}
	.package-view .cont-box {
		margin-bottom: 40px;
	}
	.package-reserve {
		width: 100%;
	}
	.package-reserve .calendar-wrap {
		left: 50%;
		right: auto;
		transform: translateX(-50%);
	}
}
@media all and (max-width: 767px) {
	.package-view .cont-box {
		padding: 20px;
	}
	.package-reserve .reserve-form {
		padding: 10px;
		border-radius: 12px;
		background: #f4f4f5;
		border: 1px solid #eaeaea;
	}
	.package-reserve .form-row:not(:last-child) {
		margin-bottom: 0;
	}
	.package-reserve .total-box {
		padding:20px;
	}
	.package-reserve .total-price {
		font-size: var(--font-size-20);
	}
}
@media all and (max-width: 419px) {
	.package-reserve .count-title,
	.package-reserve .count {
		flex: 0 0 auto;
	}
	.package-reserve :is(.count-btn, .count-value) {
		flex:0 0 38px;
	}
}


.intro-wrap .swiper {
	--swiper-theme-color: #fff9;
	--swiper-navigation-size: 38px;
}
.intro-wrap .swiper img {
	border-radius: 20px;
	width: 100%;
}
.intro-desc {
	display: flex;
	gap: 0 20px;
	margin-bottom: 50px;
}
.intro-desc .title {
	flex: 0 0 220px;
	font-size: 2.125em;
	font-weight: 700;
	color: var(--secondary-color);
}
.intro-desc .text {
	margin-bottom: 10px;
	line-height: 1.6;
	font-size: var(--font-size-18);
	color: #303030;
	word-break: keep-all;
}
.intro-desc .strong {
	display: block;
	font-weight: 600;
	font-size: var(--font-size-22);
}
.intro-slide {
	margin-bottom: 50px;
}
.intro-card {
	display: flex;
	align-items: center;
	gap: 0 8%;
	padding: 55px;
	margin-bottom: 25px;
	background: #f7f7f7;
	border-radius: 20px;
}
.intro-card .swiper {
	flex: 0 0 42%;
	margin: 0;
}
.intro-card .cont-box .title {
	margin-bottom: 35px;
	font-size: var(--font-size-28);
	font-weight: 700;
}
@media all and (max-width: 1023px) {
	.intro-desc .title {
		flex: 0 0 180px;
		font-size: var(--font-size-30);
	}
	.intro-desc .text {
		font-size: var(--font-size-17);
	}
	.intro-desc .strong {
		font-size: var(--font-size-20);
	}
	.intro-card {
		padding: 35px;
		margin-bottom: 25px;
	}
	.intro-card .cont-box .title {
		margin-bottom: 20px;
		font-size: var(--font-size-26);
	}
}
@media all and (max-width: 767px) {
	.intro-wrap .swiper img {
		border-radius: 15px;
	}
	.intro-desc {
		display: block;
		margin-bottom: 30px;
	}
	.intro-desc .title {
		font-size: var(--font-size-26);
		margin-bottom: 10px;
	}
	.intro-desc .text {
		font-size: var(--font-size-16);
	}
	.intro-desc .strong {
		font-size: var(--font-size-18);
	}
	.intro-slide {
		margin-bottom: 40px;
	}
	.intro-card {
		display: block;
		padding: 25px;
		margin-bottom: 15px;
	}
	.intro-card .swiper {
		margin-bottom: 30px;
	}
	.intro-card .cont-box .title {
		margin-bottom: 15px;
		font-size: var(--font-size-22);
	}
}