@charset "UTF-8";
.asw-container--positionRelative{
  position: relative;
  container-type: inline-size;
  margin-bottom: 0;
}
.asw-container--timeSale__image{
  width: 100%;
  height: auto;
}
.asw-container--salesContaints{
  position: absolute;
  display: flex;
  gap: 30px;
  bottom: 0;
  top: 50%;
  right: 54cqw;
  transform: translateY(-50%);
  height: fit-content;
  background-color: var(--corporate-color);
}
.asw-container--salesPeriod{
  display:flex;
  padding: 0rem 2rem;
  background: #ffea00;
  border-radius: 2rem;
  white-space: nowrap;
  margin-top: 1rem;
  font-family: "Noto Sans JP", sans-serif;
  color: var(--corporate-color);
}
.asw-container--salesPeriod__title{
  padding-right: 1rem;
  position: relative;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
}
.asw-container--salesPeriod__title:after{
  position: absolute;
  top: 0;
  left: 100%;
  margin: auto;
  bottom: 0;
  content: "";
  width: 1px;
  height: 80%;
  background-color: #333;
}
.asw-container--salesPeriod__term{
  padding-left: 1rem;
  margin-bottom: 0;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
}
.asw-container--salesPeriod__strong{
  /* font-weight: bold; */
  font-size: inherit;
}
.asw-container--remainingTime{
  margin-top: 3rem;
  color: #fff;
}
.asw-container--remainingTime__head{
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 1rem;
}
.asw-container--remainingTime__head .timer_txt {
  font-size: 2.4rem;
line-height: 1.4;
}
.asw-container--remainingTime__body{
  display: flex;
  flex-grow: 1;
  gap: 2px;
  margin-top: 1.6rem;
}
.asw-container--remainingTime__date{
  width: 33%;
  background: #fff;
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
}
.asw-container--remainingTime__date:first-child {
  border-radius: 6px 0 0 6px;
}
.asw-container--remainingTime__date:last-child {
  border-radius: 0 6px 6px 0;
}
.asw-container--remainingTime__strong{
  font-weight: bold;
  font-size: 3rem;
  color: #34438B;
  white-space: nowrap;
  font-family: "Oswald", sans-serif;
}
.asw-container--remainingTime__strong ~ div{
  line-height: 1;
}
.asw-container--remainingTime__vertical{
  writing-mode: vertical-rl;
}
h1.asw-headline__title img {
  width: 100%;
}
/* PC・タブレット：デザイン（国内線MV.png / 幅1400px）基準。1cqw = MV幅の1%（1400px時 = 14px） */
@media screen and (min-width: 768px) {
  .asw-container--salesContaints{
    display: block;
    width: fit-content;
    padding: 32px;
    border-radius: 1.43cqw;
  }
  .asw-container--salesContaints > div{
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .asw-container--timeSale{
    width: 31.29cqw;
  }
  /* 販売期間（黄色ピル）: 高さ40px / 文字14px */
  .asw-container--salesPeriod{
    margin-top: 1.2cqw;
    padding: 0 1.14cqw;
    height: 2.9cqw;
    border-radius: 999px;
    align-items: center;
  }
  .asw-container--salesPeriod__title{
    padding-right: 0.9cqw;
    font-size: min(1cqw, 20px);
  }
  .asw-container--salesPeriod__term{
    padding-left: 0.9cqw;
    margin-bottom: 0;
    font-size: min(1cqw, 20px);
  }
  /* セール終了まであと: 文字14px / アイコン24px */
  .asw-container--remainingTime{
    margin-top: 1.45cqw;
    width: 31.29cqw;
    font-size: 0.95cqw;
  }
  .asw-container--remainingTime__head{
    padding: 0;
    gap: 0.55cqw;
  }
  .asw-container--remainingTime__head .timer img{
    width: 1.7cqw;
    height: auto;
    vertical-align: middle;
  }
  .asw-container--remainingTime__head .timer_txt{
    font-size: 1.3cqw;
    line-height: 1.5;
  }
  /* カウントダウン: 全体幅380px / 高さ65px / 数字38px / 単位13px */
  .asw-container--remainingTime__body{
    margin-top: 1.4cqw;
    gap: 2px;
  }
  .asw-container--remainingTime__date{
    width: auto;
    flex: 1 1 0;
    height: 4.65cqw;
    gap: 0.45cqw;
  }
  .asw-container--remainingTime__date:first-child{
    border-radius: 0.4cqw 0 0 0.4cqw;
  }
  .asw-container--remainingTime__date:last-child{
    border-radius: 0 0.4cqw 0.4cqw 0;
  }
  .asw-container--remainingTime__strong{
    font-size: 2.7cqw;
    line-height: 1;
  }
}
/* SP：デザイン（国内ツアー_MV_SP.png / 幅375px）基準。1cqw = MV幅の1%（375px時 = 3.75px） */
@media screen and (max-width: 767px) {
  .asw-container--salesContaints{
    display: block;
    width: 100cqw;
    height: auto;
    top: 0;
    bottom: auto;
    right: auto;
    transform: translate(0);
    padding: 9.6cqw 8.93cqw;
  }
  .asw-container--salesContaints > div{
    display: flex;
    flex-direction: column;
  }
  /* 販売期間（黄色ピル）: 高さ57px / 文字13px / 日付は2行 */
  .asw-container--salesPeriod{
    margin-top: 5.33cqw;
    padding: 0 4cqw;
    min-height: 15.2cqw;
    border-radius: 999px;
    align-items: center;
  }
  .asw-container--salesPeriod__title{
    padding-right: 4.8cqw;
    font-size: 14px;
  }
  .asw-container--salesPeriod__title:after{
    height: 200%;
  }
  .asw-container--salesPeriod__term{
    flex-direction: column;
    align-items: flex-start;
    padding-left: 4.27cqw;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.5;
    text-align: left;
  }
  /* カウントダウン枠: 幅315px / 高さ100px / 内側余白12px */
  .asw-container--remainingTime{
    margin-top: 6.4cqw;
    border-radius: 2.7cqw;
    font-size: 2.9cqw;
  }
  /* セール終了まであと: 文字16px / アイコン16px */
  .asw-container--remainingTime__head{
    padding: 0;
    gap: 2cqw;
  }
  .asw-container--remainingTime__head .timer img{
    width: 5.87cqw;
    height: auto;
    vertical-align: middle;
  }
  .asw-container--remainingTime__head .timer_txt{
    font-size: 4.3cqw;
    line-height: 1.2;
  }
  /* カウントダウン: 高さ52px / 数字28px / 単位11px */
  .asw-container--remainingTime__body{
    margin-top: 4.27cqw;
    gap: 2px;
  }
  .asw-container--remainingTime__date{
    width: auto;
    flex: 1 1 0;
    height: 13.87cqw;
    padding: 0;
    gap: 1.3cqw;
  }
  .asw-container--remainingTime__date:first-child{
    border-radius: 1cqw 0 0 1cqw;
  }
  .asw-container--remainingTime__date:last-child{
    border-radius: 0 1cqw 1cqw 0;
  }
  .asw-container--remainingTime__strong{
    font-size: 7.5cqw;
    line-height: 1;
  }
}