p {
    margin: 0;
    padding: 0;
}

div.font_style {
    font-family: "Helvetica Neue","helvetica","Hiragino Kaku Gothic Pro","Verdana","Meiryo","Osaka","MS PGothic",sans-serif;
    letter-spacing: .08em;
}

div.input_date_ymd {
  display: block;
  width: 200px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

div.input_date_md {
  display: block;
  width: 130px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

div.input_date_ym, div.input_date_yd {
  display: block;
  width: 150px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

div.input_date_y {
  display: block;
  width: 75px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

div.input_date_m, div.input_date_d {
  display: block;
  width: 60px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

input.ipt_date_y {
  text-align: center;
  border: 0;
  width: 50px;
  margin: 3px 10px 0 10px;
  border-bottom: 1px #c0c0c0 solid;
}

input.ipt_date_m {
  text-align: center;
  border: 0;
  width: 35px;
  margin: 3px 10px 0 10px;
  border-bottom: 1px #c0c0c0 solid;
}

input.ipt_date_d {
  text-align: center;
  border: 0;
  width: 35px;
  margin: 3px 10px 0 10px;
  border-bottom: 1px #c0c0c0 solid;
}

input.ipt_date_y:focus {
  border-bottom: 2px #808080 solid;
}

input.ipt_date_m:focus {
  border-bottom: 2px #808080 solid;
}

input.ipt_date_d:focus {
  border-bottom: 2px #808080 solid;
}


div.input_time_hm {
  display: block;
  width: 120px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

div.input_time_h, div.input_time_m {
  display: block;
  width: 70px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

input.ipt_time_h, input.ipt_time_m {
  text-align: center;
  border: 0;
  width: 35px;
  margin: 3px 10px 0 10px;
  border-bottom: 1px #c0c0c0 solid;
}

input.ipt_time_h:focus, input.ipt_time_m:focus {
  border-bottom: 2px #808080 solid;
}


.checkbox, .radio {
  position: relative;
  display: block;
  margin-top: 0;
  margin-bottom: 10px;
}


div.form_desc_title {
  width: 100%;
  padding: .8em 0 .8em .75em;
  margin-right: 15px;
  margin-left: 15px;
  margin-bottom: 10px;
  font-size:120%;
}


div.form_group_title {
  width: 100%;
  padding: .8em 0 .8em .75em;
  margin: 0 15px;
  font-size:120%;
}


div.form_group_title_cfm {
  width: 100%;
  padding: .8em 0 .8em .75em;
  margin: 0;
  font-size:120%;
}


div.ipt_tel {
  display: block;
  width: 230px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

div.ipt_tel > input[type=text] {
  text-align: center;
  border: 0;
  width: 50px;
  border-bottom: 1px #c0c0c0 solid;
  margin: 3px 10px 0 10px;
}


div.ipt_tel > input[type=text]:focus {
  border-bottom: 2px #808080 solid;
}


div.ipt_post_num {
  display: block;
  width: 150px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
}

div.ipt_post_num > input[type=text]:first-child {
  text-align: center;
  border: 0;
  width: 45px;
  margin: 3px 10px 0 10px;
  border-bottom: 1px #c0c0c0 solid;
}

div.ipt_post_num > input[type=text]:nth-of-type(2) {
  text-align: center;
  border: 0;
  width: 50px;
  margin: 3px 10px 0 10px;
  border-bottom: 1px #c0c0c0 solid;
}

div.ipt_post_num > input[type=text]:focus {
  border-bottom: 2px #808080 solid;
}

span.separat_str {
  font-size: 16px;
  font-weight: bold;
}

div.ipt_err_on {
  display: block;
  font-weight: bold;
  padding: 10px;
  margin-top: 15px;
  background-color:#FFCDCD;
  color:#FF0033;
}

span.required_f_color {
  display: inline-block;
  padding: 3px 8px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 5px;
  margin-top: -1px;
  margin-bottom: 5px;
  font-size: 100%;
}

div.container_width {
  max-width: 900px;
  margin:0 auto;
  padding-left: 30px;
  padding-right: 30px;
}

div.address_item {
  margin-bottom:20px;
  display:block;
}

div.form_desc_body {
  margin-right: 15px;
  margin-left: 15px;
  display: block;
}

div.required_bottom {
  margin-bottom:10px;
}

div.required_sub_item {
  margin: 0 5px;
  display: inline-block;
}

div.date_hm_style {
  font-size: 12px;
  color: #a9a9a9;
}

div.send_btn {
  text-align: center;
}

button.complete_btn_style {
  border:0;
}

div.err_on_btn_area {
  display: block;
  background-color: #FFCDCD;
  color: #FF0000;
  border: 2px #FF0000 solid;
  padding: 10px;
}

.has-error .form-control {
  border: 2px #FF0033 solid;
}

.no_grid_col {
  min-height: 1px;
}

img.form_img_exp_modal_img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

img.open_form_img_exp_modal {
  cursor: pointer;
}

img.open_form_img_exp_modal_from_choice {
  cursor: pointer;
}