.quick{width:115px;position: fixed; right: 20px; top:50%; text-align: center;z-index: 9;}
.quick .one{border-radius: 5px; background:#424e7d; padding: 15px; font-size: 16px;}
.quick .one .title{ color:#fff;    border-bottom: 1px solid #fff;
    padding: 0 0 10px 0;
    margin: 0 0 10px;}
.quick .one a{ color:#fff;}
.quick .two{padding:20px 0 55px; font-size: 18px;}
.quick .two a{color: #424e7d;}
.quick #top_btn2{color: #424e7d; font-size: 16px; border:0; background: #f0f0f0;    width: 100%;
    padding: 5px 0; border-radius: 5px;}

.pc_on{display: block;}
.mo_on{display: none;}

.bt_black_line{    background: #fff !important;  color: #000 !important;  border: 1px solid #000 !important; border-radius: 0; font-size:18px !important;    padding: 10px 20px !important;
    height: auto !important;
    font-weight: 600 !important;}
.bt_black_line i{display:none;}
.bt_black_line img{height:30px;}

.b_container{padding:175px 0 175px;}
.b_container2{padding:130px 0 175px;}
.w_container{max-width: 1450px !important; color:#fff;}
.l_container{padding:105px 12px 0px;}
.l_container .t_title{text-align: center;}
.l_container .t_title .text1{font-size: 35px; font-weight: 700;margin: 0;}
.l_container .t_title .text2{font-size: 18px; color: #b1b1b1;margin: 10px 0 55px;}

.b_container2 .t_title{max-width:1450px; padding:0 15px; margin: auto;     display: flex;  justify-content: space-between; align-items: center;}
.b_container2 .t_title .left{text-align: left;}
.b_container2 .t_title .text1{font-size: 35px; font-weight: 700;}
.b_container2 .t_title .text2{font-size: 20px; color: #b1b1b1;margin: 10px 0 75px;}
.b_container2 .t_title .text3{font-size: 18px; }
.b_container2 .t_title .text4{font-size: 14px; color: #b1b1b1;}
.b_container2 .t_title .right{text-align: right;display: flex; justify-content: flex-start; align-items: center;margin: -5px 0 0 0;}
.b_container2 .t_title .right a{font-size:16px; font-weight:600; border: 1px solid #000; padding:10px 20px; text-align: center;display:block; margin:0 15px}


body.fixed .navbar{        background: #141937;}
nav{/*border-bottom: 1px solid #000;*/}
nav .top_icon{display: flex; align-items: center;    margin: 10px 0 0 0;}
nav .top_icon a.einsta svg{width:36px;}
nav .top_icon a.eblog{    margin: 0 17px 0 11px;}
nav .top_icon a.eblog svg{width:25px;}
nav .top_icon a.eyoutube svg{width:32px; height: 63px;}

.navbar-nav .link_img img{height:20px; margin:0 10px 0 0;}

.navbar-brand{color:#fff;font-family: 'Paperlogy'; font-size:20px;display: flex; gap: 10px;align-items: center;}
.navbar-brand:hover{color:#fff;}
.navbar-brand img{width:20px;}

.navbar-brand .kr{font-weight: 400; font-family: "Pretendard Variable";}

.nav-link{color:#fff; font-weight: 400; font-size:18px;}
.nav-link:hover{color:#fff;}

.navbar-collapse{    justify-content: end;}
 

/* ===== 모바일 CTA ===== */
.footer_cta{
  margin-top: 40px; font-family: 'Paperlogy'; position:fixed; bottom:15px; z-index: 999; width:91.5%;
}

/* 버튼 전체 */
.footer_cta_box{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;

  background: #cfcfcf;
  border-radius: 60px;
  padding: 12px 14px 12px 22px;
  text-decoration: none;

  box-shadow: 0 0 25px rgba(120,140,255,0.25);
}

/* 왼쪽 텍스트 */
.footer_cta .cta_text{
  font-size: 14px;
  color: #333;
  font-weight: 500;
}

/* 오른쪽 버튼 */
.footer_cta .cta_btn{
  display: flex;
  align-items: center;
  gap: 8px;

  background: #2e2e2e;
  color: #fff;
  padding: 10px 18px;
  border-radius: 40px;
  font-size: 14px;
  white-space: nowrap;
}

/* 화살표 */
.footer_cta .arrow{
  position: relative;
  display: inline-block;
  width: 22px;   /* 전체 길이 */
  height: 17px;
  margin-right: 8px;
}

/* 직선 */
.footer_cta .arrow::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:100%;
  height:1px;
  background:#fff;
  transform:translateY(-50%);
}

/* 화살촉 */
.footer_cta .arrow::after{
  content:"";
  position:absolute;
  right:0;
  top:50%;
  width:12px;
  height:12px;
  border-top:1px solid #fff;
  border-right:1px solid #fff;
  transform:translateY(-50%) rotate(45deg);
}

@media (min-width: 990px) {
    
    .navbar-nav .dropdown-toggle::after{content:none;}
    .navbar-nav .link_img{display:none;}
    .navbar-nav .dropdown-menu{        border: 1px solid #000;  top: 60px; right: -54px; padding: 0;}
    .navbar-nav .dropdown-menu .nav_in a{line-height: 40px;  padding: 0 20px;  font-weight: 500;}
    .navbar-nav .dropdown-menu .nav_in a:nth-child(1){border-bottom: 1px solid #000;}
    .navbar-nav li:nth-child(3):after{content:none;}
    /*.navbar-expand-lg .navbar-nav .dropdown-menu {
        position: fixed;
        top: 96px;
        left: 0; border:0;padding: 20px 0;
    }
    
    .navbar-nav .dropdown-item{display: inline-block;  width: auto;        margin: 0 25px 0 0;}
    
    .navbar-nav .nav_in{max-width: 1695px; margin:auto;        padding: 0 0 0 735px;}*/
}



.main{padding:0px 0 0 0;}
.main .inner{  max-width: 1450px; margin:auto; padding:0 15px;}

@media (min-width: 1101px) and (max-width: 1399px) {
    .main .inner{max-width:100%;}
}

.main .main1{position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
  z-index: 1; /* 아래 섹션이 더 위로 오려면 intro가 더 큰 z-index */
}
.main .main1 .text1{position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);    color: #fff;
    font-size:50px;
    width: 100%;
    text-align: center;
    font-weight: 600; 
    text-shadow: 2px 5px 7px rgba(0, 0, 0, 0.3);
   
}
.main .main1 .foto img{width:100%;}

.main .main_box{background:#141937;position: relative;
  z-index: 5;              /* hero보다 크게 */
   margin-top: 220px;     
  border-radius: 45px 45px 0 0; 
  padding: 145px 24px;
  box-shadow: 0 -20px 40px rgba(0,0,0,.25);  }
.main .main_inbox1{text-align: center; color:#fff;}
.main .main_inbox1 .text1{font-size: 78px; font-weight: 500;}
.main .main_inbox1 .text2{font-size: 28px; font-weight: 200;}
.main .main_inbox1 .text3{font-size: 22px;  line-height: 1.8; font-weight: 400;opacity: .6;}

.main_inbox1 .in_slide1{
  width: 100%;
    max-width: 350px;
  overflow: hidden;
        margin: 105px auto;
}

.main_inbox1 .in_slide1 .swiper-wrapper{
  transition-timing-function: linear !important; /* 핵심: 등속 */
}

.main_inbox1 .in_slide1 .swiper-slide{
  width: auto;                 /* 로고 폭만큼 */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 28px;             /* 로고 사이 간격 */
}

.main_inbox1 .in_slide1 .swiper-slide img{
  height: 35px;                /* 원하는 높이 */
  width: auto;
  display: block;
  opacity: .7;                 /* 필요시 */
}

/* 좌측 페이드 */
.main_inbox1 .in_slide1::before{
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 120px;                /* 페이드 영역 넓이 */
  height: 100%;
  z-index: 5;
  pointer-events: none;
  background: linear-gradient(
    to right,
    #141937 0%,
    rgba(20,25,55,0.8) 25%,
    rgba(20,25,55,0) 100%
  );
}

/* 우측 페이드 */
.main_inbox1 .in_slide1::after{
  content: '';
  position: absolute;
  right: 0;
  top: 0;
  width: 120px;
  height: 100%;
  z-index: 5;
  pointer-events: none;
  background: linear-gradient(
    to left,
    #141937 0%,
    rgba(20,25,55,0.8) 25%,
    rgba(20,25,55,0) 100%
  );
}

.main_inbox1 .in_slide1 .swiper-wrapper{
  transition-timing-function: linear !important;
}

.main_inbox1 .in_slide1 .swiper-slide{
  width: auto;
  padding: 0 10px;
}


/* ===== .main_inbox2 ===== */
.main_inbox2{ width:100%; margin:185px 0 0;}

/* 탭 */

/* 타이틀 */
.main_inbox2 .in2_tab{
  display:flex;
  gap: 65px;
  align-items:center;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.25);
}

.main_inbox2 .tab_title{
  color:#fff;
  font-size: 20px;
  line-height: 1;   
  font-weight: 600;
  margin-right: 8px; /* CATEGORY와 첫 탭 간격 */
  white-space: nowrap;
}

.main_inbox2 .tab_box{    display: flex;  gap: 40px;}

/* 슬라이드 위에 고정되는 정보 바 */
.main_inbox2 .in2_info{
  position:relative;
  left: 0;
  top: 0;
  z-index: 10;
  width: 100%;
    font-weight: 300;
  padding: 10px 0 15px;
  color: rgba(255,255,255,.9);
  font-size: 16px; 

  /* 필요하면 살짝 어둡게 깔기(가독성) */
  /* background: linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,0)); */
  pointer-events: none; /* 클릭/드래그 방해 안 하게 */
}

.main_inbox2 .in2_info .info_item{
  opacity: .9;
}

.main_inbox2 .in2_info .info_sep{
  display: inline-block;
  margin: 0 14px;
  opacity: .5;
}
 
.main_inbox2 .tab_btn{
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  color: #afafaf; /* 비활성 */
  transition: color .2s ease; font-weight: 500;
}
.main_inbox2 .tab_btn.is-active{ color:#fff; } /* 활성 */
.main_inbox2 .tab_btn:focus{ outline: none; }

/* 패널 show/hide */
.main_inbox2 .tab_panel{ display:none; }
.main_inbox2 .tab_panel.is-active{ display:block; }

/* 슬라이드 */
.main_inbox2 .in2_slide{
  width: 100%;
  height: clamp(420px, 52vw, 760px);
  margin-top: 0px;
  overflow: hidden;
}
.main_inbox2 .in2_slide .swiper-slide{}
.main_inbox2 .in2_slide img{
  width: 100%;
  height: 100%;
}
.main_inbox2 .in2_slide img{
  display:block;
  object-fit: cover;
}

.main_inbox2 .in2_slide .mo_on{display:none !important}

/* 네비(기본 화살표 쓰고 싶으면 그대로) */
.main_inbox2 .swiper-button-prev,
.main_inbox2 .swiper-button-next{
  color:#fff;
}



/* 슬라이드 영역 기준 */
.main_inbox2 .in2_slide{
  position: relative;    margin: 25px 0 0 0;
}

/* 공통 */
.main_inbox2 .in2_slide .swiper-button-prev,
.main_inbox2 .in2_slide .swiper-button-next{
  width: 56px;
  height: 56px;
  top: 40%;
  transform: translateY(-50%);
  margin-top: 0;
  color: #fff;
  opacity: .9;
}

/* 기본 아이콘 제거 */
.main_inbox2 .in2_slide .swiper-button-prev::after,
.main_inbox2 .in2_slide .swiper-button-next::after{
  display: none;
}

/* 화살표 선으로 제작 */
.main_inbox2 .in2_slide .swiper-button-prev::before,
.main_inbox2 .in2_slide .swiper-button-next::before{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 34px;
  height: 34px;
  border-top: 1px solid rgba(255,255,255,.9);
  border-right: 1px solid rgba(255,255,255,.9);
  transform-origin: center;
}

/* 방향 */
.main_inbox2 .in2_slide .swiper-button-prev::before{
  transform: translate(-50%, -50%) rotate(-135deg);
}

.main_inbox2 .in2_slide .swiper-button-next::before{
  transform: translate(-50%, -50%) rotate(45deg);
}

/* 위치 */
.main_inbox2 .in2_slide .swiper-button-prev{
  left: 12px;
}

.main_inbox2 .in2_slide .swiper-button-next{
  right: 12px;
}

/* hover */
.main_inbox2 .in2_slide .swiper-button-prev:hover,
.main_inbox2 .in2_slide .swiper-button-next:hover{
  opacity: 1;
}

/* ===== main_inbox3 ===== */
.main_inbox3{
  color: #fff;
  padding: 64px 0px 90px;
}

 

/* 상단 라벨 + 라인 */
.main_inbox3 .in3_top{
  padding:0 0 18px 0;
    border-bottom: 1px solid #fff;
}
.main_inbox3 .in3_title{
  font-size: 20px;
    line-height: 1; 
    font-weight: 600;
}
 
.main_inbox3 .in3_title2{
  font-size: 45px;
    line-height: 1;
    font-family: 'Paperlogy';
    font-weight: 600;
    margin: 0 0 30px 0;
}

/* 중앙 컨텐츠 */
.main_inbox3 .in3_center{ 
  display:flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  text-align: center;
  padding-bottom: 36px;
        margin: 100px 0 0 0;
}

.main_inbox3 .in3_center img{width:100%;}

.main_inbox3 .in3_slide .swiper-wrapper{    transform: none !important;}
.main_inbox3 .in3_slide .stackCreative {
    width: 95%;
    max-width: 100%;
    height: 520px; /* 명시적인 높이값 권장 */
    margin: 0 auto;
    overflow: visible !important; /* 카드 겹침 필수 */
}

.main_inbox3 .in3_slide .stackCreative {    margin: 50px auto 160px;}

/* 카드 메인 박스 레이아웃 조정 */
.main_inbox3 .in3_slide .card_box {
    width:100%;
    /*height: min(520px, 50vh);*/
    height:395px;
    background: #EBEBE9;
    border-radius: 40px;
    padding: 50px;
    box-shadow: 0 30px 60px rgba(0,0,0,0.2);
    display: flex;
    flex-direction: column; /* 기본 세로 배치 */
    box-sizing: border-box;
    text-align: left;
    position: relative; color:#353535;  
}


 .stack-container {
      position: relative;
      height: 60vh !important;
      display: flex;
      align-items: center;
      justify-content: center;
    }

.main_inbox3 .in3_slide .card_box2 {
      position: absolute;
      width: 95%; 
    background: #EBEBE9;
      height: 395px;
      border-radius: 40px;
      padding: 50px;
      box-shadow: 0 -10px 30px rgba(0,0,0,0.5);color:#353535; 
 
    }

.main_inbox3 .in3_slide .card_in{}

/* 상단 헤더 */
.main_inbox3 .in3_slide .card_header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
}

.main_inbox3 .in3_slide .card_title{font-size:50px;    
    font-weight: 700;}
.main_inbox3 .in3_slide .card_num{font-size:26px;}

/* 본문과 태그를 감싸는 컨테이너 (PC에서 가로 배치) */
.main_inbox3 .in3_slide .card_content_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; /* 하단에서 상단 정렬로 변경 */
    flex-grow: 1;
    margin-top: 30px; /* 제목과의 간격 */
}

/* 본문 영역 */
.main_inbox3 .in3_slide .card_body {
    flex: 1;
    margin-right: 40px;
    font-size: 20px;
    min-height: 185px;
}

/* 태그 영역 (PC에서 세로로 쌓기) */
.main_inbox3 .in3_slide .card_tags {
    display: flex !important;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    flex-shrink: 0;
    margin-top: auto; /* 중요: 본문이 짧아도 태그는 항상 하단에 위치하게 함 */
    align-self: flex-end; /* 자신만 바닥으로 밀기 */
}

.main_inbox3 .in3_slide .card_tags span {
    background: #353535;
    color: #fff;
    padding: 8px 18px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 500;
    white-space: nowrap; /* 줄바꿈 방지 */
}
 

/* 리스트 */
.main_inbox3 .in3_list{
  list-style: none;
  padding: 0 0 0 45px;
  margin: 0;
  /*width: min(570px, 100%);*/
  text-align: left;
}

.main_inbox3 .in3_list li{
  position: relative;
  padding-left: 26px;
  font-size: 24px;
  line-height: 1.9;
  margin: 10px 0;
  font-weight: 400;
  color: rgba(255,255,255,.92);
}

/* 삼각형 불릿 */
.main_inbox3 .in3_list li::before{
  content: '';
  position: absolute;
  left: 0;
  top: .65em;
  width: 0; height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid rgba(255,255,255,.9);
}


.card{    background-color: transparent;} 

.main_work{margin:80px 0 205px}
.main_work .title{font-size: 20px;
    line-height: 1; 
    font-weight: 600; margin:0 0 25px 0;    padding: 0 0 18px 0;
    border-bottom: 1px solid #fff; color:#fff;}
.main_work .title a{font-size:16px;    margin: 0 0 0 50px;}
.main_work .title a img{height:28px; margin:-3px 15px 0 0 ;}
.main_work .more{text-align: center;    margin: 50px 0 0 0;}
.main_work .more a{font-size:18px; font-weight:300; border: 1px solid #fff; padding:15px 110px; display:inline-block;transition: all ease 0.3s;    background: rgba(255, 255, 255, 0.2); color:#fff;}
.main_work .more a:hover{background: #000; color:#fff;}
.main_work .box_card{display: grid; grid-template-columns: 1fr 1fr; gap:20px;}
.main_work .box_card .box_in{}

.main_text_slide{ 
  color:#fff;
  padding: 80px 24px 90px;
}

.main_text_slide .mts_inner{
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}

.main_text_slide .mts_slide{position: relative;}

/* Swiper 영역 */
.main_text_slide .mts_swiper{
  position: relative;
  min-height: 520px;
  display:flex;
  align-items:center;
  overflow: hidden;
    max-width:75%;
}
 
.main_text_slide .mts_swiper .swiper-wrapper{ }

.main_text_slide .swiper-slide{
  position: relative;
  text-align: center;
  padding: 30px 12px 40px;
    background:red;
        border-radius: 65px;
border:1px solid #fff;
    width:46%;
    box-shadow:0 10px 25px -7px rgba(255, 255, 255, .6);
    overflow:hidden;    margin: 0 0 30px 0;
}
 

/* 1. 기본적으로 모든 슬라이드를 투명하게 숨김 */
.main_text_slide .swiper-slide {
  opacity: 0;
   
}

/* 2. 중앙(active)과 바로 양옆(prev, next) 슬라이드만 보이게 설정 */
.main_text_slide .swiper-slide-active,
.main_text_slide .swiper-slide-prev,
.main_text_slide .swiper-slide-next {
  opacity: 1;
}
.main_text_slide .swiper-slide{background: url('/theme/ggongjon_works/img/bg_review_card.jpg') center/cover;}


/* 기본 슬라이드는 흐리게 */
.main_text_slide .swiper-slide .mts_box{
  opacity: 0; /* 원하는 흐림 정도로 조절 */
  /*transition: opacity 0.3s ease;*/ /* 부드러운 전환 */
}

/* 중앙 활성화 슬라이드는 선명하게 */
.main_text_slide .swiper-slide-active .mts_box {
  opacity: 1;
}

.main_text_slide .bg_blur{position: absolute; inset: 0; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); z-index: 0; background: rgba(0,0,0,0.2);}
.main_text_slide .mts_box{position: relative; z-index: 1;}
.main_text_slide .mts_foto{width:140px; height:140px; border:1px solid #fff; border-radius: 100px; margin:auto; overflow: hidden;}
.main_text_slide .mts_foto img{width:100%}
.main_text_slide .mts_title_box{position: relative;    margin: 35px 0 0 0;}

.main_text_slide .mts_title{
    font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  margin: 0 0 45px;
}

.main_text_slide .mts_desc{
  width: min(620px, 100%);
  margin: 0 auto 26px;
  font-size:16px;
  line-height: 1.9; font-weight: 300;
        
}

.main_text_slide .mts_name{
  font-size: 16px;font-weight: 300;  
}

.main_text_slide .mts_quote{  
  position: absolute;
  left: 0;
  top: 36%;
    width:18%;
  transform: translateY(-50%);
  font-size: 55px;
  line-height: 1; 
  font-weight: 600;
}
.main_text_slide .mts_quote--r{
  left: auto;
  right: 0;
}

/* 네비게이션(시안처럼 좌우 화살표) */
.main_text_slide .mts_prev,
.main_text_slide .mts_next{
  position:absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 54px;
  height: 54px;
  z-index: 10;
  cursor: pointer;
  opacity: .85;
}
.main_text_slide .mts_prev{ left: 0; }
.main_text_slide .mts_next{ right: 0; }

.main_text_slide .mts_prev::before,
.main_text_slide .mts_next::before{
  content:'';
  position:absolute;
  inset: 0;
  margin:auto;
  width: 26px;
  height: 26px;
  border-top: 1px solid rgba(255,255,255,.9);
  border-right: 1px solid rgba(255,255,255,.9);
}
.main_text_slide .mts_prev::before{
  transform: rotate(-135deg);
}
.main_text_slide .mts_next::before{
  transform: rotate(45deg);
}

/* 하단 고정 영역 */
.main_text_slide .mts_fixed{
  margin-top: 34px;
  text-align: center;
}

.main_text_slide .mts_fixed_txt{
  font-size: 18px; font-weight: 300;
  margin-bottom: 18px; opacity: .6;
}

.main_text_slide .mts_btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: min(360px, 100%);
  font-size:18px; font-weight:300; border: 1px solid #fff; padding:15px 110px; display:inline-block;transition: all ease 0.3s;    background: rgba(255, 255, 255, 0.2); color:#fff
}

.main_text_slide .mts_btn:hover{background: #000; color:#fff;}

 
 

.footer{
   
  color: rgba(255,255,255,.9);
  padding: 60px 24px 120px;
}

.footer__inner{
   
}

.footer__topline{
  height: 1px;
  background: rgba(255,255,255,.55);
  margin-bottom: 38px;
}

.footer__info{
  font-size: 14px;
  line-height: 1.7;
  letter-spacing: .01em;
    opacity: .6;
}

.footer__row{
  margin: 0 0 6px; color:#fff;
}

.footer__copy{
  margin: 18px 0 0;
  font-size: 13px;
  color: rgba(255,255,255,.75);
}


 

.mo_menu{padding:113px 0 0 0;text-align: center; border-bottom: 1px solid #efefef;display:none;}
.mo_menu ul{}
.mo_menu li{padding:10px 0; display: inline-block}
.mo_menu a{font-size: 14px; padding: 0 5px; color:#000;}

.service_page{
  color:#fff;
  padding:280px 0px 50px;
}

.service_title{
      font-size: 46px;
    line-height: 1.35; 
    font-weight: 700;
    margin: 0 0 110px;
}

/* 아코디언 */
.service_acc{
  border-top: 1px solid rgba(255,255,255,.35);
}

.service_acc .acc_item{
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.service_acc .acc_btn{
  width: 100%;
  background: transparent;
  border: 0;
  color:#fff;
  cursor: pointer;

  display:flex;
  align-items:center;
  gap: 10px;

  padding: 25px 0;
  text-align: left; 
}

.service_acc .acc_no{
  font-size: 46px;
  font-weight: 700;
  width: 66px;
  flex: 0 0 66px;
}

.service_acc .acc_txt{
  font-size: 46px;
  font-weight:300;
  flex: 1;
}

/* 오른쪽 V 아이콘 */
.service_acc .acc_icon{
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  position: relative;
    margin: -15px 25px 0 0;
}

.service_acc .acc_icon::before{
  content:'';
  position:absolute;
  inset: 0;
  margin:auto;
  width: 22px;
  height: 22px;
  border-right: 1px solid rgba(255,255,255,1);
  border-bottom: 1px solid rgba(255,255,255,1);
  transform: rotate(45deg); /* 아래방향 */
  transition: transform .25s ease;
}



/* 패널 */
.service_acc .acc_panel{
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s ease;
}

.service_acc .acc_panel_in{
  display: flex;
    flex-direction: row; /* 가로 정렬 */
    align-items: flex-start;
    gap: 50px;
    padding: 20px 0 100px 0px;
    color: rgba(255,255,255,1);
    font-size: 23px;
    line-height: 1.2; 
    font-weight: 300;
    
}

.service_acc .img_box {
       width: 100%;padding: 0 0 0 80px;/* flex: 0 0 40%; *//* 이미지 영역 40% 고정 */
}

.service_acc .img_box img {
    width: 100%;
    height: auto;
    display: block;
}

.service_acc .text_box {
    flex: 1; /* 나머지 텍스트 영역 */
}


@media (max-width: 1024px) {
    .service_acc .acc_panel_in {
        flex-direction: column; /* 세로 정렬 */
        gap: 30px;
        padding: 20px 0 60px 0px; /* 모바일 하단 패딩 조정 */
    }

    .service_acc .img_box {
        width: 100%; /* 이미지가 가로 꽉 차게 */
        padding:0;
    }
}

.service_acc .acc_panel_in .text1{padding:0 0 20px 0;}
.service_acc .acc_panel_in .text1 b{font-weight:500;}
.service_acc .acc_panel_in .text1 span{    display: inline-block;
    background: rgba(255, 255, 255, 0.3);
    padding: 10px 15px;}
.service_acc .acc_panel_in .text3{ margin:0 0 30px 0;}
.service_acc .acc_panel_in .text2 li{padding: 20px 0}
.service_acc .acc_panel_in .text3 li{    padding: 15px 0 15px 25px;}
.service_acc .acc_panel_in .text3 li:before{    content: '-'; display: inline-block; margin: 0 10px 0 0;}
.service_acc .acc_panel_in .text4{margin:40px 0 0 0;}
.service_acc .acc_panel_in .text4 li{padding: 10px 0}

/* 오픈 상태 */
.service_acc .acc_item.is-open .acc_panel{
  max-height: 500px; /* 내용 길면 더 크게 */
}
.service_acc .acc_item.is-open .acc_icon::before{
  transform: rotate(-135deg); /* 위방향 */
}

.service_acc .acc_item.is-open .acc_icon{margin: 0px 25px 0 0;}

.service_work{
  padding: 185px 0px;
  color:#fff;
}

.service_work:after{content:""; clear:both; display:block;}

.work_title{
  font-size: 46px;
  font-weight: 700; 
  margin-bottom: 90px;
}

/* item layout */
.work_item_box{width: 81%;  float: right;}

.work_item{
  display:flex;
  gap: 24px;
  align-items:flex-start;
  margin-bottom: 60px;  
}

/* 큰 번호 */
.work_no{
  font-size: 142px;    font-weight: 300;
    font-weight: 700;
  
  color: rgba(255,255,255,1);
  flex: 0 0 190px;
    line-height: 1;
}

/* 카드 */
.work_card{
  flex:1;
      background: url(../img/bg_work_card.jpg) top center;
    background-size: cover;
  border-radius: 18px;
  padding: 50px 50px;
        border: 1px solid #e7e7e0;    color: #353535;
}

/* 제목 */
.work_card_tit{
  font-size: 46px;
  font-weight: 800;
  margin-bottom: 50px;
  line-height: 1.2;
}

/* 내용 */
.work_card p{
  font-size: 18px;
  line-height: 1.8;
  margin-bottom: 30px;
}


@media (min-width: 1025px) {
   .work_item_box{position: relative;}
   .work_item_box::before {
  content: "";
  position: absolute;
         top: -17px;
        left: -270px;
        max-width: 230px;
        width: 100vw;
        height: 100vw;
  background: url('../img/arrow_service.svg') no-repeat left top;
  background-size: contain;
}
}


.inquiry_page{
  color:#fff;
  padding: 215px 0px 110px; 
}

.inquiry_inner{ 
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 520px;
  gap: 70px;
  align-items: start;
}

/* LEFT */
.inq_title{
  margin: 0 0 65px;
  font-size: clamp(32px, 3.4vw, 52px);
  line-height: 1.15;
  font-weight:700;
}

.inq_desc p{
  margin: 0 0 20px;
  font-size: 20px;
  line-height: 2.0;
        font-weight: 300;
}

.inq_hint{
  margin-top: 110px;
  font-size: 20px;
  white-space: nowrap;    font-weight: 600;
}
.inq_hint_arrows{
  display:inline-block;
  margin-left: 10px;
  letter-spacing: 2px;
}

/* RIGHT (폼 영역 틀만) */
.inq_form_box{
  width: 100%;
  min-height: 430px;    
 
}

/* 버튼 영역 */
.inq_btn_box{
  margin-top: 22px;
}
.inq_submit_btn{
  display:flex;
  align-items:center;
  justify-content:center;
  height: 62px;
  border: 1px solid rgba(255,255,255,.75);
  color:#fff;
  text-decoration:none;
  font-size: 15px;
  letter-spacing: .02em;
}
/* ===== Form Box ===== */
.inq_form{
  width: 100%;    margin: 190px 0 0 0;
}

.inq_fields{
  display: flex;
  flex-direction: column;
  gap: 12px; /* 각 입력 박스 간격 */
}

/* 개별 줄(박스) */
.inq_row{
  display:flex;
  align-items:center;
  justify-content: space-between;

  background: rgba(255,255,255,.18);      /* 시안의 회색 박스 느낌 */
  border: 1px solid rgba(255,255,255,.06);
  padding: 18px 18px;
    gap:15px;
}

/* 라벨(좌측 텍스트) */
.inq_label{
  flex: 0 0 90px;
  font-size: 20px; 
  white-space: nowrap;
    margin-bottom: 0;    border-right: 1px solid #fff;    line-height: 1;
}

/* 입력 */
.inq_input{
  flex: 1;
  min-width: 0;
  background: transparent;
  border: 0;
  outline: none;
  color:#fff;
  font-size: 20px; 

  border-left: 1px solid rgba(255,255,255,.35); /* 라벨 옆 세로 라인 */
  height: 22px;
}

/* placeholder 색 */
.inq_input::placeholder,
.inq_textarea::placeholder{  color:#fff;
}



/* (선택) 포커스 시 박스(행)만 살짝 강조하고 싶으면 */
.inq_row:focus-within{
 /* border-color: rgba(255,255,255,.28) !important;
  background: rgba(255,255,255,.20) !important;*/
}

/* textarea 줄 */
.inq_row--textarea{
  align-items: flex-start;
  padding-top: 18px;
  padding-bottom: 18px;
}

/* textarea */
.inq_textarea{
  flex: 1;
  min-width: 0;
  min-height: 220px; /* PC 기준 */
  resize: none;

  background: transparent;
  border: 0;
  outline: none;

  color:#fff;
  font-size: 20px;
  line-height: 1.2;
  padding-left: 0px; 
}

/* submit */
.inq_submit_wrap{
  margin-top: 22px;
}

.inq_submit{
  width: 100%;
  height: 62px;
  background:rgba(255,255,255,0.2) ;
  border: 1px solid rgba(255,255,255,1);
  color:#fff;
  font-size: 15px;
  letter-spacing: .02em;
  cursor: pointer;
}

/* inquiry 폼 안의 모든 input/textarea 포커스 라인 제거 */
.inq_form input[type="text"],
.inq_form textarea{
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

/* focus / focus-visible / active 모두 제거 */
.inq_form input[type="text"]:focus,
.inq_form textarea:focus,
.inq_form input:focus-visible,
.inq_form textarea:focus-visible,
.inq_form input[type="text"]:active,
.inq_form textarea:active{
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
}

.m_quick{display:none;}


@media (min-width: 1025px){
    .container{padding-left:30px; padding-right:30px;}
    
}


@media (min-width: 1px) and (max-width: 1100px) {
    .navbar .dropdown-toggle::after{content: none;}
    .navbar .dropdown-menu{display:block !important; padding:0;}
    .navbar .container{        padding-left: 0px !important; padding-right: 0px !important;}
    .navbar-brand{        margin: 0 0 0 20px; padding:10px 0;}
    .navbar-toggler{margin:0 20px 0 0;}
    
    .navbar-collapse:before{        content: '';
        width: 100%;
        display: block;
        height: 1px;
        background: #fff;
        position: absolute;
        top: 8px;
        left: 0px;}
    
    .navbar-brand img{    height: 18px;}
    .navbar-nav{margin-left: 0;        background: #141937}
    .navbar-nav .nav-item.dropdown #navbarDropdownBlog{display:none;}
    
    nav .top_icon{display: none;}
    
    
}
 


 

/* mobile */
@media (min-width: 1px) and (max-width: 1024px) {
    .mo_on{display: block;}
    .pc_on{display: none;}
    .quick{display: none;}
     
    
    .bt_black_line{        font-size: 16px !important;  padding: 5px 15px !important;}
    
    .container{padding-left: 20px !important;padding-right: 20px !important;}
    .l_container {padding: 50px 0 105px;}
    .l_container .t_title .text1{font-size: 32px; line-height: 1;}
    .l_container .t_title .text2{font-size: 16px; line-height: 24px; margin: 20px 0 35px;}
    
    .b_container {padding: 50px 0 105px !important;}
    .b_container:after{content: none !important;}
    
    .b_container2 {padding: 50px 0 85px;}
    .b_container2 .t_title .left{padding:0 0 0  5px;}
    .b_container2 .t_title .right{padding:0 0 30px 5px; display:block;text-align: left;}
    .b_container2 .t_title .right a{margin:10px 0;        font-size: 16px; padding: 5px 10px;}
    .b_container2 .t_title{display: block;}
    .b_container2 .t_title .text1{font-size: 35px; line-height: 1; }
    .b_container2 .t_title .text2{font-size: 18px; line-height: 30px; margin: 20px 0 35px;}
    .b_container2 .t_title .text3 { font-size: 20px;width: 100%; text-align: left;}
    .b_container2 .t_title .text4 { font-size: 13px; margin:0 0 0 10px;}
    .b_container2 .t_title .text5, .b_container2 .t_title .text4{display:inline-block;}
    
    
    .b_container3{ padding: 90px 0 55px !important;}
    
    
    .navbar-brand .en, .navbar-brand .kr{  font-size: 18px;}
    
    
    
    .hamburger01:focus{outline: 0;}
    .title_page{padding: 40px 0 0px 0; font-size: 28px;}
    .title_page2{padding: 20px 0 0px 0; font-size: 16px;}
    
    .main {  padding:0px 0 0 0;}
    .main .main_box1 .inner{display: block;}
    .main .inner{padding: 0;}
    
    .main .main_box{padding:55px 0;border-radius: 25px 25px 0 0;box-shadow: 0 -10px 22px rgba(0, 0, 0, .25);        margin-top: -20px;}
    
    .main .main1 .text1{font-size: 28px;        line-height: 1.4; }
    .main .main_inbox1 .text1 { font-size: 25px;}
    .main .main_inbox1 .text2 { font-size: 12px;}
    .main_inbox1 .in_slide1{    max-width: 75%;     margin: 65px auto;}
    .main_inbox1 .in_slide1 .swiper-slide img{height:25px;}
    .main .main_inbox1 .text3 { font-size: 18px; padding:0 40px; text-align: left;}
    
    .main_inbox2{margin:85px 0;}
    .main_inbox2 .tab_title{font-size: 15px;}
    .main_inbox2 .tab_btn{font-size:14px;}
    .main_inbox2 .in2_tab{    flex-direction: column;        align-items: flex-start;    gap: 20px; border-bottom:0;}
    .main_inbox2 .tab_box{    flex-wrap: wrap;gap: 10px; justify-content: space-between; width: 100%;        border-top: 1px solid #fff;
        padding: 20px 0 0 0;}
    
    .main_inbox2 .in2_info{padding:10px 0 10px 0; font-size:13px;}
    .main_inbox2 .in2_info .info_sep{margin:0 8px;}
    
    .main_inbox2 .in2_info span:nth-child(1){display:block;}
    .main_inbox2 .in2_info span:nth-child(2){display:none;}
    
    .main_inbox2 .in2_slide{height:100%;margin: 10px 0 0 0;}
    
    .main_inbox2 .in2_slide .pc_on{display: none !important;}
    .main_inbox2 .in2_slide .mo_on{display: block !important;}
    
     .main_inbox2 .in2_slide .swiper-button-prev,
  .main_inbox2 .in2_slide .swiper-button-next{
    width: 44px;
    height: 44px;top: 42%;
  }

  .main_inbox2 .in2_slide .swiper-button-prev::before,
  .main_inbox2 .in2_slide .swiper-button-next::before{
    width: 25px;
    height: 25px;
  }
    
    
    .main_inbox3 .in3_slide{margin:20px 0 0 0;}
    
    
    .main_inbox3{
    padding: 0px 0px 72px;
  }
    .main_inbox3 .in3_title{font-size:15px;}
    .main_inbox3 .in3_title2{font-size: 30px;    margin: 0 0 10px 0;}
  .main_inbox3 .in3_center{
            margin: 50px 0 0 0;
    padding-bottom: 20px;    align-items: flex-start;
  }
    .main_inbox3 .in3_list{padding:0;}
  .main_inbox3 .in3_list li{
    font-size: 16px;
    padding-left: 22px;
  }
  .main_inbox3 .in3_list li::before{
    top: .7em;
    border-top-width: 6px;
    border-bottom-width: 6px;
    border-left-width: 9px;
  }
    
    .main_inbox3 .in3_slide .stackCreative{margin:20px auto 20px;     height: 450px;}
    
   .main_inbox3 .in3_slide .card_content_wrap {
        flex-direction: column; /* 모바일은 다시 세로로 */
        align-items: flex-start;margin-top: 20px;
    }
    
    .main_inbox3 .in3_slide .card_tags {
        flex-direction: row;    /* 모바일은 가로로 나열 */
        flex-wrap: wrap;
        align-items: end;
        margin-top: 25px;
        justify-content: flex-start;
                width: 100%;
        min-height: 75px;
    }

    .main_inbox3 .in3_slide .card_box, .main_inbox3 .in3_slide .card_box2 {
        padding: 30px 25px;
        height: auto;
        /*min-height: 420px;*/border-radius: 20px;
    }
    
    .main_inbox3 .in3_slide .card_title{font-size: 20px;}
    .main_inbox3 .in3_slide .card_num { font-size: 16px;}
    .main_inbox3 .in3_slide .card_body{margin-right: 10px;   font-size: 16px; line-height: 30px;}
    .main_inbox3 .in3_slide .card_body p{margin-bottom:5px;}
    .main_inbox3 .in3_slide .card_tags span{font-size: 12px; padding:5px 14px;}
 
    
    
    .main_work { margin: 0px 0 85px; padding:0 0px;}
    .main_work .title { font-size: 15px;margin: 0 0 15px 0}
    .main_work .title a { font-size: 14px;
        margin: 0 0 0 25px;
        color: #fff;
        display: inline-block;}
    .main_work .title a img { height: 26px; margin: -2px 10px 0 0;}
    .main_work .box_card{ }
    .main_work .more{margin:0;}
    .main_work .more a{font-size: 18px; padding:5px 70px;}
    
    
    .main_work .box_card{
    grid-template-columns: none;          /* 기존 2열 해제 */
    grid-auto-flow: column;               /* 가로로 흐르게 */
    grid-auto-columns: 78%;               /* 한 화면에 1.x장 (원하는 비율로 조절) */
    gap: 14px;

    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;    /* iOS 부드러운 스크롤 */
    scroll-snap-type: x mandatory;        /* 스냅(선택) */
    padding: 0 0px 0px;                 /* 좌우 여백 + 스크롤바 공간 */
  }

  /* 각 카드가 스냅되게(선택) */
  .main_work .box_card > *{
    scroll-snap-align: start;
  }

  /* 스크롤바 숨김(선택) */
  .main_work .box_card::-webkit-scrollbar{
    display: none;
  }
  .main_work .box_card{
    scrollbar-width: none; /* firefox */
  }
    
    
    .main_work .box_card .box_in .card img{width: 100%; /* 또는 원하는 고정 픽셀값 */
  aspect-ratio: 6214 / 7767;
  object-fit: cover;
  object-position: center;}
    
    
    
    .main_text_slide{ padding: 0px 0px 16px; }
    .main_text_slide .mts_inner{overflow: hidden;}
  .main_text_slide .mts_swiper{ min-height:auto;    max-width:100%; }
  .main_text_slide .mts_prev,
  .main_text_slide .mts_next{ width: 44px; height: 44px; }
  .main_text_slide .mts_quote{ font-size: 32px;width: 10%;}
    .main_text_slide .mts_desc{font-size:13px;}
    .main_text_slide .mts_name{font-size:14px;        margin: 0;}
    .main_text_slide .mts_fixed_txt { font-size: 16px;}
    .main_text_slide .mts_btn{padding:15px 70px;        width: 80%;}
    .main_text_slide .mts_title_box{margin:15px 0 0 0;}
    
    .main_text_slide .mts_title{        font-size: 16px;  padding: 0 15px;        margin: 0 0 20px 0;}
    
    .main_text_slide .mts_prev::before, .main_text_slide .mts_next::before{width:15px; height:15px;}
    .main_text_slide .mts_prev {  left: -5px;}
    .main_text_slide .mts_next {  right: -5px;}
    
    .main_text_slide .swiper-slide{width:80%;        border-radius: 50px;        padding: 30px 12px 30px;    box-shadow: 0 3px 20px -2px rgba(255, 255, 255, .6);        margin: 0 0 35px 0;}
    .main_text_slide .mts_foto {  width: 90px; height: 90px;}
    
    /* 기본적으로 슬라이드 숨김 */
    .main_text_slide .swiper-slide { 
        opacity: 0 !important; 
        /*transition: opacity 0.3s ease;*/ 
        pointer-events: none; /* 클릭 방지 */
    }
    /* 가운데 활성화된 슬라이드만 노출 */
    .main_text_slide .swiper-slide-active { 
        opacity: 1 !important; 
        pointer-events: auto;
    }
     
    
    
    .footer{
    padding: 46px 0px 110px;
  }
  .footer__topline{
    margin-bottom: 26px;
  }
  .footer__info{
    font-size: 13px;
  }
    
    .service_page{padding:120px 0 80px;}
    .service_title{font-size: 32px; margin:0 0 50px;}
    .service_acc .acc_no {  font-size: 26px;width: 45px;  flex: 0 0 45px;}
    .service_acc .acc_txt { font-size: 26px;}
    .service_acc .acc_icon::before{width:15px; height:15px;}
    .service_acc .acc_panel_in{font-size: 16px; line-height: 1.4;padding: 10px 0 50px 0px;}
    .service_acc .acc_panel_in .text2 li { padding: 10px 0;}
    .service_acc .acc_btn{padding:15px 0;}
    
    .service_acc .acc_icon{margin: -8px 12px 0 0;}
    .service_acc .acc_item.is-open .acc_icon {
        margin: 0px 12px 0 0;}
    
    .service_acc .acc_panel_in .text3 li {
        padding: 10px 0 10px 25px;}
    
    .service_work{
    padding: 30px 0px;
  }
    .work_title{font-size: 30px;    margin-bottom: 50px;}
    .work_item_box{width:100%; float:none;}

  .work_item{
    gap:16px;
    margin-bottom:20px;
       flex-direction: column;
  }

  .work_no{
    font-size:55px;
    flex:0 0 70px;
  }

  .work_card{
    padding:22px 18px;
    border-radius:16px;
  }

  .work_card_tit{
    font-size:28px;margin-bottom: 20px; font-weight: 700;
  }

  .work_card p{
    font-size:16px;margin-bottom: 15px; line-height: 30px;
  }
    
    
    .inquiry_inner{
    grid-template-columns: 1fr;
    gap: 28px;
  }
    
    .inq_title{margin:0 0 35px;}
    .inq_desc p{font-size: 16px;}

  .inq_hint{ 
    margin-top: 28px;
      margin-bottom: 18px;
    white-space: normal;
      text-align: center; font-size: 15px;
  }
    
    .inq_form{margin:0;}

  .inq_form_box{
    min-height: 360px;         /* 모바일 시안 느낌 */
  }

  .inquiry_page{
    padding: 110px 0px 80px;
  }
    
    .inq_row{
    padding: 10px 10px;
  }
  .inq_label{
    flex-basis: 56px;
    font-size: 13px;
  }
  .inq_input{
    font-size: 13px;
  }
  .inq_textarea{
    min-height: 180px; /* 모바일 기준 */
    font-size: 13px;
  }
  .inq_submit{
    height: 45px;
    font-size: 14px;
  }
    
    .m_quick{display: grid; grid-template-columns: 1fr 1fr; position: fixed; bottom: 0;  width: 100%; text-align: center; background: rgba(255, 255, 255, 0.9); font-size: 16px; border-top:1px solid #000;/*box-shadow: rgba(0, 0, 0, 0.11765) 2px -2px 5px*/}
    .m_quick a{ padding: 10px 0;        font-size: 16px;}
    .m_quick a:nth-child(1){border-right: 1px solid #000;}
    .m_quick a:nth-child(1) img{height:20px; margin:0 10px 0 0;}
    .m_quick a:nth-child(2) img{height:20px; margin:0 5px 0 0;}
    
    
}

@media (min-width: 1px) and (max-width: 1315px) {
    
    
}