@charset "utf-8";

/* ---------------------------------------------------------------------- */
/* 全体定義 */
/* ---------------------------------------------------------------------- */
html,
body {
  height: 100%;
}

body {
  font-size: 14px;
  background-color: #fff1f8;
  background-image: url(../..//img/election/queen2017/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/queen2017/navi/button.png);
}
.button:hover {
  background-position: 0 -50px;
}
.button.dark {
  background-image: url(../../img/election/queen2017/navi/button_2.png);
}
.button-l {
  width: 427px;
  background-image: url(../../img/election/queen2017/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/queen2025/header/title.jpg?20190704);
  background-repeat: no-repeat;
}

/* ----- リード文 ----- */
#head-lead {
  position: relative;
  padding-top: 263px;
  background-image: url(../../img/election/queen2025/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/queen2017/frame/main.png);
}
#frame-main {
  padding-bottom: 12px;
}
#frame-top {
  background-image: url(../../img/election/queen2017/frame/top.png);
  background-position: 0 top;
}
#frame-bottom {
  background-image: url(../../img/election/queen2017/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: 253px;
  top: 103px;
  display: block;
  width: 125px;
  height: 19px;
  background-image: url(../../img/election/queen2017/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/queen2017/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 #cd6ee2;
  background-color: hsl(295, 100%, 97%);
}
/* ヘッド見出し */
.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/queen2022/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-left: auto;
  margin-right: auto;
  width: 373px;
  text-align: center;
  line-height: 1.5;
  background-image: url(../../img/election/queen2022/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: 10px;
  color: #86129d;
}

/* 吹き出し */
.candidate-modal-fukidashi {
  width: 357px;
  height: 158px;
  line-height: 1.5;
  background-image: url(../../img/election/queen2017/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/queen2017/modal/navi/next.png);
}
.candidate-modal-prev a {
  background-image: url(../../img/election/queen2017/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/queen2017/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;
}
