@charset "UTF-8";

.content-top {
  padding-bottom: 39px;
}

.content {
  padding-bottom: 51px;
}

.content__wrapper, 
.event__inner {
  margin: 0 auto;
}

.inner-372 {
  width: 95.17%;
  border: 1px solid #000000;
  border-radius: 10px;
  margin: 0 auto;
}

.inner-360 {
  width: 91.61%;
  margin: 0 auto;
}

.inner-326 {
  width: 91.58%;
  margin: 0 auto;
}

/* section class="main-visual"
----------------------------------------------- */
.main-Visual {
  margin: 0 auto;
}

.visual__image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  margin: 0;
}

.visual-lead__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.3125rem; /*21px*/
  line-height: 1.42;
  letter-spacing: 0;
  text-align: center;
  padding: 21px 0 31px;
}

/*-------------------------
  認証ボタン表示 (未認証時表示)
-------------------------*/
/*認証ボタン非表示　スペース調整*/
.registration {
  margin-top: -9px;
}

.registration-warning {
  padding-bottom: 23px;
}

/*-------------------------
  キャンペーンサイト一覧はこちら
-------------------------*/
.warning-site-link {
  padding: 21px 0 47px;
}

/*-------------------------
東海道新幹線車内限定
オリジナルボイス
-------------------------*/
.voice-heading {
  background-color: var(--color-ip01);
  padding: 20px 0 35px;
  position: relative;
}

.voice-heading__title {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.625rem; /*26px*/
  line-height: 1.23;
  letter-spacing: 0.02em;
  color: #FFF;
  text-align: center;
}

.description-shinkansen--img {
  display: block;
  width: 99%;
  margin-left: auto;
  position: absolute;
  top: 92px;
  left: 4px;
}

.decoration-title__wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 66px;
}

.decoration__title {
  display: flex;
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.25rem; /*20px*/
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--color-ip02);
  background-color: #FFE9E7;  
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  border: 1px solid #FF5B77;
  padding: 9px 18px;
}

.description__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.0625rem; /*17px*/
  line-height: 1.47;
  letter-spacing: 5%;
  text-align: center;
  padding: 12px 0 11px;
}

.warning-voice {
  width: 100%;
  padding: 10px 0 32px;
}

/*推し旅出張版ラジオ*/
.radio .decoration-title__wrapper {
    margin-top: 29px;
}

.radio .description__text {
  padding: 11px 0 14px;
}

.radio .board {
  background-color: #FFF;
  border: 1px solid #444444;
  border-radius: 10px;
}

.board__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.06rem; /*17px*/
  line-height: 1.29;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--color-ip02);
  padding: 10px 0 4px;
}

.board__note {
  font-family: Noto Sans JP;
  font-weight: 400;
  font-size: 0.75rem; /*12px*/
  line-height: 1.66;
  letter-spacing: 0.05em;
  text-align: center;
  padding-bottom: 9px;
}

/*ドラマ*/
.drama-heading__wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 29px;
}

.drama-heading__title {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1rem; /*16px*/
  line-height: 1.25;
  letter-spacing: 0.05rem;
  text-align: center;
  color: #3CB371;
  background-color: #E7FFF2;  
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  border: 1px solid #3CB371;
  padding: 9px 18px;
}

.drama__title {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.125rem; /*18px*/
  line-height: 1.1;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 7px 0 10px;
}

.drama__note {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.8125rem; /*13px*/
  line-height: 1.53;
  letter-spacing: 0.05em;
  text-align: center;
  padding-bottom: 9px;
}

.warning-drama {
  padding-top: 13px;
}

/*
オリジナルノベルティ
--------------------*/
.outer-frame {
  border: 2px solid var(--color-ip02);
  border-radius: 10px;
  background-color: #fff;
  padding-bottom: 15px;
}

.content.novelty {
  padding-bottom: 19px;
}

.content__title {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 1.25rem; /*20px*/
  line-height: 30px;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--color-ip02);
  padding: 20px 0 14px;
}

.content__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.06rem; /*17px*/
  line-height: 1.47;
  letter-spacing: 0.05em;
  text-align: center;
}
 
/*ノベリティーイメージ*/
.item .card {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 25px 0 24px;
  margin: 0;
}
.item .card li {
  text-align: center;
  display: flex;
}

.item .card__img {
  width: 100%;
  aspect-ratio: 329 / 70;
  object-fit: cover;
}

.item__note {
  font-family: Noto Sans JP;
  font-weight: 400;
  font-size: 0.9375rem; /*15px*/
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}

.novelty-board {
  display: block;
  border: 1px solid var(--color-ip02);
  margin-top: 22px;
  background-color: #fff;
}

.novelty-board__name {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 1.25rem; /*20px*/
  line-height: 1.25px;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--color-ip02);
  padding: 21px 0;
  border-bottom: 1px solid var(--color-ip02);
}

.novelty-board__shop-name {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.25rem; /*20px*/
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-align: center;
  padding: 13px 0 10px;
}

.place__wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}

.novelty-board__place {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1rem; /*16px*/
  line-height: 1.25;
  letter-spacing: 0.05em;
  text-align: center;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  border: 1px solid #000;
  padding: 4px 18px;
}

.novelty-board__shop-place {
font-family: Noto Sans JP;
font-weight: 500;
font-size: 1.125rem; /*18px*/
line-height: 1.5;
letter-spacing: 0.06em;
text-align: center;
padding: 8px 0 0;
}

.novelty-board__business-hours {
  font-family: Noto Sans JP;
  font-weight: 500;
  font-size: 0.9375rem; /*15px*/
  line-height: 1.533;
  letter-spacing: 0.06em;
  text-align: center;
}

.novelty-board__last-entry-time {
  font-family: Noto Sans JP;
  font-weight: 500;
  font-size: 0.9375rem; /*15px*/
  line-height: 1.533;
  letter-spacing: 0.06;
  text-align: center;
}

.novelty-board__note {
  font-family: Noto Sans JP;
  font-weight: 350;
  font-size: 0.687rem; /*11px*/
  line-height: 1.818;
  letter-spacing: 0.05em;
  padding: 21px 0 14px 1em;
}

.place__wrapper--aichi {
  padding-top: 8px;
}

.place__wrapper--oosaka {
  padding-top: 24px;
}

.btn-list {
  padding: 20px 0 4px;
}

.date-of-expiry {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.9375rem; /*15px*/
  line-height: 1.66;
  letter-spacing: 0.05;
  text-align: center;
  padding-top: 6px;
}

.date-of-expiry {
  display: none;
}

.btn-list:has(.btn__normal--on) .date-of-expiry {
  display: block;
}

.novelty-warning {
  width: 100%;
}

.novelty-warning .warning-list__item {
  font-family: Noto Sans JP;
  font-weight: 350;
  font-size: 0.6875rem; /*11px*/
  line-height: 1.81;
  letter-spacing: 0.05em;
}

/*
抽選でサイン色紙があたる
----------------------------*/
.sign-name {
  padding: 19px 0 16px;
}

.sign-name__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 0.9375rem; /*15px*/
  line-height: 1.38;
  letter-spacing: 0.05em;
  text-align: center;
}

.sign-name-note {
  font-family: Noto Sans JP;
  font-weight: 400;
  font-size: 0.75rem; /*12px*/
  line-height: 1.66;
  letter-spacing: 0.05em;
  text-align: center;
  padding-bottom: 20px;
}

/*-------------------------
スタンプ獲得情報
-------------------------*/
.stamp-cards {    
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7%;
  padding: 35px 5% 9px;
  margin: 0 auto;
}

.stamp-cards > .li__lower-left, 
.stamp-cards > .li__lower-right {
  width: calc((100% - 25%) / 2);
  list-style: none;
}

.stamp-cards > .li__lower-left {
  margin-right: 0;
  margin-left: auto;
}

.stamp-cards > .li__lower-right {
  margin-right: auto;
  margin-left: 0;
}

.card__img {
  width: 100%;
  aspect-ratio: 85 / 85;
  object-fit: cover;
}

.stamp-cards > .li__lower-left > .card__img, 
.stamp-cards > .li__lower-right >.card__img{
  width: 92.5%;
}

.sign-colored-paper__note {
  font-family: Noto Sans JP;
  font-weight: 900;
  font-size: 0.9375rem; /*15px*/
  line-height: 1.33;
  letter-spacing: 0.05em;
  text-align: center;
  padding-bottom: 28px;
}

.btn-lists {
  display: flex;
  flex-direction: column;
  gap: 19px;
}

.sign-colored-paper-warning {
  padding-top: 27px;
}

.sign-colored-paper-warning .warning-list__item {
  font-family: Noto Sans JP;
  font-weight: 350;
  font-size: 0.6875rem; /*11px*/
  line-height: 1.81;
  letter-spacing: 0.05em;
}

/*-------------------------
現地限定ウェルカムボイス
-------------------------*/
.welcome .voice-heading {
  padding: 20px 0 25px;
}

.welcome .description__text {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.25rem; /*20px*/
  line-height: 1.45;
  letter-spacing: 0.05;
  text-align: center;
  padding: 21px 0 15px;
}

.welcome .content__title {
  font-family: Noto Sans JP;
  font-weight: 700;
  font-size: 1.375rem; /*22px*/
  line-height: 1.36;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 20px 0 8px;
}

.welcome-voice .warning-list__item {
  font-family: Noto Sans JP;
  font-weight: 350;
  font-size: 0.6875rem; /*11px*/
  line-height: 1.81;
  letter-spacing: 0.05em;
  padding-top: 8px;
}





