html,body{
    height: 100%;
}

a {
    color: #31302B;
}
a:hover {
    color: #0089FF;
    text-decoration: underline;
}

.cover #wrapper {
    position: relative;
    min-height: 100%;
    height: 100%;
    padding: 20px;
}

.cover #wrapper #wrapper-inner{
    position: relative;
    min-height: 420px;
    height: 100%;
    border: 2px solid #000;
    background-color: #FFFCFB;
}

.cover #contents {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    max-height: 250px;
}

.cover footer {
    position: absolute;
    bottom: 50px;
    width: 100%;
    background-color: inherit;
}

.fnav {
    width: 3rem;
    margin: 0 auto;
}

.fnav li {
    list-style-image: url('/_img/arrow01.png');
    font-size: 0.75rem;
}

#copyright {
    font-size: 0.563rem;
    text-align: center;
}

.cover h1 {
    margin-bottom: 60px;
}

#to-idee,
#to-chou2 {
    display: block;
    padding: 20px 0;
    text-align: center;
    border-top: 1px solid #31302B;
    border-bottom: 1px solid #31302B;
    position: relative;
    transition: background-color .5s;
    font-weight: 600;
}

#to-idee:before,
#to-chou2:before {
    content: "";
    background-image: url('/_img/arrow02.png');
    background-repeat: no-repeat;
    background-position: center;
    width: 14px;
    height: 7px;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}



#to-idee:hover,
#to-chou2:hover {
    background-color: #FDF2E9;
    color: #31302B;
    text-decoration: none;
}




/* Small only */
@media screen and (max-width: 39.9375em) {
    .cover #wrapper {
        padding: 0;
    }
    .cover #wrapper #wrapper-inner {
        border: none;
    }
    #to-idee,
    #to-chou2 {
        background-color: #fff;
        border: 1px solid #CACACA;
        border-radius: 2px;
        margin-bottom: 60px;
    }
    .cp-reborn {
        background-image: url('/_img/opcp.png');
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        display: block;
        width: 100%;
        height: 22px;
        top: -12px;
    }
    #to-idee:before,
    #to-chou2:before {
        background-image: url('/_img/sp_arrow.png');
        left: 20px;
        height: 12px;
        width: 12px;
    }
    #pros_renewal::before{
      content: "";
      background-repeat: no-repeat;
      background-image: url(/_img/renewal_open.png);
      background-size: contain;
      background-position: center;
      display: block;
      width: 270px;
      height: 60px;
      position: absolute;
      top: 200px;
      z-index: 100;
      left: 0;
      right: 0;
      margin: auto;
    }
}

/* Medium and up */
@media screen and (min-width: 40em) {}

/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .cover #wrapper {
        padding: 0;
    }
    .cover #wrapper #wrapper-inner {
        border: none;
    }
    #to-idee,
    #to-chou2 {
        background-color: #fff;
        border: 1px solid #CACACA;
        border-radius: 2px;
        margin-bottom: 60px;
    }
    .cp-reborn {
        background-image: url('/_img/opcp.png');
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        display: block;
        width: 100%;
        height: 22px;
        top: -12px;
    }
    #to-idee:before,
    #to-chou2:before {
        background-image: url('/_img/sp_arrow.png');
        left: 20px;
        height: 12px;
        width: 12px;
    }
    #pros_renewal::before{
      content: "";
      background-repeat: no-repeat;
      background-image: url(/_img/renewal_open.png);
      background-size: contain;
      background-position: center;
      display: block;
      width: 270px;
      height: 70px;
      position: absolute;
      top: 208px;
      z-index: 100;
      left: 0;
      right: 0;
      margin: auto;
    }
}

/* Large and up */
@media screen and (min-width: 64em) {
    .cp-reborn {
        background-image: url('/_img/opcp.png');
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        display: block;
        width: 100%;
        height: 22px;
        bottom: -12px;
    }
    #pros_renewal::before{
      content: "";
      background-repeat: no-repeat;
      background-image: url(/_img/renewal_open.png);
      background-size: contain;
      background-position: center;
      display: block;
      width: 280px;
      height: 60px;
      position: absolute;
      top: 90px;
      z-index: 100;
    }
}

/* Large only */
@media screen and (min-width: 64em) and (max-width: 74.9375em) {


}
