@charset "utf-8";

/* ====================================== */

.content {
	margin : 50px 0 0 0;
	padding : 50px 0 0 0;
}
span.necessity {
	color : #cc0000;
}
.formContent > header {
	margin-bottom : 16px;
	padding : 30px 0;
	background-color : #ffffff;
}

.wpcf7c-elm-step2 {
	margin-bottom : 24px;
	text-align : center;
}
.formContent .button {
	text-align : center;
}
.formContent .button a,
.formContent .button input[type="button"],
.formContent .button input[type="submit"] {
	display : inline-block;
	font-family : "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium",
	"游ゴシック", "Yu Gothic", sans-serif;
	min-width : 200px;
	padding : 15px 25px;
	cursor : pointer;
	text-decoration : none;
	color : #ffffff;
	border : 1px solid #dddddd;
	border-radius : 8px;
	background-color : #1596bc;
}
.formContent .button input[type="submit"].disabled,
.formContent .button input[type="submit"].disabled:hover {
	background-color : #cccccc;
}
.formContent .button input[type="submit"]:hover {
	background-color : #0a7ea1;
}
.formContent .button input[type="button"].wpcf7c-btn-back {
	margin-right : 15px;
	color : #666666;
	background-color : #eeeeee;
}
.formContent .button input[type="button"].wpcf7c-btn-back:hover {
	background-color : #cccccc;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	padding : 12px;
	text-align : center;
	border : none;
	background-color : #fff2d1;
}
.wpcf7 form.sent .wpcf7-response-output {
	display : none !important;
}
input:-internal-autofill-selected {
	color : -internal-light-dark(black, white) !important;
	background-color : transparent !important;
	background-image : none !important;

	appearance : menulist-button;
}
.formContent dl {
	display : flex;
	flex-wrap : wrap;
	        box-sizing : border-box;
	width : 100%;
	margin-bottom : 16px;
	padding : 30px;
	border : 1px solid #cccccc;
	border-radius : 10px;
	border-spacing : 0;
	background-color : #f1f1f1;

	-webkit-box-sizing : border-box;
	   -moz-box-sizing : border-box;
}
.formContent dl dt {
	font-family : "GenShin_regular_JIS2";
	flex-basis : 20%;
	padding : 30px;
	text-align : left;
	vertical-align : mid180px;
}
.formContent dl dd {
	flex-basis : 61%;
	flex-grow : 1;
	padding : 30px;
}
.formContent dl dt:last-of-type,
.formContent dl dd:last-of-type {
	border-bottom : none;
}
.formContent dl dd input,
.formContent dl dd select,
.formContent dl dd textarea {
	min-width : 20em;
	max-width : 100%;
	padding : 5px;
}
.formContent dl dd.email input:first-child,
.formContent dl dd.address input:first-child {
	margin-bottom : 5px;
}
.formContent .comment textarea {
	min-height : 6em;
}
.formContent .agreement {
	margin-bottom : 24px;
	text-align : center;
}
.formContent .agreement br {
	display : none;
}
.formContent .agreement a {
	color : #1596bc;
}

.formContent .errList {
	margin-bottom : 24px;
	padding : 24px;
	color : #cc0000;
	border : 1px solid #e8b6b6;
	background-color : #fff1f1;
}
.formContent .complete {
	margin-bottom : 24px;
	padding : 24px;
	border : 1px solid #dddddd;
}
input.wpcf7c-conf,
select.wpcf7c-conf,
textarea.wpcf7c-conf {
	color : black;
	border : none;
	background-color : transparent;

	appearance : none;
}
input:-webkit-autofill {
	-webkit-box-shadow : 0 0 0 1000px #f1f1f1 inset;
}

/* --- for pc --- */
@media screen and (min-width: 1024px) {
	textarea.long_form {
		width : 95%;
		padding : 0.5em;
	}
}

/* --- for mobile --- */
@media screen and (max-width: 767px) {
	textarea.long_form {
		        box-sizing : border-box;
		width : 100%;
		padding : 0.5em;

		-webkit-box-sizing : border-box;
		   -moz-box-sizing : border-box;
	}

	.formContent {
		margin : 0 20px;
	}
	.formContent dl {
		display : block;
		border-radius : 10px;
	}
	.formContent dl dt {
		padding : 10px 0;
		background-color : #f3f3f3;
	}
	.formContent dl dd {
		display : flex;
		flex-wrap : wrap;
		padding : 10px 0;
	}
	.formContent dl dd span {
		display : flex;
		flex-grow : 1;
	}
	.formContent dl dd input,
	.formContent dl dd select,
	.formContent dl dd textarea {
		width : 100%;
		min-width : auto;

		max-width  : 100%;
	}
	.formContent dl dd.email input,
	.formContent dl dd.address input {
		flex-basis : 51%;
	}
	.formContent dl dd input {
		flex-basis : 1%;
		flex-grow : 1;
	}
	.formContent dl dd input:first-of-type {
		margin-left : 0;
	}
	.formContent dl dd input:last-of-type {
		margin-right : 0;
	}
	.formContent dl dd textarea {
		flex-basis : 1%;
		flex-grow : 1;
		height : 5em;
	}
	.formContent dl dt:last-of-type,
	.formContent dl dd:last-of-type {
		border-bottom : none;
	}
	.formContent .agreement * {
		font-size : 3.2vw;
		margin-bottom : 5px;
	}
	.formContent .agreement *:last-child {
		margin-bottom : 0;
	}
	.formContent .agreement br {
		display : block;
	}
	.formContent .button {
		display : flex;
		flex-direction : column;
	}
	.formContent .button a,
	.formContent .button input[type="submit"] {
		flex-grow : 1;
		margin-bottom : 10px;
	}
}

/* --- for tablet --- */
@media screen and (min-width: 768px) and (max-width: 1023px) {
}
