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

Form

-------------------------------- */
.form_set{
	width:800px;
	margin: 0px auto 0px auto;
	text-align:center;
	color:#000;
}
.form_set select{
	/* select要素のデザインを無効にする */
	-webkit-appearance: none;/* (Google Chrome、Safari用) */
	appearance: none;		/* 標準のスタイルを無効にする */ 
}
::-ms-expand {	
	/* （IE用） */
	display: none;
}
.formw100{
	width:100%;
}
.formw250{
	width:250px;
	margin: 10px 0px 10px 0px;
}
.formw300{
	width:320px;
	float:right;
	margin:0px 0px 10px 0px;
}
.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;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  background-color: #ffffff;
  max-width:500px;
  box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.3)inset;
}
.form_set input,.form_set textarea{
	width:auto;
}
@media all and (-ms-high-contrast: none){
	.form_set input{
		max-width:220px;
	}
}
.form_set select:focus{
	outline: none;
  border-color: #333333;
  background-color: #ffffff;
}
.form_set input:focus,.form_set textarea:focus{
	outline: none;
  border-color: #333333;
  background-color: #ffffff;
  box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.3)inset;
}
.form_set select{
	width:100%;
	padding: 8px 36px 5px 10px;
	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;
  min-width:200px;
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
}
.fw400{
	width:400px;
}
.fw250{
	width:250px;
}
.fwr250{
	float:right;
	width:250px;
}
.fw120{
	width:120px;
	min-width:120px;
}
.fw150{
	width:150px;
	min-width:150px;
}
.fw200{
	width:200px;
	min-width:200px;
}
.fw45{
	width:45%;
	min-width:45%;
}
.fw30{
	width:30%;
	min-width:30%;
}

.frub{
	margin: 0px 10px 0px 10px;
}
.frub_res{
	margin: 0px 10px 0px 10px;
}
.fs_box{
	padding: 0px 0px 0px 0px;
  	margin: 0px 0px 15px 0px;
}
.fsb_inbl{
	display:inline-block;
	margin:0px 15px 15px 15px;
}

input.webfont,textarea.webfont {
	font-family: 'webfont';
	font-weight : 900;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}
.webfont::-webkit-input-placeholder {
    color: #cccccc;
}
.webfont:-ms-input-placeholder {
    color: #cccccc;
}
.webfont::-placeholder {
    color: #cccccc;
}
.error::-webkit-input-placeholder {
    color: #ff0000;
}
.error:-ms-input-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;
  -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%);
  -ms-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 #4d4d4d;
  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: #E16255;
  background-position: center center;
  background-repeat: no-repeat;
  box-shadow: 0 0 5px rgba(0, 0, 0, 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;
  animation: cd-bounce 0.3s;
}
.form_set br.fsbr{
	display:none;
}
.form_set input[type="checkbox"] + label.f_satei{
  font-size:2.0rem;
  color:#004da4;
  font-weight:bold;
}
@media screen and (max-width:768px){
	.form_set input[type="checkbox"] + label.f_satei{
      font-size:1.6rem;
    }
}
@media screen and (max-width:640px){
	.form_set input[type="checkbox"] + label.f_satei{
       font-size:2.0rem;
    }
}
.form_set input[type="submit"],.form_set input[type="reset"],.form_set input[type="button"],.form_set button {
  /* button style */
	display: inline-block;
    padding: 7px 10px;
    text-decoration: none;
    background: #444;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
    cursor: pointer;
    border-radius: 5px;
    border: none;
}
.form_set input[type="submit"]:hover,.form_set input[type="reset"]:hover,.form_set input[type="button"]:hover,.form_set button:hover {
  /* button style */
	background: #E16255;/*ボタン色*/
    color: #fff;
}
.form_set input[type="reset"],.form_set input[type="submit"].kakunin,.form_set input[type="submit"].soushin,.form_set input[type="button"].shusei{
	padding:5px 20px 5px 20px;
}
.form_set input[type="reset"] > span.f_icon:before,.form_set input[type="submit"].kakunin span.f_icon:before,.form_set input[type="submit"].soushin span.f_icon:before,.form_set input[type="button"].shusei span.f_icon:before,.form_set input[type="submit"].search span.f_icon:before{
	font-family: "webfont";
	content: "\e930";
	font-weight : 900;
	position:absolute;
	top:0px;
	left:0px;
	margin:0px 10px 0px 0px;
}
.form_set input[type="reset"] > span.f_icon:before{
	content: "\f46c";
}
.form_set input[type="submit"].kakunin span.f_icon:before{
	content: "\f46c";
}
.form_set input[type="submit"].soushin span.f_icon:before{
	content: "\f658";
}
.form_set input[type="button"].shusei span.f_icon:before{
	content: "\f044";
}
.form_set input[type="submit"].search span.f_icon:before{
	content: "\f0ca";
}
.form_set input[type="submit"].base_btn{
	display: inline-block;
    padding:16px 60px 14px 60px;
    text-decoration: none;
    background: #efefef;/*ボタン色*/
    color: #000;
	font-size:1.6rem;
	font-weight:500;
    box-shadow: 0px 0px 10px 2px #e2e2e2;
	cursor:pointer;
	border-radius:18px;
}
.form_set [required] {
  background: url("../images/form/cd-required.svg") no-repeat top right;
  background-color:#ffffff;
}
.form_set .error {
  border-color: #e94b35 !important;
}
.form_set .error select {
  border-color: #e94b35 !important;
}
#main p.form_ktex{
	font-size:1.8rem;
	color:#000;
	font-weight:700;
	margin:0px 0px 20px 0px;
	line-height:150%;
	padding:0px;
	text-align:left;
}
.mycheck{
	position:absolute;
	bottom:120px;
	right:20px;
	width:20px;
	height:30px;
	background:none;
	cursor:pointer;
	border:none;
	z-index:99;
}
@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 20px auto;
		float: none;
	    }
		.form_set{
	    width:100%;
	    margin: 0px 0px 0px 0px;
	}
	.mycheck{
		width:20px;
	}
}
@media screen and (max-width:480px){
    .fsm{
	    width:20px;
	    margin: 0px 0px 0px 0px;
    }
    .form_set fieldset {
  	margin:10px 0px 0px 0px;
	}
     .formw300{
     	float:none;
	    width:320px;
	    margin: 10px auto 10px auto;
	    }
    .form_set select,.form_set textarea{
	width:100%;
	margin-bottom:5px;
	}
	 .form_set input[type="submit"],.form_set input[type="button"],.form_set input[type="reset"]{
	width:auto;
	}
	.form_set br.fsbr{
	display:block;
	}
     .form_set input[name="zip1"],.form_set input[name="zip2"]{
    width:45%;
    margin-bottom:5px;
    }
	.fw400{
	    width:100%;
    }
	
	.fw250{
	    width:100%;
    }
    .fw120{
	    width:auto;
    }
    .fw150{
	    width:80%;
    }
    .fw200{
	    width:80%;
    }
    .fw30{
	width:47%;
	}
     .fw45{
    width:100%;
    }
    .frub{
	    margin: 10px 0px 10px 0px;
    }

    .form_set input{
		width:100%;
		max-width:350px;
		margin-bottom:5px;
	}
	.form_set .fcr_box td span{
     display:none;
	}
}
@media screen and (max-width:420px){
	.fwr250{
		float:left;
		width:auto;
	}
	.form_set input[type="submit"],.form_set input[type="reset"],.form_set input[type="button"],.form_set button {
		padding: 8px 15px;
		border-radius:7px;
	}
}
@media screen and (max-width:360px){
	.form_set input{
	    max-width:300px;
	    }
}
@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;
    }
     .form_set input{
	    max-width:280px;
	    }
	.fw30{
	width:100%;
	}
}
@page {
  size: A4;
  margin: 0;
}
@media print {
  #header2,#header_smp{display:none;}
	#foot_contents{display:none;}
	#foot_banner{display:none;}
	#footer{display:none;}
	label.side_open{display:none;}
	#menu{display:none;}
	#main{width:1000px;margin:0px 100px 0px 100px;}
}