.subpage {padding: 0 0 150px;}
.subpage.ver2 {padding: 0 ;}

.sub_top {display: table; width: 100%; height: 450px; text-align: center; background-position: center !important; background-size: cover !important;}
.sub_top > div {display: table-cell; vertical-align: middle;}
.sub_top > div strong { display: block; font-weight: 700; font-size: 3.125rem; color: #ffffff; margin: 30px 0 15px;}
.sub_top > div p {display: block; font-family: 'Montserrat', sans-serif; color: #cbcbcb; letter-spacing: 4px; text-transform: uppercase;}

.sub_top.sub07,
.sub_top.sub01 {background: url('/images/sub/sub01_bg.jpg')no-repeat;}
.sub_top.sub02 {background: url('/images/sub/sub02_bg.jpg')no-repeat;}
.sub_top.sub03 {background: url('/images/sub/sub03_bg.jpg')no-repeat;}
.sub_top.sub04 {background: url('/images/sub/sub04_bg.jpg')no-repeat;}
.sub_top.sub05 {background: url('/images/sub/sub05_bg.jpg')no-repeat;}
.sub_top.sub06 {background: url('/images/sub/sub06_bg.jpg')no-repeat;}

.sub_nav {height: 54px; border-bottom: 1px solid #ebebeb;}
.sub_nav > div { height: 100%; text-align: center;}
.sub_nav > div ul {height: 100%; display: inline-block;}
.sub_nav li {display: inline-block; float: left; text-align: center; height: 100%; padding: 0 35px;}
.sub_nav li a {position: relative; display: table; width: 100%; height: 100%;}
.sub_nav li a::after {content: ""; position: absolute; left: 0; bottom: -1px; width: 100%; height: 2px; background: #004ea2; opacity: 0;}
.sub_nav li a span {display: table-cell; vertical-align: middle; font-size: 1.25rem; font-weight: 500; color: #666666;}

.sub_nav li.active a::after {opacity: 1;}
.sub_nav li.active a span {color: #004ea2;}

.sub_tit {padding: 110px 0 40px; text-align: center;}
.sub_tit strong {display: inline-block; position: relative; font-size: 2rem; font-weight: 700; color: #222222; padding: 0 10px 0 0; line-height: 1;}
.sub_tit strong::after {content: ""; position: absolute; right: 0; bottom: 2px; width: 6px; height: 6px; border-radius: 50%; background: #004ea2;}

.greeting_part .txt_wrap {display: table; width: calc(100% - 100px); margin: 0 auto; background: #fefefe; box-shadow: 2px 2px 10px 0 rgba(0,0,0,0.1); text-align: center; min-height: 430px; transform: translate(0,-100px); background: url('/images/sub/txt_wrap_bg.jpg');}
.greeting_part .txt_wrap > div {display: table-cell; vertical-align: middle; padding:50px 10px;}
.greeting_part .txt_wrap > div b {display: block; margin: 20px 0; font-size: 1.5rem; font-weight: 700; color: #333333;}
.greeting_part .txt_wrap > div p {font-size: 1.125rem; font-weight: 400; color: #666666;}
.greeting_part .txt_wrap > div p + p {margin: 20px 0 0;}
.greeting_part .txt_wrap > div span {display: block; font-weight: 400; color: #222222; margin: 35px 0 0; font-size: 1.125rem;}

.history_part {background: #f8f8f8; padding: 0 0 100px; overflow: hidden;}
.history_part .swiper-container {overflow: visible;}
.history_part .swiper-slide {position: relative; width: 450px; padding: 60px 0 0;}
.history_part .swiper-slide::before {content: ""; position: absolute; top: 20px; width: 100%; left: 0; background: #004ea2; height: 5px; z-index: 2;}
.history_part .swiper-slide::after {content: ""; position: absolute; top: 0px; width: 7px; left: 40px; background: #3da60f; height: 44px; }
.history_part .swiper-slide .txt_wrap {padding: 0 20px;}
.history_part .swiper-slide .txt_wrap b {position: relative; display: block; font-size: 2rem; font-weight: 800; color: #222222; margin: 0 0 10px;}
.history_part .swiper-slide .txt_wrap li + li {margin: 10px 0 0;}
.history_part .swiper-slide .txt_wrap li em {display: inline-block; float: left; font-size: 1.125rem; font-weight: 700; color: #333333; width: 30px;}
.history_part .swiper-slide .txt_wrap li .p_wrap {display: inline-block; float: left; width: calc(100% - 30px);}
.history_part .swiper-slide .txt_wrap li .p_wrap p {color: #666666; font-weight: 400; font-size: 1.125rem;}

.history_part .swiper-button-wrap {position: relative; text-align: center; margin: 30px 0 0;}
.history_part .swiper-button-wrap > div {display: inline-block;}
.history_part .swiper-button {position: relative; margin: 0; top: auto; float: left; left: auto; right: auto; width: 70px; height: 70px; border: 1px solid #ddd; opacity: 1;}
.history_part .swiper-button-prev {margin: 0 10px 0 0;}
.history_part .swiper-button::after {display: none;}

.location_part .map_area {position: relative;}
.location_part .root_daum_roughmap .wrap_map {height: 500px;}
.location_part .txt_box {position: absolute; left: 80%; top: 50%; transform: translate(-50%,-50%); z-index: 12; background: #004b9c; color: #fff; padding: 50px 30px; min-width: 400px;}
/*.location_part .txt_box img {display: block; width: 265px; margin: 0 auto; object-fit: contain;}*/
.location_part .txt_box img {display: block; width: 250px; margin: 0 auto; object-fit: contain; -webkit-filter: brightness(0) invert(1); filter: brightness(0) invert(1);}
.location_part .txt_box hr {background: #fff; border: none; height: 1px; margin: 15px 0;}
.location_part .txt_box b {display: block;  font-family: 'Montserrat', sans-serif; font-size: 1.125rem; font-weight: 700; color: #fff; margin: 0 0 5px;}
.location_part .txt_box b + p {font-size: 1.125rem; font-weight: 400; color: #fff; line-height: 1.4; margin: 0 0 15px;}
.location_part .txt_box li + li {margin: 10px 0 0;}
.location_part .txt_box li span {display: inline-block; float: left; font-weight: 500; color: #fff; font-family: 'Montserrat', sans-serif; font-size: 1.125rem; width: 80px;}
.location_part .txt_box li p {display: inline-block; float: left; font-family: 'Montserrat', sans-serif; font-size: 1.125rem; font-weight: 600; color: #fff; width: calc(100% - 80px);}

/* tap */
.tap_wrap {text-align: center; margin: 0 0 60px;}
.tap_wrap ul {display: inline-block;}
.tap_wrap ul li {display: inline-block; float: left; text-align: center; }
.tap_wrap ul li a {display: table; max-width: 100%; width: 200px; max-width: 100%; height: 60px; background: #f8f8f8; border: 1px solid #ddd; border-right: none; }
.tap_wrap ul li:last-child a {border-right: 1px solid #ddd;}
.tap_wrap ul li a span {display: table-cell; vertical-align: middle; font-size: 1.188rem; font-weight: 400; color: #888888;}

.tap_wrap ul li.on a {background: #004ea2; border-color: #004ea2; border-right: none; border-left: none;}
.tap_wrap ul li.on a span {color: #ffffff;}

.tap_wrap ul.five {max-width: 100%;}
.tap_wrap ul.five li {max-width: calc(100% / 6);}

article.conts {padding: 95px 0;}
article.conts.ver2 {padding: 0 0 95px;}
article.conts.grey {background: #fafbfc;}
article.conts .left {display: inline-block; float: left; width: 180px;}
article.conts .right {display: inline-block; float: left; width: calc(100% - 180px);}
article.conts .left em {font-size:  1.75rem; font-weight: 700; color: #333333;}

article.conts.arrow .right {display: inline-block; float: right;}
article.conts.arrow .right li {display: inline-block; width: calc((100% - 120px) / 4); margin: 0 40px 40px 0;  position: relative; border: 1px solid #ddd; box-shadow: 0 0 8px 0 rgba(0,0,0,0.2); border-radius: 8px; padding: 20px; float: left;}
article.conts.arrow .right li:nth-of-type(4n) {margin: 0 0 40px;}
article.conts.arrow .right li:last-child {margin: 0 0 40px;}
article.conts.arrow .right li::after {content: ""; position: absolute; width: 10px; height: 20px; left: calc(100% + 15px); top: 50%; transform: translate(0,-50%); background: url('/images/sub/arrow_right.png')no-repeat;}
article.conts.arrow .right li:nth-of-type(4n)::after {display: none;}
article.conts.arrow .right li:last-child::after {display: none;}
article.conts.arrow .right li .img_circle {display: inline-block; position: relative; width: 96px; height: 96px; border-radius: 50%; background: #f3f6f9; float: left;}
article.conts.arrow .right li .img_circle img {position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);}
article.conts.arrow .right li .txt_wrap {display: table; float: left; width: calc(100% - 96px); height: 96px; padding: 0 0 0 10px;}
article.conts.arrow .right li .txt_wrap > div {display: table-cell; vertical-align: middle;}
article.conts.arrow .right li .txt_wrap b {display: block; font-size: 1.125rem; font-weight: 700; color: #004ea2; font-family: 'Montserrat', sans-serif;  margin: 0 0 4px;}
article.conts.arrow .right li .txt_wrap p {font-size: 1.125rem; font-weight: 400; color: #333333; line-height: 1.2; margin: 0;}

article.conts.table .right > p {font-size: 1.375rem; font-weight: 500; color: #333333; margin: 0 0 20px;}
article.conts.table .right > i {display: block; font-size: 1.125rem; font-weight: 400; color: #666666; margin: 0 0 15px;}
article.conts.table .right > legend {display: block; text-align: right; font-size: 1.125rem; font-weight: 400; color: #666666; margin: 0 0 10px;}
article.conts.table .right > span {display: block; font-size: 1.125rem; font-weight: 400; color: #333; margin: 15px 0 0;}

article.conts table {width: 100%; text-align: center; border-top: 2px solid #004ea2;}
article.conts table tr {border-bottom: 1px solid #ddd;}
article.conts table tr > * {border-right: 1px solid #ddd;}
article.conts table tr > *:last-child {border-right: none;}
article.conts table th {font-size: 1.25rem; font-weight: 500; color: #333333; padding: 15px 0; background: #edf2f7;}
article.conts table th:nth-of-type(1) {width: 270px;}
article.conts table th:nth-of-type(2) {width: 360px;}
article.conts table th:nth-of-type(3) {width: 270px;}
article.conts table td {padding: 15px 0; font-weight: 400; color: #666666; font-size: 1.125rem;}
article.conts table .result td {background: #f5f8fa; font-weight: 500; color: #333;}

article.conts table.ver2 {table-layout: fixed;}
article.conts table.ver2 th:nth-of-type(1) {width: auto;}
article.conts table.ver2 th:nth-of-type(2) {width: auto;}
article.conts table.ver2 th:nth-of-type(3) {width: auto;}

article.conts table.ver3 {table-layout: fixed;}
article.conts table.ver3 th:nth-of-type(1) {width: auto;}
article.conts table.ver3 th:nth-of-type(2) {width: auto;}
article.conts table.ver3 th:nth-of-type(3) {width: auto;}
article.conts table.ver3 .last_td {background: #edf2f7;font-size: 1.25rem;font-weight: 500;color: #333333;}
article.conts table.ver3 tr > *:last-child.border_td {border-right: 1px solid #ddd;}

article.conts.number .right .clear > div {position: relative; display: table; float: left; width: calc((100% - 40px) / 2); margin: 0 40px 0 0; border: 1px solid #ddd; border-top: 1px solid #004ea2; height: 130px; text-align: center; background: #fff;}
article.conts.number .right .clear > div span {position: absolute; left: 50%; top: -20px; width: 40px; height: 40px; border-radius: 50%; background: #004ea2; line-height: 40px; font-weight: 500; color: #fff; font-size: 1.125rem; transform: translate(-50%,0);}
article.conts.number .right .clear > div p {display: table-cell; vertical-align: middle;}
article.conts.number .right .clear > div:nth-of-type(2n) {margin: 0 0 60px;}


article.conts.dotted .right.two ul {max-width: 700px;}
article.conts.dotted .right li {position: relative; padding: 0 0 0 10px; width: 50%; display: inline-block; float: left; margin: 0 0 8px; font-size: 1.25rem; font-weight: 400; color: #666666;}

article.conts.dotted .right li::before {content: ""; position: absolute; width: 3px; height: 3px; border-radius: 50%; background: #004ea2; border-radius: 50%; left: 0; top: 12px;}

article.conts.dotted .right.three ul {display: inline-block; float: left;}
article.conts.dotted .right.three ul + ul {margin: 0 0 0 40px;}
article.conts.dotted .right.three ul li {width: auto; display: block; float: none;}



article.conts.num_txt .right > p {font-size: 1.5rem; font-weight: 700; color: #333333; margin: 0 0 20px;}
article.conts.num_txt .right > div {position: relative; padding: 0 0 0 40px;}
article.conts.num_txt .right > div + div { margin: 30px 0 0;}
article.conts.num_txt .right > div::before {content : ""; position: absolute; left: 0; top: 2px; width: 28px; height: 28PX; border-radius: 50%; background: #004ea2; text-align: center; color: #fff; font-size: 1rem; line-height: 28px;}
article.conts.num_txt .right > div.one::before {content: "1";}
article.conts.num_txt .right > div.two::before {content: "2";}
article.conts.num_txt .right > div.three::before {content: "3";}
article.conts.num_txt .right > div p {font-size: 1.25rem; font-weight: 500; color: #333333; margin: 0 0 10px;}
article.conts.num_txt .right > div span {display: block; font-size: 1.125rem; font-weight: 400; color: #666666; margin: 0 0 8px}
article.conts.num_txt .right > div em {display: inline-block; padding: 5px 8px; font-size: 1.125rem; font-weight: 400; color: #333333; background: #f8f8f8; margin: 15px 0 0;}

article.conts.num_txt .right > div.table_wrap {padding: 0; margin: 0 0 50px;}
article.conts.num_txt .right > div.table_wrap::before {display: none;}
article.conts .bottom_legend {display: block; text-align: right; font-size: 1rem; font-weight: 400; color: #666666;}

article.conts.photo .right > div {display: inline-block; float: left; width: calc((100% - 20px) / 2); margin: 0 20px 0 0;}
article.conts.photo .right > div:nth-of-type(2) {margin: 0;}
article.conts.photo .right > div .photo {padding-bottom: 44%; background-position: center !important; background-size: cover !important; margin: 0 0 15px;}
article.conts.photo .right > div b {display: block; color: #004ea2; font-size: 1.375rem; font-weight: 500; margin: 0 0 10px;}
article.conts.photo .right > div p {font-size: 1.125rem; font-weight: 300; color: #666666;}

p.photo_wrap {text-align: center;}
article.conts.img .right{ text-align: center;}

/* sub0201 */
.subpage .mid_photo {display: table; width: 100%; height: 240px; background-position: center !important; background-size: cover !important; text-align: center;}
.subpage .mid_photo.ver2 {height: 360px; background-position: left center !important;}
.subpage .mid_photo p {display: table-cell; vertical-align: middle; color: #fff; font-size: 1.5rem; font-weight: 300; }
.subpage .mid_photo span {font-size: 1.5rem; font-weight: 500;}

/*  */
.sub0203 .conts p {font-size: 1.25rem; font-weight: 400; color: #666666; line-height: 1.4; margin: 20px 0 0;}
/**************** board ********************/
/* gallery2 */
.gall_list {display: flex; flex-wrap: wrap;}
.gall_list li {position: relative; display: inline-block; width: calc((100% - 120px) / 4); text-align: center; margin: 0 40px 20px 0;}
.gall_list li:nth-of-type(4n) {margin: 0 0 20px;}
.gall_list li .img_wrap {position: relative;}
.gall_list li .img_wrap .icon_view {display: table; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); opacity: 0; transition: .3s ease;}
.gall_list li .img_wrap .icon_view span {display: table-cell; vertical-align: middle; text-align: center;}
.gall_list li .img_wrap .icon_view span i {display: inline-block; font-size: 1rem; font-weight: 400; color: rgba(255,255,255,0.5); border: 1px solid rgba(255,255,255,0.5); padding: 5px 20px;}
.gall_list li .photo {width: 100%; padding-bottom: 108.5%; background-position: center !important; background-size: cover !important; border: 1px solid #eee; background: url("/images/sub/no_image.jpg")no-repeat;}
.gall_list li .txt_wrap > p {padding: 10px 0; font-size: 1.25rem; font-weight: 500; color: #000000; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.gall_list li input {position: absolute; left: 10px; top: 10px; z-index: 2;}


.gall_list.ver2 li .photo {padding-bottom: 80%; }
.gall_list.ver2 li .txt_wrap > p {padding: 5px 0;}
.gall_list.ver2 li .txt_wrap > p + span p {display: block; font-size: 1.125rem; font-weight: 400; color: #666666; line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}


/*  */
/* board-common*/
.subpage .bo_sch_wrap {position: relative; top: 0; left: 0; transform: translate(0); font-size: 0; margin: 0 0 30px; z-index: 1;}
.subpage .bo_sch_wrap .bo_sch {position: relative; top: 0; left: 0; transform: translate(0); margin: 0; padding: 25px 10px; width: 100%; box-shadow: none; border: none; text-align: center; background: #fafafa;}
.subpage .bo_sch_wrap .bo_sch form {padding: 0; display: inline-block; width: 100%; max-width: 500px;}
.subpage .bo_sch_wrap .bo_sch select {display: inline-block; float: left; width: 140px; clear: none; background: #fff url('/images/common/select_arrow.png')no-repeat; background-position: right 10px center; padding: 0 20px 0 10px; margin: 0 10px 0 0;}
.subpage .bo_sch_wrap .bo_sch .sch_bar { display: inline-block; width: auto; float :left; margin: 0; clear: none;}
.subpage .bo_sch .sch_input {background: #fff; padding: 0 10px;}
.subpage .bo_sch .sch_btn {background: #004ea2; color: #fff; width: 90px; height: 40px;}

.count_list {font-size: 1rem; font-weight:300; color: #666666; text-align: right; margin: 0 0 10px;}
.count_list span {font-weight: 700; color: #004ea2;}

.board_list.ver2 table {width: 100%; border-top: 2px solid #004ea2; table-layout: fixed;}
.board_list.ver2 tr {border-bottom: 1px solid #ddd;}
.board_list.ver2 th {background: #fafafa; font-size: 1rem; font-weight: 500; color: #222222; padding: 20px 0;}
.board_list.ver2 .th_chk {width: 60px;}
.board_list.ver2 .th_num {width: 110px;}
.board_list.ver2 .th_date {width: 180px;}
.board_list.ver2 .th_view {width: 120px;}
.board_list.ver2 tr > * {border-right: 1px solid #ddd;}
.board_list.ver2 tr > *:last-child {border-right: none;}
.board_list.ver2 td {text-align: center; padding: 15px 0; font-size: 1rem;}

.board_list.ver2 .notice .td_num span {display: inline-block; background: #096eb8; color: #fff; padding: 6px 12px; border-radius: 5px; line-height: 1;}

.board_list.ver2 .td_tit {padding: 0; text-align: left;}
.board_list.ver2 .td_tit a {display: block; padding: 15px;}
.board_list.ver2 .td_tit p {display: inline-block; float: left; max-width: calc(100% - 23px); text-overflow: ellipsis; overflow: hidden; white-space: nowrap; font-size: 1.125rem;}
.board_list.ver2 .td_tit img {display: inline-block; float: left; margin: 0 0 0 4px; transform: translate(0,4px);}

.board_list.ver3 {border-top: 1px solid #ddd;}
.board_list.ver3 li {padding: 30px 0; border-bottom: 1px solid #ddd;}
.board_list.ver3 .left {display: inline-block; float: left; width: 360px;}
.board_list.ver3 .left .photo {width: 100%; padding-bottom: 61%; background-position: center !important; background-size: cover !important;}
.board_list.ver3 .right {position: relative; display: inline-block; float: right; width: calc(100% - 360px); padding: 10px 0 10px 30px;}
.board_list.ver3 .right strong {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 1.375rem; margin: 0 0 20px;}
.board_list.ver3 .right p {font-size: 1rem; font-weight: 300; color: #666666; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; /* 여러 줄 자르기 추가 스타일 */ white-space: normal; line-height: 1.4; height: 2.8em; text-align: left; word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.board_list.ver3 .right a {position: absolute; bottom: 10px; border: 1px solid #333333; width: 105px; padding: 10px 0; text-align: center; transition: .3s ease;}
.board_list.ver3 .right a span {font-size: 1rem; font-weight: 400; color: #333333; transition: .3s ease;}
.board_list.ver3 .right a:hover {border-color: #c9a875; background: #c9a875;}
.board_list.ver3 .right a:hover span {color: #fff;}


.paging_wrap {text-align: center; margin: 90px 0 0;}
.paging_wrap > div {display: inline-table;}
.paging_wrap > div > * {display: inline-block; float: left;}
.paging_wrap ul {margin: 0 15px;}
.paging_wrap ul li {display: inline-block; float: left;}
.paging_wrap ul li + li {margin: 0 0 0 5px;}
.paging_wrap ul li span {position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); font-size: 1rem; font-weight: 400; color: #666666;}
.paging_wrap ul li.on a {background: #004ea2; border-color: #004ea2;}
.paging_wrap ul li.on a span {color: #fff;}
.paging_wrap a {position: relative; display: inline-block; width: 40px; height: 40px; border: 1px solid #ddd;}
.paging_wrap a + a {margin: 0 0 0 5px;}
.paging_wrap a img {position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);}

.board .util_wrap {text-align: right; margin: 20px 0 0;}
.board .util_wrap ul {display: inline-block;}
.board .util_wrap ul li {display: inline-block; float: left;}
.board .util_wrap ul li + li {margin: 0 0 0 4px;}
.board .util_wrap ul li > * {display: inline-block; background: #004ea2; padding: 8px 10px; border: none; height: auto; line-height: 1; font-size: 1rem; color: #fff;}
.board .util_wrap ul li > * span {color: #fff;}

.list .tap_wrap {text-align: center; margin: 0 0 50px;}
.list .tap_wrap ul {display: inline-block;}
.list .tap_wrap li {display: inline-block; float: left;}
.list .tap_wrap li + li {margin: 0 0 0 5px;}
.list .tap_wrap li a {display: table; height: 60px; width: 200px; text-align: center; border-bottom: 1px solid #cccccc;}
.list .tap_wrap li span {display: table-cell; vertical-align: middle; color: #cccccc; font-size: 1.125rem; font-weight: 500;}

.list .tap_wrap li.on a {border-color: #c9a875;}
.list .tap_wrap li.on span {color: #c9a875;}

.subpage #bo_cate::after {content: ""; display: block; clear: both;}
.subpage #bo_cate {text-align: center;}
.subpage #bo_cate ul {display: inline-block;}
.subpage #bo_cate li {display: table; float: left;}
.subpage #bo_cate li a {display: table-cell; vertical-align: middle; transition: .3s ease; }
.subpage #bo_cate #bo_cate_on {background: #004ea2; border-color: #004ea2; box-shadow: none;}
.subpage #bo_cate a:focus,
.subpage #bo_cate a:hover,
.subpage #bo_cate a:active {background: #004ea2;}
/* view */
section .bo_v_nb  {margin: 0;}
section .bo_v_nb a {display: inline-block; width: calc(100% - 140px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
section .bo_v_nb li .nb_tit {transform: translate(0,-5px);}
section #bo_v .tit_wrap {padding: 25px 30px 25px; border-bottom: 1px solid #ddd; border-top: 2px solid #000;}
section #bo_v .tit_wrap strong {display: block; font-size: 1.25rem; font-weight: 500; color: #333333; margin: 0 0 10px;}
section #bo_v .tit_wrap .info_wrap p {font-size: 1rem; font-weight: 400; color: #070606;}
section #bo_v .tit_wrap .info_wrap p span {font-weight: 500; color: #444444;}

section #bo_v .contents_wrap {padding: 50px 30px 30px; border-bottom: 1px solid #ddd;}
section #bo_v .contents * {font-size: initial;}

/* write */
.write input[type="text"] {height: 40px; padding: 10px; border: 1px solid #ddd; width: 100%;}
.write textarea {border: 1px solid #ddd; padding: 10px;}
.write #bo_w .bo_w_flie .file_wr {padding: 0;}
.write #bo_w .bo_w_flie .frm_file {margin: 0;}
.write .btn_confirm {text-align: center;}
.write .btn_confirm > * {display: inline-block; width: 140px; height: 50px; line-height: 50px; border: 1px solid #ddd;}
.write .btn_confirm > *.btn_submit {background: #004ea2; color: #fff;}

#bo_w .bo_v_option li {display:inline-block;float:left;text-align:left;margin:0 5px 0 0}
#bo_w .bo_v_option li label {vertical-align:baseline}
#bo_w .bo_v_option .chk_box input[type="checkbox"] + label span {margin-left:0;margin-right:5px}
#bo_w .write_div {margin:10px 0;position:relative}
#bo_w .write_div:after {display:block;visibility:hidden;clear:both;content:""}
#bo_w .bo_w_info:after {display:block;visibility:hidden;clear:both;content:""}
#bo_w .bo_w_info .frm_input {float:left;margin-bottom:1%}
#bo_w #wr_password, #bo_w #wr_homepage {margin-left:1%}
#bo_w .wr_content.smarteditor2 iframe {background:#fff}
#bo_w .bo_w_tit {position:relative}
#bo_w .bo_w_tit .frm_input {padding-right:120px}
#bo_w .bo_w_tit #btn_autosave {position:absolute;top:5px;right:5px;line-height:30px;height:30px}
#bo_w .bo_w_link label {position:absolute;top:1px;left:1px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;font-size:1.2em;text-align:center;color:#b2b2b2}
#bo_w .bo_w_link .frm_input {padding-left:50px}
#bo_w .bo_w_flie .lb_icon {position:absolute;top:0px;left:0px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;font-size:1.2em;text-align:center;color:#b2b2b2}
#bo_w .bo_w_flie .frm_file {padding-left:50px;margin-top:3px}
#bo_w .bo_w_flie .file_wr {position:relative;border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;height:40px;margin:0}
#bo_w .bo_w_flie .frm_input {margin:10px 0 0}
#bo_w .bo_w_flie .file_del {position:absolute;top:10px;right:10px;font-size:0.92em;color:#7d7d7d}

/* online */

.online table {border-top: 2px solid #004ea2; width: 100%;}
.online table tr {border-bottom: 1px solid #ddd;}
.online table th {background: #f5f7fa; font-size: 1.125rem; font-weight: 400; color: #333; border-right: 1px solid #ddd;}
.online table td {padding: 10px; height: 60px;}

.online table select,
.online table input[type="text"] {border: 1px solid #ddd; height: 40px; padding: 0 10px; font-size: 1rem; font-weight: 400; color: #666;}
.online table input[type="checkbox"] {width: auto; height: auto;}
.online table select {background: url('/images/common/select_arrow.png')no-repeat; background-position: right 10px center;}
.online table input[type="text"] {width: 100%; max-width: 400px;}
.online table input[type="file"] {border: 1px solid #ddd; height: 40px; padding: 0 10px; font-size: 1rem; font-weight: 400; color: #666;}

.online table .phone_line i {display: inline-block; float: left; width: 5px; height: 1px; background: #aaaaaa; margin: 0 5px; transform: translate(0,19px);}
.online table .phone_line input,
.online table .phone_line select {width: calc((100% - 30px) / 3); float: left; max-width: 150px;}

.online table .mail_line i {display: inline-block; float: left;margin: 0 5px; transform: translate(0,6px); color: #666; font-size: 0.9385rem}
.online table .mail_line input,
.online table .mail_line select {width: calc((100% - 32px) / 3); float: left; max-width: 150px;}
.online table .mail_line select {margin: 0 0 0 10px;}

.online table .date_line input[type="text"] {width: calc(100% - 40px);}

.online table textarea {width: 100%; height: 200px;}

.online .radio_line label {display: inline-block; float: left; margin: 0 15px 0 0; cursor: pointer;}
.online .radio_line label:last-child {margin: 0;}
.online .radio_line label span {display: inline-block; width: 20px; height: 20px; border-radius: 50%; position: relative; border: 1px solid #d6d6d6; float: left; margin: 0 5px 0 0;}
.online .radio_line label span::before {content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 10px; height: 10px; border-radius: 50%; background: #dbbfab; opacity: 0; transition: .3s ease;}
.online .radio_line label input:checked + span::before {opacity: 1;}
.online .radio_line label p {display: inline-block; float: left; font-size: 1rem; font-weight: 400; color: #666666; transform: translate(0,-2px);}

.online .date_line input {width: 240px; float: left;}
.online .date_line .img_wrap {position: relative; height: 40px; width: 40px; float: left; border: 1px solid #ddd; border-left: none;}
.online .date_line .img_wrap img {position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);}

.online .time_line select {width: 150px; max-width: calc((100% - 50px)/2);}

.online .rq::before {content:"*"; color: #ff2525; margin: 0 5px 0 0;}

.privacy_wrap {margin: 40px 0 0;}
.privacy_wrap > p {font-size: 1.25rem; font-weight: 500; color: #333333; margin: 0 0 15px;}
.privacy_wrap .conts {height: 300px; overflow: auto; padding: 15px; border: 1px solid #ddd;}
.privacy_wrap label {display: inline-block; cursor: pointer; margin: 15px 0 0;}
.privacy_wrap label input {float: left;}
.privacy_wrap label span {position: relative; display: inline-block; float: left; width: 20px; height: 20px; border: 1px solid #ddd;}
.privacy_wrap label span::after {content: "";position: absolute; left: 50%; top: 50%; width: 10px; height: 10px; transform: translate(-50%,-50%); background: #c9a063; opacity: 0; transition: .3s ease;}
.privacy_wrap label input:checked + span::after {opacity: 1; }

.privacy_wrap label p {display: inline-block; float: left; font-size: 1rem; color: #666666; transform: translate(0,-2px); margin: 0 0 0 5px;}

/* login */
.subpage .mbskin {margin: 30px 0 0;}
.subpage #login_fs { padding: 20px;}
.subpage #mb_login #login_fs .frm_input {border: 1px solid #ddd; height: 40px; padding: 0 10px;}
.subpage .mbskin {width: calc(100% - 20px); max-width: 400px; margin: 0 auto;}


#bo_v_img {text-align: center;}

@media screen and (max-width: 1400px) {
    article.conts .left {width: 100%; padding: 0 0 15px;}
    article.conts .right {width: 100%; padding: 0;}

    article.conts.dotted .right.three ul {max-width: calc((100% - 80px)/3);}
}
@media screen and (max-width: 1300px) {
    .gall_list li {width: calc((100% - 30px) / 4); margin: 0 10px 20px 0;}
    .gall_list li:nth-of-type(4n) {margin: 0 0 10px;}

    article.conts.arrow .right li {display: inline-block; width: calc((100% - 81px) / 3); margin: 0 40px 40px 0; padding: 10px; }
    article.conts.arrow .right li:nth-of-type(4n) {margin: 0 40px 40px 0;}
    article.conts.arrow .right li:nth-of-type(3n) {margin: 0 0 40px;}
    article.conts.arrow .right li:last-child {margin: 0 0 40px;}
    article.conts.arrow .right li::after {content: ""; position: absolute; width: 10px; height: 20px; left: calc(100% + 15px); top: 50%; transform: translate(0,-50%); background: url('/images/sub/arrow_right.png')no-repeat;}
    article.conts.arrow .right li:nth-of-type(4n)::after {display: block;}
    article.conts.arrow .right li:nth-of-type(3n)::after {display: none;}
}
@media screen and (max-width: 1200px) {
    article.conts table th:nth-of-type(1) {width: 250px}
    article.conts table th:nth-of-type(2) {width: 300px}
    article.conts table th:nth-of-type(3) {width: 250px}
}
@media screen and (max-width: 1024px) {
    .subpage {padding: 0 0 100px;}

    .sub_nav {height: 60px; position: relative; z-index: 4;}
    .sub_nav > div {padding: 0; font-size: 0; height: 100%;}
    .sub_nav .current {position: relative; display: table !important; width: 100%; background:  #004ea2; height: 100%; text-align: left;}
    .sub_nav .current b {display: table-cell; vertical-align: middle; color: #fff; padding: 0 10px; font-size: 1.125rem;}
    .sub_nav .current .img_wrap {position: absolute; right: 10px; top: 50%; transform: translate(0,-50%); width: 26px; height: 14px;}
    .sub_nav .current .img_wrap img {position: absolute; left: 0; top: 0; transition: .3s ease;}
    .sub_nav .current.active .img_wrap img {transform: rotate(180deg);}
    .sub_nav > div ul {display: none; background: #fff; z-index: 8; height: auto;}
    .sub_nav li {display: block; float: none; padding: 0; height: auto;}
    .sub_nav li a {border-bottom: 1px solid #ddd; padding: 8px 10px; text-align: left;}
    .sub_nav li a::after {display: none;}
    .sub_nav li a span {font-size: 1rem;}

    .greeting_part {overflow: hidden;}
    .greeting_part .limit1400 {padding: 0;}
    .greeting_part .txt_wrap {width: calc(100% - 80px); transform: translate(0,-80px);}

    .location_part {padding: 0 10px 40px;}
    .location_part .txt_box {position: relative; left: auto; top: auto; transform: translate(0); padding: 20px;}

    .location_part .root_daum_roughmap .wrap_map {height: 400px;}

    .gall_list li {width: calc((100% - 21px) / 3); margin: 0 10px 20px 0;}
    .gall_list li:nth-of-type(4n) {margin: 0 10px 20px 0;}
    .gall_list li:nth-of-type(3n) {margin: 0 0 10px;}

    .board_list .info_wrap {padding: 0 15px 10px;}
    .board_list .info_wrap span {display: inline-block; float: left; color:#666; font-size: 1.063rem;}
    .board_list .info_wrap span + span {margin: 0 0 0 15px;}

    .tap_wrap {height: 44px; position: relative; z-index: 3;}
    .tap_wrap > .tap {display: table !important; width: 100%; position: relative; height: 100%; background: transparent; text-align: left; border: 1px solid #004b9c;}
    .tap_wrap > .tap b {display: table-cell; vertical-align: middle; color: #004b9c; padding: 0 10px; font-size: 1.25rem; font-weight: 500;}
    .tap_wrap > .tap .img_wrap {position: absolute; right: 10px; top: 50%; transform: translate(0,-50%); width: 18px; height: 10px;}
    .tap_wrap > .tap .img_wrap img {position: absolute; left: 0; top: 0; transition: .3s ease;}
    .tap_wrap > .tap.active .img_wrap img {transform: rotate(180deg);}
    .tap_wrap ul {position: absolute; top: 100%; left: 0; width: 100%; display: none;}

    .tap_wrap ul li {display: block; float: none; width: 100%; text-align: left;}
    .tap_wrap ul.five li {max-width: 100%;}
    .tap_wrap ul li a {display: block; width: 100%; height: auto; padding: 5px 10px; max-width: none;}
    .tap_wrap ul li a span {display: block; font-size: 1.063rem;}

    article.conts.ver2 {padding: 0 0 80px;}
    article.conts {padding: 80px 0;}
    article.conts.arrow .right li .txt_wrap {height: 80px;}
    article.conts.arrow .right li .img_circle {width: 80px; height: 80px;}
    article.conts.arrow .right li .img_circle img {transform: translate(-50%,-50%) scale(0.7);}

    .subpage .table_wrap {width: 100%; overflow: auto;}
    .subpage .table_wrap table {width: 1004px;}

    article.conts.number .right .clear > div {width: calc((100% - 10px) / 2); margin: 0 10px 10px 0; padding: 0 10px;}
    article.conts.number .right .clear > div:nth-of-type(2n) {margin: 0 0 10px;}
    article.conts.number .right .clear > div p br {display: none;}

    article.conts .left em br {display: none;}

    article.conts.dotted .right.three ul {width: 100%; max-width: none; margin: 0 !important;}
}
@media screen and (max-width: 768px) {
    .subpage {padding: 0 0 80px;}

    .sub_tit {padding: 80px 0 30px;}
    .sub_top {height: 380px;}
    .sub_nav {height: 50px;}

    .greeting_part .greeting_photo {position: relative; left: 50%; transform: translate(-50%,0); width: 800px; max-width: none;}

    .history_part {padding: 0 0 80px;}
    .history_part .swiper-button-wrap {margin: 20px 0 0;}

    .location_part .txt_box {min-width: 0;}

    .location_part .root_daum_roughmap .wrap_map {height: 300px;}

    .gall_list li {width: calc((100% - 10px) / 2); margin: 0 10px 20px 0;}
    .gall_list li:nth-of-type(4n) {margin: 0 10px 20px 0;}
    .gall_list li:nth-of-type(3n) {margin: 0 10px 20px 0;}
    .gall_list li:nth-of-type(2n) {margin: 0 0 10px;}

    .subpage .bo_sch_wrap .bo_sch form {width: 100%; max-width: none;}
    .subpage .bo_sch_wrap .bo_sch .sch_bar {width: calc(100% - 130px);}
    .subpage .bo_sch_wrap .bo_sch select {width: 120px;}
    .subpage .bo_sch .sch_input {width: calc(100% - 90px);}

    .online table th {width: 80px;}

    .board_list.ver2 .th_num {width: 70px;}

    article.conts.ver2 {padding: 0 0 60px;}
    article.conts {padding: 60px 0;}

    article.conts.arrow .right li {display: inline-block; width: calc((100% - 40px) / 2); margin: 0 40px 40px 0; padding: 10px; }
    article.conts.arrow .right li:nth-of-type(4n) {margin: 0 40px 40px 0;}
    article.conts.arrow .right li:nth-of-type(3n) {margin: 0 40px 40px 0;}
    article.conts.arrow .right li:nth-of-type(2n) {margin: 0 0 40px;}
    article.conts.arrow .right li:last-child {margin: 0 0 40px;}
    article.conts.arrow .right li::after {content: ""; position: absolute; width: 10px; height: 20px; left: calc(100% + 15px); top: 50%; transform: translate(0,-50%); background: url('/images/sub/arrow_right.png')no-repeat;}
    article.conts.arrow .right li:nth-of-type(4n)::after {display: block;}
    article.conts.arrow .right li:nth-of-type(3n)::after {display: block;}
    article.conts.arrow .right li:nth-of-type(2n)::after {display: none;}

    article.conts.number .right .clear > div span {width: 30px; height: 30px; top: -15px; line-height: 30px;}

    article.conts.dotted .right.three li,
    article.conts.dotted .right li {width: 100%;}
    .subpage .mid_photo p br {display: none;}

    article.conts.photo .right > div {width: 100%;}
    article.conts.photo .right > div:nth-of-type(2) {margin: 20px 0 0;}
    article.conts.photo .right > div p br {display: none;}
}
@media screen and (max-width: 480px) {
    .subpage {padding: 0 0 50px;}

    .sub_tit {padding: 40px 0 25px;}
    .sub_top {height: 300px;}
    .sub_nav {height: 44px;}

    .greeting_part .txt_wrap {width: calc(100% - 40px);}
    .history_part {padding: 0 0 50px;}
    .history_part .swiper-button {width:50px; height: 50px;}

    .location_part .root_daum_roughmap .wrap_map {height: 250px;}

    .subpage .bo_sch .sch_btn {width: 70px;}
    .subpage .bo_sch .sch_input {width: calc(100% - 70px);}
    .subpage .bo_sch_wrap .bo_sch .sch_bar {width: calc(100% - 110px);}
    .subpage .bo_sch_wrap .bo_sch select {width: 100px;}

    .online table .mail_line input {width: calc((100% - 21px)/ 2);}
    .online table .mail_line select {width: 100%; margin: 5px 0 0; max-width: none;}
    .online table input[type="file"] {width: 100%;}

    .board_list.ver2 .th_num {width: 50px;}

    article.conts.ver2 {padding: 0 0 30px;}
    article.conts {padding: 30px 0;}
    article.conts.arrow .right li {display: inline-block; width: calc((100% - 40px) / 2); margin: 0 40px 20px 0; padding: 10px; }
    article.conts.arrow .right li:nth-of-type(4n) {margin: 0 40px 20px 0;}
    article.conts.arrow .right li:nth-of-type(3n) {margin: 0 40px 20px 0;}
    article.conts.arrow .right li:nth-of-type(2n) {margin: 0 0 20px;}
    article.conts.arrow .right li:last-child {margin: 0 0 20px;}
    article.conts.arrow .right li .img_circle {display: block; float: none; margin: 0 auto;}
    article.conts.arrow .right li .txt_wrap {display: block; float: none; padding: 0; text-align: center; width: 100%; padding: 10px 0 0;}
    article.conts.arrow .right li .txt_wrap > div {display: block;}

    article.conts.number .right .clear > div {width: 100%; height: auto; margin: 0 0 20px; padding: 15px 10px;}
    article.conts.number .right .clear > div:nth-of-type(2n) {margin: 0 0 20px;}
    article.conts.number .right .clear > div:last-child {margin: 0;}

    .subpage .mid_photo {height: auto; padding: 30px 10px;}

    .write .btn_confirm > * {height: 36px; line-height: 36px;}
    section #bo_v .tit_wrap {padding: 25px 10px;}
    section #bo_v .contents_wrap {padding: 30px 10px 15px;}
}