
/*  FORM LAYOUT
-------------------------------------- */
.form_body {
  font: 14px/24px Helvetica, Arial,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", verdana, sans-serif;
  -webkit-text-size-adjust: none;
  color: #444;
  text-align: left;
  width: 740px;
  margin: 0 auto;
/*
  background: #f0f3f8;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px;
  padding: 60px 70px;*/
}
.form_layout {
  border-top: solid 1px #d8e0ed;
  border-bottom: solid 1px #fff;
  width: 100%;
  position: relative;
}
/*  ITEM LINE
------------------- */
.item_line {
  border-top: solid 1px #fff;
  border-bottom: solid 1px #d8e0ed;
  padding: 10px 0;
  position: relative;
  overflow: hidden;
}
/*  ITEM NAME
------------------- */
.item_name {
  padding: 3px 0 0 0;
  width: 30%;
  float: left;
}
.item_name .must,
.item_name .plural,
.item_name .singular{
  line-height: 18px;
  color: #fff;
  padding: 0 5px;
  float: right;
  font-size: 10px;
  margin: 4px 15px 0 0;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px;
}
.item_name .must { background: #ff9d34; }
.item_name .plural { background: #94bff7; }
.item_name .singular { background: #999999; }
/*  ITEM CONTEN
------------------- */
.item_contents {
  width: 70%;
  float: right;
}
.item_contents_inner {
  padding: 0 0 0 15px;
  border-left: solid 3px #006699;
  overflow: hidden;
}
  .sec_item_line {
    border-top: none;
    padding: 5px 0;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #d8e0ed;
    position: relative;
    overflow: hidden;
  }
  .sec_item_line:first-child { padding: 0 0 5px 0; border-top: none; }
  .sec_item_line:last-child { padding: 5px 0 0 0; border-bottom: none; }

  .sec_item_name {
    padding: 4px 0 0 0;
    width: 22%;
    float: left;
  }
  .sec_item_contents {
    padding: 0;
    border: none;
    width: 78%;
    float: right;
  }
/*  ICON
-------------------------------------- */
.form_layout .wrap {
  position: relative;
}
.form_layout .wrap:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 30px;
  height: 100%;
}
/*  ICON OK
------------------- */
/*icon*/
.form_layout .wrap.valid:after { background: url(./images/icon-ok.png) no-repeat right center; }
/*input color*/
.form_layout .wrap input[type="text"].valid,
.form_layout .wrap.valid input[type="email"].valid,
.form_layout .wrap.valid input[type="tel"].valid,
.form_layout .wrap.valid select,
.form_layout .wrap textarea.valid {
  background: #B5FED1;
  border: 1px solid #4ef388;
}
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #B5FED1 inset;
}
/*  ICON NG
------------------- */
/*icon*/
.form_layout .wrap.error:after { background: url(./images/icon-ng.png) no-repeat right center; }
/*input color*/
.form_layout .wrap.error input[type="text"],
.form_layout .wrap.error input[type="email"],
.form_layout .wrap.error input[type="tel"],
.form_layout .wrap.error select,
.form_layout .wrap.error textarea {
  background: #FDB1B2;
  border: 1px solid #ff8b8e;
}
/*  INPUT TYPE STYLE
-------------------------------------- */
.form_layout input[type=text],
.form_layout input[type="email"],
.form_layout input[type="tel"],
.form_layout textarea {
  padding: 8px;
}
.form_layout input[type="submit"] {
  -webkit-appearance: none;
  border: none;
  cursor: pointer;
}
/*  INPUT TYPE
------------------- */
.form_layout input[type=text],
.form_layout input[type=email],
.form_layout input[type=tel],
.form_layout textarea,
.form_layout select,
.form_layout option {
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  border: solid 1px #ddd;
  display: block;
}
/*  INPUT TYPE FOCUS
------------------- */
.form_layout input[type=text]:focus,
.form_layout input[type=email]:focus,
.form_layout input[type=tel]:focus,
.form_layout textarea:focus,
.form_layout select:focus,
.form_layout option:focus {
  background: #fffdf7;
}
/*  SIZE CLASS
------------------- */
.inputarea1 { width: 220px; }
.inputarea2 { width: 108px; }
.inputarea3 { width: 150px; }
.inputarea4 { width: 330px; }
.inputarea5 { width: 80px; }
.inputarea6 { width: 30px; }
.inputarea7 { width: 122px; }

.textarea1 { width: 440px !important; height: 100px !important; }

/*  BUTTON STYLE
------------------- */
.form_btns {
  overflow: hidden;
  width: 500px;
  margin: 50px auto 0 auto;
  text-align: center;
}
.form_btns .confirm,
.form_btns .send,
.form_btns .edit,
.form_btns .top{
  display: block;
  width: 240px;
  height: 50px;
  cursor: pointer;
  border: none;
  text-indent: -9999px;
}
.form_btns .confirm { background: url(./images/btn_confirm_off.png); margin: 0 auto; }
.form_btns .confirm:hover { background: url(./images/btn_confirm_on.png); }

.form_btns .send { background: url(./images/btn_send_off.png); }
.form_btns .send:hover { background: url(./images/btn_send_on.png); }

.form_btns .edit { background: url(./images/btn_edit_off.png); float: left; }
.form_btns .edit:hover { background: url(./images/btn_edit_on.png); }

.form_btns .top { background: url(./images/btn_top_off.png); margin: 0 auto; }
.form_btns .top:hover { background: url(./images/btn_top_on.png); }

/*  OTHER
------------------- */
div.valid {
  display: none;
}
div.valid.wrap {
  display: block;
}
div.errortext {
  display: none;
  clear: both;
  color: #fa0006;
  background: url(./images/icon_error.png) no-repeat left center;
  padding-left: 20px;
  border: none;
}
.error div.errortext {
  display: none;
  clear: both !important;
  color: #fa0006 !important;
  background: url(./images/icon_error.png) no-repeat left center !important;
  padding-left: 20px !important;
  border: none !important;
  font-size: 14px !important;
}
div.attention {
  display: none;
  font-size: 12px;
  clear: both;
  border-left: 2px solid #ffb0b0;
  padding-left: 10px;
  line-height: 16px;
  color: #7f7f7f;
  margin: 10px 0 0 0;
}
div.attention.errortext {
  background: none;
}
/*  CUSTUM
------------------- */
.check_item_left {
}
.check_item_right {
  margin: 0 0 0 20px;
  width: 235px;
}
.check_item_right input {
}
.gray{
  color: #919191;
}
.thanks{
  text-align: center;
  font-size: 18px;
}
.target_blank{
 color: #2291f4;
 font-size: 12px;
 background: url(./images/icon_target_blank.png) right center no-repeat;
 padding: 0 15px 0 0;
 margin-right:10px;
}
.policy{
  text-align: center;
  margin: 30px 0 0 0 ;
}


	/* コンタクトフォーム用 Start */
	.v4_form_body{
	    padding: 1em 0 0 0;
	}
	.v4_form_body p{
	    margin-bottom: 0;
	}
	.v4_form_body hr {
		margin: 0.1em 0;
		border: 0;
	}
	.v4_form_body input[type='text'] {
    	width: 100%;
	}
	.v4_form_body option{
		font-size: 16px!important;
	}
	.v4_form_body select {
    	width: 100%;
	}
	.v4_form_body h5 {
		font-size: 17px!important;
		font-weight: bold;
		padding: 5px 0 3px 0;
		margin: 0px 0px 7px 0px;
		line-height: 1.3em;
	}
	.v4_form_body span {
		font-size: 16px!important;
		margin: 0.1em 0.3em 0.1em auto;
	}
	/* Contact Form 7のラジオボタンを横並びに */
	.wpcf7-radio .wpcf7-list-item {
		margin-right: 1em;
		display: inline;
	}
	
	/* コンタクトフォーム用 End */
  
  
  


/* お問合せフォーム */
h2#form,
h2#time {
	background: #ddd;
	font-size: 2em;
	font-weight: bold;
	color: #555;
	padding: 0.2em 0;
	margin: 0;
	text-align: center;
	width: 100%;
	float: none;
}
.time_area{
	background: #fff;
	width: 100%;
	padding: 0.5em;
}
.time_body{
	background: #fff;
	padding: 0;
    width: 100%;
    margin: 2em auto 0;
    text-align: center;
    max-width: 740px;
}
.form_area{
	background: #eee;
	width: 100%;
	padding: 0.5em;
}
.form_body{
	background: #eee;
	padding: 0;
}
.v4_form_layout {
    width: 100%;
}
.v4_item_line {
    border-bottom: solid 1px #cccccc;
    padding: 5px 0;
    overflow: hidden;
}
.v4_item_line_no {
    padding: 5px 0;
    overflow: hidden;
}
.v4_item_name {
    padding: 3px 0 0 0;
    width: 30%;
    float: left;
    font-weight: bold;
    font-size: 17px;
}
.v4_item_name span {
    font-weight: normal;
    font-size: 16px;
}
.item_contents {
    width: 70%;
    float: right;
}
.v4_item_contents_inner {
    padding: 0 0 0 15px;
    overflow: hidden;
    color: #333;
}
.v4_form_body p {
    margin-bottom: 0;
}
.form_btns {
    overflow: hidden;
    width: 500px;
	max-width: 100%;
    margin: 15px auto 0 auto;
}
.form_btns .confirm { background: url(../images/top/btn_confirm_off.png); margin: 0 auto; }
.form_btns .confirm:hover { background: url(../images/top/btn_confirm_on.png); }

.form_btns .send { background: url(../images/top/btn_send_off.png); }
.form_btns .send:hover { background: url(../images/top/btn_send_on.png); }

.form_btns .edit { background: url(../images/top/btn_edit_off.png); float: left; }
/*.form_btns .edit:hover { background: url(https://vs-group.jp/startup/wp/wp-content/themes/vs-media/src-nagoya/images/top/btn_edit_on.png); }*/

.form_btns .top { background: url(../images/top/btn_top_off.png); margin: 0 auto; }
.form_btns .top:hover { background: url(../images/top/btn_top_on.png); }

/* フォームのエラーメッセージ */
.wpcf7-not-valid-tip:after {
  content: "。";
}

.wpcf7 input[type=text], .wpcf7 input[type="email"] {
  height: 25px;
  border-radius: 3px;
  border-color: #919191;
  border-width: 1px;
}



@media screen and (max-width: 768px) {
	.form_body{
		max-width: 95%;
		margin: 0 auto;
		line-height: 1.5!important;
	}
	.form_body_inner h5 {
		font-size: 17px!important;
		font-weight: bold;
		padding: 5px 0 3px 0;
		margin: 0px 0px 7px 0px;
		line-height: 1.3em;
     	border-bottom: 1px dotted #000;
	}
	.form_body_inner hr {
		margin: 0.1em 0;
		border: 0;
	}
	.form_body_inner span {
		font-size: 16px!important;
		margin: 0.1em 0.3em 0.1em auto!important;
	}
	.form_body_inner select {
		font-size: 16px!important;
		width: 100%;
	}
	.form_body_inner option {
		font-size: 16px!important;
		line-height: 1.1;
	}
	.form_body_inner p {
		margin-bottom: 0;
	}
	.form_body_inner input {
		max-width: 100%;
	}
	.form_body_inner .wpcf7-list-item {
		width: 100%;
		margin: 0;
	}
	.form_body_inner.wpcf7c-force-hide {
		display: none !important;
	}
	.form_btns{
		margin-top: 1em;
	}
	.form_btns .send {
		background: url(../images/top/btn_send_off.png);
		display: block;
		width: 240px;
		height: 50px;
		cursor: pointer;
		border: none;
		text-indent: -9999px;
		margin: 0 auto;
	}
  
  /* フォームのエラーメッセージ */
  .wpcf7-not-valid-tip {
    font-weight: bold!important;
  }
  .wpcf7-not-valid-tip:before, .wpcf7-not-valid-tip:after {
    content: "※";
  }
}