/*----------------------------------------------------
common
----------------------------------------------------*/
/*----------------------------------------------------
contents
----------------------------------------------------*/
.menu_inner {
	padding: 0;
	border: unset;
}

#main {
	padding: 30px 0;
	background: #f7f5f1;
	/* form_area */
	/* txt_area */
}
#main h2 {
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
	padding: 10px 0;
	margin: 0 auto;
	color: #fff;
	background-color: #0b6456;
	border-radius: 20px 20px 0 0;
}
#main .contact_txt {
	text-align: center;
	margin: 0 0 2em;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 24px;
}
#main .contact_txt.left {
	text-align: left;
}
#main .contact_txt p {
	margin-bottom: 10px;
	font-size: 1.2em;
	font-weight: bold;
}
#main > div {
	align-self: center;
	overflow: auto;
}
body#input #main > div.inner,
body#check #main > div.inner {
	margin: 0 auto;
	padding: 1em 0 35px;
}
body#thanks #main > div.inner {
	margin: 0 auto;
	padding: 1em 0 85px;
}
#main span.col_red {
	color: #e25d5a;
	font-weight: bold;
}
#main div.col_red {
	position: relative;
	margin: 15px 0 5px;
	padding: 4px 4px 2px 0.5em;
	min-width: 120px;
	max-width: 100%;
	color: #fff;
	background: #e25d5a;
}
#main span.must_icon + br.h15 + div.col_red {
	margin: 0 0 5px;
}
#main div.col_red:before {
	content: "";
	position: absolute;
	top: -20px;
	left: 20px;
	margin: 0;
	border: 10px solid transparent;
	border-bottom: 11px solid #e25d5a;
}
#main .hold_stamp {
	margin: 3em 0 0;
	margin-top: 3em;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	text-align: center;
	color: #4e2d1a;
}
body#thanks #main .hold_stamp {
	margin: 3em 0 2em;
}
#main .hold_stamp span {
	display: inline-block;
	padding: 0 3px;
	font-size: 4em;
	font-weight: bold;
	color: #e60012;
}
#main .form_area .mailform {
	width: 100%;
	margin-top: 2em;
	margin-bottom: 2em;
}
#main .form_area .mailform ::-moz-placeholder {
	color: #aaa;
}
#main .form_area .mailform ::placeholder {
	color: #aaa;
}
#main .form_area .mailform th {
	padding: 10px 0;
	display: block;
	border-bottom: 0;
	font-size: 1.3rem;
}
#main .form_area .mailform th .flex_box {
	text-align: left;
	font-size: 1.4rem;
	border-bottom: 1px solid #242424;
}
#main .form_area .mailform .must_icon {
	font-size: 1.1rem;
	margin-left: 5px;
	padding: 1px 3px 2.5px;
}
#main .form_area .mailform .must_icon.col_red {
	background: #e25d5a;
	color: #fff;
}
#main .form_area .mailform .must_icon.pad_left0 {
	padding: 5px 10px 5px 0;
}
#main .form_area .mailform td {
	padding: 0 0 15px;
	display: block;
	border-bottom: 0;
}
#main .form_area .mailform td .input_ttl {
	font-weight: 500;
}
#main .form_area .mailform td br.h15 {
	display: block;
	content: "";
	margin: 10px 0;
}
#main .form_area .mailform td .stamp_cnt {
	padding: 0.5em 1em 0.5em 0.7em;
	margin: 30px auto 0;
	color: #fff;
	background-color: #3aae36;
	border-radius: 10px;
}
#main .form_area .mailform td .form_ph {
	width: 100%;
	display: block;
	height: auto;
	padding: 0 !important;
	text-align: center !important;
}
#main .form_area .mailform td .clm2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 1em 0 0;
}
#main .form_area .mailform td .clm2 > div {
	flex-basis: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-bottom: 20px;
}
@media screen and (min-width: 500px) {
	#main .form_area .mailform td .clm2 > div {
		flex-basis: 48%;
	}
}
#main .form_area .mailform td .clm2 > div p {
	padding-left: 18px;
	text-indent: -18px;
	display: block;
	margin-bottom: 3px;
	line-height: 24px;
}
#main .form_area .mailform td .clm2 > div span {
	display: inline-block;
	padding: 1em;
	background: #fff;
	border-radius: 25px;
}
#main .form_area .mailform td .clm1 > div p {
	padding-left: 1.2em;
	text-indent: -1.2em;
	display: block;
	margin: 2em 0 1em;
}
#main .form_area .mailform td > div p.note {
	margin: 0.5em 0 2em 1em;
	font-size: 0.9em;
	padding-left: 0;
	text-indent: 0;
}
#main .form_area .mailform td .clm1 > div p span,
#main .form_area .mailform td .clm2 > div p span {
	font-size: 0.7em;
}
#main .form_area .mailform td .clm1 {
	display: block;
	margin: 1em 0 0;
}
#main .form_area .mailform td .clm1_clm2 {
	display: block;
	margin: 1em 0 0;
}
#main .form_area .mailform td .clm1_clm2 > p {
	padding-left: 1.2em;
	text-indent: -1.2em;
	display: block;
	margin-bottom: 3px;
}
#main .form_area .mailform td .clm1_clm2 .clm2 {
	margin: 0 0 2em;
}
#main .form_area .mailform td .clm1 > div {
	margin: 0 0 1.5em;
}
#main .form_area .mailform td input,
#main .form_area .mailform td textarea,
#main .form_area .mailform td select {
	padding: 7px 10px;
	margin-right: 4px;
	border: none;
	border-radius: 5px;
	font-size: 1.3rem;
	vertical-align: middle;
}
#main .form_area .mailform td select {
	font-size: 1.5rem;
}
#main .form_area .mailform td input.txt5 {
	width: calc(50% - 3.5em);
}
@media screen and (min-width: 500px) {
	#main .form_area .mailform td input.txt5 {
		width: calc(50% - 4em);
	}
}
#main .form_area .mailform td input.txt15 {
	width: 80%;
}
#main .form_area .mailform td input.txt30 {
	width: calc(100% - 20px);
}
#main .form_area .mailform td textarea.txt15 {
	width: calc(100% - 20px) !important;
}
#main .form_area .mailform td textarea.txt30 {
	width: calc(100% - 20px) !important;
	max-width: calc(100% - 20px);
}
#main .form_area .policy {
	margin: 30px auto;
}
#main .form_area .policy .flex_box {
	margin-top: 10px;
	display: flex;
	justify-content: space-around;
	align-items: center;
}
#main .form_area .policy .flex_box > p {
	display: inline-block;
	width: calc(100% - 45px);
	padding: 0;
}
#main .form_area .policy .lead {
	text-align: left;
	margin: 2em 0 0;
}
#main .form_area .policy .lead h5 {
	font-weight: bold;
	margin: 0.5em 0 0;
}
#main .form_area .policy .lead ul li {
	text-indent: -1em;
	padding-left: 1em;
}
#main .form_area .policy .lead a {
	color: #4553a3;
	font-weight: bold;
}
#main .form_area .policy .lead a:hover {
	opacity: 0.7;
}
#main .form_area .policy .lead h5.inline {
	display: inline;
}
#main .form_area .policy input {
	margin: 0;
	width: 20px;
	height: 20px;
	vertical-align: top;
}
#main .form_area .policy .mfp_err[style="display: block;"] {
	width: 100%;
}
#main .form_area .mfp_buttons {
	width: 100%;
	display: flex;
	flex-direction: column;
}
#main .form_area .mfp_buttons > button,
#main .form_area .mfp_buttons > a {
	display: block;
	padding: 20px;
	line-height: 1.5em;
	width: 100%;
	max-width: 100%;
	font-size: 1.8rem;
	font-weight: bold;
	border: none;
	border-radius: 15px;
	text-align: center;
	background-color: #e60012;
	color: #ffffff;
	letter-spacing: 0.9px;
}
#main .form_area .mfp_buttons #reverse {
	width: 80%;
	margin: 20px auto 0;
	background-color: #a8a9a9;
}
#main .form_area .mfp_buttons #back {
	margin: 20px auto 0;
	background-color: #0b6456;
}
body#check #main .form_area .mfp_buttons button,
body#check #main .form_area .mfp_buttons a,
body#thanks #main .form_area .mfp_buttons button,
body#thanks #main .form_area .mfp_buttons a {
	flex-basis: 48%;
}
#main .form_area .mfp_buttons button:hover {
	opacity: 0.7;
}
#main .txt_area {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 600;
	padding: 0 0 30px;
}
#main .txt_area .txt {
	margin-bottom: 20px;
}
#main .txt_area .txt.no_display {
	display: none;
}
#main .txt_area img#nichizei {
	display: block;
	width: 30%;
	max-width: 200px;
	margin: 0 auto 20px;
}
#main .txt_area .no_display ~ img#nichizei {
	margin: 40px auto;
}

/*----------------------------------------------------
 style end
----------------------------------------------------*/ /*# sourceMappingURL=form.css.map */

label.error{
    color: #FF0000;
    font-weight: bold;
	display: block;
}
#main .form_area .mfp_buttons > button[disabled] {
	display: block;
	padding: 20px;
	line-height: 1.5em;
	width: 100%;
	max-width: 100%;
	font-size: 1.8rem;
	font-weight: bold;
	border: none;
	border-radius: 15px;
	text-align: center;
	background-color: #5b5a5a;
	color: #1b1b1b;
	letter-spacing: 0.9px;
}
#main .form_area .mfp_buttons button[disabled]:hover {
	opacity: 1.0;
}
