/* 공통 영역 */
.sec-title {
  font-size:4.8rem;
  font-weight:800;
  margin-bottom:40px;
}

.sec-text {
  font-size: 2rem;
  line-height:1.6;
}

.tab-con {
  position: relative;
}

.tab-con > li {
  display: none;
}

.tab-con > li.on {
  display: block;
}


@media screen and (max-width:1200px) {
  .sec-title {
    font-size:3.2rem;
  }

  .sec-text {
    font-size: 1.8rem;
  }
}
@media screen and (max-width:1024px) {
  .sec-title {
    margin-bottom:28px;
  }
}
@media screen and (max-width:768px) {
  .sec-title {
    font-size:2.6rem;
  }

  .sec-text {
    font-size: 1.6rem;
  }
}
@media screen and (max-width:576px) {
  .sec-title {
    font-size:2rem;
    margin-bottom:16px;
  }

  .sec-text {
    font-size: 1.4rem;
  }
}


/* 배너 영역 */
.main-sec--banner {
  position: relative;
  width: 100%;
  height: calc(var(--vh, 1vh)*100);
  height: 100svh;
  overflow: hidden;
}

.main-sec--banner .swiper {
  height: 100%;
}

.main-sec--banner .swiper-wrapper {
  height: 100%;
}

.main-sec--banner .swiper-slide {
  height: 100%;
  overflow: hidden;
}

.main-sec--banner .control {
  pointer-events: auto;
  font-size:0px;
  margin:0px -5px;
}

.main-sec--banner .swiper-pagination-bullet {
  position: relative;
  width:10px;
  height:10px;
  border-radius:30px;
  background-color: #fff;
  opacity: 1;
  margin:0px 5px;
  overflow: hidden;
}

.main-sec--banner .swiper-pagination-bullet::after {
  content: "";
  display: block;
  position: absolute;
  top:0;
  left:0;
  width:0;
  height:100%;
  border-radius:30px;
  background-color: #80c9b3;
}

.main-sec--banner .swiper-pagination-bullet-active {
  width: 120px;
}

.main-sec--banner .swiper-pagination-bullet-active::after {
  animation: bullet-ani 3.6s ease forwards;
}

.main-sec--banner .context {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  top:0;
  left:50%;
  transform: translateX(-50%);
  max-width: 1400px;
  width: 95%;
  height: 100%;
  margin:0 auto;
  padding-top:140px;
  z-index: 10;
  pointer-events: none;
}

.main-sec--banner .context .title {
  font-size:5.8rem;
  font-weight:700;
  color:#fff;
  opacity:0;
  transform: translateX(-100px);
  animation: fade-right 1.2s ease forwards;
}

.main-sec--banner .context .text {
  font-size: 2rem;
  font-weight:700;
  color:#fff;
  line-height:1.6;
  margin:40px 0px 60px;
  opacity:0;
  transform: translateX(-100px);
  animation: fade-right 1.2s ease .2s forwards
}

.main-sec--banner .background {
  position: relative;
  width: 100%;
  height:100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.main-sec--banner .wheel {
  position: absolute;
  left:50%;
  bottom:40px;
  transform: translateX(-50%);
  z-index:20;
}

.main-sec--banner .wheel .icon {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 60px;
  height:60px;
  margin-bottom:16px;
  background-color: #fff;
  border-radius:50%;
}

.main-sec--banner .wheel .icon span {
  display:block;
  width: 22px;
  height: 32px;
  background: url('/asset/img/main/banner_wheel.png') no-repeat center;
  transform: translateY(0px);
  animation: wheel-ani 1.5s linear infinite;
}

.main-sec--banner .wheel .arr span {
  display: block;
  position: relative;
}

.main-sec--banner .wheel .arr span::after {
  content: "";
  display: block;
  position: relative;
  top:50%;
  left:calc(50% - 8px);
  transform: translate(-50%,-50%);
  width:16px;
  height:16px;
  border-top:2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(135deg); 
}

@media screen and (max-width:1200px) {
  .main-sec--banner .context {
    padding-top: 118px;
  }

  .main-sec--banner .context .title  {
    font-size:3.8rem;
  }

  .main-sec--banner .context .text {
    font-size:1.8rem;
  }
}
@media screen and (max-width:1024px) {
  .main-sec--banner .context {
    padding-top: 114px;
  }

  .main-sec--banner .context .text {
    margin:28px 0px 40px;
  }

  .main-sec--banner .swiper-pagination-bullet {
    width: 6px;
    height:6px;
  }

  .main-sec--banner .swiper-pagination-bullet-active {
    width: 80px;
  }

  .main-sec--banner .wheel {
    bottom:30px;
  }

  .main-sec--banner .wheel .icon {
    width:48px;
    height:48px;
    margin-bottom:10px;
  }

  .main-sec--banner .wheel .icon span {
    height:26px;
    background-size: auto 26px;
  }

  .main-sec--banner .wheel .arr span::after {
    width: 12px;
    height:12px;
    left: calc(50% - 6px);
  }
}
@media screen and (max-width:768px) {
  .main-sec--banner .context {
    padding-top: 110px;
  } 

  .main-sec--banner .context .title  {
    font-size:2.8rem;
  }

  .main-sec--banner .context .text {
    font-size:1.6rem;
  }
}
@media screen and (max-width:576px) {
  .main-sec--banner .context {
    padding-top: 106px;
  }

  .main-sec--banner .context .title  {
    font-size:3.2rem;
  }

  .main-sec--banner .context .text {
    font-size:1.6rem;
    margin: 20px 0px 30px;
  }

  .main-sec--banner .control {
    margin:0px -2px;
  }

  .main-sec--banner .swiper-pagination-bullet {
    margin:0px 2px;
  }

  .main-sec--banner .swiper-pagination-bullet-active {
    width:60px;
  }

  .main-sec--banner .wheel .icon {
    width: 40px;
    height:40px;
    margin-bottom:6px;
  }

  .main-sec--banner .wheel .icon span {
    height:20px;
    background-size: auto 20px;
  }

  .main-sec--banner .wheel .arr span::after {
    width: 8px;
    height:8px;
    left: calc(50% - 4px);
  }
}


/* 사업 영역 */
.main-sec--business {
  padding: 120px 0px;
  background-color: #e5f5f5;
}

.main-sec--business .hd {
  position: relative;
  padding-left:80px;
  margin-bottom:60px;
}

.main-sec--business .icon {
  display: block;
  position: absolute;
  top:50%;
  left:0;
  transform: translateY(-50%);
  width: 64px;
  height:61px;
  background: url('/asset/img/main/business_ico.png') no-repeat center;
}

.main-sec--business .tab-menu {
  display: flex;
  align-items: center;
}

.main-sec--business .tab-menu li:first-child {
  position: relative;
  padding-right:24px;
  margin-right:24px;
}

.main-sec--business .tab-menu li:first-child::after {
  content: "";
  display: block;
  position: absolute;
  top:50%;
  right:0;
  transform:translateY(-50%);
  width: 2px;
  height:28px;
  background-color: #959595;
}

.main-sec--business .tab-menu button {
  font-size:3.8rem;
  color:#959595;
}

.main-sec--business .tab-menu li.on button {
  font-weight:800;
  color:#002f87;
}

.main-sec--business .btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  top:50%;
  right:0;
  transform: translateY(-50%);
  width: 200px;
  height:60px;
  border-radius:50px;
  background-color: #fff;
  padding: 0px 15px 0px 30px;
  font-size:2rem;
  font-weight:700;
  color:#00a19a;
  transition: all .5s ease;
  overflow: hidden;
}

.main-sec--business .btn i {
  display: block;
  position: relative;
  width:30px;
  height:30px;
}

.main-sec--business .btn i::before {
  content: "";
  display: inline-block;
  position: relative;
  width: 100%;
  height:100%;
  background: url('/asset/img/main/link_arr.png') no-repeat center;
  transition: all .5s ease;
  z-index: 1;
}

.main-sec--business .btn i::after {
  content: "";
  display: block;
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height:100%;
  background-color: #00a19a;
  border-radius: 50%;
  transition: all .5s ease;
  z-index:-1;
}

.main-sec--business .swiper {
  overflow: visible;
}

.main-sec--business .category {
  font-size: 2rem;
  font-weight:700;
  color:#00a19a;
  text-decoration: underline;
  text-underline-offset:8px;
  margin-bottom:30px;
}

.main-sec--business .subject {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  font-size:2.4rem;
  font-weight:700;
  line-height:34px;
}

.main-sec--business .widget-business .info {
  font-size: 0px;
}

.main-sec--business .widget-business .info dd {
  display: flex;
  gap:20px;
}

.main-sec--business .widget-business .info dd:not(:last-child) {
  margin-bottom:10px;
}

.main-sec--business .widget-business .info .dot {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width:90px;
  height:30px;
  background: linear-gradient(90deg,rgba(0, 47, 135, 1) 0%, rgba(0, 161, 154, 1) 100%);
  border-radius:50px;
  font-size:1.6rem;
  font-weight:700;
  color:#fff;
}

.main-sec--business .widget-business .info .txt {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  width: calc(100% - 110px);
  font-size:1.8rem;
  line-height:30px;
}

.main-sec--business .widget-business .info .txt01 {
  -webkit-line-clamp:1;
}

.main-sec--business .widget-business .info .txt02 {
  -webkit-line-clamp:2;
}

.main-sec--business .widget-business .card {
  position: relative;
}

.main-sec--business .widget-business .area {
  padding:50px 11.1607%;
  border-radius:10px;
  background-color: #fff;
}

.main-sec--business .widget-business  .subject {
  -webkit-line-clamp:2;
  height:70px;
  margin-bottom:95px;
}

.main-sec--business .widget-case .card {
  position: relative;
  padding-left: 356px;
  border-radius: 30px;
  background-color: #fff;
  overflow: hidden;
}

.main-sec--business .widget-case .thumb {
  position: absolute;
  top:0;
  left:0;
  width: 356px;
  height: 100%;
}

.main-sec--business .widget-case .thumb img {
  position: absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  width: 100%;
  height: 100%;
}

.main-sec--business .widget-case .area {
  width: 100%;
  padding:60px 13.2743%;
}

.main-sec--business .widget-case .subject {
  -webkit-line-clamp:3;
  height:100px;
  margin-bottom:115px;
}

.main-sec--business .widget-case .more {
  display: flex;
  align-items: center;
  gap:28px;
  font-size: 2rem;
  color:#00a19a;
}

.main-sec--business .widget-case .more i {
  display: block;
  position: relative;
  width:30px;
  height:30px;
  border-radius:50%;
  background-color: #00a19a;
}

.main-sec--business .widget-case .more i::before {
  content: "";
  display: inline-block;
  width: 100%;
  height:100%;
  background: url('/asset/img/main/link_arr.png') no-repeat center;
}

@media screen and (min-width:1201px){
  .main-sec--business .btn:hover {
    color:#fff;
  }

  .main-sec--business .btn:hover i::before {
    transform: translateX(6px);
  }

  .main-sec--business .btn:hover i::after {
    transform: scale(12);
  }
}
@media screen and (max-width:1200px){
  .main-sec--business .hd {
    padding-left:60px;
  }

  .main-sec--business .icon {
    width: 48px;
    height:44px;
    background-size:auto 44px;
  }

  .main-sec--business .tab-menu button {
    font-size: 2.8rem;
  }

  .main-sec--business .btn {
    font-size: 1.8rem;
  }

  .main-sec--business .category {
    font-size:1.8rem;
  }
  
  .main-sec--business .subject  {
    font-size:2rem;
  }

  .main-sec--business .widget-business .info .dot {
    font-size:1.4rem;
  }

  .main-sec--business .widget-business .info .txt {
    font-size: 1.4rem;
    line-height:24px;
  }

  .main-sec--business .widget-case .subject {
    margin-bottom:103px;
  }

  .main-sec--business .widget-case .more {
    font-size:1.8rem;
  }
}
@media screen and (max-width:1024px) {
  .main-sec--business {
    padding:100px 0px;
  }

  .main-sec--business .hd {
    margin-bottom: 40px;
  }

  .main-sec--business .tab-menu li:first-child {
    padding-right:16px;
    margin-right:16px;
  }

  .main-sec--business .tab-menu li:first-child::after {
    height: 24px;
  }

  .main-sec--business .btn {
    width: 180px;
    height:48px;
    padding: 0px 12px 0px 20px;
  }

  .main-sec--business .btn i {
    width: 24px;
    height:24px;
  }

  .main-sec--business .btn i::before {
    background-size: auto 10px;
  }

  .main-sec--business .category {
    margin-bottom:20px;
  }

  .main-sec--business .widget-business .area {
    padding:36px 24px;
  }

  .main-sec--business .widget-business .subject {
    height:66px;
    margin-bottom: 60px;
  }

  .main-sec--business .widget-business .info dd {
    align-items: center;
    gap:12px;
  }

  .main-sec--business .widget-business .info dd:not(:last-child) {
    margin: 0px;
  }

  /* .main-sec--business .widget-business .info dd:last-child {
    display: none;
  } */

  .main-sec--business .widget-case .area {
    padding:36px 24px;
  }

  .main-sec--business .widget-case .card {
    padding-left:276px;
  }

  .main-sec--business .widget-case .thumb {
    width: 276px;
  }

  .main-sec--business .widget-case .subject {
    height:68px;
    margin-bottom:64px;
  }

  .main-sec--business .widget-case .more {
    gap:16px;
  }

  .main-sec--business .widget-case .more i {
    width: 24px;
    height: 24px;
  }

  .main-sec--business .widget-case .more i::before { 
    background-size: auto 10px;
  }
}
@media screen and (max-width:768px) {
  .main-sec--business {
    padding:80px 0px;
  }

  .main-sec--business .hd {
    padding-left: 50px;
  }

  .main-sec--business .icon {
    width: 44px;
    height:38px;
    background-size:auto 38px;
  }

  .main-sec--business .tab-menu button {
    font-size:2rem;
  }

  .main-sec--business .tab-menu li:first-child::after {
    height:20px;
  }

  .main-sec--business .btn {
    width:140px;
    height: 42px;
    font-size:1.6rem;
  }

  .main-sec--business .category {
    font-size:1.6rem;
  }

  .main-sec--business .subject {
    font-size: 1.8rem;
    line-height:1.5;
  }

  .main-sec--business .widget-business .subject {
    height:56px;
  }

  .main-sec--business .widget-business .info .dot {
    width: 70px;
    height:24px;
    font-size:1.3rem;
    line-height:12px;
  }

  .main-sec--business .widget-business .info .txt {
    font-size:1.3rem;
  }

  .main-sec--business .widget-case .card {
    padding-left:246px;
  }

  .main-sec--business .widget-case .thumb {
    width: 246px;
  }

  .main-sec--business .widget-case .subject {
    height:56px;
    margin-bottom: 60px;
  }

  .main-sec--business .widget-case .more {
    font-size: 1.6rem;
  }
}
@media screen and (max-width:576px) {
  .main-sec--business .hd {
    padding-left:40px;
    margin-bottom:28px;
  }

  .main-sec--business .icon {
    width: 36px;
    height:28px;
    background-size:auto 28px;
  }

  .main-sec--business .tab-menu li:first-child {
    padding-right:8px;
    margin-right:8px;
  }

  .main-sec--business .tab-menu li:first-child::after {
    width:1px;
    height:14px;
  }
  
  .main-sec--business .tab-menu button {
    font-size:1.8rem;
  }

  .main-sec--business .btn {
    width: 100px;
    height:30px;
    padding: 0px 8px 0px 14px;
    font-size:1.2rem;
  }

  .main-sec--business .btn i {
    width: 18px;
    height:18px;
  }

  .main-sec--business .btn i::before {
    background-size: auto 8px;
  }

  .main-sec--business .category {
    font-size: 1.4rem;
    margin-bottom: 16px;
  }

  .main-sec--business .subject {
    font-size: 1.6rem;
  }

  .main-sec--business .widget-business .area {
    padding:28px 20px;
  }

  .main-sec--business .widget-business .subject {
    height: 44px;
    margin-bottom:40px;
  }

  .main-sec--business .widget-business .info dd {
    gap:8px;
  }

  .main-sec--business .widget-business .info .dot {
    width: 54px;
    height:18px;
    font-size: 1.2rem;
    line-height: 10px;
  }

  .main-sec--business .widget-business .info .txt {
    font-size:1.2rem;
    line-height:18px;
  }

  .main-sec--business .widget-case .area {
    padding:28px 20px;
  }

  .main-sec--business .widget-case .card {
    /* padding-left:186px; */
    padding-left:0px;
    border-radius:10px;
  }

  .main-sec--business .widget-case .thumb {
    /* width: 186px; */
    display: none;
  }

  .main-sec--business .widget-case .subject {
    -webkit-line-clamp: 2;
    height: 44px;
    margin-bottom:40px;
  }

  .main-sec--business .widget-case .more {
    gap:10px;
    font-size:1.2rem;
  }

  .main-sec--business .widget-case .more i {
    width: 18px;
    height:18px;
  }

  .main-sec--business .widget-case .more i::before {
    background-size: auto 8px;
  }
}


/* 현황 영역 */
.main-sec--status {
  padding: 120px 0px;
  background: url('/asset/img/main/status_bak.jpg') no-repeat center / cover;
}

.main-sec--status .hd {
  position: relative;
  margin-bottom:190px;
}

.main-sec--status .hd .img {
  position: absolute;
  top:0;
  right: 0;
  font-size:0px;
}

.main-sec--status .list {
  display: flex;
  gap:28px;
}

.main-sec--status .list li {
  flex:1 1;
}

.main-sec--status .list li:nth-child(odd) {
  transform: translateY(-60px);
}

.main-sec--status .list .card {
  position: relative;
  height:330px;
  padding-top: 116px;
  border-radius:30px;
  background-color: #f5f5f5;
  text-align: center;
}

.main-sec--status .list .icon {
  position: absolute;
  width: 100px;
  height:100px;
  top:-50px;
  left:50%;
  transform: translateX(-50%);
  border-radius:50%;
  background-color: #fff;
  box-shadow: 0px 5px 10px 0px rgba(128, 125, 125, 0.2);
  background-repeat: no-repeat;
  background-position: center;
}

.main-sec--status .list .icon01 {
  background-image: url('/asset/img/main/status_ico01.png');
}

.main-sec--status .list .icon02 {
  background-image: url('/asset/img/main/status_ico02.png');
}

.main-sec--status .list .icon03 {
  background-image: url('/asset/img/main/status_ico03.png');
}

.main-sec--status .list .icon04 {
  background-image: url('/asset/img/main/status_ico04.png');
}

.main-sec--status .list .t01 {
  margin-bottom:38px;
}

.main-sec--status .list .t02 {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap:10px;
}

.main-sec--status .list .t02 span {
  line-height:.8;
}

@media screen and (max-width:1200px) {
  .main-sec--status .hd .img img {
    height: 217px;
  }
}
@media screen and (max-width:1024px) {
  .main-sec--status {
    padding: 100px 0px;
  }

  .main-sec--status .hd {
    margin-bottom:140px;
  }

  .main-sec--status .hd .img img {
    height:157px;
  }

  .main-sec--status .list {
    gap:16px;
  }

  .main-sec--status .list .card {
    height:280px;
    padding-top: 96px;
  }

  .main-sec--status .list .icon {
    top:-40px;
    width: 80px;
    height:80px;
  }

  .main-sec--status .list .icon01 {
    background-size: auto 30px;
  }

  .main-sec--status .list .icon02 {
    background-size: auto 46px;
  }

  .main-sec--status .list .icon03 {
    background-size: auto 49px;
  }
  
  .main-sec--status .list .icon04 {
    background-size: auto 49px;
  }

  .main-sec--status .list .t01 {
    margin-bottom:28px;
  }

  .main-sec--status .list .t02 {
    gap:6px;
  }
}
@media screen and (max-width:768px) {
  .main-sec--status {
    padding:80px 0px;
  }

  .main-sec--status .hd .img {
    display: none;
  }

  .main-sec--status .list {
    flex-wrap: wrap;
    gap:8px;
  }

  .main-sec--status .list li {
    flex:1 1 calc(50% - 8px);
    max-width:50%;
  }

  .main-sec--status .list .card {
    height:220px;
    padding-top: 76px;
    border-radius:10px;
  }
}
@media screen and (max-width:576px) {
  .main-sec--status .hd {
    margin-bottom:60px;
  }

  .main-sec--status .list li:nth-child(odd) {
    transform: none;
  }

  .main-sec--status .list .card {
    height: 160px;
    padding-top: 56px;
  }

  .main-sec--status .list .icon {
    top:-30px;
    width: 60px;
    height:60px;
  }

  .main-sec--status .list .icon01 {
    background-size: auto 20px;
  }

  .main-sec--status .list .icon02 {
    background-size: auto 36px;
  }

  .main-sec--status .list .icon03 {
    background-size: auto 39px;
  }
  
  .main-sec--status .list .icon04 {
    background-size: auto 39px;
  }

  .main-sec--status .list .t01 {
    margin-bottom:16px;
  }

  .main-sec--status .list .t02 {
    gap:4px;
  }
}


/* 공지사항 영역 */
.main-sec--notice {
  padding:120px 0px;
}

.main-sec--notice .din {
  display: flex;
  gap:28px;
}

.main-sec--notice .hd {
  width: calc(32% - 14px);
}

.main-sec--notice .bd {
  width: calc(68% - 14px);
}

.main-sec--notice .hd-top {
  position: relative;
  padding:60px 11.5207% 273px;
  margin-bottom: 28px;
  border-radius:30px;
  background-color: #00a19a;
}

.main-sec--notice .hd-top .img {
  position: absolute;
  left:11.5207%;
  bottom:50px;
  font-size:0px;
}

.main-sec--notice .hd-btm .btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  width: 100%;
  height:90px;
  padding: 0px 11.5207%;
  background-color: #d9f1f0;
  border-radius:30px;
  font-size:2rem;
  font-weight:700;
  color:#00a19a;
  overflow: hidden;
  transition: all .5s ease;
  z-index:2;
}

.main-sec--notice .hd-btm .btn i {
  display: block;
  position: relative;
  width:30px;
  height:30px;
}

.main-sec--notice .hd-btm .btn i::before {
  content: "";
  display: block;
  position: relative;
  width: 100%;
  height:100%;
  background: url('/asset/img/main/link_arr.png') no-repeat center;
  transition: all .5s ease;
  z-index: 1;
}

.main-sec--notice .hd-btm .btn i::after {
  content: "";
  display: block;
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
  border-radius:50%;
  background-color: #00a19a;
  transition: all .5s ease;
  z-index:-1;
}

.main-sec--notice .widget {
  padding:60px 5.3304%;
  border-radius:30px;
  background-color: #f5f5f5;
}

.main-sec--notice .widget .list {
  margin: -38px 0px;
}

.main-sec--notice .widget .list li:not(:last-child) {
  border-bottom: 1px solid #bfbfbf;
}

.main-sec--notice .widget .list a {
  display: block;
  padding:38px 0px;
}

.main-sec--notice .widget .list .area {
  position: relative;
  display: flex;
  align-items: center;
  gap:20px;
  padding-right:40px;
}

.main-sec--notice .widget .list .area::after {
  content: "";
  display: block;
  position: absolute;
  top:50%;
  right:0;
  transform: translate(-6px, -50%);
  width: 9px;
  height:16px;
  background: url('/asset/img/main/notice_arr.png') no-repeat center;
  transition: all .5s ease;
}

.main-sec--notice .widget .list .category {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width:110px;
  height:35px;
  background: linear-gradient(90deg,rgba(0, 47, 135, 1) 0%, rgba(0, 161, 154, 1) 100%);
  border-radius:50px;
  font-size:2rem;
  font-weight:700;
  color:#fff;
}

.main-sec--notice .widget .list .subject {
  width: calc(100% - 130px);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient: vertical;
  font-size: 2rem;
}

@media screen and (min-width:1201px){
  .main-sec--notice .hd-btm .btn:hover {
    color:#fff;
  }

  .main-sec--notice .hd-btm .btn:hover i::before {
    transform: translateX(6px);
  }

  .main-sec--notice .hd-btm .btn:hover i::after {
    transform: scale(25);
  }

  .main-sec--notice .widget .list a:hover .area::after {
    transform: translate(0px, -50%);
  }
}
@media screen and (max-width:1200px) {
  .main-sec--notice .hd-top .img img {
    height:107px;
  }

  .main-sec--notice .hd-btm .btn {
    font-size: 1.8rem;
  }

  .main-sec--notice .widget .list {
    margin: -35px 0px;
  }

  .main-sec--notice .widget .list a {
    padding: 35px 0px;
  }

  .main-sec--notice .widget .list .category {
    font-size: 1.8rem;
  }

  .main-sec--notice .widget .list .subject {
    font-size: 1.8rem;
  }
}
@media screen and (max-width:1024px) {
  .main-sec--notice {
    padding:100px 0px;
  }

  .main-sec--notice .din {
    gap:16px;
  }

  .main-sec--notice .hd {
    width: calc(32% - 8px);
  }

  .main-sec--notice .bd {
    width: calc(68% - 8px);
  }

  .main-sec--notice .hd-top {
    padding: 40px 24px 233px;
    margin-bottom: 16px;
  }

  .main-sec--notice .hd-top .img img {
    height:87px;
  }

  .main-sec--notice .hd-btm .btn {
    height:68px;
    padding: 0px 24px;
  }

  .main-sec--notice .hd-btm .btn i {
    width: 24px;
    height:24px;
  }

  .main-sec--notice .hd-btm .btn i::before {
    background-size: auto 10px;
  }

  .main-sec--notice .widget {
    padding:40px 24px;
  }

  .main-sec--notice .widget .list {
    margin: -30px 0px;
  }

  .main-sec--notice .widget .list a {
    padding: 30px 0px;
  }

  .main-sec--notice .widget .list .area {
    gap:12px;
    padding-right: 28px;
  }

  .main-sec--notice .widget .list .category {
    width:90px;
    height: 30px;
  }

  .main-sec--notice .widget .list .subject {
    width: calc(100% - 102px);
  }
}
@media screen and (max-width:768px) {
  .main-sec--notice {
    padding: 80px 0px;
  }

  .main-sec--notice .din {
    flex-wrap: wrap;
  }

  .main-sec--notice .hd {
    width: 100%;
  }

  .main-sec--notice .bd {
    width: 100%;
  }

  .main-sec--notice .hd-top {
    padding: 40px 24px;
    border-radius:10px;
  }

  .main-sec--notice .hd-top .img {
    top: 50%;
    right: 24px;
    left: unset;
    bottom: unset;
    transform: translateY(-50%);
  }

  .main-sec--notice .hd-btm .btn {
    height: 54px;
    border-radius:10px;
    font-size: 1.6rem;
  }

  .main-sec--notice .widget {
    border-radius:10px;
  }

  .main-sec--notice .widget .list {
    margin: -24px 0px;
  }

  .main-sec--notice .widget .list a {
    padding: 24px 0px;
  }

  .main-sec--notice .widget .list .area::after {
    height:10px;
    background-size: auto 10px;
  }
  
  .main-sec--notice .widget .list .category {
    width: 80px;
    height:26px;
    font-size: 1.6rem;
  }
}
@media screen and (max-width:576px) {
  .main-sec--notice .din {
    gap:10px;
  }
  
  .main-sec--notice .hd-top {
    padding: 28px 20px;
    margin-bottom:10px;
  }

  .main-sec--notice .hd-top .img img {
    height: 57px;
  }

  .main-sec--notice .hd-btm .btn {
    height: 40px;
    padding:0px 20px;
    font-size: 1.2rem;
  }

  .main-sec--notice .hd-btm .btn i {
    width: 18px;
    height:18px;
  }

  .main-sec--notice .hd-btm .btn i::before{
    background-size: auto 8px;
  }

  .main-sec--notice .widget {
    padding: 28px 20px;
  }

  .main-sec--notice .widget .list {
    margin: -16px 0px;
  }

  .main-sec--notice .widget .list a {
    padding: 16px 0px;
  }

  .main-sec--notice .widget .list .area {
    gap:8px;
    padding-right: 20px;
  }

  .main-sec--notice .widget .list .category {
    width:60px;
    height: 20px;
    font-size: 1.2rem;
    line-height: 10px;
  }

  .main-sec--notice .widget .list .subject {
    width: calc(100% - 68px);
    font-size: 1.4rem;
  }
}


/* 표준안내 영역 */
.main-sec--guide {
  padding:170px 0px;
  background: url('/asset/img/main/guide_bak.jpg') no-repeat center / cover;
}

.main-sec--guide .hd {
  margin-bottom:120px;
}

.main-sec--guide .hd .img {
  font-size:0px;
  margin-bottom:30px;
}

.main-sec--guide .list {
  display: flex;
}

.main-sec--guide .list li {
  position: relative;
  width: calc(16.66667% + (20px * 5 / 6));
  padding-top: calc(16.66667% + (20px * 5 / 6));
  border-radius:50%;
  border:2px solid #ffffff;
  overflow: hidden;
}

.main-sec--guide .list li:not(:first-child) {
  margin-left: -20px;
}

.main-sec--guide .list li:nth-child(1) {
  z-index: 5;
}

.main-sec--guide .list li:nth-child(2) {
  z-index: 5;
}

.main-sec--guide .list li:nth-child(3) {
  z-index: 6;
}

.main-sec--guide .list li:nth-child(4) {
  z-index: 7;
}

.main-sec--guide .list li:nth-child(5) {
  z-index: 9;
}

.main-sec--guide .list li:nth-child(6) {
  z-index: 9;
}

.main-sec--guide .list a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
  transition:all .5s ease;
}

.main-sec--guide .list p {
  font-size:2.4rem;
  transition:all .5s ease;
}

@media screen and (min-width:1201px){
  .main-sec--guide .list li:hover a {
    background-color: #00a19a;
  }
}
@media screen and (max-width:1200px) {
  .main-sec--guide .hd .img img {
    height: 70px;
  }

  .main-sec--guide .list p {
    font-size:2rem;
  }
}
@media screen and (max-width:1024px) {
  .main-sec--guide {
    padding: 120px 0px;
  }

  .main-sec--guide .hd {
    margin-bottom: 100px;
  }

  .main-sec--guide .hd .img {
    margin-bottom: 20px;
  }

  .main-sec--guide .hd .img img {
    height: 60px;
  }
}
@media screen and (max-width:768px) {
  .main-sec--guide {
    padding:100px 0px;
  }

  .main-sec--guide .hd {
    margin-bottom:80px;
  }

  .main-sec--guide .hd .img {
    display: none;
  }

  .main-sec--guide .list {
    flex-wrap: wrap;
    transform: translateX(20px);
  }
  
  .main-sec--guide .list li {
    width: calc(33.33% + (20px * 2 / 3));
    padding-top: calc(33.33% + (20px * 2 / 3));
  }

  .main-sec--guide .list li:not(:nth-child(4)) {
    margin-left:-20px;
  }

  .main-sec--guide .list p {
    font-size:1.8rem;
  }
}
@media screen and (max-width:576px) {
  .main-sec--guide .hd {
    margin-bottom:60px;
  }

  .main-sec--guide .list p {
    font-size:3.25vw;
  }
}




/* 최근소식 */
.main-sec--media {
  position: relative;
  padding:190px 0px;
  z-index:5;
}

.main-sec--media::after {
  content: "";
  display: block;
  position: absolute;
  top:0;
  left:0;
  width: 49.27%;
  height:100%;
  background: url('/asset/img/main/media_bak.png') no-repeat center / cover;
  z-index:-2;
  pointer-events: none;
}

.main-sec--media .din {
  display: flex;
  align-items: center;
}

.main-sec--media .hd {
  flex:1 0 40%;
}

.main-sec--media .bd {
  flex:1 0 78.2%;
  max-width: 78.2%;
}

.main-sec--media .tab-menu {
  display: flex;
  gap:10px;
  margin-bottom:50px;
}

.main-sec--media .tab-menu button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap:10px;
  width: 142px;
  height:50px;
  border:1px solid #00a19a;
  border-radius: 50px;
  background-color:transparent;
  font-size: 2rem;
  font-weight:700;
  color:#00a19a;  
}

.main-sec--media .tab-menu .icon {
  display: block;
  width: 19px;
  height:17px;
  background-repeat: no-repeat;
  background-position: center;
}

.main-sec--media .tab-menu .icon01 {
  background-image: url('/asset/img/main/media_ico01_off.png');
}

.main-sec--media .tab-menu .icon02 {
  background-image: url('/asset/img/main/media_ico02_off.png');
}

.main-sec--media .tab-menu li.on button {
  color:#fff;
  background: linear-gradient(90deg,rgba(0, 47, 135, 1) 0%, rgba(0, 161, 154, 1) 100%);
}

.main-sec--media .tab-menu li.on .icon01 {
  background-image: url('/asset/img/main/media_ico01_on.png');
}

.main-sec--media .tab-menu li.on .icon02 {
  background-image: url('/asset/img/main/media_ico02_on.png');
}

.main-sec--media .control {
  position: relative;
  font-size: 0px;
  margin-top:60px;
}

.main-sec--media .control li {
  display: none;
}

.main-sec--media .control li.on {
  display: block;
}

.main-sec--media .control-nav {
  display: flex;
  align-items: center;
  gap:20px;
}

.main-sec--media .prev,
.main-sec--media .next {
  display: block;
  position: relative;
  width:46px;
  height:46px;
  background-color: #00a19a;
  border-radius:50%;
  cursor: pointer;
}

.main-sec--media .prev::after,
.main-sec--media .next::after {
  content: "";
  display: block;
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height:100%;
  background-repeat: no-repeat;
  background-position: center;
}

.main-sec--media .prev::after {
  background-image: url('/asset/img/main/media_btn_prev.png');
}

.main-sec--media .next::after {
  background-image: url('/asset/img/main/media_btn_next.png');
}

.main-sec--media .widget .card {
  border-radius: 30px;
  background-color:#fff;
  border:1px solid #f5f5f5;
  overflow: hidden;
}

.main-sec--media .widget .thumb {
  /* font-size:0px; */
  position: relative;
  width: 100%;
  height: 0;
  overflow: hidden;
}

.main-sec--media .widget .thumb img {
  display: block;
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
}

.main-sec--media .widget-media .thumb {
  padding-top: 100%;
}

.main-sec--media .widget-youtube .thumb {
  padding-top: calc(330/532*100%);
}

.main-sec--media .widget .area {
  padding: 36px 7.5%;
}

.main-sec--media .widget .subject {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient: vertical;
  height:64px;
  font-size: 2rem;
  font-weight:700;
  line-height: 1.6;
}


@media screen and (max-width:1200px) {
  .main-sec--media .tab-menu button  {
    font-size:1.8rem;
  }

  .main-sec--media .widget .subject {
    height: 58px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width:1024px) {
  .main-sec--media {
    padding: 150px 0px;
  }
  
  .main-sec--media .tab-menu {
    gap:6px;
    margin-bottom:36px;
  }

  .main-sec--media .tab-menu button {
    width: 122px;
    height: 40px;
    gap:6px;
  }

  .main-sec--media .tab-menu .icon {
    width: 17px;
    height:15px;
    background-size: 17px auto;
  }

  .main-sec--media .control {
    margin-top:40px;
  }

  .main-sec--media .control-nav {
    gap:12px;
  }

  .main-sec--media .prev, .main-sec--media .next {
    width: 38px;
    height:38px;
  }


  .main-sec--media .prev::after, .main-sec--media .next::after {
    background-size: auto 16px;
  }

  .main-sec--media .widget .area {
    padding: 24px;
  }
}
@media screen and (max-width:768px) {
  .main-sec--media {
    padding: 120px 0px;
  }

  .main-sec--media::after {
    width: 100%;
    height:580px;
  }

  .main-sec--media .din {
    flex-wrap: wrap;
    gap:40px;
  }

  .main-sec--media .hd {
    flex:1 1 100%;
    max-width: 100%;
  }

  .main-sec--media .bd {
    flex:1 1 100%;
    max-width: 100%;
  }

  .main-sec--media .tab-menu button {
    width: 110px;
    height: 38px;
    font-size: 1.6rem;
  }

  .main-sec--media .widget .thumb {
    position: relative;
    width: 100%;
    height: 0;
    overflow: hidden;
  }

  .main-sec--media .widget .thumb img {
    display: block;
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    height:100%;
  }

  .main-sec--media .widget .subject {
    height:52px;
    font-size: 1.6rem;
    line-height:1.5;
  }

  .main-sec--media .widget-media .thumb {
    padding-top: calc(455/448*100%);
  }

  .main-sec--media .widget-youtube .thumb {
    padding-top: calc(335/595*100%);
  }
}
@media screen and (max-width:576px) {
  .main-sec--media {
    padding:100px 0px;
  }

  .main-sec--media::after {
    height: 440px;
  }

  .main-sec--media .din {
    gap:28px;
  }

  .main-sec--media .tab-menu {
    margin-bottom: 24px;
  }

  .main-sec--media .tab-menu button {
    width:90px;
    height:30px;
    gap:4px;
    font-size: 1.2rem;
  }

  .main-sec--media .tab-menu .icon {
    width:13px;
    height:11px;
    background-size: 13px auto;
  }

  .main-sec--media .control {
    margin-top: 28px;
  }

  .main-sec--media .control-nav {
    gap:8px;
  }

  .main-sec--media .prev, .main-sec--media .next {
    width: 30px;
    height:30px;
  }

  .main-sec--media .prev::after, .main-sec--media .next::after {
    background-size: auto 12px;
  }

  .main-sec--media .swiper {
    overflow: visible;
  }
  
  .main-sec--media .widget .area {
    padding: 20px;
  }

  .main-sec--media .widget .subject {
    height:42px;
    font-size: 1.4rem;
  }
}


/* 기관 및 부서 영역 */
.main-sec--client {
  padding:60px 0px;
  border-top: 1px solid #d1e7e0;
}

.main-sec--client .din {
  display: flex;
  align-items: center;
}

.main-sec--client .hd {
  flex:1 0 32%;
}

.main-sec--client .bd {
  flex:1 0 86.5714%;
  max-width: 86.5714%;
}

.main-sec--client .title {
  font-size: 3.2rem;
}

.main-sec--client .swiper-wrapper {
  -webkit-transition-timing-function:linear !important;
  transition-timing-function:linear !important;
}

.main-sec--client .swiper-slide {
  width: auto;
  margin-right:60px;
}

.main-sec--client .img {
  font-size: 0px;
}

@media screen and (max-width:1200px) {
  .main-sec--client .title {
    font-size: 2.4rem;
  }
}
@media screen and (max-width:1024px) {
  .main-sec--client {
    padding:40px 0px;
  }

  .main-sec--client .swiper-slide {
    margin-right:40px;
  }
}
@media screen and (max-width:768px) {
  .main-sec--client .din {
    flex-wrap: wrap;
  }

  .main-sec--client .hd {
    flex:1 1 100%;
    margin-bottom:28px;
  }

  .main-sec--client .bd {
    flex:1 1 100%;
    max-width: 100%;
  }

  .main-sec--client .title {
    font-size: 2rem;
  }

  .main-sec--client .swiper {
    overflow:visible;
  }

  .main-sec--client .swiper-slide {
    margin-right:30px;
  }

  .main-sec--client img {
    height: 31px;
  }
}
@media screen and (max-width:576px) {
  .main-sec--client {
    padding:30px 0px;
  }

  .main-sec--client .hd {
    margin-bottom:20px;
  }

  .main-sec--client .title {
    font-size: 1.8rem;
  }

  .main-sec--client .swiper-slide {
    margin-right:20px;
  }
}


/* 애니메이션 */
@keyframes fade-right {
  0% {
    opacity:0;
    transform: translateX(-100px);
  }
  100% {
    opacity:1;
    transform: translateX(0px);
  }
}

@keyframes wheel-ani {
  0% {
    transform: translateY(5px);
  }
  25% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-5px);
  }
  75% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(5px);
  }
}

@keyframes bullet-ani {
  0% {
    width: 0px;
  }
  100% {
    width: 100%;
  }
}


.main-sec--business .widget-business .card:hover .point{
  opacity: 1;
  width: 70px;
  height: 70px;
}
.main-sec--business .widget-business .card .point {
  position: absolute;
  right:0;
  bottom:0;
  width: 0px;
  height: 0px;
  opacity: 0;
  transition: .5s;
}

.main-sec--business .widget-business .card .point span {
	display: block;
	background-color: transparent;
}

.main-sec--business .widget-business .card .point span:first-child {
	position: absolute;
	right:0px;
	bottom:0px;
	width:100%;
	height:100%;
	border-radius:50% 0 0 0;
	background-color: #e5f5f5;
}

.main-sec--business .widget-business .card .point span:first-child::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: -10px;
	width: 10px;
	height: 10px;
	border-right: 1px solid #fff;
	box-sizing: content-box;
	background: radial-gradient(circle at 0 0, transparent 70%, #fff 71%);
}

.main-sec--business .widget-business .card .point span:first-child::after {
	content: "";
	position: absolute;
	top: -10px;
	right: 0;
	width: 10px;
	height: 10px;
	border-bottom: 1px solid #fff;
	box-sizing: content-box;
	background: radial-gradient(circle at 0 0, transparent 70%, #fff 71%);
}

.main-sec--business .widget-business .card .point span:last-child {
	overflow: hidden;
	position: absolute;
	bottom: 0;
	right: 0;
	width:55px;
	height:55px;
}

.main-sec--business .widget-business .card .point span:last-child::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: #00A19A;
}

.main-sec--business .widget-business .card .point span:last-child::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url('/asset/img/sub/business/app/ico_arr.png') no-repeat center / auto 16px;
  transition:all .4s cubic-bezier(.25,.46,.45,.94);
}


@media all and (max-width:768px){
  .main-sec--business .widget-business .card .point,
  .main-sec--business .widget-business .card:hover .point{
    opacity: 1;
    width: 45px;
    height: 45px;
  }
  .main-sec--business .widget-business .card .point span:last-child{
    width: 35px;
    height: 35px;
  }
}

/* Popup */
#popup {
	position: relative;
}

.popup-layer {
	z-index: 10000;
	position: absolute;
	background: #fff;
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,.25);
	animation: popup-fade .65s ease-in-out .35s forwards;
	opacity: 0;
	max-width:800px;
}

@keyframes popup-fade {
	0% { opacity: 0;
	-webkit-transform: translateY(25px);
	-ms-transform: translateY(25px);
	transform: translateY(25px); }
	100% { opacity: 1;
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0); }
}
.popup-layer__body {
	background: #fff;
}

.popup-layer__body img {
	display: block;
	margin: 0 auto;
	border: none;
	max-width: 100%;
}

.popup-layer__foot {
	background: #424242;
}

.popup-layer__foot ul {
	display:flex;
	flex-wrap: wrap;
}

.popup-layer__foot li {
	width:50%;
	padding:10px;
}

.popup-layer__foot li:first-child {
	padding-right:0;
}

.popup-layer__foot li:last-child {
	text-align: right;
}

.popup-layer__foot span {
	font-size: 1.5rem;
	color: #fff;
	cursor: pointer;
	transition:all 0.3s ease;
}

.popup-layer__foot label:hover span { opacity: .7; }

/* .popup-layer-foot { background: #424242; }
.popup-layer-foot span { font-size: 15px; color: #fff; }
.popup-layer-foot label:hover span { opacity: .7; }
.popup-layer-foot li:first-child { padding-right: 0; }
.popup-layer-foot li:last-child { text-align: right; } */


@media (max-width: 1024px){
	/* .popup-layer { z-index: 999; } */
	.popup-layer { top: 95px !important; left: 0 !important; margin: 0 5px; }
}
@media (max-width: 768px){

	.popup-layer {
		width:calc(100% - 10px);
	}

	.popup-layer img {
		max-width: none;
		width:100%;
		height: auto !important;
	}
	.popup-layer-foot span { font-size: 14px; }

}
@media (max-width: 375px){
	.popup-layer-foot li { width: 100%; }
	.popup-layer-foot li:last-child { text-align: left; }
}