@charset "utf-8";
/*--------------------------------------------------

	ENTRY

--------------------------------------------------*/
#entry {position: relative;padding-bottom: clamp(100px, calc(100px + 50 * ((100vw - 375px) / 1545)), 150px);}
#entry::before {
    content: '';
    position: absolute;
    bottom: -2vw;
    left: -2vw;
    width: 100%;
    height: 100%;
    background: url(../img/front/entry/bg.svg) no-repeat bottom left / 35vw;
}
#entry .inner {max-width: 960px;}
#entry h3 {margin-bottom: clamp(40px, calc(40px + 10 * ((100vw - 375px) / 1545)), 50px);line-height: 1.7;text-align: center;}
#entry table {margin-bottom: clamp(40px, calc(40px + 10 * ((100vw - 375px) / 1545)), 50px);}
#entry table tr th {
	display: block;
	margin-bottom: 10px;
	font-weight: 600;
	font-size: clamp(14px, calc(14px + 4 * ((100vw - 375px) / 1545)), 18px);
}
#entry table tr th span {margin-left: 10px;color: #FF0000;}
#entry table tr td {display: block;margin-bottom: 20px;}
#entry table tr:last-child td {margin-bottom: 0;}
#entry input[type="text"],
#entry input[type="tel"],
#entry input[type="email"],
#entry .stbox select,
#entry textarea {
	width: 100%;
	height: 60px;
	padding: 0 20px;
	border: none;
	border-radius: 5px;
	background: #FEE9D9;
	font-size: clamp(14px, calc(14px + 2 * ((100vw - 375px) / 1545)), 16px);
	cursor: pointer;
	resize: vertical;
}
#entry textarea {height: auto;margin-bottom: 20px;padding: 20px;}
::placeholder {color: #ccc;}
#entry .stbox {position: relative;max-width: 600px;}
#entry .stbox::after {
    content: '';
    position: absolute;
    top: 25px;
    right: 15px;
    width: 0;
    height: 0;
    border-top: 10px solid #222;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    pointer-events: none;
}
.check_list {display: inline-flex;flex-wrap: wrap;gap: 5px 30px;}
.check_item {display: flex;align-items: center;position: relative;}
.check_item .checkbox {
	width: 24px;
	height: 24px;
	border: 1px solid #222;
	border-radius: 3px;
	transition: all .2s ease;
	appearance: none;
}
.check_item .checkbox:checked {transform: rotate(-45deg);opacity: 0;}
.check_item .check {
	content: '';
	display: block;
	position: absolute;
	top: 7px;
	left: 8px;
	z-index: -1;
	transform: rotate(90deg);
	opacity: 0;
	width: 20px;
	height: 20px;
	border: solid #222;
	border-width: 0 2px 2px 0;
	transition: all .2s ease;
}
.check_item .checkbox:checked + .check {
	content: '';
	display: block;
	position: absolute;
	top: 4px;
	left: 8px;
	opacity: 1;
	transform: rotate(45deg);
	width: 7px;
	height: 12px;
}
.check_item .checkLabel {padding-left: 10px;cursor: pointer;user-select: none;}
.check_item .checkLabel a {color: #FC9000;text-decoration: underline;}
.check_item .checkLabel a img {width: 14px;margin: 0 5px;}
.check_item .checkLabel span {margin-left: 10px;color: #FC9000;}
#entry .submit {
	display: block;
	position: relative;
	z-index: 1;
	width: 80%;
	max-width: 540px;
	margin: 0 auto;
	padding-top: clamp(20px, calc(20px + 8 * ((100vw - 375px) / 1545)), 28px);
	padding-bottom: clamp(20px, calc(20px + 8 * ((100vw - 375px) / 1545)), 28px);
	overflow: hidden;
	border: none;
	border-radius: 60px;
	background: #FC9000;
	color: #fff;
	font-size: clamp(16px, calc(16px + 4 * ((100vw - 375px) / 1545)), 20px);
	line-height: 1;
	letter-spacing: .2em;
	text-align: center;
	transition: all .3s ease-out;
	user-select: none;
}
#entry .submit:hover {transform: translateY(-10px);}
/*--------------------------------------------------

　   ERROR

--------------------------------------------------*/
#entry.form {display: block;padding-top: 200px;}
#entry.form h4 {text-align: center;line-height: 1.7;margin-bottom: 40px;}
#entry.form table tr td {
	padding: 20px;
	border: none;
	border-radius: 5px;
	background: #FEE9D9;
	font-size: clamp(14px, calc(14px + 2 * ((100vw - 375px) / 1545)), 16px);
}
#entry.error .errorbox {margin-bottom: 80px;}
#entry.error .error_messe {color: #FC9000;text-align: center;}
#entry.complete .wrap p {margin-bottom: 40px;text-align: center;}