/* FloatClear
-----------------*/

div.reason_box,
div.flow_box,
div.flow_box_item,
div.flow_box_item h3,
div.place,
div.document_box,
div.example_box,
p.faq_question,
p.faq_answer{
	min-height: 1px;
}

div.reason_box:after,
div.flow_box:after,
div.flow_box_item:after,
div.flow_box_item h3:after,
div.place:after,
div.document_box:after,
div.example_box:after,
p.faq_question:after,
p.faq_answer:after{
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

* html div.reason_box,
* html div.flow_box,
* html div.flow_box_item,
* html div.flow_box_item h3,
* html div.place,
* html div.document_box,
* html div.example_box,
* html p.faq_question,
* html p.faq_answer{
	height: 1px;
	/*¥*//*/
	height: auto;
	overflow: hidden;
	/**/
}


/* Home Visual
-------------------*/

div#visualWrap{
	background: #ffffff url("../image/bg-sky.png") no-repeat scroll center center;
}

div#visual{
	height: 508px;
	text-align: left;
	overflow: visible;
	position: relative;
}

div.visual_title{
	width: 960px;
	text-align: center;
	z-index: 3;
}

div.visual_cars{
	width: 354px;
	position: absolute;
	left: 0px;
	top: 180px;
	z-index: 2;
}

div.visual_bg{
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}

div.background{
	position: absolute;
	left: 0;
	top: 0;
}

form.assessform_top{
	width: 535px;
	height: 242px;
	position: absolute;
	left: 413px;
	top: 178px;
}

form.assessform_top table{
	margin: 0;
	position: absolute;
	top: 16px;
}
form.assessform_top table.assessform_contentL{
	left: 15px;
	width: 254px;
}
form.assessform_top table.assessform_contentR{
	left: 285px;
	width: 235px;
}

form.assessform_top table th,
form.assessform_top table td{
	padding: 0 0 10px;
	border: none;
	vertical-align: middle;
}

form.assessform_top table th{
	width: 75px;
}

form.assessform_top table td{
	text-align: right;
}

form.assessform_top input,
form.assessform_top textarea,
form.assessform_top select{
	width: 160px;
}

form.assessform_top textarea{
	height: 60px;
	resize: none;
}

/* --- for IE7 --- */
*+html form.assessform_top input{
	line-height: 20px;
	height: 20px;
	width: 150px;
}
*+html form.assessform_top textarea{
	height: 54px;
	width: 150px;
}

form.assessform_top input.assess_submit{
    margin: 3px 0;
    display: block;
    width: 254px !important;
    height: 54px !important;
    background: url("../image/btn-assess_submit_off.png") center center no-repeat;
    text-indent: -9898px;
    border-width: 0px;
    cursor: pointer;
    border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	-webkit-appearance: none;
}
form.assessform_top input.assess_submit:hover{
    background-image: url("../image/btn-assess_submit_on.png");
}

form.assessform_top .validation_error{
	background-color: #ffd9d9 !important;
}


/* Navigation
-------------------*/

body.home div#navigationWrap{
	margin-top: 0;
}

/* Notice
-------------------*/

div.notice{
	margin: 15px 0;
	border: 3px solid #ffcc00;
}

div.notice h3{
	margin: 15px;
	padding: 0 0 5px;
	text-align: left;
	font-size:  129%;
	font-weight: bold;
	border: none; /* 初期化 */
	border-bottom: 2px dotted #cccccc;
}

div.notice p{
	margin: 15px;
	text-align: left;
}


/* Section Common
-------------------*/

div.section{
	margin: 25px 0 40px;
}


/* Reason Section
-------------------*/

div#reason h2{
	margin: 40px 0 10px;
	padding: 0;
	background: none;
}

div.reason_box{
	width: 975px;
	overflow: hidden;
}

div.reason_box_item{
	margin-right: 15px;
	float: left;
	width: 310px;
}


/* Flow Section
-------------------*/

div.flow_box{
	margin: 20px 0;
	width: 1000px;
	overflow: hidden;
}

div.flow_box_item{
	margin-right: 40px;
	float: left;
	width: 460px;
}

div.flow_box_item h3{
	margin: 10px 0;
	padding: 0;
	border: none;
	font-weight: bold;
}

div.flow_box_item h3 img.step_image{
	margin-right: 15px;
	float: left;
}

div.flow_box_item h3 span.step_name{
	display: block;
	line-height: 25px;
}

div.flow_box_item p.flow_explain{
	margin: 10px 0;
	width: 325px;
	float: left;
}

div.flow_box_item div.flow_image{
	margin: 10px 0;
	width: 120px;
	float: right;
}

div.place{
	margin: 40px 0;
}

div.japanese_map{
	margin-left: 15px;
	width: 321px;
	float: left;
}

div.place_guide{
	margin-right: 25px;
	width: 557px;
	float: right;
}

div.place_guide h3{
	margin: 0;
	padding: 0;
	border: none;
}

div.place_guide div.phone{
	position: relative;
}

div.place_guide div.phone p.phone_image{
	text-align: center;
}

div.place_guide div.phone p.phone_image img.feel_free{
	margin-right: 8px;
}

div.place_guide div.phone p.business_hours{
	margin: 0;
	padding: 0;
	width: 265px;
	position: absolute;
	left: 244px;
	top: 37px;
	text-align: center;
}


/* Document Section
---------------------*/

div.document_box{
	margin: 15px 0;
	width: 975px;
	overflow: hidden;
}

div.document_box_item{
	margin-right: 15px;
	float: left;
	width: 306px;
	height: 124px;
	border: 2px solid #ffffff;
	text-align: left;
}

div.document_box_item_dark{ border-color: #10524b; }
div.document_box_item_light{ border-color: #7fbc17; }

div.document_image{
	float: left;
}

div.document_image_inner{
	display: table-cell;
    vertical-align: middle;
    padding: 0 7px 0 10px;
    height: 124px;
}

div.document_text{
	display: table-cell;
	vertical-align: middle;
	padding: 0 10px 0 7px;
	height: 124px;
}

/* --- for IE7 --- */
*:first-child+html div.document_image_inner,
*:first-child+html div.document_text{
	margin: 10px;
	height: auto;
}

div.document_text h3{
	margin: 0;
	padding: 0;
	border: none;
	font-size: 115%;
	font-weight: bold;
}

div.document_text p{
	margin: 0;
	padding: 0;
	color: #7d7d7d;
}

/* Example Section
-------------------*/

div.example_box{
	margin: 15px 0;
	width: 975px;
	overflow: hidden;
}

div.example_box_item{
	margin-right: 15px;
	float: left;
	width: 304px;
	border: 3px solid #efefef;
}

div.example_car{
	margin: 15px;
	width: 274px;
}

p.example_price{
	margin: 0 15px;
	padding: 5px 0;
	text-align: center;
	border-bottom: 1px dotted #de3c2d;
}

table.example_info{
	margin: 10px 15px 15px;
	width: 274px;
}

table.example_info th{
	width: 80px;
	font-weight: normal;
	vertical-align: top;
}

table.example_info th span.example_label{
	display: inline-block;
	width: 70px;
	background-color: #de3c2d;
	color: #ffffff;
	text-align: center;
}

table.example_info th,
table.example_info td{
	padding: 2px 0;
	text-align: left;
	border: none;
}

/* FAQ Section
-------------------*/

div.faq_item{
	padding: 15px 0;
	border-bottom: 1px solid #3a3a3a;
}

div.faq_item_last{
	padding-bottom: 0;
	border-bottom: 0;
}

p.faq_question{
	margin: 12px 0 0;
	padding-bottom: 12px;
	font-size: 129%;
	font-weight: bold;
	border-bottom: 2px dotted #cccccc;
}

p.faq_answer{
	margin: 12px 0;
	font-size: 115%;
}

p.faq_question span.faq_icon,
p.faq_answer span.faq_icon{
	display: block;
	width: 38px;
	float: left;
}

p.faq_question span.faq_text,
p.faq_answer span.faq_text{
	display: block;
	width: 910px;
	float: right;
	margin-top: 3px;
}
