body {
    font-size: 10pt;
}

h1, p, ul {
    margin: 0;
}

a {
    color: #FFF;
    text-decoration: none;
}

.wrap {
    min-height: 100%; position: relative;
}

header {
    padding: 10px; height: 100px;
}

header, footer {
    background-color: #CD0000;
    text-align: center;
    color: #FFF;
}

header h1 {
    font-size: 30pt;
    font-weight: 400;
    line-height: 100px;
}

.fixed {
    position: fixed;
    width: 100%;
    top: 0;
}

nav {
    margin: 0 auto;
    z-index: 50;
}

nav ul {
    list-style-type: none;
    padding: 0;
    text-align: center;
    background-color: #9A0000;
}

nav ul li, nav ul li:hover, article div.news_article div[name='download'] div, article div.news_article div[name='download'] div:hover, article div.pages a, article div.pages a:hover, article .project_status_count, article .project_status_count:hover, article .project_buttons a, article .project_buttons a:hover, .episode_img, .episode_img:hover {
    -webkit-transition: background-color 300ms linear;
    -moz-transition: background-color 300ms linear;
    -o-transition: background-color 300ms linear;
    -ms-transition: background-color 300ms linear;
    transition: background-color 300ms linear;
}

nav ul li {
    font-size: 16pt;
    background-color: #9A0000;
    color: #FFF;
    display: inline-table;
    width: 34.5%;
    text-transform: uppercase;
    vertical-align: middle;
    padding-top: 5px;
    padding-bottom: 5px;
}

nav ul li:hover, nav ul li.active {
    background-color: #770000;
}

nav ul li span {
    display: table-cell;
    vertical-align: middle; 
}

article {
    width: 69%;
    margin: 0 auto;
    padding-bottom: 65px;
}

article p {
    text-align: center;
}

.information {
    background-color: #EDF1FF;
    border: 1px solid #00092B;
    color: #041032;
    height: 50px;
    line-height: 50px;
    text-align: center;
    width: 50%;
    margin: 0 auto;
    margin-top: 5px;
}

.error {
    background-color: #FFD6D6;
    border: 1px solid #CD0000;
    color: #450000;
}

.success {
    background-color: #EDFFE0;
    border: 1px solid #296000;
    color: #0D1F00;
}

/* NEWS */

article div.news_article {
    margin-top: 5px;
    margin-bottom: 10px;
    border-left: 2px solid #CD0000;
    border-right: 2px solid #CD0000;
}

article div.news_article div[name='download'] {
    padding: 2px 4px;
}

article div.news_article div[name='title'], article div.news_article div[name='date'], article div.news_article div[name='news_text'] {
    padding: 4px 10px;
}

article div.news_article div[name='title'] {
    text-align: left;
    font-size: 17pt;
    color: #FFF;
    background-color: #CD0000;
}

article div.news_article div[name='date'] {
    background-color: #CD0000;
    color: #FFF;
    font-size: 13pt;
    clear: both;
}

article div.news_article div[name='download'] {
    text-align: center;
}

article div.news_article div[name='download'] div {
    display: inline-block;
    background-color: #BC0000;
    color: #FFF;
    text-transform: uppercase;
    font-size: 17pt;
    font-weight: 400;
    padding: 3px 30px;
}

article div.news_article div[name='download'] div:hover {
    background-color: #9A0000;
}

article div.news_article div[name='episode_image'] {
    text-align: center;
    margin-bottom: -4px;
    padding-top: 2px;
}

article div.news_article div[name='episode_image'] div {
    display: inline-block;
    width: 33.33%;
    padding-bottom: 18%;
}

article div.news_article div[name='episode_image'] img {
    height: 120px;
    min-width: 160px;
    max-width: 214px;
}

article div.pages {
    padding: 5px;
    text-align: center;
}

article div.pages a {
    padding: 5px 10px;
    background-color: #CD0000;
}

article div.pages a:hover, article div.pages a.active {
    background-color: #9A0000;
}

.news_project_img {
    float: left;
    margin: -4px 0px -4px -10px;
    padding-left: 92px;
    padding-bottom: 37px;
}

/* PROJECTS */

article .project_status_count_wrap .active, article .project_status_count:hover {
    background-color: #9A0000;
}

article .project_status_count {
    display: inline-block;
    background-color: #CD0000;
    width: 16.66%;
    text-align: center;
    margin-top: 5px;
    padding: 5px 0;
    font-family: Rajdhani;
    font-size: 12pt;
}

article .project_list_wrap {
    margin-top: 5px;
}

article .project_list_element {
    border-left: 3px solid #CD0000;
    border-right: 3px solid #CD0000;
    border-bottom: 3px solid #CD0000;
    width: 49.8%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    display: inline-block;
    margin-bottom: 5px;
}

article .project_title {
    font-family: Rajdhani;
    font-size: 16pt;
    background-color: #CD0000;
    color: #FFF;
    padding: 2px 6px;
    text-align: center;
}

article .right {
    float: right;
}

article .project_data table {
    border-spacing: 0;
    border-collapse: collapse;
}

article .project_data table th {
    background-color: #9A0000;
    color: #FFF;
    font-weight: 400;
    padding: 3px 6px;
    text-align: right;
    width: 140px;
}

article .project_data table td.project_image {
    width: 140px;
    height: 200px;
    padding: 0;
    background-repeat: no-repeat;
}

img {
    margin-bottom: -5px;
}

article .project_data table td.data {
    padding: 3px 6px;
}

article .project_details {
    border-right: 4px solid #CD0000;
}

.project_cover {
    width: 210px;
    height: 300px;
}

article .title {
    font-family: Rajdhani;
    font-size: 16pt;
    text-align: center;
    background-color: #CD0000;
    color: #FFFFFF;
    padding: 3px 0;
}

article .jap_title {
    font-size: 13pt;
}

article .project_table {
    display: table;
    width: 100%;
    height: 300px;
    font-size: 11pt;
}

article .project_table_cell {
    display: table-cell;
    vertical-align: top;
    width: 50%;
}

article .project_data_row {
    display: table-row;
}

article .header_cell, article .data_cell {
    display: table-cell;
    vertical-align: middle;
    padding: 3px 8px;
    font-size: 10pt;
}

article .header_cell {
    width: 40%;
    background-color: #9A0000;
    color: #FFFFFF;
    text-align: right;
}

article .data_cell {
    width: 60%;
}

article .data_cell a {
    color: #CD0000;
}

article .data_cell a:hover {
    color: #9A0000;
}

.episode_list_wrap {
    border-left: 4px solid #CD0000;
}

.episode_list_element {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    width: 25%;
    display: inline-block;
    text-align: center;
    border-right: 4px solid #CD0000;
}

.episode_count, .btn_ddl, .btn_online {
    background-color: #CD0000;
    color: #FFFFFF;
    font-family: Rajdhani;
    font-size: 13pt;
    position: absolute;
    padding: 4px 10px;
    width: 60px;
}

.episode_count {
    font-size: 18pt;
    z-index: 3;
    width: 30px;
}

.btn_ddl {
    margin-top: 110px;
    z-index: 3;
}

.btn_online {
    margin-top: 145px;
    z-index: 3;
}

.episode_img {
    width: 100%;
    height: 200px;
}

.episode_img:hover {
    background-color: rgba(0,0,0,.3);
}

.episode_img_wrap {
    background-position: 50% 35%;
    background-repeat: no-repeat;
    background-size: 110%;
}

.grayscale {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

.episode_title {
    background-color: #9A0000;
    color: #FFFFFF;
    font-family: Rajdhani;
    font-size: 14pt;
    font-weight: 500;
    padding: 2px;
}

.title_kanji {
    font-size: 10pt;
    font-family: Noto Sans;
}

.onlineEmbedWrap {
    background-color: rgba(0, 0, 0, 0.8);
    width: 100%;
    height: 100%;
    display: table;
    position: fixed;
    z-index: 100;
    text-align: center;
    top: 0;
    left: 0;
}

.onlineEmbedVideo {
    display: table-cell;
    vertical-align: middle;
}

.pointer {
    cursor: pointer;
}

/* ADMIN */

nav.admin ul li {
    width: 18.75%;
}

article.admin a {
    color: #770000;
}

#btn_login {
    text-align: center;
    margin-top: 10px;
}

#login {
    font-family: Rajdhani;
    font-size: 14pt;
}

#login p {
    margin-top: 7px;
}

input[type='text'], input[type='password'], textarea, select {
    background-color: #FFE9E9;
    border: 1px solid #CD0000;
    font-family: Noto Sans, sans-serif;
    font-size: 11pt;
    font-weight: 300;
    padding: 2px 4px;
}

textarea {
    width: 350px;
    height: 100px;
}

form#login input[type='text'], form#login input[type='password'] {
    font-size: 12pt;
}

.admin_data_table {
    margin-top: 5px;
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
}

.admin_data_table tr * {
    padding: 3px;
}

.admin_data_table tr:hover {
    background-color: #FFF5F5;
}

.admin_data_table tr th {
    font-weight: 400;
    background-color: #CD0000;
    color: #FFFFFF;
    font-size: 12pt;
}

.center {
    text-align: center;
}

.button_wrap {
    margin-top: 5px;
}

input[type='button'], input[type='submit'], #btn_login input {
    border: 1px solid #CD0000;
    background-color: #CD0000;
    font-family: Rajdhani;
    font-size: 13pt;
    font-weight: 500;
    color: #FFFFFF;
}

#btn_login input {
    font-size: 14pt;
}

input[type='button']:hover, input[type='submit']:hover, #btn_login input:hover {
    background-color: #9A0000;
    border: 1px solid #9A0000;
}

.message_wrap {
    position: absolute;
    width: 75%;
    background-color: rgba(255,255,255,0.8);
    padding-bottom: 5px;
}

.add .admin_data_table th, .add .admin_data_table td, .edit .admin_data_table th, .edit .admin_data_table td {
    padding: 3px 6px;
    font-size: 11pt;
}

.add .admin_data_table th, .edit .admin_data_table th {
    width: 40%;
    text-align: right;
}

.form_submit {
    text-align: center;
}

#news_title {
    width: 250px;
}

/* FOOTER */

footer {
    font-size: 13pt;
    font-weight: 500;
    left: 0;
    bottom: 0;
    position: fixed;
    width: 100%;
    padding: 6px 0;
    clear: both;
    z-index: 50;
}

@media only screen and (max-width: 1450px) {
    .episode_list_element { width: 33.33% }
}

@media only screen and (max-width: 1024px) {
    .episode_list_element { width: 50% }
}

@media only screen and (max-width: 620px) {
    .episode_list_element { width: 100% }
}

/* if page width is lower than 755px */
@media only screen and (max-width: 755px) {
    nav ul li { height: 72px; }
    article div.news_article div[name='download'] { clear: both; }
}

/* MOBILE DEVICES */
@media only screen and (max-device-width: 500px) {
    nav ul li { width: 33.33%; font-size: 22px; height: 56px; }
    header h1 { font-size: 40px; }
    article { width: 100%; }
    article div.news_article { border: 0; }
    article div.news_article div[name='title'] { font-size: 22px; }
    /* article div.news_article div[name='episode_image'] img { height: 70px; min-width: 93px; max-width: 124px; } */
    footer { font-size: 16px; }
}
