/***** Common Style *****/
input,
select,
textarea {
	padding: 10px;
	border-radius: 2px;
	border: 1px solid #ccc;
}

textarea {
	display: block;
	width: 100%;
	font-size: 16px;
	line-height: 1.5;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", Arial, Helvetica, sans-serif;
}

.copyright {
	text-align: center;
}

/***** Class Style *****/
.nonIME {
	ime-mode: disabled;
}

.formError {
	color: #FF0000;
	font-weight: bold;
	padding-left: 5px;
	margin-top: 2rem!important;
}

.required {
	color: #FF0000;
}

.table {
	width: 100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}

.table th {
	width: 35%;
	padding: 10px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	text-align: left;
	font-weight: bold;
	background: #F8F8F8;
	font-size: 18px;
}

.table td {
	position: relative;
	width: 100%;
	padding: 10px;
	vertical-align: top;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-size: 16px;
}

@media all and (max-width: 768px) {
	.table tr {
		display: grid;
		width: 100%;
	}

	.table th,
	.table td {
		width: 100%;
		font-size: 16px;
	}
}

.table td .info {
	margin-left: 10px;
	font-size: 14px;
}

.table td label {
	font-size: 16px;
}

.table td .address_info {
	font-size: 14px;
}

.addressTable td {
	border-bottom: 1px dotted #ccc !important;
	border-right: none !important;
}

.form-big {
	width: 350px;
}

.privacy-text {
	font-size: 15px;
	margin-bottom: 30px;
}

.privacy-text a {
	color: #0082D0;
	text-decoration: underline;
}

/***** form.html Style *****/
.g-recaptcha {
	margin-top: 20px;
}

.g-recaptcha>div {
	margin: 0 auto;
}

.confirm_button {
	width: 300px;
	padding: 15px 20px;
	border: 1px solid #0A2657;
	background: #fff;
	transition: .4s;
	font-size: 20px;
	margin: 40px auto 0;
	display: block;
	color: #0A2657;
	font-weight: bold;
}

.confirm_button:hover {
	background: #0A2657;
	color: #fff;
}

/***** confirm.html Style *****/
.buttonWrap {
	margin: 20px auto 0 auto;
	text-align: center;
}

.back_button {
	width: 300px;
	margin-top: 40px;
	padding: 15px;
	border: 1px solid #ccc;
	background: #fff;
	transition: .4s;
	font-size: 20px;
	color: #0A2657;
	font-weight: bold;
}

.back_button:hover {
	background: #ccc;
	color: #fff;
}

.submit_button {
	width: 300px;
	margin-top: 40px;
	padding: 15px;
	border: 1px solid #0A2657;
	background: #fff;
	transition: .4s;
	font-size: 20px;
	cursor: pointer;
	color: #0A2657;
	font-weight: bold;
}

.submit_button:hover {
	background: #0A2657;
	color: #fff;
}

@media all and (max-width: 768px) {

	.submit_button,
	.back_button,
	.confirm_button {
		width: 80%;
	}

	.form-big {
		width: 100%;
		font-size: 16px;
	}

	.table td label {
		font-size: 3rem;
	}

	.table td .address_info {
		font-size: 3rem;
	}
}


/***** thanks.html Style *****/
.thanksTxt {
	text-align: center;
	line-height: 1.7em;
	font-size: 14px;
}

.thanksTxt span {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 10px;
	display: inline-block;
}

.toTop {
	color: #000;
	text-align: center;
}

/***** mail_error.html Style *****/
.error_mail {
	text-align: center;
	line-height: 1.7em;
	font-size: 14px;
}

.error_mail span {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 10px;
	display: inline-block;
}

.err-text {
	font-size: 14px;
	color: #FF0000;
}

input[type=radio].hide-radiobtn {
	display: none;
}

.grecaptcha-badge {
	z-index: 9999;
}