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

@media screen and (max-width: 640px){
	
	
	/* -------------------- main_visual -------------------- */
	
	.main_visual{
		width:80%;
		margin-left:-40%;
	}
	
	
	
	
	
	/* -------------------- home -------------------- */
	
	.main_contents{
		width:92%;
		justify-content:flex-start;
	}
	
	.archive{
		width:100%;
		height:auto;
		order:3;
	}
	
	.archive span,
	.result_txt{
		max-width:100%;
	}
	
	.result{
		width:100%;
		margin-bottom:20px;
		background-size:cover;
		order:1;
	}
	
	.result_score{
		width:96%;
	}
	
	.result_btn{
		width:70%;
	}
	
	.main_contents iframe{
		width:100%;
		margin-bottom:20px;
		order:2;
	}
	
	#column{
		min-width:100%;
		padding:30px 0;
	}
	
	.column_box{
		width:90%;
		justify-content:flex-start;
	}
	
	.column_detail{
		width:100%;
		height:auto;
		margin-bottom:20px;
	}
	
	.column_box div.column_detail:last-child{
		margin-bottom:0;
	}
	
	.column_img_pc{
		display:none;
	}
	
	.column_img_sp{
		margin-bottom:5px;
		display:block;
	}
	
	.column_img_sp img{
		height:auto;
	}
	
	.column_txt{
		max-width:100%;
		padding:0;
		background-color:#0c0c0c;
		position:static;
	}
	
	.column_txt a{
		display:inline;
	}
	
	.contents_box{
		width:92%;
	}
	
	.contents_ttl{
		width:50%;
		margin:0 auto 40px;
	}
	
	.member_detail{
		width:30%;
		margin-top:30px;
	}
	
	.member_box div.member_detail:nth-child(4){
		margin-top:30px;
	}
	
	.member_detail.empty{
		display:none;
	}
	
	#concept{
		min-width:100%;
		padding:30px 0;
	}
	
	#concept:before{
		min-width:100%;
	}
	
	.concept_inner{
		width:90%;
		justify-content:flex-start;
	}
	
	#concept h1{
		width:100%;
		height:auto;
		margin-bottom:20px;
		padding-bottom:10px;
	}
	
	#concept h1 img{
		width:50%;
	}
	
	.concept_txt{
		width:100%;
		line-height:1.7em;
	}
	
	.concept_txt span{
		display:inline-block;
	}
	
	#contact table tr{
		width:100%;
		display:block;
		list-style:none;
	}
	
	#contact table th{
		width:auto;
		padding:20px 0 0;
		font-size:115%;
		border-bottom:none;
		display:list-item;
	}
	
	#contact table td{
		width:auto;
		padding:5px 0 20px;
		display:list-item;
	}
	
	#contact table td input[type="text"],
	#contact table td input[type="tel"],
	#contact table td input[type="email"]{
		width:100%;
	}
	
	#contact table td textarea{
		width:100%;
		height:150px;
	}
	
	.twitter_box{
		width:75%;
	}
	
	
	
	
	
	/* -------------------- archive -------------------- */
	
	.archive_list_ttl{
		font-size:143%;
	}
	
	.archive_detail{
		justify-content:flex-start;
		align-items:flex-start;
	}
	
	.archive_img_pc{
		display:none;
	}
	
	.archive_img_sp{
		width:100%;
		margin-bottom:10px;
		display:block;
	}
	
	.archive_img_sp img{
		width:100%;
		height:auto;
	}
	
	.archive_txt_box{
		width:100%;
	}
	
	
	
	
	
	/* -------------------- single -------------------- */
	
	.single_ttl{
		font-size:143%;
	}
	
	.wp_social_bookmarking_light img {
		width:88px;
	}
	
	.single_post h2{
		font-size:113%;
	}
	
	.single_post h3{
		font-size:100%;
	}
	
}