/* -------------------------------- 

Form

-------------------------------- */
.form_set{
	width:600px;
	margin: 0px auto 0px auto;
}
.form_set select{
	/* select要素のデザインを無効にする */
	-webkit-appearance: none;/* (Google Chrome、Safari用) */
	-moz-appearance: none;	/* (Firefox用) */
	appearance: none;		/* 標準のスタイルを無効にする */ 
}
::-ms-expand {	
	/* （IE用） */
	display: none;
}
.formw300{
	width:320px;
	margin: 10px 0px 10px 440px;
}
.formtex{
	float:left;
	width:70px;
	margin: 15px 0px 0px 0px;
}
.form_set fieldset {
  margin:10px 10px 0px 10px;
}
.form_set fieldset:after{
  display:block;
  clear:both;
}
.form_set input,.form_set textarea,.form_set select{
	display: inline-block;
	box-sizing: border-box;
	padding: 10px 8px 8px 8px;
  border: 1px solid #cfd9db;
  background-color: #ffffff;
  border-radius: .25em;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.08);
  font-size:1.8rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  background-color: #ffffff;
  max-width:500px;
}
.form_set input,.form_set textarea{
	width:auto;
}
.form_set input:focus,.form_set textarea:focus,.form_set select:focus{
	outline: none;
  border-color: #333333;
  background-color: #ffffff;
  box-shadow: 0 0 5px rgba(44, 151, 222, 0.2);
}
.form_set select{
	width:100%;
	padding: 8px 5px 5px 36px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
	  cursor: pointer;
}
.form_select{
  /* select element wapper */
  display: inline-block;
  position: relative;
  width:auto;
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
}
.fw400{
	width:400px;
}
.fw250{
	width:250px;
}
.fwr250{
	float:right;
	width:250px;
}
.fw120{
	width:120px;
}
.fw30{
	width:30%;
}
.frub{
	margin: 0px 10px 0px 10px;
}
.fs_box{
	padding: 0px 0px 0px 0px;
  	margin: 0px 0px 15px 0px;
}
.form_select::after {
  /* プルダウン用矢印 */
  position: absolute;
  z-index: 1;
  right: 16px;
  top: 50%;
  margin-top: -13px;
   margin-left: -50px;
 content: '\f0dd';
  color: #FC7F2F;
  font-size:2.0rem;
  font-family: fontAwesome;
  pointer-events: none;
}
.form_select::before {
  /* プルダウン用リストアイコン */
  position: absolute;
  top:50%;
  left:60px;
  margin-top: -9px;
  margin-left: -50px;
  content: '\f0ca';
  color: #cccccc;
  font-size:2.0rem;
	font-family: fontAwesome;
	pointer-events: none;
}
input.font-awesome,textarea.font-awesome {
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.font-awesome::-webkit-input-placeholder {
    color: #cccccc;
}
.font-awesome:-ms-input-placeholder {
    color: #cccccc;
}
.font-awesome::-moz-placeholder {
    color: #cccccc;
}
.font-awesome::-placeholder {
    color: #cccccc;
}
.error::-webkit-input-placeholder {
    color: #ff0000;
}
.error:-ms-input-placeholder {
    color: #ff0000;
}
.error::-moz-placeholder {
    color: #ff0000;
}
.error::-placeholder {
    color: #ff0000;
}

.form_set .fcr_box table {
 	text-align:left;
	 margin:0px 0px 0px 0px;
	padding:10px 0px 0px 0px;
}
.form_set .fcr_box td {
  /* wrapper for radio and checkbox input types */
  display: inline-block;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 0 15px 16px 0;
  float: left;
  line-height:140%;
}
.form_set input[type=radio],
.form_set input[type=checkbox] {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: 2;
  cursor:pointer;
}
.form_set input[type="radio"] + label,
.form_set input[type="checkbox"] + label {
  padding-left:30px;
  cursor:pointer;
  font-size:1.6rem;
}
.form_set input[type="radio"] + label::before,
.form_set input[type="radio"] + label::after,
.form_set input[type="checkbox"] + label::before,
.form_set input[type="checkbox"] + label::after {
  /* custom radio and check boxes */
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -11px;
  width:20px;
  height:20px;
  cursor:pointer;
}
.form_set input[type="radio"] + label::before,
.form_set input[type="checkbox"] + label::before {
  border: 1px solid #cfd9db;
  background: #ffffff;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.08);
}
.form_set input[type="radio"] + label::before,
.form_set input[type="radio"] + label::after {
  border-radius: 50%;
}
.form_set input[type="checkbox"] + label::before,
.form_set input[type="checkbox"] + label::after {
  border-radius: .25em;
}
.form_set input[type="radio"] + label::after,
.form_set input[type="checkbox"] + label::after {
   /*background-color: #2c97de;*/
   background-color: #FC7D2C;
  background-position: center center;
  background-repeat: no-repeat;
  box-shadow: 0 0 5px rgba(44, 151, 222, 0.4);
  display: none;
}
.form_set input[type="radio"] + label::after {
  /* custom image for radio button */
  background-image: url("../images/form/cd-icon-radio.svg");
}
.form_set input[type="checkbox"] + label::after {
  /* custom image for checkbox */
  background-image: url("../images/form/cd-icon-check.svg");
}
.form_set input[type="radio"]:focus + label::before,
.form_set input[type="checkbox"]:focus + label::before {
  /* add focus effect for radio and check buttons */
  box-shadow: 0 0 5px rgba(44, 151, 222, 0.6);
}
.form_set input[type="radio"]:checked + label::after,
.form_set input[type="checkbox"]:checked + label::after {
  display: block;
}
.form_set input[type="radio"]:checked + label::before,
.form_set input[type="radio"]:checked + label::after,
.form_set input[type="checkbox"]:checked + label::before,
.form_set input[type="checkbox"]:checked + label::after {
  -webkit-animation: cd-bounce 0.3s;
  -moz-animation: cd-bounce 0.3s;
  animation: cd-bounce 0.3s;
}
.form_set input[type="submit"],.form_set input[type="reset"],.form_set input[type="button"] {
  /* button style */
  border: none;
   background: #ff8222;
  border-radius: .25em;
  padding: 16px 20px;
  color: #ffffff;
  font-weight: bold;
  cursor: pointer;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  margin:10px auto 10px auto;
}
.form_set input[type="reset"],.form_set input[type="button"] {
  margin:10px 10px 10px auto;
}
.form_set input[type="submit"]:focus,.form_set input[type="reset"]:focus,.form_set input[type="button"]:focus {
  outline: none;
  background: #2b3e51;
}
.form_set input[type="submit"]:active,.form_set input[type="reset"]:active,.form_set input[type="button"]:active {
  -webkit-transform: scale(0.9);
  -moz-transform: scale(0.9);
  -ms-transform: scale(0.9);
  -o-transform: scale(0.9);
  transform: scale(0.9);
}
.form_set [required] {
  background: url("../images/form/cd-required.svg") no-repeat top right;
}
.form_set .error {
  border-color: #e94b35 !important;
}
#main p.form_ktex{
	font-size:1.6rem;
	color:#333333;
	font-weight:bold;
	margin:0px 0px 0px 0px;
	line-height:150%;
	padding:0px;
}
.mycheck{
	position:absolute;
	bottom:10px;
	left:88%;
	width:20px;
	height:30px;
	background:none;
	cursor:pointer;
	border:none;
	z-index:999;
}
@media screen and (max-width:768px){
	 .formw300{
	    width:320px;
	    margin: 10px 0px 10px 420px;
	    }
}
@media screen and (max-width:640px){
	 .formw300{
	    width:320px;
	    margin: 10px auto 10px auto;
	    }
}
@media screen and (max-width:480px){
	.form_set{
	    width:100%;
	    margin: 0px auto 0px auto;
    }
     .formw300{
	    width:320px;
	    margin: 10px auto 10px auto;
	    }
    .form_set input,.form_set textarea,.form_set select{
	width:100%;
	margin-bottom:5px;
	}
	.fw400{
	    width:100%;
    }
	
	.fw250{
	    width:100%;
    }
    .fw120{
	    width:80%;
    }
    .fw30{
	width:100%;
	}
    .frub{
	    margin: 0px 10px 0px 10px;
    }
    .form_select::after {
  /* プルダウン用矢印 */
      margin-top: -16px;
    }
    .form_select::before {
      /* プルダウン用リストアイコン */
      margin-top: -12px;
    }
}
@media screen and (max-width:320px){
	 .formw300{
	 display:block;
	    width:250px;
	    margin: 10px 0px 10px 0px;
	    }
	.formtex{
	float:none;
	    margin: 15px auto 0px auto;
	    text-align:center;
    }
    .fwr250{
    	float:none;
	    width:90%;
	    margin: 10px 0px 10px 0px;
    }
}