/* body ******************************************************************/
.database .body_wrapper {
    padding: 50px 0;
    background-color: transparent;
    border-bottom-left-radius: 0 0;
    border-bottom-right-radius: 0 0;
}



/* form ******************************************************************/
.database form {
    margin: 0;
    padding: 0;
    text-align: center;
}
.database form ul {
    display: flex;
    justify-content: center;
}
.database form li {
    margin-right: 10px;
}
.database form li:last-child {
    margin-right: none;
}
.database form .selector {
    margin: 0 auto;
    padding: 0 5px;
    width: 100%;
    background: #fff;
    border: 2px #000 solid;
    border-radius: 15px;
    box-sizing: border-box;
}
.database form .selector select{
    padding: 5px;
    width: 100%;
    color: #000;
    font-weight: bold;
    font-size: 20px;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
}
.database form .selector input{
    padding: 5px;
    font-size: 20px;
    outline: none;
    border: none;
    border-radius: 15px;
}
.database form .submit{
    padding: 5px 20px;
    display: block;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    text-decoration: none;
    background: #000;
}
.database form .submit:hover{
    opacity: 0.8;
    cursor: pointer;
}
.database form .comment {
    margin-bottom: 10px;
    font-size: 0.9em;
}




/* contents ******************************************************************/
.block_contents .articlelist {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    text-align: center;
    font-size: 14px;
    text-align: center;
}
.block_contents .articlelist figure {
    margin: 0 0 30px 0;
    pading: 0;
    width: 26%;
}
.block_contents figure img {
    width: 100%;
}
.block_contents figcaption {
    font-size: 0;
}
.block_contents figcaption div {
    display: inline-block;
    margin: 0;
    padding: 2px 10px;
    border-left: 1px #666 solid;
    font-size: 12px;
}
.block_contents figcaption div:first-child {
    border-left: none;
}
.block_contents.winner figure {
    margin: 0 auto;
    width: 50%;
}
.block_contents.winner figcaption {
    font-size: 14px;
}

a.showAll {
    margin: 20px auto;
    padding: 10px;
    display: block;
    width: 70%;
    text-align: center;
    color: #333;
    font-size: 1.2em;
    font-weight: bold;
    text-decoration: none;
    background: #ebca31;
    border: 2px solid #333;
    border-radius: 10px;
}
.block_contents.showAll {
    display: none;
}





.senbatsu .block_title img {
    width: 80%;
}
.senbatsu .division {
    margin: 40px auto 10px;
}
.senbatsu .block_contents figure a:hover {
    opacity: 0.9;
}
.senbatsu .block_contents figcaption div {
    display: block;
    border: none;
    text-align: left;
}
.senbatsu .block_contents figcaption div.id,
.senbatsu .block_contents figcaption div.theme,
.senbatsu .block_contents figcaption div.description {
    display: none;
}
.senbatsu .block_contents figcaption div.award {
    background: #fff399;
    font-weight: bold;
    border-radius: 5px;
    text-align: center;
}
.senbatsu .block_contents figcaption div.pen_name {
    font-weight: bold;
}
.senbatsu .block_contents figcaption div.is_sexual,
.senbatsu .block_contents figcaption div.is_extreme {
    color: #a00;
    font-style: italic;
}
.senbatsu .block_contents figure .images {
    display: none;
}

.senbatsu .block_contents .showOthers {
    display: none;
}
.senbatsu .block_contents.others>h2,
.senbatsu .block_contents.others .articlelist {
    display: none;
}
.senbatsu .block_contents.others .showOthers {
    display: block;
}
.senbatsu .block_contents.others .showOthers button {
    margin-bottom: 30px;
    padding: 10px 30px;
    outline: none;
    border: 1px solid #333;
    border-radius: 20px;
    font-size: 1.2em;
}


.senbatsu .overlay {
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.8);
    display: none;
    width: 100%;
    height: 100%;
}
.senbatsu .overlay>div {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
}
.senbatsu .overlay .prev,
.senbatsu .overlay .next {
    width: 10%;
    text-align: center;
}
.senbatsu .overlay .prev img,
.senbatsu .overlay .next img {
    max-width: 100%;
}
.senbatsu .overlay .id {
    display: none;
}
.senbatsu .overlay .overlayBase {
    position: relative;
    margin: 8% auto 0 auto;
    padding: 0;
    width: 80%;
    height: 80%;
    background: #fff;
    overflow-y: scroll;
    text-align: left;
    box-sizing: border-box;
    max-width: 700px;
}
.senbatsu .overlay .close {
    position: absolute;
    top: 100px;
    right: 20px;
    width: 30px;
    height: 30px;
}
.senbatsu .overlay .close img {
    width: 100%;
}
.senbatsu .overlay figure a {
    display: none;
}
.senbatsu .overlay .images {
    position: relative;
    width: 100%;
}
.senbatsu .overlay .images img {
    width: 100%;
}
.senbatsu .overlay figcaption {
    margin: 0 0 20px 0;
}
.senbatsu .overlay div.award {
    margin-bottom: 10px;
    width: auto;
    background: #eec52b;
    font-weight: bold;
    font-size: 1.4em;
    border-radius: 10px;
    text-align: center;
    color: #fff;
}
.senbatsu .overlay div.pen_name,
.senbatsu .overlay div.title {
    font-weight: bold;
}
.senbatsu .overlay div.title {
    margin-top: 10px;
}
.senbatsu .overlay div.title,
.senbatsu .overlay div.description {
    padding: 5px;
    background: #dfeabe;
}
.senbatsu .overlay div.fest_number {
    text-align: center;
    font-weight: bold;
    font-size: 2em;
}
.senbatsu .overlay div.theme,
.senbatsu .overlay div.fest_number br {
    display: none;
}
.cms .title_wrapper.bottom_fit {
    padding: 100px 0 0 0;
}
/*過去のテーマ一覧*/
.old_theme_link  {
    margin: 0 auto;
    width: 50%;
    max-width: 250px;
}
.old_theme_link a {
    display: block;
    margin: 30px 10px;
}
.old_theme_link img {
    width: 100%;
}