@media screen and (max-width: 1440px){
    .desk{
        display: none;
    }
    .responsive{
        display: block;
    }
    /* header */
    header .responsive_menu{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    /* 비주얼 */
    .visual{
        height: auto;
        aspect-ratio: 16/9;
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide.right .txt_box{
        right: 80px;        
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide.left .txt_box{
        left: 80px;    
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide .txt_box h1{
        line-height: 52px;
        font-size: 48px;        
    }
}
@media screen and (max-width: 1024px){
    /* 메인페이지 */
    /* main_visual */
    .main_visual{            
        margin-top: 60px;            
    }
    /* sec02 */
    .sec_02 .txt_box h3{
        font-size: 32px;
        line-height: 52px;
    }
    .sec_02 .txt_box h2{
        font-size: 40px;
    }
    /* sec04 */
    .sec_04 .VR_visual_wrap .object{
        width: 75%;
        top: 70%;
    }
    /* sec05 */
    /* sec06 */
    .sec_06 .menu_box{
        gap: 12px;
    }
    .sec_06 .menu_box .con{
        width: calc((100% - 36px) / 4);
        border-radius: 12px;
    }
    .sec_06 .menu_box .con::after{
        content: " ";
        width: calc(100% - 12px);
        height: calc(100% - 12px);
        border-radius: 12px;
    }
    .sec_06 .menu_box .con .txt_box{
        padding: 20px 12px;
    }
    .sec_06 .menu_box .con .txt_box .txt{
        font-size: 14px;
        line-height: 18px;
    }
}
@media screen and (max-width: 767px){    
    .mobile{
        display: block;
    }
    section{
        height: auto;
        margin-top: 100px;
    }
    footer .txt_box{        
        font-size: 14px;        
    }
    /* 메인페이지 */
    /* main_visual */
    .main_visual{
        height: 100vh;
    }
    .main_visual_slider{
        height: 100vh;
    }
    .horizontal_visual{
        display: none;
    }
    .vertical_visual{
        display: block;
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide .txt_box{
        top: 30%;
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide.right .txt_box{
        right: 50%;
        transform: translate(50%, -50%);
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide.left .txt_box{
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide .txt_box h1{
        line-height: 36px;
        font-size: 28px;
        text-align: center;
    }
    .main_visual .main_visual_slider .swiper-wrapper .swiper-slide.right .txt_box h1{
        text-align: center;
    }
    /* sec02 */
    .sec_02 .icon_box ul{
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0 32px;
    }
    .sec_02 .icon_box ul li{
        width: calc(50% - 16px);
        border-radius: 12px;
    }
    .sec_02 .txt_box h3{
        font-size: 18px;
        line-height: 48px;
    }
    .sec_02 .txt_box h2{
        font-size: 32px;
    }
    /* sec03  */
    .sec_03{
        margin: 0;
        padding: 100px 0;
        height: 720px;
    }
    .sec_03 .tit_box h2{    
        font-size: 24px;
    }
    .sec_03 .tit_box h2 strong{
        font-size: 22px;
    }
    .sec_03 .tit_box h2 small{
        font-size: 20px;
    }
    /* sec04 */
    .sec_04{
        height: 1600px;    
    }
    .sec_04 .VR_visual_wrap .object{
        top: 60%;
    }
    .sec_04 .VR_visual_wrap .display img{
        border-radius: 8px;
        border: 1px solid #ccc;
    }
    /* sec title */
    .sec_04 .VR_visual_wrap .txt_box .tit h2{
        font-size: 24px;        
    }
    .sec_04 .VR_visual_wrap .txt_box .tit h2 strong{
        font-size: 28px;
    }
    .sec_04 .VR_visual_wrap .txt_box .tit h2 b{
        font-size: 32px;        
    }
    /* sec05 */
    .sec_05 .tit_box h2{
        padding-bottom: 40px;        
        font-size: 24px;
    }
    .sec_05 .txt_box.question{    
        padding: 16px 4px;
    }
    .sec_05 .txt_box.answer{        
        padding: 20px 20px 20px 20px;
        gap: 6px;        
    }
    .sec_05 .txt_box h3{
        font-size: 20px;
    }
    .sec_05 .txt_box.question .txt h3{
        line-height: 24px;
    }
    .sec_05 .txt_box p{
        width: 100%;
        font-size: 16px;
        line-height: 20px;
    }
    .sec_05 .txt_box.question .arrow{
        width: 20px;
        height: 20px;
        min-width: 20px;                
        min-height: 20px;
    }
    .sec_05 .txt_box.answer{            
        padding: 20px 8px;        
    }    
    /* sec06 */
    .sec_06{        
        padding-bottom: 100px;        
    }
    .sec_06 .tit_box h2{
        font-size: 24px;
    }
    .sec_06 .tit_box h2 strong{
        font-size: 28px;        
    }
    .sec_06 .tit_box h2 small{
        font-size: 20px;        
    }
    .sec_06 .menu_box{
        flex-wrap: wrap;
        gap: 20px;
    }
    .sec_06 .menu_box .con{
        width: calc((100% - 20px) / 2);
        aspect-ratio: 3/4;
        margin-top: 10px;
        position: relative;
        border-radius: 16px;
        border: 2px solid #ddd;
        background-color: #fff;
        opacity: 0;
        z-index: 99;
    }
    .sec_06 .menu_box .con .txt_box .tit{
        font-size: 20px;        
        padding-bottom: 12px;        
    }
    .sec_06 .menu_box .con .txt_box .txt{
        font-size: 12px;
        line-height: 16px;                     
        letter-spacing: -.5px;
    }
}