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

@media (max-width: 1199px){
	.pc{
		display: none !important;
	}
	section.contents{
		padding: 70px 0;
	}
	.w1366{
		width: 100%;
		padding: 0 10px;
	}
	
	.bg_inner_w,.bg_img03{
		padding: 20px;
	}
	.button_01{
		width: 400px;
	}
	.bg_box{
		height: 500px;
	}
	.wrap80{
		width: 100%;
		max-width: 100%;
	}
	.services_wrap{
		margin: auto;
		width: calc(100% - 20px);
	}

}
@media (max-width: 959px){
	
	.bg_inner_w,.bg_img03{
		padding: 20px;
	}
     	
	/* 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 .img_flex{
		margin-bottom: 30px;
	}
	.reverse{
		flex-direction: column-reverse;
	}
	header h2{
		font-size: 2em;
		line-height: 100%;
		margin-top: auto;
		margin-bottom: auto;
		padding-right: 80px;
	}
	footer h2 img{
		width: 200px;
	}

	.flex_contact{
		flex-direction: column;
		justify-content: center;
		align-content: center;
	}

	
	.button_wrap_contact

	.btn_wrap{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.btn_wrap .btn02{
		max-width: 400px;
	}
	.button_wrap_contact{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	#mailform{
		padding: 0;
	}
	#mailform table th,#mailform table td{
		display: block;
		width: 100%;
		padding: 1em;
	}
	.services_wrap{
		position: static;
		height: auto;
		min-height:1px;
		width: calc(100% - 30px);
		margin: 0 auto;
	}
	.services_wrap .img,
	.services_wrap .img02{
		position: static;
		height: auto;
		width: 100%;
	}
	
	.services_wrap .img img,
	.services_wrap .img02 img{
		padding: 0;
		vertical-align: middle;
		width: 100%;
		height: inherit;
		aspect-ratio: 16 / 9;
		object-fit: cover;
		border-radius: 10px 10px 0 0;
	}
	
	.services_wrap .txt,
	.services_wrap .txt02{
		position: static;
		transform: none;
		width: 100%;
		border-radius: 0 0 10px 10px;
	}

.slider{
	position: absolute;
	top: 0;
	left: 0;
	width: '100%';
	max-width:959px;
	height:'auto';
	min-height: 400px;
	z-index: 9;
	overflow: hidden;
}

}

@media (max-width: 750px){

	.pctb{
		display: none !important;
	}
	

	.flex_contact{
		flex-direction: column;
	}
	.site-header h1 img{
		height: 50px;
	}
	.card001{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.card001 div {
		text-align: center;
	}
	.card001 div img{
		max-width: 270px;
	}
	.txt_lv02{
		font-size: 2rem;
	}
	.txt_catch01{
		font-size: 1.5em;
	}
	.btn_wrap{
		flex-direction: column;
		justify-content:center;
		align-items: center;
	}
	.subtitle{
		height: 250px;
	}
	
	.subtitle h2 span.ja{
		font-size: 2.2rem;
	}
	.subtitle h2 span.en{
		font-size: 1.2rem;
	}
	.triangle table tr{
		 border-bottom: none;
	}
	.triangle table th{
		border:none;
	}
	.triangle table th,.triangle table td{
		display: block;
		width: 100%;
		padding: 1rem;
	}
	.triangle table td{
		padding-top: 1.5rem;
	}
	.triangle table th:after{
		content:'';
		position:absolute;
		width: 0px;
		height: 0px;
		border-top: 10px solid #0E8F13;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		top:calc(100% - 1px);
		left:50%;
		right: auto;
		transform: translateX(-50%);
	}
.slider{
	position: absolute;
	top: 0;
	left: 0;
	width: '100%';
	max-width:750px;
	height:'auto';
	min-height: 400px;
	z-index: 9;
	overflow: hidden;
}

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

	.bg_box{
		height: 450px;
	}
	.button_01{
		width: 300px;
	}
	.site-header h1{
		margin-left: 15px;
	}
	.site-header h1 img{
		height: auto;
		width: 76%;
	}
	#mailform table th{
		padding: 1em 0 0.5em;
	}
	#mailform table td{
		padding: 0.5em 0 1em;;
	}

	.slider{
	position: absolute;
	top: 0;
	left: 0;
	width: '100%';
	max-width:450px;
	height:'auto';
	min-height: 300px;
	z-index: 9;
	overflow: hidden;
}
}

@media (max-width: 390px){
	.slider{
	position: absolute;
	top: 0;
	left: 0;
	width: '100%';
	max-width:390px;
	height:'auto';
	min-height: 300px;
	z-index: 9;
	overflow: hidden;
}
}
