#container{line-height:1.25em; word-break:keep-all; padding:0 0 40px}
#container *{box-sizing:border-box; }

@media only screen and (max-width:640px){
    .wrap{width:calc(100% - 20px); margin: 0 auto;}
}
/* 비쥬얼 영역 */


#header {position:absolute; top:0; left:0; width:100%;}

/* 제목 */
.sub_title {padding-top:158px; padding-bottom:22px; background-image:url('/site/reserve/images/vi_img.png'); background-repeat:no-repeat; background-position:center bottom; background-color:#46369a; font-size:0; line-height:0; text-align:center;}
#sub2 .sub_title {background-color:#1b3e9a;}
#sub3 .sub_title {background-color:#b32057;}
#sub4 .sub_title {background-color:#0079b8;}
#sub5 .sub_title {background-color:#dd5740;}

.sub_title h2 {display:inline-block; min-width:336px; padding-right:38px; padding-left:38px; border:1px solid rgba(255, 255, 255, 0.47); border-radius:38px;}
.sub_title .sub_title_text {display:inline-block; position:relative; padding:23px 5px 23px 81px; color:#fefefe; font-size:30px; line-height:32px;}
#sub2 .sub_title .sub_title_text {padding-left:74px;}
#sub3 .sub_title .sub_title_text {padding-left:69px;}
#sub4 .sub_title .sub_title_text {padding-left:83px;}
#sub5 .sub_title .sub_title_text {padding-left:69px;}

.sub_title .sub_title_text:before {display:block; position:absolute; top:17px; left:0; width:57px; height:44px; background:url('/site/reserve/images/sub1_title_icon.png') no-repeat center;}
#sub2 .sub_title .sub_title_text:before {top:11px; width:48px; height:56px; background-image:url('/site/reserve/images/sub2_title_icon.png');}
#sub3 .sub_title .sub_title_text:before {top:12px; width:38px; height:54px; background-image:url('/site/reserve/images/sub3_title_icon.png');}
#sub4 .sub_title .sub_title_text:before {width:62px; height:45px; background-image:url('/site/reserve/images/sub4_title_icon.png');}
#sub5 .sub_title .sub_title_text:before {width:45px; height:45px; background-image:url('/site/reserve/images/sub5_title_icon.png');}
@media all and (max-width:1222px) {
	.sub_title {padding-top:158px;}
}
@media all and (max-width:1000px) {
	.sub_title {padding-top:112px;}
}
@media all and (max-width:640px) {
	.sub_title {padding-top:100px; padding-right:3%; padding-left:3%;}
	.sub_title h2 {display:block; min-width:0;}
	.sub_title .sub_title_text {padding-top:11px; padding-bottom:12px; padding-left:60px; font-size:22px; line-height:24px;}
	#sub2 .sub_title .sub_title_text {padding-left:56px;}
	#sub3 .sub_title .sub_title_text {padding-left:52px;}
	#sub4 .sub_title .sub_title_text {padding-left:62px;}
	#sub5 .sub_title .sub_title_text {padding-left:52px;}
	#sub6 .sub_title .sub_title_text {padding-left:48px;}
	.sub_title .sub_title_text:before {top:7px; width:42px; height:33px; background-size:cover;}
	#sub2 .sub_title .sub_title_text:before {top:3px; width:35px; height:42px;}
	#sub3 .sub_title .sub_title_text:before {top:3px; width:28px; height:41px;}
	#sub4 .sub_title .sub_title_text:before {width:46px; height:34px;}
	#sub5 .sub_title .sub_title_text:before {width:33px; height:34px;}
	#sub6 .sub_title .sub_title_text:before {top:3px; width:30px; height:41px;}
}

/* 서브 상단 */
@media all and (max-width:640px) {
	.sub_head .wrap {padding-bottom:4px; border-bottom:1px solid #f0f0f0;}
}

/* 경로 */
.path {float:left; padding-top:30px;}
.path li:last-child {font-weight:600;}
@media all and (max-width:640px) {
	.path {padding-top:12px;}
}

/* 애드온 */
.addons {float:right; padding-top:20px;}
@media all and (max-width:640px) {
	.addons {padding-top:4px;}
}


/* 경로 */
.path li {display:block; float:left; position:relative; margin-right:7px; padding-right:19px; color:#232323; font-size:16px; line-height:22px;}
.path li:first-child {width:11px; height:22px; background:url('/common/images/sub/path_sprite.png') no-repeat left center; font-size:0;}
.path li:last-child {margin-right:0; padding-right:0; text-decoration:underline;}
.path li:before {display:block; position:absolute; top:0; right:0; color:#6b6b6b; content:'>';}
.path li:first-child:before {font-size:16px;}
.path li:last-child:before {display:none;}
.path li a {color:inherit;}
@media all and (max-width:640px) {
	.path li {font-size:14px; line-height:18px;}
	.path li:first-child {height:18px;}
	.path li:first-child:before {font-size:14px;}
}

/* 탭메뉴 */
main .tab_menu {margin-top:50px;}
main .tab_menu .tab_select {display:none;}
main .tab_menu .tab_contents {margin-top:50px;}
@media all and (max-width:1000px) {
	main .tab_menu {overflow:visible;}
	main .tab_menu .tab_select {display:block; position:relative; width:100%; padding:14px 40px 15px 24px; background-color:#282a37; color:#fff; font-size:15px; line-height:17px; font-weight:600; text-align:left;}
	main .tab_menu .tab_select.active {text-decoration:none;}
	main .tab_menu .tab_select:before {display:block; position:absolute; top:13px; right:14px; width:21px; height:21px; border-radius:50%; background-color:#fff;}
	main .tab_menu .tab_select:after {display:block; position:absolute; top:20px; right:18px; width:13px; height:8px; background:url('/common/images/sub/tabmenu_sprite.png') no-repeat left top;}
	main .tab_menu .tab_nav {display:none; position:absolute; left:0; width:100%; padding:11px 13px; box-sizing:border-box; background-color:#f7f7f7;}
	main .tab_menu .tab_list {overflow-x:hidden; overflow-y:auto; max-height:147px;}
	main .tab_menu .tab_list.clearfix .tab_item {float:none;}
	main .tab_menu .tab_item {display:block; border-top:1px solid #e3e3e3; text-align:left;}
	main .tab_menu .tab_item:first-child {border-top-width:0;}
	main .tab_menu .tab_btn {display:block; position:relative; padding-top:9px; padding-bottom:10px; padding-left:23px; color:#303030; font-size:15px; line-height:17px;}
	main .tab_menu .tab_btn[target='_blank'] {display:inline-block; padding-right:19px;}
	main .tab_menu .active .tab_btn {font-weight:600; text-decoration:none;}
	main .tab_menu .tab_btn:before {display:block; position:absolute; top:17px; left:9px; width:5px; height:2px; background-color:#686868;}
	main .tab_menu .tab_btn[target='_blank']:after {display:block; position:absolute; top:14px; right:0; width:12px; height:12px; background:url('/common/images/layout/blank_sprite.png') no-repeat left top;}
}
@media all and (max-width:640px) {
	main .tab_menu {margin-top:25px;}
	main .tab_menu .tab_contents {margin-top:25px;}
}

/* 탭메뉴2 */
@media all and (min-width:1001px) {
	main .tab_menu.type2 .tab_list {overflow:hidden; position:relative; padding-top:1px; padding-bottom:10px; padding-left:1px;}
	main .tab_menu.type2 .tab_item {position:relative; min-width:158px; margin-top:-1px; margin-left:-1px; border:1px solid #cacbd3; background-color:#f3f5f8; text-align:center;}
	main .tab_menu.type2 .active {z-index:10; border-color:transparent; background-color:#282a37;}
	main .tab_menu.type2 .active:before {display:block; position:absolute; top:100%; left:-1px; width:0; height:0; border-top:10px solid #282a37; border-right:10px solid transparent;}
	main .tab_menu.type2 .tab_btn {display:block; position:relative; padding:11px 5px; color:#252525; font-size:16px; line-height:18px;}
	main .tab_menu.type2 .active .tab_btn {color:#fff; font-weight:600; text-decoration:none;}
	main .tab_menu.type2 .tab_btn[target='_blank'] {display:inline-block; margin-right:5px; padding-right:19px;}
	main .tab_menu.type2 .tab_btn[target='_blank']:before {display:block; position:absolute; top:14px; right:0; width:12px; height:12px; background:url('/common/images/layout/blank_sprite.png') no-repeat left top;}
	main .tab_menu.type2 .active .tab_btn[target='_blank']:before {background-position:left -22px;}
}
@media all and (min-width:1001px) and (max-width:1222px) {
	main .tab_menu.type2 .tab_item {min-width:148px;}
}

/* 탭메뉴3 */
@media all and (min-width:1001px) {
	main .tab_menu.type3 .tab_nav {border:1px solid #282a36; padding:25px 12px;}
	main .tab_menu.type3 .tab_nav:before {display:block; position:absolute; top:0; left:0; width:24px; height:24px; background-color:#282a36;}
	main .tab_menu.type3 .tab_nav:after {display:block; position:absolute; top:7px; left:6px; width:13px; height:10px; background:url('/common/images/sub/tabmenu_sprite.png') no-repeat left -18px;}
	main .tab_menu.type3 .tab_list {background:url('/common/images/sub/tabmenu_pattern.png') repeat left top;}
	main .tab_menu.type3 .tab_item {position:relative; max-width:100%; margin-right:12px; padding-top:20px; padding-bottom:20px; padding-left:58px; box-sizing:border-box;}
	main .tab_menu.type3 .tab_item:before {display:block; position:absolute; top:26px; left:44px; width:8px; height:8px; border-radius:50%; background-color:#83869a;}
	main .tab_menu.type3 .active:before {top:20px; left:33px; width:20px; height:20px; background-color:#282a36;}
	main .tab_menu.type3 .active:after {display:block; position:absolute; top:26px; left:38px; width:10px; height:9px; background:url('/common/images/sub/tabmenu_sprite.png') no-repeat left -38px;}
	main .tab_menu.type3 .tab_btn {display:block; overflow:hidden; position:relative; color:#343434; font-size:16px; line-height:20px; white-space:nowrap; text-overflow:ellipsis;}
	main .tab_menu.type3 .active .tab_btn {color:#343434; text-decoration:none;}
	main .tab_menu.type3 .tab_btn[target='_blank'] {padding-right:19px;}
	main .tab_menu.type3 .tab_btn[target='_blank']:after {display:block; position:absolute; top:4px; right:0; width:12px; height:12px; background:url('/common/images/layout/blank_sprite.png') no-repeat left top;}
}

/* 애드온 */
.addons {font-size:0; line-height:0;}
.addons .addons_btn, .addons .addons_close {display:none;}
.addons .addons_item {display:inline-block; margin-left:5px; vertical-align:middle;}
.addons .addons_item:first-child {margin-left:0;}
.addons .addons_text {display:block; width:42px; height:42px; border-radius:50%; background-color:#272a36; line-height:42px; text-align:center; vertical-align:middle;}
.addons .addons_text:before {display:inline-block; background-image:url('/common/images/sub/addons_sprite.png'); background-repeat:no-repeat; vertical-align:middle;}
.addons .facebook .addons_text:before {width:10px; height:20px; background-position:left top;}


.addons .kakaostory .addons_text:before {width:10px; height:19px; background-position:left -59px;}
.addons .print .addons_text:before {width:19px; height:19px; background-position:left -88px;}
@media all and (max-width:640px) {
	.addons {position:relative;}
	.addons .addons_btn {display:block; width:38px; height:38px; border-radius:50%; background-color:#272a36;}
	.addons .addons_btn:before {display:inline-block; width:18px; height:19px; background:url('/common/images/sub/addons_sprite.png') no-repeat left -255px;}
	.addons .addons_content {visibility:hidden; opacity:0; position:absolute; top:0; right:100%; margin-right:5px; padding:3px; border:1px solid #272a36; border-radius:20px; background-color:#fff; white-space:nowrap; transition-property:visibility, opacity; transition-duration:0.25s; transition-timing-function:linear;}
	.addons.active .addons_content {visibility:visible; opacity:1;}
	.addons .addons_list {display:inline-block; padding-left:20px; vertical-align:middle;}
	.addons .addons_item {margin-left:20px;}
	.addons .addons_text {width:auto; height:auto; background-color:transparent; line-height:0;}
	.addons .facebook .addons_text:before {background-position:left -117px;}
	.addons .blog .addons_text:before {margin-right:0; background-position:left -147px;}
	.addons .kakaostory .addons_text:before {background-position:left -176px;}
	.addons .print .addons_text:before {background-position:left -205px;}
	.addons .addons_close {display:inline-block; width:30px; height:30px; margin-left:15px; border-radius:50%; background-color:#686a72;}
	.addons .addons_close:before {display:inline-block; width:12px; height:11px; background:url('/common/images/sub/addons_sprite.png') no-repeat left -234px;}
}

/* (첨부파일 아이콘) */
.p-icon__docx {background-image:url(/common/images/program/p-icon@2x.png); background-size:242px 212px;}
.p-icon__xlsx {background-image:url(/common/images/program/p-icon.png); background-position:-220px 0; width:22px; height:22px;}

/* 예약 프로그램 공통 */
/* (상세검색 버튼) */
.program .list .basic_search .p-button.search {position:relative; padding-right:40px; padding-left:25px;}
.program .list .basic_search .p-button.search .skip {top:16px; right:20px; width:8px; height:8px;}
.program .list .basic_search .p-button.search .skip:before, .program .list .basic_search .p-button.search .skip:after {display:block; position:absolute; background-color:#fff;}
.program .list .basic_search .p-button.search .skip:before {top:0; left:3px; width:2px; height:100%;}
.program .list .basic_search .p-button.search .skip:after {top:3px; left:0; width:100%; height:2px;}
.program .list .basic_search .p-button.search.active .skip:before {display:none;}
@media all and (max-width:640px) {
	.program .list .basic_search .p-form-group__button {display:block; width:auto; text-align:right;}
}
@media all and (max-width:480px) {
	.program .list .basic_search .p-input  {display:block; width:100%;}
	.program .list .basic_search .p-form__split {display:none;}
}

/* (진행상태) */
.program .p-badge.status { box-sizing:border-box;}

/* (상세보기 타이틀) */
.program .view .title {margin-top:55px; margin-bottom:55px; padding-top:15px; padding-bottom:15px; padding-left:86px; background-color:#0c6dc7; color:#fff; font-size:18px; font-weight:600;}
.program .view .title:before, .program .view .title:after {display:block; position:absolute;}
.program .view .title:before {top:0; left:0; width:60px; height:100%; border-width:0; border-radius:0; background-color:#282a37;}
.program .view .title:after {top:19px; left:20px; width:21px; height:12px; background:url('/site/reserve/images/program/reserve_detail_info_icon.png') no-repeat left top;}
.program .education.view .title {background-color:#0c6dc7;}
.program .facilities.view .title {background-color:#46369a;}
.program .etc.view .title {background-color:#6559c3;}
.program .mypage.view .title {background-color:#dc6822;}


/* 시설대관(신청), 기타예약(신청) 공통 */
.program .apply .p-search {padding:0; border-radius:15px;}
.program .apply .p-search .p-form-group {display:block; width:100%; margin-right:0; margin-left:0; padding:19px 50px 15px 190px; box-sizing:border-box; white-space:normal;}
.program .apply .p-search .p-form-group .month_title {position:absolute; top:0; left:0; width:140px; height:100%; color:#fff; font-size:18px; line-height:90px; text-align:center; border-radius:10px 0 0 10px; box-sizing:border-box; background-color:#383c4c;}
.program .apply .p-search .p-form-group select.p-input {float:left; position:relative; width:130px; height:50px; margin-top:0; margin-right:30px; margin-bottom:0; padding-top:6px; padding-bottom:6px; border-radius:10px; background:#fff url('/site/reserve/images/program/facilities_sprite.png') no-repeat 95px -72px; line-height:30px;}
.program .apply .p-search .p-form-group .month_list {float:left; font-size:0;}
.program .apply .p-search .p-form-group .month_list .month_item {display:inline-block; position:relative; width:51px; height:51px; margin-bottom:5px; margin-right:10px; border-radius:50%; background-color:#fff;}
.program .apply .p-search .p-form-group .month_list .month_item:last-child {margin-right:0;}
.program .apply .p-search .p-form-group .month_list .month_item:before {visibility:hidden; opacity:0; display:block; position:absolute; bottom:0; right:0; left:0; width:13px; height:7px; margin-right:auto; margin-left:auto; background:url('/site/reserve/images/program/facilities_sprite.png') no-repeat left -120px;}
.program .apply .p-search .p-form-group .month_list .month_item a {display:block; color:#353535; font-size:16px; line-height:51px; text-align:center;}
.program .apply .p-search .p-form-group .month_list .month_item.active {background-color:#6559c3;}
.program .apply .p-search .p-form-group .month_list .month_item.active:before {visibility:visible; opacity:1; bottom:-5px;}
.program .apply .p-search .p-form-group .month_list .month_item.active a {color:#fff;}
@media all and (max-width:1222px) {
	.program .apply .p-search .p-form-group {padding-right:10px; padding-left:125px;}
	.program .apply .p-search .p-form-group .month_title {width:110px;}
	.program .apply .p-search .p-form-group select.p-input {margin-right:10px;}
	.program .apply .p-search .p-form-group .month_list .month_item {margin-right:8px;}
}
@media all and (max-width:1000px) {
	.program .apply .p-search .p-form-group {padding-left:295px;}
	.program .apply .p-search .p-form-group .month_title {line-height:166px;}
	.program .apply .p-search .p-form-group select.p-input {float:none; position:absolute; top:53px; left:140px;}
	.program .apply .p-search .p-form-group .month_list {float:none; width:452px;}
	.program .apply .p-search .p-form-group .month_list .month_item {margin-bottom:15px; margin-right:5%;}
}
@media all and (max-width:800px) {
	.program .apply .p-search .p-form-group {padding:12px 0 0 0; text-align:center;}
	.program .apply .p-search .p-form-group .month_title {display:none;}
	.program .apply .p-search .p-form-group select.p-input {position:static; margin-right:0; margin-bottom:15px;}
	.program .apply .p-search .p-form-group .month_list {width:auto;}
	.program .apply .p-search .p-form-group .month_list .month_item {margin-right:2%; margin-left:2%;}
}
.program .apply .box_wrap .box:nth-child(2n+1) {width:414px; margin-right:26px;}
.program .apply .box_wrap .box:nth-child(2n) {width:calc(100% - 440px);}
.program .apply .box.information {float:left; margin-top:25px; margin-bottom:0; padding:73px 25px 20px; border-top-width:1px; border-color:#d0d3dd; border-radius:10px; box-shadow:none; box-sizing:border-box;}
.program .apply .box.information:before, .program .apply .box.information:after {display:none;}
.program .apply .box.information .title {position:absolute; top:0; left:0; width:100%; padding:20px 52px; border-radius:10px 10px 0 0; box-sizing:border-box; color:#fff; font-size:18px; font-weight:600; background-color:#51576b;}
.program .apply .box.information .title:before {display:block; top:22px; left:25px; width:15px; height:15px; border-width:0; background:url('/site/reserve/images/program/facilities_sprite.png') no-repeat left -137px;}
.program .apply .box.information.information1 {height:511px; padding:35px 24px 24px; border-width:2px; border-color:#383c4c;}
.program .apply .calendar_month {margin-bottom:26px;color:#000; font-size:22px; line-height:24px; text-align:center;}
.program .apply .calendar_table {border-collapse:collapse;}
.program .apply .calendar_table:before {display:none;}
.program .apply .calendar_table thead tr:first-child th {border-top:2px solid #222; border-bottom-color:#888; background-color:#fafafa; color:#666; font-weight:400;}
.program .apply .calendar_table th {padding:7px 10px; border-right:1px solid #e2e2e2; border-color:#e2e2e2;}
.program .apply .calendar_table td {height:51px; padding:6px; border-right:1px solid #e2e2e2; box-sizing:border-box; text-align:center; vertical-align:middle;}
.program .apply .calendar_table td button {width:100%; height:100%; border:2px solid #383c4c; border-radius:50%; box-sizing:border-box;}
.program .apply .calendar_table td button.active {color:#fff; border-color:transparent; background:url('/site/reserve/images/program/facilities_calendar_pattern.png') repeat left top;}
.program .apply .calendar_label_list {margin-top:20px; font-size:0; text-align:center;}
.program .apply .calendar_label_list .calendar_label {display:inline-block; position:relative; padding-left:29px; color:#383c4c; font-size:15px; line-height:20px; letter-spacing:-0.05em; vertical-align:middle;}
.program .apply .calendar_label_list .calendar_label:first-child {margin-right:30px;}
.program .apply .calendar_label_list .calendar_label:before {display:block; position:absolute; top:0; left:0; width:16px; height:16px; border:2px solid #383c4c; border-radius:50%;}
.program .apply .calendar_label_list .calendar_label.type2:before {border-color:transparent; background:url('/site/reserve/images/program/facilities_calendar_pattern.png') repeat left top;}
.program .apply .box.information.information2 {height:511px;}
@media all and (max-width:1000px) {
	.program .apply .box.information.information3 {margin-right:0;}
	.program .apply .box.information.information3, .program .apply .box.information.information4 {float:none; width:auto; height:auto;}
}
@media all and (max-width:800px) {
	.program .apply .calendar_table {width:370px; margin-right:auto; margin-left:auto;}
	.program .apply .calendar_month {margin-bottom:15px;}
	.program .apply .box.information.information1 {margin-right:0; padding:15px 10px;}
	.program .apply .box.information.information1, .program .apply .box.information.information2 {float:none; width:auto; height:auto;}	 
}
@media all and (max-width:640px) {
	.program .apply .box.information {padding-top:48px;}
	.program .apply .box.information .title {padding-top:15px; padding-bottom:15px;}
	.program .apply .box.information .title:before {top:15px;}
	.program .apply .box.information .table th, .program .apply .box.information .table td {padding-top:7px; padding-bottom:7px;}
}
@media all and (max-width:480px) {
	.program .apply .calendar_table {width:300px;}
	.program .apply .calendar_table td {padding:7px 2px;}
}
/* //예약 프로그램 공통 */

/* 교육/강좌(목록) */
.program .education.list .education_category ul {margin-bottom:30px; border-top:1px solid #b2b2b2; border-left:1px solid #b2b2b2;}
/*.program .education.list .education_category ul .category_item {float:left; width:calc(100% / 10); height:52px; border-right:1px solid #b2b2b2; border-bottom:1px solid #b2b2b2; box-sizing:border-box;}*/
.program .education.list .education_category ul .category_item {
	float: left;
	/* width: calc(100% / 10); */
	height: 52px;
	border-right: 1px solid #b2b2b2;
	border-bottom: 1px solid #b2b2b2;
	box-sizing: border-box;
}
.program .education.list .education_category ul .category_item a {display:block; color:#252525; font-size:15px; line-height:51px; 
	padding-left:10px; padding-right:10px; text-align:center; letter-spacing:-0.05em;}
.program .education.list .education_category ul .category_item a .category_name {display:inline-block; line-height:17px; vertical-align:middle;}
.program .education.list .education_category ul .category_item a .category_name span {font-size:0;}
.program .education.list .education_category ul .category_item {background-color:#fafafa;}
.program .education.list .education_category ul .category_item.type2 {background-color:#f9f0f4;}
.program .education.list .education_category ul .category_item.type3 {background-color:#e6f1fa;}
.program .education.list .education_category ul .category_item.type4 {background-color:#f9f7e9;}
.program .education.list .education_category ul .category_item .active {background-color:#383c4c; color:#fff;}
@media all and (max-width:1222px) {
	.program .education.list .education_category ul .category_item {
		/* width: calc(100% / 8); */
		width: 12.5%;
	}
}
@media all and (max-width:1000px) {
	.program .education.list .education_category ul .category_item {
		/* width: calc(100% / 5); */
		width: 20%;
	}
}
@media all and (max-width:640px) {
	.program .education.list .education_category ul .category_item {
		/* width: calc(100% / 3); */
		width: 33.3%;
	}
}

/* 교육/강좌(상세) */
.program .education.view .p-table__subject .h6:before {top:11px;}
.program .education.view .p-accordion__button {padding-top:0; padding-bottom:0; padding-left:0;}

/* 교육/강좌(신청현황) */
@media all and (max-width:765px){
    .program .education.apply .bbs .p-button {display:block; width:100%; margin-left:0;}
}

/* 시설대관(상세) */
.program .facilities.view .bbs {padding-bottom:55px; border-bottom:1px solid #d8d8d8;}
.program .facilities.view h3 {margin-bottom:26px; color:#262626; font-size:30px; font-weight:600; line-height:32px; text-align:center;}
.program .facilities.view .facilities_content {padding:28px 36px 60px 26px; border-top:2px solid #000; border-bottom:1px solid #d8d8d8; background-color:#f9f9f9;}
.program .facilities.view .facilities_content .facilities_gallery {float:left; position:relative; width:442px; margin-right:72px;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_control {position:absolute; top:50%; left:0; z-index:10; width:100%; height:0; margin-top:-68px; line-height:0;}
/*.program .facilities.view .facilities_content .facilities_gallery .gallery_control button {position:absolute; top:0; width:48px; height:54px; background-color:rgba(0, 0, 0, 0.78);}*/
.program .facilities.view .facilities_content .facilities_gallery .gallery_control button {
	position:absolute;
	top:0;
	width:48px;
	height:54px;
	background-color:rgba(0, 0, 0, 0.78);
	color: transparent;
}
.program .facilities.view .facilities_content .facilities_gallery .gallery_control button:before {display:block; position:absolute; top:0; right:0; bottom:0; left:0; width:18px; height:31px; margin:auto; background-image:url('/site/reserve/images/program/facilities_sprite.png'); background-repeat:no-repeat;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_control .gallery_prev {left:0;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_control .gallery_prev:before {background-position:left top;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_control .gallery_next {right:0;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_control .gallery_next:before {background-position:left -41px;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_list {margin-bottom:6px;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_list .gallery_item {width:442px; height:332px;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_thumb {overflow:hidden; position:relative;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_thumb .slick-list {margin-left:-6px;}
.program .facilities.view .facilities_content .facilities_gallery .gallery_thumb .slick-slide {margin-left:6px; background-size:cover; background-repeat:no-repeat; background-position:left top;}
/*.program .facilities.view .facilities_content .facilities_info {float:left;}*/
.program .facilities.view .facilities_content .facilities_info {
	float:left;
	width: 620px;
}
@media all and (max-width:765px){
	.program .facilities.view .p-button.restore{display:inline-block;}
}
@media all and (max-width:1000px) {
	.program .facilities.view .facilities_content .facilities_gallery {float:none; margin-right:auto; margin-bottom:25px; margin-left:auto;}
	/*.program .facilities.view .facilities_content .facilities_info {float:none;}*/
	.program .facilities.view .facilities_content .facilities_info {
		float:none;
		width: auto;
	}
}
@media all and (max-width:640px) {
	.program .facilities.view .facilities_content {padding-right:10px; padding-left:10px;}
	.program .facilities.view .facilities_content .facilities_gallery {width:360px;}
	.program .facilities.view .facilities_content .facilities_gallery .gallery_list .gallery_item {width:360px; height:270px;}
}
@media all and (max-width:480px) {
	.program .facilities.view .facilities_content .facilities_gallery {width:270px;}	
	.program .facilities.view .facilities_content .facilities_gallery .gallery_control {margin-top:-56px;}
	.program .facilities.view .facilities_content .facilities_gallery .gallery_list .gallery_item {width:270px; height:203px;}	
}

/* 시설대관(신청) */
@media all and (max-width:1222px) {
	.program .facilities.apply .step_list li {margin-left:0;}
	.program .facilities.apply .step_list li:before {left:15px;}
	.program .facilities.apply .step_list li .step_status {width:140px;}
}
/*.program .facilities.apply .box.information.information2 .timetable_list li, .program .facilities.apply .box.information.information2 .extra_list li {float:left; width:calc(100% / 4);}*/
.program .facilities.apply .box.information.information2 .timetable_list li, .program .facilities.apply .box.information.information2 .extra_list li {
	float: left;
	/* width: calc(100% / 4); */
	width: 25%;
}
.program .facilities.apply .box.information.information3, .program .facilities.apply .box.information.information4 {}
@media all and (max-width:1000px) {
	/*.program .facilities.apply .box.information.information2 .timetable_list li, .program .facilities.apply .box.information.information2 .extra_list li {width:calc(100% / 2);}*/
	.program .facilities.apply .box.information.information2 .timetable_list li, .program .facilities.apply .box.information.information2 .extra_list li {
		/* width: calc(100% / 2); */
		width: 50%;
	}
}
@media all and (max-width:800px) { 
	.program .facilities.apply .box.information.information2 .timetable_list li, .program .facilities.apply .box.information.information2 .extra_list li {width:auto; margin-right:15px;}
	.program .facilities.apply .box.information.information2 .timetable_list li:last-child, .program .facilities.apply .box.information.information2 .extra_list li:last-child {margin-right:0;}
	.program .facilities.apply .box.information.information3, .program .facilities.apply .box.information.information4 {height:auto;}
}
/* //시설대관(신청) */

/* 수강신청접수(수강)증 프린트 */
.program .print.certificate {position:relative; padding:50px; text-align:center;}
/*.program .print.certificate .certificate_item {margin-top:30px; padding-top:30px; border-top:1px dashed #ccc;}*/
.program .print.certificate .certificate_item {margin-top:20px; padding-top:20px; border-top:1px dashed #ccc;}
.program .print.certificate .certificate_item:first-child {margin-top:0; padding-top:0; border-top-width:0;}
/*.program .print.certificate .certificate_content {position:relative; width:579px; height:434px; margin-right:auto; margin-left:auto; padding:10px; border:3px solid #2c2c2c; border-radius:15px;}*/
.program .print.certificate .certificate_content {
	position:relative;
	width:579px;
	/* height:434px; */
	margin-right:auto;
	margin-left:auto;
	padding:10px;
	border:3px solid #2c2c2c;
	border-radius:15px;
}
.program .print.certificate .certificate_text {padding:19px 17px 9px; border:1px dashed #000; border-radius:15px; background-color:#fff;}
/*.program .print.certificate h2 {display:inline-block; margin-bottom:17px; padding-top:3px; position:relative; padding-bottom:18px; border-bottom:1px solid #949494; color:#1c1c1c; font-size:25px; line-height:27px;}*/
.program .print.certificate h2 {
	display:inline-block;
	margin-bottom:17px;
	padding-top:3px;
	position:relative;
	padding-bottom:10px;
	border-bottom:1px solid #949494;
	color:#1c1c1c;
	font-size:22px;
	/* line-height:27px; */
}
.program .print.certificate h2:before {display:block; position:absolute; bottom:-8px; left:0; right:0; width:13px; height:8px; margin-right:auto; margin-left:auto; background:url('/site/reserve/images/program/certificate_title_bg.jpg') no-repeat left top;}
.program .print.certificate strong {position:absolute; top:30px; right:30px; color:#1c1c1c; font-size:15px; line-height:17px; font-weight:400;}
.program .print.certificate li {position:relative; margin-top:4px; padding-left:102px; color:#444; font-size:14px; line-height:24px; text-align:left;}
/*.program .print.certificate li:first-child {margin-top:0;}*/
/*.program .print.certificate li:nth-child(5) {padding-left:0;}*/
/* .program .print.certificate li:first-child {margin-top:0;} */
.program .print.certificate li:nth-child(5) {
	padding-left:0;
	margin-top: 0;
}
/*.program .print.certificate li:nth-child(5) li {float:left;}*/
.program .print.certificate li:nth-child(5) li {
	float:left;
	min-height: 24px; /* 값이 없을 경우 대비 */
}
/*.program .print.certificate li:nth-child(5) li:nth-child(2n + 1) {width:198px;}*/

.program .print.certificate li mark {display:block; position:absolute; top:0; left:0; width:86px; color:#fff; border-radius:20px; background-color:#535353; text-align:center;}
.program .print.certificate .certificate_confirm {margin-top:18px; padding-top:22px; padding-bottom:22px; border-radius:15px; background-color:#f5f5f5;}
/*.program .print.certificate p {color:#292929; font-size:14px; line-height:16px;}*/
.program .print.certificate p {
	color:#292929;
	font-size:14px;
	/* line-height:16px; */
	line-height: 1.4;
}
.program .print.certificate p mark {text-decoration:underline;}
.program .print.certificate time {display:block; margin-top:15px; color:#353535; font-size:15px; line-height:17px; font-weight:600;}
.program .print.certificate address {margin-top:15px; color:#353535; font-size:18px; line-height:20px;}
.program .print.certificate .btn {margin-top:30px;}
@media print {
	body {-webkit-print-color-adjust:exact;}
	.program .print.certificate h2:before {display:none;}
	.program .print.certificate li mark {background-color:#fff; color:#000;}
	.program .print.certificate .certificate_confirm {background-color:#fff;}
	.program .print.certificate .btn {display:none;}
}

/* (주)한신정보기술 이상준 - 2019.06.20 */

/* pagination 수정 */
@media (max-width:765px) {
	.p-page__control {
		width: 49%;
	}
}

/* 신청현황 > 교육강좌 상세 내 버튼크기 조절 */
.btn_lecture_container .left_side {
	float: left;
}
.btn_lecture_container .right_side {
	float: right;
}
@media all and (max-width:765px) {
	.program .education.apply .btn_lecture_container .p-button {
		display: inline-block;
		width: auto;
		margin-left: 4px;
	}
}
@media all and (max-width:600px) {
	.btn_lecture_container .left_side,
	.btn_lecture_container .right_side {
		width: 100%;
	}
	.program .education.apply .btn_lecture_container .p-button {
		display: block;
		width: 90%;
		margin: 5px auto 0;
	}
	.btn_lecture_container .right_side {
		margin-top: 1em;
	}
}

/* 기타예약 페이지 상단 배너  */
.etc_top_banner_container {
	position: relative;
	padding: 10px 20px 10px 170px;
	box-sizing: border-box;
	background-color: #ececec;
	margin-bottom: 2em;
}
.btn_banner_ctrl_container {
	position: absolute;
	top: 8px;
	left: 20px;
}
.btn_banner_ctrl_container [class^="btn_top_banner_"] {
	width: 40px;
	height: 40px;
}
.btn_banner_ctrl_container [class^="btn_top_banner_"]:before {
	display: inline-block;
	width: 8px;
	height: 16px;
	background:url('/common/images/layout/component/footer_banner_sprite.png') no-repeat left top;
}
.btn_banner_ctrl_container .btn_top_banner_play:before {
	width: 10px;
	background-position: 0 -26px;
}
.btn_banner_ctrl_container .btn_top_banner_next:before {
	background-position: 0 -78px;;
}
.btn_banner_ctrl_container .btn_top_banner_play.slick-play:before {
	width: 12px;
	background-position: left -52px;
}
.etc_top_banner .etc_link {
	margin-right: 2em;
	line-height: 2;
	font-size: 18px;
	color: #333;
}
@media all and (max-width:640px) {
	.btn_banner_ctrl_container {
		top: 10px;
		left: 10px;
	}
	.btn_banner_ctrl_container [class^="btn_top_banner_"] {
		width: 48px;
		height: 48px;
	}
	.etc_top_banner .etc_link {
		line-height: 48px;
		font-size: 15px;
	}
}

/* 교육/강좌 - 리스트 분류 버튼 */
.classify_btn_container {
	margin-bottom: 20px;
	float: left;
}
.classify_btn_container + div {
	margin-top: 10px;
	float: right;
}
.classify_btn_container a {
	position: relative;
	display: inline-block;
	width: 104px;
	line-height: 34px;
	background-color:#fff;
	color: #4e4e4e;
	border: 1px solid #d9d9d9;
	border-radius: 4px;
	text-align: center;
}
.classify_btn_container a.active {
	background-color: #202e6f;
	border-color: #202e6f;
	color: #fff;
}
.classify_btn_container a.active:before {
	content: '';
	position: absolute;
	display: inline-block;
	left: -1px;
	bottom: -8px;
	border-top: 5px solid #202e6f;
	border-left: 5px solid #202e6f;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
}
.classify_btn_container a.active:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 4px;
	margin-left: 7px;
	margin-bottom: 4px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-42deg);
}
.classify_btn_container a:nth-child(n+2) {
	margin-left: 0.5em;
}

/* 강좌 리스트 분류 버튼 - mobile*/
@media all and (max-width: 765px) {
	.classify_btn_container {
		margin-bottom: 10px;
		text-align: center;
	}
	.classify_btn_container,
	.classify_btn_container + div {
		float: none;
	}
	.classify_btn_container + div {
		text-align: right;
		margin-bottom: 5px;
	}
	.classify_btn_container a {
		width: 22%;
		font-size: 15px;
	}
	.classify_btn_container a.active:before,
	.classify_btn_container a.active:after {
		display: none;
	}
	.classify_btn_container a:nth-child(n+2) {
		margin-left: 0.2em;
	}
}

/* 리스트 테이블 - mobile*/
/*
현재 교육강좌 리스트에서만 사용되는것으로 판단하고 has_line 클래스를 추가하여 수정하는 형태로 하고 있다. 추후, 아래 코드에서 has_line을 빼면 공통 사용 가능할것으로 판단됨. 
				- 한신 정보기술 운영지원팀 이상준 2019. 06. 22
*/
@media all and (max-width: 765px) {
	.p-table.mobile.has_line tr {
		border-bottom: none;
	}
	.p-table.mobile.has_line tr td:last-child {
		border-bottom: 1px solid #d9d9d9;
		padding-bottom: 5px;
	}
	.p-table.mobile.has_line .tds > div,
	.p-table.mobile.has_line .tds .p-badge {
		display: inline-block;
		margin-right: 5px;
	}
	.p-table.mobile.has_line .tds .p-badge + br {
		display: none;
	}
	.p-table.simple .add-head {
		width: 26vw;
	}
}

/* 신청현황페이지 탭 버튼 - myReqstLctreList.jsp */
.btn_reservation_container {
	margin-top: 3em;
	border-bottom: 2px solid #333;
	margin-bottom: -2px;
	color: #333;
}
.btn_reservation_container a {
	float: left;
	display: inline-block;
	width: 140px;
	line-height: 2.2;
	border: 1px solid #333;
	border-bottom: none;
	font-size: 18px;
	color: inherit;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}
.btn_reservation_container a:nth-child(n+2) {
	border-left: none;
}
.btn_reservation_container a.active {
	background-color: #383c4c;
	border-color: #383c4c;
	color: #fff;
	font-weight: bold;
}
.btn_reservation_container a:not(.active):hover {
	color: inherit;
	background-color: #ececec;
}
@media all and (max-width:640px) {
	.btn_reservation_container a {
		width: 33.3%;
		font-size: 16px;
	}
}
.btn_reservation_container + .bbs__list .p-empty {
	border-top: none;
}

/* 시설대관 상세 페이지 - webErntView.jsp */

@media all and (min-width:1001px) and (max-width:1222px) {
	.program .facilities.view .facilities_content .facilities_info {
		width: 423px;
	}
}

/* 상세검색 박스 */
.detail_search .p-form__label {
	min-width: 97px;
}

#contents {position: relative;  z-index: 10; min-height: 600px;  margin-top: 50px;  margin-bottom: 50px;}





/* 이용안내 */
.cts2819 .step {overflow:hidden; position:relative;}
.cts2819 .step ol {margin-left:-52px;}
.cts2819 .step li {overflow:hidden; float:left; position:relative; margin-left:26px; padding-left:52px;}
.cts2819 .step li:before {display:block; position:absolute; top:50%; left:0; width:25px; height:41px; margin-top:-21px; background:url('../images/cts2819_step_icon.png'); content:'';}
.cts2819 .step .n1 {margin-left:0;}
.cts2819 .step .text {width:182px; height:165px; padding-top:104px; padding-right:18px; padding-left:18px; border:2px solid #383c4c; border-radius:20px; box-sizing:border-box; text-align:center;}
.cts2819 .step span {display:block; padding-top:14px; border-top:1px dashed #c4c4c4; color:#000;}
.cts2819 .step .n1 .text {background:url('../images/cst_2819_icon_1.png') no-repeat center 25px;}
.cts2819 .step .n2 .text {background:url('../images/cst_2819_icon_2.png') no-repeat center 25px;}
.cts2819 .step .n3 .text {background:url('../images/cst_2819_icon_3.png') no-repeat center 25px;}
.cts2819 .step .n4 .text {background:url('../images/cst_2819_icon_4.png') no-repeat center 25px;}
.cts2819 .step .n5 .text {background:url('../images/cst_2819_icon_5.png') no-repeat center 25px;}
@media all and (max-width:1222px) {
	.cts2819 .step ol {margin-left:-35px;}
	.cts2819 .step li {margin-left:15px; padding-left:35px;}
	.cts2819 .step .text {width:160px; padding-right:0; padding-left:0;}
}
@media all and (max-width:1000px) {
	.cts2819 .step ol {margin-left:-25px;}
	.cts2819 .step li {width:33.33%; margin-top:10px; margin-bottom:10px; margin-left:0; padding-left:12px; box-sizing:border-box;}
	.cts2819 .step .text {width:182px; margin-right:auto; margin-left:auto;}
}
@media all and (max-width:735px) {
	.cts2819 .step li {width:50%;}
}
@media all and (max-width:470px) {
	.cts2819 .step li {float:none; width:auto; margin-top:0; margin-bottom:0; padding-bottom:45px;}
	.cts2819 .step li:before {top:auto; bottom:0; left:50%; width:25px; height:41px; margin-top:0; margin-left:-5px; transform:rotate(90deg);}
	.cts2819 .step .n5 {padding-bottom:0;}
	.cts2819 .step .n5:before {display:none;}
}

.cts2819 .contbox {margin-top:64px; border-bottom:1px dotted #a8a8a8;}
.cts2819 .contbox .cont_wrap {display:table; width:100%; table-layout:fixed;}
.cts2819 .contbox .tit {display:table-cell; width:157px; height:150px; color:#2d2d2d; font-size:18px; font-weight:600; line-height:23px; text-align:center; vertical-align:middle;} 
.cts2819 .contbox .n1 {background-color:#ebcfe8;}
.cts2819 .contbox .n2 {background-color:#fee9e4;}
.cts2819 .contbox .n3 {background-color:#e9e5fe;}
.cts2819 .contbox .n4 {background-color:#cfe6f5;}
.cts2819 .contbox .n5 {background-color:#ceddfb;}
.cts2819 .contbox .n6 {background-color:#cdede4;}
.cts2819 .contbox .cont {display:table-cell; width:37%; padding:10px 27px; border-top:1px dotted #a8a8a8; vertical-align:middle;}
.cts2819 .contbox li {color:#343434; line-height:26px;}
@media all and (max-width:1000px) {
	.cts2819 .contbox .tit {width:105px;}
}
@media all and (max-width:640px) {
	.cts2819 .contbox {border-bottom-width:0;}
	.cts2819 .contbox .cont_wrap {display:block;}
	.cts2819 .contbox .tit {display:block; width:auto; height:auto; padding:20px;}
	.cts2819 .contbox .tit br {display:none;}
	.cts2819 .contbox .cont {display:block; width:auto; margin-bottom:30px; border-top-width:0; border-right:1px dotted #a8a8a8; border-left:1px dotted #a8a8a8; border-bottom:1px dotted #a8a8a8;}
	.cts2819 .contbox ul {margin-top:0; padding-top:10px;}
}

/* 25.02.11 */
/* 한신정보기술 안형주 */
/* 탭메뉴 텍스트 줄바꿈 수정 */
/* 키워드 버튼 모바일 사이즈 수정 */
.program .education.list .education_category ul .category_item a{display:inline-flex;align-items:center;width:100%;height:100%;line-height:0;box-sizing:border-box;}
.program .education.list .education_category ul .category_item a .category_name{width:100%;box-sizing:border-box;}
@media all and (max-width:640px){
	.program .education.list .education_category ul{font-size:0;line-height:0;}
	.program .education.list .education_category ul .category_item{float:none;display:inline-block;vertical-align:top;}
	.classify_btn_container a{line-height:22px;padding:4px 0;}
}
@media all and (max-width:450px){
	.classify_btn_container{font-size:0;line-height:0;}
	.classify_btn_container a{width:calc((100% - 0.4em) / 3);}
	.classify_btn_container a:nth-child(3n + 1){margin-left:0;}
}