.mfp-bg {
 top:0;
 left:0;
 width:100%;
 height:100%;
 z-index:1042;
 overflow:hidden;
 position:fixed;
 background:#0b0b0b;
 opacity:0.95
}
.mfp-wrap {
 top:0;
 left:0;
 width:100%;
 height:100%;
 z-index:1043;
 position:fixed;
 outline:none!important;
 -webkit-backface-visibility:hidden
}
.mfp-container {
 text-align:center;
 position:absolute;
 width:100%;
 height:100%;
 left:0;
 top:0;
 -webkit-box-sizing:border-box;
 box-sizing:border-box
}
.mfp-align-top .mfp-container:before {
 display:none
}
.mfp-content {
 max-width:100vw;
 height:100vh;
 display:-webkit-box;
 display:-ms-flexbox;
 display:flex;
 -webkit-box-pack:center;
 -ms-flex-pack:center;
 justify-content:center;
 -webkit-box-align:center;
 -ms-flex-align:center;
 align-items:center;
 z-index:1045
}
.mfp-ajax-holder .mfp-content,
.mfp-inline-holder .mfp-content {
 width:100%;
 cursor:auto
}
.mfp-ajax-cur {
 cursor:progress
}
.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
 cursor:-moz-zoom-out;
 cursor:-webkit-zoom-out;
 cursor:zoom-out
}
.mfp-zoom {
 cursor:pointer;
 cursor:-webkit-zoom-in;
 cursor:-moz-zoom-in;
 cursor:zoom-in
}
.mfp-auto-cursor .mfp-content {
 cursor:auto
}
.mfp-arrow,
.mfp-close,
.mfp-counter,
.mfp-preloader {
 -webkit-user-select:none;
 -moz-user-select:none;
 -ms-user-select:none;
 user-select:none
}
.mfp-loading.mfp-figure {
 display:none
}
.mfp-hide {
 display:none!important
}
.mfp-preloader {
 color:#ccc;
 position:absolute;
 top:50%;
 width:auto;
 text-align:center;
 margin-top:-0.8em;
 left:8px;
 right:8px;
 z-index:1044
}
.mfp-preloader a {
 color:#ccc
}
.mfp-preloader a:hover {
 color:#fff
}
.mfp-s-ready .mfp-preloader {
 display:none
}
.mfp-s-error .mfp-content {
 display:none
}
button.mfp-arrow,
button.mfp-close {
 overflow:visible;
 cursor:pointer;
 border:0;
 -webkit-appearance:none;
 display:block;
 outline:none;
 padding:0;
 z-index:1046;
 -webkit-box-shadow:none;
 box-shadow:none;
 -ms-touch-action:manipulation;
 touch-action:manipulation
}
button::-moz-focus-inner {
 padding:0;
 border:0
}
.mfp-close {
 position:absolute;
 top:30px;
 right:30px;
 width:44px!important;
 height:44px;
 font-size:0;
 background-color:transparent;
 /*background-image:url("/assets/img/close.png");*/
 background-position:center;
 background-size:18px 18px;
 background-repeat:no-repeat
}
@media only screen and (max-width:1024px) {
 .mfp-close {
  top:20px;
  right:20px
 }
}
.mfp-close-btn-in .mfp-close {
 color:#333
}
.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
 color:#fff;
 text-align:right
}
.mfp-counter {
 position:absolute;
 top:0;
 right:0;
 color:#ccc;
 font-size:12px;
 line-height:18px;
 white-space:nowrap
}
.mfp-arrow {
 position:absolute;
 bottom:40px;
 left:50%;
 -webkit-transform:translateX(-50%);
 -ms-transform:translateX(-50%);
 transform:translateX(-50%);
 color:#fff;
 font-size:16px;
 background:none
}
.mfp-arrow:before {
 font-family:'Castoro', 'Noto Sans JP', sans-serif
}
.mfp-arrow:after {
 content:'';
 position:absolute;
 top:50%;
 -webkit-transform:translateY(-60%);
 -ms-transform:translateY(-60%);
 transform:translateY(-60%);
 display:block;
 width:50px;
 height:1px;
 background-color:#fff;
 -webkit-transition:-webkit-transform 0.3s ease-out;
 transition:-webkit-transform 0.3s ease-out;
 -o-transition:transform 0.3s ease-out;
 transition:transform 0.3s ease-out;
 transition:transform 0.3s ease-out, -webkit-transform 0.3s ease-out
}
@media only screen and (max-width:1024px) {
 .mfp-arrow:after {
  opacity:0.5
 }
}
.mfp-arrow:hover:after {
 -webkit-transform:scaleX(0.5) translateY(-60%);
 -ms-transform:scaleX(0.5) translateY(-60%);
 transform:scaleX(0.5) translateY(-60%)
}
.mfp-arrow-left {
 padding-left:68px!important;
 margin-left:-70px
}
.mfp-arrow-left:before {
 content:'Prev'
}
.mfp-arrow-left:after {
 left:0;
 -webkit-transform-origin:right;
 -ms-transform-origin:right;
 transform-origin:right
}
@media only screen and (max-width:1024px) {
 .mfp-arrow-left {
  margin-left:0;
  -webkit-transform:translateX(-100%);
  -ms-transform:translateX(-100%);
  transform:translateX(-100%);
  padding-right:15px!important
 }
}
.mfp-arrow-right {
 padding-right:68px!important;
 margin-left:70px
}
.mfp-arrow-right:before {
 content:'Next'
}
.mfp-arrow-right:after {
 right:0;
 -webkit-transform-origin:left;
 -ms-transform-origin:left;
 transform-origin:left
}
@media only screen and (max-width:1024px) {
 .mfp-arrow-right {
  margin-left:0;
  -webkit-transform:translateX(0);
  -ms-transform:translateX(0);
  transform:translateX(0);
  padding-left:15px!important
 }
}
.mfp-iframe-holder {
 padding-top:40px;
 padding-bottom:40px
}
.mfp-iframe-holder .mfp-content {
 line-height:0;
 width:100%;
 max-width:900px
}
.mfp-iframe-holder .mfp-close {
 top:-40px
}
.mfp-iframe-scaler {
 width:100%;
 height:0;
 overflow:hidden;
 padding-top:56.25%
}
.mfp-iframe-scaler iframe {
 position:absolute;
 display:block;
 top:0;
 left:0;
 width:100%;
 height:100%;
 -webkit-box-shadow:0 0 8px rgba(0,0,0,0.6);
 box-shadow:0 0 8px rgba(0,0,0,0.6);
 background:#000
}
img.mfp-img {
 width:auto;
 max-width:100%;
 height:auto;
 display:block;
 line-height:0;
 -webkit-box-sizing:border-box;
 box-sizing:border-box;
 margin:0 auto;
 background-color:#000
}
@media only screen and (max-width:1024px) {
 img.mfp-img {
  padding:0
 }
}
.mfp-figure {
 line-height:0
}
.mfp-figure small {
 color:#bdbdbd;
 display:block;
 font-size:12px;
 line-height:14px
}
.mfp-figure figure {
 margin:0
}
.mfp-bottom-bar {
 display:none
}
.mfp-title {
 text-align:left;
 line-height:18px;
 color:#f3f3f3;
 word-wrap:break-word;
 padding-right:36px
}
.mfp-image-holder .mfp-content {
 max-width:100%
}
.mfp-gallery .mfp-image-holder .mfp-figure {
 cursor:pointer
}
@media screen and (max-height:300px),screen and (max-width:800px) and (orientation:landscape) {
 .mfp-img-mobile .mfp-image-holder {
  padding-left:0;
  padding-right:0
 }
 .mfp-img-mobile img.mfp-img {
  padding:0
 }
 .mfp-img-mobile .mfp-figure:after {
  top:0;
  bottom:0
 }
 .mfp-img-mobile .mfp-figure small {
  display:inline;
  margin-left:5px
 }
 .mfp-img-mobile .mfp-bottom-bar {
  background:rgba(0,0,0,0.6);
  bottom:0;
  margin:0;
  top:auto;
  padding:3px 5px;
  position:fixed;
  -webkit-box-sizing:border-box;
  box-sizing:border-box
 }
 .mfp-img-mobile .mfp-bottom-bar:empty {
  padding:0
 }
 .mfp-img-mobile .mfp-counter {
  right:5px;
  top:3px
 }
 .mfp-img-mobile .mfp-close {
  top:0;
  right:0;
  width:35px;
  height:35px;
  line-height:35px;
  background:rgba(0,0,0,0.6);
  position:fixed;
  text-align:center;
  padding:0
 }
}