@charset "UTF-8";
/* CSS Document */

/* input要素のスタイルをリセット */
.form-content input {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.form-content input[type="text"] {
	display: inline-block;

	width: 100%;
	max-width: 240px;

	font-size: 1.0rem;
	line-height: 1.75em;

	box-sizing: border-box;
	padding: 5px;
	border: solid 1px #aaa;

	background-color: #fff;
	color: #000;

	border-radius: 2.5px;
}

.form-content input[type="email"] {
	display: block;

	width: 100%;
	max-width: 480px;

	font-size: 1.0rem;
	line-height: 1.75em;

	box-sizing: border-box;
	padding: 5px;
	border: solid 1px #aaa;

	background-color: #fff;
	color: #000;

	border-radius: 2.5px;
}

.form-content input[type="tel"] {
	display: block;

	width: 100%;
	max-width: 240px;

	font-size: 1.0rem;
	line-height: 1.75em;

	box-sizing: border-box;
	padding: 5px;
	border: solid 1px #aaa;

	background-color: #fff;
	color: #000;

	border-radius: 2.5px;
}

/* select要素のスタイルをリセット */
.form-content select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	border: 0;
	margin: 0;
	padding: 0;
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	box-sizing: content-box;
}

/* select要素のスタイルを再設定 */
.form-content select {
	display: block;

	width: 100%;
	max-width: 240px;

	font-size: 1.0rem;
	line-height: 1.75em;

	box-sizing: border-box;
	padding: 5px;
	border: solid 1px #aaa;

	background-color: #fff;
	color: #000;

	border-radius: 2.5px;

	background-image: url("../images/icon-arrow-down-select.webp");
	background-repeat: no-repeat;
	background-size: 10px;
	background-position: center right 10px;
}

.form-content div.ans ul.date {
	display: flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;

	width: 100%;
}

.form-content div.ans ul.date li {
	display: block;
	width: 110px;

	box-sizing: border-box;
	padding-right: 30px;

	position: relative;
}

.form-content div.ans ul.date li.year:after {
	display: block;
	content: "年";

	width: 20px;
	height: 20px;

	font-size: 0.8rem;
	line-height: 20px;

	text-align: center;

	position: absolute;
	top: 0;
	bottom: 0;
	right: 5px;

	margin: auto 0;
}

.form-content div.ans ul.date li.month:after {
	display: block;
	content: "月";

	width: 20px;
	height: 20px;

	font-size: 0.8rem;
	line-height: 20px;

	text-align: center;

	position: absolute;
	top: 0;
	bottom: 0;
	right: 5px;

	margin: auto 0;
}

.form-content div.ans ul.date li.day:after {
	display: block;
	content: "日";

	width: 20px;
	height: 20px;

	font-size: 0.8rem;
	line-height: 20px;

	text-align: center;

	position: absolute;
	top: 0;
	bottom: 0;
	right: 5px;

	margin: auto 0;
}

/* textarea要素のスタイルをリセット */
.form-content textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
	resize: vertical;
}

/* textarea要素のスタイルを再設定 */
.form-content textarea {
	display: block;

	width: 100%;
	max-width: 480px;
	min-height: 120px;

	font-size: 1.0rem;
	line-height: 1.75em;

	box-sizing: border-box;
	padding: 5px;
	border: solid 1px #aaa;

	background-color: #fff;
	color: #000;

	border-radius: 2.5px;
}

.form-content div.ans ul.judge li {
	display: block;

	box-sizing: border-box;
	padding: 10px 0;
}

.form-content div.ans ul.judge li span.note {
	font-weight: bold;

	font-size: 0.8rem;
	line-height: 30px;
}

.form-content div.ans ul.judge li label {
	display: inline-block;

	/*width: 60px;*/
	/*height: 30px;*/

	text-align: center;

	font-size: 0.8rem;
	line-height: 30px;

	margin: 0 2.5px;

	/*background-color:#fff;*/
	color: #000;

	border-radius: 50px;

	position: relative;

	box-sizing: border-box;
	padding-left: 22px;
}

.form-content div.ans ul.judge li label:hover {
	cursor: pointer;
}

.form-content div.ans ul.judge li label:before {
	display: block;
	content: "";

	width: 20px;
	height: 20px;

	box-sizing: border-box;
	border: solid 1px #888;

	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;

	margin: auto 0;

	border-radius: 50px;

	background-color: #fff;
	color: #000;
}

.form-content div.ans ul.judge li label:after {
	display: none;
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	top: 0;
	left: 3px;
	bottom: 0;
	box-sizing: border-box;
	margin: auto 0;
	background-color: #ff3e9b;
	color: #fff;
	border-radius: 50px;
}

.form-content div.ans ul.judge li input[type="radio"]:checked+label:after {
	display: block;
}

.form-content div.row p.btn-submit {
	width: 100%;

	text-align: center;
}

.form-content div.row p.btn-submit input[type="submit"] {
	display: inline-block;
	width: 240px;

	font-size: 1.0rem;
	line-height: 50px;
	font-weight: bold;

	text-align: center;

	background-color: #ff3e9b;
	color: #fff;

	margin: 5px;

	border-radius: 5px;
}

.form-content div.row p.btn-submit input[type="submit"]:hover {
	opacity: 0.8;
	cursor: pointer;
}

.form-content div.row p.btn-submit input[type="reset"] {
	display: inline-block;
	width: 240px;

	font-size: 1.0rem;
	line-height: 50px;
	font-weight: bold;

	margin: 5px;

	text-align: center;

	background-color: #ccc;
	color: #444;

	border-radius: 5px;
}

.form-content div.row p.btn-submit input[type="reset"]:hover {
	opacity: 0.8;
	cursor: pointer;
}