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

/* Tablet */
@media (max-width: 959px){
	.pc{
		display: none !important;}
	.pc_2{
		display: none !important;}

	.sp-slide img{
		padding-left: 0;
		width: 90%;
		height: auto;
	}
	.sp-slide h2{
		font-size: 2em !important;
		max-width: 700px!important;
		width: 90%;
		min-width: 340px;
	}
	.contents_news{
		padding: 30px 10px;
	}
	.bg_in_white{
		width: calc(100% - 20px);
		margin: auto;
	}
	.greeting{
		padding: 30px 10px;
	}
	.contents_txt{
		padding-left: 30px;
	}
	.contents h2{
		font-size: 1.5em;
	}
	.link_flex{
		flex-direction: column;
		background-position: top center;
		}
	.link_title {
		padding-top: 50px;
		margin-bottom: 100px;
	}

	.subtitle{
		height: 280px;
	}
	.subtitle h2{
		display: block;
		font-size: 2.5rem;
		bottom: 20px;
		white-space: nowrap;
		width: 100%;
		padding-right: 50px;
		background-size: 500px;
	}

	input[type='text'] ,input[type='date'] , textarea{
		width: 100% !important;
	}
	.photo_flex{
		justify-content: center;
	}
	.photo_flex div{
		width: calc(100% / 2 - 20px);
		max-width: 350px;
	}
	.company_table table{
		width: calc(100% - 20px);
	}

}


/* sp */
@media (max-width: 769px){
	.pctb{
		display: none !important;
	}
	.site-header{
		height: 100px;
	}
	.site-header.transform{
		height: 80px;
	}
	.site-header h1{
		line-height: 90px;
		padding-left: 0;
	}
	.site-header h1 img{
		height: 90px;
		
	}
	.site-header.transform h1{
	}
	.site-header.transform h1 img{
		height: 70px;
		transition: .5s;
	}
	.sp-slide img{
		width: 90%;
		height: auto;
		max-width: 700px;
	}
	.news{
		height:auto;
		margin: auto;
		flex-direction: column;
		justify-content: flex-start;
		padding: 15px;
	}
	.news h3{
		text-align: center;
		border-right: none;
		border-bottom:solid 1px #dc143c;
		padding: 0 0 10px;
		margin-bottom: 10px;
	}
	.news_in{
		width: 100%;
		padding: 10px;
	}
	.taisaku_flex{
		flex-wrap: wrap;
		align-items: center;
	}
	.taisaku_flex div{
		width: calc(100% / 2 - 20px);
		text-align: center;
		margin-bottom: 30px;
	}
	.greeting{
		padding: 30px 10px;
	}
	.contents_flex{
		flex-direction: column;
	}
	.contents_title{
		height: 120px;
		width: 100%;
		border-radius: 10px 10px 0 0;
	}
	.contents_title h2{
		top: 60%;
	}
	.contents_txt{
		width: 100%;
		padding:30px 10px;
	}

	.contents_link{
		width: 100%;
		margin: auto;
	}
	
	.event{
		padding: 30px 15px;
		background: url("../img/bg_img_gold01.jpg") no-repeat;
		background-size: cover;
		background-position: center;
	}
	.half{
		width: 100%;
		background:rgba(255,255,255,0.95);
		border-radius: 10px;
	}

	header h1,.header-change h1{
		padding-left: 20px;
	}
	header h1 img,.header-change h1 img{
		height: inherit;
		width: 80%;
		max-width: 300px;
		margin: auto;
	}

	/* footer ======================================== */
	.footer_in{
		display: block;
	}
	.footer_txt{
		height: inherit;
		width: 100%;
	}

	.footer_in img{
		display: block;
		width: 80%;
		max-width: 280px;
		margin: auto;
		padding-bottom: 15px;
	}
	.footer_in p{
		display: block;
		vertical-align:middle;
		width: 80%;
		max-width: 280px;
		margin: auto
	}
	.copy{
		width: 100%;
	}
	.subtitle{
		height: 250px;
	}
	.subtitle h2{
		background-size: 80%;
	}
	.top_contents h2{
		font-size: 1.5em;
	}
	.top_contents h2 span{
		font-size: 60%;
	}
	.photo_flex{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.photo_flex div{
		width: 100%;
		max-width: 350px;
	}
	.service ul{
		width: 90%;
		margin: auto;
	}
	.service .photo_flex{
		margin: 0;
	}
	.photo_flex figure{
		width: 90%;
		margin: auto;
	}
	.qa details summary{
		height: 60px;
	}
	.qa details summary h4{
		font-size: 1em;
		width: calc(100% - 60px);
		padding-right: 20px;
	}
	.voice_flex{
		display: block;
	}
	.voice_in{
		margin: auto;
	}
	.staff_wrap figure{
		width: calc(100% / 2 - 20px);
		margin: 10px;
	}
	.faq_l{
		margin-bottom: 20px;
		font-size: 1em;
		width: 100%;
		justify-content: space-between;
	}
	.chara{
		width: 80px;
		padding: 0;
	}
	.chara img{
		width: 100%;
	}
	.arrow_box_l{
		padding: 20px;
		width: calc(100% - 90px);
	}

}
@media (max-width: 450px){
	.staff_wrap figure{
		width: calc(100% - 20px);
		margin: 10px;
	}
}

