@charset "UTF-8";
/* CSS Document */
/* ポップアップウインドウの設定 */
.pu {
  display: none;
  position: fixed!important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999 !important;
  background-color: rgba(0, 0, 0, 0.85); 
  overflow-y: auto;
  transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out !important;
}

/* チェックされたらポップアップウインドウを開く */
#pu-on01:checked + .pu,
#pu-on02:checked + .pu,
#pu-on03:checked + .pu,
#pu-on04:checked + .pu {
  display: block;
  opacity: 1;
  visibility: visible;
}

/* チェックボックスの初期設定 */
#pu-on01, #pu-on02, #pu-on03, #pu-on04 {
  display: none;
}

/* 閉じるアイコン（右上） */
.icon-close {
  color: #fff;
  position: absolute;
  right: 0;
  top: 0;
  line-height: 100%;
  width: 100%;
  height: 100%;
  text-align: right;
  overflow-y: hidden;
}
.icon-close p {
  position: absolute;
  right: 5%;
  top: 2%;
  text-align: right;
  font-family: 'Noto Serif JP', serif;
  font-weight: 100;
  font-size: 1.7em;
  color: #fff;
}
/* 開くボタン */
.btn-open {
  cursor: pointer;
}
.btn-open p {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.btn-open p {
  position: absolute;
  bottom: 5px;
  right: 3.5%;
  width: 2.3em;
  z-index: 99 !important;
  padding: 0;
  display: block;
  color: #000;
  letter-spacing: 1px;
  text-align: right;
  font-family: "Poiret One", sans-serif;
  font-weight: 500 !important;
  font-style: normal;
  font-size: 1.1em;
}
.btn-open p::after, .btn-open p::before {
  content: "";
  position: absolute;
  right: 140%;
  top: 19%;
  width: 0.04em;
  height: 1.0em;
  background-color: #000;
  opacity: 1;
}
.btn-open p::after {
  transform: rotate(90deg);
}

.popitem {
  display: flex;
  width: 100%;
}
.popitem section {
  width: 100%;
  padding: 0.1rem 0.15rem;
  margin: 0 auto;
}
.popitem img {
  width: 100%;
}

/* ポップアップの内容 */
.pu-content {
  width: 80%;
  max-width: 600px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  padding-top: 3em;
  font-size: 15px;
  color: #fff!important;
}

.pu-content p {
  margin: 0.8em 0;
  vertical-align: middle !important;
  font-size: 0.95em;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 300;
  font-style: normal;
  line-height: 150%; 
  color: #fff!important;
}

@media screen and (min-width:1500px) {
  /*　画面サイズが850pxからはここを読み込む　*/
  .pu-content p{
    font-size: 1.1em;
  }
}

@media screen and (min-width:850px) {
  /*　画面サイズが850pxからはここを読み込む　*/
  .pu-content {
    font-size: 16px;
  }
}
@media screen and (max-width:350px) {
  /*　画面サイズが350pxまで読み込む　*/
  .pu-content {
    font-size: 14px;
  }
}

.pu-content a {
  background: linear-gradient(transparent 80%, rgba(240, 225, 205, 0.5) 100%);
  text-decoration: none;
  color: inherit;
  transition: all 0.5s ease !important;
}

.pu-content a:hover, .pu-content a:active {
  color: #B3A475;
  transition: 0.5s;
  opacity: 1 !important;
}

.pu-content img {
  width: 55%;
  max-width: 200px;
}
.pu-content span {
  font-size: 0.9em;
  display: inline !important;
  vertical-align: baseline; /* baseline に設定 */
  margin: 0 0.3em;
  letter-spacing: -0.1em;
}
.pu-content div {
  line-height: 100%;
  padding-top: 0.5em;
  width: 100%;
  max-width: 580px;
  margin: 0 auto;
}
