@charset "utf-8";
/* Consolidated desktop and mobile styles. */
@media screen and (min-width: 641px), print {
body,div,form {
  margin: 0;
  padding: 0;
}
form {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro",Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  font-size: 12px;
  line-height: 1.6;
  color: #333;
}
.rectusenq_qa,
.rectusenq_cusinfo {
  margin:30px 0 0;
}
.rectusenq_q,
.rectusenq_cusinfo_subj {
  font-weight: bold;
  padding: 5px 10px;
  background: #F0F0F0;
}
.rectusenq_a {
  padding: 5px 10px;
}
.rectusenq_br {
  clear: both;
}
.rectusenq_cusinfo {
  font-size: 12px;
  padding-bottom: 10px;
}
.rectusenq_cusinfo .rectusenq_cusinfo_item {
  width: 25%;
  margin-left: 10px;
  padding: 5px;
  float: left;
}
.rectusenq_cusinfo .rectusenq_cusinfo_fm {
  text-align: left;
  padding: 5px;
  float: none;
}
.rectusenq_cusinfo_odd {
  background: #fafafa;
}

.rectusenq_c {
  text-align: center;
}
.rectusenq_l {
  text-align: left;
}
.rectusenq_red {
  color: red;
}

.rectusenq_bt_set {
  width: 400px;
  margin: 10px auto;
}
.rectusenq_bt_send,
.rectusenq_bt_back {
  text-align: center;
}
}
@media screen and (max-width: 640px) {
body,div,form{margin:0; padding:0;}
form{
  font-size: 16px;
  color: #333;
  width:100%;
  box-sizing: border-box; /* box幅にpaddingとborderも含める */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

#recef {
  overflow: hidden;
  font-size: 16px;
  text-align: left;
  text-indent: 0;
  color: #333;
  overflow: hidden;
}
.rectusenq {
  font-size: 16px;
}
@media screen and (min-width: 480px) {
        .rectusenq {
          font-size: 13px;
        }
}
.rectusenq_question input {
  display: inline;
  width: auto;
}
.rectusenq_question label {
  font-weight: normal;
  width: auto;
  display: inline-block;
  margin:5px;
}
.rectusenq_question label span {
  vertical-align: middle;
  font-size: 16px;
}
@media screen and (min-width: 480px) {
  .rectusenq_question label span {
    font-size: inherit;
  }
}
.rectusenq_question input[type="text"] {
  width:100%;
  height:32px;
  padding: 6px 8px !important;
  /* background-color: #F9FAFB; */
  border:1px solid #CCC;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.075) inset;
  box-sizing: border-box; /* [borde-box]で右の飛び出しを回避 */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
.rectusenq_question input[disabled] {
  background-color: #F0F0F0;
}
.rectusenq_question input[type="checkbox"] {
  margin: 3px 3px 3px 3px !important;
  border-style: none;
  width: auto;
}
.rectusenq_question input[type="radio"] {
  margin: 3px 3px 0px 3px !important;
  border-style: none;
  width: auto;
}
.rectusenq_question select {
  font-size:16px;
  height:32px;
  padding: 2px !important;
  /* background-color: #F9FAFB; */
  border:1px solid #CCC;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.075) inset;
}
.rectusenq_question input[type="file"] {
  font-size:16px;
}
.rectusenq_question textarea,
 #recef textarea {
  width: 100%;
  margin:0px auto;
  padding: 6px 8px !important;
  /* background-color: #F9FAFB; */
  outline: none;
  border:1px solid #CCC;
  -webkit-transition: all .3s;
  transition: all .3s;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.075) inset;
  box-sizing: border-box; /* パディングとボーダーを幅と高さに含める */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
.rectusenq_question input[type="text"]:focus,
.rectusenq_question textarea:focus,
 #recef textarea:focus,
 select:focus {
  background:#FFFFDD;
  box-shadow: 0 0 7px #8bade4;
  border:1px solid #8bade4;
  box-shadow: 0;
}

.rectusenq_qa {
  font-size: 14px;
  line-height: 130%;
  margin: 10px 0 0;
  padding: 10px 0 0;
}
.rectusenq_q {
  padding: 13px 20px;
  font-weight: bold;
  font-size:1.6rem;;
  border-left: 1px solid #ccc;
  background-color: #f5f5f5;
  /* border-bottom:1px solid #ccc; */
}
@media screen and (min-width: 480px) {
        .rectusenq_qa {
          font-size: 13px;
        }
        .rectusenq_q {
          font-weight: normal;
        }
}
.rectusenq_a {
  padding: 10px 0;
}
.rectusenq_choice {
  width: 33%;
  float: left;
}
.rectusenq_br {
  clear: both;
}
.rectusenq_cusinfo {
  font-size: 14px;
  margin-top:40px;
}
.rectusenq_cusinfo input, .rectusenq_cusinfo textarea,
.rectusenq_qa input, .rectusenq_qa textarea {
  color: #333;
  font-size: 16px;
}
@media screen and (min-width: 480px) {
        .rectusenq_cusinfo input, .rectusenq_cusinfo textarea,
        .rectusenq_qa input, .rectusenq_qa textarea {
          font-size: 14px;
        }        
}
.rectusenq_cusinfo .rectusenq_cusinfo_subj {
  font-weight: bold;
  margin: 40px 0 10px;
  padding: 6px 20px;
  font-size:120%;
  border-left:4px solid #ccc;
}
.rectusenq_cusinfo .rectusenq_cusinfo_warn {
  text-align: left;
  margin: 6px;
  float: none;
}
.rectusenq_cusinfo .rectusenq_cusinfo_item {
    width: 100%;
    font-weight:bold;
    margin: 0;
    padding: 0;

}
@media screen and (min-width: 480px) {
  .rectusenq_cusinfo .rectusenq_cusinfo_item {
      width: 25%;
      font-weight:normal;
      float: left;
      border-top:1px dotted #ccc;
      padding:10px 0;
      margin:0 0 0;
  }
}
.rectusenq_cusinfo .rectusenq_cusinfo_fm {
    width: 100%;
}
@media screen and (min-width: 480px) {
  .rectusenq_cusinfo .rectusenq_cusinfo_fm {
      width: 75%;
      float: right;
      border-top:1px dotted #ccc;
      padding:10px 0;
  }
  .rectusenq_cusinfo .rectusenq_cusinfo_subj + .rectusenq_cusinfo_fm {
      border-top:none;
  }
}
.rectusenq_cusinfo .rectusenq_cusinfo_fm_yuubin input {
  width:100px;
}
.rectusenq_cusinfo .rectusenq_cusinfo_fm_tel input,
.rectusenq_cusinfo .rectusenq_cusinfo_fm_fax input {
  width:160px;
}
.rectusenq_cusinfo_msg {
  display: block;
  width:100%;
}

.rectusenq_c {
  text-align: center;
}
.rectusenq_l {
  text-align: left;
}
.rectusenq_r {
  text-align: right;
}
.rectusenq_b {
  font-weight: bold;
}
.rectusenq_red {
  color: red;
}
.rectusenq_readonly {
  color: gray;
}
.rectusenq_check {
  width: 25px;
  height: 20px;
  display: inline-block;
}
.rectusenq_check_overlimit {
  display: none;
}
.rectusenq_check_blank {
  width: 25px;
  height: 20px;
  margin-top: 3px;
  display: inline-block;
}
.rectusenq_overlimit {
  padding-top: 4px;
  color: gray;
}
.rectusenq_h130 {
  line-height: 130%;
}
.rectusenq_h160 {
}

#rectusenq_confirm iframe {
  width: 100%;
  height: 600px;
  overflow: hidden;
  border:none;
}
#rectusenq_closebutton {
  cursor: pointer;
}
.rectusenq_popup {
  border-top: 1px solid #999999;
  background-color: #FFF;
  text-align: center;
  padding: 10px;
  box-shadow: 3px 3px 5px #000;
}
.rectusenq_popup .rectusenq_popupbutton {
  margin: 10px;
}
.rectusenq_popup div.popupframe {
  border: 1px solid black;
  background-color: #F4F4F4;
}
.rectusenq_popup_title {
  font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  color:#FFF;
  font-weight: bold;
  font-size: 20px;
  background: #000;
  box-shadow: 3px 3px 5px #000;
  padding: 20px 10px 15px 33px;
}
.rectusenq_grayout {
  background-color: #333;
  filter: alpha(opacity=30);
  -moz-opacity: 0.30;
  opacity: 0.30;
}

.rectusenq_msg {
  font-size: 14px;
  text-align: left;
  padding:15px;
}

.rectusenq_cusinfo_exp {
  margin:20px 0 0;
}

.rectusenq_exp {
  text-align:left;
  margin:15px 0;
}

/* buttonタグの場合 */
.rectusenq_bt_send,
.rectusenq_bt_back {
  width: 100%;
  margin:16px auto;
  position: relative;
  text-align: center;
}
.rectusenq_bt_set button {
  display:inline-block;
  text-decoration: underline;
  border: 0px;
  width: 100%;
  font-size: 14px;
  padding:14px 0;
  color: #fff;
  text-align: center;
  line-height: 17px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  outline: none;
  position: relative;
  cursor:pointer;
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;

}

.rectusenq_bt_send button {
}

.rectusenq_bt_send button:hover {
  box-shadow: none;
  color:#fff;
}
.rectusenq_bt_send button:active {
  box-shadow: none;
}


.rectusenq_bt_back button:after {
  content: '';
  position: absolute;
  z-index: -1;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.rectusenq_bt_back button:hover {
  box-shadow: 0 4px #d2d1d0;
  color:#333;
  top: 2px;
}
.rectusenq_bt_back button:active {
  box-shadow: 0 0 #d2d1d0;
  top: 6px;
}

@media screen and (min-width: 640px) {
  .rectusenq_bt_set {
    margin:0 auto;
    text-align: center;
  }
  .rectusenq_bt_send,
  .rectusenq_bt_back {
/*  width: 50%;  */
/*  float:left;  */
    width: auto;
    display: inline-block;
  }
  .rectusenq_bt_send {
/*  text-align:right;  */
  }
  .rectusenq_bt_back {
/*  text-align:left;  */
  }
  .rectusenq_bt_send button {
    width: auto;
    height:44px;
    padding:0 20px;
    margin-right:10px;
  }
  .rectusenq_bt_back button {
    width: auto;
    height:44px;
    padding:0 20px;
    margin-left:10px;
  }
}
}
