@charset "UTF-8";

.new_layerpopup_cover	{ position: fixed; left: 0; top: 0; z-index: 999998; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); }
.new_layerpopup	{ position: fixed; left: 50%; top: 50%; z-index: 999999; width: 430px; /*height: 650px;*/ padding: 0; transform: translate(-50%, -50%); box-sizing: border-box; border-radius: 10px; background-color: #000; color: #fff; }
.new_layerpopup > ul	{ position: relative; padding: 15px 15px 0 15px; margin: 0; list-style: none; }
.new_layerpopup > ul li	{ display: block !important; padding: 0; margin: 0; list-style: none; }
.new_layerpopup > ul div	{ display: block !important; }
.new_layerpopup a	{ position: relative; display: block; width: 400px; height: 565px; background-color: #fff; overflow: hidden; }
.new_layerpopup a:focus:after	{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; border: 2px dashed red; box-sizing: border-box; content: ""; }
.new_layerpopup a img	{ display: block; max-width: 100%; max-height: 100%; margin: 0 auto; border: 0 none; }
.new_layerpopup p	{ position: relative; clear: both; width: 100%; height: 65px; padding: 17px 20px 0 20px; margin: 0; line-height: 31px; box-sizing: border-box; text-align: left; }
.new_layerpopup p:after	{ display: block; clear: both; content: ""; }
.new_layerpopup p > * { vertical-align: top; }
.new_layerpopup p input	{ width: 23px; height: 31px; margin: 0; }
.new_layerpopup p label	{ display: inline-block; padding: 0 0 0 0.5em; margin: 0; }
.new_layerpopup p button	{ float: right; width: 135px; height: 31px; padding: 0; margin: 0; border: 0 none; border-radius: 10px; background-color: #666; color: #fff; font-weight: normal; }
.new_layerpopup p button:focus, .new_layerpopup p button:hover, .new_layerpopup p button:active	{ background-color: #fff; color: #000; }
.new_layerpopup .slick-prev	{ position: absolute; left: -20px; top: 50%; width: 55px; height: 60px; line-height: 60px; padding: 0; margin: -30px 0 0 0; border: 0 none; background-color: #000; text-align: left; text-indent: -999px; overflow: hidden; color: #fff; font-family: serif; font-weight: bolder; font-size: 40px; z-index: 9999; border-radius: 100% }
.new_layerpopup .slick-prev:after	{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; text-align: center; text-indent: 0; content: "<"; }
.new_layerpopup .slick-prev:focus, .new_layerpopup .slick-prev:hover, .new_layerpopup .slick-prev:active	{ color: #ffcc00; }
.new_layerpopup .slick-next	{ position: absolute; right: -20px; top: 50%; width: 55px; height: 60px; line-height: 60px; padding: 0; margin: -30px 0 0 0; border: 0 none; background-color: #000; text-align: left; text-indent: -999px; overflow: hidden; color: #fff; font-family: serif; font-weight: bolder; font-size: 40px; z-index: 9999; border-radius: 100%}
.new_layerpopup .slick-next:after	{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; text-align: center; text-indent: 0; content: ">"; }
.new_layerpopup .slick-next:focus, .new_layerpopup .slick-next:hover, .new_layerpopup .slick-next:active	{ color: #fff; }
.new_layerpopup .slick-dots	{ position: absolute; right: 15px; bottom: 0; padding: 0; margin: 0; list-style: none; }
.new_layerpopup .slick-dots li	{ display: none !important; padding: 0; margin: 0; list-style: none; }
.new_layerpopup .slick-dots li.slick-active	{ display: block !important; }
.new_layerpopup .slick-dots li button	{ width: 65px; height: 42px; padding: 0; margin: 0; border: 0 none; background-color: rgba(0, 0, 0, 0.5); color: #fff; font-size: 13px; font-weight: normal; cursor: default; }
.new_layerpopup .play_stop	{ position: absolute; left: 15px; bottom: 0; width: 65px; height: 42px; padding: 0; margin: 0; border: 0 none;background-color: rgba(0, 0, 0, 0.5); color: #fff; font-size: 18px; font-weight: normal; font-family: serif; }


@media all and (max-width: 500px)
{
	.new_layerpopup	{ width: 100%; height: auto; }
	.new_layerpopup a	{ position: relative; width: 100%; height: 0; padding-top: 141.25%; }
	.new_layerpopup a img	{ position: absolute; left: 50%; top: 50%; max-width: 100%; max-height: 100%; margin: 0; transform: translate(-50%, -50%); }
}
@media all and (max-width: 500px)
{
	.new_layerpopup p button	{ width: auto; padding: 0 10px; }
}
@media all and (max-width: 320px)
{
	.new_layerpopup p	{ padding-left: 20px; padding-right: 20px; }
}


a:focus	{ outline: 2px solid red; }


body	{ line-height: 1.5; font-size: 16px; }

table th, table td	{ word-break: break-all; }



/**
상단
**/
header	{}
	.menu_design_main header	{ background-color: #e0f7f8; }
header aside	{ background-color: #173b92; color: #fff; }
header aside nav	{ display: flex; justify-content: /*space-between;*/ flex-end; max-width: 1440px; height: 52px; padding: 0 10px; margin: 0 auto; }
header aside nav .mark	{ flex: 0 0 90px; display:none;}
header aside nav .mark a	{ display: block; height: 100%; background: url(../image/header_city_logo.png) no-repeat 0 center / contain; text-indent: -9999px; overflow: hidden; }
header aside nav ul	{ display: flex; gap: 10px; }
header aside nav ul li	{ display: flex; align-items: center; gap: 10px; }
header aside nav ul li + li:before	{ font-size: 10px; font-weight: normal; content: "|"; }
header aside nav ul li a	{ display: block; color: #fff; }
header aside nav ul li a:focus, header aside nav ul li a:hover, header aside nav ul li a:active	{ outline: 2px dashed #fff; font-weight: 600; color: #fff; }


header aside nav .mobile_menu	{ display: none; }
header aside nav .mobile_menu li + li:before	{ content: none; }
header aside nav .mobile_menu li a	{ width: 35px; height: 35px; text-indent: -9999px; overflow: hidden; }
header aside nav .mobile_menu li a.memcard	{ background: url(../image/header_mobile_memcard.png) no-repeat center center; }
header aside nav .mobile_menu li a.mobile_gnb_open	{ background: url(../image/header_mobile_menu.png) no-repeat center center; }


header #GNB	{ display: flex; justify-content: space-between; max-width: 1440px; height: 84px; padding: 0 10px; margin: 0 auto; }
header #GNB h1	{ flex: 0 0 330px; }
/*header #GNB h1 a	{ display: block; height: 100%; background: url(../image/header_logo.png) no-repeat 0 center; text-indent: -9999px; overflow: hidden; }*/
h1.site_title {  display: flex;  align-items: center;  gap: 8px; }
h1.site_title > .main_link{background: url(../image/header_logo.png) no-repeat 0 center; display: inline-block;    width: 180px;    text-indent: -99999px;    height: 100%; }
h1.site_title > .sub_link{ background: url(../image/header_logo.png) right center no-repeat;    text-indent: -999999px;    width: 135px; height:100%}



#GNB .ld1	{ display: flex; }
#GNB .cd1	{ flex: auto; }
	#GNB .cd1c1,
	#GNB .cd1c6,
	#GNB .cd1c7,
	#GNB .cd1c8,
	#GNB .cd1c9,
	#GNB .cd1c10	{ display: none; }
#GNB .l1	{ display: flex; align-items: center; justify-content: center; height: 100%; padding: 0 36px; font-size: 22px; font-weight: bold; color: #474747; }
	#GNB .cd1c5 .l1	{ padding-right: 0; }
#GNB .l1:focus, #GNB .l1:hover, #GNB .l1:active	{ font-weight: bolder; color: #cf3e2b; }
#GNB .cd1.over .l1	{ font-weight: bolder; color: #cf3e2b; }


#GNB .lb1	{ position: absolute; left: 0; top: 135px; z-index: 9; width: 100%; height: 0; background-color: #fff; opacity: 0; overflow: hidden; transition: all .5s; }
#GNB .cd1.over .lb1	{ display: block; height: auto; min-height: 300px; opacity: 1; overflow: hidden; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5); }
/* xxx *//*
#GNB .cd1c2 .lb1	{ display: block; height: auto; opacity: 1; overflow: hidden; }
*//* xxx */
#GNB .lb1_box	{ display: flex; max-width: 1420px; padding: 20px; margin: 0 auto; }
#GNB .lb1_box p	{ flex: 0 0 300px; min-height: 330px; background: no-repeat calc(100% - 40px) bottom; }
	#GNB .cd1c2 .lb1_box p	{ background-image: url(../image/header_bg_01.png); }
	#GNB .cd1c3 .lb1_box p	{ background-image: url(../image/header_bg_02.png); }
	#GNB .cd1c4 .lb1_box p	{ background-image: url(../image/header_bg_03.png); }
	#GNB .cd1c5 .lb1_box p	{ background-image: url(../image/header_bg_04.png); }
#GNB .lb1_box p strong	{ display: block; padding-right: 40px; text-align: right; font-size: 40px; font-weight: 600; }


#GNB .ld2	{ flex: auto; display: flex; flex-wrap: wrap; gap: 20px 10px; }
#GNB .cd2	{ flex: 0 1 calc((100% - 10px * 3) / 4); }
	#GNB .cd1c2 .cd2c5	{ flex: 0 1 100%; }
#GNB .l2	{ display: flex; align-items: center; justify-content: center; width: 100%; height: 56px; border: 1px solid #ddd; border-radius: 5px; background-color: #f8f8f8; font-size: 17px; font-weight: 500; color: var(--black); }
#GNB .l2:focus, #GNB .l2:hover, #GNB .l2:active	{ border-color: #3D5688; background-color: #3D5688; color: #fff; box-shadow: 0 10px 30px rgba(61, 86, 136, 0.3); }


#GNB .lb2	{}


#GNB .ld3	{ display: flex; flex-wrap: wrap; padding: 10px 0 0 0; }
#GNB .cd3	{ flex: 0 1 100%; }
	#GNB .cd1c2 .cd2c5 .cd3	{ flex: 0 1 25%; }
#GNB .l3	{ position: relative; display: block; line-height: 1.2; padding: 5px 10px 5px 16px; }
#GNB .l3:before	{ position: absolute; left: 0; top: 13px; width: 8px; height: 8px; border: 2px solid #999; border-radius: 100%; content: ""; }

#GNB .lb3	{ display: none; }


@media all and (max-width: 1024px)
{
	#GNB .ld1	{ flex: auto; justify-content: space-evenly; }
	#GNB .l1	{ padding: 0; }
}

@media all and (max-width: 768px)
{
	header aside nav .pc_menu	{ display: none; }
	header aside nav .mobile_menu	{ display: flex; }
	
	header aside nav .mobile_menu li a.mobile_gnb_open	{ transition: none; }
	
	header #GNB	{ display: none; }
	
	
	body.mobile_gnb_show	{ padding-top: 52px; }
	body.mobile_gnb_show > header	{ position: fixed; left: 0; top: 0; z-index: 999; width: 100%; height: 100%; background-color: #fff; }
	body.mobile_gnb_show > header aside nav .mobile_menu li a.mobile_gnb_open	{ background-image: url(../image/header_mobile_menu_close.png); }
	
	body.mobile_gnb_show > header aside nav .mark	{ display: none; }
	body.mobile_gnb_show > header aside nav .pc_menu	{ display: flex; }
	
	body.mobile_gnb_show > header #GNB	{ display: flex; flex-direction: column; height: calc(100% - 52px); padding: 0; }
	body.mobile_gnb_show > header #GNB h1	{ flex: 0 0 60px;  transform: scale(0.8);}
	body.mobile_gnb_show > header #GNB h1 a	{ display: block; width: 322px; max-width: 100%; height: 100%; margin: 0 auto; background-size: contain; }
	
	body.mobile_gnb_show > header #GNB .ld1	{ position: relative; flex-direction: column; align-items: flex-start; justify-content: flex-start; border-top: 1px solid #ddd; }
	body.mobile_gnb_show > header #GNB .ld1:before	{ position: absolute; left: 0; top: 0; z-index: 1; width: 140px; height: 100%; background-color: #f8f9fb; content: ""; }
	body.mobile_gnb_show > header #GNB .cd1	{ flex: none; display: block !important; position: static; }
	body.mobile_gnb_show > header #GNB .cd1.cd1c1	{ display: none !important; }
		body.mobile_gnb_show > header #GNB .cd1c2 .cd2c5 .cd3	{ flex: 1 1 100%; }
	body.mobile_gnb_show > header #GNB .l1	{ position: relative; z-index: 2; justify-content: flex-start; width: 140px; height: 64px; padding: 0 15px; font-size: 16px; color: #666; }
	body.mobile_gnb_show > header #GNB .l1:after	{ position: absolute; left: 50%; bottom: -2px; width: calc(100% - 40px); height: 2px; transform: translateX(-50%); background-image: linear-gradient(to right, #666 2px, rgba(255, 255, 255, 0) 0%); background-repeat: repeat-x; background-position: left top; background-size: 7px 2px; content: "";}
	
	body.mobile_gnb_show > header #GNB .cd1.over .l1	{ background-color: #173b92; color: #fff; font-weight: 700; }
	body.mobile_gnb_show > header #GNB .cd1.over .l1:after	{ content: none; }
	
	body.mobile_gnb_show > header #GNB .lb1	{ position: absolute; left: auto; right: 0; top: 0; width: calc(100% - 140px); height: 0; padding: 0 20px; box-shadow: none; }
	body.mobile_gnb_show > header #GNB .cd1.over .lb1	{ height: 100%; opacity: 1; box-shadow: none; overflow: auto; }
	body.mobile_gnb_show > header #GNB .lb1_box	{ padding: 0; }
	body.mobile_gnb_show > header #GNB .lb1_box p	{ display: none; }
	
	body.mobile_gnb_show > header #GNB .ld2	{ flex-direction: column; flex-wrap: nowrap; gap: 0; }
	body.mobile_gnb_show > header #GNB .cd2	{ flex: 1 1 100%; border-bottom: 1px solid #ddd; }
	body.mobile_gnb_show > header #GNB .l2	{ display: flex; align-items: center; justify-content: flex-start; height: 64px; line-height: 1.1; border: 0 none; background-color: transparent; border-radius: 0; font-weight: 500; color: #111; font-size: 15px; }
	body.mobile_gnb_show > header #GNB .l2:focus, body.mobile_gnb_show > header #GNB .l2:hover, body.mobile_gnb_show > header #GNB .l2:active	{ background-color: transparent; color: #173b92; box-shadow: none; }
	body.mobile_gnb_show > header #GNB .l2.hasChild	{ position: relative; padding-right: 30px; }
	body.mobile_gnb_show > header #GNB .l2.hasChild:after	{ position: absolute; right: 0; top: 50%; width: 10px; height: 10px; border-width: 0 2px 2px 0; border-style: solid; border-color: #333; transform: translate(0, -50%) rotate(45deg); content: ""; }
	body.mobile_gnb_show > header #GNB .cd2.over .l2.hasChild	{ color: #173b92; }
	body.mobile_gnb_show > header #GNB .cd2.over .l2.hasChild:after	{ border-color: #173b92; transform: rotate(-135deg); }
	
	body.mobile_gnb_show > header #GNB .lb2	{ height: 0; overflow: hidden; transition: all .5s; }
	body.mobile_gnb_show > header #GNB .cd2.over .lb2	{ height: auto; overflow: visible; }

	body.mobile_gnb_show > header #GNB .ld3	{ padding: 12px 0; border-top: 1px solid #ddd; background-color: #fff; }
	body.mobile_gnb_show > header #GNB .cd3	{}
	body.mobile_gnb_show > header #GNB .l3	{ position: relative; display: block; line-height: 1.1; padding: 8px 15px; font-size: 14px; font-weight: 500; }
	body.mobile_gnb_show > header #GNB .l3:before	{ position: absolute; left: 0; top: 50%; width: 6px; height: 6px; margin-top: -3px; border: 2px solid #999; border-radius: 100%; background-color: #fff; content: ""; }
}







/**
하단
**/
footer	{}
footer.main	{ background-color: #ebfbec; color: #1b1b1b; }
footer.sub	{ padding-top: 65px; }
footer > *	{ max-width: 1440px; padding: 0 10px; margin: 0 auto; }

footer aside .sns	{ position: relative; display: flex; justify-content: space-between; height: 82px; padding: 0 40px; border-radius: 41px; background-color: #212b4e; }
/*
footer.sub aside .sns:before	{ position: absolute; left: 80px; bottom: 100%; width: 116px; height: 62px; background: url(../image/footer_sns.png) no-repeat 0 0; content: ""; }
*/
footer aside .sns strong	{ flex: 0 1 322px; height: 100%; background: url(../image/header_logo2.png) no-repeat 0 center; text-indent: -9999px; overflow: hidden; }
/*
footer.main aside .sns strong	{ background-image: url(../image/header_logo.png); }
*/
footer aside .sns ul	{ display: flex; gap: 10px; }
footer aside .sns ul li	{ display: flex; align-items: center; }
footer aside .sns ul li a	{ display: block; width: 50px; height: 50px; border-radius: 100%; background: no-repeat center center / contain; text-indent: -9999px; overflow: hidden; transition-duration: .3s; }
footer aside .sns ul li a:focus, footer aside .sns ul li a:hover, footer aside .sns ul li a:active	{ transform: scale(1.1); }
footer aside .sns ul li.instagram a	{ background-image: url(../image/footer_sns_instagram.png); }
footer aside .sns ul li.blog a	{ background-image: url(../image/footer_sns_blog.png); }
footer aside .sns ul li.youtube a	{ background-image: url(../image/footer_sns_youtube.png); }
footer aside .sns ul li.meetingroom a	{ background-image: url(../image/footer_sns_meetingroom.png); }

footer aside .link	{ display: flex; justify-content: center; gap: 20px; margin: 40px 0 20px 0; }
footer aside .link li	{ display: flex; align-items: center; gap: 20px; }
footer aside .link li + li:before	{ color: rgba(0, 0, 0, 0.3); font-size: 10px; content: "|"; }
footer.main aside .link li + li:before	{ color: rgba(255, 255, 255, 0.3); }
footer aside .link li a	{ color: #1b1b1b; }
footer.main aside .link li a	{ color: #1b1b1b; }
footer aside .link li a:focus, footer aside .link li a:hover, footer aside .link li a:active	{ outline: 2px dashed red; font-weight: bold; }
footer.main aside .link li a:focus, footer.main aside .link li a:hover, footer.main aside .link li a:active	{ outline: 2px dashed #fff; }
footer aside .link li:nth-child(1) a, footer aside .link li:nth-child(2) a	{ font-weight: bold; color: #E4205B; }

footer aside .certification	{ display: flex; justify-content: center; gap: 20px; }
footer aside .certification li	{ width: 60px; height: 60px; padding: 10px; border-radius: 100%; background-color: #fff; }
footer aside .certification li img	{ display: block; width: 100%; height: 100%; border: 0 none; object-fit: scale-down; }

footer address	{ padding: 30px 0; text-align: center; }


@media all and (max-width: 768px)
{
	footer aside .sns	{ flex-direction: column; align-items: center; gap: 10px; height: auto; padding: 20px 30px; border-radius: 100px; }
	footer aside .sns strong	{ flex: 0 0 auto; width: 322px; max-width: 100%; background-position: center center; background-size: 100% auto; aspect-ratio: 322 / 50; }
	
	footer aside .link	{ gap: 10px; }
	footer aside .link li	{ gap: 10px; }
	footer aside .link li a	{ line-height: 1.1; text-align: center; font-size: 14px; }
}

@media all and (max-width: 425px)
{
	footer aside .link	{ flex-wrap: wrap; }
	footer aside .link li	{ flex: 1 1 40%; }
	footer aside .link li:nth-child(2n + 1):before	{ content: none; }
	footer aside .link li a	{ flex: 1; display: block; text-align: center; }
}

@media all and (max-width: 375px)
{
	footer aside .link li a	{ letter-spacing: -1px; }
	
	footer aside .certification	{ gap: 10px; }
	
	footer address	{ font-size: 13px; }
}







/**
메인
**/
main.main	{ background: url(../image/main_bg_pc.png) no-repeat center top; }


main.main .section_1	{ height: 670px; }
main.main .align_1	{ display: flex; gap: 50px; max-width: 1360px; padding: 55px 10px 0 10px; margin: 0 auto; }


main.main .main_visual	{ flex: 0 1 840px; width: 100%; max-width: 840px; max-height: 410px; aspect-ratio: 840 / 410; }
main.main .main_visual .list	{ position: relative; height: 100%; background: #fff; border-radius: 10px; box-shadow: 16px 8px 16px rgba(0, 0, 0, 0.08); overflow: hidden; }
main.main .main_visual .list .item,
main.main .main_visual .list .slick-list	{ aspect-ratio: 840 / 350; }
main.main .main_visual .list .slick-list div	{ height: 100%; }
main.main .main_visual .list .item  > *,
main.main .main_visual .list .slick-list .item  > *	{ display: block; height: 100%; background-repeat: no-repeat; background-position: 50% 50%; background-size: 100% 100%; text-indent: -99999px; overflow: hidden; }

main.main .main_visual .slick-status	{ display: flex; align-items: center; gap: 5px; position: absolute; right: 120px; bottom: 10px; height: 30px; font-size: 18px; font-weight: 400; color: #000; }
main.main .main_visual .slick-status span	{ font-weight: bold; }
main.main .main_visual .slick-status strong	{ font-weight: 400; }
main.main .main_visual .slick-prev	{ position: absolute; right: 80px; bottom: 10px; width: 30px; height: 30px; padding: 0; margin: 0; border: 0 none; background: #fff; font-size: 18px; font-weight: bold; color: #000; text-indent: -999px; overflow: hidden; }
main.main .main_visual .slick-prev:after	{ position: absolute; left: 50%; top: 50%; width: 10px; height: 10px; border-top: 3px solid #000; border-left: 3px solid #000; transform: translate(-50%, -50%) rotate(-45deg); content: ""; }
main.main .main_visual .slick-prev:focus, main.main .main_visual .slick-prev:hover, main.main .main_visual .slick-prev:active	{ z-index: 2; }
main.main .main_visual .slick-prev:focus:after, main.main .main_visual .slick-prev:hover:after, main.main .main_visual .slick-prev:active:after	{ border-color: red; }

main.main .main_visual .slick-button-box	{ position: absolute; right: 50px; bottom: 10px; font-size: 14px; font-weight: 400; color: #000; }
main.main .main_visual .slick-startstop	{ width: 30px; height: 30px; padding: 0; margin: 0; border: 0 none; background: #fff; font-size: 18px; font-weight: bold; color: #000; text-indent: -999px; overflow: hidden; }
main.main .main_visual .slick-startstop:focus, main.main .main_visual .slick-startstop:hover, main.main .main_visual .slick-startstop:active	{ position: relative; z-index: 2; color: red; }
main.main .main_visual .slick-startstop:after	{ display: flex; align-items: center; justify-content: center; position: absolute; left: 0; top: 0; width: 100%; height: 100%; text-indent: 0; content: ""; }
main.main .main_visual .slick-startstop.stop:after	{ content: "■"; }
main.main .main_visual .slick-startstop.start:after	{ content: "▶"; }

main.main .main_visual .slick-next	{ position: absolute; right: 20px; bottom: 10px; width: 30px; height: 30px; padding: 0; margin: 0; border: 0 none; background: #fff; font-size: 18px; font-weight: bold; color: #000; text-indent: -999px; overflow: hidden; }
main.main .main_visual .slick-next:after	{ position: absolute; left: 50%; top: 50%; width: 10px; height: 10px; border-top: 3px solid #000; border-right: 3px solid #000; transform: translate(-50%, -50%) rotate(45deg); content: ""; }
main.main .main_visual .slick-next:focus, main.main .main_visual .slick-next:hover, main.main .main_visual .slick-next:active	{ z-index: 2; }
main.main .main_visual .slick-next:focus:after, main.main .main_visual .slick-next:hover:after, main.main .main_visual .slick-next:active:after	{ border-color: red; }


main.main .site_login	{ flex: auto; display: flex; flex-wrap: wrap; gap: 30px; }
main.main .site_login h2	{ position: absolute; width: 0; height: 0; overflow: hidden; }
main.main .site_login .login_form	{ flex: 1 1 100%; padding: 35px; border-radius: 13px; background-color: #192f56; color: #fff; }
main.main .site_login .login_form form fieldset	{ display: flex; gap: 14px; }
main.main .site_login .login_form form fieldset p	{ flex: 255; display: flex; flex-direction: column; gap: 10px; }
main.main .site_login .login_form form fieldset p label	{ position: absolute; width: 0; height: 0; overflow: hidden; }
main.main .site_login .login_form form fieldset p input	{ display: block; width: 100%; height: 50px; min-width: 0; padding: 0 20px; border: 0 none; border-radius: 8px; background-color: #fff; color: #1b1b1b; font-size: 16px; }
main.main .site_login .login_form form fieldset button	{ flex: 110; display: block; width: 100%; border: 0 none; border-radius: 7px; background-color: #3780ff; color: #fff; font-size: 16px; }
main.main .site_login .login_form form fieldset button:focus, main.main .site_login .login_form form fieldset button:hover, main.main .site_login .login_form form fieldset button:active	{ background-color: #1f5bc4; color: #fff; box-shadow: 0 0 5px rgba(255, 255, 255, 1); }
main.main .site_login .login_form p	{ line-height: 50px; text-align: center; color: #fff; font-size: 1.2em; }
main.main .site_login .login_form ul	{ display: flex; gap: 10px; }
main.main .site_login .login_form p + ul	{ margin-top: 14px; }
main.main .site_login .login_form ul li	{ flex: 1; }
main.main .site_login .login_form ul li a	{ display: flex; align-items: center; justify-content: center; height: 50px; border: 0 none;; border-radius: 8px; background-color: #fff; color: #1b1b1b; }
main.main .site_login .login_form ul li a:focus, main.main .site_login .login_form ul li a:hover, main.main .site_login .login_form ul li a:active	{ background-color: #666; color: #fff; }

main.main .site_login .links	{ flex: 1 1 100%; }
main.main .site_login .links ul	{ display: flex; flex-wrap: wrap; gap: 10px 30px; }
main.main .site_login .links ul li	{ flex: 1 1 40%; height: 90px; }
main.main .site_login .links ul li a	{ display: flex; align-items: center; justify-content: center; gap: 16px; height: 100%; border: 1px solid #e0e0e0; border-radius: 13px; background-color: #fff; box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3); font-size: 18px; font-weight: bold; color: #1d2f51; }
main.main .site_login .links ul li a:focus, main.main .site_login .links ul li a:hover, main.main .site_login .links ul li a:active	{  border-color: #666; background-color: #666; color: #fff; }
main.main .site_login .links ul li a:before	{ display: block; background: no-repeat center center; content: ""; }
main.main .site_login .links ul li:nth-child(1) a:before	{ width: 42px; height: 35px; background-image: url(../image/main_links_01.png); }
main.main .site_login .links ul li:nth-child(2) a:before	{ width: 38px; height: 37px; background-image: url(../image/main_links_02.png); }
main.main .site_login .links ul li:nth-child(3) a:before	{ width: 43px; height: 37px; background-image: url(../image/main_links_03.png); }
main.main .site_login .links ul li:nth-child(4) a:before	{ width: 37px; height: 32px; background-image: url(../image/main_links_04.png); }





main.main .section_2	{ height: 473px; }
main.main .align_2	{ display: flex; gap: 40px; max-width: 1360px; padding: 0 10px; margin: 0 auto; }


main.main .major_links	{ flex: 1; display: flex; flex-direction: column; gap: 20px; }
main.main .major_links h2	{ position: absolute; width: 0; height: 0; overflow: hidden; }
main.main .major_links ul	{ flex: 1; display: flex; min-height: 200px; padding: 20px; border: 1px solid #e0e0e0; border-radius: 13px; background-color: #fff; box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3); }
main.main .major_links ul li	{ flex: 1; }
main.main .major_links ul li a	{ display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px; width: 100%; height: 100%; line-height: 1.1; color: #1d2f51; font-size: 16px; font-weight: bold; }
main.main .major_links ul li a:focus, main.main .major_links ul li a:hover, main.main .major_links ul li a:active	{ color: #f00; }
main.main .major_links ul li a:before	{ display: block; width: 83px; height: 83px; border-radius: 50%; background: #ebf0f5 no-repeat center center; content: ""; }
main.main .major_links ul li a:focus:before, main.main .major_links ul li a:hover:before, main.main .major_links ul li a:active:before	{ background-color: #aeb5bc; }
main.main .major_links ul li:nth-child(1) a:before	{ background-image: url(../image/main_major_links_01.png); }
main.main .major_links ul li:nth-child(2) a:before	{ background-image: url(../image/main_major_links_02.png); }
main.main .major_links ul li:nth-child(3) a:before	{ background-image: url(../image/main_major_links_03.png); }
main.main .major_links ul li:nth-child(4) a:before	{ background-image: url(../image/main_major_links_04.png); }
main.main .major_links .faq	{ flex: 1; }
main.main .major_links .faq a	{ position: relative; display: flex; flex-direction: column; justify-content: center; gap: 10px; height: 100%; min-height: 160px; padding-left: 250px; border: 1px solid #e0e0e0; border-radius: 13px; background: linear-gradient(to right, #67d983 0%,#2ac393 100%); background-color: #2ac393; font-size: 16px; }
main.main .major_links .faq a:focus, main.main .major_links .faq a:hover, main.main .major_links .faq a:active	{ background: #393a3e !important; color: #fff; }
main.main .major_links .faq a:before	{ position: absolute; left: 0; top: 0; width: 250px; height: 100%; background: url(../image/main_faq_bg.png) no-repeat 10% center / auto 110%; content: ""; }
main.main .major_links .faq a strong	{ display: block; width: fit-content; line-height: 36px; padding: 0 30px; border-radius: 16px; background-color: #393a3e; color: #fff; font-weight: bold; }
main.main .major_links .faq a > span	{ display: block; line-height: 1.2; }
main.main .major_links .faq a > span span	{ display: block; }
main.main .major_links .faq a .more	{ position: absolute; right: 40px; top: 37px; display: flex; gap: 14px; align-items: center; width: fit-content; line-height: 36px; }
main.main .major_links .faq a .more:after	{ display: flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background-color: #fff; font-family: serif; font-size: 16px; font-weight: normal; color: #1b1b1b; content: "+"; }


main.main .notice	{ flex: 1; max-width: 100%; padding: 20px; border: 1px solid #e0e0e0; border-radius: 13px; background-color: #fff; box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3); overflow: hidden; }
main.main .notice h2	{ flex: 1 1 100%; }
main.main .notice h2 a	{ position: relative; display: block; line-height: 106px; font-size: 36px; font-weight: bold; color: #000; }
main.main .notice h2 a span	{ color: #2a66ca; }
main.main .notice h2 a em	{ position: absolute; right: 40px; top: 37px; display: flex; gap: 14px; align-items: center; width: fit-content; line-height: 36px; font-size: 16px; font-weight: normal; }
main.main .notice h2 a em:after	{ display: flex; align-items: center; justify-content: center; width: 22px; height: 22px; border: 1px solid #dbdbdb; border-radius: 50%; background-color: #fff; font-family: serif; font-size: 16px; font-weight: normal; color: #1b1b1b; content: "+"; }
main.main .notice .list	{ height: calc(100% - 106px); }
main.main .notice .list ul	{ }
main.main .notice .list ul li	{}
main.main .notice .list ul li a	{ position: relative; display: flex; align-items: center; justify-content: space-between; height: 36px; padding: 0 100px 0 20px; font-weight: 500; }
main.main .notice .list ul li a br	{ display: none; }
main.main .notice .list ul li a .new	{ position: absolute; left: 0; top: 50%; width: 4px; height: 4px; margin-top: -2px; border-radius: 50%; background-color: #555; text-indent: -999px; overflow: hidden; }
main.main .notice .list ul li a .new.true	{ background-color: #fc7417; }
main.main .notice .list ul li a .title	{ display: block; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-weight: inherit; }
main.main .notice .list ul li a .contents	{ display: none; }
main.main .notice .list ul li a .date	{ position: absolute; right: 0; top: 0; display: flex; align-items: center; justify-content: flex-end; }
main.main .notice .list ul li:nth-child(1)	{ padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px solid #8d8d8d; }
main.main .notice .list ul li:nth-child(1) a	{ flex-wrap: wrap; height: auto; padding-left: 0; padding-right: 0; }
main.main .notice .list ul li:nth-child(1) a .new	{ display: none; }
main.main .notice .list ul li:nth-child(1) a .title	{ display: block; width: 100%; line-height: 1.5; font-size: 20px; font-weight: bold; color: #1d2f51; }
main.main .notice .list ul li:nth-child(1) a .contents	{ display: block; width: 100%; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
main.main .notice .list ul li:nth-child(1) a .date	{ display: none; }


@media all and (max-width: 1279px)
{
	main.main .section_1	{ height: auto; min-height: 670px; padding-bottom: 40px; }
	main.main .align_1	{ flex-direction: column; align-items: center; }
}


@media all and (max-width: 1023px)
{
	main.main .main_visual	{ flex: auto; }
	
	main.main .section_2	{ height: auto; min-height: 473px; padding-bottom: 40px; }
	main.main .align_2	{ flex-direction: column; align-items: center; }
}

@media all and (max-width: 600px)
{
	main.main .main_visual .slick-status,
	main.main .main_visual .slick-prev,
	main.main .main_visual .slick-button-box,
	main.main .main_visual .slick-next	{ bottom: 0; }
}

@media all and (max-width: 425px)
{
	main.main .section_1	{ padding-bottom: 20px; }
	main.main .align_1	{ gap: 20px; }
	main.main .site_login	{ gap: 10px; }
	main.main .site_login .login_form	{ padding: 10px; }
	main.main .site_login .login_form ul	{ gap: 5px; }
	main.main .site_login .login_form ul li a	{ letter-spacing: -1px; }
	main.main .site_login .links ul	{ gap: 10px; }
	
	main.main .align_2	{ gap: 20px; }
	main.main .major_links ul	{ flex-wrap: wrap; gap: 20px 10px; padding: 10px; }
	main.main .major_links ul li	{ flex: 1 1 40%; }
	main.main .major_links .faq a	{ min-height: 180px; padding-left: 40%; }
	main.main .major_links .faq a:before	{ width: 40%; background-position: 5% bottom; background-size: 90% auto; }
	main.main .major_links .faq a .more	{ position: static; }
	
	main.main .notice	{ padding: 10px; }
	main.main .notice h2	{ margin-bottom: 20px; }
	main.main .notice h2 a	{ line-height: 60px; }
	main.main .notice h2 a em	{ top: 12px; }
}

@media all and (max-width: 320px)
{
	main.main .site_login .links ul	{ flex-wrap: wrap; }
	main.main .site_login .links ul li	{ flex: 1 1 100%; }
}









/**
서브
**/
#main.sub	{}
#main.sub section	{ position: relative; border-top: 1px solid #d1d1d1; }
#main.sub section:before	{ position: absolute; left: 0; top: 48px; width: 100%; height: 1px; background-color: #d1d1d1; content: ""; }
#main.sub section header	{ position: relative; display: flex; flex-wrap: wrap; flex-direction: row-reverse; justify-content: space-between; max-width: 1200px; padding: 0 10px 140px 10px; margin: 0 auto; }
#main.sub section header h2	{ position: absolute; left: 0; bottom: 0; width: 100%; height: 140px; display: flex; align-items: center; justify-content: center; line-height: 1.2; padding: 0; margin: 0; font-size: 35px; color: #373737; }

#main.sub.in_title_type3 section header nav.tabmenu	{ margin-top: 150px; }
#main.sub.in_title_type3 section header h2.title_type3	{ bottom: auto; top: 75px; height: 100px; font-size: 40px; }

#main.sub section header aside	{ background: transparent; color: inherit; }
#main.sub section header aside .utils	{}
#main.sub section header aside .utils ul	{ display: flex; }
#main.sub section header aside .utils ul li	{}
#main.sub section header aside .utils ul li a	{ display: block; width: 48px; height: 48px; background: no-repeat center center; text-indent: -999px; overflow: hidden; transition-duration: .5s; }
#main.sub section header aside .utils ul li a.print	{ background-image: url(../image/sub_util_print.png); }
#main.sub section header aside .utils ul li a.clipboard	{ background-image: url(../image/sub_util_clipboard.png); }
#main.sub section header aside .utils ul li a:focus, #main.sub section header aside .utils ul li a:hover, #main.sub section header aside .utils ul li a:active	{ position: relative; z-index: 2; background-size: 110%; box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.16); border: 1px solid #1454FF; }
#main.sub section header aside .utils ul li a:focus	{ border: 0 none; }
#main.sub section header nav#SNB	{ flex: auto; }
#main.sub section header nav#SNB a	{ display: flex; align-items: center; justify-content: center; height: 48px; line-height: 1.1; }
#main.sub section header nav#SNB a:focus, #main.sub section header nav#SNB a:hover, #main.sub section header nav#SNB a:active	{ background-color: #173b93; color: #fff; font-weight: 600; }
#main.sub section header nav#SNB a:focus	{ position: relative; z-index: 3; }
#main.sub section header nav#SNB > ul	{ display: flex; }
#main.sub section header nav#SNB > ul > li	{ position: relative; }
#main.sub section header nav#SNB > ul > li + li:before	{ position: absolute; left: 0; top: 50%; width: 1px; height: 12px; margin-top: -6px; background-color: #d1d1d1; content: ""; }
#main.sub section header nav#SNB > ul > li.depth	{ flex: 0 1 180px; }
#main.sub section header nav#SNB > ul > li.depth a	{ position: relative; justify-content: flex-start; padding: 0 20px; }
#main.sub section header nav#SNB > ul > li.depth > a	{ gap: 10px; justify-content: space-between; }
#main.sub section header nav#SNB > ul > li.depth > a:after	{ width: 8px; height: 8px; border-width: 0 0 2px 2px; border-style: solid; border-color: #868686; transform: rotate(-45deg); content: ""; }
#main.sub section header nav#SNB > ul > li.depth > a:focus:after, #main.sub section header nav#SNB > ul > li.depth > a:hover:after, #main.sub section header nav#SNB > ul > li.depth > a:active:after,
#main.sub section header nav#SNB > ul > li.depth.over > a:after,
#main.sub section header nav#SNB > ul > li.depth.active > a:after	{ border-color: #eee; transform: rotate(135deg); }
#main.sub section header nav#SNB > ul > li.home a	{ justify-content: center; gap: 10px; padding: 0 20px 0 10px; }
#main.sub section header nav#SNB > ul > li.home a:before	{ content: url(../image/sub_snb_home.png); }
#main.sub section header nav#SNB > ul > li.home a:focus:before, #main.sub section header nav#SNB > ul > li.home a:hover:before, #main.sub section header nav#SNB > ul > li.home a:active:before	{ content: url(../image/sub_snb_home_over.png); }
#main.sub section header nav#SNB > ul > li > ul	{ position: absolute; left: 0; top: 48px; z-index: 3; width: 100%; height: 0; overflow: hidden; }
#main.sub section header nav#SNB > ul > li.over:before,
#main.sub section header nav#SNB > ul > li.active:before	{ content: none; }
#main.sub section header nav#SNB > ul > li.over > a	{ background-color: #173b93; color: #fff; font-weight: 600; }
#main.sub section header nav#SNB > ul > li.over > ul,
#main.sub section header nav#SNB > ul > li.active > ul	{ height: auto; border: 1px solid #d1d1d1; background-color: #fff; overflow: visible; }


#main.sub section header nav.tabmenu	{ flex: 1 1 100%; display: flex;  margin: 50px 0 0 0;}
#main.sub section header nav.tabmenu ul	{ flex: 1 1 100%; display: flex; flex-wrap: wrap; border-width: 0 0 1px 1px; border-style: solid; border-color: #ddd; background-color: #f8f9fb; }
#main.sub section header nav.tabmenu ul + ul	{ margin-top: 50px; }
#main.sub section header nav.tabmenu ul li	{ flex: 1 1 20%; border-width: 1px 1px 0 0; border-style: solid; border-color: #ddd; }
#main.sub section header nav.tabmenu ul li a	{ display: flex; align-items: center; justify-content: center; height: 64px; line-height: 1.1; padding: 0 10px; text-align: center; font-size: 17px; font-weight: var(--font-sami-bold); word-break: keep-all; }

#main.sub section header nav.tabmenu ul li a:focus, #main.sub section header nav.tabmenu ul li a:hover, #main.sub section header nav.tabmenu ul li a:active	{ background-color: #666; color: #fff; }
#main.sub section header nav.tabmenu ul li a.active	{ position: relative; z-index: 2; width: calc(100% + 2px); height: 66px; margin: -1px; border: 1px solid #3d5688; background-color: #fff; color: #3d5688; box-shadow: 0 10px 30px rgba(61, 86, 136, 0.1); }


#main.sub section aticle	{ display: block; max-width: 1200px; padding: 0 10px; margin: 0 auto 20px auto; }



@media all and (max-width: 768px)
{
	#main.sub section:before	{ content: none; }
	
	#main.sub section header	{ padding: 0; padding-bottom: 20vw; }
	#main.sub section header h2	{ position: absolute; left: 0; bottom: 0; width: 100%; height: 20vw; font-size: 4.66vw; }
	
	#main.sub.in_title_type3 section header nav.tabmenu	{ margin-top: inherit; }
	#main.sub.in_title_type3 section header h2.title_type3	{ display: none; }

	#main.sub section header aside	{ flex: 0 1 48px; }	
	#main.sub section header aside .utils	{ height: calc(100% + 1px); border-bottom: 1px solid #d1d1d1; }
	#main.sub section header aside .utils ul	{ height: 100%; }
	#main.sub section header aside .utils ul li:first-child	{ display: none; }
	#main.sub section header aside .utils ul li a	{ height: 100%; }
	
	#main.sub section header nav#SNB	{ flex: 0 1 calc(100% - 48px); }
	#main.sub section header nav#SNB > ul	{ flex-wrap: wrap; position: relative; padding-left: 48px; margin-bottom: -1px; }
	#main.sub section header nav#SNB > ul > li.home	{ position: absolute; left: 0; top: 0; width: 48px; height: 100%; }
	#main.sub section header nav#SNB > ul > li.home a	{ width: 100%; height: 100%; padding: 0; border-bottom: 1px solid #d1d1d1; background: url(../image/sub_snb_home.png) no-repeat center center; text-indent: -9999px; overflow: hidden; }
	#main.sub section header nav#SNB > ul > li.home a:before	{ content: none; }
	#main.sub section header nav#SNB > ul > li.depth	{ flex: 1 1 100px; border-bottom: 1px solid #d1d1d1; }
	#main.sub section header nav#SNB > ul > li.depth a	{ padding: 0 10px; font-size: 14px; }
	
	#main.sub section header nav#SNB > ul.child_length_4 > li.depth3,
	#main.sub section header nav#SNB > ul.child_length_4 > li.depth4	{ flex: 1 1 40%; }
	
	#main.sub section header nav.tabmenu ul li	{ flex: 1 1 50%; }
	#main.sub section header nav.tabmenu ul li a	{ height: 50px; padding: 0 5px; font-size: 1rem; }
}



@media all and (max-width: 425px)
{
	#main.sub section header nav#SNB > ul > li.depth	{ flex: 1 1 100% !important; }
}






.search form fieldset	{ padding: 0 !important; margin: 0 !important; border: 0 none !important; background: none !important; }
.search form fieldset > *	{ flex: 1 1 100%; }
.search form fieldset > p	{ flex: none; }




.modules_contents .proc_read .content_empty	{ margin: 150px 0; }





.modules_fmcs_lecture table thead tr th,
.modules_fmcs_facilities table thead tr th	{ padding-left: 0; padding-right: 0; }






.page__mypage	{}
.page__mypage .check_reserve	{ padding: 55px 0 65px 0; background-color: #f2f3f8; }
.page__mypage .check_reserve h3	{ display: flex; align-items: center; justify-content: center; gap: 18px; padding: 0; margin: 0; background: none; font-size: 30px; color: #1e196b; font-weight: 600; }
.page__mypage .check_reserve h3:before	{ display: block; width: 44px; height: 44px; padding: 0; margin: 0; border: 0 none; border-radius: 0; background: url(../image/mypage__check_reserve_title.png) no-repeat center center / contain; content: ""; }
.page__mypage .check_reserve ul	{ display: flex; justify-content: center; gap: 20px; padding: 0 20px; margin-top: 40px; }
.page__mypage .check_reserve ul li	{ flex: 0 1 260px; padding: 0; background: none; }
.page__mypage .check_reserve ul li:before	{ content: none; }
.page__mypage .check_reserve ul li a	{ display: flex; align-items: center; justify-content: center; gap: 15px; height: 80px; line-height: 1; border: 1px solid #d7dce4; border-radius: 10px; background-color: #fff; font-size: 18px; color: #393939; font-weight: 600; word-break: keep-all; }
.page__mypage .check_reserve ul li a:focus, .page__mypage .check_reserve ul li a:hover, .page__mypage .check_reserve ul li a:active	{ border-color: #1e196b; background-color: #1e196b; color: #fff;  }
.page__mypage .check_reserve ul li a.lecture:before	{ display: block; width: 37px; height: 37px; content: url(../image/mypage__check_reserve_01.png); }
.page__mypage .check_reserve ul li a.locker:before	{ display: block; width: 35px; height: 36px; content: url(../image/mypage__check_reserve_02.png); }
.page__mypage .check_reserve ul li a.facilities:before	{ display: block; width: 36px; height: 36px; content: url(../image/mypage__check_reserve_03.png); }
.page__mypage .check_reserve ul li a.camp:before	{ display: block; width: 38px; height: 37px; content: url(../image/mypage__check_reserve_04.png); }
.page__mypage .check_reserve ul li a.daily:before	{ display: block; width: 38px; height: 37px; content: url(../image/mypage__check_reserve_05.png); }

.page__mypage .member_links	{ margin: 50px 0; }
.page__mypage .member_links ul	{ display: flex; flex-direction: column; gap: 20px; }
.page__mypage .member_links ul li	{ padding: 0; background: none; }
.page__mypage .member_links ul li:before	{ content: none; }
.page__mypage .member_links ul li a	{ position: relative; display: block; line-height: 1.1; padding: 25px 230px 25px 170px; border: 1px solid #9fa8bf; border-radius: 10px; background-color: #f6f6f6; transition: none; }
.page__mypage .member_links ul li a:before	{ position: absolute; left: 0; top: 0; width: 105px; height: 100%; background: no-repeat right center; content: ""; }
.page__mypage .member_links ul li a.card:before	{ background-image: url(../image/mypage__member_links_01.png); }
.page__mypage .member_links ul li a.member_info:before	{ background-image: url(../image/mypage__member_links_02.png); }
.page__mypage .member_links ul li a.member_password:before	{ background-image: url(../image/mypage__member_links_03.png); }
.page__mypage .member_links ul li a.simple_login:before	{ background-image: url(../image/mypage__member_links_04.png); }
.page__mypage .member_links ul li a:after	{ position: absolute; left: 137px; top: 50%; width: 1px; height: 52px; margin-top: -26px; background-color: #c0c0c0; content: ""; }
.page__mypage .member_links ul li a > strong	{ display: block; font-size: 1.125em; font-weight: 600; }
.page__mypage .member_links ul li a > span	{ display: block; margin-top: 19px; font-weight: 400; }
.page__mypage .member_links ul li a > em	{ position: absolute; right: 45px; top: 50%; width: auto; line-height: 38px; padding: 0 35px; margin-top: -19px; border-radius: 38px; background-color: #173b93; font-weight: 600; color: #fff; }
.page__mypage .member_links ul li a:focus, .page__mypage .member_links ul li a:hover, .page__mypage .member_links ul li a:active	{ padding: 24px 229px 24px 169px; border-width: 2px; border-color: #173b93; background-color: #f0f0f0; color: #222; box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); }

@media all and (max-width: 1024px)
{
	.page__mypage .check_reserve ul li a	{ padding: 0 10px; font-size: 16px; }
}

@media all and (max-width: 768px)
{
	.page__mypage .check_reserve	{ padding: 30px 0; }
	.page__mypage .check_reserve h3	{ font-size: 24px; }
	.page__mypage .check_reserve ul	{ flex-wrap: wrap; gap: 10px; }
	.page__mypage .check_reserve ul li	{ flex: 1 1 40%; }
	.page__mypage .check_reserve ul li a	{ height: 60px; }
	.page__mypage .check_reserve ul li a:before	{ transform: scale(0.75); }
}

@media all and (max-width: 640px)
{
	.page__mypage .member_links ul li a	{ padding-left: 70px; padding-right: 25px; }
	.page__mypage .member_links ul li a:before	{ left: 10px; top: 25px; width: 50px; height: 50px; background-size: contain; }
	.page__mypage .member_links ul li a:after	{ content: none; }
	.page__mypage .member_links ul li a:focus, .page__mypage .member_links ul li a:hover, .page__mypage .member_links ul li a:active	{ padding-left: 69px; padding-right: 24px; }
	.page__mypage .member_links ul li a > em	{ position: static; display: inline-block; margin-top: 20px; }
}

@media all and (max-width: 425px)
{
	.page__mypage .check_reserve h3	{ gap: 10px; font-size: 20px; }
	.page__mypage .check_reserve h3:before	{ width: 30px; height: 30px; }
	
	.page__mypage .member_links ul li a	{}
}



.modules_board img	{ max-width: 100%; }
.modules_board .proc_list .search form fieldset p	{ padding: 0; }
.modules_board .proc_list .search form fieldset p.search_button	{ display: flex; gap: 10px; }
.modules_board .proc_list .search form fieldset p.search_button > *	{ flex: 1; margin: 0 !important; }
.modules_board .proc_list .search form fieldset p .action_search	{ padding: 0; background-image: none; }

.modules_board .proc_list .category ul li a.on	{ position: relative; z-index: 2; }











/**  시설안내  **/

.facilities_info	{}
.facilities_info .info	{ display: flex; flex-wrap: wrap; gap: 0 50px; padding: 55px 110px; background-color: #f2f3f8; }
.facilities_info .info .left	{ order: 2; flex: 1 1 calc(50% - 50px); display: flex; flex-direction: column; justify-content: center; }
.facilities_info .info .left h3	{ line-height: 1; padding: 0; margin: 0 0 45px 0; background: none; font-size: 30px; color: #1e196b; font-weight: 600; }
.facilities_info .info .left h3:before	{ content: none; }
	.facilities_info .info .left h3	{ display: none; }
.facilities_info .info .left dl	{ display: flex; flex-wrap: wrap; gap: 0; border-width: 1px 0 2px 0; border-style: solid; border-color: #c8c8c8; background-color: #fff; }
.facilities_info .info .left dl dt	{ flex: 0 1 30%; display: flex; align-items: center; justify-content: center; border-top: 1px solid #c8c8c8; background-color: #f2f3f8; font-weight: 500; font-size: 17px; }
.facilities_info .info .left dl dd	{ flex: 0 1 70%; line-height: 1.3; padding: 10px 30px; border-top: 1px solid #c8c8c8; font-size: 16px; }
.facilities_info .info .left dl dd br	{ display: none; }
.facilities_info .info .left dl dd a.map_link	{ display: inline-block; width: 1em; height: 1em; margin: 0 0 0 0.5em; background: url(../image/map_pin.png) no-repeat center center / contain; text-indent: -9999px; overflow: hidden; vertical-align: middle; }
.facilities_info .info .left .links	{ margin-top: 35px; display: flex; gap: 20px; }
.facilities_info .info .left .links a	{ flex: 0 1 225px; display: flex; align-items: center; justify-content: center; height: 48px; border-radius: 9px; background-color: #1e196b; color: #fff; font-weight: 500; }
.facilities_info .info .left .links a:focus, .facilities_info .info .left .links a:hover, .facilities_info .info .left .links a:active	{ border: 1px solid #1e196b; background-color: #fff; color: #1e196b; }
.facilities_info .info .right	{ order: 1; flex: 1 1 50%; position: relative; min-height: 300px; border: 1px solid #c8c8c8; border-radius: 10px; overflow: hidden; }
.facilities_info .info .right img	{ position: absolute; left: 0; top: 0; display: block; width: 100%; height: calc(100% - 50px); object-fit: cover; }
.facilities_info .info .right .buttons_box	{ position: absolute; left: 0; bottom: 0; display: flex; align-items: center; justify-content: flex-end; gap: 10px; width: 100%; height: 50px; padding-right: 30px; background-color: #fff; }
.facilities_info .info .right .buttons_box button	{ position: relative; width: 30px; height: 30px; padding: 0; margin: 0; border: 0 none; background-color: transparent; text-indent: -999px; overflow: hidden; font-family: serif; font-size: 12px; font-weight: bold; }
.facilities_info .info .right .buttons_box button:focus, .facilities_info .info .right .buttons_box button:hover, .facilities_info .info .right .buttons_box button:active	{ border-radius: 4px; background-color: #333; color: #fff; }
.facilities_info .info .right .buttons_box button:before	{ position: absolute; left: 0; top: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; text-indent: 0; content: ""; }
.facilities_info .info .right .buttons_box button.prev:before	{ content: "<"; }
.facilities_info .info .right .buttons_box button.next:before	{ content: ">"; }
.facilities_info .info .right .buttons_box .status	{ display: flex; gap: 5px; }


.facilities_info .in_tabmenu2	{ display: flex; justify-content: flex-start; align-items: flex-end; gap: 3px; margin: 65px 0; border-bottom: 1px solid #c0c7cf; }
.facilities_info .in_tabmenu2 li	{ flex: 0 1 200px; padding: 0; margin: 0 0 -1px 0; list-style: none; }
.facilities_info .in_tabmenu2 li:before	{ content: none; }
.facilities_info .in_tabmenu2 li a	{ display: flex; align-items: center; justify-content: center; height: 48px; border-width: 1px 1px 0 1px; border-style: solid; border-color: #c0c7cf; border-radius: 9px 9px 0 0; background-color: #ecf2f7; }
.facilities_info .in_tabmenu2 li a:focus, .facilities_info .in_tabmenu2 li a:hover, .facilities_info .in_tabmenu2 li a:active	{ border-color: #666; background-color: #666; color: #fff; }
.facilities_info .in_tabmenu2 li a.active	{ height: 54px; border: 0 none; background-color: #1e196b; color: #fff; }

.facilities_info .in_tabmenu	{}
.facilities_info .in_tabmenu ul	{ display: flex; justify-content: flex-start; align-items: flex-end; gap: 3px; margin: 65px 0; border-bottom: 1px solid #c0c7cf; }
.facilities_info .in_tabmenu li	{ flex: 0 1 200px; padding: 0; margin: 0 0 -1px 0; list-style: none; }
.facilities_info .in_tabmenu li:before	{ content: none; }
.facilities_info .in_tabmenu li a	{ display: flex; align-items: center; justify-content: center; height: 48px; border-width: 1px 1px 0 1px; border-style: solid; border-color: #c0c7cf; border-radius: 9px 9px 0 0; background-color: #ecf2f7; }
.facilities_info .in_tabmenu li a:focus, .facilities_info .in_tabmenu li a:hover, .facilities_info .in_tabmenu li a:active	{ border-color: #666; background-color: #666; color: #fff; }
.facilities_info .in_tabmenu li a.active	{ height: 54px; border: 0 none; background-color: #1e196b; color: #fff; }


.facilities_info h4	{ margin: 40px 0 10px 0; font-size: 24px; font-weight: 600; }
.facilities_info h4.in_tabmenu_target	{ position: absolute; width: 0; height: 0; font-size: 0; overflow: hidden; }
.facilities_info h5	{ margin: 40px 0 10px 0; font-size: 20px; font-weight: 600; }
.facilities_info ul li + li	{ margin-top: 10px; }
.facilities_info table	{ margin: 20px 0; }


@media all and (max-width: 768px)
{
	.facilities_info .info	{ gap: 40px; padding: 10px; }
	.facilities_info .info .left	{ order: 1; flex: 1 1 100%; }
	.facilities_info .info .left .links	{ justify-content: center; }
	.facilities_info .info .right	{ order: 2; flex: 1 1 100%; }
}