*
{
	box-sizing: border-box;
}
body
{
	margin: 0;
	font-family: Helvetica , "游ゴシック" , "Yu Gothic" , sans-serif;
	height: 100%;
	font-size: 16px;
}
header, footer
{
	background: rgba(0, 183,238, 0.5);
	color: #fff;
}
h1,  h2, h3
{
	margin: 0;
}
img
{
	width: 100%;
}
ul, ol, dl
{
	list-style: none;
	margin: 0;
	padding: 0;
}
a
{
	transition: .3s all;
}
a:hover
{
	opacity: .75;
}

table {
    border-collapse: collapse; /* セルの線を重ねる */
    width: 100%;               /* 幅指定 */
}

th,td {
    border: solid 1px #039BE5;          /* 枠線指定 */
    width: auto;
}

th {
    font-style: bold;
    color: #039BE5;
}

th.table_w_1w, td.table_w_1w {
    width: 1.5em;
    text-align: center;
}

.bg
{
	display: block;
    background: url(../images/bg.jpg) top center no-repeat;
    background-size: cover;
    position: fixed;
    right: 0;
    top: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -9999;
}
header
{
	max-width: 1060px;
	padding: 48px;
	margin: 48px auto;
	line-height: 1.3;
	box-shadow: 0 20px 40px rgb(0, 0, 0, 0.2);
}
header > h1, header > h2, body > section, header > span
{
	max-width: 1060px;
	margin-left: auto;
	margin-right: auto;
	padding: 32px 32px 48px;
	width: 100%;
}
header > h1
{
	font-size: 40px;
	padding: 0;
	text-shadow: 0 5px 5px rgb(0, 0, 0, 0.3);
}
header > h2, header > span
{
	font-size: 24px;
	padding-bottom: 0;
    font-weight: bold;
}
body > section
{
	background: rgba(255, 255, 255, 0.9);
	margin-bottom: 48px;
	clear: both;
	box-shadow: 0 20px 40px rgb(0, 0, 0, 0.3);
}
h1
{
	text-align: center;
	font-size: 27px;
}
h2
{
	font-size: 18px;
}
section > h2
{
	margin-bottom: 24px;
	position: relative;
	border-top: none;
    padding-left: 10px!important;
    padding-top: 10px!important;
    padding-bottom: 10px!important;
    color: #039BE5;
    background-color: transparent;
}
section > h2:after
{
	position: absolute;
    bottom: -3px;
    left: 0;
    z-index: 2;
    content: '';
    width: 100%;
    height: 3px;
    background: #039BE5;
    background: linear-gradient(to left, #13b0fc 0%,#039BE5 100%);
}
p
{
	margin-bottom: 1em;
}
.banner
{
	width: 60%;
	margin: 0 auto;
}
.small
{
    font-size: 80%;
}
h3
{
	margin-bottom: 24px;
	color: #fff;
	background: linear-gradient(to left, #f28bd6 0%,#f26acd 100%);
    font-weight: bold;
	padding: 6px 12px;

}
.distList > li
{
	margin-bottom: 32px;
}
.dist dl
{
	display: flex;
	align-content: flex-start;
	flex-wrap: wrap;
}
.dist dl li
{
	margin-top: 16px;
	margin-right: 16px;
    font-weight: bold;
}
.dist dl li a
{
	display: inline-block;
	padding: 4px 16px;
	background: linear-gradient(to left, #f26acd 0%,#f23bc0 100%);
	border-radius: 16px;
	color: #fff;
	text-decoration: none;
	box-shadow: 0 4px 8px rgb(0, 0, 0, 0.2);
}
.dist dl li a:hover
{
	background: linear-gradient(to left, #f28bd6 0%,#f26acd 100%);
}
.distList ol
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.distList ol > li
{
	width: 50%;
	padding: 24px;
	background: rgba(3, 155, 229, 0.2);
}
.distList ol > li:nth-child(4n+2), .distList ol > li:nth-child(4n+3){
	background: rgba(3, 155, 229, 0.1);
}
.distList ol dl:after
{
	content: "";
	display: block;
	clear: both;
}
.distList ol dl li
{
	margin-bottom: 8px;
}
.distList ol dl li.senkyoku
{
	border-left: 6px solid #13b0fc;
    padding-left: 10px;
	width: 100%;
	font-weight: bold;
	clear: both;
}
.distList ol dl li.image
{
	float: left;
	width: 35%;
	margin-bottom: 32px;
}
.distList ol dl li.image img
{
	backface-visibility: hidden;
	vertical-align: bottom;
}
.distList ol dl li.name
{
	float: right;
	width: 60%;
	font-weight: bold;
}
.distList ol dl li.party
{
	float: right;
	width: 60%;
}
.distList ol dl.noimage li.name, .distList ol dl.noimage li.party, .distList ol dl.noimage li.hp, .distList ol dl.noimage li.sns, .distList ol dl.noimage li.favorit
{
	width: 100%;
	float: none;
}
.distList ol dl li.hp
{
	float: right;
	width: 60%;
}
.distList ol dl li.email
{
	float: right;
	width: 60%;
}
.distList ol dl li.sns
{
	float: right;
	width: 60%;
	display: flex;
	padding: 0;
}
.distList ol dl li.sns a
{
	width: 24px;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	padding: 8px;
	margin-right: 2%;
	box-sizing: content-box;
}
.distList ol dl li.sns a.twitter
{
	background: #55acee;
}
.distList ol dl li.sns a.facebook
{
	background: #3b5998;
}
.distList ol dl li.sns a.youtube
{
	background: #ff0000;
}
.distList ol dl li.sns a.instagram
{
	background: #833AB4;
}
.distList ol dl li.sns a.line
{
	background: #25af00;
}
.distList ol dl li.sns a i
{
	font-size: 20px;
	border: none;
}
.distList ol dl li.favorit
{
	float: right;
	width: 60%;
}
.distList ol dl li.comment
{
	border-top: 1px solid #13b0fc;
	margin: 16px 0;
	padding-top: 16px;
	width: 100%;
	clear: both;
}
.distList ol dl li.videoComment
{
	width: 100%;
	clear: both;
}
.embeddedYoutube
{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
  }
.embeddedYoutube iframe
{
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
 }
body > section.manga
{
	
}
body > section.manga ul
{
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}
body > section.manga li
{
	box-shadow: 0 20px 40px rgb(0, 0, 0, 0.2);
	width: 22.5%;
}
body > section.manga li a:hover
{
	opacity: 0.7;
}
body > section.manga li img
{
	vertical-align: bottom;
	backface-visibility: hidden;
	transition: .3s all;
}
body > section.sns
{
	padding: 0;
	box-shadow: none;
}
.linkBtn
{
	padding-top: 16px;
	display: flex;
	justify-content: center;
}
.linkBtn li
{
	margin-right: 16px;
}
.linkBtn a
{
	font-size: 20px;
	display: inline-block;
	padding: 8px 24px;
	background: linear-gradient(to left, #13b0fc 0%,#039BE5 100%);
	border-radius: 24px;
	color: #fff;
	text-decoration: none;
	box-shadow: 0 4px 8px rgb(0, 0, 0, 0.2);
}
.linkButton a:hover
{
	background: linear-gradient(to left, #039BE5 0%,#13b0fc 100%);
}
.banner
{
	margin: 32px auto;
}
footer
{
	text-align: center;
	padding: 24px;
}

/*--------------------------------
各党の政策
---------------------------------*/
.party {
    margin-bottom: 36px;
}
.party h3 {
	margin-bottom: 1em;
	padding: 0;
}

.party ul {
    list-style: disc;
    padding-left: 24px;
}

.party ul ul {
    list-style: circle;
    padding-left: 24px;
}


/*--------------------------------
SNS
---------------------------------*/

.sns {
	box-sizing: border-box;
	width: 100%;
	padding: 10px 0 20px;
	background: transparent !important;
}

.sns.st-sns-top {
	padding: 0;
}

.snstext,
.snscount {
	font-size: 13px;
	padding: 0 13px;
	-webkit-align-self: center;
	-ms-flex-item-align: center;
	align-self: center;
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.post .sns ul {
	list-style: none;
	padding: 0px!important;
	margin: 0px 0px 20px;
}

.sns li {
	float: left;
	list-style: none;
	width: 50%;
}

.sns li a {
	box-sizing: border-box;
	font-size: 15px;
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	padding: 6px 10px 4px 15px;
	color: #fff;
	border-radius: 3px;
	text-decoration: none;
	height: 38px;
	cursor: pointer;
	vertical-align: middle;
	line-height: 25px;
	box-shadow: 0 5px 8px rgb(0, 0, 0, 0.25) !important;
}

.sns li a .fa {
	-webkit-align-self: center;
	-ms-flex-item-align: center;
	align-self: center;
	min-width: 1.25em;
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	padding-right: 13px;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.sns li a:hover {
	transform: translate(0px, 1px);
}

/* ツイッター */
.sns .twitter a {
	background: #55acee;
	box-shadow: 0 3px 0 #4892cb;
}

.sns .twitter a:hover {
	box-shadow: 0 2px 0 #4892cb;
}

.sns .fa-twitter {
	border-right: 1px solid #9ACFF4;
}

/* Facebook */
.sns .facebook a {
	background: #3b5998;
	box-shadow: 0 3px 0 #2c4373;
}

.sns .facebook a:hover {
	box-shadow: 0 2px 0 #2c4373;
}

.sns .fa-facebook {
	border-right: 1px solid #607BB2;
}

/* グーグル */
.sns .googleplus a {
	background: #dc4e41;
	box-shadow: 0 3px 0 #d51e31;
}

.sns .googleplus a:hover {
	box-shadow: 0 2px 0 #d51e31;
}

.sns .fa-google-plus {
	border-right: 1px solid #E0776D;
}

/* URLコピー */
.sns .share-copy a {
	background: #f3f3f3;
	box-shadow: 0 3px 0 #ccc;
	color:#757575;
}

.sns .share-copy a:hover {
	box-shadow: 0 2px 0 #757575;
}

.sns .share-copy .fa-clipboard {
	border-right: 1px solid #ccc;
}

/* はてぶ */
.sns .hatebu a {
	background: #00a5de;
	box-shadow: 0 3px 0 #0081b8;
}

.sns .hatebu a:hover {
	box-shadow: 0 2px 0 #0081b8;
}

.sns .st-svg-hateb {
	border-right: 1px solid #48B6DB;
}

/* LINE */
.sns .line a {
	background: #25af00;
	box-shadow: 0 3px 0 #219900;
}

.sns .line a:hover {
	box-shadow: 0 2px 0 #219900;
}

.sns .fa-comment {
	border-right: 1px solid #29c200;
}

.sns .fa-comment::before {
	position: relative;
	top: -1px;
}

/* Pocket */
.sns .pocket a {
	background: #f03e51;
	box-shadow: 0 3px 0 #c0392b;
}

.sns .fa-get-pocket {
	border-right: 1px solid #F27985;
}

.sns .pocket a:hover {
	box-shadow: 0 2px 0 #F27985;
}

	.post .sns ul,
	.sns ul {
		margin:0 auto;
		width:290px;
	}

	.snstext{
		display:none;
	}

	.snscount{
		display:none;
	}

	.sns li {
		float: left;
		list-style: none;
		width: 40px;
		margin-right: 10px;
		position: relative;
	}

	.sns li:last-child {
		margin-right: 0px;
	}

	.sns li i {
		font-size: 19px!important;
	}

	.sns li a {
					border-radius: 0;
				box-sizing: border-box;
		color: #fff;
		font-size: 19px;
		height: 40px;
		width: 40px;
		padding: 0;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	.sns li a .fa {
		padding: 0;
		border: 0;
		height: auto;
	}

	/* ツイッター */
	.sns .twitter a {
		box-shadow: none;
	}

	.sns .twitter a:hover {
		background:#4892cb;
		box-shadow: none;
	}

	.sns .fa-twitter::before {
		position: relative;
		top:1px;
		left: 1px;
	}

	/* Facebook */
	.sns .facebook a {
		box-shadow: none;
	}
	.sns .facebook a:hover {
		background:#2c4373;
		box-shadow: none;
	}

	.sns .fa-facebook::before {
		position: relative;
		top:1px;
	}

	/* グーグル */
	.sns .googleplus a {
		box-shadow: none;
	}
	.sns .googleplus a:hover {
		background:#d51e31;
		box-shadow: none;
	}

	.sns .fa-google-plus::before {
		position: relative;
		left: 1px;
	}

	/* URLコピー */
	.sns .share-copy a {
		box-shadow: none;
	}
	.sns .share-copy a:hover {
		background:#ccc;
		box-shadow: none;
	}

	.sns .share-copy::before {
		position: relative;
		left: 1px;
	}

	.sns .share-copy .fa-clipboard {
		border-right: none;
	}

	/* はてぶ */
	.sns .hatebu a {
		box-shadow: none;
	}

	.sns .hatebu a:hover {
		box-shadow: none;
		background:#00a5de;
	}

	.sns .st-svg-hateb::before {
		border-right:none;
		padding-right:0;
		font-size:19px!important;
	}

	.sns .st-svg-hateb::before {
		position: relative;
		left: 1px;
	}

	/* LINE */
	.sns .line a {
		box-shadow: none;
	}
	.sns .line a:hover {
		background:#219900;
		box-shadow: none;
	}

	.sns .fa-comment::before {
		position: relative;
		left: 1px;
		top: -1px;
	}

	/* Pocket */
	.sns .pocket a {
		box-shadow: none;
	}
	.sns .pocket a:hover {
		background:#F27985;
		box-shadow: none;
	}

	.sns .fa-get-pocket::before {
		position: relative;
		top: 1px;
	}

@font-face {
font-family: 'hateb';
src:  url('../fonts/hateb.eot?skski6');
src:  url('../fonts/hateb.eot?skski6#iefix') format('embedded-opentype'),
	url('../fonts/hateb.ttf?skski6') format('truetype'),
	url('../fonts/hateb.woff?skski6') format('woff'),
	url('../fonts/hateb.svg?skski6#icomoon') format('svg');
font-weight: normal;
font-style: normal;
font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
/* use !important to prevent issues with browser extensions that change fonts */
font-family: 'hateb' !important;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;

/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

.icon-hateb:before {
content: "\e900";
}

.clearfix:after
{
	content: "";
	display: block;
	clear: both;
}
a {
	color: #4682b4;
}
a:hover {
	color: #b22222;
}

@media only screen and (max-width: 767px)
{
	body
	{
		font-size: 13px;
	}
	header
	{
		margin: 0 auto 32px;
		padding: 0;
	}
	header > h1, header > h2, body > section
	{
		padding: 16px 16px 24px;
	}
	header > h1
	{
		padding: 32px 16px 0;
		font-size: 18px;
	}
	header > h1 br
	{
		display: none;
	}
	header > h2
	{
		font-size: 16px;
	}
	.distList ol dl li.sns a i
	{
		font-size: 16px;
	}
	.distList ol > li
	{
		width: 100%;
	}	
	body > section.manga li
	{
		width: 44%;
		margin-bottom: 3%;
	}
	.distList ol > li
	{
		padding: 16px;
	}
	.distList ol > li:nth-child(4n+2), .distList ol > li:nth-child(4n+3)
	{
		background: rgba(3, 155, 229, 0.2);
	}
	.distList ol > li:nth-child(even)
	{
		background: rgba(3, 155, 229, 0.1);
	}
	.distList ol dl li.name span
	{
		display: block;
	}
	.distList ol dl li.image
	{
		margin-bottom: 16px;
	}
	.distList ol dl li.hp
	{
		float: none;
		width: 100%;
		clear: both;
	}
	.distList ol dl li.email
	{
		float: none;
		width: 100%;
	}
	.distList ol dl li.sns
	{
		float: none;
		width: 100%;
		display: flex;
		padding: 0;
	}
	.distList ol dl li.favorit
	{
		float: none;
		width: 100%;
	}
	.linkBtn
	{
		display: block;
	}
	.linkBtn li
	{
		width: fit-content;
		margin: 0 auto 16px;
	}
	.linkBtn li a
	{
		font-size: 13px;
	}
	.linkBtn li a:hover
	{
		color: #fff;
	}
	footer
	{
		padding: 16px 8px;
		font-size: 12px;
	}
	footer span
	{
		display: block;
	}
}
	
