@charset "UTF-8";
/* ZAP-X 서브 화면 (health 공통 컴포넌트 중 ZAP-X 에서 쓰는 것 + ZAP-X 전용) */

@font-face {
  font-family: "Pretendard";
  src: url("../fonts/Pretendard-Thin.woff2") format("woff2"), url("../fonts/Pretendard-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  src: url("../fonts/Pretendard-Light.woff2") format("woff2"), url("../fonts/Pretendard-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  src: url("../fonts/Pretendard-Regular.woff2") format("woff2"), url("../fonts/Pretendard-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  src: url("../fonts/Pretendard-Medium.woff2") format("woff2"), url("../fonts/Pretendard-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  src: url("../fonts/Pretendard-Bold.woff2") format("woff2"), url("../fonts/Pretendard-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  src: url("../fonts/Pretendard-Black.woff2") format("woff2"), url("../fonts/Pretendard-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
.spw-wrap {
  font-family: "Pretendard";
  position: relative;
}
.spw-wrap span {
  display: inline;
}
.prt-a {
  margin-bottom: 4.0625rem;
}
.prt-a:last-child {
  margin-bottom: 0;
}
.prt-b {
  margin-bottom: 2.4375rem;
}
.prt-b:last-child {
  margin-bottom: 0;
}
.prt-c {
  margin-bottom: 1.875rem;
}
.prt-c:last-child {
  margin-bottom: 0;
}
.hd3-tt {
  font-family: "Pretendard";
  position: relative;
  display: block;
  margin-bottom: 0.9375rem;
}
.hd3-tt strong {
  font-size: 1.5rem;
  font-weight: 700;
  color: #222;
  letter-spacing: -0.05rem;
}
.hd3-tt.next-nor-t {
  margin-bottom: 0.5rem;
}
.hd3-tt.ft-size-30 strong {
  font-size: 1.875rem;
  line-height: 1.6;
}
.strong-tt {
  margin-bottom: 0.1875rem;
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  color: #e47312;
}
.strong-tt.next-nor-t {
  margin-bottom: 0.4375rem;
}
.strong-tt.mgb-middle {
  margin-bottom: 0.6875rem;
}
.strong-tt.color-normal {
  color: #222;
}
.nor-c {
  font-size: 1.125rem;
  font-weight: 400;
  color: #222;
  line-height: 1.875;
}
.t-orange {
  color: #e47312;
}
.t-mocha {
  color: #887d77;
}
.t-wei-bold {
  font-weight: 700;
}
.ls-typ > li {
  font-size: 1.125rem;
  font-weight: 400;
  color: #222;
  display: block;
  line-height: 1.875;
}
.ls-typ > li .mark {
  position: relative;
  display: block;
  letter-spacing: -0.025rem;
}
.ls-typ > li .mark:before {
  position: absolute;
  top: 1px;
  left: 0;
  content: "";
  display: block;
}
.ls-typ.dot > li > .mark {
  padding-left: 0.625rem;
}
.ls-typ.dot > li > .mark:before {
  top: 0.875rem;
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 50%;
  background-color: #887d77;
}
.box-bg-color {
  background-color: #f8f6f4;
  padding: 1.875rem;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 1rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .box-bg-color {
    padding: 1.875rem 1.25rem;
  }
}
@media (min-width: 680px) and (max-width: 1339px) {
  .box-bg-color {
    padding: 1.875rem;
  }
}
.box-bg-color.side-icon {
  position: relative;
  padding: 1.875rem 3.6rem 1.875rem 5.5rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .box-bg-color.side-icon {
    padding: 1.075rem 1.3rem 1.075rem 3.2rem;
  }
}
.box-bg-color.side-icon .circle-box {
  position: absolute;
  top: 0;
  left: 0;
}
.box-bg-color.side-icon .circle-box span {
  z-index: 1;
  position: relative;
  display: block;
  width: 2.8125rem;
  height: 2.8125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 50%;
  background-color: #887d77;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .box-bg-color.side-icon .circle-box span {
    width: 1.85rem;
    height: 1.85rem;
    font-size: 0.875rem;
  }
}
.box-bg-color.side-icon .circle-box:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url("../images/sub/bgbox-icon-white-bg.png") 0 0 no-repeat;
  background-size: contain;
  width: 4.375rem;
  height: 4.3125rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .box-bg-color.side-icon .circle-box:after {
    width: 3.025rem;
    height: 3.025rem;
  }
}
.box-bg-color.side-icon .circle-box.check span:before {
  display: block;
  content: "";
  width: 2.8125rem;
  height: 2.8125rem;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url("../images/sub/bgbox-icon-check.png");
}
.box-bg-color.side-icon .circle-box.bg-orange span {
  background-color: #e47312;
}
.box-bg-color.side-icon .conbox .tt {
  display: block;
  margin-bottom: 0.625rem;
  font-size: 1.25rem;
  font-weight: 700;
  color: #e47312;
}
.box-bg-color.side-icon.center-con {
  padding: 1.075rem 1.375rem 1.075rem 5rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .box-bg-color.side-icon.center-con {
    padding: 0.775rem 1.1rem 0.775rem 3rem;
  }
}
.box-bg-color.side-icon.center-con .circle-box {
  left: -0.75rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (min-width: 0px) and (max-width: 1339px) {
  .box-bg-color.side-icon.center-con .circle-box {
    top: 0.8875rem;
    left: 0.6rem;
    -webkit-transform: none;
    transform: none;
  }
}
.box-bg-color.side-icon.center-con .circle-box:after {
  display: none;
}
.box-bg-color.side-icon.center-con .circle-box span {
  border: 0.75rem solid #fff;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .box-bg-color.side-icon.center-con .circle-box span {
    border: 0;
  }
}
.sideicon-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1.25rem;
}
.sideicon-list > li .box-bg-color {
  height: 100%;
}
.sideicon-list.grid-type {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 1.25rem;
}
.sideicon-list.grid-type.col-2 > li {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -ms-flex-preferred-size: calc(50% - 0.625rem);
  flex-basis: calc(50% - 0.625rem);
}
@media (min-width: 0px) and (max-width: 1339px) {
  .sideicon-list.grid-type.col-2 > li {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(50% - 0.625rem);
    flex: 1 1 calc(50% - 0.625rem);
    min-width: 25rem;
  }
}
.spw-int-wrap.greeting .dulh-greeting-wrap {
  padding-bottom: 3.5rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap {
    padding-bottom: 0;
  }
}
.spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon {
  position: relative;
}
.spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .hd3-tt {
  margin-bottom: 1.5625rem;
  width: calc(100% - 41.125rem);
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .hd3-tt {
    width: 100%;
    text-align: center;
  }
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .hd3-tt strong {
    font-size: 1.55rem;
    line-height: 1.4;
  }
}
@media (min-width: 680px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .hd3-tt strong {
    font-size: 1.875rem;
    line-height: 1.6;
  }
}
.spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo {
  position: absolute;
  top: 1.6875rem;
  right: 0;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo {
    position: static;
  }
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .photo-box {
    text-align: center;
  }
}
.spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con {
  margin-right: 3.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con {
    margin-right: 0;
    margin-top: 0.625rem;
  }
}
.spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con .pf-han {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 0.3125rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con .pf-han {
    gap: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con .pf-han .pf-position {
  font-size: 1rem;
  font-weight: 400;
  color: #222;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con .pf-han .pf-position {
    font-weight: 500;
  }
}
.spw-int-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con .pf-han .pf-name {
  font-size: 1.5rem;
  font-weight: 700;
  color: #222;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.greeting .dulh-greeting-wrap .greeting-subcon {
    margin-top: 1.25rem;
  }
}
.spw-int-wrap.location .map-iframe {
  overflow: hidden;
  height: 29.4375rem;
  border-radius: 1rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.location .map-iframe {
    height: 16.5625rem;
  }
}
@media (min-width: 680px) and (max-width: 1339px) {
  .spw-int-wrap.location .map-iframe {
    height: 26.5625rem;
  }
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap {
  width: 100%;
  height: 100%;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .wrap_map {
  width: 100%;
  height: 100%;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .wrap_map .border1 {
  border: 0;
  background-color: transparent;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .wrap_map .border2 {
  border: 0;
  background-color: transparent;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .wrap_map .border3 {
  border: 0;
  background-color: transparent;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .wrap_map .border4 {
  border: 0;
  background-color: transparent;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .wrap_map .wrap_btn_zoom {
  bottom: auto;
  top: 1.5625rem;
  right: 1.0625rem;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .wrap_controllers {
  display: none !important;
}
.spw-int-wrap.location .map-iframe .root_daum_roughmap .cont {
  display: none !important;
}
.spw-int-wrap.location .map-iframe iframe {
  width: 100%;
  height: 100%;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.3125rem;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .num {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  width: 2rem;
  height: 2rem;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  background-color: #f77636;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .num.r {
  background-color: #f31e46;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .num.b {
  background-color: #2783eb;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .num.g {
  background-color: #1ca11b;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .bus {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  width: 2rem;
  height: 2rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .bus.regular {
  background-image: url("../images/sub/loacation-bus-regular-icon.png");
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .name {
  font-size: 1rem;
  font-weight: 700;
  color: #222;
}
.spw-int-wrap.location .location-public-transport-list .transport-tt .name em {
  color: #222;
}
.spw-int-wrap.location .location-public-transport-list .oval-num {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 400;
  color: #222;
  background-color: #f0ede9;
  border-radius: 0.875rem;
  min-height: 1.8125rem;
  padding: 0 1.1875rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.location .location-public-transport-list .oval-num {
    padding: 0 0.95rem;
  }
}
.spw-int-wrap.location .location-public-transport-list .pt-ls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  border-top: 1px solid #1a263b;
}
.spw-int-wrap.location .location-public-transport-list .pt-ls > li {
  border-bottom: 1px solid #cdcdcd;
  padding: 0.875rem 1.875rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.location .location-public-transport-list .pt-ls > li {
    padding: 0.875rem 0.95rem;
  }
}
.spw-int-wrap.location .location-public-transport-list .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.location .location-public-transport-list .box {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.spw-int-wrap.location .location-public-transport-list .box .transport {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  width: 17.875rem;
}
@media (min-width: 0px) and (max-width: 1339px) {
  .spw-int-wrap.location .location-public-transport-list .box .transport {
    width: 100%;
    margin-bottom: 0.625rem;
  }
}
.spw-int-wrap.location .location-public-transport-list .box .number {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.spw-int-wrap.location .location-public-transport-list .box .number .num-ls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.3125rem;
}


/*** ZAP-X 전용 ***/
/*** header ***/
.hd_box .hd_logo a .img img,
.sitemap_logo a .img img,
.mo_sideGnb .mo_logo a .img img {display: block; width:auto; height:1.75rem;}
@media (max-width:1400px) {
  .hd_box .hd_logo a .img img {height:1.5rem;}
}
@media (max-width:1160px) {
  .hd_box .hd_logo a .img img,
  .sitemap_logo a .img img,
  .mo_sideGnb .mo_logo a .img img {height:1.5rem;}
}
@media (max-width:768px) {
  #header .hd_logo a img,
  #header .hd_logo img,
  .sitemap_top .sitemap_logo a img,
  .mo_sideGnb .mo_sideGnb_hd .mo_sideGnb_hd1 .mo_logo img {height:1.375rem;}
}
@media (max-width:460px) {
  #header .hd_logo a img,
  #header .hd_logo img,
  .sitemap_top .sitemap_logo a img,
  .mo_sideGnb .mo_sideGnb_hd .mo_sideGnb_hd1 .mo_logo img {height:1.125rem;}
}

/* GNB 는 오른쪽 버튼 쪽으로 붙인다 (검색창이 없어서 가운데에 뜨지 않게) */
#header .hd_logo {flex:none;}
#header nav {justify-content: flex-end;}
#header nav .gnb {width:auto; max-width:none;}
#header nav .gnb > li {flex:none;}
#header nav .gnb > li > a {padding:0 1.25rem;}
@media (max-width:1500px) {
  #header nav .gnb > li > a {padding:0 0.875rem;}
}
@media (max-width:1340px) {
  #header nav .gnb > li > a {padding:0 0.5rem; font-size:18px;}
}

/* 사이트맵 버튼 : 서브는 점 아홉 개 (메인은 서버 아이콘 그대로 줄 세 개) */
.sub .hd_side_util .btn_ico.iconBtn_sitemap,
.sub .hd_side_util .btn_ico.iconBtn_mMenu {background-image: url(../images/layout/hd_icon_sitemap.png);}
@media (max-width:1160px) {
  .sub .hd_side_util .btn_ico.iconBtn_mMenu {background-image: url(../images/layout/hd_icon_sitemap_mo.png);}
}


/*** contents : 글자 크기 (시안보다 2px 크게) ***/
.zx-wrap .hd3-tt strong {font-size:1.625rem;}
.zx-wrap .hd3-tt.ft-size-30 strong {font-size:2rem;}
.zx-wrap .box-bg-color.side-icon .conbox .norcon-box .tt {font-size:1.375rem;}
.zx-wrap .box-bg-color.side-icon .conbox .tt.t-mocha {color:#887d77;}
@media (max-width:1339px) {
  .zx-wrap .hd3-tt strong {font-size:1.375rem;}
  .zx-wrap .hd3-tt.ft-size-30 strong {font-size:1.625rem;}
  .zx-wrap .box-bg-color.side-icon .conbox .norcon-box .tt {font-size:1.25rem;}
}
.zx-wrap .nor-c + .nor-c {margin-top:1.5rem;}
.zx-wrap .nor-c + .sideicon-list,
.zx-wrap .nor-c + .zx-card-list {margin-top:1.875rem;}
.zx-wrap .sideicon-list + .nor-c,
.zx-wrap .zx-card-list + .nor-c {margin-top:1.5rem;}


/*** 알약 탭 (같은 단계 메뉴 이동) ***/
.zx-pill-tab {display: flex; flex-wrap: wrap; gap:0.375rem; margin-bottom:2.5rem;}
.zx-pill-tab > li a {display: flex; align-items: center; justify-content: center; min-width:9.625rem; height:2.875rem; padding:0 1.5rem; font-size:1.125rem; font-weight: 500; color:#e47312; letter-spacing: -0.025em; border:1px solid #e47312; border-radius:999px; background:#fff; box-sizing: border-box; transition: var(--transition-custom03, all 0.3s ease-in-out);}
.zx-pill-tab > li a:hover,
.zx-pill-tab > li a:focus {color:#fff; background:#e47312;}
.zx-pill-tab > li.on a {font-weight: 700; color:#fff; background:#e47312;}
@media (max-width:1339px) {
  .zx-pill-tab {margin-bottom:1.875rem;}
  .zx-pill-tab > li a {min-width:auto; height:2.5rem; padding:0 1.25rem; font-size:1rem;}
}
@media (max-width:640px) {
  .zx-pill-tab {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));}
  .zx-pill-tab > li a {padding:0 0.5rem; font-size:1rem;}
}


/*** 글 + 오른쪽 사진 ***/
.zx-side-pic {display: flex; align-items: flex-start; justify-content: space-between; gap:3.75rem;}
.zx-side-pic .con {flex:1; min-width:0;}
.zx-side-pic .pic {flex:none; width:34.25%; border-radius:1.25rem; overflow: hidden;}
.zx-side-pic .pic img {display: block; width:100%; height:auto;}
@media (max-width:1024px) {
  .zx-side-pic {flex-direction: column-reverse; gap:1.875rem;}
  .zx-side-pic .pic {width:100%; max-width:36rem; margin:0 auto;}
}
.zx-side-pic.pic-bottom-none {flex-direction: row;}
@media (max-width:1024px) {
  .zx-side-pic.pic-bottom-none {flex-direction: column;}
}


/*** 번호·아이콘 가운데 카드 (2단 / 3단) ***/
.zx-card-list {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:1.25rem;}
.zx-card-list.col-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}
.zx-card-list > li > .box-bg-color.side-icon {height:100%; padding:2.625rem 2.5rem 3.125rem;}
.zx-card-list .zx-card-con {text-align: center;}
.zx-card-list .zx-card-con .tt {display: block; font-size:1.625rem; font-weight: 700; color:#222; letter-spacing: -0.025em;}
.zx-card-list .zx-card-con .icon {display: flex; align-items: center; justify-content: center; margin:1.25rem auto 1.875rem; height:3.25rem;}
.zx-card-list .zx-card-con .icon img {display: block; max-height:100%;}
.zx-card-list .zx-card-con .nor-c {line-height: 1.8;}
@media (max-width:1339px) {
  .zx-card-list > li > .box-bg-color.side-icon {padding:2.25rem 1.5rem 2.5rem;}
  .zx-card-list .zx-card-con .tt {font-size:1.375rem;}
}
@media (max-width:1024px) {
  .zx-card-list,
  .zx-card-list.col-2 {grid-template-columns: minmax(0, 1fr);}
}


/*** 아이콘 + 제목 + 설명 가로 박스 ***/
.zx-icon-row-list > li + li {margin-top:1.25rem;}
.zx-icon-row-list .box {display: flex; align-items: center; gap:1.875rem; padding:1.875rem 2.8125rem; background:#f0ede9; border-radius:1rem;}
.zx-icon-row-list .box .icon {flex:none; display: flex; align-items: center; justify-content: center; width:3rem;}
.zx-icon-row-list .box .icon img {display: block; max-width:100%;}
.zx-icon-row-list .box .con {flex:1; min-width:0;}
.zx-icon-row-list .box .tt {display: block; margin-bottom:0.25rem; font-size:1.375rem; font-weight: 700; color:#887d77; letter-spacing: -0.025em;}
@media (max-width:1339px) {
  .zx-icon-row-list .box {gap:1.25rem; padding:1.5rem 1.5rem;}
  .zx-icon-row-list .box .tt {font-size:1.25rem;}
}
@media (max-width:640px) {
  .zx-icon-row-list .box {align-items: flex-start;}
  .zx-icon-row-list .box .icon {width:2.25rem;}
}


/*** 단계 흐름 (화살표로 잇는 박스) ***/
.zx-flow {display: flex; align-items: stretch; gap:2.25rem;}
.zx-flow > li {position:relative; flex:1; display: flex; align-items: center; justify-content: center; min-height:13.75rem; padding:1.875rem 1.25rem; text-align: center; background:#f8f6f4; border:1px solid #cdcdcd; border-radius:1rem; box-sizing: border-box;}
.zx-flow > li + li:before {content:''; display: block; position:absolute; left:-1.125rem; top:50%; width:0.875rem; height:0.875rem; border-top:3px solid #e47312; border-right:3px solid #e47312; transform: translate(calc(-50% - 0.375rem), -50%) rotate(45deg);}
.zx-flow > li .nor-c {line-height: 1.7;}
.zx-flow > li .t-orange {color:#e47312;}
.zx-flow.st-small {gap:1.5rem;}
.zx-flow.st-small > li {min-height:4.375rem; padding:0.75rem 1rem; background:#fff; border-radius:1rem;}
.zx-flow.st-small > li + li:before {left:-0.75rem; border-color:#3f6fa3;}
.zx-flow.st-small > li.on {color:#fff; background:#3f6fa3; border-color:#3f6fa3;}
.zx-flow.st-small > li.on .nor-c {font-weight: 700; color:#fff;}
.zx-wrap .nor-c + .zx-flow,
.zx-wrap .zx-flow + .nor-c {margin-top:1.5rem;}
@media (max-width:1024px) {
  .zx-flow {flex-direction: column; gap:2rem;}
  .zx-flow > li {min-height:auto;}
  .zx-flow > li + li:before {left:50%; top:-1rem; transform: translate(-50%, calc(-50% - 0.375rem)) rotate(135deg);}
  .zx-flow.st-small {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:0.75rem;}
  .zx-flow.st-small > li + li:before {display: none;}
}


/*** 수술 과정 STEP 도식 ***/
.zx-step-map {padding:3.125rem 2.5rem 3.75rem; background:#f8f6f4; border-radius:1rem;}
.zx-wrap .nor-c + .zx-step-map {margin-top:1.875rem;}
.zx-step-map .map-tt {display: block; margin-bottom:2.5rem; text-align: center; font-size:1.625rem; font-weight: 700; color:#222; letter-spacing: -0.025em;}
.zx-step-map .map {display: grid; grid-template-columns: repeat(5, 8.5rem); justify-content: center; column-gap:4.375rem; row-gap:3rem;}
.zx-step-map .map > li {position:relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap:0.625rem; height:8.5rem; padding:0.5rem; text-align: center; background:#fff; border:1px solid #e47312; border-radius:0.75rem; box-sizing: border-box;}
.zx-step-map .map > li .num {display: inline-flex; align-items: center; padding:0 0.75rem; height:1.625rem; font-size:0.875rem; font-weight: 700; color:#fff; background:#e47312; border-radius:999px;}
.zx-step-map .map > li .t {font-size:1.125rem; font-weight: 500; color:#222; line-height: 1.4; word-break: keep-all;}
.zx-step-map .map > li:after {content:''; display: block; position:absolute; border-top:1px dashed #e47312;}
.zx-step-map .map > li.first {background:#887d77; border-color:#887d77;}
.zx-step-map .map > li.first .num {color:#887d77; background:#fff;}
.zx-step-map .map > li.last {background:#e47312;}
.zx-step-map .map > li.last .num {color:#e47312; background:#fff;}
.zx-step-map .map > li.first .t,
.zx-step-map .map > li.last .t {font-weight: 700; color:#fff;}
@media (min-width:1025px) {
  .zx-step-map .map > li:nth-child(-n+4):after {left:100%; top:50%; width:4.375rem;}
  .zx-step-map .map > li:nth-child(5):after {left:50%; top:100%; width:0; height:3rem; border-top:none; border-left:1px dashed #e47312;}
  .zx-step-map .map > li:nth-child(6) {grid-row:2; grid-column:5;}
  .zx-step-map .map > li:nth-child(7) {grid-row:2; grid-column:4;}
  .zx-step-map .map > li:nth-child(8) {grid-row:2; grid-column:3;}
  .zx-step-map .map > li:nth-child(9) {grid-row:2; grid-column:2;}
  .zx-step-map .map > li:nth-child(n+6):nth-child(-n+8):after {right:100%; top:50%; width:4.375rem;}
  .zx-step-map .map > li:nth-child(9):after {display: none;}
}
@media (max-width:1339px) {
  .zx-step-map {padding:2.5rem 1.25rem;}
  .zx-step-map .map {grid-template-columns: repeat(5, 7.5rem); column-gap:2.5rem;}
  .zx-step-map .map > li {height:7.5rem;}
  .zx-step-map .map > li .t {font-size:1rem;}
}
@media (min-width:1025px) and (max-width:1339px) {
  .zx-step-map .map > li:nth-child(-n+4):after,
  .zx-step-map .map > li:nth-child(n+6):nth-child(-n+8):after {width:2.5rem;}
}
@media (max-width:1024px) {
  .zx-step-map .map {grid-template-columns: repeat(3, minmax(0, 1fr)); gap:1rem;}
  .zx-step-map .map > li:after {display: none;}
}
@media (max-width:460px) {
  .zx-step-map .map {grid-template-columns: repeat(2, minmax(0, 1fr)); gap:0.625rem;}
  .zx-step-map .map > li {height:6.5rem;}
  .zx-step-map .map > li .t {font-size:0.9375rem;}
}


/*** 비용 흐름 도식 ***/
.zx-cost-dia {padding:3.75rem 1.875rem; background:#f8f6f4; border-radius:1rem; text-align: center;}
.zx-cost-dia .dia-tt {display: block; font-size:1.625rem; font-weight: 700; color:#222; letter-spacing: -0.025em;}
.zx-cost-dia .arw {display: block; margin:0.5rem auto; width:0.875rem; height:0.875rem; border-right:2px solid #c9bdb5; border-bottom:2px solid #c9bdb5; transform: translateY(-0.25rem) rotate(45deg);}
.zx-wrap .ls-typ + .zx-cost-dia {margin-top:1.875rem;}
.zx-cost-dia .factor {position:relative; display: flex; justify-content: center; gap:0.625rem; padding-bottom:2.8125rem;}
.zx-cost-dia .factor > li {position:relative; flex:none; display: flex; align-items: center; justify-content: center; width:9.375rem; height:4.125rem; font-size:1.25rem; color:#222; background:#fff; border:1px solid #cdcdcd; border-radius:0.75rem; box-sizing: border-box;}
.zx-cost-dia .factor > li:not(:last-child):after {content:''; display: block; position:absolute; left:50%; top:100%; width:calc(10rem + 1px); height:1.25rem; border:1px solid #cdcdcd; border-top:none; border-radius:0 0 0.75rem 0.75rem; box-sizing: border-box;}
.zx-cost-dia .factor:after {content:''; display: block; position:absolute; left:50%; bottom:0; width:1px; height:1.5625rem; background:#cdcdcd;}
.zx-cost-dia .box {display: flex; align-items: center; justify-content: center; margin:0 auto; width:16.75rem; min-height:6.25rem; padding:1rem; font-size:1.25rem; font-weight: 700; color:#222; line-height: 1.5; background:#f0f0f0; border:1px solid #cdcdcd; border-radius:0.75rem; box-sizing: border-box; word-break: keep-all;}
.zx-cost-dia .factor + .box {border-top-left-radius:0.75rem;}
.zx-cost-dia .split {position:relative; display: flex; justify-content: center; gap:1.125rem; padding-top:2.8125rem;}
.zx-cost-dia .split:before {content:''; display: block; position:absolute; left:50%; top:0; width:1px; height:1.125rem; background:#cdcdcd;}
.zx-cost-dia .split:after {content:''; display: block; position:absolute; left:calc(50% - 4.46875rem); top:1.125rem; width:8.9375rem; height:1.6875rem; border:1px solid #cdcdcd; border-bottom:none; border-radius:0.75rem 0.75rem 0 0; box-sizing: border-box;}
.zx-cost-dia .split > li {position:relative; display: flex; align-items: center; justify-content: center; width:7.8125rem; height:2.5rem; font-size:1.25rem; color:#fff; background:#887d77; border-radius:999px;}
.zx-cost-dia .split > li:before {content:''; display: block; position:absolute; left:50%; top:-0.1875rem; margin-left:-0.1875rem; width:0.375rem; height:0.375rem; background:inherit; border-radius:50%;}
.zx-cost-dia .split > li.navy {background:#2f4f76;}
@media (max-width:1339px) {
  .zx-cost-dia {padding:2.5rem 1.25rem;}
  .zx-cost-dia .factor {flex-wrap: wrap; max-width:29.375rem; margin:0 auto; padding-bottom:1.375rem;}
  .zx-cost-dia .factor > li:not(:last-child):after {display: none;}
  .zx-cost-dia .factor:after {height:1.375rem;}
  .zx-cost-dia .factor > li {width:calc((100% - 1.25rem) / 3); max-width:9.375rem; height:3.25rem; font-size:1.0625rem;}
  .zx-cost-dia .box {font-size:1.125rem;}
  .zx-cost-dia .split > li {font-size:1.0625rem;}
}
@media (max-width:460px) {
  .zx-cost-dia .factor > li {width:calc((100% - 0.625rem) / 2);}
  .zx-cost-dia .box {width:100%;}
}


/*** 주황 체크 카드 (응급 증상) ***/
.box-bg-color.side-icon.zx-bg-orange {background-color:#fdf4ec;}


/*** 위치 안내 ***/
.zx-loc-tit {text-align: center;}
.zx-loc-tit .addr {display: block; font-size:2rem; font-weight: 700; color:#222; letter-spacing: -0.025em;}
.zx-loc-tit .name {display: inline-flex; align-items: center; gap:0.625rem; margin-top:0.5rem; font-size:2rem; font-weight: 700; color:#e47312; letter-spacing: -0.025em;}
.zx-loc-tit .name img {display: block; width:2.0625rem;}
.zx-loc-tit + .map-iframe {margin-top:2.5rem;}
@media (max-width:1339px) {
  .zx-loc-tit .addr {font-size:1.5rem;}
  .zx-loc-tit .name {font-size:1.5rem;}
  .zx-loc-tit .name img {width:1.5625rem;}
}
@media (max-width:768px) {
  .zx-loc-tit .name {display: block; word-break: keep-all;}
  .zx-loc-tit .name img {display: inline-block; margin-right:0.375rem; vertical-align: middle;}
}
.zx-wrap .nor-c + .zx-loc-info {margin-top:1.875rem;}
.zx-loc-info {display: flex; padding:2.5rem 0; background:#f8f6f4; border-radius:1rem;}
.zx-loc-info > li {flex:1; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap:1.5rem; padding:0 1.875rem; text-align: center;}
.zx-loc-info > li + li {border-left:1px solid #ddd;}
.zx-loc-info > li .icon img {display: block; height:2.625rem;}
.zx-loc-info > li .nor-c {font-weight: 700; word-break: keep-all;}
@media (max-width:768px) {
  .zx-loc-info {flex-direction: column; padding:0 1.25rem;}
  .zx-loc-info > li {padding:1.875rem 0;}
  .zx-loc-info > li + li {border-left:none; border-top:1px solid #ddd;}
}
.zx-notice-box {display: flex; gap:1.25rem; padding:1.875rem 2.5rem; color:#fff; background:#887d77; border-radius:1rem;}
.zx-notice-box .icon {flex:none;}
.zx-notice-box .icon img {display: block; width:2.1875rem;}
.zx-notice-box .tt {display: block; margin-bottom:0.375rem; font-size:1.125rem; font-weight: 700; color:#f8b07a;}
.zx-notice-box .ls-typ.dot > li > .mark {color:#fff;}
.zx-notice-box .ls-typ.dot > li > .mark:before {background-color:#fff;}
@media (max-width:1339px) {
  .zx-notice-box {padding:1.5rem 1.25rem; gap:0.75rem;}
  .zx-notice-box .icon img {width:1.75rem;}
}


/*** 연락처 ***/
.zx-contact .strong-tt {display: block; margin-top:1.875rem; margin-bottom:0.5rem; color:#e47312;}
.zx-contact .nor-c + .strong-tt {margin-top:2.1875rem;}


/*** 센터장 인사말 ***/
.zx-wrap.greeting .dulh-greeting-wrap .greeting-maincon .hd3-tt,
.zx-wrap.greeting .dulh-greeting-wrap .greeting-subcon {width:calc(100% - 30rem);}
.zx-wrap.greeting .dulh-greeting-wrap .hd3-tt strong,
.zx-wrap.greeting .dulh-greeting-wrap .greeting-subcon .nor-c {word-break: keep-all;}
.zx-wrap.greeting .dulh-greeting-wrap .greeting-subcon .nowrap {white-space: nowrap;}
.zx-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .photo-box img {display: block; width:26.875rem; max-width:100%; height:auto;}
.zx-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con {margin-top:1.25rem; margin-right:0;}
@media (max-width:1339px) {
  .zx-wrap.greeting .dulh-greeting-wrap .greeting-maincon .hd3-tt,
  .zx-wrap.greeting .dulh-greeting-wrap .greeting-subcon {width:100%;}
  .zx-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .photo-box img {width:20rem; margin:0 auto;}
  .zx-wrap.greeting .dulh-greeting-wrap .greeting-maincon .profile-photo .profile-con {margin-top:0.625rem;}
}
