* {
	margin: 0;
	padding: 0
}

img {
	border: 0;
	vertical-align: top
}

ul,
ol {
	list-style: none
}

a {
	color: #343F57;
	text-decoration: none
}

a:hover {
	color: #343F57;
	text-decoration: underline
}

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden
}

.clearfix {
	display: inline-block
}

* html .clearfix {
	height: 1px
}

.clearfix {
	display: block
}

iframe {
	vertical-align: bottom
}

img {
	max-width: 100%
}

html {
	height: 100%
}

body {
	color: #343F57;
	font-size: 15px;
	font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
	font-weight: bold;
	line-height: 1.6;
	width: 100%;
	height: 100%;
	background: url(../images/common/bg.gif) center center repeat;
	-webkit-text-size-adjust: 100%
}

body h1 {
	display: none
}

#wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden
}

body>#wrapper {
	height: auto;
	min-height: 100%
}

@media screen {
	* html #wrapper {
		min-height: 100%;
		height: auto !important;
		height: 100%
	}
}

#wrapper:before {
	position: absolute;
	left: 0;
	top: 0;
	content: " ";
	display: block;
	width: 56px;
	height: 100%;
	background: url(../images/common/scale_left.png) left top repeat-y;
	background-size: 28px 60px
}

#wrapper:after {
	position: absolute;
	right: 0;
	top: 0;
	content: " ";
	display: block;
	width: 56px;
	height: 100%;
	background: url(../images/common/scale_right.png) right top repeat-y;
	background-size: 28px 60px
}

#main {
	width: 100%;
	height: 100%;
	padding-bottom: 113px
}

#footer {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	color: #FFF;
	font-size: 11px;
	font-weight: normal;
	width: 100%;
	height: 113px;
	background: #343f57
}

.left {
	float: left
}

.right {
	float: right
}

.center {
	text-align: center
}

.none {
	display: none
}

.small {
	font-size: 11px
}

.mt0 {
	margin-top: 0 !important
}

.mt5 {
	margin-top: 5px !important
}

.mt10 {
	margin-top: 10px !important
}

.mt15 {
	margin-top: 15px !important
}

.mt20 {
	margin-top: 20px !important
}

.mt25 {
	margin-top: 25px !important
}

.mt30 {
	margin-top: 30px !important
}

.mt40 {
	margin-top: 40px !important
}

.mt50 {
	margin-top: 50px !important
}

.mt60 {
	margin-top: 60px !important
}

.mt70 {
	margin-top: 70px !important
}

.mt80 {
	margin-top: 80px !important
}

.mt90 {
	margin-top: 90px !important
}

.mt100 {
	margin-top: 100px !important
}

.mb0 {
	margin-bottom: 0 !important
}

.mb5 {
	margin-bottom: 5px !important
}

.mb10 {
	margin-bottom: 10px !important
}

.mb15 {
	margin-bottom: 15px !important
}

.mb20 {
	margin-bottom: 20px !important
}

.mb25 {
	margin-bottom: 25px !important
}

.mb30 {
	margin-bottom: 30px !important
}

.mb40 {
	margin-bottom: 40px !important
}

.mb50 {
	margin-bottom: 50px !important
}

.mb60 {
	margin-bottom: 60px !important
}

.mb70 {
	margin-bottom: 70px !important
}

.mb80 {
	margin-bottom: 80px !important
}

.mb90 {
	margin-bottom: 90px !important
}

.mb100 {
	margin-bottom: 100px !important
}

a img.hover {
	-webkit-transition: opacity 0.3s ease;
	-ms-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease
}

a:hover img.hover {
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6
}

.column {
	width: 1080px;
	margin: 0 auto;
	padding: 0 80px
}

.section {
	margin-bottom: 180px
}

table.list {
	border-collapse: collapse
}

table.list th {
	padding: 5px 20px 5px 0;
	text-align: left;
	vertical-align: top;
}

table.list td {
	padding: 5px
}

input.btn {
	-webkit-appearance: none;
	color: #FFF;
	font-size: 15px;
	background: #F19500;
	border: none;
	border-radius: 5px;
	padding: 18px 45px;
	cursor: pointer
}

input.btn:hover {
	background: #F9B24B;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-ms-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s
}

#top #main h2 {
	margin-bottom: 80px
}

#top #main .top_column .logo {
	position: relative;
	margin-bottom: 180px;
	padding-top: 80px
}

#top #main .top_column .logo:after {
	position: absolute;
	right: 0;
	content: url(../images/top/img_main.png)
}

#top #main .top_column ul.gNavi li {
	margin-bottom: 20px
}

#top #main .service dl {
	position: relative;
	width: 830px;
	height: 335px;
	margin-bottom: 80px
}

#top #main .service dl.even {
	margin-left: 260px
}

#top #main .service dl dt {
	position: absolute;
	left: 0
}

#top #main .service dl dd {
	padding: 90px 0 0 330px
}

#top #main .service dl dd h3 {
	font-size: 35px;
	border-bottom: 2px solid #343f57;
	margin-bottom: 12px;
	padding-left: 40px
}

#top #main .service dl dd p {
	font-size: 15px;
	padding-left: 40px
}

#top #main .corporate table th {
	width: 90px
}

#top #main .client table th {
	min-width: 200px
}

.contact p {
	margin-bottom: 10px
}

.contact span {
	color: #F19500;
	padding: 0 4px
}

.contact table {
	margin-bottom: 70px
}

.contact table th {
	vertical-align: top
}

.contact input[type="text"],
.contact textarea {
	font-size: 15px;
	width: 450px;
	background: #F4F5F6;
	border: none;
	padding: 10px
}

.contact textarea {
	height: 190px
}

#contact .contact {
	padding: 140px 0
}

#contact .contact table {
	width: 640px;
	margin: 0 auto 60px
}

#contact .contact .form_area {
	text-align: center
}

.contact.thanks {
	width: 760px;
	margin: 0 auto
}

#footer a {
	color: #FFF
}

#footer .column {
	position: relative;
	padding: 34px 0
}

#footer .ft_logo {
	float: left
}

#footer .address {
	float: left;
	margin-left: 30px;
	padding-top: 3px
}

#footer .copyright {
	float: right;
	padding-top: 10px
}

#footer .pagetop {
	position: absolute;
	right: 0;
	top: -35px
}