@charset "UTF-8";
/* 헤더 */
#hd.fix:before,
#hd.scroll:before {
  opacity: 1;
  transition: 0.5s linear;
}

#hd.login {
  display: none;
}

/* 푸터 */
#ft {
  position: relative;
  background-color: #f8f8f8;
  text-align: center;
  letter-spacing: -0.0225em;
}
#ft.index_ft::before {
  background-color: #f4f4f4;
}
#ft::before {
  content: "";
  display: block;
  width: 100%;
  height: 9.375em;
  background-image: url(../img/pattern-0613.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-color: #fff;
  background-size: cover;
}
@media screen and (max-width: 1000px) {
  #ft::before {
    height: 8em;
    background-size: cover;
  }
}
#ft #ft_wr {
  padding: 5.1875em 0;
  position: relative;
  display: block;
  text-align: left;
  line-height: 1.5;
}
@media screen and (max-width: 1000px) {
  #ft #ft_wr {
    text-align: center;
  }
}
#ft #ft_catch {
  display: inline-block;
  width: 225px;
  margin-right: 7em;
  vertical-align: middle;
}
@media screen and (max-width: 1000px) {
  #ft #ft_catch {
    display: block;
    margin: 0 auto 2em;
  }
}
#ft #ft_catch img {
  max-width: 100%;
}
#ft #ft_right {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (max-width: 1000px) {
  #ft #ft_right {
    display: block;
  }
}
#ft #ft_link {
  display: block;
  text-align: left;
}
#ft #ft_link a {
  display: inline-block;
  margin-right: 0.8em;
  line-height: 2em;
  font-weight: 600;
  color: #555;
}
#ft .ft_info {
  font-size: 1.125em;
  color: #888;
}
#ft .ft_contact {
  color: #666;
  font-size: 1.25em;
  font-weight: 500;
}
#ft .ft_contact strong {
  font-weight: 500;
}
#ft .ft_contact span:first-child {
  position: relative;
}
#ft .ft_contact span:first-child::after {
  content: "|";
  display: inline-block;
  margin: 0 0.5em;
  color: #ccc;
  font-weight: 100;
}
#ft #ft_copy {
  margin-top: 2.2em;
  color: #888;
  letter-spacing: -0.03em;
  font-size: 1.125em;
  font-family: "Pretendard", dotum, sans-serif;
  font-weight: 400;
}
#ft #ft_copy b {
  font-weight: 600;
  font-family: "Pretendard", dotum, sans-serif;
}

/* INDEX */
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes spinR {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-180deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
@keyframes go {
  0% {
    transform: translateX(0em);
  }
  50% {
    transform: translateX(0.5em);
  }
  90% {
    transform: translateX(0.1em);
  }
}
.index#wrapper {
  padding-top: 0;
}

#main-visual {
  padding-bottom: 56.25%;
}
@media screen and (max-width: 1250px) {
  #main-visual {
    padding-bottom: 56.25%;
  }
}
@media screen and (max-width: 768px) {
  #main-visual {
    padding-bottom: 80%;
  }
}
#main-visual .main-slide-wrap {
  position: fixed;
  width: 100%;
  height: 56.25%;
}
@media screen and (max-width: 1250px) {
  #main-visual .main-slide-wrap {
    height: 56.25%;
  }
}
@media screen and (max-width: 768px) {
  #main-visual .main-slide-wrap {
    height: 80%;
  }
}
#main-visual .mslide {
  position: relative;
}
#main-visual .mslide.mslide02 {
  background-image: url(../img/mslide01-bg.png);
  background-size: cover;
  background-position: right bottom;
}
@media screen and (max-width: 1250px) {
  #main-visual .mslide.mslide02 {
    background-position: 60% bottom;
  }
}
@media screen and (max-width: 768px) {
  #main-visual .mslide.mslide02 {
    background-position: 50% bottom;
  }
}
#main-visual .mslide.mslide02 img {
  position: relative;
  left: 15%;
  top: 50%;
  height: 340px;
  max-height: 56.25%;
  width: auto;
}
@media screen and (max-width: 1250px) {
  #main-visual .mslide.mslide02 img {
    left: 8%;
    height: 280px;
  }
}
@media screen and (max-width: 768px) {
  #main-visual .mslide.mslide02 img {
    transform: translateY(-50%);
  }
}
#main-visual .mslide .mslide-wrap {
  overflow: hidden;
  padding-top: 56.25%;
}
@media screen and (max-width: 1250px) {
  #main-visual .mslide .mslide-wrap {
    padding-top: 56.25%;
  }
}
@media screen and (max-width: 768px) {
  #main-visual .mslide .mslide-wrap {
    padding-top: 80%;
  }
}
#main-visual .mslide .mslide-in {
  overflow: hidden;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  #main-visual .mslide .mslide-in {
    height: 100%;
  }
}
#main-visual .mslide video {
  width: 100%;
  transform: translateY(0%);
}
@media screen and (max-width: 1250px) {
  #main-visual .mslide video {
    transform: translateY(0);
  }
}
@media screen and (max-width: 768px) {
  #main-visual .mslide video {
    width: auto;
    height: 100%;
    transform: translateX(-25%);
  }
}

.main-title {
  margin-top: 3.5em;
  text-align: center;
  text-transform: uppercase;
  font-size: 2.47em;
  font-weight: 400;
}
.main-title span {
  position: relative;
  line-height: 1.2;
}
.main-title span::before {
  content: "";
  display: block;
  position: absolute;
  animation: spin 10s linear infinite;
}

.main-des {
  margin-top: 1em;
  text-align: center;
  font-size: 1.25em;
  color: #4c4c4c;
}

#main-source,
#main-pp {
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding-bottom: 13em;
}
#main-source ul,
#main-pp ul {
  display: flex;
  justify-content: space-between;
  margin-top: 4em;
}
#main-source ul li,
#main-pp ul li {
  width: 32%;
}

#main-source {
  background-color: #fff;
}
#main-source .main-title span::before {
  left: -0.6em;
  top: -0.3em;
  width: 1.125em;
  height: 1.125em;
  z-index: -1;
  border-radius: 10px;
  background-color: rgba(189, 204, 239, 0.4);
}
#main-source ul {
  position: relative;
}
@media screen and (max-width: 1000px) {
  #main-source ul {
    flex-direction: column;
  }
}
#main-source ul::after {
  content: "";
  display: block;
  position: absolute;
  right: -4em;
  bottom: -4em;
  width: 10em;
  height: 10em;
  z-index: -1;
  border-radius: 3em;
  background-color: rgba(189, 204, 239, 0.4);
  animation: spinR 20s linear infinite;
}
#main-source ul li {
  height: 30em;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
}
@media screen and (max-width: 1250px) {
  #main-source ul li {
    background-size: cover;
  }
}
@media screen and (max-width: 1000px) {
  #main-source ul li {
    height: 230px;
    width: 100%;
    margin-bottom: 2em;
  }
}
@media screen and (min-width: 1001px) {
  #main-source ul li:hover {
    background-size: 105%;
    transition: background-size 1s 0.2s;
  }
}
@media screen and (min-width: 1001px) and (max-width: 1250px) {
  #main-source ul li:hover {
    background-size: 120%;
  }
}
@media screen and (min-width: 1001px) {
  #main-source ul li:hover a {
    background-color: transparent;
    transition: all 1s;
  }
  #main-source ul li:hover a img {
    opacity: 0;
    transition: opacity 0.5s;
  }
}
#main-source ul li:nth-child(1) {
  background-image: url(../img/source01.png);
}
#main-source ul li:nth-child(2) {
  background-image: url(../img/source02.png);
}
#main-source ul li:nth-child(3) {
  background-image: url(../img/source03.png);
}
#main-source ul li a {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.3);
}
#main-source ul li a img {
  width: 90%;
}
@media screen and (max-width: 1000px) {
  #main-source ul li a img {
    width: auto;
    height: 50%;
  }
}
@media screen and (max-width: 640px) {
  #main-source ul li a img {
    width: 50%;
    height: auto;
  }
}

#main-pp {
  background-color: #f4f4f4;
}
#main-pp .main-title span::before {
  width: 2em;
  height: 2em;
  left: -1em;
  top: -1em;
  background-image: url(../img/circle.png);
  background-image: -webkit-image-set(url(../img/circle.png) 1x, url(../img/circle@2x.png) 2x, url(../img/circle@3x.png) 3x);
  background-size: cover;
  animation: spin 30s linear infinite;
}
@media screen and (max-width: 900px) {
  #main-pp ul {
    display: block;
    text-align: center;
    text-align: left;
  }
}
@media screen and (max-width: 900px) {
  #main-pp ul li {
    display: inline-block;
    width: 52%;
    margin-bottom: 2em;
  }
  #main-pp ul li:nth-child(2) {
    float: right;
  }
}
@media screen and (max-width: 640px) {
  #main-pp ul li {
    width: auto;
  }
  #main-pp ul li:nth-child(2) a {
    justify-content: flex-end;
  }
}
#main-pp ul li a {
  display: flex;
  text-align: left;
}
@media screen and (max-width: 640px) {
  #main-pp ul li a .left {
    width: 40%;
  }
}
#main-pp ul li a .left img {
  min-width: 220px;
}
@media screen and (max-width: 1250px) {
  #main-pp ul li a .left img {
    min-width: 0;
  }
}
#main-pp ul li a .right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-left: 0.8em;
}
#main-pp ul li a .right img {
  width: 3.75em;
}
#main-pp ul li a .right .pp-banner-title span {
  display: inline-block;
  position: relative;
  font-size: 1.125em;
  font-weight: 600;
  line-height: 1.4;
}
#main-pp ul li a .right .pp-banner-title span::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 2px;
  left: 0;
  bottom: 1px;
  transform: scaleX(0);
  transition: transform 0.4s ease-in-out;
}
#main-pp ul li a .right .pp-banner-apply {
  font-size: 1.2em;
  color: #4c4c4c;
}
#main-pp ul li a .right .arrow {
  display: flex;
  width: 2.6em;
  height: 2.6em;
  border: 2px solid #888;
  border-radius: 100%;
  color: #888;
  align-items: center;
  justify-content: center;
}
#main-pp ul li:hover .right .pp-banner-title span::after {
  transform: scaleX(1);
}
#main-pp ul li:hover .right .arrow {
  animation: go 1s linear infinite;
}
#main-pp ul li:nth-child(1):hover .pp-banner-title span {
  color: #a0125e;
}
#main-pp ul li:nth-child(1):hover .pp-banner-title span::after {
  background-color: #a0125e;
}
#main-pp ul li:nth-child(2):hover .pp-banner-title span {
  color: #002d74;
}
#main-pp ul li:nth-child(2):hover .pp-banner-title span::after {
  background-color: #002d74;
}
#main-pp ul li:nth-child(3):hover .pp-banner-title span {
  color: #f5acb8;
}
#main-pp ul li:nth-child(3):hover .pp-banner-title span::after {
  background-color: #f5acb8;
}

/* 회원가입 */
.register {
  padding: 5em 0 8em;
}

.register-title {
  text-align: center;
}
.register-title.modifiy-title {
  margin-bottom: 5em;
}
.register-title h2 {
  margin-top: 1em;
  font-size: 2.4em;
  font-weight: 500;
}
.register-title h2 span::before {
  left: -0.6em;
  top: -0.3em;
  width: 1.125em;
  height: 1.125em;
  z-index: -1;
  border-radius: 10px;
  background-color: rgba(189, 204, 239, 0.4);
}
.register-title p {
  margin: 2em 0 3em;
  font-size: 1.18em;
  line-height: 1.4;
  font-weight: 500;
  color: #4c4c4c;
}
.register-title .process-wrap {
  display: inline-block;
  margin: 0 auto 3em;
}
.register-title .process-wrap ul {
  display: flex;
  position: relative;
  text-align: center;
  flex-direction: row;
}
.register-title .process-wrap ul::after {
  content: "";
  position: absolute;
  width: 160vw;
  height: 1px;
  right: -35vw;
  top: 50%;
  z-index: -1;
  background-color: #ddd;
}
.register-title .process-wrap ul li {
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: 146px;
  height: 146px;
  margin: 0 1em;
  border: 1px solid #ddd;
  border-radius: 50%;
  background-color: #fff;
  color: #666;
}
@media screen and (max-width: 768px) {
  .register-title .process-wrap ul li {
    width: 130px;
    height: 130px;
  }
}
@media screen and (max-width: 640px) {
  .register-title .process-wrap ul li {
    width: 110px;
    height: 110px;
    margin: 0 0.5em;
  }
}
@media screen and (max-width: 450px) {
  .register-title .process-wrap ul li {
    width: 100px;
    height: 100px;
  }
}
.register-title .process-wrap ul li .process-item {
  display: block;
  font-size: 1.25em;
  font-weight: 500;
}
.register-title .process-wrap ul li span {
  display: block;
  margin-bottom: 0.3em;
  font-size: 0.8em;
  font-weight: 600;
  color: #9eb6e1;
}
.register-title .process-wrap ul li.on {
  border-color: #9eb6e1;
  color: #4c4c4c;
}
.register-title .process-wrap ul li.on .process-item {
  font-weight: 600;
}

/* 로그인 */
.login #wrapper {
  padding-top: 0;
}

.login-wrap {
  display: flex;
  width: 100%;
}
@media screen and (max-width: 1250px) {
  .login-wrap {
    flex-direction: column;
  }
}
.login-wrap > div {
  width: 50%;
}
@media screen and (max-width: 1250px) {
  .login-wrap > div {
    width: 100%;
  }
}
@media screen and (max-width: 900px) {
  .login-wrap .login-img {
    display: none;
  }
}

#mb-login {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding-left: 4.375em;
}
@media screen and (max-width: 1250px) {
  #mb-login {
    padding: 3em 2em 5em;
    text-align: center;
  }
}
@media screen and (max-width: 900px) {
  #mb-login {
    padding: 10em 2em;
  }
}
#mb-login h1 {
  font-size: 3em;
  line-height: 1em;
  font-weight: 400;
}
#mb-login .login-info {
  margin: 2.5em 0;
  font-size: 1.125em;
  font-weight: 500;
  color: #4c4c4c;
}
#mb-login .login-info a {
  font-weight: 700;
  text-decoration: underline;
  color: #4c4c4c;
}

/* 서브 게시판 공통 */
#sub-visual {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 200px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
}
#sub-visual.sculptra {
  background-image: url(../img/2024/sub_bn_sculptra_bg.png);
}
@media screen and (max-width: 640px) {
  #sub-visual.sculptra {
    background-position: top right;
  }
}
#sub-visual.sculptra .responsive::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 72px;
  height: 160px;
  transform: translateY(-50%);
  background-image: url(../img/2024/sub_bn_sculptra_vial.png);
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  line-height: 0;
}
@media screen and (max-width: 640px) {
  #sub-visual.sculptra .responsive::before {
    display: none;
  }
}
#sub-visual.sculptra .responsive h4 {
  position: relative;
  z-index: 2;
}
#sub-visual.sculptra .responsive h4 img {
  max-width: 215px;
}
@media screen and (max-width: 640px) {
  #sub-visual.sculptra .responsive h4 img {
    max-width: 180px;
  }
}
#sub-visual.restylane {
  background-image: url(../img/2024/sub_bn_restylane_bg.png);
}
@media screen and (max-width: 1250px) {
  #sub-visual.restylane {
    background-position: 50% center;
  }
}
#sub-visual.restylane .responsive::before {
  content: "";
  display: block;
  top: 50%;
  width: 230px;
  height: 100%;
  transform: translateY(-50%);
  background-image: url(../img/2024/restylane_sub_bn_model.png);
  background-size: 100% auto;
  background-position: center 0%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 900px) {
  #sub-visual.restylane .responsive::before {
    left: auto;
    right: -3em;
    top: 0;
    width: 200px;
    height: 200px;
    transform: translateY(0);
    background-position: top center;
  }
}
@media screen and (max-width: 640px) {
  #sub-visual.restylane .responsive::before {
    width: 35%;
  }
}
#sub-visual.restylane .responsive::after {
  content: url(../img/2024/restylane_sub_bn_model02.png);
  display: block;
  position: absolute;
  top: -4em;
  right: -3em;
}
@media screen and (max-width: 900px) {
  #sub-visual.restylane .responsive::after {
    display: none;
  }
}
#sub-visual.restylane .responsive h4 {
  position: relative;
  z-index: 2;
}
#sub-visual.restylane .responsive h4 img {
  max-width: 215px;
}
@media screen and (max-width: 640px) {
  #sub-visual.restylane .responsive h4 img {
    max-width: 180px;
  }
}
#sub-visual.dysport {
  background-image: url(../img/sv-dys-bg.png);
  background-image: -webkit-image-set(url(../img/sv-dys-bg.png) 1x, url(../img/sv-dys-bg@1.5x.png) 1.5x, url(../img/sv-dys-bg@2x.png) 2x);
}
#sub-visual.dysport .responsive::before {
  content: url(../img/sv-dys-pack01.png);
  bottom: 0em;
}
@media screen and (max-width: 1250px) {
  #sub-visual.dysport .responsive::before {
    left: 0;
  }
}
#sub-visual.dysport .responsive::after {
  content: "";
  display: block;
  position: absolute;
  right: -2em;
  bottom: 1em;
  width: 243px;
  height: 157px;
  background-image: url(../img/sv-dys-pack02.png);
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  line-height: 0;
}
@media screen and (max-width: 1250px) {
  #sub-visual.dysport .responsive::after {
    width: 180px;
  }
}
@media screen and (max-width: 640px) {
  #sub-visual.dysport .responsive::after {
    display: none;
  }
}
#sub-visual .responsive {
  position: relative;
  text-align: center;
  line-height: 200px;
}
#sub-visual .responsive::before {
  display: block;
  position: absolute;
  left: 2em;
  line-height: 0;
}

#breadcrumbs {
  border-bottom: 1px solid #bbb;
}
#breadcrumbs ul {
  display: flex;
  align-items: center;
}
#breadcrumbs ul li {
  position: relative;
  line-height: 70px;
  margin: 0 0.4em;
}
@media screen and (max-width: 768px) {
  #breadcrumbs ul li {
    line-height: 45px;
  }
}
#breadcrumbs ul li.ico {
  color: #999;
}
#breadcrumbs ul li.source a {
  color: #888;
}
#breadcrumbs ul li.brand a {
  color: #333;
}
#breadcrumbs ul li a {
  font-weight: 500;
  font-size: 1.125em;
  text-transform: capitalize;
}

#board-sort {
  padding: 6.75em 0 2.625em;
  margin-bottom: 2em;
  text-align: center;
}
#board-sort h2 {
  display: inline-block;
  position: relative;
  margin: 0 auto;
  font-size: 2.5em;
  font-weight: 400;
  text-transform: uppercase;
  line-height: 1;
}
@media screen and (max-width: 640px) {
  #board-sort h2 {
    font-size: 2em;
  }
}
#board-sort h2 strong {
  display: inline-block;
  font-weight: 400;
}
#board-sort .board-des {
  margin-top: 1em;
  font-size: 1.25em;
  color: #4c4c4c;
}
#board-sort ul {
  margin: 2em auto;
  text-align: center;
}
#board-sort ul li {
  display: inline-block;
  font-size: 1.125em;
}
@media screen and (max-width: 450px) {
  #board-sort ul li {
    width: 30%;
  }
}
#board-sort ul li a {
  display: block;
  position: relative;
  padding: 0.5em 2em;
  text-transform: uppercase;
  color: #666;
  font-weight: 500;
}
@media screen and (max-width: 450px) {
  #board-sort ul li a {
    padding: 0.5em 0;
  }
}
#board-sort ul li a::before {
  content: "";
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 7px;
  height: 7px;
  border-radius: 100%;
  background-color: #000;
}
#board-sort ul li.sort-on a {
  color: #000;
  font-weight: 700;
}
#board-sort ul li.sort-on a::before {
  display: block;
  position: absolute;
}/*# sourceMappingURL=style.css.map */