img {
  width: 100%; /* 親要素の幅に合わせる */
  height: auto; /* アスペクト比を保つ */
}

body {
    background-color: rgb(0, 0, 0);
    background-image: url('img/spotlight.png'); /* 背景画像のパスを指定 */
    background-position: center; /* 画像が要素の中央に表示されるように位置を設定 */
    background-attachment: fixed;
    max-width: 600px;
    margin: 0 auto;
    overflow-x: hidden;
}


.No1 {
    padding: 40px 20px 20px 20px;
    box-sizing: border-box; /* 内側の余白を含めた要素のサイズを指定 */
    max-width: calc(100% - 0px); /* 画像の最大幅を計算して設定 */
    height: auto;
}
 
.video {
    max-width: calc(101%); /* 画像の最大幅を計算して設定 */
    height: auto;
    padding: 0px 0px;
    clip-path: polygon(100% 0%, 0% 20%, 0% 86%, 100% 100%);
    transform: translateY(-20px); /* 上に20ピクセル移動 */
}

.video2 {
  width: 100%; /* 親要素の幅に合わせる */
  height: auto; /* アスペクト比を保つ */
}

.video-container {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.application-copy {
  padding: 10px 20px;
    box-sizing: border-box; /* 内側の余白を含めた要素のサイズを指定 */
    max-width: calc(100% - -0px); /* 画像の最大幅を計算して設定 */
    height: auto;
}

.copy {
  transform: translateY(-60px); /* 上に20ピクセル移動 */

}

.saikokyu {
  padding: 0px;
  box-sizing: border-box; /* 内側の余白を含めた要素のサイズを指定 */
  max-width: calc(100% - 0px); /* 画像の最大幅を計算して設定 */
  height: auto;
  animation-delay: 1s;
}

.senmon {
  padding: 5px 20px;
  box-sizing: border-box; /* 内側の余白を含めた要素のサイズを指定 */
  max-width: calc(100% - 0px); /* 画像の最大幅を計算して設定 */
  height: auto;
  animation-delay: 2s;
}

.livechat {
  padding: 0px 20px;
  box-sizing: border-box; /* 内側の余白を含めた要素のサイズを指定 */
  max-width: calc(100% - 0px); /* 画像の最大幅を計算して設定 */
  height: auto;
  animation-delay: 3s
}
 
/* fadeUp */

.fadeUp{
  animation-name:fadeUpAnime;
  animation-duration:1.5s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeUpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }
  
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }

  
  /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
   
  .fadeUpTrigger{
      opacity: 0;
  }
  

canvas {
    height: 100%;
    width: 100%;
    position: absolute;
    mix-blend-mode: screen; /* オーバーレイを指定 */
    z-index: 0;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  
  .appText {
    font-size: 1em; /* テキストのサイズ */
    color: #dbc669; /* テキストの色 */
    font-weight: bold; /* フォントの太さ */
    margin-top: 60px; /* 上のマージン */
    margin-bottom: 60px; /* 下のマージン */
    margin-left: 22px;
    margin-right: 22px;
    text-align: center; /* テキストを中央揃えにする */
    line-height: 2; /* 行の高さ */
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  }

  .iPhone {
    max-width: 50%;
    height: auto;
    display: block;
    margin: 0 auto;
    margin-bottom: 60px; /* 下のマージン */
    border-radius: 12%; /* 角の丸みの大きさを調整 */
    overflow: hidden; /* 角丸の外側の部分を隠す */
  }

.fukidashi {
    max-width: 35%;
    margin-top: 60px; /* 上のマージン */
    display: block;
    margin: 0 auto;
    animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}
@keyframes floating-y {
  0% {
    transform: translateY(-20%);
  }
  100% {
    transform: translateY(20%);
  }
}

.denwaninsho {
  max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    margin-bottom: 60px; /* 下のマージン */
  }

  .woman {
    max-width: 35%;
    transform: translateY(50%); /* 初期状態で下に隠す */
    transition: opacity 0.5s, transform 1s;
    overflow:hidden;
    transform: translateY(30px); /* 上に20ピクセル移動 */
    top: 0%; /* コンテナの上端からの距離 */
    width: 100%; /* 画像の幅（必要に応じて調整） */
    height: auto; /* アスペクト比を保持 */
    z-index: 0; /* ビデオよりも前面に表示 */
    display: flex;
    justify-content: center; /* コンテナ内のアイテムを水平方向に中央揃え */
    position: relative; /* 子要素の位置指定の基準点となる */
    position: absolute; /* コンテナに対して絶対位置指定 */
    right: -1px; /* 中央から右に50pxずらす（左にずらす場合は負の値を使用） */
}

.woman.visible {
    opacity: 1;
    transform: translateX(0); /* ビューポートに表示されたら元の位置に */
}

.sumaho {
  padding: 10px;
  box-sizing: border-box; /* 内側の余白を含めた要素のサイズを指定 */
  height: auto;
  animation-delay: 0.3s;
  max-width: 60%;
  display: block;
  margin: 0 auto;
  z-index: -5;
}

.NTR {
  padding: 5px 20px;
  box-sizing: border-box; /* 内側の余白を含めた要素のサイズを指定 */
  max-width: 80%;
  margin: 0 auto;
  display: block;
  height: auto;
  animation-delay: 0.9s;
  z-index: -5;
}

  .button2 {
    max-width: 80%;
    display: block;
    margin: 0 auto;
    border-radius: 9px; /* 角の丸みの大きさを調整 */
    overflow: hidden; /* 角丸の外側の部分を隠す */
  }

/* オーバーレイ */
#overlay {
  display: none; /* 初期状態では非表示 */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7); /* 半透明の黒 */
  opacity: 0; /* 初期状態では完全に透明 */
  transition: opacity 0.5s ease; /* 透明度の変化を0.5秒かけて行う */
}

/* ポップアップ */
#popup {
  display: none;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(1.05);
  width: 72%;
  max-width: 500px;
  background-color: #f3b634;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  padding: 9px 8px 2px 7px;
  z-index: 1001;
  opacity: 0;
  transition: all 0.5s ease;
  border-radius:25px; /* 角の丸みの大きさを調整 */
  overflow: hidden; /* 角丸の外側の部分を隠す */
}

/* ポップアップの見出し */
#popup h2 {
  margin-top: 0;
  color: #333;
  font-family: Arial, sans-serif;
}

/* ポップアップ内のテキスト */
#popup p {
  color: #666;
  line-height: 1.5;
}

/* 閉じるボタン */
#closePopup {
  position: absolute;
  top: 15px;
  right: 15px;
  background: #ffffff;
  opacity: 0.8;
  color: rgb(214, 96, 96);
  border: none;
  border-radius: 50%; /* 完全な円形を保持 */
  font-size: 24px; /* 「×」記号のサイズ */
  cursor: pointer;
  display: flex;
  align-items: center; /* Flexboxを使った垂直方向の中央揃え */
  justify-content: center; /* Flexboxを使った水平方向の中央揃え */
  width: 25px; /* ボタンの幅 */
  height: 25px; /* ボタンの高さ、widthと同じ値に設定して円形を保持 */
  padding: 0; /* paddingを0に設定 */
}

/* 表示状態 */
#overlay.visible, #popup.visible {
  display: block;
  opacity: 1;
}

#popup.visible {
  transform: translate(-50%, -50%) scale(1);
}

.popup-video {
  width: 100%; /* 親要素の幅に合わせる */
  height: auto; /* アスペクト比を保つ */
  border-radius: 20px; /* 角の丸みの大きさを調整 */
  overflow: hidden; /* 角丸の外側の部分を隠す */
}

.video3 {
  max-width: 80%;
  display: block;
  margin: 5vw auto;
}

.endText {
  transform: translateY(22px); /* 上に20ピクセル移動 */
  font-size: 1em; /* テキストのサイズ */
  color: #000000; /* テキストの色 */
  background: linear-gradient(to right, #ceb734, #ffdc74, #c4aa16);
  font-weight: bold; /* フォントの太さ */
  text-align: center; /* テキストを中央揃えにする */
  line-height: 1.5; /* 行の高さ */
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  padding: 1vw;
}

.article_150314 .bg_murquee2 {
    position: relative;
    background-color: #F2F2F2; 
    border: solid 1px #DDD; 
    border-radius: 3px;
    width: 80%;
    height: 40px;
    overflow: hidden;
}
.article_150314 .bg_murquee2 p {
    position: absolute;
    display: inline-block;
    white-space: nowrap;
    margin-bottom: 0;
    line-height: 40px;
    width: 100%;
    font-size: 90%;
    transform:translateX(100%);
}
.bg_murquee2 p:nth-child(1) {  
  color: #ffffff;
    animation: txt-one 20s ease infinite;  
    -moz-animation: txt-one 20s ease infinite;  
    -webkit-animation: txt-one 20s ease infinite;  
}  
.bg_murquee2 p:nth-child(2) {  
  color: #ffffff;
    animation: txt-two 20s ease infinite;  
    -moz-animation: txt-two 20s ease infinite;  
    -webkit-animation: txt-two 20s ease infinite;  
}
 
@keyframes txt-one {
    0%  {transform:translateX(100%)}
    10% {transform:translateX(0);}
    40% {transform:translateX(0);}
    50% {transform:translateX(-100%);}
    100% {transform:translateX(-100%);}
}
@-moz-keyframes txt-one {
    0%  {-moz-transform:translateX(100%)}
    10% {-moz-transform:translateX(0);}
    40% {-moz-transform:translateX(0);}
    50% {-moz-transform:translateX(-100%);}
    100% {-moz-transform:translateX(-100%);}
}
@-webkit-keyframes txt-one {
    0%  {-webkit-transform:translateX(100%)}
    10% {-webkit-transform:translateX(0);}
    40% {-webkit-transform:translateX(0);}
    50% {-webkit-transform:translateX(-100%);}
    100% {-webkit-transform:translateX(-100%);}
}
@keyframes txt-two {
    0% {transform:translateX(100%)}
    50% {transform:translateX(100%);}
    60% {transform:translateX(0);}
    90% {transform:translateX(0)}
    100% {transform:translateX(-100%)}
}
@-moz-keyframes txt-two {
    0% {-moz-transform:translateX(100%)}
    50% {-moz-transform:translateX(100%);}
    60% {-moz-transform:translateX(0);}
    90% {-moz-transform:translateX(0)}
    100% {-moz-transform:translateX(-100%)}
}
@-webkit-keyframes txt-two {
    0% {-webkit-transform:translateX(100%)}
    50% {-webkit-transform:translateX(100%);}
    60% {-webkit-transform:translateX(0);}
    90% {-webkit-transform:translateX(0)}
    100% {-webkit-transform:translateX(-100%)}
}


