@charset "UTF-8";
/*
   Title    : 「READPIA」公式サイト
   URI            : https://readpia.jp/
   Designer       : GRAPHNETWORK
   Designer's URI : http://graphnetwork.com/
*/

/* Reset Style */

html {
  overflow-y: scroll;
   height: 100%;
}

body {
  line-height: 1;
  color: #000; }

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
   margin: 0;
   padding: 0;
   border: 0;
   outline: 0;
   font-size: 100%;
   vertical-align: baseline;
   background: transparent;
   list-style: none; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
   display: block; }

nav ul {
   list-style: none; }

blockquote, q {
   quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
   content: '';
   content: none; }

a {
   margin: 0;
   padding: 0;
   font-size: 100%;
   vertical-align: baseline;
   background: transparent; }

ins {
   background-color: #ff9;
   color: #000;
   text-decoration: none; }

mark {
   background-color: #ff9;
   color: #000;
   font-style: italic;
   font-weight: bold; }

del {
   text-decoration: line-through; }

abbr[title], dfn[title] {
   border-bottom: 1px dotted;
   cursor: help; }

table {
   border-collapse: collapse;
   border-spacing: 0; }

hr {
   display: block;
   height: 1px;
   border: 0;
   border-top: 1px solid #cccccc;
   margin: 1em 0;
   padding: 0; }

input, select {
   vertical-align: middle; }

/* YUI 3.4.1 (build 4118) Copyright 2011 Yahoo! Inc. All rights reserved.
Licensed under the BSD License. http://yuilibrary.com/license/ */



body {
   font: 13px/1.231 arial,helvetica,clean,sans-serif;
   *font-size: small;
   *font: x-small; }

select, input, button, textarea {
   font: 99% arial,helvetica,clean,sans-serif; }

table {
   font-size: inherit;
   font: 100%; }

pre, code, kbd, samp, tt {
   font-family: monospace;
   *font-size: 108%;
   line-height: 100%; }


.pc {
   display: none;
}
.sp {
   display: block;
}
@media screen and (min-width:960px) {
   .sp {
      display: none;
   }
   .pc {
      display:block;
   }
}




/* -----------------------------------------------
module
--------------------------------------------------*/

.txt_red {
   color: #f74f4c; }


.center {
   text-align: center;
}

.img_box{
   text-align: center;
   padding: 20px 0;

}
.img_box img {
      width: 100%;
   }
.bold {
   font-weight: bold;
}
.txt-l {
   font-size: 1.3em;
}

small {
   font-size: 0.8em;
}

@media screen and (min-width:960px) {
   .img_box img {
      width: auto;
   }
}




/* -----------------------------------------------
style
--------------------------------------------------*/
body {
   color: #313131;
   line-height: 1.8em;
   font-size: 16px;
   width: 100%;
   background-color: #fff;
   background-image: url(../img/common/bg-body.gif);
   height: 100%;
   font-family: Arial, Roboto, "Droid Sans", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;;
   position: relative;
   box-sizing: border-box;

 }

.body_inner {
   overflow: hidden;
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

@media screen and (max-width:599px) {
   body {
      font-size: 15px;
   }
}

/* clearfix */
.clearfix:after {
   content: "";
   display: block;
   clear: both;
}
.clearfix {
   zoom: 1;
}


/*     flex     */

.f_box {
   display: flex;
}


/*     list     */
.base_list li {
   line-height: 1.5em;
   margin-bottom: 15px;
   }
.note {
font-size: 11px;
line-height: 1.5em;
}
.note li {
line-height: 1.5em;
margin-bottom: 5px;
color: #666;
}
.notelist li {
   font-size: 0.9em;
   text-indent: -1em;
   margin-left: 1em;
   line-height: 1.5em;
   margin-bottom: 0.4em;
   }
.notelist li:before {
   content: '※';
   display: inline-block;
   width: 1em;
   text-indent: 0;
}
.baselist li {
   line-height: 1.4em;
   margin-bottom: 10px;
}
ul li ul{
   padding-left: 1em;
   padding-top: 10px;
}

.base_dl dt,.base_dl dd {
   line-height: 1.4em;
}
.base_dl dt {
   font-weight: bold;
   color: #591f12;
   padding: 10px 5px 5px;
}
.base_dl dd {
   border-bottom: dashed 1px #87807a;
   padding: 0 5px 10px ;
}





@media screen and (min-width:960px) {
   .base_dl  {
      padding: 0 10px;

   }
   .base_dl dt,.base_dl dd {
      line-height: 1.4em;
   }
   .base_dl dt {
      float: left;
      padding: 10px 5px 10px;
   }
   .base_dl dd {
      padding: 10px 5px 10px 220px;
   }
}


/*     table     */

.base_tbl{
   width: 100%;
   border-top: solid 1px #3e3e3e;
   margin-bottom: 30px;
}
.base_tbl th,.base_tbl td {
   padding: 5px;
   line-height: 1.4em;
   border-left: solid 1px #3e3e3e; 
   border-right: solid 1px #3e3e3e; 
   border-bottom: solid 1px #3e3e3e; 
   vertical-align: middle;
}
.base_tbl th {
   background-color: #e2e2e2;
}


@media screen and (min-width:960px) {

   .base_tbl th,.base_tbl td {
      padding: 10px;
      line-height: 1.6em;
   }

}


/*     link     */

a {
   text-decoration: none;
   color: #3B82C5;
   outline: none;
}
a:hover {
   text-decoration: underline;
   color: #1f4498;
}
a.btn {
   border-radius: 30px;
   padding:10px 10px;
   text-align: center;
   color: #591f12;
   font-weight: bold;
   width: 80%;
   margin: 20px auto;
   display: block;
   border:solid 2px #591f12;
}
a.btn:hover {
   text-decoration: none;
   background:#591f12;
   color: #fff;
}
a:hover img
{
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
background: transparent;
}


a.link_arrow {
   position: relative;
   padding-right: 20px;
   font-weight: 600;
}
a.link_arrow:after {
   content: "";
   background-image: url(../img/arrow_bl.svg);
   display: block;
   background-repeat: no-repeat;
   background-size: 12px 12px;
   position: absolute;
   width: 12px;
   height: 12px;
   right: 0;
   top:2px;
}

/* -----------------------------------------------
common
--------------------------------------------------*/

.txt-blue {
   color: #3B82C5;
}
.txt-green {
   color: #1AA993;
}

.aligncenter {
   text-align: center;
}

/*     header     */

#header {
   display: flex;
   justify-content: space-between;
   height: 100px;
   width: 100%;
   position: fixed;
   top: 0;
   z-index: 10;
   box-sizing: border-box;
   padding:5px 20px 0;
}
#header.fixed,.single-event #header {
   background-color: #fff;
   box-shadow: 3px 3px 16px 0px rgb(0 0 0 / 12%);
   height: 70px;
   box-sizing: border-box;
}

.logo {
   padding: 0;
   margin: 0;
   box-sizing: border-box;

}
.logo a {
   display: block;
   width: 100px;
   height: 150px;
   overflow: hidden;
   background: url(../img/readpia2.png) no-repeat;
   background-size: 100%;
   text-indent: -9999px;
   padding: 0;
   margin: 0;
}
#header.fixed .logo a,.single-event #header .logo a{
   width: 146px;
   height: 50px;
   margin-top: 5px;
   background-image: url(../img/readpia_sp.png);
   background-size: 141px 41px;
}
.logo a:hover {
   opacity: 0.7;
}
nav {
   display: none;
}

#header_search {
   position: fixed;
   top:20px;
   right: 80px;
}
#header #header_search input {
   padding: 8px 15px;
   border: solid #c6c7c7 1px;
   border-radius: 20px;
   font-size: 0.8em;
   width: 18em;
   background-image: url(../img/icon_search.svg);
   background-size: 14px;
   background-repeat: no-repeat;
   background-position: right 10px center;
   background-color: rgb(255 255 255 / 70%);
}
#header #header_search input:focus {
   outline: none;
}

/*開閉ボタン*/
.btn-nav{
   display: block;
   width: 37px;
   height: 37px;
   top: 0;
   right:0;
   z-index: 11;
   padding-top: 15px;
   box-sizing: border-box;
   text-align: center;
}
.btn-nav div {
   position: relative;
}
.btn-nav span{
   display: block;
   height: 2px;
   background: #3B82C5;
   position:absolute;
   width: 100%;
   left: 0;
   -webkit-transition: 0.5s ease-in-out;
   -moz-transition: 0.5s ease-in-out;
   transition: 0.5s ease-in-out;
}
.home .btn-nav span{
   background: #fff;
   color: #fff;
}
#header.fixed span,.single-event #header span{
   background: #3B82C5;
}
.btn-nav span:nth-child(1){
   top:0px;
}
.btn-nav span:nth-child(2){
   top:10px;
}
.btn-nav span:nth-child(3){
   top:20px;
}
.btn-nav p{
   padding-top:21px;
   font-size: 0.7em;
   color: #3B82C5;
}
.home .btn-nav p{
   color: #fff;
}
#header.fixed .btn-nav p,.single-event #header .btn-nav p{
   color: #3B82C5;
}


/*開閉ボタンopen時*/

.open .btn-nav span {
   background: #3B82C5;
   color: #3B82C5;
}

.open .btn-nav span:nth-child(1) {
      top: 12px;
      -webkit-transform: rotate(135deg);
      -moz-transform: rotate(135deg);
      transform: rotate(135deg);
}
.open .btn-nav span:nth-child(2) {
   width: 0;
   left: 50%;
}
.open .btn-nav span:nth-child(3) {
   top: 12px;
   -webkit-transform: rotate(-135deg);
   -moz-transform: rotate(-135deg);
   transform: rotate(-135deg);
}



header nav {
   padding-bottom: 0;
   background: #fff7e6;
   width: 100%;
   position: absolute;
   z-index: 3;
   padding-top: 100px;
   top: 0;
   left:0;
   height: 100vh;
   font-family:"Roboto", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
header nav ul {
   padding:0;
   margin: 0 auto;
   width: 100%;
}
header nav ul li {
   text-align: left;
   padding-right: 20px;
   padding-top: 5px;
   margin-bottom: 2%;
   box-sizing: border-box;
}
header nav ul li.nolink {
   cursor:default;/*マウスカーソルを矢印のまま変えない*/
}

header nav ul li a {
   color:#3B82C5;
   font-weight: 700;
   font-size: 2em;
   text-decoration: none;
   display: inline-block;
   height: auto;
   width: 100%;
   box-sizing: border-box;
   padding-bottom: 20px;
   letter-spacing: 0.04em;
   line-height:0.5em;
   text-align: center;
}

header nav ul li a p{
   font-size: 0.4em;
   display: block;
   padding-top: 10px;
}

header nav ul li.nolink a {
   pointer-events:none;/*リンクを非リンクに変える*/
   cursor:default;/*マウスカーソルを矢印のまま変えない*/
   color: #7bc3e8;
}
header nav ul li a:hover {
   text-decoration: none;
   color: #2a97ff;
}
header nav ul li.nolink a:hover  {
   pointer-events:none;/*リンクを非リンクに変える*/
   cursor:default;/*マウスカーソルを矢印のまま変えない*/
   text-decoration:none;/*下線を消す*/
   color:#000000;/*非リンクの文字色と同じにする*/
}

header nav .link_twitter {
   color: #fff;
   display: inline-block;
   text-align: left;
   width: 100%;
   margin-left: 20px;
   padding-left: 30px;
   font-size: 1.2em;
   margin-top: 30px;
   position: relative;
}

header nav .link_twitter:before{
   content: "";
   display: block;
   position: absolute;
   top:0;
   left:0;
   width: 30px;
   height: 30px;
   background-image: url(../img/common/icon-tw-nav.svg);
   background-repeat: no-repeat;
}

#sns_area {
   font-size: 0.8em;
   text-align: center;
   display: flex;
   width: 30%;
}
#sns_area p {
   padding-left: 20px;
   font-size: 0.6em;
   background-image: url(../img/common/icon-share.svg);
   background-repeat: no-repeat;
   background-size: 15px;
   background-position: 0 5px;
}
.sns_icn_list {
   display: flex;
   justify-content: center;
   box-sizing: border-box;
}
.sns_icn_list li {
   width: 22%;
   height: auto;
   margin:0 3px;
   text-align: center;
}
.sns_icn_list li a,.sns_icn_list li img {
   display: block;
   height: 100%;
   width: 100%;
}

.nav {
   display: none;
}


@media screen and (max-width:599px) {
   #header,#header.fixed {
       height: 60px;
       width: 100%;
       padding: 5px 15px 0;
   }
   #header_search {
       position: fixed;
       top: 15px;
       right: 65px;
   }
   #header #header_search input {
      width: 10em;
      padding: 8px 7px;
      background-position: right 5px center;
   }
   .logo {
      margin: 0;
      margin-top: 0;
   }
   .logo a,#header.fixed .logo a {
      width: 130px;
      height: 40px;
      padding-top: 41px;
      background-image: url(../img/readpia_sp.png);
      background-size: 130px 37px;
   }
   .btn-nav {
      width: 30px;
      padding-top: 10px;
   }
   .btn-nav p {
      padding-top: 19px;
      font-size: 0.6em;
   }


   header nav ul li a {
      padding-bottom: 40px;
   }


}



/*     footer     */

.backtotop {
   display: none;
}
.backtotop.fixed {
   display: block;
   position: fixed;
   bottom: 20px;
   right: 20px;
   width: 70px;
   height: 66px;
}
.backtotop.fixed img {
   width: 100%;
   height: auto;
}
#footer {
   text-align: center;
   padding-top: 50px;
   background-color: #fff;
}
#footer .banners {
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
}
#footer .banners .banner {
   margin:20px 10px;
   width: 250px;
   height: auto;
}
#footer .banners .banner a,#footer .banners .banner a img {
   width: 100%;
}
#footer .banners .banner a img {
   border :solid 1px #d4d4d4;
}
#footer .gnav li a {
   font-size: 0.8em;
   color: #777777;
}
#footer .copyright {
   font-size: 0.7em;
   color: #A0A0A0;
}
#footer .gnav {
   padding-top: 40px;
   margin-top: 40px;
   margin-bottom: 30px;
   position: relative;
}
#footer .gnav:before {
   content: "";
   display: block;
   position: absolute;
   top:-20px;
   width: 100%;
   height: 20px;
   background-image: url(../img/dot.svg);
   background-size: 5px;
}
#footer .gnav a {
   font-size: 0.8em;
   color: #777777;
}

@media screen and (max-width:599px) {
   #footer {
      padding-top: 0;
   }
   #footer .banners .banner {
      margin:5px 10px;
      width: 65%;
   }
}




/*     見出し     */

.content-title {
   text-align: center;
   font-size: 2.1em;
   margin: 40px 0;
}
.content-title p.content-title-en {
   font-size: 0.4em;
   color: #3B82C5;
   letter-spacing: 0.2em;
   padding-top: 5px;
   font-weight: 600;
}
.content-title-jp {
   display: inline-block;
   position: relative;
   font-weight: 600;
}
.content-title-jp:before,.content-title-jp:after {
   content: "";
   display: block;
   background-repeat: no-repeat;
   background-size: 48px 22px;
   position: absolute;
   width: 48px;
   height: 22px;
}
.content-title-jp:before {
   background-image: url(../img/content-title1.svg);
   top:0;
   left: -60px;
}
.content-title-jp:after {
   background-image: url(../img/content-title2.svg);
   top:0;
   right: -60px;
}
.content-item-title {
   font-size: 2.2em;
   font-weight: 500;
}

@media screen and (max-width:599px) {
   .content-title {
      font-size: 1.8em;
   }
}


/*     ページタイトル     */

.header.content-title {
   padding-top: 80px;
}

.header.content-title h2 {
   font-size: 0.5em;
   padding-top: 30px;
}

@media screen and (max-width:599px) {
   .header.content-title {
      padding-top: 80px;
      margin-bottom: 30px;
   }
}


/*     一覧系ページ     */

.pages .pages-body {
   display:flex;
   justify-content: center;
}

.pages .pages-body li .page-numbers {
   display: block;
   text-align: center;
   background: #F5F5F5;
   padding: 10px 15px;
   margin: 0 3px;
}

/* -----------------------------------------------
top page
--------------------------------------------------*/

#top_main {

}
#top_mv {
   position: relative;
   width: 100%;
   height: 60vh;
}

#top_mv .slick-track {
   height: 60vh;
}
#top_mv img {
   width: 100%;
   object-fit: cover;
}
.top_mv_read {
   position: absolute;
   width: 100%;
   z-index: 3;
   margin: auto;
   height: auto;
   top:0;
   bottom:0;
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   align-content:center;
   justify-content: center;
}
.top_mv_read .img_box {
   padding-right: 0;
   width: 280px;
}
#top_mv .read_mv {
   color: #fff;
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   align-content:center;
   width: 500px;
   text-align: center;
}
#top_mv .read_mv p {
   width: 100%;
}
#top_mv .read_mv p:first-child{
   letter-spacing: 0.2em;
   font-size: 2.3em;
   margin-bottom: 25px;
   padding-top: 30px;
   font-weight: 600;

}
#top_mv .first_read {
   font-size: 1.3em;
   line-height: 1.8em;
   letter-spacing: 0.2em;
}
#about {
   text-align: center;
   background-color: #fff7e6;
   padding: 50px 40px 10px;
   box-sizing: border-box;
   position: relative;
}
#about .logo_about {
   width: 150px;
}
#about:after {
   content: "";
   display: block;
   background-image: url(../img/line_cts.svg);
   background-repeat: no-repeat;
   background-size: contain;
   position: absolute;
   max-width: 1000px;
   height: 130px;
   right: 0;
   left: 0;
   margin: auto;
   bottom:-90px;
}
#about .about-txt {
   line-height: 2em;
   font-size: 1.1em;
   letter-spacing: 0.1em;
   font-weight: 600;
}

#top_event {
   padding-top: 100px;
}
#top_event .content-title {
   margin:40px 0 20px;
}
.header {
  text-align: center;
  padding: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.main-img{
   background-color: #F5F5F5;
   padding-top: 20px;
   }

.main-img img {
    vertical-align: top;
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
  }

.main-img a {
    display: block;
  }

.main-img a img {
      -webkit-transition: opacity 0.2s;
      transition: opacity 0.2s
    }

.main-img a img:hover {
        opacity: 0.7;
      }

.slick-thumb {
   display: flex;
   justify-content: center;
   background-color: #F5F5F5;
   padding: 20px;
   position: relative;
   margin-bottom: 40px;

}
.slick-thumb .slick-track {
   display: flex;
   justify-content: center;
}
.slick-thumb::after {
   content: "";
   display: block;
   position: absolute;
   background-repeat: no-repeat;
   background-image: url(../img/line_l.svg);
   width: 1000px;
   height: 14px;
   right: 0;
   bottom: -14px;
}

.slick-thumb li {
   width: 170px!important;
   margin:0 7px;
}
.slick-thumb li a,.slick-thumb li img {
   width: 100%;
}

.slick-thumb .slick-track {
transform:unset!important;
}

#top_main .contents .header {
   padding-top: 0;
}

.movies {
   display: flex;
   flex-wrap: wrap;
   max-width: 1280px;
   padding: 40px 40px 70px 48px;
   box-sizing: border-box;
   margin: 0 auto;
}

.movies .movie {
   width: 30.3%;
   width: 23%;
   position: relative;
   background-color: #F5F5F5;
   margin-right: 1%;
   margin-left: 1%;
   margin-bottom: 3%;
   -moz-box-shadow: 0px 3px 13px 1px rgba(0, 0, 0, 0.15);
   -webkit-box-shadow: 0px 3px 13px 1px rgba(0, 0, 0, 0.15);
   -ms-box-shadow: 0px 3px 13px 1px rgba(0, 0, 0, 0.15);
   box-shadow: 0px 3px 13px 1px rgba(0, 0, 0, 0.15);
   box-sizing: border-box;
}
.movies .movie:before {
   content: "";
   display:block;
   position: absolute;
   bottom:0;
   right: 0;
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 0 0 30px 30px;
   border-color: transparent transparent #3b82c5 transparent;
}
.movie_alink {
   display: block;
   color: #313131;
}
.movie_alink:hover {
   color: #313131;
   text-decoration: none;
}
.movies .movie .movie-image img {
   width: 100%;
}
.movie-title-sub {
   font-size: 0.8em;
   display: block;
}
.movie-title {
   padding: 10px 10px 0;
   line-height: 1.4em;
   font-size: 0.9em;
}
.movie-info {
   font-size: 0.8em;
   padding: 10px;
   line-height: 1.7em;
}
.movie-info-value-tag {
   display: flex;
   flex-wrap: wrap;
   padding: 10px 0 0;
   line-height: 1.4em;
}
.movie-info-value-tag .movie-info-value-tag-item {
   margin: 0 5px;
}
.movie-info-value-tag a {
   color: #3b82c5;
}


#top_backnumber {
   text-align: center;
   padding: 50px 40px 60px;
   background-image: url(../img/dot.svg);
}


#news_twitter {
   background-color: #fff7e6;
   padding:80px 40px ;
   box-sizing: border-box;
   position: relative;
}
#news_twitter:before {
   content: "";
   display: block;
   background-image: url(../img/line_s.svg);
   background-repeat: no-repeat;
   background-size: contain;
   position: absolute;
   width: 592px;
   height: 14px;
   left: 0;
   top:-14px;
}
#news_twitter:after {
   content: "";
   display: block;
   background-image: url(../img/line_cts.svg);
   background-repeat: no-repeat;
   background-size: contain;
   position: absolute;
   max-width: 1000px;
   height: 130px;
   right: 0;
   left: 0;
   margin: auto;
   bottom:-90px;
}

#news_twitter .content-item-title {
   padding: 0 10px 20px;
   font-size: 1.9em;
}
#news_twitter .inner {
   max-width: 1000px;
   margin: 0 auto;
   display: flex;
   justify-content: space-between;

}
#news-entries,#twitter {
   width: 47%;
}
#news_twitter .news-list {
   background-color: #fff;
   border-radius: 10px;
   padding: 20px 30px;
   box-sizing: border-box;
   height: 450px;
   overflow-y: scroll;
   box-shadow:1px 1px 6px rgba(0,0,0,0.13);
}
#news_twitter .news-list-item {
   border-bottom:dotted 2px #e4e4e4;
   padding-bottom: 10px;
   padding-top: 10px;
   font-size: 0.9em;
   line-height: 1.5em;
}
#news_twitter .news-list-item a {
   color: #363636;
}
#news_twitter .news-list-item a .news-list-date {
   display: block;
   color: #3B82C5;
   padding-bottom: 7px;
}

#news-entries .content-item-title{
   background-image: url(../img/icon_news.svg);
   background-repeat: no-repeat;
   background-size: 25px;
   background-position: 0 0;
   padding-left: 38px;
   padding-top: 7px;
}
#news-entries .link_more_area{
   padding: 20px 10px;
}
#twitter .link_more_area{
   padding: 10px 10px;
}
#twitter .content-item-title{
   background-image: url(../img/icon_twitter.svg);
   background-repeat: no-repeat;
   background-size: 32px;
   background-position: 0 8px;
   padding-left:38px;
   padding-top: 7px;
}
#twitter #twitter-widget-0 {
   height: 450px!important;
   box-shadow:1px 1px 6px rgba(0,0,0,0.13);
   border-radius: 10px;
}
.link_more_area {
   text-align: right;
   padding: 30px 10px;
}

.top_news_twitter_btm {
   background: #fff;
   height: 80px;
}

@media screen and (max-width:599px) {

   #top_mv {
      height: 55vh;
   }
   #top_mv .slick-track {
      height: 60vh;
   }
   #top_mv .read_mv p:first-child {
      font-size: 1.6em;
      margin-bottom: 10px;
      padding-top: 0;
   }
   #top_mv .first_read {
      font-size: 1em;
      line-height: 1.7em;
      letter-spacing:0.1em ;
   }

   .top_mv_read {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
   }
   .top_mv_read .img_box {
      width: 45%;
      padding-right: 0;
      padding-bottom: 0;
      margin: 0 auto;
   }
   #top_mv .read_mv {
      width: 100%;
   }
   #top_mv .read_mv p {
      width: 100%;
   }

   #about {
      padding: 20px 15px ;
   }
   #about:after {
      width: 90%;
      height: calc(100vw * 0.2);
      bottom: calc(100vw * -0.16);
   }
   #about .logo_about {
      width: 70%;
   }
   #about .first_read {
      font-size: 1.2em;1
   }
   #about .img_box {
      width: 50%;
      margin: 0 auto;
   }
   #about .about-txt {
      font-size: 1em;
      letter-spacing:0.05em;
      line-height: 2.1em;
   }
   #about .about-txt span.txt_s {
      font-size: 0.5em;
   }

   #top_event {
      padding-top: 50px;
   }

   .movies {
      padding: 20px 2%;
   }

   .movie-title {
      font-size: 0.9em;
      line-height: 1.4em;
      padding: 0 10px 0;
   }
   .movie-info {
      font-size: 0.7em;
      padding: 5px 10px;
      line-height: 1.3em;
   }

   .movies .movie {
      width: 46%;
      margin-right: 2%;
      margin-left: 2%;
      margin-bottom: 5%;
      box-shadow: 0px 2px 8px 1px rgb(0 0 0 / 15%);
   }
   .movies .movie:before {
      border-width: 0 0 24px 24px;
   }
   .slick-thumb {
      margin-bottom: 30px;
   }
   #top_backnumber {
      padding:30px 15px 40px;
   }
   #news_twitter {
      padding: 50px 15px;
   }

   #news_twitter:after {
      width: 90%;
      height: calc(100vw * 0.2);
      bottom: calc(100vw * -0.16);
   }
   #news_twitter .inner {
      display: block;
   }
   #news-entries, #twitter {
      width: 100%;
   }
   #news-entries {
      margin-bottom: 50px;
   }

   .home .movies {
      margin-bottom: 30px;
   }
}
@media screen and (max-width:350px) {

   #top_mv {
      height: 70vh;
   }
   #top_mv .slick-track {
      height: 70vh;
   }
   #top_mv .read_mv p:first-child {
      font-size: 1.3em;
      margin-bottom: 10px;
   }
   #top_mv .first_read {
      font-size: 1em;
   }

}

/* -----------------------------------------------
event
--------------------------------------------------*/

.single-back_number .contents,.single-event .contents {
   padding: 100px 0;
}

.single-back_number .area-wrapper,.single-event .area-wrapper {
   padding-top:100px;
   margin-top:-100px;
}
.single-back_number .page-nav ,.single-event .page-nav {
   margin: 0 auto 30px;
   padding-right: 25px;
   padding-left: 25px;
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   width: 100%;
   max-width: 900px;
   position: relative;
}

.single-back_number .page-nav li,.single-event .page-nav li {
   border:solid 1px;
   display: inline-block;
   white-space: nowrap;
   margin-top: -1px;
   margin-left: -1px;
}
.single-back_number .page-nav li a,.single-event .page-nav li a {
   text-decoration: none;
   text-align: center;
   padding: 10px 25px;
   box-sizing: border-box;
   display: inline-block;
   width: 100%;
   font-size: 0.9em;
}

.single-back_number .contents-container,.single-event .contents-container {
   width: 100%;
   max-width: 900px;
   margin: 0 auto;
   box-sizing: border-box;
}
.event-main-title {
   width: 100%;
   max-width: 900px;
   margin: 0 auto 30px;
   font-size: 2.5em;
   line-height: 1.3em;
   font-weight: 600;
}

.event-main-img img{
   width: 100%;
   margin-bottom: 40px;
}

.single-back_number .event-title,.single-event .event-title {
   font-size: 1.7em;
   margin-bottom: 15px;
   padding: 0 5px;
   text-align: center;
}
.contents-item.white,.contents-body.white {
   background-color: rgba(255,255,255,0.3);
   padding: 40px 50px 30px;
   box-shadow:0 2px 3px 2px rgb(0 0 0 / 2%);
}
.event-info p {
    margin-bottom: 20px;
}
.photo-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.photo-list-item {
    margin: 0 2%;
    margin-bottom: 33px;
    list-style-type: none;
    width: 20%;
    font-size: 0.8em;
    line-height: 1.5em;
}
.photo-list.rectangle .photo-list-item{
   width: 25%;
}
.photo-list .photo-list-item .photo-list-value {
   text-align: center;
}
.photo-list-img {
    display: block;
    width: 100%;
    height: auto;
    /* background-color: #666; */
    margin-bottom: 15px;
}
.photo-list .image {
    padding-top: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}


.single-back_number .contents-item,.single-event .contents-item {
   margin-bottom: 70px;
}
.contents-item h1 {
   font-size: 150%;
   margin-bottom: 20px;
}
.contents-item h2 {
   font-size: 120%;
   margin-bottom: 5px;
}
.contents-item h3 {
   font-size: 110%;
   margin-bottom: 5px;
}
.event-copyright {
   font-size: 0.7em;
}
.event-text {
   font-weight: bold;
   margin: 30px 0 70px;
   text-align: center;
   line-height: 1.6em;
   letter-spacing: 0.06em;
 }
h2.event-text{
    font-size: 200%;
}
h3.event-text{
    font-size: 160%;
}
h4.event-text{
    font-size: 130%;
}



.single-back_number .layouts a,.single-event .layouts a {
   color: #00e;
}
.back_index {
   max-width: 900px;
   padding: 0 15px;
   margin: 0 auto 20px;
   text-align: center;
   display: flex;
   justify-content: center;
}
.back_index a {
   background-color: #fff;
   border-radius: 20px;
   margin: 0 10px;
   padding: 5px 15px;
   display: block;
   font-size: 1em;
   width:13em;
   text-align: center;
   background-image: url(../img/arrow_bl2.svg);
   background-repeat: no-repeat;
   background-position: left 15px center;
}
.back_index a:hover {
   text-decoration: none;
}
.annotation {
   font-size: 0.9em;
   padding-top: 10px;
}

.layouts .video {
   width: 700px;
   height: 393px;
   margin: 20px auto;
}

.area-wrapper img {
   max-width: 100%;
   height: auto;
}
.area-wrapper ul,.area-wrapper ul.note_list2 {
   margin-bottom: 30px;
}
.area-wrapper ul.note_list li,.area-wrapper ul.note_list2 li {
   line-height: 1.5em;
   margin-bottom: 7px;
   padding-left: 1em;
}
.area-wrapper ul.note_list2 li {
   font-size: 0.8em;
}

.area-wrapper ul.note_list li:before {
   content: "・";
   margin-left: -1em;
}
.area-wrapper ul.note_list2 li:before {
   content: "※";
   margin-left: -1em;
}
@media screen and (max-width:599px) {
   .event-main-title{
      margin: 0 auto 30px;
      font-size: 2em;
      line-height: 1.3em;
   }

   .single-back_number .page-nav ,.single-event .page-nav {
      margin: 0 auto 30px;
      padding-right: 5px;
      padding-left: 5px;
      width: 100%;
   }

   .single-back_number .page-nav li,.single-event .page-nav li {
   }
   .single-back_number .page-nav li a,.single-event .page-nav li a {
      padding: 5px 20px;
   }


   .single single-back_number .contents-container,.single-event .contents-container {
      width: 95%;
   }
   .contents-item.white, .contents-body.white {
      padding: 20px 10px;
   }
   .photo-list-item {
      width: 45%;
      margin: 0 2.5% 30px;
   }
   .single-back_number .event-title,.single-event .event-title {
      margin-bottom: 15px;
      font-size: 1.5em;
   }
   .single single-back_number .contents-item,.single-event .contents-item {
      margin-bottom: 50px;
   }

   h2.event-text{
       font-size: 160%;
   }
   h3.event-text{
       font-size: 130%;
   }
   h4.event-text{
       font-size: 110%;
   }

   .photo-list.rectangle .photo-list-item{
      width: 45%;
   }
   .layouts .video {
      width: 90%;
      height: calc(100vw * 0.5);
   margin: 20px auto;
   }

   .back_index {
      max-width: 900px;
      padding: 0 15px;
      margin: 0 auto 20px;
      justify-content: space-between;
   }
   .back_index a {
      padding: 5px 15px;
      font-size: 0.8em;
      width:48%;
      background-position: left 15px center;
      margin: 0;
   }

}




/* -----------------------------------------------
news
--------------------------------------------------*/
#news .news-entries {
   width: 90%;
   max-width: 1000px;
   margin: 0 auto;
   background-color: #F5F5F5;
   padding: 50px 5%;
   margin-bottom: 50px;
}

.news-entry-title {
   font-size: 1.5em;
   margin-bottom: 10px;
   margin-bottom: 25px;
   padding-bottom: 20px;
   font-weight: 500;
   border-bottom: solid 2px #e4e4e4;
   position: relative;
}
.news-entry-title:after {
  content: "";
  display: block;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 10%;
  border-bottom: 2px solid #1AA993;
}
.news-entry-date {
   margin-bottom: 10px;
   color: #6d6d6d;
   font-size: 0.9em;
}

.news-body img {
   max-width: 100%;
   height: auto;
}


@media screen and (max-width:599px) {

   #news .news-entries {
      padding: 20px 5%;
      margin-bottom: 30px;
   }
   .news-entry-title:after {
     width: 18%;
   }

}


