@media screen and (max-height: 870px){
  .visual .txt-box .kv_tit {margin-bottom: 0;}
  .visual .txt-box .kv_tit .tit {margin-bottom: 20px; font-size: 45px;}
  .visual .txt-box .kv_tit .sub {font-size: 20px;}

  .visual .txt-box .kv_txt {gap: 0;}
  .visual .txt-box .kv_txt .txt {font-size: 40px;}
  .visual .txt-box .kv_txt .txt strong {width: 80px; font-size: 60px;}
}

@media screen and (max-width: 1500px){
  .visual .txt-box .kv_tit .tit {font-size: 32px; word-break: keep-all;}
  .visual .txt-box .kv_tit .sub {font-size: 18px; word-break: keep-all;}
  .visual .txt-box {gap: 15px;}
  .visual .txt-box .kv_txt .txt {font-size: 22px; word-break: keep-all;}
  .visual .txt-box .kv_txt .txt strong {width: 48px; font-size: 35px;}

  .visual .txt-box .kv_txt .sub {margin-top: 30px; font-size: 24px;}

  section {padding: 100px 0;}
  .tit-box .txt {font-size: 35px; word-break: keep-all;}

  .talk_content {padding: 30px;}
  .talk_content ul {gap: 40px;}
  .talk_content ul li .child-box .icon-box {width: 50px;}
  .talk_content ul li .child-box {gap: 20px;}
  .talk_content ul li .child-box .txt-box .name {font-size: 18px;}
  .talk_content ul li .child-box .txt-box .talk_txt {padding: 10px 10px; font-size: 20px; word-break: keep-all;}

  .num_txt .img-box {width: 100px;}
  .num_txt .num {font-size: 300px;}

  .graph-content .txt-box .txt {font-size: 30px;}
  .graph-content .txt-box b {font-size: 60px;}
  .graph-content .graph-bar .existing {width: 80px;}
  .graph-content .graph-bar .existing span {font-size: 18px;}
  .graph-content .graph-bar .present {width: 80px;}
  .graph-content .graph-bar .present span {font-size: 18px;}
}

@media screen and (max-width: 1400px) {
  .container {max-width: 100%; padding: 0 20px; box-sizing: border-box;}

  .sec1_list ul li .child-box {height: 200px;}
  .sec1_list ul li .child-box .txt {margin-bottom: 20px; font-size: 22px;}
}

@media screen and (max-width: 1024px) {
  .sec1_list ul li .child-box {height: 150px;}
  .sec1_list ul li .child-box .txt {font-size: 18px;}
  /* .sec1_list ul li .child-box .img-box {width: 150px;} */
}

@media screen and (max-width: 900px) {
  header {height: 60px;}
  header .logo {width: 97px;}
  header .link_btn {width: 120px; height: 35px; font-size: 15px;}

  .visual {height: 55vh;}
  .sec2 {margin-top: 60px;}
  .visual .container {top: 60px;}
  .visual .txt-box .kv_txt .sub {font-size: 18px;}

  section {padding: 50px 0;}

  .tit-box {margin-bottom: 50px;}
  .tit-box .txt {font-size: 32px;}

  .sec1_list ul {flex-wrap: wrap; gap: 10px 0; margin: 0 -5px;}
  .sec1_list ul li {width: calc(100% / 2); padding: 0 5px;}

  .talk_content {padding: 20px;}
  .talk_content ul {gap: 20px;}
  .talk_content ul li .child-box {gap: 10px;}
  .talk_content ul li .child-box .icon-box {width: 30px;}
  .talk_content ul li .child-box .txt-box {gap: 5px;}
  .talk_content ul li .child-box .txt-box .name {font-size: 16px;}
  .talk_content ul li .child-box .txt-box .talk_txt {font-size: 15px;}

  .talk_content ul li .child-box .txt-box .talk_txt:before {top: 0px; left: -7px; width: 15px; height: 15px;}

  .num_txt .num {font-size: 150px; letter-spacing: -13px;}
  .num_txt .img-box {width: 50px; margin-bottom: 35px;}

  .graph-content {flex-flow: column; gap: 60px;}

  .graph-content .arrow-img {margin: 0 auto;}
  .arrow-img {width: 110px;}
  .arrow-img img {transform: rotate(91deg);}

  footer {padding: 30px 0;}
  footer .f_logo {margin-bottom: 20px; font-size: 19px;}
  footer .address {font-size: 15px;}
  footer .address p span{font-size: 13px;}

  .more_btn a {height: 50px; font-size: 18px;}
  .more_btn .btn_bubble_img {height: 65px;}
  @keyframes upup2 {
    0% {top: -67px;}
    100% {top: -62px;}
  }

  .graph-content .txt-box .txt {font-size: 22px;}
  .graph-content .graph-bar .existing {height: 200px;}
  .graph-content .graph-bar .present {height: 200px;}
  .graph-content .graph-bar .present span {font-size: 16px;}
  .graph-content .graph-bar .existing span {font-size: 16px;}

  .graph-content .txt-box b {font-size: 35px;}

  footer {position: relative;}

  footer .address p:nth-child(1) br {display: none;}
  footer .bar_s {display: none !important;}
  .flex_p {gap: 7px;}
  .ag_btn {margin-bottom: 10px;}
}

@media screen and (max-width: 600px) {
  .pc_br {display: none;}

  .tit-box {margin-bottom: 35px;}
  .tit-box .sub {font-size: 18px;}
  .visual .txt-box .kv_tit .sub br {display: none;}

  .visual .txt-box .kv_txt .txt {font-size: 20px;}
  .sec1_list ul li .child-box {height: 120px;}
  .sec1_list ul li .child-box .txt {font-size: 17px; margin-bottom: 15px;}
  .sec1_list ul li .child-box .img-box {width: 70px;}

  .num_txt .num span {font-size: 50px;}

  .popup {width: calc(100% - 40px);}
  .popup .popup-hd {margin-bottom: 10px;}
  .popup .popup-hd .tit {font-size: 24px;}
  .popup .popup-hd .close_btn {width: 20px;}
  .popup .txt {margin-bottom: 20px; font-size: 13px;}
  .popup .form-box .input-box input {height: 45px; padding: 0 15px; font-size: 15px;}

  .popup .form-btn {height: 45px; margin-top: 20px; font-size: 15px;}

  .talk_content {border-radius: 20px; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);}
  .sec2 .img-box img {object-position: 90% 100%; transition-delay: 0s;}

  .graph-content .txt-box {margin-top: 15px;}
  .graph-content .graph-bar2 .span_box ul li {height: 6px;}

  footer {padding: 30px 0 130px;}

  .visual {height: 470px;}
}

@media screen and (max-width: 380px) {
  .sec1_list ul li .child-box .txt {font-size: 16px;}
}