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

@media (max-width: 1200px){
	.site-header{
		height: 80px;
	}
	.site-header h1{
		font-size: 2.5rem;
	}
	.site-header h1 img{
	}
	.top_nav{
		display: none;
	}
	.card001{
		max-width: 960px;
		margin: auto;
	}
	.card001 figure{
		width: calc(100% / 3 - 20px);
	}
	.card002_link{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.card002_link .txt{
		width: 100%;
		max-width: 960px;
	}
	.contents_link{
		padding: 50px 15px;
	}
	.wrap80{
		padding: 10px 5%;
	}
	.services_wrap{
		margin: auto;
		width: calc(100% - 20px);
	}
	.footer_contact{
		flex-wrap: wrap;
	}
	.footer_contact .phone{
		width: calc(100% / 2 - 30px);
	}
	
	.footer_in{
		justify-content: space-between;
	}
	.link_area{
		width: 50%;
	}
	.link_area ul.footer_nav{
		height: 200px;
	}
	.link_area ul.footer_nav li ul {
		display: none;
	}
	.link_area ul.footer_nav > li{
		min-width: 0;
	}
	.anchor_link{
		top: 80px;
	}
	.anchor_link ul li{
		font-size: 0.8rem;
	}
	
}

/* Tablet */
@media (max-width: 959px){
	.pc{
		display: none !important;
	}
	.site-header h1{
		margin-left: 10px;
	}

	.footer_wrap{
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.card002{
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin-bottom: 30px;
	}
	.card002 .img{
		text-align: center;
	}
	.card002 .img img{
		max-width: 600px;
	}
	.card002 .txt{
		padding: 15px;
	}
	.contents_half_r{
		width: 70%;
	}

	.greeting{
		flex-direction: column;
	}
	.f_revers{
		flex-direction: column-reverse;
	}
	.greeting_in{
		width: 100%;
		height: inherit;
	}
	.txt_wrap_left,.txt_wrap_right{
		width: 100%;
		margin:0 ;
	}
	.bg_greeting{
		width: calc(100% - 30px);
		margin-right: 30px;
		height: 400px;
	}
    .greeting_txt_wrap{
        background: rgba(0,0,0,0.3);
    }

	.breadcrumb-box{
		font-size: 80%;
		left: 70px;
		bottom: 10px
	}
	/* ビフォーアフター==================================================  */
	.before_after{
		flex-direction: column;
		justify-content: center;
	}
	.before_after .ba_img {
		max-width: 380px;
		width: 100%;
	}
	.ba_arrow{
		transform:rotate(90deg);
	}

	.reverse{
		flex-direction: column-reverse;
	}

	.contents_link{
		flex-direction: column;
		justify-content: center;
		align-items: center;
		max-width: none;
		margin: auto;
		padding: 30px 10px;
		background-position: right 10% bottom 0;
		background-size: 170px;
	}

	figure.effect-chico,
	figure.effect-chico img {
		width: 100%;
	}
	figure.effect-chico{
		margin-bottom: 30px;
	}

}

/* sp */
@media (max-width: 750px){
	.pctb{
		display: none !important;
	}
    .greeting_in{
        padding: 15px;
    }
    .greeting_txt_wrap{
        padding: 3rem 1rem;
    }
	.site-header h1 img{
		height: 50px;
	}
	.motto_flex li img{
		width: 100%;
		max-width: 200px;
		padding: 0;
	}
	
	.contents_half_r{
		width: 100%;
	}


	.line02 table th{
		display: block;
		width: 100%;
		border-bottom: none;
		color: #03996c;
		text-align: left;
	}
	.line02 table td{
		display: block;
		width: 100%;
		border-bottom: solid 3px #03996c;
	}
	
	.line02 dl{
		flex-direction: column;
		align-self: flex-start;
		justify-content: flex-start;
	}
	.button_wrap{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.button_wrap .gap{
		width: auto;
		height: 30px;
	}


	p.catch_footer{
		font-size: 1.2em;
		padding: 10px;
	}
	.flex_contents{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.subtitle h2{
		left: 1rem;
	}
	.card001 figure{
		width: calc(100% / 2 - 20px);
	}
	.wrap80{
		padding: 10px 0;
	}
	
	.number_list li{
		flex-direction: column;
		justify-content: flex-start;
	}
	.number_list li:nth-child(2){
		margin-left: 0;
	}
	.number_list li:nth-child(3){
		margin-left: 0;
	}
	.number_list li:nth-child(4){
		margin-left: 0;
	}
	.number_list li:nth-child(5){
		margin-left: 0;
	}
	.number_list li:nth-child(6){
		margin-left: 0;
	}
	.number_list li .li_numbar{
		align-self: flex-start;
	}
	
	.footer_contact{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.footer_contact .phone{
		width: calc(100% - 30px);
	}
	
	/* フローチャート ================================================== */
	.flow_wrap02,.flow_wrap03{
		width: calc(100% - 30px);
		margin: 0 auto 50px;
		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%;
		aspect-ratio: auto;
	}
	.flow_wrap02 dd,.flow_wrap03 dd{
		padding: 0.5em;
		min-height: 160px;
	}
	
	
	/* メールフォーム======================================== */
	#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%;
	}
	.flex_btn{
		display: block;
		width: 100%;
	}
	.img_center{
		margin-right: 15px;
	}
	.work_wrap p,.work_wrap ul,.work_wrap dl{
		padding-left: 0;
	}
	.footer_in{
		justify-content: center;
	}
	.link_area{
		display: none;
	}
	.address_arer{
		width: 100%;
		text-align: center;
	}
	.anchor_link ul{
		flex-wrap: wrap;
		justify-content: flex-start;
		padding: 0;
	}
	.anchor_link ul li{
		font-size: 0.8rem;
		padding-left: 0;
		padding-right: 0;
	}
	

}
@media (max-width: 450px){
	figure.effect-chico h4{
		bottom: 30px;
	}
	.simple01 table th,.simple01 table td{
		display: block;
		width: 100%;
	}
	.simple01 table th{
		padding: 1em 1em 0.5em;
	}
	.simple01 table td{
		padding:0.5em 1em 1em;
	}
	.dl_border01 dl{
		display: block;
		width: 100%;
	}
	.dl_border01 dl dt{
		width: 100%;
		padding: 1em 1em 0.5em;
	}
	.dl_border01 dl dd{
		width: 100%;
		padding:0.5em 1em 1em;
	}
	.card001 {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.card001 figure{
		width: calc(100% - 20px);
	}
	#mailform{
		padding: 10px 0;
	}
	#mailform table th,
	#mailform table td{
		padding: 1rem 0;
	}
	




}