@charset "utf-8";

html, body, div, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, p,
blockquote, fieldset, input, abbr, article, aside, command, details,
figcaption, figure, footer, header, mark, meter, nav, output, progress,
section, summary, time {
    margin: 0;
    padding: 0;
    vertical-align: baseline
}

li, dt, dd, h1, h2, h3, h4, h5, h6, span, pre, code, address, caption, cite,
code, em, strong, b, th, figcaption {
    font-size: 1em;
    font-weight: 400;
    font-style: normal
}

fieldset, iframe {
    border: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

article, aside, footer, header, nav, section, figure, figcaption {
    display: block
}

img, abbr, acronym, fieldset {
    border: 0;
    font-size: 0;
    line-height: 0;
    vertical-align: bottom
}


body{
	margin:0;
	padding:0;
	font-family: sans-serif;
	font-size: 14px;
}

img{
	border:none;
}

#mainContent{
	width:760px;
	margin:60px auto 60px;
	padding:40px 60px 20px;
	border: solid 2px #0B479F;
	position: relative;
}
#mainContent img.logo_form{
	position: absolute;
	top: 42px;
	right: 60px;
	width: 175px;
}

#mainContent article h1 {
	font-weight: bold;
	font-size: 20px;
	margin: 0 0 20px 0;
	color: #0B479F;
}


#form{
	height:36px;
	width:680px;
	overflow:hidden;
	position:relative;
	margin:20px auto;
	 }
#form.confirm{
	background:url(../img/navi.png) no-repeat;
	background-position:0 -40px;
	 }
#form.thanks{
	background:url(../img/navi.png) no-repeat;
	background-position:0 -80px;
	 }

#form ul.steps {
	letter-spacing: -.4em;
}
#form ul.steps li {
 display: inline-block;
 vertical-align: top;
	background: #ccc;
 color: #fff;
 width: 210px;
 height: 36px;
 line-height: 36px;
 text-align: center;
 letter-spacing: normal;
 margin-right: 25px;
 position: relative;
 font-weight: bold;
}
#form ul.steps li:after {
 position: absolute;
 content: '';
 top: 0;
 right: -10px;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 18px 0 18px 10px;
 border-color: transparent transparent transparent #ccc;
}
#form ul.steps li.cu {
	background: #003366;
}
#form ul.steps li.cu:after {
 border-color: transparent transparent transparent #003366;
}
#form ul.steps li:last-child {
 margin-right: 0;
}
#form ul.steps li:last-child:after {
 display: none;
}
	 
h2 {
	border-bottom:none;
	padding-bottom:0;
}

dl.form {
	border-top: none;
	border-bottom: 1px solid #999;
	width: 100%;
}
dl.form dt{
	border-top: 1px solid #999;
	float: left;
	width: 240px;
	padding:19px 10px 8px 10px;
}

dl.form dd{
	padding: 12px 20px;
	border-top: 1px solid #999;
	_height: 1%; /* WinIEで頭の文字が右に微妙にずれるのを補正 */
	margin-left: 240px;
	min-height: 30px;
}
dl.form dd span{
	padding: 7px;
	display: inline-block;
}



span.must{ width:3em !important; color:#ff3300; margin-left:1em; font-size: 10px;}

input[type="radio"], input[type="checkbox"], label {
	vertical-align: middle;
	cursor: pointer
}
input[type="text"] {
  border: 1px solid #c7c7c7;
  background-color: #f7f8f8;
  padding: 7px 7px 7px 7px;
  width: 380px;
  font-size: 14px;
}
input[type="text"].short {
  width: 155px;
}
textarea {
  border: 1px solid #c7c7c7;
  background-color: #f7f8f8;
  padding: 7px 7px 7px 7px;
  width: 380px;
  font-size: 14px;
  resize: vertical;
}

.radio_box {
	line-height: 30px;
}

.radio_box label {
  margin: 0 15px 0 0;
  cursor: pointer;
}

.nameBlock span.label {
	padding: 0 5px 0 0;
	display: inline;
}

dl.form dd.policyBlock {
	padding-bottom: 24px;
}
.policy {
 padding: 10px;
 width: 380px;
 overflow-y: scroll;
 margin-bottom: 15px;
 margin-top: 6px;
 height: 150px;
 border: 1px solid #c7c7c7;
 font-size: 10px;
 line-height: 1.4;
}

input[type="submit"]{
	background-color:#003366;
	color:#fff;
	padding:15px 100px;
	border:none;
	font-size: 14px;
	font-weight:bold;
	cursor:pointer;
}
input.back{
	background-color:#4c4c4c;
	padding:15px 35px;
	margin-right:20px;
}

.submitArea{ text-align:center; margin:30px 0 20px 0;}
.submitArea input{ margin-bottom:20px;}

.mb30 {
	margin-bottom: 30px;
}

.error li {
	font-weight: bold;	
}

.h30 {
	line-height: 30px !important;
}

.textarea {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
	line-height: 1.8;
}


.contactArea {
	background: #eee;
	padding: 20px 25px;
	margin: 0 0 30px 0;
}
.contactArea p.ttl {
	display: inline-block;
	font-weight: bold;
	margin: 0 20px 0 0;
	vertical-align: top;
}
.contactArea p.txt {
	display: inline-block;
}

dl.form dd label.error {
	display: inline-block;
	color: #ff3300;
	font-size: 14px;
	padding: 5px 10px 0 0;
}

div.error ul {
	margin: 0 0 20px 20px;
}
div.error ul li {
	color: #ff3300;
	font-size: 12px;
}
