@charset "UTF-8";
/*
* calendar.css
*
*/
/* --------------------------------
  カレンダーページ
-------------------------------- */
.l-page#calendar .kv_img {
  overflow: hidden;
  border-radius: 2rem;
  width: 100%;
}
.l-page#calendar .pageTitle {
  margin-top: 3rem;
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .l-page#calendar .pageTitle {
    margin-top: 2.25rem;
  }
}
.l-page#calendar .anchorBlock {
  margin-top: 2rem;
  padding: 1.5rem 1.75rem 2rem;
  border-radius: 2rem;
  background-color: var(--orbis-calendar-theme-bg-color-default);
}
@media (min-width: 768px) {
  .l-page#calendar .anchorBlock {
    padding: 2rem 2rem;
  }
}
.l-page#calendar .anchorBlock__title {
  text-align: center;
  font-family: optima-lt-pro, sans-serif;
  font-size: 1.75rem;
}
@media (min-width: 768px) {
  .l-page#calendar .anchorBlock__title {
    font-size: 2.125rem;
  }
}
.l-page#calendar .anchorBlock__title::before,
.l-page#calendar .anchorBlock__title::after {
  content: "";
  display: block;

  inline-size: 0;
  block-size: 1px;
}
.l-page#calendar .anchorBlock__title::before {
  -webkit-margin-after: calc((1 - 1.5) * 0.5em);
          margin-block-end: calc((1 - 1.5) * 0.5em);
}
.l-page#calendar .anchorBlock__title::after {
  -webkit-margin-before: calc((1 - 1.5) * 0.5em);
          margin-block-start: calc((1 - 1.5) * 0.5em);
}
@media (min-width: 768px) {
  .l-page#calendar .anchorList {
    margin-top: 0.5rem;
  }
}
.l-page#calendar .anchor {
  display: block;
  border: none;
  font-size: 0.875rem;
  font-weight: 400;

  --_icon-size: 1.1875rem;
}
@media (min-width: 768px) {
  .l-page#calendar .anchor {
    --_icon-size: 1.375rem;
  }
}
.l-page#calendar .anchor > a {
  display: grid;
  align-items: center;
  position: relative;
  padding: 0.5rem 0.25rem 0.75rem;
  width: 100%;
  text-decoration: none;

  grid-template: ". icon"/1fr var(--_icon-size);
}
@media (min-width: 768px) {
  .l-page#calendar .anchor > a {
    padding: 1rem 0.25rem;
  }
}
.l-page#calendar .anchor:not(:last-of-type) > a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 0.0625rem;
  background-color: var(--orbis-calendar-theme-bg-color-darker);
}
.l-page#calendar .anchor__text {
  text-align: left;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
}
.l-page#calendar .anchor__icon {
  --_icon-size: 1.1875rem;
}
@media (min-width: 768px) {
  .l-page#calendar .anchor__icon {
    --_icon-size: 1.375rem;
  }
}
.l-page#calendar .anchor__icon::before {
  content: "";
  display: grid;
  margin-top: 0.0625rem;
  margin-left: 0.0625rem;
  width: 0.625rem;
  height: 0.375rem;
  background-image: url(/contents/feature/images/calendar/icon_arrow_anchor.svg);

  grid-area: 1/-1;
  place-content: center;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 100% auto;
          mask-size: 100% auto;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.l-page#calendar .renewalInfo {
  margin-top: 2rem;
}
.l-page#calendar .renewalInfo__remarks {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  color: var(--orbis-calendar-theme-bg-color-emphasis);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
}
.l-page#calendar .renewalInfo__remarksText {
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  text-align: center;
  font-weight: 700;
}
.l-page#calendar .renewalInfo__remarksIcon {
  display: block;
  position: relative;
  width: 1.0625rem;
  height: 2.1875rem;
}
.l-page#calendar .renewalInfo__remarksIcon::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 999px;
  width: 2.4318845573rem;
  height: 0.0625rem;
  background-color: currentColor;

  translate: -50% -50%;
}
.l-page#calendar .renewalInfo__remarksIcon.renewalInfo__remarksIcon--before {
  -webkit-margin-end: 0.5rem;
          margin-inline-end: 0.5rem;
}
.l-page#calendar .renewalInfo__remarksIcon.renewalInfo__remarksIcon--before::before {
  rotate: 62deg;
}
.l-page#calendar .renewalInfo__remarksIcon.renewalInfo__remarksIcon--after {
  -webkit-margin-start: 0.5rem;
          margin-inline-start: 0.5rem;
}
.l-page#calendar .renewalInfo__remarksIcon.renewalInfo__remarksIcon--after::before {
  rotate: -62deg;
}
.l-page#calendar .renewalInfo__title {
  margin-top: 1rem;
  text-align: center;
  color: var(--orbis-calendar-theme-bg-color-emphasis);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
}
.l-page#calendar .renewalInfo__text {
  margin-top: 1.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}
.l-page#calendar .calendar {
  margin-top: 5rem;
}
.l-page#calendar .calendar__calendarImg {
  overflow: hidden;
  border-radius: 2rem;
}
.l-page#calendar .calendar__cont {
  margin-top: 1.5rem;
}
.l-page#calendar .calendar__text {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 1rem;

  gap: 0.0625rem;
}
.l-page#calendar .calendar__textIcon {
  position: relative;
  top: -0.1875rem;
  width: 1.75rem;
  height: 2.5625rem;
}
.l-page#calendar .calendar__textIcon img {
  width: 100%;
}
.l-page#calendar .calendar__contInner {
  position: relative;
  margin-top: 1rem;
}
.l-page#calendar .calendar__square {
  display: grid;
  position: absolute;
  width: min(11.7333333333vw, 89.9946666667px);
  height: min(26.6666666667vw, 204.5333333333px);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="1"]) {
  left: calc(min(2.6666666667vw, 20.4533333333px) + min(13.7333333333vw, 105.3346666667px) * 0);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="2"]) {
  left: calc(min(2.6666666667vw, 20.4533333333px) + min(13.7333333333vw, 105.3346666667px) * 1);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="3"]) {
  left: calc(min(2.6666666667vw, 20.4533333333px) + min(13.7333333333vw, 105.3346666667px) * 2);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="4"]) {
  left: calc(min(2.6666666667vw, 20.4533333333px) + min(13.7333333333vw, 105.3346666667px) * 3);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="5"]) {
  left: calc(min(2.6666666667vw, 20.4533333333px) + min(13.7333333333vw, 105.3346666667px) * 4);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="6"]) {
  left: calc(min(2.6666666667vw, 20.4533333333px) + min(13.7333333333vw, 105.3346666667px) * 5);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="7"]) {
  left: calc(min(2.6666666667vw, 20.4533333333px) + min(13.7333333333vw, 105.3346666667px) * 6);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="1"]) {
  top: calc(min(30.9333333333vw, 237.2586666667px) + min(28.5333333333vw, 218.8506666667px) * 0);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="2"]) {
  top: calc(min(30.9333333333vw, 237.2586666667px) + min(28.5333333333vw, 218.8506666667px) * 1);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="3"]) {
  top: calc(min(30.9333333333vw, 237.2586666667px) + min(28.5333333333vw, 218.8506666667px) * 2);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="4"]) {
  top: calc(min(30.9333333333vw, 237.2586666667px) + min(28.5333333333vw, 218.8506666667px) * 3);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="5"]) {
  top: calc(min(30.9333333333vw, 237.2586666667px) + min(28.5333333333vw, 218.8506666667px) * 4);
}
.l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="6"]) {
  top: calc(min(30.9333333333vw, 237.2586666667px) + min(28.5333333333vw, 218.8506666667px) * 5);
}
@media (min-width: 768px) {
  .l-page#calendar .calendar__square {
    width: 50px;
    height: 110px;
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="1"]) {
    left: calc(10px + 56px * 0);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="2"]) {
    left: calc(10px + 56px * 1);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="3"]) {
    left: calc(10px + 56px * 2);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="4"]) {
    left: calc(10px + 56px * 3);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="5"]) {
    left: calc(10px + 56px * 4);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="6"]) {
    left: calc(10px + 56px * 5);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-col="7"]) {
    left: calc(10px + 56px * 6);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="1"]) {
    top: calc(126px + 118px * 0);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="2"]) {
    top: calc(126px + 118px * 1);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="3"]) {
    top: calc(126px + 118px * 2);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="4"]) {
    top: calc(126px + 118px * 3);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="5"]) {
    top: calc(126px + 118px * 4);
  }
  .l-page#calendar .calendar__square:has(.calendar__trigger[data-calendar-square-row="6"]) {
    top: calc(126px + 118px * 5);
  }
}
.l-page#calendar .calendar__trigger {
  width: min(11.7333333333vw, 89.9946666667px);
  cursor: pointer;
  transition: background-color 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), filter 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  background-color: rgba(255, 255, 255, 0);

  grid-area: 1/-1;
  margin-block: auto;
}
@media (min-width: 768px) {
  .l-page#calendar .calendar__trigger {
    width: 50px;
  }
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=lg] {
  z-index: 2;
  margin-top: min(10.6666666667vw, 81.8133333333px);
  height: min(10.6666666667vw, 81.8133333333px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=md] {
  margin-top: min(10.6666666667vw, 81.8133333333px);
  height: min(10.6666666667vw, 81.8133333333px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=md][data-calendar-sticker-position=top] {
  z-index: 1;
  margin-top: min(4.2666666667vw, 32.7253333333px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=md][data-calendar-sticker-position=bottom] {
  margin-top: min(16vw, 122.72px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event] {
  height: min(5.3333333333vw, 40.9066666667px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-position=top],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-position=top] {
  z-index: 2;
  margin-top: min(5.8666666667vw, 44.9973333333px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-position=center],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-position=center] {
  z-index: 1;
  margin-top: min(12.5333333333vw, 96.1306666667px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-position=bottom],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-position=bottom] {
  margin-top: min(20.2666666667vw, 155.4453333333px);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="1"],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="1"] {
  width: calc(min(11.7333333333vw, 89.9946666667px) + min(13.7333333333vw, 105.3346666667px) * 0);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="2"],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="2"] {
  width: calc(min(11.7333333333vw, 89.9946666667px) + min(13.7333333333vw, 105.3346666667px) * 1);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="3"],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="3"] {
  width: calc(min(11.7333333333vw, 89.9946666667px) + min(13.7333333333vw, 105.3346666667px) * 2);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="4"],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="4"] {
  width: calc(min(11.7333333333vw, 89.9946666667px) + min(13.7333333333vw, 105.3346666667px) * 3);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="5"],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="5"] {
  width: calc(min(11.7333333333vw, 89.9946666667px) + min(13.7333333333vw, 105.3346666667px) * 4);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="6"],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="6"] {
  width: calc(min(11.7333333333vw, 89.9946666667px) + min(13.7333333333vw, 105.3346666667px) * 5);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="7"],
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="7"] {
  width: calc(min(11.7333333333vw, 89.9946666667px) + min(13.7333333333vw, 105.3346666667px) * 6);
}
.l-page#calendar .calendar__trigger[data-calendar-sticker-type=event] {
  z-index: 3;
}
@media (min-width: 768px) {
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=lg] {
    z-index: 2;
    height: 46px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=md] {
    margin-top: 20px;
    height: 46px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=md][data-calendar-sticker-position=top] {
    z-index: 1;
    margin-top: 19px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=md][data-calendar-sticker-position=bottom] {
    margin-top: 63px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event] {
    height: 23px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-position=top],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-position=top] {
    margin-top: 22px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-position=center],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-position=center] {
    margin-top: 50px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-position=bottom],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-position=bottom] {
    margin-top: 80px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="1"],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="1"] {
    width: 50px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="2"],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="2"] {
    width: 106px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="3"],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="3"] {
    width: 162px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="4"],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="4"] {
    width: 218px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="5"],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="5"] {
    width: 274px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="6"],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="6"] {
    width: 330px;
  }
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=sm][data-calendar-sticker-period="7"],
  .l-page#calendar .calendar__trigger[data-calendar-sticker-type=event][data-calendar-sticker-period="7"] {
    width: 386px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-page#calendar .calendar__trigger:where(:-webkit-any-link, :enabled, summary):hover {
    -webkit-transition: background-color 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75), filter 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
    transition: background-color 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75), filter 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
    background-color: rgba(255, 255, 255, 0.35);

    filter: blur(3px);
  }
  .l-page#calendar .calendar__trigger:where(:-moz-any-link, :enabled, summary):hover {
    -moz-transition: background-color 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75), filter 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
    transition: background-color 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75), filter 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
    background-color: rgba(255, 255, 255, 0.35);

    filter: blur(3px);
  }
  .l-page#calendar .calendar__trigger:where(:any-link, :enabled, summary):hover {
    transition: background-color 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75), filter 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
    background-color: rgba(255, 255, 255, 0.35);

    filter: blur(3px);
  }
}
@media (hover: none) and (any-pointer: coarse) {
  .l-page#calendar .calendar__trigger.is-touched {
    transition: background-color 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75), filter 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
    background-color: rgba(255, 255, 255, 0.35);

    filter: blur(3px);
  }
}
.l-page#calendar .product__timeTag {
  margin-top: 1.5rem;
  text-align: center;
}
.l-page#calendar .product__cont {
  padding-top: 2.5rem;
}
.l-page#calendar .product__cont + .product__cont {
  padding-top: 3.75rem;
}
.l-page#calendar .product__contImg {
  overflow: hidden;
  margin-top: 1rem;
  border-radius: 2rem;
  width: 100%;
}
.l-page#calendar .product__contInner {
  margin-top: 1rem;
}
.l-page#calendar .product__contName {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
}
.l-page#calendar .product__name {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}
.l-page#calendar .product__price {
  margin-top: 0.125rem;
  font-size: 1rem;
  font-weight: 400;
}
.l-page#calendar .product__text {
  font-size: 1rem;
  line-height: 1.6;
}
.l-page#calendar .product__text + .product__text {
  margin-top: 1em;
}
.l-page#calendar .product__text b {
  font-weight: 700;
}
.l-page#calendar .product__contBody {
  margin-top: 0.75rem;
}
.l-page#calendar .product__toggleBoxCont {
  transition: height 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.l-page#calendar .product__toggleBoxCont p {
  font-size: 0.875rem;
  font-weight: 400;
}
.l-page#calendar .product__toggleBoxCont.is-open {
  height: auto;
}
.l-page#calendar .product__toggleBoxBtn {
  display: grid;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-top: 1rem;
  padding: 1rem 0;
  width: 100%;
  transition: opacity 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
  text-decoration: none;

  --_icon-size: 1.75rem;
  --before-display: block;
  grid-template: ". icon"/max-content var(--_icon-size);
  gap: 0.5rem;
}
.l-page#calendar .product__toggleBoxBtn::before {
  content: "";
  display: var(--before-display, block);
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 7.5rem;
  background: linear-gradient(to top, var(--orbis-calendar-theme-bg-color-default) 0%, var(--orbis-calendar-theme-bg-color-default) 60%, rgba(255, 255, 255, 0) 100%);
  pointer-events: none;
}
.l-page#calendar .product__toggleBoxBtn::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  width: 100%;
  height: 0.0625rem;
  background-color: #fff;
}
.l-page#calendar .product__toggleBoxBtn.is-open::before {
  opacity: 0;
}
.l-page#calendar .product__toggleBoxBtn.is-open .product__toggleBoxBtn-icon::after {
  transition: rotate 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);

  rotate: 0deg;
}
.l-page#calendar .product__toggleBoxBtn-icon {
  margin-top: -0.0625rem;

  --_icon-size: 1.625rem;
}
.l-page#calendar .product__toggleBoxBtn-icon::before,
.l-page#calendar .product__toggleBoxBtn-icon::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 999px;
  width: 0.875rem;
  height: 0.125rem;
  background-color: #000;

  translate: -50% -50%;
}
.l-page#calendar .product__toggleBoxBtn-icon::after {
  transition: rotate 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);

  rotate: 90deg;
}
.l-page#calendar .product__toggleBoxBtn-text {
  position: relative;
  z-index: 1;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
}
.l-page#calendar .product__toggleBoxBtn-icon {
  position: relative;
  z-index: 1;
}
.l-page#calendar .product__btn {
  margin-top: 2.25rem;
}
.l-page#calendar .productCard {
  overflow: hidden;
  padding: 1.25rem 1.75rem;
  border-radius: 1rem;
  background-color: #fff;
}
@media (min-width: 768px) {
  .l-page#calendar .productCard {
    padding: 1.25rem 1.5rem;
  }
}
.l-page#calendar .productCard + .productCard {
  margin-top: 1rem;
}
.l-page#calendar .productCard__header {
  display: flex;
  align-items: center;

  gap: 0.75rem;
}
.l-page#calendar .productCard__headerImg {
  overflow: hidden;
  flex-shrink: 0;
  border: solid 0.0625rem #e6e6e6;
  border-radius: 0.9375rem;
  width: 6.25rem;
  height: 6.25rem;
}
.l-page#calendar .productCard__headerText {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}
.l-page#calendar .productCard__cont {
  padding-top: 0.5rem;
}
.l-page#calendar .productCard__text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.4;
}
.l-page#calendar .product__caption {
  margin-top: 0.5rem;
  font-size: 0.6875rem;
}
.l-page#calendar .product__caption small {
  font-size: 0.6875rem;
}
.l-page#calendar .productCard__btn {
  margin-top: 0.875rem;
}
.l-page#calendar .productCard__btn > a,
.l-page#calendar .productCard__btn > button {
  min-width: 6.875rem;
  min-height: 2.375rem;
  font-size: 0.875rem;

  padding-inline: 1.875rem 2.5rem;
}
.l-page#calendar .productCard__btn .c-btnIcon {
  right: 0.5625rem;

  --_icon-size: 1.25rem;
}
.l-page#calendar .productCard__btn .c-btnIcon::before {
  width: 0.625rem;
  height: 0.375rem;

  -webkit-margin-start: 0.3125rem;

          margin-inline-start: 0.3125rem;
}
.l-page#calendar .productCampaign__tabsWrap {
  margin-top: 3.75rem;
}
.l-page#calendar .productCampaign__tabs {
  display: flex;
}
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tab {
  cursor: auto;
}
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tab::before {
  border-radius: 2rem;
  background-color: #fff;

  inset: 0;
}
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tab:nth-of-type(1)[aria-selected=false]::before,
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tab:nth-of-type(2)[aria-selected=false]::before {
  opacity: 1;
  background-color: #fff;

  inset: 0 0 -3.75rem 0;
}
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tab:nth-of-type(1)[aria-selected=false]::after,
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tab:nth-of-type(2)[aria-selected=false]::after {
  opacity: 1;
}
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tabText {
  margin: 0;
}
.l-page#calendar .productCampaign__tabs.is-uninitialized .productCampaign__tabText::after {
  display: none;
}
.l-page#calendar .productCampaign__tab {
  flex: 1;
  position: relative;
  padding: 0.5625rem 1.375rem;
  min-height: 3.75rem;
  cursor: pointer;
}
.l-page#calendar .productCampaign__tab::before {
  content: "";
  display: block;
  opacity: 0.5;
  position: absolute;
  z-index: -1;
  border-radius: 1rem;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  background-color: #fff;

  inset: 0 0 -3.75rem 0;
}
.l-page#calendar .productCampaign__tab::after {
  content: "";
  display: block;
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 50%;
  border-radius: 999px;
  width: calc(100% - 1.375rem * 2);
  height: 0.125rem;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
  background-color: var(--orbis-calendar-theme-bg-color-darker);

  translate: -50% 0;
}
.l-page#calendar .productCampaign__tab[aria-selected=true]::before,
.l-page#calendar .productCampaign__tab[aria-selected=true]::after {
  opacity: 1;
}
.l-page#calendar .productCampaign__tab:nth-of-type(1)[aria-selected=false]::before {
  inset: 0 -2rem -3.75rem 0;
}
.l-page#calendar .productCampaign__tab:nth-of-type(2)[aria-selected=false]::before {
  inset: 0 0 -3.75rem -2rem;
}
@media (hover: hover) and (pointer: fine) {
  .l-page#calendar .productCampaign__tab:where(:-webkit-any-link, :enabled, summary):hover::before {
    opacity: 1;
  }
  .l-page#calendar .productCampaign__tab:where(:-moz-any-link, :enabled, summary):hover::before {
    opacity: 1;
  }
  .l-page#calendar .productCampaign__tab:where(:any-link, :enabled, summary):hover::before {
    opacity: 1;
  }
}
@media (hover: none) and (any-pointer: coarse) {
  .l-page#calendar .productCampaign__tab.is-touched::before {
    opacity: 1;
  }
}
.l-page#calendar .productCampaign__tabText {
  display: inline-block;
  position: relative;
  margin-right: 0.3125rem;
  text-align: center;
  word-break: auto-phrase;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.3;
}
.l-page#calendar .productCampaign__tabText .productCampaign__tabTextLg {
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
}
.l-page#calendar .productCampaign__tabText::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.25rem);
  right: -1.3125rem;
  width: 0.875rem;
  height: 0.5625rem;
  background: url(/contents/feature/images/calendar/icon_arrow_tab.svg) no-repeat center/100% auto;
}
.l-page#calendar .productCampaignBox {
  overflow: hidden;
  padding: 1.25rem 1.5rem 2.5rem;
  border-radius: 2rem;
  background-color: #fff;
}
@media (min-width: 768px) {
  .l-page#calendar .productCampaignBox {
    padding: 1.25rem 2rem 2.75rem;
  }
}
.l-page#calendar .productCampaignBox.is-hidden {
  display: none;
}
.l-page#calendar .productCampaignBox__title {
  position: relative;
  margin-bottom: 1.375rem;
  padding-bottom: 0.9375rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}
.l-page#calendar .productCampaignBox__title::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  border-radius: 999px;
  width: min(100%, 18.25rem);
  height: 0.125rem;
  background-color: var(--orbis-calendar-theme-bg-color-darker);

  translate: -50% 0;
}
.l-page#calendar .productCampaignBox__titleLg {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
}
.l-page#calendar .productCampaignBox__img {
  overflow: hidden;
  border: solid 0.0625rem #e6e6e6;
  border-radius: 2rem;
  width: 100%;
}
.l-page#calendar .productCampaignBox__btn {
  margin-top: 1.5rem;
}
.l-page#calendar .productCampaignBox__btn > a,
.l-page#calendar .productCampaignBox__btn > button {
  min-width: 15.25rem;
  min-height: 3.25rem;

  padding-inline: 0.75rem 2rem;
}
.l-page#calendar .orbisWeek {
  padding-top: 3.75rem;

  -webkit-clip-path: inset(0 0 calc(-1 * var(--_section-space)) calc(-1 * var(--_section-space)) round 3rem);

          clip-path: inset(0 0 calc(-1 * var(--_section-space)) calc(-1 * var(--_section-space)) round 3rem);
}
.l-page#calendar .orbisWeek::before {
  background-image: linear-gradient(to bottom, #f2ceb6 0%, #fff9ea 15.87%);
}
.l-page#calendar .orbisWeek::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: -8.75rem;
  left: calc(50% + 0.125rem);
  width: 31.4375rem;
  height: 25.8125rem;
  background: url(/contents/feature/images/calendar/img_orbis-week_obj.png) no-repeat center/100% auto;

  translate: -50% 0;
}
.l-page#calendar .orbisWeek__timeTag {
  margin-top: 1rem;
  text-align: center;
}
.l-page#calendar .orbisWeek__cont {
  margin-top: 1.5rem;
}
.l-page#calendar .orbisWeek__text {
  font-size: 1rem;
  line-height: 1.6;
}
.l-page#calendar .orbisWeek__btn {
  position: relative;
  margin-top: 2rem;
}
.l-page#calendar .orbisWeekBox {
  overflow: hidden;
  margin-top: 3.75rem;
  padding: 2.5rem 0;
  border-radius: 2rem;
  background-color: #fff;
}
@media (min-width: 768px) {
  .l-page#calendar .orbisWeekBox {
    padding: 2.375rem 0 2rem;
  }
}
.l-page#calendar .orbisWeekBox__title {
  width: min(100%, 19.1875rem);

  margin-inline: auto;
}
.l-page#calendar .orbisWeekBox__img {
  width: min(100%, 19.1875rem - 0.625rem * 2);

  margin-inline: auto;
  padding-inline: 0.625rem;
}
.l-page#calendar .orbisWeekBox__inner {
  margin-top: 1.3125rem;

  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .l-page#calendar .orbisWeekBox__inner {
    padding-inline: 1.125rem;
  }
}
.l-page#calendar .orbisWeekBox__cont + .orbisWeekBox__cont {
  margin-top: 0.875rem;
}
@media (min-width: 768px) {
  .l-page#calendar .orbisWeekBox__cont + .orbisWeekBox__cont {
    margin-top: 2.125rem;
  }
}
.l-page#calendar .orbisWeekBox__contName {
  display: inline-block;
  position: relative;
  margin-bottom: 0.5rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.6;
}
.l-page#calendar .orbisWeekBox__contName::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.0625rem;
  background-color: #b09358;
}
.l-page#calendar .orbisWeekBox__text {
  line-height: 1.4;
}
.l-page#calendar .orbisWeekBox__btn {
  margin-top: 2.5rem;
}
.l-page#calendar .orbisWeekBox__btn > a,
.l-page#calendar .orbisWeekBox__btn > button {
  min-height: 3.25rem;
}
.l-page#calendar .eventCarousel {
  margin-top: 2rem;
}
.l-page#calendar .eventCarousel__arrows {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 45%;
  width: 100%;
}
.l-page#calendar .eventCarousel__arrow {
  display: inline-grid;
  border: solid 0.0625rem #e6e6e6;
  border-radius: 50%;
  width: var(--_icon-size);
  height: var(--_icon-size);

  --_icon-size: 2.375rem;
}
.l-page#calendar .eventCarousel__arrow::before {
  content: "";
  display: grid;
  margin: auto;
  width: 0.625rem;
  height: 1.0625rem;
  background-color: #000;

  grid-area: 1/-1;
  place-content: center;
  -webkit-mask-image: url(/contents/feature/images/calendar/icon_arrow.svg);
          mask-image: url(/contents/feature/images/calendar/icon_arrow.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 100% auto;
          mask-size: 100% auto;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.l-page#calendar .eventCarousel__arrow.eventCarousel__arrow--prev {
  -webkit-margin-start: 0.375rem;
          margin-inline-start: 0.375rem;
}
@media (min-width: 768px) {
  .l-page#calendar .eventCarousel__arrow.eventCarousel__arrow--prev {
    -webkit-margin-start: 0.5rem;
            margin-inline-start: 0.5rem;
  }
}
.l-page#calendar .eventCarousel__arrow.eventCarousel__arrow--prev::before {
  rotate: 180deg;
}
.l-page#calendar .eventCarousel__arrow.eventCarousel__arrow--next {
  -webkit-margin-end: 0.375rem;
          margin-inline-end: 0.375rem;
}
@media (min-width: 768px) {
  .l-page#calendar .eventCarousel__arrow.eventCarousel__arrow--next {
    -webkit-margin-end: 0.5rem;
            margin-inline-end: 0.5rem;
  }
}
.l-page#calendar .eventCarousel__pagination {
  justify-content: center;
  margin-top: 1.5rem;

  gap: 0.3125rem;
}
.l-page#calendar .eventCarousel__pagination > li {
  flex: 0 0 0.5rem;
  border-radius: 0.3125rem;
  height: 0.5rem;
  transition: flex 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.l-page#calendar .eventCarousel__pagination > li .splide__pagination__page {
  border-radius: 0.3125rem;
  width: 100%;
  height: 100%;
  min-height: auto;
  background-color: #000;
}
.l-page#calendar .eventCarousel__pagination > li:has(.splide__pagination__page.is-active) {
  flex: 0 0 1.3125rem;
}
.l-page#calendar .event__cont {
  padding: 1.5rem 2.125rem;
  border-radius: 2rem;
  background-color: var(--orbis-calendar-theme-bg-color-default);
}
@media (min-width: 768px) {
  .l-page#calendar .event__cont {
    padding: 1.5rem 2rem;
  }
}
.l-page#calendar .event__timeTag {
  margin-bottom: 0.75rem;
  text-align: center;
}
.l-page#calendar .event__contImg {
  overflow: hidden;
  margin-top: 1rem;
  border-radius: 1.5rem;
  width: 100%;
}
@media (min-width: 768px) {
  .l-page#calendar .event__contImg {
    margin-inline: 0;
  }
}
.l-page#calendar .event__contImg img {
  display: block;
  width: 100%;
  height: auto;
}
.l-page#calendar .event__contInner {
  padding-top: 1rem;
}
.l-page#calendar .event__name {
  margin-bottom: 0.5rem;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
}
.l-page#calendar .event__btn {
  display: flex;
  flex-direction: column;
  margin-top: 1.5rem;
}
.l-page#calendar .event__btn > a,
.l-page#calendar .event__btn > button {
  min-width: auto;
}
.l-page#calendar .live__timeTag {
  margin-top: 1.5rem;
  text-align: center;
}
.l-page#calendar .live__cont {
  margin-top: 2rem;
}
.l-page#calendar .live__contInner {
  margin-top: 1rem;
}
.l-page#calendar .live__text {
  font-size: 1rem;
  line-height: 1.6;
}
.l-page#calendar .live__btn {
  margin-top: 2.5rem;
}
.l-page#calendar .info {
  padding-top: 5rem;
}
.l-page#calendar .info__cont {
  margin-top: 1rem;
}
.l-page#calendar .info__contInner {
  margin-top: 1rem;
}
.l-page#calendar .info__img {
  overflow: hidden;
  border-radius: 2rem;
  width: 100%;
}
.l-page#calendar .info__text {
  font-size: 1rem;
}
.l-page#calendar .info__btn {
  margin-top: 2.5rem;
}
.l-page#calendar .related {
  margin-top: 5rem;
}
.l-page#calendar .relatedBox {
  padding: 2rem 1.5rem 2.5rem;
  border-radius: 2rem;
  background-color: #f2f4f5;
}
@media (min-width: 768px) {
  .l-page#calendar .relatedBox {
    padding: 2rem 2rem;
  }
}
.l-page#calendar .relatedBox + .relatedBox {
  margin-top: 1.5rem;
}
.l-page#calendar .relatedBox__cont {
  margin-top: 1.5rem;
}
.l-page#calendar .relatedBox__img {
  overflow: hidden;
  border-radius: 1rem;
  width: 100%;
}
.l-page#calendar .relatedBox__img:is(.relatedBox__text + *) {
  margin-top: 1rem;
}
.l-page#calendar .relatedBox__title {
  margin-top: 1rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.6;
}
.l-page#calendar .relatedBox__text {
  margin-top: 0.25rem;
}
.l-page#calendar .relatedBox__text + .relatedBox__text {
  margin-top: 0.5em;
}
.l-page#calendar .relatedBox__text:is(.relatedBox__title + *) {
  margin-top: 1.5rem;
}
.l-page#calendar .relatedBox__text:is(.relatedBox__img + *) {
  margin-top: 1.5rem;
}
.l-page#calendar .relatedBox__link {
  margin-top: 0.625rem;
}
.l-page#calendar .relatedBox__link a[aria-disabled=true] {
  display: none;
  pointer-events: none;
}
.l-page#calendar .relatedBox__link a[aria-disabled=false] {
  display: block;
  pointer-events: auto;
}
.l-page#calendar .relatedBox__accordion:first-of-type {
  margin-top: -1rem;
}
.l-page#calendar .relatedBox__accordion:last-of-type .c-accordion {
  border-bottom: 0;
}
