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

	ENTRY

--------------------------------------------------*/
#entry {background: #F7F7F7;}
#entry .inner {max-width: calc(756px + 2 * ((100vw - 375px) / 1605));}
#entry .privacy_block .privacy_container {
	height: 300px;
	margin-bottom: calc(30px + 20 * ((100vw - 375px) / 1605));
	padding: 20px;
	overflow-y: scroll;
	border: 1px solid #000;
	background: #fff;
}
#entry .privacy_block .privacy_container h3 {margin-bottom: 10px;color: #1AAA87;font-weight: bold;font-size: calc(12px + 2 * ((100vw - 375px) / 1605));}
#entry .privacy_block .privacy_container p.txt {margin-bottom: 20px;font-size: calc(12px + 2 * ((100vw - 375px) / 1605));}
#entry .privacy_block .privacy_container ol {margin-left: 25px;list-style: decimal;}
#entry .privacy_block .privacy_container ol li {
	margin-bottom: 20px;
	color: #1AAA87;
	font-weight: bold;
	font-size: calc(12px + 2 * ((100vw - 375px) / 1605));
	letter-spacing: 0;
}
#entry .privacy_block .privacy_container ol li:last-child {margin-bottom: 0;}
#entry .privacy_block .privacy_container ol li h4 {
	margin-bottom: 10px;
	font-size: calc(12px + 2 * ((100vw - 375px) / 1605));
	letter-spacing: 0;
}
#entry .privacy_block .privacy_container ol li p {
	margin-bottom: 20px;
	color: #000;
	font-weight: 400;
	font-size: calc(12px + 2 * ((100vw - 375px) / 1605));
	letter-spacing: 0;
}
#entry .privacy_block .privacy_container ol li p:last-child {margin-bottom: 0;}
#entry .privacy_block .privacy_container ol li ul li {position: relative;margin-bottom: 0;padding-left: 20px;color: #000;font-weight: 400;}
#entry .privacy_block .privacy_container ol li ul li::before {content: '・';position: absolute;left: 0;}
#messageform {display: none;}
#entry table {border-collapse: inherit;border-spacing: 0 20px;}
#entry table tr th {
	position: relative;
	width: 170px;
	padding-right: calc(30px + 16 * ((100vw - 375px) / 1605));
	font-weight: 700;
	vertical-align: middle;
}
#entry table tr:last-child th {vertical-align: top;}
#entry input[type="text"],
#entry input[type="tel"],
#entry input[type="email"],
.stbox select,
#entry textarea {
	width: 100%;
	height: 50px;
	padding: 0 20px;
	border: none;
	border-radius: 10px;
	background: #fff;
	color: #000;
	font-size: calc(14px + 2 * ((100vw - 375px) / 1605));
	cursor: pointer;
	resize: vertical;
}
#entry textarea {height: auto;margin-bottom: 18px;padding: 15px 20px;}
::placeholder {color: #ccc;}
.stbox {position: relative;max-width: 400px;}
.stbox::after {
    content: '';
    position: absolute;
    top: 20px;
    right: calc(15px + 15 * ((100vw - 375px) / 1605));
    width: 0;
    height: 0;
    border-top: 10px solid #000;
    border-left: 7.5px solid transparent;
    border-right: 7.5px solid transparent;
    pointer-events: none;
}
.check {display: none;}
.check + label {
	display: inline-block;
	position: relative;
	padding-left: 30px;
	font-size: calc(14px + 2 * ((100vw - 375px) / 1605));
    cursor: pointer;
	user-select: none;
}
.check:disabled + label {
	opacity: 0.5;
	cursor: not-allowed;
}
.check + label::before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 50%;
	transform: translate(0, 50%);
    width: 20px;
    height: 20px;
    border: 1px solid #707070;
	background: #fff;
}
.check:checked + label::before {background: #fff;}
.check:checked + label::after {
	content: '';
    border-radius: 0;
	display: block;
	position: absolute;
	top: 45%;
	left: 4.5px;
	width: 12px;
	height: 8px;
	border-left: 3px solid #000;
	border-bottom: 3px solid #000;
	transform: translateY(-50%) rotate(-45deg);
	box-sizing: border-box;
}
#entry .submit {
	display: block;
	position: relative;
	z-index: 1;
	margin: 0 auto;
	padding: 14px 3em;
	border: none;
	border-radius: 30px;
	color: #fff;
	font-weight: 500;
	font-size: calc(15px + 3 * ((100vw - 375px) / 1605));
	font-family: 'Noto Sans JP', 'Noto Sans CJK JP Subset', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	line-height: 1.4;
	letter-spacing: .1em;
	text-align: center;
	transition: all 0.4s ease-out;
}
#entry .submit::before,
#entry .submit::after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 2em;
}
#entry .submit::before {
	z-index: -1;
	transition: 1s;
	background: linear-gradient(90deg, #0CD39A, #77BE32);
}
#entry .submit::after {z-index: -2;background: linear-gradient(-90deg, #0CD39A, #77BE32);}
#entry .submit:hover::before{opacity:0;}
@media only screen and ( max-width : 768px ) {
	#entry table tr th {display: block;width: 100%;padding: 0 0 5px 20px;}
	#entry table tr td {display: block;}
	.stbox {max-width: 100%;}
}
/*--------------------------------------------------

　   ERROR

--------------------------------------------------*/
#entry.form {display: block;padding-top: calc(100px + 60 * ((100vw - 375px) / 1605));}
#entry.form h4 {text-align: center;line-height: 1.7;margin-bottom: 40px;}
#entry.form th {margin-bottom: 10px;}
#entry.form td {padding: 10px 20px;border: 1px solid #323232;background: #fff;}
#entry.error .errorbox {margin-bottom: 80px;}
#entry.error .error_messe {color: #AF2024;text-align: center;}
#entry.complete .content p {margin-bottom: 40px;text-align: center;}
#entry.complete .content .button {text-align: center;}
#entry.complete .content .button a.submit {display: inline-block;}