
/*::::::::::: PHOTOSWIPE JS SETTINGS ::::::::::: */
a.lightbox { pointer-events:none; } /* jsで autoを付与 読み込み完了前の起動を回避 */
.pswp { display:none; position:absolute; width:100%; height:100%; left:0; top:0; overflow:hidden; -ms-touch-action:none; touch-action:none; z-index:1500; -webkit-text-size-adjust:100%; -webkit-backface-visibility:hidden; backface-visibility:hidden; outline:none; }
.pswp * { box-sizing:border-box; }
.pswp img { max-width:none; }
.pswp--animate_opacity { opacity:.001; will-change:opacity; /* for open/close transition */ transition:opacity .25s cubic-bezier(0.4, 0, 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 { position:absolute; left:0; top:0; width:100%; height:100%; background-color:rgba( 0,0,0, 1); opacity:0; transform:translateZ(0); -webkit-backface-visibility:hidden; backface-visibility:hidden; will-change:opacity; }
.pswp__scroll-wrap { position:absolute; left:0; top:0; width:100%; height:100%; overflow:hidden; }
.pswp__container, .pswp__zoom-wrap { -ms-touch-action:none; touch-action:none; position:absolute; left:0; right:0; top:0; bottom:0; }
/* Prevent selection and tap highlights */
.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__container:not(:hover) { transition:transform 0.35s ease-in-out; }
.pswp__zoom-wrap { position:absolute; width:100%; transform-origin:left top; /* for open/close transition */ transition:transform .25s cubic-bezier(0.4, 0, 0.22, 1); }
.pswp__bg { will-change:opacity; /* for open/close transition */ transition:opacity .25s cubic-bezier(0.4, 0, 0.22, 1); }
.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap { transition:none; }
.pswp__container, .pswp__zoom-wrap { -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.pswp__item { position:absolute; left:0; right:0; top:0; bottom:0; overflow:hidden; }
.pswp__img { position:absolute; width:auto; height:auto; top:0; left:0; }
.pswp__img--placeholder { -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.pswp__img--placeholder--blank { background-color:#222; }
.pswp__video_wrap { position:absolute; left:50%; top:50%; transform: translate(-50%,-50%); display:block; width:100%; height:auto; margin:auto; z-index:1045; max-width:1080px; }
.pswp__video_wrap::before { content:''; padding:56.25% 0 0; }
.pswp__video_wrap { background-color:rgba( 0,0,0, 1); }
.pswp__video_wrap .pswp__video_poster { max-width:100%; max-height:100%; width:1280px; margin:0; padding:0; background-color:rgba( 0,0,0, 1); position: relative; }
.pswp__video_wrap img.pswp__video_poster { height:auto; width:auto; opacity:0; }
.pswp__video_wrap .pswp__video_poster:empty::before { padding:56.25% 0 0 0; margin:0; display:block; content:''; }
.pswp__video_wrap > iframe, .pswp__video_wrap > video { position:absolute; top:0; left:0; width:100%; height:100%; overflow:hidden; }
.pswp__video_wrap::after { height:0!important; margin:0; padding:0; }
.pswp--ie .pswp__img { width:100% !important; height:auto !important; left:0; top:0; }
.pswp__error-msg { position:absolute; left:0; top:50%; width:100%; text-align:center; font-size:14px; line-height:16px; margin-top:-8px; color:#999; }
.pswp__error-msg a { color:#999; text-decoration:underline; }

/* 1. Buttons */
.pswp__button { width:44px; height:44px; font-size:24px; line-height:1; position:relative; background:none; cursor:pointer; overflow:visible; color:#fff; -webkit-appearance:none; -moz-appearance:none; appearance:none; display:block; border-width:0; padding:0; margin:0; float:right; opacity:.75; transition:opacity 0.2s; box-shadow:none; min-width:0;  min-height:0; border:none; text-align:inherit; background-color:transparent; text-transform:inherit; letter-spacing:inherit; border-radius:0; }
.pswp__button:focus, .pswp__button:hover { opacity:1; } .pswp__button:active { outline:none; opacity:.85; } .pswp__button::-moz-focus-inner { padding:0; border-width:0; }
.pswp__ui--over-close .pswp__button--close { opacity:1; }
.pswp__button, .pswp__button--arrow--left::before, .pswp__button--arrow--right::before { width:44px; height:44px; text-align:center; }
.pswp__button--arrow--left::before, .pswp__button--arrow--right::before { display:block; content:'';  background-position:center; background-size:auto 80%; background-repeat:no-repeat; }
.pswp--touch .pswp__button--arrow--left, .pswp--touch .pswp__button--arrow--right { visibility:hidden; }
.pswp .pswp__button, .pswp .pswp__button:hover, .pswp .pswp__button.hover { background-color:transparent; }
.pswp__button--arrow--left, .pswp__button--arrow--right { top:50%; margin-top:-50px; width:70px; height:100px; position:absolute; }
.pswp__button--arrow--left { left:0; }
.pswp__button--arrow--right { right:0; }
.pswp__button--arrow--left::before, .pswp__button--arrow--right::before { top:35px; position:absolute; }
.pswp__button--arrow--left::before { left:6px; }
.pswp__button--arrow--right::before { right:6px; }
/* 3. Index indicator ("1 of X" counter) */
.pswp__counter { position:absolute; left:0; top:0; height:44px; font-size:.75em; line-height:44px; color:#fff; opacity:.75; padding:0 10px; }
/*  4. Caption */
.pswp__caption { position:absolute; left:0; bottom:0; width:100%; min-height:44px; padding:8px 12px; color:#999; }
.pswp__caption small { font-size:11px; color:inherit; }
.pswp__caption a { color:inherit; }
.pswp__caption__center { text-align:center; max-width:720px; margin:0 auto; font-size:11px; padding:0; color:inherit; }
.pswp__caption__center .pswp__caption__text { display:block; max-width:100%; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; max-height:30px; line-height:20px; }
.pswp__caption__center__opened .pswp__caption__text { white-space:normal; max-height:20em!important; }
.pswp__caption__link{ display:block; text-align:center; }
.pswp__caption--empty { display:none; }
/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake { visibility:hidden; }
/* 5. Loading indicator (preloader) */
.pswp__preloader { width:44px; height:44px; position:absolute; top:0; left:50%; margin-left:-22px; opacity:0; transition:opacity .25s ease-out; will-change:opacity; direction:ltr; }
.pswp__preloader__icn { width:20px; height:20px; margin:12px; }
.pswp__preloader--active { opacity:1; }
.pswp--css_animation .pswp__preloader--active { opacity:1; }
.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn { animation:clockwise 500ms linear infinite; }
.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut { animation:donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }
.pswp--css_animation .pswp__preloader__icn { background:none; opacity:.75; width:14px; height:14px; position:absolute; left:15px; top:15px; margin:0; }
.pswp--css_animation .pswp__preloader__cut { position:relative; width:7px; height:14px; overflow:hidden; }
.pswp--css_animation .pswp__preloader__donut { box-sizing:border-box; width:14px; height:14px; border:2px solid #fff; border-radius:50%; border-left-color:transparent; border-bottom-color:transparent; position:absolute; top:0; left:0; background:none; margin:0; }
@media screen and ( max-width : 1200px ) {
  .pswp__preloader { position:relative; left:auto; top:auto; margin:0; float:right; }
}
@media screen and ( max-width : 480px ) {
  .pswp__button--arrow--left::before { left:0; }
  .pswp__button--arrow--right::before { right:0; }
}
@keyframes clockwise { 0% { transform:rotate(0deg); } 100% { transform:rotate(360deg); } }
@keyframes donut-rotate { 0% { transform:rotate(0); } 50% { transform:rotate(-140deg); } 100% { transform:rotate(0); } }

/*  6. Additional styles */
.pswp__ui { -webkit-font-smoothing:auto; visibility:visible; opacity:1; z-index:1550; }
.pswp__top-bar { position:absolute; left:0; top:0; height:44px; width:100%; }
.pswp__caption, .pswp__top-bar, .pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right { -webkit-backface-visibility:hidden; backface-visibility:hidden; will-change:opacity; transition:opacity .25s cubic-bezier(0.4, 0, 0.22, 1); }
.pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right { visibility:visible; }
.pswp__top-bar { background-color:transparent; }
.pswp__caption { background-color:rgba(0,0,0,0.4); }
.pswp__ui--fit .pswp__top-bar, .pswp__ui--fit .pswp__caption { background-color:rgba(0,0,0,0.4); }
.pswp__ui--idle .pswp__top-bar { opacity:0; }
.pswp__ui--idle .pswp__button--arrow--left, .pswp__ui--idle .pswp__button--arrow--right { opacity:0; }
.pswp__ui--hidden .pswp__top-bar, .pswp__ui--hidden .pswp__caption, .pswp__ui--hidden .pswp__button--arrow--left, .pswp__ui--hidden .pswp__button--arrow--right { /* Force paint & create composition layer for controls. */ opacity:.001; }
.pswp__ui--one-slide .pswp__button--arrow--left, .pswp__ui--one-slide .pswp__button--arrow--right, .pswp__ui--one-slide .pswp__counter { display:none; }
.pswp__element--disabled { display:none !important; }
.pswp--minimal--dark .pswp__top-bar { background:none; }


