/*** 選挙速報ページ 追加20190327 ***/
.bg-senkyo {
	background-image: url("../../images/bg_senkyo.jpg");
	background-position: 50% 0%;
	background-repeat: repeat-x;
	background-color:#f8f8f8;
}
#senkyo-title {
	background: -webkit-radial-linear-gradient(#ffffff, #e7f4fd);
	background: radial-gradient(#ffffff, #e7f4fd);
	width: 100%;
	height: 50px;
	margin: 10px auto;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	border: solid 1px #146CB7;
}
#senkyo-title-text {
	font-size: 180%;
	color: #333333;
}
/* 選挙速報ページ・地域選択 */
#senkyo-areaselect {
	width: 100%;
	margin: 10px auto;
}
#senkyo-areaselect .btn-areaselect{
	width: 30%;
	margin: 10px auto;
	text-align: center;
	font-size: 14px;
}
#senkyo-areaselect .btn-areaselect p {
	background: #1483b7;
	height: 30px;
	margin: 3px auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
#senkyo-areaselect .btn-areaselect a {
	text-decoration: none;
}
#senkyo-areaselect .btn-areaselect-space {
	width: 2.5%;
}
#senkyo-areaselect a:hover {
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	-khtml-opacity: 0.8;
	opacity: 0.8;
}
/* 選挙速報ページ・地域ヘッダー */
.senkyo-h3-header {
	font-size: 20px;
	border-left: #004986 solid 5px;
	background-color:#136cb7;
}
.header-data-area {
	font-size: 20px;
	padding: 10px 0 5px 10px;
	color: #fff;
}
.senkyo-h3-header .header-data1 {
	float: right;
	margin: 0px 10px 5px 10px;
}
.senkyo-h3-header .header-data2 {
	float: right;
	margin: 0px 10px 5px 0;
}
.senkyo-h3-header .header-data-left {
	background-color:#ddd;
	padding: 5px 10px;
	font-size: 14px;
	font-weight: bold;
	float: left;
	-webkit-border-top-left-radius: 20px;
	-webkit-border-bottom-left-radius: 20px;
	-moz-border-radius-topleft: 20px;
	-moz-border-radius-bottomleft: 20px;
}
.senkyo-h3-header .header-data-right {
	background-color:#fff;
	padding: 5px 10px;
	font-size: 20px;
	font-weight: bold;
	float: left;
	-webkit-border-bottom-right-radius: 20px;
	-webkit-border-top-right-radius: 20px;
	-moz-border-radius-bottomright: 20px;
	-moz-border-radius-topright: 20px;
}
/* 選挙速報ページ・データ */
.senkyo-kaihyo-window {
	background-color:#fff;
	border-bottom: 3px #d5d5d5 solid;
	border-right: 1px #d5d5d5 solid;
	padding: 15px 0;
	margin-bottom: 20px;
}
.senkyo-kaihyo-mark {
	width: 50px;
	float: left;
}
/* 選挙速報ページ・データヘッダー */
.senkyo-kaihyo-data0 {
	border: 2px #dfdfdf solid;
	background-color:#dfdfdf;
	margin: 0 0 10px 0;
}
.senkyo-kaihyo-data-name0 {
	padding: 0px 20px 0px 5px;
	font-weight: bold;
}
.senkyo-kaihyo-data-touha0 {
	padding: 0px 20px 0px 5px;
	font-weight: bold;
}
.senkyo-kaihyo-data-hyou0 {
	padding: 0px 20px 0px 5px;
	font-weight: bold;
}
/* 選挙速報ページ・候補者ブロック */
.senkyo-kaihyo-data-block {
	margin: 0px 5px 0px 5px;
}
.senkyo-kaihyo-data-photo {
	text-align: left;
	float: left;
	padding-right: 5px;
}
.senkyo-kaihyo-data-photo-wo {
	text-align: left;
	float: left;
	padding-right: 5px;
}
.senkyo-kaihyo-data-photo img {
	vertical-align: text-top;
}
.senkyo-kaihyo-data2 {
	/*float: left;*/
	border: 2px #e6a84e solid;
	background: -moz-linear-gradient(top, #fffffe, #fff4d2);
	background: -webkit-linear-gradient(top, #fffffe, #fff4d2);
	background: linear-gradient(to bottom, #fffffe, #fff4d2);
	border-radius: 10px;
  	-webkit-border-radius: 10px;
  	-moz-border-radius: 10px;
	margin: 0 0 6px 0;
	min-height: 60px;
}
.senkyo-kaihyo-data1 {
	/*float: left;*/
	border: 2px #68a6da solid;
	background-color:#fff;
	border-radius: 10px;
  	-webkit-border-radius: 10px;
  	-moz-border-radius: 10px;
	margin: 0 0 6px 0;
	min-height: 60px;
}

.senkyo-kaihyo-mark1 {
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	padding: 8px 8px;
	display:inline-block;
	border: 2px #dd0d0d solid;
	background-color:#f51515;
	border-radius: 20px;
  	-webkit-border-radius: 20px;
  	-moz-border-radius: 20px;
	margin: 11px 0 0 5px;
}
.senkyo-kaihyo-mark2 {
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	padding: 6px 6px;
	display:inline-block;
	border: 2px #db3c07 solid;
	background-color:#f54e16;
	border-radius: 10px;
  	-webkit-border-radius: 10px;
  	-moz-border-radius: 10px;
	margin: 13px 0 0 5px;
}
.senkyo-kaihyo-mark3 {
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	padding: 8px 8px;
	display:inline-block;
	border: 2px #dd0d0d solid;
	background-color:#f51515;
	border-radius: 20px;
  	-webkit-border-radius: 20px;
  	-moz-border-radius: 20px;
	margin: 5px 8px;
}

/* 選挙特設ページ */
.senkyo-contents-area h1, .senkyo-contents-area h2, .senkyo-contents-area h3, .senkyo-contents-area h4, .senkyo-contents-area p {
	font-size: revert;
	margin: revert;
	padding: revert;
	border: revert;
}
.senkyo-title {
	padding-top: 1rem;
	padding-bottom: 1rem;
	--tw-bg-opacity: 1;
	background-color: rgb(30 58 138 / var(--tw-bg-opacity, 1));
	text-align: center;
	font-size: 1.875rem;
	line-height: 2.25rem;
	font-weight: 800;
	letter-spacing: 0.025em;
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.senkyo-head {
	width: 100%;
}

#senkyo-news-frame {
	width: 100%;
	height: 200px;
	overflow-y: hidden;
	border: none;
}

.senkyo-menu {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	background-color: rgb(147 197 253 / var(--tw-bg-opacity, 1));
}
.senkyo-menu-item {
	width: 48%;
	margin: 0.5% 1%;
	border-radius: 10px;
	cursor: pointer;
	text-align: center;
}
.senkyo-menu-item:hover {
	transition: .2s;
	background-color: rgb(96 165 250);
}
.senkyo-menu-item p {
	padding: 10px;
	color: #fff;
}
.senkyo-menu p {
	font-size: 16px;
	font-weight: 600;
}
.senkyo-menu .active {
	background-color: #fff;
}
.senkyo-menu .active p {
	color: #0F172A;
}
.senkyo-contents-area {
	padding: 10px 0;
}
.p-5 {
	padding: 5px 0;
}
.swiper-slide {
	max-width: 280px;
	transition-duration: 0ms;
	transform: translate3d(0px, 0px, 0px) rotateX(0deg) rotateY(0deg) scale(1);
	z-index: 1;
	transform-style: preserve-3d;
	flex-shrink: 0;
	max-width: 250px;
	height: 100%;
	position: relative;
	transition-property: transform;
	display: block;
	border-radius: 1rem;
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
	padding: 1rem;
	text-align: left;
}
.district {
	width: 120px;
	text-align: center;
	background-color: #3E98C2;
	color: #fff;
	border-radius: 1rem;
	margin-bottom: 5px;
	padding: 3px 0;
}
.candidate {
	width: 250px;
}
.candidate p {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
}
.candidate .img {
	text-align: center;
}
.candidate .img img {
	border-radius: 9999px;
	margin-bottom: 0.5rem;
	margin-left: auto;
	margin-right: auto;
	width: 180px;
	height: auto;
}
.candidate .name {
	--tw-text-opacity: 1;
	color: rgb(30 64 175 / var(--tw-text-opacity, 1));
	font-weight: 700;
	font-size: 22px;
	line-height: 1.75rem;
	margin-bottom: 5px;
}
.candidate .party {
	display: flex;
	gap: 5px;
	font-size: 16px;
}
.candidate .sns {
	display: flex;
	width: 100%;
	justify-content: end;
	margin: 5% 2%;
}
.candidate .sns a {
	width: 15%;
	margin: 0 2%;
}
.candidate .thumb {
	--tw-text-opacity: 1;
	color: rgb(29 78 216 / var(--tw-text-opacity, 1));
	font-weight: 600;
	font-size: 18px;
	line-height: 1.5rem;
	margin: 0.5rem 0;
}
.candidate .kouyaku-list {
	font-size: 0.875rem;
	line-height: 1.25rem;
	list-style-type: disc;
	list-style-position: inside;
	margin-bottom: 0.5rem;
	padding-inline-start: 10px;
}
.candidate .prof-link {
	--tw-text-opacity: 1;
	color: rgb(29 78 216 / var(--tw-text-opacity, 1));
	font-weight: 600;
	cursor: pointer;
	font-size: 18px;
	margin-top: 5px;
}
.candidate .mt-2 {
	margin-top: 0.5rem;
}
.senkyo-contents-area .tab_panel {
	display: none;
}
.senkyo-contents-area .active {
	display: block;
}
#kouyaku {
	font-weight: 600;
}
#kouyaku .senkyo-kouyaku-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.5rem;
}
#kouyaku .senkyo-kouyaku-menu .menu-btn {
	font-size: 16px;
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity, 1));
	padding-left: 1rem;
	padding-right: 1rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	--tw-bg-opacity: 1;
	background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
	border-radius: 9999px;
	cursor: pointer;
}
#kouyaku .senkyo-kouyaku-menu .active {
	color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
	background-color: #88BFFC;
}
#kouyaku .senkyo-kouyaku-desc {
	margin: 20px 10px;
}
#kouyaku .senkyo-kouyaku-desc .active {
	display: block;
}
#kouyaku .senkyo-kouyaku-desc-block {
	display: none;
	text-align: left;
	background-color: #fff;
	border-radius: 5px;
	padding: 10px;
	font-size: 16px;
}
#kouyaku .senkyo-kouyaku-contents {
	margin-top: 20px;
	display: grid;
	justify-content: normal;
	gap: 1rem;
	font-size: 16px;
}
#kouyaku .senkyo-kouyaku-block {
	display: none;
	width: 92%;
	padding: 2%;
	margin: 0 2%;
	text-align: left;
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
	border-radius: 0.25rem;
	--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
#kouyaku .senkyo-kouyaku-block p {
	margin: 0;
}
#kouyaku .senkyo-kouyaku-block .head {
	display: flex;
	align-items: center;
	gap: 1rem;
}
#kouyaku .senkyo-kouyaku-block .head img {
	border-radius: 9999px;
	margin-bottom: 0.5rem;
	width: 80px;
	height: auto;
}
#kouyaku .senkyo-kouyaku-block .head .name {
	font-weight: 700;
	font-size: 22px;
}
#kouyaku .senkyo-kouyaku-contents .active {
	display: block;
}
#kouyaku .senkyo-kouyaku-block .youtube-btn {
	width: 180px;
	background-color: #1E3A8A;
	text-align: center;
	border-radius: 999px;
	color: #fff;
	margin-top: 10px;
}
#kouyaku .senkyo-kouyaku-block .youtube-btn:hover {
	transition: .2s;
	background-color: #b5c5f4;
}
#kouyaku .senkyo-kouyaku-block .youtube-btn a {
	color: #fff;
	text-decoration: none;
}
#kouyaku .senkyo-kouyaku-block .youtube-btn a:hover {
	color: #1E3A8A;
}
#kouyaku .senkyo-kouyaku-block .youtube-btn p {
	padding: 10px 0;
}

#election .senkyo-info-block {
	--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
	background-color: #fff;
	text-align: left;
	padding: 2%;
	margin: 0 2%;
	border-radius: 0.25rem;
	font-size: 16px;
	font-weight: 600;
}
#election .senkyo-info-block ul {
	padding-inline-start: 10px;
	list-style: disc;
}
#election .senkyo-info-block li {
	list-style-position: inside;
}
#election .senkyo-info-block summary {
	cursor: pointer;
}
#vote .vote-info-block {
	--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
	background-color: #fff;
	text-align: left;
	padding: 2%;
	margin: 0 2%;
	border-radius: 0.25rem;
	font-size: 16px;
	font-weight: 600;
}
#vote .vote-info-block ul {
	padding-inline-start: 10px;
	list-style: disc;
}
#vote .vote-info-block li {
	list-style-position: inside;
}
#vote .vote-info-block summary {
	cursor: pointer;
}

/* 政党カラー */
/* デフォルト */
.party00 {
	background-color: rgb(125 125 125);
	color: #fff;
	border-radius: 5px;
	padding: 5px 10px;
}
/* 自民 */
.party01 {
	background-color: rgb(173 026 026);
	color: #fff;
	border-radius: 5px;
	padding: 5px 10px;
}
/* 立憲 */
.party02 {
	background-color: rgb(025 102 165);
	color: #fff;
	border-radius: 5px;;
	padding: 5px 10px;
}
/* 共産 */
.party03 {
	background-color: rgb(065 162 216);
	color: #fff;
	border-radius: 5px;
	padding: 5px 10px;
}
/* 参政 */
.party04 {
	background-color: rgb(128 032 088);
	color: #fff;
	border-radius: 5px;
	padding: 5px 10px;
}

.state {
	background-color: #EEECE8;
	padding: 5px 10px;
	border-radius: 5px;
}

.link_btn {
	background-color: rgb(29 78 216 / var(--tw-text-opacity, 1));
	border-radius: 5px;
	width: 80%;
	margin: auto;
	color: #fff;
}
.link_btn:hover {
	opacity: 0.8;
}
.link_btn a {
	text-decoration: none;
	color: #fff;
	font-size: 16px;
}
.link_btn a p {
	padding: 15px;
	text-align: center;
	font-weight: 600;
}

.link_area {
	display: flex;
	flex-wrap: wrap;
	justify-content:start;
	margin: 40px 0 0;
}
.link_area a {
	width: 48%;
	margin: 1%
}
.link_area img {
	width: 100%;
}