@charset "utf-8";


/**************************************************50
 * footer
 **************************************************/
footer{
	background-color: #F2F2F2;
	color: #4D4D4D;
}
#footer_wrap{
}
#footer_wrap p{
	line-height: 1.5;
	margin: 0.5em 0;
}
footer nav{
}
footer nav a{
	color: #4D4D4D;
	display: inline-block;
	margin: 0.5em 0.5em 0;
	text-decoration: none;
}
footer nav a span{
	display: inline-block;
	position: relative;
	vertical-align: baseline;
}
footer nav a span:after{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background-color: #4D4D4D;
	content: "";
	display: block;
	height: 1px;
	position: absolute;
	bottom: 0.35em;
	left: 0;
	transition: width 0.2s ease-out 0s;
	width: 0;
}
footer nav a img{
	height: 2em;
	margin-right: 0.25em;
	vertical-align: middle;
}
footer nav > a:hover span:after{
	width: 100%;
}
#copyright{
	font-size: 75%;
	text-align: center;
}
#copyright a{
	color: #4D4D4D;
	text-decoration: none;
}
@media screen and (max-width:767px){
	footer{
	}
	#footer_wrap{
		padding-top: 6.25%;
	}
	#footer_wrap h2 img{
		width: 200px;
	}
	#footer_wrap p{
		padding: 0 3.125%;
	}
	#footer_wrap .sns_links{
		padding-bottom: 1.5625%;
	}
	#footer_wrap .sns_links a{
		margin: 0 1.5625% 1.5625%;
	}
	footer nav{
		display: none;
	}
	#copyright{
		line-height: 1.5;
		padding: 3.125% 3.125%;
	}
}
@media screen and (min-width:768px){
	footer{
	}
	#footer_wrap{
		padding-top: 50px;
	}
	#footer_wrap h2{
	}
	#footer_wrap h2 img{
		width: 320px;
	}
	#footer_wrap .sns_links a{
		font-size: 300%;
	}
	footer nav{
		font-size: 87.5%;
	}
	#copyright{
		height: 30px;
		line-height: 30px;
	}
}
@media screen and (min-width:768px) and (max-width:1279px){
	#footer_wrap > div{
		margin-bottom: 50px;
	}
	#footer_wrap .sns_links{
		margin-bottom: 40px;
	}
	#footer_wrap .sns_links a{
		margin: 0 5px 10px;
	}
}
@media screen and (max-width:1279px){
	#footer_wrap{
		text-align: center;
	}
}
@media screen and (min-width:1280px){
	#footer_wrap{
		padding-bottom: 50px;
	}
	#footer_wrap:after{
		clear: both;
		content: "";
		display: block;
	}
	#footer_wrap > div{
		float: left;
		text-align: left;
	}
	#footer_wrap > div:not(:last-child){
		margin-right: 20px;
	}
	#footer_wrap .sns_links{
		margin-top: 54px;
	}
	#footer_wrap .sns_links a{
		margin: 0 10px 10px 0;
	}
	footer nav{
		text-align: left;
	}
	footer nav:first-child{
		margin-top: 31px;
	}
}


