.js-picture-container{
  aspect-ratio: 1/1;
}

#thumbnail-iframe-modal  {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.8);
  z-index: 9999;
}
#thumbnail-iframe-modal .thumbnail-modal-content{
  max-width: 560px;
  width: 100%;
  padding: 0px;
  background: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  aspect-ratio: 16 / 9;
}
#thumbnail-iframe-modal .thumbnail-video {
  width: 100%;
  height: 100%;
}
.thumbnail-iframe-close {
  position: absolute;
  top: -32px;
  right: 10px;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  background: #6e6d6c;
  font-size: 21px;
  text-align: center;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.thumbnail-video-wrap{
  position: relative;
  display: inline-block;
  width: var(--width-thumbnail);
  height: var(--width-thumbnail);
  overflow: hidden;
}
#thumbnail-video-open{
  height: 100%;
  object-fit: cover;
}
.thumbnail-video-wrap::after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  pointer-events: none;
  z-index: 1;
}
.thumbnail-video-play-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  pointer-events: none;
  width: 45% !important;
}
.detail-unshown-message{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 70vh;
  text-align: center;
}
.detail-unshown-message .first-message{
  font-size: 18px;
  margin-bottom: 5%;
}
.detail-unshown-message .second-message{
  font-size: 14px;
  margin-bottom: 12%;
}
.detail-unshown-message .second-message .is-tab{
  display: inline;
}
.detail-unshown-message .second-message a{
  text-decoration: underline;
}
.detail-unshown-message-btn{
  width: 60%;
  border: 1px solid;
  padding: 2% 4%;
  margin: 0 auto;
  font-size: 18px;
}
@media screen and (min-width: 768px) {
  .thumbnail-iframe-close{
    right: 0px;
    top: -40px;
  }
  .detail-unshown-message-btn{
    width: 20%;
    padding: 1% 4%;
    font-size: 16px;
  }
  .detail-unshown-message .first-message{
    margin-bottom: 2%;
  }
  .detail-unshown-message .second-message{
    margin-bottom: 3%;
  }
  .detail-unshown-message .second-message .is-tab{
    display: none;
  }
}