@charset "UTF-8";

#main_inner .column_4 p a.lb-thumb {cursor: zoom-in;}

/* ライトボックス本体（flexの外 / body直下なので安全） */
.lb {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4vw;
  background: rgba(0,0,0,.65);
  z-index: 9999;

  opacity: 0;
  pointer-events: none;
  transform: scale(1.02);
  transition: opacity .35s ease, transform .35s ease;
}
.lb:target {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1);
}
.lb > img {
  max-width: min(92vw, 1280px);
  max-height: 92vh;
  height: auto;
  width: auto;
  box-shadow: 0 10px 30px rgba(0,0,0,.3);
  border-radius: 6px;

  opacity: 0;
  transform: scale(.96);
  transition: opacity .4s ease, transform .4s ease;
}
.lb:target > img { opacity: 1; transform: scale(1); }

/* 開いている間のスクロール固定（対応ブラウザ） */
body:has(.lb:target) { overflow: hidden; }
