#key {
	background-image: url('../img/company/key.jpg');
}
#key .key-txt {
	position: absolute;
	bottom: 58px;
	left: 300px;
}
#massage {
	padding: 120px 0 200px;
	font-family: "Meiryo";
	position: relative;
}
#massage:before {
	content: "";
	position: absolute;
	top: 182px;
	left: 0;
	width: 100%;
	height: 591px;
	
}
#massage h2 {
	margin-bottom: 80px;
	text-align: center;
}
#massage .row1 {
	position: relative;
}
#massage .row1 .massage_img1 {
	position: absolute;
	top: 35px;
	left: -165px;
}
#massage .row1 .info {
	position: relative;
	background-color: #fff;
	padding: 30px 80px 0px 83px;
	margin-right: -80px;
	width: 420px;
	float: right;
}
#massage .row1 .info h3 {
	position: absolute;
	top: -70px;
	left: 150px;
}
#massage .row1 .info .txt {
	position: relative;
	letter-spacing: 0.2px;
	z-index: 1;
}
#massage .row1 .info p + p {
	margin-top: 20px;
}
#massage .row2 .info {
	letter-spacing: 0.8px;
	width: 368px;
	margin-left: 40px;
	padding-top: 5px;
}
#massage .row2 .info p + p {
	margin-top: 30px;
}
#massage .row2 .massage_img2 {
	margin-right: -28px;
	float: right;
}
#massage .sign-right {text-align: right;
}

#motto {
	background-color: #f3f3f3;
}
#motto h2 {
	position: absolute;
	top: -55px;
	left: 50%;
	margin-left: -58px;
}
#motto .wrap {
	padding: 102px 0 36px;
}
#motto .list ul {
	margin-right: 67px;
	letter-spacing: 1.2px;
}
#motto .list li {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 18px;
	line-height: 43px;
	float: right;
	width: 130px;
	height: 368px;
	margin: 0 24px;
	padding-top: 36px;
	position: relative;
}
#motto .list li span {
	position: absolute;
	top: 0;
	right: 0;
}
#profile {
	padding: 155px 0 267px;
}
#profile h2 {
	margin-bottom: 48px;
}
#profile .profile_img1 {
	position: absolute;
	top: -273px;
	left: -208px;
}
#profile .profile_img2 {
	position: absolute;
	bottom: -259px;
	right: -300px;
}
.info_col {
	background: rgba(255, 255, 255, 0.5);
	border: 1px solid #1f1b17;
	box-sizing: border-box;
	padding: 75px 0 59px;
	margin: auto;
	width: 900px;
	position: relative;
	z-index: 1;
}
.info_col table {
	width: 750px;
	margin: auto;
	font-size: 18px;
}
.info_col tr + tr {
	border-top: dotted 1px #A2A2A2;
}
.info_col tr th, 
.info_col tr td {
	font-weight: normal;
	padding: 21px 0;
	vertical-align: top;
	position: relative;
	line-height: 160%;
	font-weight: bold;
}
.info_col tr th {
	width: 278px;
	text-align: right;
}
.info_col tr td {
	padding-left: 54px;
}
.no_border {
	border: none !important;
}
