/*========= ナビゲーションのためのCSS ===============*/
.box1 {
  padding: 10px;
  margin: 5px;
  border: 1px solid #333;
  background-color: #787777;
  color: #ffffff;
  width: 45%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.box2 {
  padding: 10px;
  margin: 5px;
  border: 1px solid #333;
  background-color: #fff;
  color: #000;
  width: 45%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.box {
  display: flex; /* Flexboxを有効化 */
  align-items: center; /* 子要素を縦方向に中央揃えにする */
  justify-content: center; /* 子要素を横方向に中央揃えにする */
  padding: 10px;
  margin: 5px;
  color: #000;
  width: 90%;
}



#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 2;
    /*ナビのスタート位置と形状*/
  top:0;
    right: -120%;
    width: 100%;
    max-width: 550px;
    height: 100vh;/*ナビの高さ*/
  background:#fff;
    /*動き*/
  transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    max-width: 550px;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
.mlogo{
  position: absolute;
  top: 1%; /* 上部からの位置を調整 */
  left: 50%;
  transform: translateX(-50%);
}
/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:15%;
    width: 100%;
    padding-inline-start: 0px!important;
}

/*リストのレイアウト設定*/

#g-nav li{
  list-style: none;
    text-align: center;
    display: flex; /* Flexboxを使って子要素を横並びにする */
    justify-content: center; /* 子要素を中央に配置する */
    margin-bottom: 1%;
}

#g-nav li a{
  color: #333;
  text-decoration: none;
  padding:10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn1{
  position:fixed;
    z-index: 3;/*ボタンを最前面に*/
  top:10px;
  right: 10px;
  cursor: pointer;
    width: 50px;
    height:50px;
}
  
/*×に変化*/  
.openbtn1 span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
  background-color: #000;
    width: 45%;
  }

.openbtn1 span:nth-of-type(1) {
  top:15px; 
}

.openbtn1 span:nth-of-type(2) {
  top:23px;
}

.openbtn1 span:nth-of-type(3) {
  top:31px;
}

.openbtn1.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn1.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

.mode-buttons .mode-dollhouse {
  position: relative;
  display: none;
}

.attachment-overlay .overlay-top-bar {
  width: 70%;
}


.close-button {
  position: absolute;
  top: 10px;
  left: 10px;
}
.footer-ui #footer .footer-logo {
  display: none;
}

#react-render-root {
  z-index: 9;
}

.menu2 {
  width: 100%;
  position: absolute;
  bottom: 0%;
  z-index: 9;
}

.menu_img2 {
  width: 100%;
}

/*モーダル*/
.modal-1 {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  z-index: 10;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.4);
}

.modal-content-1 {
  position: relative;
  background-color: #093718;
  margin: 60px auto;
  padding: 60px 60px 20px 60px;
  width: 71%; /* 幅を調整して適切なサイズに */
}

.arrows-1 {
  text-align: center;
  margin-top: 20px; /* 画像と矢印の間のスペース */
}


.close-1 {
  color: #093718; /* バツの色を緑に変更 */
  position: absolute;
  top: -10px; /* モーダルの枠外に配置 */
  right: -10px; /* モーダルの枠外に配置 */
  font-size: 28px;
  font-weight: bold;
  background-color: #fff; /* 背景色を白に */
  border-radius: 50%; /* 丸形に */
  cursor: pointer;
  width: 30px; /* 閉じるボタンの幅 */
  height: 30px; /* 閉じるボタンの高さ */
  line-height: 25px; /* テキストを垂直中央に配置 */
  text-align: center; /* テキストを水平中央に配置 */
  border: 2px solid #093718; /* 緑の枠線 */
}

.close-1:hover,
.close-1:focus {
  color: #fff; /* ホバー時のバツの色を白に */
  background-color: #093718; /* ホバー時の背景色を緑に */
  text-decoration: none;
}


.slider {
  position: relative;
}

.slide {
  display: none;
  width: 100%;
}

.prev, .next {
  cursor: pointer;
  font-size: 24px;
  font-weight: bold;
  color: white;
  padding: 0px 0px 0px 20px;
  border-radius: 50%;
}

.prev:hover, .next:hover {
  color: #ccc; /* ホバー時の背景色 */
}


.modal-content-2 {
  position: relative;
  background-color: #093718;
  margin: 60px auto;
  padding: 60px 60px 20px 60px;
  width: 30%;
}

.modal-content-3 {
  position: relative;
  background-color: #093718;
  margin: 60px auto;
  padding: 60px 60px 20px 60px;
  width: 71%;
}

.info-icon {
  position: fixed; /* 画像を固定位置に表示 */
  top: 10px; /* 上端からの距離 */
  right: 10px; /* 右端からの距離 */
  width: 50px; /* 画像の幅 */
  height: auto; /* 画像の高さを自動調整 */
  z-index: 1000; /* 他の要素より前面に表示 */
  cursor: pointer;
}

/* PC用のスタイル */
#mySvg {
  width: 1040px; /* PCでのデフォルトの幅 */
  height: auto; /* アスペクト比を維持 */
}

/* モバイルデバイス用のメディアクエリ */
@media (max-width: 768px) {
  #mySvg {
    width: 100%; /* モバイルデバイスでの幅をビューポートの幅に合わせる */
    height: auto; /* アスペクト比を維持 */
  }

  .close-1 {
    color: #093718;
    position: absolute;
    top: -30px;
    right: 1px;
    font-size: 28px;
    font-weight: bold;
    background-color: #fff;
    border-radius: 50%;
    cursor: pointer;
    width: 30px;
    height: 30px;
    line-height: 25px;
    text-align: center;
    border: 2px solid #093718;
  }

  .modal-sp {
    position: relative;
    top: 30%;
    background-color: #093718;
    margin: 0px auto;
    padding: 50px 0px 0px 0px;
    width: 100%;
  }

  .modal-sp-slider {
    position: relative;
    top: 20%;
    background-color: #093718;
    margin: 0px auto;
    padding: 50px 50px 50px 50px;
    width: 100%;
  }

  .close-2 {
    position: absolute;
    top: -90px;
    right: 1px;
  }

  .modal-1 {
    display: block;
  }

}
