

.demo01 {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	margin:40px auto 0px auto;
}

.demo01 th, .demo01 td	{
	padding-top: 10px; 
	padding-bottom: 10px; 
	padding-left:10px; 
	border: 1px solid #ddd;
	font-size: 90%;
}


.demo01 td {
	background-color : #ffffff;

}




.demo01 .yescheck{
width:200px;
background: url(../../images/check.gif) no-repeat 97% 50%;
background-size: 36px 17px;
background-color: #f9f9f9;
vertical-align:middle;
text-align:left;
padding-left:10px;
}



.demo01 th{
width:200px;
background-color: #f9f9f9;
vertical-align:middle;
text-align:left;
padding-left:10px;
}


.demo01 .submit {
	background-color : #f5f5f4;

}






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

/* フォームサイズ
---------------------------------------------------- */


.formsize {
	width: 898px;
	height: 170px;
	margin:0px auto 0px auto;
	font-size: 90%;
	line-height: 180%;
	border: 1px solid #c8c8c8;
	scrollbar-base-color: #b2bde2;
	background: #ffffff;
	padding:20px;
	margin-bottom:25px;


}

.field_area {
	width: 100%;
	margin: 0px auto 0px auto;
	word-break: break-all;

}

.field_area p {
	font-size: 90%;
	margin-top: 15px;
	margin-bottom: 15px;
}


.field {
	width: 100%;
	margin-left: 0px;
	margin-bottom: 0px;

}


.form_left {
	float: left;
	width: 45%;

}

.form_right {
	float: right;
	width: 45%;
}

.field__label {
  color: #2c8289;
  font-size: 12px;
  opacity: 0;
  padding: 2px 10px;
  pointer-events: none;
  position: absolute;
  text-overflow: ellipsis;
  text-align: left;
  transition: all .2s ease-out;

}

.field--not-empty .field__label {
  opacity: 1;
}

.field__input {
  background-color: #f5f5f5;
  border: 2px solid #e9e9e9;
  color: #333;
  font-size: 14px;
  padding: 10px;
  transition: all .2s ease-out;
  width: 100%;

}

.field--not-empty .field__input {
  padding-bottom: 2px;
  padding-top: 28px;
}


.under {
  background: linear-gradient(transparent 50%, #a8eaff 50%);
}


.red { font-size:10px; font-weight:bold; color:#b73361; margin-left:5px; }

.tx01,.tx02,.tx03,.tx04,.tx05,.tx07,.tx08 {
	border: 1px solid #c8c8c8;
}


.tx01 { width: 150px; height:30px; }
.tx02 { width: 311px; height:30px; }
.tx03 { width: 100%; height: 30px; }
.tx04 { width: 444px; height: 200px; }
.tx05 { width: 65px; height: 30px; }
.tx06 { margin:5px 0 0 0; width: 100%; }
.tx07 { width: 250px; }
.tx08 { width: 100%; height: 200px; font-size: 110%; line-height: 1.6;}
.num { ime-mode: enable; }
.need { background: #fff0c8; }
.black { color: #555555; }


.check_box_area {
	border: 1px solid #e9e9e9;
	padding: 10px;
	font-size: 90%;
	width: 95.5%;
	box-sizing: content-box;
}




.box_comment_form {
	width: 100%;
	box-sizing: content-box;

}

.box_comment_form p {
	font-size: 80%;
	margin-top: 0px;
	margin-bottom: 20px;
}

.submit_area {
	width: 100%;
	text-align: right;
	box-sizing: content-box;
	overflow: hidden;
	margin-bottom: 50px;

}


.contact_comment {
	font-size: 85%;
	margin-top: 15px;
	margin-bottom: 15px;
}


.selectbox-3 {
    display: inline-flex;
    align-items: center;
    position: relative;
}

.selectbox-3::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: #535353;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}

.selectbox-3 select {
    appearance: none;
    min-width: 180px;
    height: 2.8em;
    padding: .4em calc(.8em + 30px) .4em .8em;
    border: 1px solid #d0d0d0;
    border-radius: 3px;
    background-color: #fff;
    color: #333333;
    font-size: 1em;
    cursor: pointer;
}

/******************************************************************************
/* 申し込みボタン設定
******************************************************************************/

.input_area {
	box-sizing: border-box;
	border: solid 1px black;
	width: 100%;
	padding-top: 30px;
	margin-top: 30px;
	margin-bottom: 30px;

	text-align: center;
}


.input_area_in {
	margin: 0 auto 0 auto;
	padding-top : 30px;
	width: 60%;
	text-align: left;
}

/******************************************************************************
/* バッジ
*******************************************************************************/

.sankou-badge, .link-badge {
	padding: 3px 10px;
	margin-right: 8px;
	margin-left: 1px;
	font-size: 80%;
	font-weight: 700;
	color: white;
	border-radius: 3px;
	box-shadow: 0 0 3px #ddd;
	white-space: nowrap;
}

.link-badge {
  background-color: #58ACFA; /*青*/
}

.sankou-badge {
  background-color: #DC3545; /*緑*/
}



/******************************************************************************
/* チェックボックス設定
*******************************************************************************/


.ECM_CheckboxInput {
  padding: 12px 8px;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.ECM_CheckboxInput-Input {
  margin: 0;
  width: 0;
  opacity: 0;
}
.ECM_CheckboxInput:hover > .ECM_CheckboxInput-DummyInput {
  background: #DDDDDD !important;
  border: solid 2px #333333;
}
.ECM_CheckboxInput-Input:focus + .ECM_CheckboxInput-DummyInput {
  background: #DDDDDD !important;
  border: solid 2px #333333;
}
.ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput {
  border: solid 2px #333333;
  background: #FFFFFF;
}
.ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hlY2siPjxwb2x5bGluZSBwb2ludHM9IjIwIDYgOSAxNyA0IDEyIj48L3BvbHlsaW5lPjwvc3ZnPg==") no-repeat center;
  background-size: contain;
}
.ECM_CheckboxInput-DummyInput {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 32px;
  height: 32px;
  border: solid 2px #888888;
  background: #FFFFFF;
  border-radius: 4px;
}
.ECM_CheckboxInput-LabelText {
  margin-left: 12px;
  display: block;
  font-size: 18px;
  font-weight: 700;
	letter-spacing: 1.2px;

}

/******************************************************************************
/* プライバシーポリシー確認
*******************************************************************************/


.box_comment_form {
	margin: 0px auto 0px auto;
	width: 90%;
	text-align: left;
	box-sizing: border-box;/*←全て含めてmin-height:100vhに*/
	line-height: 1.8;
	font-size: 110%;
}





.privacy_box {
	margin: 20px auto 30px auto;
	width: 90%;
	text-align: center;
}

.privacy_box_in {
	margin: 0px auto 0px auto;
	width: 350px;
	text-align: left;
}



/******************************************************************************
/* ボタン
*******************************************************************************/

.btn_submit{
	display: inline-block;
	vertical-align: middle;
	margin: 0px auto 0px auto;
	padding: 6px 25px;
	font-weight: 700;
	font-size: 110%;
	letter-spacing: 0.5pt;
	cursor: pointer;
	text-decoration: none;
	height: 65px;
	box-sizing: border-box;/*←全て含めてmin-height:100vhに*/

} 



/******************************************************************************
/* ボタン
*******************************************************************************/

.submit-btn{
	display: inline-block;
	vertical-align: middle;
	margin: 20px auto 20px auto;
	padding: 6px 25px;
	color: #1A86B1;
	font-weight: 700;
	font-size: 110%;
	letter-spacing: 0.5pt;
	text-decoration: none;
	background-color: #ffffff;
	border: 1px solid #1A86B1;
	cursor: pointer;
	height: 65px;
	transition-duration:0.3s;
    -webkit-transition-duration:0.3s;
    -moz-transition-duration:0.3s;
    -o-transition-duration:0.3s;
    -ms-transition-duration:0.3s;
} 
.submit-btn:hover{
    color: #ffffff;
    background-color: #1A86B1;
}

@media screen and (max-width: 768px){
	p.thankyou {
		display: block;
		margin: 50px auto 0 auto;
		width: 90%;
	}
}

@media screen and (max-width: 768px){
	p.thankyou2 {
		display: block;
		margin: 0 auto 0 auto;
		width: 90%;
	}
}





/******************************************************************************
/* スマートフォンサイズ
*******************************************************************************/


@media screen and (max-width:768px) {


.pcOnly {
	display: none;
}


.spOnly {
	display: block;
}




.field {
	width: 100%;
	margin-left: 0px;
	margin-bottom: 15px;

}


/******************************************************************************
/* プライバシーポリシー確認
*******************************************************************************/


.demo01 {
	border-collapse: collapse;
	border-spacing: 0;
	width: 90%;
	margin:40px auto 0px auto;
}

.demo01 th, .demo01 td{
        display:block;
        width: 100%;
}


.demo01 .yescheck{
	display:block;
	width:100%;
	background: url(../../images/check.gif) no-repeat 97% 50%;
	background-size: 36px 17px;
	background-color: #f9f9f9;
	vertical-align:middle;
	text-align:left;
	padding-left:10px;
}

.tx03 { width: 97%; height: 30px; }
.tx08 { width: 97%; height: 200px; font-size: 100%;}



/******************************************************************************
/* 申し込みボタン設定
******************************************************************************/

.input_area {
	box-sizing: border-box;
	margin: 10px auto 0 auto;
	border: solid 1px black;
	width: 90%;
	padding-top: 30px;
	text-align: center;
}



.box_comment_form {
	margin: 0px auto 0px auto;
	width: 90%;
	text-align: left;
	box-sizing: border-box;/*←全て含めてmin-height:100vhに*/
	line-height: 1.8;
	font-size: 90%;
}





.privacy_box {
	margin: 20px auto 30px auto;
	width: 90%;
	text-align: center;
}

.privacy_box_in {
	margin: 0px auto 0px auto;
	width: 80%;
	text-align: left;
}


.ECM_CheckboxInput-LabelText {
  margin-left: 12px;
  display: block;
  font-size: 12px;
  font-weight: 700;
	letter-spacing: 1.2px;

}




}