/* サイト名 基本設定CSS */

/* contents */
#contents.campaign {
	padding-bottom: 0;
	background: url(images/bg-contents.png) repeat-x top left #fff;
	/*background-color: #FFF;*/
}
#contents.campaign.campaign-form {
	background: url(images/bg-contents-form.png) repeat-x top left #fff;
}

/* campaign-all-wrap */
#campaign-all-wrap {
	width: 1246px;
	margin: 0 auto;
	/*background-color: #FFF;*/
}

/* campaign-main-img */
#campaign-main-img {
	position: relative;
}

/* campaign-contens-wrap */
#campaign-contens-wrap {
	width: 1246px;
	margin: 4px auto;
	/*background: url(images/bg-koukun.png) repeat-y scroll;*/
	position: relative;
}

/* campaign-contens-pane */
#campaign-contens-pane {
	width: 848px;
	margin: 0 auto;
}

/* sign-up-btn */
.sign-up-btn {
	text-align: center;
}

	.sign-up-btn .btn {
		display: inline-block;
		width: 537px;
		height: 67px;
		background-position: top;
		background: url(images/btn-sign-up.png) no-repeat scroll;
		position: relative;
		z-index: 200;
	}

	.sign-up-btn .btn:hover {
		background-position: 0 -67px;
	}

	.sign-up-btn .btn span {
		display: none;
	}

	.sign-up-btn .character {
		display: none;
		position: absolute;
		top: -66px;
		left: 240px;
		z-index: 100;
	}

/* sign-up-btn.top */
.sign-up-btn.top .btn {
	margin: 0 0 20px;
	/*margin: 40px 0 20px;*/
}

/* sign-up-btn.bottom */
.sign-up-btn.bottom .btn {
	margin: 40px 0 60px;
}

/* contens-body */
.contens-body {
	font-size: 14px;
	line-height: 20px;
	padding-top: 40px;
}

.contens-body .fc-red {
	color: #e12000;
}

.contens-body table {
	border-top: 1px dotted #999;
	border-collapse: collapse;
	margin: 0 25px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

	.contens-body table th,
	.contens-body table td {
		vertical-align: top;
		text-align: left;
		border-bottom: 1px dotted #999;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	.contens-body table th {
		width: 127px;
		padding: 10px;
		color: #c30000;
	}

	.contens-body table td {
		padding: 10px 30px 10px 0;
	}

	.contens-body table ul {
	}

	.contens-body table li {
		list-style: disc;
		margin-left: 17px;
	}



/*campaign-btn-area*/
.campaign-btn-area {
	padding: 20px 0;
	width: 100%;
}

.campaign-btn-area > div {
	width: 537px;
	margin: 0 auto;
}

	.campaign-btn-area .campaign-btn {
		cursor: pointer;
		border: none;
		display: block;
		height: 67px;
		text-align: left;
		text-indent: -9999px;
		white-space: nowrap;
		overflow: hidden;
		background-position: top;
		margin: 0 auto 20px;
	}

	.campaign-btn-area .campaign-btn.confirm {
		background:url(images/btn-confirm.png) no-repeat;
		width: 537px;
	}

	.campaign-btn-area .campaign-btn.submit {
		background:url(images/btn-submit.png) no-repeat;
		width: 537px;
	}

	.campaign-btn-area .campaign-btn.return {
		background:url(images/btn-return.png) no-repeat;
		width: 437px;
	}

	.campaign-btn-area .campaign-btn:hover {
		background-position: 0 -67px;
	}


/* table.form */
.contens-body table.form th {
	color: #181818;
	padding: 20px 0 20px 10px;
	width: 230px;
	vertical-align: top;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

	.contens-body table.form th .must {
		font-size: 12px;
		font-weight: normal;
		padding-left: 5px;
	}

.contens-body table.form td {
	padding: 20px 10px 20px 0;
	font-size: 12px;
	width: 568px;
}

	.contens-body table.form td label input {
	    cursor: pointer;
	    width: 20px;
	}
	.contens-body table.form td input {
	    margin-right: 5px;
	    padding: 3px;
	    width: 320px;
	    -webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	.contens-body table.form td textarea {
	    height: 300px;
	    width: 520px;
	    max-width: 520px;
	    min-width: 520px;
	    min-height: 300px;
	    padding: 3px;
	    -webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	.contens-body table.form td .error {
		display: inline-block;
		font-weight: bold;
		color: #B62020;
		margin-top: 5px;
	}

/* thanks-box */
.thanks-box {
	margin: 0 25px;
	min-height: 500px;
}


/*other-campaign*/
#other-campaign {
	width: 798px;
	margin: 0 auto 40px;
	text-align: center;
}

.btn-other-campaign {
	display: inline-block;
	width: 537px;
	height: 67px;
	background:url(images/campaign-btn.png) no-repeat top left;
	text-align: left;
	text-indent: -9999px;
}

.btn-other-campaign:hover {
	background-position: bottom left;
}

/* 追記 20141106 */
.note {
	font-size: 12px;
	line-height: 20px;
}
.contens-body .note{
	margin-left: 35px;
}

/* 汎用クラス */
.mb-5 { margin-bottom: 5px !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-20 { margin-bottom: 20px !important; }
.mb-25 { margin-bottom: 25px !important; }
.mb-30 { margin-bottom: 30px !important; }
