/* ==========================================================================
Base
========================================================================== */
  html,body{overflow-x: hidden;height: 100%;}
  html {background: #000; font-size: 85%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; min-height: 100%; overflow-x: hidden; -ms-touch-action: manipulation; touch-action: manipulation; -webkit-font-smoothing: antialiased; }
  body{background: #000; position: relative; min-height: 100%; height: auto; font-size: .95rem; color: #000;font-family:'YuGothic', 'Yu Gothic', '游ゴシック', '游ゴシック体', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;letter-spacing: .01rem; font-weight: 300;}
  button {background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none;}
  button:focus {outline: none;}
  a {color: #000;}
  a.hover, a:focus, a:hover {color: inherit;}
  a:focus {text-decoration: none;}
  p {letter-spacing: .020rem; line-height: 1.8;}
  li {letter-spacing: .020rem; line-height: 1.6;}
  li * {line-height: 1.6;}
  /*img {-webkit-backface-visibility:hidden; backface-visibility:hidden; overflow:hidden;}*/
  ::selection {color: #FFF; background:#ccc;}
  ::-moz-selection {color: #FFF; background:#ccc;}

  .fwb {font-weight: bold;}
  .fwn {font-weight: normal;}
  .pr {position: relative;}
  .pa {position: absolute;}
  .ps {position: static;}
  .right {right: 0;}
  .bottom {bottom: 0;}
  .z-1{z-index:1}

  .liCaution li {margin-left:1.2rem; margin-bottom: .15rem;}
  .liCaution li:before {content: '※'; margin-left:-1.2rem; margin-right: .3rem;}
  .attention:before {content: '※'; margin-left:-1.2rem; margin-right: .3rem;}

  .abcenter {position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%);}
  .bg-blk {background-color: #000;}
  .bg-gray {background-color: #494949!important;}
  .bg-lightgray {background-color: #f7f7f7!important;}
  .bg-lightgray2 {background-color: #eaeaea!important;}
  .bc-gray {border-color: #333!important;}
  .dot-b {border-bottom: 1px dotted #fff;}

  .fuwafuwa {-webkit-animation-name:fuwafuwa; -webkit-animation-duration:2s; -webkit-animation-iteration-count:infinite; -webkit-animation-timing-function:ease; -moz-animation-name:fuwafuwa; -moz-animation-duration:2s; -moz-animation-iteration-count:infinite; -moz-animation-timing-function:ease; }
  @-webkit-keyframes fuwafuwa {0% {-webkit-transform:translate(-.15rem, 0);} 50% {-webkit-transform:translate(1rem, 0);} 100% {-webkit-transform:translate(-.15rem, 0);} } @-moz-keyframes fuwafuwa {0% {-moz-transform:translate(-.15rem, 0);} 50% {-moz-transform:translate(1rem, 0);} 100% {-moz-transform:translate(-.15rem, 0);} }
  .fuwafuwa2 {-webkit-animation-name:fuwafuwa2; -webkit-animation-duration:2s; -webkit-animation-iteration-count:infinite; -webkit-animation-timing-function:ease; -moz-animation-name:fuwafuwa2; -moz-animation-duration:2s; -moz-animation-iteration-count:infinite; -moz-animation-timing-function:ease; }
  @-webkit-keyframes fuwafuwa2 {0% {-webkit-transform:translate(.15rem, 0);} 50% {-webkit-transform:translate(-1rem, 0);} 100% {-webkit-transform:translate(.15rem, 0);} } @-moz-keyframes fuwafuwa2 {0% {-moz-transform:translate(.15rem, 0);} 50% {-moz-transform:translate(-1rem, 0);} 100% {-moz-transform:translate(.15rem, 0);} }
  .fuwafuwa3 {-webkit-animation-name:fuwafuwa3; -webkit-animation-duration:2s; -webkit-animation-iteration-count:infinite; -webkit-animation-timing-function:ease; -moz-animation-name:fuwafuwa3; -moz-animation-duration:2s; -moz-animation-iteration-count:infinite; -moz-animation-timing-function:ease; }
  @-webkit-keyframes fuwafuwa3 {0% {-webkit-transform:translate(0, .15rem);} 50% {-webkit-transform:translate(0, -.3rem);} 100% {-webkit-transform:translate(0, .15rem);} } @-moz-keyframes fuwafuwa3 {0% {-moz-transform:translate(0, .15rem);} 50% {-moz-transform:translate(0, -.3rem);} 100% {-moz-transform:translate(0, .15rem);} }


/* ==========================================================================
fonts
========================================================================== */
  @font-face {font-family: 'icomoon'; src:  url('/assets/fonts/icomoon.eot?kxdbtt'); src:  url('/assets/fonts/icomoon.eot?kxdbtt#iefix') format('embedded-opentype'), url('/assets/fonts/icomoon.ttf?kxdbtt') format('truetype'), url('/assets/fonts/icomoon.woff?kxdbtt') format('woff'), url('/assets/fonts/icomoon.svg?kxdbtt#icomoon') format('svg'); font-weight: normal; font-style: normal; }
  [class^="icon-"], [class*=" icon-"] {font-family: 'icomoon' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

  .icon-radio-checked22:before {content: "\e911";}
  .icon-line:before {content: "\e900";}
  .icon-tag:before {content: "\e936"; margin-right: .2rem; line-height: 1.8;}
  .icon-location2:before {content: "\e948";}
  .icon-radio-checked:before {content: "\ea54";}
  .icon-radio-checked2:before {content: "\ea55";}
  .icon-radio-unchecked:before {content: "\ea56";}
  .icon-facebook2:before {content: "\ea91";}
  .icon-instagram:before {content: "\ea92";}
  .icon-twitter:before {content: "\ea96";}
  .icon-youtube:before {content: "\ea9d";}
  .icon-file-pdf:before {content: "\eadf";}
  .icon-arrow-left:before {content: "\e901";}
  .icon-arrow-right:before {content: "\e902";}
  .icon-chevron-down:before {content: "\e903";}
  .icon-chevron-left:before {content: "\e904";}
  .icon-chevron-right:before {content: "\e905";}
  .icon-chevron-up:before {content: "\e906";}
  .icon-chevrons-down:before {content: "\e907";}
  .icon-chevrons-left:before {content: "\e908";}
  .icon-chevrons-right:before {content: "\e909";}
  .icon-chevrons-up:before {content: "\e90a";}
  .icon-external-link:before {content: "\e910";}
  .icon-mail:before {content: "\e90d";}
  .icon-map-pin:before {content: "\e90c";}
  .icon-menu:before {content: "\e90b";}
  .icon-phone-call:before {content: "\e90e";}
  .icon-zoom-in:before {content: "\e90f";}

  .roboto{font-family: 'Roboto Slab', sans-serif; font-weight: 700;}
  .roboto-s{font-family: 'Roboto Slab', sans-serif; font-weight: 400;}
  .oscf {font-family: 'Open Sans Condensed', sans-serif; text-transform: uppercase;}


/* ==========================================================================
material
========================================================================== */

/* loading
------------------------------------------*/

 #toplogo {width: 100%; height: 100%; position: relative;}
  #toplogo img {opacity: 0; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto }

  #loading-wrap {visibility: visible; position: fixed; height: 100%; width: 100%; background-color:#000; -webkit-transform: translateX(-100%); transform: translateX(-100%); z-index: 100; top: 0; }
  #loading-wrap.active {-webkit-transform: translateX(0); transform: translateX(0);}

  .table th {background-color: #f7f7f7;}
  .table th,.table td {border: 1px solid #dedcdc;}

  @media (max-width: 768px){
    .d-md-table-cell {border-top: none!important;}
  }

/* ==========================================================================
links
========================================================================== */

  /* link */
  .link-arc {color: #fff; position: relative;}
  .link-dky {color: #fff; position: relative;}

  .link:hover {opacity: .6;}
  .a-line {position: relative;}
    .a-line:after {content:"";  height:1px; background: #000; position: absolute; right: 0; bottom:-.1rem; animation: aline-out .15s ease forwards;}
    .a-line:hover::after {right:auto;left: 0; animation: aline .15s ease forwards;}
    @keyframes aline {0% { width:0;} 100% {width: 100%;}}
    @keyframes aline-out {0% {width:100%;} 100% {width: 0;}}

  .a-line2 {position: relative; padding-bottom: .2rem; font-family: 'Roboto Slab', sans-serif;}
    .a-line2:after {content:"";  height:1px; background: #000; position: absolute; left: 0; bottom:-.1rem; animation: ealine-out .15s ease forwards;}
    .a-line2:hover::after {left:auto;left: 0; animation: ealine .15s ease forwards;}
  .a-line.bc-wht:after {background: #FFF;}

  /* btn */
  .i-link {position: relative; display: block; border: 1px solid #000; color: #000; background-color: #FFF;}
    .i-link * {position: relative; z-index:1;}
    .i-link:hover {color: #FFF; -webkit-transition:none!important; -moz-transition:none!important; -o-transition:none!important; transition:none!important;}
    .i-link:after {content: "";position: absolute;right: 0;top: 0;height: 100%;background: #000;animation: anim-out .2s ease forwards;}
    .i-link:hover::after {right:auto;left: 0;animation: anim .2s ease forwards;}
    @keyframes anim {0% { width:0;} 100% {width: 100%;}}
    @keyframes anim-out {0% {width:100%;} 100% {width: 0;}}

  .i-link-b {position: relative; display: block; border: 1px solid #000; color: #fff; background-color: #000;}
    .i-link-b * {position: relative; z-index:1;}
    .i-link-b:hover {color: #000; -webkit-transition:none!important; -moz-transition:none!important; -o-transition:none!important; transition:none!important;}
    .i-link-b:after {content: "";position: absolute;right: 0;top: 0;height: 100%;background: #fff;animation: anim-b-out .2s ease forwards;}
    .i-link-b:hover::after {right:auto;left: 0;animation: anim-b .2s ease forwards;}
    @keyframes anim-b {0% { width:0;} 100% {width: 100%;}}
    @keyframes anim-b-out {0% {width:100%;} 100% {width: 0;}}

  .i-link-t {position: relative; display: block; border: 1px solid #fff; color: #fff; background-color: #000;}
    .i-link-t:focus {color: #FFF;}
    .i-link-t * {position: relative; z-index:1;}
    .i-link-t:hover {color: #000; -webkit-transition:none!important; -moz-transition:none!important; -o-transition:none!important; transition:none!important;}
    .i-link-t:after {content: "";position: absolute;right: 0;top: 0;height: 100%;background: #fff;animation: anim-t-out .2s ease forwards;}
    .i-link-t:hover::after {right:auto;left: 0;animation: anim-t .2s ease forwards;}
    @keyframes anim-t {0% { width:0;} 100% {width: 100%;}}
    @keyframes anim-t-out {0% {width:100%;} 100% {width: 0;}}

  .i-link-g {position: relative; display: block; color: #fff; background-color: #bc0000;}
    .i-link-g:focus {color: #FFF;}
    .i-link-g * {position: relative; z-index:1;}
    .i-link-g:hover {color: #fff; -webkit-transition:none!important; -moz-transition:none!important; -o-transition:none!important; transition:none!important;}
    .i-link-g:after {content: "";position: absolute;right: 0;top: 0;height: 100%;background: #eea200;animation: anim-g-out .2s ease forwards;}
    .i-link-g:hover::after {right:auto;left: 0;animation: anim-g .2s ease forwards;}
    @keyframes anim-g {0% { width:0;} 100% {width: 100%;}}
    @keyframes anim-g-out {0% {width:100%;} 100% {width: 0;}}

  .i-link-s {position: relative; display: block; border: 1px solid #fff; color: #fff; background-color: #000; overflow: hidden;}
    .i-link-s * {position: relative; z-index:1;}
    .i-link-s:focus {color: #FFF;}
    .i-link-s:hover {color: #000; background: #fff; -webkit-transition:none!important; -moz-transition:none!important; -o-transition:none!important; transition:none!important;}
    .i-link-s:after {content: "";position: absolute;right: 0; width: 100%; height: 100%;background: #000;animation: anim-s-out .15s ease forwards;}
    .i-link-s:hover::after {right:auto; left: 0;animation: anim-s .15s ease forwards;}
    @keyframes anim-s {0% { top: 0; } 100% {top: 100%;}}
    @keyframes anim-s-out {0% {top: 100%;} 100% {top:0;}}
    .i-link-s.active {color: #000; background: #FFF;}
    .i-link-s.active:before {content: "";position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #FFF; z-index: 1;}

  .img-link a {display: block;}
    .img-link img {-webkit-transform: scale(1);transform: scale(1);-webkit-transition: .2s ease-in-out;transition: .2s ease-in-out; }
    .img-link:hover img,.img-link.hover img {-webkit-transform: scale(1.05); transform: scale(1.05);}

  .ov-link:before {position: absolute; top: 48%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%); color: #FFF; z-index: 1; opacity: 0;}
  .ov-link:hover img {opacity: 0.6;}
  .ov-link:hover:before {top: 50%; opacity: 1; -webkit-transition: .3s;transition: .3s;}

  /* term-title */
  #term-title a {color: #FFF;}
  /*sns btn*/
  .btn-facebook {color: #3B5998;}
  .btn-twitter {color: #1DA1F2;}
  .btn-line {color: #00C300;}

/* ==========================================================================
thum
========================================================================== */

  .thum-bg {position: relative;}

  .thum-btn {overflow: hidden;}
  .thum-btn figcaption {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
  .thum-btn img {opacity:1; -webkit-transition: opacity 0.35s; transition: opacity 0.35s; /*-webkit-backface-visibility:hidden; backface-visibility:hidden;*/}

  .thum-btn figcaption:before,.thum-btn figcaption:after {position: absolute;top: 1rem;right: 1rem;bottom: 1rem;left: 1rem;content: '';opacity: 0;-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;transition: opacity 0.35s, transform 0.35s;}
  .thum-btn figcaption:before {border-top: 1px solid #fff;border-bottom: 1px solid #fff;-webkit-transform: scale(0,1);transform: scale(0,1);}
  .thum-btn figcaption:after {border-right: 1px solid #fff;border-left: 1px solid #fff;-webkit-transform: scale(1,0);transform: scale(1,0);}

  .show-zoom {-webkit-transform: scale(1);-moz-transform: scale(1);-o-transform: scale(1);-ms-transform: scale(1);transform: scale(1); opacity: 0; -webkit-transition: all .3s; -moz-transition: all .3s; -o-transition: all .3s; transition: all .3s;}
  .show-left {margin-left: 2rem; opacity: 0; -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s;}
  .show-right {margin-left:-1rem; opacity: 0; -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s;}

  .thum-title {position: absolute; bottom: 0; right: 0; color: #000; background-color: #fff;-webkit-transition: all .35s; -moz-transition: all .35s; -o-transition: all .35s; transition: all .35s;}

  @media (min-width: 768px){
    .thum-btn:hover img {opacity: 0.4;}
    .thum-btn:hover img {opacity: 0.4;}
    .thum-btn:hover .thum-bg {background: #000;}
    .thum-btn:hover figcaption:before,.thum-btn:hover figcaption:after {opacity: 1;-webkit-transform: scale(1);transform: scale(1);}
    .thum-btn:hover .show-left {margin-left: 0; opacity: 1;}
    .thum-btn:hover .show-right {margin-left: 0; opacity: 1;}
    .thum-btn:hover .thum-title {opacity: 0;}
  }

/* ==========================================================================
header
========================================================================== */

  #header {width:-webkit-calc(100% - .5rem); width:calc(100% - .5rem); border: none!important; position: fixed; top: 0; z-index:2;}
  #header:before {content:""; position: absolute; top: -.5rem; ;left: 0; width: 100%; height: 0.5rem; background-color: #000; z-index: 2;}
  #h-menu {margin-right: 4rem;}
  #menu .a-line {z-index: 1;}
  #menu.fixed  {opacity: 0; margin-top: -1rem; -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s;}
  #menu.fixed .a-line {color: #FFF;}
  #menu.fixed .a-line:after {background: #fff;}

  #menu #black {display: none; }
  #menu #white {display: block;}

  .placebox {display: none; position: absolute; background: #494949; width: 6rem; left: 50%; margin-left: -3rem; margin-top: .5rem; text-align: center;}
  .placebox:after {width: 0; height: 0; display: block; position: absolute; top: -20px; left: 27px; border: 14px solid transparent; border-bottom: 14px solid #494949; content: "";}
  .placebox a {position: relative; z-index: 1;}

  #logo {overflow: hidden; position: relative;}
  #logo a {min-width: 2.5rem; max-width: 6rem; margin: 0 auto;}
  .looplace {overflow: hidden;}
  .looplace,.looplace a {height: 100%;}
  .looplace a {display: table; }
  .looplace span {display: table-cell; vertical-align: middle; }
  .sub-menu {width: 0; margin-left: -10%; opacity: 0; display:none!important;}
  .looplace:hover .sub-menu {width: 100%; margin-left: 0; display: flex!important; opacity: 1;  -webkit-transition: all 0.3s; -moz-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;}

  #panel-btn {margin-top: 0.3rem; position: fixed; top: 0; right: 0; width: 4rem;  height: 4rem; z-index: 10; background:#000;}
    #panel-btn-icon{display: block;position: absolute;top: 50%;left: 50%;width: 1.6rem;height: 1px;margin: -.1rem 0 0 -.80em;background: #fff;transition: .2s;}
    #panel-btn-icon:before, #panel-btn-icon:after{content: "";position: absolute;top: 50%;left: 0;width: 1.6rem;height: 1px;background: #fff;transition: .3s;}
    #panel-btn-icon:before{margin-top: -.65rem;}
    #panel-btn-icon:after{margin-top: .6rem;}
    #panel-btn .m-close{background: transparent;}
    #panel-btn .m-close:before, #panel-btn .m-close:after{margin-top: 0;}
    #panel-btn .m-close:before{transform: rotate(-45deg);-webkit-transform: rotate(-45deg);}
    #panel-btn .m-close:after{transform: rotate(-135deg);-webkit-transform: rotate(-135deg);}
    #panel-btn.active {background: none;}

  /*btn-share*/
    .btn-share-twitter:hover svg{color: #2795e9;}
    .btn-share-facebook:hover svg{color: #3b5998;}
  .btn-share-Line .svg-inline--fa.fa-w-14{margin-top: .1em;width:1em;}
    .btn-share-Line:hover svg{color: #1dcd00;}

/* ==========================================================================
main
========================================================================== */

  #wrap {border: .5rem solid #000;}
  #main {overflow: hidden;}

  .cont-px {padding-left: 1.85rem; padding-right: 1.85rem;}

  #sub-header {position: absolute; width: 100%; height: 100%; left: 0; top: 0;}
  #loop,#btn-menu {display: block; width: 8rem; position: fixed; top: 50%;transform: translateY(-50%); -webkit- transform: translateY(-50%); text-align: center;  opacity: 0;}
    #loop {left:-2rem;}
    #btn-menu {right:-2rem; font-size: 2.5rem;}
  #sub-header.active #loop {left: 0;}
  #sub-header.active #btn-menu {right: 0;}

  /* mv-slider */
  #mv {position: relative;}
    #mv .bg-wht {background:none;}
    .mv-img {position: relative; z-index: 2;}
    .mv-title {color: #FFF;}
    .mv-nav {position:absolute; top: 0; left: 0; width: 100%; z-index: 1;}
    .mv-nav .slick-list,.mv-nav .slick-track {height: 100%;}
    .mv-box {position: relative;}
    .mv-slider .slick-list {padding: 0!important;}

    #mv-nav {position: absolute;top: 5.2rem;right:1rem;}
    #mv-nav .slick-dots {top:0; left:-.3rem; bottom:auto; margin-top: -5px; margin-bottom: -5px;}
    #mv-nav .slick-dots li {display: block;}
    .slick-dots li button:before {font-family: 'icomoon'!important; opacity: 1!important; content:"\ea56"!important;}
    .slick-dots li.slick-active button:before {font-family: 'icomoon'!important; opacity: 1; content:"\e911"!important;}
    .slider-progress {width:1px;height: 100%; background: #dedede; position: absolute;top: 0; right: 0; }
    .slider-progress .progress {width:1px; height:0%;background: #000;}

    .mv-prev,.mv-next {color:#fff; top:12rem; width: 1.5rem; height: 1.5rem; z-index:1; line-height: 0; position: absolute; display: block; cursor: pointer;}
    .mv-prev{left:-1.5rem;}
    .mv-next{right:-1.5rem;}

    .mv-prev i{display:block; width: 1rem; height: 1rem; border-top: 1px solid #fff; border-left: 1px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg);}
    .mv-next i{display:block; width: 1rem; height: 1rem; border-top: 1px solid #fff; border-right: 1px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg);}


    .mv-prev2,.mv-next2 {color:#fff; top:11rem; width: 1.2rem; height: 1.2rem; z-index:1; line-height: 0; position: absolute; display: block; cursor: pointer;}
    .mv-prev2{left:.3rem; border-top: 1px solid #000; border-left: 1px solid #000; -webkit-transform: rotate(-45deg); transform: rotate(-45deg);}
    .mv-next2{right:.3rem; border-top: 1px solid #000; border-right: 1px solid #000; -webkit-transform: rotate(45deg); transform: rotate(45deg);}

    .recommend2 .mv-prev2{left:-3.5rem;}
    .recommend2 .mv-next2{right:-3.5rem;}

    .article-slider .mv-prev2{left:-1.2rem;}
    .article-slider .mv-next2{right:-1.2rem;}

    /* event-slider */
    .event-slider .thum-bg {margin-bottom: 1.5rem;}
    .event-slider .slick-list {overflow: initial;}
   .event-slider .thum-btn {opacity: .5;}
   .event-slider .thum-btn.slick-active {opacity: 1;}

    #recommend .thum-title {background: #f7f7f7!important;}
    .recommend2 .slick-list {overflow: hidden;}

    @media (min-width: 768px){
      .event-slider .thum-btn:hover .thum-bg {margin-bottom: .8rem;}
    }

    .bg-s {padding-top: .5rem; width: 100%;background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#80000000',GradientType=0 );}

    .mv-t-left,.mv-t-right {position: absolute; bottom:0;}
    .mv-t-left {left:0%;}
    .mv-t-right {right:0%;}

    #m-area {border: 1px solid #000;}

  .btn-blk {color: #FFF; background-color: #000; display: inline-block; text-align: center;}
  .btn-dky {color: #FFF; background-color: #A70000; display: inline-block; text-align: center;}
  .txt-clamp {overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}

  /* info */
  .info-label {min-width: 6rem;}
  .info-time {min-width: 10rem;}

  /* banner */
  #banner {}
  .banner-slider .slick-dots {top: 1rem;}

  /* sc-box */
  .sc-box {position: relative;}
  .sc-list {display: none; margin-top: -1px;}
  .sc-list ul {max-height: 14rem; overflow: auto;}
  .sc-list ul .bsd {border-bottom: none!important;}



  /* artist-list */
  #artist-list .thum-btn {max-width: 250px!important;-ms-flex: 1 0 auto;}
  @media screen and (min-width: 768px) and (max-width: 1140px)  {
    /* 6つの場合 */
    #artist-list .thum-btn:first-child:nth-last-child(6),#artist-list .thum-btn:first-child:nth-last-child(6) ~ .thum-btn {-webkit-box-flex: 0;-ms-flex: 0 0 26%;flex: 0 0 26%;max-width: 26%;flex-basis: 1;}
  }
  @media (min-width: 768px){
    /* 7つの場合 */
    #artist-list .thum-btn:first-child:nth-last-child(7),#artist-list .thum-btn:first-child:nth-last-child(7) ~ .thum-btn {-webkit-box-flex: 0;-ms-flex: 0 0 25%;flex: 0 0 25%;max-width: 25%;flex-basis: 1;}
    /* 8つの場合 */
    #artist-list .thum-btn:first-child:nth-last-child(8),#artist-list .thum-btn:first-child:nth-last-child(8) ~ .thum-btn {-webkit-box-flex: 0;-ms-flex: 0 0 25%;flex: 0 0 25%;max-width: 25%;flex-basis: 1;}
    /* 8つ以上 */
    #artist-list .thum-btn:nth-last-child(n+8),#artist-list .thum-btn:nth-last-child(n+8) ~ .thum-btn {-webkit-box-flex: 0;-ms-flex: 0 0 20%;flex: 0 0 20%;max-width: 20%;flex-basis: 1;}
  }

  /* artist-img */
  .events-wrap {width: 100%;}
  .rcthums {width: 100%;}
  .rcthums .artist-img {overflow: hidden; position: relative;}
  .rcthums .artist-img.obfit:before {content:"";display: block;padding-top: 50%;}
  .rcthums .artist-img.obfit figure {position: absolute;top: 0;left: 0;bottom: 0;right: 0;}
  .rcthums .artist-img.obfit img {width: 100%;height:100%;object-fit: cover; font-family: 'object-fit: cover; object-position: center;'}

  /* ticket-info */
  #ticket-info a {color: #fff; font-weight: bold; padding-bottom: .3rem;}
  #ticket-info a {position: relative;}
    #ticket-info a:after {content:"";  height:1px; background: #fff; position: absolute; right: 0; bottom:-.1rem; animation: TKaline-out .15s ease forwards;}
    #ticket-info a:hover::after {right:auto;left: 0; animation: TKaline .15s ease forwards;}
    @keyframes TKaline {0% { width:0;} 100% {width: 100%;}}
    @keyframes TKaline-out {0% {width:100%;} 100% {width: 0;}}

  /* entry-body */
  #entry-body p  {margin-bottom:1.2rem;}
  #entry-body strong  {font-weight: bold;}
  #entry-body .youtube  {margin-bottom: 3rem;}

  #entry-body h2 {font-weight: bold; font-size: 1.2rem; line-height: 1.6; margin-bottom: 1.5rem;}
  #entry-body h3 {font-weight: bold; font-size: 1.2rem; margin-bottom: 1.5rem;}
  #entry-body h4 {font-weight: bold; position: relative; margin-bottom: 1.5rem;}
  #entry-body h4:before {content: ""; position: absolute; top: 0; bottom: 0; left: 0rem; margin: .7rem -102%; width: 100%; height: 1px; background: #000;}
  #entry-body iframe {width: 100%;}

  #entry-body p a {position: relative; padding-bottom: .2rem; font-family: 'Roboto Slab', sans-serif; font-weight: 500;}
    #entry-body p a:after {content:"";  height:1px; background: #000; position: absolute; left: 0; bottom:-.1rem; animation: ealine-out .15s ease forwards;}
    #entry-body p a:hover::after {left:auto;left: 0; animation: ealine .15s ease forwards;}
    #entry-body p a[target="_blank"]:before {font-family: 'icomoon' !important; content: "\e910"; margin-right: 0.2rem;}
    @keyframes ealine {0% { width:100%;} 100% {width: 0;}}
    @keyframes ealine-out {0% {width:0;} 100% {width: 100%;}}

 /* md */
  @media (max-width: 768px){
    #entry-body [style] {text-align: left!important;}
  }

  /* sm */
  @media (min-width: 576px){
  }

  /* md */
  @media (min-width: 768px){
    #entry-body h2 {font-size: 1.4rem!important;}
    #entry-body h3 {font-size: 1.2rem!important;}
    #entry-body h4 {font-size: 1.2rem!important;}
  }

  /* lg */
  @media (min-width: 992px){
  }

  @media(min-width:1200px) {
  }




  /* youtube */
  .youtube {position: relative;width: 100%;padding-top: 56.25%;}
  .youtube iframe {position: absolute;top: 0;right: 0;width: 100% !important;height: 100% !important;}


  .line-title2 {position: relative;}
    .line-title2:before {content:""; position: absolute;top: 0; bottom:0; left:0rem; margin:.7rem -102%; width:100%; height: 1px; background:#000;}


/* ==========================================================================
mv
========================================================================== */

  /* page-mv */
  #page-mv {position: relative; overflow: hidden; width: 100%; background: #000;}

  /* artist-mv */
  #entry-mv {position: relative; overflow: hidden; width: 100%;}
    #entry-mv .pa {background: #000;}
    #entry-mv .pa img {top: 50%; left: 50%; position: absolute; -webkit-filter: blur(10px); filter: blur(10px); transform:translateY(-50%) translateX(-50%) scale(1.2);}
    #entry-mv-main {max-height: 30rem; max-width: 100%;}

/* ==========================================================================
other
========================================================================== */

  #today {background: #000; color: #FFF; text-transform: uppercase;}
  /*#today-box {display: none;}*/

  #reservation {display: none;}

/* ==========================================================================
schedule
========================================================================== */

  #schedule .schedule-box {border: none;}
  #schedule .schedule-box:nth-child(even) {background: #f0f0f0;}
  #schedule .schedule-box:nth-child(odd) {background: #f7f7f7;}
  #schedule .schedule-box .day {background:#fff; color: #000;}
  /*#schedule .i-link:hover .day {background-color: #000!important; color: #fff; -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s; }*/

/* ==========================================================================
footer and more
========================================================================== */

  .f-title {position: relative;}
  .f-title:after {content:""; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; width: 2rem; height: 2px; background:#000;}

  .copyright {letter-spacing: 0; font-size: .75rem;}
    /*pagetop*/
    #pagetop{position:fixed;right:3%;bottom:1rem;z-index:500;display: none;}
      #pagetop a{position:relative;display: block;padding: 0 .5rem;text-decoration:none;font-size:3rem;opacity:0.9;cursor: pointer;color:rgba(198, 23, 31,.8);}
        #pagetop a:hover{opacity:1;cursor: pointer;}
        #pagetop a i.icon-chevron-sign-up:before{cursor: pointer;}

  /* overlay */



  #ovlay-menu {visibility: visible; position: fixed; height: 100%; width: 100%; background-color:#000; -webkit-transform: translateX(-100%); transform: translateX(-100%); z-index: 5; top: 0;}
    #ovlay-menu.active {-webkit-transform: translateX(0); transform: translateX(0);}
    #ovlay-menu a {color: #FFF;}
  .ani-line {display: block; position: relative;}
    .ani-line:after {content:""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background-color: #FFF;}

  #ovlay {position: fixed; top: 0; left: 0; width:0%; height:100%; background-color: #000;-webkit-transition: all 600ms cubic-bezier(0.110, 0.660, 0.030, 0.940);-moz-transition: all 600ms cubic-bezier(0.110, 0.660, 0.030, 0.940);-o-transition: all 600ms cubic-bezier(0.110, 0.660, 0.030, 0.940);transition: all 600ms cubic-bezier(0.110, 0.660, 0.030, 0.940);-webkit-transition-timing-function: cubic-bezier(0.110, 0.660, 0.030, 0.940);-moz-transition-timing-function: cubic-bezier(0.110, 0.660, 0.030, 0.940);-o-transition-timing-function: cubic-bezier(0.110, 0.660, 0.030, 0.940);transition-timing-function: cubic-bezier(0.110, 0.660, 0.030, 0.940);}
  #ovlay.active {width:100%;}

  #ovlay-content {opacity:0; position: relative; z-index: 10; overflow: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch;}
  #ovlay-menu.active #ovlay-content {opacity: 1; margin-left: 0;}

  #access #f-access a,#floor #f-floor a,#event #f-event a,#booking #f-booking a,#ptop #f-top a,
  #article #f-article a,#feature #f-feature a,#report #f-report a,#blog #f-blog a {pointer-events: none; background: #afafaf; color: #FFF; border-color: #afafaf;}
  #article #l-article a,#feature #l-feature a,#report #l-report a,#blog #l-blog a {pointer-events: none; color: #afafaf; border-color: #afafaf;}

/* ==========================================================================
Responsive
========================================================================== */

@media (max-width: 767px){
  #menu {height: 4rem; position: relative;}
  #menu:before {height: 4rem; content:""; position: absolute; width: 100%; height: 100%; opacity: 0.4; background: -moz-linear-gradient(top, rgba(0,0,0,5) 0%, rgba(0,0,0,0.0) 100%);background: -webkit-linear-gradient(top, rgba(0,0,0,5) 0%,rgba(0,0,0,0.0) 100%);background: linear-gradient(to bottom, rgba(0,0,0,7) 0%,rgba(0,0,0,0.0) 100%);filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#80000000',GradientType=0 );}
  #mv  {background: #000;}
  #mv .cont-px {padding-left: 0; padding-right: 0;}
  #schedule-prev,#schedule-next {position: absolute; top: 50%; transform: translateY(-50%); -webkit- transform: translateY(-50%); padding:.5rem;}
  #schedule-prev {left: 1rem;}
  #schedule-next {right:1rem;}
  #swipebox-next, #swipebox-prev {display:none;}
}

@media (max-width: 575px){
 footer .cont-px {padding-left: 0; padding-right: 0;}
  #schedule .cont-px {padding-left:0; padding-right: 0;}
  #schedule .cont-px .col-4 {padding-left:1.8rem!important;}
  #schedule .cont-px .col-7 {padding-right:1.2rem!important;}
  #schedule .schedule-box {background: #FFF!important;}
  #schedule .day {background-color: #000!important; color: #FFF!important;}
  #schedule .i-link:after {background-color: #1e1e1e!important;}
  #information .txt-clamp {white-space:inherit;}
  #mv h2 {overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
}

/* iPhone 320px */
@media only screen and (min-width:320px){
  html{font-size: 70%;}
}
/* Android 360px × 1.125 */
@media only screen and (min-width:360px){
  html{font-size: 83%;}
}
/* iPhone6 375px × 117.1875 */
@media only screen and (min-width:375px){
}
/* iPhone6 plus 414px × 1.29375 */
@media only screen and (min-width:412px){
  html{font-size: 90%;}
}
/* sm */
@media (min-width: 576px){
  #mv .slick-slide {-webkit-transition: none!important; -moz-transition: none!important; -ms-transition: none!important; -o-transition: none!important; transition: none!important;}
  .mv-prev{left:-3rem;}
  .mv-next{right:-3rem;}
  .slick-arrow {width:5rem; height:5rem; bottom: 0; margin: auto;}
  .slick-arrow i {width:2rem; height:2rem;}
  .mv-next i {margin-left: 1rem;}
  .mv-prev i {margin-left: 1.8rem;}

  .mv-img,#page-top #mv .rcthums {opacity: 0; -webkit-transform: translate(1rem); transform: translate(1rem); -webkit-transition-delay:.1s; transition-delay:.1s; -webkit-transition: all 1.2s; -moz-transition: all 1.2s; -o-transition: all 1.2s; transition: all 1.2s;}
  .slick-active .mv-img,#page-top #mv .slick-active .rcthums,#event .mv-img {opacity: 1; -webkit-transform: translate(0rem); transform: translate(0rem); -webkit-transition-delay:.1s; transition-delay:.1s;}
  .mv-title {opacity: 0; -webkit-transform: translate(1rem); transform: translate(1rem); -webkit-transition-delay:.2s; transition-delay:.2s; -webkit-transition: all 1.2s; -moz-transition: all 1.2s; -o-transition: all 1.2s; transition: all 1.2s;}
  .slick-active .mv-title,#event .mv-title {opacity: 1; -webkit-transform: translate(0rem); transform: translate(0rem); -webkit-transition-delay:.2s; transition-delay:.2s;}
  .mv-details {opacity: 0; -webkit-transform: translate(1rem); transform: translate(1rem); -webkit-transition-delay:.3s; transition-delay:.3s; -webkit-transition: all 1.2s; -moz-transition: all 1.2s; -o-transition: all 1.2s; transition: all 1.2s;}
  .slick-active .mv-details,#event .mv-details {opacity: 1; -webkit-transform: translate(0rem); transform: translate(0rem); -webkit-transition-delay:.3s; transition-delay:.3s;}
}

/* md */
@media (min-width: 768px){
  html{font-size: 80%;}
  #mv-nav {position: absolute;top: 1.3rem;}
  #menu #white,#menu.fixed #black {display: none;}
  #menu #black,#menu.fixed #white {display: block;}
  #menu.fixed  {opacity: 1; margin-top:  0rem; background: #000;}
  #ovlay-menu .row {margin-right: -1.5rem; margin-left: -1.5rem;}
  #ovlay-menu [class^="col-"] {padding-right:1.5rem;padding-left:1.5rem;}
  #ovlay-content {overflow-y:hidden!important;}
  #menu {height: 4rem;}
  .line-title {position: relative;}
    .line-title:before {content:""; position: absolute;top: 0; bottom:-1rem; left:0rem; margin:auto -100%; width:100%; height: 1px; background:#000;}
    .line-title.b0:before {bottom: 0; margin: auto -102%;}
  .line-title3 {position: relative;}
    .line-title3:before {content:""; position: absolute;top: 0; bottom:0; left:0rem; margin:auto -100%; width:100%; height: 1px; background:#000;}
  .c-title {position: relative;}
  .c-title:before {content:""; position: absolute;top: 0; bottom:.7rem; left: -1rem; margin:auto -150%; width:150%; height: 1px; background:#000;}
  .mv-slider .slick-arrow {top: 0;}
  .mv-title {position: relative; color: #000;}
  #panel-btn {margin-top: 0.5rem;}
  #mv .slick-track {display: -webkit-box!important;display: -ms-flexbox!important;display: flex!important;-webkit-box-align: center!important;-ms-flex-align: center!important;align-items: center!important;}
  #mv .bg-wht {position: relative; background: #FFF;}
  #mv .bg-wht:before {position:absolute; content:""; width: 300%; height: 100%; top: 0; right:100%; background-color: #FFF;}
  #mv .bg-wht:after {position:absolute; content:""; width: 300%; height: 100%; top: 0; left:100%; background-color: #FFF; z-index: -1;}
  .recommend2 .slick-arrow {width:2.4rem; height:2.4rem; bottom: 50%; margin: auto auto 1.2rem;}
}

/* lg */
@media (min-width: 992px){
  html{font-size: 85%;}
}

/* iPad landscape iPad Pro */
@media (min-width:1024px) and (max-width : 1366px) {
}

@media(min-width:1100px) {
}

@media(min-width:1200px) {
  html{font-size: 95%;}
  .fz-xxs {font-size:.9rem!important;}
  .mv-prev{left:-3rem;}
  .mv-next{right:-3rem;}
  .slick-arrow {width:5rem; height:5rem; bottom: 0; margin: auto;}
  .thum-btn figcaption:before,.thum-btn figcaption:after {top: 2rem;right: 2rem;bottom: 2rem;left: 2rem;}
}

@media(min-width:1380px){
  .cont-px,.maxw {max-width: 1300px;}
}


@media(min-width:1450px){
 html{font-size: 96%;}
}
@media(min-width:1800px){
}
@media(min-width:2300px){
}



/* ==========================================================================
PLUGIN css
========================================================================== */

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
.pswp,.pswp__bg,.pswp__scroll-wrap{height:100%;width:100%}.pswp,.pswp__item,.pswp__scroll-wrap{overflow:hidden;top:0;position:absolute;left:0}.pswp,.pswp__bg,.pswp__container,.pswp__img--placeholder,.pswp__zoom-wrap{-webkit-backface-visibility:hidden}.pswp,.pswp__bg,.pswp__error-msg,.pswp__img,.pswp__item,.pswp__scroll-wrap,.pswp__zoom-wrap{position:absolute}.pswp{display:none;-ms-touch-action:none;touch-action:none;z-index:1500;-webkit-text-size-adjust:100%;outline:0}.pswp *{-webkit-box-sizing:border-box;box-sizing:border-box}.pswp img{max-width:none}.pswp--animate_opacity{opacity:.001;will-change:opacity;-webkit-transition:opacity 333ms cubic-bezier(.4,0,.22,1);transition:opacity 333ms cubic-bezier(.4,0,.22,1)}.pswp--open{display:block}.pswp--zoom-allowed .pswp__img{cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.pswp--zoomed-in .pswp__img{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.pswp--dragging .pswp__img{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.pswp__bg{left:0;top:0;background:#000;opacity:0;transform:translateZ(0);will-change:opacity}.pswp__container,.pswp__zoom-wrap{-ms-touch-action:none;touch-action:none;position:absolute;left:0;right:0;top:0;bottom:0}.pswp__container,.pswp__img{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.pswp__zoom-wrap{width:100%;-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top;-webkit-transition:-webkit-transform 333ms cubic-bezier(.4,0,.22,1);transition:transform 333ms cubic-bezier(.4,0,.22,1)}.pswp__bg{-webkit-transition:opacity 333ms cubic-bezier(.4,0,.22,1);transition:opacity 333ms cubic-bezier(.4,0,.22,1)}.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap{-webkit-transition:none;transition:none}.pswp__item{right:0;bottom:0}.pswp__img{width:auto;height:auto;top:0;left:0}.pswp__img--placeholder--blank{background:#222}.pswp--ie .pswp__img{width:100%!important;height:auto!important;left:0;top:0}.pswp__error-msg{left:0;top:50%;width:100%;text-align:center;font-size:14px;line-height:16px;margin-top:-8px;color:#CCC}.pswp__error-msg a{color:#CCC;text-decoration:underline}

.photoswipe {display: block; position: relative;}
.photoswipe:hover {background: #000;}

/*! slick */
.slick-slide {outline: none!important;}
.slick-dots {position: relative !important; top:1.5rem; line-height: 1;}
.loop-dots .slick-dots {top:0rem;}
  .slick-dots li{margin: 0 !important;}
.slider-nav button{background: none;}
.slider-nav .slick-current button{color: #19b7bd;}
.slick-dotted.slick-slider {margin-top: 0!important; margin-bottom: 0!important;}
.slick-dots li.slick-active button:before {opacity: 1!important;}


