@charset "UTF-8";
@import url('normalize.css');
/*
---------------------------------------------------------
WEB FONT
---------------------------------------------------------
*/

/* 日本語フォント */
@import url('NotoSansCJKjp.css');
/* Google Font */
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:400,700');
/* slider style */
@import url('../js/slick/slick.css');
@import url('../js/slick/slick-theme.css');
.wf-rc {
  font-family: 'Roboto Condensed', sans-serif;
}
/*
---------------------------------------------------------
common style
---------------------------------------------------------
*/
html,
body {
  background-color: #222222;
  color: #fff;
}

@media screen and (max-width: 39.9375em) {
html,
 body {
}
}
html {
  font-family: 'Noto Sans CJK JP', sans-serif, "sans-serif";
  font-size: 100%;
}
body {
  /*  font-size: 1rem;*/
  background-image: url(../images/bg.svg);
  background-position: center top;
}
a {
  color: #ffffff;
}
.pc a {
  opacity: 1;
  transition: opacity 0.2s ease;
}
.pc a:hover {
  opacity: 0.6;
  transition: opacity 0.2s ease;
}
img{
  max-width: 100%;
  height: auto;
}
/* current link
------------------------------------------------*/
.category-event .item-event,
.category-media .item-media,
.category-concept .item-concept,
.category-news .item-news ,
.category-movie .item-movie ,
.category-artist .item-artist {
  color: #e60012;
}


/* layout
------------------------------------------------*/
.grid {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
/* container
------------------------------------------------*/
.container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.container.margin-x {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.container.margin-y {
  margin-bottom: 0.5rem;
}
.container.padding-x {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.container.padding-y {
  padding-bottom: 0.5rem;
}
/*  */
.container{
  width:80%;
}
@media screen and (max-width: 39.9375em) {
.container{
  width:90%;
}
}
/* 
------------------------------------------------*/
.nav-bottom {
  margin: 4rem 0;
}

@media screen and (max-width: 39.9375em) {
.nav-bottom {
  margin: 2rem 0;
}
}
/* utility
------------------------------------------------*/
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.pull-left {
  float: left;
}
.pull-right {
  float: right;
}
.pull-center {
  margin-left: auto;
  margin-right: auto;
}
.show-for-small-only {
  display: none;
}

@media screen and (max-width: 39.9375em) {
.show-for-small-only {
  display: block;
}
}

@media screen and (max-width: 74.9375em) {
}

@media screen and (max-width: 39.9375em) {
}
/* button
------------------------------------------------*/
.button,
a.button {
  display: inline-block;
  text-decoration: none;
  padding: 0.5rem 1rem;
  border: solid 1px rgba(255,255,255,0.5);
  border-radius: 3rem;
  color: rgba(255,255,255,1);
}
.button.clear {
  background: transparent;
  border: none;
}
.button.wide {
  padding-left: 5rem;
  padding-right: 5rem;
}
.button .fa {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  margin-top: -0.5rem;
}
/* label
------------------------------------------------*/
.label {
  font-weight: bold;
  min-width: 80px;
  text-align: center;
  font-size: 12px;
}
.label.rounded {
  /*水平方向(左上・右上・右下・左下) / 垂直方向(左上・右上・右下・左下) */
  border-radius: 1rem 1rem 1rem 1rem / 1rem 1rem 1rem 1rem;
}
.label.warning {
  background: #ffae00;
  color: #fff
}
.label.alert {
  background: #cc4b37;
  color: #fff
}
/* pagination
------------------------------------------------*/


.pagination {
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 1rem
}
.pagination::before,
.pagination::after {
  display: table;
  content: ' ';
  flex-basis: 0;
  order: 1
}
.pagination::after {
  clear: both
}
.pagination li {
  margin-right: .2857142857rem;
  border-radius: 0;
  font-size: 1rem;
  display: inline-block
}
.pagination a,
.pagination button {
  display: block;
  box-sizing: border-box;
  /*  padding: .2142857143rem .7142857143rem;*/
  padding-top: 0.3rem;
  height: 2rem;
  width: 2rem;
  border-radius: 50%;
  border: solid 1px #dcdcdc;
  /*  background-color: #fff;*/
  text-decoration: none;
}
.pagination a:hover,
.pagination button:hover {
  background: #f5f5f5;
  color: #000;
}
.pagination .current {
  /*  padding: .2142857143rem .7142857143rem;*/
  
  color: #fff;
  cursor: default
}
.pagination .current span {
  display: block;
  box-sizing: border-box;
  padding-top: 0.3rem;
  height: 2rem;
  width: 2rem;
  border-radius: 50%;
  border: solid 1px #dcdcdc;
  text-decoration: none;
  background: #f5f5f5;
  color: #000;
}
.pagination .disabled {
  padding: .2142857143rem .7142857143rem;
  color: #cacaca;
  cursor: not-allowed
}
.pagination .disabled:hover {
  background: transparent
}
.pagination .ellipsis::after {
  padding: .2142857143rem .7142857143rem;
  content: '\2026';
  color: #000
}
/* 
---------------------------------------------------------
header
--------------------------------------------------------- 
*/
/* site-title */
.site-title {
  position: fixed;
  top: 65%;
  left: 0;
  z-index: 1000;
  padding: 10px;
  background-color: #000;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 39.9375em) {
.site-title {
  /*  top: 30%;*/
  top: 300px;
  padding: 5px 3px;
}
}
.site-title img {
  width: 40px;
  height: auto;
}

@media screen and (max-width: 39.9375em) {
.site-title img {
  width: 20px;
  height: auto;
}
}
/*  */
.header {
  position: fixed;
  width: 100%;
  /*  max-width: 1200px;*/
  margin: 0 auto;
  top: 0;
  z-index: 1000;
  min-height: 85px;
  background-color: rgba(45,45,45,0);
  transition: all 0.5s ease;
}

@media screen and (max-width: 39.9375em) {
.header {
  min-height: 50px;
}
}
.header.is-fix {
  background-color: rgba(45,45,45,1);
  transition: all 0.5s ease;
}
.header ul,
.header li {
  list-style: none;
  display: inline;
  margin: 0;
  padding: 0;
}
/* .header a */
.header a {
  text-decoration: none;
}
.header-nav {
}

@media screen and (max-width: 39.9375em) {
.header-nav {
  display: none;
}
}
.header-nav ul {
  /*  text-align: center;*/
  display: flex;
  width: 100%;
  flex-wrap: nowrap;
  justify-content: center;
}
.header-nav a {
  display: inline-block;
  line-height: 1;
  padding: 2rem 2rem 1rem 2rem;
  font-size: 1.125rem;
  font-weight: 700;
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  top: 14px;
  left: 12px;
  width: 24px;
  height: 24px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #ffffff;
  border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 10px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 1px;
}
.drawer-active .menu-trigger span:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
}
.drawer-active .menu-trigger span:nth-of-type(2) {
  opacity: 0;
}
.drawer-active .menu-trigger span:nth-of-type(3) {
  -webkit-transform: translateY(-10px) rotate(45deg);
  transform: translateY(-10px) rotate(45deg);
}

@media screen and (max-width: 74.9375em) {
}

@media screen and (max-width: 39.9375em) {
}
/* 
---------------------------------------------------------
Drawer
--------------------------------------------------------- 
*/
#drawer {
  width: 100%;
  height: 0;
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  display: none;
  /*  opacity: 0;*/
/*  background-color: aqua;*/
  transition: backdrop-filter 0.3s ease -1s;
}
.drawer-active #drawer {
  display: block;
  height: 100%;
  opacity: 1;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  transition: backdrop-filter 0.3s ease -1s;
}
/*  */
.drawer-nav {
  display: flex;
  width: 100%;
  height: 100%;
}
.drawer-nav ul,
.drawer-nav li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.drawer-nav ul {
  align-self: center;
  width: 100%;
}
.drawer-nav li {
}
.drawer-nav a {
  display: block;
  text-align: center;
  padding: 1rem;
  text-decoration: none;
  opacity: 0;
  transition: opacity 2s ease 1s;
}
.drawer-active a {
  opacity: 1;
  transition: opacity 2s ease 1s;
}
.drawer-nav a:hover {
  color: #e60012;
}
/*  */
.drawer-btn {
  position: fixed;
  top: 0px;
  right: 0px;
  width: 50px;
  height: 50px;
  z-index: 1000;
}
.drawer-bg-left,
.drawer-bg-right {
  position: absolute;
  width: 50%;
  height: 0;
  transition: all 0.3s ease-out;
  opacity: 0.3;
  background-color: #000;
  transform: translateZ(0);
}
.drawer-bg-left {
  left: 0;
  top: 0;
}
.drawer-bg-right {
  right: 0;
  bottom: 0;
}
.drawer-active .drawer-bg-left,
.drawer-active .drawer-bg-right {
  height: 100%;
  opacity: 0.7;
  transition: all 0.3s ease-out;
}

@media screen and (max-width: 74.9375em) {
}

@media screen and (max-width: 39.9375em) {
}
/* 
---------------------------------------------------------
main
--------------------------------------------------------- 
*/
.main {
  padding: 85px 0 0 0;
  font-size: 0.875rem;
}

@media screen and (max-width: 39.9375em) {
.main {
  padding: 55px 0 0 0;
}
}
/* 
---------------------------------------------------------
footer
--------------------------------------------------------- 
*/

.footer {
  background-color: #2d2d2d;
  padding: 50px 0 0 0;
  box-sizing: border-box;
  min-height: 170px;
  position: relative;
  margin-top: 5rem;
}
/*copyright
------------------------------------------------*/
.copyright {
  font-size: 0.875rem;
  font-weight: 400;
  text-align: center;
  display: inline-block;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
}
/*page top
------------------------------------------------*/
.global-pagetop {
  position: fixed;
  right: 10px;
  bottom: -150px;
  z-index: 1000;
  width: 45px;
  height: 45px;
  transition: bottom 0.3s ease;
}

@media screen and (max-width: 39.9375em) {
.global-pagetop {
  right: 0px;
}
}
.global-pagetop a {
  display: block;
  /*  line-height: 1;*/
  background-color: #2d2d2d;
  color: #fff;
  width: 45px;
  height: 45px;
  text-align: center;
  line-height: 45px;
}
.pc .global-pagetop a:hover {
  text-decoration: none;
  opacity: 0.5;
  transition-property: opacity;
  transition-duration: 0.2s;
  transition-timing-function: ease;
}
.pagetop-active .global-pagetop {
  bottom: 20px;
  transition: bottom 0.3s ease;
}
.pagetop-active .global-pagetop.is-fix {
  bottom: 165px;
  transition: bottom 0.3s ease;
}

@media screen and (max-width: 39.9375em) {
.pagetop-active .global-pagetop {
  bottom: 10px;
  transition: bottom 0.3s ease;
}
}
/* article
------------------------------------------------*/

.article-title {
  font-size: 2.125rem;
  text-align: center;
  margin: 5rem 0 1.5rem 0;
  padding: 0 0 1rem 0;
  border-bottom: double 3px rgba(255,255,255,0.3);
}

@media screen and (max-width: 39.9375em) {
.article-title {
  font-size: 1.5rem;
  margin: 2rem 0 0.5rem 0;
  border-bottom: none;
}
}
/* section
------------------------------------------------*/

.section-title {
  font-size: 2.215rem;
  font-weight: 700;
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 39.9375em) {
.section-title {
  font-size: 1.25rem;
}
}
.section-header {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  justify-content: space-between;
}
.section-header {
}

@media screen and (max-width: 39.9375em) {
.section-header {
  padding: 0 1rem;
}
}
.section-nav {
  text-align: right;
  align-self: flex-end;
  font-size: 1.125rem;
}

@media screen and (max-width: 39.9375em) {
.section-nav {
  font-size: 0.875rem;
}
}
.section-nav a {
  text-decoration: none;
  display: inline-block;
  border-bottom: 1px solid #fff;
}
.section-body {
  margin-top: 0.5rem;
}
/* entry title
------------------------------------------------*/

.entry-title {
  font-size: 1.2rem;
  font-weight: bold;
}

@media screen and (max-width: 39.9375em) {
.entry-title {
}
}
/* sub title
------------------------------------------------*/

.sub-title {
  font-size: 1rem;
  font-weight: 700;
  background-color: #000;
  color: #fff;
  padding: 0.3rem 0.8rem;
  margin-bottom: 0.3rem;
}

@media screen and (max-width: 39.9375em) {
.sub-title {
}
}
/* second
------------------------------------------------*/

.second {
}
.second body {
  padding: 0px 0 0 0;
}
.sp .section-body a {
  word-wrap: break-word;
}
.sp .section-body img {
  max-width: 100%;
  height: auto !important;
}
/*
---------------------------------------------------------
視聴プレーヤ
---------------------------------------------------------
*/

.player {
  margin: 0;
  padding: 0;
  width: 75px;
  height: 18px;
  /*  overflow: hidden;*/
  position: relative;
  /*	float: right;*/
  /*	right: 0;*/
  /*	margin-left: 8px;*/
  z-index: 100;
  display: inline-block;
}
.player .switch {
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  border-radius: 100px;
  width: 70px;
  height: 18px;
  padding: 0;
  margin: 0;
  border: 1px solid #cc0000;
  text-align: center !important;
  background: #cc0000;
}
/* 
---------------------------------------------------------
home
--------------------------------------------------------- 
*/
/* main image
------------------------------------------------*/

.mainimg {
  width: 100%;
  min-width: 100px;
  /*  min-height: 600px;*/
  padding: 0px 0 40px 0;
  overflow: hidden;
}

@media screen and (max-width: 39.9375em) {
.mainimg {
  padding: 0px 0 0px 0;
}
}
.mainimg ul,
.mainimg li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.mainimg .slider {
  margin: 0;
  padding: 0;
}
.mainimg .slider img {
  max-width: 100%;
  height: auto;
}
.mainimg .slick-prev::before,
.mainimg .slick-next::before {
  font-size: 24px;
}
.mainimg .slick-next {
  right: 20px;
  z-index: 99;
}
.mainimg .slick-prev {
  left: 15px;
  z-index: 100;
}
.mainimg .slick-next::before {
  color: #000000;
}
.mainimg .slick-prev::before {
  color: #000000;
}
.mainimg .slick-dots {
  bottom: -30px;
}
.slider {
  display: none;
}
.slider.slick-initialized {
  display: block;
}
/* media
------------------------------------------------*/
.media {
  padding-top: 1rem;
  padding-bottom: 2rem;
}
.home .media {
  margin-top: 3rem;
}

@media screen and (max-width: 39.9375em) {
.media {
  padding-top: 1rem;
  padding-bottom: 2rem;
}
}
.media .media-artist {
  text-align: center;
}
.media-entry {
  background-color: rgba(255,255,255,0.1);
  padding: 1.25rem;
  margin-bottom: 3px;
  position: relative;
  width: 100%;
  box-sizing: border-box;
  flex-wrap: nowrap;
}

@media screen and (max-width: 39.9375em) {
.media-entry {
  padding: 1rem 1rem 0.1rem 1rem;
  display: block;
}
}
.media-entry::after {
  content: "";
  position: absolute;
  bottom: 0px;
  right: 0px;
  display: block;
  width: 20px;
  height: 20px;
  border-right: 1px solid #a7a7a7;
  border-bottom: 1px solid #a7a7a7;
}
.media-entry a {
  position: relative;
  display: block;
  /*  color: #000;*/
  text-decoration: none;
  width: 100%;
}
.media-artist {
  /*  text-align: center;*/
  min-width: 100px;
  font-weight: 700;
  font-size: 14px;
  background-color: transparent;/*  display: inline-block;*/
}

@media screen and (max-width: 39.9375em) {
.media-artist {
  min-width: inherit;
}
}
.media-category {
  min-width: 100px;
  background-color: #222222;
  color: #fff;
  margin: 0 1rem 1px 0;
  padding: 0.2rem 0.6rem 0.4rem 0.6rem;
  line-height: 1;
  text-align: center;
}

@media screen and (max-width: 39.9375em) {
.media-category {
  min-width: 200px;
  margin: 0.3rem 0;
}
}
.media-category .artist-name {
  font-size: 0.75rem;
}
.media-category .category {
  font-size: 0.6875rem;
}
.media-date {
  padding: 0 1rem 0 0rem;
  flex-shrink: 0;
}
.media-date .year {
  line-height: 1;
  font-size: 10px;
  font-weight: 400;
  position: absolute;
  top: 1px;
  right: 1px;
  display: inline-block;
  padding: 0.3rem 0.5rem;
  background: rgba(255,255,255,0.2);
  color: #000;
}
.media-date .month,
.media-date .day {
  line-height: 1;
  font-size: 1.625rem;
  font-weight: 700;
  display: inline-block;
}

@media screen and (max-width: 39.9375em) {
.media-date .month,
.media-date .day {
  font-size: 1.25rem;
  font-weight: 300;
}
}
.media-date .week {
  line-height: 1;
  font-size: 0.875rem;
  font-weight: 700;
  text-align: right;
}

@media screen and (max-width: 39.9375em) {
.media-date .week {
  display: inline-block;
  font-weight: 300;
}
}
.media-title {
  color: #fff;
  width: 100%;
}

@media screen and (max-width: 39.9375em) {
.media-title {
  margin: 0 0 1rem 0;
}
}
.media-title p {
  margin: 0.3rem 0 0 0;
}

@media screen and (max-width: 39.9375em) {
}
/* MEDIA detail
------------------------------------------------*/
.media-detail {
}
.media-detail .section-body {
  padding: 0 1rem;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 39.9375em) {
.media-detail .section-body {
/*  width: 80%;*/
  padding: 0 1rem;
}
}

.media-detail .media-header {
  margin: 0 0 3rem 0;
}

@media screen and (max-width: 39.9375em) {
.media-detail .media-header {
  margin: 0 0 1rem 0;
}
}
.media-detail .media-category {
  display: inline-block;
  min-width: inherit;
}
.media-detail .entry-title {
  font-size: 1.125rem;
  font-weight: 500;
  margin: 0;
}
.media-detail .entry-body {
  line-height: 1.5;
  min-height: 400px;
}
@media screen and (max-width: 39.9375em) {
.media-detail .entry-body {
  min-height: 200px;
}
}

.media-detail .media-date {
  font-size: 0.875rem;
}
/* event
------------------------------------------------*/
.event {
  padding-top: 1rem;
  padding-bottom: 2rem;
  margin-top: 3rem;
}
.event-entry {
  background-color: rgba(255,255,255,0.1);
  padding: 1.25rem;
  margin-bottom: 3px;
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

@media screen and (max-width: 39.9375em) {
.event-entry {
  padding: 1rem;
}
}
.event-entry::after {
  content: "";
  position: absolute;
  bottom: 1px;
  right: 1px;
  display: block;
  width: 20px;
  height: 20px;
  border-right: 1px solid #a7a7a7;
  border-bottom: 1px solid #a7a7a7;
}
.event-entry a {
  position: relative;
  display: block;
  text-decoration: none;
  width: 100%;
}
.event-date {
  font-size: 1.125rem;
  font-weight: 300;
  margin: 0 0 0.5rem 0;
}
.event-title {
}


/* 
---------------------------------------------------------
concept
--------------------------------------------------------- 
*/
.concept{
  
}
.concept .section-body{
  line-height: 2;
}
/* shop
------------------------------------------------*/
.shop {
}
.shop .linkb {
  padding: 3rem;
}

@media screen and (max-width: 39.9375em) {
.shop .linkb {
  padding: 1rem;
}
}
.shop .linkb ul,
.shop .linkb li {
  list-style: none;
  margin: 0;
  display: inline-block;
  padding: 1px 1px 5px 1px;
}

@media screen and (max-width: 39.9375em) {
.shop .linkb li img {
  width: 100%;
  height: auto;
}
}
/*
------------------------------------------------
download
*/
.download .download_text {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.3;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
  padding-bottom: 1em;
}
.download .qr-box {
  text-align: center;
  display: inline-block;
  padding: 10px;
  background-color: #FFFFFF;
  border: solid 1px #efefef;
}
.download .item-name {
  padding: 8px 0;
  text-align: center;
  font-weight: bold;
  background-color: #f2f2f2;
  margin: 0 0 1rem 0;
}
.download .box .qr img {
  width: 148px;
  height: auto;
}
.download .note {
  padding: 0.5rem 1rem 0.5rem 2rem;
  line-height: 1.2;
  text-indent: -0.8em;
}

/* Small screens
------------------------------------------------*/

@media screen and (max-width: 74.9375em) {
}

@media screen and (max-width: 39.9375em) {
}
