@charset "UTF-8";
@font-face { font-family: "YuGothic M"; src: local(YuGothic-Medium), local(Yu Gothic Medium), local(YuGothic-Regular); }
body { background-color: #30231a; font-family: "a-otf-ud-shin-go-pr6n","游ゴシック体", YuGothic, "游ゴシック Medium", "YuGothic M", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; -webkit-font-smoothing: antialiased; line-height: 1.6; background-color: #87a7c2; background-image: url(../images/body-bg.jpg); background-repeat: repeat-x; }

a { color: #000; }
a .icon { vertical-align: middle; position: relative; top: -0.1em; margin-right: 5px; }

img { vertical-align: middle; }

sup {
  font-size: 80%;
  vertical-align: top;
}
.nb {
  white-space: nowrap;
}

.wrapper { width: 950px; margin: 0 auto; background-color: #fff; }
@media only screen and (max-width: 640px) { .wrapper { width: 100%; } }
.wrapper .inner { padding: 0 40px; }
@media only screen and (max-width: 640px) { .wrapper .inner { padding: 0 15px; } }

.footer-global { margin-top: 40px; position: relative; }
.footer-global .inner { overflow: hidden; }
.footer-global .pagetop { cursor: pointer; width: 40px; float: right; }
.footer-global .pagetop:hover { opacity: 0.7; }
.footer-global .back { text-decoration: none; font-size: 13px; display: inline-block; margin-top: 10px; padding-right: 10px; }
.footer-global .back:hover { opacity: 0.7; }
.footer-global .notice { background-color: #fff4db; padding: 20px; margin-top: 30px; }
.footer-global .notice p { font-size: 13px; text-align: center; }
@media only screen and (max-width: 640px) { .footer-global .notice p { font-size: 11px; } }
.footer-global .copyright { text-align: center; font-size: 13px; padding: 20px 0; }
@media only screen and (max-width: 640px) { .footer-global .copyright { font-size: 11px; } }

.mv { height: 350px; background-image: url("../images/mv.png"); background-position: center; background-size: cover; }
@media only screen and (max-width: 640px) { .mv { width: 100%; height: 200px; background-position: right; background-repeat: no-repeat; } }

.page-index .lead { overflow: hidden; padding-top: 40px; }
@media only screen and (max-width: 640px) { .page-index .lead { padding-top: 20px; } }
.page-index .lead h1 { float: left; width: 415px; }
@media only screen and (max-width: 640px) { .page-index .lead h1 { width: 100%; } }
.page-index .lead h1 img { width: 100%; }
.page-index .lead p { float: right; width: 415px; font-size: 14px; }
@media only screen and (max-width: 640px) { .page-index .lead p { width: 100%; margin-top: 20px; } }
.page-index .news { background-color: #fff4db; border-radius: 5px; padding: 19px; text-align: center; order: 2; }
@media only screen and (max-width: 640px) { .page-index .news { margin-top: 20px; } }
.page-index .news h2 { color: #01437d; text-align: center; font-size: 17px; border-bottom: 1px solid #01437d; padding-bottom: 5px; }
.page-index .news ul { margin-top: 5px; display: inline-block; text-align: left; }
.page-index .news li { font-size: 14px; padding-bottom: 8px; }
.page-index .news li:first-child { padding-top: 10px; }
.page-index .news a { text-decoration: none; border-bottom: 1px solid; }
.page-index .cols { margin-top: 30px; }

.cols { display: flex; justify-content: space-between; }
@media only screen and (max-width: 640px) { .cols { display: block; } }
.cols .side { width: 140px; order: 1; }
@media only screen and (max-width: 640px) { .cols .side { width: 100%; margin-top: 40px; } }
.cols .main { width: 690px; order: 3; }
@media only screen and (max-width: 640px) { .cols .main { width: 100%; } }

.reports { margin-top: 40px; }
@media only screen and (max-width: 640px) { .reports { width: 100%; } }
.reports .comingsoon { width: 100%; text-align: center; padding-top: 30px; font-size: 40px; font-weight: bold; color: #888; }
.reports h2 { background: url("../images/dotted.png") no-repeat center; color: #01437d; font-weight: bold; text-align: center; font-size: 17px; }
.reports h2 span { background-color: #fff; padding: 0 10px; }

.commenters h2 { color: #01437d; font-weight: bold; text-align: center; padding-bottom: 3px; font-size: 17px; }
.commenters .commenter { margin-top: 15px; text-align: center; }
@media only screen and (max-width: 640px) { .commenters .commenter { display: inline-block; width: 49%; vertical-align: top; } }
.commenters .commenter img { width: 120px; }
@media only screen and (max-width: 640px) { .commenters .commenter img { margin: 0 auto; } }
.commenters .commenter .position { margin-top: 5px; }
.commenters .commenter .position, .commenters .commenter .name { font-size: 15px; text-align: center; font-weight: bold; }
.commenters .commenter .position span, .commenters .commenter .name span { font-size: 13px; margin-left: 0.5em; }
.commenters .commenter .detail { font-size: 12px; text-align: left; margin-top: 5px; }
@media only screen and (max-width: 640px) { .commenters .commenter .detail { width: 80%; margin: 0 auto; } }
.commenters .remarks { width: 100%; margin: 10px auto 30px auto; padding: 5px 10px 5px 20px; font-size: 12px; color: #444444; background-color: #efefef; border-radius: 6px; box-sizing: border-box; }
@media only screen and (max-width: 640px) { .commenters .remarks { width: 100%; text-align: center; padding: 5px 0; }
  .commenters .remarks .remarks-inner { display: inline-flex; }}

.cb { clear: both; }

.reports .coming { color: #a5a5a5; text-align: center; font-weight: bold; letter-spacing: 0.1em; margin-top: 10px; }

.reports .photos { width: 100%; margin-top: 40px; }

@media only screen and (max-width: 640px) { .reports .photos { margin-top: 30px; } }
.reports h3 { font-size: 40px; color: #888888; line-height: 1; margin-top: 20px; }

@media only screen and (max-width: 640px) { .reports h3 { font-size: 30px; margin-top: 15px; } }
.reports-list h2 { background: url("../images/dotted.png") no-repeat center; color: #01437d; font-weight: bold; text-align: center; font-size: 17px; }
.reports-list h2 span { background-color: #fff; padding: 0 10px; }
.reports-list .fs-m { padding: 15px; text-indent: -1em; padding-left: 1em; font-size: 13px; }
.reports-list .proffered_paper h3 { font-size: 40px; color: #888; line-height: 1; margin: 30px 0; }
.reports-list .proffered_paper .list-report { position: relative; border: 6px solid #649f4b; border-radius: 5px; margin-top: 30px; }
.reports-list .proffered_paper .list-report .number { position: absolute; right: 0px; top: 0px; background-color: #649f4b; padding: 0 30px 5px 40px; color: #fff; font-size: 18px; background-image: url("../images/number-bg.png"); background-size: contain; background-repeat: no-repeat; }
.reports-list .proffered_paper .list-report .desc { font-size: 14px; padding: 40px 10px 20px; }
.reports-list .proffered_paper .list-report .name { padding: 10px; font-size: 14px; text-align: right; background-color: #D0E4C7; }

.report { border: 6px solid #649f4b; border-radius: 5px; position: relative; margin-top: 20px; }

@media only screen and (max-width: 640px) { .report { margin-top: 10px; } }
.report .number { position: absolute; right: 0px; top: 0px; background-color: #649f4b; padding: 0 30px 5px 40px; color: #fff; font-size: 18px; background-image: url("../images/number-bg.png"); background-size: contain; background-repeat: no-repeat; }

@media only screen and (max-width: 640px) { .report .number { padding: 0 15px 5px 25px; font-size: 16px; } }
.report .title { padding: 15px 40px; }

@media only screen and (max-width: 640px) { .report .title { padding: 15px; } }
.report .category { color: #fff; background-color: #999; display: inline-block; margin-bottom:5px; padding: 4px 40px; border-radius: 5px; font-size: 14px; font-weight: bold; }

@media only screen and (max-width: 640px) { .report .category { padding: 2px 20px; } }
.report .category-daicho { background-color: #a3a50a; }

.report .category-i { background-color: #a5700a; }

.report .category-syokudo { background-color: #3ca50a; }
.report .category-syokudogan { background-color: #07A98A; }

.report .category-sui { background-color: #8a0c0c; }

.report .category-tando { background-color: #1a927a; }

.report h4 { margin-top: 5px; font-size: 18px; color: #0e4d86; }

@media only screen and (max-width: 640px) { .report h4 { font-size: 16px; } }
.report a { color: #01437d; font-weight: bold; }

.report a:hover { color: #0179E2; }

.report .article-detail { background-color: #e2f4da; font-size: 12px; overflow: hidden; }

.report .article-detail .name { text-align: right; }

.report .article-detail .photo { float: right; margin-left: 20px; }

@media only screen and (max-width: 640px) { .report .article-detail .photo { width: 100px; margin-bottom: 10px; } }
.report .article-detail .text { padding: 15px 40px; }

@media only screen and (max-width: 640px) { .report .article-detail .text { padding: 15px; } }
.report .inner { padding: 0 20px; }

@media only screen and (max-width: 640px) { .report .inner { padding: 0 15px; } }
.report section { margin-top: 1.5em; }

.report section p { font-size: 13px; line-height: 1.7; text-indent: 1em; margin-top: 0.5em; }

.report section p:first-of-type { margin-top: 0; }

.report section a { color: #01437d; font-weight: normal; }

.report section figure { margin-top: 1em; text-align: center; }

.report section figure + * { margin-top: 1.5em; }

.report section figure figcaption { font-size: 13px; }

.report section figure img { margin-top: 5px; width: 600px; border: 1px solid #D8BCC8; }

@media only screen and (max-width: 640px) { .report section figure img { width: 100%; } }
.report section figure p:last-child { text-align: right; margin-top: 10px; font-size: 11px; }

@media only screen and (max-width: 640px) { .report section figure p:last-child { margin-top: 5px; } }
.report section > h5 { background-color: #e2f4da; color: #0e4d86; font-weight: bold; font-size: 18px; padding: 5px 20px; }

@media only screen and (max-width: 640px) { .report section > h5 { font-size: 16px; padding: 5px 15px; } }
.report section > h5 + * { margin-top: 1em; }

.report .reference { background-color: #f2f2f2; padding: 20px 0; }

.report .reference h6 { font-size: 13px; }

.report .reference ul { margin-left: 13px; }

.report .reference li { margin-top: 5px; font-size: 13px; text-indent: -18px; }

.report .reference a { color: #0e4d86; font-weight: normal; }

.report .panel { margin-top: 20px; border: 1px solid #649f4b; }

.report .panel h5 { background-color: #649f4b; color: #fff; padding: 5px 20px; font-size: 18px; }

@media only screen and (max-width: 640px) { .report .panel h5 { padding: 5px 15px; font-size: 16px; } }
.report .panel .panel-inner { padding: 10px 20px; overflow: hidden; }

@media only screen and (max-width: 640px) { .report .panel .panel-inner { padding: 10px 15px; } }
.report .panel .panel-inner > p { font-size: 13px; line-height: 1.7; text-indent: 1em; margin-top: 0.5em; }

.report .panel .panel-inner > p:first-of-type { margin-top: 0; }

.report .panel .commenter { width: 150px; margin: 0 10px 10px 0; float: left; }

@media only screen and (max-width: 640px) { .report .panel .commenter { float: none; width: 100%; } }
.commenters h2 { color: #01437d; font-weight: bold; text-align: center; padding-bottom: 3px; font-size: 17px; }
.commenters ul { border-top: 2px solid #01437d; }


@media only screen and (min-width: 641px) { .commenters .commenter:nth-child(2n+1) 

  .commenters .commenter:nth-child(2n+1):first-of-type { border-top: 0; padding-top: 0; } }
.commenter { margin-top: 15px; text-align: center; }

@media only screen and (max-width: 640px) { .commenter { display: inline-block; width: 49%; vertical-align: top; } }
.commenter a { display: block; text-decoration: none; }

.commenter a:hover { opacity: 0.8; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.commenter img { width: 120px; }

@media only screen and (max-width: 640px) { .commenter img { margin: 0 auto; } }
.commenter .position { margin-top: 5px; }

.commenter .position, .commenter .name { font-size: 15px; text-align: center; font-weight: bold; }

.commenter .position span, .commenter .name span { font-size: 13px; margin-left: 0.5em; }

.commenter .detail { font-size: 12px; text-align: left; margin-top: 5px; }

@media only screen and (max-width: 640px) { .commenter .detail { width: 80%; margin: 0 auto; } }
article.live h2 { background: url("../images/dotted.png") no-repeat center; color: #01437d; font-weight: bold; text-align: center; font-size: 17px; }
article.live h2 span { background-color: #fff; padding: 0 10px; }

article.live p { font-size: 14px; margin-top: 15px; }

article.live .message { border: 3px solid #d7d7d7; border-radius: 5px; padding: 20px; margin-top: 20px; }

@media only screen and (max-width: 640px) { article.live .message { padding: 10px; } }
article.live .message h3 { text-align: center; }

article.live .message .movie-container { margin-top: 20px; padding: 0 50px; }

@media only screen and (max-width: 640px) { article.live .message .movie-container { padding: 0; margin-top: 10px; } }
article.live .message .movie { position: relative; width: 100%; padding-top: 56.25%; }

article.live .message .movie iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

.banner-live { border-radius: 5px; margin-top: 40px; }

.banner-lsc img{ width: 100%; margin-top: 40px; }
@media only screen and (max-width: 640px) { .banner-lsc img{ margin-top: 30px; } }
.banner-lsc a:hover { opacity: 0.8; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

@media only screen and (max-width: 640px) { .banner-live { margin-top: 20px; } }
.banner-live a { display: block; text-decoration: none; }

.banner-live a:hover { opacity: 0.8; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.banner-live .sp { width: 100%; border-radius: 5px 5px 0 0; }

.banner-live .text { overflow: hidden; background-color: #01437d; color: #fff; border-radius: 0 0 5px 5px; padding: 10px 20px 10px 10px; position: relative; }

.banner-live .left { float: left; font-size: 13px; }

@media only screen and (max-width: 640px) { .banner-live .left { float: none; margin-top: 10px; } }
.banner-live .left img { vertical-align: middle; height: 35px; margin-right: 10px; }

@media only screen and (max-width: 640px) { .banner-live .left img { position: absolute; right: 0; top: 13px; height: 25px; } }
.banner-live .left p { display: inline-block; vertical-align: middle; }

.banner-live .right { line-height: 1; float: right; font-size: 26px; padding-top: 5px; }

@media only screen and (max-width: 640px) { .banner-live .right { float: none; font-size: 20px; } }
.banner-live .right img { vertical-align: middle; position: relative; top: -0.1em; margin-left: 10px; }

@media only screen and (max-width: 640px) { .banner-live .right img { width: 10px; } }
.modal { display: none; position: absolute; left: 0; top: 0; width: 100%; background-color: rgba(0, 0, 0, 0.5); }

.modal .image { width: 800px; margin: 0 auto; }

@media only screen and (max-width: 640px) { .modal .image { width: 95%; } }
.modal .image img { width: 100%; }

.modal .close { text-align: right; padding: 10px 0; }

.modal .close a { color: #000; font-size: 13px; background-color: #fff; border-radius: 5px; padding: 5px 10px; display: inline-block; text-decoration: none; }

@media only screen and (max-width: 640px) { .pc { display: none !important; } }
@media only screen and (min-width: 641px) { .sp { display: none !important; } }
.align-right { text-align: right !important; }

.cf::after { content: ""; display: table; clear: both; }

.no-pc { display: none; }
@media only screen and (max-width: 640px) { .no-pc { display: block; } }
.no-sp { display: block; }
@media only screen and (max-width: 640px) { .no-sp { display: none; } }

.br-sp { display: none; }
@media (max-width: 640px) { .br-sp { display: block; } }

@media only screen and (min-width: 641px){ .commentersp { display: none; } }
@media only screen and (max-width: 640px){ .commenterpc { display: none; } }
