@charset "utf-8";

#visual .text_area {display:none !important;}
#visual .section {left:0% !important;right:auto !important; width:100% !important; margin:0px !important; height:100%; background-size:cover !important; background-position:center center !important;}
#visual .slick-prev,
#visual .slick-next { margin:0px !important;transform:translateY(-50%) !important;}
#visual .slick-prev {left:20px !important;}
#visual .slick-next {right:20px !important;}

.main_banner {width:100%; display:flex; flex-wrap:wrap; gap:30px; margin:10px 0px;}
.main_banner dl {display:flex; flex-wrap:wrap; gap:0px;width:calc((100% - 90px) / 4); border:1px #ddd solid; border-radius:20px; overflow:hidden; box-sizing:border-box; }
.main_banner dl a {display:flex; flex-wrap:wrap; gap:10px;}
.main_banner dt {width:100%; box-sizing:border-box; transition: all .4s linear;}
.main_banner dt img {width:100%; background-size:cover !important	;}
.main_banner dd {width:100%;font-size:20px;line-height:1;font-weight:500; color:#000; padding:0px 10px 30px 10px !important; text-align:center; letter-spacing:-0.05em; box-sizing:border-box;}
.main_banner dl:hover {border-color:#666;box-shadow:0px 0px 12px rgba(0,0,0,0.1);}
.main_banner dl:hover dt {transform:translateY(-5px);}


@media all and (max-width:980px) {
	.main_banner {gap:15px;}
	.main_banner dl {width:calc((100% - 45px) / 4); }
	.main_banner dd {font-size:17px;}

}

@media all and (max-width:680px) {
	#visual .sub_imgbox .slick-dots {bottom:20px !important;}
	#visual .slick-prev,
	#visual .slick-next {display:none !important;}

	.main_banner {gap:10px;}
	.main_banner dl {border-radius:15px;}
	.main_banner dl {width:calc((100% - 10px) / 2); }
	.main_banner dd {font-size:15px;padding-bottom:20px !important;}

}