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

@media (max-width: 1200px){
	.pc{
		display: none !important;
	}
	.top_slider::before{
		width: 30%;
	}
	.top_slider::after{
		width: calc(30% + 15px);
	}
	section.contents{
		padding: 50px 10px;
	}
	.w1366,.w1600{
		width: 100%;
		margin: auto;
	}
	.top_slider .slider li .catch{
		right: 5%;
		width: 90%;
	}
	.anchor_link{
		top: 100px;
	}
}
@media (max-width: 960px){
	.top_slider{
		max-height: 700px;
	}
	.top_slider .slider li{
		max-height: 700px;
	}
	.slide_wrap .rec{
		transform: scale(0.7);
		transform-origin: right bottom;
		right: 15px;
		bottom: 15px;
	}
	
	.w960{
		padding: 0 10px;
	}
	.top_slider::before{
		width: 20%;
	}
	.top_slider::after{
		width: calc(20% + 15px);
	}
	
	.txt_c.mb_l{
		text-align: left;
	}
	/* flex-box==================== */
	.card002{
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin-bottom: 30px;
	}
	.card003{
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin-bottom: 30px;
	}
	
	.card002 .img2{
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
		margin-bottom: 30px;
	}
	.card002 .txt2{
		width: 100%;
		padding: 10px;
		height: auto;
	}
	.flow .card003{
		flex-direction: row;
	}
	.flow .card003 .txt{
		padding: 10px 15px;
	}
	.reverse{
		flex-direction: column-reverse;
	}

	.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;
	}
	.footer_contact{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.btn_wrap_r{
		margin: auto;
	}

}

@media (max-width: 768px){
	.pctb{
		display: none !important;
	}
	.header h1 img{
		height: 70px;
	}
	.top_slider{
		max-height: 600px;
	}
	.top_slider .slider li{
		max-height: 600px;
	}

	.flex_contact{
		flex-direction: column;
	}
	.footer_in{
		display: block;
		width: 100%;
		margin: auto;
	}
	.wrap80{
		padding: 0 5%;
	}
	.subtitle{
		height: 400px;
	}
	.mailform{
		padding: 10px;
	}
	#mailform table th,
	#mailform table td{
		display: block;
		width: 100%;
	}
	
	input[type='text'] ,input[type='date'] , textarea{
		width: 100% ;
	}
	.tel_button{
		width: 100%;
		max-width: 600px;
	}
	.tel_button a{
		width: 100%;
	}
	#mailform td.flex_btn{
		display: block;
		width: 100%;
	}
	.tel_button .phone .nb{
		font-size: 1.2rem;
	}
	.flow .card003{
		flex-direction:column;
	}
	.f_revers{
		flex-direction: column-reverse;
	}
}
@media (max-width: 450px){
	.slide_wrap .rec{
		transform: scale(0.5);
		transform-origin: right bottom;
		right: 15px;
		bottom: 15px;
	}
	.slide_wrap .rec h3{
		font-size: 1.5em;
	}
	.slide_wrap .rec p{
		font-size: 1.1em;
	}
	.wrap80{
		padding: 0;
	}
	.footer_in h2 img{
		height: 80px;
	}
	.sp_small{
		font-size: 90%;
	}
	


}