/* CSS Document 
Theme Name: Fullpage Card Animation
Description: 
*/

/*--------------------------------------------------------------------------------*/
/*--------------------------------- FONT STYLES ----------------------------------*/
/*--------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------*/
/*------------------------------------ Basic -------------------------------------*/
/*--------------------------------------------------------------------------------*/

html {
  -webkit-font-smoothing: antialiased;
  font-size: 16px;
}
body {
  background-color: #fff;
  letter-spacing: -0.5px;
}

body,
td,
form,
input,
select,
textarea {
  font-size: 16px;
  font-family: 'NanumSquare', '돋움', 'Open Sans', sans-serif;
}

a:link {
  color: #333;
  text-decoration: none;
}
a:visited {
  color: #333;
  text-decoration: none;
}
a:hover {
  color: #333;
  text-decoration: none;
}
a:active {
  color: #333;
  text-decoration: none;
}
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}
img {
  max-width: 100%;
}

body {
  font-family: 'NanumSquare', '돋움', Dotum, '돋움체';
  margin: 0;
  padding: 0;
  overflow: hidden;
}

/*--------------------------------------------------------------------------------*/
/*----------------------------------- ANIMATION ----------------------------------*/
/*--------------------------------------------------------------------------------*/

.blinking {
  -webkit-animation: blink 0.8s ease-in-out infinite alternate;
  -moz-animation: blink 0.8s ease-in-out infinite alternate;
  animation: blink 0.8 ease-in-out infinite alternate;
}
@-webkit-keyframes blink {
  0% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes blink {
  0% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink {
  0% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}

.blinking50 {
  -webkit-animation: blink 0.8s ease-in-out infinite alternate;
  -moz-animation: blink 0.8s ease-in-out infinite alternate;
  animation: blink 0.8 ease-in-out infinite alternate;
}
@-webkit-keyframes blink50 {
  0% {
    opacity: 0.9;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes blink50 {
  0% {
    opacity: 0.9;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink50 {
  0% {
    opacity: 0.9;
  }
  100% {
    opacity: 1;
  }
}

.flash {
  animation-name: flash;
  animation-duration: 1s;
  animation-iteration-count: infinite;
}
@keyframes flash {
  0% {
    filter: brightness(1.1);
    -webkit-filter: brightness(1.1);
  }
  100% {
    filter: brightness(1);
    -webkit-filter: brightness(1);
  }
}

.slide {
  animation: slide;
  animation-duration: 1s;
}
@keyframes slide {
  0% {
    left: 30%;
  }
  100% {
    left: 36%;
  }
}

.zoomInCustom {
  animation-name: zoomInCustom;
  animation-duration: 0.5s;
}
@keyframes zoomInCustom {
  0% {
    transform: scale(0.5);
    -webkit-transform: scale(0.5);
  }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

.zoomInCustom50 {
  animation-name: zoomInCustom;
  animation-duration: 0.25s;
}
@keyframes zoomInCustom {
  0% {
    transform: scale(0.9);
    -webkit-transform: scale(0.9);
  }
  50% {
    transform: scale(1.025);
    -webkit-transform: scale(1.025);
  }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

.zoomOutCustom {
  animation-name: zoomOutCustom;
  animation-duration: 0.5s;
}
@keyframes zoomOutCustom {
  0% {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
  }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

.bottomToTop {
  animation: bottomToTop;
  animation-duration: 1s;
}
@keyframes bottomToTop {
  0% {
    bottom: -100px;
    height: 0%;
  }
  100% {
    bottom: 0;
    height: 100%;
  }
}

.bottomToTop50 {
  animation: bottomToTop50;
  animation-duration: 0.5s;
}
@keyframes bottomToTop50 {
  0% {
    top: 10%;
    height: 0%;
  }
  100% {
    top: 4%;
    height: 100%;
  }
}

.leftToRight {
  animation: leftToRight;
  animation-duration: 1s;
}
@keyframes leftToRight {
  0% {
    width: 0%;
  }
  100% {
    width: 92%;
  }
}

.topToBottom {
  animation: topToBottom;
  animation-duration: 1.5s;
}

.topToBottom2 {
  animation: topToBottom2;
  animation-duration: 1.5s;
}

@keyframes topToBottom2 {
  0% {
    top: -5%;
    height: 0%;
    opacity: 0;
  }
  100% {
    top: 0%;
    height: 88%;
    opacity: 1;
  }
}

.topToBottom50 {
  animation: topToBottom;
  animation-duration: 0.5s;
}
@keyframes topToBottom {
  0% {
    top: 0%;
    height: 88%;
    opacity: 0;
  }
  100% {
    top: 4%;
    height: 88%;
    opacity: 1;
  }
}

.bobble {
  -webkit-animation: bobble 0.8s ease-in-out infinite alternate;
  -moz-animation: bobble 0.8s ease-in-out infinite alternate;
  animation: bobble 0.8 ease-in-out infinite alternate;
}
@keyframes bobble {
  0% {
    transform: translateY(8%);
    animation-timing-function: ease-out;
  }
  50% {
    transform: translateY(11%);
    animation-timing-function: ease-out;
  }
  100% {
    transform: translateY(8%);
  }
}

.rotate {
  animation: rotate;
  animation-duration: 0.5s;
}
@keyframes rotate {
  0% {
    transform: rotate(-15deg);
    animation-timing-function: ease-out;
  }
  100% {
    transform: rotate(0deg);
  }
}

.bounce {
  animation: bounce;
  animation-duration: 1s;
  animation-iteration-count: infinite;
}
@keyframes bounce {
  0% {
    top: 0;
    animation-timing-function: ease-out;
  }
  50% {
    top: -5px;
  }
  70% {
    top: -20px;
  }
  100% {
    top: 0;
  }
}

/*--------------------------------------------------------------------------------*/
/*------------------------------------ LOADING -----------------------------------*/
/*--------------------------------------------------------------------------------*/

.not-mobile {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background-color: #ffffff;
  font-size: 24px;
  line-height: 1.5;
  left: 0;
  top: 0;
  display: none;
  font-family: 'Hana';
  text-align: center;
  font-weight: 300;
}
.not-mobile .not-mobile-wrap {
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.not-mobile .not-mobile-wrap p {
  margin-bottom: 30px;
}
html,
body {
  position: fixed;
  width: 100vw;
  height: 100%;
}
.loading-screen {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 99;
  background-color: #fff;
  width: 100%;
  height: 100%;
  z-index: 99;
}
.legal {
  font-family: 'Hana';
  font-weight: 700;
  font-size: 2vw;
  text-align: center;
  position: absolute;
  width: 100%;
  bottom: 20px;
  left: 0;
}
.legal > * {
  display: inline-block;
  vertical-align: middle;
}
.legal > span {
  margin-right: 1vw;
}
.legal img {
  width: 9vw;
}
.loading-screen .loading {
  position: relative;
  top: 40%;
  transform: translateY(-50%);
  text-align: center;
  font-family: 'Hana';
  font-size: 5vw;
  font-weight: 900;
  letter-spacing: 1px;
}
.loading-screen .loading .number {
  margin-top: 10px;
  color: #0d796c;
}
.progress-outer {
  position: relative;
  top: 40%;
  transform: translateY(-50%);
  text-align: center;
}
.progress {
  width: 50%;
  height: 100%;
  background-color: #0d796c;
}
.loading .img-area {
  position: relative;
  margin: 0 auto;
  margin-bottom: 20px;
  background-repeat: no-repeat;
  animation: loadingAnim 10s 1s infinite;
  background-size: cover;
}
.loading .img-area > img:not(:last-child) {
  width: 100%;
  position: absolute;
  opacity: 0;
  left: -9999px;
}
.loading .img-area > img:last-child {
  width: 100%;
  position: static;
}
@keyframes loadingAnim {
  100% {
    background-image: url('./images/logo.png');
  }
}

.not-vert {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: #ffffff;
  z-index: 999;
  display: none;
}
.not-vert .not-vert-wrap {
  text-align: center;
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Hana';
  line-height: 1.5;
  font-size: 3.5vw;
  font-weight: 300;
}
.not-vert .not-vert-wrap p {
  margin-bottom: 20px;
}
.not-vert .not-vert-wrap img {
  width: 20vw;
}

/*--------------------------------------------------------------------------------*/
/*----------------------------------- CONTENTS -----------------------------------*/
/*--------------------------------------------------------------------------------*/

#fullpage {
  position: relative;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  visibility: visible;
}
.anim_init {
  visibility: hidden;
}
#page_base {
  height: 100vh;
  width: 100vw;
}
#page_inner_base {
  height: 100vh;
  background-color: #e0eff9;
  text-align: center;
  width: 100vw;
}
#page_header {
  height: 10%;
  vertical-align: middle;
  position: absolute;
  text-align: center;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 98;
  background-color: #2b68c1;
}
.header_bgcolor {
  background-color: #2b68c1;
}
#page_header_contents {
  margin: auto;
  width: 56.25vh;
  display: flex;
}
#page_header_left {
  width: 40%;
}
#page_header_logo {
  width: 100%;
  margin-top: 3%;
}
#page_header_page {
  color: #fff;
  font-size: 1rem;
  line-height: 320%;
  opacity: 0.5;
}
#page_01_main {
  background-color: #e1f0fa;
}
#page_02_main {
  background-color: #2b68c1;
}
#page_03_main {
  background-color: #2b68c1;
}
#page_04_main {
  background-color: #2b68c1;
}
#page_05_main {
  background-color: #e1f0fa;
}
#page_06_main {
  background-color: #e1f0fa;
}
#page_07_main {
  background-color: #e1f0fa;
}
#page_08_main {
  background-color: #2b68c1;
}
#page_09_main {
  background-color: #2b68c1;
}
#page_10_main {
  background-color: #e1f0fa;
}
#page_11_main {
  background-color: #e1f0fa;
}

.page_main {
  width: 100%;
  height: 100vh;
}
.page_main_sub {
  width: 100%;
  height: 100vh;
  background-position: top center;
  background-size: contain;
  background-repeat: no-repeat;
}
.page_main_sub_02 {
  width: 100%;
  height: 100vh;
  background-color: #f0f1f0;
}
.page_background {
  width: 60%;
  position: relative;
  top: 10%;
}
.page_inner_size {
  width: 100%;
  height: 100%;
  position: relative;
  margin: auto;
}
#page_02_main_img {
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
}
#page_03_main_img {
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
}
#page_04_main_img {
  width: 92%;
  position: absolute;
  top: 2%;
  left: 4%;
}
#page_05_main_img {
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
}
#page_06_main_img {
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
}
#page_07_main_img {
  width: 92%;
  position: absolute;
  top: 5%;
  left: 4%;
}
#page_08_main_img {
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
}
#page_09_main_img {
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
}

/* item */
#page_01_main_back {
  width: 76%;
  position: absolute;
  top: 11%;
  left: 12%;
}
#page_01_main_graph {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  top: 0%;
}
#page_01_main_01 {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  bottom: 0%;
  z-index: 2;
}
#page_01_main_02 {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  bottom: 0%;
}
#page_01_main_03 {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  bottom: 0%;
}
#page_01_main_04 {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  bottom: 0%;
}
#page_01_mark {
  position: absolute;
  left: 10%;
  bottom: 5%;
  width: 20%;
}
#page_01_logo {
  position: absolute;
  right: 10%;
  bottom: 5%;
  width: 20%;
}
#page_01_arrow {
  height: 1.5%;
  position: absolute;
  left: 49.25%;
  top: 94%;
}
#page_01_scroll {
  height: 1.5%;
  position: absolute;
  left: 41%;
  top: 95%;
}
#p02_graph_1 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p02_graph_01.png');
  background-repeat: no-repeat;
}
#p02_graph_2 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p02_graph_02.png');
  background-repeat: no-repeat;
}
#p02_graph_3 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p02_graph_03.png');
  background-repeat: no-repeat;
}
#p02_graph_4 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p02_graph_04.png');
  background-repeat: no-repeat;
}

#p03_graph_1 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p03_graph_01.png');
  background-repeat: no-repeat;
}
#p03_graph_2 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p03_graph_02.png');
  background-repeat: no-repeat;
}
#p03_graph_3 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p03_graph_03.png');
  background-repeat: no-repeat;
}
#p03_graph_4 {
  width: 92%;
  height: 88%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p03_graph_04.png');
  background-repeat: no-repeat;
}

#p04_table_1 {
  height: 88%;
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p04_table_1.png');
  background-repeat: no-repeat;
}
#p04_table_2 {
  height: 88%;
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p04_table_2.png');
  background-repeat: no-repeat;
}
#p04_table_3 {
  height: 88%;
  width: 92%;
  position: absolute;
  top: 4%;
  left: 4%;
  background-image: url('../images/p04_table_3.png');
  background-repeat: no-repeat;
}
#p04_table_4 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p04_table_4.png');
  background-repeat: no-repeat;
}
#p04_icon_1 {
  width: 52%;
  position: absolute;
  top: 62.5%;
  left: 24%;
}

#p05_graph {
  height: 16%;
  position: absolute;
  left: 49.5%;
  top: 46%;
}
#p05_table_1 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p05_table_1.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p05_table_2 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p05_table_2.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p05_table_3 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p05_table_3.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p05_table_4 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p05_table_4.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}

#p06_table_1 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p06_table_1.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p06_table_2 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p06_table_2.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p06_table_3 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p06_table_3.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p06_table_4 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p06_table_4.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p06_table_5 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p06_table_5.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}

#p07_table_1 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p07_table_1.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p07_table_2 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p07_table_2.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p07_table_3 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p07_table_3.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p07_table_4 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p07_table_4.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p07_table_5 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p07_table_5.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}

#p08_table_1 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p08_table_1.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p08_table_2 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p08_table_2.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p08_table_3 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p08_table_3.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p08_table_4 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p08_table_4.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p08_table_5 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p08_table_5.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}

#p09_table_1 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p09_table_1.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p09_table_2 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 9%;
  background-image: url('../images/p09_table_2.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p09_table_3 {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p09_table_3.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}

#p10_table_1 {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  bottom: 0%;
  background-image: url('../images/p10_table_1.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p10_table_2 {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  bottom: 0%;
  background-image: url('../images/p10_table_2.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p10_table_3 {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0%;
  bottom: 0%;
  background-image: url('../images/p10_table_3.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}

#p11_table {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  background-image: url('../images/p11_table.png');
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: left top;
}
#p11_bottom {
  height: 88%;
  width: 92%;
  left: 4%;
  position: absolute;
  top: 4%;
  background-image: url('../images/p11_bottom.png');
  background-repeat: no-repeat;
}
#page_11_link_1 {
  width: 25%;
  position: absolute;
  top: 34%;
  left: 15%;
  animation: bobble 2s infinite;
}
#page_11_link_2 {
  width: 25%;
  position: absolute;
  top: 34%;
  right: 15%;
  animation: bobble 2s infinite;
}
#page_11_link_1_arrow {
  width: 25%;
  position: absolute;
  top: 34%;
  left: 15%;
  animation: bobble 1s infinite;
}
#page_11_link_2_arrow {
  width: 25%;
  position: absolute;
  top: 34%;
  right: 15%;
  animation: bobble 1s infinite;
}

.all_bottom_arrow {
  height: 1.5%;
  position: absolute;
  left: 48%;
  top: 94%;
}

/* --- popup -- */
.p04_icon_all {
}
.p04_popup_all {
  width: 90%;
  position: absolute;
  top: 15%;
  left: 5%;
  display: none;
  animation: zoomInCustom 0.2s;
}
.p04_popup_item {
  width: 90%;
  position: absolute;
  top: 15%;
  left: 5%;
  display: none;
  animation: zoomInCustom 0.5s;
}
#p04_popup_control {
  width: 90%;
  height: 40%;
  position: absolute;
  top: 15%;
  right: 5%;
  display: none;
}

.popup_close {
  width: 13%;
  height: 12%;
  margin-left: 1%;
  margin-top: 2%;
  cursor: pointer;
  float: right;
}
.popup_close_btn {
  height: 100%;
}
