@charset "UTF-8";
@import url("./footer.css");

:root {
  --primary: #028379;
  --secondary: #03a190;

  --gray_dark2: #222222;
  --gray_dark1: #303535;
  --gray_middle2: #80888a;
  --gray_middle1: #9ea8aa;

  --semantic_1: #ff5615;
  --semantic_2: #eec301;
  --semantic_3: #5d99be;

  --swiper-theme-color: var(--semantic_2) !important;
}

article,
aside,
body,
button,
dd,
dialog,
div,
dl,
dt,
fieldset,
figure,
footer,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
input,
legend,
li,
main,
nav,
ol,
p,
section,
select,
table,
td,
textarea,
textarea,
th,
ul {
  margin: 0;
  padding: 0;
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  padding: 0;
}
img,
i {
  display: inline-block;
}
article,
aside,
dialog,
figure,
footer,
footer,
header,
main,
nav,
section {
  display: block;
}

body,
html {
  height: 100%;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
}

fieldset,
form,
img,
li,
svg {
  border: 0;
  list-style: none;
}

ol,
ul {
  list-style: none;
}

button {
  overflow: visible;
  border: 0;
  background-color: transparent;
  cursor: pointer;
}

button:disabled {
  cursor: default;
}

button::-moz-focus-inner {
  padding: 0;
  margin: -1px;
}

button,
input,
select {
  -webkit-border-radius: 0;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="number"] {
  -moz-appearance: textfield;
}

address,
caption,
em {
  font-style: normal;
}

a,
a:active,
a:focus,
a:hover {
  text-decoration: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}
body {
  overflow-x: hidden !important ;
}
/* 줄 숨김 */
.ellipsis {
  display: block;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}
.ellipsis_2 {
  display: block;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}
.ellipsis_3 {
  display: block;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}

/* 무효화 */
.display_none {
  display: none !important;
}
.border_none {
  border: 0 !important;
}
/* padding */
.pl_0 {
  padding-left: 0 !important;
}
.pr_0 {
  padding-right: 0 !important;
}
.pt_0 {
  padding-top: 0 !important;
}
.pt_64 {
  padding-top: 64px !important;
}
.pb_0 {
  padding-bottom: 0 !important;
}
.padding_0 {
  padding: 0px !important;
}

/* margin */
.m_0 {
  margin: 0 !important;
}
.mt_0 {
  margin-top: 0 !important;
}
.mt_24 {
  margin-top: 24px !important;
}
.mt_40 {
  margin-top: 40px !important;
}
.mt_64 {
  margin-top: 64px !important;
}
.ml_100 {
  margin-left: 100px !important;
}
.mb_60 {
  margin-bottom: 60px !important;
}
/* width */
.w_50p {
  width: 50% !important;
}
.w_100p {
  width: 100% !important;
}
/* height */
.h_520 {
  height: 520px !important;
}
.h_630 {
  height: 630px !important;
}
/* ICON */

/* COLOR */
.txt_white {
  color: white !important;
}
.primary_color {
  color: var(--primary) !important;
}
/* 화살표 */
/**********  텍스트 정렬 text_align   ***********/
.text_right {
  text-align: right !important;
}
.text_left {
  text-align: left !important;
}
.text_center {
  text-align: center !important;
}
.ml_auto {
  margin-left: auto !important;
}
.space_between {
  justify-content: space-between !important;
}
/******************************************/
/******************** 공통 *****************/
/******************************************/
/* max-width 1470px */
/* default 가로 패딩 150px */

/* layout */
main {
  width: 100%;
  background: white;
}
/* header */
header {
  position: fixed;
  height: auto;
  z-index: 30;
  width: 100%;
}
.scroll_header > .header_container {
  margin: 0 auto;
  padding: 0 150px;
  height: 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: white;
}
.header_logo > a {
  position: relative;
}
.header_logo i {
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
}
.scroll_header > .header_lan {
  display: flex;
  padding: 0 10px;
  font-size: 14px;
  line-height: 1.71em;
  font-weight: 900;
  color: #999;
  text-decoration: none;
  cursor: pointer;
  justify-content: center;
  vertical-align: middle;
  gap: 6px;
}
.arrow_wrap {
  position: relative;
}
.arrow_wrap i {
  position: absolute;
  top: 50%;
  transform: translateY(-60%);
}
.header_right {
  display: flex;
  align-items: center;
}
/* section */
.section:nth-child(1) {
  padding-top: 80px;
}
.section {
  margin: 0 auto;
  padding: 0 150px;
  position: relative;
}

.section.visual,
.section.visual .slider_item {
  height: calc(70vh);
}

.tit_area.slide_tit {
  position: relative;
  background: #fff;
  padding: 0 150px;
  max-width: 1470px;
  margin: 0 auto;
}
.section_full {
  position: relative;
  background: #fff;
  padding: 110px 0 80px;
  margin: 0 auto;
}

.section.is-fixed {
  position: fixed;
  top: 0;
}
.section_tit {
  display: flex;
  vertical-align: middle;
  height: 320px;
  align-items: center;
  position: fixed;
}
/* sub_header */
.sub_haeder {
  margin-top: 320px;
  height: auto;
  position: relative;
}
.detail-tab__wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9;
  width: 100%;
  background-color: white;
}
.detail-tab__wrap.is-fixed {
  position: fixed;
  top: 80px;
  width: 100%;
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #eeeeee;
}
.detail-tab__inner {
  margin: 0 auto;
  padding: 0 150px;
  display: flex;
  align-items: center;
  gap: 8px;
  height: 64px;
}
/* 타이틀 + 이미지 */
.tit_img_box {
  position: relative;
  width: 100%;
  height: inherit;
  overflow: hidden;
  background-color: var(--gray_middle2);
}
.tit_img_box > .tit_img_txt_area {
  background-image: url(../../images/img_icon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  overflow: hidden;
  background-color: var(--gray_middle2);
}
.tit_img_box > .tit_img_txt_area > .txt_padding {
  padding: 0 150px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  max-width: 765px;
}
.txt_padding_right {
  right: 0 !important;
}
.txt_padding_center {
  left: 50%;
  transform: translateX(-50%) !important;
}

.tit_img_area {
  /* position: relative; */
  background-color: var(--gray_middle2);
  background-image: url("../../images/img_icon.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  overflow: hidden;
}

.tit_img_area > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/** img responsive **/
.img_area_full {
  background-image: url(../../images/img_icon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  overflow: hidden;
  background-color: var(--gray_middle2);
  max-height: 520px;
  height: 35vw;
}

.img_area_half {
  background-image: url(../../images/img_icon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  overflow: hidden;
  background-color: var(--gray_middle2);
  height: 24vw;
  max-height: 400px;
}

/* 타이틀 이미지 half */
.double_contents {
  display: flex;
  align-items: center;
}
.double_contents.line {
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #eeeeee;
  padding: 40px 0;
  gap: 40px !important;
}
.double_contents.line + .double_contents.line {
  border-top: none !important;
}
.double_contents > .right {
  flex: 1;
  position: relative;
}
.double_contents > .left {
  flex: 1;
  position: relative;
}
.double_contents .img_area > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.img_area {
  /* position: relative; */
  background-color: var(--gray_middle2);
  background-image: url("../../images/img_icon.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  overflow: hidden;
}

.img_area > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); */
}

/* 인플루언서 */
/* tab */
.tab_container {
  width: 100%;
  background: white;
  z-index: 1;
  position: relative;
}
.tab_item_inner {
  position: relative;
  /* background: #fff; */
  padding: 110px 150px 80px;
  max-width: 1470px;
  margin: 0 auto;
}
.tab_item_inner_full {
  position: relative;
  background: #fff;
  padding: 110px 0 80px;
  margin: 0 auto;
}
.row_wrap {
  display: flex;
  flex-direction: row;
}
.row_wrap > .left {
  flex: 2;
}
.row_wrap > .right {
  flex: 8;
  position: relative;
}
.row_wrap > .right > .top {
  border-bottom: 2px solid var(--primary);
}
.row_wrap > .right > .img_area {
  width: 100%;
  background-color: var(--gray_middle2);
}

/* 회사소개_일반정보 */
.company_info_list {
  display: flex;
  flex-direction: column;
}
.company_info_list > li {
  display: block;
  position: relative;
  height: 64px;
  line-height: 64px;
  border-bottom: 1px solid #e9e9e9;
}
.company_info_list > li:nth-child(1) {
  border-top: 1px solid #e9e9e9;
}
.company_info_list > li > .list_tit {
  min-width: 200px;
  display: inline-block;
}
.company_info_list {
  flex: 8;
}

/* map */
#map {
  width: 100%;
  height: 500px;
}
.gmnoprint,
.gm-control-active.gm-fullscreen-control {
  display: none;
}

/* check_list 요금제 선택 */
.check_list > li {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-left: 32px;
  position: relative;
  height: 32px;
}
.check_list > li.is-active {
  font-size: 16px;
  line-height: 1.47em;
  font-weight: 600;
  color: #555;
  letter-spacing: -0.9px;
}
.check_list {
  margin-top: 16px;
  padding: 20px 0 30px 0;
  border-top: 1px solid #e9e9e9;
}
/* check icon 넣어야함 */
.check_list > li.is-active::before {
  content: "";
  width: 32px;
  height: 32px;
  background: var(--semantic_3);
  position: absolute;
  top: 0;
  left: 0;
}
.check_list button {
  width: 100%;
}
.flex_box.fourth {
  gap: 40px;
}
.flex_box.fourth > div {
  padding: 18px 20px;
}
.flex_box .icon_area {
  width: 100%;
}
.flex_box .icon_area > .ic {
  height: 60px;
  width: 60px;
  background: var(--gray_middle2);
  margin: 0 auto;
}
.flex_box.fourth .sub_sub_sub_sub_tit {
  margin-top: 24px;
}
.flex_box .sub_sub_sub_tit {
  margin-top: 24px;
}
.flex_row_box {
  display: flex;
  flex-direction: row;
  gap: 0px 10px;
  align-items: center;
}
/* show_more */
.show_more {
  width: 100%;
}
.show_more li {
  display: none;
}
.show_more li {
  margin-bottom: 60px;
  width: 48.7%;
  position: relative;
  float: left;
}
.show_more li > a:hover .top > .sub_sub_sub_tit {
  color: var(--primary);
}
.show_more li .img_area {
  border-radius: 24px;
  position: relative;
  width: 100%;
  background-color: var(--gray_middle2);
}
.show_more li:nth-child(1n) {
  margin-right: 2.6%;
}
.show_more li:nth-child(2n) {
  margin-right: 0;
}
.show_more > .button_bar > .gray_l_stroke_btn {
  margin-left: 50%;
  transform: translateX(-50%);
}
.show_more .top > .sub_sub_sub_tit {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  margin-bottom: 8px !important;
}
.show_more .top > .body_txt {
  margin-bottom: 16px !important;
  margin-top: 0 !important;
}

/* flex_contents */
.flex_box {
  display: flex;
  justify-content: space-between;
}
.flex_box > li {
  flex: 1;
}
.flex_box > div {
  flex: 1;
}
.flex_box + .flex_box {
  margin-top: 60px;
}
.gap_40 {
  gap: 40px !important;
}
.gap_20 {
  gap: 20px !important;
}
.gap_80 {
  gap: 80px !important;
}
/* 주요사업 */
.flex_box.business-field li {
  position: relative;
  padding: 3%;
}
.flex_box.business-field .btn_area {
  width: 100%;
  margin-top: 5%;
}
.flex_box.business-field .btn_next {
  display: inline-block;
  margin: 0 auto !important;
}
.flex_box.business-field .sub_sub_tit {
  margin-top: 32px;
}

/** news **/
.news_tab_content {
  position: relative;
  background-color: #fff;
}
/* news_detail */
.news_detail > .top > .body_txt {
  margin-bottom: 24px !important;
  margin-top: 0 !important;
}
.news_detail > .top > .sub_sub_sub_tit {
  margin-bottom: 8px !important;
}
.news_detail .top {
  margin-bottom: 24px !important;
}
.news_detail .img_area {
  border-radius: 24px;
  margin-bottom: 60px;
}
.news_detail .bottom {
  margin-top: 32px !important;
}
.news_detail .bottom > .line {
  height: 2px;
  background-color: var(--primary);
  width: 100%;
  margin-bottom: 24px;
}
.news_detail .bottom > .btn_area {
  display: flex;
  justify-content: space-between;
}
.back_list_btn {
  height: 40px;
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 15px;
  font-weight: 600;
  color: #353636;
}
/* home */
.home_section {
  position: relative;
  /* background: #fff; */
  padding: 110px 150px 80px;
  max-width: 1470px;
  margin: 0 auto;
}
.home_section_full {
  position: relative;
  background: #fff;
  padding: 110px 0 80px;
  margin: 0 auto;
}
.home_header > .header_container {
  margin: 0 auto;
  padding: 0 150px;
  height: 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: none;
}
.header > .header_container {
  margin: 0 auto;
  padding: 0 150px;
  height: 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: none;
}
.home_header > .header_container span {
  color: white;
}
.home_header.is-active {
  background: white !important;
  border-bottom: 1px solid #eeeeee;
}
.home_header.is-active .etc_logo {
  background-position: 0 0 !important;
}
.home_header .etc_logo {
  background-position: -120px 0 !important;
}
.home_header.is-active span {
  color: #999 !important;
}
.home .section:nth-child(1) {
  padding: 0 !important;
  margin: 0 !important;
}
.slider_item {
  height: 100vh;
  background: var(--gray_middle2);
}
.home_slide .txt_area {
  position: absolute;
  padding: 0 300px;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
}
/* tit_area */
.tit_area {
  margin-bottom: 80px;
}
/* logo_list */
.logo_list .logo_box {
  margin-bottom: 32px;
}
.logo_list .body_txt {
  margin-top: 16px;
}
.logo_list .link_txt {
  margin-top: 16px;
}
.logo_box {
  min-height: 7vh;
  max-height: 120px;
  border-radius: 24px;
  position: relative;
  background: #e9e9e9;
}
.logo_box > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.shadow_box {
  padding: 24px 20px;
  background: white;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  border-radius: 24px;
  position: relative;
}

.swiper.center_swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  background: white;
  overflow: visible !important;
  width: 100%;
}

.center_swiper .swiper-wrapper {
  position: relative;
  width: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
  position: relative;
  padding-bottom: 60px;
}

.center_swiper .swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: flex;
  align-items: center;
  overflow: visible !important;
  flex-shrink: 0;
  width: auto;
  position: relative;
  transition-property: transform;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  aspect-ratio: 2 / 1;
}
.swiper-pagination.center_pagination {
  position: absolute;
  width: 100%;
  height: 2px !important;
  left: 0;
  bottom: 0px !important;
  top: inherit !important;
  background: #eee !important;
}
/* slide img */
.swiper-slide > .left {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.swiper-slide > .left .sub_sub_sub_sub_tit + .sub_sub_sub_tit {
  margin-top: 7%;
}
.swiper-slide > .right {
  flex: 1 !important;
  aspect-ratio: 1/ 1;
}
.swiper-slide.shadow_box {
  padding: 0 !important;
}
.swiper-slide.shadow_box > .left {
  flex: 1;
}
.swiper-slide.shadow_box > .left > .txt_area {
  padding: 4vh;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  aspect-ratio: 1/ 1;
}
.swiper-slide > .left p {
  text-align: left !important;
}
.swiper-slide > .right > .img_area {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.swiper-slide > .right > .img_area > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.tit_area.flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.swiper_btn_wrap > .prev_btn {
  right: 64px;
  top: 0;
  border: 1px solid var(--primary);
  width: 64px;
  height: 64px;
  background-color: white;
  border-radius: 32px;
  display: inline-block;
}
.swiper_btn_wrap > .next_btn {
  right: 0;
  top: 0;
  border: 1px solid var(--primary);
  width: 64px;
  height: 64px;
  background-color: white;
  border-radius: 32px;
  display: inline-block;
}

/* home_shadow_box */
.shadow_box.home_shadow_box {
  padding: 4vh;
}
.shadow_box.home_shadow_box > .txt_area {
}
.shadow_box.home_shadow_box > .txt_area > .sub_sub_sub_tit {
  margin-top: 7%;
}
.shadow_box.home_shadow_box > .btn_area {
  width: 100%;
  margin-top: 5%;
}
.shadow_box.home_shadow_box > .btn_area > .btn_next {
  display: inline-block;
  float: right;
}

/*** 반응형 적용시 이미지 슬라이드폼으로 변경되는 영역 **/
/** service page **/
.m_flex_box_group {
  display: none;
}

.flex_box_slide.swiper {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.flex_box_slide .swiper-wrapper {
  padding-bottom: 60px;
}

.flex_box_slide .swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;

  /* Center slide text vertically */
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.flex_box_slide .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* hamburger */
.header {
  position: fixed;
  height: auto;
  z-index: 10;
  width: 100%;
}

.header .btn_area {
  width: 32px;
  height: 32px;
  background: blue;
  display: inline-block;
}
.hamburger_section {
  padding: 80px 150px 0 150px;
}
.hamburger_item {
  padding: 18px 0;
  text-align: left;
  border-bottom: 1px solid #eee;
}
.hamburger_item > a {
  position: relative;
  width: 100%;
}
.hamburger_item > a:hover .sub_sub_sub_sub_tit {
  color: var(--primary) !important;
}
.hamburger_item > a > .sub_sub_sub_sub_tit {
  display: flex;
  justify-content: space-between;
  color: #555 !important;
}
.hamburger_item .btn_area {
  position: absolute;
  width: 24px;
  height: 24px;
  background: blue;
  /* display: none; */
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.hamburger_item > a:hover .btn_area {
  display: block;
}
.header_cate {
  display: none;
  width: 32px;
  height: 32px;
  background: blue;
}
.hamburger_wrap {
  position: fixed;
  top: 0;
  right: -100%;
  z-index: 400;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  transition: right 0.3s ease-in-out;
  background-color: white;
}
.hamburger_wrap.on {
  right: 0;
}
#header_cate {
  z-index: 401;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}

.gray_dark2 {
  color: var(--gray_dark2) !important;
}
.gray_dark1 {
  color: var(--gray_dark1) !important;
}
.gray_middle2 {
  color: var(--gray_middle2) !important;
}
.gray_middle1 {
  color: var(--gray_middle1) !important;
}

.semantic_1 {
  color: var(--semantic_1) !important;
}
.semantic_2 {
  color: var(--semantic_2) !important;
}
.semantic_3 {
  color: var(--semantic_3) !important;
}

.bg_secondary {
  background: var(--secondary) !important;
}
.bg_gray_dark2 {
  background: var(--gray_dark2) !important;
}
.bg_gray_dark1 {
  background: var(--gray_dark1) !important;
}
.bg_gray_middle2 {
  background: var(--gray_middle2) !important;
}
.bg_gray_middle1 {
  background: var(--gray_middle1) !important;
}

.bg_semantic_1 {
  background: var(--semantic_1) !important;
}
.bg_semantic_2 {
  background: var(--semantic_2) !important;
}
.bg_semantic_3 {
  background: var(--semantic_3) !important;
}
