@media only screen and (max-width: 1700px) {
    .ocr_img li {
        margin: 10px;
        text-align-last: center;
    }

}
@media only screen and (max-height: 700px) {
    .section:not(.section1) .menu br{
        display: none;
    }
    .section .title_m {
        padding: 30px 0;
    }
    a.c_btn {
        padding: 18px 32px;
    }
    .c_btn_area {
        padding-top: 50px;
    }
}
@media (max-width: 1400px) {

    .smart-circle {
        width: 400px;
        --orbit-radius: 185px;
    }
    .smart-circle:after {
        width: 95%;
    }
    .smart-circle-img {
        max-width: 180px;
    }
    .smart-circle ul li {
        width:150px;
        height: 150px;
        margin-left: -75px;
        margin-top: -75px;
    }
    .smart-circle ul li span {
        width: 130px;
        height: 130px;
        font-size: 16px;
    }
    .smart-circle ul li.active {
        background: transparent;
        border: 0;
        width: 130px;
        height: 130px;
    }
    .why-loto-wrap {
        gap: 0;
        justify-content: space-between;
    }
    .why-loto-arrow {
        width: 120px;
    }
    .why-loto-right {
        flex: none;
        width: 503px;
    }
}
@media only screen and (max-width: 1300px) {
    .OCR_popup3 .logical_system img {
        width: 100%;
    }

    .patent .patent_area {
        flex-direction: column;
        align-items: center;
    }

    .patent .patent_area .patent_text * {
        text-align: center;
    }

    .carousel {
        max-width: 100%;
    }

    .carousel-item__info {
        height: 85%;
    }

    .carousel__nav {
        bottom: 6%;
    }

    img.bottom_image {
        width: 100%;
    }

    .width_image {
        width: 80%;
        margin-bottom: 0;
    }

    .chart_txt img {
        width: 80%;
    }

    .popup_tab li a {
        font-size: 0.9rem;
    }

    .circle::before {
        width: 6px;
        height: 6px;
        border-radius: 5px;
        margin: 33px 0px 46px 11px;
    }

    .circle::after {
        width: 6px;
        height: 6px;
        border-radius: 5px;
        margin: -52px 20px 0 0px;
    }
}

@media (max-width: 1280px) {
    .project .project_list .list_title .p_body:after {
        content: '';
        width: 95px;
        height: 10px;
        position: absolute;
        right: 0;
        top: 10px;
        background: url(../img/circle-on.png) no-repeat right center;
    }

    .f-left {
        width: 100%;
        margin-bottom: 30px;
    }

    .f-right {
        width: 100%;
        float: left;
    }

    .OCR_popup2 img {
        width: 100%;
    }

    #footer .f-right .info li:first-child {
        margin-left: 0;
    }

    .solution_list ul li h2 {
        font-size: 1.2rem;
    }
}

@media (max-width: 1260px) {
    .solution_group {
        flex-direction: column;
        gap: 40px
    }

    .group_badge {
        text-align: center;
    }

    .solution_list {
        width: 100%;
    }
}

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

    .loto-card-list {
        flex-direction: column;
        gap:15px
    }

    .loto-card {
        flex-direction: row;
        text-align: left;
    }

    .business {
        width: 100%;
    }

    .business {
        width: 70%;
    }

    .partnerImg {
        width: 90%;
    }

    .ocr_img li img {
        width: 100%;
    }

    p.detail_hd {
        font-size: 2rem;
    }

    .pc {
        display: none;
    }

    .mobile.open {
        width: 60%;
        overflow: scroll;
    }

    header .mobile_logo {
        display: block;
    }

    .menu_list li a.open + ul li {
        width: 100%;
        display: block;
        margin: 0;
    }

    .carousel__nav {
        left: auto;
    }

    #popup .content ,
    .popup .content {
        width: 80%;
        height: 70%;
    }

    #popup .content .detail_popup .system_img ,
    .popup .content .detail_popup .system_img {
        padding: 0%;
    }

    .br_mobile {
        display: inline-block;
    }

    .historyArea {
        margin-left: 20%;
    }

    .menu {
        padding-bottom: 8%;
        font-size:3rem
    }

    .field-list li {
        padding: 4% 0;
    }

    .field-list li label {
        font-size: 0.9rem;
        line-height: 1.5rem;
        width: 100%;
    }

    .field-list li div {
        width: 100%;
    }

    .project_img {
        opacity: 0.3;
    }

    .flip_box {
        width: 90%;
    }

    a.s_btn h1 {
        font-size: 1.8rem;
    }

    a.s_btn h3 {
        font-size: 1rem;
    }

    .m-flex {
        flex-direction: column-reverse;
    }

    .autogen .ocr_iconlist ul {
        margin: 2rem 0 0 0;
    }

    .autogen_txt {
        text-align: center;
    }

    ul li.iconDeploy {
        margin: 3rem 0;
        width: 100%;
    }

    .m-width100 {
        width: 100%;
    }

    .sPosition {
        position: static;
    }
    .pay4u-top .sub-title{
        margin-bottom: 0;
        margin-top: 10px;
    }

    .btnDiv {
        flex-direction: column;
        width: 100%;
        margin-top: 3%;
    }

    button.btn_white {
        margin-bottom: 24px;
    }

    .title_m {
        font-size: 2rem;
        text-align: center;
        padding: 16px 0;
    }

    .txt_center {
        font-size: 0.8rem;
        text-align: center;
        width: 100%;
    }

    .centerX {
        padding: 10%;
    }

    video {
        width: 80%;
    }

    .vision {
        flex-direction: column;
    }

    .visionArea {
        margin: 10% 0;
    }

    .solution_list ul li a {
        font-size: 0.75rem;
    }

    .solution_list_arrow .title_line {
        font-size: 1.2rem;
        padding: 4% 4% 8% 4%;
    }

    .solution_list_arrow {
        padding-bottom: 10%;
    }

    /* about */

    .c_btn_area {
        padding-top: 0
    }
    .about_img1, .about_img2, .about_img4 {
        padding-top :80px;
        height: auto;
        min-height: auto;
    }
    .about_img1 {
        padding-top: calc(var(--header-h-scrolled) + 80px);
    }
    .about_img2 .title_m {
        padding-top: 0;
        text-align: left;
    }
    .about_img2 , .about_img4 {
        padding: 80px 0;
    }
    .about_img2 .title_body {
        margin-bottom: 0;
    }
    .about_img3 {
        padding: 80px 0;
    }
    .about_img3 .flex-between , .about_img4 .flex-between{
        gap:30px
    }
    .about_img3 .title_m , .about_img4 .title_m {
        padding-top: 0;
    }
    .about_img3 .menu, .about_img4 .menu {
        padding-bottom: 20px;
        text-align: center;
    }
    .section5 .menu {
        padding-bottom: 0;
    }
    .section5 {
       overflow: hidden;
    }


    /*********** solution ************/

    .pt_h {
        padding-top: var(--header-h-scrolled);
    }
    .hero-sub {
        font-size: 1.5rem;
        padding-bottom: 16px;
    }
    .hero-title {
        font-size: 2.4rem;
    }
    .hero-deco {
        position: absolute;
        left: 0; top: 80px;
        width: 393px; height: 393px;
        background: url("../img/solution/solution_polygon.png") no-repeat 100% 100%;
        z-index: 10;
    }
    .sub_container section:not(.sub_main) {
        padding: 72px 0 0;
    }
    .sub_container section.benefits-sec {
        padding: 72px 0;
    }
    .sec-title {
        font-size: 28px;
        margin-bottom: 32px;
    }
    .sub_container section.problem-sec {
        padding-bottom: 42px;
    }
    .problem-desc {
        font-size: 16px;
        margin-bottom: 20px;
    }
    .tag-list {
        gap: 12px;
    }
    .tag {
        font-size: 16px;
        padding: 10px 20px;
    }
    .problem-sec .arrow-down {
        margin: 32px 0;
    }
    .problem-sec .arrow-down img {
        width: 32px;
    }
    .solution-image {
        margin-bottom: 32px;
    }
    .solution-text {
        margin: 0 0 32px;
    }
    .solution-text b {
        margin-bottom: 16px;
        font-size: 20px;
    }
    .solution-text p {
        font-size: 16px;
    }
    .accent:after {
        height: 12px;
    }
    .feature-cards {
        display: flex;
        gap:16px;
        flex-wrap: wrap;
    }
    .feature-card {
        flex: none;
        width: calc(50% - 8px);
        padding: 16px;
        border-radius: 10px;
        box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.06);
    }
    .sub_container .problem-sec {
        padding: 42px 0;
    }
    .qa-bubble-wrap {
        padding: 0;
    }
    .bubble-q {
        font-size: 16px;
        padding: 16px 20px;
    }
    .qa-bubble-wrap>div:nth-child(2) {
        margin-top: 32px
    }
    .bubble-a {
        font-size: 16px;
        padding: 16px 20px;
    }
    .compare-table {
        margin-top: 32px;
        overflow: auto;
    }
    .compare-table table thead th.col-label {
        width: 180px !important;
    }
    .compare-table table {
        font-size: 16px;
    }
    .compare-table table thead th , .compare-table table td  {
        padding: 12px 16px;
    }
    .format-images img{
        width: min(74px,25%);
    }
    .sec-desc {
        font-size: 16px;
        margin-top: 16px;
    }
    .sub_container section.usecase-sec {
        padding-bottom: 72px;
    }
    .usecase_swiper img {
        max-width: 400px;
        width: 100%;
    }
    .usecase_swiper .swiper-slide {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .usecase_swiper .swiper-slide .tag {
        margin: 16px 0;
    }
    .usecase-desc {
        font-size: 16px;
    }
    .swiper-button-next, .swiper-button-prev {
        width: 32px;
        height: 32px;
    }
    .swiper-button-next svg,
    .swiper-button-prev svg {
        width: 5px;
    }
    .sub_container section.main-features-sec {
        padding: 42px 0 0;
    }
    .feat-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
    }
    .feat-box {
        border-radius: 10px;
        box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.06);
        padding: 16px;
        font-size: 16px;
    }
    .feat-box-header {
        font-size: 16px;
        margin-bottom: 16px;
    }
    .feat-box > img {
        margin-bottom: 16px;
    }
    .feat-box ul {
        padding-left: 20px;
    }
    .sub_container section.sec06 {
        padding: 64px 0 42px;
        background: #FBFBFD;
    }
    .diff_swiper .swiper-slide {
        padding: 24px;
        width: min(calc((100% - 24px) / 1.3),275px);
    }
    .diff_swiper .swiper-slide img {
        width: 140px;
    }
    .diff-card-title {
        font-size: 16px;
        margin: 30px 0 16px;
    }
    .diff-card-desc {
        font-size: 16px;
    }
    .sec0702 {
        padding-top: 64px;
    }
    .effect-cards , .converter_sec0702 .effect-cards{
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    .converter_sec0702 .effect-cards .effect-card {
        width: 100%
    }
    .effect-card {
        padding: 20px 16px;
    }
    .effect-label {
        font-size: 16px;
        margin: 20px 0 12px;
    }
    .effect-desc {
        font-size: 20px;
    }
    .sub_container section.sec07 {
        padding-bottom: 72px;
    }
    .sub_container section.cta-sec {
        padding: 52px 20px;
        font-size: 24px;
    }
    .cta-sec .accent:after {
        width: 102%;
        height: 15px;
        left: -1%;
    }

    .benefits-sec ul {
        gap: 32px;
    }
    .benefits-sec ul li img {
        width: 120px;
    }
    .benefits-sec ul li b {
        font-size: 16px;
        padding: 10px 20px;
    }
    .benefits-sec ul li p {
        font-size: 16px;
    }

    .architecture-sec .arch_desc {
        margin: 32px 0 64px;
        font-size: 16px;
    }
    .arch_flex {
        display: flex;
        align-items: center;
        gap:32px;
    }
    .architecture-sec img , .symbol {
        width: 46px;
    }
    .arch_flex b {
        font-size: 16px;
        padding: 10px 20px;
        margin-bottom: 16px;
    }
    .box {
        padding: 14px;
        border-radius: 15px;
        box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.15);
        font-size: 16px;
    }
    .arch_result img {
        margin-bottom: 24px;
    }
    .arch_table {
        margin-top: 64px;
        border-radius: 15px;overflow: hidden;
        border: 1px solid #DCDCDC;
    }
    .arch_table table {
        font-size: 16px;
        border: none
    }
    .arch_table table th , .arch_table table td {
        padding: 12px 16px;
    }
    .arch_table table td {
        text-align: left;
    }

    /* energy */

    .why-loto-wrap {
        flex-direction: column;
        gap:86px
    }
    .why-loto-arrow {
        transform: rotate(90deg);
    }
    .little_menu {
        width: 100%;
    }
    .subTt .sub-desc {
        font-size:16px;
    }
    .subTt .sub-desc br {
        display: none;
    }
    .subTt .sec-title {
        font-size: 32px;
    }
    .subTt .sec-title:before {
        width: 8px;
        height: 8px;
        top: -20px;
    }
    .solution_main {
        height: auto;
    }

    .ecm_sec0702 .effect-cards {
        grid-template-columns: repeat(2, 1fr);
    }

    /* ai */

    .diff-left .diff-item {
        text-align: center;
        align-items: center;
    }

    .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .diff-column-wrap {
        flex-wrap: wrap;
    }

    .diff-column {
        flex: 0 0 50%;
        min-height: 350px;
        border: 1px solid rgba(255, 255, 255, 0.1);
    }
    .diff-column__desc {
        height: auto;
    }



    /*** safety ***/


    .safety_sec .desc {
        height: auto;
        margin-bottom: 24px;
    }
    .safety_items {
        gap:84px;
        flex-direction: column;
    }
    .safety_img {
        height: 200px;
    }


    /*** company ***/



    .company-sec2 {
        padding: 50px 0 100px;
    }
    .company-sec2 .container {
        gap: 50px;
        flex-direction: column-reverse;
    }
    .company-sec2 .container > div {
        flex : 1;
        width: 100%;
    }
    .company-sec2 h3 {
        font-size: 2rem;
    }
    .company-sec2 p + p {
        margin-top: 24px;
    }
    .company-sec2 p {
        font-size: 1rem
    }

    .company-sec2 img {
        height: 300px;
        object-position: left 17%;
    }

    .company-sec3 {
        padding-bottom: 80px;
    }
    .company-sec3 .container {
        gap: 50px;
    }
    .company-sec3 h4 {
        font-size: 1.4rem;
    }
    .company-sec3 h5 {
        font-size: 1.2rem;
    }
    .company-sec3 p {
        margin: 20px 0 40px;
        font-size: 1rem
    }

    .company-sec4 {
        padding: 80px 0;
    }
    .company-sec4 .title {
        gap: 30px;
        margin-bottom: 20px;
    }
    .company-sec4 .title span {
        font-size:3rem;
    }
    .company-sec4 .title span,
    .company-sec4 .desc {
        transform: translateY(20px);
    }
    .company-sec4 .desc {
        font-size: 1.4rem;
    }
    .usecase-item__text {
        font-size: 0.9rem;
    }
    .company-sec2 h4 {
         font-size: 1.2rem;
         margin-top: 25px;
     }
}

@media (max-width: 968px) {
    .popup_solution_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;
    }

    .popup_solution_grid li img {
        max-width: 200px;
    }

    .popup_solution_grid li.wide .img-row {
        gap: 1rem;
    }

    .popup_solution_grid li.wide .img-row img {
        max-width: 200px !important;
    }
}

@media only screen and (max-width: 950px) {
    .carousel-item__info {
        width: 75%;
        padding: 0 0 10% 6%;
    }

    .carousel-item__title {
        margin: 0 0 12px 0;
        font-size: 2.4rem;
    }

    .carousel-item__title.main .title-set {
        font-size: 2.2rem;
    }

    .carousel-item__description,
    .carousel-item__subtitle {
        font-size: 0.85rem;
    }

    .carousel__nav {
        background-color: transparent;
        bottom: 15%;
    }

    /* 파트너 그리드 - 태블릿: 4열 */
    .partner-grid-item {
        width: 25%;
    }
}

@media (max-width: 900px) {
    .scroll {
        display: none;
    }

    /* KOI LOTO Mobile - aligned with pay4u 900px breakpoint */

    .subTt {
        margin-bottom: 42px;
    }
    .loto-section {
        padding: 60px 0;
    }

    .loto-banner-section {
        padding: 50px 0;
    }

    .loto-detail-hd {
        margin-bottom: 16px;
    }

    .loto-detail-bd {
        margin-bottom: 40px;
    }

    .loto-detail-hd-lg {
        margin-bottom: 40px;
    }

    .loto-hero-title {
        font-size: 1.6rem;
    }

    .why-loto-left,
    .why-loto-right {
        width: 100%;
        flex: none;
    }

    .loto-arrow {
        height: 2px;
        width: 60px;
    }

    .manual-grid {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        max-width: 400px;
        margin: 0 auto;
    }

    .smart-circle {
        max-width: 280px;
        --orbit-radius: 138px;
    }

    .smart-circle-img {
        max-width: 120px;
    }
    .smart-circle ul li {
        width:120px;
        height: 120px;
        margin-left: -60px;
        margin-top: -60px;
    }
    .smart-circle ul li span {
        width: 104px;
        height: 104px;
        font-size: 12px;
    }
    .smart-circle ul li.active {
        width: 104px;
        height: 104px;
    }

    /* KOI LOTO Popup Responsive */
    .Koi_LOTO_popup .content {
        width: 85%;
    }

    .loto-popup-features {
        flex-direction: column;
        gap: 40px;
        align-items: center;
    }

    .loto-popup-locks {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .pay4u-hero {
        flex-direction: column-reverse;
        text-align: center;
        padding: 60px 20px;
        gap: 40px;
    }

    .pay4u-top-left {
        flex-basis: auto;
        align-items: center;
        text-align: center;
        padding-right: 0;
    }

    .pay4u-hero-img {
        flex-basis: auto;
    }

    .pay4u-card-list {
        flex-direction: column;
    }

    .carousel-swipe-hint {
        display: block;
    }

    .carousel-counter {
        bottom: 8%;
        right: 4%;
    }

    .solution_list ul li img {
        margin-bottom: 0;
        margin-right: 20px;
        width: 50px;
        height: 50px;
    }

    .solution_list ul li p {
        text-align: left;
    }

    .solution_list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .solution_list ul li {
        flex-direction: row !important;
        justify-content: flex-start !important;
        padding: 20px !important;
    }

    .works_title_wrap {
        margin-bottom: 60px;
    }
    .works_title_wrap .sub-title {
        font-size: 1.1rem;
        margin-bottom: 10px;
    }

    .works_title_wrap .sub-desc {
        font-size: 1.6rem;
    }

    .group_badge {
        padding: 6px 18px;
        font-size: 0.9rem;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 900px) {
    .circle {
        display: none;
    }

    .floating-menu-01 {
        display: none;
    }

    #header,
    #header.open {
        border: 0px;
    }

    .sidenav.open {
        width: 100%;
    }

    .system_img li {
        flex-basis: 70%;
    }

    .linkpay_popup4 .content .detail_popup .system_img img {
        width: 80% !important;
        margin: 0 auto;
    }

    .ocr_iconlist .popup_btn {
        margin: 5% auto;
    }

    .ocr_iconlist > img {
        margin-top: 2rem;
        width: 100%;
    }

    .patent .patent_area .patent_text {
        margin: 0;
    }

    .p_header h6 {
        font-size: 1rem;
    }

    span.closebtn {
        width: 24px;
        height: 24px;
    }

    .solution.loto-q-section {
        padding: 92px 0 150px
    }
    .solution.bggray {
        padding: 50px 0;
    }
    .why-loto-right .why-title {
        margin-bottom: 84px;
    }

    .width50 {
        width: 90%;
    }

    .out {
        text-indent: -16px;
    }

    img.animateme {
        width: 70%;
        float: none !important;
    }

    .main-ai-banner {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 400px;
        margin-top: 80px;
        overflow: hidden;
        background: url(../images/AI-1.png) no-repeat center center;
        background-size: cover;
    }

    .main-ai-banner::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.45);
        z-index: 2;
    }

    .caption {
        font-size: 0.7rem;
    }

    .little_menu {
        width: 100%;
        padding-top: 0;
    }

    .little_menu li {
        align-self: center;
    }

    .width100 {
        width: 100%;
    }

    .rotate_text {
        display: none;
    }

    .chart_txt p {
        font-size: 0.9em;
        margin: 0;
    }

    .ocr_img {
        display: block;
        width: 70%;
    }

    .choice ul label {
        width: 90px;
    }

    .recruit1 li {
        font-size: 0.7rem;
        line-height: 1.3;
    }

    li.recruit_hd {
        font-size: 0.9rem;
    }

    .contact_banner {
        font-size:1.2rem;
        padding: 50px 20px 120px;
    }
    .contact_banner img {
        width: 24px
    }

    .contact_img {
        /* display: none; */
        width: 50%;
        right: -80%;
    }
    .section2 .contact {
        padding:  0 20px;
    }
    .section2 .contact .contactArea {
        width: 100%;
        height: 180px;
    }
    .section2 .contact .contactArea:nth-child(1) {
        background: var(--primary) url("../img/icons/ico_koi_r.svg") no-repeat right 20px center / 50px;
    }
    .section2 .contact .contactArea:nth-child(2) {
        background: #575757 url("../img/icons/ico_koi_g.svg") no-repeat right 20px center / 50px;
    }
    .section2 .contact .detail_hd {
        font-size: 20px;
        margin-bottom: 3px;
    }
    .section2 .contact .detail_bd {
        font-size: 14px;
    }
    .section2 .contact span {
        font-size: 8px;
    }

    .menu_btn {
        width: 30px;
        height: 40px;
        margin: 5% 0 0 37%;
    }

    .ocr_icon img {
        width: 40px;
    }

    .w-br {
        display: none;
    }

    ul.iconDeploy {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    ul.iconDeploy img {
        margin: 5%;
        width: 16%;
    }

    .width70 {
        width: 70%;
    }

    .linkpayBtn {
        margin: 4% 0;
        width: 100%;
    }

    .bgred p:last-child {
        font-size: 0.6rem;
    }

    .whitebtn {
        margin: 6% 0;
        height: 2.5rem;
    }

    .loto-container {
        padding: 0;
    }
    .solution.solutionArea .m-flex .m-width100 {
        margin-top: 10%;
    }

    .linkView.imoyya {
        flex-direction: column;
    }

    .linkView li img:first-child,
    .linkView.web li div img {
        width: 50px;
    }

    .linkpay_popup2 .logical_system,
    .linkpay_popup3 .logical_system,
    .linkpay_popup4 .logical_system,
    .editor_popup2 .logical_system,
    .imoyya_popup .logical_system {
        margin-top: 18%;
    }

    .linkpay_popup2 .logical_system img,
    .linkpay_popup3 .logical_system img,
    .editor_popup2 .logical_system img {
        width: 100%;
    }

    .linkpay_popup4 .logical_system .system_img li {
        text-align: center;
        margin-bottom: 10%;
    }

    .linkView.web {
        margin-top: 10%;
    }

    .linkView.web li:last-of-type div img {
        width: 80px;
    }

    .linkView li span {
        font-size: 0.8rem;
        margin: 3%;
    }

    .linkView.web li {
        width: 90%;
    }

    .linkView.web li div {
        flex-basis: 40%;
    }

    .linkView.imoyya li p {
        font-size: 0.7rem;
    }

    .floating-menu,
    .floating-menu-04 {
        margin-top: 12%;
    }

    .floating-menu-01,
    .floating-menu-02,
    .floating-menu-03 {
        margin-top: 0%;
    }

    .floating-menu li,
    .floating-menu-01 li,
    .floating-menu-02 li,
    .floating-menu-03 li,
    .floating-menu-04 li {
        width: 50%;
    }

    .floating-menu a,
    .floating-menu-01 a,
    .floating-menu-02 a,
    .floating-menu-03 a,
    .floating-menu-04 a {
        width: 85%;
        text-align: center;
        font-size: 1rem;
    }

    /* .OCR_popup2 .content {
      height: 70% !important;
    } */
    .detail_popup > .scroll_area-01,
    .detail_popup > .scroll_area-02,
    .detail_popup > .scroll_area-03,
    .detail_popup > .scroll_area-04 {
        height: calc(100% - 127px);
    }

    .OCR_SRNO_popup1 .content {
        height: 60%;
    }

    .ocr_product ul li {
        font-size: 0.8rem;
    }

    .ocr_product li.label {
        font-size: 0.9rem;
    }

    .ocr_product ul li.gray ul.list4 li,
    .ocr_product ul li.gray ul.list5 li {
        width: 30%;
    }

    .ocr_product ul li.gray ul.list2 li,
    .ocr_product ul li.gray ul.list3 li {
        width: 90%;
    }

    #popup .content .detail_popup .system_img ,
    .popup .content .detail_popup .system_img {
        margin-top: 8%;
    }

    .m-margin-top6 {
        flex-direction: column;
    }

    .m-margin-top6 img {
        width: 100%;
        margin-bottom: 6%;
    }

    .popup_table table {
        width: 90%;
        font-size: 0.8rem;
    }

    .popup_table table th {
        line-height: 1.2;
        height: 40px;
    }

    .partner p.detail_hd {
        margin: 0 0 40px
    }
    .partner .detail_hd {
        font-size: 1.6rem;
    }

    .sub_btn.set2 {
        margin-bottom: 2%;
    }

    .sub_btn ul {
        flex-direction: column;
        max-width: 340px;
        margin: 0 auto;
    }
    .sub_btn2 ul {
        flex-direction: column;
        gap:12px;
    }
    .main_vision_area2 {
        padding: 0 20px 80px;
    }
    .main_vision_area2 li {
        flex: 1;
        height: auto;
    }
    .main_vision_area2 li a .sub_btn_txt {
        grid-template-rows: auto 1fr;
    }

    .sub_btn ul li {
        /* border-radius: 10px; */
        padding: 6% 4%;
    }

    .sub_btn.set2 ul li {
        width: 100%;
    }

    .sub_btn.set2 ul li:nth-child(1) {
        margin-right: 0;
        margin-bottom: 2%;
    }

    .news-section h3 {
        font-size: 1.3rem;
    }

    .sub_btn ul li h1 {
        font-size: 1.3rem;
    }

    .sub_btn ul li h1 span {
        font-size: 1rem;
    }

    .sub_btn ul li a {
        font-size: 0.8rem;
        margin-top: 4%;
    }

    .sub_btn ul li h2 {
        font-size: 1.1rem;
        margin: 3% 0;
    }

    .bggray .main_icon {
        width: 40%;
        margin-bottom: 6%;
    }

    .black_btn {
        margin-bottom: 4%;
    }

    ul li.iconDeploy img {
        width: 50px;
    }

    .consent_txt {
        font-size: 0.8rem;
        line-height: 2;
    }

    #footer {
        padding: 8% 0;
    }

    #footer .top {
        flex-direction: column;
        margin-bottom: 8%;
        padding: 0 5%;
    }

    #footer .top .left {
        width: 100%;
        margin-bottom: 6%;
    }

    #footer .top .right {
        width: 100%;
    }

    #footer .top .right ul {
        font-size: 0.65rem;
    }

    #footer .bottom {
        padding: 8% 5% 0 5%;
    }
    .sub_main {
        height: auto;
        padding: calc(42px + var(--header-h-scrolled)) 0 42px;
    }
    .hero-sub {
        font-size: 20px;
        padding-bottom: 20px;
    }
    .hero-title {
        font-size: 36px;
    }
    .sub_main .flex-between {
        flex-direction: column;
        gap:24px;
        align-items: baseline;
    }

    .sub_main img {
        width: 100%;
    }

    .about_main img {
        display:none
    }
    .about-tt {
        position: relative;
        padding-left: 64px;
    }
    .about-tt:after {
        border: 7px solid var(--primary);
        width: 220px;
        height: 220px;
    }
    .sub_main.about_main  {
        padding: calc(120px + var(--header-h-scrolled)) 0 120px;
    }
}

@media (min-width: 861px) {
    /* PC에서 상단 문의 영역이 히어로로 이동했으므로,
       해당 섹션의 상단 여백을 없애서 배너가 바로 보이게 합니다. */
    .main_works_area.pd_bottom {
        padding-top: 0 !important;
    }
}

@media (max-width: 860px) {
    .contact-pc {
        display: none !important;
    }

    .contact-mobile {
        display: flex !important;
    }

    .compare-table table {
        width: max-content;
    }

    .company-sec4 .title span {
        font-size:2.4rem;
    }
    .company-sec4 .desc {
        font-size: 1.2rem;
    }
}

@media (max-width: 768px) {
    /* main */

    .main_img .txt span {
        font-size:1.1rem;
        margin-bottom: 14px;
    }
    .main_img .txt h2 {
        font-size:2.4rem;
    }
    .main_img {
        height: 500px
    }

    .main_solution ul li {
        flex-direction: column;
        margin-top: 60px;
        height: auto;
    }
    .main_solution .works_title_wrap {
        padding-bottom: 20px;
    }
    .main_solution ul li > div {
        width: 100%;
    }
    .main_solution_img {
        order: 1;
    }
    .main_solution_txt {
        order:2
    }
    .main_solution ul li:nth-child(1) .main_solution_img {
        aspect-ratio: 767 / 458
    }
    .main_solution ul li:nth-child(2) .main_solution_img {
        aspect-ratio: 865 / 646
    }
    .main_solution ul li:nth-child(3) .main_solution_img {
        aspect-ratio: 845 / 733
    }
    .main_solution_txt h3 {
        margin: 12px 0 0 0;
        font-size: 2rem;
    }
    .solution_group + .solution_group {
        margin-top: 60px;
    }
    .main_works_area {
        text-align: center;
        padding: 80px 0 120px;
    }
    .marquee_line {
        font-size:80px
    }

    .main_vision_area .secTt h3 {
        font-size:1.6rem;
    }
    .main_vision_area .secTt h3 b {
        display: inline-block;
    }
    .main_vision_area .secTt span {
        font-size: 1.1rem;
    }
    .sub_btn ul li a h4 {
        font-size:1.2rem;
    }
    .sub_btn ul li a p {
        font-size:0.8rem;
    }
    .sub_btn {
        padding: 80px 0 120px;
    }
    .sub_btn ul li a .viewMore {
        margin-top: 32px;
        font-size: 0.6rem;
        width: 100px;
        padding: 8px 15px;
    }
    .main_vision_area2 li a h4 {
        font-size:1.3rem;
    }
    .main_vision_area2 li a p {
        font-size:0.8rem;
    }
    .main_vision_area2 {
        padding: 0 20px 60px;
    }
    .main_solution {
        padding: 80px 0 0;
    }
    .partner-grid-item img {
        filter: grayscale(0);
    }

    /* contact */

    .section {
        height: auto;
    }
    .box-inner {
        position: relative;
    }
    button {
        width: auto;
        height: 3rem;
        font-size: 1rem;
        border: 1px solid #191919;
    }
    .section2 .contactArea , .contactArea {
        padding: 0 0 30px;
    }
    .contact_banner {
        height: auto;
    }
    .contact {
        padding: 30px 0;
    }
    .detail_bd {
        margin: 1.4rem 0;
    }
    .detail_bd span {
        display: inline-block;
    }
    .contact_wrap .section3 iframe {
        height: 240px !important;
    }

    /** solution **/


    .about-tt {
        padding-left: 0;
    }
    .about-tt:after {
        display: none;
    }
    .solution-image {
        max-width: 240px;
    }
    .problem-desc br , .solution-text p br,
    .feature-card-text br, .sec-desc br{
        display: none;
    }
    .feature-card img{
        width: 32px;
    }
    .usecase_swiper img {
        max-width: 240px;
    }
    .effect-cards {
        grid-template-columns: repeat(1, 1fr);
    }
    .effect-card img {
        width: 46px;
    }
    .sub_container section.cta-sec br{
        display: none;
    }
    .accent {
        text-decoration-line: underline;
        text-decoration-thickness: 15px;
        text-underline-offset: -6px;
        text-decoration-color: rgba(178, 35, 35, 0.10);
        text-decoration-skip-ink: none;
    }
    .accent:after {
        display: none;
    }

    .benefits-sec ul{
        flex-direction: column;
    }
    .benefits-sec ul li {
        flex: 1;
        gap: 16px;
    }
    .arch_flex > div:not(.symbol) {
        width: 100%;
    }
    .arch_client_con , .arch_admin_con{
        gap: 16px;
    }
    .arch_con {
        gap: 24px;
    }
    .arch01 {
        flex-direction: column;
    }

    .ecm_sec0702 .effect-cards {
        grid-template-columns: repeat(1, 1fr);
    }

    /** ai **/


    .mockup-container {
        aspect-ratio: 4 / 5;
        border-radius: 20px;
        padding: 20px 0;
    }

    .mockup-container video {
        height: 80%;
    }

    .docs-wrap {
        padding-bottom: 60px;
    }

    .features-grid {
        grid-template-columns: 1fr;
    }

    .diff-content {
        padding: 0;
    }

    .diff-column {
        flex: 0 0 100%;
        min-height: 300px;
        padding: 50px 20px;
    }


    /*** safety ***/


    .safety_sec table {
        font-size: 16px;
    }
    .safety_sec h3  {
        font-size: 16px;
        padding: 10px 20px;
        margin: 18px 0;
    }
    .safety_sec .desc {
        font-size:16px;
    }
    .safety_sec table ul {
        padding-left: 14px;
    }
    .safety_sec p {
        font-size: 12px;
        margin-top: 24px;
    }
    .safety_img {
        height: auto;
    }
    .safety_img img {
        max-height: 200px;
        max-width: 100%;
    }
    .company-sec4 .title span,
    .company-sec4 .desc {
        opacity: 1;
        transform: translateY(0);
    }
    .company-sec4 .title {
        gap: 15px;
    }
    .company-sec3 {
        text-align: center;
    }
    .company-sec3 .company03-right {
        flex: none;
        width: 100%;
    }
    .company-sec3 .company03-left {
        display: none;
    }
}

@media only screen and (max-width: 700px) {
    .menu {
        font-size: 1.5rem;
        line-height: 1.4;
        margin-bottom: 0;
    }
    .title_fix {
        height: auto;
    }

    .linkpay_popup1 .content {
        height: 60%;
    }

    .linkpay_popup4 .logical_system .system_img {
        flex-direction: column;
        flex-wrap: nowrap;
    }

    .carousel-item {
        flex-direction: column;
        top: 10%;
        /* text-align: center; */
        justify-content: flex-start;
    }

    .carousel-item__info {
        width: 100%;
        /* height: 30%; */
        margin: 0;
        background-size: 120px;
    }

    .carousel-item__image {
        width: calc(100% - 50px);
        height: auto;
    }

    .carousel-item__subtitle,
    .carousel-item__description {
        font-size: 0.9rem;
        line-height: 1.4;
        margin-top: 3%;
    }

    .carousel-item__title {
        font-size: 1.8rem;
        margin: 3% 0 0 0;
    }

    .carousel-item__title span,
    .carousel-item__title.main span {
        font-size: 1.1rem;
    }

    .carousel-item__btn {
        margin: 5% auto;
        font-size: 0.9rem;
    }

    .carousel__nav {
        left: auto;
        width: 100%;
        bottom: 38%;
        display: flex;
        background-color: transparent;
        justify-content: space-between;
    }

    .carousel__arrow {
        background-image: url(../img/main/arrow_m_r.png);
        height: 62px;
    }

    .carousel__arrow:nth-child(1) {
        background-image: url(../img/main/arrow_m_l.png);
    }

    .carousel__arrow:nth-child(1):after {
        display: none;
    }

    .carousel__arrow:hover {
        background-image: url(../img/main/arrow_m_r.png);
    }

    .carousel__arrow:nth-child(1):hover {
        background-image: url(../img/main/arrow_m_l.png);
    }

    #any_main {
        top: 62px;
        width: 22%;
        right: 12%;
    }

    #any_ocr{
        top: 80px;
        width: 28%;
        right: 39%;
    }

    .any_ocr {
        top: 27px;
        width: 25%;
        right: 40%;
    }
    #any_link, .any_link {
        top: 47%;
        width: 37%;
        right: 29%;
    }

    #any_bems{
        top: 30%;
        width: 77%;
        right: 13%;
    }
    .any_bems {
        top: 30%;
        width: 74%;
        right: 15%;
    }

    #any_company {
        top: 34%;
        width: 26%;
        right: 16%;
    }

    .circle_bg {
        background-position: 98% top;
        background-size: 80px;
    }

    .main_img_bg {
        background-image: none;
    }

    .history_list {
        margin: 10% 0 0 0;
    }

    .business {
        padding: 5% 0;
        flex-direction: column;
        width: 40%;
    }

    .businessArea {
        margin-bottom: 10%;
    }

    .partnerImg {
        flex-direction: column;
        left: 0;
    }

    .partnerImg img {
        width: 60%;
    }

    .title_en {
        font-size: 2rem;
    }

    #main-circle {
        top: -60px;
    }

    #main_oval {
        top: 75%;
    }

    .background {
        top: 520px;
        right: 0;
        width: 80%;
    }

    .background img {
        width: 70%;
        right: 1%;
        bottom: 19%;
    }

    .detail_body {
        font-size: 1rem;
    }

    #title_body.p_s, .title_body.p_s {
        font-size: 1rem;
    }

    #title_body , .title_body{
        /* padding: 30% 0 10% 0; */
        font-size: 1rem;
        line-height: 1.6;
    }

    #title_detail_body {
        padding: 3% 10%;
    }

    .gif_img {
        margin: 0 0 5% 0;
    }

    .title_line {
        font-size: 1.3rem;
        padding: 10%;
    }

    .solution_list_arrow .title_line br {
        display: inline-block;
    }

    .title_line br {
        display: none;
    }

    /* project */

    .project {
        display: block;
    }
    .project_mb_tab {
        display: block;
    }
    .project_mb_tab ul {
        display: flex;
    }
    .project_pc_tab {
        display: none;
    }
    .project_tab {
        padding-top: 0;
        padding-bottom: 15px;
        padding-right: 0;
        border-bottom: 1px solid #ddd;
        border-right: 0;
        position: relative;
        margin-bottom: 30px;
    }
    .project_tab li {
        font-size: 16px;
        padding: 8px 5px !important;
        width: 70px !important;
        position: relative;
    }
    .project_tab li a {
        display: block;
    }
    .project_tab li.active:after {
        content: "";
        display: block;
        width: 12px;
        height: 12px;
        transition: left 0.3s ease;
        position: absolute;
        bottom: -22px;
        left: 50%;
        border-radius: 50%;
        transform: translateX(-50%);
        background: var(--primary);
    }
    .project_tab li + li {
        margin-top: 0;
        margin-right: 8px;
    }
    .project_tab span {
        display: none;
    }
    .project_con {
        padding-left: 0;
        padding-top: 0;
    }
    .project_con li + li {
        margin-top: 24px;
    }

    li.projectArea {
        font-size: 1rem;
    }

    button.popup_btn2 {
        font-size: 0.9rem;
    }

    .little_menu li a {
        font-size: 1rem;
    }

    .ocr_txt {
        font-size: 1rem;
        text-align-last: center;
    }

    .detail_bd_r {
        font-size: 0.9rem;
        margin: 0;
    }

    .choice ul label {
        width: 70px;
    }

    p.popup_hd {
        font-size: 1.1rem;
        text-align: center;
    }

    .field-list li label span {
        font-size: 1.1rem;
    }

    .contact {
        flex-direction: column;
        align-items: center;
    }
    .businessArea img {
        width: 50%;
    }

    .businessArea span {
        font-size: 1rem;
    }

    .sidenav a {
        font-size: 1.4rem;
        padding: 2% 10%;
    }

    .sidenav a.menu_sub {
        font-size: 0.9rem;
    }

    .menu_list .menu_sub.link {
        background-position: 13% center;
    }

    .on > .menu_list li a.open + ul {
        padding: 0 0 7% 5%;
    }

    .on > .menu_list li a.open + ul li {
        height: 60px;
        line-height: 60px;
    }

    .about_img2 {
        background-position: right 86%;
        background-size: 60%;
    }

    .animateme span {
        font-size: 1rem;
    }

    .vision p {
        font-size: 1rem;
    }

    .menu {
        font-size: 2rem;
    }

    .historyArea {
        font-size: 1rem;
    }

    .year_btn {
        font-size: 1.5rem;
    }

    .ocr_ul {
        margin: 10% 0;
    }

    .bg_circle {
        padding: 0% 26%;
        font-size: 1rem;
        line-height: 5.5;
        margin: 0%;
    }

    .bg_circle::before {
        width: 150px;
        height: 50px;
    }

    .popup_app {
        font-size: 1.4rem !important;
        margin: 0 !important;
    }

    .popup_app_r {
        font-size: 0.9rem !important;
        margin: 3% !important;
    }

    .contactArea {
        width: 100%;
        padding: 30px 0;
    }

    .padding_area {
        padding: 20% 0 0 0;
    }

    .hamburger::before,
    .hamburger::after {
        width: 30px;
    }

    .hamburger::before {
        transform: translateY(26px);
    }

    .hamburger::after {
        transform: translateY(8px);
    }

    /* p#title_menu.menu {
      padding: 0 10%;
    } */
    p#title_main1.title1 {
        font-size: 1rem;
        margin-bottom: 3%;
        padding-top: 0
    }

    .section1 .box-inner {
        align-items: normal;
        padding-top: 20vh;
    }

    .s_btn_area {
        flex-direction: column;
        width: 100%;
        /* padding-top: 16%; */
    }

    a.s_btn {
        width: 100%;
        margin-bottom: 20px;
        height: 180px;
        padding: 5%;
    }

    a.s_btn.active {
        transform: none;
    }

    a.c_btn {
        height: auto;
        padding: 12px 24px;
    }

    a.c_btn h3 {
        font-size: 1.2rem;
    }

    .company img {
        width: 80%;
    }

    .recruit1 {
        width: 100%;
        padding: 0;
    }

    .popup_wrap {
        flex-direction: column;
        align-items: center;
    }

    .chart_txt {
        margin: 1rem 0;
    }

    .flip_box {
        flex-direction: column;
    }

    .col {
        width: 100%;
    }

    .scroll {
        display: none;
    }

    .visionArea span {
        font-size: 0.8rem;
    }

    .visionArea:last-child {
        font-size: 1rem;
        line-height: 1.4;
        width: 130px;
        height: 130px;
    }

    .copyright {
        grid-template-columns: 1fr;
        padding-top: 6%;
        margin: 0 16%;
        width: auto;
    }

    .copyrightArea {
        width: 100%;
        margin-bottom: 40px;
    }

    .copyrightArea img {
        width: 100%;
        height: auto;
    }

    .btnDiv img {
        width: 10%;
    }

    .linkpayBtn {
        height: 3.5rem;
        padding: 5%;
    }

    .m-margin-top6 {
        margin-top: 6%;
    }

    .idcard ul {
        width: 26%;
    }

    video {
        width: 100%;
    }

    .width88 {
        width: 88%;
    }

    .ai-anti img {
        width: 100%;
    }
}

@media (max-width: 640px) {
    .popup_solution_grid {
        grid-template-columns: 1fr;
        gap: 3rem;
        padding: 0 10px;
    }

    .popup_solution_grid li img {
        max-width: 240px !important;
        width: 80% !important;
    }

    .popup_solution_grid li.wide .img-row {
        flex-direction: column;
        gap: 2rem;
    }

    .popup_solution_grid li.wide .img-row img {
        max-width: 240px !important;
        width: 80% !important;
        margin: 0;
    }

    .popup_solution_grid li h3 {
        font-size: 1.1rem;
    }

    .popup_solution_grid li p {
        font-size: 0.9rem;
        margin-bottom: 1.5rem;
    }

    /** solution **/

    .diff-card-desc , .compare-table th, .compare-table td, .tag, .feature-card{
        font-size:14px;
    }
    .effect-desc {
        font-size: 16px;
    }
    .sec-title {
        font-size:24px
    }
}

@media only screen and (max-width: 600px) {

    /* main */

    /*.main_img video {
        object-position: 80%;
    }*/
    .solution_list ul {
        grid-template-columns: repeat(1, 1fr);
    }
    .solution_list ul li .column {
        text-align: left;
        align-items: start;
    }
    .solution_list ul li img {
        margin-right: 30px;
    }

    .carousel-item__info {
        width: 90%;
        padding: 0 0 14% 5%;
    }

    .carousel-item__title {
        font-size: 1.8rem;
        margin: 0 0 10px 0;
    }

    .carousel-item__title.main .title-set {
        font-size: 1.6rem;
        flex-direction: column;
        gap: 2px;
    }

    .carousel-item__subtitle {
        font-size: 0.75rem;
        letter-spacing: 0.04em;
    }

    .carousel-item__description {
        font-size: 0.8rem;
        line-height: 1.5;
    }

    /* 파트너 그리드 - 모바일: 3열 */
    .partner-grid-item {
        width: 33.333%;
        padding: 16px 10px;
        min-height: 72px;
    }

    .partner-grid-item img {
        max-width: 90px;
        max-height: 38px;
    }

    /* 파트너 탭 - 모바일 */
    .partner-tabs {
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 24px;
    }

    .partner-tab-btn {
        padding: 15px 5px;
        font-size: 0.95rem;
        flex: 1 1 calc(33.333% - 8px);
        width: auto;
        height: auto;
    }


    .company-sec4 .title span {
        font-size:1.8rem;
    }
    .company-sec4 .desc {
        font-size: 1.1rem;
    }
}

@media only screen and (max-width: 500px) {
    .patent .patent_area .detail_bd {
        margin-bottom: 20px;
    }

    .patent .patent_area .patent_img div p {
        width: 90%;
        padding: 4px 0;
    }

    .docSlider-current {
        width: 100%;
        height: 100%;
        position: relative;
    }

    .carousel-item__info {
        /* height: 32%; */
    }

    .historyArea {
        margin-left: 0;
        padding: 0 0 34px 40px;
    }

    .box1 p {
        font-size: 1.3rem;
    }

    .flip_box {
        flex-direction: column;
    }

    .linkpayBtn p,
    button {
        font-size: 1rem;
    }

    .col {
        width: 100%;
    }

    p.detail_hd {
        font-size: 1.2rem;
    }

    .title_en {
        font-size: 1.2rem;
    }

    .background {
        width: 90%;
    }

    .background img {
        width: 75%;
        right: 0%;
        bottom: 20%;
    }

    .br_web {
        display: none;
    }

    .box2 p {
        font-size: 1.2rem;
    }

    #popup .content ,
    .popup .content {
        width: 90%;
        height: 80%;
    }

    .input,
    textarea {
        font-size: 0.8125rem;
    }

    .forward span {
        font-size: 1rem;
    }

    .forward img {
        margin: 0px 0 0 16px;
        width: 11px;
    }

    .chart {
        margin: 3% 0 15% 0;
    }

    .p_header {
        padding: 6%;
    }

    .logical_system {
        width: 100%;
        padding: 6%;
    }

}
@media only screen and (max-width: 440px) {
    .header-bar {
        padding: 0 20px;
    }
    .btn-contact {
        padding: 5px 12px;
    }
    .main_img .txt span {
        font-size:1rem
    }
    .main_img .txt h2 {
        font-size: 2rem;
    }
    .main_img .txt {
        padding: 0 30px;
    }
    .main_solution ul li {
        margin-top: 30px;
    }
    .main_solution_txt > span {
        font-size: 0.8rem;
    }
    .main_solution_txt h3 {
        font-size:1.8rem
    }
    .main_solution_txt h3 br {
        display: none;
    }
    .main_solution_txt p {
        font-size:0.875rem;
        margin-top: 10px;
    }
    .main_solution_txt p br {
        display: none;
    }
    .main_solution_txt a {
        width: 140px;
        font-size:0.8rem;
        margin: 30px 0 0;
    }
    .main_solution_txt a span , .main_vision_area .secTt span{
        font-size:0.8rem;
    }
    .works_title_wrap .sub-desc br{
        display: none;
    }
    .works_title_wrap {
        margin-bottom: 40px;
    }
    .group_badge {
        margin-bottom: 0;
    }
    .marquee_line {
        font-size: 62px;
    }
    .partner-tab-btn {
        padding: 12px 5px;
        font-size: 0.9rem;
        border-radius: 10px;
    }
    .main_vision_area .secTt h3 , .works_title_wrap .sub-desc {
        font-size:1.3rem
    }
    .main_vision_area .secTt h3 br{
        display: none;
    }
    .group_badge h4 {
        font-size:1.2rem
    }
    .works_title_wrap .sub-title {
        font-size:12px
    }
    .group_badge span {
        margin-bottom: 4px;
        font-size: 12px;
    }
    .main_vision_area2 {
        padding: 0;
    }
    .main_vision_area2 ul {
        gap: 0
    }
    .main_vision_area2 li {
        border-radius: 0;
    }
    .main_vision_area2 li a {
        padding: 30px 20px;
    }
    .sub_btn {
        padding: 80px 0;
    }

    /* about */

    .title_m {
        font-size: 1.4rem;
    }
    .about_img2 .title_body br , .about_img4 .title_body br{
        display: none;
    }

    /* solution energy */

    .smart-circle {
        max-width: 200px;
        --orbit-radius: 100px;
    }

    .smart-circle-img {
        max-width: 80px;
    }
    .smart-circle ul li {
        width:80px;
        height: 80px;
        margin-left: -40px;
        margin-top: -40px;
    }
    .smart-circle ul li span {
        width: 69px;
        height: 69px;
        font-size: 8px;
    }
    .smart-circle ul li.active {
        width: 69px;
        height: 69px;
    }
    .manual-item {
        padding: 10px;
    }


    /** safety **/

    .safety_sec table , .safety_sec .desc{
        font-size: 14px;
    }
    .safety_sec table th {
        padding: 12px;
        width: 90px;
    }
    .safety_sec table ul {
        padding-left: 14px;
    }

    .company-sec4 .title {
        margin-bottom: 15px;
        gap:5px
    }
    .company-sec4 .title span {
        font-size:1.3rem;
    }
    .company-sec4 p {
        font-size: 0.9rem;
    }
}
@media only screen and (max-width: 350px) {
    .carousel-item__image {
        width: 250px;
    }
}