@charset "utf-8";


/* ---------------------------------------------------------
base.css
----------------------------------------------------------*/
body{
	font-size: 15px;
	background: ;
	overflow-y: scroll;
	min-width: 980px;
}
article {
	overflow: hidden;
}

a {
	position: relative;
	color: #000;
}
a:hover{
	color: #aaa;
}
a:after {
	display: block;
	content: ' ';
	text-align: center;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: transparent;
}
a:hover:after {
	background-color: #fff;
	opacity: .40;
	filter: alpha(opacity=40);
	-ms-filter: "alpha(opacity=40)";
	-khtml-opacity: .40;
	-moz-opacity: .40;
	-webkit-transition: background-color 0.15s linear;
	-o-transition: background-color 0.15s linear;
	transition: background-color 0.15s linear;
}
input[type="image"]:hover {
	opacity: .70;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-khtml-opacity: .70;
	-moz-opacity: .70;
	-webkit-transition: opacity 0.15s ease-out;
	-o-transition: opacity 0.15s ease-out;
	transition: opacity 0.15s ease-out;
}

.w980 {
	width: 980px;
	margin: auto;
	position: relative;
}

.shadow {
	box-shadow:rgba(0, 0, 0, 0.12) 0px 0px 5px 1px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.12) 0px 0px 5px 1px;
	-moz-box-shadow:rgba(0, 0, 0, 0.12) 0px 0px 5px 1px;
}
/*ここまで汎用*/

div.wrap {
	overflow: visible;
}

header {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100%;
	height: 104px;
}
/*head_seo*/
div.head_seo {
	z-index: 0;
	background: url(../img/common/head_seo_bg.jpg) 0 0 repeat;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	height: 24px;
	overflow: hidden;
}
.head_seo_inner {
	width: 980px;
	margin: auto;
}
.head_seo h1 {
	color: #FFF;
	font-size: 10px;
	letter-spacing: 1px;
	float: left;
	padding: 5px;
	white-space: nowrap;
}
.head_right_btn {
	float: right;
	padding: 2px 0 0 0;
	line-height: 100%;
}
.head_right_btn a {
	color: #FFF;
}
.head_right_btn li {
	display: inline-block;
	/display:inline;
	/zoom:1;
	margin: 0 0 0 10px;
	vertical-align: top;
}

/*header_bottom*/
div.header_bottom {
	z-index: 1;
	background-color: #fff;
	padding-bottom: 17px;
	box-shadow:rgba(0, 0, 0, 0.15) 0px 0px 10px 1px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.15) 0px 0px 10px 1px;
	-moz-box-shadow:rgba(0, 0, 0, 0.15) 0px 0px 10px 1px;
}
.header_bottom_inner {
	width: 980px;
	margin: auto;
	overflow: hidden;
}
a.header_logo {
	display: block;
	float: left;
	margin-top: 13px;
	width: 168px;
	margin-right: 6px;
}
header nav {
	float: left;
	margin-top: 30px;
	margin-right: 17px;
}
header nav ul {
}
header nav li {
	float: left;
	overflow: visible;
	height: 20px;
}
header nav li a {
	display: block;
	padding: 0 16px;
	height: 20px;
	border-left: 2px solid #eaeaea;
}
header nav li a img {
	margin-top: -19px;
}
header nav li:first-child a {
	border-left: 0;
}
header nav li:last-of-type a{
	padding-right: 0;
}
p.header_tel {
	float: right;
	width: 131px;
	margin-top: 23px;
	margin-right: 15px;
}
.header_btn_contact{
	float: right;
	display: block;
	width: 155px;
	margin-top: 21px;
}

/*subcontact*/
article.subcontact {
	background: url(../img/common/subcontact_bg.jpg) 0 0 no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	z-index: 1;
	position: relative;
}
.subcontact .anchor {
	position: absolute;
	top: -104px;
}
.subcontact .inner {
	z-index: 1;
	width: 980px;
	height: 508px;
	margin: auto;
	position: relative;
	padding-top: 104px;
}
.subcontact h2 {
	text-align: center;
	margin-bottom: 35px;
}
.subcontact_txt {
	text-align: center;
	letter-spacing: 0.08em;
	line-height: 2;
	margin-bottom: 30px;
}
.subcontact_tel {
	text-align: center;
	margin-bottom: 20px;
}
.subcontact .privacy {
	width: 664px;
	height: 4.5em;
	padding: 17px;
	margin: auto;
	border: 1px solid #ccc;
	background-color: #fff;
	overflow-y: scroll;
}
.subcontact .privacy > * {
	font-size: 12px;
	letter-spacing: 0.06em;
	line-height: 1.4;
}
.subcontact .privacy p {
	padding: 0 3px;
	margin-bottom: 3px;
}
.subcontact .privacy h3 {
	font-weight: bold;
	margin-bottom: 1px;
}
.subcontact_hito1 {
	position: absolute;
	bottom: 0;
	left: -190px;
}
.subcontact_hito2 {
	position: absolute;
	bottom: 0;
	right: -186px;
}
.subcontact .inner_hito {
	position: relative;
	z-index: 0;
	width: 980px;
	margin: auto;
}

/*contact*/
article.contact {
	position: relative;
	z-index: 1;
	margin-top: -74px;
}
.contact h2 {
	text-align: center;
}
.contact .inner {
	width: 980px;
	height: 508px;
	padding-top: 105px;
	margin: auto;
	position: relative;
}
.contact_box {
	width: 870px;
	margin: auto;
	margin-bottom: 60px;
	padding-bottom: 35px;
	background-color: #fff;
	box-shadow:rgba(0, 0, 0, 0.15) 0px 0px 5px 1px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.15) 0px 0px 5px 1px;
	-moz-box-shadow:rgba(0, 0, 0, 0.15) 0px 0px 5px 1px;
	-webkit-border-radius: 0px 0px 6px 6px;
	-moz-border-radius: 0px 0px 6px 6px;
	-ms-border-radius: 0px 0px 6px 6px;
	-o-border-radius: 0px 0px 6px 6px;
	border-radius: 0px 0px 6px 6px;
	padding-top: 40px;
}
.contact_globalsign {
	width: 740px;
	margin: auto;
	overflow: hidden;
	padding: 25px 0;
}
.contact_icon_globalsign {
	float: left;
	margin-right: 25px;
}
.contact_txt {
	float: left;
	width: 560px;
	letter-spacing: 0.07em;
	line-height: 1.5;
	margin-top: 46px;
}

/*===========================================*/
/*==FORM==*/
/*===========================================*/

#quote_flow {
	width: 773px;
	margin: 0 auto 15px auto;
}
#quote_flow ul li {
	float: left;
}
.contact form table {
	width: 780px;
	margin: 0 auto 30px auto;
	border-collapse: collapse;
}
.contact form table caption {
	text-align: left;
	color: #D81421;
	margin-bottom: 5px;
}
.contact form .hissu {
	background: #D81320;
	color: #FFF;
	padding: 1px 5px;
	-moz-border-radius: 3px;
	-o-border-radius: 3px;
}
.contact form table th, .contact form table td {
	padding: 15px;
	text-align: left;
	vertical-align: top;
	border: 1px solid #D6D6D6;
}
.contact form table th {
	background: #F3F3F3;
	border-right: none;
	font-size: 16px;
	font-weight: bold;
	width: 170px;
	padding-left: 25px;
	line-height: 1.5;
}
.contact form table th .hissu {
	display: block;
	float: right;
	margin-top: 2px;
	font-size: 10px;
	font-weight: normal;
}
.contact form table th .nini {
	display:block;
	float:right;
	margin-top:2px;
	font-size:10px;
	padding: 1px 5px;
	font-weight:normal;
	color:#777;
}
.contact form table td {
	border-left: none;
	font-size: 14px;
	vertical-align: middle;
	line-height: 1.5;
}
.contact form .input01 {
	width: 340px;
	border: 1px solid #CCCCCC;
	padding: 5px;
}
.contact form .exam {
	color: #999999;
	margin-left: 5px;
}
#Message, #Message2,.Message2 {
	height: 120px;
	padding: 10px;
	border: 1px solid #CCCCCC;
	width: 90%;
}
.input_error {
	color: #FF0000;
	font-weight: bold;
}

/*===========================================*/
/*==フッター==*/
/*===========================================*/

footer {
	background: #EEEEEE;
	border: 1px solid #CCCCCC;
	padding: 20px;
	margin: 0 auto 20px;
}
footer address {
	width: 980px;
	margin: auto;
	display: block;
	font-style: normal;
	font-size: 12px;
	line-height: 1.7;
}
footer a {
	color: #0066FF;
}
footer a:hover {
	color: #0066FF;
}
#address_top {
	/*background: url(../img/address_line.gif) left bottom repeat-x;*/
	padding-bottom: 30px;
}
footer .address_con {
	min-height: 60px;
	height: auto!important;
	height: 60px;
	float: left;
}
footer .address_con.line {
	background: url(../img/common/line.jpg) right top repeat-y;
	padding-right: 2px;
}
footer .address_con dt {
	/*background: url(../img/icon_address.gif) left center no-repeat;*/
	padding-left: 10px;
}
footer .address_con dd {
	margin-left: 10px;
}
#address_kanto02, #address_kanto, #address_kansai, #address_chiba , #address_kyushu, 
#address_kanagawa, #address_aichi, #address_saitama, #address_hyougo {
	width: 213px;
	margin-right: 12px;
}
#number {
	float: right;
	border: 1px solid #CCCCCC;
	padding: 7px;
	line-height: 1.3;
}
#address_bottom {
	float: left;
	background: url(../img/common/address_line.gif) left top repeat-x;
	padding-right: 30px;
}
#address_bottom dl {
	margin-top: 20px;
}
.footer_logo {
	display: block;
	background: #EEEEEE;
	position: relative;
	float: right;
	top: -1px;
	margin-right:30px;
}
#footer_bottom {
	padding-bottom: 50px;
}
#footer_bottom ul {
	width: 980px;
	margin: auto;
	overflow: hidden;
	text-align: center;
}
#footer_bottom li {
	display: inline-block;
	margin-right: 7px;
}
#footer_bottom li a {
	display: block;
}
#footer_bottom li.lastChild {margin-right: 0;}
.mar_l_-04 {margin-left: -4px;}





















