@charset "UTF-8";

/*　議員の紹介
----------------------------------------------------*/
.top_introduction{
    background: url(../img/introduction/top_introduction.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}
.box_introduction {
    width: 21%;
    background-color: #e7edf6;
    padding: 1%;
    margin: 1%;
    position: relative;
    min-height: 10em;
}
.word{
    color:#fff;
    background: #205097;
    padding: 5px 10px 2px 10px;
    display: inline-block;
}
.neme_box{
    position: absolute;
    bottom: 2em;
}
.name a{
}
.en_name{
    font-size: 0.6em;
}
/*----------タブレット用-----------------*/
@media only screen and (max-width: 768px) {
    .box_introduction {
        width: 42%;
        padding: 3%;
    }
    .neme_box {
        position: static;
        bottom: 0em;
    }
}

/*　公明こうべ
----------------------------------------------------*/
.top_result{
    background: url(../img/result/top_result.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}
.box_result{
    border-bottom: #bdbdbd 1px dotted;
    padding: 5px 0;
    margin-bottom: 10px;
}
.result_year{
    font-size: 1.2em;
    font-weight: bold;
    width: 10%;
}
.result_data{
    margin: 0 2%;
    width: 86%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap:wrap;
}
.result_data p{
    width: 23%;
    margin: 0 1% 2% 1%;
}
.result_data p a{
    display: block;
    display: inline-block;
    color: #fff;
    background-color: #205097;
    padding: 5%;
    width: 90%;
    height: 70%;
    border-radius: 8px;
    display: flex;
    align-items: center;
}
@media only screen and (max-width: 768px) {
    .box_result {
        padding: 5px 0 10px 0;
    }
.result_year {
    width: 100%;
}
.result_data {
    margin: 0 0%;
    width: 100%;
}
.result_data p {
    width: 48%;
}
.result_data p a {
    padding: 5%;
    width: 86%;
    height: auto;
    border-radius: 5px;
}
}

/*　リポート
----------------------------------------------------*/
.top_report{
    background: url(../img/report/top_report.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}


/*　トピックス
----------------------------------------------------*/
.top_topics{
    background: url(../img/topics/top_topics.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}

.box_topics{
    margin: 0 2%;
    width: 96%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap:wrap;
    border-bottom: #bdbdbd 1px dotted;
    padding: 5px 0 10px 0;
    margin-bottom: 10px;
}
.topics_day{
    width: 15%;
    min-width: 80px;
    margin-right: 2%;
}
.topics_data{
    width: 83%;
    font-weight: bold;
}
.pager{
    margin: 1% 0;
    text-align: right;
}
.page {
    display: inline-block;
    padding: 5px 10px;
    margin-right: 4px;
    background: #eeeeee;
    font-size: 0.8em;
    font-weight: bold;
    text-decoration: none;
    color: #205097;
}

.page:hover, .page.gradient:hover {
    background: #9bb7dc;
}

.page.active {
    border: none;
    background: #205097;
    color: #eeeeee;
}
.box_topicsdata{
    margin: 0 2%;
    width: 96%;
}
.box_topicsdata .topics_day{
    text-align: right;
    width: 100%;
    margin-right: 0;
}
.topics_title{
    clear: both;
    font-size: 1.2em;
    width: 98%;
    font-weight: bold;
    background: #205097;
    color: #fff;
    padding: 1%;
    margin: 1% 0;
}
.box_topicsdata p img{
    margin: 0 2%;
    max-width: 96%;
}
.ic_fs{
    font-weight: normal;
    font-size: 0.8em;
    color: #205097;
    background: #fff;
    border-radius: 5px;
    padding: 3px 30px;
    margin-left: 1%;
    float: right;
}
.text_sub{
    font-size: 0.9em;
    color: #8a8a8a;
    padding-top: 20px;
    display: inline-block;
}
.btn_back{
    margin-top: 30px;
}
.btn_back a{
    background: #205097;
    color: #fff;
    padding: 10px 30px;
    margin: 1% 0;
}
@media only screen and (max-width: 768px) {
.pager {
    text-align: center;
    margin: 3% 0;
}
.topics_day{
    width: 96%;
    min-width: 300px;
    margin-right: 2%;
}
.topics_data{
    width: 98%;
    font-weight: bold;
}
.topics_title {
    width: 94%;
    padding: 3%;
    margin: 1% 0 5% 0;
}
}


/*　リンク
----------------------------------------------------*/
.top_link{
    background: url(../img/link/top_link.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}
.box_topics{
    margin: 0 2%;
    width: 96%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap:wrap;
    border-bottom: #bdbdbd 1px dotted;
    padding: 5px 0 10px 0;
    margin-bottom: 10px;
}
.topics_day{
    width: 15%;
    min-width: 80px;
    margin-right: 2%;
}
.topics_data{
    width: 83%;
    font-weight: bold;
}
.pager{
    margin: 1% 0;
    text-align: right;
}
.page {
    display: inline-block;
    padding: 5px 10px;
    margin-right: 4px;
    background: #eeeeee;
    font-size: 0.8em;
    font-weight: bold;
    text-decoration: none;
    color: #205097;
}

.page:hover, .page.gradient:hover {
    background: #9bb7dc;
}

.page.active {
    border: none;
    background: #205097;
    color: #eeeeee;
}
.box_topicsdata{
    margin: 0 2%;
    width: 96%;
}
.box_topicsdata .topics_day{
    text-align: right;
    width: 100%;
    margin-right: 0;
}
.topics_title{
    clear: both;
    font-size: 1.2em;
    width: 98%;
    font-weight: bold;
    background: #205097;
    color: #fff;
    padding: 1%;
    margin: 1% 0;
}
.box_topicsdata p img{
    margin: 0 2%;
    max-width: 96%;
}
.ic_fs{
    font-weight: normal;
    font-size: 0.8em;
    color: #205097;
    background: #fff;
    border-radius: 5px;
    padding: 3px 30px;
    margin-left: 1%;
    float: right;
}
.text_sub{
    font-size: 0.9em;
    color: #8a8a8a;
    padding-top: 20px;
    display: inline-block;
}
.btn_back{
    margin-top: 30px;
}
.btn_back a{
    background: #205097;
    color: #fff;
    padding: 10px 30px;
    margin: 1% 0;
}
@media only screen and (max-width: 768px) {
.pager {
    text-align: center;
    margin: 3% 0;
}
.topics_day{
    width: 96%;
    min-width: 300px;
    margin-right: 2%;
}
.topics_data{
    width: 98%;
    font-weight: bold;
}
.topics_title {
    width: 94%;
    padding: 3%;
    margin: 1% 0 5% 0;
}
}

/*　会議中継
----------------------------------------------------*/
.top_meeting{
    background: url(../img/meeting/top_meeting.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}

.meeting_box{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap:wrap;
    border-bottom: #bdbdbd 1px dotted;
    padding: 5px 0 10px 0;
    margin-bottom: 10px;
}
.meeting_box:last-child{
    border-bottom: #bdbdbd 0px dotted;
    padding: 5px 0 5px 0;
    margin-bottom: 0px;
}
.meeting_box .meeting_left{
    display: block;
    width: 28%;
    margin-right: 2%;
    vertical-align: top;
}
.meeting_left video {
    width: 100%;
    height: auto;
    margin: 10px 0;
}
.meeting_box .meeting_right{
    width: 68%;
    margin: 0% 0% 3% 2%;
}
.icon_pdf:after {
    content:" ";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(../img/icon_pdf.svg) no-repeat;
    vertical-align: middle;
    margin-bottom: 10px;
}
@media only screen and (max-width: 768px) {
.meeting_box .meeting_left{
    display: block;
    width: 100%;
    margin: 0 0% 3% 0;
}
.meeting_box .meeting_right{
    width: 100%;
    margin: 0% 0% 3% 0%;
}
}
/*　構成
----------------------------------------------------*/
.top_composition{
    background: url(../img/composition/top_composition.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}
.com_link{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap:wrap;
    justify-content: center;
    margin-bottom: 40px;
    width: 100%;
}
.com_link li{
    margin: 1%;
    width: calc(25% - 40px);
    display: flex;
    }
    .com_link li:nth-child(2){
        margin: 1%;
        width: calc(49% - 40px);
        }
    .com_link li a{ 
        display: block;
        width: calc(97% - 40px);
        height: auto;
        color: #205097;
        background-color: #fff;
        padding: 10px 40px 10px 3%;
        border-radius: 5px;
        border: #205097 1px solid;
        display: flex;
        align-items: center;
    }
    .com_link li a:hover{
        color: #fff;
        background-color: #205097;
        border: #205097 1px solid;
        opacity: 1;
    }
    .text_right{
        font-size: 0.8em;
        font-weight: normal;
        float: right;
    }
.box_table {
    width: 100%;
    border: solid 1px #205097;
    background-color: #fff;
  }
  .box_table tr th {
    background: #205097;
    border-bottom: solid 1px #fff;
    color: #fff;
    padding: 10px;
    vertical-align: middle;
  }
  .box_table tr td {
      border-bottom: solid 1px #205097;
      padding: 10px;
  }
  .box_table tr:last-child th , .box_table tr:last-child td {
    border-bottom: solid 0px #205097;
  }
  .borderleft{
      border-left: solid 1px #205097;
      text-align: center;
  }
  .petitionBox{
    background: url(../img/introduction/bg_petition.jpg) center top no-repeat, #205097;
    background-size: 100% auto;
    padding: 3% 2% 3% 2%;
    text-align: center;
    margin: 2% 0;
}

.petition{
    max-width: 1100px;
    width: 96%;
    background: rgba(255, 255, 255, 0.7);
    padding: 3% 2% 3% 2%;
    margin: auto;
}
.bg_white{
    background: #fff;
    padding: 3% 2% 3% 2%;
    margin: 2% 0;
}
.bg_white p{
    line-height: 2em;
}
  .petition_title{
color: #fff;
font-weight: bold;
font-size: 1.2em;
padding: 1% 0;
  }
  .petition_subtitle{
    color: #205097;
    font-weight: bold;
    font-size: 1.2em;
    padding: 1% 0;
      }
      .ic_bg{
          text-align: center;
          color: #fff;
          background-color: #205097;
          width: 20px;
          padding: 3px 3px 0 3px;
          margin-right: 5px;
          border-radius: 5px;
          display: inline-block;
      }

  @media screen and (max-width: 640px) {
    .box_table {
        width: 100%;
    }
    .box_table th {
        width: 5em;
    }
    .com_link li {
        width: calc(57% - 40px);
    }
    .com_link li:nth-child(2){
        width: calc(57% - 40px);
        }
        
  }

/*　日程
----------------------------------------------------*/
.top_schedule{
    background: url(../img/schedule/top_schedule.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}
.bg_schedule{
width: 45%;
padding: 2%;
margin-bottom: 50px;
background-color: #fff;
}
.ic_schedule{
    background-color: #e7edf6;
    margin: 0 10px 0 10px;
    padding: 2px 10px;
    display: inline-block;
    vertical-align: middle;
}

.sch_table {
    width: 100%;
    border-left: solid 1px #205097;
    background-color: #fff;
  }
  .sch_table tr th {
    background: #205097;
    border-right: solid 1px #fff;
    color: #fff;
    padding: 10px;
    vertical-align: middle;
  }
  .sch_table tr td {
      border-bottom: solid 1px #205097;
      border-right: solid 1px #205097;
      padding: 10px;
  }
  .sch_table tr th:last-child{
    border-bottom: solid 0px #205097;
    border-right: solid 0px #fff;
  }
  .sch_table tr td:first-child {
      text-align: right;
}
.sch_table tr td:nth-child(2) {
    text-align: center;
}
@media screen and (max-width: 640px) {
    .bg_schedule{
        width: 96%;
        padding: 2%;
        margin-bottom: 5%;
        }
}
/*　役立ち情報
----------------------------------------------------*/
.top_information{
    background: url(../img/information/top_info.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}
.info_dt{
    text-align: right;
    width: 20%;
    padding: 5px 0 10px 5px;
    margin-bottom: 10px;
}
.info_dd{
    width: 79%;
    border-bottom: #bdbdbd 0px dotted;
}
@media only screen and (max-width: 768px) {
    .info_dt{
        text-align: left;
        width: 100%;
        padding: 5px 0 0px 0px;
        margin-bottom: 0px;
    }
    .info_dd{
        width: 100%;
        border-bottom: #bdbdbd 0px dotted;
    }
}
/*　フォーム
----------------------------------------------------*/
.top_form{
    background: url(../img/form/top_form.jpg) center top no-repeat;
    background-size: 100% auto;
    position: relative;
    height: 150px;
}


.form-group{
    padding: 2% 0;
        clear: both;
        display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap:wrap;
    justify-content: center;
    }
    .form-group label {
        width: 20%;
        margin-top: 7px;
        font-weight: bold;
        text-align: right;
    }
    .form-group div{
        width: 60%;
        margin: 0 0 0 2%;
    }

    .form-control {
        width: calc(96% - 2px);
        height: calc(1.5em + 2px);
        padding: 0.5em;
        line-height: 1.5;
        color: #495057;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid #ced4da;
        border-radius: .25rem;
        transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    }
    select {
        height: calc(2.5em + 2px);
        padding: .375rem .75rem;
        line-height: 1.5;
        color: #495057;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid #ced4da;
        border-radius: .25rem;
        transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    }
    textarea.form-control {
        height: auto;
    }
    .form-row{
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap:wrap;
    }
    /**枠内　文字色***/
    input::placeholder,textarea::placeholder {
        color: #cbcbcb;
    }
    /* IE */
    input:-ms-input-placeholder,textarea:-ms-input-placeholder {
        color: #cbcbcb;
    }
    /* Edge */
    input::-ms-input-placeholder,textarea::-ms-input-placeholder {
        color: #cbcbcb;
    }
    
    #contentBox label,#iconBox label {
        padding: .2em .6em .3em 0;
    }
    .form_file .filename {
        font-size: 12px;
    }
    .form-check-icon input[type="radio"]{
        display: none;
    }
    .form-group div.radio01{
        margin-top: 10px;
    }
    .checkbox01-input,
.radio01-input{
  display: none;
}
    .checkbox01-parts,
.radio03-parts,
.radio01-parts{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
  line-height:1;
  font-weight: normal;
}

.checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 4px;
}

.radio01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 50%;
}
.radio01-input:checked + .radio01-parts{
  color: #205097;
}
.checkbox01-input:checked + .checkbox01-parts{
  color: #205097;
}
.checkbox01-input:checked + .checkbox01-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  left: 5px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #205097;
  border-right: 3px solid #205097;
}
.radio01-input:checked + .radio01-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #205097;
  border-radius: 50%;
}
    .form-btn{
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap:wrap;
        justify-content: center;
        /*margin-top: 5%;*/
        margin-top: 1%;
        width: 100%;
    }
    .form-btn button {
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        appearance: none;
        margin: 1%;
        font-size: 1.1em;
        display: inline-block;
        min-width: 30%;
        padding: 1% 0;
        text-decoration: none;
        background-color: #205097;
        color: #FFF;
        border-radius: 5px;
    }
    .form-btn button a{
    display: block;
    width: 100%;
        color: #FFF;
    }
    .input_btn{
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap:wrap;
        justify-content: center;
        margin-top: 5%;
    }
    .input_btn button{
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        appearance: none;
        margin: 1%;
        font-size: 1.1em;
        display: inline-block;
        width: 30%;
        padding: 1% 0;
        text-decoration: none;
        background-color: #205097;
        color: #FFF;
        border-radius: 5px;
    }

    
    /*----------タブレット用-----------------*/
    @media only screen and (max-width: 768px) {
        .form-group label {
            text-align: left;
            width: 100%;
        }
        .form-group div {
            width: 100%;
            margin: 0 0 0 0%;
        }
    .form-btn button {
        padding: 1.5% 5%;
        min-width: 40%;
    }

    /*　各ページ　コンテンツTOP画像*/
    .top_introduction,.top_result,.top_topics,.top_meeting,.top_composition,.top_schedule,.top_information,.top_form{
        background-size: auto 100%;
        height: 120px;
        margin-bottom: 0%;
    }
    }