* {margin:0; padding:0; box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; word-break: keep-all;}
html,body{max-width: 100%; min-height: 100%;}
html{overflow-x: hidden; -webkit-text-size-adjust: none;}
body{-webkit-print-color-adjust:exact; background: #000D0D; font-family: 'NEXON-Lv2-Gothic', sans-serif; font-style: normal; font-size: 16px; font-weight: 300; color: #0f0f0f; line-height: 1.2; -ms-overflow-style:none; width: 100%; overflow-x: hidden;}
/* body::-webkit-scrollbar { display:none; } */
ul, li, dl,dt,dd {margin:0; padding:0; list-style:none;}
a{color:#0f0f0f; text-decoration:none;}
img {border: 0; font-size: 0; max-width: 100%; vertical-align: middle;}
h1, h2, h3, h4, h5, h6{font-size:1em; font-family: 'NEXON-Lv2-Gothic', sans-serif;}
textarea, select{font-family: 'NEXON-Lv2-Gothic', sans-serif; font-size:1em}
input, button{margin:0; padding:0; font-family: 'NEXON-Lv2-Gothic', sans-serif; font-size:1em}
input[type="submit"], button{cursor:pointer}
table, tr, td {border-collapse: collapse;}
p{word-break: keep-all;}
input{border-radius: 0;}
/* select{appearance: none; border-radius: 0; outline: none;}
select::-ms-expand {display: none;} */

/* variable */
:root {
  --main-color: #009698;
  --sub-color: #00AA8F;
  --gradient-color: linear-gradient(20deg, rgba(46,113,157,1) 0%, rgba(0,170,143,1) 55%);
  --line-color1: #00AA8F;
  --line-color2: rgba(255,255,255,0.2);
  --white-color: #ffffff;
  --black-color: #000000;
}

/* guide line */
.container {width: 100%; padding-left: 50px; padding-right: 50px;}
.wrapper {width: 1440px; max-width: 100%; margin: 0 auto;}

/* text cut */
.text_row1{white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.text_row2{white-space: normal; overflow: hidden; line-height: 1.5; max-height: 3em; text-align: left; word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.text_row3{white-space: normal; overflow: hidden; line-height: 1.2; max-height: 3.6em; text-align: left; word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;}

/* sound only */
.sound_only{display: inline-block !important; position: absolute; top: 0; left: 0; width: 0; height: 0; margin: 0 !important; padding: 0 !important; font-size: 0; line-height: 0; border: 0 !important; overflow: hidden !important;}

/* clearfix */
.cf:before,
.cf:after{content: " "; display: table;}
.cf:after{clear: both;}
.cf{*zoom: 1;}

/* column */
.i-col-0{font-size: 0;}
.i-col-1{font-size: 0;}
.i-col-2{font-size: 0;}
.i-col-3{font-size: 0;}
.i-col-4{font-size: 0;}
.i-col-5{font-size: 0;}
.i-col-6{font-size: 0;}
.i-col-7{font-size: 0;}
.i-col-8{font-size: 0;}
.i-col-9{font-size: 0;}
.i-col-10{font-size: 0;}
.i-col-11{font-size: 0;}
.i-col-12{font-size: 0;}

.i-col-0 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: auto;}
.i-col-1 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 100%;}
.i-col-2 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 50%;}
.i-col-3 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 33.333%;}
.i-col-4 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 25%;}
.i-col-5 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 20%;}
.i-col-6 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 16.666%;}
.i-col-7 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 14.285%;}
.i-col-8 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 12.5%;}
.i-col-9 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 11.111%;}
.i-col-10 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 10%;}
.i-col-11 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 9.09%;}
.i-col-12 > *{display: inline-block; font-size: 16px; vertical-align: middle; width: 8.333%;}

/* textarea */ 
.textarea{width: 100%; height: 140px; border-radius: 5px; border: 1px solid #e2e2e2; padding: 15px 18px; font-size: 16px; font-weight: 400; color: #666;}

/* input radio */
.radio_wrap input[type=radio]{display: none;}
.radio_wrap input[type=radio] + label{display: inline-block; cursor: pointer; position: relative; padding-left: 28px; font-size: 16px; font-weight: 400; color: #666;}
.radio_wrap input[type=radio] + label:before{content: ""; display: inline-block; width: 20px; height: 20px; position: absolute; left: 0; bottom: 0; z-index: 1; border: 1px solid #bbbbbb; border-radius: 50%; background-color: #fff;}
.radio_wrap input[type=radio]:checked + label:before{border-color: #0078f5;}
.radio_wrap input[type=radio]:checked + label:after{content: ""; display: inline-block; position: absolute; left: 5px; bottom: 5px; width: 10px; height: 10px; border-radius: 50%; background-color: #0078f5; z-index: 2;}

/* input checkbox */
.check_wrap input[type=checkbox]{display: none;}
.check_wrap input[type=checkbox] + label{display: inline-block; min-height: 20px; cursor: pointer; position: relative !important; padding-left: 28px !important; font-size: 14px; font-weight: 400; color: rgba(255,255,255,0.5);}
.check_wrap input[type=checkbox]+ label:before{content: ""; display: inline-block; width: 20px; height: 20px; position: absolute; left: 0; bottom: 0; z-index: 1; border: 1px solid #E6E6E6; border-radius: 4px; background: none; box-sizing: border-box;}
.check_wrap input[type=checkbox] + label:after{content: ""; display: inline-block; position: absolute; left: 4px; bottom: 6px; width: 11px; height: 7px; background: none; z-index: 2; box-sizing: border-box;}
.check_wrap input[type=checkbox]:checked + label:before{border-color: var(--main-color); background-color: var(--main-color);}
.check_wrap input[type=checkbox]:checked + label:after{background: url("/source/img/icon-check.png") no-repeat center center/11px auto;}

/* select */
.select_wrap select{width: 100%; height: 50px; border: 1px solid #ddd; border-radius: 10px; padding: 0 20px; font-size: 16px; font-weight: 300; color: #666; background: #fff url("/source/img/icon_arr_bt_01.png") no-repeat center right 20px;}

/* search */
.sch_wrap{}
.sch_wrap .sch_box{font-size: 0; border: 1px solid #ddd; border-radius: 10px;}
.sch_wrap .sch_txt{display: inline-block; vertical-align: middle; width: calc(100% - 60px); height: 48px; font-size: 16px; border: none; border-radius: 10px 0 0 10px; padding-left: 22px;}
.sch_wrap .sch_txt::placeholder{font-size: 16px; font-weight: 300; color: #999;}
.sch_wrap .sch_btn{display: inline-block; vertical-align: middle; width: 60px; height: 48px; background: #fff url("/source/img/icon_sch.png") no-repeat center center; border: none; border-radius: 0 10px 10px 0;}

/* animate */
.obj-animated{opacity:0;}
.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}
@keyframes fadeIn{
  from{opacity:0}
  100%{opacity:1}
}
@keyframes fadeInUp{
  from{opacity:0;-webkit-transform:translate3d(0,100px,0);transform:translate3d(0,100px,0)}
  100%{opacity:1;-webkit-transform:none;transform:none}
}
@keyframes fadeInDown{
  from{opacity:0;transform:translate3d(0,-100px,0);-webkit-transform:translate3d(0,-100px,0);}
  100%{opacity:1;transform:none;-webkit-transform:none;}
}
@keyframes fadeInLeft{
  /*from{opacity:0;transform:translate3d(100px,0,0);-webkit-transform:translate3d(100px,0,0);}*/
  from{opacity:0;transform:translate3d(50px,0,0);-webkit-transform:translate3d(50px,0,0);}
  100%{opacity:1;transform:none;-webkit-transform:none;}
}
@keyframes fadeInRight{
  from{opacity:0;transform:translate3d(-100px,0,0);-webkit-transform:translate3d(-100px,0,0);}
  100%{opacity:1;transform:none;-webkit-transform:none;}
}
.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}
.fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}
.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}
.fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}
.fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}

/* Style Guide { */
.guide {
  min-height: 2000px;
  margin: 0 auto;
  padding: 60px 0;
}
.guide-head {}
.guide-head h1 {
  margin-bottom: 50px;
  font-size: 3rem;
  font-weight: bold;
}
.guide-navigation {
  position: fixed;
  top: 50px;
  right: 30px;
  width: 150px;
  padding: 5px 12px;
  border-left: 2px solid #DDDDDD;
}
.guide-navigation p {
  margin-bottom: 5px;
  font-size: 0.8rem;
  font-weight: 300;
  color: #666666;
}
.guide-navigation-list {}
.guide-navigation-item {}
.guide-navigation-item a {
  display: block;
  padding: 2px 0;
  font-size: 1rem;
  font-weight: 500;
  color: #000000;
}
.guide-body {}
.guide-section {
  scroll-margin-top: 30px;
  margin-bottom: 50px;
  font-size: 0;
}
.guide-title {
  display: inline-block;
  vertical-align: top;
  width: 400px;
}
.guide-title h2 {
  font-size: 2rem;
}
.guide-content {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 400px);
  padding-top: 6px;
}
.guide-inner ~ .guide-inner {
  margin-top: 30px;
}
.guide-inner h3 {
  margin-bottom: 15px;
  font-size: 1.3rem;
}
.box {
  padding: 15px;
  background: #F3F5F7;
  border-radius: 7px;
}

  /* > 색상 */
.color {}
.color-item {
  display: inline-block;
  vertical-align: top;
  width: 180px;
}
.color-item ~ .color-item {
  margin-left: 13px;
}
.color-view {
  width: 100%;
  height: 60px;
}
.color-info {
  padding: 10px 3px;
  background: #FFFFFF;
}
.color-name {
  font-size: 0.9rem;
  color: #999999;
}
.color-code {
  margin-top: 7px;
  font-size: 1.1rem;
  color: #000000;
}
.color-variable {
  font-size: 0.9rem;
  color: #666666;
}

  /* > 타이포그래피 */
.typography {}
.typography-name {
  margin-bottom: 10px;
  font-size: 1.1rem;
  font-weight: 500;
}
.typography-view {
  font-size: 1rem;
  color: #666666;
  line-height: 1.6;
}

.text-group {}
.text-group .t1 {font-size: 20px; font-weight: 700; color: var(--sub-color); line-height: 1.5;}
.text-group .t2 {margin-top: 24px; font-size: 48px; font-weight: 700; color: var(--white-color); line-height: 1.5;}
.text-group .t3 {margin-top: 24px; font-size: 22px; font-weight: 400; color: rgba(255,255,255,0.6); line-height: 1.8;}

  /* > 버튼 */
.button {}
.button-item {
  display: inline-block; 
  vertical-align: middle;
}
.button-item ~ .button-item {
  margin-left: 13px;
}
a.btn,
.btn {display: inline-block; height: auto; border: 0; border-radius: 10px; font-size: 16px; font-weight: 500; color: #000; line-height: 1;}
a.btn-gradient,
.btn-gradient {
  padding: 16px 40px;
  background: var(--gradient-color);
  color: var(--white-color);
}
a.btn-white,
.btn-white {
  padding: 16px 40px;
  background-color: var(--white-color);
  color: #00AA8F;
}
a.btn.bold,
.btn.bold {padding: 20px 40px; font-weight: 700;}

a.btn.arrow-bottom,
.btn.arrow-bottom {
  padding: 20px 70px 20px 40px;
  background: url("/source/img/arrow_drop_down.png") no-repeat center right 35px/24px auto, var(--white-color);
  color: #00AA8F;
}
a.circle-arrow-right,
.circle-arrow-right {display: block; width: 72px; height: 72px; border: 2px solid #ffffff; border-radius: 50%; background: url("/source/img/arrow-right.png") no-repeat center/43px auto; font-size: 0; transition: 0.3s;}
a.circle-arrow-right:hover,
.circle-arrow-right:hover,
a.circle-arrow-right.active,
.circle-arrow-right.active {background-color: var(--main-color); border-color: var(--main-color);}

.card1-wrap {display: flex; flex-flow: row wrap; gap: 0 24px;}
.card1-item {display: block; width: calc(100% / 3 - (24px * 2) / 3); padding: 60px 35px; border: 1px solid var(--line-color2); border-radius: 20px; background-color: rgba(121,121,121,0.1); backdrop-filter: saturate(100%) blur(20px); transition: 0.3s;}
.card1-item .icon {width: 100px;}
.card1-item .t1 {margin-top: 32px; font-size: 24px; font-weight: 700; color: var(--white-color); line-height: 1.5;}
.card1-item .t2 {margin-top: 32px; font-size: 18px; font-weight: 400; color: var(--white-color); line-height: 1.5;}

.card1-item:hover {transform: translate3d(0, -30px, 0) !important; background-color: #fff;}
.card1-item:hover .t1 {color: var(--main-color);}
.card1-item:hover .t2 {color: var(--black-color);}

.card2-wrap {}
.card2-item {display: block; width: 100%; padding: 40px; border: 1px solid var(--line-color2); border-radius: 20px; background-color: rgba(121,121,121,0.1); backdrop-filter: saturate(100%) blur(20px);}
.card2-item .num {font-size: 30px; font-weight: 700; color: rgba(0,150,152,0.5); line-height: 1.5;}
.card2-item .t1 {margin-top: 120px; font-size: 30px; font-weight: 700; color: var(--white-color); line-height: 1.5;}
.card2-item .t2 {margin-top: 24px; font-size: 20px; font-weight: 400; color: var(--white-color); line-height: 1.5;}

.banner1 {display: block; width: 100%; padding: 80px 40px; border: 1px solid var(--line-color2); border-radius: 20px; text-align: center; background-color: rgba(121,121,121,0.1); backdrop-filter: saturate(100%) blur(20px);}
.banner1 .btn {margin: 40px auto 0;}
.banner2 {display: block; width: 100%; padding: 90px 40px; border: 1px solid var(--main-color); border-radius: 20px; text-align: center; background-color: rgba(121,121,121,0.1); backdrop-filter: saturate(100%) blur(20px);}
.banner2 .btn {margin: 32px auto 0;}

.partner-item {display: flex; align-items: center; justify-content: center; height: 170px; border: 1px solid var(--line-color2); border-radius: 20px; background-color: rgba(121,121,121,0.1); backdrop-filter: saturate(100%) blur(20px);}

.dark .guide-head h1,
.dark .guide-title h2,
.dark .guide-inner h3,
.guide-navigation p,
.guide-navigation-item a,
.typography-name {
  color: #FFFFFF;
}
/* } Style Guide */

@media screen and (max-width:1500px){
  a.btn.bold, .btn.bold {padding: 15px 20px;}

  .text-group .t2 {font-size: 36px;}
  .text-group .t3 {font-size: 20px;}
}

@media screen and (max-width:1290px){
  .text-group .t1 {font-size: 18px;}
  .text-group .t2 {margin-top: 15px; font-size: 32px;}
  .text-group .t3 {margin-top: 15px; font-size: 18px;}

  .banner1 {padding: 50px 20px;}
}

@media screen and (max-width:1023px){
  a.btn, .btn {font-size: 14px;}
  a.circle-arrow-right, 
  .circle-arrow-right {width: 50px; height: 50px;}

  .text-group .t1 {font-size: 16px;}
  .text-group .t2 {font-size: 26px;}
  .text-group .t3 {font-size: 16px;}

  .card1-wrap {flex-flow: column wrap; gap: 20px 0;}
  .card1-item {width: 100%; padding: 20px 30px;}
  .card1-item .icon {width:70px;}
  .card1-item .t1 {margin-top: 20px; font-size: 20px;}
  .card1-item .t2 {margin-top: 20px; font-size: 16px;}
  .card1-item .t2 br ~ br {display: none;}

  .card2-item .t1 {margin-top: 50px; font-size: 26px;}
  .card2-item .t2 {font-size: 16px;}

  .partner-item {height: 100px; padding: 0 20px; border-radius: 10px;}

  .banner2 {padding: 40px;}
}

@media screen and (max-width:767px){
  .text-group .t1 {font-size: 14px;}
  .text-group .t2 {font-size: 18px;}
  .text-group .t2 br {display: none;}
  .text-group .t3 {font-size: 14px;}
  .text-group .t3 br {display: none;}

  .card2-item {padding: 30px 20px; border-radius: 10px;}
  .card2-item .num {font-size: 26px;}
  .card2-item .t1 {margin-top: 10px; font-size: 20px;}
  .card2-item .t2 {margin-top: 10px;}

  a.circle-arrow-right, 
  .circle-arrow-right {width: 30px; height: 30px; background-size: 20px auto;}

  .partner-item {height: 70px; padding: 0 15px;}

  .banner2 {padding: 40px 20px;}
}