
.main-container {
  margin-top: 8rem;
}

.main_visual_wrap {
  width:100%;
  height: 803px;
  left: 0;
  top:0;
  z-index: 0;
}
.main_title_txt {
  padding:152px 0 250px;
  /*background: url('../img/main/bg_main.png') no-repeat right bottom;*/
  /*
  font-family: "Poppins", sans-serif;
  font-size:13.3rem;
  line-height: 13.6rem;
  font-weight: 600;
  color:#D9D9D9;
  */
  position: relative;
  text-align: center;
}

.main_title_main_txt {
  font-size:5.6rem;
  line-height: 6.5rem;
  color:#000;
  font-weight: 700;
  letter-spacing: -2.24px;
}

.main_title_main_txt + .main_title_main_txt {
  margin-bottom: 32px;
}

.main_title_sub_txt {
  font-size:2.2rem;
  line-height: 2.5rem;
  color:#000;
  font-weight: 500;
  margin-top: 28px;
}

.main_visual_txt {
  display: inline-block;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.shell_txt {
  position: relative;
  z-index: 2;
  max-height: 104px;
  /*
  font-size: 104px;
  font-weight: 800;
  letter-spacing: -6px;
  */
  /*transition: all 1.2s ease-in-out;*/
}

.bg_txt {
  position: absolute;
  left:0; right:0; top:2px; bottom:2px;
  z-index: 0;
  max-height: 104px;
  background-color: #000;
  animation: c-chainge 3s ease 1s forwards;
}
@keyframes c-chainge {
  0% {background-color: #000;}
  50% {background-color: linear-gradient(108deg, #000000 0%,#000000 100%);;}
  100% {background: linear-gradient(108deg, #476afd 0%,#476afd 42%,#6558ec 76%,#8b43d8 100%);}
}
.shell_txt.gradient {
  color: transparent;
  background: linear-gradient(-18deg, #476afd 0%,#476afd 42%,#6558ec 76%,#8b43d8 100%);
  /*
  -webkit-background-clip: text;
  background-clip: text;
  */
}
.shine_txt{
  content: "";
  position: absolute;
  top: -50px;
  left: 0;
  width: 140%;
  height: 500%;
  pointer-events: none;
  transform: translateX(-150%) rotate(25deg);
  opacity: 0;
  /* 흰빛 그라데이션(중앙이 밝음) */
  background: linear-gradient(90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.1) 20%,
    rgba(255,255,255,0.95) 45%,
    rgba(255,255,255,0.25) 60%,
    rgba(255,255,255,0.1) 80%,
    rgba(255,255,255,0) 100%);
  /* 3초 주기로 한 번 반짝이도록 설정 */
  animation: shine 5s ease infinite;
  mix-blend-mode: screen;
  z-index: 1;
}
@keyframes shine {
  0%   { transform: translateX(-150%) rotate(25deg); opacity: 1; }
  80%   { transform: translateX(-150%) rotate(25deg); opacity: 1; }
  /*
  70%  { transform: translateX(-150%) rotate(25deg); opacity: 0; }
  72%  { transform: translateX(-80%) rotate(25deg); opacity: 0.6; }
  75%  { transform: translateX(-20%)  rotate(25deg); opacity: 1; }
  78%  { transform: translateX(40%)   rotate(25deg); opacity: 0.6; }
  80%  { transform: translateX(120%)  rotate(25deg); opacity: 0; }
  */
  100% { transform: translateX(120%)  rotate(25deg); opacity: 1; }
}

/* 반짝일 때 추가적인 미세 글로우 효과 (선택사항) */
.logo.spark-glow {
  text-shadow:
    0 0 8px rgba(255,255,255,0.08),
    0 0 18px rgba(139,67,216,0.06);
  transition: text-shadow 240ms ease;
}


.main_object {
  position: absolute;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  animation: doong-sil2 5s infinite;
}
.main_object.object01 {
  width:422px; height: 368px;
  left:-242px; top: 190px;
  background-image: url(../img/main/main_img01.png);
  animation: swip-swip 8s infinite;
}
.main_object.object02 {
  width:391px; height: 391px;
  left: 35%; top: 85%;
  background-image: url(../img/main/main_img02.png);
  animation: doong-sil2 5s infinite;
  animation-delay: 1.5s;
}
.main_object.object03 {
  width:391px; height: 406px;
  right:-202px; bottom: -71px;
  background-image: url(../img/main/main_img03.png);
  animation: swip-swip 5s infinite;
}
.main_object.object04 {
  width:281px; height: 281px;
  right: 60px; top: -106px;
  background-image: url(../img/main/main_img04.png);
  animation: swip-swip 5s infinite;
  animation-delay: 0.2s;
}
@keyframes doong-sil2 {
  0% {
      transform: translateY(3%);
  }
  25% {
      transform: translateY(-1%);
  }
  50% {
      transform: translate(-1%, 3%);
  }
  75% {
      transform: translate(1%, 1%);
  }
  100% {
      transform: translateY(3%);
  }
}
@keyframes swip-swip {
  0% {
      transform: rotate(5deg) scale(1);
  }
  25% {
      transform: rotate(-5deg);
  }
  50% {
      transform: rotate(5deg) scale(0.9);
  }
  75% {
      transform: rotate(-5deg);
  }
  100% {
      transform: rotate(5deg) scale(1);
  }
}


.main-slide-wrap {
  width: 100%;
  padding-bottom: 8.0rem;
  /*height: calc(100vh - 8rem);*/
  /*margin-top: 8rem;*/
  /*height: 100vh;*/
  /*background-color: #fff;*/
  
  /* display: flex; */
  /* align-items: flex-end; */
  background: url('../img/main/bg.svg') no-repeat center / cover; 
}

.main-slide-wrap .mainSwiper {
  height: 100%;
  /*background-color: #fff;*/
  padding-top: 8rem;
}

.main-slide-wrap .mainSwiper .swiper-slide {
  /*
  display: flex;
  align-items: center;
  */
  height: 480px;
  padding:60px 52px;
  border-radius: 40px;
}

.main-slide-wrap .mainSwiper .main-bg01 {
  background: url('../img/main/slide_01.png') no-repeat center center / cover;
}
.main-slide-wrap .mainSwiper .main-bg02 {
  background: url('../img/main/slide_02.png') no-repeat center center / cover;
}
.main-slide-wrap .mainSwiper .main-bg03 {
  background: url('../img/main/slide_03.png') no-repeat center center / cover;
}
.main-slide-wrap .mainSwiper .main-bg04 {
  background: url('../img/main/slide_04.png') no-repeat center center / cover;
}

.main-slide-wrap .swiper-pagination {
  position: absolute;
  left: 52px;
  bottom:46px;
  text-align: left;
}
.main-slide-wrap .swiper-pagination-bullet {
  width: 10px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 14px;
  color: #ffffff;
  font-weight: 600;
  opacity: 0.35;
  margin: 0 6px;
  border-radius: 0;
  background-color: transparent;
}

.main-slide-wrap .swiper-pagination-bullet-active {
  color: #ffffff;
  opacity: 1;
}

.main-slide-title {
  color:#fff;
  font-weight: 500;
  padding-bottom: 3.4rem;
}
.main-bg02 .main-slide-title {
  color:#000;
  
}
.main-slide-title .big-tit {
  font-size:4.5rem;
  line-height: 5.6rem;
}
 
.main-slide-title .sub-small-tit {
  font-size:2.2rem;
  line-height: 3.4rem;
  margin: 3.6rem 0 4.4rem;
  font-weight: 500;
}



/*
.main-slide-wrap .mainSwiper .swiper-pagination-bullet-active:after {
  display: block;
  height: 100%;
  content: '';
  transition: all 0.3s;
  background-color: #1e81ce;
  position: absolute;
  top: 0;
  left: 0;
  animation: swiperProgress 5s 1;
}

@keyframes swiperProgress {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
*/

.flex-left-wrap {width:33%}
.flex-right-wrap {width: calc(100% - 33%);}

.main_blue_small_tit {
  font-family: "Poppins", sans-serif;
  font-size:1.9rem;
  line-height: 2.7rem;
  font-weight: 600;
  color:#4769FD;
}

/* s:: section01-container */
.section01-container {
  background-color: #000000;
  color:#fff;
  text-align: center;
  padding:148px 0 145px;
}

.section01-container .sub-mid-tit { margin-bottom: 2.4rem;}
.section01-container .info-mid-tit {
  margin: 6.3rem 0 5.1rem;
}

.circle-container-wrap {
  position: relative;
  margin: 0 auto;
}
.circle-container-wrap .round-content{
  width:80%;
}


/* e:: section01-container */

/* s:: section02-container */
.section02-container {
  background-color: #4769FD;
  color:#fff;
  text-align: center;
  padding:127px 0 225px;
}

.section02-container .main-mid-tit{
  margin: 2.4rem 0 4.8rem;
  position: relative;
  display: inline-block;
}

.section02-container .info-mid-tit{
  margin-bottom: 9.6rem;
}

/* 원형 라운드 */
.circle-container {
  position: relative;
  width: min(90vw, 1040px);
  height: min(90vw, 1040px);
  margin: 0 auto;
}

:root{
    --big-diameter1: clamp(204px, 40vw, 447px);   /* 작은 원 지름 */
    --big-diameter2: clamp(300px, 60vw, 657px);   /* 큰 원 지름 */
    --small-diameter1: 13px;
    --small-diameter2: 24px;
    --big-radius1: calc(var(--big-diameter1) / 2);
    --big-radius2: calc(var(--big-diameter2) / 2);
    /* 작은 원의 중심이 가야할 반지름: 큰 반지름 - (작은 지름 / 2) */
    --orbit-radius1: calc(var(--big-radius1) );
    --orbit-radius2: calc(var(--big-radius2) );
  }

.circle-container-bg-w {
  position: absolute;
  left:50%;
  top:50%;
  transform: translate(-50%, -50%);
  width:var(--big-diameter1);
  height:var(--big-diameter1);
  border-radius: 50%;
  border:1px dashed #476AFD;  
  display: grid;
  place-items: center;
}
.circle-container-bg-b {
  position: absolute;
  left:50%;
  top:50%;
  transform: translate(-50%, -50%);
  width:var(--big-diameter2);
  height: var(--big-diameter2);
  border-radius: 50%;
  border:1px solid #fff;
}
.ring-w {
  position:absolute;
  inset:0;                 /* 부모 전체를 덮음 */
  display:block;
  transform-origin: center center;
  animation: spin linear infinite;
  animation-duration: 4s;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}
.ring-b {
  position:absolute;
  inset:0;                 /* 부모 전체를 덮음 */
  display:block;
  transform-origin: center center;
  animation: spin2 linear infinite;
  animation-duration: 4s;
}
@keyframes spin2 {
  to { transform: rotate(-360deg); }
}
.ring-w:before {
  content:"";
  display: block;
  position: absolute;
  left:50%;
  top:50%;
  width:var(--small-diameter1);
  height: var(--small-diameter1);
  border-radius: 50%;
  background-color: #fff;
  transform: translate(-50%, -50%) translateX(var(--orbit-radius1));
  
}
.ring-b:before {
  content:"";
  display: block;
  position: absolute;
  left:50%;
  top:50%;
  width:var(--small-diameter2);
  height: var(--small-diameter2);
  border-radius: 50%;
  background-color: #476AFD;
  transform: translate(-50%, -50%) translateX(var(--orbit-radius2));
}
/* 중앙 파란 원 */
.center-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  padding-top: 2%;
  transform: translate(-50%, -50%);
  background-color: #4769FD;
  color: #fff;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  width: clamp(161px, 26%, 270px);
  height: clamp(161px, 26%, 270px);
  font-size: clamp(18px, 2.5vw, 28px);
  text-align: center;
  animation: big-small 3s infinite;
}
@keyframes big-small {
  0% {
      transform: translate(-50%, -50%) scale(1);
  }
  50% {
      transform: translate(-50%, -50%) scale(0.9);
  }
  100% {
      transform: translate(-50%, -50%) scale(1);
  }
}
.center-circle span {
  font-size:1.2em;
  font-weight: 600;
}

/* 하얀 원 */
.white-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(126px, 56%, 500px);
  height: clamp(126px, 56%, 500px);
  background: #fff;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  opacity: 0;
  font-size: clamp(24px, 2.5vw, 36px);
  transform: translate(-50%, -50%) scale(0.5);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.white-circle img {width:60%; max-width: 100%;}

/* 글자가 회전하지 않게 */
.white-circle span {
  transform: rotate(0deg);
  color: #2E3545;
  font-weight: 500;
}

/* 등장 애니메이션 */
.white-circle.show {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
/* e::원형 라운드 */


/* bar 움직임 */
.move-letter {
  display: inline-block;
  transition: transform 0.8s ease;
}
.move-bar {
  position: absolute;
  top: 25%;
  left: 50%;
  width: 0;
  height: 7px;
  background: #fff;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: width 0.8s ease, opacity 0.8s ease;
}
/* 활성화 된 상태 스타일 */
.active .move-letter.left {
  transform: translateX(-90px);
}
.active .move-letter.right {
  transform: translateX(90px);
}
.active .move-bar {
  width: 166px;
  opacity: 1;
}
/* e::bar 움직임 */


.solution_img {
  width:740px;
  background: url(../img/main/banner_image_01.png) no-repeat center center / cover;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 1.5rem;
  border-radius: 30px;
  padding:60px;
  position: relative;
  overflow: hidden;
}
.solution_img:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  padding-bottom: 0;
  left: 0;
  top: 0;
  z-index: 0;
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 37%);

}
.solution_img_txt {
  font-size: 40px;
  line-height: 5.6rem;
  font-weight: 700;
  color:#fff;
  text-align: left;
  position: relative;
}

.solution_list {
  width:calc(100% - 755px);
  margin-left: 1.5rem;
}

.solution_list li {
  background-color: #fff;
  border-radius: 3.0rem;
  padding:4.2rem;
  text-align: left;
  margin-bottom: 1.5rem;
}

.solution_list li p:nth-child(1) {
  font-family: "Poppins", sans-serif;
  font-size:1.6rem;
  line-height: 2.3rem;
  font-weight: 600;
  letter-spacing: 1px;
  color:#4769FD;
}
.solution_list li p:nth-child(2) {
  font-size:3.4rem;
  line-height: 4.0rem;
  font-weight: 700;
  color:#2E3545;
  margin: 0.8rem 0 2.8rem;
}
.solution_list li p:nth-child(3) {
  font-size:1.8rem;
  line-height: 3.0rem;
  color:#2E3545;
  margin-bottom: 3.0rem;
}

.solution_list li:hover {
  background-color: #2E3545;
  cursor: pointer;
}
.solution_list li:hover p {
  color:#fff;
}
.solution_list li:hover {
  background-color: #2E3545;
  cursor: pointer;
}
.solution_list li:hover .round-go-btn {
  background-color: #fff;
  color: #2E3545;
}
.solution_list li:hover .round-go-btn:after {
    background-image: url('../img/icon_arrow_b.png');
}
/* e:: section02-container */

/* s:: section03-container (qustion/process) */
.section03-container {
  background : #000000 url(../img/main/bg_section03.png) no-repeat top center;
  background-size: 100%;
  color:#fff;
  text-align: center;
  padding-top: min(20vw, 337px);
  padding-bottom: min(20vw, 192px);
}
.section03-container .sub-mid-tit {
  margin-bottom: 7.0rem;
}

.qustion_img_wrap {
  margin: 88px 0 90px;
}
.qustion_img {
  position: relative;
  margin: 0 auto;
  max-width: 865px;
  width:100%;
  background: url(../img/main/img_qustion_man.png) no-repeat 34% bottom;
  
}
.qustion_img > img {opacity: 0; width:100%;}
.txt_object {
  position: absolute;
  z-index: 1;
}
.txt_bubble01 {left:12px; top:210px;z-index: 1;}
.txt_bubble02 {left:77px; top:31px;z-index: 1;}
.txt_bubble03 {right:36px; top:4px;z-index: 1;}
.txt_bubble04 {right:22px; top:174px;z-index: 1;}
.txt_bubble05 {right:-13px; top:260px; z-index: 0;}

.count-list ul {
  display: flex;
  justify-content: center;
}
.count-list li {
  position: relative;
  padding-right:62px;
}

.count-list li:first-child {
  margin-right: 92px;
}

.count-list li .count{
  font-family: "Poppins", sans-serif;
  font-size:186px;
  line-height: 150px;
  font-weight: 600;
  display: inline-block;
  letter-spacing: -5px;
}
.count-list li:nth-child(1) {width:240px;}
.count-list li:nth-child(2) {width:354px;}

.count-list li span:nth-child(2){
  font-size:0;
  width:46px;
  height: 46px;
  background:url(../img/icon_plus_white.png) no-repeat center center / cover;
  position: absolute;
  right:0;
  top:0;
}
.count-list li p{
  font-size:20px;
  font-weight: 700;
  position: absolute;
  right:0;
  bottom:0;
}

.count-list .txt-area p {margin-top: 40px;}
.count-list .txt-area p:first-child {font-size:16px; color:#B4B4B4; }

.process {margin-top: 220px;}
.process .main_blue_small_tit {margin-bottom: 3.2rem;}
.process ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 93px;
}
.process ul li {
  padding-left:8.0rem;
  position: relative;
  margin-bottom: 80px;
}
.process ul li:after {
  content: "";
  width:46px;
  height: 17px;
  position: absolute;
  left:17px;
  top:57%;
  z-index: 0;
  transform: translateY(-50%);
  background: url(../img/icon_arrow_half_blue.png) no-repeat center center / contain;
  
}
.process ul li:first-child {
  padding-left:0;
}
.process ul li p:first-child{
  font-family: "Poppins", sans-serif;
  font-size:17px;
  font-weight: 600;
  color: #476AFD;
}
.process ul li p:nth-child(2){
  font-size:24px;
  line-height: 28px;
  font-weight: 500;
  color: #ffffff;
}

.step_icon {
  position: relative;
  z-index: 1;
  width: 26.0rem;
  height: 26.0rem;
  background-color: #476AFD;
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 50%;
  margin: 3.4rem auto 0;
}
.process li:nth-child(1) .step_icon {background-image:url(../img/main/step_icon_01.png);}
.process li:nth-child(2) .step_icon {background-image:url(../img/main/step_icon_02.png);}
.process li:nth-child(3) .step_icon {background-image:url(../img/main/step_icon_03.png);}
.process li:nth-child(4) .step_icon {background-image:url(../img/main/step_icon_04.png);}
/* e:: section03-container (qustion/process) */

/* s:: section04-container (why us)*/
.section04-container {
  background-color: #F4F8FB;
  text-align: center;
  padding:106px 0 170px;
}
.section04-container .main-small-tit{
  margin-top: 5.1rem;
}
.section04-container .sub-mid-tit {
  font-weight: 500;
  margin: 5.6rem 0 8.9rem;
}


.review-slide .swiper-wrapper {
    transition-timing-function: linear !important;
}

.review-slide li {
  width:41.6rem;
  padding:3.9rem 2.8rem;
  background-color: #fff;
  border-radius: 30px;
  box-shadow: 0 6px 24px 3px rgba(216,230,240,0.9);
  text-align: left;
  margin:30px 0;
  min-height: 336px;
}
.review-slide li .review-name {
  font-size: 1.6rem;  
  color:#000;
  font-weight: 600;
}
.review-slide li .review-point {
  font-size:1.8rem;
  color:#476AFD;
  font-weight: 600;
}
.review-slide li .review-txt {
  font-size:2.0rem;
  line-height: 3.2rem;
  color:#000;
  font-weight: 500;
  margin-top: 4.0rem;
  
  
}
/* e:: section04-container (why us) */

/* s:: section05-container (mail form) */
.section05-container {
  background-color: #ffffff;
  color:#000;
  padding:157px 0 164px;
}
.section05-container .flex-left-wrap {
  width:351px;
  word-break: keep-all;
}
.section05-container .txt-area .main-small-tit {
  margin: 2.9rem 0 6.3rem;
  letter-spacing: -2px;
}
.company-info h4 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-size:2.2rem;
  line-height: 3.1rem;
  color:#476AFD;
  margin-bottom: 1.4rem;
}
.company-info > p {
  font-size:1.8rem;
  line-height: 2.6rem;
  color:#000000;
  font-weight: 500;
  margin-bottom: 4.6rem;
}
.mail-form-wrap table {
  border-collapse:collapse;
  width:100%;
}
.mail-form-wrap table th {
  text-align: left;
  padding: 10px 0 10px 50px;
  width:160px;
}
.mail-form-wrap table td {
  padding:10px;
}
.mail-form-wrap table td .tel {
  width:120px;
}
.mail-form-wrap input {
  border:1px solid #C6C6C6;
}
.mail-form-wrap input[type="text"] {
  width: 100%;
  height: 56px;
  border-radius:8px;
  font-size:1.8rem;
  padding-left:10px;
}
.mail-form-wrap input::placeholder {
  color: #C6C6C6;
  font-size:1.8rem;
}
.mail-form-wrap select {
  width: 100%;
  height: 56px;
  border-radius:8px;
  padding-left:10px;
  border:1px solid #C6C6C6;
}

.mail-form-wrap textarea {
  width: 100%;
  height: 76px;
  border-radius:8px;
  padding-left:10px;
  border:1px solid #C6C6C6;
}

.btn_apply {
  width: calc(100% - 50px);
  margin-left: 50px;
  margin-top: 50px;
  font-size: 1.6rem;
  padding: 1.2rem 4.5rem;
  color: #fff;
  transition: all 0.3s;
  background-color: #476AFD;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.0rem;
  position: relative;
}
/* e:: section05-container (mail form) */

/* s:: section06-container */
.section06-container {
  background-color: #F4F8FB;
  position: relative;
  padding:73px 0 180px;
}
.section06-container:after {
  content: "";
  display: block;
  position: absolute;
  width:100%;
  height: 50px;
  background-color: #F4F8FB;
  border-radius: 0 0 50px 50px;
  bottom:-50px;
}
/* e:: section06-container */

@media (max-width: 1280px) {
  
  .main_title_txt {
    padding: 125px 0 112px;
    background-size: 50%;
  }
  
  .main_title_sub_txt {
    font-size: 32px;
    line-height: 40px;
  }
  
  .main-slide-wrap .mainSwiper .swiper-slide {
    height: 463px;
  }
  
  .main_object.object04 {
    right: -10%;
    top: -14%;
  }
  /*
  .main_object.object02 {
    left: 378px;
    top: 0;
  }
    */
  
  .circle-container-wrap .round-content {
    width: 100%;
  }
  
  .solution_img {width:50%; height: inherit; }
  .solution_img img {height: calc(100% - 15px); border-radius: 3.0rem; object-fit: cover;}
  .solution_list {width:calc(50% - 15px);}
  .solution_list li {
    padding: 3.2rem;
  }
  .solution_list li p:nth-child(2) {
    font-size: 3.4rem;
    line-height: 4.8rem;
    margin: 1.2rem 0 2.3rem;
  }
  .solution_list li p:nth-child(3) {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin-bottom: 2.8rem;
  }
  
  .process ul li:after {top: 64%;}
  .process ul li p:nth-child(2) {font-size: 20px;}
  .step_icon {
    width: 15rem;
    height: 15rem;
    background-size: 50%;
  }

  
    
}

@media (max-width: 1024px) {
  
  .main-container {
    margin-top: 12rem;
  }
  main_title_txt {
    padding: 100px 0 80px;
  }
  .main_title_main_txt {
    font-size: 5rem;
    line-height: 6.6rem;
  }
  .main_title_sub_txt {
    font-size: 24px;
    line-height: 32px;
  }
  .main-slide-title .big-tit {
    font-size: 40px;
    line-height: 48px;
  }
  .main-slide-title .sub-small-tit {
    font-size: 2.0rem;
    line-height: 2.8rem;
  }
  
  .section01-container {padding: 90px 0 70px;}
  
  .outer-circle img {
    width: 35%;
  }
  .txt_bubble01 {
    left: -45px;
  }
  .txt_bubble02 {
    left: 29px;
  }
  .txt_bubble03 {
    right: -28px;
  }
  .txt_bubble04 {
    right: -77px;
  }
    
  .count-list li:first-child {margin-right: 60px; }    
  .count-list li:nth-child(1) {width:169px;}
  .count-list li:nth-child(2) {width:250px;}
  
  .count-list li .count {
    font-size: 136px;
    line-height: 124px;
  }
  .count-list li span:nth-child(2) {
    width: 36px;
    height: 36px;
  }
  .step_icon {
    width: 168px;
    height: 168px;
    background-size: 37%;
  }
  
  .section02-container {padding: 90px 0 90px; }
  .solution_img {flex-wrap: wrap;}
  
  .section03-container {
    padding-bottom: min(20vw, 48px);
  }
  .section05-container .flex-left-wrap, 
  .flex-left-wrap{
    width: 40%;
  }
  .flex-right-wrap {
    width: 60%;
  }
  
  .section04-container {
    padding: 64px 0 93px;
  }
  .section05-container {padding: 90px 0 80px;}
  
  .outer-circle {
    width: 25%;
    height: 25%;
    top: 38%;
    left: 37%;
    transform: rotate(calc(72deg * var(--i))) translateY(-250px) rotate(calc(-72deg * var(--i)));
  }
  .center-circle {
    width: 26%;
    height: 26%;
  }
  .circle-container::before {
    width: 527px;
    height: 527px;
  }
  
  .mail-form-wrap table th {padding: 10px 0; width: auto; font-size:1.6rem;}
  .mail-form-wrap table td {padding: 10px 5px; font-size:1.4rem;}
  .mail-form-wrap table td .tel {width: 67px;}
  .mail-form-wrap input[type="text"] {height: 40px; font-size: 1.4rem;}
  .mail-form-wrap select {height: 40px;}
  .mail-form-wrap input::placeholder {font-size:1.4rem;}
  .btn_apply {width: 100%; margin-left: 0; margin-top: 20px;}
  .section06-container .txt-area{margin-bottom: 30px;}
  

}

/* 아이패드 프로 */
@media (max-width: 1024px) and (min-height: 1360px) {
  /*
  .main-slide-wrap {
    height: calc(70vh - 8rem);
  }
*/
}

@media (max-width: 768px) {
  
  .main_title_txt {
    background-size: 100%;
    padding: 120px 0 8px;
    margin-bottom: 56px;
  }
  
  .main_title_main_txt {
    font-size: 36px;
    line-height: 49px;
  }
  .main_title_sub_txt {
    font-size: 18px;
    line-height: 25px;
  }
  .shell_txt {
    text-align: center;
  }
  .shell_txt img {
    width:100%;
    max-width: 100%;
  }
  .main_object.object01 {
    width: 369px;
    height: 368px;
    left: -242px;
    top: 63px;
  }
  .main_object.object02 {
    width: 391px;
    height: 391px;
    left: 50%;
    margin-left: -190px;
    top: 102%;
  }
  .main_object.object03 {
    width: 303px;
    height: 406px;
    right: -214px;
    bottom: -157px;
  }
  .main_object.object04 {
    right: -10%;
    top: -30%;
  }
  .main-slide-wrap .mainSwiper .swiper-slide {
    padding: 42px 30px;
  }
  
  .main-slide-title .big-tit {
    font-size: 28px;
    line-height: 36px;
    letter-spacing: -0.5px;
  }
  
  .main-slide-title .sub-small-tit {
    font-size: 16px;
    line-height: 23px;
  }
  
  .section01-container .info-mid-tit {
    margin: 48px 0 5.0rem;
  }
  

  .section02-container .flex-container{
    flex-wrap: wrap;
  }
  
  .move-bar {
    height: 3px;
  }
  .active .move-bar {
    width: 94px;
  }
  .active .move-letter.left {
    transform: translateX(-52px);
  }
  .active .move-letter.right {
    transform: translateX(52px);
  }
  
  .solution_img {
    width:100%;
  }
  .solution_img:before {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  }
  
  .solution_img .round-go-btn-w { margin-top: 2.8rem;}
  
  .solution_list {
    width:100%;
    margin-left: 0;
  }
  .solution_list li p:nth-child(2) {
    font-size: 28px;
    line-height: 36px;
  }
  
  .section03-container .main-mid-tit {
    font-size: 28px;
    line-height: 38px;
  }
  
  .qustion_img {
    margin: 88px 0 40px;
    background-size: 42%;
    background-position: 47% bottom;
  }
  
  .txt_object img{
    width:80%;
    /*max-width: 80%;*/
  }
  .txt_bubble01 {
    left: 0;
    top: 161px;
    text-align: left;
  }
  .txt_bubble02 {
    left: 11vw;
    top: 7vw;
    text-align: left;
  }
  .txt_bubble03 {
    right: 0;
    top: 3vw;
    text-align: right;
  }
  .txt_bubble04 {
    right: -4vw;
    top: 20vw;
    text-align: right;
  }
  .txt_bubble05 {
    right: 0;
    top: 29vw;
    text-align: right;
  }

  
  .count-list .txt-area p:first-child {
    font-size: 12px;
  }
  
  .process {
    margin-top: 110px;
  }
  .process .main_blue_small_tit {
    margin-bottom: 6px;
  }
  
  .section04-container {
    padding: 90px 0 90px;
  }
  
  .section04-container .main-small-tit {
    margin-top: 10px;
  }
  
  .section04-container .sub-mid-tit {
    margin: 42px 0 54px;
  }
  .section05-container .flex-left-wrap, 
  .flex-left-wrap{
    width: 100%;
  }
  .flex-right-wrap {
    width: 100%;
  }
}

@media (max-width: 680px) {
  .outer-circle {
    width: 30%;
    height: 30%;
    top: 35%;
    left: 35%;
  }
  .outer-circle p {  
    line-height: 18px;
  }
  .center-circle {
    width: 36%;
    height: 36%;
  }
}

@media (max-width: 650px) {
  
  .main_object.object02 {
    width: 273px;
    height: 273px;
    margin-left: -136px;
    top: 110%;
  }
  .main_object.object04 {
    right: -27%;
  }
  
  .count-list li {
    padding-right: 27px;
  }
  .count-list li span:nth-child(2) {
    width: 20px;
    height: 20px;
  }
  .count-list li .count {
    font-size: 80px;
    line-height: 72px;
  }
  .count-list li p {
    font-size: 14px;
  }
  .process ul li {
    width:50%;
    padding-left: 0;
  }
  .process ul li p:first-child {
    font-size: 14px;
  }
  .process ul li p:nth-child(2) {
    font-size: 16px;
  }
  .process ul li:after {
    background:none;
  }
  .process ul li:after {
    left: -12px;
    top: 146%;
    background-size: 50%;
  }
  .step_icon {
    width: 100px;
    height: 100px;
    margin: 15px auto 0;
  }
  
  .solution_img {
    padding: 41px 32px;
  }
  .solution_img_txt {
    font-size: 26px;
    line-height: 34px;
  }

  .solution_list {
    width:100%;
    margin-left: 0;
  }
  .solution_list li p:nth-child(1) {
    font-size: 1.4rem;
  }
  .solution_list li p:nth-child(2) {
    margin: 5px 0 16px;
    font-size: 24px;
    line-height: 36px;
  }
  .solution_list li p:nth-child(3) {
    font-size: 1.4rem;
    line-height: 2.0rem;
  }
  
  .qustion_img_wrap {
    margin: 48px 0 36px;
  }
  .qustion_img {
    margin: 0;
    padding-bottom: 30px;
    background-position: 42% bottom;
  }
  .txt_object img {
    width: 50%;
  }
  .txt_bubble01 {
    text-align: left;
    left: 0;
    top: 31vw;
  }
  .txt_bubble02 {
    left: 7vw;
    top: 13vw;
  }
  .txt_bubble03 {
    right: 0;
    top: 9vw;
  }
  .txt_bubble04 {
    right: -6vw;
    top: 28vw;
  }
  .txt_bubble05 {
    top: 40vw;
  }
  
  .count-list li:nth-child(1) {width:103px;}
  .count-list li:nth-child(2) {width:148px;}
  .count-list li:first-child {margin-right: 30px; }
  
  .review-slide li {
    min-height: 388px;
  }
  .review-slide li .review-txt {
    font-size: 1.4rem;
    line-height: 2.0rem;
    margin-top: 2.0rem;
  }
  .section05-container .flex-left-wrap, .flex-left-wrap {
    text-align: center;
  }
  .company-info h4 {
    font-size: 2.0rem;
    line-height: 2.2rem;
  }
  .company-info > p {
    margin-bottom: 3.6rem;
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  
  .section06-container {
    padding: 73px 0 80px;
  }
  
}

@media (max-width: 600px) {
  .outer-circle {
    transform: rotate(calc(72deg * var(--i))) translateY(-160px) rotate(calc(-72deg * var(--i)));
  }
  .circle-container::before {
    width: 320px;
    height: 320px;
  }
}


@media (max-width: 400px) {

  .outer-circle {
    width: 35%;
    height: 35%;
    top: 33%;
    left: 32%;
    transform: rotate(calc(72deg * var(--i))) translateY(-120px) rotate(calc(-72deg * var(--i)));
  }
  .circle-container::before {
    width: 240px;
    height: 240px;
  }
}
