@charset "utf-8";
/* CSS Document */


/* common setting */
main {	
	margin-top: 60px !important;
	position: relative;
}
main > section {
	padding: 20px 0; 
}
main > section:last-child {
	padding-bottom: 0;
}
article {
	border: none;
	position: relative;
}
article h4 {
	padding: 20px 20px 40px 20px;
}
article h4 > img {
	vertical-align: bottom;
	height: 30px;
}
article a.contact {
	position: absolute;
	top: 12px;
	right: 25px;
	z-index: 9;
	display: inline-block;
	width: 160px;
	height: 40px;
	line-height: 40px;
	border-radius: 20px;
	background: rgb(234,234,234);
	font-size: 16px;
	color: rgb(89,89,89);
	white-space: nowrap;
	text-align: center;
	transition: all .4s;
}
article a.contact:after {
	content: '';
	display: inline-block;
	width: 30px;
	height: 23px;
	background: url(../img/contact-icon.png) no-repeat;
	background-size: 30px 23px;
	vertical-align: middle;
	margin-left: 10px;
}
article a.contact:hover {
	opacity: .7;
}

article .offical {
	position: relative;
	display: block;
	margin: 0 0 40px 0;
}
article .offical > .offical-link {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 30px;
	width: 50px;
	letter-spacing: -.4em;
	padding-top: 10px;
}
article .offical > .offical-link > a {
	letter-spacing: normal;
	display: inline-block;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	box-shadow: 0 0 8px rgba(0,0,0,.5);
	position: relative;
	margin-top: 10px;
	transition: all .4s;
	cursor: pointer;
}
article .offical > .offical-link > a:hover {
	opacity: .8;
}
article .offical > .offical-link > a:before {
	content: '';
	display: block;
	border-radius: 50%;
	width: 48px;
	height: 48px;
	background: #fff;
	margin: 1px;
}
article .offical > .offical-link > a > img {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
}
.wide {
	width: 100%;
}
.wide > div {
	width: 960px;
	margin: 0 auto;
}