@charset "UTF-8";

.section--search{
    z-index: 2 !important;
}
.candidate__index--nav{
    z-index: 4000;
}

.c-red-hit{
    color: #df1f1f !important;
}

.js-electionSearch{
    position: relative;
    z-index: 800;
}

.js-electionSearch + p {
    font-size: 2rem;
    margin-top: 15px;
}

.js-electionSearch .candidate__index--tit {
    display: table;
    margin: 0 auto 2.7777777778vw;
    padding: 0;
    font-size: 2.9861111111vw;
    font-weight: bold;
    color: #000;
    background: none;
}

.js-electionSearch .serch_keyword {
    text-align: center;
    font-size: 2.1rem;
    font-size: 1.4583333333vw;
    font-weight: bold;
    margin: 0 0 2.7777777778vw;
}

.js-electionSearch .member {
    position: relative;
     border-radius:0 !important;
}

.js-electionSearch .member::after {
    content: " ";
    position: absolute;
    display: block;
    z-index: 1;
    width: 100%;
    padding-bottom: 1px;
    background: #000;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.js-electionSearch .member + .member {
    margin-top: 0 !important;
}

.js-electionSearch .member__photo {
     padding-bottom:0 !important;
}

.js-electionSearch .member__photo::before {
    content: " ";
    position: relative;
    display: block;
    z-index: 1;
    width: 100%;
    padding-bottom: 100%;
}

.js-listsWrapper{
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.form-content-note{
    font-size: 12px;
    text-indent: -1em;
    margin:5px 0 0 -1em;
}

@media screen and (max-width: 799px) {
    .js-electionSearch .form-content-query .form-content-query_inr {
        padding-top: 8vw;
    }

    .js-electionSearch .sp{
        display: block !important;
    }

    .js-electionSearch br.sp{
        display: inline !important;
    }

    .js-electionSearch + p {
        font-size: 2.865vw;
        margin-top: 15px;
    }

    .js-electionSearch .candidate__index--tit {
        display: table;
        margin: 0 auto 6.25vw;
        padding: 0;
        font-size: 6.161vw;
        font-weight: bold;
        color: #000;
        background: none;
        text-align: center;
    }

    .js-electionSearch .serch_keyword {
        text-align: center;
        font-size: 3.6458333333vw;
        font-weight: bold;
        margin: 0 0 3.125vw;
    }

    .js-electionSearch .section__inner .inr {
      padding-left: 0 !important;
      padding-right: 0 !important;
    }

    .js-electionSearch .member::after {
        width: calc(100% - 12.5vw);
    }

}

.js-electionSearch .d-b {
    display: block !important
}

.js-electionSearch .d-ib {
    display: inline-block !important
}

.js-electionSearch .d-f {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important
}

.js-electionSearch .d-sr {
    position: absolute;
    display: block;
    top: -1px;
    left: -1px;
    width: 1px;
    height: 1px;
    z-index: -1;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%)
}

.d-n {
    display: none !important
}

.js-electionSearch .d-tbl {
    display: table !important
}

.js-electionSearch .d-tbl-c {
    display: table-cell !important
}

.js-electionSearch .d-tbl-r {
    display: table-row !important
}

.js-electionSearch .sr {
    position: absolute;
    display: block;
    top: -1px;
    left: -1px;
    width: 1px;
    height: 1px;
    z-index: -1;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%)
}

.js-electionSearch .jc-c {
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important
}

.js-electionSearch .jc-l {
    -webkit-box-pack: left !important;
    -ms-flex-pack: left !important;
    justify-content: left !important
}

.js-electionSearch .jc-r {
    -webkit-box-pack: right !important;
    -ms-flex-pack: right !important;
    justify-content: right !important
}

.js-electionSearch .jc-sb {
    -webkit-box-pack: justify !important;
    -ms-flex-pack: justify !important;
    justify-content: space-between !important
}

.js-electionSearch .fxw-n {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important
}

.js-electionSearch .ai-b {
    -webkit-box-align: baseline !important;
    -ms-flex-align: baseline !important;
    align-items: baseline !important
}

.js-electionSearch .ai-c {
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important
}

.js-electionSearch .ai-fe {
    -webkit-box-align: end !important;
    -ms-flex-align: end !important;
    align-items: flex-end !important
}

.js-electionSearch .ai-fs {
    -webkit-box-align: start !important;
    -ms-flex-align: start !important;
    align-items: flex-start !important
}

.js-electionSearch .ai-s {
    -webkit-box-align: stretch !important;
    -ms-flex-align: stretch !important;
    align-items: stretch !important
}

.js-electionSearch .v-h {
    visibility: hidden !important;
    speak: none
}

.js-electionSearch .ov-h {
    overflow: hidden !important
}

.js-electionSearch .ov-v {
    overflow: visible !important
}

.js-electionSearch .va-t {
    vertical-align: top !important
}

.js-electionSearch .va-m {
    vertical-align: middle !important
}

.js-electionSearch .va-b {
    vertical-align: bottom !important
}

.js-electionSearch .z-nav {
    z-index: 4000 !important
}

.js-electionSearch .z-nav1 {
    z-index: 4001 !important
}

.js-electionSearch .clearfix:after, .js-electionSearch .clearfix:before {
    content: "";
    display: table;
    content: "\0020";
    display: block;
    height: 0;
    overflow: hidden;
    visibility: hidden
}

.js-electionSearch .clearfix:after {
    clear: both
}

.js-electionSearch .fl-l {
    float: left
}

.js-electionSearch .fl-r {
    float: right
}

.js-electionSearch .ord--1 {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1
}

.js-electionSearch .ord-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.js-electionSearch .ord-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.js-electionSearch .ord-3 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
}

.js-electionSearch .bgc-b {
    background-color: #000;
    color: #fff
}

.js-electionSearch .bgc-dg {
    background-color: #333;
    color: #fff
}

.js-electionSearch .bgc-g {
    background-color: rgba(0, 0, 0, .05)
}

.js-electionSearch .bgc-gray {
    background-color: #f2f2f2
}

.js-electionSearch .bgc-w {
    background-color: #fff;
    color: #2d2b2b
}

.js-electionSearch .bgc-brand {
    background-color: #d7003a;
    color: #fff
}

.js-electionSearch html:not([data-whatinput=mouse]):not([data-whatinput=touch]) .bgc-brand:focus {
    outline: 4px solid hsla(0, 0%, 100%, .7);
    outline-offset: -4px
}

.js-electionSearch .bgc-brand-sub {
    background-color: #2d2b2b;
    color: #fff
}

.js-electionSearch .bgc-search {
    background-color: rgba(215, 0, 58, .2);
    display: inline-block;
    padding: .1em .2em;
    font-weight: 700;
    line-height: 1
}

.js-electionSearch .c-red, .js-electionSearch .c-red-ruby {
    color: #d7003a !important
}

.js-electionSearch .c-red-ruby:before {
    color: #2d2b2b !important
}

.js-electionSearch .c-red-rt:before {
    color: #d7003a !important
}

.js-electionSearch .bd {
    border: 2px solid #eee !important
}

.js-electionSearch .bdt {
    border-top: 2px solid #eee !important
}

.js-electionSearch .bdt-n {
    border-top: none !important
}

.js-electionSearch .bdb {
    border-bottom: 2px solid #eee !important
}

.js-electionSearch .bdr {
    border-right: 1px solid #eee !important
}

.js-electionSearch .bdl {
    border-left: 1px solid #eee !important
}

.js-electionSearch .bdrs-m {
    border-radius: 1em;
    overflow: hidden
}

.js-electionSearch .isnt-bd {
    border: none !important
}

.js-electionSearch .ta-c {
    text-align: center !important
}

.js-electionSearch .ta-l {
    text-align: left !important
}

.js-electionSearch .ta-r {
    text-align: right !important
}

.js-electionSearch .ta-j {
    text-align: justify !important;
    text-justify: inter-ideograph !important
}

.js-electionSearch .lh-lll {
    line-height: 3 !important
}

.js-electionSearch .lh-ll {
    line-height: 2 !important
}

.js-electionSearch .lh-l {
    line-height: 1.75 !important
}

.js-electionSearch .lh-m {
    line-height: 1.5 !important
}

.js-electionSearch .lh-s {
    line-height: 1.25 !important
}

.js-electionSearch .lh-n {
    line-height: 1 !important
}

.js-electionSearch .fw-n {
    font-weight: 400 !important
}

.js-electionSearch .fw-b {
    font-weight: 700 !important
}

.js-electionSearch .ff-s {
    font-family: 游明朝体, Yu Mincho, YuMincho, Times, Times New Roman, Garamond, Georgia, serif
}

.js-electionSearch .ff-en {
    font-weight: 400 !important
}

.js-electionSearch .ff-en, .js-electionSearch .ff-en-b {
    font-family: Alte DIN\ 1451, Arial, Helvetica, Verdana, sans-serif;
    letter-spacing: .03em
}

.js-electionSearch .ff-en-b {
    font-weight: 700 !important
}

.js-electionSearch .ff-en-l {
    font-family: Alte DIN\ 1451, Arial, Helvetica, Verdana, sans-serif;
    font-weight: 300 !important;
    letter-spacing: .03em
}

.js-electionSearch .ff-en-s {
    font-family: "Noto Serif", Times, Times New Roman, Garamond, Georgia, serif;
    font-weight: 700 !important
}

.js-electionSearch .ff-en-space {
    letter-spacing: .04em
}

.js-electionSearch .ff-en-tspan {
    letter-spacing: -.2em
}

.js-electionSearch .t-svg .ff-en-AB {
    letter-spacing: -.24em
}

.js-electionSearch .t-svg .ff-en-AC {
    letter-spacing: -.28em
}

.js-electionSearch .ff-en-AM, .js-electionSearch .ff-en-AP {
    letter-spacing: -.02em
}

.js-electionSearch .ff-en-AY {
    letter-spacing: -.08em
}

.js-electionSearch .t-svg .ff-en-CT {
    letter-spacing: -.18em
}

.js-electionSearch .ff-en-EM {
    letter-spacing: .01em
}

.js-electionSearch .t-svg .ff-en-IO {
    letter-spacing: -.22em
}

.js-electionSearch .ff-en-LA {
    letter-spacing: .06em
}

.js-electionSearch .ff-en-MA {
    letter-spacing: -.02em
}

.js-electionSearch .t-svg .ff-en-ON {
    letter-spacing: -.24em
}

.js-electionSearch .ff-en-TE {
    letter-spacing: .01em
}

.js-electionSearch .t-svg .ff-en-TY {
    letter-spacing: -.18em
}

.js-electionSearch .t-svg .ff-en-WS {
    letter-spacing: -.24em
}

.js-electionSearch .td-u {
    text-decoration: underline
}

.js-electionSearch .ffs-p {
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1
}

.js-electionSearch .pos, .js-electionSearch .pos-r {
    position: relative !important
}

.js-electionSearch .pos-a {
    position: absolute !important
}

.js-electionSearch .pos-s {
    position: static !important
}

.js-electionSearch .w-1 {
    width: 100% !important
}

.js-electionSearch .w-a {
    width: auto !important
}

.js-electionSearch .h-1 {
    height: 100%
}

.js-electionSearch .m {
    margin: 1em !important
}

.js-electionSearch .m-n {
    margin: 0 !important
}

.js-electionSearch .m-ss {
    margin: .25em !important
}

.js-electionSearch .m-s {
    margin: .5em !important
}

.js-electionSearch .m-m {
    margin: 1.25em !important
}

.js-electionSearch .m-l {
    margin: 1.5em !important
}

.js-electionSearch .m-ll {
    margin: 2em !important
}

.js-electionSearch .m-lll {
    margin: 3em !important
}

.js-electionSearch .mr {
    margin-right: 1em !important
}

.js-electionSearch .mr-n {
    margin-right: 0 !important
}

.js-electionSearch .mr-ss {
    margin-right: .25em !important
}

.js-electionSearch .mr-s {
    margin-right: .5em !important
}

.js-electionSearch .mr-m {
    margin-right: 1.25em !important
}

.js-electionSearch .mr-l {
    margin-right: 1.5em !important
}

.js-electionSearch .mr-ll {
    margin-right: 2em !important
}

.js-electionSearch .mr-lll {
    margin-right: 3em !important
}

.js-electionSearch .mr-ss- {
    margin-right: -.25em !important
}

.js-electionSearch .mr-s- {
    margin-right: -.5em !important
}

.js-electionSearch .mr-m- {
    margin-right: -1.25em !important
}

.js-electionSearch .mr-l- {
    margin-right: -1.5em !important
}

.js-electionSearch .mr-ll- {
    margin-right: -2em !important
}

.js-electionSearch .mr-lll- {
    margin-right: -3em !important
}

.js-electionSearch .ml {
    margin-left: 1em !important
}

.js-electionSearch .ml-n {
    margin-left: 0 !important
}

.js-electionSearch .ml-ss {
    margin-left: .25em !important
}

.js-electionSearch .ml-s {
    margin-left: .5em !important
}

.js-electionSearch .ml-m {
    margin-left: 1.25em !important
}

.js-electionSearch .ml-l {
    margin-left: 1.5em !important
}

.js-electionSearch .ml-ll {
    margin-left: 2em !important
}

.js-electionSearch .ml-lll {
    margin-left: 3em !important
}

.js-electionSearch .ml-ss- {
    margin-left: -.25em !important
}

.js-electionSearch .ml-s- {
    margin-left: -.5em !important
}

.js-electionSearch .ml-m- {
    margin-left: -1.25em !important
}

.js-electionSearch .ml-l- {
    margin-left: -1.5em !important
}

.js-electionSearch .ml-ll- {
    margin-left: -2em !important
}

.js-electionSearch .ml-lll- {
    margin-left: -3em !important
}

.js-electionSearch .ms {
    margin-left: 1em !important;
    margin-right: 1em !important
}

.js-electionSearch .ms-n {
    margin-left: 0 !important;
    margin-right: 0 !important
}

.js-electionSearch .ms-ss {
    margin-left: .25em !important;
    margin-right: .25em !important
}

.js-electionSearch .ms-s {
    margin-left: .5em !important;
    margin-right: .5em !important
}

.js-electionSearch .ms-m {
    margin-left: 1.25em !important;
    margin-right: 1.25em !important
}

.js-electionSearch .ms-l {
    margin-left: 1.5em !important;
    margin-right: 1.5em !important
}

.js-electionSearch .ms-ll {
    margin-left: 2em !important;
    margin-right: 2em !important
}

.js-electionSearch .ms-lll {
    margin-left: 3em !important;
    margin-right: 3em !important
}

.js-electionSearch .mt {
    margin-top: 1em !important
}

.js-electionSearch .mt-n {
    margin-top: 0 !important
}

.js-electionSearch .mt-ss {
    margin-top: .25em !important
}

.js-electionSearch .mt-s {
    margin-top: .5em !important
}

.js-electionSearch .mt-m {
    margin-top: 1.25em !important
}

.js-electionSearch .mt-l {
    margin-top: 1.5em !important
}

.js-electionSearch .mt-ll {
    margin-top: 2em !important
}

.js-electionSearch .pt {
    padding-top: 1em !important
}

.js-electionSearch .pt-n {
    padding-top: 0 !important
}

.js-electionSearch .pt-ss {
    padding-top: .25em !important
}

.js-electionSearch .pt-s {
    padding-top: .5em !important
}

.js-electionSearch .pt-m {
    padding-top: 1.25em !important
}

.js-electionSearch .pt-l {
    padding-top: 1.5em !important
}

.js-electionSearch .pt-ll {
    padding-top: 2em !important
}

.js-electionSearch .mb {
    margin-bottom: 1em !important
}

.js-electionSearch .mb-n {
    margin-bottom: 0 !important
}

.js-electionSearch .mb-ss {
    margin-bottom: .25em !important
}

.js-electionSearch .mb-s {
    margin-bottom: .5em !important
}

.js-electionSearch .mb-s- {
    margin-bottom: -.5em !important
}

.js-electionSearch .mb-sl {
    margin-bottom: .75em !important
}

.js-electionSearch .mb-m {
    margin-bottom: 1.25em !important
}

.js-electionSearch .mb-l {
    margin-bottom: 1.5em !important
}

.js-electionSearch .mb-ll {
    margin-bottom: 2em !important
}

.js-electionSearch .isnt-mb {
    margin-bottom: 0 !important
}

.js-electionSearch .mv {
    margin-top: 1em !important;
    margin-bottom: 1em !important
}

.js-electionSearch .mv-n {
    margin-top: 0 !important;
    margin-bottom: 0 !important
}

.js-electionSearch .mv-ss {
    margin-top: .25em !important;
    margin-bottom: .25em !important
}

.js-electionSearch .mv-s {
    margin-top: .5em !important;
    margin-bottom: .5em !important
}

.js-electionSearch .mv-sl {
    margin-top: .75em !important;
    margin-bottom: .75em !important
}

.js-electionSearch .mv-m {
    margin-top: 1.25em !important;
    margin-bottom: 1.25em !important
}

.js-electionSearch .mv-l {
    margin-top: 1.5em !important;
    margin-bottom: 1.5em !important
}

.js-electionSearch .mv-ll {
    margin-top: 2em !important;
    margin-bottom: 2em !important
}

.js-electionSearch .mv-lll {
    margin-top: 3em !important;
    margin-bottom: 3em !important
}

.js-electionSearch .pb {
    padding-bottom: 1em !important
}

.js-electionSearch .pb-n {
    padding-bottom: 0 !important
}

.js-electionSearch .pb-ss {
    padding-bottom: .25em !important
}

.js-electionSearch .pb-s {
    padding-bottom: .5em !important
}

.js-electionSearch .pb-sl {
    padding-bottom: .75em !important
}

.js-electionSearch .pb-m {
    padding-bottom: 1.25em !important
}

.js-electionSearch .pb-l {
    padding-bottom: 1.5em !important
}

.js-electionSearch .pb-ll {
    padding-bottom: 2em !important
}

.js-electionSearch .pv {
    padding-top: 1em !important;
    padding-bottom: 1em !important
}

.js-electionSearch .pv-n {
    padding-top: 0 !important;
    padding-bottom: 0 !important
}

.js-electionSearch .pv-ss {
    padding-top: .25em !important;
    padding-bottom: .25em !important
}

.js-electionSearch .pv-s {
    padding-top: .5em !important;
    padding-bottom: .5em !important
}

.js-electionSearch .pv-sl {
    padding-top: .75em !important;
    padding-bottom: .75em !important
}

.js-electionSearch .pv-m {
    padding-top: 1.25em !important;
    padding-bottom: 1.25em !important
}

.js-electionSearch .pv-l {
    padding-top: 1.5em !important;
    padding-bottom: 1.5em !important
}

.js-electionSearch .pv-ll {
    padding-top: 2em !important;
    padding-bottom: 2em !important
}

.js-electionSearch .pv-lll {
    padding-top: 3em !important;
    padding-bottom: 3em !important
}

.js-electionSearch .pr {
    padding-right: 1em !important
}

.js-electionSearch .pr-n {
    padding-right: 0 !important
}

.js-electionSearch .pr-ss {
    padding-right: .25em !important
}

.js-electionSearch .pr-s {
    padding-right: .5em !important
}

.js-electionSearch .pr-sl {
    padding-right: .75em !important
}

.js-electionSearch .pr-m {
    padding-right: 1.25em !important
}

.js-electionSearch .pr-l {
    padding-right: 1.5em !important
}

.js-electionSearch .pr-ll {
    padding-right: 2em !important
}

.js-electionSearch .is-print {
    display: none
}


/*!
 * "Alte DIN 1451" licensed under the SIL Open Font License
 * https://www.peter-wiegel.de
 */


/*!   */
.js-electionSearch .ico {
    background-color: red;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
    text-transform: none;
    font-weight: 400;
    font-style: normal;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: jimin-ico;
    line-height: 1
}

.js-electionSearch .ico-accessibility:before {
    content: "\f001"
}

.js-electionSearch .ico-arrow-b-s:before {
    content: "\f002"
}

.js-electionSearch .ico-arrow-b:before {
    content: "\f003"
}

.js-electionSearch .ico-arrow-l-s:before {
    content: "\f004"
}

.js-electionSearch .ico-arrow-l:before {
    content: "\f005"
}

.js-electionSearch .ico-arrow-lb:before {
    content: "\f006"
}

.js-electionSearch .ico-arrow-r-s:before {
    content: "\f007"
}

.js-electionSearch .ico-arrow-r:before {
    content: "\f008"
}

.js-electionSearch .ico-arrow-rb:before {
    content: "\f009"
}

.js-electionSearch .ico-arrow-t-s:before {
    content: "\f00a"
}

.js-electionSearch .ico-arrow-t:before {
    content: "\f00b"
}

.js-electionSearch .ico-blank:before {
    content: "\f00c"
}

.js-electionSearch .ico-blog-s:before {
    content: "\f00d"
}

.js-electionSearch .ico-clear-s:before {
    content: "\f00e"
}

.js-electionSearch .ico-close-l:before {
    content: "\f00f"
}

.js-electionSearch .ico-close-s:before {
    content: "\f010"
}

.js-electionSearch .ico-close:before {
    content: "\f011"
}

.js-electionSearch .ico-donate-s:before {
    content: "\f012"
}

.js-electionSearch .ico-facebook:before {
    content: "\f013"
}

.js-electionSearch .ico-file:before {
    content: "\f014"
}

.js-electionSearch .ico-filter:before {
    content: "\f015"
}

.js-electionSearch .ico-instagram:before {
    content: "\f016"
}

.js-electionSearch .ico-line:before {
    content: "\f017"
}

.js-electionSearch .ico-live:before {
    content: "\f018"
}

.js-electionSearch .ico-mail-s:before {
    content: "\f019"
}

.js-electionSearch .ico-member:before {
    content: "\f01a"
}

.js-electionSearch .ico-menu:before {
    content: "\f01b"
}

.js-electionSearch .ico-nicovideo:before {
    content: "\f01c"
}

.js-electionSearch .ico-plus-s:before {
    content: "\f01d"
}

.js-electionSearch .ico-plus:before {
    content: "\f01e"
}

.js-electionSearch .ico-pw-off-m:before {
    content: "\f01f"
}

.js-electionSearch .ico-pw-on-m:before {
    content: "\f020"
}

.js-electionSearch .ico-rss-s:before {
    content: "\f021"
}

.js-electionSearch .ico-search-m:before {
    content: "\f022"
}

.js-electionSearch .ico-search-s:before {
    content: "\f023"
}

.js-electionSearch .ico-search:before {
    content: "\f024"
}

.js-electionSearch .ico-site-s:before {
    content: "\f025"
}

.js-electionSearch .ico-twitter:before {
    content: "\f026"
}

.js-electionSearch .ico-youtube:before {
    content: "\f027"
}

.js-electionSearch .lazyload {
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s
}

.js-electionSearch .lazyload.is-loaded {
    opacity: 1
}

.js-electionSearch .accordion-item {
    margin-bottom: -1px
}

.js-electionSearch .accordion-header {
    position: relative;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 1em 2em
}

.js-electionSearch .accordion-header .svg-ico.svg-ico-plus {
    position: absolute;
    top: 50%;
    right: 0;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.4em;
    width: 1.4em;
    height: 1.4em;
    margin-top: -.7em;
    -webkit-transition: -webkit-transform .3s ease-out;
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
    transition: transform .3s ease-out, -webkit-transform .3s ease-out;
    display: block
}

.js-electionSearch .accordion-header.is-active .svg-ico.svg-ico-plus {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

.js-electionSearch .accordion-header.is-normal {
    border-top: none;
    border-bottom: none;
    padding: 0
}

.js-electionSearch .accordion-content {
    position: relative;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .accordion-content.is-hidden {
    height: 0
}

.js-electionSearch .andmore-content {
    height: 0;
    overflow: hidden
}

.js-electionSearch .andmore.is-active .andmore-content {
    height: auto;
    overflow: visible
}

.js-electionSearch .andmore.is-active .is-true {
    opacity: 0
}

.js-electionSearch .andmore.is-active .is-false {
    opacity: 1
}

.js-electionSearch .andmore.is-active .ico-plus:before {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

.js-electionSearch .andmore-btn .ico-plus:before {
    -webkit-transition: -webkit-transform .3s ease-out;
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
    transition: transform .3s ease-out, -webkit-transform .3s ease-out;
    display: block
}

.js-electionSearch .andmore-label {
    display: inline-block;
    position: relative
}

.js-electionSearch .andmore-label.is-false {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    opacity: 0
}

.js-electionSearch .andmore-label.is-true {
    opacity: 1
}

.js-electionSearch .carousel {
    position: relative;
    width: 100%;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    tap-highlight-color: transparent
}

.js-electionSearch .carousel:after, .js-electionSearch .carousel:before {
    position: absolute;
    z-index: 2
}

.js-electionSearch .carousel.is-max .carousel-next, .js-electionSearch .carousel.is-min .carousel-prev {
    opacity: .2
}

.js-electionSearch .carousel.is-within .carousel-next, .js-electionSearch .carousel.is-within .carousel-number, .js-electionSearch .carousel.is-within .carousel-page, .js-electionSearch .carousel.is-within .carousel-pointer, .js-electionSearch .carousel.is-within .carousel-prev {
    display: none
}

.js-electionSearch .carousel.is-init .carousel-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.js-electionSearch .carousel.is-init .carousel-panel {
    float: none;
    display: block;
    white-space: normal;
    -webkit-transition: opacity .2s;
    transition: opacity .2s
}

.js-electionSearch .carousel-track:after, .js-electionSearch .carousel-track:before {
    content: "";
    display: table;
    content: "\0020";
    display: block;
    height: 0;
    overflow: hidden;
    visibility: hidden
}

.js-electionSearch .carousel-track:after {
    clear: both
}

.js-electionSearch .carousel-panel {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    float: left;
    vertical-align: top;
    letter-spacing: 0;
    white-space: nowrap;
    width: 100%
}

.js-electionSearch .carousel-panel.is-hidden {
    opacity: .2
}

.js-electionSearch .carousel-btn {
    display: block;
    border: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .carousel-btn-other {
    width: 90%;
    margin: 0 auto
}

.js-electionSearch .carousel-next, .js-electionSearch .carousel-prev {
    position: absolute;
    z-index: 3;
    display: block;
    overflow: hidden;
    color: transparent;
    top: 50%
}

.js-electionSearch .carousel-next:before, .js-electionSearch .carousel-prev:before {
    color: #000
}

.js-electionSearch .carousel-next .svg-ico, .js-electionSearch .carousel-prev .svg-ico {
    fill: #000;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 100%;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.js-electionSearch .carousel-youtube-bottom, .js-electionSearch .carousel-youtube-left, .js-electionSearch .carousel-youtube-right, .js-electionSearch .carousel-youtube-top {
    position: absolute;
    z-index: 2
}

.js-electionSearch .carousel-youtube-top {
    height: 100%;
    bottom: 60%;
    left: 0;
    right: 0
}

.js-electionSearch .carousel-youtube-bottom {
    top: 60%;
    bottom: 10%;
    left: 0;
    right: 0
}

.js-electionSearch .carousel-youtube-left {
    left: 0;
    width: 40%;
    top: 11%;
    bottom: 0
}

.js-electionSearch .carousel-youtube-right {
    right: 0;
    width: 40%;
    top: 11%;
    bottom: 10%
}

.js-electionSearch .carousel-number {
    position: absolute;
    left: 0;
    bottom: 0
}

.js-electionSearch .carousel-number, .js-electionSearch .carousel-page {
    z-index: 2;
    width: 100%;
    text-align: center;
    font-family: Arial, Helvetica, Verdana, sans-serif
}

.js-electionSearch .carousel-page {
    position: relative;
    padding-top: 1em;
    font-size: 87.5%
}

.js-electionSearch .carousel-pointer {
    position: relative;
    z-index: 2;
    width: 100%;
    text-align: center
}

.js-electionSearch .carousel-pointer-btn {
    position: relative;
    display: inline-block;
    overflow: hidden;
    color: transparent
}

.js-electionSearch .carousel-pointer-btn.is-current .carousel-pointer-ico {
    background-color: #000
}

.js-electionSearch .carousel-pointer-ico {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid #000;
    background-color: transparent;
    border-radius: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .carousel-cover {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%
}

.js-electionSearch .carousel-cover-left {
    right: 100%
}

.js-electionSearch .carousel-cover-right {
    left: 100%
}

.js-electionSearch .carousel.is-pickup .btn-cover, .js-electionSearch .carousel.is-pickup .btn-cover-download {
    width: 96%;
    left: 2%
}

.js-electionSearch .carousel.is-download .btn-cover, .js-electionSearch .carousel.is-download .btn-cover-download {
    width: 80%;
    left: 10%
}

.js-electionSearch .carousel.is-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.js-electionSearch .carousel.is-cover .carousel-next:before, .js-electionSearch .carousel.is-cover .carousel-prev:before {
    color: #fff
}

.js-electionSearch .carousel.is-cover .carousel-next {
    left: auto;
    right: 0
}

.js-electionSearch .carousel.is-cover .carousel-prev {
    left: 0;
    right: auto
}

.js-electionSearch .carousel.is-cover .carousel-panel.is-hidden {
    opacity: 1
}

.js-electionSearch .carousel.is-cover .carousel-pointer {
    position: absolute;
    top: auto
}

.js-electionSearch .carousel.is-cover .carousel-pointer-btn.is-current .carousel-pointer-ico {
    background-color: #fff
}

.js-electionSearch .carousel.is-cover .carousel-pointer-ico {
    border-color: #fff
}

.js-electionSearch .slider {
    position: relative;
    margin: .2em 0 1.5em;
    height: .5em;
    background-color: #eee
}

.js-electionSearch .slider-handle {
    position: absolute;
    top: 50%;
    left: 0;
    width: 1.4em;
    height: 1.4em;
    margin-left: -.7em;
    margin-top: -.7em;
    background-color: #000
}

.js-electionSearch .slider-fill {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #ccc;
    width: 100%;
    height: 100%
}

.js-electionSearch .tooltip {
    position: relative;
    display: inline-block
}

.js-electionSearch .tooltip.is-init .tooltip-balloon {
    display: block
}

.js-electionSearch .tooltip.is-open .tooltip-balloon {
    z-index: 5;
    opacity: .9;
    -webkit-transform: translate(0);
    transform: translate(0);
    visibility: visible
}

.js-electionSearch .tooltip.is-open .tooltip-target {
    display: inline-block
}

.js-electionSearch .tooltip.is-open .ico {
    background-color: rgba(0, 0, 0, .5)
}

.js-electionSearch .tooltip-target {
    display: inline-block;
    position: relative
}

.js-electionSearch .tooltip-balloon {
    z-index: -1;
    position: absolute;
    display: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: #000;
    color: #fff;
    width: 320px;
    text-align: center;
    padding: 1em 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    opacity: 0;
    -webkit-transition: opacity .2s, -webkit-transform .2s ease;
    transition: opacity .2s, -webkit-transform .2s ease;
    transition: opacity .2s, transform .2s ease;
    transition: opacity .2s, transform .2s ease, -webkit-transform .2s ease
}

.js-electionSearch .tooltip-balloon:after {
    display: block;
    content: " ";
    font-size: 0;
    width: 0;
    height: 0;
    position: absolute
}

.js-electionSearch .tooltip-balloon.is-top {
    left: 50%;
    margin-left: -160px;
    bottom: 100%;
    margin-bottom: .5em;
    -webkit-transform: translateY(5px);
    transform: translateY(5px)
}

.js-electionSearch .tooltip-balloon.is-top:after {
    bottom: -7px;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid #000;
    left: 50%;
    margin-left: -8px
}

.js-electionSearch .tooltip-balloon.is-left {
    left: -10px !important;
    margin-left: 0 !important
}

.js-electionSearch .tooltip-balloon.is-left:after {
    left: 25px !important
}

.js-electionSearch .tooltip-balloon.is-right {
    left: auto !important;
    right: -5px;
    margin-left: 0 !important
}

.js-electionSearch .tooltip-balloon.is-right:after {
    left: auto !important;
    right: 12px
}

.js-electionSearch .tab-nav {
    list-style: none;
    position: relative;
    letter-spacing: -.4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .tab-list, .js-electionSearch .tab-list-other {
    letter-spacing: 0;
    width: 20%;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .tab-list-other .tool-btn, .js-electionSearch .tab-list .tool-btn {
    width: 100% !important;
    height: 100%
}

.js-electionSearch .tab-nav.is-3 .tab-list, .js-electionSearch .tab-nav.is-3 .tab-list-other {
    width: 33.33333%
}

.js-electionSearch .tab-nav.is-2 .tab-list, .js-electionSearch .tab-nav.is-2 .tab-list-other {
    width: 50%
}

.js-electionSearch .tab-btn {
    position: relative;
    display: block;
    color: #000;
    text-decoration: none;
    text-align: center;
    padding: .75em 0;
    -webkit-transition: color .2s ease-out .15s;
    transition: color .2s ease-out .15s;
    line-height: 1.4
}

.js-electionSearch .tab-btn-label {
    position: relative;
    z-index: 2;
    position: absolute;
    top: 50%;
    width: 100%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-weight: 700
}

.js-electionSearch .tab-btn:before {
    position: absolute;
    display: block;
    content: " ";
    clear: both;
    width: 100%;
    height: 2px;
    left: 0;
    bottom: 0;
    background-color: #eee;
    -webkit-transition: height .2s ease, background-color .2s ease;
    transition: height .2s ease, background-color .2s ease;
    z-index: 1
}

.js-electionSearch .tab-btn:hover {
    color: #fff
}

.js-electionSearch .tab-btn:hover:before {
    height: 100%;
    background-color: #000
}

.js-electionSearch .tab-btn.is-active {
    color: #fff
}

.js-electionSearch .tab-btn.is-active:before {
    height: 100%;
    background-color: #ccc
}

.js-electionSearch .tab-panel {
    opacity: 1;
    height: auto;
    display: none;
    visibility: hidden
}

.js-electionSearch .js-tab.is-init .tab-panel {
    display: block;
    visibility: visible
}

.js-electionSearch .tab-panel.is-hidden {
    opacity: 0;
    height: 0;
    display: none
}

.js-electionSearch .effect {
    opacity: 0
}

.js-electionSearch .effect-obj {
    position: relative;
    display: inline-block;
    z-index: 100;
    pointer-events: none
}

.js-electionSearch .effect-obj.is-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.js-electionSearch .effect-rect, .js-electionSearch .effect-reveal {
    overflow: hidden;
    position: relative
}

.js-electionSearch .effect-reveal {
    display: inline-block
}

.js-electionSearch .effect-reveal-cover {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden
}

.js-electionSearch .effect-reveal-bar {
    position: absolute;
    top: -.5%;
    left: 0;
    -webkit-transform: translate(-101%);
    transform: translate(-101%);
    width: 100%;
    height: 101%;
    background-color: #000
}

.js-electionSearch .effect-reveal-wrap {
    display: inline-block;
    opacity: 0;
    visibility: hidden
}

.js-electionSearch .effect-fade {
    opacity: 0
}

.js-electionSearch .effect-fade.is-complete, .js-electionSearch .effect-fade.is-start {
    opacity: 1
}

.js-electionSearch .effect-fademono {
    opacity: .5;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: -webkit-filter .5s;
    transition: -webkit-filter .5s;
    transition: filter .5s;
    transition: filter .5s, -webkit-filter .5s
}

.js-electionSearch .effect-fademono.is-complete, .js-electionSearch .effect-fademono.is-start {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1
}

.js-electionSearch .effect-fadetop {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px)
}

.js-electionSearch .effect-fadetop.is-complete, .js-electionSearch .effect-fadetop.is-start {
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

.js-electionSearch .effect-fadeleft {
    opacity: 0;
    -webkit-transform: translate(50px);
    transform: translate(50px)
}

.js-electionSearch .effect-fadeleft.is-complete, .js-electionSearch .effect-fadeleft.is-start {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
}

.js-electionSearch .effect-faderight {
    opacity: 0;
    -webkit-transform: translate(-50px);
    transform: translate(-50px)
}

.js-electionSearch .effect-faderight.is-complete, .js-electionSearch .effect-faderight.is-start {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
}

.js-electionSearch .effect-fadeleftl {
    opacity: 0;
    -webkit-transform: translate(150px);
    transform: translate(150px)
}

.js-electionSearch .effect-fadeleftl.is-complete, .js-electionSearch .effect-fadeleftl.is-start {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
}

.js-electionSearch .effect-faderightl {
    opacity: 0;
    -webkit-transform: translate(-150px);
    transform: translate(-150px)
}

.js-electionSearch .effect-faderightl.is-complete, .js-electionSearch .effect-faderightl.is-start {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
}

.js-electionSearch .effect-fadescalein {
    opacity: 0;
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.js-electionSearch .effect-fadescalein.is-complete, .js-electionSearch .effect-fadescalein.is-start {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.js-electionSearch .effect-fadescaleout {
    opacity: 0;
    -webkit-transform: scale(.9);
    transform: scale(.9)
}

.js-electionSearch .effect-fadescaleout.is-complete, .js-electionSearch .effect-fadescaleout.is-start {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.js-electionSearch .effect-fadescale {
    opacity: 0;
    -webkit-transform: scale(.95) translateY(5%);
    transform: scale(.95) translateY(5%)
}

.js-electionSearch .effect-fadescale.is-complete, .js-electionSearch .effect-fadescale.is-start {
    opacity: 1;
    -webkit-transform: scale(1) translate(0);
    transform: scale(1) translate(0)
}

.js-electionSearch .effect-scalein {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.js-electionSearch .effect-scalein.is-complete, .js-electionSearch .effect-scalein.is-start {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.js-electionSearch .effect-scaleout {
    -webkit-transform: scale(.95);
    transform: scale(.95)
}

.js-electionSearch .effect-scaleout.is-complete, .js-electionSearch .effect-scaleout.is-start {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.js-electionSearch .effect-line {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.js-electionSearch .effect-line-h:after, .js-electionSearch .effect-line-h:before, .js-electionSearch .effect-line-hc, .js-electionSearch .effect-line-hm, .js-electionSearch .effect-line-w:after, .js-electionSearch .effect-line-w:before, .js-electionSearch .effect-line-wc, .js-electionSearch .effect-line-wm {
    position: absolute;
    display: block;
    content: " ";
    opacity: 0;
    -webkit-transition: opacity .15s ease, -webkit-transform .15s ease;
    transition: opacity .15s ease, -webkit-transform .15s ease;
    transition: opacity .15s ease, transform .15s ease;
    transition: opacity .15s ease, transform .15s ease, -webkit-transform .15s ease
}

.js-electionSearch .bgc-w .effect-line-h:after, .js-electionSearch .bgc-w .effect-line-h:before, .js-electionSearch .bgc-w .effect-line-hc, .js-electionSearch .bgc-w .effect-line-hm, .js-electionSearch .bgc-w .effect-line-w:after, .js-electionSearch .bgc-w .effect-line-w:before, .js-electionSearch .bgc-w .effect-line-wc, .js-electionSearch .bgc-w .effect-line-wm {
    background-color: #2d2b2b
}

.js-electionSearch .bgc-b .effect-line-h:after, .js-electionSearch .bgc-b .effect-line-h:before, .js-electionSearch .bgc-b .effect-line-hc, .js-electionSearch .bgc-b .effect-line-hm, .js-electionSearch .bgc-b .effect-line-w:after, .js-electionSearch .bgc-b .effect-line-w:before, .js-electionSearch .bgc-b .effect-line-wc, .js-electionSearch .bgc-b .effect-line-wm {
    background-color: #fff
}

.js-electionSearch .effect.is-start .effect-line-h:after, .js-electionSearch .effect.is-start .effect-line-h:before, .js-electionSearch .effect.is-start .effect-line-hc, .js-electionSearch .effect.is-start .effect-line-hm, .js-electionSearch .effect.is-start .effect-line-w:after, .js-electionSearch .effect.is-start .effect-line-w:before, .js-electionSearch .effect.is-start .effect-line-wc, .js-electionSearch .effect.is-start .effect-line-wm {
    opacity: .25;
    -webkit-transform: translate(0) scale(1);
    transform: translate(0) scale(1)
}

.js-electionSearch .effect.is-complete .effect-line-h:after, .js-electionSearch .effect.is-complete .effect-line-h:before, .js-electionSearch .effect.is-complete .effect-line-hc, .js-electionSearch .effect.is-complete .effect-line-hm, .js-electionSearch .effect.is-complete .effect-line-w:after, .js-electionSearch .effect.is-complete .effect-line-w:before, .js-electionSearch .effect.is-complete .effect-line-wc, .js-electionSearch .effect.is-complete .effect-line-wm {
    opacity: 0
}

.js-electionSearch .effect-line-w:after, .js-electionSearch .effect-line-w:before, .js-electionSearch .effect-line-wm {
    position: absolute;
    height: 1px;
    right: -5px;
    left: -5px;
    -webkit-transform: translate(-50%) scale(0);
    transform: translate(-50%) scale(0);
    background: -webkit-linear-gradient(left, transparent, #000 5px, #000 calc(100% - 5px), transparent);
    background: linear-gradient(90deg, transparent 0, #000 5px, #000 calc(100% - 5px), transparent)
}

.js-electionSearch .bgc-w .effect-line-w:after, .js-electionSearch .bgc-w .effect-line-w:before, .js-electionSearch .bgc-w .effect-line-wm {
    background: -webkit-linear-gradient(left, transparent, #000 5px, #000 calc(100% - 5px), transparent) !important;
    background: linear-gradient(90deg, transparent 0, #000 5px, #000 calc(100% - 5px), transparent) !important
}

.js-electionSearch .bgc-b .effect-line-w:after, .js-electionSearch .bgc-b .effect-line-w:before, .js-electionSearch .bgc-b .effect-line-wm {
    background: -webkit-linear-gradient(left, hsla(0, 0%, 100%, 0), #fff 5px, #fff calc(100% - 5px), hsla(0, 0%, 100%, 0)) !important;
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0) 0, #fff 5px, #fff calc(100% - 5px), hsla(0, 0%, 100%, 0)) !important
}

.js-electionSearch .effect.is-complete .effect-line-w:after, .js-electionSearch .effect.is-complete .effect-line-w:before, .js-electionSearch .effect.is-complete .effect-line-wm {
    -webkit-transform: translate(20px);
    transform: translate(20px)
}

.js-electionSearch .effect-line-w:before {
    top: 0;
    -webkit-transition-delay: .1s;
    transition-delay: .1s
}

.js-electionSearch .ff-en-b .effect-line-w:before, .js-electionSearch .ff-en .effect-line-w:before {
    top: 2%
}

.js-electionSearch .effect-line-wm {
    bottom: 16%;
    -webkit-transition-delay: .12s;
    transition-delay: .12s
}

.js-electionSearch .effect-obj.is-en .effect-line-wm {
    bottom: 20%
}

.js-electionSearch .effect-line-w:after {
    bottom: 0;
    -webkit-transition-delay: .14s;
    transition-delay: .14s
}

.js-electionSearch .ff-en-b .effect-line-w:after, .js-electionSearch .ff-en .effect-line-w:after {
    bottom: 2%
}

.js-electionSearch .effect-line-h:after, .js-electionSearch .effect-line-h:before, .js-electionSearch .effect-line-hc {
    position: absolute;
    width: 1px;
    top: -5px;
    bottom: -5px;
    -webkit-transform: translateY(-50%) scale(0);
    transform: translateY(-50%) scale(0)
}

.js-electionSearch .bgc-w .effect-line-h:after, .js-electionSearch .bgc-w .effect-line-h:before, .js-electionSearch .bgc-w .effect-line-hc, .js-electionSearch .effect-line-h:after, .js-electionSearch .effect-line-h:before, .js-electionSearch .effect-line-hc {
    background: -webkit-linear-gradient(top, transparent, #000 5px, #000 calc(100% - 5px), transparent);
    background: linear-gradient(180deg, transparent 0, #000 5px, #000 calc(100% - 5px), transparent)
}

.js-electionSearch .bgc-b .effect-line-h:after, .js-electionSearch .bgc-b .effect-line-h:before, .js-electionSearch .bgc-b .effect-line-hc {
    background: -webkit-linear-gradient(top, hsla(0, 0%, 100%, 0), #fff 5px, #fff calc(100% - 5px), hsla(0, 0%, 100%, 0));
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, #fff 5px, #fff calc(100% - 5px), hsla(0, 0%, 100%, 0))
}

.js-electionSearch .effect.is-complete .effect-line-h:after, .js-electionSearch .effect.is-complete .effect-line-h:before, .js-electionSearch .effect.is-complete .effect-line-hc {
    -webkit-transform: translateY(20px);
    transform: translateY(20px)
}

.js-electionSearch .effect-line-h:before {
    left: 0;
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

.js-electionSearch .effect-line-hc {
    left: 50%;
    -webkit-transition-delay: .22s;
    transition-delay: .22s
}

.js-electionSearch .effect-line-h:after {
    right: 0;
    -webkit-transition-delay: .24s;
    transition-delay: .24s
}

.js-electionSearch .effect-svg {
    opacity: 0;
    visibility: hidden
}

.js-electionSearch .effect-svg.is-complete, .js-electionSearch .effect-svg.is-start {
    visibility: visible;
    opacity: 1
}

.js-electionSearch .effect-svg svg {
    display: block
}

.js-electionSearch .effect-svg text {
    fill: transparent;
    -webkit-transition: fill .75s;
    transition: fill .75s;
    stroke: #2d2b2b
}

.js-electionSearch .bgc-b .effect-svg text {
    stroke: #fff
}

.js-electionSearch .bgc-w .effect-svg text {
    stroke: #2d2b2b
}

.js-electionSearch .effect-svg.is-fill text {
    fill: #2d2b2b !important
}

.js-electionSearch .bgc-b .effect-svg.is-fill text {
    fill: #fff !important
}

.js-electionSearch .bgc-w .effect-svg.is-fill text {
    fill: #2d2b2b !important
}

.js-electionSearch .parallax-cover {
    position: absolute
}

.js-electionSearch #modalWindow, .js-electionSearch .parallax-cover {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.js-electionSearch #modalWindow {
    position: fixed;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: none;
    z-index: 5000;
    -webkit-transition: opacity .6s;
    transition: opacity .6s
}

.js-electionSearch #modalWindow.is-init {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    opacity: 0
}

.js-electionSearch #modalWindow.is-start {
    opacity: 1
}

.js-electionSearch #modalWindow.is-start #modalClose {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
}

.js-electionSearch #modalWindow.is-start #modalClose, .js-electionSearch #modalWindow.is-start #modalPrev {
    opacity: 1;
    -webkit-transition: opacity .3s .6s, -webkit-transform .3s .6s;
    transition: opacity .3s .6s, -webkit-transform .3s .6s;
    transition: transform .3s .6s, opacity .3s .6s;
    transition: transform .3s .6s, opacity .3s .6s, -webkit-transform .3s .6s
}

.js-electionSearch #modalWindow.is-start #modalNext, .js-electionSearch #modalWindow.is-start #modalPrev {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.js-electionSearch #modalWindow.is-start #modalNext {
    opacity: 1;
    -webkit-transition: opacity .3s .6s, -webkit-transform .3s .6s;
    transition: opacity .3s .6s, -webkit-transform .3s .6s;
    transition: transform .3s .6s, opacity .3s .6s;
    transition: transform .3s .6s, opacity .3s .6s, -webkit-transform .3s .6s
}

.js-electionSearch #modalWindow.is-within #modalNext, .js-electionSearch #modalWindow.is-within #modalPrev {
    display: none
}

.js-electionSearch #modalWindow.is-min #modalPrev {
    pointer-events: none
}

.js-electionSearch #modalWindow.is-min #modalPrev .svg-ico {
    opacity: .2
}

.js-electionSearch #modalWindow.is-max #modalNext {
    pointer-events: none
}

.js-electionSearch #modalWindow.is-max #modalNext .svg-ico {
    opacity: .2
}

.js-electionSearch #modalBG {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: .9
}

.js-electionSearch #modalContents {
    color: #fff;
    position: relative;
    margin: 0;
    z-index: 1
}

.js-electionSearch #modalContents .txt-link {
    color: #fff
}

.js-electionSearch #modalContent {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%
}

.js-electionSearch #modalIframe {
    position: relative;
    z-index: 0
}

.js-electionSearch #modalIframeWrap.is-scroll {
    -webkit-overflow-scrolling: touch !important;
    overflow-x: hidden;
    overflow-y: scroll
}

.js-electionSearch #modalIframe.is-active {
    z-index: 1
}

.js-electionSearch #modalIframe.is-iframe {
    overflow-y: scroll
}

.js-electionSearch #modalIframe.is-president {
    background-color: #fff
}

.js-electionSearch #modalClose .svg-ico, .js-electionSearch #modalNext .svg-ico, .js-electionSearch #modalPrev .svg-ico {
    display: inline-block;
    fill: #fff;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 40px;
    width: 40px;
    height: 40px
}

.js-electionSearch #modalClose {
    top: -40px;
    right: 0;
    height: 40px;
    z-index: 2;
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg)
}

.js-electionSearch #modalClose, .js-electionSearch #modalNext, .js-electionSearch #modalPrev {
    position: absolute;
    width: 40px;
    opacity: 0;
    -webkit-transition: opacity .3s, -webkit-transform .3s;
    transition: opacity .3s, -webkit-transform .3s;
    transition: transform .3s, opacity .3s;
    transition: transform .3s, opacity .3s, -webkit-transform .3s
}

.js-electionSearch #modalNext, .js-electionSearch #modalPrev {
    height: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.js-electionSearch #modalPrev {
    right: 100%;
    -webkit-transform: translate(40px, -50%);
    transform: translate(40px, -50%)
}

.js-electionSearch #modalNext {
    left: 100%;
    -webkit-transform: translate(-40px, -50%);
    transform: translate(-40px, -50%)
}

.js-electionSearch .container {
    -webkit-transition: -webkit-filter .3s;
    transition: -webkit-filter .3s;
    transition: filter .3s;
    transition: filter .3s, -webkit-filter .3s
}

.js-electionSearch .modal-carousel {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.js-electionSearch .modal-carousel .carousel-panel, .js-electionSearch .modal-carousel .carousel-track {
    height: 100%
}

.js-electionSearch .modal-carousel .carousel-panel {
    -webkit-transition: opacity .3s;
    transition: opacity .3s
}

.js-electionSearch .modal-carousel .carousel-panel.is-hidden {
    opacity: .1
}

.js-electionSearch .modal-carousel .carousel-panel.is-html {
    overflow-x: hidden;
    overflow-y: auto;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch
}

.js-electionSearch .modal-img {
    display: block;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .modal-description {
    padding-top: .75em;
    width: 100%;
    position: absolute;
    left: 0;
    top: 100%;
    color: #fff
}

.js-electionSearch .modal-description .btn {
    font-weight: 700;
    color: #fff;
    border-color: #fff
}

.js-electionSearch .modal-iframe.is-active {
    position: relative;
    z-index: 1
}

.js-electionSearch .modal-iframe.is-iframe {
    overflow-y: scroll
}

.js-electionSearch .l-bg {
    position: fixed;
    width: 100%;
    height: 100%
}

.js-electionSearch .l-bg-container, .js-electionSearch .l-bg-obj {
    position: absolute
}

.js-electionSearch .l-bg-container {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.js-electionSearch .l-bg-tr {
    top: -10%;
    right: -3%;
    width: 40%
}

.js-electionSearch .l-bg-tr-l {
    top: -10%;
    right: -3%;
    width: 80%
}

.js-electionSearch .l-bg-tl {
    top: -10%;
    left: -3%;
    width: 40%
}

.js-electionSearch .l-bg-tl-l {
    top: -10%;
    left: -3%;
    width: 80%
}

.js-electionSearch .l-bg-bl {
    bottom: -10%;
    left: -3%;
    width: 40%
}

.js-electionSearch .l-bg-bl-l {
    bottom: 5%;
    left: -3%;
    width: 80%
}

.js-electionSearch .l-bg-br {
    bottom: -10%;
    right: -3%;
    width: 40%
}

.js-electionSearch .l-bg-br-l {
    bottom: 5%;
    right: -3%;
    width: 80%
}

.js-electionSearch .l-header {
    z-index: 4003;
    width: 100%;
    top: 0
}

.js-electionSearch .is-disastermessage .l-header {
    -webkit-transition: top .25s ease-out;
    transition: top .25s ease-out
}

.js-electionSearch .is-disastermessage.is-load .l-header {
    top: 2.5em
}

.js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .l-header {
    top: 0
}

.js-electionSearch .l-header-menu {
    z-index: 4004;
    top: 0;
    right: 0
}

.js-electionSearch .l-header-global {
    position: fixed !important;
    z-index: 4003;
    top: 0;
    -webkit-transition: right .25s ease-out;
    transition: right .25s ease-out;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .l-header.is-menu-open .l-header-global {
    right: -30px
}

.js-electionSearch .l-header-global-shadow {
    -webkit-transition: right .25s ease-out, opacity .25s ease-out;
    transition: right .25s ease-out, opacity .25s ease-out;
    position: fixed !important;
    z-index: 4003;
    top: 0;
    right: 0;
    opacity: 0
}

.js-electionSearch .l-disastermessage {
    z-index: 4004;
    position: fixed;
    width: 100%;
    top: -2.5em;
    height: 2.5em;
    -webkit-transform: rotate3d(0, -50deg, 0, 0);
    transform: rotate3d(0, -50deg, 0, 0)
}

.js-electionSearch .is-disastermessage .l-disastermessage {
    -webkit-transition: top .25s ease-out, -webkit-transform .25s ease-out;
    transition: top .25s ease-out, -webkit-transform .25s ease-out;
    transition: top .25s ease-out, transform .25s ease-out;
    transition: top .25s ease-out, transform .25s ease-out, -webkit-transform .25s ease-out
}

.js-electionSearch .is-disastermessage.is-load .l-disastermessage {
    top: 0;
    -webkit-transform: rotate3d(0, 0, 0, 0);
    transform: rotate3d(0, 0, 0, 0)
}

.js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .l-disastermessage {
    top: -2.5em;
    -webkit-transform: rotate3d(0, -50deg, 0, 0);
    transform: rotate3d(0, -50deg, 0, 0)
}

.js-electionSearch .is-scroll-max .l-pagenav-main {
    position: absolute;
    bottom: 0;
    right: 0
}

.js-electionSearch .is-scroll .l-pagenav-main {
    bottom: 0
}

.js-electionSearch .l-pagenav {
    z-index: 4001;
    position: relative;
    min-width: 320px
}

.js-electionSearch .l-pagenav-main {
    right: 0;
    position: fixed;
    top: auto;
    bottom: -120px;
    -webkit-transition: bottom .5s cubic-bezier(.23, 1, .32, 1);
    transition: bottom .5s cubic-bezier(.23, 1, .32, 1)
}

.js-electionSearch .l-main {
    z-index: 2;
    position: relative
}

.js-electionSearch .l-main-fv {
    overflow: hidden
}

.js-electionSearch .l-main-fv:before {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: " ";
    display: block
}

.js-electionSearch .l-main-photo {
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: #eee
}

.js-electionSearch .l-main-photo:before {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: " ";
    display: block
}

.js-electionSearch .l-main-s {
    overflow: hidden
}

.js-electionSearch .l-main-s:before {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: " ";
    display: block
}

.js-electionSearch .l-main-ss {
    overflow: hidden
}

.js-electionSearch .l-main-ss:before {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: " ";
    display: block
}

.js-electionSearch .l-content {
    -webkit-perspective: 2000px;
    perspective: 2000px
}

.js-electionSearch .l-content, .js-electionSearch .l-content-col {
    z-index: 1;
    position: relative
}

.js-electionSearch .l-content-col {
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .l-content-col:after, .js-electionSearch .l-content-col:before {
    display: block;
    content: " ";
    font-size: 0;
    clear: both
}

.js-electionSearch .l-content-col.is-middle {
    position: absolute;
    width: 100%;
    max-width: none;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.js-electionSearch .l-content-col.isnt-maw {
    max-width: none
}

.js-electionSearch .l-content-col.isnt-b:after, .js-electionSearch .l-content-col.isnt-space:after, .js-electionSearch .l-content-col.isnt-space:before, .js-electionSearch .l-content-col.isnt-t:before {
    display: none
}

.js-electionSearch .l-col {
    position: relative;
    margin: 0 auto;
    width: 100%
}

.js-electionSearch .l-col:after, .js-electionSearch .l-col:before {
    display: block;
    content: " ";
    font-size: 0;
    clear: both
}

.js-electionSearch .l-col:before, .js-electionSearch .l-col:last-child:after {
    display: none
}

.js-electionSearch .l-col.is-b:after, .js-electionSearch .l-col.is-t:before {
    display: block
}

.js-electionSearch .l-col.isnt-b:after {
    display: none
}

.js-electionSearch .l-col.is-print {
    -webkit-font-feature-settings: normal !important;
    font-feature-settings: normal !important;
    width: 800px;
    height: 0;
    overflow: hidden
}

.js-electionSearch .l-col.is-print .l-col-print {
    padding: 30px
}

.js-electionSearch .l-col.is-print .l-col-print .table-th.is-member-m {
    width: 14em
}

.js-electionSearch .l-col.is-print .l-col-print .table-th.is-member-s {
    width: 7em
}

.js-electionSearch .l-col.is-print .btn-member-txt .btn-member-txt-label {
    text-decoration: none
}

.js-electionSearch .l-grid {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .l-grid.ta-c {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.js-electionSearch .l-grid.va-m {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .l-grid.isnt-gutter {
    margin-left: 0;
    margin-right: 0;
    width: 100%
}

.js-electionSearch .l-grid.isnt-gutter>.l-grid-col, .js-electionSearch .l-grid.isnt-gutter>[class*=l-grid-col-] {
    padding-right: 0;
    padding-left: 0
}

.js-electionSearch .l-grid>.l-grid-col, .js-electionSearch .l-grid>[class*=l-grid-col-] {
    position: relative
}

.js-electionSearch .l-grid-col, .js-electionSearch .l-grid>.l-grid-col, .js-electionSearch .l-grid>[class*=l-grid-col-] {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .l-grid-col {
    max-width: 100%
}

.js-electionSearch .l-grid-col-1 {
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%
}

.js-electionSearch .l-grid-col-1, .js-electionSearch .l-grid-col-2 {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0
}

.js-electionSearch .l-grid-col-2 {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%
}

.js-electionSearch .l-grid-col-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}

.js-electionSearch .l-grid-col-3, .js-electionSearch .l-grid-col-4 {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0
}

.js-electionSearch .l-grid-col-4 {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%
}

.js-electionSearch .l-grid-col-5 {
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%
}

.js-electionSearch .l-grid-col-5, .js-electionSearch .l-grid-col-6 {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0
}

.js-electionSearch .l-grid-col-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.js-electionSearch .l-grid-col-7 {
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%
}

.js-electionSearch .l-grid-col-7, .js-electionSearch .l-grid-col-8 {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0
}

.js-electionSearch .l-grid-col-8 {
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%
}

.js-electionSearch .l-grid-col-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%
}

.js-electionSearch .l-grid-col-9, .js-electionSearch .l-grid-col-10 {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0
}

.js-electionSearch .l-grid-col-10 {
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%
}

.js-electionSearch .l-grid-col-11 {
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%
}

.js-electionSearch .l-grid-col-11, .js-electionSearch .l-grid-col-12 {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0
}

.js-electionSearch .l-grid-col-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.js-electionSearch .l-grid-col-auto {
    width: auto !important
}

.js-electionSearch .l-index {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .l-index.ta-c {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.js-electionSearch .l-index-col {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%
}

.js-electionSearch .l-ratio-1x1:before {
    padding-bottom: 100%
}

.js-electionSearch .l-ratio-1x1:before, .js-electionSearch .l-ratio-1x2:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-1x2:before {
    padding-bottom: 200%
}

.js-electionSearch .l-ratio-2x1:before {
    padding-bottom: 50%
}

.js-electionSearch .l-ratio-2x1:before, .js-electionSearch .l-ratio-2x3:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-2x3:before {
    padding-bottom: 150%
}

.js-electionSearch .l-ratio-3x1:before {
    padding-bottom: 33.33333%
}

.js-electionSearch .l-ratio-3x1:before, .js-electionSearch .l-ratio-5x6:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-5x6:before {
    padding-bottom: 120%
}

.js-electionSearch .l-ratio-5x7:before {
    padding-bottom: 140%
}

.js-electionSearch .l-ratio-4x3:before, .js-electionSearch .l-ratio-5x7:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-4x3:before {
    padding-bottom: 75%
}

.js-electionSearch .l-ratio-3x4:before {
    padding-bottom: 133.33333%
}

.js-electionSearch .l-ratio-3x4:before, .js-electionSearch .l-ratio-3x5:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-3x5:before {
    padding-bottom: 166.66667%
}

.js-electionSearch .l-ratio-4x1:before {
    padding-bottom: 25%
}

.js-electionSearch .l-ratio-4x1:before, .js-electionSearch .l-ratio-5x1:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-5x1:before {
    padding-bottom: 20%
}

.js-electionSearch .l-ratio-5x2:before {
    padding-bottom: 40%
}

.js-electionSearch .l-ratio-5x2:before, .js-electionSearch .l-ratio-5x8:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-5x8:before {
    padding-bottom: 160%
}

.js-electionSearch .l-ratio-5x9:before {
    padding-bottom: 180%
}

.js-electionSearch .l-ratio-5x9:before, .js-electionSearch .l-ratio-6x1:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-6x1:before {
    padding-bottom: 16.66667%
}

.js-electionSearch .l-ratio-7x1:before {
    padding-bottom: 14.28571%
}

.js-electionSearch .l-ratio-7x1:before, .js-electionSearch .l-ratio-8x1:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-8x1:before {
    padding-bottom: 12.5%
}

.js-electionSearch .l-ratio-9x1:before {
    padding-bottom: 11.11111%
}

.js-electionSearch .l-ratio-9x1:before, .js-electionSearch .l-ratio-9x16:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-9x16:before {
    padding-bottom: 177.77778%
}

.js-electionSearch .l-ratio-10x1:before {
    padding-bottom: 10%
}

.js-electionSearch .l-ratio-10x1:before, .js-electionSearch .l-ratio-10x2-75:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-10x2-75:before {
    padding-bottom: 27.5%
}

.js-electionSearch .l-ratio-10x3:before {
    padding-bottom: 30%
}

.js-electionSearch .l-ratio-10x3:before, .js-electionSearch .l-ratio-16x9:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-16x9:before {
    padding-bottom: 56.25%
}

.js-electionSearch .l-ratio-15x1:before {
    padding-bottom: 6.66667%
}

.js-electionSearch .l-ratio-15x1:before, .js-electionSearch .l-ratio-20x1:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-20x1:before {
    padding-bottom: 5%
}

.js-electionSearch .l-ratio-30x1:before {
    padding-bottom: 3.33333%
}

.js-electionSearch .l-ratio-30x1:before, .js-electionSearch .l-ratio-40x1:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .l-ratio-40x1:before {
    padding-bottom: 2.5%
}

.js-electionSearch .l-ratio-50x1:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 2%
}

.js-electionSearch .l-tool.is-fix {
    z-index: 2001;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.js-electionSearch .l-calendar-data {
    position: relative
}

.js-electionSearch .l-calendar-nav {
    padding-bottom: 1em
}

.js-electionSearch .l-calendar-nav-mode {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: auto 0 auto auto
}

.js-electionSearch .l-calendar-nav-next, .js-electionSearch .l-calendar-nav-prev {
    position: absolute;
    top: 0;
    height: 100%
}

.js-electionSearch .l-calendar-nav-prev {
    right: 100%
}

.js-electionSearch .l-calendar-nav-next {
    left: 100%
}

.js-electionSearch .l-calendar-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .l-calendar-col {
    width: 14.28571%
}

.js-electionSearch .l-calendar-week {
    height: 3em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .l-calendar-output {
    position: relative;
    overflow: hidden
}

.js-electionSearch .l-calendar-wrap {
    width: calc(100% + 30px);
    padding-right: 30px
}

.js-electionSearch .l-calendar-schedule, .js-electionSearch .l-calendar-wrap {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .l-calendar-schedule {
    position: relative;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    width: 100%;
    -webkit-transform: translateY(50px);
    transform: translateY(50px)
}

.js-electionSearch .l-calendar-schedule.is-prev {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px)
}

.js-electionSearch .l-calendar-schedule .l-calendar-col.is-current {
    position: absolute;
    left: 50px;
    top: 0;
    height: 100%;
    z-index: 1
}

.js-electionSearch .l-calendar-schedule.is-init {
    -webkit-transform: translate(0);
    transform: translate(0);
    -webkit-transition: opacity .5s, -webkit-transform .5s ease-out;
    transition: opacity .5s, -webkit-transform .5s ease-out;
    transition: transform .5s ease-out, opacity .5s;
    transition: transform .5s ease-out, opacity .5s, -webkit-transform .5s ease-out;
    opacity: 1
}

.js-electionSearch .l-calendar-timeline {
    position: relative;
    width: 5760px
}

.js-electionSearch .l-calendar-timeline .l-calendar-row {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.js-electionSearch .l-calendar-container {
    display: block;
    position: relative
}

.js-electionSearch .l-calendar-container.is-timeline {
    position: absolute;
    left: 0;
    top: 0
}

.js-electionSearch .l-calendar-container.is-timeline.is-dummy {
    position: static;
    visibility: hidden
}

.js-electionSearch .l-calendar-note {
    padding-top: 1em
}

.js-electionSearch .l-calendar-error {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 3em);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none
}

.js-electionSearch .l-calendar-error, .js-electionSearch .l-pager {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .l-footer {
    z-index: 4000;
    position: relative;
    width: 100%
}

.js-electionSearch .no-pjax {
    z-index: 999
}

.js-electionSearch .l-loader {
    position: fixed;
    z-index: 4002;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
    display: none;
    z-index: 0
}

.js-electionSearch .l-loader.is-active {
    display: block;
    z-index: 3000
}

.js-electionSearch .header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition: background-color .25s, height .25s;
    transition: background-color .25s, height .25s
}

.js-electionSearch .header.is-default, .js-electionSearch .header.is-default-index {
    background-color: #fff
}

.js-electionSearch .header.is-default-index .header-id-cover.is-b, .js-electionSearch .header.is-default .header-id-cover.is-b {
    opacity: 1
}

.js-electionSearch .header.is-default-index .header-id-cover.is-w, .js-electionSearch .header.is-default .header-id-cover.is-w {
    opacity: 0
}

.js-electionSearch .header.is-default-index .header-pickup-btn, .js-electionSearch .header.is-default .header-pickup-btn {
    color: #2d2b2b
}

.js-electionSearch .header.is-default-index .header-tool, .js-electionSearch .header.is-default .header-tool {
    border-color: rgba(0, 0, 0, .1)
}

.js-electionSearch .header.is-default-index .header-tool-btn, .js-electionSearch .header.is-default .header-tool-btn, .js-electionSearch .header.is-menu-open .header-tool-btn {
    color: #2d2b2b;
    background-color: #fff
}

.js-electionSearch .header.is-default-index .header-tool-ico.svg-ico, .js-electionSearch .header.is-default .header-tool-ico.svg-ico, .js-electionSearch .header.is-menu-open .header-tool-ico.svg-ico {
    fill: #2d2b2b
}

.js-electionSearch .header.is-default-index .header-tool-ico-menu, .js-electionSearch .header.is-default-index .header-tool-ico-menu:after, .js-electionSearch .header.is-default-index .header-tool-ico-menu:before, .js-electionSearch .header.is-default .header-tool-ico-menu, .js-electionSearch .header.is-default .header-tool-ico-menu:after, .js-electionSearch .header.is-default .header-tool-ico-menu:before, .js-electionSearch .header.is-menu-open .header-tool-ico-menu, .js-electionSearch .header.is-menu-open .header-tool-ico-menu:after, .js-electionSearch .header.is-menu-open .header-tool-ico-menu:before {
    background-color: #2d2b2b
}

.js-electionSearch .header.is-menu-open .header-menu, .js-electionSearch .is-scroll .header.is-menu-open .header-menu {
    -webkit-box-shadow: 0 0 0 transparent !important;
    box-shadow: 0 0 0 transparent !important
}

.js-electionSearch .header.is-default {
    -webkit-box-shadow: 0 2px rgba(0, 0, 0, .05);
    box-shadow: 0 2px rgba(0, 0, 0, .05)
}

.js-electionSearch .is-scroll .header .header-id-cover.is-b {
    opacity: 1
}

.js-electionSearch .is-scroll .header .header-id-cover.is-w {
    opacity: 0
}

.js-electionSearch .is-scroll .header .header-pickup-btn, .js-electionSearch .is-scroll .header .header-tool-btn {
    color: #2d2b2b
}

.js-electionSearch .is-scroll .header .header-tool-ico {
    fill: #2d2b2b
}

.js-electionSearch .is-scroll .header .header-tool {
    border-color: rgba(0, .js-electionSearch 0, .js-electionSearch 0, .js-electionSearch .1)
}

.js-electionSearch .is-scroll .header .header-tool-ico-menu, .js-electionSearch .is-scroll .header .header-tool-ico-menu:after, .js-electionSearch .is-scroll .header .header-tool-ico-menu:before {
    background-color: #2d2b2b
}

.js-electionSearch .header-id {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto 0 0;
    height: 100%
}

.js-electionSearch .header-id-img {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    -webkit-transition: width .25s;
    transition: width .25s
}

.js-electionSearch .header-id-cover {
    width: 100%;
    height: auto
}

.js-electionSearch .header-id-cover.is-w {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0
}

.js-electionSearch .header-id-cover.is-b {
    opacity: 1
}

.js-electionSearch .header-tool {
    margin: 0;
    border-left: 2px solid transparent
}

.js-electionSearch .header-tool, .js-electionSearch .header-tool-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .header-tool-btn {
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    text-align: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none;
    color: #2d2b2b;
    -webkit-transition: color .25s, background-color .25s;
    transition: color .25s, background-color .25s
}

.js-electionSearch .header-tool-ico {
    display: block !important
}

.js-electionSearch .header-tool-ico.svg-ico {
    fill: #fff;
    fill: #2d2b2b
}

.js-electionSearch .header-tool-ico-menu {
    position: relative;
    height: 2px;
    background-color: #fff;
    background-color: #2d2b2b;
    -webkit-transition: -webkit-transform .3s ease-out;
    transition: -webkit-transform .3s ease-out;
    transition: transform .3s ease-out;
    transition: transform .3s ease-out, -webkit-transform .3s ease-out;
    margin-bottom: -2px
}

.js-electionSearch .header-tool-ico-menu:after, .js-electionSearch .header-tool-ico-menu:before {
    position: absolute;
    left: 0;
    display: block;
    content: " ";
    width: 100%;
    height: 2px;
    background-color: #fff;
    background-color: #2d2b2b;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: top .3s ease-out .4s, bottom .3s ease-out .4s, -webkit-transform .3s ease-out;
    transition: top .3s ease-out .4s, bottom .3s ease-out .4s, -webkit-transform .3s ease-out;
    transition: transform .3s ease-out, top .3s ease-out .4s, bottom .3s ease-out .4s;
    transition: transform .3s ease-out, top .3s ease-out .4s, bottom .3s ease-out .4s, -webkit-transform .3s ease-out
}

.js-electionSearch .header.is-menu-open .header-tool-ico-menu {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition-delay: .4s;
    transition-delay: .4s
}

.js-electionSearch .header.is-menu-open .header-tool-ico-menu:before {
    top: 0
}

.js-electionSearch .header.is-menu-open .header-tool-ico-menu:after, .js-electionSearch .header.is-menu-open .header-tool-ico-menu:before {
    -webkit-transition: top .3s ease-out, bottom .3s ease-out, -webkit-transform .4s ease-out .4s;
    transition: top .3s ease-out, bottom .3s ease-out, -webkit-transform .4s ease-out .4s;
    transition: top .3s ease-out, bottom .3s ease-out, transform .4s ease-out .4s;
    transition: top .3s ease-out, bottom .3s ease-out, transform .4s ease-out .4s, -webkit-transform .4s ease-out .4s
}

.js-electionSearch .header.is-menu-open .header-tool-ico-menu:after {
    bottom: 0;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.js-electionSearch .header-tool-label {
    position: relative;
    line-height: 1;
    width: 100%;
    font-size: 62.5%;
    font-weight: 700
}

.js-electionSearch .header-tool-label-close, .js-electionSearch .header-tool-label-open {
    width: 100%;
    -webkit-transition: opacity .25s;
    transition: opacity .25s
}

.js-electionSearch .header.is-menu-open .header-tool-label-open {
    opacity: 0
}

.js-electionSearch .header-tool-label-close {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.js-electionSearch .header.is-menu-open .header-tool-label-close {
    opacity: 1
}

.js-electionSearch .header-global {
    background-color: #fff;
    height: 100vh;
    overflow-x: visible;
    overflow-y: scroll;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth
}

.js-electionSearch .header-global-shadow {
    content: " ";
    display: block;
    position: fixed;
    width: 40px;
    height: 100%;
    top: 0;
    right: 0;
    background: -webkit-gradient(linear, left top, right top, from(transparent), to(rgba(0, 0, 0, .1)));
    background: -webkit-linear-gradient(left, transparent, rgba(0, 0, 0, .1));
    background: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, .1));
    pointer-events: none
}

.js-electionSearch .header-global-search {
    position: relative;
    width: 110%;
    left: -5%
}

.js-electionSearch .header-global-list {
    margin-bottom: 1.25em
}

.js-electionSearch .header-global-main {
    padding: 1.25em 0
}

.js-electionSearch .header-global-sub {
    border-top: 2px solid #eee;
    text-align: center;
    padding-top: 1.25em;
    margin-top: 1.25em
}

.js-electionSearch .header-global-btn {
    position: relative;
    display: inline-block;
    text-decoration: none;
    font-weight: 700;
    padding: .25em 0;
    line-height: 1.2
}

.js-electionSearch .header-global-btn:before {
    content: " ";
    display: block;
    position: absolute;
    background-color: #d7003a;
    width: 0;
    height: 2px;
    left: 0;
    bottom: 0;
    -webkit-transition: opacity .25s, width .25s;
    transition: opacity .25s, width .25s
}

.js-electionSearch .header-global-btn.is-current:before {
    opacity: 1;
    width: 100%
}

.js-electionSearch .header-global-subbtn {
    display: inline-block;
    text-decoration: none;
    padding: .5em 0;
    margin: 0 .75em
}

.js-electionSearch .disastermessage {
    -webkit-perspective: 800px;
    perspective: 800px
}

.js-electionSearch .disastermessage-btn {
    background-color: #d7003a;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: -webkit-linear-gradient(45deg, #d7003a, #ff7676, #d7003a);
    background: linear-gradient(45deg, #d7003a, #ff7676, #d7003a);
    background-size: 600% 600%;
    -webkit-transition: -webkit-transform .5s ease-out;
    transition: -webkit-transform .5s ease-out;
    transition: transform .5s ease-out;
    transition: transform .5s ease-out, -webkit-transform .5s ease-out;
    -webkit-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0
}

.js-electionSearch .is-disastermessage.is-load .disastermessage-btn {
    -webkit-transform: rotateX(0deg);
    transform: rotateX(0deg);
    -webkit-animation: bgLoop 5s ease infinite;
    animation: bgLoop 5s ease infinite
}

.js-electionSearch .disastermessage-btn .svg-ico {
    position: relative;
    fill: #fff
}

.js-electionSearch .disastermessage-main {
    position: absolute;
    z-index: 3;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 1em;
    background: -webkit-linear-gradient(45deg, #d7003a, #ff7676, #d7003a);
    background: linear-gradient(45deg, #d7003a, #ff7676, #d7003a);
    background-size: 600% 600%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 700;
    height: 3em;
    border-radius: 1.5em;
    opacity: 0;
    -webkit-transition: opacity .25s, -webkit-transform .5s ease-out;
    transition: opacity .25s, -webkit-transform .5s ease-out;
    transition: opacity .25s, transform .5s ease-out;
    transition: opacity .25s, transform .5s ease-out, -webkit-transform .5s ease-out
}

.js-electionSearch .disastermessage-main .svg-ico {
    position: relative;
    fill: #fff;
    width: 1.25em;
    height: 1.25em;
    margin-left: .25em
}

.js-electionSearch .is-load .disastermessage-main {
    opacity: 1 !important;
    -webkit-transform: translate(0) !important;
    transform: translate(0) !important
}

.js-electionSearch .footer-corp {
    border-top: 2px solid rgba(0, 0, 0, .05);
    background-color: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .footer-btn {
    text-decoration: none;
    display: block;
    white-space: nowrap
}

.js-electionSearch .footer-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .footer-nav-item {
    border-left: 1px solid rgba(0, 0, 0, .05);
    border-right: 1px solid rgba(0, 0, 0, .05);
    text-indent: 0
}

.js-electionSearch .footer-nav-item:first-child {
    border-left: none;
    border-right: none
}

.js-electionSearch .footer-copy {
    line-height: 1.5;
    white-space: nowrap
}

.js-electionSearch .pagenav {
    position: relative
}

.js-electionSearch .footer.is-home .pagenav {
    display: none
}

.js-electionSearch .pagenav-main {
    list-style-type: none
}

.js-electionSearch .pagenav-btn {
    position: relative;
    display: block;
    color: #fff;
    text-decoration: none;
    -webkit-transition: opacity .5s, top .5s cubic-bezier(.39, .575, .565, 1);
    transition: opacity .5s, top .5s cubic-bezier(.39, .575, .565, 1);
    background-color: rgba(0, 0, 0, .9)
}

.js-electionSearch .pagenav-btn .svg-ico {
    position: absolute;
    z-index: 2;
    fill: #fff
}

.js-electionSearch .bg-img {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .post .t, .js-electionSearch .t {
    position: relative;
    letter-spacing: .04em;
    word-wrap: break-word
}

.js-electionSearch .post .t-tag, .js-electionSearch .t-tag {
    font-size: 62.5%;
    line-height: 1.2
}

.js-electionSearch .post .t-state, .js-electionSearch .t-state {
    display: inline-block;
    font-size: 50%;
    vertical-align: middle;
    margin-right: .5em
}

.js-electionSearch .post .t-0, .js-electionSearch .post .t-1, .js-electionSearch .post .t-2, .js-electionSearch .post .t-3, .js-electionSearch .post .t-4, .js-electionSearch .post .t-5, .js-electionSearch .t-0, .js-electionSearch .t-1, .js-electionSearch .t-2, .js-electionSearch .t-3, .js-electionSearch .t-4, .js-electionSearch .t-5 {
    position: relative;
    font-weight: 700;
    line-height: 1.5
}

.js-electionSearch .post .t-6, .js-electionSearch .t-6 {
    line-height: 1.4
}

.js-electionSearch .post .t-6, .js-electionSearch .post .t-7, .js-electionSearch .t-6, .js-electionSearch .t-7 {
    position: relative;
    font-weight: 700
}

.js-electionSearch .post .t-7, .js-electionSearch .t-7 {
    line-height: 1.3
}

.js-electionSearch .post .t-bg, .js-electionSearch .t-bg {
    background-color: rgba(0, 0, 0, .05);
    padding: .5em
}

.js-electionSearch .post .t-img, .js-electionSearch .t-img {
    height: 1.25em
}

.js-electionSearch .post .t-img.is-l, .js-electionSearch .t-img.is-l {
    height: 1.75em
}

.js-electionSearch .post .t-svg, .js-electionSearch .t-svg {
    height: .99em
}

.js-electionSearch .isnt-ie .post .t-svg, .js-electionSearch .isnt-ie .t-svg {
    width: auto !important
}

.js-electionSearch .post .t-sub, .js-electionSearch .t-sub {
    font-size: 60%
}

.js-electionSearch .post .t-line-l, .js-electionSearch .t-line-l {
    border-left: 3px solid #d7003a;
    padding-left: .5em
}

.js-electionSearch .post .t-line, .js-electionSearch .t-line {
    overflow: hidden;
    text-align: center;
    line-height: 1.3
}

.js-electionSearch .post .t-line-txt, .js-electionSearch .t-line-txt {
    position: relative;
    display: inline-block
}

.js-electionSearch .post .t-line-txt:after, .js-electionSearch .post .t-line-txt:before, .js-electionSearch .t-line-txt:after, .js-electionSearch .t-line-txt:before {
    display: block;
    content: " ";
    font-size: 0;
    clear: both;
    width: 100vw;
    height: 2px;
    background-color: #2d2b2b;
    position: absolute;
    top: 50%;
    margin-top: -1px
}

.js-electionSearch .post .t-line-txt:before, .js-electionSearch .t-line-txt:before {
    right: 100%
}

.js-electionSearch .post .t-line-txt:after, .js-electionSearch .t-line-txt:after {
    left: 100%
}

.js-electionSearch .post .t-num, .js-electionSearch .t-num {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .post .t-num-label, .js-electionSearch .t-num-label {
    width: 1.5em
}

.js-electionSearch .post .t-hr, .js-electionSearch .t-hr {
    height: 2px;
    border: none;
    margin: 0
}

.js-electionSearch .post .t-first, .js-electionSearch .t-first {
    font-size: 2.5em;
    line-height: 1;
    float: left;
    margin: .25em .15em 0 0
}

.js-electionSearch .post .t-dotted, .js-electionSearch .t-dotted {
    border-bottom: .2em dotted;
    padding-bottom: .25em
}

.js-electionSearch .nowrap {
    white-space: nowrap;
    text-decoration: inherit
}

.js-electionSearch .nowrap, .js-electionSearch .ruby {
    display: inline-block
}

.js-electionSearch .ruby {
    position: relative;
    -moz-text-align-last: center;
    text-align-last: center
}

.js-electionSearch .ruby:before {
    content: attr(data-ruby);
    position: relative;
    display: block;
    font-size: 10px;
    white-space: nowrap
}

.js-electionSearch .ruby.is-t:before {
    font-size: 1.1rem;
    margin-bottom: -.5em;
    text-align: center
}

.js-electionSearch .main .photo {
    overflow-y: hidden
}

.js-electionSearch .main-video {
    position: absolute;
    z-index: 1;
    background-color: #000;
    opacity: 0;
    -webkit-transition: opacity 1s;
    transition: opacity 1s
}

.js-electionSearch .main-video.is-active {
    opacity: 1
}

.js-electionSearch .main-video video {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.js-electionSearch .main-video:before {
    position: relative;
    display: block;
    content: " "
}

.js-electionSearch .main-bg, .js-electionSearch .main-cover {
    position: absolute;
    z-index: 1
}

.js-electionSearch .main-bg {
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: .4
}

.js-electionSearch .main-txt {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.js-electionSearch .main-txt, .js-electionSearch .main-txt-home {
    position: absolute;
    z-index: 2;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%
}

.js-electionSearch .main-title {
    margin: 0;
    line-height: 1
}

.js-electionSearch .main-title .t-img {
    margin-bottom: -.25em
}

.js-electionSearch .main-sub {
    line-height: 1.85;
    margin-bottom: .75em
}

.js-electionSearch .main-play-ico {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 1.75em;
    height: 1.75em
}

.js-electionSearch .main-play-ico-img {
    width: 100%
}

.js-electionSearch .main-play-ico.is-line {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.js-electionSearch .main-pickup {
    position: absolute;
    z-index: 2;
    left: 0
}

.js-electionSearch .main.is-skew {
    margin-bottom: -7vw;
    overflow: hidden
}

.js-electionSearch .main.is-skew .main-skew {
    margin-top: -5vw;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    -webkit-transform: skewY(-4deg);
    transform: skewY(-4deg);
    overflow: hidden
}

.js-electionSearch .main.is-skew .main-skew .photo {
    overflow: visible;
    -webkit-transform: skewY(4deg) !important;
    transform: skewY(4deg) !important
}

.js-electionSearch .banner {
    visibility: hidden
}

.js-electionSearch .banner.is-active {
    visibility: visible
}

.js-electionSearch .banner-title {
    width: 100%;
    line-height: 1.5
}

.js-electionSearch .banner-subtitle {
    width: 100%
}

.js-electionSearch .banner-icotitle {
    width: 100%;
    position: relative;
    text-align: center;
    white-space: nowrap
}

.js-electionSearch .banner-icotitle-img {
    display: inline-block;
    width: 70px;
    margin-right: 10px;
    margin-left: -10px;
    vertical-align: middle
}

.js-electionSearch .banner-icotitle-title {
    display: inline-block;
    width: auto;
    vertical-align: middle
}

.js-electionSearch .banner-icotitle-title .banner-subtitle, .js-electionSearch .banner-icotitle-title .banner-title {
    text-align: left
}

.js-electionSearch .banner-main {
    position: relative;
    background: -webkit-linear-gradient(315deg, #d7003a, #ff7676);
    background: linear-gradient(135deg, #d7003a, #ff7676)
}

.js-electionSearch .banner-group {
    position: relative;
    z-index: 1;
    width: 100%;
    overflow: hidden;
    color: #fff
}

.js-electionSearch .banner-group .svg-ico {
    fill: #fff
}

.js-electionSearch .banner-btn {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    opacity: 0;
    height: 100%
}

.js-electionSearch .banner-btn-label {
    width: 100%
}

.js-electionSearch .banner-img {
    margin: auto auto auto 0
}

.js-electionSearch .banner-data {
    margin: auto 0 auto auto
}

.js-electionSearch .banner-nav {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.js-electionSearch .banner-nav .svg-ico {
    fill: #fff
}

.js-electionSearch .banner-nav-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 40px;
    height: 40px;
    margin: -2px 0;
    color: #fff;
    -webkit-transition: opacity .25s;
    transition: opacity .25s
}

.js-electionSearch .banner-nav-btn.is-pointer {
    width: 30px;
    opacity: .5
}

.js-electionSearch .banner-nav-btn.is-pointer.is-current {
    opacity: 1
}

.js-electionSearch .banner-nav-btn .ico {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 20px;
    width: 20px;
    height: 20px
}

.js-electionSearch .banner-nav-pointer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .banner-nav-pointer-ico {
    width: 8px;
    height: 8px;
    border-radius: 100%;
    background-color: #fff
}

.js-electionSearch .pickup {
    position: relative;
    background-color: transparent !important;
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: opacity .5s, -webkit-transform .5s ease-out;
    transition: opacity .5s, -webkit-transform .5s ease-out;
    transition: opacity .5s, transform .5s ease-out;
    transition: opacity .5s, transform .5s ease-out, -webkit-transform .5s ease-out
}

.js-electionSearch .pickup.is-active {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
}

.js-electionSearch .pickup.is-static {
    border: 2px solid rgba(0, 0, 0, .05)
}

.js-electionSearch .pickup-content {
    position: relative;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #2d2b2b
}

.js-electionSearch .pickup-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    background-color: #fff
}

.js-electionSearch .pickup-tag {
    display: inline-block;
    font-size: 75%;
    margin-top: -.25em
}

.js-electionSearch .pickup-btn {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 100%;
    width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    line-height: 1;
    display: none
}

.js-electionSearch .pickup-btn, .js-electionSearch .pickup-btn .pickup-body {
    text-decoration: underline
}

.js-electionSearch .pickup.is-active .pickup-btn, .js-electionSearch .pickup.is-static .pickup-btn {
    display: block
}

.js-electionSearch .pickup-btn .ico-arrow-r-s {
    fill: #d7003a
}

.js-electionSearch .pickup-items {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    overflow: hidden
}

.js-electionSearch .pickup-title {
    display: inline-block;
    margin-right: .5em;
    font-weight: 700;
    line-height: 1
}

.js-electionSearch .pickup-txt {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.js-electionSearch .pickup-nav {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 0 auto
}

.js-electionSearch .pickup-nav-btn {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none
}

.js-electionSearch .pickup-nav-btn .ico {
    position: absolute;
    top: 50%;
    left: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 20px;
    width: 20px;
    height: 20px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .form {
    position: relative
}

.js-electionSearch #electionSearch-search {
    position: relative;
    transform: translateY(0);
}

.js-electionSearch #electionSearch-search .t-7{
    font-size: 130%;
}

.js-electionSearch #electionSearch-search .btn{
    font-size: 130%;
    transition: all .2s linear 0s  !important;
}

.js-electionSearch #electionSearch-search .btn::before, .js-electionSearch #electionSearch-search .btn::after {
    display: none;
}

.js-electionSearch #electionSearch-search .btn:hover{
    background: #d41e1e;
    opacity: 1  !important;
}

.js-electionSearch .form-search, .js-electionSearch .form-text {    
    background-color: none;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.2em;
/*    border-radius: 3em;*/
    line-height: 1.1
    border: none  !important;
    outline: none  !important;
}

.js-electionSearch .is-sp .form-search, .js-electionSearch .is-sp .form-text {
    font-size: 16px !important
}

.js-electionSearch .form-search-outline, .js-electionSearch .form-text-outline {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
/*    border: 2px solid transparent;*/
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.2em;
/*    border-radius: 3em;*/
    width: 100%;
    height: 100%;
    pointer-events: none;
    -webkit-transition: border-color .25s;
    transition: border-color .25s
}

.js-electionSearch .form-search:focus+.form-search-outline, .js-electionSearch .form-text:focus+.form-search-outline {
    border: none;
    outline: none;
}

.js-electionSearch .form-btn {
    line-height: 1;
    padding: 1em;
    border-radius: 2.25em
}

.js-electionSearch .form-btn-ico {
    font-size: 2em
}

.js-electionSearch .form-btn-ico.svg-ico {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.3em;
    width: 1.3em;
    height: 1.3em;
    fill: #2d2b2b
}

.js-electionSearch .form-password {
    position: relative
}

.js-electionSearch .form-password .svg-ico {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: .8em;
    width: .8em;
    height: .8em;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .form-password .svg-ico-pw-off, .js-electionSearch .form-password .svg-ico-pw-on {
    -webkit-transition: opacity .25s;
    transition: opacity .25s
}

.js-electionSearch .form-password .svg-ico-pw-on {
    opacity: 0
}

.js-electionSearch .form-password .svg-ico-pw-off {
    opacity: .5
}

.js-electionSearch .form-password.is-view .svg-ico-pw-on {
    opacity: 1
}

.js-electionSearch .form-password.is-view .svg-ico-pw-off {
    opacity: 0
}

.js-electionSearch .form-content {
    position: relative
}

.js-electionSearch .form-content .form-search, .js-electionSearch .form-content .form-text {
    width: 100%;
    position: relative;
    z-index: 3
}

.js-electionSearch .form-content .form-btn {
    position: absolute;
    top: 0;
    right: 0;
    font-size: inherit;
    height: 100%;
    border-radius: 0 2.25em 2.25em 0;
    padding-right: 1.25em;
    z-index: 3
}

.js-electionSearch .form-content.bd {
    border: none !important
}

.js-electionSearch .form-content.is-query {
    max-width: 800px;
    margin: 0 auto
}

.js-electionSearch .form-content.is-query .form-search {
    padding: .7em 1.25em
}

.js-electionSearch .form-content.is-ico .ico-search-m {
    left: .75em;
    font-size: 140%
}

.js-electionSearch .form-content.is-ico .ico-search-m, .js-electionSearch .form-content.is-ico .svg-ico {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 3
}

.js-electionSearch .form-content.is-ico .svg-ico {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: .95em;
    width: .95em;
    height: .95em;
    left: .7em;
    font-size: 140%
}

.js-electionSearch .form-content.is-ico .form-search {
    padding-left: 2.5em !important;
    -webkit-appearance: none
}

.js-electionSearch .form-content.is-pw .form-password {
    position: absolute;
    right: .5em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 200%;
    width: 1.25em;
    height: 1.25em;
    line-height: 1;
    z-index: 3
}

.js-electionSearch .form-content.is-pw .form-text {
    padding-right: 2.5em !important
}

.js-electionSearch .form-content-query {
    position: absolute;
    width: 100%;
    left: 0;
    top: 6em;
    z-index: 2001;
    background-color: #fff;
    border-radius: .75em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    height: 0;
    overflow: hidden;
}

.js-electionSearch .form-content-query .form-content-query_inr {
    position: relative;
    z-index: 800;
    overflow-y: scroll;
    max-height: calc(100vh - 8em);
    padding-top: 4vw;
}

.js-electionSearch .is-ie .form-content-query, .js-electionSearch .is-ios .form-content-query {
    background-color: transparent
}

.js-electionSearch .is-ie .form-content-query:before, .js-electionSearch .is-ios .form-content-query:before {
    position: absolute;
    z-index: 1;
    display: block;
    content: " ";
    width: 110%;
    height: 110%;
    top: -1%;
    left: -5%;
}

.js-electionSearch .is-ie .form-content-query .col, .js-electionSearch .is-ios .form-content-query .col {
    position: relative;
    background-color: #fff;
    border-radius: .75em;
    z-index: 2
}

.js-electionSearch .form-content-query.is-active {
    opacity: 1;
    -webkit-filter: drop-shadow(0 20px 20px rgba(0, 0, 0, .15));
    filter: drop-shadow(0 20px 20px rgba(0, 0, 0, .15));
    height: auto;
    overflow: visible
}

.js-electionSearch .is-ie .form-content-query.is-active, .js-electionSearch .is-ios .form-content-query.is-active {
    -webkit-filter: none !important;
    filter: none !important
}

.js-electionSearch .form-select {
    background: none transparent;
    vertical-align: middle;
    color: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1;
    font-weight: 700;
    padding: .7em 3em .7em 1.25em;
    border: 2px solid #2d2b2b;
    border-radius: 3em;
    outline: none
}

.js-electionSearch .form-select-wrap {
    position: relative;
    display: inline-block
}

.js-electionSearch .form-select-ico {
    position: absolute;
    pointer-events: none;
    top: 50%;
    right: .45em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1.4em;
    width: 1.4em;
    height: 1.4em
}

.js-electionSearch .form-check, .js-electionSearch .form-select-ico {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .form-check {
    position: relative;
    padding: .25em;
    line-height: 1.2
}

.js-electionSearch .form-check-input {
    position: absolute;
    opacity: 0
}

.js-electionSearch .form-check-tips {
    vertical-align: middle;
    width: 1.25em;
    margin-right: .5em;
    border: 2px solid #2d2b2b;
    border-radius: .2em;
    position: relative;
    top: -.125em
}

.js-electionSearch .form-check-tips, .js-electionSearch .form-check-tips:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 1.25em
}

.js-electionSearch .form-check-tips:after {
    opacity: 0;
    display: block;
    content: " ";
    font-size: 90%;
    position: absolute;
    top: -.35em;
    right: -.1em;
    width: .75em;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-right: 3px solid #d7003a;
    border-bottom: 4px solid #d7003a
}

.js-electionSearch .form-check-txt {
    color: #2d2b2b;
    font-weight: 700;
    display: inline-block;
    white-space: nowrap;
    padding: .25em 0
}

.js-electionSearch .form-check input[type=checkbox]:checked+.form-check-tips:after {
    opacity: 1
}

.js-electionSearch .form-tag-title {
    font-weight: 700;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    white-space: nowrap;
    margin: .5em 1em .5em 0
}

.js-electionSearch .form-tag-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .form-tag-item {
    margin-right: 1.25em !important
}

.js-electionSearch .form-pickup {
    padding: 1em 1.5em;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .btn, .js-electionSearch .is-ie .t-6 button.btn, .js-electionSearch .is-ie button.btn {
    padding: .7em 1.25em
}

.js-electionSearch .btn {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
    text-decoration: none;
    border-radius: 3em;
    border: 2px solid #2d2b2b;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.2;
    font-weight: 700;
    font-size: 90%
}

.js-electionSearch .btn br {
    width: 100%;
    height: 1px;
    display: block
}

.js-electionSearch .is-ie .btn {
    padding: 1.1em 1.25em .7em
}

.js-electionSearch .is-ie .t-6 .btn {
    padding: .7em 1.25em
}

.js-electionSearch .ta-c .btn {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.js-electionSearch .btn.is-ico, .js-electionSearch .btn.is-ico.is-hm {
    padding-left: 2.5em
}

.js-electionSearch .btn.is-ico .btn-ico-left, .js-electionSearch .btn.is-ico.is-hm .btn-ico-left {
    font-size: 1.75em;
    width: 1.75em;
    height: 1.75em
}

.js-electionSearch .btn.is-ico .btn-ico-left, .js-electionSearch .btn.is-ico.is-hm .btn-ico-left, .js-electionSearch .btn.is-ico.is-hm .svg-ico-left, .js-electionSearch .btn.is-ico .svg-ico-left {
    position: absolute;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    left: .5em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.js-electionSearch .btn.is-ico.is-hm .svg-ico-left, .js-electionSearch .btn.is-ico .svg-ico-left {
    font-size: 1.2em;
    width: 1.2em;
    height: 1.2em;
    margin: 0
}

.js-electionSearch .btn.is-ico.is-hm, .js-electionSearch .btn.is-ico.is-hm.is-hm {
    padding-left: 4.5em !important
}

.js-electionSearch .btn .svg-ico {
    font-size: 1.25em;
    width: 1.25em;
    height: 1.25em;
    margin: -.2em .3em -.2em 0
}

.js-electionSearch .btn .svg-ico, .js-electionSearch .btn .svg-ico.svg-ico-blank {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .btn .svg-ico.svg-ico-blank {
    margin-left: .25em;
    margin-right: 0;
    margin-top: -.35em;
    font-size: 1em;
    width: 1em;
    height: 1em
}

.js-electionSearch .btn .svg-ico.svg-ico-file {
    font-size: 1.2em;
    width: 1.2em;
    height: 1.2em;
    margin: -.1em .4em -.1em 0
}

.js-electionSearch .btn .svg-ico.svg-ico-file, .js-electionSearch .btn .svg-ico.svg-ico-l {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .btn .svg-ico.svg-ico-l {
    font-size: 1.4em;
    width: 1.4em;
    height: 1.4em;
    margin: -.25em .25em -.2em -.2em
}

.js-electionSearch .btn .svg-ico.svg-ico-plus {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.2em;
    width: 1.2em;
    height: 1.2em;
    margin: -.1em .4em -.1em 0
}

.js-electionSearch .is-ie .btn .svg-ico.svg-ico-plus {
    margin-top: -.45em
}

.js-electionSearch .btn .svg-ico.svg-ico-search {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.2em;
    width: 1.2em;
    height: 1.2em;
    margin: -.15em .4em -.1em 0
}

.js-electionSearch .btn .svg-ico.svg-ico-close {
    margin-left: -.2em
}

.js-electionSearch .btn.is-current {
    background-color: #2d2b2b;
    border-color: #2d2b2b;
    color: #fff
}

.js-electionSearch .btn.is-current .svg-ico {
    fill: #fff
}

.js-electionSearch .bgc-b .btn {
    border-color: #fff;
    color: #fff
}

.js-electionSearch .bgc-b .btn .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-w {
    border-color: #fff;
    background-color: #fff;
    color: #2d2b2b
}

.js-electionSearch .btn.is-w .svg-ico {
    fill: #2d2b2b
}

.js-electionSearch .btn.is-w.is-current {
    background-color: #2d2b2b;
    border-color: #2d2b2b;
    color: #fff
}

.js-electionSearch .btn.is-w.is-current .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-b, .js-electionSearch .btn.is-nicovideo {
    background-color: #2d2b2b;
    border-color: transparent;
    color: #fff
}

.js-electionSearch .btn.is-b .svg-ico, .js-electionSearch .btn.is-nicovideo .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-g {
    background-color: rgba(0, 0, 0, .05);
    border-color: transparent
}

.js-electionSearch .btn.isnt-line {
    border-color: transparent;
    padding: .7em
}

.js-electionSearch .btn.is-l {
    max-width: 100%;
    line-height: 1.2
}

.js-electionSearch .btn.is-l .svg-ico {
    margin-top: -.3em
}

.js-electionSearch .btn.is-l .svg-ico.svg-ico-plus {
    margin-top: -.2em;
    margin-bottom: -.2em
}

.js-electionSearch .is-ie .btn.is-l {
    padding: 1em 4em .7em
}

.js-electionSearch .is-ie .btn.is-l .svg-ico {
    margin-top: -.5em
}

.js-electionSearch .btn.is-hm {
    padding-top: 1.25em;
    padding-bottom: 1.25em
}

.js-electionSearch .is-ie .btn.is-hm {
    padding-top: 1.55em
}

.js-electionSearch .btn.is-facebook {
    background-color: #1877f2;
    border-color: #1877f2;
    color: #fff
}

.js-electionSearch .btn.is-facebook .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-twitter {
    background-color: #1da1f2;
    border-color: #1da1f2;
    color: #fff
}

.js-electionSearch .btn.is-twitter .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-youtube {
    background-color: red;
    border-color: red;
    color: #fff
}

.js-electionSearch .btn.is-youtube .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-instagram {
    background-color: #833ab4;
    border-color: transparent;
    color: #fff
}

.js-electionSearch .btn.is-instagram .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-line {
    background-color: #00b900;
    border-color: #00b900;
    color: #fff
}

.js-electionSearch .btn.is-line .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-red {
    background-color: #d7003a;
    border-color: #d7003a;
    color: #fff
}

.js-electionSearch .btn.is-red .svg-ico {
    fill: #fff
}

.js-electionSearch .btn.is-red.is-attention {
    background-color: transparent;
    border-color: #d7003a;
    color: #d7003a
}

.js-electionSearch .btn.is-red.is-attention .svg-ico {
    fill: #d7003a
}

.js-electionSearch .btn-label {
    display: inline-block;
    margin: 0 auto 0 0
}

.js-electionSearch .btn-label .svg-ico.svg-ico-blank {
    margin-left: 0
}

.js-electionSearch .btn-character {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.js-electionSearch .btn-character .btn {
    display: block;
    width: 18%;
    padding-left: .25em;
    padding-right: .25em
}

.js-electionSearch .btn-cover {
    position: relative;
    display: block;
    text-decoration: none;
    cursor: pointer;
    overflow: hidden;
    z-index: 1
}

.js-electionSearch .btn-cover.is-current {
    opacity: .2;
    pointer-events: none
}

.js-electionSearch .btn-cover-photo {
    position: relative;
    z-index: 1;
    opacity: .6
}

.js-electionSearch .btn-cover-label {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 6%;
    width: 100%;
    text-align: center
}

.js-electionSearch .btn-cover-border {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .btn-cover-download, .js-electionSearch .btn-thumb {
    position: relative
}

.js-electionSearch .btn-thumb {
    background-color: #000;
    display: block;
    text-decoration: none;
    cursor: pointer;
    overflow: hidden;
    color: #fff
}

.js-electionSearch .btn-thumb:after {
    display: none !important
}

.js-electionSearch .btn-thumb-photo {
    position: relative;
    overflow: hidden;
    z-index: 1;
    opacity: .6;
    -webkit-transition: opacity .25s, -webkit-transform .5s;
    transition: opacity .25s, -webkit-transform .5s;
    transition: opacity .25s, transform .5s;
    transition: opacity .25s, transform .5s, -webkit-transform .5s
}

.js-electionSearch .btn-thumb-cover {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background-color: #000;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(50%, rgba(0, 0, 0, .1)), to(rgba(0, 0, 0, .1)));
    background: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1));
    background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1))
}

.js-electionSearch .btn-thumb-category {
    position: absolute;
    z-index: 3;
    top: 0;
    right: 0;
    white-space: nowrap;
    font-size: 68.8%;
    font-weight: 700
}

.js-electionSearch .btn-thumb-label {
    position: absolute;
    z-index: 3;
    bottom: 0;
    left: 0;
    padding: 6%;
    width: 100%
}

.js-electionSearch .btn-ico, .js-electionSearch .btn-thumb-label {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .btn-ico {
    position: relative;
    display: block;
    text-decoration: none;
    cursor: pointer
}

.js-electionSearch .btn-ico-img, .js-electionSearch .btn-ico-label {
    position: relative;
    z-index: 1
}

.js-electionSearch .btn-ico-img {
    margin: .5em auto
}

.js-electionSearch .btn-txt {
    text-decoration: underline;
    word-break: break-word
}

.js-electionSearch .btn-txt[target=_blank]:after {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin: -9px 3px -5px
}

.js-electionSearch .btn-txt.isnt-ico:after, .js-electionSearch .btn-txt.isnt-ico[target=_blank]:after {
    display: none
}

.js-electionSearch .btn-link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: .25em .5em;
    text-decoration: none;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .btn-link .svg-ico {
    margin-top: .15em
}

.js-electionSearch .btn-link[target=_blank]:after {
    display: inline-block;
    width: 16px;
    height: 16px;
    vertical-align: middle;
    margin: auto 3px
}

.js-electionSearch .btn-link-label {
    max-width: calc(100% - 1.2em)
}

.js-electionSearch .btn-badge {
    display: inline-block
}

.js-electionSearch .btn-badge-img {
    width: 100%;
    display: block
}

.js-electionSearch .btn-file {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden
}

.js-electionSearch .btn-file h2, .js-electionSearch .btn-file p {
    margin-top: 0 !important
}

.js-electionSearch .btn-file.is-s {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex
}

.js-electionSearch .btn-file[target=_blank] .t-5:after {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin: -14px 3px 0
}

.js-electionSearch .btn-file-ico {
    position: relative
}

.js-electionSearch .btn-file-img {
    display: block;
    width: 100%
}

.js-electionSearch .btn-file-data {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: auto 0 auto auto;
    padding-left: 3%
}

.js-electionSearch .btn-other {
    position: relative;
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
    text-align: center;
    line-height: 1.3
}

.js-electionSearch .btn-other-img {
    position: relative;
    width: 80%;
    max-width: 68px;
    margin: 0 auto .5em
}

.js-electionSearch .btn-other-img .photo {
    z-index: 1;
    border-radius: 100%;
    overflow: hidden
}

.js-electionSearch .btn-other-img.is-sub {
    position: absolute;
    bottom: -12%;
    right: -5%;
    width: 30% !important
}

.js-electionSearch .is-android .btn-other-img .photo-cover {
    width: 99%;
    left: .5%
}

.js-electionSearch .btn-other.is-l {
    display: block;
    width: auto !important;
    max-width: 100px;
    margin: 0 auto
}

.js-electionSearch .btn-other.is-l .btn-other-img {
    width: 100%;
    max-width: none
}

.js-electionSearch .btn-member {
    position: relative;
    text-decoration: none;
    width: 100%;
    display: block;
    text-align: center;
    background: none !important;
}

.js-electionSearch .btn-member::before, .js-electionSearch .btn-member::after {
    display: none;
}

.js-electionSearch .btn-member.is-s, .js-electionSearch .btn-member.is-single-s {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex
}

.js-electionSearch .btn-member.isnt-link {
    pointer-events: none
}

.js-electionSearch .btn-member-photo {
    border-radius: 100%;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid #eee;
    -webkit-transition: border-color .25s;
    transition: border-color .25s;
    background-color: rgba(0, 0, 0, .05);
    z-index: 1
}

.js-electionSearch .btn-member-cover {
    top: -3% !important;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.js-electionSearch .btn-member-data {
    text-align: center;
    color: #000;
}

.js-electionSearch .btn-member-txt {
    display: inline-block;
    padding: .5em .25em;
    text-decoration: none;
    text-align: center;
}

.js-electionSearch .btn-member-txt.isnt-link {
    text-decoration: none;
    pointer-events: none
}

.js-electionSearch .btn-member-txt-label {
    display: inline-block;
    text-decoration: underline
}

.js-electionSearch .btn-member-txt.isnt-link .btn-member-txt-label {
    text-decoration: none
}

.js-electionSearch .btn-member-txt-sub {
    display: inline-block
}

.js-electionSearch .btn-schedule {
    display: block;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid rgba(45, 43, 43, .2);
    background-color: rgba(45, 43, 43, .05);
    border-radius: .5em
}

.js-electionSearch .btn-schedule.is-movie {
    border: 1px solid rgba(253, 178, 66, .5);
    background-color: rgba(253, 178, 66, .05)
}

.js-electionSearch .btn-sitemap {
    display: block;
    text-decoration: none
}

.js-electionSearch .btn-sitemap.is-none {
    opacity: .2;
    pointer-events: none
}

.js-electionSearch .btn-sitemap[target=_blank] .t-7:after, .js-electionSearch .btn-sitemap[target=_blank] .t-s:after {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin: -6px 3px 0
}

.js-electionSearch .photo {
    position: relative;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: block
}

.js-electionSearch .photo.is-circle {
    border-radius: 100%
}

.js-electionSearch .photo.is-sns {
    max-width: 120px;
    margin: 0 auto
}

.js-electionSearch .photo.is-title {
    margin: 0 auto
}

.js-electionSearch .photo-bg, .js-electionSearch .photo-over {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background-size: cover
}

.js-electionSearch .photo-bg.is-loop, .js-electionSearch .photo-over.is-loop {
    background-size: 1500px auto;
    -webkit-animation: loop 30s linear infinite;
    animation: loop 30s linear infinite
}

.js-electionSearch .photo-badge {
    position: absolute;
    width: 24%;
    top: 3%;
    left: 3%;
    z-index: 2
}

.js-electionSearch .photo-over {
    background-color: #000;
    opacity: .2
}

.js-electionSearch .photo-note {
    position: absolute;
    bottom: 1em;
    right: 1em
}

.js-electionSearch .photo-member {
    position: relative;
    margin: 0 auto;
    border-radius: 100%;
    z-index: 1;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .photo-member:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%
}

.js-electionSearch .photo-member-square {
    max-width: 200px
}

.js-electionSearch .photo-ico {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1
}

.js-electionSearch .photo-5x13:before {
    padding-bottom: 260%
}

.js-electionSearch .photo-1x1:before, .js-electionSearch .photo-5x13:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-1x1:before {
    padding-bottom: 100%
}

.js-electionSearch .photo-2x3:before {
    padding-bottom: 150%
}

.js-electionSearch .photo-2x3:before, .js-electionSearch .photo-4x5:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-4x5:before {
    padding-bottom: 125%
}

.js-electionSearch .photo-5x6:before {
    padding-bottom: 120%
}

.js-electionSearch .photo-5x6:before, .js-electionSearch .photo-5x7:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-5x7:before {
    padding-bottom: 140%
}

.js-electionSearch .photo-4x1:before {
    padding-bottom: 25%
}

.js-electionSearch .photo-4x1:before, .js-electionSearch .photo-4x3:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-4x3:before {
    padding-bottom: 75%
}

.js-electionSearch .photo-5x4:before {
    padding-bottom: 80%
}

.js-electionSearch .photo-3x2:before, .js-electionSearch .photo-5x4:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-3x2:before {
    padding-bottom: 66.66667%
}

.js-electionSearch .photo-3x4:before {
    padding-bottom: 133.33333%
}

.js-electionSearch .photo-3x4:before, .js-electionSearch .photo-16x9:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-16x9:before {
    padding-bottom: 56.25%
}

.js-electionSearch .photo-2x1:before {
    padding-bottom: 50%
}

.js-electionSearch .photo-2x1:before, .js-electionSearch .photo-3x1:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-3x1:before {
    padding-bottom: 33.33333%
}

.js-electionSearch .photo-a:before {
    padding-bottom: 141.42857%
}

.js-electionSearch .photo-a:before, .js-electionSearch .photo-aw:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-aw:before {
    padding-bottom: 70.71429%
}

.js-electionSearch .photo-blanket:before {
    padding-bottom: 134.48276%
}

.js-electionSearch .photo-ab:before, .js-electionSearch .photo-blanket:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0
}

.js-electionSearch .photo-ab:before {
    padding-bottom: 122.38095%
}

.js-electionSearch .photo-pamphlet {
    left: 50%;
    width: auto;
    height: 100%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%)
}

.js-electionSearch .photo-cover, .js-electionSearch .photo-pamphlet {
    position: absolute;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: block;
    top: 0;
    z-index: 1
}

.js-electionSearch .photo-cover {
    left: 0;
    width: 100%;
    height: auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    max-width: none
}

.js-electionSearch .post .photo-cover {
    max-width: none !important
}

.js-electionSearch .photo-cover.is-movie {
    opacity: .8
}

.js-electionSearch .photo-cover.bd.is-h {
    width: auto;
    height: calc(100% - 4px)
}

.js-electionSearch .photo-cover.is-shadow {
    width: 106%;
    height: 106%;
    top: 2%;
    left: -3%
}

.js-electionSearch .photo-cover.is-h {
    width: auto;
    height: 100%;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%)
}

.js-electionSearch .photo-cover.is-w {
    width: 100%;
    height: auto;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.js-electionSearch .photo-cover.is-bottom {
    top: auto;
    bottom: 0
}

.js-electionSearch .photo-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.js-electionSearch .photo-youtube {
    content: " ";
    width: 100%;
    height: 0;
    padding-bottom: 56.25%
}

.js-electionSearch .photo-youtube, .js-electionSearch .photo-youtube-bg {
    display: block;
    overflow: hidden;
    position: relative
}

.js-electionSearch .photo-youtube-bg {
    opacity: 0;
    z-index: 1;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: opacity 1s .25s;
    transition: opacity 1s .25s;
    pointer-events: none
}

.js-electionSearch .photo-youtube-bg:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 75%
}

.js-electionSearch .photo-youtube-bg.is-init {
    opacity: 1
}

.js-electionSearch .photo-youtube-bg.is-thumb {
    position: absolute;
    width: 150%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .photo-youtube-bg.is-thumb:before {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 200%
}

.js-electionSearch .photo-youtube-bg .photo-iframe {
    z-index: 2
}

.js-electionSearch .tool {
    position: relative;
    border-bottom: 2px solid #2d2b2b;
    border-top: 2px solid transparent;
    text-align: center;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.js-electionSearch .bgc-b .tool {
    -webkit-transition: background-color .25s;
    transition: background-color .25s;
    background-color: rgba(34, 34, 34, .75)
}

.js-electionSearch .bgc-b .tool.is-open {
    background-color: rgba(34, 34, 34, .9)
}

.js-electionSearch .bgc-b .tool .svg-ico {
    fill: #fff
}

.js-electionSearch .bgc-g .tool, .js-electionSearch .bgc-w .tool {
    -webkit-transition: background-color .25s;
    transition: background-color .25s;
    background-color: hsla(0, 0%, 100%, .65)
}

.js-electionSearch .bgc-g .tool.is-open, .js-electionSearch .bgc-w .tool.is-open {
    background-color: hsla(0, 0%, 100%, .9)
}

.js-electionSearch .tool.is-page {
    border-top: 2px solid #2d2b2b
}

.js-electionSearch .tool.is-category {
    border-bottom-color: transparent;
    -webkit-box-shadow: 0 2px rgba(0, 0, 0, .05);
    box-shadow: 0 2px rgba(0, 0, 0, .05)
}

.js-electionSearch .tool-menu:after {
    display: none !important
}

.js-electionSearch .tool-btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.4;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .tool-btn:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%);
    transform: translate(-50%);
    width: 0;
    height: 2px;
    background-color: #d7003a;
    -webkit-transition: width .25s ease-out;
    transition: width .25s ease-out
}

.js-electionSearch .tool-btn.is-current {
    color: #d7003a
}

.js-electionSearch .tool-btn.is-current:after {
    width: 80%
}

.js-electionSearch .tool-btn.is-none {
    pointer-events: none;
    opacity: .2
}

.js-electionSearch .tool-btn .svg-ico-blank {
    margin-left: .25em
}

.js-electionSearch .tool-btn .svg-ico-arrow-b {
    display: block;
    width: 1.4em;
    height: 1.4em;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -.7em
}

.js-electionSearch .tool-btn .ico-blank {
    position: relative;
    top: .1em;
    margin-left: .25em
}

.js-electionSearch .news {
    position: relative;
    border-top: 1px solid rgba(45, 43, 43, .1)
}

.js-electionSearch .news-item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid rgba(45, 43, 43, .1)
}

.js-electionSearch .news-item .g-btn {
    margin-top: .75em
}

.js-electionSearch .news-item.is-s {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .news-body, .js-electionSearch .news-header, .js-electionSearch .news-tag {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .news-header, .js-electionSearch .news-tag {
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.js-electionSearch .news-btn {
    display: inline-block;
    text-decoration: none
}

.js-electionSearch .news-data, .js-electionSearch .news-nav {
    width: 100%;
    text-align: left
}

.js-electionSearch .news-nav {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 3em;
    color: #d7003a
}

.js-electionSearch .news-nav-ico {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 30px;
    height: 30px
}

.js-electionSearch .news-nav-ico .g-ico {
    width: 100%;
    height: 100%;
    -webkit-transition: -webkit-transform .25s ease-out;
    transition: -webkit-transform .25s ease-out;
    transition: transform .25s ease-out;
    transition: transform .25s ease-out, -webkit-transform .25s ease-out;
    stroke: #d7003a !important
}

.js-electionSearch .news-nav.is-open .g-ico {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.js-electionSearch .news-data {
    height: 0;
    overflow: hidden
}

.js-electionSearch .news-data.is-open {
    height: auto
}

.js-electionSearch .news-campaign1, .js-electionSearch .news-campaign2 {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 2em
}

.js-electionSearch .news-campaign2.ta-r {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.js-electionSearch .news-campaign2.ta-r .tag {
    margin-right: 0
}

.js-electionSearch .list {
    position: relative;
    border-top: 2px solid rgba(0, 0, 0, .05)
}

.js-electionSearch .list-item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 2px solid rgba(0, 0, 0, .05)
}

.js-electionSearch .list-item .g-btn {
    margin-top: .75em
}

.js-electionSearch .list-item.is-s {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .list-body, .js-electionSearch .list-header, .js-electionSearch .list-tag {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .list-tag {
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.js-electionSearch .list-tag .tag {
    font-size: 90%
}

.js-electionSearch .list-header {
    font-weight: 700;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.js-electionSearch .list-btn {
    display: inline-block;
    text-decoration: none
}

.js-electionSearch .list-btn .tag {
    font-size: 80%
}

.js-electionSearch .list-data, .js-electionSearch .list-nav {
    width: 100%;
    text-align: left
}

.js-electionSearch .list-nav {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 3em;
    color: #d7003a
}

.js-electionSearch .list-nav-ico {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 30px;
    height: 30px
}

.js-electionSearch .list-nav-ico .g-ico {
    width: 100%;
    height: 100%;
    -webkit-transition: -webkit-transform .25s ease-out;
    transition: -webkit-transform .25s ease-out;
    transition: transform .25s ease-out;
    transition: transform .25s ease-out, -webkit-transform .25s ease-out;
    stroke: #d7003a !important
}

.js-electionSearch .list-nav.is-open .g-ico {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.js-electionSearch .list-data {
    height: 0;
    overflow: hidden
}

.js-electionSearch .list-data.is-open {
    height: auto
}

.js-electionSearch .list-ico {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style-type: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.js-electionSearch .list-ico-item {
    position: relative
}

.js-electionSearch .list-ico.is-menu .list-ico-item {
    width: 20%;
    margin: 0
}

.js-electionSearch .list-ico.is-menu .list-ico-item .btn-other {
    width: 100%
}

.js-electionSearch .list-ico.is-submenu .list-ico-item {
    width: 33.33%;
    margin: 0
}

.js-electionSearch .list-ico.is-submenu .list-ico-item .btn-other {
    width: 100%
}

.js-electionSearch .list-ico.is-submenu .list-ico-item .btn-other-img {
    width: 60%
}

.js-electionSearch .list-other {
    list-style-type: none
}

.js-electionSearch .list-other-item {
    position: relative;
    display: inline-block;
    margin: .75em .15em
}

.js-electionSearch .list-member {
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .list-member.ta-c {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.js-electionSearch .list-member .list-li {
    position: relative;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .list-member .list-li.is-br {
    width: 100%;
    height: 1px
}

.js-electionSearch .list-link {
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.js-electionSearch .list-li .t, .js-electionSearch .list-li .t-s {
    text-indent: 0
}

.js-electionSearch .list-disc {
    padding-left: 1.25em
}

.js-electionSearch .list-disc .list-li {
    margin-bottom: .5em
}

.js-electionSearch .list-disc .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .list-num {
    padding-left: 1.25em
}

.js-electionSearch .list-num .list-li {
    margin-bottom: .5em
}

.js-electionSearch .list-num .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .list-ja {
    list-style-type: none;
    padding-left: 1.34em
}

.js-electionSearch .list-ja .list-li {
    text-indent: -1.34em;
    margin-bottom: .5em
}

.js-electionSearch .list-ja .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .list-ja .list-li.is-blank:before {
    content: " ";
    display: inline-block;
    width: 1.36em
}

.js-electionSearch .list-ja2 {
    list-style-type: none;
    padding-left: 2.2em
}

.js-electionSearch .list-ja2 .list-li {
    text-indent: -2.2em;
    margin-bottom: .5em
}

.js-electionSearch .list-ja2 .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .list-ja3 {
    list-style-type: none;
    padding-left: 2.2em
}

.js-electionSearch .is-ie .list-ja3 {
    padding-left: 2.8em
}

.js-electionSearch .list-ja3 .list-li {
    text-indent: -2.2em;
    margin-bottom: .5em
}

.js-electionSearch .list-ja3 .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .is-ie .list-ja3 .list-li {
    text-indent: -2.5em
}

.js-electionSearch .list-ja4 {
    list-style-type: none;
    padding-left: 2.3em
}

.js-electionSearch .list-ja4 .list-li {
    text-indent: -2.3em;
    margin-bottom: .5em
}

.js-electionSearch .list-ja4 .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .list-doc {
    list-style-type: none;
    padding-left: 3.8em
}

.js-electionSearch .list-doc .list-li {
    text-indent: -3.8em;
    margin-bottom: .25em
}

.js-electionSearch .list-doc .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .list-sitemap {
    list-style-type: none
}

.js-electionSearch .list-sitemap .list-li {
    margin-bottom: .5em
}

.js-electionSearch .list-sitemap .list-li:last-child {
    margin-bottom: 0
}

.js-electionSearch .list-promise {
    list-style-type: none;
    width: 100%
}

.js-electionSearch .list-promise .list-li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-left: 3px solid #d7003a
}

.js-electionSearch .list-search {
    text-align: left
}

.js-electionSearch .list-search .list-li {
    border-top: 1px solid #eee
}

.js-electionSearch .tag {
    position: relative;
    display: inline-block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .6em 1.25em;
    text-decoration: none;
    border-radius: 3em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1;
    font-weight: 700;
    background-color: rgba(0, 0, 0, .05);
    vertical-align: middle;
    margin-right: 1em;
    -webkit-transition: background-color .25s, color .25s;
    transition: background-color .25s, color .25s
}

.js-electionSearch .is-ie .tag {
    padding: .9em 1.25em .6em
}

.js-electionSearch .tag.is-btn.is-current {
    background-color: #2d2b2b;
    color: #fff
}

.js-electionSearch .tag.is-w {
    background-color: #fff
}

.js-electionSearch .tag.is-wa {
    background-color: hsla(0, 0%, 100%, .2);
    margin-right: 0
}

.js-electionSearch .tag.is-pink {
    background-color: rgba(255, 70, 143, .8);
    color: #fff
}

.js-electionSearch .tag.is-red {
    background-color: rgba(215, 0, 58, .8);
    color: #fff
}

.js-electionSearch .tag.is-youth {
    background-color: rgba(0, 132, 255, .75);
    color: #fff
}

.js-electionSearch .tag.is-women {
    background-color: rgba(255, 70, 143, .75);
    color: #fff
}

.js-electionSearch .tag.is-daigakuin {
    background-color: rgba(11, 168, 76, .75);
    color: #fff
}

.js-electionSearch .tag.is-constitution {
    background-color: rgba(116, 85, 220, .75);
    color: #fff
}

.js-electionSearch .tag.is-association {
    background-color: rgba(240, 131, 0, .75);
    color: #fff
}

.js-electionSearch .tag.is-other {
    background-color: rgba(0, 0, 0, .1);
    color: #000
}

.js-electionSearch .tag.is-cafesta {
    background-color: rgba(240, 131, 0, .75);
    color: #fff
}

.js-electionSearch .tag-point {
    display: inline-block;
    width: .75em;
    height: .75em;
    border-radius: 1em;
    background-color: #fff;
    margin-right: .5em
}

.js-electionSearch .tag-point.is-youth {
    background-color: #0084ff
}

.js-electionSearch .tag-point.is-women {
    background-color: #ff468f
}

.js-electionSearch .tag-point.is-daigakuin {
    background-color: #0ba84c
}

.js-electionSearch .tag-point.is-constitution {
    background-color: #7455dc
}

.js-electionSearch .tag-point.is-cafesta {
    background-color: #f08300
}

.js-electionSearch .post .img_center, .js-electionSearch .post .post-main {
    text-align: center
}

.js-electionSearch .post .img_center img, .js-electionSearch .post .post-main img {
    margin: 0 auto
}

.js-electionSearch .post img {
    max-width: 100%;
    text-align: center
}

.js-electionSearch .post dd, .js-electionSearch .post li, .js-electionSearch .post p, .js-electionSearch .post td, .js-electionSearch .post th {
    letter-spacing: .04em;
    word-wrap: break-word
}

.js-electionSearch .post .list, .js-electionSearch .post dd, .js-electionSearch .post p {
    border-top: none;
    margin-top: 1em
}

.js-electionSearch .post .list:first-child, .js-electionSearch .post dd:first-child, .js-electionSearch .post p:first-child {
    margin-top: 0
}

.js-electionSearch .post h2 {
    font-weight: 700;
    line-height: 1.5;
    margin-top: 2em
}

.js-electionSearch .post h2+dl, .js-electionSearch .post h2+h3 {
    margin-top: 1em
}

.js-electionSearch .post h3 {
    font-weight: 700;
    line-height: 1.4;
    margin-top: 2em
}

.js-electionSearch .post h3+dl {
    margin-top: 1em
}

.js-electionSearch .post h3+p {
    margin-top: .5em
}

.js-electionSearch .post table {
    margin-top: 1em;
    border-collapse: collapse;
    width: 100%;
    border-bottom: 1px solid #eee
}

.js-electionSearch .post table td, .js-electionSearch .post table th {
    padding: .75em 1em;
    border-top: 1px solid #eee;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .post table td.is-data, .js-electionSearch .post table th.is-data {
    padding-left: 0;
    padding-right: 0
}

.js-electionSearch .post table th {
    font-weight: 700
}

.js-electionSearch .post table th.is-os, .js-electionSearch .post table th.is-paper {
    width: 6em
}

.js-electionSearch .post .answer, .js-electionSearch .post .question {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .post .answer.va-m, .js-electionSearch .post .question.va-m {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .post .answer dt, .js-electionSearch .post .question dt {
    margin: 0 auto 0 0
}

.js-electionSearch .post .answer dt img, .js-electionSearch .post .question dt img {
    width: 100%
}

.js-electionSearch .post .answer dd, .js-electionSearch .post .question dd {
    margin: 0 0 0 auto
}

.js-electionSearch .post .question {
    border-top: 1px solid rgba(0, 0, 0, .05);
    padding-top: 1em
}

.js-electionSearch .post .question:first-child {
    margin-top: 2em
}

.js-electionSearch .post .answer {
    margin-top: 1em;
    padding-bottom: 1em;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    margin-bottom: -1px
}

.js-electionSearch .post .answer:last-child {
    border-bottom: none
}

.js-electionSearch .post .date {
    display: none
}

.js-electionSearch .post-info {
    text-align: right
}

.js-electionSearch .post a[target=_blank]:after {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin: -9px 3px -5px
}

.js-electionSearch .post a.btn-file:after, .js-electionSearch .post a.btn.js-modal:after, .js-electionSearch .post a.imagelink:after {
    display: none;
    content: ""
}

.js-electionSearch .post a.btn-file .t-5:after {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin: -14px 3px 0
}

.js-electionSearch .post .list, .js-electionSearch .post .nico, .js-electionSearch .post .relatedInfo {
    list-style-type: none
}

.js-electionSearch .post .list dt, .js-electionSearch .post .nico dt, .js-electionSearch .post .relatedInfo dt {
    font-weight: 700
}

.js-electionSearch .post .list dd, .js-electionSearch .post .list li, .js-electionSearch .post .nico dd, .js-electionSearch .post .nico li, .js-electionSearch .post .relatedInfo dd, .js-electionSearch .post .relatedInfo li {
    margin-bottom: 8px
}

.js-electionSearch .post .list a, .js-electionSearch .post .nico a, .js-electionSearch .post .relatedInfo a {
    display: inline-block;
    padding: 3px 0 3px 28px;
    background-size: 20px 20px;
    line-height: 1.2;
    min-height: 20px
}

.js-electionSearch .post .list a .ico, .js-electionSearch .post .nico a .ico, .js-electionSearch .post .relatedInfo a .ico {
    text-decoration: none
}


.js-electionSearch .loader {
    width: 100%;
    height: 100%;
    background: #fff;
    opacity: 0
}

.js-electionSearch .loader.is-active {
    display: block
}

.js-electionSearch .loader.is-delete {
    opacity: 0
}

.js-electionSearch .loader.is-disable {
    display: none
}

.js-electionSearch .loader-pointer {
    opacity: .5;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -14px
}

.js-electionSearch .loader-item {
    position: absolute;
    width: 8px;
    height: 20px;
    background-color: #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 4px;
    top: 0;
    left: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .loader-item:first-child {
    opacity: 1;
    left: 0;
    -webkit-animation: loading-point 1s .33s infinite;
    animation: loading-point 1s .33s infinite
}

.js-electionSearch .loader-item:nth-child(2) {
    opacity: 1;
    left: 14px;
    -webkit-animation: loading-point 1s .66s infinite;
    animation: loading-point 1s .66s infinite
}

.js-electionSearch .loader-item:nth-child(3) {
    opacity: 1;
    left: 28px;
    -webkit-animation: loading-point 1s .99s infinite;
    animation: loading-point 1s .99s infinite
}

.js-electionSearch .declaration {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 0;
    top: 50%;
    left: 50%;
    overflow: hidden;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.js-electionSearch .declaration-photo {
    position: relative;
    width: 20%
}

.js-electionSearch .declaration-photo:before {
    display: block;
    content: " ";
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 260%
}

.js-electionSearch .declaration-cover {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0
}

.js-electionSearch .mouse-pointer {
    position: fixed;
    z-index: 6000;
    top: 0;
    left: 0;
    pointer-events: none;
    z-indes: 1000;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    opacity: 0;
    -webkit-transition: opacity .2s;
    transition: opacity .2s;
    -webkit-transition: margin .25s, width .25s, height .25s, opacity .25s;
    transition: margin .25s, width .25s, height .25s, opacity .25s
}

.js-electionSearch .is-custom-mouse .mouse-pointer {
    opacity: 1
}

.js-electionSearch .isnt-custom-mouse .mouse-pointer {
    display: none
}

.js-electionSearch .mouse-pointer.is-follow {
    background-color: #d7003a
}

.js-electionSearch .mouse-pointer.is-follow.is-active {
    width: 0;
    height: 0;
    margin: 0;
    opacity: 0
}

.js-electionSearch .mouse-pointer.is-follow1 {
    width: 32px;
    height: 32px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #d7003a;
    margin: -16px
}

.js-electionSearch .mouse-pointer.is-follow1.is-active {
    width: 56px;
    height: 56px;
    margin: -28px
}

.js-electionSearch .mouse-pointer.is-leave {
    opacity: 0
}

.js-electionSearch .is-custom-mouse, .js-electionSearch .is-custom-mouse * {
    cursor: none !important
}

.js-electionSearch .svg text {
    font-size: 49.5px
}

.js-electionSearch .svg text.is-ja {
    font-size: 44px
}

.js-electionSearch .svg-ico {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: #2d2b2b;
    -webkit-transition: fill .25s;
    transition: fill .25s
}

.js-electionSearch .svg-ico-blank {
    margin-top: -.2em
}

.js-electionSearch .col {
    position: relative
}

.js-electionSearch .col.is-note {
    border: 2px solid #eee;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .col.is-note.bgc-g {
    border-color: transparent
}

.js-electionSearch .col.is-note-s {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .col-img {
    display: block;
    width: 100%
}

.js-electionSearch .col.is-movie {
    border: 1px solid rgba(253, 178, 66, .2);
    background-color: rgba(253, 178, 66, .05);
    border-radius: .5em
}

.js-electionSearch .table {
    border-collapse: collapse;
    width: 100%;
    border-bottom: 1px solid #eee
}

.js-electionSearch .table * {
    vertical-align: inherit
}

.js-electionSearch .table.tbl-f {
    table-layout: fixed
}

.js-electionSearch .table.is-address {
    border-bottom: none
}

.js-electionSearch .table-caption {
    padding: 0 0 .75em;
    text-align: right;
    caption-side: top
}

.js-electionSearch .table-td, .js-electionSearch .table-th {
    border-top: 1px solid #eee;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: inherit
}

.js-electionSearch .table-td.is-data, .js-electionSearch .table-th.is-data {
    padding-left: 0;
    padding-right: 0
}

.js-electionSearch .table-th {
    font-weight: 700;
    width: auto
}

.js-electionSearch .table.is-address .table-th {
    width: 4.5em
}

.js-electionSearch .table-th.is-paper {
    width: 6em
}

.js-electionSearch .table-th.is-member {
    vertical-align: top
}

.js-electionSearch .table-td.is-minister-data .btn-member {
    margin-top: .25em;
    margin-bottom: .25em
}

.js-electionSearch .table-td p {
    line-height: 1.25;
    margin-bottom: .75em
}

.js-electionSearch .table-td p:last-child {
    margin-bottom: 0
}

.js-electionSearch .table-header .table-th {
    border-top: 2px solid #eee;
    border-bottom: 2px solid #eee
}

.js-electionSearch .history {
    position: relative;
    overflow: hidden
}

.js-electionSearch .history-photo {
    position: absolute
}

.js-electionSearch .calendar {
    opacity: 0;
    -webkit-transition: opacity .5s;
    transition: opacity .5s;
    border-bottom: 2px solid #2d2b2b
}

.js-electionSearch .calendar.is-init {
    opacity: 1
}

.js-electionSearch .calendar-col {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .calendar-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.js-electionSearch .calendar-nav-title-sub {
    position: relative;
    font-size: 60%;
    top: -.05em;
    margin-left: .05em;
    margin-right: .25em
}

.js-electionSearch .calendar-nav-mode .calendar-btn {
    font-weight: 700
}

.js-electionSearch .calendar-btn {
    text-decoration: none;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    background-color: rgba(0, 0, 0, .05);
    border-radius: 3em;
    -webkit-transition: background-color .25s, color .25s;
    transition: background-color .25s, color .25s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: .7em 1.25em;
    font-family: Alte DIN\ 1451, Arial, Helvetica, Verdana, sans-serif
}

.js-electionSearch .calendar-btn.is-current {
    background-color: #d7003a !important;
    color: #fff;
    pointer-events: none
}

.js-electionSearch .calendar-btn.is-other {
    opacity: .25
}

.js-electionSearch .calendar-btn.is-none {
    pointer-events: none;
    opacity: .25
}

.js-electionSearch .calendar-btn-group {
    background-color: rgba(0, 0, 0, .05);
    border-radius: 3em
}

.js-electionSearch .calendar-btn-group .calendar-btn {
    background-color: transparent
}

.js-electionSearch .calendar-week {
    text-align: center;
    border-bottom: 2px solid #2d2b2b;
    border-top: 2px solid #2d2b2b
}

.js-electionSearch .calendar-week .calendar-btn {
    background-color: transparent
}

.js-electionSearch .calendar-day .calendar-col {
    border-right: 1px solid rgba(0, 0, 0, .05);
    border-top: 1px solid rgba(0, 0, 0, .05)
}

.js-electionSearch .calendar-day .calendar-col:last-child {
    border-right: none
}

.js-electionSearch .calendar-day .calendar-btn {
    padding-left: .2em;
    padding-right: .2em;
    min-width: 2.4em;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: transparent
}

.js-electionSearch .calendar-schedule-col {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start
}

.js-electionSearch .calendar-schedule-col, .js-electionSearch .calendar-schedule-time {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.js-electionSearch .calendar-schedule-time {
    font-size: 10px;
    -webkit-transform: translateY(.25em);
    transform: translateY(.25em);
    width: 100%;
    height: 0
}

.js-electionSearch .calendar-schedule-data {
    position: relative;
    z-index: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    background-color: rgba(45, 43, 43, .05);
    border: 1px solid rgba(45, 43, 43, .8);
    border-radius: .5em;
    margin: 0 10px .5em auto
}

.js-electionSearch .calendar-schedule-data.is-dummy {
    height: 8px;
    padding: 0;
    visibility: hidden
}

.js-electionSearch .calendar-schedule-data .btn {
    background-color: #fff;
    border-color: #fff;
    border-width: 1px
}

.js-electionSearch .calendar-schedule-data.is-open {
    background-color: #fff !important
}

.js-electionSearch .calendar-schedule-data.is-open .calendar-schedule-bgbtn {
    display: none
}

.js-electionSearch .calendar-schedule-data.is-cafesta {
    background-color: rgba(253, 178, 66, .1);
    border: 1px solid rgba(253, 178, 66, .8)
}

.js-electionSearch .calendar-schedule-data.is-cafesta.is-open {
    -webkit-box-shadow: 0 0 10px rgba(253, 178, 66, .2);
    box-shadow: 0 0 10px rgba(253, 178, 66, .2)
}

.js-electionSearch .calendar-schedule-data.is-cafesta.is-open .btn {
    background-color: rgba(253, 178, 66, .1);
    border-color: rgba(253, 178, 66, .8)
}

.js-electionSearch .calendar-schedule-data.is-cafesta .calendar-info-btn, .js-electionSearch .calendar-schedule-data.is-cafesta .calendar-info-member {
    border-color: rgba(253, 178, 66, .8)
}

.js-electionSearch .calendar-schedule-data.is-media {
    background-color: rgba(255, 70, 143, .1);
    border: 1px solid rgba(255, 70, 143, .8)
}

.js-electionSearch .calendar-schedule-data.is-media.is-open {
    -webkit-box-shadow: 0 0 10px rgba(255, 70, 143, .2);
    box-shadow: 0 0 10px rgba(255, 70, 143, .2)
}

.js-electionSearch .calendar-schedule-data.is-media.is-open .btn {
    background-color: rgba(255, 70, 143, .1);
    border-color: rgba(255, 70, 143, .8)
}

.js-electionSearch .calendar-schedule-data.is-media .calendar-info-btn, .js-electionSearch .calendar-schedule-data.is-media .calendar-info-member {
    border-color: rgba(255, 70, 143, .8)
}

.js-electionSearch .calendar-schedule-data.is-conference {
    background-color: rgba(51, 172, 225, .1);
    border: 1px solid rgba(51, 172, 225, .8)
}

.js-electionSearch .calendar-schedule-data.is-conference.is-open {
    -webkit-box-shadow: 0 0 10px rgba(51, 172, 225, .2);
    box-shadow: 0 0 10px rgba(51, 172, 225, .2)
}

.js-electionSearch .calendar-schedule-data.is-conference.is-open .btn {
    background-color: rgba(51, 172, 225, .1);
    border-color: rgba(51, 172, 225, .8)
}

.js-electionSearch .calendar-schedule-data.is-conference .calendar-info-btn, .js-electionSearch .calendar-schedule-data.is-conference .calendar-info-member {
    border-color: rgba(51, 172, 225, .8)
}

.js-electionSearch .calendar-schedule-more {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 0;
    overflow-y: hidden
}

.js-electionSearch .calendar-schedule-data.is-open .calendar-schedule-more {
    display: block;
    overflow-y: visible;
    height: auto
}

.js-electionSearch .calendar-schedule-btn {
    position: absolute;
    z-index: 2;
    font-size: 68.8%
}

.js-electionSearch .calendar-schedule-data.is-open .calendar-schedule-btn .svg-ico.svg-ico-plus {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

.js-electionSearch .calendar-schedule-btn-label {
    position: relative
}

.js-electionSearch .calendar-schedule-btn-on {
    text-align: center
}

.js-electionSearch .calendar-schedule-data.is-open .calendar-schedule-btn-on {
    opacity: 0
}

.js-electionSearch .calendar-schedule-btn-off {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    text-align: center
}

.js-electionSearch .calendar-schedule-data.is-open .calendar-schedule-btn-off {
    opacity: 1
}

.js-electionSearch .calendar-schedule-bgbtn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    background-color: rgba(0, 0, 0, .01);
    z-index: 1;
    opacity: 0
}

.js-electionSearch .calendar-schedule-bgbtn.calendar-schedule-data {
    width: 100% !important
}

.js-electionSearch .calendar-note-list {
    list-style-type: none
}

.js-electionSearch .calendar-note-item {
    display: inline-block;
    margin-right: 1em
}

.js-electionSearch .calendar-note-item:before {
    position: relative;
    display: inline-block;
    content: " ";
    background-color: #000;
    width: .8em;
    height: .8em;
    border-radius: .8em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: .25em
}

.js-electionSearch .calendar-note-item.is-movie:before {
    background-color: rgba(253, 178, 66, .1);
    border: 1px solid rgba(253, 178, 66, .8)
}

.js-electionSearch .calendar-note-item.is-media:before {
    background-color: rgba(255, 70, 143, .1);
    border: 1px solid rgba(255, 70, 143, .8)
}

.js-electionSearch .calendar-note-item.is-conference:before {
    background-color: rgba(51, 172, 225, .1);
    border: 1px solid rgba(51, 172, 225, .8)
}

.js-electionSearch .calendar-subbtn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: rgba(45, 43, 43, .1);
    border: 1px solid rgba(45, 43, 43, .3);
    border-radius: 1.5em;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-width: 1em;
    z-index: 1;
    margin: .25em .5em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none;
    font-weight: 700;
    -webkit-transition: background-color .25s, color .25s;
    transition: background-color .25s, color .25s
}

.js-electionSearch .calendar-subbtn-label {
    margin-right: .25em
}

.js-electionSearch .calendar-subbtn-time {
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap
}

.js-electionSearch .calendar-subbtn-subject, .js-electionSearch .calendar-subbtn-time {
    width: calc(100% - .5em);
    overflow: hidden;
    line-height: 1.5
}

.js-electionSearch .calendar-subbtn-subject {
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    height: 2.7em;
    padding-right: 30px
}

.js-electionSearch .calendar-subbtn.is-cafesta {
    background-color: rgba(253, 178, 66, .1);
    border: 1px solid rgba(253, 178, 66, .8)
}

.js-electionSearch .calendar-container.is-open .calendar-subbtn.is-cafesta, .js-electionSearch .calendar-subbtn.is-cafesta.is-hover, .js-electionSearch .calendar-subbtn.is-cafesta:hover {
    background-color: #fdb242;
    color: #fff
}

.js-electionSearch .calendar-subbtn.is-media {
    background-color: rgba(255, 70, 143, .1);
    border: 1px solid rgba(255, 70, 143, .8)
}

.js-electionSearch .calendar-container.is-open .calendar-subbtn.is-media, .js-electionSearch .calendar-subbtn.is-media.is-hover, .js-electionSearch .calendar-subbtn.is-media:hover {
    background-color: #ff468f;
    color: #fff
}

.js-electionSearch .calendar-subbtn.is-conference {
    background-color: rgba(51, 172, 225, .1);
    border: 1px solid rgba(51, 172, 225, .8)
}

.js-electionSearch .calendar-container.is-open .calendar-subbtn.is-conference, .js-electionSearch .calendar-subbtn.is-conference.is-hover, .js-electionSearch .calendar-subbtn.is-conference:hover {
    background-color: #33ace1;
    color: #fff
}

.js-electionSearch .calendar-closebtn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none
}

.js-electionSearch .calendar-info {
    position: absolute;
    z-index: 2;
    line-height: 1.5;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid rgba(45, 43, 43, .3);
    background-color: #fff;
    display: none
}

.js-electionSearch .calendar-info.is-cafesta, .js-electionSearch .calendar-info.is-cafesta .calendar-info-arrow, .js-electionSearch .calendar-info.is-cafesta .calendar-info-btn, .js-electionSearch .calendar-info.is-cafesta .calendar-info-dl, .js-electionSearch .calendar-info.is-cafesta .calendar-info-member, .js-electionSearch .calendar-info.is-cafesta .calendar-info-time {
    border-color: rgba(253, 178, 66, .8)
}

.js-electionSearch .calendar-info.is-media, .js-electionSearch .calendar-info.is-media .calendar-info-arrow, .js-electionSearch .calendar-info.is-media .calendar-info-btn, .js-electionSearch .calendar-info.is-media .calendar-info-dl, .js-electionSearch .calendar-info.is-media .calendar-info-member, .js-electionSearch .calendar-info.is-media .calendar-info-time {
    border-color: rgba(255, 70, 143, .8)
}

.js-electionSearch .calendar-info.is-conference, .js-electionSearch .calendar-info.is-conference .calendar-info-arrow, .js-electionSearch .calendar-info.is-conference .calendar-info-btn, .js-electionSearch .calendar-info.is-conference .calendar-info-dl, .js-electionSearch .calendar-info.is-conference .calendar-info-member, .js-electionSearch .calendar-info.is-conference .calendar-info-time {
    border-color: rgba(51, 172, 225, .8)
}

.js-electionSearch .calendar-container.is-open .calendar-info {
    display: block;
    z-index: 3
}

.js-electionSearch .calendar-container.is-top .calendar-info {
    top: -4px
}

.js-electionSearch .calendar-container.is-timeline.is-top .calendar-info {
    top: 2px
}

.js-electionSearch .calendar-container.is-bottom .calendar-info {
    bottom: -4px
}

.js-electionSearch .calendar-container.is-left .calendar-info {
    left: 100%
}

.js-electionSearch .calendar-container.is-timeline.is-left .calendar-info {
    left: calc(100% + 2px)
}

.js-electionSearch .calendar-container.is-right .calendar-info {
    right: 100%
}

.js-electionSearch .calendar-container.is-timeline.is-right .calendar-info {
    right: calc(100% + 2px)
}

.js-electionSearch .calendar-info .calendar-closebtn {
    position: absolute;
    top: 0;
    right: 0
}

.js-electionSearch .calendar-info-title {
    padding-right: 1.5em
}

.js-electionSearch .calendar-info-time, .js-electionSearch .calendar-info-title {
    font-weight: 700;
    font-size: 110%
}

.js-electionSearch .calendar-info-time {
    border-bottom: 1px solid rgba(45, 43, 43, .3);
    padding-bottom: .25em
}

.js-electionSearch .calendar-info-data {
    overflow-y: auto
}

.js-electionSearch .calendar-info-data-title {
    font-weight: 700;
    font-size: 110%;
    padding: .75em 0 .5em
}

.js-electionSearch .calendar-info-member {
    border-top: 1px solid rgba(45, 43, 43, .3);
    padding-top: 1em;
    margin-top: .75em
}

.js-electionSearch .calendar-info-member .btn-member {
    max-width: 140px
}

.js-electionSearch .calendar-info-btn {
    border-top: 1px solid rgba(45, 43, 43, .3);
    padding-top: .75em;
    margin-top: .75em
}

.js-electionSearch .calendar-info-dl {
    border-top: 1px solid rgba(45, 43, 43, .1);
    padding-top: .5em;
    margin-top: .5em
}

.js-electionSearch .calendar-info-dd, .js-electionSearch .calendar-info-dt {
    word-break: break-word
}

.js-electionSearch .calendar-info-arrow {
    position: absolute;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 8px;
    height: 8px;
    border: 1px solid rgba(45, 43, 43, .3);
    background-color: #fff
}

.js-electionSearch .calendar-container.is-top .calendar-info-arrow {
    top: 11px
}

.js-electionSearch .calendar-container.is-bottom .calendar-info-arrow {
    bottom: 11px
}

.js-electionSearch .calendar-container.is-left .calendar-info-arrow {
    left: -6px;
    border-top: none;
    border-right: none
}

.js-electionSearch .calendar-container.is-right .calendar-info-arrow {
    right: -6px;
    border-bottom: none;
    border-left: none
}

.js-electionSearch .calendar-split {
    position: relative;
    display: inline-block;
    width: .5em;
    top: -.1em;
    text-align: center;
    -webkit-animation: blink .5s infinite alternate;
    animation: blink .5s infinite alternate
}

.js-electionSearch .pager-btn {
    vertical-align: top;
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    padding: .7em 1em;
    text-decoration: none;
    border-radius: 3em;
    border: 2px solid transparent;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1;
    font-weight: 700;
    font-size: 90%;
    background-color: rgba(0, 0, 0, .05)
}

.js-electionSearch .is-ie .pager-btn {
    padding: .7em 1em .3em
}

.js-electionSearch .pager-btn.is-num {
    margin: 0 .25em
}

.js-electionSearch .pager-btn.isnt {
    pointer-events: none;
    opacity: .2
}

.js-electionSearch .is-ie .pager-btn {
    padding: 1.1em 1.25em .7em
}

.js-electionSearch .pager-btn.is-current {
    background-color: #d7003a;
    color: #fff;
    pointer-events: none
}

.js-electionSearch .is-ie .pager-btn .svg-ico-l, .js-electionSearch .is-ie .pager-btn .svg-ico-r {
    margin-top: -.25em
}

.js-electionSearch .schedule {
    display: grid;
    grid-auto-flow: dense
}

.js-electionSearch .schedule-table {
    border-collapse: collapse;
    width: 100%;
    border-bottom: 1px solid #eee
}

.js-electionSearch .schedule-header {
    text-align: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .schedule-header, .js-electionSearch .schedule-item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.js-electionSearch .schedule-item {
    position: relative;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: .2em;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.js-electionSearch .schedule-item.schedule-item-blank {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.js-electionSearch .friendly {
    overflow: hidden
}

.js-electionSearch .friendly-img {
    position: absolute;
    overflow: visible !important
}

.js-electionSearch .president {
    position: relative
}

.js-electionSearch .president:after, .js-electionSearch .president:before {
    content: "";
    display: table;
    content: "\0020";
    display: block;
    height: 0;
    overflow: hidden;
    visibility: hidden
}

.js-electionSearch .president:after {
    clear: both
}

.js-electionSearch .president-line {
    position: absolute;
    display: block;
    content: " ";
    top: 0;
    height: 100%;
    width: 2px;
    background-color: #eee;
    z-index: 1
}

.js-electionSearch .president-body {
    position: relative
}

.js-electionSearch .president-body .col {
    position: relative;
    z-index: 4
}

.js-electionSearch .president-year {
    position: absolute;
    top: 0;
    z-index: 3;
    text-align: center
}

.js-electionSearch .president-year-label {
    position: relative;
    display: inline-block;
    margin: 0 auto;
    background-color: #fff;
    padding: .25em 0 .5em
}

.js-electionSearch .president-year-line {
    width: 100%;
    height: 2px;
    background-color: #eee;
    position: absolute
}

.js-electionSearch .andmore .ico-plus-s {
    -webkit-transition: -webkit-transform .1s ease-out;
    transition: -webkit-transform .1s ease-out;
    transition: transform .1s ease-out;
    transition: transform .1s ease-out, -webkit-transform .1s ease-out
}

.js-electionSearch .andmore.is-active .ico-plus-s {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.js-electionSearch .interview2021-c-1 {
    color: #9f2e63;
    min-width: 2em
}

.js-electionSearch .interview2021-c-1, .js-electionSearch .interview2021-c-2 {
    font-weight: 700;
    display: inline-block;
    margin-right: .5em
}

.js-electionSearch .interview2021-c-2 {
    color: #2e469f
}

.js-electionSearch .interview2021-bg {
    background-color: #2e469f;
    color: #fff;
    padding-left: .75em;
    padding-right: .75em
}


@media (min-width:1400px) {

    .js-electionSearch #electionSearch-search .btn{
        font-size: 1.1vw;
    }
}


@media (min-width:1000px) {
    .js-electionSearch @-ms-viewport {
        width: auto
    }
    .js-electionSearch a, .js-electionSearch button {
        outline: none
    }
    .js-electionSearch .clearfix-pc-tb:after, .js-electionSearch .clearfix-pc-tb:before {
        content: "";
        display: table;
        content: "\0020";
        display: block;
        height: 0;
        overflow: hidden;
        visibility: hidden
    }
    .js-electionSearch .clearfix-pc-tb:after {
        clear: both
    }
    .js-electionSearch .fl-l-pc-tb {
        float: left
    }
    .js-electionSearch .fl-r-pc-tb {
        float: right
    }
    .js-electionSearch .sp, .js-electionSearch .spl, .js-electionSearch .sps, .js-electionSearch .tb, .js-electionSearch .tb-sp {
        display: none !important
    }
    .js-electionSearch .ord--1-pc-tb {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }
    .js-electionSearch .ord-1-pc-tb {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    .js-electionSearch .ord-2-pc-tb {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
    .js-electionSearch .ord-3-pc-tb {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }
    .js-electionSearch .ta-c-pc, .js-electionSearch .ta-c-pc-tb {
        text-align: center !important
    }
    .js-electionSearch .ta-l-pc, .js-electionSearch .ta-l-pc-tb {
        text-align: left !important
    }
    .js-electionSearch .ta-r-pc, .js-electionSearch .ta-r-pc-tb {
        text-align: right !important
    }
    .js-electionSearch .h-1-pc, .js-electionSearch .h-1-pc-tb {
        height: 100% !important
    }
    .js-electionSearch .mt-header {
        margin-top: 80px
    }
    .js-electionSearch .pt-header {
        padding-top: 80px
    }
    .js-electionSearch .is-disastermessage .pt-header {
        -webkit-transition: padding-top .25s ease-out;
        transition: padding-top .25s ease-out
    }
    .js-electionSearch .is-disastermessage.is-load .pt-header {
        padding-top: calc(80px + 2.5em)
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .pt-header {
        padding-top: 80px
    }
    .js-electionSearch .pt-tool {
        padding-top: 3.3em !important
    }
    .js-electionSearch .mb-pc, .js-electionSearch .mb-pc-tb {
        margin-bottom: 1em !important
    }
    .js-electionSearch .mb-n-pc, .js-electionSearch .mb-n-pc-tb {
        margin-bottom: 0 !important
    }
    .js-electionSearch .mb-ss-pc, .js-electionSearch .mb-ss-pc-tb {
        margin-bottom: .25em !important
    }
    .js-electionSearch .mb-s-pc, .js-electionSearch .mb-s-pc-tb {
        margin-bottom: .5em !important
    }
    .js-electionSearch .mb-s--pc, .js-electionSearch .mb-s--pc-tb {
        margin-bottom: -.5em !important
    }
    .js-electionSearch .mb-sl-pc, .js-electionSearch .mb-sl-pc-tb {
        margin-bottom: .75em !important
    }
    .js-electionSearch .mb-m-pc, .js-electionSearch .mb-m-pc-tb {
        margin-bottom: 1.25em !important
    }
    .js-electionSearch .mb-l-pc, .js-electionSearch .mb-l-pc-tb {
        margin-bottom: 1.5em !important
    }
    .js-electionSearch .mb-ll-pc, .js-electionSearch .mb-ll-pc-tb {
        margin-bottom: 2em !important
    }
    .js-electionSearch .mb-toolnav {
        margin-bottom: 4em
    }
    .js-electionSearch .pb-pc, .js-electionSearch .pb-pc-tb {
        padding-bottom: 1em !important
    }
    .js-electionSearch .pb-n-pc, .js-electionSearch .pb-n-pc-tb {
        padding-bottom: 0 !important
    }
    .js-electionSearch .pb-ss-pc, .js-electionSearch .pb-ss-pc-tb {
        padding-bottom: .25em !important
    }
    .js-electionSearch .pb-s-pc, .js-electionSearch .pb-s-pc-tb {
        padding-bottom: .5em !important
    }
    .js-electionSearch .pb-sl-pc, .js-electionSearch .pb-sl-pc-tb {
        padding-bottom: .75em !important
    }
    .js-electionSearch .pb-m-pc, .js-electionSearch .pb-m-pc-tb {
        padding-bottom: 1.25em !important
    }
    .js-electionSearch .pb-l-pc, .js-electionSearch .pb-l-pc-tb {
        padding-bottom: 1.5em !important
    }
    .js-electionSearch .pb-ll-pc, .js-electionSearch .pb-ll-pc-tb {
        padding-bottom: 2em !important
    }
    .js-electionSearch .pr-pc, .js-electionSearch .pr-pc-tb {
        padding-right: 1em !important
    }
    .js-electionSearch .pr-n-pc, .js-electionSearch .pr-n-pc-tb {
        padding-right: 0 !important
    }
    .js-electionSearch .pr-ss-pc, .js-electionSearch .pr-ss-pc-tb {
        padding-right: .25em !important
    }
    .js-electionSearch .pr-s-pc, .js-electionSearch .pr-s-pc-tb {
        padding-right: .5em !important
    }
    .js-electionSearch .pr-sl-pc, .js-electionSearch .pr-sl-pc-tb {
        padding-right: .75em !important
    }
    .js-electionSearch .pr-m-pc, .js-electionSearch .pr-m-pc-tb {
        padding-right: 1.25em !important
    }
    .js-electionSearch .pr-l-pc, .js-electionSearch .pr-l-pc-tb {
        padding-right: 1.5em !important
    }
    .js-electionSearch .pr-ll-pc, .js-electionSearch .pr-ll-pc-tb {
        padding-right: 2em !important
    }
    .js-electionSearch .carousel-next, .js-electionSearch .carousel-prev {
        width: 50px;
        height: 50px;
        font-size: 50px;
        margin-top: -25px
    }
    .js-electionSearch .carousel-prev {
        right: 100%
    }
    .js-electionSearch .carousel-next {
        left: 100%
    }
    .js-electionSearch .carousel-pointer-btn {
        width: 35px;
        height: 35px
    }
    .js-electionSearch .carousel-pointer-ico {
        width: 15px;
        height: 15px
    }
    .js-electionSearch .carousel.is-cafesta, .js-electionSearch .carousel.is-history {
        width: 103%;
        margin: 0 -1.5%
    }
    .js-electionSearch .carousel.is-cafesta .carousel-panel, .js-electionSearch .carousel.is-history .carousel-panel {
        padding: 0 1vw
    }
    .js-electionSearch .carousel.is-cover .carousel-next, .js-electionSearch .carousel.is-cover .carousel-prev {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 70px;
        width: 70px;
        height: 70px;
        margin-top: -35px
    }
    .js-electionSearch .carousel.is-cover .carousel-pointer {
        bottom: 2%
    }
    .js-electionSearch .tab-nav.is-4 .tab-list, .js-electionSearch .tab-nav.is-4 .tab-list-other {
        width: 25%
    }
    .js-electionSearch .tab-btn {
        height: 2em;
        font-size: 93.8%
    }
    .js-electionSearch #modalNext, .js-electionSearch #modalPrev {
        width: 40px
    }
    .js-electionSearch .modal-description .btn.is-hover, .js-electionSearch .modal-description .btn:hover {
        background-color: #fff !important;
        color: #d7003a !important
    }
    .js-electionSearch .modal-html {
        padding: 0 3%
    }
    .js-electionSearch .scroll-col {
        position: relative;
        height: 100%;
        min-height: 100vh
    }
    .js-electionSearch .scroll-col .scroll-col-target {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh
    }
    .js-electionSearch .scroll-col.is-scroll-top .scroll-col-target {
        position: absolute;
        top: 0;
        left: 0
    }
    .js-electionSearch .scroll-col.is-scroll-within .scroll-col-target {
        position: fixed;
        top: 0;
        left: 0
    }
    .js-electionSearch .scroll-col.is-scroll-bottom .scroll-col-target {
        position: absolute;
        top: auto;
        left: 0;
        bottom: 0
    }
    .js-electionSearch .is-custom-mouse * {
        cursor: none !important
    }
    .js-electionSearch .l-header {
        position: fixed
    }
    .js-electionSearch .l-header-menu {
        position: relative
    }
    .js-electionSearch .l-header-global {
        padding: 80px 70px 80px 40px;
        width: 370px;
        right: -370px
    }
    .js-electionSearch .l-header.is-menu-open .l-header-global-shadow {
        right: 340px;
        opacity: 1
    }
    .js-electionSearch .is-disastermessage .l-header-global {
        padding-top: calc(80px + 2.5em)
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .l-header-global {
        padding-top: 80px
    }
    .js-electionSearch .l-banner {
        z-index: 4002;
        position: fixed;
        bottom: 30px;
        right: -300px;
        -webkit-transition: right .5s ease-out;
        transition: right .5s ease-out
    }
    .js-electionSearch .l-banner.is-active {
        right: 0
    }
    .js-electionSearch .l-banner.is-hover {
        right: 0 !important
    }
    .js-electionSearch .is-scroll-limit .l-banner, .js-electionSearch .is-scroll.is-scroll-limit .l-banner {
        right: -300px !important
    }
    .js-electionSearch .l-banner-open {
        display: none
    }
    .js-electionSearch .l-main-fv:before {
        height: 100vh;
        min-height: 50vw;
        max-height: 55vw
    }
    .js-electionSearch .l-main-photo {
        width: 72.9%
    }
    .js-electionSearch .l-main-photo:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 60%
    }
    .js-electionSearch .l-main-s:before {
        padding-bottom: 33.33333%
    }
    .js-electionSearch .l-main-s:before, .js-electionSearch .l-main-ss:before {
        position: relative;
        width: 100%;
        height: 0
    }
    .js-electionSearch .l-main-ss:before {
        padding-bottom: 28.57143%
    }
    .js-electionSearch .l-main-ss {
        max-height: 460px
    }
    .js-electionSearch .l-content-col {
        max-width: 1600px;
        padding: 0 8.3%
    }
    .js-electionSearch .l-content-col.is-article {
        max-width: 1200px
    }
    .js-electionSearch .l-content-col:after, .js-electionSearch .l-content-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 10%
    }
    .js-electionSearch .l-content-col.is-b-s:after, .js-electionSearch .l-content-col.is-s:after, .js-electionSearch .l-content-col.is-s:before, .js-electionSearch .l-content-col.is-t-s:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 8%
    }
    .js-electionSearch .l-content-col.is-b-ss:after, .js-electionSearch .l-content-col.is-ss:after, .js-electionSearch .l-content-col.is-ss:before, .js-electionSearch .l-content-col.is-t-ss:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 5%
    }
    .js-electionSearch .l-content-col.is-b-sss:after, .js-electionSearch .l-content-col.is-sss:after, .js-electionSearch .l-content-col.is-sss:before, .js-electionSearch .l-content-col.is-t-sss:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 2.22222%
    }
    .js-electionSearch .l-col:after, .js-electionSearch .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 8%
    }
    .js-electionSearch .l-col.is-l:after, .js-electionSearch .l-col.is-l:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 8% !important
    }
    .js-electionSearch .l-col.is-m:after, .js-electionSearch .l-col.is-m:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 5% !important
    }
    .js-electionSearch .l-col.is-s:after, .js-electionSearch .l-col.is-s:before, .js-electionSearch .l-col .l-col:after, .js-electionSearch .l-col .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 5%
    }
    .js-electionSearch .l-col.is-ss:after, .js-electionSearch .l-col.is-ss:before, .js-electionSearch .l-col .l-col .l-col:after, .js-electionSearch .l-col .l-col .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 2.22222%
    }
    .js-electionSearch .l-col.is-limit-pc {
        width: 80%;
        max-width: 1200px
    }
    .js-electionSearch .l-col.is-limit-member {
        width: 70%;
        max-width: 800px
    }
    .js-electionSearch .l-col.is-limit-election {
        max-width: 800px
    }
    .js-electionSearch .l-col.is-limit-banner, .js-electionSearch .l-col.is-limit-login {
        width: 80%;
        max-width: 800px
    }
    .js-electionSearch .l-col-left {
        float: left
    }
    .js-electionSearch .l-col-left, .js-electionSearch .l-col-right {
        width: 30%;
        margin: 0 0 2em 3em
    }
    .js-electionSearch .l-col-right {
        float: right
    }
    .js-electionSearch .l-grid {
        margin-left: -2%;
        margin-right: -2%;
        width: 104%
    }
    .js-electionSearch .l-grid>.l-grid-col .h-1, .js-electionSearch .l-grid>[class*=l-grid-col-] .h-1 {
        height: auto
    }
    .js-electionSearch .l-grid>[class*=l-grid-col-l-] .h-1, .js-electionSearch .l-grid>[class*=l-grid-col-lm-] .h-1 {
        height: 100% !important
    }
    .js-electionSearch .l-grid.isnt-gutter-pc {
        margin-left: 0;
        margin-right: 0;
        width: 100%
    }
    .js-electionSearch .l-grid.isnt-gutter-pc>.l-grid-col, .js-electionSearch .l-grid.isnt-gutter-pc>[class*=l-grid-col-] {
        padding-right: 0;
        padding-left: 0
    }
    .js-electionSearch .l-grid.is-gutter-s, .js-electionSearch .l-grid.is-gutter-s-pc {
        margin-left: -1% !important;
        margin-right: -1% !important;
        width: 102%
    }
    .js-electionSearch .l-grid.is-gutter-s-pc>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s-pc>[class*=l-grid-col-], .js-electionSearch .l-grid.is-gutter-s>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s>[class*=l-grid-col-] {
        padding-right: 1% !important;
        padding-left: 1% !important
    }
    .js-electionSearch .l-grid-col-auto-pc, .js-electionSearch .l-grid-col-auto-pc-tb {
        width: auto !important
    }
    .js-electionSearch .l-grid-col {
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-grid-col-l-1, .js-electionSearch .l-grid-col-lm-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }
    .js-electionSearch .l-grid-col-l-1, .js-electionSearch .l-grid-col-l-2, .js-electionSearch .l-grid-col-lm-1, .js-electionSearch .l-grid-col-lm-2 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-grid-col-l-2, .js-electionSearch .l-grid-col-lm-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }
    .js-electionSearch .l-grid-col-l-3, .js-electionSearch .l-grid-col-lm-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .js-electionSearch .l-grid-col-l-3, .js-electionSearch .l-grid-col-l-4, .js-electionSearch .l-grid-col-lm-3, .js-electionSearch .l-grid-col-lm-4 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-grid-col-l-4, .js-electionSearch .l-grid-col-lm-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }
    .js-electionSearch .l-grid-col-l-5, .js-electionSearch .l-grid-col-lm-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }
    .js-electionSearch .l-grid-col-l-5, .js-electionSearch .l-grid-col-l-6, .js-electionSearch .l-grid-col-lm-5, .js-electionSearch .l-grid-col-lm-6 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-grid-col-l-6, .js-electionSearch .l-grid-col-lm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .js-electionSearch .l-grid-col-l-7, .js-electionSearch .l-grid-col-lm-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }
    .js-electionSearch .l-grid-col-l-7, .js-electionSearch .l-grid-col-l-8, .js-electionSearch .l-grid-col-lm-7, .js-electionSearch .l-grid-col-lm-8 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-grid-col-l-8, .js-electionSearch .l-grid-col-lm-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }
    .js-electionSearch .l-grid-col-l-9, .js-electionSearch .l-grid-col-lm-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }
    .js-electionSearch .l-grid-col-l-9, .js-electionSearch .l-grid-col-l-10, .js-electionSearch .l-grid-col-lm-9, .js-electionSearch .l-grid-col-lm-10 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-grid-col-l-10, .js-electionSearch .l-grid-col-lm-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }
    .js-electionSearch .l-grid-col-l-11, .js-electionSearch .l-grid-col-lm-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }
    .js-electionSearch .l-grid-col-l-11, .js-electionSearch .l-grid-col-l-12, .js-electionSearch .l-grid-col-lm-11, .js-electionSearch .l-grid-col-lm-12 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-grid-col-l-12, .js-electionSearch .l-grid-col-lm-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .js-electionSearch .l-grid-col-l-2_4, .js-electionSearch .l-grid-col-lm-2_4 {
        position: relative;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2%;
        padding-right: 2%
    }
    .js-electionSearch .l-index {
        margin-left: -1%;
        margin-right: -1%
    }
    .js-electionSearch .l-index-col {
        max-width: 25%;
        padding-left: 1%;
        padding-right: 1%
    }
    .js-electionSearch .l-calendar {
        min-height: 36.7em
    }
    .js-electionSearch .l-calendar-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .l-calendar-nav-title {
        margin: auto auto auto 0
    }
    .js-electionSearch .l-calendar-day {
        min-height: 8em
    }
    .js-electionSearch .l-calendar-schedule {
        max-height: 50em;
        min-height: 28em
    }
    .js-electionSearch .l-calendar-schedule-col {
        min-height: 28em
    }
    .js-electionSearch .l-calendar-timeline {
        min-height: 60vh
    }
    .js-electionSearch .l-calendar-note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .l-calendar-note-color {
        margin: 0 auto auto 0
    }
    .js-electionSearch .l-calendar-note-other {
        margin: 0 0 auto auto
    }
    .js-electionSearch .l-pager-prev {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        margin: auto auto auto 0
    }
    .js-electionSearch .l-pager-num {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        margin: auto
    }
    .js-electionSearch .l-pager-next {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
        margin: auto 0 auto auto
    }
    .js-electionSearch .header {
        height: 80px
    }
    .js-electionSearch .header.is-menu-open .header-tool-btn {
        height: 80px !important
    }
    .js-electionSearch .header.is-menu-open .header-tool-label {
        display: block !important
    }
    .js-electionSearch .header.is-menu-open .header-tool-ico-menu {
        margin-top: 14px !important
    }
    .js-electionSearch .is-scroll .header {
        background-color: #fff;
        color: #2d2b2b;
        -webkit-box-shadow: 0 2px rgba(0, 0, 0, .05) !important;
        box-shadow: 0 2px rgba(0, 0, 0, .05) !important;
        height: 50px
    }
    .js-electionSearch .is-scroll .header .header-id-img {
        width: 80px
    }
    .js-electionSearch .is-scroll .header .header-tool-btn {
        height: 50px
    }
    .js-electionSearch .is-scroll .header .header-tool-ico-menu {
        margin-top: -5px
    }
    .js-electionSearch .is-scroll .header .header-tool-ico {
        margin-top: -.6em
    }
    .js-electionSearch .is-scroll .header .header-tool-label {
        display: none
    }
    .js-electionSearch .header-id {
        width: 140px
    }
    .js-electionSearch .header-id-img {
        width: 110px;
        left: 20px
    }
    .js-electionSearch .header-pickup {
        -webkit-transition: opacity .4s, -webkit-transform .4s ease-out;
        transition: opacity .4s, -webkit-transform .4s ease-out;
        transition: opacity .4s, transform .4s ease-out;
        transition: opacity .4s, transform .4s ease-out, -webkit-transform .4s ease-out;
        margin: 0 0 0 auto;
        padding-right: 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .header.is-menu-open .header-pickup {
        opacity: 0;
        pointer-events: none;
        -webkit-transform: translate(20px);
        transform: translate(20px)
    }
    .js-electionSearch .header-pickup-btn {
        position: relative;
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 0 .75vw;
        margin: 0 .75vw;
        text-decoration: none;
        color: #fff;
        font-weight: 700;
        white-space: nowrap;
        -webkit-transition: color .25s, font-size .25s;
        transition: color .25s, font-size .25s;
        font-size: 93.8%;
        color: #2d2b2b
    }
    .js-electionSearch .header-pickup-btn:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 20%;
        left: 50%;
        -webkit-transform: translate(-50%);
        transform: translate(-50%);
        width: 0;
        height: 2px;
        background-color: #d7003a;
        -webkit-transition: width .25s ease-out;
        transition: width .25s ease-out
    }
    .js-electionSearch .header-pickup-btn.is-current:after, .js-electionSearch .header-pickup-btn:hover:after {
        width: 80%
    }
    .js-electionSearch .header-tool-btn {
        width: 80px;
        height: 80px
    }
    .js-electionSearch .header-tool-btn .svg-ico {
        -webkit-transition: fill .25s;
        transition: fill .25s
    }
    .js-electionSearch .header-tool-btn:hover {
        background-color: #fff;
        color: #2d2b2b
    }
    .js-electionSearch .header-tool-btn:hover .ico {
        color: #d7003a
    }
    .js-electionSearch .header-tool-btn:hover .header-tool-ico.svg-ico {
        fill: #d7003a
    }
    .js-electionSearch .header-tool-btn:hover .header-tool-ico-menu, .js-electionSearch .header-tool-btn:hover .header-tool-ico-menu:after, .js-electionSearch .header-tool-btn:hover .header-tool-ico-menu:before {
        background-color: #d7003a
    }
    .js-electionSearch .header-tool-ico {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 40px;
        width: 40px;
        height: 40px;
        margin-top: -.15em;
        margin-bottom: -.5em
    }
    .js-electionSearch .header-tool-ico-menu {
        width: 28px;
        margin-top: 14px
    }
    .js-electionSearch .header-tool-ico-menu:before {
        top: -9px
    }
    .js-electionSearch .header-tool-ico-menu:after {
        bottom: -9px
    }
    .js-electionSearch .header-global-btn {
        font-size: 112.5%
    }
    .js-electionSearch .header-global-btn:hover:before {
        opacity: 1;
        width: 100%
    }
    .js-electionSearch .header-global-btn.is-sub {
        font-size: 81.3%
    }
    .js-electionSearch .header-global-subbtn {
        font-size: 87.5%
    }
    .js-electionSearch .header-global-subbtn:hover {
        text-decoration: underline
    }
    .js-electionSearch .disastermessage-btn:hover {
        text-decoration: none
    }
    .js-electionSearch .is-load .disastermessage-main:hover {
        opacity: .75 !important
    }
    .js-electionSearch .disastermessage-main {
        top: 80px;
        left: 15px;
        -webkit-transform: translate(-50px);
        transform: translate(-50px)
    }
    .js-electionSearch .disastermessage-main:hover {
        opacity: .75 !important
    }
    .js-electionSearch .disastermessage-main:hover .svg-ico {
        -webkit-animation: arrow-left 1.25s ease;
        animation: arrow-left 1.25s ease
    }
    .js-electionSearch .footer-corp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 20px 2%;
        text-align: left
    }
    .js-electionSearch .footer-btn {
        padding: .5em;
        font-size: 75%
    }
    .js-electionSearch .footer-btn:hover {
        text-decoration: underline
    }
    .js-electionSearch .footer-nav {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin: auto auto auto 0
    }
    .js-electionSearch .footer-nav-item {
        display: block;
        margin-right: -1px;
        padding: 0 .5em
    }
    .js-electionSearch .footer-copy {
        text-align: right;
        margin: auto 0 auto auto;
        font-size: 75%
    }
    .js-electionSearch .pagenav-btn {
        width: 54px;
        height: 54px;
        border-radius: 27px;
        top: 0
    }
    .js-electionSearch .pagenav-btn .svg-ico {
        top: 9px;
        left: 9px;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 36px;
        width: 36px;
        height: 36px
    }
    .js-electionSearch .pagenav-btn:hover .svg-ico-top {
        -webkit-animation: arrow-top .8s cubic-bezier(.39, .575, .565, 1);
        animation: arrow-top .8s cubic-bezier(.39, .575, .565, 1)
    }
    .js-electionSearch .pagenav-list {
        padding: 15px
    }
    .js-electionSearch .post .t, .js-electionSearch .t {
        font-size: 100%;
        line-height: 1.85
    }
    .js-electionSearch .post .t-s, .js-electionSearch .t-s {
        font-size: 87.5%;
        line-height: 1.7
    }
    .js-electionSearch .post .t-ss, .js-electionSearch .t-ss {
        font-size: 75%;
        line-height: 1.5
    }
    .js-electionSearch .post .t-0, .js-electionSearch .t-0 {
        font-size: 429.1%
    }
    .js-electionSearch .post .t-0-pc, .js-electionSearch .t-0-pc {
        font-size: 429.1% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-1, .js-electionSearch .t-1 {
        font-size: 343.3%
    }
    .js-electionSearch .post .t-1-pc, .js-electionSearch .t-1-pc {
        font-size: 343.3% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-2, .js-electionSearch .t-2 {
        font-size: 274.7%
    }
    .js-electionSearch .post .t-2-pc, .js-electionSearch .t-2-pc {
        font-size: 274.7% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-3, .js-electionSearch .t-3 {
        font-size: 219.8%
    }
    .js-electionSearch .post .t-3-pc, .js-electionSearch .t-3-pc {
        font-size: 219.8% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-4, .js-electionSearch .t-4 {
        font-size: 175.8%
    }
    .js-electionSearch .post .t-4-pc, .js-electionSearch .t-4-pc {
        font-size: 175.8% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-5, .js-electionSearch .t-5 {
        font-size: 140.6%
    }
    .js-electionSearch .post .t-5-pc, .js-electionSearch .t-5-pc {
        font-size: 140.6% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-6, .js-electionSearch .t-6 {
        font-size: 90%
    }
    .js-electionSearch .post .t-6-pc, .js-electionSearch .t-6-pc {
        font-size: 90% !important;
        line-height: 1.4 !important
    }
    .js-electionSearch .post .t-7, .js-electionSearch .t-7 {
        font-size: 90%
    }
    .js-electionSearch .post .t-7-pc, .js-electionSearch .t-7-pc {
        font-size: 90% !important;
        line-height: 1.3 !important
    }
    .js-electionSearch .post .t-category, .js-electionSearch .t-category {
        font-size: 375%
    }
    .js-electionSearch .post .t-display, .js-electionSearch .t-display {
        font-size: 1.6vw
    }
    .js-electionSearch .post .t-display.is-limit, .js-electionSearch .t-display.is-limit {
        font-size: 25.6px !important
    }
    .js-electionSearch .post .t-line, .js-electionSearch .t-line {
        padding: 0 1em
    }
    .js-electionSearch .post .t-line-txt, .js-electionSearch .t-line-txt {
        padding: 0 .75em
    }
    .js-electionSearch .nowrap-pc, .js-electionSearch .nowrap-pc-tb {
        display: inline-block;
        white-space: nowrap;
        text-decoration: inherit
    }
    .js-electionSearch .main-video {
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 160%
    }
    .js-electionSearch .main-video:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 56.25%
    }
    .js-electionSearch .main-txt {
        padding: 0 8.3%
    }
    .js-electionSearch .main-txt.pt-tool {
        top: 47.5%
    }
    .js-electionSearch .main-txt.pt-tool.is-ja {
        top: 50%
    }
    .js-electionSearch .main.is-pickup .main-txt {
        padding-bottom: 70px
    }
    .js-electionSearch .main-txt-home {
        padding: 0 8.3%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        top: 53.4%
    }
    .js-electionSearch .main-title {
        font-size: 500%
    }
    .js-electionSearch .main-sub {
        font-size: 118.8%
    }
    .js-electionSearch .main-play {
        font-size: 300%
    }
    .js-electionSearch .main-play-ico.is-default {
        -webkit-transition: opacity .5s;
        transition: opacity .5s
    }
    .js-electionSearch .btn-cover:hover .main-play-ico.is-default {
        opacity: 0
    }
    .js-electionSearch .main-play-ico.is-line {
        -webkit-transition: opacity .5s;
        transition: opacity .5s
    }
    .js-electionSearch .btn-cover:hover .main-play-ico.is-line {
        opacity: 1
    }
    .js-electionSearch .main-pickup {
        left: 2vw;
        bottom: 2vw
    }
    .js-electionSearch .banner {
        width: 280px
    }
    .js-electionSearch .banner-title {
        font-size: 106.3%
    }
    .js-electionSearch .banner-container {
        position: relative;
        width: 280px
    }
    .js-electionSearch .banner-main {
        width: 280px
    }
    .js-electionSearch .banner-group {
        height: 110px
    }
    .js-electionSearch .banner-btn {
        padding: 20px 20px 5px
    }
    .js-electionSearch .banner-close, .js-electionSearch .banner-open {
        display: none
    }
    .js-electionSearch .banner-img {
        width: 33%
    }
    .js-electionSearch .banner-data {
        width: 62%
    }
    .js-electionSearch .banner-nav-btn:hover {
        opacity: .5
    }
    .js-electionSearch .pickup {
        width: 700px;
        border-radius: 2em
    }
    .js-electionSearch .pickup.is-static {
        width: auto
    }
    .js-electionSearch .pickup-bg {
        width: 700px;
        border-radius: 2em
    }
    .js-electionSearch .pickup-btn {
        font-size: 100%;
        padding: .8em 1em .8em 2.75em;
        -webkit-transition: color .25s;
        transition: color .25s
    }
    .js-electionSearch .pickup-btn.is-hover, .js-electionSearch .pickup-btn:hover {
        color: rgba(45, 43, 43, .5)
    }
    .js-electionSearch .pickup-btn .ico-arrow-r-s {
        font-size: 120%;
        position: absolute;
        top: 50%;
        left: 1em;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
    .js-electionSearch .pickup-items {
        width: calc(100% - 79px);
        height: 100%
    }
    .js-electionSearch .pickup-nav-btn {
        -webkit-transition: color .25s;
        transition: color .25s
    }
    .js-electionSearch .pickup-nav-btn:hover {
        color: #d7003a
    }
    .js-electionSearch .pickup-nav-btn {
        width: 40px;
        height: 50px;
        padding: 0 5px
    }
    .js-electionSearch .pickup-nav-btn .svg-ico {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 24px;
        width: 24px;
        height: 24px
    }
    .js-electionSearch .pickup-nav-btn.is-next {
        margin-right: 5px;
        margin-left: -5px
    }
    .js-electionSearch #electionSearch-search .t-7{
        font-size: 110%;
    }

    .js-electionSearch #electionSearch-search .btn{
        font-size: 1.1vw;
    }
    .js-electionSearch .form.is-limit-pc {
        max-width: 800px;
        margin: 0 auto
    }
    .js-electionSearch .form-btn {
        -webkit-transition: background .25s, color .25s;
        transition: background .25s, color .25s
    }
    .js-electionSearch .form-btn:hover {
        background-color: #2d2b2b;
        color: #fff
    }
    .js-electionSearch .form-btn:hover .form-btn-ico.svg-ico {
        fill: #fff
    }
    .js-electionSearch .form-content-query {
        width: 100%;
        left: 0;
    }
    .js-electionSearch .form-content-query .btn{
        border: none;
        border-radius: 0;
        padding: .9em 1.25em;
        color: #fff;
        background: #4a4a4a;
        transition: opacity 0.3s linear 0s;
    }
    .js-electionSearch .form-content-query .btn:hover {
        border: none;
        color: #fff;
        background: #4a4a4a;
        opacity: 0.7;
    }
    .js-electionSearch .form.is-col {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .form.is-col, .js-electionSearch .form.is-col .form-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .form.is-col .form-content {
        position: relative;
        width: calc(100% - 12em);
        margin: 0 auto 0 0
    }
    .js-electionSearch .form.is-col .form-content.is-single {
        width: 100%;
        margin: auto;
        max-width: 800px
    }
    .js-electionSearch .form.is-col .form-option {
        margin: auto 0 auto auto;
        width: 12em
    }
    .js-electionSearch .form-select {
        width: 9.3em;
        font-size: 90%
    }
    .js-electionSearch .form-select.is-prefecture {
        width: 13em
    }
    .js-electionSearch .form-select-wrap+div {
        margin-left: 1em
    }
    .js-electionSearch .form-tag {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .form-tag, .js-electionSearch .form-tag-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .form-option {
        margin: auto
    }
    .js-electionSearch .form-pickup {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .form-pickup .form-option {
        margin: auto 0 auto auto
    }
    .js-electionSearch .btn {
        -webkit-transition: background .25s, border .25s, color .25s;
        transition: background .25s, border .25s, color .25s
    }
    .js-electionSearch .btn.is-hover, .js-electionSearch .btn:hover {
        background-color: #2d2b2b;
        border-color: #2d2b2b;
        color: #fff
    }
    .js-electionSearch .btn.is-hover .svg-ico, .js-electionSearch .btn:hover .svg-ico {
        fill: #fff
    }
    .js-electionSearch .bgc-b .btn.is-hover, .js-electionSearch .bgc-b .btn:hover {
        background-color: #fff;
        border-color: #fff;
        color: #2d2b2b
    }
    .js-electionSearch .bgc-b .btn.is-hover .svg-ico, .js-electionSearch .bgc-b .btn:hover .svg-ico {
        fill: #2d2b2b
    }
    .js-electionSearch .btn.is-w:hover {
        background-color: #2d2b2b;
        border-color: #2d2b2b;
        color: #fff
    }
    .js-electionSearch .btn.is-w:hover .svg-ico {
        fill: #fff
    }
    .js-electionSearch .btn.is-b:hover, .js-electionSearch .btn.is-nicovideo:hover {
        background-color: transparent;
        border-color: #2d2b2b;
        color: #2d2b2b
    }
    .js-electionSearch .btn.is-b:hover .svg-ico, .js-electionSearch .btn.is-nicovideo:hover .svg-ico {
        fill: #2d2b2b
    }
    .js-electionSearch .btn.is-g:hover {
        background-color: transparent;
        border-color: #2d2b2b;
        color: #2d2b2b
    }
    .js-electionSearch .btn.is-g:hover .svg-ico {
        fill: #2d2b2b
    }
    .js-electionSearch .btn.isnt-line:hover {
        border-color: transparent;
        background-color: rgba(0, 0, 0, .05);
        color: #2d2b2b
    }
    .js-electionSearch .btn.isnt-line:hover .svg-ico {
        fill: #2d2b2b
    }
    .js-electionSearch .btn.is-l {
        padding: .7em 4em
    }
    .js-electionSearch .btn.is-hl {
        padding-top: 1.75em;
        padding-bottom: 1.75em
    }
    .js-electionSearch .btn.is-facebook:hover {
        background-color: transparent;
        border-color: #1877f2;
        color: #1877f2
    }
    .js-electionSearch .btn.is-facebook:hover .svg-ico {
        fill: #1877f2
    }
    .js-electionSearch .btn.is-twitter:hover {
        background-color: transparent;
        border-color: #1da1f2;
        color: #1da1f2
    }
    .js-electionSearch .btn.is-twitter:hover .svg-ico {
        fill: #1da1f2
    }
    .js-electionSearch .btn.is-youtube:hover {
        background-color: transparent;
        border-color: red;
        color: red
    }
    .js-electionSearch .btn.is-youtube:hover .svg-ico {
        fill: red
    }
    .js-electionSearch .btn.is-instagram:hover {
        background-color: transparent;
        border-color: #833ab4;
        color: #833ab4;
        background-image: none
    }
    .js-electionSearch .btn.is-instagram:hover .svg-ico {
        fill: #833ab4
    }
    .js-electionSearch .btn.is-line:hover {
        background-color: transparent;
        border-color: #00b900;
        color: #00b900
    }
    .js-electionSearch .btn.is-line:hover .svg-ico {
        fill: #00b900
    }
    .js-electionSearch .btn.is-red:hover {
        background-color: transparent;
        border-color: #d7003a;
        color: #d7003a
    }
    .js-electionSearch .btn.is-red:hover .svg-ico {
        fill: #d7003a
    }
    .js-electionSearch .btn-cover .photo-member {
        -webkit-transition: border-color .25s;
        transition: border-color .25s
    }
    .js-electionSearch .btn-cover .btn-member-cover {
        -webkit-transition: -webkit-transform .25s;
        transition: -webkit-transform .25s;
        transition: transform .25s;
        transition: transform .25s, .js-electionSearch -webkit-transform .25s
    }
    .js-electionSearch .btn-cover-hover {
        -webkit-transition: opacity .25s, -webkit-transform .5s ease;
        transition: opacity .25s, -webkit-transform .5s ease;
        transition: transform .5s ease, opacity .25s;
        transition: transform .5s ease, opacity .25s, -webkit-transform .5s ease
    }
    .js-electionSearch .btn-cover-txt {
        -webkit-transition: color .25s;
        transition: color .25s
    }
    .js-electionSearch .btn-cover-border {
        -webkit-transition: color .25s, border-color .25s;
        transition: color .25s, border-color .25s
    }
    .js-electionSearch .btn-cover-download {
        overflow: visible !important;
        -webkit-transition: opacity .25s, -webkit-filter .25s, -webkit-transform .25s ease;
        transition: opacity .25s, -webkit-filter .25s, -webkit-transform .25s ease;
        transition: filter .25s, transform .25s ease, opacity .25s;
        transition: filter .25s, transform .25s ease, opacity .25s, -webkit-filter .25s, -webkit-transform .25s ease
    }
    .js-electionSearch .is-ie .btn-cover-download:after {
        position: absolute;
        z-index: 1;
        display: block;
        content: " ";
        width: 110%;
        height: 110%;
        top: -1%;
        left: -5%;
        opacity: 0
    }
    .js-electionSearch .is-ie .btn-cover-download.is-a:after {
        width: 80%;
        left: 10%
    }
    .js-electionSearch .is-ie .btn-cover-download.is-aw:after {
        height: 80%;
        top: 14%
    }
    .js-electionSearch .is-ie .btn-cover-download .photo-cover {
        z-index: 2
    }
    .js-electionSearch .btn-cover:hover .photo-member {
        border-color: #d7003a !important
    }
    .js-electionSearch .btn-cover:hover .btn-cover-hover, .js-electionSearch .btn-cover:hover .btn-member-cover {
        -webkit-transform: scale(1.02);
        transform: scale(1.02)
    }
    .js-electionSearch .btn-cover:hover .btn-cover-hover {
        opacity: .8
    }
    .js-electionSearch .btn-cover:hover .btn-cover-txt {
        color: #d7003a
    }
    .js-electionSearch .btn-cover:hover .btn-cover-border {
        color: #d7003a;
        border-color: #d7003a
    }
    .js-electionSearch .btn-cover:hover .btn-cover-download {
        -webkit-transform: scale(1.02);
        transform: scale(1.02);
        -webkit-filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .2));
        filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .2))
    }
    .js-electionSearch .is-ie .btn-cover:hover .btn-cover-download:after {
        opacity: 1
    }
    .js-electionSearch .btn-thumb:hover .btn-thumb-photo {
        opacity: .9;
        -webkit-transform: scale(1.05);
        transform: scale(1.05)
    }
    .js-electionSearch .btn-thumb:hover .tag.is-wa {
        background-color: rgba(45, 43, 43, .5)
    }
    .js-electionSearch .btn-thumb-category {
        padding: 1em
    }
    .js-electionSearch .btn-ico {
        padding: 0 1vw 1vw;
        -webkit-transition: background .25s, border .25s, color .25s;
        transition: background .25s, border .25s, color .25s
    }
    .js-electionSearch .btn-ico:before {
        position: absolute;
        display: block;
        content: " ";
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 0;
        background-color: rgba(0, 0, 0, .05);
        -webkit-transform: scale(.9);
        transform: scale(.9);
        opacity: 0;
        -webkit-transition: opacity .25s, -webkit-transform .25s ease;
        transition: opacity .25s, -webkit-transform .25s ease;
        transition: transform .25s ease, opacity .25s;
        transition: transform .25s ease, opacity .25s, -webkit-transform .25s ease
    }
    .js-electionSearch .bgc-g .btn-ico:before {
        background-color: #fff
    }
    .js-electionSearch .btn-ico:hover:before {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    .js-electionSearch .btn-ico.is-l {
        padding: 1vw 1.5vw
    }
    .js-electionSearch .btn-ico-img {
        width: 90%
    }
    .js-electionSearch .btn-ico-img.is-limit {
        max-width: 140px
    }
    .js-electionSearch .btn-txt {
        -webkit-transition: opacity .25s;
        transition: opacity .25s
    }
    .js-electionSearch .btn-txt:hover {
        opacity: .8
    }
    .js-electionSearch .btn-link:hover .btn-link-label, .js-electionSearch .btn-link:hover .btn-link-label .nowrap {
        text-decoration: underline
    }
    .js-electionSearch .btn-badge:hover .btn-badge-img {
        opacity: .7
    }
    .js-electionSearch .btn-badge-img {
        -webkit-transition: opacity .25s;
        transition: opacity .25s;
        max-width: 200px !important
    }
    .js-electionSearch .btn-file {
        padding: 1.25vw;
        -webkit-transition: background-color .25s;
        transition: background-color .25s
    }
    .js-electionSearch .btn-file:before {
        position: absolute;
        display: block;
        content: " ";
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(45, 43, 43, .05);
        -webkit-transform: scale(.95);
        transform: scale(.95);
        opacity: 0;
        -webkit-transition: opacity .25s, -webkit-transform .25s ease-out;
        transition: opacity .25s, -webkit-transform .25s ease-out;
        transition: transform .25s ease-out, opacity .25s;
        transition: transform .25s ease-out, opacity .25s, -webkit-transform .25s ease-out
    }
    .js-electionSearch .btn-file:hover:before {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1
    }
    .js-electionSearch .btn-file.is-s {
        padding: .25em 1em
    }
    .js-electionSearch .btn-file-ico {
        width: 65px
    }
    .js-electionSearch .btn-file.is-s .btn-file-ico {
        width: 40px
    }
    .js-electionSearch .btn-file-data {
        width: calc(100% - 45px)
    }
    .js-electionSearch .btn-file.is-s .btn-file-data {
        width: auto
    }
    .js-electionSearch .btn-other-img {
        -webkit-transition: opacity .25s, -webkit-transform .25s ease-out;
        transition: opacity .25s, -webkit-transform .25s ease-out;
        transition: opacity .25s, transform .25s ease-out;
        transition: opacity .25s, transform .25s ease-out, -webkit-transform .25s ease-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden
    }
    .js-electionSearch .btn-other-img:before {
        content: " ";
        position: absolute;
        top: 5%;
        left: 5%;
        display: block;
        width: 90%;
        height: 90%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        border: 1px solid #d7003a;
        border-radius: 100%;
        -webkit-transition: opacity .5s, -webkit-transform .5s ease-out;
        transition: opacity .5s, -webkit-transform .5s ease-out;
        transition: opacity .5s, transform .5s ease-out;
        transition: opacity .5s, transform .5s ease-out, -webkit-transform .5s ease-out
    }
    .js-electionSearch .btn-other.is-facebook .btn-other-img:before {
        border-color: #1877f2
    }
    .js-electionSearch .btn-other.is-twitter .btn-other-img:before {
        border-color: #1da1f2
    }
    .js-electionSearch .btn-other.is-line .btn-other-img:before {
        border-color: #00b900
    }
    .js-electionSearch .btn-other.is-instagram .btn-other-img:before {
        border-color: #833ab4
    }
    .js-electionSearch .btn-other.is-nicovideo .btn-other-img:before {
        border-color: #333
    }
    .js-electionSearch .btn-other-img.is-sub:before {
        display: none !important;
        opacity: 0
    }
    .js-electionSearch .btn-other {
        width: 8em
    }
    .js-electionSearch .btn-other:hover .btn-other-img {
        opacity: .75;
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
    .js-electionSearch .btn-other:hover .btn-other-img:before {
        opacity: 0;
        -webkit-transform: scale(1.5);
        transform: scale(1.5)
    }
    .js-electionSearch .btn-other:hover .btn-other-img.is-sub {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    .js-electionSearch .btn-member.is-s {
        max-width: 11em;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .btn-member.is-s.is-s {
        max-width: auto
    }
    .js-electionSearch .btn-member .btn-member-cover {
        -webkit-transition: opacity .25s, -webkit-transform .25s ease-out;
        transition: opacity .25s, -webkit-transform .25s ease-out;
        transition: opacity .25s, transform .25s ease-out;
        transition: opacity .25s, transform .25s ease-out, -webkit-transform .25s ease-out
    }
    .js-electionSearch .btn-member:hover .btn-member-cover {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
    .js-electionSearch .btn-member:hover .btn-member-photo {
        border-color: #d7003a
    }
    .js-electionSearch .btn-member-photo {
        margin: auto;
        width: 60%
    }
    .js-electionSearch .btn-member.is-single .btn-member-photo {
        width: 90%;
        margin: auto;
        text-align: center
    }
    .js-electionSearch .btn-member-data {
        width: 90%;
        margin: 10px auto 0;
        text-align: center;
    }
    .js-electionSearch .is-ie .btn-member-data {
        height: 100%
    }
    .js-electionSearch .btn-member.is-single .btn-member-data {
        width: 100%;
        text-align: center
    }
    .js-electionSearch .btn-member-txt {
        -webkit-transition: opacity .25s;
        transition: opacity .25s
    }
    .js-electionSearch .btn-member-txt:hover .btn-member-txt-label {
        text-decoration: none;
        opacity: .7
    }
    .js-electionSearch .btn-member-txt:hover.isnt-link {
        opacity: 1
    }
    .js-electionSearch .btn-schedule {
        -webkit-transition: color .25s, background-color .25s;
        transition: color .25s, background-color .25s
    }
    .js-electionSearch .btn-schedule:hover {
        color: #fff;
        background-color: rgba(45, 43, 43, .05)
    }
    .js-electionSearch .btn-schedule.is-movie:hover {
        background-color: #fdb242
    }
    .js-electionSearch .btn-schedule {
        padding: 1em;
        margin: 2px
    }
    .js-electionSearch .btn-sitemap:hover .nowrap, .js-electionSearch .btn-sitemap:hover .t-6, .js-electionSearch .btn-sitemap:hover .t-s {
        text-decoration: underline
    }
    .js-electionSearch .photo.is-title {
        max-width: 160px;
        width: 15%
    }
    .js-electionSearch .photo-member {
        max-width: 220px
    }
    .js-electionSearch .photo-member.is-page {
        max-width: none
    }
    .js-electionSearch .photo-ico {
        width: 50px;
        margin-top: -25px;
        margin-left: -25px
    }
    .js-electionSearch .photo-cover.is-h-pc {
        width: auto;
        height: 100%;
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%);
        transform: translate(-50%)
    }
    .js-electionSearch .bgc-b .tool .tool-btn:hover {
        color: #fff;
        opacity: .5
    }
    .js-electionSearch .tool .l-content-col {
        padding: 0 5%
    }
    .js-electionSearch .tool-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .tool-nav.is-4-pc .tool-btn {
        width: 25%
    }
    .js-electionSearch .tool-nav.is-fixw-pc .tool-btn {
        width: 100%
    }
    .js-electionSearch .tool-menu {
        display: none
    }
    .js-electionSearch .tool-btn {
        padding: 1em .75em;
        -webkit-box-flex: 2;
        -ms-flex-positive: 2;
        flex-grow: 2;
        white-space: nowrap;
        -webkit-transition: color .25s, opacity .25s;
        transition: color .25s, opacity .25s;
        font-size: 87.5%
    }
    .js-electionSearch .tool-btn:hover {
        color: #d7003a
    }
    .js-electionSearch .tool-btn:hover:after {
        width: 80%
    }
    .js-electionSearch .news-tag {
        padding: .95em .5em;
        text-align: right;
        width: 8.7em
    }
    .js-electionSearch .news-tag .g-btn-tag {
        margin: 0 .25em .5em 0
    }
    .js-electionSearch .news-header {
        width: 9.25em;
        white-space: nowrap
    }
    .js-electionSearch .news-body, .js-electionSearch .news-header {
        padding: 1em .5em
    }
    .js-electionSearch .news-btn:hover {
        text-decoration: underline
    }
    .js-electionSearch .news-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .news-nav:hover {
        background-color: rgba(215, 0, 58, .02)
    }
    .js-electionSearch .news-txt {
        padding: .5em .5em 1.5em
    }
    .js-electionSearch .news-campaign1 {
        color: #fff;
        padding: 2em;
        min-height: 180px
    }
    .js-electionSearch .news-campaign2 {
        padding: 2em;
        min-height: 180px
    }
    .js-electionSearch .list-tag {
        padding: 1em .5em;
        text-align: left;
        width: 13em
    }
    .js-electionSearch .list-tag .tag {
        display: block;
        text-align: center;
        margin: -.25em 0
    }
    .js-electionSearch .list-header {
        padding: 1em .5em;
        width: 9.25em;
        white-space: nowrap
    }
    .js-electionSearch .list-header.is-campaign {
        width: 6em
    }
    .js-electionSearch .list-header.is-auto {
        width: auto
    }
    .js-electionSearch .list-body {
        padding: 1em .5em
    }
    .js-electionSearch .list-btn:hover {
        text-decoration: underline
    }
    .js-electionSearch .list-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .list-nav:hover {
        background-color: rgba(215, 0, 58, .02)
    }
    .js-electionSearch .list-txt {
        padding: .5em .5em 1.5em
    }
    .js-electionSearch .list-ico-item {
        margin: 0 .75em 2em
    }
    .js-electionSearch .list-member.is-3-pc .list-li {
        width: 33.333% !important
    }
    .js-electionSearch .list-member.is-2-pc .list-li {
        width: 36% !important
    }
    .js-electionSearch .list-member.is-search .list-li {
        width: 50% !important;
        padding-right: .25em !important;
        padding-left: .25em !important
    }
    .js-electionSearch .list-member .list-li {
        padding-right: 1em
    }
    .js-electionSearch .list-link .list-li, .js-electionSearch .list-member .list-li {
        width: 25%;
        text-align: left
    }
    .js-electionSearch .list-promise {
        margin-top: -1.5em
    }
    .js-electionSearch .list-promise .list-li {
        margin-top: 1.5em;
        padding: .75em 0 .75em 1vw
    }
    .js-electionSearch .list-search .list-li {
        padding: 2em 0
    }
    .js-electionSearch .tag.is-btn:hover {
        background-color: #2d2b2b;
        color: #fff
    }
    .js-electionSearch .post dd, .js-electionSearch .post li, .js-electionSearch .post p, .js-electionSearch .post td, .js-electionSearch .post th {
        font-size: 100%;
        line-height: 1.85
    }
    .js-electionSearch .post h2 {
        font-size: 140.6%
    }
    .js-electionSearch .post h3 {
        font-size: 112.5%
    }
    .js-electionSearch .post .answer dt, .js-electionSearch .post .question dt {
        width: 4em
    }
    .js-electionSearch .post .answer dd, .js-electionSearch .post .question dd {
        width: calc(100% - 5em)
    }
    .js-electionSearch .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .js-electionSearch .note-txt {
        margin: 0 auto auto 0
    }
    .js-electionSearch .note-link {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 3%;
        text-align: right;
        margin: 0 0 auto
    }
    .js-electionSearch .declaration {
        width: 100%
    }
    .js-electionSearch .col.is-note {
        padding: 2.5vw
    }
    .js-electionSearch .col.is-note-s {
        padding: 1.25vw
    }
    .js-electionSearch .col.is-movie {
        padding: 2.5vw
    }
    .js-electionSearch .table-td, .js-electionSearch .table-th {
        padding: .75em 1em
    }
    .js-electionSearch .table.is-address .table-td, .js-electionSearch .table.is-address .table-th {
        padding: .75em 0
    }
    .js-electionSearch .table-th.is-member, .js-electionSearch .table-th.is-os {
        width: 10em
    }
    .js-electionSearch .table-th.is-member-l {
        width: 20em
    }
    .js-electionSearch .table-th.is-member-m {
        width: 12em
    }
    .js-electionSearch .table-th.is-member-s, .js-electionSearch .table-th.is-minister-s, .js-electionSearch .table-th.is-officer-s {
        width: 8em
    }
    .js-electionSearch .table-td.is-officer-data {
        width: 65%
    }
    .js-electionSearch .table-td.is-minister-data {
        width: 52%
    }
    .js-electionSearch .history-photo-1 {
        top: -2%;
        right: 0;
        width: 24%
    }
    .js-electionSearch .history-photo-2 {
        top: 10%;
        right: 8%;
        width: 40%
    }
    .js-electionSearch .history-photo-3 {
        top: 50%;
        right: 2%;
        width: 20%
    }
    .js-electionSearch .history-photo-4 {
        top: 10%;
        right: 40%;
        width: 16%
    }
    .js-electionSearch .calendar-nav-title {
        font-size: 274.7%;
        line-height: 1.5
    }
    .js-electionSearch .calendar-btn, .js-electionSearch .calendar-nav-mode .calendar-btn {
        font-size: 93.8%
    }
    .js-electionSearch .calendar-btn:hover {
        background-color: #d7003a !important;
        color: #fff;
        opacity: 1
    }
    .js-electionSearch .calendar-btn:hover .svg-ico {
        fill: #fff
    }
    .js-electionSearch .calendar-btn.is-next .ico-arrow-l-s, .js-electionSearch .calendar-btn.is-prev .ico-arrow-l-s {
        margin-left: -.5em
    }
    .js-electionSearch .calendar-week {
        font-size: 87.5%
    }
    .js-electionSearch .calendar-day .calendar-btn {
        font-size: 93.8%
    }
    .js-electionSearch .calendar-schedule-data {
        padding: 1em 8em 1em 1em;
        width: calc(100% - 3em)
    }
    .js-electionSearch .calendar-schedule-data.is-cafesta .btn.is-hover, .js-electionSearch .calendar-schedule-data.is-cafesta .btn:hover {
        background-color: #fdb242;
        border-color: #fdb242
    }
    .js-electionSearch .calendar-schedule-data.is-media .btn.is-hover, .js-electionSearch .calendar-schedule-data.is-media .btn:hover {
        background-color: #ff468f;
        border-color: #ff468f
    }
    .js-electionSearch .calendar-schedule-data.is-conference .btn.is-hover, .js-electionSearch .calendar-schedule-data.is-conference .btn:hover {
        background-color: #33ace1;
        border-color: #33ace1
    }
    .js-electionSearch .calendar-schedule-title {
        width: 15em;
        padding-right: 2em;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }
    .js-electionSearch .calendar-schedule-body {
        width: calc(100% - 5em)
    }
    .js-electionSearch .calendar-schedule-btn {
        top: 1em;
        right: 1em
    }
    .js-electionSearch .is-ie .calendar-schedule-btn {
        top: .8em
    }
    .js-electionSearch .calendar-subbtn {
        font-size: 68.8%;
        padding: .75em
    }
    .js-electionSearch .calendar-container.is-timeline .calendar-info {
        width: 450px
    }
    .js-electionSearch .calendar-info {
        font-size: 87.5%;
        padding: 1.25em;
        width: 200%;
        border-radius: 10px
    }
    .js-electionSearch .calendar-info .calendar-closebtn {
        padding: .65em;
        font-size: 20px
    }
    .js-electionSearch .calendar-info-data {
        max-height: 16em
    }
    .js-electionSearch .pager-btn {
        -webkit-transition: background .25s, border .25s, color .25s;
        transition: background .25s, border .25s, color .25s
    }
    .js-electionSearch .pager-btn:hover {
        background-color: #d7003a;
        color: #fff
    }
    .js-electionSearch .pager-btn:hover .svg-ico {
        fill: #fff
    }
    .js-electionSearch .pager-btn .svg-ico-l {
        margin: auto .25em auto -.25em
    }
    .js-electionSearch .pager-btn .svg-ico-r {
        margin: auto -.25em auto .25em
    }
    .js-electionSearch .schedule-table {
        table-layout: fixed
    }
    .js-electionSearch .schedule-table-tr {
        position: relative
    }
    .js-electionSearch .schedule-table-th {
        font-size: 87.5%;
        text-align: center;
        height: 3em;
        border-top: 2px solid #2d2b2b;
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-table-td {
        border-right: 1px solid #eee;
        border-top: 1px solid #eee;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        height: 100%;
        vertical-align: top
    }
    .js-electionSearch .schedule-table-td .btn-schedule {
        display: block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        min-height: calc(100% - 1vw);
        margin: .5vw
    }
    .js-electionSearch .schedule-table-td:last-child {
        border-right: none
    }
    .js-electionSearch .schedule-table-td.isnt-bdt {
        border-top: none
    }
    .js-electionSearch .schedule-table-td.isnt-bdt .btn-schedule {
        margin-top: 0
    }
    .js-electionSearch .schedule {
        grid-template-columns: 20% 20% 20% 20% 20%;
        grid-template-rows: 3em auto auto
    }
    .js-electionSearch .schedule-header {
        min-height: 3em;
        border-top: 2px solid #2d2b2b;
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-header1 {
        grid-column: 1/2;
        grid-row: 1/2
    }
    .js-electionSearch .schedule-header2 {
        grid-column: 2/3;
        grid-row: 1/2
    }
    .js-electionSearch .schedule-header3 {
        grid-column: 3/4;
        grid-row: 1/2
    }
    .js-electionSearch .schedule-header4 {
        grid-column: 4/5;
        grid-row: 1/2
    }
    .js-electionSearch .schedule-header5 {
        grid-column: 5/6;
        grid-row: 1/2
    }
    .js-electionSearch .schedule-header {
        font-size: 87.5%
    }
    .js-electionSearch .schedule-item .btn-schedule {
        margin: .5vw;
        width: calc(100% - 1vw - 4px);
        height: calc(100% - 1vw - 4px)
    }
    .js-electionSearch .schedule-item .btn-schedule.is-pc-h {
        min-height: calc(50% - 1vw - 4px);
        height: auto
    }
    .js-electionSearch .schedule-item {
        border-right: 1px solid #eee;
        border-bottom: 1px solid #eee
    }
    .js-electionSearch .schedule-item1 {
        grid-column: 1/2
    }
    .js-electionSearch .schedule-item2 {
        grid-column: 2/3
    }
    .js-electionSearch .schedule-item3 {
        grid-column: 3/4
    }
    .js-electionSearch .schedule-item4 {
        grid-column: 4/5
    }
    .js-electionSearch .schedule-item5 {
        border-right: none;
        grid-column: 5/6
    }
    .js-electionSearch .schedule-item-blank {
        grid-row: 2/100
    }
    .js-electionSearch .schedule-group1 {
        grid-row: 2/3
    }
    .js-electionSearch .schedule-group2 {
        grid-row: 3/4
    }
    .js-electionSearch .friendly-img-t1 {
        width: 40%;
        top: -5%;
        left: -3vw
    }
    .js-electionSearch .friendly-img-t2 {
        width: 20%;
        top: 20%;
        right: -2vw
    }
    .js-electionSearch .friendly-img-b1 {
        width: 30%;
        bottom: 20%;
        left: 0
    }
    .js-electionSearch .friendly-img-b2 {
        width: 40%;
        bottom: -2%;
        right: -2vw
    }
    .js-electionSearch .president-line {
        left: 50%
    }
    .js-electionSearch .president-clear {
        width: 100%;
        height: 1px;
        clear: both
    }
    .js-electionSearch .president-left, .js-electionSearch .president-right {
        position: relative;
        width: 40%;
        margin-top: 3vw;
        margin-bottom: 3vw
    }
    .js-electionSearch .president-left {
        float: left
    }
    .js-electionSearch .president-left .president-year {
        width: 50%;
        left: 100%
    }
    .js-electionSearch .president-left .president-year-line {
        left: -98%;
        top: 1.5em
    }
    .js-electionSearch .president-right {
        float: right
    }
    .js-electionSearch .president-right .president-year {
        width: 50%;
        right: 100%
    }
    .js-electionSearch .president-right .president-year-line {
        width: 50%;
        right: -50%;
        top: 1.5em
    }
    .js-electionSearch .president-center {
        position: relative;
        margin: 6em auto 0;
        clear: both;
        width: 60%
    }
    .js-electionSearch .president-center .president-year {
        width: 50%;
        position: relative;
        margin: 0 auto .5em
    }
    .js-electionSearch .president-center .president-year-line {
        display: none
    }
    .js-electionSearch .president-dummy {
        width: 60%
    }
}

@media (max-width:599px) {
    .js-electionSearch ruby>rt {
        -webkit-transform: scale(.7);
        transform: scale(.7)
    }
    .js-electionSearch .d-b-sp {
        display: block !important
    }
    .js-electionSearch .pc, .js-electionSearch .pc-tb, .js-electionSearch .pc-tb-spl, .js-electionSearch .spl, .js-electionSearch .tb {
        display: none !important
    }
    .js-electionSearch .ord--1-sp, .js-electionSearch .ord--1-tb-sp {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }
    .js-electionSearch .ord-1-sp, .js-electionSearch .ord-1-tb-sp {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    .js-electionSearch .ord-2-sp, .js-electionSearch .ord-2-tb-sp {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
    .js-electionSearch .ord-3-sp, .js-electionSearch .ord-3-tb-sp {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }
    .js-electionSearch .bdt-sp {
        border-top: 2px solid #eee !important
    }
    .js-electionSearch .bdb-sp, .js-electionSearch .bdb-tb-sp {
        border-bottom: 2px solid #eee !important
    }
    .js-electionSearch .ta-c-sp, .js-electionSearch .ta-c-tb-sp {
        text-align: center !important
    }
    .js-electionSearch .ta-l-sp {
        text-align: left !important
    }
    .js-electionSearch .ta-r-sp {
        text-align: right !important
    }
    .js-electionSearch .ta-j-sp {
        text-align: justify !important;
        text-justify: inter-ideograph !important
    }
    .js-electionSearch .pos-r-sp {
        position: relative !important
    }
    .js-electionSearch .pos-s-sp {
        position: static !important
    }
    .js-electionSearch .w-over-sp {
        width: 120% !important;
        margin-left: -10%;
        margin-right: -10%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }
    .js-electionSearch .h-1-sp, .js-electionSearch .h-1-tb-sp {
        height: 100% !important
    }
    .js-electionSearch .mt-sp, .js-electionSearch .mt-tb-sp {
        margin-top: 1em !important
    }
    .js-electionSearch .mt-n-sp, .js-electionSearch .mt-n-tb-sp {
        margin-top: 0 !important
    }
    .js-electionSearch .mt-ss-sp, .js-electionSearch .mt-ss-tb-sp {
        margin-top: .25em !important
    }
    .js-electionSearch .mt-s-sp, .js-electionSearch .mt-s-tb-sp {
        margin-top: .5em !important
    }
    .js-electionSearch .mt-m-sp, .js-electionSearch .mt-m-tb-sp {
        margin-top: 1.25em !important
    }
    .js-electionSearch .mt-header {
        margin-top: 60px
    }
    .js-electionSearch .pt-header {
        padding-top: 60px
    }
    .js-electionSearch .is-disastermessage .pt-header {
        -webkit-transition: padding-top .25s ease-out;
        transition: padding-top .25s ease-out
    }
    .js-electionSearch .is-disastermessage.is-load .pt-header {
        padding-top: calc(60px + 2.5em)
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .pt-header {
        padding-top: 60px
    }
    .js-electionSearch .pt-tool {
        padding-top: 2.4em !important
    }
    .js-electionSearch .mb-sp, .js-electionSearch .mb-tb-sp {
        margin-bottom: 1em !important
    }
    .js-electionSearch .mb-n-sp, .js-electionSearch .mb-n-tb-sp {
        margin-bottom: 0 !important
    }
    .js-electionSearch .mb-ss-sp, .js-electionSearch .mb-ss-tb-sp {
        margin-bottom: .25em !important
    }
    .js-electionSearch .mb-s-sp, .js-electionSearch .mb-s-tb-sp {
        margin-bottom: .5em !important
    }
    .js-electionSearch .mb-s--sp, .js-electionSearch .mb-s--tb-sp {
        margin-bottom: -.5em !important
    }
    .js-electionSearch .mb-sl-sp, .js-electionSearch .mb-sl-tb-sp {
        margin-bottom: .75em !important
    }
    .js-electionSearch .mb-m-sp, .js-electionSearch .mb-m-tb-sp {
        margin-bottom: 1.25em !important
    }
    .js-electionSearch .mb-l-sp, .js-electionSearch .mb-l-tb-sp {
        margin-bottom: 1.5em !important
    }
    .js-electionSearch .mb-ll-sp, .js-electionSearch .mb-ll-tb-sp {
        margin-bottom: 2em !important
    }
    .js-electionSearch .mb-toolnav {
        margin-bottom: 3.5em
    }
    .js-electionSearch .pb-sp, .js-electionSearch .pb-tb-sp {
        padding-bottom: 1em !important
    }
    .js-electionSearch .pb-n-sp, .js-electionSearch .pb-n-tb-sp {
        padding-bottom: 0 !important
    }
    .js-electionSearch .pb-ss-sp, .js-electionSearch .pb-ss-tb-sp {
        padding-bottom: .25em !important
    }
    .js-electionSearch .pb-s-sp, .js-electionSearch .pb-s-tb-sp {
        padding-bottom: .5em !important
    }
    .js-electionSearch .pb-sl-sp, .js-electionSearch .pb-sl-tb-sp {
        padding-bottom: .75em !important
    }
    .js-electionSearch .pb-m-sp, .js-electionSearch .pb-m-tb-sp {
        padding-bottom: 1.25em !important
    }
    .js-electionSearch .pb-l-sp, .js-electionSearch .pb-l-tb-sp {
        padding-bottom: 1.5em !important
    }
    .js-electionSearch .pb-ll-sp, .js-electionSearch .pb-ll-tb-sp {
        padding-bottom: 2em !important
    }
    .js-electionSearch .pr-sp, .js-electionSearch .pr-tb-sp {
        padding-right: 1em !important
    }
    .js-electionSearch .pr-n-sp, .js-electionSearch .pr-n-tb-sp {
        padding-right: 0 !important
    }
    .js-electionSearch .pr-ss-sp, .js-electionSearch .pr-ss-tb-sp {
        padding-right: .25em !important
    }
    .js-electionSearch .pr-s-sp, .js-electionSearch .pr-s-tb-sp {
        padding-right: .5em !important
    }
    .js-electionSearch .pr-sl-sp, .js-electionSearch .pr-sl-tb-sp {
        padding-right: .75em !important
    }
    .js-electionSearch .pr-m-sp, .js-electionSearch .pr-m-tb-sp {
        padding-right: 1.25em !important
    }
    .js-electionSearch .pr-l-sp, .js-electionSearch .pr-l-tb-sp {
        padding-right: 1.5em !important
    }
    .js-electionSearch .pr-ll-sp, .js-electionSearch .pr-ll-tb-sp {
        padding-right: 2em !important
    }
    .js-electionSearch .carousel-next, .js-electionSearch .carousel-prev {
        width: 30px;
        top: 0;
        height: 100%;
        font-size: 30px
    }
    .js-electionSearch .carousel-next:before, .js-electionSearch .carousel-prev:before {
        top: 50%;
        translate: transform(-50%, .js-electionSearch 0)
    }
    .js-electionSearch .carousel-prev {
        left: -22px
    }
    .js-electionSearch .carousel-next {
        right: -22px
    }
    .js-electionSearch .carousel-pointer-btn {
        width: 22.5px;
        height: 22.5px
    }
    .js-electionSearch .carousel-pointer-ico {
        width: 10px;
        height: 10px
    }
    .js-electionSearch .carousel.is-cafesta .carousel-panel, .js-electionSearch .carousel.is-history .carousel-panel {
        padding: 0 2vw
    }
    .js-electionSearch .carousel.is-cafesta .carousel-next .svg-ico, .js-electionSearch .carousel.is-cafesta .carousel-prev .svg-ico {
        top: 20.8vw;
        height: auto
    }
    .js-electionSearch .carousel.is-pickup {
        width: 80%;
        left: 10%
    }
    .js-electionSearch .carousel.is-pickup .carousel-prev {
        left: -32px
    }
    .js-electionSearch .carousel.is-pickup .carousel-next {
        right: -32px
    }
    .js-electionSearch .carousel.is-cover .carousel-next, .js-electionSearch .carousel.is-cover .carousel-prev {
        font-size: 40px;
        width: 40px
    }
    .js-electionSearch .carousel.is-cover .carousel-pointer {
        bottom: 3.5%
    }
    .js-electionSearch .tab-nav.is-4 .tab-list, .js-electionSearch .tab-nav.is-4 .tab-list-other {
        width: 50%
    }
    .js-electionSearch .tab-btn {
        height: 3.5em;
        font-size: 75%
    }
    .js-electionSearch #modalNext, .js-electionSearch #modalPrev {
        width: 40px
    }
    .js-electionSearch .modal-html {
        padding: 0 5px
    }
    .js-electionSearch .l-header {
        position: absolute
    }
    .js-electionSearch .l-header-menu {
        position: fixed
    }
    .js-electionSearch .is-disastermessage .l-header-menu {
        -webkit-transition: top .25s ease-out;
        transition: top .25s ease-out
    }
    .js-electionSearch .is-disastermessage.is-load .l-header-menu {
        top: 2.5em
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .l-header-menu {
        top: 0
    }
    .js-electionSearch .l-header-global {
        padding: 80px 50px 60px 20px;
        width: 300px;
        right: -300px
    }
    .js-electionSearch .l-header.is-menu-open .l-header-global-shadow {
        right: 260px;
        opacity: 1
    }
    .js-electionSearch .is-disastermessage .l-header-global {
        padding-top: calc(60px + 2.5em)
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage .l-header-global {
        padding-top: 80px
    }
    .js-electionSearch .l-banner-container {
        z-index: 5000;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        visibility: hidden;
        pointer-events: none;
        opacity: 0
    }
    .js-electionSearch .l-banner.is-open .l-banner-container {
        visibility: visible;
        pointer-events: auto;
        opacity: 1
    }
    .js-electionSearch .l-banner-bg {
        position: absolute;
        height: 100%;
        width: 100%;
        z-index: 1
    }
    .js-electionSearch .l-banner-main {
        z-index: 2
    }
    .js-electionSearch .l-banner-open {
        z-index: 4002;
        position: fixed;
        top: 70px;
        right: -110px;
        -webkit-transition: right .5s ease-out;
        transition: right .5s ease-out
    }
    .js-electionSearch .l-banner.is-active .l-banner-open {
        right: 0
    }
    .js-electionSearch .l-banner.is-open .l-banner-open {
        display: none
    }
    .js-electionSearch .l-main-fv:before {
        height: 100vh;
        min-height: 140vw;
        max-height: 150vw
    }
    .js-electionSearch .is-ios .l-main-fv:before {
        height: calc(100vh - 75px)
    }
    .js-electionSearch .l-main-photo {
        width: 68.75%
    }
    .js-electionSearch .l-main-photo:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 165.90909%
    }
    .js-electionSearch .l-main-s:before {
        padding-bottom: 100%
    }
    .js-electionSearch .l-main-s:before, .js-electionSearch .l-main-ss:before {
        position: relative;
        width: 100%;
        height: 0
    }
    .js-electionSearch .l-main-ss:before {
        padding-bottom: 60%
    }
    .js-electionSearch .l-content-col {
        padding: 0 6%
    }
    .js-electionSearch .l-content-col:after, .js-electionSearch .l-content-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 20%
    }
    .js-electionSearch .l-content-col.is-b-s:after, .js-electionSearch .l-content-col.is-s:after, .js-electionSearch .l-content-col.is-s:before, .js-electionSearch .l-content-col.is-t-s:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 13.33333%
    }
    .js-electionSearch .l-content-col.is-b-ss:after, .js-electionSearch .l-content-col.is-ss:after, .js-electionSearch .l-content-col.is-ss:before, .js-electionSearch .l-content-col.is-t-ss:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 8.33333%
    }
    .js-electionSearch .l-content-col.is-b-sss:after, .js-electionSearch .l-content-col.is-sss:after, .js-electionSearch .l-content-col.is-sss:before, .js-electionSearch .l-content-col.is-t-sss:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 3.7037%
    }
    .js-electionSearch .l-content-col.is-bottom-sp {
        top: auto;
        bottom: 0;
        -webkit-transform: none;
        transform: none
    }
    .js-electionSearch .l-col:after, .js-electionSearch .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 13.33333%
    }
    .js-electionSearch .l-col.is-l:after, .js-electionSearch .l-col.is-l:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 13.33333% !important
    }
    .js-electionSearch .l-col.is-m:after, .js-electionSearch .l-col.is-m:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 8.33333% !important
    }
    .js-electionSearch .l-col.is-s:after, .js-electionSearch .l-col.is-s:before, .js-electionSearch .l-col .l-col:after, .js-electionSearch .l-col .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 8.33333%
    }
    .js-electionSearch .l-col.is-ss:after, .js-electionSearch .l-col.is-ss:before, .js-electionSearch .l-col .l-col .l-col:after, .js-electionSearch .l-col .l-col .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 3.7037%
    }
    .js-electionSearch .l-col-left, .js-electionSearch .l-col-right {
        max-width: 220px;
        width: 80%;
        margin: 0 auto 2em
    }
    .js-electionSearch .l-grid {
        margin-left: -4%;
        margin-right: -4%;
        width: 108%
    }
    .js-electionSearch .l-grid>.l-grid-col .h-1, .js-electionSearch .l-grid>[class*=l-grid-col-] .h-1 {
        height: auto
    }
    .js-electionSearch .l-grid>[class*=l-grid-col-ms-] .h-1, .js-electionSearch .l-grid>[class*=l-grid-col-s-] .h-1 {
        height: 100% !important
    }
    .js-electionSearch .l-grid.isnt-gutter-sp {
        margin-left: 0;
        margin-right: 0;
        width: 100%
    }
    .js-electionSearch .l-grid.isnt-gutter-sp>.l-grid-col, .js-electionSearch .l-grid.isnt-gutter-sp>[class*=l-grid-col-] {
        padding-right: 0;
        padding-left: 0
    }
    .js-electionSearch .l-grid.is-gutter-s, .js-electionSearch .l-grid.is-gutter-s-sp, .js-electionSearch .l-grid.is-gutter-s-tb-sp {
        margin-left: -2% !important;
        margin-right: -2% !important;
        width: 104%
    }
    .js-electionSearch .l-grid.is-gutter-s-sp>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s-sp>[class*=l-grid-col-], .js-electionSearch .l-grid.is-gutter-s-tb-sp>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s-tb-sp>[class*=l-grid-col-], .js-electionSearch .l-grid.is-gutter-s>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s>[class*=l-grid-col-] {
        padding-right: 2% !important;
        padding-left: 2% !important
    }
    .js-electionSearch .l-grid-col-auto-sp, .js-electionSearch .l-grid-col-auto-tb-sp {
        width: auto !important
    }
    .js-electionSearch .l-grid-col {
        padding-left: 4%;
        padding-right: 4%
    }
    .js-electionSearch .l-grid-col-s-1, .js-electionSearch .l-grid-col-sm-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }
    .js-electionSearch .l-grid-col-s-1, .js-electionSearch .l-grid-col-s-2, .js-electionSearch .l-grid-col-sm-1, .js-electionSearch .l-grid-col-sm-2 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 4%;
        padding-right: 4%
    }
    .js-electionSearch .l-grid-col-s-2, .js-electionSearch .l-grid-col-sm-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }
    .js-electionSearch .l-grid-col-s-3, .js-electionSearch .l-grid-col-sm-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .js-electionSearch .l-grid-col-s-3, .js-electionSearch .l-grid-col-s-4, .js-electionSearch .l-grid-col-sm-3, .js-electionSearch .l-grid-col-sm-4 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 4%;
        padding-right: 4%
    }
    .js-electionSearch .l-grid-col-s-4, .js-electionSearch .l-grid-col-sm-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }
    .js-electionSearch .l-grid-col-s-5, .js-electionSearch .l-grid-col-sm-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }
    .js-electionSearch .l-grid-col-s-5, .js-electionSearch .l-grid-col-s-6, .js-electionSearch .l-grid-col-sm-5, .js-electionSearch .l-grid-col-sm-6 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 4%;
        padding-right: 4%
    }
    .js-electionSearch .l-grid-col-s-6, .js-electionSearch .l-grid-col-sm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .js-electionSearch .l-grid-col-s-7, .js-electionSearch .l-grid-col-sm-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }
    .js-electionSearch .l-grid-col-s-7, .js-electionSearch .l-grid-col-s-8, .js-electionSearch .l-grid-col-sm-7, .js-electionSearch .l-grid-col-sm-8 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 4%;
        padding-right: 4%
    }
    .js-electionSearch .l-grid-col-s-8, .js-electionSearch .l-grid-col-sm-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }
    .js-electionSearch .l-grid-col-s-9, .js-electionSearch .l-grid-col-sm-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }
    .js-electionSearch .l-grid-col-s-9, .js-electionSearch .l-grid-col-s-10, .js-electionSearch .l-grid-col-sm-9, .js-electionSearch .l-grid-col-sm-10 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 4%;
        padding-right: 4%
    }
    .js-electionSearch .l-grid-col-s-10, .js-electionSearch .l-grid-col-sm-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }
    .js-electionSearch .l-grid-col-s-11, .js-electionSearch .l-grid-col-sm-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }
    .js-electionSearch .l-grid-col-s-11, .js-electionSearch .l-grid-col-s-12, .js-electionSearch .l-grid-col-sm-11, .js-electionSearch .l-grid-col-sm-12 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 4%;
        padding-right: 4%
    }
    .js-electionSearch .l-grid-col-s-12, .js-electionSearch .l-grid-col-sm-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .js-electionSearch .l-index {
        margin-left: -1%;
        margin-right: -1%
    }
    .js-electionSearch .l-index-col {
        max-width: 100%;
        padding-left: 1%;
        padding-right: 1%
    }
    .js-electionSearch .l-calendar-day {
        min-height: 5em
    }
    .js-electionSearch .l-calendar-schedule {
        height: 60vh
    }
    .js-electionSearch .l-calendar-schedule-col, .js-electionSearch .l-calendar-timeline {
        min-height: 60vh
    }
    .js-electionSearch .l-calendar-note-other {
        padding-top: .5em
    }
    .js-electionSearch .header {
        -webkit-transition: transform .25s ease-out;
        transition: transform .25s ease-out
    }
    .js-electionSearch .header .header-menu {
        -webkit-transition: background-color .25s ease-out;
        transition: background-color .25s ease-out
    }
    .js-electionSearch .header {
        height: 60px
    }
    .js-electionSearch .is-scroll .header .header-menu {
        background-color: #fff;
        -webkit-box-shadow: 0 0 0 2px rgba(0, 0, 0, .05) !important;
        box-shadow: 0 0 0 2px rgba(0, 0, 0, .05) !important
    }
    .js-electionSearch .header-id {
        width: 110px
    }
    .js-electionSearch .header-id-img {
        width: 90px;
        left: 15px
    }
    .js-electionSearch .header-pickup {
        display: none
    }
    .js-electionSearch .header-tool {
        padding-right: 60px
    }
    .js-electionSearch .header-tool-btn {
        width: 60px;
        height: 60px
    }
    .js-electionSearch .header-tool-ico {
        margin-bottom: -.5em
    }
    .js-electionSearch .header-tool-ico-menu {
        width: 24px;
        margin-top: 14px;
        margin-bottom: 5px
    }
    .js-electionSearch .header-tool-ico-menu:before {
        top: -6px
    }
    .js-electionSearch .header-tool-ico-menu:after {
        bottom: -6px
    }
    .js-electionSearch .header-global-btn {
        font-size: 106.3%
    }
    .js-electionSearch .header-global-btn.is-sub {
        font-size: 68.8%
    }
    .js-electionSearch .header-global-subbtn {
        font-size: 75%
    }
    .js-electionSearch .disastermessage-main {
        top: 70px;
        left: 15px;
        right: 15px;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
    .js-electionSearch .footer-corp {
        padding: 30px 4%;
        text-align: center
    }
    .js-electionSearch .footer-btn {
        font-size: 68.8%;
        padding: .5em
    }
    .js-electionSearch .footer-item {
        padding: .25em
    }
    .js-electionSearch .footer-nav {
        display: none
    }
    .js-electionSearch .footer-copy {
        margin-top: 1.5em;
        font-size: 68.8%
    }
    .js-electionSearch .pagenav-btn {
        width: 46px;
        height: 46px;
        border-radius: 23px;
        top: 0
    }
    .js-electionSearch .pagenav-btn .svg-ico {
        top: 7px;
        left: 7px;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 32px;
        width: 32px;
        height: 32px
    }
    .js-electionSearch .pagenav-list {
        padding: 10px
    }
    .js-electionSearch .post .t, .js-electionSearch .t {
        font-size: 93.8%;
        line-height: 1.85
    }
    .js-electionSearch .post .t-s, .js-electionSearch .t-s {
        font-size: 81.3%;
        line-height: 1.7
    }
    .js-electionSearch .post .t-s-sp, .js-electionSearch .t-s-sp {
        font-size: 81.3% !important;
        line-height: 1.7 !important
    }
    .js-electionSearch .post .t-ss, .js-electionSearch .t-ss {
        font-size: 75%;
        line-height: 1.5
    }
    .js-electionSearch .post .t-ss-sp, .js-electionSearch .t-ss-sp {
        font-size: 75% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-main, .js-electionSearch .t-main {
        font-size: 156%;
        line-height: 1.5;
        margin-bottom: .3em
    }
    .js-electionSearch .post .t-0, .js-electionSearch .t-0 {
        font-size: 300.4%
    }
    .js-electionSearch .post .t-0-sp, .js-electionSearch .t-0-sp {
        font-size: 300.4% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-1, .js-electionSearch .t-1 {
        font-size: 240.3%
    }
    .js-electionSearch .post .t-1-sp, .js-electionSearch .t-1-sp {
        font-size: 240.3% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-2, .js-electionSearch .t-2 {
        font-size: 192.3%
    }
    .js-electionSearch .post .t-2-sp, .js-electionSearch .t-2-sp {
        font-size: 192.3% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-3, .js-electionSearch .t-3 {
        font-size: 175.8%
    }
    .js-electionSearch .post .t-3-sp, .js-electionSearch .t-3-sp {
        font-size: 175.8% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-4, .js-electionSearch .t-4 {
        font-size: 140.7%
    }
    .js-electionSearch .post .t-4-sp, .js-electionSearch .t-4-sp {
        font-size: 140.7% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-5, .js-electionSearch .t-5 {
        font-size: 112.5%
    }
    .js-electionSearch .post .t-5-sp, .js-electionSearch .t-5-sp {
        font-size: 112.5% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-6, .js-electionSearch .t-6 {
        font-size: 95.6%
    }
    .js-electionSearch .post .t-6-sp, .js-electionSearch .t-6-sp {
        font-size: 95.6% !important;
        line-height: 1.4 !important
    }
    .js-electionSearch .post .t-7, .js-electionSearch .t-7 {
        font-size: 76.5%
    }
    .js-electionSearch .post .t-7-sp, .js-electionSearch .t-7-sp {
        font-size: 76.5% !important;
        line-height: 1.3 !important
    }
    .js-electionSearch .post .t-category, .js-electionSearch .t-category {
        font-size: 237.5%
    }
    .js-electionSearch .post .t-display, .js-electionSearch .t-display {
        font-size: 5vw
    }
    .js-electionSearch .post .t-line, .js-electionSearch .t-line {
        padding: 0 2em
    }
    .js-electionSearch .post .t-line-txt, .js-electionSearch .t-line-txt {
        padding: 0 .25em
    }
    .js-electionSearch .nowrap-sp, .js-electionSearch .nowrap-tb-sp {
        display: inline-block;
        white-space: nowrap;
        text-decoration: inherit
    }
    .js-electionSearch .ruby:before {
        -webkit-transform: scale(.8);
        transform: scale(.8);
        margin: 0 -4px
    }
    .js-electionSearch .main-video {
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 150%
    }
    .js-electionSearch .main-video:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 133.33333%
    }
    .js-electionSearch .main-cover {
        bottom: 0;
        left: 0;
        height: 45%;
        width: 100%;
        background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(25%, rgba(0, 0, 0, .2)), to(rgba(0, 0, 0, .4)));
        background: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .4));
        background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, .2) 25%, rgba(0, 0, 0, .4))
    }
    .js-electionSearch .main-txt {
        padding: 0 6%
    }
    .js-electionSearch .main-txt.pt-tool.is-ja {
        top: 52%
    }
    .js-electionSearch .main-txt.is-bottom-sp {
        top: auto;
        bottom: 0;
        -webkit-transform: none;
        transform: none;
        padding-bottom: 5vw
    }
    .js-electionSearch .main.is-pickup .main-txt {
        padding-bottom: 90px
    }
    .js-electionSearch .main-txt-home {
        padding: 0 6%;
        text-align: left;
        top: 15.6%
    }
    .js-electionSearch .main-title {
        font-size: 287.5%
    }
    .js-electionSearch .main-sub {
        font-size: 106.3%
    }
    .js-electionSearch .main-play {
        font-size: 200%;
        margin-bottom: .3em
    }
    .js-electionSearch .main-pickup {
        left: 6%;
        right: 6%;
        bottom: 4vw
    }
    .js-electionSearch .banner {
        width: 100%
    }
    .js-electionSearch .banner-title {
        font-size: 118.8%
    }
    .js-electionSearch .banner-container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .banner-bg {
        opacity: 0;
        -webkit-transition: opacity .25s;
        transition: opacity .25s;
        background-color: rgba(0, 0, 0, .9)
    }
    .js-electionSearch .banner.is-open .banner-bg {
        opacity: 1
    }
    .js-electionSearch .banner-main {
        width: 90%;
        opacity: 0;
        -webkit-transition: opacity .5s .25s, -webkit-transform .5s ease-out .25s;
        transition: opacity .5s .25s, -webkit-transform .5s ease-out .25s;
        transition: opacity .5s .25s, transform .5s ease-out .25s;
        transition: opacity .5s .25s, transform .5s ease-out .25s, -webkit-transform .5s ease-out .25s;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
        border-radius: 5px
    }
    .js-electionSearch .banner.is-open .banner-main {
        opacity: 1;
        -webkit-transform: translate(0);
        transform: translate(0)
    }
    .js-electionSearch .banner-group {
        height: 110px;
        text-align: center
    }
    .js-electionSearch .banner-btn {
        padding: 15px 15px 5px
    }
    .js-electionSearch .banner-close {
        position: absolute;
        width: 40px;
        height: 40px;
        right: -5px;
        top: -45px;
        opacity: 0;
        -webkit-transform: rotate(-135deg) scale(0);
        transform: rotate(-135deg) scale(0);
        -webkit-transition: opacity .25s .75s, -webkit-transform .25s ease-out .75s;
        transition: opacity .25s .75s, -webkit-transform .25s ease-out .75s;
        transition: opacity .25s .75s, transform .25s ease-out .75s;
        transition: opacity .25s .75s, transform .25s ease-out .75s, -webkit-transform .25s ease-out .75s
    }
    .js-electionSearch .banner.is-open .banner-close {
        opacity: 1;
        -webkit-transform: rotate(0deg) scale(1);
        transform: rotate(0deg) scale(1)
    }
    .js-electionSearch .banner-close .svg-ico {
        fill: #fff;
        width: 100%;
        height: 100%
    }
    .js-electionSearch .banner-open {
        height: 60px
    }
    .js-electionSearch .banner-open, .js-electionSearch .banner-open-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .banner-open-btn {
        position: relative;
        height: 40px;
        border-radius: 20px 0 0 20px;
        overflow: hidden;
        padding: 0 10px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        border: 2px solid #d7003a !important;
        border-right: 0 !important;
        color: #fff;
        z-index: 1;
        opacity: 0;
        -webkit-transition: opacity .25s;
        transition: opacity .25s
    }
    .js-electionSearch .is-scroll .banner-open-btn {
        -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, .2);
        box-shadow: 0 0 30px rgba(0, 0, 0, .2)
    }
    .js-electionSearch .banner-open-btn .svg-ico {
        fill: #fff;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 26px;
        width: 26px;
        height: 26px;
        margin-right: .25em
    }
    .js-electionSearch .banner-open-btn:before {
        position: absolute;
        display: block;
        content: " ";
        width: 100%;
        height: 100%;
        top: 0;
        right: 0;
        background-color: #d7003a;
        z-index: 0
    }
    .js-electionSearch .banner.is-active .banner-open-btn {
        opacity: 1
    }
    .js-electionSearch .banner.is-active .banner-open-btn:before {
        -webkit-animation: bgAttention 2s linear infinite;
        animation: bgAttention 2s linear infinite
    }
    .js-electionSearch .banner-open-btn .banner-open-label, .js-electionSearch .banner-open-btn .svg-ico {
        position: relative;
        z-index: 1
    }
    .js-electionSearch .banner.is-active.isnt-first .banner-open-btn {
        -webkit-animation-iteration-count: 0;
        animation-iteration-count: 0
    }
    .js-electionSearch .banner-open-label {
        font-size: 75%;
        white-space: nowrap
    }
    .js-electionSearch .banner-open-num {
        font-size: 68.8%;
        position: absolute;
        width: 1.75em;
        height: 1.75em;
        border-radius: .86em;
        z-index: 2;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        top: .25em;
        left: -.25em;
        background-color: #fff;
        color: #d7003a;
        -webkit-transition: opacity .25s .25s;
        transition: opacity .25s .25s;
        opacity: 0
    }
    .js-electionSearch .banner-img {
        width: 100px
    }
    .js-electionSearch .banner-data {
        width: calc(100% - 115px)
    }
    .js-electionSearch .pickup, .js-electionSearch .pickup-bg {
        border-radius: 2em
    }
    .js-electionSearch .pickup-btn {
        font-size: 75%;
        padding: .75em 1em .75em 2.75em;
        line-height: 1.5
    }
    .js-electionSearch .pickup-btn .ico-arrow-r-s {
        position: absolute;
        font-size: 175%;
        top: 50%;
        left: .5em;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
    .js-electionSearch .pickup.sp-l .pickup-btn {
        white-space: normal;
        text-overflow: clip;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
        padding-top: 0;
        padding-top: 5px !important;
        padding-bottom: 0;
        top: .75em;
        height: calc(100% - 1.5em)
    }
    .js-electionSearch .pickup-items {
        width: calc(100% - 40px);
        height: 100%
    }
    .js-electionSearch .pickup.sp-l .pickup-nav {
        width: 50px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .js-electionSearch .pickup-nav-btn {
        width: 50px;
        height: 50px
    }
    .js-electionSearch .pickup-nav-btn .svg-ico {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 24px;
        width: 24px;
        height: 24px
    }
    .js-electionSearch .pickup.sp-l .pickup-nav-btn {
        height: 42.5px
    }
    .js-electionSearch .pickup-nav-btn.is-prev {
        display: none
    }
    .js-electionSearch .pickup.sp-l .pickup-nav-btn.is-prev {
        display: block;
        margin-bottom: -10px
    }

    .js-electionSearch #electionSearch-search .t-7{
        font-size: 110%;
    }

    .js-electionSearch #electionSearch-search .btn{
        font-size: 110%;
    }

    .js-electionSearch #electionSearch-search .btn:hover{
        background: #4a4a4a;
    }

    .js-electionSearch .form-content-query {
        position: absolute;
        bottom: auto;
        top: 6em;
        margin-top: 0;
        max-height: calc(100vh - 8em);
    }
    .js-electionSearch .form-content-query .btn{
        border: none;
        border-radius: 0;
        color: #fff;
        background: #4a4a4a;
    }
    .js-electionSearch .form.is-col .form-content {
        width: 100%
    }
    .js-electionSearch .form.is-col .form-option {
        margin-top: .5em
    }
    .js-electionSearch .form-select {
        width: 8em;
        font-size: 16px
    }
    .js-electionSearch .form-select.is-prefecture {
        width: 100%
    }
    .js-electionSearch .form-select-wrap+div {
        margin-top: 1em
    }
    .js-electionSearch .form-tag-group {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .js-electionSearch .form-pickup .form-option {
        margin-top: .75em
    }
    .js-electionSearch .btn.is-l {
        padding: .7em 2em;
        display: block
    }
    .js-electionSearch .btn.is-hl {
        padding-top: 1.25em;
        padding-bottom: 1.25em
    }
    .js-electionSearch .btn-cover-label.pos-s-sp {
        -webkit-transform: none;
        transform: none
    }
    .js-electionSearch .btn-thumb-category {
        padding: .5em
    }
    .js-electionSearch .btn-thumb.is-txt-sp {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        background-color: transparent;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        color: #2d2b2b
    }
    .js-electionSearch .btn-thumb.is-txt-sp .btn-thumb-photo {
        width: 25%;
        margin: 0 auto 0 0;
        opacity: 1
    }
    .js-electionSearch .btn-thumb.is-txt-sp .btn-thumb-data {
        margin: 0 0 0 auto;
        width: 73%
    }
    .js-electionSearch .btn-thumb.is-txt-sp .btn-thumb-category, .js-electionSearch .btn-thumb.is-txt-sp .btn-thumb-label {
        position: static
    }
    .js-electionSearch .btn-thumb.is-txt-sp .btn-thumb-category {
        padding-top: 0
    }
    .js-electionSearch .btn-thumb.is-txt-sp .btn-thumb-label {
        padding-top: .25em
    }
    .js-electionSearch .btn-thumb.is-txt-sp .btn-thumb-cover {
        display: none
    }
    .js-electionSearch .btn-thumb.is-txt-sp .tag.is-wa {
        background-color: rgba(0, 0, 0, .05)
    }
    .js-electionSearch .btn-ico {
        padding: 0 3vw 3vw
    }
    .js-electionSearch .btn-ico.is-l {
        padding: 3vw 0 2vw
    }
    .js-electionSearch .btn-ico-img {
        width: 90%;
        max-width: 125px
    }
    .js-electionSearch .btn-badge-img {
        max-width: 135px !important
    }
    .js-electionSearch .btn-file[target=_blank] .t-5:after {
        margin-top: -8px
    }
    .js-electionSearch .btn-file {
        padding: 5vw 0
    }
    .js-electionSearch .btn-file-ico {
        width: 15%
    }
    .js-electionSearch .btn-file-data {
        width: 88%
    }
    .js-electionSearch .btn-file.is-s .btn-file-data {
        width: auto
    }
    .js-electionSearch .btn-other {
        width: 7em
    }
    .js-electionSearch .btn-member.is-s {
        max-width: 5.5em
    }
    .js-electionSearch .btn-member.is-s.is-s {
        max-width: auto
    }
    .js-electionSearch .btn-member {
        text-align: center;
        -webkit-box-pack: center;
        justify-content: center;
        margin: 0 auto;
        padding: 0;
    }
    .js-electionSearch .btn-member.is-l {
        text-align: left;
        width: 100%
    }
    .js-electionSearch .btn-member-photo {
        margin: 0 auto;
        width: 60%
    }
    .js-electionSearch .btn-member.is-l .btn-member-photo, .js-electionSearch .btn-member.is-single-s .btn-member-photo {
        margin: auto;
        width: 60%
    }
    .js-electionSearch .btn-member.is-s .btn-member-photo, .js-electionSearch .btn-member.is-single .btn-member-photo {
        max-width: 60px
    }
    .js-electionSearch .btn-member.is-s-sp .btn-member-photo {
        width: 60%
    }
    .js-electionSearch .btn-member-data {
        margin: 10px auto 0;
        width: 100%;
        text-align: center;
    }
    .js-electionSearch .btn-member.is-single-s .btn-member-data {
        margin-top: 10px;
        text-align: center;
    }
    .js-electionSearch .btn-member.is-l .btn-member-data, .js-electionSearch .btn-member.is-single-s .btn-member-data {
        width: 58%;
        margin: auto
    }
    .js-electionSearch .btn-member.is-s-sp .btn-member-data, .js-electionSearch .btn-member.is-single .btn-member-data {
        width: 100%
    }
    .js-electionSearch .btn-schedule {
        padding: .5em;
        margin: 2px
    }
    .js-electionSearch .btn-sitemap[target=_blank] .t-s:after {
        margin-top: -8px
    }
    .js-electionSearch .btn-sitemap[target=_blank] .t-7:after {
        margin-top: -4px
    }
    .js-electionSearch .photo.is-limit-sp {
        width: 200px;
        margin: 0 auto
    }
    .js-electionSearch .photo.is-title {
        max-width: 120px;
        width: 45%
    }
    .js-electionSearch .photo-member.is-page {
        width: 90%
    }
    .js-electionSearch .photo-member.is-main {
        width: 200px
    }
    .js-electionSearch .is-android-new .photo-member.is-main {
        border-radius: 94px !important
    }
    .js-electionSearch .is-android.is-android-old .photo-member.is-main {
        border-radius: 0 !important
    }
    .js-electionSearch .photo-ico {
        width: 40px;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%)
    }
    .js-electionSearch .photo-cover.is-h-sp {
        width: auto;
        height: 100%;
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%);
        transform: translate(-50%)
    }
    .js-electionSearch .photo-cover.is-w-sp, .js-electionSearch .photo-cover.is-w-tb-sp {
        width: 100%;
        height: auto;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
    .js-electionSearch .photo-youtube-bg {
        width: 200%;
        left: -50%
    }
    .js-electionSearch .tool .svg-ico-arrow-b {
        display: block;
        -webkit-transition: -webkit-transform .25s;
        transition: -webkit-transform .25s;
        transition: transform .25s;
        transition: transform .25s, -webkit-transform .25s
    }
    .js-electionSearch .tool.is-open .tool-nav {
        height: auto;
        overflow-y: visible
    }
    .js-electionSearch .tool.is-open .svg-ico-arrow-b {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }
    .js-electionSearch .tool-nav {
        position: relative;
        top: calc(100% + 2px);
        left: 0;
        z-index: 10;
        width: 100%;
        height: 0;
        overflow: hidden
    }
    .js-electionSearch .tool-nav.is-default-open {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: auto
    }
    .js-electionSearch .tool-nav.is-default-open .tool-btn {
        width: 33.33333%
    }
    .js-electionSearch .tool-nav.is-default-open.is-4 .tool-btn {
        width: 25%
    }
    .js-electionSearch .tool-nav.is-default-open.is-2 .tool-btn, .js-electionSearch .tool-nav.is-default-open.is-4 .tool-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .js-electionSearch .tool-nav.is-default-open.is-2 .tool-btn {
        width: 50%
    }
    .js-electionSearch .tool-btn:after {
        bottom: 2px
    }
    .js-electionSearch .tool-btn {
        padding: 1em .75em;
        font-size: 81.3%
    }
    .js-electionSearch .news-item {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 1.25em 0
    }
    .js-electionSearch .news-item.is-s {
        padding: .75em 0
    }
    .js-electionSearch .news-tag {
        width: 100%;
        padding-bottom: .5em
    }
    .js-electionSearch .news-header {
        width: 100%;
        padding-bottom: .25em
    }
    .js-electionSearch .news-txt {
        padding: 1em 0
    }
    .js-electionSearch .news-campaign1 {
        color: #fff;
        padding: 1em
    }
    .js-electionSearch .news-campaign2 {
        padding: 1em
    }
    .js-electionSearch .list-item {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 1.25em 0
    }
    .js-electionSearch .list-item.is-s {
        padding: .75em 0
    }
    .js-electionSearch .list-tag {
        width: 8.5em;
        padding-bottom: .5em;
        margin-right: .5em
    }
    .js-electionSearch .list-tag .tag {
        display: block;
        text-align: center;
        margin: -.15em 0;
        font-size: 80%
    }
    .js-electionSearch .list-header {
        width: 10em;
        padding-bottom: .25em
    }
    .js-electionSearch .list-header.is-campaign {
        width: 7em
    }
    .js-electionSearch .list-body {
        width: 100%
    }
    .js-electionSearch .list-txt {
        padding: 1em 0
    }
    .js-electionSearch .list-ico-item {
        margin: 0 .5em 1.5em
    }
    .js-electionSearch .list-link .list-li, .js-electionSearch .list-member .list-li {
        width: 33.333%;
        text-align: center
    }
    .js-electionSearch .list-promise {
        margin-top: -1.5em
    }
    .js-electionSearch .list-promise .list-li {
        padding: .75em 0 .75em 3vw;
        margin-top: 1.5em
    }
    .js-electionSearch .list-search .list-li {
        padding: 1.25em 0
    }
    .js-electionSearch .post dd, .js-electionSearch .post li, .js-electionSearch .post p, .js-electionSearch .post td, .js-electionSearch .post th {
        font-size: 93.8%;
        line-height: 1.85
    }
    .js-electionSearch .post h2 {
        font-size: 105.5%
    }
    .js-electionSearch .post h3 {
        font-size: 84.4%
    }
    .js-electionSearch .post .answer dt, .js-electionSearch .post .question dt {
        width: 2em
    }
    .js-electionSearch .post .answer dd, .js-electionSearch .post .question dd {
        width: calc(100% - 3em)
    }
    .js-electionSearch .post a.btn-file .t-5:after {
        margin-top: -8px
    }
    .js-electionSearch .declaration {
        width: 325%
    }
    .js-electionSearch .col.is-movie, .js-electionSearch .col.is-note, .js-electionSearch .col.is-note-s {
        padding: 5vw
    }
    .js-electionSearch .table-td, .js-electionSearch .table-th {
        padding: .75em .65em
    }
    .js-electionSearch .table.is-address .table-td, .js-electionSearch .table.is-address .table-th {
        padding: .75em 0
    }
    .js-electionSearch .table-th.is-os {
        width: 5em
    }
    .js-electionSearch .table-th.is-member-l {
        width: 12em
    }
    .js-electionSearch .table-th.is-member-m, .js-electionSearch .table-th.is-member-s, .js-electionSearch .table-th.is-minister-s, .js-electionSearch .table-th.is-officer-s {
        width: 6em
    }
    .js-electionSearch .table-th.is-error-404 {
        width: 7em
    }
    .js-electionSearch .table-td.is-officer-data {
        width: 52%
    }
    .js-electionSearch .table-td.is-minister-data {
        width: 30%
    }
    .js-electionSearch .history-photo-1 {
        top: -6%;
        right: 0;
        width: 35%
    }
    .js-electionSearch .history-photo-2 {
        top: -2%;
        right: 20%;
        width: 60%
    }
    .js-electionSearch .history-photo-3 {
        top: 14%;
        right: 4%;
        width: 25%
    }
    .js-electionSearch .history-photo-4 {
        top: 22%;
        right: 76%;
        width: 24%
    }
    .js-electionSearch .calendar-nav-title {
        font-size: 219.8%;
        line-height: 1.5;
        text-align: center;
        padding-bottom: .05em
    }
    .js-electionSearch .calendar-nav-mode {
        text-align: center
    }
    .js-electionSearch .calendar-btn, .js-electionSearch .calendar-nav-mode .calendar-btn {
        font-size: 75%
    }
    .js-electionSearch .calendar-btn.is-next, .js-electionSearch .calendar-btn.is-prev {
        padding: .7em 1em
    }
    .js-electionSearch .calendar-week {
        font-size: 93.8%
    }
    .js-electionSearch .calendar-day .calendar-btn {
        font-size: 75%
    }
    .js-electionSearch .calendar-schedule-data {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 1em .75em;
        width: calc(100% - 2.5em)
    }
    .js-electionSearch .calendar-schedule-title {
        width: 100%;
        margin-bottom: .5em;
        padding-right: 3em
    }
    .js-electionSearch .calendar-schedule-body {
        width: 100%
    }
    .js-electionSearch .calendar-schedule-btn {
        top: .5em;
        right: .5em;
        padding-top: .5em;
        padding-bottom: .5em
    }
    .js-electionSearch .calendar-schedule-btn .svg-ico.svg-ico-plus {
        margin-right: 0
    }
    .js-electionSearch .calendar-schedule-btn-label {
        display: none
    }
    .js-electionSearch .calendar-subbtn {
        font-size: 62.5%;
        padding: .5em
    }
    .js-electionSearch .calendar-subbtn-label, .js-electionSearch .calendar-subbtn-unit {
        display: none
    }
    .js-electionSearch .calendar-container.is-timeline .calendar-info {
        width: 250px
    }
    .js-electionSearch .calendar-info {
        font-size: 75%;
        padding: .75em;
        width: 300%;
        border-radius: 5px
    }
    .js-electionSearch .calendar-info .calendar-closebtn {
        padding: .45em;
        font-size: 15px
    }
    .js-electionSearch .calendar-info-data {
        max-height: 18em
    }
    .js-electionSearch .schedule-table {
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-table-tr {
        border-top: 2px solid #2d2b2b;
        min-height: 5em
    }
    .js-electionSearch .schedule-table-th {
        padding: 2.5em 0;
        text-align: center
    }
    .js-electionSearch .schedule-table-td {
        padding: .25em 0
    }
    .js-electionSearch .schedule-table-td .btn-schedule {
        margin: .25em 0
    }
    .js-electionSearch .schedule-table-td .btn-schedule .btn-member.is-single {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        margin-left: 0;
        margin-right: 1em
    }
    .js-electionSearch .schedule-table-td .btn-schedule .btn-member.is-single .btn-member-photo {
        margin-left: 0
    }
    .js-electionSearch .schedule-table-td .btn-schedule .btn-member.is-single .btn-member-data {
        width: 55%;
        text-align: left
    }
    .js-electionSearch .schedule-table-td .btn-member.is-single {
        max-width: 160px
    }
    .js-electionSearch .schedule {
        grid-template-rows: 1fr auto auto auto auto;
        grid-template-columns: 3em calc(50% - 1.5em) calc(50% - 1.5em)
    }
    .js-electionSearch .schedule>:first-child {
        -ms-grid-row: 1;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(2) {
        -ms-grid-row: 1;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(3) {
        -ms-grid-row: 1;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(4) {
        -ms-grid-row: 2;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(5) {
        -ms-grid-row: 2;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(6) {
        -ms-grid-row: 2;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(7) {
        -ms-grid-row: 3;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(8) {
        -ms-grid-row: 3;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(9) {
        -ms-grid-row: 3;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(10) {
        -ms-grid-row: 4;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(11) {
        -ms-grid-row: 4;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(12) {
        -ms-grid-row: 4;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(13) {
        -ms-grid-row: 5;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(14) {
        -ms-grid-row: 5;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(15) {
        -ms-grid-row: 5;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule-header {
        font-size: 68.8%;
        min-height: 5em;
        padding: .5em;
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-header1 {
        border-top: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-item .btn-schedule {
        width: calc(100% - 4px);
        height: calc(100% - 4px)
    }
    .js-electionSearch .schedule-item .btn-schedule.is-tb-sp-h {
        height: auto;
        min-height: calc(50% - 4px)
    }
    .js-electionSearch .schedule-item {
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-item1 {
        border-top: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-item-blank {
        grid-column: 2/4
    }
    .js-electionSearch .schedule-group1 {
        grid-column: 2/3
    }
    .js-electionSearch .schedule-group2 {
        grid-column: 3/4
    }
    .js-electionSearch .friendly-img-t1 {
        width: 50%;
        top: -3vw;
        left: -3vw
    }
    .js-electionSearch .friendly-img-t2 {
        width: 30%;
        top: 40%;
        right: -2vw
    }
    .js-electionSearch .friendly-img-b1 {
        width: 40%;
        bottom: 20%;
        left: 0
    }
    .js-electionSearch .friendly-img-b2 {
        width: 60%;
        bottom: 4vw;
        right: -2vw
    }
    .js-electionSearch .president-line {
        left: 10%
    }
    .js-electionSearch .president-center, .js-electionSearch .president-left, .js-electionSearch .president-right {
        position: relative;
        width: 75%;
        margin-bottom: 2em;
        float: right
    }
    .js-electionSearch .president-center .president-year, .js-electionSearch .president-left .president-year, .js-electionSearch .president-right .president-year {
        width: 33%;
        right: 102%
    }
    .js-electionSearch .president-center .president-year-line, .js-electionSearch .president-left .president-year-line, .js-electionSearch .president-right .president-year-line {
        width: 50%;
        right: -45%;
        top: 1.5em
    }
    .js-electionSearch .interview2021-bg {
        padding-top: .75em;
        padding-bttom: .75em
    }
}

@media (min-width:600px) and (max-width:999px) {
    .js-electionSearch .clearfix-pc-tb:after, .js-electionSearch .clearfix-pc-tb:before {
        content: "";
        display: table;
        content: "\0020";
        display: block;
        height: 0;
        overflow: hidden;
        visibility: hidden
    }
    .js-electionSearch .clearfix-pc-tb:after {
        clear: both
    }
    .js-electionSearch .fl-l-pc-tb {
        float: left
    }
    .js-electionSearch .fl-r-pc-tb {
        float: right
    }
    .js-electionSearch .pc, .js-electionSearch .pc-sp, .js-electionSearch .sp, .js-electionSearch .spl, .js-electionSearch .sps {
        display: none !important
    }
    .js-electionSearch .ord--1-pc-tb, .js-electionSearch .ord--1-tb-sp {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1
    }
    .js-electionSearch .ord-1-pc-tb, .js-electionSearch .ord-1-tb-sp {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    .js-electionSearch .ord-2-pc-tb, .js-electionSearch .ord-2-tb-sp {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }
    .js-electionSearch .ord-3-pc-tb, .js-electionSearch .ord-3-tb-sp {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3
    }
    .js-electionSearch .bdb-tb, .js-electionSearch .bdb-tb-sp {
        border-bottom: 2px solid #eee !important
    }
    .js-electionSearch .ta-c-pc-tb, .js-electionSearch .ta-c-tb, .js-electionSearch .ta-c-tb-sp {
        text-align: center !important
    }
    .js-electionSearch .ta-l-pc-tb, .js-electionSearch .ta-l-tb {
        text-align: left !important
    }
    .js-electionSearch .ta-r-pc-tb, .js-electionSearch .ta-r-tb {
        text-align: right !important
    }
    .js-electionSearch .h-1-pc-tb, .js-electionSearch .h-1-tb, .js-electionSearch .h-1-tb-sp {
        height: 100% !important
    }
    .js-electionSearch .mt-tb, .js-electionSearch .mt-tb-sp {
        margin-top: 1em !important
    }
    .js-electionSearch .mt-n-tb, .js-electionSearch .mt-n-tb-sp {
        margin-top: 0 !important
    }
    .js-electionSearch .mt-ss-tb, .js-electionSearch .mt-ss-tb-sp {
        margin-top: .25em !important
    }
    .js-electionSearch .mt-s-tb, .js-electionSearch .mt-s-tb-sp {
        margin-top: .5em !important
    }
    .js-electionSearch .mt-m-tb, .js-electionSearch .mt-m-tb-sp {
        margin-top: 1.25em !important
    }
    .js-electionSearch .mt-header {
        margin-top: 70px
    }
    .js-electionSearch .pt-header {
        padding-top: 70px
    }
    .js-electionSearch .is-disastermessage .pt-header {
        -webkit-transition: padding-top .25s ease-out;
        transition: padding-top .25s ease-out
    }
    .js-electionSearch .is-disastermessage.is-load .pt-header {
        padding-top: calc(70px + 2.5em)
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .pt-header {
        padding-top: 70px
    }
    .js-electionSearch .pt-tool {
        padding-top: 2.6em !important
    }
    .js-electionSearch .mb-pc-tb, .js-electionSearch .mb-tb, .js-electionSearch .mb-tb-sp {
        margin-bottom: 1em !important
    }
    .js-electionSearch .mb-n-pc-tb, .js-electionSearch .mb-n-tb, .js-electionSearch .mb-n-tb-sp {
        margin-bottom: 0 !important
    }
    .js-electionSearch .mb-ss-pc-tb, .js-electionSearch .mb-ss-tb, .js-electionSearch .mb-ss-tb-sp {
        margin-bottom: .25em !important
    }
    .js-electionSearch .mb-s-pc-tb, .js-electionSearch .mb-s-tb, .js-electionSearch .mb-s-tb-sp {
        margin-bottom: .5em !important
    }
    .js-electionSearch .mb-s--pc-tb, .js-electionSearch .mb-s--tb, .js-electionSearch .mb-s--tb-sp {
        margin-bottom: -.5em !important
    }
    .js-electionSearch .mb-sl-pc-tb, .js-electionSearch .mb-sl-tb, .js-electionSearch .mb-sl-tb-sp {
        margin-bottom: .75em !important
    }
    .js-electionSearch .mb-m-pc-tb, .js-electionSearch .mb-m-tb, .js-electionSearch .mb-m-tb-sp {
        margin-bottom: 1.25em !important
    }
    .js-electionSearch .mb-l-pc-tb, .js-electionSearch .mb-l-tb, .js-electionSearch .mb-l-tb-sp {
        margin-bottom: 1.5em !important
    }
    .js-electionSearch .mb-ll-pc-tb, .js-electionSearch .mb-ll-tb, .js-electionSearch .mb-ll-tb-sp {
        margin-bottom: 2em !important
    }
    .js-electionSearch .mb-toolnav {
        margin-bottom: 4em
    }
    .js-electionSearch .pb-pc-tb, .js-electionSearch .pb-tb, .js-electionSearch .pb-tb-sp {
        padding-bottom: 1em !important
    }
    .js-electionSearch .pb-n-pc-tb, .js-electionSearch .pb-n-tb, .js-electionSearch .pb-n-tb-sp {
        padding-bottom: 0 !important
    }
    .js-electionSearch .pb-ss-pc-tb, .js-electionSearch .pb-ss-tb, .js-electionSearch .pb-ss-tb-sp {
        padding-bottom: .25em !important
    }
    .js-electionSearch .pb-s-pc-tb, .js-electionSearch .pb-s-tb, .js-electionSearch .pb-s-tb-sp {
        padding-bottom: .5em !important
    }
    .js-electionSearch .pb-sl-pc-tb, .js-electionSearch .pb-sl-tb, .js-electionSearch .pb-sl-tb-sp {
        padding-bottom: .75em !important
    }
    .js-electionSearch .pb-m-pc-tb, .js-electionSearch .pb-m-tb, .js-electionSearch .pb-m-tb-sp {
        padding-bottom: 1.25em !important
    }
    .js-electionSearch .pb-l-pc-tb, .js-electionSearch .pb-l-tb, .js-electionSearch .pb-l-tb-sp {
        padding-bottom: 1.5em !important
    }
    .js-electionSearch .pb-ll-pc-tb, .js-electionSearch .pb-ll-tb, .js-electionSearch .pb-ll-tb-sp {
        padding-bottom: 2em !important
    }
    .js-electionSearch .pr-pc-tb, .js-electionSearch .pr-tb, .js-electionSearch .pr-tb-sp {
        padding-right: 1em !important
    }
    .js-electionSearch .pr-n-pc-tb, .js-electionSearch .pr-n-tb, .js-electionSearch .pr-n-tb-sp {
        padding-right: 0 !important
    }
    .js-electionSearch .pr-ss-pc-tb, .js-electionSearch .pr-ss-tb, .js-electionSearch .pr-ss-tb-sp {
        padding-right: .25em !important
    }
    .js-electionSearch .pr-s-pc-tb, .js-electionSearch .pr-s-tb, .js-electionSearch .pr-s-tb-sp {
        padding-right: .5em !important
    }
    .js-electionSearch .pr-sl-pc-tb, .js-electionSearch .pr-sl-tb, .js-electionSearch .pr-sl-tb-sp {
        padding-right: .75em !important
    }
    .js-electionSearch .pr-m-pc-tb, .js-electionSearch .pr-m-tb, .js-electionSearch .pr-m-tb-sp {
        padding-right: 1.25em !important
    }
    .js-electionSearch .pr-l-pc-tb, .js-electionSearch .pr-l-tb, .js-electionSearch .pr-l-tb-sp {
        padding-right: 1.5em !important
    }
    .js-electionSearch .pr-ll-pc-tb, .js-electionSearch .pr-ll-tb, .js-electionSearch .pr-ll-tb-sp {
        padding-right: 2em !important
    }
    .js-electionSearch .carousel-next, .js-electionSearch .carousel-prev {
        width: 40px;
        height: 40px;
        font-size: 40px;
        margin-top: -20px
    }
    .js-electionSearch .carousel-prev {
        left: -4%
    }
    .js-electionSearch .carousel-next {
        right: -4%
    }
    .js-electionSearch .carousel-pointer-btn {
        width: 35px;
        height: 35px
    }
    .js-electionSearch .carousel-pointer-ico {
        width: 15px;
        height: 15px
    }
    .js-electionSearch .carousel.is-cafesta .carousel-panel, .js-electionSearch .carousel.is-history .carousel-panel {
        padding: 0 2vw
    }
    .js-electionSearch .carousel.is-cafesta .carousel-next, .js-electionSearch .carousel.is-cafesta .carousel-prev {
        top: 23.4vw
    }
    .js-electionSearch .carousel.is-cover .carousel-next, .js-electionSearch .carousel.is-cover .carousel-prev {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 50px;
        width: 50px;
        height: 50px;
        margin-top: -25px
    }
    .js-electionSearch .carousel.is-cover .carousel-pointer {
        bottom: 2%
    }
    .js-electionSearch .tab-nav.is-4 .tab-list, .js-electionSearch .tab-nav.is-4 .tab-list-other {
        width: 25%
    }
    .js-electionSearch .tab-btn {
        height: 2em;
        font-size: 81.3%
    }
    .js-electionSearch #modalNext, .js-electionSearch #modalPrev {
        width: 40px
    }
    .js-electionSearch .modal-html {
        padding: 0 3%
    }
    .js-electionSearch .l-header {
        position: absolute
    }
    .js-electionSearch .l-header-menu {
        position: fixed
    }
    .js-electionSearch .is-disastermessage .l-header-menu {
        -webkit-transition: top .25s ease-out;
        transition: top .25s ease-out
    }
    .js-electionSearch .is-disastermessage.is-load .l-header-menu {
        top: 2.5em
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .l-header-menu {
        top: 0
    }
    .js-electionSearch .l-header-global {
        padding: 70px 60px 70px 30px;
        width: 370px;
        right: -370px
    }
    .js-electionSearch .l-header.is-menu-open .l-header-global-shadow {
        right: 340px;
        opacity: 1
    }
    .js-electionSearch .is-disastermessage .l-header-global {
        padding-top: calc(70px + 2.5em)
    }
    .js-electionSearch .is-disastermessage.isnt-disastermessage.is-load .l-header-global {
        padding-top: 70px
    }
    .js-electionSearch .l-banner {
        z-index: 4002;
        position: fixed;
        bottom: 30px;
        right: -300px;
        -webkit-transition: right .5s ease-out;
        transition: right .5s ease-out
    }
    .js-electionSearch .l-banner.is-active {
        right: 0
    }
    .js-electionSearch .l-banner.is-hover {
        right: 0 !important
    }
    .js-electionSearch .is-scroll-limit .l-banner, .js-electionSearch .is-scroll.is-scroll-limit .l-banner {
        right: -300px !important
    }
    .js-electionSearch .l-banner-open {
        display: none
    }
    .js-electionSearch .l-main-fv:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 100%
    }
    .js-electionSearch .l-main-photo {
        width: 68%
    }
    .js-electionSearch .l-main-photo:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 120%
    }
    .js-electionSearch .l-main-s:before {
        padding-bottom: 50%
    }
    .js-electionSearch .l-main-s:before, .js-electionSearch .l-main-ss:before {
        position: relative;
        width: 100%;
        height: 0
    }
    .js-electionSearch .l-main-ss:before {
        padding-bottom: 40%
    }
    .js-electionSearch .l-content-col {
        padding: 0 6%
    }
    .js-electionSearch .l-content-col:after, .js-electionSearch .l-content-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 12.5%
    }
    .js-electionSearch .l-content-col.is-b-s:after, .js-electionSearch .l-content-col.is-s:after, .js-electionSearch .l-content-col.is-s:before, .js-electionSearch .l-content-col.is-t-s:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 10%
    }
    .js-electionSearch .l-content-col.is-b-ss:after, .js-electionSearch .l-content-col.is-ss:after, .js-electionSearch .l-content-col.is-ss:before, .js-electionSearch .l-content-col.is-t-ss:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 6.25%
    }
    .js-electionSearch .l-content-col.is-b-sss:after, .js-electionSearch .l-content-col.is-sss:after, .js-electionSearch .l-content-col.is-sss:before, .js-electionSearch .l-content-col.is-t-sss:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 2.77778%
    }
    .js-electionSearch .l-col:after, .js-electionSearch .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 10%
    }
    .js-electionSearch .l-col.is-l:after, .js-electionSearch .l-col.is-l:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 10% !important
    }
    .js-electionSearch .l-col.is-m:after, .js-electionSearch .l-col.is-m:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 6.25% !important
    }
    .js-electionSearch .l-col.is-s:after, .js-electionSearch .l-col.is-s:before, .js-electionSearch .l-col .l-col:after, .js-electionSearch .l-col .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 6.25%
    }
    .js-electionSearch .l-col.is-ss:after, .js-electionSearch .l-col.is-ss:before, .js-electionSearch .l-col .l-col .l-col:after, .js-electionSearch .l-col .l-col .l-col:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 2.77778%
    }
    .js-electionSearch .l-col-left {
        float: left
    }
    .js-electionSearch .l-col-left, .js-electionSearch .l-col-right {
        width: 30%;
        margin: 0 0 2em 3em
    }
    .js-electionSearch .l-col-right {
        float: right
    }
    .js-electionSearch .l-grid {
        margin-left: -2.5%;
        margin-right: -2.5%;
        width: 105%
    }
    .js-electionSearch .l-grid>.l-grid-col .h-1, .js-electionSearch .l-grid>[class*=l-grid-col-] .h-1 {
        height: auto
    }
    .js-electionSearch .l-grid>[class*=l-grid-col-lm-] .h-1, .js-electionSearch .l-grid>[class*=l-grid-col-m-] .h-1, .js-electionSearch .l-grid>[class*=l-grid-col-ms-] .h-1 {
        height: 100% !important
    }
    .js-electionSearch .l-grid.isnt-gutter-tb {
        margin-left: 0;
        margin-right: 0;
        width: 100%
    }
    .js-electionSearch .l-grid.isnt-gutter-tb>.l-grid-col, .js-electionSearch .l-grid.isnt-gutter-tb>[class*=l-grid-col-] {
        padding-right: 0;
        padding-left: 0
    }
    .js-electionSearch .l-grid.is-gutter-s, .js-electionSearch .l-grid.is-gutter-s-tb, .js-electionSearch .l-grid.is-gutter-s-tb-sp {
        margin-left: -1.25% !important;
        margin-right: -1.25% !important;
        width: 102.5%
    }
    .js-electionSearch .l-grid.is-gutter-s-tb-sp>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s-tb-sp>[class*=l-grid-col-], .js-electionSearch .l-grid.is-gutter-s-tb>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s-tb>[class*=l-grid-col-], .js-electionSearch .l-grid.is-gutter-s>.l-grid-col, .js-electionSearch .l-grid.is-gutter-s>[class*=l-grid-col-] {
        padding-right: 1.25% !important;
        padding-left: 1.25% !important
    }
    .js-electionSearch .l-grid-col-auto-pc-tb, .js-electionSearch .l-grid-col-auto-tb, .js-electionSearch .l-grid-col-auto-tb-sp {
        width: auto !important
    }
    .js-electionSearch .l-grid-col {
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-grid-col-lm-1, .js-electionSearch .l-grid-col-m-1, .js-electionSearch .l-grid-col-sm-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%
    }
    .js-electionSearch .l-grid-col-lm-1, .js-electionSearch .l-grid-col-lm-2, .js-electionSearch .l-grid-col-m-1, .js-electionSearch .l-grid-col-m-2, .js-electionSearch .l-grid-col-sm-1, .js-electionSearch .l-grid-col-sm-2 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-grid-col-lm-2, .js-electionSearch .l-grid-col-m-2, .js-electionSearch .l-grid-col-sm-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%
    }
    .js-electionSearch .l-grid-col-lm-3, .js-electionSearch .l-grid-col-m-3, .js-electionSearch .l-grid-col-sm-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%
    }
    .js-electionSearch .l-grid-col-lm-3, .js-electionSearch .l-grid-col-lm-4, .js-electionSearch .l-grid-col-m-3, .js-electionSearch .l-grid-col-m-4, .js-electionSearch .l-grid-col-sm-3, .js-electionSearch .l-grid-col-sm-4 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-grid-col-lm-4, .js-electionSearch .l-grid-col-m-4, .js-electionSearch .l-grid-col-sm-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%
    }
    .js-electionSearch .l-grid-col-lm-5, .js-electionSearch .l-grid-col-m-5, .js-electionSearch .l-grid-col-sm-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%
    }
    .js-electionSearch .l-grid-col-lm-5, .js-electionSearch .l-grid-col-lm-6, .js-electionSearch .l-grid-col-m-5, .js-electionSearch .l-grid-col-m-6, .js-electionSearch .l-grid-col-sm-5, .js-electionSearch .l-grid-col-sm-6 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-grid-col-lm-6, .js-electionSearch .l-grid-col-m-6, .js-electionSearch .l-grid-col-sm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%
    }
    .js-electionSearch .l-grid-col-lm-7, .js-electionSearch .l-grid-col-m-7, .js-electionSearch .l-grid-col-sm-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%
    }
    .js-electionSearch .l-grid-col-lm-7, .js-electionSearch .l-grid-col-lm-8, .js-electionSearch .l-grid-col-m-7, .js-electionSearch .l-grid-col-m-8, .js-electionSearch .l-grid-col-sm-7, .js-electionSearch .l-grid-col-sm-8 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-grid-col-lm-8, .js-electionSearch .l-grid-col-m-8, .js-electionSearch .l-grid-col-sm-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%
    }
    .js-electionSearch .l-grid-col-lm-9, .js-electionSearch .l-grid-col-m-9, .js-electionSearch .l-grid-col-sm-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%
    }
    .js-electionSearch .l-grid-col-lm-9, .js-electionSearch .l-grid-col-lm-10, .js-electionSearch .l-grid-col-m-9, .js-electionSearch .l-grid-col-m-10, .js-electionSearch .l-grid-col-sm-9, .js-electionSearch .l-grid-col-sm-10 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-grid-col-lm-10, .js-electionSearch .l-grid-col-m-10, .js-electionSearch .l-grid-col-sm-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%
    }
    .js-electionSearch .l-grid-col-lm-11, .js-electionSearch .l-grid-col-m-11, .js-electionSearch .l-grid-col-sm-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%
    }
    .js-electionSearch .l-grid-col-lm-11, .js-electionSearch .l-grid-col-lm-12, .js-electionSearch .l-grid-col-m-11, .js-electionSearch .l-grid-col-m-12, .js-electionSearch .l-grid-col-sm-11, .js-electionSearch .l-grid-col-sm-12 {
        position: relative;
        -webkit-box-flex: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-grid-col-lm-12, .js-electionSearch .l-grid-col-m-12, .js-electionSearch .l-grid-col-sm-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
    .js-electionSearch .l-grid-col-lm-2_4 {
        position: relative;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2.5%;
        padding-right: 2.5%
    }
    .js-electionSearch .l-index {
        margin-left: -1%;
        margin-right: -1%
    }
    .js-electionSearch .l-index-col {
        max-width: 50%;
        padding-left: 1%;
        padding-right: 1%
    }
    .js-electionSearch .l-calendar-day {
        min-height: 8em
    }
    .js-electionSearch .l-calendar-schedule {
        height: 60vh
    }
    .js-electionSearch .l-calendar-schedule-col, .js-electionSearch .l-calendar-timeline {
        min-height: 60vh
    }
    .js-electionSearch .l-calendar-note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .l-calendar-note-color {
        margin: 0 auto auto 0
    }
    .js-electionSearch .l-calendar-note-other {
        margin: 0 0 auto auto
    }
    .js-electionSearch .l-pager-prev {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        margin: auto auto auto 0
    }
    .js-electionSearch .l-pager-num {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        margin: auto
    }
    .js-electionSearch .l-pager-next {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
        margin: auto 0 auto auto
    }
    .js-electionSearch .header {
        -webkit-transition: transform .25s ease-out;
        transition: transform .25s ease-out
    }
    .js-electionSearch .header .header-menu {
        -webkit-transition: background-color .25s ease-out;
        transition: background-color .25s ease-out
    }
    .js-electionSearch .header {
        height: 70px
    }
    .js-electionSearch .is-scroll .header .header-menu {
        background-color: #fff;
        -webkit-box-shadow: 0 0 0 2px rgba(0, 0, 0, .05) !important;
        box-shadow: 0 0 0 2px rgba(0, 0, 0, .05) !important
    }
    .js-electionSearch .header-id {
        width: 130px
    }
    .js-electionSearch .header-id-img {
        width: 100px;
        left: 20px
    }
    .js-electionSearch .header-pickup {
        display: none
    }
    .js-electionSearch .header-tool {
        padding-right: 70px
    }
    .js-electionSearch .header-tool-btn {
        width: 70px;
        height: 70px
    }
    .js-electionSearch .header-tool-ico {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 40px;
        width: 40px;
        height: 40px;
        margin-top: -.15em;
        margin-bottom: -.5em
    }
    .js-electionSearch .header-tool-ico-menu {
        width: 28px;
        margin-top: 14px
    }
    .js-electionSearch .header-tool-ico-menu:before {
        top: -9px
    }
    .js-electionSearch .header-tool-ico-menu:after {
        bottom: -9px
    }
    .js-electionSearch .header-global-btn {
        font-size: 112.5%
    }
    .js-electionSearch .header-global-btn.is-sub {
        font-size: 75%
    }
    .js-electionSearch .header-global-subbtn {
        font-size: 81.3%
    }
    .js-electionSearch .disastermessage-main {
        top: 70px;
        left: 15px;
        right: 15px;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
    .js-electionSearch .footer-corp {
        padding: 50px 2.5%;
        text-align: center
    }
    .js-electionSearch .footer-btn {
        font-size: 75%;
        padding: .5em
    }
    .js-electionSearch .footer-item {
        padding: .25em
    }
    .js-electionSearch .footer-nav {
        display: none
    }
    .js-electionSearch .footer-copy {
        margin-top: 1.5em;
        font-size: 68.8%
    }
    .js-electionSearch .pagenav-btn {
        width: 54px;
        height: 54px;
        border-radius: 27px;
        top: 0
    }
    .js-electionSearch .pagenav-btn .svg-ico {
        top: 9px;
        left: 9px;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 36px;
        width: 36px;
        height: 36px
    }
    .js-electionSearch .pagenav-list {
        padding: 15px
    }
    .js-electionSearch .post .t, .js-electionSearch .t {
        font-size: 100%;
        line-height: 1.85
    }
    .js-electionSearch .post .t-s, .js-electionSearch .t-s {
        font-size: 87.5%;
        line-height: 1.7
    }
    .js-electionSearch .post .t-s-tb, .js-electionSearch .t-s-tb {
        font-size: 87.5% !important;
        line-height: 1.7 !important
    }
    .js-electionSearch .post .t-ss, .js-electionSearch .t-ss {
        font-size: 75%;
        line-height: 1.5
    }
    .js-electionSearch .post .t-ss-tb, .js-electionSearch .t-ss-tb {
        font-size: 75% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-main, .js-electionSearch .t-main {
        font-size: 180%;
        line-height: 1.5;
        margin-bottom: .3em
    }
    .js-electionSearch .post .t-0, .js-electionSearch .t-0 {
        font-size: 386.2%
    }
    .js-electionSearch .post .t-0-tb, .js-electionSearch .t-0-tb {
        font-size: 386.2% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-1, .js-electionSearch .t-1 {
        font-size: 309%
    }
    .js-electionSearch .post .t-1-tb, .js-electionSearch .t-1-tb {
        font-size: 309% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-2, .js-electionSearch .t-2 {
        font-size: 247.2%
    }
    .js-electionSearch .post .t-2-tb, .js-electionSearch .t-2-tb {
        font-size: 247.2% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-3, .js-electionSearch .t-3 {
        font-size: 197.8%
    }
    .js-electionSearch .post .t-3-tb, .js-electionSearch .t-3-tb {
        font-size: 197.8% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-4, .js-electionSearch .t-4 {
        font-size: 158.2%
    }
    .js-electionSearch .post .t-4-tb, .js-electionSearch .t-4-tb {
        font-size: 158.2% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-5, .js-electionSearch .t-5 {
        font-size: 126.6%
    }
    .js-electionSearch .post .t-5-tb, .js-electionSearch .t-5-tb {
        font-size: 126.6% !important;
        line-height: 1.5 !important
    }
    .js-electionSearch .post .t-6, .js-electionSearch .t-6 {
        font-size: 101.3%
    }
    .js-electionSearch .post .t-6-tb, .js-electionSearch .t-6-tb {
        font-size: 101.3% !important;
        line-height: 1.4 !important
    }
    .js-electionSearch .post .t-7, .js-electionSearch .t-7 {
        font-size: 81%
    }
    .js-electionSearch .post .t-7-tb, .js-electionSearch .t-7-tb {
        font-size: 81% !important;
        line-height: 1.3 !important
    }
    .js-electionSearch .post .t-category, .js-electionSearch .t-category {
        font-size: 250%
    }
    .js-electionSearch .post .t-display, .js-electionSearch .t-display {
        font-size: 2.4vw
    }
    .js-electionSearch .post .t-line, .js-electionSearch .t-line {
        padding: 0 1em
    }
    .js-electionSearch .post .t-line-txt, .js-electionSearch .t-line-txt {
        padding: 0 .75em
    }
    .js-electionSearch .nowrap-pc-tb, .js-electionSearch .nowrap-tb, .js-electionSearch .nowrap-tb-sp {
        display: inline-block;
        white-space: nowrap;
        text-decoration: inherit
    }
    .js-electionSearch .main-video {
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 160%
    }
    .js-electionSearch .main-video:before {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 56.25%
    }
    .js-electionSearch .main-txt {
        padding: 0 6%
    }
    .js-electionSearch .main.is-pickup .main-txt {
        padding-bottom: 70px
    }
    .js-electionSearch .main-txt-home {
        padding: 0 6%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        top: 42%
    }
    .js-electionSearch .main-title {
        font-size: 425%
    }
    .js-electionSearch .main-sub {
        font-size: 106.3%
    }
    .js-electionSearch .main-play {
        font-size: 187.5%
    }
    .js-electionSearch .main-pickup {
        left: 6%;
        right: 6%;
        bottom: 3vw
    }
    .js-electionSearch .banner {
        width: 280px
    }
    .js-electionSearch .banner-title {
        font-size: 106.3%
    }
    .js-electionSearch .banner-container {
        position: relative;
        width: 280px
    }
    .js-electionSearch .banner-main {
        width: 280px
    }
    .js-electionSearch .banner-group {
        height: 110px
    }
    .js-electionSearch .banner-btn {
        padding: 15px 15px 5px
    }
    .js-electionSearch .banner-close, .js-electionSearch .banner-open {
        display: none
    }
    .js-electionSearch .banner-img {
        width: 33%
    }
    .js-electionSearch .banner-data {
        width: 62%
    }
    .js-electionSearch .pickup, .js-electionSearch .pickup-bg {
        border-radius: 2em
    }
    .js-electionSearch .pickup-btn {
        font-size: 100%;
        padding: .8em 1em .8em 2.75em
    }
    .js-electionSearch .pickup-btn .ico-arrow-r-s {
        position: absolute;
        font-size: 120%;
        top: 50%;
        left: 1em;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
    .js-electionSearch .pickup-items {
        width: calc(100% - 79px);
        height: 100%
    }
    .js-electionSearch .pickup-nav-btn {
        width: 40px;
        height: 50px;
        padding: 0 5px
    }
    .js-electionSearch .pickup-nav-btn .svg-ico {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        font-size: 24px;
        width: 24px;
        height: 24px
    }
    .js-electionSearch #electionSearch-search .t-7{
        font-size: 100%;
    }

    .js-electionSearch #electionSearch-search .btn{
        font-size: 1.2vw;
    }
    .js-electionSearch .pickup-nav-btn.is-next {
        margin-right: 5px;
        margin-left: -5px
    }
    .js-electionSearch .form-content-query {
        width: 100%;
        left: 0;
    }
    .js-electionSearch .form-content-query .btn{
        border: none;
        border-radius: 0;
        color: #fff;
        background: #4a4a4a;
    }
    .js-electionSearch .form.is-col {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .form.is-col, .js-electionSearch .form.is-col .form-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .form.is-col .form-content {
        position: relative;
        width: calc(100% - 12em);
        margin: 0 auto 0 0
    }
    .js-electionSearch .form.is-col .form-content.is-single {
        width: 100%;
        margin: auto;
        max-width: 800px
    }
    .js-electionSearch .form.is-col .form-option {
        margin: auto 0 auto auto;
        width: 12em
    }
    .js-electionSearch .form-select {
        width: 9.3em;
        font-size: 90%
    }
    .js-electionSearch .form-select.is-prefecture {
        width: 13em
    }
    .js-electionSearch .form-select-wrap+div {
        margin-left: 1em
    }
    .js-electionSearch .form-tag {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .js-electionSearch .form-tag, .js-electionSearch .form-tag-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .form-option {
        margin: auto
    }
    .js-electionSearch .form-pickup {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .form-pickup .form-option {
        margin: auto 0 auto auto
    }
    .js-electionSearch .btn.is-l {
        padding: .7em 4em
    }
    .js-electionSearch .btn.is-hl {
        padding-top: 1.75em;
        padding-bottom: 1.75em
    }
    .js-electionSearch .btn-thumb-category {
        padding: 1em
    }
    .js-electionSearch .btn-ico {
        padding: 0 1.5vw 1.5vw
    }
    .js-electionSearch .btn-ico.is-l {
        padding: 1vw 0 1.5vw
    }
    .js-electionSearch .btn-ico-img {
        width: 70%
    }
    .js-electionSearch .btn-ico-img.is-limit {
        max-width: 120px
    }
    .js-electionSearch .btn-badge-img {
        max-width: 200px !important
    }
    .js-electionSearch .btn-file[target=_blank] .t-5:after {
        margin-top: -10px
    }
    .js-electionSearch .btn-file {
        padding: 3vw 0
    }
    .js-electionSearch .btn-file-ico {
        width: 50px
    }
    .js-electionSearch .btn-file-data {
        width: calc(100% - 40px)
    }
    .js-electionSearch .btn-file.is-s .btn-file-data {
        width: auto
    }
    .js-electionSearch .btn-other {
        width: 8em
    }
    .js-electionSearch .btn-member.is-s {
        max-width: 8em;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .js-electionSearch .btn-member.is-s.is-s {
        max-width: auto
    }
    .js-electionSearch .btn-member.is-l {
        text-align: left;
        width: 100%
    }
    .js-electionSearch .btn-member-photo {
        margin: auto;
        width: 80%
    }
    .js-electionSearch .btn-member.is-s .btn-member-photo {
        max-width: 60px;
        width: 80%
    }
    .js-electionSearch .btn-member-data {
        margin: 10px auto 0;
        width: 100%;
    }
    .js-electionSearch .is-ie .btn-member-data {
        height: 100%
    }
    .js-electionSearch .btn-member.is-s .btn-member-data {
        width: 100%;
        text-align: center
    }
    .js-electionSearch .btn-schedule {
        padding: 1em;
        margin: 2px
    }
    .js-electionSearch .btn-sitemap[target=_blank] .t-7:after, .js-electionSearch .btn-sitemap[target=_blank] .t-s:after {
        margin-top: -4px
    }
    .js-electionSearch .photo.is-title {
        max-width: 180px;
        width: 30%
    }
    .js-electionSearch .photo-member {
        max-width: 220px
    }
    .js-electionSearch .photo-member.is-page {
        max-width: none
    }
    .js-electionSearch .photo-ico {
        width: 50px;
        margin-top: -25px;
        margin-left: -25px
    }
    .js-electionSearch .photo-cover.is-w-tb, .js-electionSearch .photo-cover.is-w-tb-sp {
        width: 100%;
        height: auto;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
    .js-electionSearch .photo-youtube-bg {
        width: 136%;
        left: -18%
    }
    .js-electionSearch .tool .svg-ico-arrow-b {
        display: block;
        -webkit-transition: -webkit-transform .25s;
        transition: -webkit-transform .25s;
        transition: transform .25s;
        transition: transform .25s, .js-electionSearch -webkit-transform .25s
    }
    .js-electionSearch .tool.is-open .tool-nav {
        height: auto;
        overflow-y: visible
    }
    .js-electionSearch .tool.is-open .svg-ico-arrow-b {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg)
    }
    .js-electionSearch .tool-nav {
        position: relative;
        top: calc(100% + 2px);
        left: 0;
        z-index: 10;
        width: 100%;
        height: 0;
        overflow: hidden
    }
    .js-electionSearch .tool-nav.is-default-open {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: auto
    }
    .js-electionSearch .tool-nav.is-default-open .tool-btn {
        width: 33.33333%
    }
    .js-electionSearch .tool-nav.is-default-open.is-4 .tool-btn {
        width: 25%
    }
    .js-electionSearch .tool-nav.is-default-open.is-2 .tool-btn, .js-electionSearch .tool-nav.is-default-open.is-4 .tool-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .js-electionSearch .tool-nav.is-default-open.is-2 .tool-btn {
        width: 50%
    }
    .js-electionSearch .tool-btn {
        padding: 1em .75em;
        font-size: 81.3%
    }
    .js-electionSearch .news-item {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 1.25em 0
    }
    .js-electionSearch .news-item.is-s {
        padding: .75em 0
    }
    .js-electionSearch .news-tag {
        width: 100%;
        padding-bottom: .5em
    }
    .js-electionSearch .news-header {
        width: 100%;
        padding-bottom: .25em
    }
    .js-electionSearch .news-txt {
        padding: 1em 0
    }
    .js-electionSearch .news-campaign1 {
        color: #fff;
        padding: 2em;
        min-height: 180px
    }
    .js-electionSearch .news-campaign2 {
        padding: 2em;
        min-height: 180px
    }
    .js-electionSearch .list-item {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 1.25em 0
    }
    .js-electionSearch .list-item.is-s {
        padding: .75em 0
    }
    .js-electionSearch .list-tag {
        width: 8.5em;
        padding-bottom: .5em;
        margin-right: .5em
    }
    .js-electionSearch .list-tag .tag {
        display: block;
        text-align: center;
        margin: -.15em 0;
        font-size: 80%
    }
    .js-electionSearch .list-header {
        width: 10em;
        padding-bottom: .25em
    }
    .js-electionSearch .list-header.is-campaign {
        width: 7em
    }
    .js-electionSearch .list-body {
        width: 100%
    }
    .js-electionSearch .list-txt {
        padding: 1em 0
    }
    .js-electionSearch .list-ico-item {
        margin: 0 .5em 1.5em
    }
    .js-electionSearch .list-link .list-li, .js-electionSearch .list-member .list-li {
        width: 33.333%;
        text-align: left
    }
    .js-electionSearch .list-promise {
        margin-top: -1.5em
    }
    .js-electionSearch .list-promise .list-li {
        padding: .75em 0 .75em 2.5vw;
        margin-top: 1.5em
    }
    .js-electionSearch .list-search .list-li {
        padding: 1.25em 0
    }
    .js-electionSearch .post dd, .js-electionSearch .post li, .js-electionSearch .post p, .js-electionSearch .post td, .js-electionSearch .post th {
        font-size: 100%;
        line-height: 1.85
    }
    .js-electionSearch .post h2 {
        font-size: 119.5%
    }
    .js-electionSearch .post h3 {
        font-size: 95.6%
    }
    .js-electionSearch .post .answer dt, .js-electionSearch .post .question dt {
        width: 4em
    }
    .js-electionSearch .post .answer dd, .js-electionSearch .post .question dd {
        width: calc(100% - 5em)
    }
    .js-electionSearch .post a.btn-file .t-5:after {
        margin-top: -10px
    }
    .js-electionSearch .note {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .js-electionSearch .note-txt {
        margin: 0 auto auto 0
    }
    .js-electionSearch .note-link {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 3%;
        text-align: right;
        margin: 0 0 auto
    }
    .js-electionSearch .declaration {
        width: 170%
    }
    .js-electionSearch .col.is-movie, .js-electionSearch .col.is-note, .js-electionSearch .col.is-note-s {
        padding: 3vw
    }
    .js-electionSearch .table-td, .js-electionSearch .table-th {
        padding: .75em 1em
    }
    .js-electionSearch .table.is-address .table-td, .js-electionSearch .table.is-address .table-th {
        padding: .75em 0
    }
    .js-electionSearch .table-th.is-member, .js-electionSearch .table-th.is-os {
        width: 10em
    }
    .js-electionSearch .table-th.is-member-l {
        width: 20em
    }
    .js-electionSearch .table-th.is-member-m {
        width: 12em
    }
    .js-electionSearch .table-th.is-member-s, .js-electionSearch .table-th.is-minister-s, .js-electionSearch .table-th.is-officer-s {
        width: 8em
    }
    .js-electionSearch .table-td.is-minister-data, .js-electionSearch .table-td.is-officer-data {
        width: 52%
    }
    .js-electionSearch .history-photo-1 {
        top: 9%;
        right: 0;
        width: 24%
    }
    .js-electionSearch .history-photo-2 {
        top: 18%;
        right: 0;
        width: 48%
    }
    .js-electionSearch .history-photo-3 {
        top: 50%;
        right: 2%;
        width: 20%
    }
    .js-electionSearch .history-photo-4 {
        top: 16%;
        right: 40%;
        width: 16%
    }
    .js-electionSearch .calendar-nav-title {
        font-size: 274.7%;
        line-height: 1.5;
        text-align: center;
        padding-bottom: .05em
    }
    .js-electionSearch .calendar-btn, .js-electionSearch .calendar-nav-mode .calendar-btn {
        font-size: 87.5%
    }
    .js-electionSearch .calendar-btn.is-next .ico-arrow-l-s, .js-electionSearch .calendar-btn.is-prev .ico-arrow-l-s {
        margin-left: -.5em
    }
    .js-electionSearch .calendar-day .calendar-btn, .js-electionSearch .calendar-week {
        font-size: 87.5%
    }
    .js-electionSearch .calendar-schedule-data {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 1em;
        width: calc(100% - 2.5em)
    }
    .js-electionSearch .calendar-schedule-title {
        width: 100%;
        margin-bottom: .5em;
        padding-right: 3em
    }
    .js-electionSearch .calendar-schedule-body {
        width: 100%
    }
    .js-electionSearch .calendar-schedule-btn {
        top: .5em;
        right: .5em;
        padding-top: .5em;
        padding-bottom: .5em
    }
    .js-electionSearch .calendar-schedule-btn .svg-ico.svg-ico-plus {
        margin-right: 0
    }
    .js-electionSearch .calendar-schedule-btn-label {
        display: none
    }
    .js-electionSearch .calendar-subbtn {
        font-size: 68.8%;
        padding: .5em
    }
    .js-electionSearch .calendar-subbtn-label {
        display: none
    }
    .js-electionSearch .calendar-container.is-timeline .calendar-info {
        width: 300px
    }
    .js-electionSearch .calendar-info {
        font-size: 81.3%;
        padding: .75em;
        width: 200%;
        border-radius: 10px
    }
    .js-electionSearch .calendar-info .calendar-closebtn {
        padding: .45em;
        font-size: 20px
    }
    .js-electionSearch .calendar-info-data {
        max-height: 16em
    }
    .js-electionSearch .schedule-table {
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-table-tr {
        border-top: 2px solid #2d2b2b;
        min-height: 5em
    }
    .js-electionSearch .schedule-table-th {
        padding: 2.5em 0;
        text-align: center
    }
    .js-electionSearch .schedule-table-td {
        padding: .25em 0
    }
    .js-electionSearch .schedule-table-td .btn-schedule {
        margin: .25em 0
    }
    .js-electionSearch .schedule-table-td .btn-schedule .btn-member.is-single {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        margin-left: 0;
        margin-right: 1em
    }
    .js-electionSearch .schedule-table-td .btn-schedule .btn-member.is-single .btn-member-photo {
        margin-left: 0
    }
    .js-electionSearch .schedule-table-td .btn-schedule .btn-member.is-single .btn-member-data {
        width: 55%;
        text-align: left
    }
    .js-electionSearch .schedule-table-td .btn-member.is-single {
        max-width: 160px
    }
    .js-electionSearch .schedule {
        grid-template-rows: 1fr auto auto auto auto;
        grid-template-columns: 3em calc(50% - 1.5em) calc(50% - 1.5em)
    }
    .js-electionSearch .schedule>:first-child {
        -ms-grid-row: 1;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(2) {
        -ms-grid-row: 1;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(3) {
        -ms-grid-row: 1;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(4) {
        -ms-grid-row: 2;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(5) {
        -ms-grid-row: 2;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(6) {
        -ms-grid-row: 2;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(7) {
        -ms-grid-row: 3;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(8) {
        -ms-grid-row: 3;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(9) {
        -ms-grid-row: 3;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(10) {
        -ms-grid-row: 4;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(11) {
        -ms-grid-row: 4;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(12) {
        -ms-grid-row: 4;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule>:nth-child(13) {
        -ms-grid-row: 5;
        -ms-grid-column: 1
    }
    .js-electionSearch .schedule>:nth-child(14) {
        -ms-grid-row: 5;
        -ms-grid-column: 2
    }
    .js-electionSearch .schedule>:nth-child(15) {
        -ms-grid-row: 5;
        -ms-grid-column: 3
    }
    .js-electionSearch .schedule-header {
        font-size: 81.3%;
        font-size: 68.8%;
        min-height: 5em;
        padding: .5em;
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-header1 {
        border-top: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-item .btn-schedule {
        width: calc(100% - 4px);
        height: calc(100% - 4px)
    }
    .js-electionSearch .schedule-item .btn-schedule.is-tb-sp-h {
        height: auto;
        min-height: calc(50% - 4px)
    }
    .js-electionSearch .schedule-item {
        border-bottom: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-item1 {
        border-top: 2px solid #2d2b2b
    }
    .js-electionSearch .schedule-item-blank {
        grid-column: 2/4
    }
    .js-electionSearch .schedule-group1 {
        grid-column: 2/3
    }
    .js-electionSearch .schedule-group2 {
        grid-column: 3/4
    }
    .js-electionSearch .friendly-img-t1 {
        width: 50%;
        top: -3vw;
        left: -3vw
    }
    .js-electionSearch .friendly-img-t2 {
        width: 30%;
        top: 40%;
        right: -2vw
    }
    .js-electionSearch .friendly-img-b1 {
        width: 40%;
        bottom: 20%;
        left: 0
    }
    .js-electionSearch .friendly-img-b2 {
        width: 60%;
        bottom: 4vw;
        right: -2vw
    }
    .js-electionSearch .president-line {
        left: 10%
    }
    .js-electionSearch .president-center, .js-electionSearch .president-left, .js-electionSearch .president-right {
        position: relative;
        width: 75%;
        margin-bottom: 2em;
        float: right
    }
    .js-electionSearch .president-center .president-year, .js-electionSearch .president-left .president-year, .js-electionSearch .president-right .president-year {
        width: 30%;
        right: 105%
    }
    .js-electionSearch .president-center .president-year-line, .js-electionSearch .president-left .president-year-line, .js-electionSearch .president-right .president-year-line {
        width: 50%;
        right: -45%;
        top: 1.5em
    }
}

@media (min-width:414px) and (max-width:599px) {
    .js-electionSearch .sps {
        display: none !important
    }
    .js-electionSearch .footer-corp {
        padding: 40px
    }
    .js-electionSearch .post .t-display, .js-electionSearch .t-display {
        font-size: 3.6vw
    }
    .js-electionSearch .main.is-pickup .main-txt {
        padding-bottom: 110px !important
    }
    .js-electionSearch .main-title {
        font-size: 375% !important
    }
    .js-electionSearch .btn-ico-img {
        width: 90%
    }
    .js-electionSearch .declaration {
        width: 250% !important
    }
}

@media print {
    .js-electionSearch body {
        zoom: 1;
        size: A4;
        margin: 7mm 5mm;
        -webkit-font-feature-settings: normal;
        font-feature-settings: normal;
        overflow-x: auto;
        overflow-y: auto;
        -webkit-print-color-adjust: exact;
        -ms-overflow-style: none
    }
    .js-electionSearch body.is-print-pc {
        min-width: 1000px
    }
    .js-electionSearch .l-container {
        overflow-x: auto;
        overflow-y: auto;
        -ms-overflow-style: none
    }
    .js-electionSearch .footer, .js-electionSearch .header, .js-electionSearch .isnt-print {
        display: none !important
    }
    .js-electionSearch .l-content-col {
        max-width: none !important;
        width: 100%
    }
    .js-electionSearch .l-col.is-limit-pc {
        width: 90%;
        max-width: none
    }
    .js-electionSearch .table-th.is-member-l {
        width: 18em
    }
    .js-electionSearch .table-th.is-member-m {
        width: 14em
    }
    .js-electionSearch .table-th.is-member-s {
        width: 10em
    }
    .js-electionSearch .isnt-print {
        display: none !important
    }
    .js-electionSearch .is-print {
        display: block !important
    }
}

@media (min-width:600px) and (max-width:799px) {
    .js-electionSearch .member {
      background: #FFF;
      border-radius: 9.375vw 0;
      padding: 6.25vw 6.25vw;
    }
    .js-electionSearch .member .classification {
      font-size: 0.7rem;
      font-size: 3.6458333333vw;
      font-weight: bold;
      margin-bottom: 3.125vw;
    }
    .js-electionSearch .member__left {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
    }
    .js-electionSearch .member__left a {
      text-decoration: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      color: #000;
    }
    .js-electionSearch .member__photo {
      width: 24.375vw;
      border-radius: 50%;
      overflow: hidden;
      position: relative;
    }
    .js-electionSearch .member__photo img {
      width: 100%;
      height: auto;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
              transform: translate(-50%, 0);
      -o-object-fit: cover;
         object-fit: cover;
    }
    .js-electionSearch .member__base {
      padding-left: 6.25vw;
    }
    .js-electionSearch .member__kana {
      font-size: 0.6rem;
      font-size: 3.125vw;
      font-weight: bold;
      line-height: 1.9;
    }
    .js-electionSearch .member__name {
      font-size: 1.15rem;
      font-size: 5.9895833333vw;
      letter-spacing: -0.03em;
      line-height: 1;
      position: relative;
      z-index: 2;
    }
    .js-electionSearch .member__link {
      font-size: 0.7rem;
      font-size: 3.6458333333vw;
      margin: 1em 1em 0 0;
    }
    .js-electionSearch .member__link span {
      position: relative;
      text-decoration: none;
      color: #000;
      /*
      &::after {
        content:'';
        width: 0.5em;
        height: 0.5em;
        border: 0.15em solid #df1f1f;
        border-top: 0;
        border-right: 0;
        transform: rotate(-135deg);
        transform-origin: bottom left;
        position: absolute;
        left:2em;
        top:50%;
        margin-top: -.5em;
        box-sizing: border-box;
      }
      */
    }
    .js-electionSearch .member__link span::before {
      content: "";
      display: inline-block;
      vertical-align: middle;
      color: #333;
      line-height: 1;
      background: url(../img/ico_detail.png) no-repeat 0 0;
      background-size: 100% !important;
      width: 6.09375vw;
      height: 3.28125vw;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-0.625vw);
          -ms-transform: translateY(-0.625vw);
              transform: translateY(-0.625vw);
      margin-right: 0.5em;
    }
    .js-electionSearch .member__profile--detail {
      margin-top: 6.25vw;
      font-size: 0.9rem;
      font-size: 4.6875vw;
      font-weight: bold;
      line-height: 1.4444444444;
    }
    .js-electionSearch .member__profile--detail span {
      display: block;
      font-weight: normal;
    }
    .js-electionSearch .member__profile--sns {
      margin-top: 4.6875vw;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
    }
    .js-electionSearch .member__profile--sns > li {
      width: 10vw;
      margin-right: 1.5625vw;
    }
    .js-electionSearch .member__profile--sns > li:last-child {
      margin-right: 0;
    }
    .js-electionSearch .member__profile--sns a {
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
    }
    .js-electionSearch .member__profile--sns a:hover {
      opacity: 0.5;
    }
    .js-electionSearch .member__profile--sns .sns__detail--face > a {
      width: 8.125vw;
      height: 8.125vw;
    }
    .js-electionSearch .member__profile--sns .sns__detail--twitt > a {
      width: 8.125vw;
      height: 8.125vw;
    }
    .js-electionSearch .member__profile--sns .sns__detail--line > a {
      width: 8.125vw;
      height: 8.125vw;
    }
    .js-electionSearch .member__profile--sns .sns__detail--youtube > a {
      width: 8.125vw;
      height: 8.125vw;
    }
    .js-electionSearch .member__profile--sns .sns__detail--insta > a {
      width: 8.125vw;
      height: 8.125vw;
    }
    .js-electionSearch .member__profile--sns .sns__detail--web > a {
      width: 8.125vw;
      height: 8.125vw;
    }
    .js-electionSearch .member__profile--sns .sns__detail--blog > a {
      width: 7.8125vw;
      height: 8.125vw;
    }
    .js-electionSearch .member__profile--sns .sns__detail--mail > a {
      width: 8.125vw;
      height: 8.125vw;
    }
    .js-electionSearch .wrapper {
      margin-top: 0;
    }

}

@media (min-width:800px) and (max-width:1279px) {
    .js-electionSearch .candidate__index--tit {
         margin: 0 auto 3.125vw;
         font-size: 3.359375vw;
    }
     .js-electionSearch .serch_keyword {
         font-size: 2.265625vw;
    }
     .js-electionSearch .member {
         border-radius: 4.6875vw 0;
         padding: 3.125vw 5.46875vw;
    }
     .js-electionSearch .member .classification {
         font-size: 1.40625vw;
         top: 1.09375vw;
         left: 2.1875vw;
    }
     .js-electionSearch .member__photo {
         width: 10.15625vw;
    }
     .js-electionSearch .member__base {
         width: calc(100% - 40 / 1280 * 100vw);
         padding-left: 3.125vw;
    }
     .js-electionSearch .member__kana {
         font-size: 1.5625vw;
    }
     .js-electionSearch .member__name {
         font-size: 3.203125vw;
    }
     .js-electionSearch .member__name.adjust {
         font-size: 2.96875vw;
    }
     .js-electionSearch .member__link {
         font-size: 1.40625vw;
    }
     .js-electionSearch .member__link span::before {
         width: 2.03125vw;
         height: 1.09375vw;
         margin-right: 0.5em;
    }
     .js-electionSearch .member__profile--detail {
         font-size: 1.40625vw;
    }
     .js-electionSearch .member__profile--sns > li {
         margin-right: 1.171875vw;
    }
     .js-electionSearch .member__profile--sns > li:nth-child(n + 5) {
         margin-top: 1.171875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--face > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--twitt > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--line > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--youtube > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--insta > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--web > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--blog > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
     .js-electionSearch .member__profile--sns .sns__detail--mail > a {
         width: 2.96875vw;
         height: 2.96875vw;
    }
}

@media (min-width:1280px) {
    .js-electionSearch .candidate__index--tit {
        margin: 0 auto 40px;
        font-size: 43px;
    }

    .js-electionSearch .serch_keyword {
        font-size: 29px;
    }

    .js-electionSearch .member {
         border-radius: 60px 0;
         padding: 40px 70px;
    }
    .js-electionSearch .member .classification {
         font-size: 18px;
         top: 14px;
         left: 28px;
    }
    .js-electionSearch .member__photo {
         width: 130px;
    }
    .js-electionSearch .member__base {
         width: calc(100% - 40px);
         padding-left: 40px;
    }
    .js-electionSearch .member__kana {
         font-size: 20px;
    }
    .js-electionSearch .member__name {
         font-size: 41px;
    }
    .js-electionSearch .member__name.adjust {
         font-size: 38px;
    }
    .js-electionSearch .member__link {
         font-size: 18px;
    }
    .js-electionSearch .member__link span::before {
         width: 26px;
         height: 14px;
         margin-right: 0.5em;
    }
    .js-electionSearch .member__profile--detail {
         font-size: 18px;
    }
    .js-electionSearch .member__profile--sns > li {
         margin-right: 15px;
    }
    .js-electionSearch .member__profile--sns > li:nth-child(n + 5) {
         margin-top: 15px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--face > a {
         width: 38px;
         height: 38px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--twitt > a {
         width: 38px;
         height: 38px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--line > a {
         width: 38px;
         height: 38px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--youtube > a {
         width: 38px;
         height: 38px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--insta > a {
         width: 38px;
         height: 38px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--web > a {
         width: 38px;
         height: 38px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--blog > a {
         width: 38px;
         height: 38px;
    }
    .js-electionSearch .member__profile--sns .sns__detail--mail > a {
         width: 38px;
         height: 38px;
    }
 

    .js-electionSearch .carousel.is-cafesta .carousel-panel, .js-electionSearch .carousel.is-history .carousel-panel {
        padding: 0 16px !important
    }
    .js-electionSearch .l-content-col {
        padding: 0 133px !important
    }
    .js-electionSearch .l-content-col.isnt-maw {
        padding: 0 8.3% !important
    }
    .js-electionSearch .post .t-display, .js-electionSearch .t-display {
        font-size: 25.6px !important
    }
    .js-electionSearch .isnt-max-w .post .t-display, .js-electionSearch .isnt-max-w .t-display, .js-electionSearch .post .t-display.isnt-max-w, .js-electionSearch .t-display.isnt-max-w {
        font-size: 1.1vw !important
    }
    .js-electionSearch .isnt-max-w .post .t-display.is-limit, .js-electionSearch .isnt-max-w .t-display.is-limit, .js-electionSearch .post .t-display.isnt-max-w.is-limit, .js-electionSearch .t-display.isnt-max-w.is-limit {
        font-size: 25.6px !important
    }
    .js-electionSearch .btn-file {
        padding: 20px !important
    }
    .js-electionSearch .col.is-note {
        padding: 40px !important
    }
    .js-electionSearch .col.is-note-s {
        padding: 20px !important
    }
    .js-electionSearch .col.is-movie {
        padding: 40px !important
    }
}