#aptoenqform {  /* フォーム全体 */
  font-size: 14px;
  text-align: left;
  text-indent: 0;
  color: #333;
  overflow: hidden;
}
@media screen and (min-width: 480px) {
  #aptoenqform {  /* フォーム全体 */
    font-size: inherit;
  }
}
.aptoenq {
  font-size: 16px;
}
.aptoenq_necessary {
  text-align: left;
  margin-left: 16px;
  font-size: 16px;
  text-indent: 0px;
}
.aptoenq_question input {  /* 任意の質問 */
  display: inline;
  width: auto;
}
.aptoenq_question label {
  font-weight: normal;
  width: auto;
  display: inline-block;
  margin:5px;
}
.aptoenq_question label span {
  vertical-align: middle;
  font-size: 15px;
}
@media screen and (min-width: 480px) {
  .aptoenq_question label span {
    font-size: 16px;
  }
}
.aptoenq_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; /* box幅にpaddingとborderも含める */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
.aptoenq_question input[disabled] {
  background-color: #F0F0F0;
}
.aptoenq_question input[type="checkbox"] {
  margin: 3px 3px 3px 3px !important;
  border-style: none;
  width: auto;
}
.aptoenq_question input[type="radio"] {
  margin: 3px 3px 0px 3px !important;
  border-style: none;
  width: auto;
}
.aptoenq_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;
}
.aptoenq_question input[type="file"] {
  font-size:16px;
}
@media screen and (min-width: 480px) {
	.aptoenq_question select {
	  font-size:14px;
	}
	.aptoenq_question input[type="file"] {
	  font-size:14px;
	}
}
.aptoenq_question textarea,
 #aptoenqform 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;
}
.aptoenq_question input[type="text"]:focus,
.aptoenq_question textarea:focus,
 #aptoenqform textarea:focus,
 select:focus {
  background:#FFFFDD;
  box-shadow: 0 0 7px #8bade4;
  border:1px solid #8bade4;
  box-shadow: 0;
}

.aptoenq_qa {
  border: none;
  font-size: 110%;
  line-height: 130%;
  margin: 5px 0 0;
  /* border-top:1px dotted #ccc; */
  padding:5px 0 0;
}
.aptoenq_q {
  padding: 13px 20px;
  font-weight: bold;
  border: 1px solid #ccc;
  background-color: #F9F9F9;
  /* border-bottom:1px solid #ccc; */
}
@media screen and (min-width: 480px) {
	.aptoenq_q {
	  font-weight: normal;
	}
}
.aptoenq_a {
  margin: 0 0 30px;
  padding: 10px 0;
}
.aptoenq_choice {
  width: 33%;
  float: left;
}
.aptoenq_br {
  clear: both;
}
.aptoenq_cusinfo {
  font-size: 14px;
  margin-top:40px;
}
.aptoenq_cusinfo input, .aptoenq_cusinfo textarea,
.aptoenq_qa input, .aptoenq_qa textarea {
  color: #333;
  font-size: 16px;
}
@media screen and (min-width: 480px) {
	.aptoenq_cusinfo {
	  font-size: 16px;
	}
	.aptoenq_cusinfo input, .aptoenq_cusinfo textarea,
	.aptoenq_qa input, .aptoenq_qa textarea {
	  color: #333;
	  font-size: 14px;
	}
}
.aptoenq_cusinfo .aptoenq_cusinfo_subj {
  font-weight: bold;
  margin: 40px 0 20px;
  padding: 6px 20px;
  font-size:130%;
  border-left:4px solid #ccc;
}
.aptoenq_cusinfo .aptoenq_cusinfo_warn {
  text-align: left;
  margin: 6px;
  float: none;
}
.aptoenq_cusinfo .aptoenq_cusinfo_item {
    width: 100%;
    font-weight:bold;
	line-height:2;
    margin:20px 0 0;
    padding: 20px 0 0;
    border-top: 1px dotted #ccc;
}
@media screen and (min-width: 480px) {
  .aptoenq_cusinfo .aptoenq_cusinfo_item {
      width: 25%;
      font-weight:normal;
      float: left;
      border-top:1px dotted #ccc;
      padding:20px 0;
      margin:0 0 0;
  }
}
.aptoenq_cusinfo .aptoenq_cusinfo_fm {
    width: 100%;
}
@media screen and (min-width: 480px) {
  .aptoenq_cusinfo .aptoenq_cusinfo_fm {
      width: 75%;
      float: right;
      border-top:1px dotted #ccc;
      padding:20px 0;
  }
}
.aptoenq_cusinfo .aptoenq_cusinfo_warn + .aptoenq_cusinfo_fm {
    border-top:none;
}
.aptoenq_cusinfo .aptoenq_cusinfo_fm_yuubin input {
  width:100px;
}
.aptoenq_cusinfo .aptoenq_cusinfo_fm_tel input,
.aptoenq_cusinfo .aptoenq_cusinfo_fm_fax input {
  width:160px;
}
.aptoenq_cusinfo_msg {
  display: block;
  width:100%;
}

.aptoenq_c {
  text-align: center;
}
.aptoenq_l {
  text-align: left;
}
.aptoenq_r {
  text-align: right;
}
.aptoenq_b {
  font-weight: bold;
}
.aptoenq_red {
  color: red;
}
.aptoenq_readonly {
  color: gray;
}
.aptoenq_check {
  width: 25px;
  height: 20px;
  display: inline-block;
}
.aptoenq_check_overlimit {
  display: none;
}
.aptoenq_check_blank {
  width: 25px;
  height: 20px;
  margin-top: 3px;
  display: inline-block;
}
.aptoenq_overlimit {
  padding-top: 4px;
  color: gray;
}
.aptoenq_h130 {
  line-height: 130%;
}
.aptoenq_h160 {
}

/* popup画面の幅に反映。親要素が position absolute を指定しているため、%指定はできない。 */
#aptoenq_confirm iframe {
  width: 294px;   /* スマホ幅320pxの場合の最大幅 */
  height: 385px;
  overflow: hidden;
  border:none;
}
@media screen and (min-width: 480px) {
  #aptoenq_confirm iframe {
    width: 450px;   /* スマホを横持ちの最少幅480pxの場合の最大幅 */
  }
}
@media screen and (min-width: 600px) {
  #aptoenq_confirm iframe {
    width: 575px;   /* スマホを横持ちの最少幅480pxの場合の最大幅 */
  }
}
#aptoenq_closebutton {
  cursor: pointer;
}
.aptoenq_popup {
  background-color: #FFF;
  text-align: center;
  box-shadow: 3px 3px 3px #777;
}
.aptoenq_popup .aptoenq_popupbutton {
  margin: 10px;
}
.aptoenq_popup div.popupframe {
  border: 1px solid black;
  background-color: #F4F4F4;
}
.aptoenq_popup_title {
  color:#333;
  font-weight: bold;
  font-size: 150%;
  background: #fff;
  border-bottom:1px solid #ccc;
  box-shadow: 3px 3px 3px #777;
  padding: 15px 20px;
}
.aptoenq_grayout {
  background-color: black;
  filter: alpha(opacity=30);
  -moz-opacity: 0.30;
  opacity: 0.30;
}

.aptoenq_msg {
  font-size: 14px;
  text-align: left;
  padding:15px;
}

.aptoenq_cusinfo_exp {
  margin:20px 0 0;
}
.aptoenq_bt_send,
.aptoenq_bt_back {
  width: 100%;
  margin:16px auto;
  position: relative;
  text-align: center;
}
.aptoenq_bt_set button {
  display:inline-block;
  text-decoration: none;
  border: 0px;
  width: 100%;
  font-size: 14px;
  padding:14px 0;
  color: #333;
  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;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.aptoenq_bt_send button {
  background: #ffd464;
  box-shadow: 0 6px #fcb909;
}
.aptoenq_bt_send button:after {
  content: '';
  position: absolute;
  z-index: -1;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.aptoenq_bt_send button:hover {
  box-shadow: 0 4px #fcb909;
  color:#333;
  top: 2px;
}
.aptoenq_bt_send button:active {
  box-shadow: 0 0 #fcb909;
  top: 6px;
}

.aptoenq_bt_back button {
  background: #e4e4e3;
  box-shadow: 0 6px #d2d1d0;
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.aptoenq_bt_back button:after {
  content: '';
  position: absolute;
  z-index: -1;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.aptoenq_bt_back button:hover {
  box-shadow: 0 4px #d2d1d0;
  color:#333;
  top: 2px;
}
.aptoenq_bt_back button:active {
  box-shadow: 0 0 #d2d1d0;
  top: 6px;
}

@media screen and (min-width: 480px) {
  .aptoenq_bt_set {
    margin:0 auto;
  }
  .aptoenq_bt_send,
  .aptoenq_bt_back {
   /* width: 50%;
    float:left; */
    width: auto;
    display: inline-block;
  }
  .aptoenq_bt_send {
   /* text-align:right; */
  }
  .aptoenq_bt_back {
   /* text-align:left; */
  }
  .aptoenq_bt_send button {
    width: auto;
    height:44px;
    padding:0 20px;
    margin-right:10px;
  }
  .aptoenq_bt_back button {
    width: auto;
    height:44px;
    padding:0 20px;
    margin-left:10px;
  }
}