body {
  margin: 0;
  padding: 0;
  /* height: 100vh; */
  /* display: flex; */
  /* overflow: hidden; */
  box-sizing: border-box;
  background-color: #daa53d;
  /* 박스 크기 계산 */
}

.container_index {
  width: 100%;
}

/* 사이드바 */
.sidebar {
  width: 300px;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
} 

@media (max-width: 1024px) {
  .sidebar {
    display: none;
  }
}

/* 콘텐츠 영역 */
.content {
  margin-left: 300px;
  width: calc(100% - 300px);
  height: 100%;
  padding: 0px;
  box-sizing: border-box;
  overflow-y: auto;
}

@media (max-width: 1024px) {
  .content {
    margin-left: 0px;
    width: 100%;
  }
}

/* 배경 광고모델 */
.visual_model {
  position: fixed;
  right: 50px;
  bottom: 0px;
  max-width: 500px;
  z-index: 999;
}

.visual_model_header {
  position: absolute;
  top: 30px;
  right: 10px;
  max-width: 150px;
  z-index: -1;
  display: none;
}

@media (max-width: 1440px) {
  .visual_model {
    right: 50px;
    bottom: 0px;
    max-width: 350px;
  }
}

@media (max-width: 1320px) {
  .visual_model {
    right: 50px;
    bottom: 0px;
    max-width: 300px;
  }
}

@media (max-width: 1024px) {
  .visual_model {
    display: none;
  }

  .visual_model_header {
    display: block;
  }
}

.top_alert {
  position: fixed;
  top: 10px;
  right: 20px;
  z-index: 999;
}

@media (max-width: 1024px) {
  .top_alert {
    display: none;
  }
}

/* pc고정헤더 */
.pc_header {
  /* position: fixed; */
  width: calc(100% - 325px);
  z-index: 998;
  background-color: #daa53d;
  /* background-color: #000; */
  /* height: 360px; */
  padding: 30px 10px 0px 30px;
}

@media (max-width: 1024px) {
  .pc_header {
    position: relative;
    width: 100%;
    height: auto;
    padding: 20px 20px 0 20px;
  }
}

/* 메인카피 */
.main-copy-title {
  font-size: 36px;
  margin: 30px 0 0 0;
  line-height: 120%;
}

@media (max-width: 1024px) {
  .main-copy-title {
    font-size: 26px;
    margin: 20px 0 0 0;
    line-height: 120%;
  }
}

/* 저렴한보험료강조 */
.div-blank1,
.div-blank2 {
  display: none;
}

/* 부모 컨테이너: 플렉스박스 설정 */
.banner-container {
  display: flex;
  justify-content: flex-start;
  /* 컨테이너 내부 요소를 시작 부분으로 정렬 */
  gap: 10px;
  /* 간격 제거 */
  flex-wrap: wrap;
  /* 작은 화면에서 줄 바꿈 허용 */
  padding: 0;
  /* 내부 여백 제거 */
  margin: 0;
  /* 외부 여백 제거 */
  box-sizing: border-box;
  /* 크기 계산 방식을 박스 전체로 설정 */
}

/* 반응형 크기 조정이 가능한 컨테이너 1 */
.custom-container1 {
  flex: 0 0 35%;
  /* 크기를 35%로 설정하고 유연하게 조정 */
  min-width: 200px;
  /* 최소 너비 */
  transition: all 0.3s ease;
  /* 애니메이션 효과 */
  text-align: center;
  /* 중앙 정렬 */
}

/* 반응형 크기 조정이 가능한 컨테이너 2 */
.custom-container2 {
  flex: 0 0 20%;
  /* 크기를 20%로 설정하고 유연하게 조정 */
  min-width: 150px;
  /* 최소 너비 */
  transition: all 0.3s ease;
  /* 애니메이션 효과 */
  text-align: center;
  /* 중앙 정렬 */
}

@media (max-width: 1440px) {
  .custom-container1 {
    flex: 0 0 40%;
  }

  .custom-container2 {
    flex: 0 0 30%;
  }
}

@media (max-width: 1024px) {
  .custom-container1,
  .custom-container2 {
    flex: 1 1 100%;
    /* 너비를 100%로 확장 */
    min-width: 100%;
    /* 최소 너비를 화면 전체로 설정 */
    margin-bottom: 4px;
  }

  .banner-container {
    gap: 5px;
    /* 작은 화면에서는 간격을 줄임 */
  }

  .div-blank2 {
    display: block;
  }
}

@media (max-width: 576px) {
  .div-blank1 {
    display: block;
  }
}

.btn_go {
  padding-right: 0px;
}

.custom-padding-1 {
  padding: 20px 0px;
}
.custom-padding-2 {
  padding: 20px 0 16px 0px;
}

@media (max-width: 1024px) {
  .btn_go {
    padding: 0px;
    margin-top: 10px;
  }

  .custom-padding-1 {
    padding: 10px 0px;
  }
  .custom-padding-2 {
    padding: 10px 0 6px 0px;
  }
}

.price-drop {
  animation: priceDrop 2s ease-in-out infinite;
}

@keyframes priceDrop {
  0% {
    transform: translateY(-20px);
    opacity: 0;
  }

  50% {
    transform: translateY(20px);
    opacity: 1;
  }

  100% {
    transform: translateY(20px);
    opacity: 0;
  }
}

.hidden-text {
  opacity: 0;
  /* 초기 상태: 보이지 않음 */
  transition: opacity 0.5s ease;
  /* 부드럽게 나타나는 효과 */
}

.visible-text {
  opacity: 1;
  /* 보이는 상태 */
}

.icon-box {
  width: 80px;
  height: 80px;
}

/* 1024px 이하에서 sm-4, sm-8 동작 */
@media (max-width: 1024px) {
  .custom-sm-12 {
    flex: 0 0 100%;
    /* 8/12 */
    max-width: 100%;
  }

  .custom-sm-12 {
    flex: 0 0 100%;
    /* 4/12 */
    max-width: 100%;
  }

  .col-sm-hidden {
    display: none;
    /* 1024px 이하에서 숨김 */
  }
}

/* pc콘텐츠 */
.pc_content {
  /* margin-top: 660px; */
  padding: 0 40px 0 40px;
  box-sizing: border-box;
}

/* 1024px 이하에서 sm-4, sm-8 동작 */
@media (max-width: 1024px) {
  .pc_content {
    margin-top: 0px;
    padding: 30px 20px 0 20px;
  }
}

.etc_alert {
  padding: 20px 30px 40px 30px;
  margin-bottom: 100px;
}

@media (max-width: 1024px) {
  .etc_alert {
    padding: 0px 20px;
    margin-bottom: 80px;
  }
}

.title-xs {
  font-size: 12px;
}

.title-sm {
  font-size: 14px;
}

.title-md {
  font-size: 16px;
}

.title-lg {
  font-size: 22px;
}

.title-lx {
  font-size: 36px;
}

.icon-xs {
  font-size: 14px;
}
.icon-md {
  font-size: 32px;
  vertical-align: 3px;
}
.icon-lg {
  font-size: 42px;
  vertical-align: 2px;
}
.icon-lx {
  font-size: 48px;
  vertical-align: 2px;
}

.custom-pb {
  padding-bottom: 4px;
}

@media (max-width: 1320px) {
  .title-lg {
    font-size: 20px;
  }
  .title-lx {
    font-size: 28px;
  }
  .custom-pb {
    padding-bottom: 0px;
  }
}

@media (max-width: 1024px) {
  .title-lg {
    font-size: 18px;
  }
  .title-lx {
    font-size: 24px;
  }
  .icon-xs {
    font-size: 14px;
  }
  .icon-md {
    font-size: 24px;
    vertical-align: 1px;
  }
  .icon-lg {
    font-size: 36px;
    vertical-align: 2px;
  }
  .icon-lx {
    font-size: 36px;
    vertical-align: 2px;
  }
  .icon-box {
    width: 60px;
    height: 60px;
  }
}

@media (min-width: 768px) {
  #btnGo {
    display: none;
    /* 모바일 사이즈가 아닌 경우 항상 숨김 */
  }
}

.word-wrap-example {
  word-break: keep-all;
  /* 글자 단위로 줄바꿈 */
}
