.lum-lightbox-inner {
  top: 2.5%;
  right: 2.5%;
  bottom: 2.5%;
  left: 2.5%;
}
.lum-lightbox {
  background: rgba(0,0,0,0.9);
}
.lum-lightbox.lum-opening {
  -webkit-animation: lum-fade 180ms ease-out;
          animation: lum-fade 180ms ease-out;
}
.lum-lightbox.lum-opening .lum-lightbox-inner {
  -webkit-animation: lum-fadeZoom 180ms ease-out;
          animation: lum-fadeZoom 180ms ease-out;
}
.lum-lightbox.lum-closing {
  -webkit-animation: lum-fade 300ms ease-in;
          animation: lum-fade 300ms ease-in;
  animation-direction: reverse;
}
.lum-lightbox.lum-closing .lum-lightbox-inner {
  -webkit-animation: lum-fadeZoom 300ms ease-in;
          animation: lum-fadeZoom 300ms ease-in;
  animation-direction: reverse;
}
.lum-lightbox-inner img {
  position: relative;
}
.lum-lightbox-inner .lum-lightbox-caption {
  max-width: 700px;
  margin: 0 auto;
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
}
.lum-loading .lum-lightbox-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 66px;
  height: 20px;
  -webkit-animation: lum-loader-rotate 1800ms infinite linear;
          animation: lum-loader-rotate 1800ms infinite linear;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.lum-lightbox-loader::before,
.lum-lightbox-loader::after {
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  background: rgba(255,255,255,0.9);
  border-radius: 20px;
  content: '';
}
.lum-lightbox-loader::before {
  left: 0;
  -webkit-animation: lum-loader-before 1800ms infinite linear;
          animation: lum-loader-before 1800ms infinite linear;
}
.lum-lightbox-loader::after {
  right: 0;
  -webkit-animation: lum-loader-after 1800ms infinite linear;
          animation: lum-loader-after 1800ms infinite linear;
  -webkit-animation-delay: -900ms;
          animation-delay: -900ms;
}
.lum-img {
  -webkit-transition: opacity 120ms ease-out;
  transition: opacity 120ms ease-out;
}
.lum-loading .lum-img {
  opacity: 0;
}
.lum-gallery-button {
  position: absolute;
  top: 50%;
  overflow: hidden;
  width: 60px;
  height: 100px;
  max-height: 100%;
  padding: 0;
  border: 0;
  margin: 0;
  background: transparent;
  cursor: pointer;
  opacity: 0.8;
  outline: 0;
  text-indent: 150%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  white-space: nowrap;
}
.lum-gallery-button:hover {
  opacity: 1;
}
.lum-gallery-button::after {
  position: absolute;
  top: 50%;
  display: block;
  color: #fff;
  font-family: 'fontello';
  font-size: 60px;
  line-height: 1;
  text-indent: 0;
  text-shadow: 0px 0px 4px rgba(0,0,0,0.7);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.lum-previous-button {
  left: 12px;
}
.lum-previous-button::after {
  content: '\e88f';
}
.lum-next-button {
  right: 12px;
}
.lum-next-button::after {
  content: '\e890';
}
.lum-close-button {
  --close-position: 40px;
  position: absolute;
  top: var(--close-position);
  right: var(--close-position);
  width: 32px;
  height: 32px;
  color: #fff;
  cursor: pointer;
  font-size: 28px;
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  .lum-close-button {
    --close-position: 12px;
  }
}
.lum-close-button:hover {
  opacity: 1;
}
.lum-close-button::before {
  content: '\2c';
  font-family: 'fontello';
}
@media (max-width: 460px) {
  .lum-lightbox-image-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  .lum-lightbox-caption {
    position: absolute;
    width: 100%;
    bottom: 0;
  }
  .lum-lightbox-position-helper {
    margin: auto;
  }
  .lum-lightbox-inner img {
    max-width: 100%;
    max-height: none;
  }
}
@-webkit-keyframes lum-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes lum-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes lum-fadeZoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes lum-fadeZoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes lum-loader-rotate {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(-180deg);
            transform: translate(-50%, -50%) rotate(-180deg);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(-360deg);
            transform: translate(-50%, -50%) rotate(-360deg);
  }
}
@keyframes lum-loader-rotate {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(-180deg);
            transform: translate(-50%, -50%) rotate(-180deg);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(-360deg);
            transform: translate(-50%, -50%) rotate(-360deg);
  }
}
@-webkit-keyframes lum-loader-before {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  10% {
    -webkit-transform: scale(1.2) translateX(6px);
            transform: scale(1.2) translateX(6px);
  }
  25% {
    -webkit-transform: scale(1.3) translateX(8px);
            transform: scale(1.3) translateX(8px);
  }
  40% {
    -webkit-transform: scale(1.2) translateX(6px);
            transform: scale(1.2) translateX(6px);
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  60% {
    -webkit-transform: scale(0.8) translateX(6px);
            transform: scale(0.8) translateX(6px);
  }
  75% {
    -webkit-transform: scale(0.7) translateX(8px);
            transform: scale(0.7) translateX(8px);
  }
  90% {
    -webkit-transform: scale(0.8) translateX(6px);
            transform: scale(0.8) translateX(6px);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes lum-loader-before {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  10% {
    -webkit-transform: scale(1.2) translateX(6px);
            transform: scale(1.2) translateX(6px);
  }
  25% {
    -webkit-transform: scale(1.3) translateX(8px);
            transform: scale(1.3) translateX(8px);
  }
  40% {
    -webkit-transform: scale(1.2) translateX(6px);
            transform: scale(1.2) translateX(6px);
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  60% {
    -webkit-transform: scale(0.8) translateX(6px);
            transform: scale(0.8) translateX(6px);
  }
  75% {
    -webkit-transform: scale(0.7) translateX(8px);
            transform: scale(0.7) translateX(8px);
  }
  90% {
    -webkit-transform: scale(0.8) translateX(6px);
            transform: scale(0.8) translateX(6px);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes lum-loader-after {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  10% {
    -webkit-transform: scale(1.2) translateX(-6px);
            transform: scale(1.2) translateX(-6px);
  }
  25% {
    -webkit-transform: scale(1.3) translateX(-8px);
            transform: scale(1.3) translateX(-8px);
  }
  40% {
    -webkit-transform: scale(1.2) translateX(-6px);
            transform: scale(1.2) translateX(-6px);
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  60% {
    -webkit-transform: scale(0.8) translateX(-6px);
            transform: scale(0.8) translateX(-6px);
  }
  75% {
    -webkit-transform: scale(0.7) translateX(-8px);
            transform: scale(0.7) translateX(-8px);
  }
  90% {
    -webkit-transform: scale(0.8) translateX(-6px);
            transform: scale(0.8) translateX(-6px);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes lum-loader-after {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  10% {
    -webkit-transform: scale(1.2) translateX(-6px);
            transform: scale(1.2) translateX(-6px);
  }
  25% {
    -webkit-transform: scale(1.3) translateX(-8px);
            transform: scale(1.3) translateX(-8px);
  }
  40% {
    -webkit-transform: scale(1.2) translateX(-6px);
            transform: scale(1.2) translateX(-6px);
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  60% {
    -webkit-transform: scale(0.8) translateX(-6px);
            transform: scale(0.8) translateX(-6px);
  }
  75% {
    -webkit-transform: scale(0.7) translateX(-8px);
            transform: scale(0.7) translateX(-8px);
  }
  90% {
    -webkit-transform: scale(0.8) translateX(-6px);
            transform: scale(0.8) translateX(-6px);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.udn-lightbox {
  z-index: 33;
}
.udn-lightbox::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: var(--bg-image);
  background-position: center;
  background-size: 10%;
  content: '';
  -webkit-filter: blur(2px) brightness(0.5);
          filter: blur(2px) brightness(0.5);
  -webkit-transform: scale(11);
          transform: scale(11);
}
.udn-lightbox-inner img {
  max-height: 98%;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
@media screen and (max-width: 767px) {
  .udn-lightbox-inner img {
    width: 100%;
  }
}
.udn-gallery {
  display: -ms-grid;
  display: grid;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding: 35px;
  background-color: #fff;
  -ms-grid-columns: (1fr)[6];
  grid-template-columns: repeat(6, 1fr);
  -webkit-transition: background-color 0.3s linear;
  transition: background-color 0.3s linear;
  max-width: 767px;
  margin: 0 auto;
}
@media screen and (max-width: 1297px) {
  .udn-gallery {
    max-width: 592px;
  }
}
@media screen and (max-width: 767px) {
  .udn-gallery {
    width: 100vw;
    padding: 20px;
    margin: 0 auto 20px;
    -ms-grid-columns: (1fr)[8];
    grid-template-columns: repeat(8, 1fr);
  }
}
.udn-gallery__total {
  position: absolute;
  z-index: 1;
  right: 20px;
  bottom: 10px;
  width: 100%;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 36px;
  letter-spacing: 0;
  text-align: right;
}
@media screen and (max-width: 1297px) {
  .udn-gallery__total {
    font-size: 30px;
  }
}
@media screen and (max-width: 767px) {
  .udn-gallery__total {
    font-size: 24px;
  }
}
.udn-gallery__total::before,
.udn-gallery__total::after {
  display: inline-block;
  margin: 0 3px;
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .udn-gallery__total::before,
  .udn-gallery__total::after {
    font-size: 20px;
  }
}
.udn-gallery__total::before {
  content: '共';
}
.udn-gallery__total::after {
  content: '張 >';
}
.udn-gallery__list {
  position: relative;
  overflow: hidden;
  cursor: pointer;
  font-size: 0;
  -ms-grid-column-span: 2;
  grid-column: span 2;
  -ms-grid-row-span: 1;
  grid-row: span 1;
  position: relative;
  display: inline-block;
}
.udn-gallery__list::after {
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: calc(2 / 3 * 100%);
  content: '';
}
.udn-gallery__list img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
}
.udn-gallery__list img.lazyload:not([src]),
.udn-gallery__list img.lazyloading:not([src]) {
  visibility: hidden;
}
@media screen and (max-width: 767px) {
  .udn-gallery__list img {
    -webkit-transition: linear 0.3s transform;
    transition: linear 0.3s transform;
  }
}
.udn-gallery__list:active {
  position: relative;
  --media-pressed: rgba(68,73,80,0.35);
  background-color: var(--media-pressed);
}
.udn-gallery__list:active::before {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--media-pressed);
  content: '';
}
.udn-gallery__list:active img {
  mix-blend-mode: multiply;
}
.udn-gallery__list:focus {
  outline: 0;
}
.udn-gallery__list:hover img {
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
}
@media screen and (max-width: 767px) {
  .udn-gallery__list {
    -ms-grid-column-span: 4;
    grid-column: span 4;
  }
}
.udn-gallery__list img {
  width: 244px;
  max-width: 100%;
  height: 163.5px;
  font-family: 'object-fit: cover';
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s linear;
  transition: -webkit-transform 0.3s linear;
  transition: transform 0.3s linear;
  transition: transform 0.3s linear, -webkit-transform 0.3s linear;
  will-change: transform;
}
.one-column .udn-gallery__list img {
  width: 250px;
  height: 168.66px;
}
@media screen and (max-width: 1297px) {
  .udn-gallery__list img {
    width: 174px;
    height: 121px;
  }
}
@media screen and (max-width: 1023px) {
  .udn-gallery__list img {
    width: 192.66px;
    height: 123px;
  }
}
@media screen and (max-width: 767px) {
  .udn-gallery__list img {
    width: 100% !important;
    height: 100% !important;
  }
}
.udn-gallery__list::before {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  border: 1px solid transparent;
  content: '';
}
.udn-gallery__list:first-child {
  -ms-grid-column-span: 4;
  grid-column: span 4;
  -ms-grid-row-span: 2;
  grid-row: span 2;
}
@media screen and (max-width: 767px) {
  .udn-gallery__list:first-child {
    -ms-grid-column-span: 8;
    grid-column: span 8;
  }
}
.udn-gallery__list:first-child img {
  width: 490px;
  height: 327px;
}
@media screen and (max-width: 1297px) {
  .udn-gallery__list:first-child img {
    width: 350px;
    height: 242px;
  }
}
@media screen and (max-width: 1023px) {
  .udn-gallery__list:first-child img {
    width: 383.31px;
    height: 248px;
  }
}
.one-column .udn-gallery__list:first-child img {
  width: 502px;
  height: 335.33px;
}
.udn-gallery__list:nth-child(3)::before {
  background: rgba(0,0,0,0.6);
}
.udn-gallery__list:nth-child(n + 4) {
  display: none;
}

