@import url('https://fonts.googleapis.com/css?family=M+PLUS+1p:500,700&subset=japanese');

body {
  background: url('../img/header_line_bottom.png') bottom center repeat-x;
  min-height:100vh;
  background-color:#eb6da0;
}
.pcnone { display:block;}
.spnone { display:none;}

nav {
  background: url('../img/header_line_top.png') top center repeat-x;
  background-color:#fff;
}
nav .container {
  margin-top: 30px;
}
.text-small{
	font-size:.9rem;
}
.title-label {
  color: white;
  font-weight: bold;
  background-color: #eb6da0;
  padding: 10px;
  border-radius: 5px;
}
.twitter-timeline-box iframe {
	width: 740px !important;
}
.google-map {
  margin-top: 20px;
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.google-map iframe,
.google-map object,
.google-map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
footer .list-inline li a {color: #fff;}
.col-sm-main{
  margin:0;
  padding:0;
}


.col-sm-news {
  border: 3px solid #ccc;
  background-color:#fff;
  margin: 0 15px;
}

nav ul{
    margin-left: 0px;
}
nav a {
    border-bottom: none;
}
nav .active a {
    border-bottom: none;
}
.navbar-nav {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap : wrap;
	flex-wrap: wrap;
}
.navbar-brand {
  text-align: center;
  margin: 0 auto;
}
.navbar-toggler {
  border: none;
}
.navbar-toggler {
  padding: 0.25rem ;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: none;
  border-radius: 0.25rem;
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 51 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M48.61,17.369H2.391a2.368,2.368,0,1,1,0-4.737H48.61A2.368,2.368,0,1,1,48.61,17.369Zm0-12.632H2.391A2.368,2.368,0,1,1,2.391,0H48.61A2.368,2.368,0,1,1,48.61,4.737ZM2.391,25.263H48.61a2.369,2.369,0,1,1,0,4.737H2.391A2.369,2.369,0,1,1,2.391,25.263Z'/%3e%3c/svg%3e");
}
.col-sm-news .index_news {
  margin:10px 0;
  max-height: 320px;
  overflow: scroll;
}
.col-sm-news h2 {
	color: #000;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	font-size: 1.4em;
	font-weight: bold;
	margin: 20px auto 10px;
}
.col-sm-news h2:before, .col-sm-news h2:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: #000;
	display: block;
}
.col-sm-news h2:before {
	margin-right: .4em;
}
.col-sm-news h2:after {
	margin-left: .4em;
}

.col-sm-news .index_news span.badge {
  width: 6em;
  font-size: 10px;
  border-radius: 10px;
  font-weight: normal;
  margin-right: 5px;
}
.col-sm-news .index_news dt,
.col-sm-news .index_news dd {
  font-weight: normal;
  font-size: .9rem;
  width: 100%;
}

.news_content span.badge {
  width: 6em;
  font-size: 10px;
  border-radius: 10px;
  font-weight: normal;
  margin-right: 5px;
}
.news_content dt,
.news_content dd {
  width: 100%;
}

.container.container-text {
	margin: 2rem 2% 0 2%;
	width:96%;
	background-color: #fff;
	padding:15px;
	border-radius: 7px;
}

.badge-kokkai {
  color: #fff;
  background-color: #e3007e;
}
.badge-shuisho {
  color: #fff;
  background-color: #f677c5;
}
.badge-important {
  color: #fff;
  background-color: #f677c5;
}
.btn-important {
  color: #fff;
  background-color: #dd6997;
  border-color: #dd6997;
  padding-left:3rem;
  padding-right:3rem;
}

.btn-important:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #dd6997;
}

.btn-important:focus, .btn-important.focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-important.disabled, .btn-important:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-important:not(:disabled):not(.disabled):active, .btn-important:not(:disabled):not(.disabled).active,
.show > .btn-important.dropdown-toggle {
  color: #fff;
  background-color: #dd6997;
  border-color: #dd6997;
}

.btn-important:not(:disabled):not(.disabled):active:focus, .btn-important:not(:disabled):not(.disabled).active:focus,
.show > .btn-important.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-outline-important {
  color: #dd6997;
  border-color: #dd6997;
}

.btn-outline-important:hover {
  color: #fff;
  background-color: #dd6997;
  border-color: #dd6997;
}

.btn-outline-important:focus, .btn-outline-important.focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-outline-important.disabled, .btn-outline-important:disabled {
  color: #dd6997;
  background-color: transparent;
}

.btn-outline-important:not(:disabled):not(.disabled):active, .btn-outline-important:not(:disabled):not(.disabled).active,
.show > .btn-outline-important.dropdown-toggle {
  color: #fff;
  background-color: #dd6997;
  border-color: #dd6997;
}

.btn-outline-important:not(:disabled):not(.disabled):active:focus, .btn-outline-important:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-important.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
	-moz-animation:blink 1.5s ease-in-out infinite alternate;
	animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
	0% {background-color: #c82333;}
	100% {ackground-color: #dc3545}
}
@-moz-keyframes blink{
	0% {background-color: #c82333;}
	100% {ackground-color: #dc3545}
}
@keyframes blink{
	0% {background-color: #c82333;}
	100% {ackground-color: #dc3545}
}


.text-success {
  color: #008000 !important;
}
.text-important {
  color: #c82333 !important;
}
a.text-important:hover, a.text-important:focus {
  color: #eb6da0 !important;
}
table.table-bordered th {
	background-color: #eee;
}

h1.headlineH1 {
	font-family: "M PLUS 1p";
	font-weight: 700;
	letter-spacing: .5rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	margin: 20px auto 20px;
}
h1.headlineH1.nospacing {
	letter-spacing: -.1rem;
}
h1.headlineH1:before, h1.headlineH1:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: #000;
	display: block;
}
h1.headlineH1:before {
	margin-right: .4em;
}
h1.headlineH1:after {
	margin-left: .4em;
}
table.table th {
	min-width:10rem;
}
/* ---------------------------
 Top page
--------------------------- */
body.splash {overflow: hidden;}
#fscreen {height: 100vh;width: 100%;background-color: #fff;}
    .anime {
        position: absolute;
        margin: auto;
        width: 100%;
        top:50%;
        margin-top:0%;
        opacity:0;
    }
    .anime img {
	text-align: center;
	margin: 0 auto;
	}
    .anime span{
        letter-spacing:0em;
    }
    .skip a{
	 text-align:center;
        font-size:1.2rem;
        color:#333;
        position: fixed;
        right:0;
        left:0;
        bottom:30px;
        padding:5px 25px;
        text-decoration:none;
	z-index: 9999;
    }
    #replayBtn {
        display:none;
    }
    #item01,#item02,#item03{
    position: fixed;
    top: 10%;
    left:0%;
    right:0%;
    background: #fff;
    }

    #item01 img,#item02 img,#item03 img { max-width:100%;}

a img {
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}
a:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
/* ---------------------------
 2nd pages
--------------------------- */
p.slogan {
	font-size: 1.3rem;
	line-height:2.5rem;
	text-align: center;
}

/* ---------------------------
 Policy
--------------------------- */
#policy h2 {
	margin: 3rem 0 1rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.5rem;
	border-bottom: 1px solid #000;
	padding-bottom:.5rem;
}
#policy h3 {
	margin: 0 0 2rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.2rem;
}
/* ---------------------------
 Documentations download
--------------------------- */
#doc h2 {
	margin: 3rem 0 1rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.5rem;
	padding-bottom:.5rem;
	text-align: left;
	border-bottom: 3px solid #ccc;
	padding:10px;
}
#doc h3 {
	margin: 2rem 0 1rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.2rem;
	border-bottom: 3px dashed #ccc;
}

/* ---------------------------
 Donation
--------------------------- */
#donation h2 {
	margin: 3rem 0 1rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.5rem;
	border-bottom: 1px solid #000;
	padding-bottom:.5rem;
	text-align: center;
}
#donation h3 {
	margin: 2rem 0 1rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.2rem;
	border-bottom: 3px dashed #ccc;
}

/* ---------------------------
 Determination
--------------------------- */
.text-determination {
	font-size:1.2rem;
	line-height: 2.5rem;
	font-weight: 600;
}

/* ---------------------------
 Privacy Statement
--------------------------- */
#privacystatement h2 {
	margin: 3rem 0 1rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.5rem;
	border-bottom: 1px solid #000;
	padding-bottom:.5rem;
}
#privacystatement h3 {
	margin: 2rem 0 1rem;
	font-family: "M PLUS 1p";
	font-weight: 500;
	font-size: 1.2rem;
}
#privacystatement ul li {
	margin-bottom: 0.5rem;
}

/* ---------------------------
 Vote
--------------------------- */
.candidatName {
	font-size: 1.5rem;
	font-weight: bold;
}
.vote_text{
	font-size:80%;
}
@media (min-width: 576px){
	.vote_text{
		font-size:100%;
	}
}
.vote_block{
	border-bottom:1px solid #bbb;
	padding-bottom: 3rem;
}
.vote_block:nth-last-of-type(1){
	border:none;
	padding-bottom: 0;
}
.vote_block03 .item_profile,
.vote_block03 .item_profile_vote03{
	font-size:1.1rem;
	letter-spacing: 0.03em;
	line-height:2.5;
}
.vote_block03 ruby rt {
	transform: scale(0.9);
	letter-spacing: -0.1em !important;
}
.votelink03{
	position:relative;
}
.votelink03:before{
	content: 'きむら えいこ';
	position: absolute;
	top: -14px;
	left: 0;
	transform: scale(0.9);
	display: block;
	font-size: 10px;
	letter-spacing: 0.2em;
	width:100px;
}
.item-candidat {
	align-items: center;
}
.item-candidat ul{
	list-style:none;
}
.item_profile {
	padding:20px;
	border-radius:7px;
	background-color: #ffecf8;
	margin:30px 0;
	border:3px solid #f29ec2;
}
.item_book {
	background-color: #f4f4f4;
	padding: 20px;
	margin-top:30px;
}
@media (max-width: 370px){
	.vote_nav .h5{
		font-size:15px;
	}
	.votelink03:before{
		left: -10px;
		transform: scale(0.7);
	}
}

/* ---------------------------
 Video
--------------------------- */
h2.video_header {
  font-family: "M PLUS 1p";
  font-weight: 500;
  text-align: center;
}
.video_content dt {
  display: block;
  float: left;
  width: 50px;
  overflow: hidden;
  line-height: 70px;
  margin-right: 10px;
}
.video_content dd a p {
  color: #000;
}
.video_content dd p {
  font-size: 20px;
}


/* ---------------------------
 Responsive settings
--------------------------- */

@media (max-width: 575px) {
table.table th,
table.table td{
	display:block;
	width: 100%;
}
.video_content dd {
  line-height: 70px;
}
.video_content dd a .link_url{
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin: 0;
  line-height: 15px;
}
.video_content .clear_sp {
  clear: both;
}
}

@media (min-width: 576px) {
  body {
    background-color:#fff;
  }


  .pcnone { display:none;}
  .spnone { display:block!important;}
  footer .list-inline li a {color: #666;}
  .col-sm-main{
        background-color:#fff;
        padding-left:15px;
	padding-right: 15px;
  }
  .col-sm-main img {
	min-width: 100%;
	margin:0;
	padding:0;
  }
  .col-sm-news {
	margin: 0;
	margin-bottom: 7px;
	margin-left: 15px;
	margin: 0 15px;
  }


  .container.container-text {
	width: 100%;
	margin: 2rem auto 0 auto;
	width: 100%;
	background-color: transparent;
	border-radius: 0;
}
 .news_content{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
       flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap : wrap;
	flex-wrap: wrap;
       width: 100%;
 }
  .news_content dt{
  width: 15%;
  }
 .news_content dt span{
  display:inline-block;
  width: 6em;
  margin-right: 5px;
  font-size: 10px;
  }
.news_content dd {
  width: 85%;
}
.video_content p.clear_pc {
  clear: both;
}
.video_content dd {
  line-height: 70px;
}

}

@media (min-width: 768px) {
  nav ul{
    margin-left: 30px;
  }
  nav li{
    margin: 0px 10px;
    padding: 0 5px;
  }
  nav a {
    border-bottom: 3px solid #fff;
  }
  .navbar-brand {
    text-align: left;
    margin: 0;
  }
  .col-sm-news dl.index_news{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
        flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap : wrap;
	flex-wrap: wrap;
        width: 100%;
  }
  .col-sm-news .index_news dt{
  width: 25%;
  }
 .col-sm-news .index_news dt span{
  display:inline-block;
  width: 6em;
  margin-right: 5px;
  font-size: 10px;
  }
.col-sm-news .index_news dd {
  width: 75%;
}
}

@media (min-width: 992px) {
.pcnone {
	display:none;
}
  nav .active a,
  nav a:hover {
    border-bottom: 3px solid #dd6997;
  }

.nav-link {
  display: block;
  padding: 0.1rem 1rem;
  margin-bottom:0.5rem;
}
  .col-sm-news {
	margin: 0 0 7px 0;
    -ms-flex: 0 0 40%;
    flex: 0 0 40%;
    max-width: 40%;
  }

  .col-sm-news .index_news {
	max-height: 425px;
  }
  .header-search {width: 40%;}
}
@media (min-width: 1200px) {
  .col-sm-news {
    -ms-flex: 0 0 40.4%;
    flex: 0 0 40.4%;
    max-width: 40.4%;
  }
  .col-sm-news .index_news {
	  max-height: 520px;
  }
}

.error-message {
  color: #ff0000;
  font-weight: bold;
}

.required::after {
  content: "(必須)";
  color: #f6018d;
  font-size: 0.8rem;
}

.mxw-5em {
  max-width: 5em;
}

.mxw-6em {
  max-width: 6em;
}

.miw-20em {
  min-width: 20em;
}

.reiwa-link,
.reiwa-link:hover {
  color: #EB65A2;
}