@charset "UTF-8";
/* =====
 * ASSET
========================================================= */
p, ul, ol, li, dl, dd, table {
    margin-bottom: 1em;
}
* > *:last-child {
    margin-bottom: 0;
}
body { 
    min-width: 1280px;
    background-image: none;
    background-color: #fff;
}
.container { width: 1280px;margin: 0 auto; }
.inner { padding: 1.25em; }
.block + .block {
    margin-top: 3.125em;
}
.title-style-01 {
    border-top: 5px solid #e8ecec;
    position: relative;
    color: #9eaeae;
    font-size: 93.75%;
    font-weight: bold;
    padding: 0.5em 0;
    line-height: 1.6;
}
.title-style-01 ruby {
    color: #333;
    font-size: 200%;
    font-family: 'Questrial', sans-serif;
    margin-right: 0.75em;
    letter-spacing: 0.1em;
}
.title-style-01::before {
    content: "";
    display: block;
    width: 20px;
    height: 5px;
    background-color: #000;
    position: absolute;
    top: -5px;
    left: 0;
}
a.btn { display: block;text-decoration: none;transition: all linear 0.15s;cursor: pointer; }
a.btn:hover { opacity: 0.75; }
a.btn-style-01 {
    display: inline-block;
    position: relative;
    border: 0.1em solid #262626;
    color: #262626;
    text-align: center;
    text-decoration: none;
    font-weight: 600;
    font-size: 125%;
    line-height: 1.5;
    padding: 0.5em 2.5em 0.5em 2em;
    transition: all linear 0.15s;
}
a.btn-style-01::before {
    content: "\e905";
    font-family: 'icomoon' !important;
    speak: none;
    font-size: 175%;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: block;
    position: absolute;
    top: 50%;
    right: 0.5em;
    margin-top: -0.5em;
}
a.btn-style-01:hover {
    background-color: #262626;
    color: #fff;
}
a.btn-style-01:hover::before {
    color: #fff;
}
.grid-list {
    margin: 0 -10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.grid-list > * {
    margin: 10px;
}
.tbl-list {
    display: table;
}
.tbl-list > * {
    display: table-cell;
    vertical-align: top;
}
.tbl-style-01 {
    font-size: 87.5%;
    width: 100%;
    border-collapse: separate;
    background-color: #e7f8ff;
}
.tbl-style-01 tr th {
    border-right: 1px solid #e7f8ff;
    border-bottom: 1px solid #e7f8ff;
    padding: 1em;
    text-align: center;
    vertical-align: middle;
}
.tbl-style-01 tr td {
    border-right: 1px solid #e7f8ff;
    border-bottom: 1px solid #e7f8ff;
    background-color: #fff;
    padding: 1em;
    text-align: center;
    font-weight: 400;
}
.tbl-style-01 thead th {
    color: #fff;
    font-weight: 800;
    text-align: center;
}
.tbl-style-01 thead th:first-child {
    background-color: #e7f8ff;
    border-color:#e7f8ff;
}
.tbl-style-01 thead th:nth-child(2) {
    background-color: #3379ca;
}
.tbl-style-01 thead th:nth-child(3) {
    background-color: #2373ae;
}
.tbl-style-01 thead th:nth-child(4) {
    background-color: #f3b719;
}
.tbl-style-01 thead th:nth-child(5) {
    background-color: #999999;
}
.tbl-style-01 tbody th {
    text-align: center;
    background-color: #ddd;
    width: 8em;
}
/* -----
     * Header
    ----------------------------------------------------------------------------- */
#GlobalHeader {
    border-bottom: 1px solid #ddd;
}
#GlobalHeader h1 {
    font-size: 81.25%;
    line-height: 3;
    float: left;
    width: auto;
    height: auto;
    text-indent: 0;
    background-image: none;
}
#GlobalHeader ul {
    text-align: right;
}
#GlobalHeader ul li {
    display: inline-block;
    margin: 0 0 0 1em;
}
#GlobalHeader ul li a {
    font-size: 81.25%;
    color: #676767;
    line-height: 3;
    text-decoration: none;
}
#GlobalHeader ul li a::before {
    content: "〉";
    color: #ccc;
}
/* -----
     * Navigation
    ----------------------------------------------------------------------------- */
#GlobalNavi {
    border-bottom: 1px solid #ddd;
}
#GlobalNavi .container {
    position: relative;
    overflow: hidden;
}
#GlobalNavi .mainmenu {
    margin: 0;
}
#GlobalNavi .mainmenu li {
    float: left;
    padding: 10px 20px 10px 0;
    margin: 0;
    font-size: 87.5%;
}
#GlobalNavi .mainmenu li a {
    display: block;
    height: 80px;
    line-height: 80px;
    color: #121212;
    text-decoration: none;
    font-weight: bold;
}
#GlobalNavi .mainmenu li a img {
    width: auto;
    height: 80px;
}
#GlobalNavi .socialmenu {
    position: absolute;
    top: 27px;
    right: 0;
    margin: 0;
}
#GlobalNavi .socialmenu li {
    float: left;
    margin: 0;
}
#GlobalNavi .socialmenu li a,
#GlobalNavi .socialmenu li a i {
    display: inline-block;
    text-decoration: none;
    color: #121212;
    height: 40px;
    width: 40px;
    line-height: 40px;
    text-align: center;
}
#GlobalNavi .socialmenu li a .icon-facebook {
    font-size: 32px;
    line-height: 36px;
}
#GlobalNavi .socialmenu li a .icon-twitter {
    font-size: 40px;
}
#GlobalNavi .socialmenu li a .icon-hatena {
    font-size: 44px;
}
#GlobalNavi .socialmenu li a .icon-feed2 {
    font-size: 22px;
}
#searchform button {
    background-color: transparent;
    position: absolute;
    top: 20px;
    right: 10px;
    margin-top: -0.5em;
    padding: 0;
    line-height: 1;
    display: block;
    border: 0 none transparent;
    width: 1em;
    height: 1em;
    font-size: 20px;
}
#searchform input[type=text] {
    background-color: #e8ecec;
    height: 40px;
    width: 10em;
    line-height: 40px;
    font-size: 100%;
    border: 0 none transparent;
    border-left: 5px solid #e8ecec;
    padding-right: 2.5em;
    margin-left: 0.5em;
    box-sizing: border-box;
}
/* -----
     * Main
    ----------------------------------------------------------------------------- */
body > .contents {
    margin-bottom: 40px;
}
#Main {
    display: table;
    width: 1280px;
    margin: 0 auto;
}
#Main > .left {
    display:table-cell;
    vertical-align: top;
    width:900px;
    padding-right:40px;
    padding-top: 40px;
    padding-bottom: 3.125em;
}
#Breadcrumb ul {
    overflow:  hidden;
}
#Breadcrumb ul li {
    float: left;
    margin: 0;
    font-size: 75%;
    line-height: 1;
    padding: 1em;
    position: relative;
}
#Breadcrumb ul.col-05-list li:nth-child(3) {max-width: 15em;}
#Breadcrumb ul.col-07-list li:nth-child(3),#Breadcrumb ul.col-07-list li:nth-child(5) {max-width: 10em;}
#Breadcrumb ul li a {
    text-decoration: none;
    display: block;
    color: #00a0e9;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
#Breadcrumb ul li.separator {
    height: 1em;
    padding: 1em 0.5em;
}
#Breadcrumb ul li.separator::before {
    content: "";
    display: block;
    border-width: 1.5em 0 1.5em 1em;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
    position: absolute;
    top: 1px;
    right: 1px;
    z-index: 2;
}
#Breadcrumb ul li.separator::after {
    content: "";
    display: block;
    border-width: 1.5em 0 1.5em 1em;
    border-color: transparent transparent transparent #ddd;
    border-style: solid;
    position: absolute;
    top: 1px;
    right: 0;
}
#Breadcrumb ul li span,
#Breadcrumb ul li .icon-angle-right {
    display: none;
}
/* -----
     * Side
    ----------------------------------------------------------------------------- */
#Main > .right {
    display:table-cell;
    vertical-align: top;
    width:300px;
    padding-left:39px;
    padding-top: 40px;
    padding-bottom: 3.125em;
    border-left: 1px solid #ddd;
}
.contents > .sidebar {
    padding-top: 34px;
}
#Main > .right iframe,
#Main > .right .btn,
.contents > .sidebar iframe,
.contents > .sidebar .btn {
    margin-bottom: 20px;
}
#Main > .right .btn a,
#Main > .right .btn a img,
.contents > .sidebar .btn a,
.contents > .sidebar .btn a img {
    display: block;
}
#Main > .right ul.btn,
.contents > .sidebar ul.btn {
    overflow: hidden;
}
#Main > .right ul.btn li,
.contents > .sidebar ul.btn li {
    float: left;
}
#Main > .right ul.btn li + li,
.contents > .sidebar ul.btn li + li {
    padding-left: 10px;
}
/* -----
     * Footer
    ----------------------------------------------------------------------------- */
#Colophon {
    background-color: #262626;
}
#Colophon header {
    border-bottom: 1px solid #fff;
    height: auto;
}
#Colophon header h2 {
    float: left;
}
#Colophon header h2 img {
    display: block;
    width: auto;
    height: 92px;
}
#Colophon header ul {
    float: right;
    margin: 0;
}
#Colophon header ul li {
    float: left;
    line-height: 92px;
    height: 92px;
    text-align: right;
    width: 64px;
    margin: 0;
}
#Colophon header ul li a {
    text-decoration: none;
    color: #fff;
}
#Colophon header ul li a .icon-facebook-square {
    font-size: 44px;
    vertical-align: middle;
}
#Colophon header ul li a .icon-twitter-square {
    font-size: 44px;
    vertical-align: middle;
}
#Colophon header ul li a .icon-hatena-square {
    font-size: 44px;
    vertical-align: middle;
}
#Colophon header ul li a .icon-feed3 {
    font-size: 38px;
    vertical-align: middle;
}
#Colophon header ul + p {
    height: 92px;
    line-height: 92px;
    padding-left: 200px;
    font-size: 87.5%;
    font-weight: bold;
    color: #fff;
}
#Colophon .contentinfo {
    padding: 25px 0;
    clear: both;
    overflow: hidden;
}
#Colophon .contentinfo .container .left {
    position: relative;
    float: left;
    width: 540px;
}
#Colophon .contentinfo .container > .left h3 {
    margin-left: 130px;
    margin-bottom: 0.25em;
    padding-bottom: 0.5em;
    line-height: 1;
    color: #fff;
    font-weight: bold;
    font-size: 93.75%;
    border-bottom: 2px solid #5a5c5c;
    position: relative;
}
#Colophon .contentinfo .container > .left h3::after {
    content: "";
    display: block;
    width: 1em;
    height: 2px;
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: -2px;
}
#Colophon .contentinfo .container > .left dl {
    margin-left: 130px;
    margin-top: 0.5em;
    margin-bottom: 0;
    color: #fff;
}
#Colophon .contentinfo .container > .left dl dt {
    float: left;
    clear: left;
    margin: 0 0 0.2em;
    font-weight: bold;
    color: #fff;
    font-size: 93.75%;
    line-height: 1.5;
}
#Colophon .contentinfo .container > .left dl dd {
    padding-left: 5em;
    margin: 0 0 0.2em;
    color: #d5d5d5;
    font-weight: bold;
    font-size: 93.75%;
    line-height: 1.5;
}
#Colophon .contentinfo .container > .left figure {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
}
#Colophon .contentinfo .container > .left figure img {
    display: block;
    width: 120px;
    height: auto;
}
#Colophon .contentinfo .container > .right ul {
    float: right;
    min-width: 10em;
    margin: 0;
}
#Colophon .contentinfo .container > .right ul li {
    margin-bottom: 0.75em;
    line-height: 1;
}
#Colophon .contentinfo .container > .right ul li a {
    font-size: 93.75%;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
}
#Colophon .contentinfo .container > .right ul li a::before {
    content: "\ea0b";
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-right: 0.5em;
}
footer {
    margin: 0;
    padding: 0;
    background-color: transparent;
}
footer p {
    border-top: 1px solid #fff;
    clear: both;
    font-size: 93.75%;
    color: #fff;
    text-align: center;
    padding: 2em 0;
}
/* -----
     * BLOCK::POST LIST
    ----------------------------------------------------------------------------- */
.postlist-01 article {
    display: table;
    position: relative;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    padding: 1em 0;
}
.postlist-01 article:first-child {padding-top:0;}
.postlist-01 article:nth-child(even) {background-color: #f6f7f9;}
.postlist-01 article > figure {
    display: table-cell;
    vertical-align: top;
    width: 18%;
    padding-right: 2%;
}
.postlist-01 article > figure a,
.postlist-01 article > figure img {
    display: block;
    width: 100%;
    height: auto;
    transition: all ease 0.2s;
}
.postlist-01 article > a {
    display: table-cell;
    vertical-align: top;
    color: #333333;
    text-decoration: none;
    transition: all ease 0.2s;
}
.postlist-01 a:hover {
    opacity: 0.8;
}
.postlist-01 article > a h4 {
    font-size: 125%;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 0.5em;
    margin-right: 8em;
}
.postlist-01 article > a h4 + p {
    font-size: 87.5%;
    line-height: 1.5;
    margin: 0;
    padding-right: 1em;
}
.postlist-01 article > a h4 + p time {
    font-size: 87.5%;
    color: #9eaeae;
    display: block;
    margin-top: 1em;
}
.postlist-01 article > a .category {
    position: absolute;
    top: 0;
    right: 0;
    background-color: rgb(224, 174, 17);
    color: #fff;
    padding: 0 1.5em;
    font-size: 93.75%;
    font-weight: bold;
    line-height: 2;
}
.postlist-01 + .btn,
.postlist-02 + .btn {
    margin-top: 3.125em;
    text-align: center;
}
.postlist-03 + .btn {
    margin-top: 1.125em;
    text-align: center;
}
.postlist-01 + .btn .btn-style-01,
.postlist-02 + .btn .btn-style-01,
.postlist-03 + .btn .btn-style-01 {
    width: 15em;
}
.postlist-02 {
    overflow: hidden;
    margin-top: -10px;
}
.postlist-02 article {
    margin: 15px;
    width: calc(25% - 30px);
    position: relative;
    padding-top: 1.75em;
}
.postlist-02 article > a {
    color: #333333;
    text-decoration: none;
    transition: all ease 0.2s;
}
.postlist-02 a:hover {
    opacity: 0.8;
}
.postlist-02 article figure a,
.postlist-02 article figure img {
    display: block;
    width: 100%;
    height: auto;
    transition: all ease 0.2s;
}
.postlist-02 article figure img {
    object-fit: cover;
    height: 156px;
}
.postlist-02 article > a h4 {
    font-weight: bold;
    font-size: 87.5%;
    line-height: 1.4;
    margin: 0.5em 0;
}
.postlist-02 article figure {
    border-top: 5px solid rgb(224, 174, 17);
    padding-top: 3px;
    margin: 0;
}
.postlist-02 article > a h4 time {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 87.5%;
    color: #9eaeae;
    display: block;
    line-height: 3;
    font-weight: normal;
}
.postlist-02 article > a .category {
    position: absolute;
    top: 0;
    right: 0;
    border-top: 0.1em solid rgb(224, 174, 17);
    border-right: 0.1em solid rgb(224, 174, 17);
    border-left: 0.1em solid rgb(224, 174, 17);
    color: rgb(224, 174, 17);
    font-size: 93.75%;
    font-weight: bold;
    line-height: 2;
    text-align: center;
    padding: 0 1.5em;
}

.postlist-01 article.world > a .category {background-color: rgb(89, 125, 141);}
.postlist-01 article.economy > a .category {background-color: rgb(105, 157, 97);}

.postlist-02 article.info {border-color: rgb(89, 125, 141);}
.postlist-02 article.info figure {border-color: rgb(89, 125, 141);}
.postlist-02 article.info > a .category {border-color: rgb(89, 125, 141);color: rgb(89, 125, 141);}
.postlist-02 article.local {border-color: rgb(105, 157, 97);}
.postlist-02 article.local figure {border-color: rgb(105, 157, 97);}
.postlist-02 article.local > a .category {border-color: rgb(105, 157, 97);color: rgb(105, 157, 97);}

.postlist-03 {
    overflow: hidden;
    margin-top: -10px;
}
.postlist-03 article {
    margin: 15px;
    width: calc(25% - 30px);
    position: relative;
}
.postlist-03 article > a {
    color: #333333;
    text-decoration: none;
    transition: all ease 0.2s;
}
.postlist-03 a:hover {
    opacity: 0.8;
}
.postlist-03 article figure {
    margin: 0;
}
.postlist-03 article figure a,
.postlist-03 article figure img {
    display: block;
    width: 100%;
    height: auto;
    transition: all ease 0.2s;
}
.postlist-03 article figure img {
    object-fit: cover;
    height: 156px;
}
.postlist-03 article > a h4 {
    font-weight: bold;
    font-size: 87.5%;
    line-height: 1.4;
    margin: 0.5em 0;
    min-height: 4.2em;
}
.postlist-03 article > a h4 time {
    font-size: 87.5%;
    color: #9eaeae;
    display: block;
    margin-top: 1em;
}
.postlist-03 article > a h4 + p {
    font-size: 93.75%;
    line-height: 1.2;
}
.postlist-03 article > a h4 + p small {
    font-size: 87.5%;
    color: #9eaeae;
    display: block;
    margin-top: 0.5em;
    margin-bottom: 1em;
    text-align: right;
    border-bottom: 1px solid #ddd;
}
/* -----
     * BLOCK::Back Number
    ----------------------------------------------------------------------------- */
.magazine_area .edit_page + .more {
    overflow: hidden;
    padding: 0 20px;
}
.magazine_area .edit_page + .more .new {
    float: left;
}
.magazine_area .edit_page + .more .old {
    float: right;
}
.magazine_area .edit_page + .more a.btn-style-01 {
    padding: 0.5em 3.5em 0.5em 2em;
}
/* -----
     * BLOCK::Other
    ----------------------------------------------------------------------------- */
.main_contents .fb_likebox {display:none;}

#mobile_nav,#mobile_nav_icon {
    display: none;
}
@charset "UTF-8";
.block-billboard-01 {
    position: relative;
    overflow: hidden;
}
.block-billboard-01 figure {
    float: left;
    width: 362px;
    margin: 0;
}
.block-billboard-01 figure img {
    display: block;
}
.block-billboard-01 h3 {
    font-size: 156.25%;
    font-weight: bold;
    color: #333;
    padding-bottom: 0.5em;
    margin-left: 400px;
}
.block-billboard-01 h3 ruby {
    font-size: 60%;
    color: #9eaeae;
    display: block;
    line-height: 1;
}
.block-billboard-01 article {
    margin-left: 400px;
    position: relative;
}
.block-billboard-01 article + article {
    padding-bottom: 2em;
}
.block-billboard-01 article a {
    display: block;
    text-decoration: none;
}
.block-billboard-01 article h4 {
    font-size: 156.25%;
    font-weight: bold;
    color: #333;
    border-top: 1px solid #e8ecec;
    position: relative;
    line-height: 1.4;
    margin-bottom: 0.25em;
}
.block-billboard-01 article h4::before {
    background-color: #000;
    content: "";
    display: block;
    width: 2.2em;
    height: 1px;
    position: absolute;
    top: -1px;
    left: 0;
}
.block-billboard-01 article h4 span {
    font-family: 'Questrial', sans-serif;
    font-size: 175%;
    margin-right: 0.25em;
    color: #000;
}
.block-billboard-01 article h4 + p {
    font-weight: bold;
    color: #333;
    margin-bottom: 0.5em;
}
.block-billboard-01 article p + p {
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    color: #333;
    font-size: 175%;
    margin-bottom: 1em;
}
.block-billboard-01 article a h4::before {
    transition: all ease 0.2s;
}
.block-billboard-01 article a::after {
    content: "〉";
    display: block;
    position: absolute;
    top: 50%;
    right: 0.5em;
    line-height: 1;
    font-size: 200%;
    font-weight: bold;
    opacity: 0;
    transition: all ease 0.4s;
    color: #000;
}
.block-billboard-01 article a:hover {
}
.block-billboard-01 article a:hover h4::before {
    width: 100%;
}
.block-billboard-01 article a:hover::after {
    right: 0;
    opacity: 1;
}
.block-billboard-01 .btn {
    position: absolute;
    bottom: 0;
    left: 400px;
    margin-bottom: 0;
}
.block-billboard-01 .btn + .btn {
    left: 660px;
}
.block-billboard-01 .btn-style-01 {
    width: 140px;
}