.clearfix::after,
#section01 .company_wrapper::after,
#section01 .company_wrapper .holder_data dl::after,
#section02 .direction_detail::after {
  content: "";
  display: block;
  clear: both; }

.fnt_pd {
  font-family: 'Playfair Display', serif; }

/*--------------------------
common parts
---------------------------*/
h2 {
  text-align: center;
  margin-bottom: 60px;
}
h3{
  font-family: 'Playfair Display', serif;
	font-size: 24px;
	text-align: center;
	margin-bottom: 30px;
}

 @media screen and (max-width: 640px) {
	h2 {
		margin-bottom: 40px; }
}


/*--------------------------
header
---------------------------*/
.subpage_header {
  background-image: url(../images/common/header_mask.png), url(../images/contact/header_bg.jpg);
  background-position: 0 0, 50% 55%; }

/*--------------------------
section01
---------------------------*/
#section01 {
  padding: 80px 0;
  overflow: hidden;
}
#section01 .container {
    position: relative;
}
#section01 .bg_pic {
	position: absolute;
	top: -80px;
	right: -388px;
	z-index: -1;
}
#section01 .tx01{
	line-height: 2;
	text-align: center;
	margin-bottom: 100px;
}
#section01 .policy{
	width:600px;
	margin: 0 auto 200px;
}
#section01 .policy ul li{
	list-style-type: disc;
	margin: 0 0 0 15px;
	padding: 0 0 10px;
	line-height: 1.5;
}

@media screen and (max-width: 640px) {
	#section01 {
		padding: 40px 0;
	}
	#section01 .bg_pic {
		top: -50px;
		right: -10%;
	}
	#section01 .tx01{
		margin-bottom: 50px;
	}
	#section01 .policy{
		width:100%;
		margin-bottom: 50px;
	}
}
