*{
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

.pc-header-img{
  display:none;
}

button{
  cursor:pointer;
}

body{
  margin: 0;
  padding: 0;
  height: 100%;
  font-family: "ten-mincho", serif;
}

body::before {
  content: "";
  position: fixed; /* ここを変更 */
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url('img/header-back.jpg');
  background-size: cover;
  background-position: center;
  z-index: -1; /* 背景がコンテンツの後ろに来るように */
}

body::before {
  content: "";
  position: fixed; /* ここを変更 */
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url('img/header-back.jpg');
  background-size: cover;
  background-position: center;
  z-index: -1; /* 背景がコンテンツの後ろに来るように */
}

h2{
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}

h3{
  font-family: Copperplate, "Copperplate Gothic Light", fantasy;
  font-size:17px;
}

header {
  position: relative; /* 擬似要素を配置するために必要 */
  width: 100%;
  height: 105vh;
}

header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* 黒色の薄い膜 (50%透明) */
  z-index: 1; /* ヘッダー内部の要素より後ろに配置 */
}

header * {
  position: relative; /* オーバーレイの上に表示 */
  z-index: 2;
}

.header-img {
  display: flex;
  justify-content: center; /* 水平方向に中央配置 */
  align-items: center; /* 垂直方向に中央配置 */
  height: 90vh; /* ヘッダー全体をカバー */
}

.header-img img {
  width: 70%; /* 画像の幅を80%に設定 */
  height: auto; /* アスペクト比を保つ */
}

.header-line{
  opacity:0.7;
  top:-20px;
  color:#fff;
  text-align:center;
  font-size:35px;
  font-family: "Libre Baskerville", serif;
  font-weight:400;
}

.scroll-prompt {
  opacity:0.7;
  top:-5px;
  position: relative;
  width: 3px; /* 棒の幅 */
  height: 60px; /* 見えない道の高さ */
  margin: 0 auto; /* 左右中央配置 */
  overflow: hidden; /* 道の外の棒は非表示にする */
}

.scroll-bar {
  position: absolute;
  width: 100%; /* 棒の幅は親要素に合わせる */
  height: 30px; /* 棒の高さ */
  background-color: #fff; /* 棒の色 */
  animation: scrollEffect 2.4s infinite; /* アニメーションを設定 */
}

@keyframes scrollEffect {
  0% {
    transform: translateY(-100%); /* 棒が道の上に隠れる */
  }
  100% {
    transform: translateY(90px); /* 棒が道を通過して隠れる */
  }
}

/*ラインナップ*/
.wasanbon{
  background-color:#fffdf5;
}

.kochi{
  background-color:#4b90b4;
}
.takase{
  background-color:#dcebc3;
}
.narutokintoki{
  background-color:#fbecf4;
}
.wasanbon h3{
  display:inline-block;
  background: linear-gradient(-90deg, rgba(137, 193, 233, 1) 0%, rgba(238, 219, 161, 1) 53.15%, rgba(178, 101, 159, 1) 100%);
  -webkit-background-clip: text; /* 背景のクリッピングをテキストに適用 */
  -webkit-text-fill-color: transparent; /* テキストの色を透明に設定 */
}

.wasanbon h2{
  color:#dbb379;
}

.kochi h3, .kochi h2{
  color:#c2a180;
}


.kochi .lineup-description{
  color: #fff;
}

.takase h3, .takase h2{
  color:#192510;
}

.narutokintoki h2{
  color:#6f485f;
}

.narutokintoki h3{
  color:#c780b4;
}

.lineup{
  text-align:center;
  padding:90px 30px;
      color: #5b5a53;
}


.lineup-img img{
  width:100%;
}

.lineup-description{
  font-size:12px;
  padding:20px 0px;
}

.lineup .h2{
  margin-top:20px;
}

.lineup h2{
  font-size:18px;
}

.lineup button{
  margin-top:20px;
  width:80%;
  padding:10px 30px;
  background-color: transparent;
  border:1px solid #5b5a53;
  color: #5b5a53;
  font-size:14px;
}

.kochi button{
      border: 1px solid #fff;
      color:#fff;
}

.about{
  background:rgba(0, 0, 0, 0.7);
  padding:90px 30px 0px 30px;
  text-align:center;
  color:#fff;
}

.about h2{
      font-family: "Libre Baskerville", serif;
      font-size:26px;
      line-height: 20px;
}
.about-logo {
  padding:50px 0px;
}

.about-logo img{
  width:50%;
  max-width:200px;
}

.about-span{
  font-size:10px;
}

.about-p p{
  margin-bottom:1em;
}

.about-shikoku {
  padding-top:100px;
}

.about-shikoku img{
  width:30%;
  max-width:140px;
}

footer{
  margin-top:100px;
}

.footer-bottom{
  font-size:10px;
  margin-top:40px;
}

footer  ul {
      list-style: none;           /* リストマーカー(・)非表示 */
      display: flex;             /* 横並びにする */
      justify-content: center;   /* 水平中央揃え */
      padding: 0;                /* デフォルトの余白をリセット */
      margin: 0;                 /* デフォルトの余白をリセット */
    }

  footer  li {
      margin: 0 10px;            /* 項目間の隙間を好みで設定 */
    }

      footer li a{
        text-decoration:none;
        color:#fff;
      }



@media screen and (min-width: 600px){

  body::before{
    background-image: url('img/header-back-pc.jpg');
  }
  .bg-fixed{
    background: url("img/header-back-pc.jpg") center center no-repeat;
  }

  header{
    height:700px;
  }


  .sp-header-img{
    display:none;
  }

  .pc-header-img{
    padding-top:50px;
    display: flex;
    justify-content: center; /* 水平方向に中央配置 */
    align-items: center; /* 垂直方向に中央配置 */
    height:550px;
  }

  .pc-header-img img{
      height: 380px; /* 画像の幅を80%に設定 */
      width: auto; /* アスペクト比を保つ */
  }

  #line-up{
    font-size:20px;
  }

  .scroll-prompt{
    height:50px;
  }

  .lineup-waku{
    width:600px;
    margin:0 auto;
  }



}