@charset "utf-8";
/*
	Last Update:2021/05/10
	Auther: okada
*/
/*===================================================================
	top #main_image
===================================================================*/
#main_image_wrap { position:relative; }
#main_image {position: relative;}
#main_image .slick-prev:before, #main_image .slick-next:before{opacity: 1;}
#main_image ,#main_image .img_back { position: relative; }
#main_image .unit:not(.slick-active) .img_back:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.4);
}
	@media (max-width: 575px){
		#main_image_wrap { margin-bottom:20px; }
		#main_image .slick-prev,
		#main_image .slick-next { width:30px; height:30px; }
		#main_image .slick-prev:before,
		#main_image .slick-next:before { font-size:25px; }
		#main_image .slick-prev { left:-5px; }
		#main_image .slick-next { right:-5px; }
		#main_image, #main_image .unit, #main_image .img_back { height:60vw; min-height:180px; }
	}
	@media (min-width: 576px) and (max-width: 991px){
		#main_image_wrap { margin-bottom:20px; }
		#main_image .slick-prev { left:0; }
		#main_image .slick-next { right:0; }
		#main_image, #main_image .unit, #main_image .img_back { height:50vw; }
	}
	@media (min-width: 992px){
		#main_image, #main_image .unit, #main_image .img_back { height:36vw; max-height:750px; min-height:450px; }
	}

#main_text { position:absolute; top:0; left:0; width:100%; }
	@media (max-width: 575px){
		#main_text { padding:10vw 15px 0; }
		#main_text img { width:350px; }
	}
	@media (min-width: 576px) and (max-width: 991px){
		#main_text { padding:6vw 35px 0; }
		#main_text img { width:500px; }
	}
	@media (min-width: 992px) and (max-width:1399px){
		#main_text { padding:150px 120px 0; }
	}
	@media (min-width:1400px){
		#main_text { padding-top:150px; }
	}

#main_news dl { display:table; width:100%; }
#main_news dl > * { display:table-cell; vertical-align:middle; padding:8px 10px; }
#main_news dl dt { text-align:center; font-weight:bold; }
#main_news dl dd a { position:relative; display:block; }
#main_news dl dd a:after { content:"\f054"; position:absolute; top:calc(50% - 0.5em); right:0; color:#114FA2; }body.pc #main_news dl dd a:hover { color:#114fa2; }
	@media (max-width: 767px){
		#main_news { box-shadow:3px 3px 5px rgba(0,0,0,0.2); }
		#main_news .center { padding:0; }
		#main_news dl dt { width:100px; line-height:120%; }
		#main_news dl dd { line-height:140%; }
		#main_news dl dd .date { display:block; }
	}
	@media (min-width: 768px){
		#main_news dl dd .date { margin-right:10px; display:inline-block; }
	}
	@media (min-width: 768px) and (max-width: 991px){
		#main_news { box-shadow:3px 3px 5px rgba(0,0,0,0.2); }
		#main_news .center { padding:0; }
		#main_news dl dt { width:180px; }
	}
	@media (min-width: 992px){
		#main_news { position:absolute; top:0; left:0; width:100%; padding-top:50px; }
		#main_news dl { box-shadow:3px 3px 5px rgba(0,0,0,0.2); }
		#main_news dl dt { width:180px; border-radius:5px 0 0 5px; }
		#main_news dl dd { border-radius:0 5px 5px 0; }
	}


/*===================================================================
	top #d_type / #top_d_case
===================================================================*/
#top #d_type, 
#top_d_case { position:relative; padding-left:15px; padding-right:15px; }
#top #d_type:before,
#top #top_d_case:before {
    content: "";
    position: absolute;
    bottom:  0;
    left: 0;
    width: 45%;
    height:calc(100% - 160px - 1em);
    background: url(../image/contents/top/back1.jpg) no-repeat left bottom / auto;
}

#top_d_case .unit a{ position: relative; background: #fff; display: block; font-weight: bold; padding:25px 15px; box-shadow: 0 3px 20px rgb(0 0 0 / 20%);}
#top_d_case .unit a:after {
    content: "\f054";
    color: #114FA2;
	position: absolute; top: 50%; right: 5px;transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%);
}
body.pc #top_d_case .unit a:hover { color:#114FA2; }
	@media (max-width: 575px){
		#top_d_case .unit a { padding:20px 10px; font-size:0.9em; }
	}
	@media (min-width: 576px){
		#top_d_case .unit a { padding:25px 15px; }
	}

@media (min-width:1230px) and (max-width:1730px){
	.col-hl { width:300px; }
	.col-contents { width:calc(100vw - 330px); padding-right:calc((100vw - 1230px) / 2) !important; }
}
@media (min-width:1731px){
	.col-hl { width:calc((100vw - 1200px) / 2); }
	.col-contents { width:1200px; }
}
