@charset "UTF-8";

/*

エントリーフォーム、

応募受付ページ（thanks.php）、

ご意見・ご感想フォーム共通につき

修正注意！！！！

*/
.entry_shikaku {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 20px;
	color: #E60012;
}

.entry_shikaku strong {
	font-size: 24px;
	font-weight: bold;
}

.entry_tbl {
	margin-bottom: 30px;
}

.form_tbl {
	margin-bottom: 50px;
}

.form span.-asta {
	color: #e60012;
}

.form_caution {
	margin-bottom: 10px;
}

.entry_caption {
	color: #FFF;
	background: #fc5056;
	padding: 10px;
}

.form_tbl dl dt,
.form_tbl dl dd {
	padding: 20px;
}

.form_tbl dl dt {
	width: 250px;
}

.form_tbl dl dd {
}

.form_tbl dl dd p {
	margin-bottom: 10px;
}

.form_tbl dl dd p:last-child {
	margin-bottom: 0;
}

.form_tbl dl dd p.-notes {
	margin-top: 10px;
	line-height: 1.5;
}

.form_tbl dl dd p.-notes b {
	color: #E60012;
}

.form_txt.-w7em span {
	display: inline-block;
	width: 100px;
}

.form_txt.-w7em input {
	width: calc(100% - 100px);
}

.form_txt.-w13em span {
	display: inline-block;
	width: 180px;
}

.form_txt.-w13em input {
	width: calc(100% - 180px);
}

input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea {
	margin: 0;
	padding: 10px;
	background: #f2efe7;
	border: 1px solid #f2efe7;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-shadow: none;
	font-size: 16px;
}

input.-long,
textarea {
	width: 100%;
}

select {
	background: #FFF;
	padding-right: 50px;
	width: 150%;
}

.form_tbl label.-select {
	position: relative;
	display: inline-block;
	width: calc(100% - 2em);
	overflow: hidden;
	border: 1px solid #e6dfcf;
	vertical-align: middle;
}

.form_tbl label.-select.-short {
	width: auto;
}

.form_tbl label.-select:after {
	position: absolute;
	display: block;
	font-family: icomoon;
	content: "\e900";
	top: 50%;
	right: 20px;
	line-height: 1;
	font-size: 14px;
	margin-top: -7px;
	pointer-events: none;
}

.form_inline {
	font-size: 0;
}

.form_inline > label,
.form_inline_cts {
	display: inline-block;
	vertical-align: middle;
}

/* .form_inline_cts span {

	display: inline-block;

	vertical-align: middle;

}

 */
.form_inline > label {
}

.form_inline.-radio > label {
	font-size: 14px;
}

.form_inline > label:nth-child(n+2) {
	margin-left: 5%;
}

.form_inline.-half > label {
	width: 48%;
}

.form_inline.-half > label:last-child {
	margin-left: 4%;
}

.form_inline.-per4_6 label {
	width: 55%;
}

.form_inline.-per4_6 label.-select {
	width: 40%;
}

.form_inline.-per4_6 label span.-w126 {
	width: 126px;
	font-size: 14px;
}

.form_inline.-per4_6 label input {
	width: calc(100% - 126px);
}

.form_inline > label span {
	display: inline-block;
	vertical-align: middle;
}

.form_inline > label span.-w40 {
	width: 40px;
	font-size: 14px;
}

.form_inline.-half > label input {
	display: inline-block;
	width: calc(100% - 40px);
}

.form_inline_cts {
	width: 30%;
	font-size: 14px;
}

.form_inline_cts:nth-child(n+2) {
	margin-left: 5%;
}

.form_inline_cts input {
	width: 100%;
}

.form_inline_cts.-tel {
	position: relative;
}

.form_inline_cts.-tel:after {
	position: absolute;
	content: "ー";
	top: 50%;
	transform: translateY(-50%);
	right: -1.6em;
}

.form_inline_cts.-tel:last-child:after {
	content: none;
}

.form_agreement {
	background: #FFF;
	border: 1px solid #E6DFCF;
	box-shadow: inset 0 0 5px #E6DFCF;
	height: 300px;
	overflow-y: scroll;
	padding: 30px;
	margin-bottom: 50px;
}

.form_agreement_ttl {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
}

.form_agreement_wrap {
	margin-bottom: 30px;
}

.form_agreement_wrap:last-child {
	margin-bottom: 0;
}

.form_agreement_subttl {
	font-weight: bold;
}

.form_agree {
	text-align: center;
	margin-bottom: 50px;
}

.form_btn {
	text-align: center;
}

.form_btns {
	display: flex;
	-webkit-flex-direction: row-reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}

.form_btn_submit {
	display: inline-block;
	position: relative;
}

.form_btn_submit:before {
	position: absolute;
	z-index: 10;
	font-family: icomoon;
	content: "\e902";
	font-size: 20px;
	top: 50%;
	margin-top: -10px;
	left: 30%;
	color: #FFF;
	line-height: 1;
	-webkit-transition: opacity 0.3s, background 0.3s;
	transition: opacity 0.3s, background 0.3s;
	pointer-events: none;
}

input[type="submit"],
input[type="button"] {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	font-size: 22px;
	font-weight: bold;
	text-indent: 50px;
	color: #FFF;
	background: #fc5056;
	line-height: 1;
	padding: 30px 50px;
	width: 420px;
	border: none;
	border-radius: 10px;
	cursor: pointer;
	box-shadow: 0 0 20px 0px rgba(154, 95, 50, 0.5);
	transition: box-shadow 0.5s, opacity 0.5s;
}

input[type="button"] {
	background: #216ab8;
	text-indent: 0;
}

input[type="submit"]:hover,
input[type="button"]:hover {
	box-shadow: none;
	opacity: 0.8;
}

/* thanksページ */
.bnr_50 {
	text-align: center;
	margin-bottom: 50px;
}

.back {
	text-align: center;
}

.back a {
	display: inline-block;
	padding: 10px 50px;
	background: #FFF;
	border: 1px solid #E6DFCF;
}

.back a span {
	position: relative;
	padding-left: 20px;
	line-height: 1;
}

.back a span:before {
	position: absolute;
	font-family: icomoon;
	content: "\e901";
	top: 50%;
	margin-top: -7px;
	left: 0;
	transition: transform 0.3s;
}

.back a:hover span:before {
	transform: translateX(-10px);
}

.intro {
	margin-bottom: 50px;
}

.intro span {
	color: #E60012;
}

/* All SP */
@media screen and (max-width:640px) {
	.entry_shikaku {
		font-size: 18px;
	}

	.entry_shikaku strong {
		font-size: 20px;
	}

	.entry_tbl dl,
	.entry_tbl dl dt,
	.entry_tbl dl dd,
	.form_tbl dl,
	.form_tbl dl dt,
	.form_tbl dl dd {
		width: 100%;
	}

	.entry_tbl dl dt {
		padding: 10px 0 0;
	}

	.form_tbl dl dt {
		padding: 10px 0;
	}

	.entry_tbl dl dd,
	.form_tbl dl dd {
		padding: 0 0 10px;
	}

	.form_inline > label,
	.form_inline.-half > label,
	.form_inline_cts {
		display: block;
		width: 100%;
	}

	.form_inline_cts.-tel {
		display: inline-block;
		width: 30%;
	}

	.form_inline > label:nth-child(n+2),
	.form_inline_cts:nth-child(n+2) {
		margin: 10px 0 0;
	}

	.form_inline.-half > label:last-child {
		margin: 10px 0 0;
	}

	.form_inline_cts.-tel:nth-child(n+2) {
		margin: 0 0 0 5%;
	}

	.form_inline_cts.-tel:after {
		right: -1.2em;
	}

	.form_inline > label:last-child {
		margin-left: 0;
	}

	.form_submit_btn {
	}

	.form_submit_btn:before {
		left: 18%;
	}

	.form_inline.-per4_6 label {
		width: 100%;
	}

	.form_inline.-per4_6 label.-select {
		width: auto;
	}

	.form_agreement {
		padding: 15px;
		margin-bottom: 30px;
	}

	.form_agree {
		margin-bottom: 30px;
	}

	.form_btns {
		display: block;
		text-align: center;
	}

	.form_btns .form_btn_submit {
		margin-bottom: 20px;
	}

	.form_btn_submit:before {
	    left: 20%;
	}

	input[type="submit"],
	input[type="button"] {
		width: 320px;
	}

	/* サンクスページ */
	body.-thanks .page_ttl {
		font-size: 16px;
	}

}
