.sub_visual_are{overflow: hidden}

@media (max-width: 1600px) {
   
   .inner,
   .sub04_slide .slick-list{padding: 0 4rem}
  
  .flex_sub04_box .box .txt p,
  .sub04_slide .box .txt p{font-size: 18px; word-break: keep-all}
  
  .card_news li .txt h3{font-size: 20px}
  .card_news li .txt p{font-size: 16px}
   
   .company_flex2 .thum img:first-child{margin: 0}
}


@media (max-width: 1370px) { 
   
   .flex_sub04_box{gap:20px}



.gall_list_style {
    flex-wrap: wrap;
    gap: 60px 20px;
}

.gall_list_style li {
    width: calc(33.33% - 13.33px);
}


.flex_hover .box .txt h3{font-size: 20px}
.flex_hover .box .txt p,
.guide_flex .box .thum .txt p{font-size: 16px}

.flower_list li .txt h3,
.sub03_flex2 .box .txt h3,
.guide_flex .box .thum .txt h4{font-size: 22px}


.sub03_slide .slick-list{padding: 0 4rem}

.sub03_slide_are .slide_btn span{width: 80px; height: 80px}


.sub03_slide_are .slide_btn {
    padding: 0 calc(4rem - 20px);}

.travel_info .box img{max-width: 100%}

.travel_info .box:first-child img + img{margin-right: 0}
.travel_info .box:last-child img + img{margin-right: 0}


.travel_info .box{width: 20%}
.travel_info .center{width: 60%}


.course .box {
    width: auto;
    height: auto;
    aspect-ratio: 1;
    flex: 1;
    padding: 0;
    justify-content: center;
}


.course .box p{font-size: 14px}
.course .box h4{font-size: 16px}

.inner2{padding: 0 17px}

.plus_course{border-radius: 8px; padding: 80px 15px}

}


@media (max-width: 1280px) { 
	
	
	.sub_visual_are .sub_visual_title{
		padding: 200px 25px 100px
	}
	
	.sub_visual_are .sub_visual_title h4,
	.board_title h5,
	.board_title p,
	.sub_visual_are .sub_visual_img.cover .txt p{font-size: 14px}
	
	.sub_visual_are .sub_visual_title h2,
	.sub_title h2,
	.board_title h2{font-size: 40px}
	
	.sub_title h3,
	.sub_visual_are .sub_visual_img.cover .txt h3{font-size: 30px}
	 
	.sub_title h4{font-size: 20px}
	
	.sub_visual_are .sub_visual_title ul li{font-size: 14px}
	
	.tab__item a,
	.sub_btn{font-size: 16px; min-width: auto; padding: 15px 30px}
	
   * + .sub_title {
    margin-top: 100px;
}


.sub_tlb table th, .sub_tlb table td,
.sub01_in .ck_list li,
ul.dot li,
.sub_map_info p,
.sub_map_info .map_btn a,
.note_box.red h4{font-size: 16px}

.note_box h4{font-size: 18px}

.sub01_flex_title h4,
.sub01_flex_title .go_link,
.course_top p,
.note_center p,
.flex_note_text .box p,
p.option_p{font-size: 16px}

.flex_note_text .box h3{font-size: 20px; margin-bottom: 30px}

.modal_pop .modal_pop_are{border-radius: 10px; max-width: 500px; padding: 20px}
.modal_pop .modal_pop_are .thum{border-radius: 8px}

.flex_note_text .box:first-child{padding-right:50px }
.flex_note_text .box + .box{padding-left: 50px}


.modal_pop_close{width: 40px; height: 40px; right: 5px; top: 5px}
.modal_pop .modal_pop_are .txt {
    margin-top: 45px;
    max-height: 30vh;
    overflow-y: auto;
}

.modal_pop .modal_pop_are .txt h3{font-size: 18px}
.modal_pop .modal_pop_are .txt .in_txt p{font-size: 14px}

.modal_pop .pop_btn a,
.all_guide .left p{font-size: 14px}

.play_btn{width: 50px; height: 50px}
.play_btn img{max-width: 14px}

.travel_info .center h3{font-size: 24px}
.travel_info .center p,
.sub_04_partner .box .txt p,
.total_board p,
#bo_cate a{font-size: 16px}

.company_flex .txt p br,
.company_flex2 .txt p br{display: none}

.company_flex2 .txt h3{font-size: 24px; margin-bottom: 40px}

.company_flex2 .txt p + p,
.company_flex .txt p + p{margin-top: 40px}

.gall_list_style li .board_list_txt h3,
.new_list_style li .news_list_txt h3{font-size: 18px}
.gall_list_style li{border-radius: 8px}

#bo_cate{width: 300px;}


#faq_wrap li h3{font-size: 18px}

#faq_con .con_inner, #faq_con .con_inner *,
.form_in ul li label,
.sub05_list .box .radio_are input + label{font-size: 16px}

.agree_pop_content .agree_title h2,
.sub05_list .box h3{font-size: 18px}

.agree_pop_info h3,
.agree_pop_info p{font-size: 14px}

}



@media (max-width: 1024px) { 
   

.sub_visual_are .sub_visual_title{
	padding: 200px 16px 100px
}

.inner, .sub04_slide .slick-list{padding: 0 16px}



.course {
    flex-wrap: wrap;
    gap:4px
}

.course .box{border-radius: 3px}

.course .arrow i{width: auto; height: auto; background: transparent; border-radius: 0}

.guide_flex{gap:10px}

.sub_map iframe{height: 30vh}
.travel_info .center img{display: none}

.travel_info .center p{margin-top: 30px}

.travel_info{flex-wrap: wrap; gap:80px}



.travel_info .center {
    text-align: center;
    width: 100%;
    padding-top: 0px;
    position: relative;
    top: 0;
}

.travel_info .box{width: 100%; flex:none; display: flex; gap:10px; justify-content: center; padding: 0}

.travel_info .box:first-child{padding: 0}


.travel_info .box:first-child img + img,
.travel_info .box:last-child img + img{margin: 0}

.travel_info .box:last-child img{margin: 0}



.flower_list,
.sub03_flex2,
.sub_04_partner,
.flex_hover,
.card_news,
.flex_sub04_box{gap:10px}

.flower_list li,
.sub03_flex2 .box,
.sub_04_partner .box,
.card_news li,
.flex_sub04_box .box {width: calc(50% - 5px)}


.sub03_img{padding: 0 17px}


.sub_company .sub_company_icon{max-width: 30%}

.company_flex,
.company_flex2{gap:60px}


.sub04_slide_are{overflow: hidden}

.company_flex2 .thum img{max-width: 100%}

.company_flex2 .thum img:last-child{margin: 150px 0 0 0}


.flex_sub04_box {
    flex-wrap: wrap;
}


.flex_sub04_box .box{width: calc(50% - 5px); flex:none}
.flex_sub04_box .box:nth-child(2n){margin: 0}



.gall_custom_flex {
    gap: 80px;
    flex-direction: column;
}

#bo_cate ul {
    display: flex;
    flex-wrap: wrap;
}


#bo_cate ul li{flex:1; text-align: center}
#bo_cate{width: 100%}

#bo_cate a:after{display: none}


.form_in ul{gap:50px 10px}
.form_in ul li{width: calc(50% - 5px);}



}


@media (max-width: 960px) { 
	
	
.sub_map_info .map_btn {
    gap: 10px;
    position: relative;
    right: 0;
    top: 0;
    transform: translateY(-0%);
    margin-top: 30px;
}
	
	
.course{gap:10px}	
.course .box{flex:none; width: calc(50% - 5px)}	
.course .arrow{display: none}
	
.course.course02{display: none}	
	
.course + .course {
    margin-top: 10px;
}	


.course.course03{
	flex-direction: row-reverse;
}



.guide_flex {
    flex-wrap: wrap;
}

.guide_flex .box{flex:none; width: calc(50% - 5px)}


.flex_note_text {
    flex-direction: column;
    gap:50px
}

.flex_note_text .box:first-child{padding: 0}
.flex_note_text .box + .box{padding: 0; border: 0}
	
	
.travel_info .box img {
        max-width: 100%;
        aspect-ratio: 1;
        object-fit: cover;
        flex:none;
        width: calc(50% - 5px)
    }	
	
.travel_info .box{overflow: hidden}	
	
	

.flex_hover .box:hover {
    flex: 5 1 100%;
}
	
.sub03_flex3{gap:10px}
	
.sub_section{overflow: hidden}
	
.sub_visual_are .sub_visual_img.cover{height: 50vh}	
	
p.option_p br{display: none}	



.card_news li .txt h3{font-size: 16px}
.card_news li .txt p{font-size: 14px}
.card_news li .txt .in_txt{overflow-y: auto}

.card_news li i{width: 50px; height: 50px}
.card_news li i img{max-width: 14px}

p.option_p_last{font-size: 18px}	
	
.gall_list_style li,
.gall_custom_flex .gall_custom_flex_list .gall_list_style li{width: calc(50% - 5px)}	
	
.gall_list_style{gap:50px 10px}	

.gall_custom_flex .gall_custom_flex_list .gall_list_style{gap:10px}
	
.agree_pop_content{max-width: 96%}	
	
}


@media (max-width: 768px) {
  
}



@media (max-width: 640px) {
  
  
.sub05_list .box{padding: 25px} 
.agree_pop_content .agree_title h2, .sub05_list .box h3{font-size: 16px;}
.sub05_list .box .radio_are {
    gap: 10px;
    margin-top: 30px;
    flex-wrap: wrap;
} 
  
  
.sub_visual_are .sub_visual_title h2, .sub_title h2, .board_title h2{font-size: 24px} 
  
  
 .sub_section{padding: 100px 0} 

.sub_visual_are .sub_visual_title{background: #fff}

.sub_visual_are .sub_visual_img{height: 40vh}
.sub_visual_are .sub_visual_img img{width: 100%; height: 100%; object-fit: cover;}
.form_in ul li{width: 100%}

.ck_agree p{font-size: 14px}
.ck_agree input{height: auto; margin-top: 5px}

.ck_agree {
    align-items: flex-start;
}

.agree_pop_content{padding: 25px; border-radius: 5px}

#faq_wrap li h3{font-size: 16px; padding-left: 50px}

#faq_con .con_inner,
.sub05_list .box h3{padding-left: 50px}

#faq_wrap li{padding: 25px}

#faq_wrap li h3 .tit_bg,
#faq_con .con_inner .tit_bg,
.sub05_list .box h3:after{width: 30px; height: 30px; font-size: 14px}

#faq_con .con_inner, #faq_con .con_inner *, .form_in ul li label, .sub05_list .box .radio_are input + label{font-size: 14px}

.tab__item a, .sub_btn{padding: 10px 15px; border-radius: 5px; font-size: 14px}

.tab {
    flex-wrap: wrap;
}

#bo_cate a{padding: 10px 15px; font-size: 14px}

.gall_list_style li, .gall_custom_flex .gall_custom_flex_list .gall_list_style li{width: 100%}


.sub_title h3, .sub_visual_are .sub_visual_img.cover .txt h3{font-size: 24px}



    .company_flex, .company_flex2 {
        gap: 60px;
        flex-direction: column;
    }


.company_flex .txt p,
.company_flex2 .txt p{font-size: 16px}

.flower_list li, .sub03_flex2 .box, .sub_04_partner .box, .card_news li, .flex_sub04_box .box{width: 100%}

.company_flex2 .txt h3{font-size: 18px}

.sub_04_partner .box .txt i img{max-width: 18px}
.sub_04_partner .box .txt p{font-size: 14px}


.sub_company2 .inner{padding: 0 17px}



.flex_sub04_box .box img {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}

.card_news li img.thum {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1;
}


.board_title{padding: 150px 17px 80px}
.bo_v_nb li .nb_date{display: none}

.new_list_style li .news_list_txt{padding: 25px}
.gall_list_style li .board_list_txt h3, .new_list_style li .news_list_txt h3{font-size: 16px}

.new_list_style li .news_list_txt i{display: none}


.sub_search_are input {
        min-width: auto;
        flex: 1;
        padding: 0 25px;
        height: 50px;
        border-radius: 5px;
        padding: 0 20px;
        font-size: 14px;
    }
    
 .sub_search_are .sub_search_btn{width: 50px; height: 50px;}
 .sub_search_are .sub_search_btn img{max-width: 14px}   
  
 .flex_hover {
    gap: 10px;
    flex-wrap: wrap;
} 
   
.flex_hover .box,
.flex_hover .box:hover{flex:none; width: 100%}   
    
    .sub03_slide_are .slide_btn {
        padding: 0 17px;
        position: relative;
        justify-content: center;
        gap: 10px;
    }   
    
.sub03_slide_are .slide_btn span{width: 50px; height: 50px; box-shadow: none}
.sub03_slide_are .slide_btn span img{max-width: 10px}      
 
.sub03_slide .slick-list{padding: 0 17px} 
 
.sub03_slide .slick-slide{padding: 0 5px} 
    
.sub01_flex_title h4, .sub01_flex_title .go_link, .course_top p, .note_center p, .flex_note_text .box p, p.option_p,
.sub_tlb table th, .sub_tlb table td, .sub01_in .ck_list li, ul.dot li, .sub_map_info p, .sub_map_info .map_btn a, .note_box.red h4{font-size: 14px}    
    
    
    .sub03_flex3 {
        flex-direction: column;
    }
    
.sub_map_info .map_btn {
    flex-direction: column;
}    
  
 .travel_info .center h3{font-size: 18px}
 .travel_info .center p{font-size: 14px} 
.sub01_in .ck_list.green li{width: 100%}   
   
.modal_pop .modal_pop_are{width: 100%; max-width: 96%}   
  
.modal_pop .pop_btn {

    flex-direction: column;
}

.guide_flex .box .thum .txt{padding: 17px}

.flower_list li .txt h3, .sub03_flex2 .box .txt h3, .guide_flex .box .thum .txt h4{font-size: 18px}
.flex_hover .box .txt p, .guide_flex .box .thum .txt p{font-size: 14px}
.guide_flex .box .thum .txt p br{display: none}


.all_guide {
    padding:25px 15px;
    background: #3c8790;
    border-radius: 10px;
    align-items: center;
    gap: 30px;
    flex-direction: column;
}
.all_guide .guide_line{flex:none}








}


@media (max-width: 480px) {
  
}


@media (max-width: 375px) {
   

}


