@charset "utf-8";

.slider {
  padding-top: 100px;
}

#mainslider .small {display: none;}

/** 메인 상단 텍스트 **/
.sliderText {
  width: 100%;
  height: 255px;
  background-image: url(../img/slideBg.jpg);
  background-repeat: no-repeat;
  background-position: top center;
}

.sliderText .inner {
  position: absolute;
  z-index: 2;
  transform:translate(-50%, -50%);
  top:27%; left: 50%;
}


/** 메인 슬라이드 **/
@media screen and (max-width: 768px) {
  .sliderText {height: 205px;}
  .sliderText .inner {top: 25%;}
  .slider .bx-viewport {
    height: 250px;
  }
  #mainslider .big {display: none;}
  #mainslider .small {display: block; width: 100%;}
}


.main-title {
  text-align: center;
  margin-bottom: 50px;
}

.main-title h2 {
  font-size: 29px;
  font-weight: 600;
  color: #202020;
  letter-spacing: -1px;
  margin-bottom: 5px;
}

.main-title p {
  font-size: 17px;
  font-weight: 400;
  color: #838383;
  letter-spacing: -0.2px;
}


@media screen and (max-width: 768px) {
  .main-title h2 {font-size: 25px;}
  .main-title p {font-size: 15px; word-break: keep-all;}
  .main-title {
    margin-bottom: 30px;
  }
}


/** 메인 사업영역 **/
.main-business {
  background-color: #F9F9FA;
  padding: 80px 0;
}

.main-business .container {
  display: flex;
  justify-content: space-between;
}

.main-business .item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: calc(100% / 3 - 40px);
}

.main-business .item:not(:last-child)::after {
  content: '';
  display: block;
  width: 1px; height: 100%;
  background-color: #ddd;
}

.main-business h3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #272727;
  font-size: 25px;
  font-weight: 600;
  letter-spacing: -1px;
  margin-bottom: 20px;
}

.main-business h3::before {
  content: '';
  margin-top: -7px;
  width: 150px;
  height: 150px;
  margin-bottom: 15px;
  background-size: 100% auto !important;
  background-position: center center;
  background-repeat: no-repeat;
}

/*.main-business h3 {
  display: flex;
  color: #272727;
  font-size: 25px;
  font-weight: 600;
  letter-spacing: -1px;
  margin-bottom: 20px;
}

.main-business h3::before {
  content: '';
  margin-right: 10px;
  margin-top: -7px;
  width: 47px;
  height: 47px;
  background-size: 100% auto !important;
  background-position: center center;
  background-repeat: no-repeat;
}*/

.main-business .b1 h3::before {background-image: url(../img/main-b1.png);}
.main-business .b2 h3::before {background-image: url(../img/main-b2.png);}
.main-business .b3 h3::before {background-image: url(../img/main-b3.svg);}

.main-business .item:hover h3::before {
  opacity: 0.8;
  transform: scale(1.1);
  transition: .2s ease-in-out;
}

.main-business p {
  display: none;
  color: #555;
  font-size: 16px;
  word-break: keep-all;
  letter-spacing: -0.1px;
  font-weight: 500;
  margin-bottom: 30px;
}

.main-business a {
  color: #777;
  font-size: 14px;
  display: flex;
  font-weight: 500;
}

.main-business a:hover {
  color: #18974E;
}

.main-business a::before {
  content: '';
      display: inline-block;
      width: 20px;
      height: 20px;
      background-size: 100% auto !important;
      background: url(../img/main-b-link.svg) no-repeat center center;
      margin-right: 5px;
}


@media screen and (max-width: 768px) {
  .main-business {padding: 50px 0}
  .main-business .container {flex-direction: column;}
  .main-business .item {
      width: 100%;
      padding-bottom: 30px;
      margin-bottom: 35px;
      border-bottom: 2px dotted #c7c7c7;
  }
  .main-business .item:last-child {
    margin-bottom: 0px;
    border-bottom: 0;
  }
  .main-business ul li.line {display: none;}
  .main-business ul {
    flex-direction: column;
  }
  .main-business ul li {
    display: flex;
    background-color: #fff;
    border-radius: 10px;
    justify-content: space-between;
    align-items: center;
    padding: 15px 30px;
  }
  .main-business ul li:first-child {
    margin-bottom: 20px;
  }
  .main-business ul li:last-child {
    display:none;
  }
  .main-business ul li.item .circle {
    width: 120px;
    height: 120px;
    background-color: #f7f7f7;
  }
  .main-business ul li.item p {
    width: calc(100% - 162px);
    text-align: left;
    margin-top: 0px;
  }
  .business-bt {
    display: block;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 13px;
    padding: 4px 8px;
    width: 80px;
    text-align: center;
    margin-top: 9px;
    color: #3c3c3c;
    font-weight: 500;
  }
}

/** 메인 최신글 영역 **/
.main-least {
  background-color: #FFDEDF;
}

.main-least .container {
  padding: 70px 0;
  display: flex;
  justify-content: space-between;
}

.main-least .item {
  width: calc(100% / 2 - 150px);
}

.m-support {
  width: 200px;
  border-radius: 10px;
  border: 2px solid #FD6063;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 230px;
}

.m-support p {
  font-size: 24px;
  font-weight: 700;
  padding: 10px 0;
}

.m-support a {
  border: 2px solid #000;
      border-radius: 27px;
      width: 100px;
      padding: 3px 0;
      text-align: center;
      background-color: #ff7b79;
}

.main-gallery {
  padding: 80px 0 10px;
}

.main-gallery .container {
  display: flex;
  justify-content: space-between;
}

.main-gallery .main-title {
  width: 270px;
  text-align: left;
  white-space: pre-line;
}

.main-gallery .main-title h2 {
  font-size: 44px;
  line-height: 125%;
  position: relative;
}

.main-gallery .main-title h2::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 175px;
  width: 53px;
  height: 1px;
  background-color: #000;
}

.main-gallery .main-title img {
  padding-bottom: 15px;
}

.main-gallery .main-title p {
  font-size: 17px;
  letter-spacing: -0.3px;
  font-weight: 500;
  line-height: 139%;
  color: #555555;
}

.main-gallery .pic-lt-wrap {
  width: calc(100% - 300px)
}



@media screen and (max-width: 768px) {
  .m-support {
    width: 90%;
    margin-top: 30px;
    margin-left: 17px;
    display: flex;
    flex-direction: row;
    padding: 20px 0;
    min-height: inherit;
  }
  .m-support img {width: 4rem;}
  .m-support p {margin: 0 1rem}
  .main-least .container {
    flex-direction: column;
  }
  .main-least {flex-direction: column;}
  .main-least .item {
    width: 100%;
    padding: 0 20px;
  }
  .main-least .item:nth-child(2) {
    margin-top: 50px;
  }
  .latest-list li .lt_date {display: none;}
  .main-gallery {padding: 50px 20px;}
  .main-gallery .container {flex-direction: column;}
  .main-gallery .main-title {width: 100%; text-align: center; white-space: inherit;}
  .main-gallery .main-title h2::after {display: none;}
  .main-gallery .main-title h2 {    font-size: 38px;}
  .main-gallery .pic-lt-wrap {width: 100%;}
}



/** 하단 카피라이트 **/
#ft {
  border-top: 1px solid #EAEAEA;
  min-width: auto;
}

.copyright {
  display: flex;
  padding: 20px 0 40px;
  color: #4E4E4E;
  align-items: flex-end;
}

.copyright img {
  margin-right: 30px;
}

.copyright span {
  color: #DB5435;
  font-weight: 600;
}



@media screen and (max-width: 768px) {
  .copyright {font-size: 13px; padding: 20px 20px 40px;}
  .copyright img {display: none;}
}


/***********************************
  서브페이지
***********************************/
#sub {
  padding-top: 50px;
}

.location {
  width: 100%;
  background-color: #444;
  height: 50px;
}

.location .container {
  display: flex;
  height: 100%;
}

.location .item {
  display: flex;
  align-items: center;
  border-right: 1px solid #656565;
  font-size: 16px;
  font-weight: 300;
  color: #fff;
  min-width: 160px;
  padding: 0 20px;
}

.location .item a {color: #fff;}

.location span {
  /*width: 100%;
  background-image: url(../img/location-next.png);
  background-repeat: no-repeat;
  background-position: center right;*/
}

.location .home {
  justify-content: center;
  min-width: 50px;
  border-left: 1px solid #656565;
}

.location .home i {color: #fff;}

/** 서브페이지 탭메뉴 **/
.tabNav {
  margin-top: -27px;
}

.tabNav ul {
  display: flex;
  justify-content: space-between;
}

.tabNav ul.tab li {
  width: calc(100% / 4);
}

.tabNav ul.tab3 li {
  width: calc(100% / 2);
}

.tabNav ul.tab2 li,
.tabNav ul.tab4 li {
  width: calc(100% / 3);
}

.tabNav ul li a {
  display: block;
  text-align: center;
  height: 55px;
  line-height: 55px;
  font-size: 18px;
  color: #666666;
  border: 1px solid #ddd;
  margin-left: -1px;
  background-color: #fff;
}

.tabNav ul li a.active {
  border: 2px solid #00b551;
  color: #00b551;
  font-weight: normal;
}

.tabNav ul li a br {display: none;}

.sub-title {
    font-size: 33px;
    font-weight: 500;
    text-align: center;
    padding: 100px 0;
    letter-spacing: -2px;
    background: url(../img/support-tl-bg.jpg) no-repeat center center;
    background-size: cover;
    color: #fff;
}

.sub-title a {color: #fff;}

.sub-tl {
  height: 55px;
  font-size: 30px;
  font-weight: 500;
  text-align: center;
  padding-bottom: 70px;
  margin-bottom: 40px;

  background-image: url(../img/title-dot.svg);
  background-position: bottom center;
  background-repeat: no-repeat;
}

.section {padding: 70px 0;}

.sub-text {
  font-size: 18px;
  font-weight: 300;
  line-height: 27px;
  text-align: center;
  white-space: pre-line;
  color: #222;
}

.content .hd {
  text-align: center;
  font-size: 17px;
  color: #333;
  padding: 60px 0;
  font-weight: 300;
  background-image: url(../img/slideBg.jpg);
  background-repeat: no-repeat;
  background-position: 0 64%;
}

/*테이블*/
.table {
  border-top: 1px solid #000;
}

@media screen and (max-width: 768px) {
  .section {
    padding-left: 15px;
    padding-right: 15px;
  }
  .location {display: none;}
  .tabNav.container {
    padding: 0 !important;
  }
  .tabNav ul li a br {display: block;;}
  .sub-title {
    font-size: 25px;
    line-height: 6px;
    height: 180px;
    background: url(../img/support-tl-bg.jpg) no-repeat 18% 0;
  }
  .sub-text {
    white-space: inherit;
    word-break: keep-all;
  }
  .tabNav ul li {

  }

  .tabNav ul li a {
    font-size: 16px;
    line-height: 16px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

}

/** 인사말 **/
.welcome {
  margin-top: -28px;
  z-index: -1;
  position: relative;
}

.ceo {
  background-color: #fff5f3;
}

.ceo .container {
  background: url(../img/logo.svg) no-repeat 95% 60%;
  background-size: 280px;
  padding-top: 20px;
  height: 280px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.ceo .container p {
  font-size: 30px;
  white-space: pre-line;
  letter-spacing: -1px;
  line-height: 43px;
}

.ceo .container p span {font-size: 40px}

.intro {}

.vision {
  background-color: #FDF9EB;
}

.vision .vision-text {
  font-size: 25px;
  font-weight: 400;
  position: relative;
  z-index: 1;
}

.vision .vision-text::after {
  content: '';
  display: block;
  width: 300px;
  height: 10px;
  background-color: yellow;
  position: absolute;
  left: calc(50% - 150px);
  top: 20px;
  z-index: -1;
}

@media screen and (max-width: 364px) {
  .vision .vision-text::after {
    display: none;
  }
}
.welcome-wrap {
  display: flex;
  justify-content: space-between;
  padding: 50px 0;
}

.welcome-img {
  box-shadow: 5px 5px 0px #78b879;
  width: 410px; height: auto;
}

.welcome-img img {width: 100%;}

.welcome-text {
  font-size: 17px;
  font-weight: 400;
  color: #000;
  line-height: 26px;
}

.welcome-text p {
  padding: 10px 0;
  word-break: keep-all;
  white-space: pre-line;
}

@media screen and (max-width: 768px) {
  .welcome-wrap {flex-direction: column;}
  .welcome-img { width: 100%;}
  .welcome-text p {font-size: 17px;}
  .welcome-text { font-size: 19px; padding: 30px 0;}
  .ceo {
    font-size: 23px;
    line-height: 29px;
    white-space: inherit;
    padding-top: 25px;
  }
  .ceo .container {
    background-position: 93% 60px;
    background-size: 150px;
    white-space: pre-line;
    text-align: center;
    height: 210px;
  }
  .ceo .container p {
    width: 243px;
    word-break: keep-all;
    font-size: 19px;
    line-height: 31px;
    text-align: left;
    margin-top: -23px;
    margin-left: 11px;
  }

  .ceo .container p span {font-size: 22px;}

  .ceo p {
    margin-top: 25px;
  }
}


@media screen and (max-width: 375px) {
  .ceo .container {
      background-position: 93% 48px;
      background-size: 124px;
      height: 170px;
  }
  .ceo .container p {
    width: 209px;
    word-break: keep-all;
    font-size: 17px;
    line-height: 29px;
    text-align: left;
    margin-top: -23px;
    margin-left: 0;
  }

  .ceo .container p span {
      font-size: 20px;
  }
}


/** 사업안내 **/
.about {

}

.about .container {
  display: flex;
  justify-content: space-between;
  background-color: #d5ffa25c;
}

.about .text {
  font-size: 18px;
  align-self: center;
  padding: 0 50px;
}

.about .text h3 {
  font-size: 26px;
  letter-spacing: -1px;
  font-weight: 600;
  margin-bottom: 25px;
  color: #009c1a;
}

.about .text h3::after {
  content: '';
  display: block;
  width: 80px;
  height: 1px;
  margin-top: 25px;
  background-color: #009c1a;
  opacity: 0.3;
}

.about .container .text p {
  font-weight: 300;
  white-space: pre-line;
  word-break: keep-all;
  line-height: 28px;
  font-size: 17px;
  letter-spacing: -0.2px;
}


.photo {margin: 50px 0 60px;}
.photo img {width: 100%;}
.photo span.caption {
  background-color: #f5f5f5;
  display: block;
  width: 100%;
  padding: 5px 0;
  text-align: center;
  }
.photo .swiper-container {height: 310px;}
.photo .swiper-button-prev, .photo .swiper-button-next {top:calc(50% - 30px); color: #f9f9fa;}

.tabmenu-wrap .tab-con .con-box {
  display: none;
}

.business .info-1 ul li {
  text-align: center;
  letter-spacing: -0.2px;
}

.business .vision-info ul li::before {
  content: '·';
  margin-right: 4px;
  display: inline-block;
  margin-left: -7px;
}

.vision-img {
  text-align: center;
  margin-top: 50px;
}

.mission {
  text-align: center;
  font-size: 30px;
}

.mission h3 {
  font-weight: 500;
  padding: 35px 0 15px;;
}

.mission span {
  font-weight: 600;
}

.organization {
  text-align: center;
  margin-top: 30px;
}

.organization img {
  width: 100%;
  max-width: 700px;
}

.org-list {
  width: 860px;
  display: flex;
  margin: auto;
  justify-content: space-between;
}

.org-list a {
  width: 210px;
}

.org-list a p {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  box-shadow: 3px 3px 0 #ff688b;
  background-color: #000;
  position: relative;
  overflow: hidden;
}

.org-list a:hover p {
  transition: all 0.3 ease;
  box-shadow: 5px 5px 0 #ff688b;
}

.org-list a:hover p::after {
  content: '';
  background: url(../img/ori_link.svg) no-repeat center center;
  position: absolute;
  top: calc(50% - 15px);
  left: calc(50% - 15px);
  width: 30px;
  height: 30px;
  display: block;
}

.org-list a:hover img {
  opacity: 0.7;
  transition: all 0.3 ease;
}

.org-list a span {
  font-size: 17px;
  padding: 7px 0;
  display: block;
  background-color: #ff688b;
  border-radius: 41px;
  color: #fff;
  margin-top: -20px;
  z-index: 1;
  position: relative;
  line-height: 20px;
}

.history-list {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.history-list li {
  display: flex;
  border-bottom: 2px dotted #ddd;
  padding: 15px 0;
  width: 900px;
  font-size: 17px;
}

.history-list li span {
  color: #009688;
  width: 130px;
  border-right: 1px solid #e6e6e6;
  margin-right: 40px;
}

.program .container {max-width: 1000px; padding: 70px 0 !important}
.program .col {position: relative; padding: 0 25px !important;}
.program .col:not(:last-child)::after{
  content: '';
  display: inline-block;
  width: 1px;
  height: 110px;
  background-color: #e6e6e6;
  position: absolute;
  right: 0;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .program .col:not(:last-child)::after{
    display: none;
  }
}
.program .info .col {height: 150px !important;}
.program .col.division {font-weight: 500; font-size: 18px; align-items: center; word-break: keep-all; text-align: center;}
.program .col.name {align-items: center;}
.program ul {width: 170px;}
.program ul li {font-size: 15.5px; font-size: 15px; padding: 4px 0;}
.program ul li:not(:last-child) {border-bottom: 1px dotted #ddd}
.program ul li::before {
  content: '·'; padding-right: 7px; color: #adadad;}
.program .col.content {word-break: keep-all; font-size: 15px; color: #111}

.program .mental ul {width: 620px;}
.program .mental ul li {display: flex;}
.program .mental ul span {display: inline-block; position: relative;}
.program .mental ul span::after {
  content: '';
  display: inline-block;
  width: 1px;
  height: 10px;
  background-color: #ddd;
  top: 0;
  right: 0;
  margin: 0 10px;
}
.program .mental ul p {padding: 0; border: 0; width:auto !important;}
.program .mental-last .col {height: 245px !important}

@media screen and (max-width: 768px) {
  .about .container {
    padding: 30px 0
  }
  .program {overflow-y: scroll;}
  .program .box {    width: 1000px;   margin: 0 20px; box-sizing: border-box;}

  .org-list {
    width: 100%;
    display: flex;
  }
  .org-list a {
    width: calc(100% / 3 - 5px);
    display: flex;
    flex-direction: column;
    background-color: #ff688b;
    padding: 10px;
    margin-bottom: 5px;
    border-radius: 10px;
  }
  .org-list a span {
    background-color: transparent;
    margin-top: 5px;
    word-break: initial;
    font-size: 14px;
  }
  .org-list a p {
    width: 100%;
    height: auto;
  }

  .history-list li {width: 100%;}
  .history-list li span {width: auto; margin-right: 10px; padding-right: 10px;}
  .history-list li p {word-break: keep-all; font-size: 15px;}

  .about {text-align: center;}
  .about img {display: none}
  .about .text h3::after {margin: 20px auto;}
  .about .container .text p {
    white-space: initial;
    word-break: inherit;
    line-height: 29px;
  }

  .vision-info {
      flex-direction: column;
  }

  .business .vision-info > li {
    width: 100%;
    padding-top: 20px;
  }

  .business .vision-info > li:not(:last-child) {
    border-bottom: 1px dotted #ddd;
    padding-bottom: 20px;
  }

  .business .vision-info li .circle {
    width: 100px;
    height: 100px;
    float: left;
    margin-right: 20px;
  }

  .business .vision-info li p,
  .business .vision-info ul {
    float: left;
  }

    .business .vision-info li p {
      margin-top: -20px;
    }

  .business .vision-info ul li {
    text-align: left;
  }

  .business .vision-info li.line {
    display: none;
  }


  .member h3 {
    position: relative;
    text-align: center;
    padding-top: 8px;
  }

  .member h3::before {
    top: 0;
    position: absolute;
    left: calc(50% - 28px);
  }

  .member .master h4 {
    text-align: center;
  }

  .member .master .inner {
    display: initial;
  }

  .member .master .master-img {
      width: 100%;
      height: 350px;
      margin-bottom: 20px;
      overflow: hidden;
      margin-right: 0;
  }

  .member .master ul li {
    padding-left: 15px;
    font-size: 15px;
  }

  .member .master ul li p {
      padding-left: 0;
  }

  .member .master ul li p:not(:first-child) {
        padding-left: 25px;
  }

  .member .master ul li::before {
    margin-left: -9px;
    margin-right: 5px;
  }

 .content img {width: 100%;}
 .work img {width: 100%;}
 .direction {padding: 30px 15px;}
 .direction .inner .text {white-space: pre-line; line-height: 20px;}
 .direction .inner li span {font-size: 20px; padding-top: 10px;}
 .work .inner {    flex-direction: column;}
 .work .item {width: 100%; display: flex;}
 .work .item:not(:last-child) {margin-bottom: 10px;}
 .work .item img {width: 30%; margin-right: 20px;}
 .mission h3 {
   font-size: 25px;
   line-height: 32px;
   white-space: pre-line;
   word-break: keep-all;
  }
 .mission img{width: auto;}

   .tb-staff .item {
     display: block;
     font-size: 20px;
   }
   .tb-staff .staff-tl {display: none;}
   .tb-staff div {
     width: 100% !important;
     font-size: 16px;
     justify-content: initial !important;
     padding: 5px 0;
   }

   .tb-staff .career ul {
     margin: 5px 0;
   }

   .tb-staff .role ul{
     width: calc(100% - 100px)
   }

   .tb-staff div::before {
     background-color: #F1F1F1;
     display: block;
     text-align: center;
     width: 70px;
     height: 100%;
     margin-right: 20px;
     font-size: 13px;
   }


   .tb-staff .career {
     padding-left: 0px;
   }
   .tb-staff .career::before {
     content: '약력';
   }

   .tb-staff .period::before {
     content: '재임기간';
   }

   .tb-staff .role::before {
     content: '역할';
   }

  .tb-staff .role ul li {
    float: left;
    line-height: 17px;
  }

  .tb-staff .role ul li:not(:last-child)::after {
      content: '|';
      color: #ccc;
      padding: 0 5px;
      position: relative;
      top: -2px;
      font-size: 12px;
  }

  .tb-staff .cate {
    padding: 10px 0;
    margin-top: -10px !important;
  }

  .tb-staff .cate p {
    margin: auto;
  }
}

/** 정관 **/
.articles {
  font-size: 15px;
  margin-top: 50px;
  margin-bottom: 80px;
}

.articles h3{
  font-size: 20px;
  margin-top: 50px;
  margin-bottom: 10px;
}

.articles h3:first-child {
  margin-top: 0;
}

.articles p{
  margin-left: 55px;
  margin-bottom: 10px;
  text-align: justify;
  line-height: 24px;
}

.articles p span {
  font-weight: 500;
}


/** 사업소개 **/
.business-eng {
  margin-bottom: 25px;
}

.business .sub-text {
  white-space: pre-line;
}

.business .sub-text span {
  color: #9F6900;
}

.center-vision {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1000px;
  margin: auto;
}

.center-vision .item {
  width: 48%;
  border-bottom: 1px solid #ddd;
  padding: 30px 0;
  font-size: 17px;
}

.center-vision .item h3 {
  font-size: 20px;
  margin-bottom: 15px;
}

.center-vision .item:nth-child(1),
.center-vision .item:nth-child(2) {
  border-top:1px solid #000;
}

.nanum-img {
  max-width: 950px;
  margin-top: 50px;
}

.nanum-img img {width: 100%;}

.operation {
  background-color: #fff;
  margin-top: 50px;
  text-align: center;
  padding: 30px 100px;
  font-size: 18px;
}

.operation h3 {
  font-size: 25px;
  margin-bottom: 15px;
}

.operation ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.operation ul li {
  width: 49.5%;
  border: 2px solid #ddd;
  padding: 10px 0;
  margin: 5px 0;
}

.business .info  {
}

.business .info .container{
  padding: 70px 0;
  max-width: 1000px;
}

.info .item {
  display: flex;
  justify-content: space-between;
  font-size: 17px;
}

.info .item h3 {
  width: 150px;
  padding: 20px 0;
  border-bottom: 1px solid #ddd;
}

.info .item p {
  width: calc(100% - 170px);
  padding: 20px 0;
  border-bottom: 1px solid #ddd;
}

.info .item p span {
  font-size: 14px;
  position: relative;
  top: -3px;
  padding: 0 10px;
  color: #969696;
}


.volunteer {margin-top: 60px;}

@media screen and (max-width: 768px) {
  .center-vision .item {width: 100%;}
  .center-vision .item:nth-child(2) {
    border-top:1px solid #ddd;
  }
  .info .item h3 {width: 100px;}
  .info .item p {width: calc(100% - 120px);}
  .info .item p span{display: table-column;}
  .info .item p span::after {
    content: '';
    display: block;
  }

  .operation { padding: 30px 20px;}
  .operation ul li {width: 100%; white-space: pre-line;}
}


/** 오시는 길 **/
.map-wrap {margin-top: 70px}
.contact{text-align:center;padding-bottom:40px;}
.contact dl{display:inline-block;}
.contact dl dt{float:left; color:#000;font-weight:normal;padding:0 20px;position:relative;font-size: 16px;}
.contact dl dd{font-size:16px;color:#666666;padding-right:20px;position:relative; float: left;}
.contact dl dd + dt:after{content:'';width:1px;height:13px;background-color:#dddddd;position:absolute;left:0;top:7px;}
.map-area {
  max-width: 1100px;
  margin: auto;
  margin-bottom: 50px;
}

.map-area iframe {
  width: 100%;
  height: 400px;
}

#map {
  width:100%;height:400px;
}

@media screen and (max-width: 768px) {
  .contact {
    padding-bottom: 20px;
  }
  .contact dl {
    padding: 0 15px;
  }
  .contact dl dt {
    padding: 0;
    width: 50px;
    text-align: left;
  }
  .contact dl dd {
    float: left;
    width: calc(100% - 51px);
    text-align: left;
    word-break: keep-all;
  }
}


/***********************************
  게시판 정리
***********************************/

#bo_v, #bo_list, #bo_w, #bo_gall {
  padding: 0px 0 30px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 1100px;
}

@media screen and (max-width: 768px) {
  #bo_v, #bo_list, #bo_w, #bo_gall {
    padding: 0 15px;
  }
}

/***********************************
  팝업정리
***********************************/
.blocker {
    z-index: 3 !important;
}

.modal {
  z-index: 4 !important;
  padding: 0 !important;
  max-width: 800px !important;
}

.modal h2 {
  border-radius: 8px 8px 0 0;
  background-color: #20264A;
  color: #fff;
  font-size: 18px;
  padding: 10px 20px;
  font-weight: 500;
}

.modal-cont {
  font-size: 16px;
  padding: 30px;
}

.partner-tl-box {
  text-align: center;
  color: #fff;
  white-space: pre-line;
  margin-top: 60px;
  margin-bottom: 10px;
  padding: 60px 0 70px;
  background-image: url(../img/support-tl-bg.jpg);
}

.partner-tl-box h3 {
  font-size: 25px;
  font-weight: 400;
  line-height: 32px;
}

.partner-tl-box p {
  font-size: 15px;
  font-weight: 300;
}

.partner-tl-box a {
  display: inline-block;
  border: 1px solid #fff;
  color: #fff;
  border-radius: 28px;
  padding: 7px 10px;
  margin-top: 5px;
}

.partner .box {
  padding: 70px 0;
}

.partner .box:last-child {
  margin-bottom: 0;
}

.partner h4 {
  font-size: 26px;
  text-align: center;
  font-weight: 500;
  letter-spacing: -1px;
  margin-bottom: 50px;
}

.partner .text {
  font-size: 15px;
  font-weight: 400;
}

.partner .apply  ul {
  display: flex;
  justify-content: space-evenly
}

.partner .apply  ul li.support-img {
  width: calc(50% - 100px);
      height: 180px;
      overflow: hidden;
      border-radius: 125px;
      text-align: center;
      background-color: #efefef;
}
.partner .apply ul li.support-img:nth-child(1) {margin-right: -90px}
.partner .apply ul li.support-img:nth-child(3) {margin-left: -90px}
.partner .apply  ul li img {width: 100%;}
.partner .apply  ul li p {line-height: 47px; font-size: 15px}
.partner .apply  ul li p span{color: #ff688b}

.partner .apply  ul li.support-bt {z-index: 1; position: relative;}
.partner .apply  ul li.support-bt a {
  width: 180px;
  height: 180px;
  background-color: #ff7898;
  border-radius: 100px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  color: #fff;
  font-size: 18px;
}

.partner .apply  ul li.support-bt a i {font-size: 30px; margin-bottom: 10px;}

.partner .apply  h3 {
  margin-top: 70px;
  font-size: 17px;
  font-weight: 400;
  text-align: center;
  white-space: pre-line;
  text-decoration: underline;
  text-underline-position: under;
  text-decoration-color :#ddd;
  line-height: 30px;
}


.partner .steps ul {
  display: flex;
  justify-content: center;
}

.partner .steps ul li {
  width: 180px;
  height: 180px;
  background-color: #ddd;
  margin: 0 30px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
}

.partner .steps ul li span {font-size: 12px;}
.partner .steps ul li p {font-size: 20px; padding: 10px 0; font-weight: 600}
.partner .steps ul li .fas {font-size: 25px}

.how-box {text-align: center; margin-top: 45px;}
.how-box strong {font-size: 22px; padding-bottom: 10px; display: block;}

.partner .steps ul li:not(:last-child)::after {
  content: "\f138";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  font-size: 30px;
  color: #555;
  top: calc(50% - 15px);
  right: -45px;
}

.partner .info .col {
  height: 120px;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  border-bottom: 1px solid #ddd;
}

.partner .info .img {
  width: 150px;
  padding: 0 30px;
  text-align: center;
}

.partner .info .img img {
  width: 80px;
}

.partner .info h3 {
  font-weight: 400;
  width: 180px;
  align-self: center;
}

.partner .info p {
  font-size: 16px;
  color: #666;
  font-weight: 300;
}

.partner .account .container {
  display: flex;
  justify-content: center;
}

.partner .account .item {
  background-color: #fff;
  width: 450px;
  margin: 0 10px;
  padding: 30px 25px;
  border: 1px solid #ddd;
}

.partner .account .item strong {
  display: block;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 10px;
  background-color: #f1f1f1;
  padding: 10px;
  text-align: center;
}

.partner .account .item strong span {
  color: #666;
  font-size: 14px;
  padding-left: 5px;
  font-weight: 300;
}

.partner .account .item li {
  font-size: 16px;
  padding-top: 12px;
}

.partner .account .item li:not(:last-child) {
  border-bottom: 1px dotted #bdbdbd;
  padding-bottom: 10px;
}

.partner .account .item li::before {
  content: '>';
  color: #DB5435;
  padding-right: 8px;
  padding-left: 7px;
}



@media screen and (max-width: 425px) {
  .partner-tl-box {padding: 10px 15px 30px;}
  .partner-tl-box h3 {font-size: 22px; word-break: keep-all; }
  .partner-tl-box p { word-break: keep-all; }

  .partner .apply ul {flex-direction: row;}
  .partner .apply ul li {width: 100%;}
  .partner .apply ul li p {line-height: inherit;}
  .partner .apply ul li:first-child {margin-bottom: 15px;}
  .partner .apply ul li.support-img{width: auto;}
  .partner .apply ul li img {height:calc(100% - 5rem); }
  .partner .apply ul li.support-img:nth-child(1){margin: 0}
  .partner .apply ul li.support-img:nth-child(3){margin: 0}
  .partner .apply .cont p span{word-break: keep-all;}

  .partner .steps ul {flex-direction: column;}
  .partner .steps ul li {
    width: 100%;
    height: initial;
    margin: 0;
    margin-bottom: 10px;
    border-radius: 20px;
    padding: 15px 0;
  }

  .partner .how ul {flex-direction: row; justify-content: space-between;}
  .partner .how ul li {
    width: 100%;
    border-radius: 10px;
    height: auto;
    margin: 10px 0 !important;
  }

  .partner .how ul li.circle {
    display: none;
  }

  .partner .how ul li.list {
    padding: 0;
    overflow: hidden;
    width: 48%;
  }

  .partner .how ul li.list-1 {
    border: 3px solid #80c3de;
  }

  .partner .how ul li.list-2 {
    border: 3px solid #80aedf;
  }

  .partner .how ul li.list strong {
    display: block;
    margin: 0;
    padding: 7px 0;
  }

  .partner .how ul li.list-1 strong {
    background-color: #80c3de;
  }

  .partner .how ul li.list-2 strong {
    background-color: #80aedf;
  }

  .partner .how ul li.list .list-cont {
    margin: 10px 0;
  }

  .partner .how-box {
    width: 100%;
    margin-top: 10px;
    border: 1px solid #ddd;
    padding: 20px 10px;
    border-radius: 20px;
  }

  .partner .info .img {
    padding: 0;
  }

  .partner .account .container {
    flex-direction: column;
  }

  .partner .account .item {
    width: calc(100% - 15px);
  }

  .partner .account .item:nth-child(1) {
    margin-bottom: 15px;
  }
}

/** 다운로드 버튼 **/
.downBtn {
  display: flex;
  height: 40px;
  margin-top: 10px;
}

.downBtn a {
  display: flex;
  align-items: center;
  border-radius: 5px 0 0 5px;
  font-size: 15px;
  background-color: #3F51B5;
  color: #fff;
  padding: 0 15px;
}

.downBtn .downIcon {
  text-align: center;
  padding-top: 5px;
  border-radius: 0 5px 5px 0;
  width: 40px;
  height: 100%;
  color: white;
  background-color: #1b2a80;
}

.downBtn .downIcon .fas {

}


/***********************************
  자원봉사자 모집
***********************************/
.support {
  display: flex;
  justify-content: center;
  padding: 60px 0;
}

.support .img {
    padding-right: 70px;
}

.support .text {
  display: flex;
  flex-direction: column;
  align-self: center;
  position: relative;
}

.support .text::after {
  content: '';
  width: 140px;
  height: 210px;
  background-size: 100% auto !important;
  background: url(../img/volunteer_after.svg) no-repeat center center;
  position: absolute;
  right: -57px;
  z-index: -1;
}

.support .text h3 {
  font-size: 30px;
  font-weight: 500;
  line-height: 36px;
  margin-bottom: 20px;
  white-space: pre-line;
}

.support .text h3 strong {
  color: #18974E;
}

.support .text p {
  width: 100%;
  white-space: pre-line;
  line-height: 23px;
}


.field {padding: 70px 0 75px;}

.info a {
  color: #DB5435;
}

.supportBtn {
  justify-content: center;
  height: 50px;
  margin-top: 35px;
}

.supportBtn a {
  font-size: 18px;
  color: #fff;
  padding: 0 20px;
}

.supportBtn .downIcon {
  width: 50px;
  font-size: 18px;
  padding-top: 9px;
}

.support-part .item {
  width: 31%;
  padding: 0;
}

.support-part .item:nth-child(3) {
    border-top: 1px solid #000;
}

.suport-tl {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  text-align: center;
  border-bottom: 1px solid #949494;
  padding: 25px 0 15px;
}

.img-circle {
  display: flex;
  justify-content: center;
  align-self: center;
  margin-bottom: 10px;
  background-color: white;
  width: 130px;
  height: 130px;
  border-radius: 50%;
}

.support-part ul li {
  padding: 15px 0;
  border-bottom: 1px solid #ddd;
  text-align: center;
}

.support-part .item:nth-child(3) ul li:last-child {
  border-bottom: 0;
}

.part-list {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  margin: auto;
}

.part-list li {
  width: calc(100% / 5 - 15px);
  height: 250px;
  border: 1px solid #CDCDCD;
  background-color: #fff;
  border-radius: 10px 10px 30px 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.part-list .item {
  text-align: center;
}

.part-list .item p {
  width: 120px;
      height: 120px;
      display: flex;
      justify-content: space-evenly;
      border-radius: 60px;
      background-color: #FFF8F0;
      margin-bottom: 20px;
}

.part-list .item span {
  font-size: 18px;
  padding-bottom: 15px;
  color: #404040;
  display: block;
}

.part-list .item img {
  width: 60%;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .part-list .item p {
    display: inherit;
    justify-content: center;
    line-height: 120px;
  }
  .part-list .item img{
    height: 60%;
  }
}

@media screen and (max-width: 768px) {

  .part-list {
    flex-direction: column;
  }

  .part-list li {
    width: 100%;
    height: auto;
    padding: 15px 30px;
  }

  .part-list li:not(:last-child) {
    margin-bottom: 15px;
  }

  .part-list .item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
  }

  .part-list .item img {
    width: 77px;
  }

  .part-list .item span {
    font-size: 22px;
    font-weight: 600;
  }

  .part-list .item p {
    margin: 0;
  }

  .support {
    display: block;
  }

  .support .text h3 {font-size: 25px;}

  .support .img {
    width: 100%;
        padding: 0 13%;
        max-width: 400px;
  }

  .support .text {
    width: 100%;
    padding: 20px 0;
    text-align: center;
  }

  .support .text::after{
    display: none;
  }

  .support .text p {
    font-size: 18px;
    word-break: keep-all;
    white-space: inherit;
    line-height: inherit;
  }

  .support-part .item {
    width: 100%;
  }
}



/** 공익위반신고 **/
.declaration {
  border: 1px dotted #ddd;
  background-color: #f7f7f7;
  display: flex;
  justify-content: center;
  padding: 15px;
  font-size: 14px;
}

.declaration a {
  background-color: #00b551;
  color: #fff;
  border-radius: 3px;
  padding: 0 8px;
  font-size: 13px;
  margin-left: 10px;
  display: flex;
  align-items: center;
  height: 23px;
}

.declaration i {
  margin-left: 5px
}

@media screen and (max-width: 425px) {
  .declaration {
    word-break: keep-all;
  }

  .declaration p {
    word-break: keep-all;
  }

  .declaration a {
    line-height: 1.3;
  }

  .declaration a i {
    display: none
  }
}
