@charset "UTF-8";
/* CSS Document */
@media (max-width: 959px){
	.pc{
		display: none !important;
	}
	header{
		height: inherit;
	}
	header h1{
		margin-left: 0;
	}
	header h1 img{
		max-width: 220px;
		padding: 9px;
	}
	.contents_in{
		padding: 20px 10px;
	}
	.link_button{
		width: 200px;
		height: 200px;
	}
	.link_button a{
		width: 200px;
		height: 200px;
	}
	.top_copy h2{
		font-size:1.5em;
	}
	.link_g p{
		font-size:0.9em;
		padding: 10px 30px;
	}
	footer h3{
		font-size: 1.2em;
	}
	.footer_in{
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding-left: 10px;
		padding-right: 10px;
	}
	.footer_in img{
		width: 80%;
		max-width: 300px;
		display: inline-block;
		text-align: center;
	}
	
	.subtitle{
		height: 250px;
	}
	.subtitle h2{
		font-size: 40px;
	}
	input[type='text'] ,input[type='date'] , textarea{
		width: 100% !important;
	}
	.gaiyou th,.gaiyou td{
		display: block;
		width: 100%;
	}
	.contents_works{
		display: flex;
		justify-content:flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.works_in{
		width: 50%;
		padding: 10px;
	}
}

@media (max-width: 749px){
	.flexbox{
		display: block;
	}
	.sp-slide img{
		width: 300px;
	}
	.sp-slide h2.sp-layer{
		font-size: 22px;
	}
	.bg-d::after{
		content: "";
		position: absolute;
		top:0;
		right: -100px;
		border-style: solid;
		border-color: transparent transparent rgba(23,97,44,0.70) transparent;
		border-width: 0 100px 400px 0;
		z-index: 10;
	}
	.contents_in h2{
		font-size: 1.8em;
		padding-top: 1em;
		padding-bottom: 1em;
	}
	.button_01{
		width: 90%;
	}

	.link_button{
		margin: 20px auto;
	}
	.contents_map .map p{
		font-size: 1.1em;
	}
	.footer_in{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 100%;
		margin: auto;
	}
	.contact_icon{
		display: block;
		margin: auto;
	}
	.icon_child{
		margin:10px;
	}
	.footer_in img{
		width: 90%;
		padding: 10px;
	}
	.footer_address{
		display: block;
		max-width: 550px;
		margin: 0 auto 20px;
	}
	.flex_company{
		width: 100%;
	}
	.flow_wrap02,.flow_wrap03{
		width: 95%;
		padding: 0.5em;
	}
	.flow_wrap02 dl,.flow_wrap03 dl{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.flow_wrap02 dt,.flow_wrap03 dt{
		width: 100%;
	}
	.flow_wrap02 dd,.flow_wrap03 dd{
		padding: 0.5em;
	}
	.contents_works{
		display: flex;
		justify-content:center;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.works_in{
		width: 100%;
		padding: 10px;
	}
	.midashi{
		font-size: 1.2em
	}
	.flex_project div{
	width: calc( 100% / 3 - 5px);
	}
	.mailform{
		padding: 10px;
	}
	.tel_button a{
		width: 100%;
	}

}