@charset "UTF-8";
/* CSS Document */

@media (max-width: 1199px){
	.pc{
		display: none !important;
	}
	section.contents{
		padding: 50px 10px;
	}
	.w1366{
		width: 100%;
		margin: auto;
	}
	.slide_catch{
		top:120px;
	}

}
@media (max-width: 959px){
	
	.w960{
		padding: 0 10px;
	}
	.bg_inner_w{
		padding: 50px 15px;
	}
	.slide_wrap::after{
		background-size: cover, 100%;
	}
	.top_slider .slider li.top01{
		background-position: top center;
	}
	
	/* flex-box==================== */
	.card001,
	.card002,
	.card003{
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin-bottom: 30px;
	}
	.card001 .type01{
		width: 100%;
		max-width: 350px;
	}
	.card001 .type02{
		width: 100%;
		max-width: 350px;
	}
	.card001 .type03{
		width: 100%;
		max-width: 350px;
	}

	.reverse{
		flex-direction: column-reverse;
	}
	.flex_footer{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.footer_in{
		max-width: 400px;
		margin-bottom: 30px;
	}


	.top_copy{
		top:50%;
	}
	.figure-slide-01{
		height: 500px;
		background-position: left center;
	}

	.contents_in{
		padding: 0 10px;
	}
	.flex_contact{
		flex-direction: column;
		justify-content: center;
		align-content: center;
	}

	.btn_wrap{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.btn_wrap .btn02{
		max-width: 400px;
	}

	input[type='text'] ,input[type='date'] , textarea{
		width: 100% !important;
	}
	#mailform table th,
	#mailform table td{
		display: block;
		width: 100%;
	}
	.rec_wrap table{
		width: 100%;
	}
	

}

@media (max-width: 750px){
	.pctb{
		display: none !important;
	}
	.slide_catch{
		left: 0;
	}
	.site-header h1 img.mark,
	.site-header h1 img.logo{
		height: 50px;
	}
	.top_slider .slider li.top03{
		background-position: right 10% center;
	}
	.sp_contact{
		display: block;
	}
	
	.txt_lv02 span{
		font-size: 200%;
	}
	.grid {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.effect-chico ,.effect-goliath{
		width: calc(100% - 20px);
		max-width: 400px;
	}

	.wrap80{
		padding: 0 1rem;
	}

	.flex_contact{
		flex-direction: column;
	}
	.button_wrap_contact{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	
	.subtitle h2{

	}

	.flex_contents{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.flex_services{
		flex-direction: column;
		align-items: center;
	}
	.services_txt{
		width: 100%;
		padding: 1em 0;
	}
	.services_img{
		min-width: 250px;
	}
	.services table{
		margin: 0 0 10px;
	}
	.timeline{
		width: calc(100% - 10px);
		margin: 0 auto 0 0;
	}
	.rinen_flex{
		flex-wrap: wrap;
	}
	.rinen_wrap .rinen01{
		margin-bottom: 30px;
	}
	.rinen_wrap .rinen02{
		margin-bottom: 30px;
	}
	.rinen_wrap .rinen02{
		width: 60%;
	}
	.rinen_flex div{
		width: 50%;
		padding: 15px;
	}
	
	/* メールフォーム======================================== */
	.mailform{
		padding: 10px;
	}
	
	input[type='text'] ,input[type='date'] , textarea{
		width: 100% !important;
	}
	.tel_button{
		width: 100%;
		max-width: 600px;
	}
	.tel_button a{
		width: 100%;
	}

}
@media (max-width: 450px){
	.slide_catch{
		left: 5%;
	}

	.grid {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.grid figure.linkeffect{
		width: calc(100% - 20px);
	}
	
	.footer_in h2 img{
		width: 300px;
	}
	
	#mailform{
		padding: 10px 0;
	}
	ul.border01{
		padding: 1rem 0;
	}
	.dl_border01 dl{
		padding: 1rem 0;
		flex-direction: column;
		text-align: left;
	}
	.dl_border01 dl dt,.dl_border01 dl dd{
		width: 100%;
	}
	.txt_lv03{
		font-size: 1.3em;
	}

}