@charset "utf-8";
/* PC ================================================== */
@media all and (min-width:960px){
#form_details {
	width: 100%;
}
	.form_details--inner {
		width: 100%;
	}
		.form-headarea {
			width: 100%;
			height: auto;
			position: relative;
		}
			.form-headarea img {
				width: 100%;
				height: auto;
			}
			.form-headarea-txt {
				width: 90%;
				max-width: 1200px;
				font-size: 28px;
				line-height: 1.0;
				letter-spacing: .2em;
				color: #4D2D26;
				position: absolute;
				top: 40px;
				left: 50%;
				transform: translate(-50%,0%);
				-webkit-transform: translate(-50%,0%);
			}
				.form-headarea-txt small {
					font-size: 13px;
					letter-spacing: .3em;
				}

		.form-container {
			width: 90%;
			max-width: 800px;
			padding: 75px 0px 70px;
			margin: auto auto;
		}
			.form-container form {
				width: 100%;
			}
				.form-list-container {
					width: 100%;
					max-width: 600px;
					margin: auto auto;
				}
					.form-list {
						width: 100%;
					}
						.form-item {
							width: 100%;
							margin: auto auto 25px;
						}
							.form-item_heading {
								width: 100%;
								padding: 7px 0px;
								margin: auto auto 7px;
								display: flex;
								justify-content: flex-start;
								align-items: center;
								font-weight: 400;
								line-height: 1.0;
								letter-spacing: .1em;
							}
								.form-item_heading label {
									margin-right: 10px;
									font-size: 16px;
								}
									.form-item_heading label span {
										font-size: 12px;
										margin-left: 8px;
									}
								.mandatory {
									padding: 4px 6px;
									background-color: #4D2D26;
									font-size: 10px;
									text-align: center;
									color: #ffffff;
									position: relative;
									top: 1px;
								}
							.form-item_inputbox {
								width: 100%;
							}
								.form-item_inputbox input[type=text] {
									width: 100%;
									padding: 10px 15px;
									background-color: #F0F0F0;
									border: none;
									outline: none;
									font-size: 14px;
									letter-spacing: .08em;
								}
								.form-item_inputbox textarea {
									width: 100%;
									padding: 10px 15px;
									background-color: #F0F0F0;
									border: none;
									outline: none;
									font-size: 14px;
									line-height: 1.6;
									letter-spacing: .08em;
								}

							.form-item_inputbox.radiobox {
								padding: 8px 0px;
								display: flex;
								justify-content: flex-start;
								align-items: center;
							}
								.radiobox input[type=radio] {
									display: none;
								}
								.radiobox label.radio {
									display: block;
									padding: 5px 0px 5px 30px;
									margin-right: 35px;
									font-size: 14px;
									line-height: 1.0;
									position: relative;
									cursor: pointer;
								}
								.radiobox label.radio:before {
									content: '';
									width: 18px;
									height: 18px;
									background-color: #F0F0F0;
									border-radius: 50%;
									position: absolute;
									top: 52%;
									left: 9px;
									transform: translate(-50%,-50%);
									-webkit-transform: translate(-50%,-50%);
								}
								.radiobox label.radio:after {
									content: '';
									width: 10px;
									height: 10px;
									background-color: #4D2D26;
									border-radius: 50%;
									position: absolute;
									top: 52%;
									left: 9px;
									transform: translate(-50%,-50%);
									-webkit-transform: translate(-50%,-50%);
									opacity: 0;
									transition: .2s;
									-webkit-transition: .2s;
									pointer-events: none;
								}
								.radiobox input[type="radio"]:checked + label.radio:after {
									opacity: 1;
								}

				.rules-container {
					width: 100%;
					max-width: 600px;
					margin: auto auto;
				}
					.rules-container_inner {
						width: 100%;
					}
						.rules-container_heading {
							width: 100%;
							padding: 7px 0px;
							margin: auto auto 7px;
							font-size: 16px;
							font-weight: 400;
							line-height: 1.0;
							letter-spacing: .1em;
						}
						.rules-container_details {
							width: 100%;
							height: 200px;
							padding: 15px;
							margin: auto auto 50px;
							border: solid 1px #E4E4E4;
							background-color: #ffffff;
							overflow: scroll;
							font-size: 14px;
							font-weight: 400;
							line-height: 1.9;
						}
						.rules-check {
							width: 100%;
							text-align: center;
						}
							.rules-check input[name=agree]{
								display: none;
							}
							.rules-check label.rules {
								padding: 5px 0px 5px 30px;
								margin-right: 35px;
								position: relative;
								pointer-events: none;								
							}
							.rules-check label.rules:before {
								content: '';
								width: 18px;
								height: 18px;
								background-color: #ffffff;
								border: solid 1px #4D2D26;
								position: absolute;
								top: 52%;
								left: 9px;
								transform: translate(-50%,-50%);
								-webkit-transform: translate(-50%,-50%);
								pointer-events: auto;
								cursor: pointer;
							}
							.rules-check label.rules:after {
								content: "\f00c";
								font-family: "Font Awesome 5 Pro";
								font-size: 13px;
								font-weight: 400;
								position: absolute;
								top: 55%;
								left: 9px;
								transform: translate(-50%,-50%);
								-webkit-transform: translate(-50%,-50%);
								opacity: 0;
								transition: .2s;
								-webkit-transition: .2s;
								pointer-events: none;
							}
							.rules-check input[name="agree"]:checked + label.rules:after {
								opacity: 1;
							}
							.rules-check label.rules a {
								display: inline-block;
								color: #1A1311;
								border-bottom: solid 1px #1A1311;
								pointer-events: auto;
							}
							.rules-check label.rules a:hover {
								color: #4D2D26;
							}

				.submit-container {
					width: 100%;
					margin: 80px auto auto;
					display: flex;
					justify-content: space-between;
					align-items: center;
				}
					.submit-container button[name=btn_back],
					.submit-container button[name=btn_submit] {
						width: 48.75%;
						height: 70px;
						padding: 0px;
						border: none;
						outline: none;
						font-size: 18px;
						font-weight: 400;
						letter-spacing: .2em;
						color: #FFFFFF;
						position: relative;
						cursor: pointer;
					}
					.submit-container button[name=btn_back] {
						background-color: #A0A1A2;
					}
					.submit-container button[name=btn_submit] {
						background-color: #D6AE9B;						
					}
					.submit-container button[name=btn_back] img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						left: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					.submit-container button[name=btn_back]:hover img {
						left: 16px;
					}
					.submit-container button[name=btn_submit] img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						right: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					.submit-container button[name=btn_submit]:hover img {
						right: 16px;
					}

				button.disabled-btn {
					display: block;
					width: 390px;
					height: 70px;
					padding: 0px;
					margin: 40px auto auto;
					border: none;
					outline: none;
					background-color: #D6AE9B;
					font-size: 18px;
					font-weight: 400;
					letter-spacing: .2em;
					color: #FFFFFF;
					position: relative;
					cursor: pointer;
					transition: .2s;
					-webkit-transition: .2s;
				}
				button.disabled-btn.disabled {
					pointer-events: none;
					background-color: #A0A1A2;
				}
					button.disabled-btn img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						right: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					button.disabled-btn:hover img {
						right: 16px;
					}

			/* 確認ページ */
			.form-container form.confirmation {

			}
						.form-container form.confirmation .form-item {
							padding-bottom: 17px;
							margin: auto auto 18px;
							border-bottom: solid 1px #A49CA3;
						}
							.form-container form.confirmation .form-item .form-item_heading {
								padding: 5px 0px;
								margin: auto auto 7px;
							}
								.form-item_inputbox p {
									font-size: 14px;
									line-height: 2.0;
								}

			/* 完了ページ */
			.done-body {
				width: 100%;
			}
				.done-txt {
					width: 100%;
					margin-bottom: 20px;
					font-size: 14px;
					font-weight: 400;
					text-align: justify;
				}
				.toplink a {
					font-size: 14px;
					font-weight: 400;
					color: #000000;
					text-decoration: underline;
				}
}

/* Tablet ================================================== */
@media all and (min-width:560px) and (max-width:959px){
#form_details {
	width: 100%;
}
	.form_details--inner {
		width: 100%;
	}
		.form-headarea {
			width: 100%;
			height: auto;
			position: relative;
		}
			.form-headarea img {
				width: 100%;
				height: auto;
			}
			.form-headarea-txt {
				width: 90%;
				padding: 30px 0px;
				margin: auto auto;
				font-size: 27px;
				line-height: 1.0;
				letter-spacing: .2em;
				color: #4D2D26;
			}
				.form-headarea-txt small {
					font-size: 13px;
					letter-spacing: .3em;
				}

		.form-container {
			width: 90%;
			max-width: 800px;
			padding: 75px 0px 70px;
			margin: auto auto;
		}
			.form-container form {
				width: 100%;
			}
				.form-list-container {
					width: 100%;
					margin: auto auto;
				}
					.form-list {
						width: 100%;
					}
						.form-item {
							width: 100%;
							margin: auto auto 25px;
						}
							.form-item_heading {
								width: 100%;
								padding: 7px 0px;
								margin: auto auto 7px;
								display: flex;
								justify-content: flex-start;
								align-items: center;
								font-weight: 400;
								line-height: 1.0;
								letter-spacing: .1em;
							}
								.form-item_heading label {
									margin-right: 10px;
									font-size: 16px;
								}
									.form-item_heading label span {
										font-size: 12px;
										margin-left: 8px;
									}
								.mandatory {
									padding: 4px 6px;
									background-color: #4D2D26;
									font-size: 10px;
									text-align: center;
									color: #ffffff;
									position: relative;
									top: 1px;
								}
							.form-item_inputbox {
								width: 100%;
							}
								.form-item_inputbox input[type=text] {
									width: 100%;
									padding: 10px 15px;
									background-color: #F0F0F0;
									border: none;
									outline: none;
									font-size: 14px;
									letter-spacing: .08em;
								}
								.form-item_inputbox textarea {
									width: 100%;
									padding: 10px 15px;
									background-color: #F0F0F0;
									border: none;
									outline: none;
									font-size: 14px;
									line-height: 1.6;
									letter-spacing: .08em;
								}

							.form-item_inputbox.radiobox {
								padding: 8px 0px;
								display: flex;
								justify-content: flex-start;
								align-items: center;
							}
								.radiobox input[type=radio] {
									display: none;
								}
								.radiobox label.radio {
									display: block;
									padding: 5px 0px 5px 30px;
									margin-right: 35px;
									font-size: 14px;
									line-height: 1.0;
									position: relative;
									cursor: pointer;
								}
								.radiobox label.radio:before {
									content: '';
									width: 18px;
									height: 18px;
									background-color: #F0F0F0;
									border-radius: 50%;
									position: absolute;
									top: 52%;
									left: 9px;
									transform: translate(-50%,-50%);
									-webkit-transform: translate(-50%,-50%);
								}
								.radiobox label.radio:after {
									content: '';
									width: 10px;
									height: 10px;
									background-color: #4D2D26;
									border-radius: 50%;
									position: absolute;
									top: 52%;
									left: 9px;
									transform: translate(-50%,-50%);
									-webkit-transform: translate(-50%,-50%);
									opacity: 0;
									transition: .2s;
									-webkit-transition: .2s;
									pointer-events: none;
								}
								.radiobox input[type="radio"]:checked + label.radio:after {
									opacity: 1;
								}

				.rules-container {
					width: 100%;
					margin: auto auto;
				}
					.rules-container_inner {
						width: 100%;
					}
						.rules-container_heading {
							width: 100%;
							padding: 7px 0px;
							margin: auto auto 7px;
							font-size: 16px;
							font-weight: 400;
							line-height: 1.0;
							letter-spacing: .1em;
						}
						.rules-container_details {
							width: 100%;
							height: 200px;
							padding: 15px;
							margin: auto auto 50px;
							border: solid 1px #E4E4E4;
							background-color: #ffffff;
							overflow: scroll;
							font-size: 14px;
							font-weight: 400;
							line-height: 1.9;
						}
						.rules-check {
							width: 100%;
							text-align: center;
						}
							.rules-check input[name=agree]{
								display: none;
							}
							.rules-check label.rules {
								padding: 5px 0px 5px 30px;
								margin-right: 35px;
								position: relative;
								pointer-events: none;								
							}
							.rules-check label.rules:before {
								content: '';
								width: 18px;
								height: 18px;
								background-color: #ffffff;
								border: solid 1px #4D2D26;
								position: absolute;
								top: 52%;
								left: 9px;
								transform: translate(-50%,-50%);
								-webkit-transform: translate(-50%,-50%);
								pointer-events: auto;
								cursor: pointer;
							}
							.rules-check label.rules:after {
								content: "\f00c";
								font-family: "Font Awesome 5 Pro";
								font-size: 13px;
								font-weight: 400;
								position: absolute;
								top: 55%;
								left: 9px;
								transform: translate(-50%,-50%);
								-webkit-transform: translate(-50%,-50%);
								opacity: 0;
								transition: .2s;
								-webkit-transition: .2s;
								pointer-events: none;
							}
							.rules-check input[name="agree"]:checked + label.rules:after {
								opacity: 1;
							}
							.rules-check label.rules a {
								display: inline-block;
								color: #1A1311;
								border-bottom: solid 1px #1A1311;
								pointer-events: auto;
							}
							.rules-check label.rules a:hover {
								color: #4D2D26;
							}

				.submit-container {
					width: 100%;
					margin: 80px auto auto;
					display: flex;
					justify-content: space-between;
					align-items: center;
				}
					.submit-container button[name=btn_back],
					.submit-container button[name=btn_submit] {
						width: 48.75%;
						height: 60px;
						padding: 0px;
						border: none;
						outline: none;
						font-size: 18px;
						font-weight: 400;
						letter-spacing: .2em;
						color: #FFFFFF;
						position: relative;
						cursor: pointer;
					}
					.submit-container button[name=btn_back] {
						background-color: #A0A1A2;
					}
					.submit-container button[name=btn_submit] {
						background-color: #D6AE9B;						
					}
					.submit-container button[name=btn_back] img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						left: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					.submit-container button[name=btn_back]:hover img {
						left: 16px;
					}
					.submit-container button[name=btn_submit] img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						right: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					.submit-container button[name=btn_submit]:hover img {
						right: 16px;
					}

				button.disabled-btn {
					display: block;
					width: 390px;
					height: 60px;
					padding: 0px;
					margin: 40px auto auto;
					border: none;
					outline: none;
					background-color: #D6AE9B;
					font-size: 18px;
					font-weight: 400;
					letter-spacing: .2em;
					color: #FFFFFF;
					position: relative;
					cursor: pointer;
					transition: .2s;
					-webkit-transition: .2s;
				}
				button.disabled-btn.disabled {
					pointer-events: none;
					background-color: #A0A1A2;
				}
					button.disabled-btn img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						right: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					button.disabled-btn:hover img {
						right: 16px;
					}

			/* 確認ページ */
			.form-container form.confirmation {

			}
						.form-container form.confirmation .form-item {
							padding-bottom: 17px;
							margin: auto auto 18px;
							border-bottom: solid 1px #A49CA3;
						}
							.form-container form.confirmation .form-item .form-item_heading {
								padding: 5px 0px;
								margin: auto auto 7px;
							}
								.form-item_inputbox p {
									font-size: 14px;
									line-height: 2.0;
								}

			/* 完了ページ */
			.done-body {
				width: 100%;
			}
				.done-txt {
					width: 100%;
					margin-bottom: 20px;
					font-size: 14px;
					font-weight: 400;
					text-align: justify;
				}
				.toplink a {
					font-size: 14px;
					font-weight: 400;
					color: #000000;
					text-decoration: underline;
				}
}

/* SP ================================================== */
@media all and (max-width:559px){
#form_details {
	width: 100%;
}
	.form_details--inner {
		width: 100%;
	}
		.form-headarea {
			width: 100%;
			height: auto;
			position: relative;
		}
			.form-headarea img {
				width: 100%;
				height: auto;
			}
			.form-headarea-txt {
				width: 90%;
				padding: 30px 0px;
				margin: auto auto;
				font-size: 27px;
				line-height: 1.0;
				letter-spacing: .2em;
				color: #4D2D26;
			}
				.form-headarea-txt small {
					font-size: 13px;
					letter-spacing: .3em;
				}

		.form-container {
			width: 90%;
			max-width: 800px;
			padding: 75px 0px 70px;
			margin: auto auto;
		}
			.form-container form {
				width: 100%;
			}
				.form-list-container {
					width: 100%;
					max-width: 600px;
					margin: auto auto;
				}
					.form-list {
						width: 100%;
					}
						.form-item {
							width: 100%;
							margin: auto auto 25px;
						}
							.form-item_heading {
								width: 100%;
								padding: 0px;
								margin: auto auto 7px;
								display: flex;
								justify-content: flex-start;
								align-items: flex-start;
								flex-wrap: wrap;
								font-weight: 400;
								line-height: 1.6;
								letter-spacing: .1em;
							}
								.form-item_heading label {
									margin-right: 10px;
									font-size: 15px;
								}
									.form-item_heading label span {
										font-size: 12px;
									}
								.mandatory {
									padding: 4px 6px;
									background-color: #4D2D26;
									font-size: 10px;
									text-align: center;
									color: #ffffff;
									position: relative;
									top: 1px;
								}
							.form-item_inputbox {
								width: 100%;
							}
								.form-item_inputbox input[type=text] {
									width: 100%;
									padding: 10px 15px;
									background-color: #F0F0F0;
									border: none;
									outline: none;
									font-size: 14px;
									letter-spacing: .08em;
								}
								.form-item_inputbox textarea {
									width: 100%;
									padding: 10px 15px;
									background-color: #F0F0F0;
									border: none;
									outline: none;
									font-size: 14px;
									line-height: 1.6;
									letter-spacing: .08em;
								}

							.form-item_inputbox.radiobox {
								padding: 8px 0px;
								display: flex;
								justify-content: flex-start;
								align-items: center;
							}
								.radiobox input[type=radio] {
									display: none;
								}
								.radiobox label.radio {
									display: block;
									padding: 5px 0px 5px 30px;
									margin-right: 35px;
									font-size: 14px;
									line-height: 1.0;
									position: relative;
									cursor: pointer;
								}
								.radiobox label.radio:before {
									content: '';
									width: 18px;
									height: 18px;
									background-color: #F0F0F0;
									border-radius: 50%;
									position: absolute;
									top: 52%;
									left: 9px;
									transform: translate(-50%,-50%);
									-webkit-transform: translate(-50%,-50%);
								}
								.radiobox label.radio:after {
									content: '';
									width: 10px;
									height: 10px;
									background-color: #4D2D26;
									border-radius: 50%;
									position: absolute;
									top: 52%;
									left: 9px;
									transform: translate(-50%,-50%);
									-webkit-transform: translate(-50%,-50%);
									opacity: 0;
									transition: .2s;
									-webkit-transition: .2s;
									pointer-events: none;
								}
								.radiobox input[type="radio"]:checked + label.radio:after {
									opacity: 1;
								}

				.rules-container {
					width: 100%;
					max-width: 600px;
					margin: auto auto;
				}
					.rules-container_inner {
						width: 100%;
					}
						.rules-container_heading {
							width: 100%;
							padding: 7px 0px;
							margin: auto auto 7px;
							font-size: 16px;
							font-weight: 400;
							line-height: 1.0;
							letter-spacing: .1em;
						}
						.rules-container_details {
							width: 100%;
							height: 200px;
							padding: 15px;
							margin: auto auto 50px;
							border: solid 1px #E4E4E4;
							background-color: #ffffff;
							overflow: scroll;
							font-size: 14px;
							font-weight: 400;
							line-height: 1.9;
						}
						.rules-check {
							width: 100%;
							text-align: center;
							white-space: nowrap;
						}
							.rules-check input[name=agree]{
								display: none;
							}
							.rules-check label.rules {
								padding: 5px 0px 5px 30px;
								margin-right: 35px;
								position: relative;
								pointer-events: none;								
							}
							.rules-check label.rules:before {
								content: '';
								width: 18px;
								height: 18px;
								background-color: #ffffff;
								border: solid 1px #4D2D26;
								position: absolute;
								top: 52%;
								left: 9px;
								transform: translate(-50%,-50%);
								-webkit-transform: translate(-50%,-50%);
								pointer-events: auto;
								cursor: pointer;
							}
							.rules-check label.rules:after {
								content: "\f00c";
								font-family: "Font Awesome 5 Pro";
								font-size: 13px;
								font-weight: 400;
								position: absolute;
								top: 55%;
								left: 9px;
								transform: translate(-50%,-50%);
								-webkit-transform: translate(-50%,-50%);
								opacity: 0;
								transition: .2s;
								-webkit-transition: .2s;
								pointer-events: none;
							}
							.rules-check input[name="agree"]:checked + label.rules:after {
								opacity: 1;
							}
							.rules-check label.rules a {
								display: inline-block;
								color: #1A1311;
								border-bottom: solid 1px #1A1311;
								pointer-events: auto;
							}
							.rules-check label.rules a:hover {
								color: #4D2D26;
							}

				.submit-container {
					width: 100%;
					margin: 80px auto auto;
				}
					.submit-container button[name=btn_back],
					.submit-container button[name=btn_submit] {
						width: 100%;
						height: 70px;
						padding: 0px;
						border: none;
						outline: none;
						font-size: 18px;
						font-weight: 400;
						letter-spacing: .2em;
						color: #FFFFFF;
						position: relative;
						cursor: pointer;
					}
					.submit-container button[name=btn_back] {
						margin-bottom: 20px;
						background-color: #A0A1A2;
					}
					.submit-container button[name=btn_submit] {
						background-color: #D6AE9B;						
					}
					.submit-container button[name=btn_back] img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						left: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					.submit-container button[name=btn_back]:hover img {
						left: 16px;
					}
					.submit-container button[name=btn_submit] img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						right: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					.submit-container button[name=btn_submit]:hover img {
						right: 16px;
					}

				button.disabled-btn {
					display: block;
					width: 100%;
					height: 60px;
					padding: 0px;
					margin: 40px auto auto;
					border: none;
					outline: none;
					background-color: #D6AE9B;
					font-size: 18px;
					font-weight: 400;
					letter-spacing: .2em;
					color: #FFFFFF;
					position: relative;
					cursor: pointer;
					transition: .2s;
					-webkit-transition: .2s;
				}
				button.disabled-btn.disabled {
					pointer-events: none;
					background-color: #A0A1A2;
				}
					button.disabled-btn img {
						width: 36px;
						height: auto;
						margin-top: -18px;
						position: absolute;
						top: 50%;
						right: 20px;
						transition: .2s;
						-webkit-transition: .2s;
					}
					button.disabled-btn:hover img {
						right: 16px;
					}

			/* 確認ページ */
						.form-container form.confirmation .form-item {
							padding-bottom: 17px;
							margin: auto auto 18px;
							border-bottom: solid 1px #A49CA3;
						}
							.form-container form.confirmation .form-item .form-item_heading {
								padding: 0px;
								margin: auto auto 7px;
							}
								.form-item_inputbox p {
									font-size: 14px;
									line-height: 2.0;
								}

			/* 完了ページ */
			.done-body {
				width: 100%;
			}
				.done-txt {
					width: 100%;
					margin-bottom: 20px;
					font-size: 14px;
					font-weight: 400;
					text-align: justify;
				}
				.toplink a {
					font-size: 14px;
					font-weight: 400;
					color: #000000;
					text-decoration: underline;
				}
}