@charset "UTF-8";

/*! 2022.12.27 sone */
body {
    color: #333;
	/*font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-family: "Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Meiryo",sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0;
}
p {
	font-size: 14px !important;
	font-weight: normal;
	line-height: 170%;
}
#formWrap {
	width:700px;
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:90%;
}


table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	font-weight:normal;
	background:#efefef;
	text-align:left;
}
p.error_messe{
	margin:5px 0;
	color:red;
}

.lh-2{
	line-height: 2.0;
}
.tx-14{
	font-size:14px !important;
}
.bg-gray {
    background-color: #e6e6e6;
	padding:5px 0 5px 10px;
}
.space_t1{
	margin-top:1rem;
}
.space_t2{
	margin-top:2rem;
}
.wid50{
	width:50%;
}
@media (max-width: 575px) {
	.wid50{
	width:100%;
	}
}
.form-control {
    background: transparent;
    height: auto;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 0;
    padding: 3px 3px;
    font: 400 15px "Open Sans", sans-serif;
    line-height: 1.4;
}
label {
    display: inline-block;
    margin-bottom: .5rem;
    font-size: 14px;
}
.form-check{
	margin-top:0.5em;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	font-weight:normal;
	background:#efefef;
	text-align:left;
}

.btn {
    background-color: #d5dadf;/*e5e8eb*/
    margin: 2rem 1rem;
}
.btn:first-child:active, .btn:first-child:hover, .btn:focus-visible {
    background-color: #ececec;
}
.btn[disabled] {
    opacity: 1.0;
}
/* 入力エラーのスタイル */

input:invalid {
  border: solid 1px red;
}
label {
  /*display: block;*/
  margin: 1px;
  padding: 1px;
}

.field {
  margin: 1px;
  padding: 1px;
}

input:invalid {
  background-color: #ffdddd;
}

/*form:invalid {
  border: 5px solid #ffdddd;
}*/

input:valid {
  background-color: #e6e6fa;
}

/*form:valid {
  border: 5px solid #ddffdd;
}*/

input:required {
  border-color: #800000;
  border-width: 3px;
}

input:required:invalid {
  border-color: #c00000;
}

div.checkbox label input.form-check-input{
  margin-right: 0.2rem;
}
form div.checkbox label{
  margin-right: 1rem;
}
