@charset "UTF-8";

input[type=radio],
input[type=checkbox] {
	display: none !important;
}

#form label {
	cursor: pointer;
	margin-right: 15px;
	width: fit-content;
}

::-webkit-input-placeholder {
	color: #ccc;
	font-size: 14px;
}

select {
	background: none transparent;
	border-radius: 8px;
	color: #333;
	font-size: 14px;
	text-indent: 0.01px;
	outline: none;
	vertical-align: middle;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	padding: 10px 15px;
	border: 1px solid #ccc;
	width: 100%;
}

select option {
	background-color: #fff;
	color: #333;
}

select::-ms-expand {
	display: none;
}

select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #828c9a;
}

@media print,
screen and (min-width: 769px) {
	main .confirm {
		margin: 60px auto 0;
		max-width: 1080px;
		width: 95%;
	}

	/*-----
parts
-----*/
	#submit {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 10px;
		text-align: center;
		margin: 20px auto 0;
		width: 100%;
	}

	.submit_area {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 20px;
	}

	input[type="button"],
	input[type="submit"] {
		border-radius: 10px;
		box-shadow: 0px 0px 10px -5px #ccc;
		display: block;
		margin: 0 0 20px;
		padding: 12px 10%;
		width: fit-content;
		position: relative;
		top: 0;
		transition: all ease 0.8s;
	}

	input[type="submit"] {
		background: #f39800;
		color: #fff;
	}

	input[type="button"] {
		background: #ccc;
		color: #333;
	}

	input[type="button"]:hover,
	input[type="submit"]:hover {
		top: 5px;
	}

	textarea {
		background: #fff;
		border: 0.5px solid #cccccc;
		border-radius: 8px;
		padding: 10px 15px;
		width: 100%;
	}

	input[type='text'],
	input[type='tel'],
	input[type='password'] {
		background: #fff;
		border: 0.5px solid #cccccc;
		border-radius: 8px;
		padding: 10px 15px;
		width: 100%;
	}

	input[type='text'].text {
		width: 100%;
	}

	input[type='text'].address {
		margin: 10px 0 0;
		width: 100%;
	}

	input[type='tel'].tel {
		width: 100%;
	}

	input[type='text'].zip {
		margin: 0 10px 10px 10px;
		padding: 10px 15px;
	}

	input[type='text'].text10,
	.password10 {
		width: 10%;
	}

	input[type='text'].text20,
	.password20 {
		width: 20%;
	}

	input[type='text'].text30,
	.password30 {
		width: 30%;
	}

	input[type='text'].text40,
	.password40 {
		width: 40%;
	}

	input[type='text'].text50,
	.password50 {
		width: 50%;
	}

	input[type='text'].text60,
	.password60 {
		width: 60%;
	}

	input[type='text'].text70,
	.password70 {
		width: 70%;
	}

	input[type='text'].text80,
	.password80 {
		width: 80%;
	}

	input[type='text'].text90,
	.password90 {
		width: 90%;
	}

	input[type='text'].text100,
	.password100 {
		width: 100%;
	}

	.radio,
	.checkbox {
		box-sizing: border-box;
		-webkit-transition: background-color 0.2s linear;
		transition: background-color 0.2s linear;
		position: relative;
		display: inline-block;
		line-height: 1.2em;
		margin: 0 20px 8px 0;
		padding: 12px 12px 12px 42px;
		border-radius: 8px;
		vertical-align: middle;
		cursor: pointer;
		width: 95%;
	}

	.radio:hover:after,
	.checkbox:hover:after {
		border-color: #666;
	}

	.radio:before {
		content: '';
		background: #299acc;
		border-radius: 60px;
		width: 16px;
		height: 16px;
		position: absolute;
		top: 13.5px;
		left: 15.5px;
		opacity: 0;
		transition: opacity 0.2s linear;
		z-index: 1;
	}

	input[type=radio]:checked+.radio:before {
		opacity: 1;
	}

	.checkbox:before {
		content: '';
		background: #299acc;
		border-radius: 60px;
		width: 16px;
		height: 16px;
		position: absolute;
		top: 13.5px;
		left: 15.5px;
		opacity: 0;
		transition: opacity 0.2s linear;
		z-index: 1;
	}

	input[type=checkbox]:checked+.checkbox:before {
		opacity: 1;
	}

	.radio:after,
	.checkbox:after {
		content: '';
		display: block;
		background: #fff;
		border: 0.5px solid #cccccc;
		border-radius: 60px;
		width: 26px;
		height: 26px;
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translate(0, -50%);
		-webkit-transition: border-color 0.2s linear;
		transition: border-color 0.2s linear;
		z-index: 0;
	}

	#contact label {
		display: block;
		padding: 5px 0 5px 50px;
	}

	#confirmation,
	#thanks {
		margin: 40px auto 0;
		padding: 0 0 30px;
		width: 90%;
	}

	#confirmation h4 {
		padding: 0 0 20px;
	}

	#confirmation table {
		margin: 0 0 10%;
	}

	#confirmation table tr {
		border-bottom: 1px solid #ccc;
	}

	#confirmation th,
	#confirmation td {
		padding: 15px 0;
	}

	#confirmation th {
		width: 30%;
		;
	}

	#confirmation td {
		width: auto;
		;
	}

	#thanks h4 {
		padding: 0 0 20px;
		text-align: center;
	}

	#confirmation .error_messe {
		padding: 8px 0;
	}

	#thanks p {
		text-align: center;
		margin: 30px auto 30px;
		padding: 20px 0 20px 0;
		max-width: 1300px;
		width: 90%;
	}

	#thanks address {
		border: 1px solid #ccc;
		font-style: normal;
		font-size: 14px;
		line-height: 1.6em;
		text-align: center;
		margin: 0 auto 6%;
		padding: 15px 0;
		width: 90%;
	}
}

@media print,
screen and (max-width: 768px) {

	/*-----
parts
-----*/
	#submit {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
		margin: 20px auto 0;
		width: 90%;
	}

	.submit_area {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 20px;
	}

	input[type="button"],
	input[type="submit"] {
		border-radius: 10px;
		box-shadow: 0px 0px 10px -5px #ccc;
		display: block;
		margin: 0 0 20px;
		padding: 12px 10%;
		width: fit-content;
		position: relative;
		top: 0;
		transition: all ease 0.8s;
	}

	input[type="submit"] {
		background: #f39800;
		color: #fff;
	}

	input[type="button"] {
		background: #ccc;
		color: #333;
	}

	input[type="button"]:hover,
	input[type="submit"]:hover {
		top: 5px;
	}

	textarea {
		border: 0.5px solid #ccc;
		border-radius: 8px;
		margin: 0 auto;
		padding: 10px 15px;
		width: 100%;
	}

	input[type='text'],
	input[type='tel'],
	input[type='password'] {
		border: 0.5px solid #ccc;
		border-radius: 8px;
		padding: 10px 15px;
		width: 90%;
	}

	input[type='text'].text {
		width: 100%;
	}

	input[type='text'].address {
		width: 100%;
	}

	input[type='tel'].tel {
		width: 100%;
	}

	input[type='text'].zip {
		margin: 0 10px 10px 10px;
		padding: 5px 10px;
		width: 40% !important;
	}

	input[type='text'].text10,
	.password10 {
		width: 10%;
	}

	input[type='text'].text20,
	.password20 {
		width: 20%;
	}

	input[type='text'].text30,
	.password30 {
		width: 30%;
	}

	input[type='text'].text40,
	.password40 {
		width: 40%;
	}

	input[type='text'].text50,
	.password50 {
		width: 50%;
	}

	input[type='tel'].text60,
	input[type='text'].text60,
	.password60 {
		width: calc(100% - 30px);
	}

	input[type='text'].text70,
	.password70 {
		width: calc(100% - 30px);
	}

	input[type='text'].text80,
	.password80 {
		width: calc(100% - 30px);
	}

	input[type='text'].text90,
	.password90 {
		width: calc(100% - 30px);
	}

	input[type='text'].text100,
	.password100 {
		width: calc(100% - 30px);
	}

	.radio,
	.checkbox {
		box-sizing: border-box;
		-webkit-transition: background-color 0.2s linear;
		transition: background-color 0.2s linear;
		position: relative;
		display: inline-block;
		line-height: 1.2em;
		margin: 0 20px 8px 0;
		padding: 12px 12px 12px 42px;
		border-radius: 8px;
		vertical-align: middle;
		cursor: pointer;
		width: 95%;
	}

	.radio:hover:after,
	.checkbox:hover:after {
		border-color: #666;
	}

	.radio:before {
		content: '';
		background: #299acc;
		border-radius: 60px;
		width: 16px;
		height: 16px;
		position: absolute;
		top: 13.5px;
		left: 15.5px;
		opacity: 0;
		transition: opacity 0.2s linear;
		z-index: 1;
	}

	input[type=radio]:checked+.radio:before {
		opacity: 1;
	}

	.checkbox:before {
		content: '';
		background: #299acc;
		border-radius: 60px;
		width: 17px;
		height: 17px;
		position: absolute;
		top: 13px;
		left: 14px;
		opacity: 0;
		transition: opacity 0.2s linear;
		z-index: 1;
	}

	input[type=checkbox]:checked+.checkbox:before {
		opacity: 1;
	}

	.radio:after,
	.checkbox:after {
		content: '';
		display: block;
		background: #fff;
		border: 0.5px solid #cccccc;
		border-radius: 60px;
		width: 26px;
		height: 26px;
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translate(0, -50%);
		-webkit-transition: border-color 0.2s linear;
		transition: border-color 0.2s linear;
		z-index: 0;
	}

	#confirmation,
	#thanks {
		margin: 0 auto;
		padding: 0 0 30px;
		width: 95%;
	}

	#confirmation h4 {
		padding: 0 0 20px;
	}

	#confirmation table {
		margin: 0 0 10%;
	}

	#confirmation table tr {
		border-bottom: 1px solid #ccc;
	}

	#confirmation th,
	#confirmation td {
		display: block;
		padding: 15px;
		width: auto;
	}

	th {
		background: #dcdddd;
	}

	#confirmation .error_messe {
		padding: 8px 0;
	}

	#thanks h4 {
		padding: 0 0 20px;
	}

	#thanks p {
		font-size: 16px;
		line-height: 1.5em;
		margin: 0 0 20px;
		padding: 20px 15px;
	}

	#thanks p br {
		display: none;
	}

	#thanks p.catch {
		background: url(/images/bg_paper.jpg);
		background-size: cover;
	}

	#thanks address {
		border: 1px solid #ccc;
		font-style: normal;
		font-size: 14px;
		line-height: 1.6em;
		text-align: center;
		margin: 0 auto 6%;
		padding: 30px 10px;
		width: 100%;
	}
}