@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.eBox {width: 100%; margin-bottom: 6px; border-collapse: collapse; }
table.eBox th,
table.eBox td{padding: 8px 0; font-size: 1.2rem;text-align: center; font-family:'Roboto',sans-serif;}
table.eBox th.block-head{text-align: left;padding-left: 8px;}
table.eBox tr.party-head th {border-bottom: 2px solid #8B8B8B; }
table.eBox tr.party-head,
table.eBox tr:nth-child(2n){background: #F4F4F4;}
table.eBox td:last-child {font-weight: bold; color:#222222;}
.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.eBox {margin-bottom: 14px;}
.main-contents table.eBox th,
.main-contents table.eBox td{font-size: 1.4rem;}
.main-contents #ebox_main .note {font-size: 1.2rem;}

/*　特集　ローカルナビ　*/
.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 .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;}

/* 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/50shu/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;}

/* END */
