@charset "UTF-8";
/* ============================================================
   LP.CSS — njpw4th トップLP デザイン（コーダー shared.css + index.css を移植）
   px -> rem 変換済み（100px = 1rem @ design-width 430）。全セレクタは #prores4 でスコープ。
   base.css / custom.css の後に読み込む。編集元: docs/project/assets/njpw4th/coder_codes_and_images/
   ============================================================ */

:root {
  --sp-width: 4.3rem;
  --color-mainText: #000;
  --color-bgColor: #FFF;
  --color-black: #000;
  --color-white: #fff;
  --color-gray: gray;
  --color-ip01: #9BD7F6;
  --color-ip02: #181D61;
  --color-btn: #C0111F;
  --color-btn-02: #B6922F;
  --color-btn-03: #9761C4;
  --color-btn-04: #743694;
  --color-reg: #000;
  --color-reg2:#000;
  --color-reg3:#743694;
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body {
  font-family:"Noto Sans JP", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic",
    "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo",
    "ＭＳ Ｐゴシック", "Arial", "Verdana", "sans-serif";
  font-weight: normal;
  background-color: var(--color-gray);
  margin:0;
}
#prores4 {
  margin-top: 0.66rem;
  color: var(--color-mainText);
  background-color: var(--color-white);
}
#prores4 *, #prores4 *::before, #prores4 *::after {
  box-sizing: border-box;
}
#prores4 table {
  border-collapse:collapse;
  border-spacing:0;
}
#prores4 ul {
  list-style: none;
}
#prores4 .border-line {
  display: flex;
  border: none; 
  width: 100%;
  margin: 0 auto;
  border-bottom: 0.02rem solid #FF9C00;
}
#prores4 .border-line-light-blue {
  display: flex;
  border: none; 
  width: 100%;
  margin: 0 auto;
  border-bottom: 0.02rem solid #7CD1D6;
}
#prores4 .border-indigo {
  display: flex;
  border: none; 
  width: 100%;
  margin: 0.08rem auto 0.01rem;
  border-bottom: 0.01rem solid #00ADBA;
}
#prores4 .border-white {
  border: none; 
  width: 88.9%;
  margin: 0 auto;
  border: 0.01rem solid #fff;
  opacity: 0.5;
}
#prores4 .underline {
  color: blue;
  text-decoration: underline solid blue;
  
  -webkit-text-decoration: underline solid blue;
}
#prores4 .underline-white {
  color: #fff;
  text-decoration: underline solid #fff;
  -webkit-text-decoration: underline solid #fff;
}
#prores4 .underline-black {
  color: #000;
  text-decoration: underline solid #000;
  text-underline-offset: 0.03rem;
  -webkit-text-decoration: underline solid #000;
}
#prores4 .underline-orange {
  color: #e2900e;
  text-decoration: underline solid #e2900e;
  -webkit-text-decoration: underline solid #e2900e;
}
#prores4 .bg-pattern01 {
  background-image: url(../img/bk-image01.webp);
  background-size: 50% auto;
  background-repeat: repeat;
  background-position: 0;
}
#prores4 .bg-pattern02 {
  background-image: url(../img/bk-image02.webp);
  background-size: 50% auto;
  background-repeat: repeat;
  background-position: 0;
}
#prores4 .bg-pattern03 {
  background-image: url(../img/bk-image03.webp);
  background-size: 50% auto;
  background-repeat: repeat;
  background-position: 0;
}
#prores4 .btn {
  display: inline-block;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  color: var(--color-white);
  width: 3.6rem;
  max-width: 100%;
  border-radius: 0;

  text-align: center;
  justify-content: center;
  text-decoration: none;
  
  border: none;  
  outline: none;  
  box-shadow: none;
  padding: 0;        
  margin: 0 auto;
}
#prores4 .btn__wrapper {
  display: flex;  
  justify-content: center; 
}
#prores4 .btn__text {
  display: flex;
  flex: 40; 
  align-items: center;  
  font-size: 0.2rem;
  font-weight: 900;
  letter-spacing: 0.04em;  
  justify-content: center; 
}
#prores4 .btn__left-icon {
  display: flex;
  flex: 19; 
  justify-content: center;
}
#prores4 .btn__right-icon {
  display: flex;
  flex: 12; 
  justify-content: center;
}
#prores4 .btn--shadow {
  box-shadow: 0.04rem 0.04rem 0rem 0rem #000000;
  
  
}
#prores4 .btn__campaign-site {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 0.8rem;
  padding: 0.04rem;
  border-radius: 0.1rem;
  background-color: #fff;
  border: 0.02rem solid var(--color-reg2);
  color: var(--color-reg2);
}
#prores4 .btn__campaign-site > .btn__text {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
#prores4 .btn__normal {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 0.62rem;
  background-color: #B2B2B2;
}
#prores4 .btn__normal .btn__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  opacity: 0.5;
}
#prores4 .btn__normal--on {
  background-color: var(--color-btn);
  opacity: 1;
}
#prores4 .btn__normal--on .btn__text {
  opacity: 1;
}
#prores4 .btn__normal--application {
  width: 4rem;
  height: 0.8rem;
}
#prores4 .btn__1icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 0.8rem;
  background-color: #B2B2B2;
  position: relative;
  border-radius: 0.1rem;
}
#prores4 .btn__1icon::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  margin: auto 0;
  right: 44%;
  width: 100%;
  height: 0.22rem;
  background-image: url(../svg/box.svg);
  transform: translateX(50%);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.5;
}
#prores4 .btn__1icon .btn__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-style: Bold;
  font-size: 0.18rem;
  line-height: 1.66;
  letter-spacing: 0.05em;
  text-align: center;
  margin-left: 0.4rem;
  opacity: 0.5;
}
#prores4 .btn__1icon--box .btn__text {
  line-height: 1.3;
}
#prores4 .btn__1icon--box::before {
  background-image: url(../svg/box.svg);
  height: 0.22rem;
  right: 42%;
  opacity: 0.5;  
}
#prores4 .btn__1icon--on {
  background-color: var(--color-btn);
  
}
#prores4 .btn__1icon--on::before {
  opacity: 1;
}
#prores4 .btn__1icon--on .btn__text {
  color: #fff;
  opacity: 1;
}
#prores4 .btn__2icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 0.8rem;
  background-color: #B2B2B2;
  border-radius: 0;
  position: relative;
}
#prores4 .btn__2icon::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  margin: auto 0;
  right: 44.0%;
  width: 100%;
  height: 0.29rem;
  background-image: url(../svg/speaker.svg);
  transform: translateX(50%);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.5;
}
#prores4 .btn__2icon::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  margin: auto 0;
  left: 35.7%;
  width: 100%;
  height: 0.26rem;
  background-image: url(../svg/arrow-rightSmall.svg);
  transform: translateX(50%);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.5;
}
#prores4 .btn__2icon .btn__text {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.2rem;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  opacity: 0.5;
}
#prores4 .btn__2icon--on {
  background-color: var(--color-btn);
}
#prores4 .btn__2icon--on::before, #prores4 .btn__2icon--on::after {
  opacity: 1;
}
#prores4 .btn__2icon--on .btn__text {
  color: #fff;
  opacity: 1;
}
#prores4 .btn__2icon--meter {
  width: 4rem;
}
#prores4 .btn__2icon.btn__2icon--meter .btn__text {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.2rem;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}
#prores4 .btn__2icon--meter.btn__2icon::before {
  background-image: url(../svg/meter.svg);
  height: 0.185rem;
  right: 44.0%;
}
#prores4 .btn__2icon--meter.btn__2icon::after {
  height: 0.26rem;
  left: 36.7%;
}
#prores4 .btn__2icon--gacya.btn__2icon::before {
  background-image: url(../svg/gacya.svg);
  right: 42.8%;
}
#prores4 .btn__2icon--gacya.btn__2icon--on {
  background-color: var(--color-btn);
  opacity: 1;
}
#prores4 .btn__2icon--gacya.btn__2icon--on {
  background-color: var(--color-btn);
  opacity: 1;
}
#prores4 .btn__2icon--quiz.btn__2icon::before {
  background-image: url(../svg/quiz.svg);
  height: 0.26rem;
  right: 43.8%;
}
#prores4 .btn__2icon--quiz.btn__2icon--on {
  background-color: var(--color-btn);
  opacity: 1;
}
#prores4 .btn__2icon--movie.btn__2icon::before {
  background-image: url(../svg/movie.svg);
  height: 0.22rem;
  right: 42.8%;
}
#prores4 .btn__2icon--movie.btn__2icon--on {
  background-color: var(--color-btn);
  opacity: 1;
}
#prores4 .btn-link-top {
  display: flex;
  align-items: center;
  width: 4rem;
  height: 0.55rem;
  border-radius: 0.1rem;
  background-color: #C5C5C5;
  border: 0.02rem solid #000000;
  position: relative;
}
#prores4 .btn-link-top > .btn__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.2rem;
  line-height: 0.3rem;
  letter-spacing: 0.05em;
  text-align: center;
}
#prores4 .btn-link-top--on {
  background-color: #fff;
}
#prores4 .btn-link-top--on > .btn__text {
  color: #000;
}
#prores4.page-content {
  width: var(--sp-width);
  max-width: 4.3rem;
  padding-top: 0.55rem;
  min-height: calc(100vh - 1.5rem);
  margin: auto;
  display: block;
  overflow: hidden;
  background-color: var(--color-bgColor);
  background-image: 100%;
}
#prores4 .warning {
  width: 100%;
  margin: 0 auto;
}
#prores4 .warning-list {
  margin: 0;
  padding: 0;
}
#prores4 .warning-list__item {
  position: relative;

  font-family: Noto Sans JP;
  font-weight: 400;
  font-size: 0.12rem;
  line-height: 1.66;
  letter-spacing: 0.05em;

  padding-left: 1.2em; 
  padding-right: 0; 
  text-align: justify;
}
#prores4 .warning-list__item::before {
  content: "※";
  position: absolute;
  left: 0.2em; 
}
#prores4 .warning-list__item > span {
 color: #FF0004; 
}
#prores4 .warning-list__item:has(> span)::before {
  color: #FF0004;
}
#prores4 .warning-list__item:first-child {
  padding-top: 0em;
}
#prores4 .warning-list__item:last-child {
  padding-bottom: 0;
}
#prores4 .registration--off {
  display: none;
}
#prores4 .registration {
  padding-top: 0.2rem;
  padding-bottom: 0.1rem;
}
#prores4 .registration__inner {
  margin: 0 auto;
}
#prores4 .registration__list {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
#prores4 .btn-registration {
  color: #fff;
  border-radius: 0.1rem;
  background: var(--color-reg);
  width: 100%;
}
#prores4 .btn-login {
  color: #fff;
  border-radius: 0.1rem;
  background: var(--color-reg);
  width: 100%;
}
#prores4 .btn-registration__icon-left {
  flex: 2.7;
  display: flex;
  align-items: center;
  justify-content: center;
}
#prores4 .btn-registration__text {
  flex: 8;
  margin: 0.2rem auto;

  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.2rem;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  margin-left: 0.24rem;
}
#prores4 .btn-registration__icon-right {
    flex:1;
}
#prores4 .btn__registration-icon-size {
  height: auto;
}
#prores4 .btn-login__icon-left {
  flex: 7;
  display: flex;
  align-items: center;
  justify-content: center;
}
#prores4 .btn-login__text {
  flex:20;
  margin: 0.2rem auto;

  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.2rem;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  margin-left: 0.24rem;
}
#prores4 .btn-login__icon-right {
    flex:3;
}
#prores4 .btn__login-icon-size {
  width: 0.18rem;
  height: auto;
}
#prores4 .warning-content {
  padding: 0.05rem 0 0.31rem;
  margin: 0 auto;
  transition: 0.5s;
}
#prores4 .toggleWarning {
  cursor: pointer;
  position: relative;
}
#prores4 .toggleWarning__title {
  font-family: Noto Sans JP;
  color: var(--color-black);  
  text-indent: -3em;
  font-size: 0.16rem;
  font-weight: bold;
  text-align: center;
  padding: 0.09rem 0 0 0;
  margin: 0rem;
}
#prores4 .display-none {
  display: none;
}
#prores4 .underline--ip {
  color: #000;
  text-decoration: underline solid #000;
  
  -webkit-text-decoration: underline solid #000;  
}
#prores4 .wrapper-400 {
  width: 4rem;
  margin: 0 auto;
}
#prores4 .content-top {
  padding-bottom: 0.39rem;
}
#prores4 .content {
  padding: 0.4rem 0;
}
#prores4 .content__wrapper, #prores4 .event__inner {
  margin: 0 auto;
}
#prores4 .main-Visual {
  margin: 0 auto;
}
#prores4 .visual__image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  margin: 0;
}
#prores4 .registration {
  margin-top: 0;
  margin-bottom: -0.15rem;
}
#prores4 .warning.registration-warning {
  padding: 0 0 0.16rem;
}
#prores4 .campaign-site-link {
  padding-top: 0.2rem;
}
#prores4 .warning-site-link {
  padding: 0.15rem 0 0.26rem;
}
#prores4 .ride-content {
}
#prores4 .event-heading {
  display: block;
  height: 1.53rem;
}
#prores4 .event-heading > span {
  display: block;  
  background-image: url(../img/title-image-h2.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: 0% 0%;
}
#prores4 .event-heading__title {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.29rem;
  line-height: 1.345;
  letter-spacing: 0.03em;
  text-align: center;
  color: #fff;
  padding: 0.15rem 0 0.06rem;
}
#prores4 .description-shinkansen--img {
  display: block;
  width: 98.5%;
  margin-right: 0;
  margin-left: auto;
  padding-top: 0.01rem;
}
#prores4 .boarding-confirmation {
  padding: 0.36rem 0 0;
}
#prores4 .warning-list.warning-boarding-confirmation {
  padding: 0.05rem 0 0;
}
#prores4 .title3-1-1 {
  padding: 0.36rem 0 0.14rem;
  width: 3.7636rem;
  margin: 0 auto;
}
#prores4 .title-image {
  display: block;
  width: 100%;
}
#prores4 .benefits__wrapper {
  width: 4rem;
  background-color: #FFFFFFCC;
  margin: 0 auto;
  padding: 0.2rem 0;
}
#prores4 .benefits__title {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.15rem;
  line-height: 1.666;
  letter-spacing: 0.05em;
  text-align: center;
}
#prores4 .period {
  padding: 0.19rem 0;
}
#prores4 .period__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.16rem;
  line-height: 1.5625;
  letter-spacing: 0.05em;
  text-align: center;
  width: 2.485rem;
  margin: 0 auto;
  border-top: 0.01rem solid #000000;
  border-bottom: 0.01rem solid #000000;
  padding: 0.045rem 0;
}
#prores4 .ticket-board {
  width: 3.6rem;
  height: 2.2rem;
  margin: 0 auto;
}
#prores4 .ticket-board__title {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.17rem;
  line-height: 1.47;
  letter-spacing: 0.05em;
  text-align: center;
  color: #FFF;
  padding: 0.155rem 0 0.11rem;
}
#prores4 .tickets__wrapper {
  display: flex;
  justify-content: center;
  text-align: center;
  padding-bottom: 0.26rem;
}
#prores4 .tickets__text {
  display: flex;
  height: 0.6rem;
  width: 0.85rem;
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.15rem;
  line-height: 1.666;
  letter-spacing: 0.05em;
  color: #fff;
  align-items: center;
  justify-content: center;
  background-image: url(../img/ticket-white.webp);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: 0;
  margin: 0 0.05rem;
}
#prores4 .ticket--gray {
  background-image: url(../img/ticket-gray.webp);
}
#prores4 .ticket--red {
  background-image: url(../img/ticket-red.webp);
}
#prores4 .btn__normal--mini {
  height: 0.56rem;
  width: 3.03rem;
}
#prores4 .btn__normal--mini > .btn__text {
  font-weight: 900;
}
#prores4 .board {
  margin: 0 auto;
  color: #000;
  padding: 0.21rem 0 0.2rem;
  width: 3.6rem;
}
#prores4 table {
  text-align: center;
  border: 0.01rem solid #000;
  width: 100%;
}
#prores4 th {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.2rem;
  line-height: 1.25;
  letter-spacing: 0.05em;
  text-align: center;
  border-bottom: 0.01rem solid #000;
  padding: 0.1rem;
}
#prores4 tbody .line1-img {
  width: 15.26%;
  padding-top: 0.1rem;
}
#prores4 tbody .line2 {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.2rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-align: center;
  padding-top: 0.11rem;
}
#prores4 tbody .line3, #prores4 .line4, #prores4 .line5 {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.18rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-align: center;
  padding-top: 0.04rem;
}
#prores4 .line5 { 
  line-height: 1.4;
  padding: 0;
}
#prores4 tfoot td {
  font-family: Noto Sans JP;
  font-weight: 400;
  font-size: 0.12rem;
  line-height: 1.666;
  letter-spacing: 0;
  padding: 0.12rem 0 0.1rem;
}
#prores4 tfoot td {
  text-indent: -1.5em;
  padding-left: 1.5em;
  padding-right: 1.5em;
  text-align:justify;
}
#prores4 .warning-list.warning-exchange {
  width: 3.6rem;
  margin: 0 auto;
}
#prores4 .warning-list.warning-riding-benefits .warning-list__item {
  font-family: Noto Sans JP;
  font-weight: 350;
  font-size: 0.11rem;
  line-height: 1.818;
  letter-spacing: 0.05em;
  color: #000;
}
#prores4 .warning-list__item--blue {
  color: #0D00FF;
}
#prores4 .title3-1-2 {
  padding: 0.31rem 0 0.13rem;
  width: 3.7636rem;
  margin: 0 auto;
}
#prores4 .application__title {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.2rem;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  padding-top: 0.02rem;
}
#prores4 .buttons {
  display: flex;
  flex-wrap: wrap;
  width: 3.6rem;
  gap: 0.2rem;
  padding: 0.23rem 0 0.2rem;
  margin: 0 auto;
}
#prores4 .new-japan {
  padding-bottom: 0.4rem;
}
#prores4 .block {
  padding: 0.4rem 0 0;
}
#prores4 .visual-lead__text {
  display: flex;
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.2rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  text-align: center;
  color: #fff;
  text-align: center;
  justify-content: center;
  align-items: center;
  height: 1.45rem;
}
#prores4 .title-image-h3-2-1 {
  display: block;
  height: 1.12rem;
  margin: 0 auto 0.1rem;
}
#prores4 .block__wrapper {
  width: 4rem;
  background-color: #FFFFFFCC;
  margin: 0 auto;
  padding: 0.2rem 0;
}
#prores4 .title-image-h3-2-2 {
  display: block;
  height: 0.89rem;
  margin: 0 auto 0.03rem;
}
#prores4 .benefits__note {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.19rem;
  line-height: 1.3157;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 0.19rem 0 0;
  margin-bottom: -0.12rem;
}
#prores4 .title-image-h3-2-3 {
  display: block;
  height: 1.24rem;
  margin: 0 auto 0.05rem;
}
#prores4 .stardom {
  padding-bottom: 0.5rem;
}
#prores4 .stardom .block {
    padding: 0.3rem 0 0;
}
#prores4 .stardom .visual-lead__text {
  background-color: #E94F97;
  margin-bottom: -0.2rem;
}
#prores4 .title-image-h3-3-1 {
  display: block;
  height: 1.65rem;
  margin: 0 auto 0.15rem;
}
#prores4 .title-image-h3-3-2 {
  display: block;
  height: 1.65rem;
  margin: 0 auto -0.1rem;
}
#prores4 .title-image-h3-3-3 {
  display: block;
  height: 1.65rem;
  margin: 0 auto 0.15rem;
}
#prores4 .btn__2icon--meter.btn__2icon--on .btn__text--Confirmed {
  display: none;
}
#prores4 .btn__2icon--meter.btn__2icon--on .btn__text--Before {
  display: block;
}
#prores4 .btn__2icon--meter::before, #prores4 .btn__2icon--meter::after {
  opacity: 1;
}
#prores4 .btn__2icon--meter .btn__text--Before {
  display: none;
}
#prores4 .btn__2icon--meter .btn__text--Confirmed {
  display: block;
  opacity: 1;
}
