@charset "utf-8";

.floating {position: fixed; right: 50px; bottom: 100px; z-index: 6; transform: scale(0.8);}
.right_icon {margin-top: 10px; text-align: center; display: flex; justify-content: end;}
.right_icon a {position: relative; color: #fff; width: 100px; height: 100px; display: flex; align-items: center; justify-content: center; border-radius: 40%;}
.right_icon a > i {font-size: 30px; color:#fff;}
.right_icon a > span {font-size: 24px; font-weight:400; line-height:26px; display: none;}
.right_icon a:hover i {display: none;}
.right_icon a:hover span {display: block;}
.pc-tel a:hover {width: 220px !important; border-radius: 100px !important;}

.red-point {color:#c83a2a;}
.header-wrap {display: flex; align-items: center; position: absolute; width: 85%; z-index: 3; transform: translateX(-50%); top: 6px; left: 50%;}
.logo-body {}
.header-wrap nav {width: 100%;}
.menu-body {/*position: absolute; transform: translate(-50%, -50%); left: 50%; top: 50%;*/width: 100%; text-align: center;}
.menu-body ul {/*display:flex;*/ margin-bottom:0;}
.menu-body ul li {margin-right: 5vw; display: inline-block;}
.menu-body a {font-size:22px; color:#fff;}
.reg-button {}
.reg-button a {display:flex; gap:8px; font-size:16px; color:#fff; align-items: center; background: #ff402e; padding: 10px 24px; border-radius: 50px;}
.heder-right {display:flex; align-items: center; position: absolute; top: 0; right: 0; gap:40px;  z-index: 3;}
.all-sitemap {width: 94px; height: 94px; background-color: #c53a28e3; display: flex; justify-content: center; align-items: center;}
.main-wrap {position: relative; width: 100%; height: 900px; border-bottom-right-radius: 250px; overflow: hidden;}
.visual-area {height: 900px; width: 100%; position: relative;}
.main-wrap ul li::before {content:''; position: absolute; width: 100%; height: 100%; background: #000; opacity: 0.4; z-index: 2;}
.main-visual p {position: absolute; transform: translate(-50%, -50%); top: 40%; left: 50%; color: #fff; font-size: 70px; z-index: 2; text-align: center; width:100%;}
.main-visual p span {color: #fff; font-weight:500;}
.main-visual.img-01 {background-image: url('../../images/main-visual01.png'); background-repeat: no-repeat; background-size: cover; background-position: 100% 50%;}
.main-visual.img-02 {background-image: url('../../images/main-visual02.png'); background-repeat: no-repeat; background-size: cover; background-position: 100% 80%;}
.main-visual.img-03 {background-image: url('../../images/main-visual03.png'); background-repeat: no-repeat; background-size: cover; background-position: 100% 80%;}
.swiper-pagination {bottom: 275px !important;}
.swiper-pagination-bullet {position: relative; width: 15px !important; height: 15px !important; border: 2px solid #fff !important; background: none !important; opacity:1 !important; margin:20px !important;}
.swiper-pagination-bullet.swiper-pagination-bullet-active {background: #c83a2a !important; border: 0 !important;}
.down-scroll {position: absolute; transform: translateX(-50%); bottom: 100px; left: 50%; z-index: 2; animation: balloon 2.5s ease-in-out infinite;}
@keyframes balloon {
  0%, 100% {
    transform: translate(-50%, 0);
  }
  50% {
    transform: translate(-50%, 20px);
  }
 }
 .tabs-head {display: flex; justify-content: space-between;}
.main-tit {line-height: 50px;}
.main-tit span {font-size: 50px; font-weight: 700;}
.main-tit p {font-size: 22px; font-weight: 500;}
.tabs {}
.tabs ul {display: flex; gap: 105px;}
.tablinks {display: grid; justify-items: center; gap: 10px; height: 115px; font-size: 22px; font-weight: 700; color: #000; border-bottom: 3px solid #fff;}
.tablinks:hover {color: #c83a2a;}
.tablinks.active {border-bottom: 3px solid #d16153;}
.tabcontent {display: none;}
.tabcontent-body {display: flex; gap: 85px; margin-top: 60px; align-items: center;}
.main-contents {width: 1400px; margin: 110px auto; position: relative; overflow: hidden; height: 100%;}
.welfare-info li:nth-child(1) {font-size:22px; font-weight:700; margin-bottom: 10px;}
.welfare-info li:nth-child(2) {font-size:40px; font-weight:700; margin-bottom: 20px;}
.welfare-info li:nth-child(3) {font-size:22px; line-height:38px; letter-spacing: -0.5px; text-align: justify; height: 200px;}
.welfare-info li:nth-child(4) a {font-size: 22px; display: flex; justify-content: space-between; align-items: center; border: 1px solid #000; width: 310px; padding: 15px 30px; border-radius: 100px; color:#000;}
.main-history {width:100%; height:512px; position:relative; background-image: url('../../images/main-history.png'); background-repeat: no-repeat; background-size: cover; background-position: top right;}
.main-history::before {content:''; background: #c53a28ed; height: 100%; width: 60%; display: block; position: absolute; top: 0; right: 0;}
.mh-body {width: 760px; position: absolute; transform: translateY(-50%); right: 0; top: 50%;}
.mh-body .tit {font-size:40px; font-weight:700; color:#fff; margin-bottom: 25px;}
.mh-body .sub-tit {font-size:22px; line-height:38px; color:#fff; margin-bottom: 35px;}
.count-wrap {display: flex; /*gap: 90px;*/ justify-content: space-between; margin-bottom: 45px;}
.count-wrap li {display: flex; align-items: flex-start; gap: 20px; position: relative;}
.count-wrap .bar {content:''; border-right: 1px solid #ffffff4f; display: block; height: 54px; /*position: absolute; top: 0; right: -44px;*/}
/*.count-wrap li:last-child::before {content: initial;}*/
.count-wrap .info {line-height: 45px;}
.count-wrap .info h2 {font-size:16px; color:#fff; font-weight:700;}
.count-wrap .info span {font-size:36px; color:#fff; font-weight:700;}
.count-wrap .info span > span {font-size:24px; color:#fff; font-weight:700;}
.mh-body .deatil-view a {font-size: 22px; display: flex; align-items: center; background-color: #ff9000; width: 310px; justify-content: space-between; padding: 15px 30px; border-radius: 100px; color:#fff;}
.mh-body .deatil-view a > i {color:#fff;}
.main-gallery {display: flex; padding-bottom: 140px;}
.main-gallery .head-body {width:380px;}
.main-gallery .head {position: sticky; top: 100px;}
.main-gallery .head h2, .main-gallery .head span {font-size:50px; font-weight:700;}
.main-gallery .head p {font-size:22px; line-height:38px; margin-top:50px;}
.main-gallery .head a {font-size: 22px; display: flex; justify-content: space-between; align-items: center; border: 1px solid #000; width: 180px; padding: 15px 30px; border-radius: 100px; color:#000;  margin-top:60px;}
.main-gallery .list {margin-left: auto;}
.main-gallery .list ul {display: grid; grid-template-columns: repeat(2, 1fr); gap: 100px 80px;}
.main-gallery .list li {position: relative;}
.main-gallery .list li:nth-child(2n) {top: 140px;}
.gallery-box a {display:block;}
.gallery-box .picture {width: 390px; height: 420px; border-radius: 10px; overflow: hidden; margin-bottom: 20px;}
.gallery-box .picture img {width:100%; object-fit: cover; height: 100%;}
.gallery-box .subject {font-size: 22px; margin-top:25px; width: 350px; display: block;}
.gallery-box .date {font-size: 18px; color:#626262; display: flex; gap: 7px; align-items: center; margin: 10px 0 0;}
.gallery-box .date i {color:#626262;}
.main-notice-wrap {width:100%; height:100%; position:relative; background-image: url('../../images/main-notice-bg.png'); background-repeat: no-repeat; background-position: bottom left;     background-color: #f1f1ec; padding:110px 0;}
.notice-head {display: flex; align-items: center; justify-content: space-between; margin-bottom: 50px;}
.notice-head .tit {}
.notice-head .tit h2, .notice-head .tit h2 > span {font-size: 50px; font-weight: 700;}
.notice-head .tit p {font-size: 22px; font-weight: 500;}
.more-view a {font-size: 22px; display: flex; justify-content: space-between; align-items: center; border: 1px solid #000; width: 180px; padding: 15px 30px; border-radius: 100px; color:#000;}
.notice-list {border-top: 1px solid #4b4b4b;}
.list-item {display: flex; align-items: center; border-bottom: 1px solid #9e9e9b; height: 90px;}
.list-item div {font-size:24px; font-weight:500; display: inline-flex;}
.list-item .no {width: 10%; justify-content: center;}
.list-item .subject {width: 70%;}
.list-item .subject a {color:#000; width: 50vw;}
.list-item .date {font-size: 18px; color: #626262; width: 10%; justify-content: center; align-items: center; gap: 7px;}
.list-item .date i {color: #626262;}
.list-item .more {width: 10%; justify-content: center;}
.list-item .more a {width:45px; height: 45px; width: 45px; height: 45px; border: 1px solid #626278; border-radius: 100%; display: flex; align-items: center; justify-content: center;}
.copy-wrap {width: 85%; margin: 0 auto;}
.copy-layout {display: flex; justify-content: space-between;}
.copy-layout .infomation {padding: 20px 0;}
.copy-layout .infomation .detail ul {}
.copy-layout .infomation .detail ul > li {display: inline-flex; margin-right: 25px; line-height: 30px; color:#ededed; gap: 16px;}
.copy-layout .infomation .detail ul > li > span {color:#ededed;}
.support-banner {background-image: url(../../images/support-bg.png); background-repeat: no-repeat; background-size: cover; background-position: top center; width: 655px; height: auto; display: flex; align-items: center; justify-content: center;}
.copy-layout .infomation .copyright {color:#ededed; font-size: 16px;}
.copy-layout .infomation .copyright a {color:#979797; font-size: 16px;}
.bar {border-right: 1px solid #595959; height: 12px;}
.support-lay {display: flex; align-items: center; gap: 20px; width: 90%;}
.support-info {}
.support-info p {color:#fff;}
.support-info p:nth-child(1) {font-size:18px; font-weight:700; margin-bottom: 10px;}
.support-info p:nth-child(2) {font-size:20px; font-weight:700; margin-bottom: 5px;}
.support-info p:nth-child(3) {font-size:16px; margin-bottom: 0;}

.bg-sub01 {background-image: url('../../images/bg_sub01.png'); width: 100%; height: 540px; background-repeat: no-repeat; background-size: cover; background-position: top center;}
.bg-sub02 {background-image: url('../../images/bg_sub02.png'); width: 100%; height: 540px; background-repeat: no-repeat; background-size: cover; background-position: top center;}
.bg-sub03 {background-image: url('../../images/bg_sub03.png'); width: 100%; height: 540px; background-repeat: no-repeat; background-size: cover; background-position: top center;}
.bg-sub04 {background-image: url('../../images/bg_sub04.png'); width: 100%; height: 540px; background-repeat: no-repeat; background-size: cover; background-position: top center;}

.subpage-head {color: #fff; position: absolute; transform: translate(-50%, -50%); top: 55%; left: 50%; position: relative;}
.sub-head-tit h2 {font-size:34px; color:#fff; font-weight:600; position:relative;}
.sub-head-tit h2::before {content: ''; width: 56px; height: 2px; display: block; background: #ffffff80; position: absolute;	bottom: -10px; transform: translateX(-50%); left: 50%;}
.sub-head-tit p {font-size:74px; color:#fff; font-weight:700;}

.location-nav select {width: 200px; padding: 0 30px; border: 0; background-image: url('../../images/select-arrow.png'); background-position: 160px center; background-repeat: no-repeat; background-color: #fff; appearance: none; cursor: pointer; outline: none; font-size: 20px;}
.location-nav select:hover, .location-nav select:focus {border-color: #007bff; height: 69px;}
.location-nav option {font-size: 18px; line-height:30px;}

.location-lay {border-bottom: 1px solid #dfdfdf; height: 70px; display: flex;}
.sub-nav-contents {width: 1400px; margin: 0 auto; position: relative;}
.location-nav {display: flex; align-items: center;}
.location-nav div {display: flex; align-items: center; border-right:1px solid #dfdfdf; height:100%;}
.nav-home {border-left:1px solid #dfdfdf; padding:20px;}

.sub01-bg::after {content:''; background-image: url('../../images/sub01-bg.png'); width: 944px; height: 783px; background-repeat: no-repeat; background-position: top center; position: absolute; top: 145px; left: -252px; z-index:0;}
.sub-bg-lay {width: 100%; position: relative; overflow: hidden;}

.sub-bg::before {content:''; background-image: url('../../images/sub-bg-left.png'); width: 484px; height: 483px; background-repeat: no-repeat; background-position: top center; position: absolute; top: 60px; left: -222px; z-index:-1;}
.sub-bg::after {content:''; background-image: url('../../images/sub-bg-right.png'); width: 731px; height: 657px; background-repeat: no-repeat; background-position: top center; position: absolute; bottom: -200px; right: -530px; z-index:-1;}

.sub-contents {width: 1400px; margin: 100px auto 160px; position: relative; z-index: 1;}
.subpage-tit {font-size:70px; font-weight:400;}
.subpage-tit span {font-weight:700;}
.subpage-hello {display: flex; justify-content: flex-end; margin-top: 100px;}
.subpage-hello .ment {font-size:28px; font-weight:300; width:780px; letter-spacing: -0.5px; line-height: 40px; text-align: justify; position: relative; z-index: 1;}

.subpage-layout {position: relative; margin-top: 100px;}

.sub-top-slide {position: relative;}
.sub-top-slide  .swiper-pagination {bottom: 15px !important;}
.sub-top-img {width:100%; height: 450px; border-radius: 10px; overflow: hidden; margin-bottom:80px; display: flex; justify-content: center;}
.map-box {height: 450px !important;}

.sub-top-img img {object-fit: cover;}
.common-tit {font-size:28px; font-weight:700; display:flex; gap:10px; align-items: center;}

.org-chart ul {display: flex; justify-content: space-between;}
.org-chart h2 {margin-bottom:80px;}

.subpage-contents {display:flex; justify-content: space-between; align-items: flex-start;}
.contents-lay {width:990px;}
.sub-history p, .sub-history span {font-size:26px; font-weight:500; line-height:60px;}
.sub-award table {width:100%; border-top:2px solid #c53a28;}
.sub-award table td {font-size:22px; font-weight:500; padding: 20px 0; border-bottom:1px solid #dfdfdf;}
.sub-award table td:nth-child(1) {text-align: center; border-right:1px solid #dfdfdf;}
.sub-award table td:nth-child(2) {padding-left:50px;}
.award-table {margin-top:100px;}

.adress-box {background: #fafafa; width: 100%; border: 1px solid #dfdfdf; border-radius: 10px; margin-top:30px;}
.adress-box ul {display: flex;}
.adress-box ul li:first-child {border-right: 1px solid #dfdfdf;}
.adress-box ul li {width:50%; padding: 30px 50px;}
.adress-box ul li > p {font-size: 22px; font-weight:500;}

.sub-support p {font-size: 22px; font-weight:500;}
.sub-head-lay {display: flex; justify-content: space-between; align-items: center;}
.sub-tabs-lay {display: flex; gap: 100px;}
.sub-support p {font-size:26px; font-weight:500;}
.sub-support p > span {font-size:26px; font-weight:500;}
.support-img {margin-top:100px;}
.support-img img {width: 100%; height: 100%; object-fit: cover;}
.support-img ul {display: flex; justify-content: space-between;}
.support-img ul li {border-radius: 10px; overflow: hidden; height: 520px;}

.down-btn {display: flex; justify-content: center; margin-top: 80px;}
.down-btn a {font-size: 22px; display: flex; align-items: center; background-color: #ff9000; width: 310px; justify-content: space-between; padding: 15px 30px; border-radius: 100px; color: #fff;}
.down-btn i {color: #fff;}

.sponsorship-txt {display: flex;}
.sponsorship-txt .etc-txt {font-size: 20px !important; line-height: 30px; display: block; margin-top: 10px;}

.sponsorship-txt .tit {text-wrap: nowrap;}
.sponsorship-txt .ment {margin-left: 6px;}

.sponsorship-box {background: #fafafa; width: 100%; border: 1px solid #dfdfdf; border-radius: 10px; margin-top: 100px; padding: 20px 50px;}
.sponsorship-box p {font-size: 24px; font-weight:500; margin: 15px 0;}

.tabel-custom {border-bottom: 1px solid #dee2e6;}
.tabel-custom thead {border-top: 2px solid #000;}
.tabel-custom thead th {border-bottom: 1px solid #dee2e6 !important;}
.page-item.active .page-link {background-color: #8e9fad !important; border-color: #8e9fad !important; color:#fff !important;}
.page-link {color:#000 !important;}

.board-layout {position: relative; margin-top: 60px;}

.menuwrap {position: fixed; top: 0; right: -550px; width: 500px; height: 100%; background-color: #fff; transition: right 0.3s ease; z-index: 100; padding: 30px 60px;}
.menuwrap {overflow-y: auto; max-height: 100vh;}
.menuwrap.on {right: 0;}
.overlay {position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 99; display: none;}
.overlay.on {display: block;}
.menu-style {margin: 60px 0; display: grid; gap: 40px;}
.menu-style li > a {font-size: 25px; color: #000; font-weight: 300; display: flex; align-items: center; justify-content: space-between; transition: color 0.6s ease;}
.menu-style li > a:hover {color:#fe5d5d;}
.menu-style li > a::after {content:'\f105'; transition: transform 0.3s ease; font-family: "Font Awesome 6 Free"; font-weight: 900;}
.menu-style li.rotate > a::after {transform: rotate(90deg);}
.closed {position: absolute; top: 25px; right: 20px; height: 90px; width: 90px; background: #fff; border-radius: 100%; display: flex; align-items: center; justify-content: center;}
.closed i {color: #000; font-size: 40px;}
.menu-style .sub-menu {display: none; z-index: 101; background: #f8f8f8; border-radius: 10px; padding: 15px 20px; margin-top: 15px; line-height: 40px;}
.menu-style .sub-menu li > a {font-size: 20px;}
.menu-style .sub-menu li > a::after {content:initial;}
.menu-style .sub-menu .active {display: block;}
.menu-style .sub-menu li {display: flex; align-items: center; gap: 8px;}
.menu-style .sub-menu li > i {font-size: 14px;}

.ellipsis {
  white-space: nowrap;      /* 줄바꿈 없이 한 줄로 표시 */
  overflow: hidden;         /* 초과 내용 숨기기 */
  text-overflow: ellipsis;  /* 오버플로우된 텍스트를 말줄임표로 표시 */
}