/*============================
   Elements
============================*/

body{
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: 14px;
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,メイリオ,sans-serif;
	background-color: #ffffff;
	-webkit-text-size-adjust: 100%;
}

img{
	border: none;
	vertical-align: middle;
}

a,
a:visited{
	text-decoration: none;
	color: #2faab2;
}
a:hover{
	text-decoration: underline;
}

strong{
	color: #fe9200;
	font-size: 14px;
	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
}

p{
	color: #333333;
	text-align:justify;
	text-justify:inter-ideograph;
	line-height: 1.5;
}

div{
	margin: 0;
	padding: 0;
}

h1{
	color: #333333;
}

h2{
	margin: 20px 0;
	padding: 4px 0;
	background-color: #88c128;
	background-image: -moz-linear-gradient(top, #95c840 0%, #7fbc17 100%);
	background-image: -o-linear-gradient(top, #95c840 0%, #7fbc17 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #95c840), color-stop(1, #7fbc17));
	background-image: -webkit-linear-gradient(top, #95c840 0%, #7fbc17 100%);
	background-image: linear-gradient(to bottom, #95c840 0%, #7fbc17 100%);
	text-align: left;
	font-weight: bold;
	font-size: 172%;
	color: #ffffff;
}
span.h2_border{
	display: block;
	padding: 0 10px;
	border-left: 6px solid #10524b;
}

h3{
	margin: 20px 0;
	padding: 10px 15px;
	color: #333333;
	border-left: 4px solid #34acd1;
	text-align: left;
	font-size: 143%;
	font-weight: bold;
}

hr{
	border: none;
    border-bottom: 2px dotted #cccccc;
}

ul{
	margin: 1em 0 1em 1.5em;
	padding: 0;
	line-height: 1.5;
	text-align: left;
	color: #333333;
	list-style-type: disc;
	font-size: 100%;
}

table{
	margin: 10px 0;
	border-collapse: collapse;
	width: 100%;
	line-height: 1.5;
	table-layout: fixed;
}

table th{
	width: 180px;
	font-weight: normal;
}

table th,
table td{
	padding: 15px 0;
	text-align: left;
	vertical-align: top;
	border-bottom: 2px dotted #cccccc;
}

table tr.last th,
table tr.last td{
	border-bottom: none;
}

input,
textarea,
select{
	display: inline-block;
	padding: 2px 4px;
	font-size: 13px;
	font-weight: normal;
	color: #333333;
	background-color: #ffffff;
	border: 1px solid #929292;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	width: 320px;
}

input,
select{
	line-height: 28px;
	height: 28px;
}

textarea{
	width: 600px;
	height: 200px;
	overflow: auto;
}

/*============================
   Common
============================*/

/* Wrap
-----------------*/

div#linkWrap,
div#visualWrap,
div#navigationWrap,
div#footerWrap{
	margin: 0 auto;
	width: 100%;
	min-width: 960px;
	text-align: center;
}

/* Block
-----------------*/

div#header,
div#link,
div#visual,
div#navigation,
div#main,
div#asform,
div#return,
div#footer{
	margin: 0 auto;
	width: 960px;
	text-align: center;
	overflow: hidden;
}

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

div#navigation ul{
	min-height: 1px;
}

div#navigation ul:after{
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

* html div#navigation ul{
	height: 1px;
	/*¥*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* Header
-------------------*/

div#header{
	padding-top: 20px;
	overflow: visible;
	position: relative;
	height: 95px;
	text-align: right;
}

div#header div.logo{
	position: absolute;
	left: 0;
	top: 20px;
	z-index: 3;
}


div#header h1.headline{
	margin: 0 0 8px 0;
	font-size: 100%;
	font-weight: normal;
	text-align: right;
	z-index: 1;
}

div#header div.phone{
	position: relative;
	z-index: 2;
}

div#header div.phone p.phone_image{
	margin: 0;
	text-align: right;
}

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

div#header div.phone p.business_hours{
	margin: 0;
	padding: 0;
	width: 265px;
	position: absolute;
	right: 0;
	top: 37px;
	text-align: center;
}

/* Header&Footer Link
-----------------------*/

div#linkWrap{
	background-color: #88c127;
	background-image: -moz-linear-gradient(top, #96C841 0%, #80BC18 100%);
	background-image: -o-linear-gradient(top, #96C841 0%, #80BC18 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #96C841), color-stop(1, #80BC18));
	background-image: -webkit-linear-gradient(top, #96C841 0%, #80BC18 100%);
	background-image: linear-gradient(to bottom, #96C841 0%, #80BC18 100%);
}

div#link ul{
	margin: 5px 0;
	padding: 0;
	text-align: right;
}

div#link ul li{
	display: inline;
	margin-left: 20px;
	padding-left: 10px;
	background: url("../image/icon-link_white.png") no-repeat scroll left center;
	list-style-type: none;
}

div#link ul li a{
	color: #ffffff;
}

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

div#navigationWrap{
	margin-top: 10px;
	background-color: #fe9301;
}

div#navigation ul{
	margin: 0;
	padding: 0;
	border-left: 1px solid #cd7601;
	border-right: 1px solid #fec67a;
	list-style-type: none;
	text-align: center;
}

div#navigation ul li{
	float: left;
	border-left: 1px solid #fec67a;
	border-right: 1px solid #cd7601;
}

div#navigation ul li a{
	display: table-cell;
	vertical-align: middle;
	height: 40px;
	line-height: 40px;
	color: #ffffff;
}

div#navigation ul li.navi_home a{ width: 80px; }
div#navigation ul li.navi_flow a{ width: 132px; }
div#navigation ul li.navi_document a{ width: 132px; }
div#navigation ul li.navi_example a{ width: 120px; }
div#navigation ul li.navi_faq a{ width: 133px; }
div#navigation ul li.navi_inquiry a{ width: 132px; }
div#navigation ul li.navi_application a{ width: 215px; }

div#navigation ul li a:hover{
	background-color: #ffcc00;
	text-decoration: none;
}

/* --- for IE7 --- */
*:first-child+html div#navigation ul li a{
	display: inline;
	zoom: 1;
}
*:first-child+html div#navigation ul li.item-home a img{
	margin: 8px 0;
}


/* AS Form Under
-------------------*/

div#asform{
	margin-top: 40px;
}

div#asform h2.asform_title{
	margin: 0;
	padding: 0;
	text-align: center;
	background: none;
}

div#asform div.asform_content{
	border-left: 5px solid #10524b;
	border-right: 5px solid #10524b;
	border-bottom: 5px solid #10524b;
	height: 254px;
	position: relative;
}

form.assessform_under{
	width: 510px;
	height: 220px;
	position: absolute;
	left: 20px;
	top: 22px;
}

form.assessform_under table{
	margin: 0;
	position: absolute;
	top: 0px;
}
form.assessform_under table.assessform_contentL{
	left: 0px;
	width: 254px;
}
form.assessform_under table.assessform_contentR{
	left: 270px;
	width: 235px;
}

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

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

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

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

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

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

form.assessform_under 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_under input.assess_submit:hover{
    background-image: url("../image/btn-assess_submit_on.png");
}

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

div.phone_guide{
	width: 389px;
	height: 213px;
	position: absolute;
	right: 15px;
	top: 22px;
	background: url("../image/bg-stripe.png") no-repeat scroll center center;
}

div.phone_guide p.quick_assess{
	margin: 15px 19px;
	text-align: center;
}

div.phone_guide p.hurry{
	margin: 15px 25px;
	text-align: left;
}

div.phone_guide p.hurry img.hurry_tel{
	margin-bottom: 8px;
}

div.phone_guide p.business_hours{
	margin: 0;
	padding: 0;
	width: 265px;
	position: absolute;
	left: 83px;
	top: 182px;
	text-align: center;
}

p.required_field{
	margin: 5px 0 10px;
	text-align: left;
	line-height: normal;
}

/* Return
-----------------*/

div#return{
	margin-top: 20px;
	text-align: right;
	overflow: visible;
	position: relative;
	right: -70px;
}

/* Footer
-----------------*/

div#footerWrap{
	padding-top: 15px;
	padding-bottom: 80px;
	background-color: #fe9301;
}

div#footer div.symbol{
	margin: 5px 0 5px 10px;
	float: right;
}

div#footer p.address{
	margin: 5px 0;
	color: #ffffff;
	text-align: right;
}

div#footer p.copyright{
	margin: 5px 0;
	color: #aa6201;
	text-align: right;
}
