@charset "UTF-8";

:root {
  --senkyo-color-main: #5DC2D0;
}

/* Gトップ ニュースブロック */
.senkyo50-newsblock {
  margin-top: 8px;
  background: #F5F5F5 no-repeat 50% 50%;
  background-size: cover;
  padding: 1px;
  position: relative;
}

.senkyo50-newsblock::before {
  content: '';
  display: block;
  width: 100%;
  height: 4px;
  background: var(--senkyo-color-main) 0% 0% no-repeat padding-box;
  position: absolute;
  top: 0;
  left: 0;
}

/* Gトップ ニュースブロック　タイトル */
.senkyo50-newsblock .title-main {
  width: 1200px;
  margin: 16px auto;
  padding: 4px 0 4px 250px;
  background: url(/vol1/images/v2/pc/senkyo/50shu/logo-50shu.svg) no-repeat;
}

.senkyo50-newsblock .title-main a {
  position: relative;
  display: inline-block;
  background: var(--senkyo-color-main);
  padding: 12px 44px 12px 24px;
  line-height: 100%;
  border-radius: 4px;
  color: #FFF;
}

.senkyo50-newsblock .title-main a:after {
  display: block;
  content: '';
  background: url(/vol1/images/v2/common/arrow_white.svg) no-repeat left center;
  background-size: auto;
  background-size: 100%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  position: absolute;
  right: 18px;
  top: 50%;
}

.senkyo50-newsblock .l-wrapper {
  min-width: 1120px;
  width: 1200px;
  margin: auto;
  padding: 1px;
}

.senkyo50-newsblock .l-inner {
  padding: 16px 24px 24px 24px;
  background: rgba(255, 255, 255, 0.9);
}

.senkyo50-newsblock .newsblock-info {}

.senkyo50-newsblock .newsblock-newslist {
  overflow: hidden;
}

.senkyo50-newsblock .newsblock-newslist.hide {
  position: relative;
  height: 100px;
}

.senkyo50-newsblock .newsblock-newslist.hide:after {
  display: block;
  content: '';
  background: -moz-linear-gradient(top, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  background: -webkit-linear-gradient(top, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  background: linear-gradient(to bottom, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  width: 100%;
  height: 60px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.senkyo50-newsblock .newsblock-newslist-row {
  position: relative;
  display: flex;
  gap: 20px;
  align-items: stretch;
  margin-top: 20px;
}

.senkyo50-newsblock .newsblock-newslist .newsblock-newslist-side {
  width: 348px;
  margin-top: auto;
}

.senkyo50-newsblock .newsblock-newslist .newsblock-newslist-side>*:not(:last-of-type) {
  margin-bottom: 16px;
}

.senkyo50-newsblock .newsblock-newslist .graph-ebox {
  padding: 0;
}

.senkyo50-newsblock .newsblock-newslist-more {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  font-size: 1.4rem;
  font-weight: 600;
  color: #0078c6;
  position: relative;
  appearance: none;
  border: 0;
  background: none;
  padding: 0.5em;
  margin-top: 0.5em;
  margin-bottom: 32px;
  cursor: pointer;
}

.senkyo50-newsblock .newsblock-newslist-more::before {
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  background: url(/vol1/images/v2/sp/senkyo/50shu/icon_morebtn_arrowdown.svg) no-repeat;
  background-size: 16px;
}

.senkyo50-newsblock .newsblock-newslist-more.active::before {
  transform: rotate(180deg);
}

/* Gトップ 記事リスト　初期設定 */
.senkyo50-article {
  display: flex;
}

.senkyo50-articlelist {}

.senkyo50-articlelist a:hover .articlelist-title {
  text-decoration: underline;
}

.senkyo50-articlelist .articlelist-item {
  display: flex;
  overflow: hidden;
}

.senkyo50-articlelist .articlelist-image {
  float: none;
  margin-right: 16px;
  height: auto;
  margin-left: 0;
  flex-shrink: 0;
}

.senkyo50-articlelist .articlelist-image::before {
  border: 0;
}

.senkyo50-articlelist .articlelist-image img {
  width: 100%;
  height: auto;
}

.senkyo50-articlelist .articlelist-detail {
  overflow: hidden;
}

.senkyo50-articlelist .articlelist-shoulder {
  font-size: 1.2rem;
}

.senkyo50-articlelist .articlelist-title {
  font-size: 1.6rem;
}

.senkyo50-articlelist .articlelist-shoulder-nolink {
  color: #484848;
  font-size: 1.2rem;
  margin-bottom: 8px;
}

.senkyo50-articlelist .articlelist-detail .articletag:not(:last-child) {
  margin-bottom: 8px;
}

.senkyo50-articlelist .articlelist-detail .text-ellipsis-4 {
  font-size: 1.2rem;
}

.senkyo50-articlelist .articlelist-detail:hover .card-title {
  text-decoration: underline;
}

/* Gトップ　メイン記事（thm264L） */
.senkyo50-articlelist.is-gtop-main .articlelist-image {
  width: 264px;
}

.senkyo50-articlelist.is-gtop-main .articlelist-title {
  font-size: 2rem;
}

/* Gトップ　サブ記事（thm96L） */
.senkyo50-articlelist.is-gtop-sub {
  margin-left: 40px;
}

.senkyo50-articlelist.is-gtop-sub li {
  width: 380px;
}

.senkyo50-articlelist.is-gtop-sub li a {
  display: block;
}

.senkyo50-articlelist.is-gtop-sub li:not(:first-child) a {
  padding-top: 12px;
}

.senkyo50-articlelist.is-gtop-sub li:not(:last-child) a {
  padding-bottom: 12px;
}

.senkyo50-articlelist.is-gtop-sub .articlelist-image {
  width: 96px;
}

/* Gトップ キーワードリスト */
/*.senkyo50-keywords {display: inline-block; margin-bottom: 16px;}
.senkyo50-keywords .title-sub {font-weight: bold;margin-bottom: 8px;}
.senkyo50-keywords li {float: left; margin-right: 8px; margin-bottom: 8px;}
.senkyo50-keywords li a {display: inline-block; padding: 12px 12px; border-radius: 4px; border: 1px solid #0078c8; color: #0078c8; font-weight: bold; font-size: 1.4rem; background: #FFF; }
.senkyo50-keywords li a:hover {background: #0078C6; color: #FFF;}*/
.senkyo50-newsblock .btn-inlinelist .btn {
  min-width: auto;
  padding: 10px 12px;
  font-size: 1.5rem;
}

/* アイコン付きボタン */
.btn.is-big {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border: 2px solid #0078C6;
  background: #FFF;
  text-align: left;
  padding: 16px 56px;
  position: relative;
  max-width: 496px;
  margin: auto;
}

.btn.is-big .btn-lead {
  color: #484848;
  margin-bottom: 8px;
  font-size: 1.2rem;
}

.l-side .btn.is-big .btn-lead {
  color: #0078C6;
}

.btn.is-big .btn-title {
  color: #0078C6;
}

.btn.is-big .btn-title span:nth-of-type(2) {
  font-size: 1.6rem;
}

.btn.is-big::before {
  display: block;
  content: '';
  background: url('/vol1/images/v2/common/arrow_blue.svg') no-repeat left center;
  background-size: auto;
  background-size: 100%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  position: absolute;
  right: 24px;
  top: 50%;
}

.btn.is-big::after {
  display: block;
  content: '';
  background-size: auto;
  background-size: 100%;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  position: absolute;
  left: 16px;
  top: 50%;
}

.btn.is-big:hover {
  background: #0078C6 !important;
}

.btn.is-big:hover::before {
  background-image: url('/vol1/images/v2/common/arrow_white.svg');
}

.btn.is-big:hover .btn-lead,
.btn.is-big:hover .btn-title {
  color: #FFF;
}

/* アイコン えらぼーと */
.is-vote::after {
  background: url('/vol1/images/v2/common/icon_vote.svg') no-repeat left center;
}

.is-vote:hover::after {
  background-image: url('/vol1/images/v2/common/icon_vote_white.svg');
}

/* アイコン タイムライン */
.is-timeline::after {
  background: url('/vol1/images/v2/common/icon_timeline.svg') no-repeat left center;
}

.is-timeline:hover::after {
  background-image: url('/vol1/images/v2/common/icon_timeline_white.svg');
}

/* Gトップ　当選者速報（ティッカー） */
.ticker-wrapper {
  position: relative;
  height: 48px;
  padding: 8px 0;
  background: #fff;
  margin-bottom: 24px;
  overflow: hidden;
}

.ticker {
  box-sizing: content-box;
  width: 496px;
  background: none;
  border: none;
  padding: 0;
}

.ticker ul {
  margin: auto;
  height: 100%;
}

.ticker ul li {
  width: 100% !important;
  display: block !important;
}

.ticker-inner {
  opacity: 0;
  transition: opacity .8s ease-in;
}

.swiper-slide-active .ticker-inner {
  opacity: 1;
}


/*.ticker ul li {top: 50%;transform: translate(0, -50%);}*/
.meikanlist li a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.meikanlist li a span {
  display: inline-block;
  margin-right: 6px;
}

.meikanlist li a span:last-child {
  margin-right: 0;
}

.meikanlist-img {
  display: inline-block;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
  vertical-align: middle;
  border: 1px solid #dbdbdb;
  position: relative;
}

.meikanlist-img img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  width: 32px;
  height: 32px;
}

.meikanlist-elected {
  font-size: 1.2rem;
  min-width: 40px;
  text-align: center;
  padding: 4px 8px;
  line-height: 100%;
  color: #FFF;
  border-radius: 4px;
  background: #E03E3B;
}

.meikanlist-txt {
  font-size: 1.2rem;
}

.meikanlist-name,
.meikanlist-age,
.meikanlist-state {
  font-size: 1.4rem;
  font-weight: 600;
}

.ticker-wrapper .textlink.is-primary {
  color: #484848;
  line-height: 48px;
  position: absolute;
  top: 0;
  right: 0;
  padding-left: 32px;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 20%);
  font-size: 1.4rem;
  font-weight: normal;
  padding-right: 4px;
  z-index: 99;
}

/* Gトップ　候補者テーブル */
table.eBoxTable.eBoxTable-pc {
  font-size: 1.4rem;
  font-weight: 500;
  margin-bottom: 6px;
}

table.eBoxTable.eBoxTable-pc thead tr>th {
  min-width: 40px;
}

table.eBoxTable.eBoxTable-pc thead tr> :first-child {
  width: 100px;
}

table.eBoxTable.eBoxTable-pc th,
table.eBoxTable.eBoxTable-pc td {
  font-size: 1.4rem;
  text-align: center;
  padding: 8px 0;
  font-family: 'Roboto', sans-serif;
}

table.eBoxTable.eBoxTable-pc tr> :last-child {
  font-weight: bold;
}

table.eBoxTable.eBoxTable-pc tr.kaisen> :last-child,
table.eBoxTable.eBoxTable-pc tr.pre-announce> :last-child {
  font-weight: normal;
}

table.eBoxTable.eBoxTable-pc th.block-head {
  text-align: left;
  padding-left: 14px;
}

table.eBoxTable.eBoxTable-pc tr.vertical td {
  width: 20px;
}

table.eBoxTable.eBoxTable-pc tr.party-head th {
  text-align: center;
}

table.eBoxTable.eBoxTable-pc tr.party-head {
  border-bottom: 1px solid #222;
}

table.eBoxTable.eBoxTable-pc tr.hikaisen {
  border-top: 1px solid #222;
}

table.eBoxTable.eBoxTable-pc tr.shinseiryoku {
  border-top: 1px solid #222;
}

table.eBoxTable.eBoxTable-pc tr.shinseiryoku th,
table.eBoxTable.eBoxTable-pc tr.shinseiryoku td {
  font-weight: bold;
}

table.eBoxTable.eBoxTable-pc tr.pre-announce {
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  background: #F5F5F5;
}

table.eBoxTable.eBoxTable-pc tr.district {
  border-top: 1px solid #D9D9D9;
}

table.eBoxTable.eBoxTable-pc tr.proportional {
  border-top: 1px solid #D9D9D9;
}

table.eBoxTable.eBoxTable-pc tr.duplication {
  border-top: 1px solid #D9D9D9;
}

table.eBoxTable.eBoxTable-pc tr.kaisen {
  border-top: 1px solid #D9D9D9;
  background: #F5F5F5;
}

table.eBoxTable.eBoxTable-pc tr.vertical td {
  background: #F5F5F5;
  position: relative;
  width: 20px;
}

table.eBoxTable.eBoxTable-pc tr.ballot {
  background: #F5F5F5;
}

table.eBoxTable.eBoxTable-pc tr.vertical td:before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #D9D9D9;
  position: absolute;
  top: 0;
  right: 0;
}

.E-Box {
  position: relative;
}

.E-Box .title-sub {
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 12px;
  color: #222222;
}

.E-Box .update {
  font-size: 1.2rem;
  position: absolute;
  right: 0;
  top: 4px;
  font-family: 'Roboto', sans-serif;
}

.senkyo50-newsblock .note {
  font-size: 1.0rem;
  margin-bottom: 0;
}

.note+.newsblock-timeline {
  margin-top: 32px;
}

/* 特集　候補者テーブル */
.main-contents .E-Box .title-sub {
  font-size: 2.0rem;
  margin-bottom: 20px;
  color: #222222;
}

.main-contents table.eBoxTable.eBoxTable-pc {
  margin-bottom: 6px;
}

.main-contents table.eBoxTable.eBoxTable-pc th,
.main-contents table.eBoxTable.eBoxTable-pc td {
  font-size: 1.4rem;
}

.main-contents #ebox_main .date {
  font-size: 1.2rem;
  text-align: right;
}

.main-contents #ebox_main .note {
  font-size: 1.2rem;
  padding-left: 0;
}

/*　特集　ローカルナビ　*/
.localnav.is-green {
  box-shadow: 0px -2px 0px rgba(219, 219, 219, 1) inset;
}

.is-green .localnav-list>li a {
  font-size: 1.4rem;
  padding: 0px 16px 10px;
}

.is-green .localnav-list>li.is-active a,
.is-green .localnav-list>li a:hover {
  border-color: var(--senkyo-color-main);
  color: var(--senkyo-color-main);
}

.is-green .localnav-list>li:last-child {
  float: right;
}

/*　特集　注目の選挙区　*/
.senkyo50-featurearea .featurelist {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.senkyo50-featurearea .featurelist li {
  flex-basis: 408px;
  margin-left: 0;
  margin-bottom: 24px;
}

/* 右カラム　当選議席数（与野党） */
.senkyo-sub {
  display: block;
}

.senkyo-sub .gisekicount th,
.senkyo-sub .gisekicount td {
  text-align: center;
  border: 1px solid #DBDBDB;
  line-height: 100%;
  width: 33.33%;
}

.senkyo-sub .gisekicount th {
  font-size: 1.2rem;
  padding: 8px;
  color: #FFF;
}

.senkyo-sub .gisekicount td {
  font-size: 3.2rem;
  padding: 24px 8px;
  font-family: 'Roboto', sans-serif;
}

.senkyo-sub .gisekicount .yoto {
  background: #DB2059;
}

.senkyo-sub .gisekicount .yato {
  background: #2D61AA;
}

.senkyo-sub .gisekicount .ind {
  background: #919191;
}

.senkyo-sub .title-box.title-box-sub {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.senkyo-sub .title-box.title-box-sub .update {
  font-size: 1.2rem;
  margin-bottom: 13px;
  font-family: 'Roboto', sans-serif;
}

/* 右カラム　小選挙区リスト */
.senkyo-sub .area-list {
  margin: 0;
  background: #fff;
}

.senkyo-sub .area-list:after {
  clear: both;
  content: "";
  display: block;
}

.senkyo-sub .area-list dt {
  float: left;
  margin: 0;
  font-weight: bold;
  padding-left: 12px;
  font-size: 1.2rem;
  line-height: 36px;
  width: 70px;
}

.senkyo-sub .area-list dd {
  width: 230px;
  float: left;
}

.senkyo-sub .area-list dd li {
  display: inline-block;
  margin: 0 6px 0 0;
  padding: 2px 0;
  background-image: none;
  vertical-align: middle;
}

.senkyo-sub .area-list dd li a {
  font-size: 1.2rem;
  display: inline-block;
  color: #0078C6;
  line-height: 32px;
  margin: 0 0 0 4px;
  padding: 0;
  letter-spacing: -0.5px;
}

.senkyo-sub .area-list dd li a:hover {
  text-decoration: underline;
}

.senkyo-sub .area-list dt:nth-of-type(2n),
.senkyo-sub .area-list dd:nth-of-type(2n) {
  background: #F4F4F4;
}

/* 右カラム　比例、党派別リスト */
.senkyo-sub .hirei-list li,
.senkyo-sub .party-list li {
  width: 67px;
  height: auto;
  font-size: 1.2rem;
  line-height: 32px;
  text-align: center;
  margin-bottom: 8px;
  margin-right: 8px;
  display: inline-block;
}

.senkyo-sub .hirei-list a,
.senkyo-sub .party-list a {
  display: block;
  width: 100%;
  line-height: 32px;
  border-radius: 4px;
  border: 1px solid #0078C6;
  color: #0078C6;
  font-weight: 600;
  background: #fff;
}

.senkyo-sub .hirei-list a:hover,
.senkyo-sub .party-list a:hover {
  color: #FFF;
  background: #0078C6;
}

/* 右カラム　当選者リスト */
.senkyo-sub .flash li {
  width: 100%;
}

.senkyo-sub .flash a {
  display: block;
  padding: 8px 0;
  border-bottom: 1px solid #CCC;
}

.senkyo-sub .flash li:last-child a {
  border-bottom: none;
}

.senkyo-sub .flash span {
  color: #484848;
}

.senkyo-sub .flash li a span {
  padding: 0;
}

.senkyo-sub .flash .photo {
  display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  vertical-align: middle;
  float: left;
  margin-right: 12px;
  padding: 0 !important;
}

.senkyo-sub .flash .mark {
  font-size: 1.2rem;
  display: inline-block;
  text-align: center;
  min-width: 42px;
  padding: 4px 8px;
  margin-right: 6px;
  line-height: 100%;
  color: #FFF;
  border-radius: 4px;
  background: #E03E3B;
}

.senkyo-sub .flash .name {
  font-size: 1.2rem;
  display: inline-block;
  min-width: 80px;
  font-weight: bold;
  margin-right: 4px;
  padding: 0;
}

.senkyo-sub .flash .age {
  font-size: 1.2rem;
  font-weight: bold;
  margin-right: 4px;
}

.senkyo-sub .flash .state {
  font-size: 1.4rem;
  font-weight: bold;
}

.senkyo-sub .flash .party {
  font-size: 1.2rem;
  margin-right: 12px;
}

.senkyo-sub .flash .area {
  font-size: 1.2rem;
  margin-right: 12px;
}

.senkyo-sub .flash .state::after {
  content: '';
  display: block;
}

/* 右カラム注釈 */
.senkyo-sub .note {
  font-size: 1.2rem;
  padding: 0;
  line-height: 1.4;
}

/* 50shu 追加  */
.btn.is-vote,
.btn.is-bot,
.btn.is-timeline {
  height: 73px;
  overflow: hidden;
}

.btn.is-big.is-bot {
  padding: 16px 130px 15px 24px;
  background: url(/vol1/images/v2/pc/senkyo/27san/btn_erabot_bg.png) no-repeat;
  background-size: cover;
}

/* Gトップ ニュースブロック　えらぼーと・えらぼっと */
.newsblock-erabtn>div {
  width: 48%;
}

.newsblock-erabtn .btn.is-vote {
  height: 64px;
  padding-top: 14px;
  padding-bottom: 14px;
}

.newsblock-erabtn .btn.is-bot {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 64px;
  padding: 0 64px 0 14px;
}

.newsblock-erabtn .btn.is-big.is-vote {
  padding-left: 42px;
}

.newsblock-erabtn .btn.is-big.is-vote .btn-lead {
  font-size: 1rem;
}

.newsblock-erabtn .btn.is-big.is-vote .btn-title {
  font-size: 1.6rem;
}

.newsblock-erabtn .btn.is-big.is-bot {
  background: #fff url(/vol1/images/v2/pc/senkyo/50shu/btn_erabot_half_bg.png) no-repeat;
  background-size: cover;
}

.newsblock-erabtn .btn.is-big.is-bot:hover {
  background: #0078C6;
}

/* Gトップ ニュースブロック　えらぼっとボタン */
.btn-erabot {
  overflow: hidden;
  white-space: nowrap;
  width: 390px;
  display: block;
}

.btn-erabot::before {
  display: inline-block;
  content: '';
  width: 390px;
  height: 40px;
  background: url(/vol1/images/v2/pc/senkyo/50shu/btn_erabot_text.png) no-repeat center;
  background-size: contain;
}

.btn.is-big.is-bot:hover .btn-erabot::before {
  background: url(/vol1/images/v2/pc/senkyo/50shu/btn_erabot_text_on.png) no-repeat center;
  background-size: contain;
}

.btn-erabot-vertical {
  overflow: hidden;
  white-space: nowrap;
  width: 157px;
  display: block;
}

.btn-erabot-vertical::before {
  display: inline-block;
  content: '';
  width: 157px;
  height: 54px;
  background: url(/vol1/images/v2/pc/senkyo/50shu/btn_erabot_text_vertical.svg) no-repeat center;
  background-size: contain;
}

.btn-erabot-horizon {
  overflow: hidden;
  white-space: nowrap;
  width: 240px;
  display: block;
}

.btn-erabot-horizon::before {
  display: inline-block;
  content: '';
  width: 240px;
  height: 36px;
  background: url(/vol1/images/v2/pc/senkyo/50shu/btn_erabot_text_horizon.svg) no-repeat center;
  background-size: contain;
}

.is-kaihyo .btn-erabot-horizon {
  display: none;
}

.l-side .btn-erabot-vertical {
  display: none;
}

.btn.is-big.is-bot:hover .btn-erabot-vertical::before {
  background: url(/vol1/images/v2/pc/senkyo/50shu/btn_erabot_text_vertical_on.svg) no-repeat center;
  background-size: contain;
}

.btn.is-big.is-bot:hover .btn-erabot-horizon::before {
  background: url(/vol1/images/v2/pc/senkyo/50shu/btn_erabot_text_horizon_on.svg) no-repeat center;
  background-size: contain;
}

/* 右カラム　えらぼーとボタン・えらぼっとボタン */
.l-side .eravote-btn {
  margin-bottom: 16px;
}

.l-side .erabot-btn {
  margin-bottom: 56px;
}

/* 検索フォーム */
.l-listmain #subNsearch {
  margin: 0;
  display: flex;
}

.l-listmain #subNsearch input:focus {
  outline: none;
}

.l-listmain #subNsearch input[type="search"] {
  border: 1px solid #333;
  background-color: #F1F1F1;
  line-height: 2rem;
  padding: 0 4px 0 8px;
  flex-grow: 3;
  line-height: 200%;
}

.l-listmain #subNsearch input[type="search"]:focus,
.l-listmain #subNsearch input[type="search"]:hover {
  background-color: #FFF;
}

.l-listmain #subNsearch input[type="submit"] {
  background: #333;
  border: 1px solid #333;
  color: #fff;
  text-align: center;
  line-height: 2rem;
  flex-grow: 1;
}

.l-listmain #subNsearch input[type="submit"]:hover {
  cursor: pointer;
}

#main #subNsearch span {
  font-size: 2.0rem;
  padding: 0 24px 0 0;
  font-weight: bold;
  color: #333;
}

/*　特集　ローカルナビ　*/
.localnav.is-green {
  box-shadow: 0px -2px 0px rgba(219, 219, 219, 1) inset;
}

.is-green .localnav-list>li a {
  font-size: 1.4rem;
  padding: 0px 16px 10px;
}

/*.is-green .localnav-list > li.is-active a,
.is-green .localnav-list > li a:hover { border-color: #868CBF; color: #868CBF;}*/
.is-green .localnav-list>li:last-child {
  float: right;
}


/* PC右カラム党派別立候補者数 candidatetable-------------------------------------- */
.candidatetable {
  position: relative;
}

.candidatetable-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 12px;
}

.candidatetable-header h2 {
  font-size: 1.6rem;
  font-weight: 600;
  color: #222;
}

.candidatetable-header p {
  font-size: 1.2rem;
  color: #484848;
}

@media screen and (max-width: 320px) {
  .candidatetable-header {
    display: block;
  }

  .candidatetable-header p {
    text-align: right;
  }
}

.candidatetable-table {
  position: relative;
}

.candidatetable-table tr {
  border-bottom: 1px solid #dbdbdb;
}

.candidatetable-table th {
  min-width: 45px;
  color: #222;
  font-size: 1.3rem;
  text-align: center;
  padding: 6px 0;
}

.candidatetable-table tbody tr:nth-of-type(2n) {
  background-color: #f4f4f4;
}

.candidatetable-table tbody tr th.party,
.candidatetable-table tbody tr th.total {
  background: #484848;
  color: #fff;
  font-size: 1.3rem;
}

.candidatetable-table.kouji th {
  min-width: 55px;
}

.candidatetable-table td {
  font-size: 1.2rem;
  text-align: center;
  padding: 7px 0;
  min-width: 45px;
  white-space: nowrap;
}

@media screen and (max-width: 375px) {
  .candidatetable-table.kouji th {
    min-width: 55px;
  }

  .candidatetable-table th {
    min-width: 45px;
  }
}

.candidatetable-table thead tr {
  background-color: #D9D9D9;
}

.candidatetable-table tbody tr:last-child {
  border-bottom: none;
}

.candidatetable-table tbody td {
  font-family: "Roboto";
  font-size: 1.4rem;
}

.candidatetable-table thead .block-head>th:first-child {
  background: #484848;
  border-bottom: 1px solid #dbdbdb;
}

.candidatetable-table tr.block-secondary {
  border: 0;
  color: #6C6C6C;
  background: #fff;
}

.candidatetable-table thead tr.block-head {
  border-bottom: 0;
}

.candidatetable-table tbody .area,
.candidatetable-table tbody .hirei,
.candidatetable-table tbody .kaisen {
  color: #6C6C6C;
}

.candidatetable-table thead tr.block-head td {
  padding: 7px 0;
}

.candidatetable-table tbody>tr:last-child {
  border-bottom: 1px solid #dbdbdb;
}

.candidatetable-table.hide::after {
  display: block;
  content: '';
  background: -moz-linear-gradient(top, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  background: -webkit-linear-gradient(top, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  background: linear-gradient(to bottom, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  width: 100%;
  height: 60px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.candidatetable-footer .note {
  margin-bottom: 20px;
  font-size: 1.0rem;
  text-align: left;
  color: #484848;
}

.candidatetable-morebtn {
  font-size: 1.4rem;
  font-weight: 600;
  color: #0078c6;
  position: relative;
  text-align: center;
  margin-bottom: 32px;
}

.candidatetable-table:not(.hide)~.candidatetable-morebtn {
  margin-bottom: 10px;
  margin-top: 32px;
}

.candidatetable-morebtn::after {
  display: inline-block;
  content: '';
  width: 16px;
  height: 16px;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
}

.candidatetable-table.hide~.candidatetable-morebtn::after {
  background: url(/vol1/images/v2/sp/senkyo/27san/icon_morebtn_arrowdown.svg) no-repeat;
  background-size: 16px;
  bottom: -20px;
}

.candidatetable-table:not(.hide)~.candidatetable-morebtn::after {
  background: url(/vol1/images/v2/sp/senkyo/27san/icon_morebtn_arrowup.svg) no-repeat;
  background-size: 16px;
  top: -20px;
}

.candidatetable-table tbody .summary td {
  font-weight: 600;
}


/* 名鑑用 */
.l-listmain .Candidates {
  border-top: 1px solid #cccccc;
}

.l-listmain .Candidates+.Candidates {
  margin-top: -1px;
}

.l-listmain .ContentsDataTab+.Candidates {
  border-top: 0;
}

.l-listmain .ContentsDataTab+.Candidates+.Candidates {
  margin-top: 0;
  border-top: 0;
}

.ContentsDataTab {
  border-bottom: 2px solid #0078c6;
  margin-top: 15px;
}

.ContentsData_v2.meikan_list a {
  padding: 2px 0;
}

.ContentsData_v2.meikan_list a>span.g_item2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-left: 20px;
  width: 330px;
}

.ContentsData_v2.meikan_list .ElectedMark {
  height: 100%;
}

.ContentsData_v2.meikan_list .Photo {
  width: auto;
}

.ContentsData_v2.meikan_list .Photo img {
  width: 100%;
  height: 58px;
}

.ContentsData_v2.meikan_list .Name {
  width: auto;
  font-size: 1.6rem;
  text-align: left;
  font-weight: bold;
  padding-left: 0;
  padding-top: 5px;
}

.ContentsData_v2.meikan_list a>span.g_item2 .bottomBlock {
  padding: 5px 0;
}

.ContentsData_v2.meikan_list a>span.g_item2 .bottomBlock span {
  width: auto;
}

.ContentsData_v2.meikan_list a>span.g_item2 .bottomBlock span+span {
  margin-left: 10px;
}

.ContentsData_v2.meikan_list .VotesCount.VotesCountTokutei {
  position: relative;
}

.ContentsData_v2.meikan_list .VotesCount.VotesCountTokutei::before {
  content: "";
  width: 1em;
  height: 1px;
  display: block;
  background: #333;
  font-size: 1.6rem;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.ContentsData_v2.meikan_list .ElectedMark {
  line-height: 140%;
}

/* 名鑑の見方 */
.Mikata .Mikata_blcok {
  display: block;
}

.Mikata p {
  color: #484848;
}

/* 個人名鑑 */
.MeikanWrap table.toukaku {
  border: none;
  border-top: 1px solid #ccc;
  border-bottom: 0;
}

.Meikan1 {
  border-top: 1px solid #ccc;
}

.Meikan1 .KohoData {
  position: relative;
}

.Meikan1 .Name {
  font-size: 185%;
  font-weight: bold;
  line-height: 110%;
  margin: 0;
  padding: 8px 0 4px;
}

.Meikan1 .Yomi {
  font-size: 80%;
  padding: 0;
}

.Meikan1 .Age {
  font-size: 100%;
  padding: 10px 0 0;
  margin-top: 8px;
  display: inline-block;
}

.Meikan1 .Vote {
  position: absolute;
  right: 20px;
  bottom: 20px;
}

.Meikan1 .ElectedMark {
  position: absolute;
  right: 0;
  bottom: 0;
}

.Meikan1 .ElectedMark span,
.Meikan2 .DuptdcateElectedMark span {
  margin-right: 0;
}

.Meikan2 th {
  text-align: left;
}

.Meikan2 tr:last-child th,
.Meikan2 tr:last-child td {
  border-bottom: 1px solid #ccc;
}

/* 候補者アンケート */
.Questionnaire {
  margin-bottom: 40px;
  border-bottom: none;
}

.Questionnaire ul {
  margin-top: 10px;
}

.Questionnaire li.Question.freeText {
  padding-left: 2px;
  text-indent: 0;
}

.Candidates+.ContentsHeader {
  margin-top: 32px;
}

.ContentsHeader {
  margin-bottom: 0;
}

.DuptdcateData {
  display: flex;
  justify-content: space-between;
}

.MeikanWrap table td {
  position: relative;
}

.meikan_list a span {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}



/* END */