@charset "utf-8";

/* ---------------------------------------------------------------------- */
/* 全体定義 */
/* ---------------------------------------------------------------------- */
html, body {
	height: 100%;
}

body {
	font-size: 14px;
	background-color: #fff1f8;
	background-image: url(../../img/election/knight2017/bg.jpg);
	background-position: center 38px;
	background-repeat: repeat-x;
}

/* ---------------------------------------------------------------------- */
/* 汎用 */
/* ---------------------------------------------------------------------- */
#cboxContent {
	cursor: default !important;
}
/* ----- 下限幅 ----- */
.common-width {
	margin-right: auto;
	margin-left: auto;
	min-width: 900px;
	max-width: 904px;
}
	* html .common-width {
		width: 900px;
	}

/* ----- ボタン ----- */
.button,
.button-l {
	cursor: pointer;
	display: block;
	height: 50px;
	color: #000;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 3.3;
	text-decoration: none;
}
	.button:hover,
	.button-l:hover {
		background-position: 0 -51px;
	}

.button {
	width: 224px;
	background-image: url(../../img/election/knight2017/navi/button.png);
}
	.button:hover {
		background-position: 0 -50px;
	}
	.button.dark {
		background-image: url(../../img/election/knight2017/navi/button_2.png);
	}
.button-l {
	width: 427px;
	background-image: url(../../img/election/knight2017/navi/button_l.png);
}
	.button-l:hover {
		background-position: 0 -51px;
	}

/* ---------------------------------------------------------------------- */
/* スクエニヘッダ */
/* ---------------------------------------------------------------------- */
#sqex-header {
	min-width: 904px;
	height: 37px;
	background-color: #000;
	border-bottom: 1px solid #838383;
}

/* ----- 親CSSの上書き ----- */
#container {
	width: auto;
	background-image: none;
}

div#sqexFooter {
	min-width: null;
	min-width: 904px;
	width: auto;
}

/* ---------------------------------------------------------------------- */
/* ヘッダエリア */
/* ---------------------------------------------------------------------- */
#header {
	position: relative;
	margin: auto;

	background-image: url(../../img/election/knight2022/header/title.jpg);
	background-repeat: no-repeat;
}

/* ----- リード文 ----- */
#head-lead {
	position: relative;
	padding-top: 263px;
	background-image: url(../../img/election/knight2022/header/lead/bg.png);
	background-repeat: no-repeat;
	background-position: -8px 190px;

}
	/* リードテキスト */
	#head-lead-text {
		text-align: center;
		line-height: 1.5;
	}
	#head-lead .button-l {

	}

/* ---------------------------------------------------------------------- */
/* メインエリア */
/* ---------------------------------------------------------------------- */
#main {
	margin: auto;
	padding-bottom: 60px;
}

/* ----- フレーム ----- */
#frame {
	margin-right: auto;
	margin-left: auto;
	width: 900px;
	background-image: url(../../img/election/knight2017/frame/main.png);
}
	#frame-main {
		padding-bottom: 12px;
	}
	#frame-top {
		background-image: url(../../img/election/knight2017/frame/top.png);
		background-position: 0 top;
	}
	#frame-bottom {
		background-image: url(../../img/election/knight2017/frame/bottom.png);
		background-position: 0 bottom;
	}
	#frame-top,
	#frame-bottom {
		background-repeat: no-repeat;
	}

/* ----- 投票ルール ----- */
#vote-rule {
	padding-top: 17px;
	padding-bottom: 20px;
	text-align: left;
}
	#vote-rule div {
		position: relative;
	}
		#vote-rule div img {
			display: block;
			margin-right: auto;
			margin-left: auto;
		}
		#vote-rule div a {
			position: absolute;
			left: 250px;
			top: 103px;
			display: block;
			width: 125px;
			height: 19px;
			background-image: url(../../img/election/knight2017/misc/rule_link.png);
		}
			#vote-rule div a:hover {
				background-position: 0 -20px;
			}

/* ----- 選択肢リスト ----- */
#candidates-list {
	padding-left: 17px;
}
	#candidates-list li {
		padding-bottom: 3px;
		padding-right: 5px;
		float: left;
	}
	/* 選択肢１単位 */
	.candidates-list-item {
		cursor: pointer;
		display: block;
		width: 140px;
		text-decoration: none;
	}
		/* ホバー状態 */
		.candidates-list-item:hover .candidates-list-item-img {
			background-position: 0 bottom;
		}
		/* 画像 */
		.candidates-list-item-img {
			width: 140px;
			height: 100px;
			background-image: url(../../img/election/knight2017/navi/thumb.png);
		}
		.candidates-list-item img {
			position: relative;
			top: 3px;
			display: block;
			margin-right: auto;
			margin-left: auto;
			width: 134px;
			height: 94px;
		}
		/* 名前 */
		.candidates-list-item-label {
			color: #fff;
			font-weight: bold;
			text-align: center;
		}

/* ---------------------------------------------------------------------- */
/* モーダル表示 */
/* ---------------------------------------------------------------------- */
.candidate-modal {
}
	/* リプレイス枠 */
	#candidate-modal-container {
		padding-top: 20px;
		padding-bottom: 20px;
		width: 840px;
	}
	/* メイン枠 */
	.candidate-modal-main {
		position: relative;
		margin-right: auto;
		margin-left: auto;
		width: 770px;
    border: 5px solid #76a1a4;
    background-color: #e4edee;
	}
	/* ヘッド見出し */
	.candidate-modal-head {
		padding-top: 16px;
		padding-bottom: 14px;
		text-align: center;
	}

	/* モーダル確認画面 */
	.candidate-modal-confirm {
	}
	/* 写真フレーム */
	.candidate-modal-img {
		width: 439px;
		height: 317px;
		background-image: url(../../img/election/knight2022/modal/img_frame.png);
	}
		.candidate-modal-img-content {
			padding-top: 8px;
			padding-left: 8px;
		}
			.candidate-modal-img-content img {
				display: block;
				width: 422px;
				height: 300px;
			}
	/* 名前とキャッチ */
	.candidate-modal-label {
		margin-bottom: 12px;
		margin-right: auto;
		margin-left: auto;
		width: 373px;
		text-align: center;
		line-height: 1.5;
		background-image: url(../../img/election/knight2022/modal/name_bg.png);
		background-position: center;
		background-repeat: no-repeat;
	}
		/* 名前 */
		.candidate-modal-label-name {
			font-size: 16px;
			font-weight: bold;
		}
		/* 前回成績 */
		.candidate-modal-label-result {
			margin-top: 5px;
			color: #007b91;
			font-size: 12px;
		}
	/* 候補者画像と吹き出し */
	.candidate-modal-comment {
		position: relative;
	}
		.candidate-modal-comment table {
			position: relative;
			z-index: 100;
			width: 100%;
		}
	/* 吹き出し */
	.candidate-modal-fukidashi {
		width: 357px;
		height: 158px;
		line-height: 1.5;
		background-image: url(../../img/election/knight2019/modal/fukidashi.png);
	}
		.candidate-modal-fukidashi-content {
			display: table-cell;
			padding-left: 48px;
			padding-right: 20px;
			height: 158px;
			vertical-align: middle;
		}
	/* 次へ前へ */
	.candidate-modal-navi {
		padding-left: 8px;
		padding-right: 8px;
		width: 49px;
	}
	.candidate-modal-next,
	.candidate-modal-prev {
		margin-top: 70px;
	}
		.candidate-modal-next a,
		.candidate-modal-prev a {
			cursor: pointer;
			display: block;
			margin-right: auto;
			margin-left: auto;
			width: 33px;
			height: 49px;
		}
		.candidate-modal-next a {
			background-image: url(../../img/election/knight2017/modal/navi/next.png);
		}
		.candidate-modal-prev a {
			background-image: url(../../img/election/knight2017/modal/navi/prev.png);
		}
			.candidate-modal-next a:hover,
			.candidate-modal-prev a:hover {
				background-position: 0 bottom;
			}
	/* モーダルボタン */
	.candidate-modal-bottom-navi {
		margin-right: auto;
		margin-left: auto;
		margin-top: 20px;
		margin-bottom: 20px;
	}
		.candidate-modal-bottom-navi td {
			padding-right: 10px;
			padding-left: 10px;
		}
	/* モーダルをとじる */
	.candidate-modal-close {
		cursor: pointer;
		position: absolute;
		right: -20px;
		top: -20px;
		display: block;
		width: 33px;
		height: 33px;
		background-image: url(../../img/election/knight2017/navi/close.png);
	}
		.candidate-modal-close:hover {
			background-position: 0 bottom;
		}
	/* 投稿念押し画面の確認文 */
	#candidate-modal-check-confirm {
		padding-top: 20px;
		font-weight: bold;
		text-align: center;
	}
		#candidate-modal-check-notice {
			padding-bottom: 20px;
			color: #c40000;
			font-weight: bold;
			text-align: center;
		}
	/* 投稿終了画面 */
	#candidate-modal-success {
		width: 670px;
		margin-bottom: 140px;
	}
	#candidate-modal-end {
		position: relative;
		width: 660px;
	}
		/* 終了テキスト */
		#candidate-modal-end-text {
			padding-left: 44px;
			padding-bottom: 5px;
		}
		/* ミローレ */
		#candidate-modal-end img {
			position: absolute;
			top: -56px;
			left: 450px;
		}
	/* エラーテキスト */
	.candidate-modal-error {
		padding-top: 20px;
		color: #c40000;
		font-weight: bold;
		text-align: center;
	}
