::-webkit-scrollbar {
	display: none;
}
#wrap{overflow: unset !important;}
div.sticky > .tab-title{background-color: #fff; position: sticky; top: -1px; z-index: 2; border-top: 1px solid #f5f5f5}
div.sticky > .tab-title ul{border-bottom: 1px solid #f5f5f5;}
#view div.app-header{position: fixed; max-width: 720px; width: 100%;  color: #fff; z-index: 1; background: none;}
#view div.app-header button{color: #fff;}
#view div.app-header.on{background-color: #fff; color: #222;}
#view div.app-header.on button{color: #222;}

#course{position: relative; height: 40rem; overflow: hidden;}
#course:after{display: block;content: "";width: 100%;height: 100%;position: absolute;bottom: 0;left: 0;background: linear-gradient( 360deg, #fff, transparent);}
#view-course.on{}
#view-course.on #course{height: auto}
#view-course.on #course:after{display: none}
.course-btn.on i{transform: rotate(180deg)}

.main-btn{border: 1px solid #ddd; border-radius: 100px; padding: 1.7rem; color: #666; font-size: 1.4rem; display: flex; align-items: center; justify-content: center;}
#footer{display: none;}

.product-card-wrap .product-img .img_box{
	position: relative;
}
.bl_types {
	position: absolute;
	top: 5px;
	left: 5px;
	width: 24px;
	height: 24px;
	border-radius:5px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 2px 2px 3px #999;
	border: 1px solid #ddd;
}
.bl_type1 {color: #fff; background: #37474F;}
.bl_type2 {color: #fff; background: #0277BD;}
.bl_type3 {color: #fff; background: #512DA8;}
.bl_type4 {color: #fff; background: #FF8F00;}
.price_add_line{font-size: 12px; color: #0021cb;}
.bl_type_color1 {color: #37474F;}
.bl_type_color2 {color: #0277BD;}
.bl_type_color3 {color: #512DA8;}
.bl_type_color4 {color: #FF8F00;}
.bl_type_bg1 {background: #B0BEC5;}
.bl_type_bg2 {background: #4FC3F7;}
.bl_type_bg3 {background: #9575CD;}
.bl_type_bg4 {background: #FFC107;}

.prod_select_box_in ul li{
	align-items: flex-start;
}
.prod_select_box_in ul li i.xi-close-circle{
	margin-right: 0;
	color: #999;
	font-size: 20px;
}
.pass_choice_info div{
	color:#666;
	font-size:14px;
}
.pass_choice_info div:first-child{
	padding:5px 0;
}

.view-option{}
.view-option div.flex{}
.view-option div.flex button{width: 3.5rem; height: 3.5rem; text-align: center; border:1px solid #ddd;}
.view-option div.flex button i{line-height: 3.3rem;}
.view-option div.flex div{width: 6rem; height: 3.5rem; line-height: 3.3rem; text-align: center;  border-top:1px solid #ddd;  border-bottom:1px solid #ddd;}

.view-option .disabled_text{
	color: #c3c3c3;
	cursor: default;
}

div.tab-wrap-line div.tab-title ul > li > a{color: #222}
/*div.tab-wrap-line div.tab-title ul > li.on:after{width: 80%; height: 1rem; z-index: -1; top:65%; left: 50%; transform: translate(-50%, -50%); background: #ffb46f;}*/

.drawer-tops {
	display: flex;
	justify-content: flex-end;
	padding: 24px 24px 0px;
}
.drawer-tops .close_btn {}

#layer-view-option {height: auto!important;}

.ul_table {
	gap: 4px;
}
.ul_table li {
	width: 100px;
	border: solid 1px #ddd;
}
.ul_table li div {
	font-size: 16px;
	text-align: center;
	padding: 6px 6px;
}
.ul_table li .discount_num {
	background: #ddd;
	font-weight: bold;
}
.ul_table li .discount {}

.center_div {margin: 0 auto;}

#adult_p_list, #child_p_list {
	width: 100%;
}
.s_p_div {
	/*margin:10px 0 !important;*/
	justify-content: space-between;
	/*flex-direction: column;*/
}
.s_p_div:last-child{
	/*border-bottom:1px solid #ddd;*/
	padding-bottom:10px;
}
.s_p_div .info_line {
	display: flex;
	justify-content: space-between;
	font-size:14px;
}
.no_young {display: none;}

.price_box_mg{
	margin-bottom:30px !important;
}

.prod_select_sums {
	border-top: 1px solid #000;
	padding-top: 10px;
}

/*pass page*/
.pass_sec_top{
	background:#f5f5f5;
	padding:90px 0;
}
.pass_top_info_wrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.top_info_title{
	padding-bottom:45px;
}
.top_info_title > div{
	font-size:60px;
	font-family:'JalnanGothic', sans-serif;
	padding-bottom:10px;
}
.top_info_title > p{
	font-size:35px;
	font-weight:500;
}
.top_info_stxt{
	font-size:28px;
}
.top_info_stxt > p{
	padding-bottom:10px;
}
.pass_top_btn button{
	display: flex;
	align-items: center;
	justify-content: center;
	background:#000;
	color:#fff;
	border-radius:10px;
	padding:42px 35px;
	font-size:40px;
	font-family:'JalnanGothic', sans-serif;
}
.pass_top_btn button i{
	margin-bottom:10px;
}

.pass_sec_box{
	padding:70px 0;
}
.pass_price_wrap{
	padding-bottom:60px;
}
.pass_price_top{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom:15px;
}
.pass_price_title{
	font-size:26px;
	font-weight:bold;
}
.pass_price_age{
	display: flex;
	align-items: center;
}
.pass_price_age p{
	font-size:18px;
	color:#666;
	font-weight:bold;
}
.pass_price_age > span{
	color:#ccc;
	margin:0 3px;
}
.pass_price_age p span{
	color:#999;
	font-weight:normal;
	padding-left:5px;
}
.price-table {
	width: 100%;
	border-collapse: collapse;
	display: table;
}
.price-table .row {
	display: table-row;
}
.price-table .cell {
	display: table-cell;
	border-bottom:1px solid #ddd;
	padding:10px;
	text-align: center;
}
.price-table .header .cell {
	background: #999;
	color: #fff;
	font-weight: bold;
	padding: 15px 8px;
	font-size: 18px;
}
.price-table .row-title {
	color: #666;
}
.pass_banner_wrap{
	padding-bottom:75px;
}
.pass_banner_img{
	display: flex;
	align-items: center;
	justify-content: center;
	width:100%;
	height:100%;
}
.pass_use_wrap{
}
.use_top_box{
	text-align: center;
}
.use_top_box div{
	font-size:35px;
	padding-bottom:10px;
}
.use_top_box p{
	font-size:20px;
	color:#999;
}
.use_btn_box{
	display: flex;
	justify-content: center;
	padding:40px 0;
}
.use_btn_box_in{
	display:flex;
	align-items:center;
	background:#eee;
	border-radius:25px;
}
.use_btn_box_in .pass_btn_box{
	padding:12px 40px;
	font-size:18px;
	color:#999;
	cursor: pointer;
	flex:auto !important;
}
.use_btn_box_in .pass_btn_box.on{
	border:2px solid #f00059;
	border-radius:25px;
	color:#f00059;
	background:#fff;
	font-weight:bold;
}
.use_btn_img div{
	width:100%;
	height:100%;
	display: none;
}
.pass_buy_info{
	margin-bottom:80px
}
.pass_buy_info div{
	font-size:35px;
	font-weight:bold;
	padding-bottom:20px;
}
.pass_buy_info p{
	font-size:16px;
	color:#595959;
	line-height:24px;
	word-break: keep-all;
}
.pass_care_txt{
	margin-bottom:60px;
}
.pass_care_list{
	position: relative;
	background:#fff2f7;
	padding:20px 20px 15px;
}
.pass_care_title{
	background:#f00059;
	color:#fff;
	position: absolute;
	top:-20px;
	left:0;
	padding:10px 20px;
	border-radius:20px;
	font-size:20px;
	font-weight:bold;
}
.pass_care_list ul{
	padding-top:15px;
}
.pass_care_list ul li{
	padding:4px 0;
	color:#595959;
	letter-spacing:-0.5px;
}
.pass_view_title{
	font-size:24px;
	font-weight:bold;
}
.pass_view_age p{
	font-size:16px;
}
.pass_prod_list_tab ul{
	display: flex;
	padding-top:20px;
}
.pass_prod_list_tab ul li{
	font-size:15px;
	color:#999;
	padding-right:20px;
}
.pass_prod_list_tab ul li.on{
	color:#000;
	font-weight:bold;
}
.pass_prod_category{
	padding:20px 0;
}
.pass_prod_category ul{
	display: flex;
	flex-wrap: wrap;
	gap:15px;
}
.pass_prod_category ul li{
	border:1px solid #999;
	border-radius:20px;
	padding:5px 10px;
}
.pass_prod_category ul li a{
	color:#999;
	font-size:15px;
	display: flex;
	align-items: center;
}
.pass_prod_category ul li a img{
	width:auto;
	height:19px;
	object-fit: none;
	vertical-align: middle;
	margin-right:4px;
}
.view_price_table .header .cell{
	font-size:16px;
}

.product-card-wrap{
	display: flex;
	flex-wrap: wrap;
	gap:15px;
}
.product-card-wrap .product-card {
	width: calc(25% - 15px);
	border: 1px solid #ddd;
	border-radius: 6px;
	overflow: hidden;
	background: #fff;
	transition: transform 0.2s;
}
.product-card-wrap .product-img{
	position: relative;
	width: 100%;
	height:auto;
}
.product-card-wrap .product-img img {
	width:100%;
	height:100%;
	object-fit: cover;
}
.product-card-wrap .product_btn{
	position: absolute;
	display: flex;
	bottom: 14px;
	right: 10px;
}
.product-card-wrap .product_btn a{
	color: #666;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 5px;
	padding: 4px 8px;
	margin-left: 5px;
	font-size: 13px;
}
.product-card-wrap .product_btn a.on{
	color: #ffffff;
	background: #f00059;
	border: solid 1px #f00059;
}
.product-card-wrap .product-info {
	padding: 10px;
}

.product-card-wrap .product-info .price{
	padding-top:10px;
}
.product-card-wrap .product-info h4 {
	font-size: 15px;
	margin: 6px 0;
}

.product-card-wrap .price {
	display: flex;
	align-items: center;
	font-weight: bold;
	color: #000;
	font-size: 15px;
}

.product-card-wrap .discount {
	color: red;
	font-size: 13px;
	margin-left: 5px;
}

.product-card-wrap .tag {
	display: inline-block;
	background: #f5f5f5;
	color:#999;
	border-radius: 6px;
	padding: 2px 6px;
	font-size: 12px;
	margin-bottom: 5px;
}

.required_pass {
	border: 2px solid #f00059 !important;
	border-radius: 4px;
}
.ca_option:focus {
	outline: none; /* 기본 포커스 효과 제거 (선택 사항) */
	/*border: 2px solid #f00059 !important;*/
	/*border-radius: 4px;*/
}

.prod_single_price .prod_single_price_text {
	color: #3F51B5;
	font-size: 14px;
	margin-bottom: 4px;
}
.prod_single_price .single_sum_text {
	/*color: #3F51B5;*/
	font-size: 14px;
	margin-top: 4px;
}

@media screen and (max-width:1024px) {
	.top_info_title > div{
		font-size:45px;
	}
	.top_info_title > p{
		font-size:26px;
	}
	.top_info_stxt{
		font-size:20px;
	}
	.pass_top_btn button{
		font-size:32px;
		padding:24px 20px;
	}
	.pass_price_table table thead th{
		font-size:16px;
		padding:15px 0;
	}
	.pass_price_table table tbody td{
		font-size:15px;
		padding:15px 0;
	}

}
@media screen and (max-width:768px) {
	.pass_top_info_wrap{
		display: block;
	}
	.pass_sec_top{
		padding:50px 0;
	}
	.top_info_title > div{
		font-size:38px;
		letter-spacing:-1px;
	}
	.top_info_title > p{
		font-size:25px;
	}
	.top_info_title{
		text-align: center;
		padding-bottom:30px;
	}
	.top_info_stxt{
		font-size:20px;
		text-align: center;
	}
	.pass_top_btn{
		padding-top:30px;
		margin:0 20px;
	}
	.pass_top_btn button{
		font-size:20px;
		padding:12px 20px;
		width: 100%;
	}
	.pass_top_btn button i{
		margin-bottom:2px;
	}
	.pass_price_top{
		display: block;
	}
	.pass_buy_info div{
		font-size:28px;
	}
	.pass_care_title{
		font-size:18px;
	}
	.pass_care_list ul li{
		font-size:15px;
		line-height:22px;
	}
	.pass_price_title{
		font-size:26px;
		padding-bottom:10px;
	}
	.pass_price_age{
		padding-top:10px;
	}
	.pass_price_age p{
		font-size:16px;
	}
	.use_top_box div{
		font-size:26px;
	}
	.use_top_box p{
		font-size:18px;
	}
	.use_btn_box{
		display: block;
		padding: 20px;
	}
	/*.use_btn_box_in{*/
	/*	display: block;*/
	/*	border-radius:10px;*/
	/*	background:#fff;*/
	/*	margin: 0 50px;*/
	/*	width: 80%;*/
	/*}*/
	.use_btn_box_in .pass_btn_box{
		font-size:15px;
		text-align:center;
		padding:10px 16px;
	}
	.use_btn_box_in .pass_btn_box.on{
		/*border-radius:10px;*/
		font-size:15px;
	}
	.pass_sec_box{
		padding:50px 0;
	}
	/*.pass_banner_img{*/
	/*	height:400px;*/
	/*}*/
	.price-table {
		display: flex;
		overflow-x: auto; /* 가로 스크롤 가능하게 */
		white-space: nowrap;
	}
	.price-table .row {
		display: inline-block;
		vertical-align: top;
		border-bottom: 1px solid #ddd;
		overflow: hidden;
		min-width: 120px; /* 각 pick 카드 최소 넓이 */
		width:40%;
	}
	.price-table .header{
		width:20%;
	}
	.price-table .header .cell{
		font-size:16px;
		padding:10px;
	}
	.price-table .row .first{
		height:40px;
	}
	.price-table .adult{
		border-right:1px solid #ddd;
	}
	.price-table .cell {
		display: block;
		border: none;
		border-bottom: 1px solid #eee;
		padding: 10px;
		text-align: center;
	}
	.price-table .row-title{
		background:#f5f5f5;
	}
	.price-table .cell:last-child {
		border-bottom: none;
	}
	.price-table .header {
		display: block;  /* ✅ 헤더 유지 */
		font-weight: bold;
		background: #f5f5f5;
	}
	.product-card-wrap .product-card{
		width:calc(50% - 15px);
	}
}

@media screen and (max-width:420px) {
	div.gallery-list > div.line-bottom > div.flex{flex-wrap: wrap;}
	div.gallery-list > div div.txt-box{width: 100%;}
}
@media screen and (max-width:380px) {

	div.gallery-list > div div.txt-box .txt16{font-size: 5.5vw}
	div.gallery-list > div div.txt-box .txt14{font-size: 4vw}

}