html.lb-disable-scrolling {
  overflow: hidden;
  Position fixed required for iOS. Just putting overflow: hidden; on the body is not enough. 
  position: fixed;
  height: 100vh;
  width: 100vw;
}

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: white;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 1;
  display: none;
}

.lightbox {
  position: fixed;
  top: 50%!important;
  left: 50%!important;
  transform: translate(-50%, -50%);
  /*width: 100%;*/
  z-index: 10000;
  /*text-align: center;*/
 /* line-height: 0;*/
  /*font-weight: normal;*/
 /* max-height: 90vh;*/
}

.lightbox .lb-image {
  display: block;
 /* max-width: inherit;*/
	max-width: 50vw;
  /*width: 80%!important;*/
  height: auto!important;
  margin: 0 auto!important;
  /*border-radius: 3px;*/
  /* Image border */
  /*border: 4px solid white;*/
	border: none;
}

.lightbox a img {
  border: none;
}

.lb-outerContainer {
  /*position: fixed;*/
 /* left: 50%;*/
 /* top: 50%;*/
 /* transform: translate(-50%, -50%);*/
  *zoom: 1;
  height: auto !important;
  /*width: 250px;
  height: 250px;*/
  margin: 0 auto;
  /*border-radius: 4px;*/

  /* Background color behind image.
     This is visible during transitions. */
  /*background-color: white;*/
	
}

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0;
}

.lb-cancel {
  display: block;
  width: 70px;
  height: 70px;
  margin: 0 auto;
  background: url("../images/arrow/loading70.gif") no-repeat;
}

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
  display: flex;
  align-items: center;
}

.lb-container > .nav {
  left: 0;
}

.lb-nav a {
  outline: none;
  background-image: url('data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
}

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block;
}

.lb-nav a.lb-prev {
  position: absolute;
  left: -9%;
  width: 30px;
  height: 20px;
  float: left;
  background: url("../images/arrow/back.svg") left 48% no-repeat;
 /* filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;*/
  -moz-transition: all .3s;    /*ゆっくりした動き*/
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  -ms-transition: all .3s;
  transition: all .3s;
  cursor: pointer;
}

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 0.5;
}

.lb-nav a.lb-next {
  position: absolute;
  right: -9%;
  width: 30px;
  height: 20px;
  float: right;
  background: url("../images/arrow/next.svg") right 48% no-repeat;
 /* filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;*/
　-moz-transition: all .3s;    /*ゆっくりした動き*/
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  -ms-transition: all .3s;
  transition: all .3s;
  cursor: pointer;
}

.lb-nav a.lb-next:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 0.5;
}

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  *zoom: 1;
  width: 100%;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-data {
  padding: 0 4px;
  color: #434242;
}

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 3.2em;
  position: absolute;
  top: -2em;
}

.landscape .lb-data .lb-details{
	osition: fixed;
    top: 12em;
}

.landscape .lb-data .lb-close{
	bottom: 130px;
}


.lb-data .lb-caption {
   font-size: 2.0rem;
   line-height: 1em;
   position: relative;
   top: -10px;
}


.lb-data .lb-caption a {
  color: #4ae;
}

.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #434242;
}

.lb-closeContainer{
	position: absolute;
    top: -21px;
    width: 100%;
    left: 0;
}

.lb-data .lb-close {
  display: block;
  float: right;
  width: 12px;
  height: 12px;
  background: url("../images/arrow/close.svg") no-repeat;
  /*background-position: top right!important;*/
  /*text-align: right;*/
  /*outline: none;*/
 /* filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;*/
  -moz-transition: all .3s;    /*ゆっくりした動き*/
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  -ms-transition: all .3s;
  transition: all .3s;
  /*margin: auto;
  position: relative;*/
 /* top: 20px;*/

}

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 0.5;
}


@media screen and (max-width:768px){
	
	.lightbox .lb-image {
		max-width: 80vw;
	}
	
	.lb-cancel {
	  width: 40px;
	  height: 40px;
	  background: url("../images/arrow/loading40.gif") no-repeat;
	}

	
	.lb-nav a.lb-next {
	    position: absolute;
	    right: -30px;
		background: url( "../images/arrow/next-sp.svg") right 48% no-repeat;
	}
	
	.lb-nav a.lb-prev {
		position: absolute;  
		left: -30px;
		background: url( "../images/arrow/back-sp.svg") left 48% no-repeat;
	}        
	
	.lb-data .lb-caption {
		font-size: 1.6rem;
	}
	
	.lb-data .lb-close {
		background: url( "../images/arrow/close.svg") bottom right no-repeat;
		left: -1%;
		top: 10px;
	}
	
}

