body.global {
    font-family: Roboto, 'Helvetica Neue', Helvetica, Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif;
}

body.ja {
    font-family: 'Noto Sans Japanese', sans-serif;
}

body.en {
    font-family: 'Roboto', sans-serif;
}

.container {
    width: 1140px !important;
    max-width: none;
}

.cover {
    margin: 1rem 0;
}

.cover-lang-selector {
    margin-top: 2rem;
}

a.cover-lang {
    background: #231916;
    border: 2px solid #231916;
    color: #fff;
    display: block;
    font-weight: bold;
    max-width: 300px;
    margin: 0 auto;
    padding: 10px 20px;
    text-align: center;
}

a.cover-lang-en {
    background: #fff;
    color: #231916;
}

.portal .cover {
    margin: 5rem 0;
}

.themes {
    margin: 3rem 0;
}

.theme {
    border: 2px solid #f7ee13;
    display: block;
    color: #231916;
    margin-bottom: 2rem;
    text-align: center;
}

a.theme:hover,
a.theme:focus {
    border: 2px solid #231916;
    color: #231916;
    text-decoration: none;
}

.theme-description {
    color: #6c757d;
    font-size: .9rem;
    height: 90px;
    padding: 0 20px;
    margin: 0;
    list-style: none;
    text-align: center;
}

.theme-btn {
    text-align: right;
    padding: 20px;
}

.interview {
    border: 1px solid #ddd;
    display: block;
    padding: 20px;
    color: #231916;
    margin-bottom: 2rem;
}

a.interview:hover,
a.interview:focus {
    border: 1px solid #231916;
    color: #231916;
    text-decoration: none;
}

.interview-headline-1 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 1rem;
    letter-spacing: -.8px;
}

.interview-name-1 {
    text-align: center;
}

.interview-times {
    text-align: center;
}

.interview-name-2 {
    text-align: center;
}

.interview-headline-2 {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: right;
    margin-top: 1rem;
    letter-spacing: -.8px;
}

.interview-btn {
    margin-top: 20px;
    text-align: right;
}

.article-banner {
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    margin: 2rem 0 0;
    padding: 20px 0;
    font-size: 0;
    line-height: 0;
    text-align: center;
}

.article-body-inner {
    padding: 6rem 0;
}

.article-body.article-body-p1 {
    background: url("../img/article-bg-p1.png") top center no-repeat;
}

.article-body.article-body-p2 {
    background: url("../img/article-bg-p2-1.png") top center repeat-y;
}

.article-body.article-body-p2 .article-body-inner {
    background: url("../img/article-bg-p2-2.png") top center no-repeat;
    padding-top: 9rem;
}

.article-subtitle {
    margin-bottom: 2rem;
}

.article-body h2 {
    font-size: 1.8rem;
    font-weight: normal;
    margin-bottom: 3rem;
}

.article-story + .article-story {
    margin-top: 6rem;
}

.article-gray-box {
    background: #C9CACA;
    color: #fff;
    margin-top: 2rem;
    padding: 20px;
}

.show-more-detail {
    background: #231916;
    border: 2px solid #231916;
    color: #fff;
    display: inline-block;
    max-width: 150px;
    margin: 0 auto;
    padding: 10px 20px;
    text-align: center;
}

.history-art {
    background: #010101;
    margin-bottom: 1rem;
    text-align: center;
}

.header {
    margin: 1rem 0;
}

.global-nav {
    display: table;
    width: 100%;
}

.global-nav-item {
    color: #231916;
    font-size: .75rem;
    font-weight: bold;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    height: 90px;
}

.contents {
    margin: 3rem 0;
}

.footer {
    background: #010101;
    padding: 3rem 0;
}

.footer-nav {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: .75rem;
}

.footer-nav > li {
    margin-bottom: 2rem;
}

.footer-nav > .footer-nav-theme > a {
    color: #f7ee13;
}

.footer-nav > .footer-nav-theme > ul {
    list-style: none;
    padding: 0;
    margin: 1rem 0 0;
}

.footer-nav > .footer-nav-theme > ul > li + li {
    margin-top: .5rem;
}

.footer-copyright {
    color: #fff;
    font-size: .75rem;
    opacity: .5;
}

.footer-nav a {
    color: #fff;
}

.carrier {
    text-align: center;
}