@charset "utf-8";

#nijisanji2026 {
    width: 100%;
    background-image: url(/event/nijisanji-spring2026/img/grid_bg.png);
    background-size: 100%;
    background-repeat: none;
    background-color: #ffffff;
    margin: 0 auto;
    color: #022e63;
}

#nijisanji-main {
  width: 1024px;
  margin: 0 auto;
}


#nijisanjiCnt {
  width: 1024px;
  margin: 0 auto;
  padding-top: 50px;

  background-image: url('/event/nijisanji-spring2026/img/party_bg.png');
  background-attachment: fixed;       /* パララックス効果 */
  background-repeat: no-repeat;
  background-position: top center;    /* 上寄せ＋中央 */
  background-size: auto 1200px;       /* 横幅固定、縦は自動 */
  
  min-height: 100vh;                  /* 高さは画面に合わせる */
}

/* スマホ用：画面幅600px以下 */
@media screen and (max-width: 767px) {
  #nijisanji-main {
    width: 100%;       /* 横幅いっぱい */
    margin: 0 auto;    /* 中央揃え */
  }

  #nijisanji-main img {
    width: 100%;       /* 親幅に合わせる */
    height: auto;      /* 縦横比維持 */
    display: block;    /* 下の余白を消す */
  }

    #nijisanjiCnt {
    width: 100%;                     /* 横幅いっぱい */
    padding-left: 15px;              /* 左右余白 */
    padding-right: 15px;
    box-sizing: border-box;

    background-image: url('/event/nijisanji-spring2026/img/party-sp_bg.png'); /* スマホ用画像 */
    background-attachment: scroll;   /* スマホではfixedは効きづらいのでscrollに変更 */
    background-repeat: no-repeat;
    background-position: top center; 
    background-size: cover;          /* 画面幅にフィット */
    min-height: auto;                /* 高さは画像に合わせて自動 */
    padding-top: 50px;               /* 上余白は必要に応じて調整 */
  }

}

/* ===============================
   全体コンテンツ
================================= */
#nijisanji-contents {
  position: relative;
  margin: 0px 40px;
  padding-top: 40px;

  /* ★ 上だけ余白を調整（ここで高さ調整） */
  padding-top: 380px;
  padding-bottom: 100px;

  background-image: url('/event/nijisanji-spring2026/img/event_bg.png');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;

  box-sizing: border-box;
}

#nijisanji-contents02 {
  position: relative;
  margin: -40px 0px;

  /* ★ 上だけ余白を調整（ここで高さ調整） */
  padding-top: 380px;
  padding-bottom: 100px;

  background-image: url('/event/nijisanji-spring2026/img/coming_bg.png');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;

  box-sizing: border-box;
}

@media screen and (max-width: 767px) {

  /* ===============================
     にじさんじコンテンツ①
  =============================== */
  #nijisanji-contents {
    width: auto;             
    margin: 0px;          
    padding-top: 200px;      
    padding-bottom: 20px;    
    box-sizing: border-box;

    background-image: url('/event/nijisanji-spring2026/img/event-sp_bg.png'); 
    background-repeat: no-repeat;
    background-position: top center; 
    background-size: 100% auto;     /* 横幅100%に固定、縦は比率維持 */
    background-attachment: scroll;
  }

  /* ===============================
     にじさんじコンテンツ②
  =============================== */
  #nijisanji-contents02 {
    width: auto;
    margin-top: -80px;
    padding-top: 200px;
    padding-bottom: 50px;
    box-sizing: border-box;

    background-image: url('/event/nijisanji-spring2026/img/coming-sp_bg.png');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% auto;     /* 横幅100%に固定 */
    background-attachment: scroll;
  }

}


/* ===============================
   開催期間 見出し
================================= */
#nijisanji-contents h3 {
  position: relative;
  display: block;
  width: 300px;
  margin: 0 auto;     /* 中央寄せ */

  font-family: "Hachi Maru Pop", cursive;
  font-size: 32px;
  font-weight: 400;
  color: #ffffff;
  text-align: center;

  padding: 20px 20px;

  /* ★ 少し上に微調整したい場合 */
  top: -300px;
}


/* テープ画像 */
#nijisanji-contents h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 100%;

  background: url('/event/nijisanji-spring2026/img/tape.png') no-repeat center;
  background-size: 100% auto;

  z-index: 1;
}


/* テキストを前面に */
#nijisanji-contents h3 span {
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 767px) {

  /* ===============================
     h3タイトル
  =============================== */
  #nijisanji-contents h3 {
    width: 280px;                 /* 幅を縮小 */
    font-size: 24px;               /* 文字サイズを小さく */
    padding: 18px 56px;             /* 内側の余白も調整 */
    top: -150px;                   /* 上に上げる量をスマホ向けに調整 */
  }

  /* ===============================
     テープ画像 ::before
  =============================== */
  #nijisanji-contents h3::before {
    background-size: 100% auto;   /* 横幅に合わせる */
    height: 100%;                  /* 高さはh3に合わせる */
  }

}

/* ===============================
   日付
================================= */

.nijisanji-day {
  position: relative;
  top: -300px;

  padding: 0 80px;     /* ← 左右に内側40px */
  text-align: center;  /* ← 中のテキスト中央揃え */
}

.day {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 28px;
  font-weight: 600;
  text-align: center;
  margin-top: 40px;
}

.nijisanji-day .guest-01,
.nijisanji-day .guest-02 {
  text-align: left;
  margin-top: 30px;
  font-size: 22px;
  font-weight: 600;
  font-family: "M PLUS Rounded 1c", sans-serif;
}

.nijisanji-day .min {
  font-size: 18px;
  display: inline-block;  /* 改行後の余白調整しやすい */
  margin-top: 6px;
  line-height: 1.6;
}

.star {
  display: block;      /* 中央揃えに必要 */
  width: 40px;        /* 横幅100px */
  margin: 25px auto 30px;   /* 上下20px・左右autoで中央 */
}

.nijisanji-day .gjt {
  position: relative;   /* 相対位置指定を有効にする */
  top: 40px;           /* 上に20px上げる（必要に応じて調整） */
  display: inline-block; /* ブロック扱いにして余白調整しやすく */
}




.nijisanji2026-inc {
  text-align: center;      /* 中央揃え */
  font-weight: 500px;
  font-size: 16px;         /* お好みでサイズ調整 */
  color: #022e63;          /* 色を白に */
  margin: 20px 0;          /* 上下の余白 */
  font-family: "M PLUS Rounded 1c", sans-serif;  /* フォント指定 */
}

@media screen and (max-width: 767px) {

  /* ===============================
     開催日周り
  =============================== */
  .nijisanji-day {
    top: -170px;             /* 上への移動量をスマホ向けに調整 */
    padding: 0 40px;         /* 内側余白を狭める */
    text-align: center;
  }

  /* 日付 */
  .nijisanji-day .day {
    font-size: 20px;         /* 小さめに */
  }

  /* ゲスト情報 */
  .nijisanji-day .guest-01,
  .nijisanji-day .guest-02 {
    font-size: 16px;         /* 小さめに */
    margin-top: 20px;
  }

  /* ゲストの詳細スパン */
  .nijisanji-day .min {
    font-size: 14px;         /* 小さく */
    line-height: 1.4;
    margin-top: 4px;
  }

  .nijisanji-day .gjt {
  position: relative;   /* 相対位置指定を有効にする */
  top: -10px;           /* 上に20px上げる（必要に応じて調整） */
  display: inline-block; /* ブロック扱いにして余白調整しやすく */
}

  /* ===============================
     星アイコン
  =============================== */
  .star {
    width: 25px;             /* 小さめに */
    margin: 15px auto 20px;  /* 上下余白も調整 */
  }

  /* ===============================
     ©表記
  =============================== */
  .nijisanji2026-inc {
    font-size: 14px;         /* 少し小さく */
    margin: 15px 0;
  }

}

