/* ================================
      common
================================ */

body{
  width: 100%;
  color:#333;
  font-family: "メイリオ","Hiragino Kaku Gothic Pro","MS PGothic","MS UI Gothic",Helvetica,Arial,sans-serif;
}

body a:hover{
  text-decoration:underline;
}

body a{
  color:#0044cc;
  text-decoration:none;
}

html, body, div, span, h1, h2, h3, h4, h5, h6, p, strong, sub, sup, dl, dt, dd, ol, ul, li, form{
  margin: 0;
  padding: 0;
  border: 0 none;
  vertical-align: baseline;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%;
}

/* ================================
      header
================================ */

#header_line{
  width:950px;
  height:6px;
  margin: 10px auto;
  background:#6699cc;
}

/* ================================
      contents
================================ */

#contents {
  width: 950px;
  line-height: 1.6;
  margin: 0 auto;
  padding-bottom: 30px;
  font-size: 100%;
}

.contents_wrapper{
  width: 950px;
}

#contents .title {
  margin-top:20px;
  padding: 9px 20px 9px 20px;
  background:#efefef;
}

#contents .title h1{
  font-weight: bold;
  font-size:20px;
}

.contents_notice{
  padding-top:33px;
}

.contents_notice p{
  padding:0 17px 0 17px;

}

.desc_wrapper{
  margin:0 20px;
}

.desc{
  margin-top:16px;
  padding-bottom:33px;
}

.desc br{
  padding:0px;
  margin:0px;
}

.desc p{
  font-size:14px;
}

.dot_line{
  width:910px;
  height:2px;
  background:url(/form/img/pc/dot.png) repeat-x;
}

.free_box{
  margin-top:20px;
  padding:9px 13px 9px 13px;
  border:solid 1px #75c1e7;
  background:#f6fcff;
  color:#444;
  font-size:14px;
}

.free_box strong{
  font-weight:bold;
  font-size:16px;
}

/* ================================
      bar
================================ */

.bar{
  position:relative;
  top:0px;
  left:0px;
  width:450px;
  height:60px;
  margin:29px auto 0 auto;
  color:#666;
  font-size:16px;
}

.bar .input{
  position:absolute;
  top:36px;
  left:13px;
}

.bar .confirm{
  position:absolute;
  top:36px;
  left:210px;
}

.bar .comple{
  position:absolute;
  top:36px;
  left:407px;
}

.current{
  color:#333;
  font-weight:bold;
  font-size:16px;
}


/* ================================
      botton
================================ */

.btn_submit{
  clear: both;
  width:435px;
  height:48px;
  margin:0 auto;
  padding:59px 0 0 0;
}

.btn_submit_input{
  clear: both;
  width:247px;
  height:48px;
  margin:0 auto;
  padding:59px 0 0 0;
}

.btn_right a:hover{
  background:#57abe6;
  color:#fff;
  text-decoration:none;
}

.btn_left{
  float:left;
}

.btn_right{
  float:left;
  margin-left:20px;
}

.btnView{
  display: inline-block;
  cursor: pointer;
  width:200px;
  height:48px;
  line-height: normal;
  border-radius:5px;
  border:solid 3px #2d96e0;
  box-shadow:none;
  box-sizing: border-box;
  background:#fff;
  color:#0e7ecd;
  font-size: 20px;
  font-weight:bold;
  text-align: center;
  -webkit-appearance:none;

}

.btnView:hover{
  display: inline-block;
  cursor: pointer;
  width:200px;
  height:48px;
  line-height: normal;
  border-radius:5px;
  box-shadow:none;
  -moz-box-shadow:none;
  box-sizing: border-box;
  border:solid 3px #57abe6;
  background:#fff;
  color:#57abe6;
  font-size: 20px;
  font-weight:bold;
  text-align: center;
  -webkit-appearance:none;

}

.primary{
  display: inline-block;
  cursor: pointer;
  width:200px;
  height:48px;
  line-height: normal;
  margin-left:25px;
  border:none;
  border-radius: 5px;
  box-sizing: border-box;
  background:#2d96e0;
  color: #fff;
  font-size: 20px;
  font-weight:bold;
  text-align: center;
  -webkit-appearance: none;
}

.primary:hover{
  display: inline-block;
  cursor: pointer;
  width:200px;
  height:48px;
  line-height: normal;
  margin-left:25px;
  border:none;
  border-radius: 5px;
  background:#57abe6;
  box-sizing: border-box;
  color: #fff;
  font-size: 20px;
  font-weight:bold;
  text-align: center;
  -webkit-appearance: none;
}

/* ================================
      message
================================ */

.message_wrapper{
  width:100%;
  margin:80px auto 0 auto;
  text-align:center;
}

.message_wrapper p{
  font-size:16px;
}

.message_wrapper span{
  font-size:14px;
}

/* ================================
      form
================================ */

.form_wrapper{
  width:950px;
  margin-top:20px;
}

.pfFormObject{
  clear: both;
  width:950px;
  height:100%;
  min-height:100%;
  overflow:hidden;
  border-bottom:dashed 1px #c5c5c5;
}

.pfFormObject div.pfLabel{
  float: left;
  padding:23px 10px 20px 32px;
  width:279px;

}

.pfFormObject div.pfLabel p{
  text-align: right;
}

.pfLabel .text_rt{
  text-align:right;
  font-size:13px;
  font-weight:normal;
  padding:0px;
}

.pfFormObject div.pfInput_text{
  margin-left: 321px;
  padding:23px 10px 20px 10px;
  font-size:14px;
  color:#333;

}

.pfFormObject div.pfInput{
  margin-left: 321px;
  padding:23px 10px 20px 10px;
  font-size:14px;
  color:#333;

}

.pfFormObject div.pfInput select{
  padding:7px 7px;
  width:255px;
  margin-top:-3px;
}

.pfFormObject div.pfInput_text .textbox{
  padding: 9px 10px;
  width:578px;
  font-size:14px;
  margin-top:-3px;
}

.pfFormObject div.pfInput .textarea{
  padding: 11px 12px 13px 12px;
  max-width:576px;
  width:576px;
  height:85px;
  font-size:14px;
  line-height:160%;
  overflow-y:scroll;
}


.pfFormObject div.pfInput span{
  font-size:14px;
}

.pfFormObject div.pfInput_text span{
  font-size:14px;
}

.pfFormObject div.pfInput p, .pfFormObject div.pfInput_text p{
  word-wrap:break-word;
}

.pfFormObject p {
  margin-bottom: 0;
  padding-bottom:4px;
}

.pfLabel p{
  font-size:15px;
  font-weight:bold;

}
.pfFormObject .checkbox{
  padding-top: 4px;
}

.pfFormObject .radio{
  padding-top: 4px;
}

.pfFormObject .checkbox p{
  padding:4px 0;

}

.pfFormObject .radio p{
  padding:4px 0;
}

.pfLabel em{
  color:#cc0000;
  font-size:12px;
  font-weight:normal;
  font-style:normal;
  padding-left:8px;
}

.pfLabel span{
  font-size:13px;
  text-align:left;
}

/* input form border */

.in_form .pfInput select{
  border:solid 1px #808080;
}

.in_form .pfInput_text input{
  border:solid 1px #808080;
}

.in_form .text_area textarea{
  border:solid 1px #808080;
}

/* ================================
      form error
================================ */

.error_detail{
  width:948px;
  border:solid 1px #cc0000;
  margin-top:10px;
}

.error_title{
  padding:8px;
  background:#faefee;
  border-bottom:solid 1px #f6d3d3;
  font-size:15px;
  color:#cc0000;

}

.error_list{
  padding:8px;

}

.error_detail ul{
  list-style:none;
  padding:0px;
  margin:0px;

}

.error_detail ul li{
  font-size:13px;
  padding:0px;
  margin:0px;
  color:#0044cc;

}

.error{
  background:#faefee;
}

.error .pfInput span, .error .pfInput_text span{
  font:13px;
  color:#cc0000;
}


/* error form border */
/*
.error .pfInput select{
  border:solid 1px #cc0000;
}

.error .pfInput_text input{
  border:solid 1px #cc0000;
}

.error .text_area textarea{
  border:solid 1px #cc0000;
}
*/

/* ================================
      footer
================================ */

#footer{
  clear:both;
}

#footer #footer_text {
  border-top: 1px solid #ccc;
  margin-top:70px;
  padding-top: 20px;
  padding-bottom: 20px;
}

#footer_text hr {
  display: none;
}

/* noscript */
.noscript_alert{
  margin-top:10px;
  padding:8px;
  border:solid 1px #000000;
  background:#ffffff;
  color:#000000;
}

.noscript_alert strong{
  color:#cc0000;
}
