@charset "UTF-8";

/* Web Font CDN */
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.8/dist/web/static/pretendard.css"); /* font-family: Pretendard; */
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap"); /* font-family: 'Poppins', sans-serif; */

/********** 
COMMON - S 
**********/
html {
  scroll-behavior: smooth;
}
a {
  text-decoration: none;
  color: inherit;
}
body {
  font: 16px/1.2 "Poppins", "Pretendard", sans-serif, "돋움", Dotum, AppleGothic;
  letter-spacing: -0.5px;
}
.inner {
  max-width: 1280px;
  margin: 0 auto;
}
.hidden {
  width: 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  text-indent: -9999px;
  position: absolute;
  left: -9999px;
  overflow: hidden;
}
hr {
  display: none;
}
.skip-nav a {
  width: 100%;
  height: 40px;
  text-align: center;
  line-height: 40px;
  color: #fff;
  position: absolute;
  left: 0;
  top: -100px;
  z-index: 10000;
  background-color: #534437;
}
.skip-nav a:focus {
  top: 0;
}
.main {
  background-color: #fff;
}
body.modal-open {
  overflow: hidden;
  height: 100vh;
}
/********** 
COMMON - E 
**********/

/********** 
HEADER - S
**********/
.header {
  width: 100%;
  height: 100px;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1000;
}
.header .inner {
  display: flex;
  justify-content: space-between;
  /* justify-content: center; */
  align-items: center;
}
.header.uiux-header .inner {
  justify-content: space-between;
}
.logo {
  display: flex;
  align-items: center;
  width: 28%;
  /* height: 100%; */
  height: 100px;
}
.logo a {
  display: block;
  width: 100%;
  height: 100%;
  text-indent: -9999px;
  background-image: url(../img/logo.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
}
.gnb {
  width: 54%;
}
.gnb .gnb-btn {
  display: none;
}
.gnb-wrap {
  display: flex;
  justify-content: space-between;
  /* justify-content: center; */
}
.header.uiux-header .gnb-wrap {
  justify-content: space-between;
}
.gnb-wrap li {
  position: relative;
}
.gnb-wrap li a {
  display: block;
  height: 100px;
  padding: 0 0px;
  font-weight: 500;
  font-size: 18px;
  line-height: 100px;
  color: #777;
  z-index: 10000;
  transition: all 0.3s;
}
.gnb-wrap li a:after {
  content: "";
  width: 0%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 35px;
  opacity: 0;
  transition: all 0.3s;
  background-color: #333;
}
.gnb-wrap li a:hover {
  color: #333;
}
.gnb-wrap li a:hover:after {
  width: 100%;
  opacity: 1;
}
.header.active {
  height: 80px;
  position: fixed;
  left: 0;
  top: 0;
  background-color: #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
  transition: all 0.5s;
}
.header.active .logo {
  height: 80px;
}
.header.active .gnb-wrap li a {
  height: 80px;
  line-height: 80px;
  white-space: nowrap;
}
.header.active .gnb-wrap li a:after {
  bottom: 25px;
}
/********** 
HEADER - E 
**********/

/********** 
FOOTER - S 
**********/
.footer {
  width: 100%;
  padding: 120px 0;
  background-color: #fcfbf8;
}
.epilogue {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-bottom: 60px;
}
.epil-tit {
  margin-bottom: 20px;
  font-weight: 300;
  font-size: 50px;
  line-height: 62px;
  color: #777;
  text-align: center;
  animation: opa 0.7s linear both;
  opacity: 0;
}
.epil-tit span {
  font-weight: 600;
  color: #333;
  position: relative;
  z-index: 1;
}
.epil-tit span::after {
  content: "";
  display: block;
  width: 0%;
  height: 14px;
  position: absolute;
  left: 0;
  bottom: 18px;
  z-index: -1;
  background-color: #97b5ed;
  transition: all 0.5s;
}
.footer:hover .epil-tit span::after {
  width: 100%;
}
.epil-desc {
  width: 55%;
  font-size: 20px;
  line-height: 36px;
  color: #333;
  text-align: center;
  opacity: 0;
  animation: opa 0.5s linear both;
}
.copy {
  font-size: 14px;
  line-height: 28px;
  color: #bbb;
  text-align: center;
  animation: opa 0.5s linear both;
}
/********** 
FOOTER - E
**********/

/* GO to TOP - S */
.gototop {
  width: 80px;
  height: 80px;
  position: fixed;
  right: 40px;
  bottom: 60px;
  z-index: 10;
  opacity: 0;
  transition: all 0.5s;
}
.gototop a {
  display: block;
  width: inherit;
  height: inherit;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.5);
  background-image: url(../img/goto-top-02.png);
  background-repeat: no-repeat;
  background-size: cover;
  animation: rot 10s linear infinite;
  position: relative;
}
.gototop::before {
  content: "";
  display: block;
  width: 12px;
  height: 30px;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 10;
  background-image: url(../img/arrow-02.png);
  background-size: cover;
  background-repeat: no-repeat;
  transform: translate(-50%, -50%);
  cursor: pointer;
}
/* .gototop:hover::before{animation: up 2s infinite;} */
.gototop.active {
  bottom: 40px;
  opacity: 0.8;
}
@keyframes rot {
  0% {
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes width {
  100% {
    width: 100%;
  }
}
@keyframes opa {
  100% {
    opacity: 1;
  }
}
/* GO to TOP - E */

/* MODAL- S */
.modal-overlay {
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000000000;
}
.modal {
  display: flex;
  flex-direction: column;
  /* justify-content: space-between; */
  align-items: center;
  width: 300px;
  padding: 40px 20px 50px 20px;
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 1000000000;
  transform: translate(-50%, -50%);
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 12px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.12);
  cursor: default;
  /* opacity: 0; */
  /* animation: opa 0.5s linear 4s both; */
}
.modal-overlay.active {
  display: flex;
}
.modal .modal-icon {
  width: 30px;
  height: 40px;
  font-size: 28px;
  line-height: 40px;
  color: #9cb8ec;
}
.modal h4 {
  color: #555;
  margin-bottom: 10px;
  text-align: center;
}
.modal p {
  font-size: 17px;
  line-height: 24px;
  color: #333;
  text-align: center;
  margin-bottom: 30px;
}
.modal p.notice {
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 20px;
}
.modal p span {
  opacity: 0.8;
}
.modal p strong {
  font-weight: bold;
}
.modal-close-btn {
  width: 30px;
  height: 30px;
  font-size: 20px;
  line-height: 20px;
  color: #333;
  cursor: pointer;
  position: absolute;
  top: 30px;
  right: 0;
  border-radius: 50%;
  text-align: center;
  line-height: 30px;
  transform: translate(-50%, -50%);
}

.modal-heart {
  display: block;
  margin-bottom: 10px;
}

/* MODAL- E */





/* FEATHERLIGHT 설정 - S */
.featherlight.fullscreen-pdf {
    background: rgba(0, 0, 0, 0.95);
}
.featherlight.fullscreen-pdf .featherlight-content {
    width: 100vw !important;
    height: 100vh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}
.featherlight.fullscreen-pdf .featherlight-content iframe {
    width: 100% !important;
    height: 100% !important;
    border: none !important;
}
/* FEATHERLIGHT 설정 - E */
