/* [S] header */
.header_wrap {
	width: 100%;
	height: auto;
	display: flex;
	position: fixed;
	left: 0;
	top: 0;
	background: #fff;
	z-index: 100
}

.header_wrap .header_left {
	width: 80px;
	height: 100vh;
	flex-shrink: 0;
	background: #F7F7F7;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 2
}

.header_wrap .header_left .sitemap {
	width: 100%;
	height: 80px;
	background: #131313 url("/resource/templete/royal/img/common/ic_sitemap_w.png") no-repeat center / 33.75% auto;
	display: block;
	border-bottom: solid 1px #f7f7f7
}

.header_wrap .header_left .hd_search {
	width: 100%;
	height: 80px;
	background: #131313 url("/resource/templete/royal/img/common/ic_search_w.png") no-repeat center / 33.75% auto;
	display: block
}

.header_wrap .header_left .list .item {
	border-bottom: solid 1px #F0F0F0
}

.header_wrap .header_left .list .item a {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
	height: 80px
}

.header_wrap .header_left .list .item img {
	max-width: 35%
}

.header_wrap .header_left .list .item .ic_wrap,
.header_wrap .header_left .list .item .txt_wrap {
	width: 100%;
	text-align: center
}

.header_wrap .header_left .list .item .txt_wrap {
	font-size: 0.750rem;
	margin-top: 3px;
	font-weight: 500
}

.header_wrap .header_right {
	width: 100%;
	position: relative;
	z-index: 1
}

.header_wrap .inner {
	width: 1630px;
	height: 100%
}

.header_wrap .header_top {
	width: 100%;
	height: 50px;
	background: #4E4E4E;
	position: relative;
	z-index: 2;
	padding-left: 80px
}

.header_wrap .header_top .list {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end
}

.header_wrap .header_top .list .item a {
	display: block;
	font-size: 1.125rem;
	color: #fff !important;
	padding: 0 20px
}

.header_wrap .header_btm {
	width: 100%;
	height: 80px;
	background: #fff;
	position: relative;
	z-index: 1;
	padding-left: 80px;
}

.header_wrap .header_btm::before{
	width: 100%;
	height: 2px;
	background: #ececec;
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
}

.header_wrap .header_btm>.inner {
	display: flex;
	justify-content: space-between;
	position: static
}

.header_wrap .header_btm .logo {
	flex-shrink: 0;
	height: 100%;
	margin-right: 40px
}

.header_wrap .header_btm .logo a {
	height: 100%;
	display: flex;
	align-items: center
}

.header_wrap .header_btm .logo a img {
	max-height: 60%
}

.header_wrap .header_btm .logo a img+img {
	margin-left: 15px;
}

.header_wrap .header_btm .hd_lang_wrap {
	flex-shrink: 0;
	margin-left: 150px
}

.header_wrap .gnb {
	width: 100%;
	height: 100%
}

.header_wrap .menu-gnb-depth1 {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: space-between;
	padding: 0 30px
}

.header_wrap .menu-gnb-depth1__item {
	flex: 1
}

.header_wrap .gnb .depth1__a {
	font-size: 1.250rem;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 0 5px
}

.header_wrap .gnb .menu-gnb-depth2 {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	padding: 15px 35px 30px;
}

.header_wrap .gnb .menu-gnb-depth2__item {
	width: 33.3333%;
	padding: 0 35px;
	margin: 5px 0;
}

.header_wrap .gnb .depth2__a {
	display: flex;
	align-items: center;
	font-size: 1rem;
	padding: 10px 20px;
	border: solid 1px #EAEAEA;
	font-weight: 600;
	background:url('/resource/templete/royal/img/common/arr_g_next.png') no-repeat right 20px center / 4px 8px;
}

.header_wrap .gnb .menu-gnb-depth3 {
	width: 100%;
	margin: 5px 0;
}

.header_wrap .gnb .depth3__a {
	display: flex;
	align-items: center;
	font-size: 1rem;
	font-weight: 500;
	padding: 8px 15px;
	color: #666
}

.header_wrap .gnb .depth3__a:before {
	content: "";
	width: 4px;
	height: 4px;
	background: #666;
	display: inline-block;
	flex-shrink: 0;
	margin-right: 6px
}

.header_wrap .hd_lang_wrap {
	display: flex;
	align-items: center;
	position: relative
}

.header_wrap .hd_lang {
	width: 95px;
	height: 30px;
	border-radius: 15px;
	border: solid 1px #DFDFDF;
	font-size: 0.813rem;
	color: #333;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 15px
}

.header_wrap .hd_lang:after {
	content: "";
	width: 8px;
	height: 4px;
	background: url("/resource/templete/royal/img/common/arrow_down.png") no-repeat center / 100% auto;
	opacity: 0.8
}

.header_wrap .hd_lang_box {
	position: absolute;
	left: 0;
	top: calc(50% + 15px);
	font-size: 0.813rem;
	color: #333;
	border: solid 1px #DFDFDF;
	border-top: none;
	width: 95px
}

.header_wrap .hd_lang_box li a {
	padding: 5px;
	text-align: center;
	display: block;
	background-color: white;
}

.header_wrap .hd_lang_wrap.open .hd_lang {
	border-radius: 15px 15px 0 0
}

.header_wrap .hd_lang_wrap.open .hd_lang:after {
	background: url("/resource/templete/royal/img/common/arrow_up.png") no-repeat center / 100% auto;
}

.header_wrap .hd_search_wrap.open:before {
	content: "";
	width: calc(100% - 80px);
	height: calc(100% - 130px);
	position: fixed;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5)
}

.header_wrap .hd_search_wrap .tit {
	font-size: 2.250rem;
	font-weight: bold;
	margin-bottom: 30px
}

.header_wrap .hd_search_box {
	width: calc(100% - 80px);
	position: fixed;
	left: 80px;
	top: 130px;
	background: #FFF;
	padding: 100px 0 100px;
	text-align: center
}

.sc_down.header_wrap .hd_search_box {
	top: 80px
}

.header_left .sns_list .sns_item {
	width: 100%;
	height: 80px;
	position: relative
}

.header_left .sns_list .sns_item a {
	width: 100%;
	height: 100%;
	display: block;
	background-repeat: no-repeat;
	background-size: 30px auto;
	background-position: center;
	background-color: #fff
}

.header_left .sns_list .sns_item .sns01 {
	background-image: url("/resource/templete/royal/img/common/facebook.png")
}

.header_left .sns_list .sns_item .sns02 {
	background-image: url("/resource/templete/royal/img/common/insta.png")
}

.header_left .sns_list .sns_item .sns03 {
	background-image: url("/resource/templete/royal/img/common/twitter.png")
}

.header_left .sns_list .sns_item .trigger_toggle {
	width: auto;
	height: 80px;
	align-items: center;
	position: absolute;
	left: 0;
	top: 0;
	background: #fff;
	border-radius: 0px 20px 20px 0px;
	display: none;
	z-index: 2;
}

.header_left .sns_list .sns_item.trigger_wrap.open .trigger_toggle {
	box-shadow: 2px 3px 10px #00000033;
	display: inline-flex;
}

.header_left .sns_list .sns_item .trigger_toggle .trigger_close {
	width: 50px;
	height: 50px;
	position: static;
	flex-shrink: 0;
	opacity: 1;
	margin: 15px;
	background-color: #f4f4f4;
	border-radius: 10px
}

.header_left .sns_list .sns_item .trigger_toggle .trigger_close:hover,
.header_left .sns_list .sns_item .trigger_toggle .trigger_close:focus {
	background-image: url("/resource/templete/royal/img/common/ic_close_sns.png")
}

.header_left .sns_list .sns_item .trigger_toggle .sns_link_list {
	display: inline-flex;
	position: relative;
	align-items: center;
	padding: 0 20px 0 0
}

.header_left .sns_list .sns_item .trigger_toggle .sns_link_item {
	display: inline-flex;
	position: relative;
	align-items: center
}

.header_left .sns_list .sns_item .trigger_toggle .sns_link_item:after {
	content: "|";
	font-size: 0.625rem;
	color: #E7E8EB;
	z-index: 2
}

.header_left .sns_list .sns_item .trigger_toggle .sns_link_list .sns_link_item:last-child:after {
	display: none
}

.header_left .sns_list .sns_item .trigger_toggle .sns_link_item a {
	word-break: keep-all;
	padding: 0 12px;
	font-size: 0.875rem;
	font-weight: 500;
	color: #333;
	flex-shrink: 0;
	text-align: center
}

.header_left .sns_list .sns_item .trigger_toggle .sns_link_item a:hover,
.header_left .sns_list .sns_item .trigger_toggle .sns_link_item a:focus {
	color: #131313;
	font-weight: 600;
	text-decoration: underline;
	text-underline-position: under
}

.header_wrap .depth3__a:focus,
.header_wrap .depth3__a:hover {
	font-weight: 600;
	color: #131313;
}

@media screen and (max-width: 1400px) {
	.header_wrap .header_btm .logo {
		margin-right: 20px
	}

	.header_wrap .header_btm .hd_lang_wrap {
		margin-left: 10px
	}

	.header_wrap .menu-gnb-depth1 {
		padding: 0 10px
	}
}

@media screen and (min-width: 1024px) {
	.header_wrap .gnb .menu-gnb-depth2__wrap {
		position: absolute;
		left: 0;
		top: 80px;
		width: 100%;
		height: auto;
		background: #fff;
		display: none;
		padding-left: 80px
	}

	.header_wrap .gnb .menu-gnb-depth2__wrap .inner {
		width: 1430px;
		height: auto;
		display: flex
	}

	.header_wrap .gnb .menu-gnb-depth2__wrap .menu_info_wrap {
		width: 320px;
		padding: 35px;
		background: #F7F7F7 url("/resource/templete/royal/img/common/bg_menu_info.png") no-repeat right bottom / 100% auto;
		flex-shrink: 0
	}

	.header_wrap .gnb .menu-gnb-depth2__wrap .menu_info_wrap .tit {
		font-size: 1.625rem;
		font-weight: 600;
		margin-bottom: 15px
	}

	.header_wrap .gnb .menu-gnb-depth2__wrap .menu_info_wrap .txt {
		font-size: 0.875rem;
		color: #333;
		line-height: +1.6
	}

	/*open*/
	.open.header_wrap:before {
		content: "";
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.8)
	}

	.open.menu-gnb-depth1__item .depth1__a {
		font-weight: 600;
		border-bottom: solid 2px #131313;
        position: relative;
		z-index: 1;
	}

	.open.menu-gnb-depth1__item .menu-gnb-depth2__wrap {
		display: block
	}

	.open.menu-gnb-depth1__item:after {
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		background: rgba(0, 0, 0, 0.5);
		z-index: 2
	}

	/*open*/
	.active.menu-gnb-depth2__item .depth2__a {
		background: #000 url('/resource/templete/royal/img/common/arr_c_next_w.png') no-repeat right 20px center / 4px 8px;
		color: #fff;
	}

	/*scroll down*/
	.sc_down.header_wrap .header_top {
		display: none
	}
}

@media screen and (max-width: 1024px) {
	body.m_open {
		overflow: hidden
	}

	.header_wrap {
		flex-wrap: wrap
	}

	.header_wrap .header_left {
		width: 100%;
		height: auto;
		position: static
	}

	.header_wrap .header_left .sitemap {
		display: none
	}

	.header_wrap .header_left .list {
		display: none;
		flex-wrap: wrap
	}

	/*.header_wrap .header_left .list .item{ width: 33.3333%}*/
	/*.header_wrap .header_left .list .item a{ flex-wrap: nowrap; align-items: center; height: 60px}*/
	/*.header_wrap .header_left .list .item .ic_wrap,*/
	/*.header_wrap .header_left .list .item .txt_wrap{ display: inline-block; width: auto}*/
	/*.header_wrap .header_left .list .item .txt_wrap{ font-size: 1rem}*/
	/*.header_wrap .header_left .list .item .ic_wrap{ width: 30px; margin-right: 15px}*/
	/*.header_wrap .header_left .list .item img{ max-width: 100%; width: 85%}*/
	/*.header_wrap .header_left .list .item:first-child img{ width: 100%}*/
	.header_wrap .header_left .sns_list {
		display: none
	}

	.header_wrap .header_left .hd_search {
		position: absolute;
		right: 80px;
		top: 0;
		width: 60px;
		height: 80px;
		background: url("/resource/templete/royal/img/common/ic_search_b.png") no-repeat center / 60% auto
	}

	.header_wrap .header_top {
		display: none
	}

	.header_wrap .header_btm {
		padding: 0
	}

	.header_wrap .header_btm .hd_lang_wrap {
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		display: none;
		z-index: 901;
	}

	.header_wrap .gnb {
		position: fixed;
		right: -100%;
		top: 0;
		background: #fff;
		width: 100%;
		height: 100%;
		padding: 80px 0 0
	}

	.header_wrap .menu-gnb-depth1 {
		display: block;
		width: 100%;
		height: 100%;
		overflow-y: auto;
		padding: 0 20px 80px
	}

	.header_wrap .gnb .menu-gnb-depth1__item.has_depth2 .depth1__a {
		background: url("/resource/templete/royal/img/common/arrow_down.png") no-repeat right 20px center
	}

	.header_wrap .gnb .menu-gnb-depth2__wrap {
		display: none
	}

	.header_wrap .gnb .menu-gnb-depth2__wrap .menu_info_wrap {
		display: none
	}

	.header_wrap .gnb .menu-gnb-depth2__item {
		padding: 0;
		width: 100%
	}

	.header_wrap .gnb .depth2__a {
		border: none;
		border-bottom: 1px solid #eaeaea;
		padding: 15px;
		font-size: 1rem;
		font-weight: 400;
	}

	.header_wrap .gnb .menu-gnb-depth2__item.has_depth3 .depth2__a {
		background: url("/resource/templete/royal/img/common/ic_plus.png") no-repeat right 20px center;
	}

	.header_wrap .gnb .menu-gnb-depth3 {
		display: none
	}

	.header_wrap .gnb .inner {
		padding: 0
	}

	.header_wrap .gnb .menu-gnb-depth2 {
		padding: 0
	}

	.header_wrap .hd_lang {
		width: 140px;
		height: 40px;
		border-radius: 25px;
		font-size: 1.125rem;
		border: solid 1px #DFDFDF;
		padding: 0 20px
	}

	.header_wrap .hd_lang_box {
		width: 140px;
		top: calc(50% + 20px);
		background: #fff;
		font-size: 1rem
	}

	.header_wrap .hd_lang_box a {
		display: block
	}

	.header_wrap .hd_search_box {
		width: 100%;
		left: 0;
		top: 80px;
		padding: 45px 15px;
	}

	.header_wrap .hd_search_wrap .tit {
		display: none
	}

	.header_wrap .hd_search_wrap.open:before {
		width: 100%;
		height: calc(100% - 80px);
	}

	.header_wrap .h_menu {
		width: 60px;
		height: 80px;
		background: url("/resource/templete/royal/img/common/ic_menu_b.png") no-repeat center / 40% auto
	}

	.header_wrap .h_close {
		width: 60px;
		height: 80px;
		background: url("/resource/templete/royal/img/common/ic_m_close.png") no-repeat center / 40% auto;
		position: absolute;
		right: 15px;
		top: 0
	}

	/*open*/
	.m_open .header_wrap .header_btm .hd_lang_wrap {
		display: block
	}

	.m_open .header_wrap .gnb {
		right: 0
	}

	.header_wrap .gnb .depth1__a {
		font-size: 1.125rem;
		font-weight: bold;
		padding: 15px;
		justify-content: flex-start;
		border-bottom: solid 1px #000
	}

	.header_wrap .gnb .open .menu-gnb-depth2__wrap {
		display: block
	}

	.header_wrap .gnb .menu-gnb-depth1__item.has_depth2.open .depth1__a {
		background: url("/resource/templete/royal/img/common/arrow_up.png") no-repeat right 20px center
	}

	.header_wrap .gnb .menu-gnb-depth2__item{
		margin: 0;
	}

	.header_wrap .gnb .menu-gnb-depth2__item.open .menu-gnb-depth3 {
		display: block
	}

	.header_wrap .gnb .menu-gnb-depth2__item.open .depth2__a {
		background: #F7F7F7 url("/resource/templete/royal/img/common/ic_minus.png") no-repeat right 20px center;
	}
}

/* [E] header */


/* [S] footer */
.footer_wrap {
    background: #F8F8F8;
    clear: both;
    padding: 0 0 0 0;
}

.footer_wrap .footer_top {
    background: #fff;
    border-left: none;
    border-right: none;
}

.footer_wrap .footer_top .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 70px;
}

.footer_wrap .ft_policy {
    display: flex
}

.footer_wrap .ft_policy li {
    text-align: center;
    position: relative
}

.footer_wrap .ft_policy li:after {
    content: "";
    width: 1px;
    height: 22px;
    display: inline-flex;
    background: #AEAEAE;
    position: absolute;
    right: 0;
    top: 0
}

.footer_wrap .ft_policy li:last-child:after {
    display: none
}

.footer_wrap .ft_policy li a {
    display: block;
    font-size: 1rem;
    font-weight: 500;
    padding: 0 35px
}

.footer_wrap .ft_policy li:first-child a {
    padding-left: 0
}

.footer_wrap .ft_policy li:last-child a {
    padding-right: 0
}

.footer_wrap .ft_policy li .link {
    color: #132447;
    border-bottom: solid 1px #132447;
    padding-bottom: 1px;
    font-weight: bold
}

.footer_wrap .footer_top .right {
    display: inline-flex
}

.footer_wrap .footer_top .right select {
    height: 70px;
    width: 235px;
    background-color: #fff;
    color: #333333;
    padding-left: 20px;
    border-left: solid 1px #DFDFDF
}

.footer_wrap .footer_top .right select+select {
    border-right: solid 1px #DFDFDF
}

.footer_wrap .footer_btm {
    border: 1px solid #DFDFDF;
    padding: 45px 0 70px
}

.footer_wrap .footer_btm .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer_wrap .footer_btm .inner .left {
    display: flex;
    align-items: center
}

.footer_wrap .footer_btm .inner .ft_logo {
    margin-right: 90px
}

.footer_wrap .footer_btm .inner .txt_wrap {
    color: #666666;
    font-size: 0.938rem;
    line-height: +2
}

.footer_wrap .footer_btm .inner .right {
    padding-right: 65px
}

.floating_wrap {
    position: fixed;
    right: 20px;
    bottom: 40px;
    z-index: 99;
    width: 70px
}

.floating_wrap .floating_item {
    width: 70px;
    height: 70px;
    margin-bottom: 10px
}

.mo_hd_box {
    width: 100%;
    height: calc(100% - 80px);
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    left: 0;
    top: 80px;
    z-index: 97
}

.mo_hd_box_inn {
    width: 100%;
    height: calc(100% - 80px - 220px);
    overflow-y: auto;
    background: #fff;
    position: fixed;
    left: 0;
    top: 80px;
    z-index: 98;
    padding: 15px 15px 50px 15px
}

.palace_list_mo {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border: solid 1px #131313;
    margin-bottom: 30px
}

.palace_item_mo {
    border-right: solid 1px #131313;
    border-top: solid 1px #131313;
    height: 50px
}
.palace_list_mo .palace_item_mo:nth-child(-n+3){ border-top: none}
.palace_list_mo .palace_item_mo:nth-child(3n){ border-right: none}
.palace_item_mo a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    font-size: 1.125rem
}

.quick_list_mo {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 30px
}

.quick_item_mo {
    position: relative
}

.quick_item_mo:before {
    content: "";
    padding-top: 80%;
    display: block
}

.quick_item_mo a {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #F8F8F8;
    border-radius: 20px;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    text-align: center
}

.quick_item_mo .img_wrap img {
    max-width: 25%;
    max-height: 100%
}

.quick_item_mo .img_wrap {
    width: 100%;
    text-align: center;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px
}

.quick_item_mo .txt_wrap {
    width: 100%;
    font-weight: 500;
    font-size: 1.125rem
}

.sns_list_wrap_mo .sns_tit_mo {
    font-weight: 600;
    font-size: 1.5rem;
    padding-bottom: 20px;
    border-bottom: solid 2px #131313
}

.sns_list_wrap_mo .sns_item_mo {
    border-bottom: solid 1px #131313
}

.sns_list_wrap_mo .sns_item_trigger {
    width: 100%;
    padding: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    background: url(/resource/templete/royal/img/common/arrow_down.png) no-repeat right 20px center;
}

.sns_list_wrap_mo .sns_item_trigger img {
    width: 35px;
    margin-right: 15px
}

.sns_list_wrap_mo .sns_item_inn {
    padding: 20px 10px;
    display: none;
    grid-template-columns: repeat(2, 1fr);
}

.sns_list_wrap_mo .sns_item_inn .item {
    font-size: 1.125rem;
    color: #666;
    padding: 10px
}

.sns_list_wrap_mo .sns_item_inn .item a {
    width: 100%;
    display: block
}

.sns_list_wrap_mo .sns_item_mo.open .sns_item_trigger {
    background: #F7F7F7 url(/resource/templete/royal/img/common/ic_minus.png) no-repeat right 26px center;
}

.sns_list_wrap_mo .sns_item_mo.open .sns_item_inn {
    display: grid
}

/* [E] footer */

/* [S] contents_wrap */
.contents_wrap {
    padding: 130px 0 0 0;
}

@media screen and (max-width: 1024px) {
    .contents_wrap {
        padding: 80px 0 0 0;
    }

    .footer_wrap {
        padding-left: 0
    }

    .footer_wrap .footer_top .inner {
        padding: 0
    }

    .footer_wrap .footer_top .right {
        width: 100%
    }

    .footer_wrap .footer_top .right select {
        width: 50%
    }

    .footer_wrap .ft_policy {
        width: 100%;
        flex-wrap: wrap;
        margin-top: 40px
    }

    .footer_wrap .ft_policy li {
        width: 25%
    }

    .footer_wrap .ft_policy li a {
        padding: 0 5px;
        font-size: 0.875rem
    }

    .footer_wrap .footer_btm {
        padding-bottom: 150px
    }

    .footer_wrap .footer_btm .inner .left {
        justify-content: space-between
    }

    .footer_wrap .footer_btm .inner .left img {
        height: 60px
    }

    .footer_wrap .footer_btm .inner .txt_wrap {
        line-height: +1.5;
        font-size: 0.813rem;
        margin-top: 40px
    }
}

/* [E] contents_wrap */

/* [S] main */
/* common*/
.main_tit_wrap {
    display: inline-flex;
    align-items: center
}

.main_tit {
    width: 100%;
    font-weight: 600;
    font-size: 2.250rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.main_tit .btn_more {
    margin-left: 15px;
    min-width: initial;
}

.main_txt {
    font-size: 1.250rem;
    color: #333
}

.main_section {
    padding: 100px 0
}

.contents_main .tab_menu .tab_link {
    margin-left: 10px
}

.contents_main .tab_menu .tab_link a {
    word-break: keep-all;
    padding: 5px 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 45px;
    border-radius: 23px;
    font-weight: 500;
    font-size: 1.250rem;
    color: #949494;
    background: #F4F4F4
}

.contents_main .tab_menu .tab_link.current a {
    background: linear-gradient(to right, #D44177 0%, #0C68BE 100%);
    color: #fff
}

/*txt*/
.main_txt_section {
    padding: 25px 0 50px
}

.main_txt_section .txt {
    color: #333;
    font-size: 1.250rem
}

.main_txt_section .tit {
    font-size: 3.625rem;
    font-weight: bold
}

/*visual*/
.main_visual_wrap {
    overflow: hidden;
    width: 100%;
    position: relative
}

.main_visual {
    width: 100%;
    position: relative
}

.main_slide_item a {
    display: block;
    position: relative
}

.main_slide_item img {
    display: block;
    width: 100%;
}

.main_slide_item .txt_wrap {
    padding: 70px 15px 20px;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    z-index: 21;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    width: 1430px;
    max-width: 100%;
    text-align: right;
    text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5)
}

.main_slide_item .txt_wrap .txt_small {
    width: 100%;
    color: #fff;
    font-size: 1.625rem;
    font-weight: 300;
    margin-bottom: 20px
}

.main_slide_item .txt_wrap .txt_big {
    width: 100%;
    color: #fff;
    font-size: 2.625rem;
    font-weight: bold;
    margin-bottom: 25px;
}

.main_visual .swiper-use-wrap {
    width: 100%;
    position: absolute;
    left: 0;
    top: -40px
}

.main_visual .swiper-button-next,
.main_visual .swiper-button-prev {
    top: -10px;
    left: auto;
    right: 0;
    z-index: 20 !important;
    width: 80px;
    height: 80px;
    background: #131313;
    opacity: 1;
    margin-top: 0
}

.main_visual .swiper-button-next:after,
.main_visual .swiper-button-prev:after {
    color: #fff;
    font-size: 1.5rem
}

.main_visual .swiper-button-next.swiper-button-disabled,
.main_visual .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.main_visual .swiper-button-prev {
    right: 80px
}

.main_visual .swiper-scrollbar {
    opacity: 1 !important;
    display: block !important;
    background: rgba(0, 0, 0, 0.2);
    width: 250px;
    position: absolute;
    left: auto;
    right: 240px;
    top: 8px;
    transition-duration: initial !important
}

.main_visual .swiper-scrollbar-drag {
    background: rgba(0, 0, 0, 1)
}

.main_visual .swiper-pagination {
    display: inline-flex;
    justify-content: center;
    position: absolute;
    left: auto;
    transform: translateX(0);
    right: 500px;
    top: -4px;
    color: #131313;
    font-size: 1.250rem;
    width: 60px;
    height: 30px
}

.main_visual .swiper-pagination * {
    opacity: 0.5
}

.main_visual .swiper-pagination .swiper-pagination-current {
    color: #131313;
    opacity: 1
}

.main_visual .btn_pause {
    width: 30px;
    height: 20px;
    position: absolute;
    right: 190px;
    top: 0;
    background: url("/resource/templete/royal/img/common/ic_pause.png") no-repeat center / 50% auto
}

.main_visual .btn_pause.on {
    background: url("/resource/templete/royal/img/common/ic_play.png") no-repeat center
}

@media screen and (max-width: 1024px) {
    .main_section {
        padding: 60px 0
    }

    .main_tit_wrap {
        flex-wrap: wrap
    }

    .main_tit {
        font-size: 1.8rem
    }

    .main_txt {
        width: 100%;
        line-height: +1.5
    }

    .contents_main .tab_menu .tab_link a {
        min-width: 50px
    }

    .main_txt_section .tit{
		font-size: 2rem;
		margin:5px auto 30px;
	}

	.main_txt_section .txt{
		font-size: 1.1rem;
	}

    .main_slide_item .txt_wrap {
        position: static;
        width: 100%;
        padding: 20px;
        transform: translate(0, 0);
        text-align: left;
        text-shadow: none
    }

    .main_slide_item .txt_wrap .txt_small {
        color: #131313;
        margin-bottom: 15px;
        font-size: 1.5rem
    }

    .main_slide_item .txt_wrap .txt_big {
        color: #131313;
        font-size: 1.750rem
    }

    .main_visual .swiper-use-wrap {
        top: -60px
    }

    .main_visual .swiper-use-wrap .inner {
        display: flex;
        align-items: center
    }

    .main_visual .swiper-pagination,
    .main_visual .swiper-scrollbar,
    .main_visual .btn_pause {
        position: static
    }

    .main_visual .btn_pause {
        margin-left: 5px
    }

    .main_visual .swiper-button-prev,
    .main_visual .swiper-button-next {
        top: 40vw;
        transform: translateY(-50%);
        background: rgba(0, 0, 0, 0.8)
    }

    .main_visual .swiper-button-prev {
        left: 0
    }

    .main_visual .swiper-button-next {
        right: 0
    }
}

/*event*/
.main_event_wrap {
    width: 100%;
    overflow: hidden
}

.main_event_wrap .main_event_tab_menu .inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 50px 15px
}

.main_event_wrap .main_txt {
    margin-left: 40px
}

.main_event_wrap .main_event_tab_con {
    background: #F7F7F7
}

.main_event_wrap .main_event_tab_con .inner {
    padding: 100px 0;
    height: 100%
}

.main_event_wrap .main_event_tab_con .main_event_slide {
    padding-left: 45%;
}

.main_event_wrap .main_event_tab_con .main_event_slide_item {
    position: relative;
    z-index: 1
}

.main_event_wrap .main_event_tab_con .main_event_slide_item a {
    width: 100%
}

.main_event_wrap .main_event_tab_con .main_event_slide_item .category_wrap {
    margin-bottom: 44px
}

.main_event_wrap .main_event_tab_con .main_event_slide_item .img_wrap img {
    width: 100%;
    transform: scale(0.8)
}

.main_event_wrap .main_event_tab_con .main_event_slide_item .txt_wrap {
    width: 170%;
    height: 100%;
    position: absolute;
    left: -170%;
    top: 0;
    background: #F7F7F7;
    z-index: 1;
    opacity: 0;
    padding: 20px 25px 30px 0
}

.main_event_wrap .main_event_tab_con .main_event_slide_item .tit {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 50px
}

.main_event_wrap .main_event_tab_con .main_event_slide_item .txt {
    font-size: 1.375rem;
    margin-bottom: 15px;
    display: flex;
}

.main_event_wrap .main_event_tab_con .main_event_slide_item .txt .txt01 {
    flex-shrink: 0;
    margin-right: 5px
}

.main_event_wrap .main_event_tab_con .main_event_slide_item.swiper-slide-active {
    z-index: 2
}

.main_event_wrap .main_event_tab_con .main_event_slide_item.swiper-slide-active .txt_wrap {
    opacity: 1
}

.main_event_wrap .main_event_tab_con .main_event_slide_item.swiper-slide-active .txt_wrap:after {
    content: "";
    width: 50vw;
    height: 100%;
    position: absolute;
    left: -49.99vw;
    top: 0;
    background: #f7f7f7;
    z-index: 2
}

.main_event_wrap .main_event_tab_con .main_event_slide_item.swiper-slide-active .img_wrap {
    box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.5);
    border-radius: 20px
}

.main_event_wrap .main_event_tab_con .main_event_slide_item.swiper-slide-active .img_wrap img {
    transform: scale(1)
}

.main_event_wrap .swiper-use-wrap {
    position: absolute;
    left: 0;
    bottom: 30px;
    width: 420px;
    z-index: 10
}

.main_event_wrap .swiper-button-next,
.main_event_wrap .swiper-button-prev {
    top: -10px;
    left: auto;
    right: 0;
    z-index: 20 !important;
    width: 45px;
    height: 45px;
    background: transparent;
    border-radius: 50%;
    border: solid 1px #131313;
    opacity: 1;
    margin-top: 0
}

.main_event_wrap .swiper-button-next:after,
.main_event_wrap .swiper-button-prev:after {
    color: #131313;
    font-size: 1rem
}

.main_event_wrap .swiper-button-next.swiper-button-disabled,
.main_event_wrap .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.main_event_wrap .swiper-button-prev {
    right: 55px
}

.main_event_wrap .swiper-scrollbar {
    opacity: 1 !important;
    display: block;
    background: rgba(0, 0, 0, 0.2);
    width: 200px;
    position: absolute;
    left: auto;
    right: 160px;
    top: 8px;
    transition-duration: initial !important
}

.main_event_wrap .swiper-scrollbar-drag {
    background: rgba(0, 0, 0, 1)
}

.main_event_wrap .swiper-pagination {
    display: inline-flex;
    justify-content: center;
    position: absolute;
    left: 0;
    top: -4px;
    color: #131313;
    font-size: 1.250rem;
    width: 60px;
    height: 30px
}

.main_event_wrap .swiper-pagination * {
    opacity: 0.5
}

.main_event_wrap .swiper-pagination .swiper-pagination-current {
    color: #131313;
    opacity: 1
}

.main_event_wrap .btn_pause {
    width: 25px;
    height: 20px;
    position: absolute;
    right: 125px;
    top: 0;
    background: url("/resource/templete/royal/img/common/ic_pause.png") no-repeat center / 50% auto
}

.main_event_wrap .btn_pause.on {
    background: url("/resource/templete/royal/img/common/ic_play.png") no-repeat center
}

@media screen and (max-width: 1024px) {
    .main_event_wrap .main_event_tab_con .inner {
        padding: 60px 0
    }

    .main_event_wrap .main_event_tab_menu .inner {
        justify-content: flex-end;
        padding-bottom: 20px
    }

    .main_event_wrap .main_txt {
        margin-left: 0;
        margin-top: 15px
    }

    .main_event_wrap .tab_menu {
        margin-top: 30px
    }

    .main_event_slide {
        padding: 0
    }

    .main_event_wrap .main_event_tab_con .main_event_slide {
        padding: 0 20px
    }

    .main_event_wrap .main_event_tab_con .main_event_slide_item .txt_wrap {
        position: static;
        width: 100%;
        padding: 20px 15px
    }

    .main_event_wrap .main_event_tab_con .main_event_slide_item .img_wrap {
        max-width: 500px;
        margin: 0 auto 10px
    }

    .main_event_wrap .main_event_tab_con .main_event_slide_item .img_wrap img {
        transform: scale(1);
    }

    .main_event_wrap .main_event_tab_con .main_event_slide_item .txt_wrap:after {
        display: none
    }

    .main_event_wrap .main_event_tab_con .main_event_slide_item .category_wrap {
        margin-bottom: 15px
    }

    .main_event_wrap .main_event_tab_con .main_event_slide_item .tit {
        margin-bottom: 15px;
        font-size: 1.875rem
    }

    .main_event_wrap .main_event_tab_con .main_event_slide_item .txt {
        font-size: 1.125rem
    }

    .main_event_wrap .swiper-use-wrap {
        width: 460px;
        max-width: 90%;
        height: 45px;
        left: 50%;
        transform: translateX(-50%)
    }

    .main_event_wrap .swiper-use-wrap .inner {
        padding: 0 110px 0 0;
        display: flex;
        align-items: center
    }

    .main_event_wrap .swiper-button-next,
    .main_event_wrap .swiper-button-prev {
        top: 0
    }

    .main_event_wrap .swiper-use-wrap .inner .swiper-scrollbar,
    .main_event_wrap .swiper-use-wrap .inner .swiper-pagination,
    .main_event_wrap .swiper-use-wrap .inner .btn_pause {
        position: static
    }

    .main_event_wrap .swiper-use-wrap .inner .swiper-scrollbar {
        width: 100%
    }

    .main_event_wrap .swiper-use-wrap .inner .swiper-pagination,
    .main_event_wrap .swiper-use-wrap .inner .btn_pause {
        flex-shrink: 0
    }

    .main_event_wrap .swiper-use-wrap .inner .btn_pause {
        margin-left: 5px
    }
}

/*news & banner*/
.main_section02 .inner {
    display: flex
}

.main_section02 .inner .left {
    width: 55%;
    position: relative;
    margin-right: 50px
}

.main_section02 .inner .right {
    width: 45%;
    position: relative;
    flex-shrink: 0;
}

.main_section02 .inner .main_tit_wrap {
    padding: 0 0 40px
}

.contents_main .main_board_wrap .main_tit_wrap {
    border-bottom: solid 1px #131313;
    width: 100%;
    flex-shrink: 0
}

.contents_main .main_board_wrap .tab_menu {
    height: 45px;
    position: absolute;
    right: 0;
    top: 0;
    align-items: center;
    justify-content: flex-end;
    z-index: 1;
}

.contents_main .main_board_wrap .tab_menu .tab_link {
    flex-shrink: inherit
}

.contents_main .main_board_wrap .tab_menu .tab_link a {
    font-size: 1rem;
    height: 40px;
}

.contents_main .main_board_wrap,
.contents_main .main_board_wrap .tab_con_wrap,
.contents_main .main_board_wrap .tab_con {
    height: 100%
}

.contents_main .main_board_wrap .tab_con.current {
    display: flex;
    flex-flow: column nowrap
}

.contents_main .main_board_wrap .tab_con .list {
    /* 	height: 100% */
    height: 420px;
}

.contents_main .main_board_wrap .tab_con .item {
    width: 100%;
    height: 20%;
    border-bottom: dashed 1px #DFDFDF
}

.contents_main .main_board_wrap .tab_con .list .item:last-child {
    border-bottom: solid 1px #131313
}

.contents_main .main_board_wrap .tab_con .item a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 25px
}

.contents_main .main_board_wrap .tab_con .item .mark {
    flex-shrink: 0;
    margin-right: 30px;
    font-size: 1rem;
    background: #272526;
    color: #fff;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 15px;
    font-weight: 500;
    border-radius: 15px
}

.contents_main .main_board_wrap .tab_con .item .tit {
    width: 100%
}

.contents_main .main_board_wrap .tab_con .item .date {
    flex-shrink: 0;
    margin-left: 30px;
    color: #A4A4A4;
    font-size: 0.875rem
}

.contents_main .main_board_wrap .tab_con .item a:hover,
.contents_main .main_board_wrap .tab_con .item a:focus {
    background: #f8f8f8
}

.contents_main .main_board_wrap .tab_con .item a:hover .tit,
.contents_main .main_board_wrap .tab_con .item a:focus .tit,
.contents_main .main_board_wrap .tab_con .item a:hover .date,
.contents_main .main_board_wrap .tab_con .item a:focus .date {
    font-weight: 500
}

.main_banner_wrap {
    overflow: hidden
}

.main_banner_wrap .banner_slide_item a,
.main_banner_wrap .banner_slide_item img {
    width: 100%;
    display: block
}

.main_banner_wrap .swiper-use-wrap {
    width: 100%;
    position: absolute;
    left: 0;
    top: 20px
}

.main_banner_wrap .swiper-button-next,
.main_banner_wrap .swiper-button-prev {
    top: 0;
    left: auto;
    right: 0;
    z-index: 20 !important;
    width: 20px;
    height: 20px;
    opacity: 1;
    margin-top: 0
}

.main_banner_wrap .swiper-button-next:after,
.main_banner_wrap .swiper-button-prev:after {
    color: #131313;
    font-size: 0.875rem
}

.main_banner_wrap .swiper-button-next.swiper-button-disabled,
.main_banner_wrap .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.main_banner_wrap .swiper-button-prev {
    right: 60px
}

.main_banner_wrap .swiper-pagination {
    display: inline-flex;
    justify-content: flex-end;
    align-items: center;
    position: absolute;
    left: auto;
    transform: translateX(0);
    right: 90px;
    top: 0;
    color: #131313;
    font-size: 1rem;
    width: 50px;
    height: 20px;
    z-index: 10
}

.main_banner_wrap .swiper-pagination * {
    opacity: 0.5
}

.main_banner_wrap .swiper-pagination .swiper-pagination-current {
    color: #131313;
    opacity: 1
}

.main_banner_wrap .btn_pause {
    width: 20px;
    height: 20px;
    position: absolute;
    right: 30px;
    top: 0;
    background: url("/resource/templete/royal/img/common/ic_pause.png") no-repeat center / 50% auto
}

.main_banner_wrap .btn_pause.on {
    background: url("/resource/templete/royal/img/common/ic_play.png") no-repeat center
}

@media screen and (max-width: 1024px) {
    .main_section02 .inner .main_tit_wrap {
        padding: 0 0 20px
    }

    .main_section02 .inner {
        display: block
    }

    .main_section02 .inner .left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 60px
    }

    .main_section02 .inner .right {
        width: 100%
    }

    .contents_main .main_board_wrap .tab_menu {
        position: static;
        margin-bottom: 20px
    }

    .contents_main .main_board_wrap .tab_menu .tab_link:first-child {
        margin-left: 0
    }

    .contents_main .main_board_wrap .tab_con .item a {
        padding: 20px 10px
    }

    .contents_main .main_board_wrap .tab_con .item .mark {
        margin-right: 10px
    }

    .contents_main .main_board_wrap .tab_con .item .date {
        margin-left: 10px
    }
}

/* [E] main */

/* [S] sub main */
/*sub common*/
.sub_section {
    padding: 100px 0
}

.circle_ic {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #131313;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.circle_ic img {
    max-height: 50%;
    max-width: 60%;
    filter: brightness(30)
}

.circle_ic+.circle_ic {
    margin-left: 5px
}

/*sub_main_visual*/
.sub_main_visual {
    position: relative;
}

.sub_main_visual .img_wrap {
    position: relative
}

.sub_main_visual .img_wrap:after {
    content: "";
    background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    width: 100%;
    height: 30%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 1
}

.sub_main_visual .img_wrap img {
    width: 100%
}

.sub_main_visual .txt_wrap {
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    width: 100%;
    text-align: center;
    padding: 150px 15px 50px;
    z-index: 2;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5)
}

.sub_main_visual .txt_wrap .txt_small {
    font-size: 1.5rem;
    font-weight: 300;
    margin-bottom: 30px;
    letter-spacing: 5px
}

.sub_main_visual .txt_wrap .txt_big {
    font-size: 4rem;
    font-weight: bold
}

/*sub_quick*/
.sub_quick_wrap .inner {
    display: flex
}

.sub_quick_wrap .tit_wrap {
    flex-shrink: 0;
    margin-right: 20px
}

.sub_quick_wrap .tit_wrap .tit {
    font-size: 1.750rem;
    font-weight: bold;
    margin-bottom: 15px
}

.sub_quick_wrap .tit_wrap .txt {
    font-size: 1rem;
    font-weight: 300;
    color: #333;
    line-height: +1.5
}

.sub_quick_wrap .sub_quick {
    width: 100%
}

.sub_quick_wrap .sub_quick .list {
    display: flex;
    justify-content: space-around
}

.sub_quick_wrap .sub_quick .ic_wrap {
    height: 50px;
    text-align: center;
    margin-bottom: 25px
}

.sub_quick_wrap .sub_quick .ic_wrap img {
    max-height: 100%
}

.sub_quick_wrap .sub_quick .txt_wrap {
    font-size: 1.250rem;
    font-weight: 500
}

.tombs_map_wrap {
    background: #fffefc
}

.tombs_map_wrap .inner {
    display: flex;
    justify-content: space-between
}

.tombs_map_wrap .inner .left .tit {
    font-size: 2.250rem;
    font-weight: bold;
    margin: 8px 0
}

.tombs_map_wrap .inner .left .btn_wrap {
    margin-top: 40px
}

.tombs_map_wrap .inner .right {
    display: inline-block;
    position: relative
}

.tombs_map_wrap .inner .right .tombs_map {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.tombs_map_wrap .inner .right .tombs_map .map_link {
    position: absolute;
    transform: translate(-50%, -50%);
    border-radius: 15px
}

.tombs_map_wrap .inner .right .tombs_map .map01 {
    width: 8.5%;
    height: 4.5%;
    left: 20.2%;
    top: 33.5%;
}

.tombs_map_wrap .inner .right .tombs_map .map02 {
    width: 8.5%;
    height: 4.5%;
    left: 30.5%;
    top: 32.8%;
}

.tombs_map_wrap .inner .right .tombs_map .map03 {
    width: 9.2%;
    height: 4.5%;
    left: 24%;
    top: 43.8%;
}

.tombs_map_wrap .inner .right .tombs_map .map04 {
    width: 8.5%;
    height: 4.5%;
    left: 11%;
    top: 49.5%;
}

.tombs_map_wrap .inner .right .tombs_map .map05 {
    width: 9.2%;
    height: 4.5%;
    left: 30.1%;
    top: 51.5%;
}

.tombs_map_wrap .inner .right .tombs_map .map06 {
    width: 8.5%;
    height: 4.5%;
    left: 47.8%;
    top: 38%;
}

.tombs_map_wrap .inner .right .tombs_map .map07 {
    width: 9.5%;
    height: 4.5%;
    left: 76.5%;
    top: 32.4%;
}

.tombs_map_wrap .inner .right .tombs_map .map08 {
    width: 9.5%;
    height: 4.5%;
    left: 77.2%;
    top: 47.2%;
}

.tombs_map_wrap .inner .right .tombs_map .map09 {
    width: 14%;
    height: 4.5%;
    left: 84.8%;
    top: 51.8%;
}

.tombs_map_wrap .inner .right .tombs_map .map10 {
    width: 9.5%;
    height: 4.5%;
    left: 68%;
    top: 51.8%;
}

.tombs_map_wrap .inner .right .tombs_map .map11 {
    width: 12.5%;
    height: 4.5%;
    left: 48.5%;
    top: 48.7%;
}

.tombs_map_wrap .inner .right .tombs_map .map12 {
    width: 8.2%;
    height: 4.3%;
    left: 43.2%;
    top: 53.7%;
}

.tombs_map_wrap .inner .right .tombs_map .map13 {
    width: 8.3%;
    height: 4.3%;
    left: 58.1%;
    top: 55.1%;
}

.tombs_map_wrap .inner .right .tombs_map .map14 {
    width: 12.5%;
    height: 4.5%;
    left: 62%;
    top: 71.6%;
}

.tombs_map_wrap .inner .right .tombs_map .map15 {
    width: 12.5%;
    height: 4.5%;
    left: 64.1%;
    top: 79.3%;
}

.tombs_map_wrap .inner .right .tombs_map .map16 {
    width: 12.8%;
    height: 4.5%;
    left: 47.8%;
    top: 90%;
}

.tombs_map_wrap .inner .right .tombs_map .map17 {
    width: 11.8%;
    height: 4.5%;
    left: 83.8%;
    top: 74.5%;
}

.tombs_map_wrap .inner .right .tombs_map .map18 {
    width: 8.5%;
    height: 4.3%;
    left: 83.7%;
    top: 79.5%;
}

.tombs_map_wrap .inner .right .tombs_map .map19 {
    width: 8.5%;
    height: 4.3%;
    left: 12.1%;
    top: 15.4%;
}

.tombs_map_wrap .inner .right .tombs_map .map20 {
    width: 8.5%;
    height: 4.3%;
    left: 12.1%;
    top: 20.4%;
}

/*sub_main_menu*/
.sub_main_menu {
    background: #F7F7F7
}

.sub_main_menu .item {
    margin-bottom: 50px
}

.sub_main_menu .item:last-child {
    margin-bottom: 0
}

.sub_main_menu .item a {
    width: 100%;
    display: flex;
    align-items: flex-end
}

.sub_main_menu .item .img_wrap {
    width: 100%
}

.sub_main_menu .item .txt_wrap {
    width: 380px;
    flex-shrink: 0;
    padding: 10px 35px
}

.sub_main_menu .item .txt_wrap .txt_small {
    font-size: 1rem;
    font-weight: 300;
    color: #333;
    margin-bottom: 5px
}

.sub_main_menu .item .txt_wrap .txt_big {
    font-size: 2.250rem;
    font-weight: bold
}

.sub_main_menu .item:nth-child(even) a {
    flex-direction: row-reverse;
    text-align: right
}

/*sub_main_bd_wrap*/
.sub_main_bd_wrap .inner {
    display: flex
}

.sub_main_bd_wrap .left {
    width: 60%;
    background: #F7F7F7;
    padding: 40px 50px;
    display: flex;
    flex-flow: column nowrap
}

.sub_main_bd_wrap .left .tit_wrap {
    display: flex;
    justify-content: space-between;
    padding-bottom: 15px;
    border-bottom: solid 1px #131313;
    flex-shrink: 0
}

.sub_main_bd_wrap .left .tit_wrap .tit {
    font-size: 1.750rem;
    font-weight: bold
}

.sub_main_bd_wrap .sub_main_bd {
    height: 100%
}

.sub_main_bd_wrap .sub_main_bd .item {
    height: 25%;
    min-height: 60px
}

.sub_main_bd_wrap .sub_main_bd .item a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0
}

.sub_main_bd_wrap .sub_main_bd .item .mark,
.sub_main_bd_wrap .sub_main_bd .item .shortcut {
    font-size: 0.938rem;
    flex-shrink: 0;
    width: 80px;
    height: 30px;
    border-radius: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.sub_main_bd_wrap .sub_main_bd .item .mark {
    margin-right: 20px
}

.sub_main_bd_wrap .sub_main_bd .item .shortcut {
    margin-left: 20px;
    border: solid 1px #000
}

.sub_main_bd_wrap .sub_main_bd .item .tit {
    font-size: 1.250rem;
    font-weight: 500;
    text-align: left;
    width: 100%
}

.sub_main_bd_wrap .sub_main_bd .item a:focus .tit,
.sub_main_bd_wrap .sub_main_bd .item a:hover .tit {
    font-weight: 600;
    text-decoration: underline;
    text-underline-position: under
}

.sub_main_bd_wrap .sub_main_bd .item a:focus .shortcut,
.sub_main_bd_wrap .sub_main_bd .item a:hover .shortcut {
    background: #000;
    color: #fff
}

.sub_main_bd_wrap .right {
    width: 40%
}

.sub_main_banner {
    overflow: hidden;
    position: relative
}

.sub_main_banner .banner_slide_item a,
.sub_main_banner .banner_slide_item img {
    width: 100%;
    display: block
}

.sub_main_banner .swiper-use-wrap {
    width: 190px;
    height: 50px;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 10;
    display: inline-flex;
    align-items: center;
    justify-content: space-around;
    background: rgba(0, 0, 0, 0.6)
}

.sub_main_banner .swiper-button-next,
.sub_main_banner .swiper-button-prev {
    position: static;
    z-index: 20 !important;
    width: 20px;
    height: 20px;
    opacity: 1;
    margin-top: 0
}

.sub_main_banner .swiper-button-next:after,
.sub_main_banner .swiper-button-prev:after {
    color: #fff;
    font-size: 0.875rem
}

.sub_main_banner .swiper-button-next.swiper-button-disabled,
.sub_main_banner .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.sub_main_banner .swiper-pagination {
    display: inline-flex;
    justify-content: flex-end;
    align-items: center;
    color: #fff;
    font-size: 1rem;
    width: 50px;
    height: 20px;
    z-index: 10;
    position: static
}

.sub_main_banner .swiper-pagination * {
    opacity: 0.5
}

.sub_main_banner .swiper-pagination .swiper-pagination-current {
    color: #fff;
    opacity: 1
}

.sub_main_banner .btn_pause {
    width: 20px;
    height: 20px;
    background: url("/resource/templete/royal/img/common/ic_pause.png") no-repeat center / 50% auto;
    filter: brightness(30)
}

.sub_main_banner .btn_pause.on {
    background: url("/resource/templete/royal/img/common/ic_play.png") no-repeat center / 60% auto;
    filter: brightness(30)
}

/*survey_box*/
.survey_box {
    width: 100%;
    border: solid 1px #ECECEC;
    padding: 45px 40px
}

.survey_box .top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 40px
}

.survey_box .tit_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.survey_box .tit_wrap .ic_q {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #D9D9D9;
    flex-shrink: 0;
    margin-right: 10px
}

.survey_box .tit_wrap .tit {
    color: #444444;
    font-size: 1rem
}

.survey_box .radio_wrap {
    color: #444444;
    font-size: 1rem
}

.survey_box .radio_wrap span {
    margin-left: 30px;
    display: inline-flex
}

.survey_box .radio_wrap span label {
    margin-left: 10px
}

.survey_box .input_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.survey_box .input_wrap input {
    width: 100%;
    height: 40px;
    background: #F8F8F8;
    border: solid 1px #EAEAEA
}

.survey_box .input_wrap .btn {
    width: 120px;
    height: 40px;
    cursor: pointer;
    font-size: 1rem;
    color: #fff;
    background: #131313;
    flex-shrink: 0;
    margin-left: 30px
}

@media screen and (max-width: 1024px) {
    .sub_section {
        padding: 60px 0
    }

    .sub_main_visual {
        height: 400px
    }

    .sub_main_visual .img_wrap {
        height: 100%;
    }

    .sub_main_visual .img_wrap img {
        object-fit: cover;
        object-position: center;
        width: 100%;
        height: 100%
    }

    .sub_main_visual .txt_wrap {
        padding: 100px 15px 50px
    }

    .sub_quick_wrap .inner {
        flex-wrap: wrap
    }

    .sub_quick_wrap .tit_wrap {
        width: 100%;
        margin-right: 0;
        text-align: center;
        margin-bottom: 20px
    }

    .sub_quick_wrap .sub_quick .list {
        flex-wrap: wrap
    }

    .sub_quick_wrap .sub_quick .item {
        width: 33.3333%;
        text-align: center;
        padding: 15px 10px
    }

    .tombs_map_wrap {
        padding-top: 0
    }

    .tombs_map_wrap .inner {
        display: block
    }

    .tombs_map_wrap .inner .left {
        margin-bottom: 50px
    }

    .sub_main_menu .item a {
        display: block;
        position: relative
    }

    .sub_main_menu .item .img_wrap {
        width: 100%;
        height: 200px
    }

    .sub_main_menu .item .img_wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center
    }

    .sub_main_menu .item .txt_wrap {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        display: flex;
        align-content: center;
        flex-wrap: wrap;
        padding: 10px 30px;
        background: linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 80%);
    }

    .sub_main_menu .item .txt_wrap .txt_big {
        color: #fff;
        width: 100%
    }

    .sub_main_menu .item .txt_wrap .txt_small {
        color: #fff;
        width: 100%
    }

    .sub_main_bd_wrap .inner {
        display: block
    }

    .sub_main_bd_wrap .left,
    .sub_main_bd_wrap .right {
        width: 100%
    }

    .sub_main_bd_wrap .sub_main_bd .item a {
        padding: 20px 0
    }

    .survey_box .top {
        flex-wrap: wrap
    }

    .survey_box .tit_wrap {
        margin-bottom: 15px
    }

    .survey_box .radio_wrap {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: 100%
    }

    .survey_box .radio_wrap span:first-child {
        margin-left: 0
    }

}

@media screen and (max-width: 800px) {
    .sub_main_bd_wrap .left {
        padding: 20px
    }

    .survey_box {
        padding: 30px 20px
    }

    .survey_box .top {
        margin-bottom: 20px
    }

    .survey_box .radio_wrap {
        flex-wrap: wrap
    }

    .survey_box .radio_wrap span {
        margin-left: 0;
        width: 33.3333%;
        justify-content: flex-start;
        padding: 5px
    }

    .survey_box .input_wrap .btn {
        margin-left: 5px
    }
}

/* [E] sub main */

/* [S] sub */
/*common*/
.contents_sub .inner {
    padding-top: 40px;
    display: flex
}

.contents_sub .contents_inn {
    width: 100%
}

.contents_sub #lnbInclude+.contents_inn,
.contents_sub .lnb_wrap+.contents_inn {
    width: calc(100% - 390px)
}

.contents_sub .sub_tit_wrap {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 20px
}

.contents_sub .sub_tit_wrap .tit {
    font-size: 2.125rem;
    font-weight: bold
}

.contents_sub .sub_txt_wrap {
    font-size: 0.938rem;
    color: #333;
    line-height: +1.5;
    margin-bottom: 20px
}

.contents_sub .sub_con_tit {
    font-size: 1.625rem;
    font-weight: bold;
    color: #131313;
    margin: 55px 0 30px
}

.info_txt {
    font-size: 0.938rem
}

.sub_menu_tab {
    display: flex;
    border-bottom: solid 1px #AEAEAE
}

.sub_menu_tab .swiper-slide {
    flex: 1;
    flex-shrink: initial;
    text-align: center
}

.sub_menu_tab .swiper-slide a {
    padding: 20px 15px 15px;
    border-bottom: solid 4px transparent;
    font-size: 1.125rem;
    color: #333
}

.sub_menu_tab .swiper-slide.current a {
    border-bottom: solid 4px #131313;
    color: #131313;
    font-weight: bold
}

.sub_con_section {
    padding-top: 55px
}

.sub_con_section .tab_con .txt_section_tit_wrap {
    margin-top: 0
}

.sub_con_section .txt_section_tit_wrap {
    display: flex;
    margin-top: 60px
}

.sub_con_section .txt_section_tit_wrap .txt_section_tit {
    width: 28%;
    flex-shrink: 0;
    padding-right: 15px
}

.sub_con_section .txt_section_tit {
    font-weight: bold;
    font-size: 1.625rem;
    margin-bottom: 30px;
    position: relative
}

.sub_con_section .txt_section_tit.bar {
    padding-top: 20px
}

.sub_con_section .txt_section_tit.bar:after {
    content: "";
    width: 30px;
    height: 4px;
    background: #131313;
    position: absolute;
    left: 0;
    top: 0
}

.sub_con_section .txt_section_txt {
    font-size: 1.125rem;
    line-height: +1.7
}

.sub_con_section .txt_section_txt+.table {
    margin-top: 40px
}

.sub_con_section .img_section_wrap {
    border: 1px solid #DADADA;
    text-align: center
}

.sub_con_section .img_section_info {
    margin-left: 20px;
    padding-left: 20px;
    border-left: solid 2px #DADADA;
    margin-top: 20px
}

.sub_con_section .img_section_info .img_info_tit {
    font-weight: 600;
    font-size: 1.125rem
}

.sub_con_section .img_section_info .img_info_txt {
    font-size: 1rem;
    line-height: +1.7;
    margin-top: 10px
}

.sub_con_section .txt_section {
    margin-bottom: 55px;
    position: relative;
    padding-left: 30px
}

.sub_con_section .txt_section:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 1.750rem;
    background: url("/resource/templete/royal/img/common/ic_check_txt.png") no-repeat center / 100% auto
}

.sub_con_section .txt_section:last-child {
    margin-bottom: 0
}

.sub_con_section .txt_wrap {
    line-height: +1.55;
    font-size: 1.125rem;
    color: #131313
}

.sub_con_section .info_txt {
    color: #444 !important;
    font-size: 0.938rem !important;
;
    font-weight: bold !important;
;
    margin-top: 15px;
    width: 100%
}

.sub_con_section .box_wrap {
    background: #F8F8F8;
    border: solid 1px #EAEAEA;
    padding: 30px;
    margin-top: 30px
}

.sub_con_section .bd_wrap .list>.item,
.sub_con_section .list_wrap .list>.item,
.sub_con_section .box_wrap .list>.item {
    color: #333;
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 20px;
    line-height: +1.5
}

.sub_con_section .bd_wrap .list>.item:last-child,
.sub_con_section .list_wrap .list>.item:last-child,
.sub_con_section .box_wrap .list>.item:last-child {
    margin-bottom: 0
}

.sub_con_section .bd_wrap .list>.item>.list,
.sub_con_section .list_wrap .list>.item>.list,
.sub_con_section .box_wrap .list>.item>.list {
    padding: 10px 17px 0
}

.sub_con_section .bd_wrap .list>.item.dot_item>.list,
.sub_con_section .list_wrap .list>.item.dot_item>.list,
.sub_con_section .box_wrap .list>.item.dot_item>.list {
    padding-left: 0
}

.sub_con_section .bd_wrap .list>.item>.list .item,
.sub_con_section .list_wrap .list>.item>.list .item,
.sub_con_section .box_wrap .list>.item>.list .item {
    color: #444;
    font-size: 0.938rem;
    margin-bottom: 8px;
    font-weight: 400
}

.sub_con_section .bd_wrap.sb,
.sub_con_section .box_wrap.sb {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.sub_con_section .bd_wrap .bd_wrap_txt,
.sub_con_section .list_wrap .bd_wrap_txt,
.sub_con_section .box_wrap .bd_wrap_txt {
    line-height: +1.7
}

.sub_con_section .bd_wrap .txt_section,
.sub_con_section .list_wrap .txt_section,
.sub_con_section .box_wrap .txt_section {
    margin-bottom: 30px
}

.sub_con_section .bd_wrap .txt_section:last-child,
.sub_con_section .list_wrap .txt_section:last-child,
.sub_con_section .box_wrap .txt_section:last-child {
    margin-bottom: 0
}

.sub_con_section .bd_wrap .txt_section .list,
.sub_con_section .list_wrap .txt_section .list,
.sub_con_section .box_wrap .txt_section .list {
    margin-top: 10px
}

.sub_con_section .bd_wrap .txt_section .list>.item,
.sub_con_section .list_wrap .txt_section .list>.item,
.sub_con_section .box_wrap .txt_section .list>.item {
    margin-bottom: 10px
}

.sub_con_section .table th,
.sub_con_section .table td {
    font-size: 0.938rem;
    height: 55px;
    padding: 5px 10px
}

.sub_con_section2 {
    padding-top: 40px
}

.sub_con_section2 .txt_section_tit {
    font-weight: bold;
    font-size: 1.250rem;
    margin-bottom: 15px;
    position: relative
}

.sub_con_section2 .txt_section_txt {
    font-size: 1rem;
    line-height: +1.7;
    color: #333
}

@media screen and (max-width: 1024px) {
    .sub_menu_tab .swiper-slide {
        flex: initial;
        width: auto;
        flex-shrink: 0
    }

    .contents_sub .sub_tit_wrap {
        flex-wrap: wrap;
        justify-content: flex-end
    }

    .contents_sub .sub_tit_wrap .tit {
        width: 100%;
        margin-bottom: 10px
    }

    .sub_con_section .box_wrap {
        padding: 20px 15px;
        margin-top: 30px
    }

    .sub_con_section .bd_wrap .list>.item>.list,
    .sub_con_section .list_wrap .list>.item>.list,
    .sub_con_section .box_wrap .list>.item>.list {
        padding: 10px 5px 0
    }

    .sub_con_section .info_txt {
        font-size: 0.875rem !important;
    }


    .sub_con_section .table th,
    .sub_con_section .table td {
        font-size: 0.875rem;
        padding: 5px
    }
}

@media screen and (max-width: 800px) {
    .sub_con_section .box_wrap.m_box img {
        width: 25%
    }
}

/* [S] board_detail_wrap */
.detail_con {
    padding: 0 20px;
    height: 60px;
    display: flex;
    align-items: center;
    border-bottom: solid 1px #EAEAEA
}

.board_detail_tit {
    font-size: 1.250rem;
    font-weight: 600;
}

.board_detail_info {
    font-size: 1.125rem;
    font-weight: 500;
    color: #888
}

.board_detail_txt {
    padding: 60px;
    height: auto;
    display: block;
}

.board_detail_txt img,
.board_detail_txt video,
.board_detail_txt iframe {
    max-width: 100% !important;
}

.board_detail_file {
    background: #F8F8F8;
    padding: 10px 0;
    display: flex
}

.board_detail_file .file_tit {
    width: 100px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    color: #666666;
    border-right: solid 1px #DADADA;
    flex-shrink: 0
}

.board_detail_file .file_list {
    padding: 0 20px
}

.board_detail_file .file_item {
    padding: 10px 0;
    display: flex
}

.board_detail_file .file_item .ic_wrap {
    flex-shrink: 0;
    width: 45px;
    display: flex
}

.board_detail_file .file_item .ic_wrap a {
    flex-shrink: 0;
    width: 50%;
    text-align: center
}

.board_detail_file .file_item img {
    position: relative;
    top: -0.1em
}

@media screen and (max-width: 800px) {
    .contents_sub .sub_tit_wrap .tit {
        font-size: 1.5rem
    }

    .board_detail_txt {
        padding: 30px 20px
    }

    .board_detail_info .info {
        font-size: 0.875rem
    }

    .board_detail_info .info img {
        width: 15px
    }
}

/* [E] board_detail_wrap */

/* [S] prev_next_wrap */
.prev_next_wrap {
    padding: 0;
}

.prev_next_wrap li {
    width: 100%;
    height: 60px;
    line-height: 60px;
    color: #444;
    border-bottom: 1px solid #dfdfdf;
    padding: 0 20px;
    display: flex;
    align-items: center
}

.prev_next_wrap li:last-child {
    border-bottom: none
}

.prev_next_wrap li .left {
    width: 100px;
    padding-right: 35px
}

.prev_next_wrap li .prev {
    background: url("/resource/templete/royal/img/sub/icon_board_prev.png") no-repeat right 13px center
}

.prev_next_wrap li .next {
    background: url("/resource/templete/royal/img/sub/icon_board_next.png") no-repeat right 13px center
}

.prev_next_wrap li .right {
    width: calc(100% - 95px);
    padding-left: 20px
}

.prev_next_wrap li.disabled {
    background: #EAEAEA;
    opacity: 0.7
}

.prev_next_wrap li.disabled a {
    pointer-events: none
}

.prev_next_wrap li a:hover,
.prev_next_wrap li a:focus {
    text-decoration: underline;
    text-underline-position: under
}

/* [E] prev_next_wrap */

/* [S] media_list */
.media_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px 35px;
    margin-bottom: 100px
}

.media_item .img_wrap {
    width: 100%;
    position: relative;
    border: solid 1px #DFDFDF
}

.media_item .img_wrap:after {
    content: "";
    padding-top: 57.1428%;
    display: block
}

.media_item .img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    left: 0;
    top: 0
}

.media_item .img_wrap .hid_wrap {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.66);
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    flex-wrap: wrap;
    align-content: center;
    text-align: center;
    display: none
}

.media_item .img_wrap .btn {
    width: 120px;
    height: 35px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.85);
    font-weight: 500;
    font-size: 0.938rem
}

.media_item .txt_wrap {
    line-height: +1.3;
    margin-top: 20px;
    font-weight: 500;
    font-size: 1.125rem
}

.media_item .btn_wrap {
    margin-top: 10px
}

.media_item .inn:hover .img_wrap .hid_wrap,
.media_item .inn:focus .img_wrap .hid_wrap {
    display: flex
}

.media_item .inn:hover,
.media_item .inn:focus {
    text-decoration: underline;
    text-underline-position: under
}

/* [E] media_list */

@media screen and (max-width: 1024px) {
    .lnb_wrap {
        display: none
    }

    .contents_sub #lnbInclude+.contents_inn,
    .contents_sub .lnb_wrap+.contents_inn {
        width: 100%
    }

    .sub_con_section .txt_section_tit {
        margin-bottom: 20px;
        font-size: 1.5rem
    }

    .sub_con_section2 .txt_section_tit {
        font-size: 1.125rem;
        margin-bottom: 15px
    }

    .media_list {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px
    }
}

/*서브 상단 탭 여백*/
.sub_con_wrap {
    border-top: 1px solid #EAEAEA;
}

.sub_con_pt {
    padding-top: 55px
}

/*sub visual*/
.sub_visual {
    width: 100%;
    height: 140px;
    position: relative
}

.sub_visual .img_wrap {
    width: 100%;
    height: 100%
}

.sub_visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.sub_visual .txt_wrap {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.search_tit_wrap .sub_tit,
.sub_visual .sub_tit {
    color: #fff;
    font-size: 1.75rem;
    font-weight: bold
}

/*검색조건*/
.condition_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 60px;
}

.count_wrap {
    font-size: 1rem;
    font-weight: 500;
    color: #444
}

.sch_condition_wrap {
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.sch_condition_wrap select {
    width: 130px;
    height: 50px;
    border-radius: 25px 0 0 25px;
    background-color: #EAEAEA;
    padding: 0 25px
}

.sch_condition_wrap input {
    width: 320px;
    height: 50px;
    border-radius: 0 25px 25px 0;
    background-color: #EAEAEA;
    padding: 0 25px
}

.sch_condition_wrap button {
    width: 120px;
    height: 50px;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #131313;
    margin-left: 15px
}

@media screen and (max-width: 1024px) {
    .condition_wrap {
        display: block;
        margin-bottom: 40px
    }

    .condition_wrap .left {
        width: 100%;
        margin-bottom: 20px
    }

    .sch_condition_wrap button {
        margin-left: 5px
    }
}

/*통합검색*/
.search_tit_wrap {
    width: 100%;
    background: #F8F8F8;
    text-align: center;
    padding: 60px 15px
}

.search_tit_wrap .sub_tit {
    margin-bottom: 30px
}

.search_tit_wrap .sch_ctr_wrap {
    position: absolute;
    left: 0;
    bottom: 0;
    transform: translateY(100%);
    width: 100%;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.search_tit_wrap .sch_ctr_wrap .con {
    display: inline-flex;
    align-items: center;
    font-size: 0.875rem;
    position: relative
}

.search_tit_wrap .sch_ctr_wrap .con:after {
    content: "";
    width: 1px;
    height: 0.750rem;
    background: #DDDDDD;
    margin: 0 12px
}

.search_tit_wrap .sch_ctr_wrap .con:last-child:after {
    display: none
}

.check_wrap input[type="checkbox"] {
    width: 1px;
    height: 1px;
    position: absolute;
    opacity: 0
}

.check_wrap input[type="checkbox"]+label {
    margin: 0;
    display: inline-flex;
    align-items: center
}

.check_wrap input[type="checkbox"]+label:before {
    content: "";
    width: 1rem;
    height: 1rem;
    background: #DBDBDB;
    display: inline-flex;
    margin-right: 6px;
    position: relative;
    top: 1px
}

.check_wrap input[type="checkbox"]:checked+label:before {
    background: #DBDBDB url("/resource/templete/royal/img/common/ic_check.png") no-repeat center;
}

.search_tit_wrap .sch_ctr_wrap .reset_wrap img {
    margin-right: 6px;
    position: relative;
    top: 1px
}

.sch_result_txt {
    font-size: 1.375rem;
    text-align: center;
    width: 100%;
    margin-bottom: 30px
}

.alignment_wrap {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 0.875rem;
    margin-bottom: 20px
}

.alignment_list {
    display: inline-flex;
    align-items: center;
    margin-left: 15px
}

.alignment_list .alignment_item {
    color: #A4A4A4;
    display: flex;
    align-items: center
}

.alignment_list .alignment_item:after {
    content: "";
    width: 1px;
    height: 0.750rem;
    background: #DDDDDD;
    margin: 0 12px
}

.alignment_list .alignment_item:last-child:after {
    display: none
}

.alignment_list .alignment_item.current {
    color: #131313;
    font-weight: bold
}

.sch_word {
    background: rgba(255, 204, 0, 0.4)
}

.contents_inn.sch_page .paging_wrap { margin: 100px 0}
.sch_result_wrap + .sch_result_wrap{ margin-top: 100px;}
.sch_result_wrap .sch_result_tit_wrap{ display: flex; align-items: center; justify-content: space-between;}
.sch_result_wrap .sch_result_tit_wrap .btn{ border-radius: 18px}
.sch_result_wrap .tit_wrap {
    width: 100%;
    display: flex;
    align-items: flex-end;
    margin-bottom: 12px
}

.sch_result_wrap .tit_wrap .tit {
    font-size: 2.125rem;
    font-weight: bold;
    margin-right: 15px
}

.sch_result_wrap .tit_wrap .num_wrap {
    font-size: 1.625rem;
    color: #A4A4A4
}

.sch_result_wrap .tit_wrap .num_wrap .num {
    color: #131313
}

.sch_result_list .sch_result_item {
    border-bottom: solid 1px #aeaeae
}

.sch_result_list .sch_result_item:last-child {
    border-bottom: none
}

.sch_result_list .sch_result_inn {
    display: block;
    padding: 30px 20px 30px 0
}

.sch_result_list .sch_result_inn:focus,
.sch_result_list .sch_result_inn:hover {
    background: #f8f8f8
}

.sch_result_list .sch_result_inn:focus .txt,
.sch_result_list .sch_result_inn:hover .txt {
    text-decoration: underline;
    text-underline-position: under
}

.sch_result_list .route_wrap {
    color: #053863;
    font-weight: 500;
    font-size: 1.250rem;
    margin-bottom: 15px
}

.sch_result_list .sch_result_con {
    display: flex
}

.sch_result_list .sch_result_con .img_wrap {
    width: 240px;
    margin-left: 50px;
    flex-shrink: 0
}

.sch_result_list .sch_result_con .txt.txt_line2 {
    line-height: +1.7;
    height: 3.4em
}

.sch_result_list .sch_result_con .txt.txt_line3 {
    line-height: +1.7;
    height: 5.1em
}

.sch_result_list .sch_result_con .txt.txt_line4 {
    line-height: +1.7;
    height: 6.8em
}

.sch_result_list .info_wrap {
    margin-top: 20px
}

@media screen and (max-width: 1024px) {
    .sch_result_txt {
        font-size: 1.125rem
    }

    .sch_result_wrap .tit_wrap .tit {
        font-size: 1.875rem
    }

    .sch_result_list .sch_result_con {
        display: block
    }

    .sch_result_list .sch_result_con .img_wrap {
        width: 100%;
        margin-left: 0
    }

    .sch_result_list .sch_result_con .img_wrap img {
        width: 100%;
        margin-top: 20px
    }

    .sch_result_wrap .tit_wrap .num_wrap{ font-size: 1.375rem;}
}

/*예약모아보기 - 탭*/
.reservation_tab {
    width: 100%;
    overflow: hidden;
    padding: 10px 0 30px
}

.reservation_tab .swiper-slide {
    width: auto;
    height: 50px;
    margin-right: 15px
}

.reservation_tab .swiper-slide a {
    width: 100%;
    height: 100%;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    padding: 0 20px;
}

/*예약모아보기 - 예약 리스트*/
.reservation_list_wrap {
    border-top: solid 2px #131313
}

.reservation_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 30px
}

.reservation_item {
    background: #F8F8F8;
    border: 1px solid #F1F1F1;
    padding: 30px
}

.reservation_item .ic_wrap {
    margin-bottom: 15px
}

.reservation_item .ic {
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%
}

.reservation_item .tit_wrap {
    font-weight: 600;
    font-size: 1.250rem;
    margin-bottom: 13px
}

.reservation_item .txt_wrap {
    font-size: 1rem;
    margin-bottom: 20px;
    color: #333333;
    line-height: +1.3;
    min-height: 3.9rem
}

.reservation_item .btn_wrap {
    display: flex
}

.reservation_item .btn_wrap .btn {
    background: #fff;
    font-size: 0.938rem;
    width: 130px;
    height: 40px;
}

.reservation_item .btn_wrap .btn+.btn {
    margin-left: 10px
}

@media screen and (max-width: 1024px) {
    .reservation_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px
    }

    .reservation_item .btn_wrap .btn {
        width: 50%
    }
}


/*예약모아보기 - 청소년 단체관럄*/
.reservation_teenager {
    background: #F8F8F8;
    border: 1px solid #F1F1F1;
    padding: 45px 70px;
    display: flex;
    align-items: center;
    margin-bottom: 30px
}

.reservation_teenager .img_wrap {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    flex-shrink: 0;
    background: url("/resource/templete/royal/img/common/reservation/reservation_teenager.png") no-repeat center / cover;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-right: 60px
}

.reservation_teenager .img_wrap:after {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    left: 0;
    top: 0
}

.reservation_teenager .img_wrap .img_txt {
    line-height: +1.3;
    color: #fff;
    font-size: 1.250rem;
    position: relative;
    z-index: 2;
    font-weight: 600
}

.reservation_teenager .txt_wrap .txt {
    margin-bottom: 24px
}

.reservation_teenager .txt_wrap .list {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
}

.reservation_teenager .txt_wrap .list .btn {
    width: 100%;
    height: 35px;
    background: #fff;
    border: 1px solid #000;
    font-size: 0.938rem
}

@media screen and (max-width: 1024px) {
    .reservation_teenager {
        padding: 45px 30px;
        display: block
    }

    .reservation_teenager .img_wrap {
        margin: 0 auto 30px
    }

    .reservation_teenager .txt_wrap .list {
        grid-template-columns: repeat(3, 1fr)
    }
}


/*예약모아보기 - 예약조회 취소*/
.reservation_check {
    padding: 30px 65px;
    background: url("/resource/templete/royal/img/common/reservation/reservation_check.png") no-repeat center / cover;
    position: relative
}

.reservation_check:after {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    left: 0;
    top: 0
}

.reservation_check .inn {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.reservation_check .txt_wrap {
    color: #fff
}

.reservation_check .txt_wrap .tit {
    font-weight: bold;
    font-size: 1.250rem;
    margin-bottom: 10px
}

.reservation_check .txt_wrap .txt {
    color: #fff;
    font-weight: 300;
    opacity: 0.9
}

@media screen and (max-width: 1024px) {
    .reservation_check {
        padding: 30px 30px;
        display: block
    }

    .reservation_check .inn {
        display: block
    }

    .reservation_check .btn_wrap {
        text-align: center;
        margin-top: 20px
    }
}

/*예약모아보기 - 예약상세*/
.reservation_intro {
    display: flex;
    padding-bottom: 50px;
    border-bottom: 1px dashed #EAEAEA
}

.reservation_intro .img_wrap {
    width: 375px;
    flex-shrink: 0;
    margin-right: 85px
}

.reservation_intro .sub_con_tit {
    margin-top: 0
}

.reservation_intro .ctg_wrap {
    margin-bottom: 20px
}

.reservation_intro .ctg_wrap .ctg {
    margin-top: 10px
}

.reservation_intro .txt {
    font-size: 1.125rem;
    line-height: +1.5
}

.reservation_info_item {
    display: flex;
    margin-bottom: 30px
}

.reservation_info_item .ic {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin-right: 13px;
    background: #131313;
    display: flex;
    align-items: center;
    justify-content: center
}

.reservation_info_item .tit {
    margin-right: 10px;
    flex-shrink: 0;
    font-size: 1.125rem;
    font-weight: bold;
    display: flex
}

.reservation_info_item .txt {
    font-size: 1.125rem;
    color: #444444;
    line-height: +1.5
}

.reservation_info .btn_wrap {
    margin: 60px 0
}

@media screen and (max-width: 1024px) {
    .reservation_intro {
        display: block
    }

    .reservation_intro .img_wrap {
        width: 375px;
        margin: 0 auto 30px
    }

    .reservation_intro .ctg_wrap {
        margin-bottom: 15px
    }

    .reservation_intro .sub_con_tit {
        margin: 0 0 20px
    }
}

/*예약하기 - step01*/
.reservation_step01 {
    display: flex;
    margin-top: 30px
}

.reservation_step01 .step_tit {
    font-size: 1.125rem;
    font-weight: 600;
    padding: 55px 0 30px
}

.reservation_step01 .left {
    width: 100%
}

.reservation_step01 .top {
    display: flex;
    padding-bottom: 60px;
    border-bottom: solid 1px #EAEAEA
}

.reservation_step01 .top .step_wrap {
    width: 50%;
    flex-shrink: 0
}

.reservation_step01 .right {
    width: 300px;
    flex-shrink: 0;
    margin-left: 60px
}

.reservation_step01 .right .step_wrap {
    position: sticky;
    top: 100px
}

.step01_01 .select_wrap {
    padding: 30px 20px;
    box-shadow: 0px 3px 6px #00000029
}

.step01_01 .select_item {
    margin-bottom: 30px
}

.step01_01 .select_item:last-child {
    margin-bottom: 0
}

.step01_01 .select_wrap .select_tit {
    font-weight: 500;
    margin-bottom: 15px
}

.step01_01 .select_wrap select {
    width: 100%;
    height: 50px;
    padding-left: 10px;
    background-color: #f8f8f8
}

.step01_01 .select_wrap .box {
    width: 100%;
    height: 50px;
    border-radius: 25px;
    background: #f8f8f8;
    color: #757575;
    display: flex;
    align-items: center;
    justify-content: center
}

.step01_02 {
    padding-right: 30px
}

.step01_03 .list .item {
    width: 100%;
    display: flex;
    align-items: center;
    padding: 13px 0;
    border-bottom: 1px solid #EAEAEA;
}

.step01_03 .list .item>span {
    padding: 0 5px;
    font-size: 0.875rem;
    text-align: center
}

.step01_03 .list .item .round {
    width: 20%;
    flex-shrink: 0
}

.step01_03 .list .item .time {
    width: 100%
}

.step01_03 .list .item .num {
    width: 20%;
    flex-shrink: 0;
    color: #6A6A6A
}

.step01_03 .list .item .ctg_wrap {
    width: 25%;
    flex-shrink: 0
}

.ch_wrap {
    display: flex;
    align-items: center
}

.ch_wrap .ch_item {
    display: flex;
    align-items: center;
    font-size: 0.875rem
}

.ch_wrap .ch_tit {
    padding: 0 7px;
    flex-shrink: 0
}

.ch_wrap .ch_box {
    height: 25px;
    padding: 0 10px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #045BA6;
    background: #E9F5FF;
    color: #045BA6
}

.step01_04 .step_tit {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.step01_04 .table tr th,
.step01_04 .table tr td {
    text-align: left
}

.step01_04 .table tr td {
    color: #666;
    font-weight: 500
}

@media screen and (max-width: 1024px) {
    .reservation_step01 {
        flex-flow: column-reverse;
        flex-wrap: wrap
    }

    .reservation_step01 .left,
    .reservation_step01 .right {
        width: 100%;
        margin: 0
    }

    .reservation_step01 .top {
        flex-wrap: wrap
    }

    .reservation_step01 .top .step_wrap {
        width: 100%;
        padding: 0
    }

    .reservation_step01 .step_wrap .table input[type="text"],
    .reservation_step01 .step_wrap .table input[type="password"] {
        width: 100%
    }

    .reservation_step01 .step_wrap .phone_btn {
        margin-left: 0;
        margin-top: 10px
    }
}

/*예약하기 - step02*/
.reservation_step02 {
    margin-top: 85px
}

.step02_01 {
    text-align: center;
    padding-bottom: 50px;
    border-bottom: 1px dashed #EAEAEA
}

.step02_01 .step_tit {
    font-weight: bold;
    font-size: 1.625rem;
    margin-bottom: 35px
}

.step02_01 .step_txt {
    font-size: 1.125rem;
    color: #333333
}

.step02_02 .info_txt {
    color: #444;
    margin-top: 20px
}

/*예약하기 - 팝업*/
.pop_step_tit {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 30px
}

/*공개 제한지역 출입신청 신청방법*/
.procedure_list {
    width: 100%
}

.procedure_list .procedure_item {
    width: 100%;
    padding: 30px;
    border: solid 1px #EAEAEA;
    font-size: 1.125rem;
    margin-bottom: 55px;
    position: relative
}

.procedure_list .procedure_item:after {
    content: url("/resource/templete/royal/img/common/arr_double.png");
    position: absolute;
    left: 50%;
    bottom: -20px;
    transform: translate(-50%, 100%);
}

.procedure_list .procedure_item:last-child:after {
    display: none
}

@media screen and (max-width: 1024px) {
    .procedure_list .procedure_item {
        padding: 30px 15px;
        font-size: 1rem
    }
}

/*예약조회01*/
.booking_inquiry .inquiry_tit {
    font-size: 1.625rem;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center
}

.booking_inquiry .inquiry_txt {
    font-size: 1.125rem;
    margin-bottom: 40px;
    text-align: center;
    color: #333
}

.booking_inquiry .booking_info_box {
    max-width: 580px;
    margin: 0 auto;
    padding: 40px 60px
}

.booking_inquiry .booking_info_box .tit {
    font-size: 1.250rem;
    font-weight: bold;
    margin-bottom: 40px;
    text-align: center
}

.booking_inquiry .booking_info_box .wrap {
    display: flex;
    margin-bottom: 30px
}

.booking_inquiry .booking_info_box .wrap label {
    width: 100px;
    flex-shrink: 0;
    display: flex;
    align-items: center
}

.booking_inquiry .booking_info_box .wrap .right,
.booking_inquiry .booking_info_box .wrap input {
    width: 100%
}

@media screen and (max-width: 1024px) {
    .booking_inquiry .booking_info_box {
        padding: 40px 30px
    }
}

/*예약조회02*/
.info_box_wrap+.info_box_wrap {
    margin-top: 40px
}

.info_box_wrap .info_tit {
    font-size: 1.250rem;
    font-weight: bold;
    margin-bottom: 30px;
    display: flex;
    align-items: center
}

.info_box_wrap .info_tit img {
    margin-right: 10px
}

.info_box_wrap .info_box .list .item {
    margin-bottom: 15px
}

.info_box_wrap .info_box .list .item:last-child {
    margin-bottom: 0
}

.booking.table th,
.booking.table td {
    font-size: 0.875rem
}

.booking.table td .btn+.btn {
    margin-left: 0;
    margin-top: 5px
}

@media screen and (max-width: 1024px) {
    .info_box_wrap .info_tit {
        margin-bottom: 20px
    }
}


/*예약조회03*/
.booking_detail.table th,
.booking_detail.table td {
    text-align: left;
    padding: 10px 25px
}

.booking_detail.table td .btn_wrap {
    margin-left: 10px;
    display: inline-flex
}

.booking_detail.table td .btn+.btn {
    margin-left: 5px
}

/*궁능소개 - 전시관*/
.gallery_tit_wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr)
}

.gallery_tit {
    width: 100%;
    height: 60px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem
}

.gallery_tit_wrap .tab_link {
    border: solid 1px #131313;
    border-top: none
}

.gallery_tit_wrap .tab_link.current {
    background: #131313;
    color: #fff
}

.gallery_tit_wrap .tab_link+.tab_link {
    border-left: none
}

.gallery_tit_wrap.t3 .tab_link:nth-child(3n + 1) {
    border-left: solid 1px #131313
}

.gallery_tit_wrap.t3 .tab_link:nth-child(-n + 3) {
    border-top: solid 1px #131313
}

.gallery_tit_wrap.t4 {
    grid-template-columns: repeat(4, 1fr)
}

.gallery_tit_wrap.t4 .tab_link:nth-child(4n + 1) {
    border-left: solid 1px #131313
}

.gallery_tit_wrap.t4 .tab_link:nth-child(-n + 4) {
    border-top: solid 1px #131313
}

.gallery_tit_wrap.t5 {
    grid-template-columns: repeat(5, 1fr)
}

.gallery_tit_wrap.t5 .tab_link:nth-child(5n + 1) {
    border-left: solid 1px #131313
}

.gallery_tit_wrap.t5 .tab_link:nth-child(-n + 5) {
    border-top: solid 1px #131313
}

.gallery_tit_wrap.t6 {
    grid-template-columns: repeat(6, 1fr)
}

.gallery_tit_wrap.t6 .tab_link:nth-child(6n + 1) {
    border-left: solid 1px #131313
}

.gallery_tit_wrap.t6 .tab_link:nth-child(-n + 6) {
    border-top: solid 1px #131313
}

.gallery_tab {
    margin-bottom: 40px
}

.gallery_tab .tab_link {
    width: 115px;
    height: 50px;
    flex: initial
}

.gallery_tab .tab_link+.tab_link {
    margin-left: 15px
}

.gallery_tab .tab_link a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: solid 1px #DCDFE3;
    border-radius: 25px;
    color: #888
}

.gallery_tab .tab_link.current a {
    background: #131313;
    color: #fff
}

.hall_map {
    border: solid 1px #DADADA;
    border-radius: 20px;
    position: relative;
    background: #fff
}

.marker_wrap {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.marker_wrap .marker {
    text-align: center;
    transform: translate(-50%, -50%);
    position: absolute
}

.marker_wrap .marker_num {
    width: 30px;
    height: 30px;
    background: #9B9B9B;
    border-radius: 50%;
    color: #fff;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2
}

.marker_wrap .marker_txt {
    font-size: 0.750rem;
    font-weight: 600;
    color: #9B9B9B;
    position: relative;
    z-index: 2;
    max-width: 60px;
    word-break: keep-all;
    display: inline-block;
    line-height: +1.1;
    margin-top: 5px
}

.marker_wrap .marker.current:before {
    content: "";
    width: 50px;
    height: 50px;
    position: absolute;
    left: 50%;
    top: -10px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.1)
}

.marker_wrap .marker.current .marker_num {
    background: #131313
}

.marker_wrap .marker.current .marker_txt {
    font-weight: 600;
    color: #131313
}

.hall_info {
    margin-bottom: 40px
}

.hall_info img {
    margin-right: 10px
}

.hall_slide_tab {
    border-bottom: solid 2px #131313;
    margin-bottom: 40px
}

.hall_slide_tab .tab_link {
    text-align: center
}

.hall_slide_tab .tab_link a {
    padding: 5px 5px 25px;
    display: inline-flex;
    font-size: 1.125rem;
    color: #9B9B9B;
    font-weight: 500;
    width: auto
}

.hall_slide_tab .tab_link a .tab_num {
    width: 25px;
    height: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #9B9B9B;
    font-size: 0.875rem;
    font-weight: 400;
    color: #fff;
    border-radius: 50%;
    margin-right: 10px;
    flex-shrink: 0
}

.hall_slide_tab .tab_link.current a {
    color: #131313;
    font-weight: 600;
    border-bottom: solid 2px #131313
}

.hall_slide_tab .tab_link.current a .tab_num {
    background: #131313
}

.hall_slide_wrap {
    position: relative
}

.hall_slide_wrap .hall_slide {
    overflow: hidden;
    width: 100%;
    position: relative
}

.hall_slide_wrap .swiper-slide {
    position: relative;
    width: 100%;
}

.hall_slide_wrap .swiper-slide:after {
    content: "";
    padding-top: 53.4653%;
    display: block
}

.hall_slide_wrap .swiper-slide img {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
    object-position: center
}

.hall_slide_wrap .swiper-use-wrap {
    width: 190px;
    height: 75px;
    z-index: 10;
    position: absolute;
    right: 0;
    bottom: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: solid 1px #aeaeae
}

.hall_slide_wrap .swiper-button-next,
.hall_slide_wrap .swiper-button-prev {
    top: 50%;
    left: auto;
    right: 0;
    z-index: 20 !important;
    width: 60px;
    height: 60px;
    background: #131313;
    opacity: 1
}

.hall_slide_wrap .swiper-button-next:after,
.hall_slide_wrap .swiper-button-prev:after {
    color: #fff;
    font-size: 1.5rem
}

.hall_slide_wrap .swiper-button-next.swiper-button-disabled,
.hall_slide_wrap .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.hall_slide_wrap .swiper-button-prev {
    left: 0
}

.hall_slide_wrap .swiper-pagination {
    display: inline-flex;
    justify-content: center;
    color: #131313;
    font-size: 1.125rem;
    width: auto;
    position: static;
    margin-right: 15px
}

.hall_slide_wrap .swiper-pagination * {
    opacity: 0.5
}

.hall_slide_wrap .swiper-pagination .swiper-pagination-current {
    color: #131313;
    opacity: 1
}

.hall_slide_wrap .btn_pause {
    width: 22px;
    height: 20px;
    background: url("/resource/templete/royal/img/common/ic_pause.png") no-repeat center / 50% auto;
    margin: 0 15px
}

.hall_slide_wrap .btn_pause.on {
    background: url("/resource/templete/royal/img/common/ic_play.png") no-repeat center
}

.hall_slide_wrap .swiper-use-wrap .swiper-button-next,
.hall_slide_wrap .swiper-use-wrap .swiper-button-prev {
    position: static;
    margin-top: 0;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: transparent;
    border: solid 1px #131313
}

.hall_slide_wrap .swiper-use-wrap .swiper-button-prev {
    margin-right: 10px
}

.hall_slide_wrap .swiper-use-wrap .swiper-button-next:after,
.hall_slide_wrap .swiper-use-wrap .swiper-button-prev:after {
    color: #131313;
    font-size: 1rem
}

.slide_map_wrap {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 20;
    display: inline-flex;
    align-items: flex-end
}

.slide_map_wrap.open .hall_map {
    display: block
}

.slide_map_wrap .hall_map {
    position: absolute;
    left: 90px;
    bottom: 20px;
    width: 500px;
    display: none
}

.slide_map_wrap .hall_map .marker_wrap .marker_num {
    width: 25px;
    height: 25px
}

.slide_map_wrap .hall_map .marker_wrap .marker_txt,
.slide_map_wrap .hall_map .marker_wrap .marker.current:before {
    display: none
}

.hall_txt_wrap {
    margin-top: 30px
}

.hall_txt_wrap .tit {
    font-size: 1.250rem;
    font-weight: 600;
    margin-bottom: 10px
}

.hall_txt_wrap .txt {
    font-size: 1.125rem;
    line-height: +1.7
}

.hall_slide_tab .tab_link.swiper-slide:after {
    padding-top: 0
}

@media screen and (max-width: 800px) {
    .hall_slide_tab .tab_link {
        flex: initial;
        flex-shrink: 0 !important;
        width: auto;
        display: inline-flex
    }

    .hall_map {
        overflow: hidden
    }

    .hall_map img,
    .hall_map .marker_wrap {
        transform: scale(1.15)
    }

    .slide_map_wrap .hall_map {
        width: 380px
    }

    .gallery_tit_wrap {
        grid-template-columns: repeat(3, 1fr) !important;
    }

    .gallery_tit_wrap .tab_link {
        border: none !important;
        border-bottom: solid 1px #131313 !important;
        border-right: solid 1px #131313 !important;
    }

    .gallery_tit_wrap .tab_link:nth-child(3n + 1) {
        border-left: solid 1px #131313 !important;
    }

    .gallery_tit_wrap .tab_link:nth-child(-n + 3) {
        border-top: solid 1px #131313 !important;
    }

    .hall_slide_tab {
        overflow: hidden
    }

    .hall_slide_tab .tab_link {
        flex-shrink: 0;
        flex: initial
    }
}

/*궁능소개 - 소개 역사*/
.palace_intro_wrap .img_wrap {
    margin-bottom: 50px
}

.palace_intro_wrap .ic_wrap {
    margin-bottom: 30px;
    text-align: center
}

.palace_intro_wrap .ic_wrap img {
    width: 40px
}

.palace_intro_wrap .tit_wrap {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
    line-height: +1.5
}

.palace_intro_wrap .txt_wrap {
    font-size: 1rem;
    text-align: left;
    line-height: +1.7;
    color: #333
}

/*궁능소개 - 이야기*/
.story_tab_wrap {
    display: grid;
    grid-template-columns: repeat(5, 1fr)
}

.story_tab_wrap .story_tab {
    height: 60px;
    border: solid 1px #131313;
    border-top: none
}

.story_tab_wrap .story_tab+.story_tab {
    border-left: none
}

.story_tab_wrap .story_tab:nth-child(5n + 1) {
    border-left: solid 1px #131313
}

.story_tab_wrap .story_tab:nth-child(-n + 5) {
    border-top: solid 1px #131313
}

.story_tab_wrap .story_tab a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 15px;
    font-size: 0.875rem;
    font-weight: 500
}

.story_tab_wrap .story_tab a:after {
    content: "";
    width: 11px;
    height: 1px;
    display: inline-block;
    background: #131313
}

.story_tab_wrap .story_tab.current a {
    background: #131313;
    color: #fff
}

.story_tab_wrap .story_tab.current a:after {
    content: "";
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 8px solid #fff;
}

.story_list_wrap {
    position: relative;
    margin-top: 60px;
    width: 100%
}

.story_list_wrap + .info_box_wrap{
    text-align: justify;
}

.story_list_wrap .slide {
    overflow: hidden
}

.story_list_wrap .swiper_thumb .swiper-slide {
    border: solid 3px #fff
}

.story_list_wrap .swiper_thumb .swiper-slide-thumb-active {
    border: solid 3px #000
}

.story_list_wrap .swiper-slide {
    position: relative
}

.story_list_wrap .swiper-slide:after {
    content: "";
    padding-top: 47.524%;
    display: block
}

.story_list_wrap .swiper-slide img {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
    object-position: center
}

.story_list_wrap .swiper-slide span{
	position: absolute;
	bottom: 0;
	right: 0;
	line-height: 50px;
	background: rgba(0, 0, 0, 0.7);
	color: #fff;
	font-size: 1.125rem;
	padding: 0 15px;

    display: none;
}

.story_list_wrap .btn_wrap {
    margin: 20px 0;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.story_list_wrap .swiper-use-wrap {
    width: 100%;
    height: auto;
    z-index: 10;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transform: translateY(-100%);
    padding: 0 15px
}

.story_list_wrap .swiper-use-wrap .right {
    display: flex
}

.story_list_wrap .swiper-button-next,
.story_list_wrap .swiper-button-prev {
    z-index: 20 !important;
    width: 50px;
    height: 50px;
    background: rgba(0, 0, 0, 0.80);
    opacity: 1;
    margin-top: 0;
    position: relative;
    left: 0;
    top: 25px
}

.story_list_wrap .swiper-button-next:after,
.story_list_wrap .swiper-button-prev:after {
    color: #fff;
    font-size: 1.250rem
}

.story_list_wrap .swiper-button-next.swiper-button-disabled,
.story_list_wrap .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.story_list_wrap .swiper-pagination {
    display: inline-flex;
    justify-content: center;
    color: #131313;
    font-size: 1.125rem;
    width: auto;
    position: static;
    margin-right: 20px
}

.story_list_wrap .swiper-pagination * {
    opacity: 0.5
}

.story_list_wrap .swiper-pagination .swiper-pagination-current {
    color: #131313;
    opacity: 1
}

.story_list_wrap.imgone {
    margin-top: 0 !important;
}

.story_list_wrap.imgone .swiper-use-wrap {
    display: none !important;
}

.detail_con .story_list_wrap {
    margin-top: 100px
}

.detail_con .story_list_wrap .swiper_main .swiper-slide {
    background: #131313
}

.detail_con .story_list_wrap .swiper_main .swiper-slide img {
    opacity: 0.7
}

.detail_con .story_list_wrap .swiper_main .swiper-slide.swiper-slide-active img {
    opacity: 1
}

.detail_con .story_list_wrap .swiper-slide:after {
    content: "";
    padding-top: 70.5882%;
    display: block
}

.detail_con .story_list_wrap .swiper-use-wrap {
    padding: 0 0 20px 0;
    align-items: flex-end;
    justify-content: flex-end
}

.detail_con .story_list_wrap .swiper-button-next,
.detail_con .story_list_wrap .swiper-button-prev {
    top: 0;
    width: 60px;
    height: 60px
}

.seasons_wrap .story_list_wrap {
    margin-top: 100px
}

.seasons_wrap .seasons_tit .img_wrap {
    text-align: center;
    margin-bottom: 15px
}

.seasons_wrap .seasons_tit .txt_wrap {
    text-align: center;
    font-size: 1.875rem;
    font-weight: 600
}

.seasons_wrap .story_list_wrap .swiper-use-wrap {
    padding: 0 0 20px 0;
    align-items: flex-end;
    justify-content: flex-end
}

.seasons_wrap .story_list_wrap .swiper-button-next,
.seasons_wrap .story_list_wrap .swiper-button-prev {
    top: 0;
    width: 60px;
    height: 60px
}

.recent_list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    padding-top: 45px
}

.recent_list .recent_item a {
    display: block
}

.recent_list .recent_item .img_wrap {
    width: 100%;
    position: relative
}

.recent_list .recent_item .img_wrap:after {
    content: "";
    padding-top: 70.5882%;
    display: block
}

.recent_list .recent_item .img_wrap img {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
    object-position: center
}

.recent_list .recent_item .txt_wrap {
    font-weight: 500;
    font-size: 1.125rem;
    margin-top: 20px
}

.recent_list .recent_item a:focus .txt_wrap,
.recent_list .recent_item a:hover .txt_wrap {
    text-decoration: underline;
    text-underline-position: under
}

/*궁능소개 - 조선왕릉 - 소개 역사*/
.shape_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px
}

.shape_list .shape_item {
    background: #F8F8F8;
    padding: 20px;
    border-radius: 20px;
    box-shadow: 3px 3px 10px #0000001A;
    text-align: center
}

.shape_list .shape_item .img_wrap {
    margin-bottom: 20px
}

.shape_list .shape_item .tit_wrap {
    margin-bottom: 10px;
    font-size: 1.375rem;
    font-weight: 600;
}

.shape_list .shape_item .txt_wrap {
    font-size: 1.125rem;
    line-height: +1.45
}

/*궁능소개 - 조선왕릉 - 이야기*/
.story_section_tab_wrap {
    width: 100%;
    overflow: hidden;
    padding: 10px 0 50px;
    flex-wrap: wrap;
    gap: 1%;
}

.story_section_tab_wrap .tab_link {
    width: 13.28%;
    height: 50px;
    flex: initial;
    margin-bottom: 10px;
}

.story_section_tab_wrap .tab_link a {
    width: 100%;
    height: 100%;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #949494;
    font-weight: 500;
    border: solid 1px #DCDFE3;
    padding: 0 10px;
}

.story_section_tab_wrap .tab_link.current a {
    background: #131313;
    border: solid 1px #131313;
    color: #fff;
    font-weight: 600
}

/*궁능소개 - 조선왕릉 - 전시관*/
.royal_tomb_tab {
    border-bottom: 1px solid #EAEAEA;
    justify-content: center
}

.royal_tomb_tab .tab_link {
    flex: inherit;
    padding: 0 25px;
    position: relative
}

.royal_tomb_tab .tab_link:after {
    content: "";
    width: 1px;
    height: 15px;
    background: #9B9B9B;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%)
}

.royal_tomb_tab .tab_link:first-child:after {
    display: none
}

.royal_tomb_tab .tab_link a {
    height: 60px;
    font-size: 1.250rem;
    font-weight: 500;
    color: #9B9B9B;
    padding: 0 5px;
    border-bottom: solid 4px transparent
}

.royal_tomb_tab .tab_link.current a {
    font-weight: 600;
    color: #131313;
    border-bottom: solid 4px #131313
}

@media screen and (max-width: 1024px) {
    .story_list_wrap .swiper-slide span{
		line-height: 40px;
	}

    .story_select_wrap {
        position: relative;
        z-index: 11
    }

    .story_tab_wrap {
        grid-template-columns: repeat(1, 1fr);
        border: solid 1px #131313;
        border-top: none;
        display: none;
        position: absolute;
        left: 0;
        top: 60px;
        width: 100%;
        background: #fff;
        max-height: 350px;
        overflow-y: auto
    }

    .open.story_tab_wrap {
        display: grid
    }

    .story_tab_wrap .story_tab {
        border: none !important;
        border-bottom: solid 1px #131313 !important;
    }

    .story_tab_wrap .story_tab:last-child {
        border-bottom: none !important;
    }

    .story_select_trigger {
        width: 100%;
        height: 60px;
        line-height: 60px;
        padding: 0 15px;
        font-size: 1.125rem;
        font-weight: 500;
        border: solid 1px #131313;
        display: flex !important;
        align-items: center;
        justify-content: space-between;
    }

    .story_select_trigger:after {
        content: "";
        width: 0;
        height: 0;
        border-left: 6px solid transparent;
        border-right: 6px solid transparent;
        border-top: 8px solid #131313;
    }

    .sub_con_section .txt_section_tit_wrap {
        display: block;
        margin-top: 20px
    }

    .sub_con_section .txt_section_tit_wrap .txt_section_tit {
        width: 100%
    }

    .palace_intro_wrap .tit_wrap {
        font-size: 1.250rem
    }
}



/*자료마당*/
.sub_con_tab {
    border-bottom: 1px solid #EAEAEA;
    justify-content: center
}

.sub_con_tab .tab_link {
    flex: inherit;
    padding: 0 15px;
    position: relative
}

.sub_con_tab.wide .tab_link {
    padding: 0 50px;
}

.sub_con_tab .tab_link:after {
    content: "";
    width: 1px;
    height: 15px;
    background: #9B9B9B;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%)
}

.sub_con_tab .tab_link:first-child:after {
    display: none
}

.sub_con_tab .tab_link a {
    height: 60px;
    font-size: 1.125rem;
    font-weight: 500;
    color: #9B9B9B;
    border-bottom: solid 4px transparent
}

.sub_con_tab .tab_link.current a {
    font-weight: 600;
    color: #131313;
    border-bottom: solid 4px #131313
}

@media screen and (max-width: 1024px) {
    .sub_con_tab {
        flex-wrap: wrap;
        overflow: hidden
    }

    .sub_con_tab .tab_link {
        flex: inherit;
        width: auto;
        flex-shrink: 0
    }
}


/*관람안내*/
.holiday_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    text-align: center
}

.holiday_list .img_wrap {
    margin-bottom: 5px
}

.holiday_list .tit_wrap {
    font-size: 1.250rem;
    font-weight: 600;
    margin-bottom: 15px
}

.holiday_list .txt_wrap {
    font-size: 1rem;
    color: #444;
    line-height: +1.25
}

@media screen and (max-width: 800px) {
    .holiday_list {
        gap: 15px;
    }
}

/*한복무료관람가이드라인*/
.artwork_list_wrap {
    overflow: hidden;
    position: relative
}

.artwork_list {
    position: relative;
    padding-top: 70px
}

.artwork_list_wrap .swiper-slide img {
    width: 100%;
}

.artwork_list_wrap .swiper-use-wrap {
    width: auto;
    height: auto;
    z-index: 10;
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    align-items: center
}

.artwork_list_wrap .swiper-button-next,
.artwork_list_wrap .swiper-button-prev {
    position: static;
    z-index: 20 !important;
    width: 50px;
    height: 50px;
    background: rgba(0, 0, 0, 0.80);
    opacity: 1;
    margin-top: 0
}

.artwork_list_wrap .swiper-button-next:after,
.artwork_list_wrap .swiper-button-prev:after {
    color: #fff;
    font-size: 1.250rem
}

.artwork_list_wrap .swiper-button-next.swiper-button-disabled,
.artwork_list_wrap .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.artwork_list_wrap .swiper-pagination {
    display: inline-flex;
    justify-content: center;
    color: #131313;
    font-size: 1.125rem;
    width: auto;
    position: static;
    margin-right: 20px
}

.artwork_list_wrap .swiper-pagination * {
    opacity: 0.5
}

.artwork_list_wrap .swiper-pagination .swiper-pagination-current {
    color: #131313;
    opacity: 1
}

.artwork_list_wrap .btn_pause {
    width: 22px;
    height: 20px;
    background: url("/resource/templete/royal/img/common/ic_pause.png") no-repeat center / 50% auto;
    margin: 0 15px
}

.artwork_list_wrap .btn_pause.on {
    background: url("/resource/templete/royal/img/common/ic_play.png") no-repeat center
}

.artwork_list_wrap .btn_wrap {
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.q_list .q_item {
    display: block;
    width: 100%;
    font-weight: 500;
    border-top: solid 1px #EAEAEA;
    border-bottom: solid 1px #EAEAEA
}

.q_list .q_item:first-child {
    border-top: none
}

.q_list .q_item:last-child {
    border-bottom: none
}

.q_list .q_item .box_inn {
    display: flex;
    width: 100%;
    padding: 20px;
    font-size: 1.125rem;
    position: relative
}

.q_list .q_item .box_inn .txt {
    font-size: 1.125rem;
    color: #131313;
    padding-top: 5px
}

.q_list .q_item .q_box .box_inn:after {
    content: url("/resource/templete/royal/img/common/arr_q.png");
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    line-height: 0
}

.q_list .q_item .ic {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    font-size: 1.125rem;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    line-height: 0;
    margin-right: 20px;
    flex-shrink: 0
}

.q_list .q_item .ic_q .ic {
    background: linear-gradient(to bottom, #181818 0%, #616161 100%);
    opacity: 0.7
}

.q_list .q_item .ic_a_yes .ic {
    background: linear-gradient(to bottom, #0C3781 0%, #0264AF 100%)
}

.q_list .q_item .ic_a_yes .txt {
    color: #0A3E88
}

.q_list .q_item .ic_a_no .ic {
    background: linear-gradient(to bottom, #810C0C 0%, #AF0202 100%)
}

.q_list .q_item .ic_a_no .txt {
    color: #8A0A0A
}

.q_list .q_item .a_box {
    background: #F8F8F8;
    border-top: solid 1px #EAEAEA;
    display: none
}

.q_list .q_item.open .a_box {
    display: block
}

.q_list .q_item.open .q_box .box_inn:after {
    transform: translateY(-50%) rotate(0deg)
}

.q_list .q_item.open .ic_q .ic {
    opacity: 1
}

.q_list .q_item .box_answer {
    padding: 10px 75px 40px
}

@media screen and (max-width: 1024px) {
    .q_list .q_item .box_inn {
        padding: 15px
    }

    .q_list .q_item .box_inn .txt {
        max-width: calc(100% - 70px)
    }

    .q_list .q_item .ic {
        margin-right: 10px
    }

    .q_list .q_item .box_answer {
        padding: 10px 20px 30px 60px
    }
}


/*오시는길*/
.map_select_wrap{ margin-bottom: 30px;}
.map_select_wrap select{ margin-left: 10px; padding: 0 20px 0 10px;}
.map_select_wrap .map_select_tit{ font-size: 1.125rem; font-weight: 500;}
.map_box {
    width: 100%;
    position: relative;
    border: 1px solid #EAEAEA;
}

.map_box:after {
    content: "";
    display: block;
    padding-top: 41.5841%
}

.map_box #map {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.map_txt_wrap {
    display: flex;
    justify-content: space-between;
    padding: 40px 0 40px 20px;
    border-bottom: solid 2px #131313
}

.map_txt_wrap .left {
    display: flex
}

.map_txt_wrap .map_con {
    padding-left: 25px;
    position: relative
}

.map_txt_wrap .map_con.first {
    margin-right: 80px
}

.map_txt_wrap .map_tit {
    font-size: 1.250rem;
    font-weight: 600;
    margin-bottom: 10px
}

.map_txt_wrap .map_tit img {
    position: absolute;
    left: 0;
    top: 0.25em
}

.map_txt_wrap .btn_map {
    flex-shrink: 0;
    margin-left: 10px;
    width: 90px;
    height: 65px
}

.transportation_wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px;
    margin: 60px 0
}

.transportation_tit {
    font-size: 1.250rem;
    font-weight: bold;
    padding-bottom: 15px;
    border-bottom: solid 1px #EAEAEA;
    display: flex;
    align-items: center
}

.transportation_tit img {
    margin-right: 10px
}

.transportation_unit {
    margin-top: 30px;
}

.transportation_unit .tit {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 10px
}

.transportation_unit .txt {
    line-height: +1.5
}

.type02.transportation_wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
    margin: 60px 0
}

@media screen and (max-width: 800px) {
    .map_box:after {
        padding-top: 80%
    }

    .map_txt_wrap {
        display: block;
        padding: 30px 0 20px
    }

    .map_txt_wrap .map_con {
        width: 50%
    }

    .map_txt_wrap .map_con.first {
        margin-right: 0
    }

    .map_txt_wrap .btn_map {
        margin-left: 0;
        margin-top: 20px;
        width: 100%
    }

    .transportation_wrap {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        margin: 40px 0
    }
}

/*관람코스*/
.course_tab_wrap {
    display: none;
    justify-content: space-between;
    margin: 0 0 30px;
    width: 100%
}

.course_tab {
    height: 45px;
    border-radius: 20px;
    background: #F7F7F7;
    display: inline-flex
}

.course_tab .tab_link {
    flex: inherit;
}

.course_tab .tab_link a {
    font-size: 1rem;
    font-weight: 500;
    color: #949494;
    padding: 0 20px
}

.course_tab .tab_link.current a {
    color: #fff;
    background: #17106E;
    border-radius: 20px
}

.course_pop_con {
    display: inline-flex;
    align-items: center
}

.course_pop_con .course_tit {
    font-size: 1.125rem;
    display: inline-flex;
    align-items: center
}

.course_pop_con .course_tit img {
    margin-right: 5px
}

.course_pop_con .list {
    display: inline-flex;
    align-items: center
}

.course_pop_con .list .item {
    margin-left: 15px
}

.course_pop_con .list .item a {
    border-radius: 23px;
    color: #949494;
    font-weight: 500;
    height: 45px;
    padding: 0 20px;
    border: solid 1px #949494
}

.course_pop_con .list .item a .inn {
    display: inline-flex;
    align-items: center;
    height: 100%
}

.course_pop_con .list .item a:hover,
.course_pop_con .list .item a:focus,
.course_pop_con .list .item.current a {
    background: #131313;
    border: solid 1px #131313
}

.course_pop_con .list .item a:hover .inn,
.course_pop_con .list .item a:focus .inn,
.course_pop_con .list .item.current a .inn {
    filter: brightness(30)
}

.course_pop_con .list .item a img {
    margin-right: 5px;
    width: 17px;
}

.course_map_wrap {
    width: 100%;
    position: relative
}

.course_map_wrap .course_map_fix {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
}

.course_map_wrap .amenities_wrap {
    position: absolute;
    left: 30px;
    bottom: 30px
}

.course_map_wrap .btn_wrap {
    display: none;
    position: absolute;
    right: 30px;
    bottom: 30px
}

.course_map_wrap .course_map {
    width: 100%;
    border-radius: 20px;
    border: solid 1px #DADADA;
    overflow: hidden
}

.course_info {
	display:none !important;
    margin-bottom: 40px
}

.course_info img {
    margin-right: 10px
}

.course_num_list {
	display:none !important;
   /* border: solid 1px #DADADA;
    padding: 15px 10px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-bottom: 40px */
}

.course_num_item a {
    padding: 15px;
    font-weight: 500;
    font-size: 1.125rem;
    opacity: 0.5;
    justify-content: flex-start
}

.course_num_item .num {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #131313;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.875rem;
    font-weight: 500;
    margin-right: 7px;
    flex-shrink: 0
}

.course_num_item.current a {
    opacity: 1
}

.course_slide_tit_wrap {
    display: flex;
    align-items: center;
    border-bottom: solid 2px #131313;
    margin-bottom: 40px
}

.course_slide_tit {
    opacity: 0.5;
    font-size: 1.125rem;
    flex: 1;
    display: flex;
}

.course_slide_tit .course_num_item {
    display: inline-flex;
    padding: 5px 5px 25px;
}

.course_slide_tit.tit_before {
    justify-content: flex-start
}

.course_slide_tit.tit_current {
    opacity: 1;
    font-weight: 600;
    justify-content: center
}

.course_slide_tit.tit_current .course_num_item {
    border-bottom: solid 2px #131313
}

.course_slide_tit.tit_after {
    justify-content: flex-end
}

.course_slide_wrap {
    position: relative
}

.course_slide_wrap .course_slide {
	display:none !important;
    overflow: hidden;
    width: 100%;
    position: relative
}

.course_slide_wrap .swiper-slide {
    position: relative;
    width: 100%;
}

.course_slide_wrap .swiper-slide:after {
    content: "";
    padding-top: 53.4653%;
    display: block
}

.course_slide_wrap .swiper-slide img {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
    object-position: center
}

.course_slide_wrap .swiper-use-wrap {
    width: 190px;
    height: 75px;
    z-index: 10;
    position: absolute;
    right: 0;
    bottom: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: solid 1px #aeaeae
}

.course_slide_wrap .swiper-button-next,
.course_slide_wrap .swiper-button-prev {
    top: 50%;
    left: auto;
    right: 0;
    z-index: 20 !important;
    width: 60px;
    height: 60px;
    background: #131313;
    opacity: 1
}

.course_slide_wrap .swiper-button-next:after,
.course_slide_wrap .swiper-button-prev:after {
    color: #fff;
    font-size: 1.5rem
}

.course_slide_wrap .swiper-button-next.swiper-button-disabled,
.course_slide_wrap .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.course_slide_wrap .swiper-button-prev {
    left: 0
}

.course_slide_wrap .swiper-pagination {
    display: inline-flex;
    justify-content: center;
    color: #131313;
    font-size: 1.125rem;
    width: auto;
    position: static;
    margin-right: 15px
}

.course_slide_wrap .swiper-pagination * {
    opacity: 0.5
}

.course_slide_wrap .swiper-pagination .swiper-pagination-current {
    color: #131313;
    opacity: 1
}

.course_slide_wrap .btn_pause {
    width: 22px;
    height: 20px;
    background: url("/resource/templete/royal/img/common/ic_pause.png") no-repeat center / 50% auto;
    margin: 0 15px
}

.course_slide_wrap .btn_pause.on {
    background: url("/resource/templete/royal/img/common/ic_play.png") no-repeat center
}

.course_slide_wrap .swiper-use-wrap .swiper-button-next,
.course_slide_wrap .swiper-use-wrap .swiper-button-prev {
    position: static;
    margin-top: 0;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: transparent;
    border: solid 1px #131313
}

.course_slide_wrap .swiper-use-wrap .swiper-button-prev {
    margin-right: 10px
}

.course_slide_wrap .swiper-use-wrap .swiper-button-next:after,
.course_slide_wrap .swiper-use-wrap .swiper-button-prev:after {
    color: #131313;
    font-size: 1rem
}

.course_slide_wrap .course_btn_wrap {
	display:none !important;
    padding-top: 20px;
    margin-top: 20px;
    border-top: solid 1px #aeaeae
}

.course_txt_wrap {
    margin-top: 30px
}

.course_txt_wrap .tit {
    font-size: 1.250rem;
    font-weight: 600;
    margin-bottom: 10px
}

.course_txt_wrap .txt {
    font-size: 1.125rem;
    line-height: +1.7
}

.course_tab_tit {
    font-size: 1.875rem;
    font-weight: 600;
    margin-bottom: 20px
}

.course_tab_txt {
    font-size: 1.5rem;
    font-weight: 500;
    color: #666666;
    margin-bottom: 20px;
    display: flex;
    align-items: center
}

.course_tab_txt img {
    margin-right: 10px;
    flex-shrink: 0
}

.course_list {
    padding: 10px 0 10px
}

.course_list:after {
    content: "";
    display: block;
    width: 100%;
    clear: both
}

.course_list .course_item {
    width: 25%;
    float: left;
    height: 80px;
    display: flex;
    flex-wrap: wrap;
    position: relative
}

.course_list .course_item:nth-child(n+5):nth-child(-n+8) {
    float: right
}

.course_list .course_item .course_dot {
    width: 100%;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative
}

.course_list .course_item .course_dot .inn {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: solid 9px #131313;
    z-index: 2
}

.course_list .course_item:after {
    content: "";
    width: 100%;
    height: calc(50% + 20px);
    border-top: solid 2px #DADADA;
    position: absolute;
    left: 0;
    top: 30px
}

.course_list .course_item.end_left:after {
    border-right: none !important;
    border-left: none !important;
    border-radius: 0 !important;
}

.course_list .course_item:nth-child(4):after {
    content: "";
    width: 100%;
    height: calc(50% + 20px);
    border-top: solid 2px #DADADA;
    border-bottom: none;
    border-right: solid 2px #DADADA;
    position: absolute;
    left: 0;
    top: 30px;
    bottom: auto;
    border-radius: 0 20px 0 0
}

.course_list .course_item:nth-child(5):after {
    content: "";
    width: 100%;
    height: calc(50% + 20px);
    border-bottom: solid 2px #DADADA;
    border-top: none;
    border-right: solid 2px #DADADA;
    position: absolute;
    left: 0;
    bottom: auto;
    top: -30px;
    border-radius: 0 0 20px 0
}

.course_list .course_item:nth-child(8):after {
    content: "";
    width: 100%;
    height: calc(50% + 20px);
    border-top: solid 2px #DADADA;
    border-bottom: none;
    border-left: solid 2px #DADADA;
    position: absolute;
    left: 0;
    bottom: auto;
    top: 30px;
    border-radius: 20px 0 0 0
}

.course_list .course_item:nth-child(9):after {
    content: "";
    width: 100%;
    height: calc(50% + 20px);
    border-bottom: solid 2px #DADADA;
    border-top: none;
    border-left: solid 2px #DADADA;
    position: absolute;
    left: 0;
    bottom: auto;
    top: -30px;
    border-radius: 0 0 0 20px
}
/*
.course_list .course_item:first-child .course_dot:before,
.course_list .course_item.end_left .course_dot:before {
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #DADADA;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	margin-top: 1px
}

.course_list .course_item.end_right .course_dot:before {
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #DADADA;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	margin-top: 1px
}
*/

.course_list .course_item.end_line:after{border-bottom: none; border-right:none; border-left:none; bottom: auto; border-radius:0;}

.course_list .course_item .course_txt {
    width: 100%;
    font-size: 1.125rem;
    text-align: center
}

.course_pop_slide {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 0 19px
}

.course_pop_slide .img_wrap {
    margin-bottom: 15px;
    width: 100%;
    position: relative;
    border-radius: 15px;
    overflow: hidden
}

.course_pop_slide .img_wrap:after {
    content: "";
    padding-top: 100%;
    display: block
}

.course_pop_slide .img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    left: 0;
    top: 0
}

.course_pop_slide .txt_wrap {
    width: 100%;
    height: 46px;
    border: solid 1px #131313;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 500;
    font-size: 1.125rem
}

.course_pop_slide .txt_wrap:after {
    content: url("/resource/templete/royal/img/common/arr_c_next.png")
}

.course_pop_slide .swiper-slide-active .txt_wrap {
    background: #131313;
    color: #fff
}

.course_pop_slide .swiper-slide-active .txt_wrap:after {
    filter: brightness(30)
}

.course_pop_slide .swiper-button-next,
.course_pop_slide .swiper-button-prev {
    top: 50%;
    left: auto;
    right: 0;
    z-index: 30 !important;
    width: 50px;
    height: 50px;
    background: #131313;
    opacity: 1;
    margin-top: -30px;
    transform: translateY(-50%)
}

.course_pop_slide .swiper-button-next:after,
.course_pop_slide .swiper-button-prev:after {
    color: #fff;
    font-size: 1.5rem
}

.course_pop_slide .swiper-button-prev {
    right: auto;
    left: 0
}

@media screen and (max-width: 1024px) {
    .course_tab_tit {
        font-size: 1.5rem
    }

    .course_tab_txt {
        font-size: 1.250rem
    }

    .course_tab_wrap {
        flex-wrap: wrap;
        justify-content: flex-end
    }

    .course_pop_con,
    .course_pop_con .course_tit {
        display: block;
        width: 100%
    }

    .course_pop_con {
        margin-bottom: 20px
    }

    .course_pop_con .course_tit {
        width: 100%;
        margin-bottom: 10px
    }

    .course_pop_con .list .item {
        margin-left: 0;
        margin-right: 10px
    }

    .course_map_wrap .course_map {
        padding-bottom: 100px
    }

    .course_num_list {
        grid-template-columns: repeat(2, 1fr);
    }
    .course_pop_slide .img_wrap{ margin-bottom: 5px;}
    .course_pop_slide .swiper-button-next,
    .course_pop_slide .swiper-button-prev{ width: 40px; height: 40px;}
    .course_pop_slide .txt_wrap{ padding: 0 10px;}
}

/*기관소개 - 연혁*/
.history_tab {
    position: sticky;
    top: 119px;
    width: 100%;
    overflow: hidden;
    border-bottom: solid 2px #131313;
    z-index: 2;
    background: #fff
}

.sc_down .history_tab {
    top: 79px;
}

.history_tab .swiper-slide {
    width: 16.6666%;
}

.history_tab .swiper-slide a {
    width: 100%;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    font-weight: 500;
    color: #9B9B9B
}

.history_tab .swiper-slide.current a {
    color: #131313;
    font-weight: 600;
    border-bottom: solid 2px #131313
}

.history_con_wrap .history_con {
    width: 100%;
    margin-top: 80px;
    display: flex;
    padding-bottom: 100px
}

.history_con_wrap .history_con .left {
    padding-right: 70px
}

.history_con_wrap .history_con .left .img_wrap {
    position: sticky;
    top: 230px;
}

.sc_down .history_con_wrap .history_con .left .img_wrap {
    top: 180px;
}

.history_con_wrap .history_con_tit {
    display: flex;
    align-items: center;
    font-size: 1.625rem;
    font-weight: bold;
    padding-bottom: 60px
}

.history_con_wrap .history_con_tit:before {
    content: "";
    width: 85px;
    height: 4px;
    background: #131313;
    display: inline-block;
    margin-right: 30px
}

.history_con_wrap .history_item {
    padding-left: 35px;
    position: relative;
    padding-bottom: 50px
}

.history_con_wrap .history_item:before {
    content: "";
    border-left: dashed 1px #ECECEC;
    width: 1px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 10px
}

.history_con_wrap .history_list .history_item:last-child {
    padding-bottom: 0
}

.history_con_wrap .history_list .history_item:last-child:before {
    display: none
}

.history_con_wrap .history_item .date {
    position: relative;
    font-weight: 600;
    font-size: 1.250rem;
    margin-bottom: 15px
}

.history_con_wrap .history_item .date:before {
    content: url("/resource/templete/royal/img/common/dot.png");
    position: absolute;
    left: -35px;
    top: 0;
    transform: translateX(-50%)
}

@media screen and (max-width: 800px) {
    .history_con_wrap .history_con {
        display: block;
        padding-bottom: 0
    }

    .history_con_wrap .history_con .img_wrap {
        margin-bottom: 30px
    }

    .history_con_wrap .history_con .img_wrap img {
        width: 100%
    }

    .history_con_wrap .history_con .left,
    .history_con_wrap .history_con .right {
        padding-right: 0;
        width: 100%
    }

    .history_con_wrap .history_con_tit {
        padding-bottom: 40px
    }

    .history_con_wrap .history_item {
        padding-left: 35px;
        padding-bottom: 30px
    }

    .history_tab,
    .sc_down .history_tab {
        top: 79px;
    }

    .history_tab .swiper-slide {
        flex: initial;
        flex-shrink: 0;
        width: auto
    }

    .history_tab .swiper-slide a {
        padding: 0 20px
    }
    .history_con_wrap .history_item:before{ left: 9px}
    .history_con_wrap .history_item .date:before { left: -25px}
}

/*기관소개 - 인사말*/
.greeting_wrap .img_wrap {
    margin-bottom: 40px
}

.greeting_wrap .txt_wrap {
    display: flex
}

.greeting_wrap .txt_wrap .left {
    width: 32.67%;
    text-align: center;
    padding: 0 40px;
    flex-shrink: 0
}

.greeting_wrap .txt_wrap .right {
    padding-top: 50px
}

.greeting_wrap .txt_wrap .tit {
    font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.3
}

.greeting_wrap .txt_wrap .subtit {
    font-size: 1.5rem;
    color: #14489C;
    font-weight: 500;
    margin-bottom: 45px
}

.greeting_wrap .txt_wrap .txt {
    font-size: 1.125rem;
    line-height: +1.5
}

@media screen and (max-width: 800px) {
    .greeting_wrap .txt_wrap {
        display: block;
        margin-top: -150px
    }

    .greeting_wrap .txt_wrap .left {
        width: 100%
    }

    .greeting_wrap .img_wrap {
        height: 350px;
        margin-bottom: 0
    }

    .greeting_wrap .img_wrap img {
        object-fit: cover;
        object-position: center;
        width: 100%;
        height: 100%
    }
}

/*기관소개 - 주요업무계획*/
.business_plan_wrap .plan_eng_wrap {
    color: #999999;
    font-size: 1.125rem;
    text-align: center;
    margin-bottom: 15px
}

.business_plan_wrap .plan_tit_wrap {
    font-size: 2.250rem;
    text-align: center;
    font-weight: 600;
    margin-bottom: 40px
}

.business_plan_wrap .plan_list_tit {
    overflow: hidden;
    height: 80px;
    display: flex;
    color: #fff;
    font-size: 1.625rem;
    font-weight: 500;
    align-items: center;
    background: #131313;
    padding: 15px 55px 0
}

.business_plan_wrap .plan_list_tit .num {
    font-weight: 300;
    font-size: 6.250rem;
    margin-right: 30px;
    flex-shrink: 0;
    position: relative;
    top: 10px
}

.business_plan_wrap .plan_list {
    padding-bottom: 100px;
    width: 100%;
    max-width: 900px;
    margin: 0 auto
}

.business_plan_wrap .plan_list_wrap .plan_list:last-child {
    padding-bottom: 0
}

.business_plan_wrap .plan_item {
    margin-top: 50px;
    display: flex
}

.business_plan_wrap .plan_list .plan_item:nth-child(even) {
    flex-flow: row-reverse
}

.business_plan_wrap .plan_list .plan_item:nth-child(even) .img_wrap {
    padding-right: 0;
    padding-left: 30px
}

.business_plan_wrap .plan_list .plan_item:nth-child(even) .txt_wrap {
    padding: 30px 20px 0 0
}

.business_plan_wrap .plan_item .img_wrap {
    padding-right: 30px
}

.business_plan_wrap .plan_item .img_wrap img {
    width: 100%
}

.business_plan_wrap .plan_item .txt_wrap {
    padding: 30px 0 0 20px
}

.business_plan_wrap .plan_item .tit {
    font-size: 1.250rem;
    font-weight: bold;
    padding: 10px 0;
    border-bottom: solid 1px #131313;
    margin-bottom: 20px
}

.business_plan_wrap .plan_item .txt .item {
    margin-bottom: 10px;
    line-height: +1.5
}

@media screen and (max-width: 800px) {
    .business_plan_wrap .plan_tit_wrap {
        font-size: 2rem
    }

    .business_plan_wrap .plan_list_tit {
        padding: 10px 20px 0;
        font-size: 1.375rem
    }

    .business_plan_wrap .plan_list_tit .num {
        font-size: 4rem;
        margin-right: 15px
    }

    .business_plan_wrap .plan_list .plan_item:nth-child(even) {
        flex-flow: row
    }

    .business_plan_wrap .plan_list .plan_item {
        display: block
    }

    .business_plan_wrap .plan_list .plan_item .img_wrap {
        padding: 0 !important;
        width: 100%
    }

    .business_plan_wrap .plan_list .plan_item .txt_wrap {
        width: 100%;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/*기관소개 - 조직안내*/
.organization_tit {
    width: 100%;
    height: 200px;
    background: url("/resource/templete/royal/img/sub/history/organization_bg.jpg") no-repeat center / cover;
    font-size: 1.625rem;
    color: #fff;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center
}

.organization_list .organization_item {
    writing-mode: vertical-lr;
    letter-spacing: 3px;
    font-size: 1.250rem;
    font-weight: 600;
    border-left: solid 1px #131313;
    border-bottom: solid 1px #131313
}

.organization_list .organization_item:last-child {
    border-right: solid 1px #131313;
}

.organization_list .organization_item a {
    padding-bottom: 30px;
    flex-flow: row;
    justify-content: flex-start
}

.organization_list .organization_item .num {
    writing-mode: horizontal-tb;
    letter-spacing: 0;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 1rem;
    color: #ABABAB;
    transform: translateX(-100%)
}

.organization_list .organization_item.current a {
    background: #131313;
    color: #fff
}

.organization_list .organization_item.current a .num {
    color: #fff
}

@media screen and (max-width: 800px) {
    .organization_list {
        display: block
    }

    .organization_list .organization_item {
        writing-mode: initial;
        letter-spacing: 0;
        border-right: solid 1px #131313
    }

    .organization_list .organization_item .num {
        transform: translateX(0)
    }

    .organization_list .organization_item a {
        padding-bottom: 0;
        flex-flow: row-reverse;
        justify-content: space-between;
        padding: 0 20px
    }
}

/*기관소개 - e-자료실*/
.magazine_list {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 60px 20px;
    padding-bottom: 30px
}

.magazine_item a {
    display: flex
}

.magazine_item .img_wrap {
    width: 40%;
    position: relative;
    background: url("/resource/templete/royal/img/sub/m_no_img.jpg") no-repeat center / cover
}

.magazine_item .img_wrap:after {
    content: "";
    padding-top: 130%;
    display: block
}

.magazine_item .img_wrap img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.magazine_item .txt_wrap {
    padding: 20px;
    display: flex;
    flex-flow: column;
    justify-content: space-between
}

.magazine_item .txt_wrap .tit {
    line-height: +1.6;
    font-weight: 600;
    font-size: 1.250rem
}

.magazine_item .txt_wrap .txt {
    line-height: +1.5;
    color: #444;
    font-size: 1rem
}

.magazine_item .txt_wrap .date {
    color: #888;
    margin-top: 10px;
    font-size: 1rem
}

.nuri_wrap {
    border-top: solid 2px #131313;
    padding-top: 20px;
    display: flex;
    justify-content: flex-end
}

.img_nuri {
    max-height: 45px
}

@media screen and (max-width: 1024px) {
    .magazine_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 30px 20px
    }
}

/*행사마당 - 문화행사*/
.event_cal_wrap {
    display: flex
}

.event_cal_wrap .left {
    width: 34.65%;
    flex-shrink: 0;
    margin-right: 50px
}

.event_cal_wrap .left .cal_wrap {
    position: sticky;
    top: 150px
}

.sc_down .event_cal_wrap .left .cal_wrap {
    top: 100px
}

.event_cal_wrap .right {
    width: 100%
}

.event_cal_wrap .ui-datepicker-calendar {
    border-top: solid 2px #0a134f;
    border-bottom: solid 1px #aeaeae
}

.event_cal_wrap .ui-datepicker th {
    height: 55px;
    font-size: 0.750rem;
    background: #F8F8F8;
    padding: 5px;
    line-height: 45px
}

.event_cal_wrap .ui-widget.ui-widget-content td {
    height: 55px;
    font-size: 0.875rem;
    padding: 5px;
    line-height: 30px;
    box-sizing: border-box;
    text-align: center
}

.event_cal_wrap .ui-widget.ui-widget-content td a {
    padding: 0 0 15px 0;
    border-radius: 5px;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: solid 1px transparent;
    position: relative
}

.event_cal_wrap .ui-widget.ui-widget-content td a.ui-state-active {
    background: #fff;
    border: solid 1px #131313;
    color: #131313;
    font-weight: bold
}

.event_cal_wrap .ui-widget.ui-widget-content td a.ui-state-highlight {
    background: #F8F8F8;
    color: #131313
}

.event_cal_wrap .ui-widget.ui-widget-content td a .e_list {
    width: 100%;
    height: 15px;
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    justify-content: center
}

.event_cal_wrap .e_list li .item {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    margin: 1px
}

.event_cal_wrap .e_list .e0 .item {
    background: #262626
}

.event_cal_wrap .e_list .e1 .item {
    background: #17106E
}

.event_cal_wrap .e_list .e2 .item {
    background: #B40A0A
}

.event_cal_wrap .ui-datepicker {
    padding: 0
}

.event_cal_wrap .ui-datepicker .ui-datepicker-header {
    padding: 0
}

.event_cal_wrap .ui-datepicker .ui-datepicker-title {
    margin: 0 80px 0 0;
    text-align: left;
    font-size: 1.750rem;
    font-weight: bold;
    color: #131313;
    line-height: +1;
    height: 40px;
    display: flex;
    align-items: center
}

.event_cal_wrap .ui-datepicker .ui-datepicker-prev,
.event_cal_wrap .ui-datepicker .ui-datepicker-next {
    width: 40px;
    height: 40px;
    background: rgba(0, 0, 0, 0.9);
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0
}

.event_cal_wrap .ui-datepicker .ui-datepicker-prev {
    left: auto;
    right: 40px
}

.event_cal_wrap .ui-datepicker .ui-datepicker-next {
    left: auto;
    right: 0
}

.event_cal_wrap .ui-datepicker .ui-datepicker-prev:after {
    content: url("/resource/templete/royal/img/common/arr_c_prev_w.png");
    filter: brightness(30)
}

.event_cal_wrap .ui-datepicker .ui-datepicker-next:after {
    content: url("/resource/templete/royal/img/common/arr_c_next_w.png");
    filter: brightness(30)
}

.event_cal_wrap .ui-datepicker-calendar>thead th:first-child,
.event_cal_wrap .ui-datepicker-calendar>tbody td:first-child a {
    color: #CF4500;
}

.event_cal_wrap .ui-datepicker-calendar>thead th:last-child,
.event_cal_wrap .ui-datepicker-calendar>tbody td:last-child a {
    color: #0A2B9A;
}

.event_cal_wrap .caption_wrap {
    margin-top: 20px
}

.event_cal_wrap .caption_wrap .e_list,
.event_cal_wrap .caption_wrap .e_list li a {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    color: #777777;
    font-weight: 500
}

.event_cal_wrap .caption_wrap .e_list li {
    margin-right: 20px
}

.event_cal_wrap .caption_wrap .e_list li .item {
    margin-right: 8px
}

.event_cal_wrap .caption_wrap .e_list li.current a {
    font-weight: bold;
    color: #131313
}

.event_cal_wrap .event_tab_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 40px;
    margin-bottom: 20px
}

.event_cal_wrap .event_tab_list {
    display: flex;
    align-items: center;
}

.event_cal_wrap .event_tab_item {
    margin-right: 15px
}

.event_cal_wrap .event_tab_item a {
    width: 90px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    border-radius: 18px;
}

.event_cal_wrap .event_tab_list .event_tab_item:nth-child(1) a {
    border: solid 1px #222;
    color: #222
}

.event_cal_wrap .event_tab_list .event_tab_item:nth-child(1).current a {
    background: #222;
    color: #fff
}

.event_cal_wrap .event_tab_list .event_tab_item:nth-child(2) a {
    border: solid 1px #17106E;
    color: #17106E
}

.event_cal_wrap .event_tab_list .event_tab_item:nth-child(2).current a {
    background: #17106E;
    color: #fff
}

.event_cal_wrap .event_tab_list .event_tab_item:nth-child(3) a {
    border: solid 1px #B40A0A;
    color: #B40A0A
}

.event_cal_wrap .event_tab_list .event_tab_item:nth-child(3).current a {
    background: #B40A0A;
    color: #fff
}

.event_cal_wrap .event_tab_wrap .date_wrap {
    font-size: 1.250rem;
    font-weight: 600
}

.event_con_list .event_con_item {
    padding: 34px 30px;
    border-bottom: solid 1px #F0F0F0;
    display: flex
}

.event_con_list .event_con_item:last-child {
    border-bottom: none
}

.event_con_list .event_con_item .img_wrap {
    width: 165px;
    position: relative;
    flex-shrink: 0;
    margin-right: 35px
}

.event_con_list .event_con_item .img_wrap:after {
    content: "";
    padding-top: 130%;
    display: block
}

.event_con_list .event_con_item .img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    left: 0;
    top: 0
}

.event_con_list .event_con_item .txt_wrap {
    padding: 8px 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.event_con_list .event_con_item .ctg_wrap {
    margin-bottom: 15px
}

.event_con_list .event_con_item .ctg {
    width: 75px;
    height: 25px;
    border-radius: 13px;
    font-size: 0.750rem;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.event_con_list .event_con_item .tit_wrap {
    font-size: 1.250rem;
    font-weight: 600;
    margin-bottom: 1rem
}

.event_con_list .event_con_item .txt_con {
    font-size: 0.875rem;
    color: #444444
}

.event_con_list .event_con_item .txt_con .wrap {
    display: flex
}

.event_con_list .event_con_item .txt_con .loca img {
    margin-left: 1px
}

.event_con_list .event_con_item .txt_con .subtit {
    width: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    margin-right: 4px
}

.event_info_wrap {
    display: flex
}

.event_info_wrap .img_wrap {
    width: 35%;
    margin-right: 50px;
    flex-shrink: 0
}

.event_info_wrap .txt_wrap {
    width: 100%
}

.event_info_wrap .txt_wrap .ctg_wrap {
    margin-bottom: 20px
}

.event_info_wrap .txt_wrap .ctg {
    width: 90px;
    height: 35px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: bold
}

.event_info_wrap .txt_wrap .bd_wrap {
    padding: 35px 0;
    margin-bottom: 20px
}

.event_info_wrap .txt_wrap .tit_wrap {
    font-weight: 600;
    font-size: 1.250rem;
    margin-bottom: 25px
}

.event_info_wrap .txt_wrap .txt_con .txt {
    width: 100%;
    display: flex;
    margin: 10px 0;
    line-height: +1.5;
    color: #444
}

.event_info_wrap .txt_wrap .subtit {
    font-weight: 500;
    width: 95px;
    flex-shrink: 0
}

.event_detail_wrap {
    margin-top: 80px;
}

.event_detail_wrap .event_detail {
    border-top: solid 1px #131313;
    padding: 30px 0
}

.event_detail_wrap .event_detail .img_wrap {
    margin-bottom: 40px
}

.event_reservation_wrap {
    display: flex;
    padding: 0 30px 60px 30px;
}

.event_reservation_wrap .left {
    width: 170px;
    display: flex;
    align-items: center;
    justify-content: center
}

.event_reservation_wrap .tit_wrap {
    font-weight: 500;
    font-size: 1.250rem;
    margin-bottom: 20px
}

.event_reservation_wrap .list_wrap .list>.item {
    margin-bottom: 10px;
    color: #444;
    font-weight: 400
}

.event_schedule.table th,
.event_schedule.table td {
    padding: 10px
}

.event_schedule.table tr td:last-child {
    text-align: left
}

@media screen and (max-width: 1024px) {
    .event_cal_wrap {
        display: block
    }

    .event_cal_wrap .event_tab_wrap {
        flex-wrap: wrap;
        justify-content: flex-end;
        height: auto
    }

    .event_cal_wrap .event_tab_list {
        width: 100%
    }

    .event_cal_wrap .event_tab_wrap .date_wrap {
        margin: 10px 0 0
    }

    .event_cal_wrap .left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 50px
    }

    .event_cal_wrap .right {
        width: 100%
    }

    .event_con_list .event_con_item {
        padding: 30px 10px
    }

    .event_con_list .event_con_item .img_wrap {
        margin-right: 15px
    }

    .event_info_wrap {
        display: block
    }

    .event_info_wrap .img_wrap,
    .event_info_wrap .txt_wrap {
        width: 100%
    }

    .event_info_wrap .img_wrap {
        margin-right: 0;
        text-align: center;
        margin-bottom: 30px
    }

    .event_info_wrap .txt_wrap .subtit {
        width: 80px
    }

    .event_reservation_wrap {
        padding: 0 20px 40px;
        display: block
    }

    .event_reservation_wrap .left {
        width: 100%;
        margin-bottom: 20px
    }
}

/*자료마당 - 가계도*/
.tree_wrap .box_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 25px 50px
}

.tree_wrap .box_wrap .left {
    display: flex;
    align-items: center
}

.tree_wrap .box_wrap img,
.tree_wrap .box_wrap .btn {
    flex-shrink: 0
}

.tree_wrap .box_wrap .txt_wrap {
    margin: 0 45px 0 10px
}

.tree_map_wrap {
    position: relative;
    overflow: hidden;
    margin-top: 30px;
    border: solid 1px #DADADA;
    border-radius: 10px;
    padding: 50px
}

.tree_map_con {
    cursor: move
}

.tree_list {
    float: left;
    display: block;
    font-size: 0;
    white-space: nowrap;
    position: relative;
}

.nav_h_type {
    position: relative;
    overflow: hidden;
}

.nav_h_type ul {
    float: left;
    display: block;
    font-size: 0;
    white-space: nowrap;
    position: relative;
}

.nav_h_type li {
    box-sizing: border-box;
    display: inline-block;
}

.nav_h_type li img {
    max-width: initial;
    width: auto
}

.tree_map_wrap .hid_box {
    display: none;
    width: 380px;
    height: 130px;
    background: rgba(0, 0, 0, 0.7);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    border-radius: 20px;
}

.tree_map_wrap .hid_box_inn {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.tree_map_wrap .hid_box_inn img {
    width: 80px;
    margin-right: 15px;
    flex-shrink: 0
}

.tree_map_wrap .hid_box_inn .txt_wrap {
    text-align: center;
    font-size: 1rem;
    color: #fff
}

.tree_map_wrap .hid_box_inn .ic_close {
    width: 15px;
    height: 15px;
    background: url("/resource/templete/royal/img/common/icon_close_w.png") no-repeat center / 100%;
    position: absolute;
    right: 15px;
    top: 15px
}

@media screen and (max-width: 1024px) {
    .tree_wrap .box_wrap {
        padding: 25px
    }

    .tree_wrap .box_wrap,
    .tree_wrap .box_wrap .left {
        flex-wrap: wrap;
        justify-content: center;
        text-align: center
    }

    .tree_wrap .box_wrap .left {
        margin-bottom: 20px
    }

    .tree_wrap .box_wrap .txt_wrap {
        margin: 0;
        word-break: keep-all
    }

    .tree_map_wrap {
        padding: 30px 20px
    }
}

/*가이드 - 사이트맵*/
.site_map_wrap {
    border: solid 2px #0a134f;
    border-left: none;
    border-right: none;
    word-break: keep-all
}

.site_map_wrap .sitemap-depth1__item {
    width: 100%;
    display: flex;
    border-bottom: solid 2px #EAEAEA
}

.site_map_wrap .sitemap-depth1__item:last-child {
    border-bottom: none
}

.site_map_wrap .depth1__a {
    background: #F8F8F8;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-weight: bold;
    font-size: 1.125rem;
    width: 140px
}

.site_map_wrap .sitemap-depth2__wrap,
.site_map_wrap .sitemap-depth2__wrap .inner {
    width: 100%
}

.site_map_wrap .sitemap-depth2__wrap .inner {
    padding: 40px
}

.site_map_wrap .sitemap-depth2 {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px
}

.site_map_wrap .depth2__a {
    font-size: 1.125rem;
    font-weight: 500;
    margin-bottom: 10px
}

.site_map_wrap .sitemap-depth3__item {
    margin: 8px 0
}

.site_map_wrap .depth3__a {
    font-size: 1rem;
    color: #333;
    display: flex
}

.site_map_wrap .depth3__a:before {
    content: "-";
    margin-right: 5px;
    flex-shrink: 0
}

@media screen and (max-width: 1024px) {
    .site_map_wrap .sitemap-depth1__item {
        display: block
    }

    .site_map_wrap .depth1__a {
        width: 100%;
        height: 60px
    }

    .site_map_wrap .sitemap-depth2__wrap .inner {
        padding: 20px
    }

    .site_map_wrap .sitemap-depth2 {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px
    }
}

/*가이드 - 개인정보처리방침*/
.page_privacy_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px
}

.page_privacy_list.li_4{
    grid-template-columns: repeat(4, 1fr);
}

.page_privacy_item {
    border: 1px solid #131313;
    border-radius: 20px;
    text-align: center
}

.page_privacy_item .wrap {
    padding: 30px
}

.page_privacy_item .img_wrap {
    width: 100%;
    height: 60px;
    margin-bottom: 15px
}

.page_privacy_item .img_wrap img {
    max-height: 60px
}

.page_privacy_item .txt_wrap {
    font-size: 1.125rem;
    font-weight: 500
}

.page_privacy_tit_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px
}

.page_privacy_tit {
    font-size: 1.250rem;
    font-weight: 600
}

.previous_policy {
    display: flex;
    align-items: center
}

.previous_policy select {
    width: 255px;
    margin-right: 20px
}

@media screen and (max-width: 1024px) {
    .page_privacy_list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 15px
    }

    .page_privacy_list.li_4 {
        grid-template-columns: repeat(2, 1fr);
    }

    .page_privacy_tit_wrap {
        display: block;
        margin-bottom: 15px
    }

    .page_privacy_tit_wrap .ic_list {
        margin-top: 10px;
        display: flex;
        justify-content: flex-end
    }
}

/* [E] sub */


/*전시관 마커*/

/*석조전 2층*/
.exhibition1_f2 .marker01{ left: 36.5%; top: 42.5%}
.exhibition1_f2 .marker02{ left: 45%; top: 33%}
.exhibition1_f2 .marker03{ left: 55%; top: 33%}
.exhibition1_f2 .marker04{ left: 64.2%; top: 42.5%}

/*석조전 1층*/
.exhibition1_f1 .marker01{ left: 50%; top: 65%}
.exhibition1_f1 .marker02{ left: 66%; top: 67.5%}
.exhibition1_f1 .marker03{ left: 50%; top: 38%}
.exhibition1_f1 .marker04{ left: 36.5%; top: 43%}
.exhibition1_f1 .marker05{ left: 31.5%; top: 67.5%}

/*석조전 지층*/
.exhibition1_b1 .marker01{ left: 26.5%; top: 28.5%}
.exhibition1_b1 .marker02{ left: 26.5%; top: 68%}
.exhibition1_b1 .marker03{ left: 36.5%; top: 42%}
.exhibition1_b1 .marker04{ left: 37.5%; top: 68%}

/*중명전*/
.exhibition2_ .marker_wrap .marker_txt{ max-width: 100px}
.exhibition2_f1 .marker01{ left: 61%; top: 71.5%}
.exhibition2_f1 .marker02{ left: 37.5%; top: 63%}
.exhibition2_f1 .marker03{ left: 61%; top: 54%}
.exhibition2_f1 .marker04{ left: 63%; top: 32%}

/*조선왕릉전시관*/
.exhibition3 .marker01{ left: 67.5%; top: 29%}
.exhibition3 .marker02{ left: 30%; top: 70%}
.exhibition3 .marker03{ left: 41%; top: 75%}
.exhibition3 .marker04{ left: 60%; top: 74.5%}
.exhibition3 .marker05{ left: 67%; top: 75%}

/*세종대왕역사문화관*/
.exhibition4 .marker01{ left: 67%; top: 52%}
.exhibition4 .marker02{ left: 28.5%; top: 52%}
.exhibition4 .marker03{ left: 45.5%; top: 62%}

/* LNB 새창숨김 */
span.new_win {
	display: none;
}

/*main - jpn*/
.more_info{ width: 135px; height: 45px; border: 1px solid #131313; display: flex; justify-content: center; align-items: center; border-radius: 23px; font-weight: 600}
.more_info img{ margin-left: 15px;}
.main_tab{ margin: 40px 0; overflow: hidden;}
.main_tab .swiper-wrapper{ justify-content: center}
.main_tab .swiper-slide{ width: auto}
.main_tab .swiper-slide a{ padding: 8px 30px; border: solid 1px #DCDFE3; font-size: 1.250rem; color: #949494; border-radius: 25px}
.main_tab .swiper-slide a.current{ border: solid 1px #131313; background: #131313; color: #fff}
.palaces_slide .img_wrap img{ width: 100%}
.palaces_map_wrap{ display: flex}
.palaces_map_wrap .left{ padding-right: 110px}
.palaces_map_wrap .palaces_map{ position: relative}
.palaces_map_wrap .palaces_map svg{ width: 100%}
.palaces_map_wrap .palaces_map img{ width: 100%}
.palaces_map_wrap .palaces_map .palaces_marker_wrap{ width: 100%; height: 100%; position: absolute; left: 0; top: 0}
.palaces_map_wrap .palaces_map .palaces_marker{ fill: #888}
.palaces_map_wrap .palaces_map .palaces_marker.current{ fill: #1D65B8}
.palaces_map_wrap .palaces_map .line.current{ stroke: #1D65B8 !important;}
.palaces_map_wrap .palaces_map .bg.current{ stroke: #1D65B8 !important; fill: #fff !important;}
.palaces_map_wrap .palaces_map .round.current{ stroke: #1D65B8 !important; fill: #1D65B8 !important;}
.more_info{ width: 135px; height: 45px; border: 1px solid #131313; display: flex; justify-content: center; align-items: center; border-radius: 23px; font-weight: 600}
.more_info img{ margin-left: 15px;max-width:100%; width:auto !important;}
.palaces_slide{ overflow: hidden; padding-bottom: 75px; position: relative}
.palaces_slide .swiper-slide{ position: relative}
.palaces_slide .swiper-slide .more_info{ position: absolute; left: 0; bottom: -75px}
.palaces_slide .swiper-use-wrap{ position: absolute; right: 0; bottom: 0; display: flex; justify-content: flex-end; width: 100%}
.palaces_slide .swiper-use-wrap .more_info{ position: absolute; left: 0; bottom: 0}

.palaces_slide .swiper-button-next,
.palaces_slide .swiper-button-prev {
    z-index: 20 !important;
    width: 45px;
    height: 45px;
    position: static;
    background: transparent;
    border-radius: 50%;
    border: solid 1px #131313;
    opacity: 1;
    margin-top: 0
}

.palaces_slide .swiper-button-next:after,
.palaces_slide .swiper-button-prev:after {
    color: #131313;
    font-size: 1rem
}

.palaces_slide .swiper-button-next.swiper-button-disabled,
.palaces_slide .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.palaces_slide .swiper-button-prev {
    margin-right: 15px;
}

@media(max-width:1024px){
    .main_tab .swiper-slide a{padding: 8px 20px; font-size: 1rem;}
}

.main_section.royalTombs{ background: #f8f8f8;}
.tombs_map_main{ width: 100%; display: flex; justify-content: space-between}
.tombs_map_main .tombs_map .hid_box{ position: absolute; left: 0; top: 0; font-size: 1.250rem; font-weight: bold; display: none;}
.tombs_map_main .tombs_map .hid_box img{ margin-right: 15px}
.tombs_map_main .right{ flex-shrink: 0; justify-content: flex-end; margin-left: 50px}
.tombs_map_main .right .main_tit{ justify-content: flex-end}
.tombs_map_main .right .more_info_wrap{ display: flex; justify-content: flex-end; margin: 15px 0 38px}
.tombs_map_main .tombs_map svg{ width: 100%}
.tombs_map_main .tombs_round_blue.current,
.tombs_map_main .tombs_bg_blue.current,
.tombs_map_main .tombs_marker_blue{ fill: #2c61a5}
.tombs_map_main .tombs_round_teal.current,
.tombs_map_main .tombs_bg_teal.current,
.tombs_map_main .tombs_marker_teal{ fill: #157a8e}
.tombs_map_main .tombs_round_green.current,
.tombs_map_main .tombs_bg_green.current,
.tombs_map_main .tombs_marker_green{ fill: #487f2e}
.tombs_map_main .tombs_round_violet.current,
.tombs_map_main .tombs_bg_violet.current,
.tombs_map_main .tombs_marker_violet{ fill: #714dc7}
.tombs_map_main .tombs_marker.current{ fill: #fff !important;}

.tombs_slide{ overflow: hidden; position: relative; height: 810px; padding: 22px 0; margin-top: 40px;}
.tombs_slide .swiper-slide{ position: relative; height: 100% !important;}

.tombs_slide .more_info{
    margin: auto;
}

.tombs_slide .swiper-button-next,
.tombs_slide .swiper-button-prev {
    z-index: 20 !important;
    width: 45px;
    height: 45px;
    position: absolute;
    border-radius: 50%;
    border: solid 1px #131313;
    opacity: 1;
    margin-top: 0;
    left: 50%;
    top: auto;
    background: rgba(255,255,255,0.3);
}

.tombs_slide .swiper-button-next:after,
.tombs_slide .swiper-button-prev:after {
    color: #131313;
    font-size: 1rem
}

.tombs_slide .swiper-button-next.swiper-button-disabled,
.tombs_slide .swiper-button-prev.swiper-button-disabled {
    pointer-events: inherit;
    opacity: 0.5
}

.tombs_slide .swiper-button-prev {
    top: 0;
    transform: translateX(-50%) rotate(90deg);
}
.tombs_slide .swiper-button-next {
    bottom: 1px;
    transform: translateX(-50%) rotate(90deg);
}

.palaces_intro_list{ display: grid; grid-template-columns: repeat(3,1fr); gap: 40px}
.palaces_intro_item{ position: relative; display: flex; align-items: flex-end; justify-content: center; color: #fff !important; font-size: 2rem; font-weight: 600; padding: 30px 15px}
.palaces_intro_item:after{ content: ""; padding-top: 79.5454%; display: block}
.palaces_intro_item.item01{ background: url("/resource/templete/jpn/img/main/jpn/palaces_img_01.jpg") no-repeat center / cover}
.palaces_intro_item.item02{ background: url("/resource/templete/jpn/img/main/jpn/palaces_img_02.jpg") no-repeat center / cover}
.palaces_intro_item.item03{ background: url("/resource/templete/jpn/img/main/jpn/palaces_img_03.jpg") no-repeat center / cover}

.footer_lang{ background: #F8F8F8; padding: 65px 0 75px; text-align: center}
.footer_lang .footer_logo{ margin-bottom: 42px}
.footer_lang .footer_txt{ color: #666666; font-size: 0.938rem; line-height: 2}

@media screen and (max-width: 1024px) {
    .main_tab .swiper-wrapper{ justify-content: flex-start}
    .palaces_map_wrap{ display: block}
    .palaces_map_wrap .half{ width: 100%}
    .palaces_map_wrap .left{ padding-right: 0; margin-bottom: 30px}

    .tombs_map_main{ display: block;}
    .tombs_map_main .main_tit{ justify-content: center; text-align: center; margin-bottom: 40px}
    .tombs_map_main .tombs_map{ overflow-x: auto; position: relative}
    .tombs_map_main .tombs_map::-webkit-scrollbar { height: 8px; }
    .tombs_map_main .tombs_map::-webkit-scrollbar-thumb { height: 10%; background: #131313; border-radius: 5px}
    .tombs_map_main .tombs_map::-webkit-scrollbar-track{ background: rgba(0,0,0,0.3)}
    .tombs_map_main .tombs_map svg{ width: 1090px}

    .tombs_map_main .right{ margin-left: 0; width: 100%; position: relative}
    .tombs_slide{ width: 100%; height: auto; padding: 0 22px 75px; margin-top: 50px}
    .tombs_slide .swiper-slide img{ width: 100%}
    .tombs_slide .more_info{ margin:10px 0 0; }
    .tombs_slide .swiper-button-next,
    .tombs_slide .swiper-button-prev { left: auto; right: auto; top: auto; bottom: auto; transform: translate(0,0)}
    .tombs_slide .swiper-button-prev { right: 82px; bottom: 0}
    .tombs_slide .swiper-button-next { right: 22px; bottom: 0}
    .tombs_map_main .right .more_info_wrap{ margin: 0; position: absolute; left: 22px; bottom: 0}

    .palaces_intro_list{ display: grid; grid-template-columns: repeat(1,1fr); gap: 20px}
    .palaces_intro_item{font-size: 1.5rem;}
    .palaces_intro_item:after{ padding-top: 56.4516%}
}

