.event .txt-center {
  text-align: center;
}
@media screen and (max-width: 639px) {
  .event .txt-sp-left {
    text-align: left;
  }
}
@media screen and (max-width: 639px) {
  .event .pc {
    display: none;
  }
}
@media screen and (min-width: 640px) {
  .event .sp {
    display: none;
  }
}
@media screen and (min-width: 640px) {
  .event .sm-up-none {
    display: none;
  }
}
@media screen and (max-width: 639px) {
  .event .sm-none {
    display: none;
  }
}
.event .oc-title {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.event .oc-title .title-en {
  font-family: "Neuton", serif;
  color: #95c7d5;
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  letter-spacing: 0.2em;
}
.event .oc-title .title-ja {
  position: relative;
  font-size: clamp(2.3rem, 0.7202531646rem + 2.0569620253vw, 3.6rem);
  padding: 0 0.8em;
}
.event .oc-title .title-ja::before {
  content: "";
  position: absolute;
  right: 100%;
  bottom: 0.8em;
  background: url(../../img/event/share/dots.png) 0 0 no-repeat;
  width: 36px;
  height: 6px;
}
@media screen and (max-width: 639px) {
  .event .oc-title .title-ja::before {
    width: 21px;
    height: 3px;
    background-size: contain;
  }
}
.event .oc-title .title-ja::after {
  content: "";
  position: absolute;
  left: 100%;
  bottom: 0.8em;
  background: url(../../img/event/share/dots.png) 0 0 no-repeat;
  width: 36px;
  height: 6px;
}
@media screen and (max-width: 639px) {
  .event .oc-title .title-ja::after {
    width: 21px;
    height: 3px;
    background-size: contain;
  }
}
.event .btn-pencil {
  display: block;
  position: relative;
  padding: 1.5em 2.5em;
  background: #3e3a39;
  border: 2px solid #3e3a39;
  border-radius: 3.5em;
  width: min(76.9230769231vw, 500px);
  color: #fff;
  font-size: clamp(1.3rem, 0.6924050633rem + 0.7911392405vw, 1.8rem);
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
  text-decoration: none;
  margin-left: auto;
  margin-right: auto;
}
.event .btn-pencil:hover {
  background: #fff;
  color: #3e3a39;
}
.event .btn-pencil::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 1em;
  width: 1.3em;
  height: 1.3em;
  background: currentColor;
  -webkit-mask-image: url(/assets/img/event/share/icon-pencil.svg);
  mask-image: url(/assets/img/event/share/icon-pencil.svg);
  -webkit-mask-size: 100%;
  mask-size: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
}
.event .btn-pencil.sm {
  width: min(64.1025641026vw, 320px);
  padding: 1em 2.5em;
}
.event .btn-normal {
  display: block;
  position: relative;
  padding: 1.5em 2.5em;
  background: #3e3a39;
  border: 2px solid #3e3a39;
  border-radius: 3.5em;
  width: min(76.9230769231vw, 500px);
  color: #fff;
  font-size: clamp(1.3rem, 0.6924050633rem + 0.7911392405vw, 1.8rem);
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
  text-decoration: none;
  margin-left: auto;
  margin-right: auto;
}
.event .btn-normal:hover {
  background: #fff;
  color: #3e3a39;
}
.event .btn-normal::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 1em;
  width: 1em;
  height: 0.78em;
  background: currentColor;
  -webkit-mask-image: url(/assets/img/share/icon-arrow.svg);
  mask-image: url(/assets/img/share/icon-arrow.svg);
  -webkit-mask-size: 100%;
  mask-size: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
}
.event .btn-normal.sm {
  width: min(64.1025641026vw, 320px);
  padding: 1em 2.5em;
}
.event .oc-schedule {
  padding: min(15.3846153846vw, 120px) 0;
}
.event .oc-schedule .schedule-box {
  margin-top: 2em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box {
    margin-top: 3em;
  }
}
.event .oc-schedule .schedule-box .box-header-fill {
  position: relative;
  background-color: #f8f8f8;
  border-radius: 0.4em 0.4em 0 0;
  padding: 1em 2em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-header-fill {
    border-radius: 0.8em 0.8em 0 0;
    padding: 2em 3em;
  }
}
.event .oc-schedule .schedule-box .box-header-fill .box-text {
  font-size: clamp(1.8rem, 0.5848101266rem + 1.582278481vw, 2.8rem);
  font-weight: bold;
  line-height: 1.6;
}
.event .oc-schedule .schedule-box .box-header-fill .box-lead {
  font-weight: bold;
}
.event .oc-schedule .schedule-box .box-header-fill + .box-body {
  padding-top: 0;
}
.event .oc-schedule .schedule-box .box-header {
  background: url(../../img/event/share/schedule-bg-header.png) repeat 0 0;
  border-radius: 0.4em 0.4em 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1em 2em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-header {
    border-radius: 0.8em 0.8em 0 0;
  }
}
.event .oc-schedule .schedule-box .box-header .header-icon {
  margin-right: 1em;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 45px;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-header .header-icon {
    width: auto;
  }
}
.event .oc-schedule .schedule-box .box-header .box-text {
  font-size: clamp(1.8rem, 0.5848101266rem + 1.582278481vw, 2.8rem);
  font-weight: bold;
  color: #fff;
  line-height: 1.6;
}
.event .oc-schedule .schedule-box .box-number {
  position: absolute;
  right: 2em;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #95c7d5;
  color: #fff;
  border-radius: 50%;
  aspect-ratio: 1;
  width: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 639px) {
  .event .oc-schedule .schedule-box .box-number {
    width: 50px;
  }
}
.event .oc-schedule .schedule-box .box-number .number-text {
  line-height: 1;
}
.event .oc-schedule .schedule-box .box-number .number-number {
  line-height: 1;
  font-family: "Neuton", serif;
  font-size: clamp(1.8rem, 0.5848101266rem + 1.582278481vw, 2.8rem);
}
.event .oc-schedule .schedule-box .box-body {
  border-radius: 0 0 0.8em 0.8em;
  background-color: #f8f8f8;
  padding: 2em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body {
    padding: 3em;
  }
}
.event .oc-schedule .schedule-box .box-body .box-check {
  background-color: #fff;
}
.event .oc-schedule .schedule-box .box-body .box-check .base-btn {
  margin-left: auto;
  margin-right: auto;
}
.event .oc-schedule .schedule-box .box-body .box-data {
  margin-top: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5em 0;
  margin-bottom: 2em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .box-data {
    margin-top: 2em;
    gap: 1em 0;
    margin-bottom: 3em;
  }
}
.event .oc-schedule .schedule-box .box-body .box-data:last-child {
  margin-bottom: 0;
}
.event .oc-schedule .schedule-box .box-body .box-data dt {
  width: 80px;
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  color: #fff;
  background-color: #96c7d5;
  border-radius: 0.2em;
  text-align: center;
  font-weight: bold;
  position: relative;
  top: 5px;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .box-data dt {
    width: 120px;
    top: 2px;
  }
}
.event .oc-schedule .schedule-box .box-body .box-data dd {
  width: calc(100% - 80px);
  padding-left: 20px;
  font-size: clamp(1.2rem, 0.9569620253rem + 0.3164556962vw, 1.4rem);
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .box-data dd {
    width: calc(100% - 120px);
  }
}
.event .oc-schedule .schedule-box .box-body .box-data dd strong {
  font-size: clamp(1.8rem, 1.5569620253rem + 0.3164556962vw, 2rem);
}
.event .oc-schedule .schedule-box .box-body .row-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .row-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3em;
  }
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .row-box .row-box-header {
    width: 50%;
  }
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .row-box .row-box-body {
    width: 50%;
  }
}
.event .oc-schedule .schedule-box .box-body .row-box .row-box-data {
  margin-top: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5em 0;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .row-box .row-box-data {
    margin-top: 2em;
    gap: 1em 0;
  }
}
.event .oc-schedule .schedule-box .box-body .row-box .row-box-data dt {
  width: 80px;
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  color: #fff;
  background-color: #96c7d5;
  border-radius: 0.2em;
  text-align: center;
  font-weight: bold;
  position: relative;
  top: 5px;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .row-box .row-box-data dt {
    width: 120px;
    top: 2px;
  }
}
.event .oc-schedule .schedule-box .box-body .row-box .row-box-data dd {
  width: calc(100% - 80px);
  padding-left: 20px;
  font-size: clamp(1.2rem, 0.9569620253rem + 0.3164556962vw, 1.4rem);
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .box-body .row-box .row-box-data dd {
    width: calc(100% - 120px);
  }
}
.event .oc-schedule .schedule-box .box-body .row-box .row-box-data dd strong {
  font-size: clamp(1.8rem, 1.5569620253rem + 0.3164556962vw, 2rem);
}
.event .oc-schedule .schedule-box .schedule-date {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1em;
}
.event .oc-schedule .schedule-box .schedule-date:not(:first-child) {
  margin-top: 2em;
}
.event .oc-schedule .schedule-box .schedule-date:not(:last-child) {
  margin-bottom: 2em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .schedule-date {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5em;
  }
  .event .oc-schedule .schedule-box .schedule-date:not(:first-child) {
    margin-top: 3em;
  }
}
@media screen and (max-width: 768px) {
  .event .oc-schedule .schedule-box .schedule-date {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 639px) {
  .event .oc-schedule .schedule-box .schedule-date {
    grid-template-columns: repeat(2, 1fr);
  }
}
.event .oc-schedule .schedule-box .schedule-date .date-day {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #fff;
  -webkit-filter: drop-shadow(0 0.4em 1.25em rgba(111, 111, 128, 0.1));
          filter: drop-shadow(0 0.4em 1.25em rgba(111, 111, 128, 0.1));
  border-radius: 0.8em;
  padding: 1em 1em 0;
  overflow: hidden;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-box .schedule-date .date-day {
    padding: 1em 1em 0;
  }
}
.event .oc-schedule .schedule-box .schedule-date .date-day .day-number {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: clamp(5rem, 3.7848101266rem + 1.582278481vw, 6rem);
  font-family: "Neuton", serif;
  text-align: center;
  line-height: 1;
  width: 100%;
}
.event .oc-schedule .schedule-box .schedule-date .date-day .day-week {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: clamp(1.8rem, 1.0708860759rem + 0.9493670886vw, 2.4rem);
  font-family: "Neuton", serif;
  text-align: center;
  color: #3e3a39;
  line-height: 1.8;
  width: 100%;
}
.event .oc-schedule .schedule-box .schedule-date .date-day .day-week:not(:last-child) {
  margin-bottom: 0.5em;
}
.event .oc-schedule .schedule-box .schedule-date .date-day .day-week.sun {
  color: #f3b5b8;
}
.event .oc-schedule .schedule-box .schedule-date .date-day .day-week.sat {
  color: #95c7d5;
}
.event .oc-schedule .schedule-box .schedule-date .date-day .day-time {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: auto -1em 0;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background: #95c7d5;
  padding: 0.25em 1em;
}
.event .oc-schedule .schedule-box .schedule-date .date-day.-xmas {
  position: relative;
  overflow: visible;
}
.event .oc-schedule .schedule-box .schedule-date .date-day.-xmas .day-time {
  border-radius: 0 0 0.8em 0.8em;
  background: #E74A42;
}
.event .oc-schedule .schedule-box .schedule-date .date-day.-xmas::after {
  content: "";
  display: block;
  background: url("/assets/img/event/observation/icon-xmas.png") no-repeat right bottom/contain;
  width: 112px;
  height: 103px;
  position: absolute;
  top: -19%;
  left: -16%;
}
@media screen and (max-width: 1100px) {
  .event .oc-schedule .schedule-box .schedule-date .date-day.-xmas::after {
    width: 70px;
    height: 64px;
    top: -20px;
    left: -21px;
  }
}
@media screen and (max-width: 639px) {
  .event .oc-schedule .schedule-box .schedule-date .date-day.-xmas::after {
    width: 48px;
    height: 44px;
    left: -17px;
    top: -12px;
  }
}
.event .oc-schedule .schedule-not-held {
  font-size: clamp(1.6rem, 1.3569620253rem + 0.3164556962vw, 1.8rem);
  text-align: center;
}
.event .oc-schedule .schedule-not-held:not(:last-child) {
  margin-bottom: 1em;
}
.event .oc-schedule .schedule-point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2em;
  margin-top: 4em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-point {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3em;
    margin-top: 5em;
  }
}
.event .oc-schedule .schedule-point .point-header {
  position: relative;
  padding: 0 1em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-point .point-header {
    width: 45%;
    padding: 0;
  }
}
.event .oc-schedule .schedule-point .point-header-point {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding: 0.5em 3.4%;
  background: #95c7d5;
  border-radius: 0.33em;
  color: #fff;
  font-size: clamp(1.8rem, 1.0708860759rem + 0.9493670886vw, 2.4rem);
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.event .oc-schedule .schedule-point .point-header-point::after {
  display: block;
  position: absolute;
  top: calc(100% - 1px);
  left: 55%;
  border-top: 0.3em solid #95c7d5;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-point .point-body {
    width: 60%;
  }
}
.event .oc-schedule .schedule-point .point-ttl {
  font-size: clamp(1.6rem, 0.6278481013rem + 1.2658227848vw, 2.4rem);
  color: #95c7d5;
  text-align: center;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-point .point-ttl {
    text-align: left;
  }
}
.event .oc-schedule .schedule-point .point-text {
  margin-top: 1em;
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
}
.event .oc-schedule .schedule-flow {
  background-color: #fff;
  border-radius: 0.8em;
  -webkit-filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
          filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
}
.event .oc-schedule .schedule-flow + .schedule-flow {
  margin-top: 10px;
}
.event .oc-schedule .schedule-flow.open .flow-header .flow-icon::before, .event .oc-schedule .schedule-flow.open .flow-header .flow-icon::after {
  -webkit-transform: translate(-50%, -50%) rotate(180deg);
          transform: translate(-50%, -50%) rotate(180deg);
}
.event .oc-schedule .schedule-flow .flow-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1em 1.5em 1em 1.5em;
  cursor: pointer;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-flow .flow-header {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    padding: 1.5em 2em 1.5em 9em;
  }
}
.event .oc-schedule .schedule-flow .flow-header .flow-hour {
  position: absolute;
  left: 1em;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: clamp(2.3rem, 1.4493670886rem + 1.1075949367vw, 3rem);
  color: #95c7d5;
  font-family: "Neuton", serif;
}
@media screen and (max-width: 639px) {
  .event .oc-schedule .schedule-flow .flow-header .flow-hour {
    position: static;
    width: 100%;
    -webkit-transform: none;
            transform: none;
    line-height: 1;
    margin-bottom: 8px;
  }
}
.event .oc-schedule .schedule-flow .flow-header .flow-ttl {
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  font-weight: bold;
}
.event .oc-schedule .schedule-flow .flow-header .flow-label {
  background-color: #95c7d5;
  color: #fff;
  font-size: clamp(1.2rem, 0.9569620253rem + 0.3164556962vw, 1.4rem);
  border-radius: 0.4em;
  padding: 0 1em;
  margin-left: 1.5em;
  padding-top: 3px;
}
.event .oc-schedule .schedule-flow .flow-header .flow-icon {
  position: relative;
  width: 12px;
  height: 12px;
  margin-left: auto;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-flow .flow-header .flow-icon {
    width: 20px;
    height: 20px;
  }
}
@media screen and (max-width: 639px) {
  .event .oc-schedule .schedule-flow .flow-header .flow-icon {
    position: absolute;
    right: 1.5em;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.event .oc-schedule .schedule-flow .flow-header .flow-icon::before, .event .oc-schedule .schedule-flow .flow-header .flow-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 12px;
  height: 1px;
  background-color: currentColor;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-flow .flow-header .flow-icon::before, .event .oc-schedule .schedule-flow .flow-header .flow-icon::after {
    width: 20px;
    height: 2px;
  }
}
.event .oc-schedule .schedule-flow .flow-header .flow-icon::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.event .oc-schedule .schedule-flow .flow-title {
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  font-weight: bold;
  margin-bottom: 1em;
}
.event .oc-schedule .schedule-flow .flow-inner {
  padding: 1.5em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-flow .flow-inner {
    padding: 2em;
  }
}
.event .oc-schedule .schedule-flow .flow-body {
  padding: 0.5em 1.5em 2em 1.5em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-flow .flow-body {
    padding: 0 2em 2em 9em;
  }
}
.event .oc-schedule .schedule-flow .flow-body-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-flow .flow-body-row {
    gap: 1.75em;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.event .oc-schedule .schedule-flow .flow-body-row .flow-body-photo {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.event .oc-schedule .schedule-attention {
  margin-top: 1.5em;
}
.event .oc-schedule .schedule-footer {
  margin-top: 3em;
}
@media screen and (min-width: 640px) {
  .event .oc-schedule .schedule-footer {
    margin-top: 4em;
  }
}
.event .oc-schedule .schedule-notes {
  margin-top: 1em;
  font-size: clamp(1.2rem, 0.9569620253rem + 0.3164556962vw, 1.4rem);
  text-indent: -1em;
  padding-left: 1em;
}
.event .oc-schedule .schedule-btn {
  margin-top: 2em;
}
@media screen and (min-width: 768px) {
  .event .oc-schedule .schedule-btn {
    margin-top: 3em;
  }
}
.event .oc-schedule .schedule-btn a {
  margin-left: auto;
  margin-right: auto;
}
.event .oc-benefits {
  padding: min(15.3846153846vw, 120px) 0;
  background: url(../../img/event/share/benefits-bg.png) 0 0;
}
.event .oc-benefits .benefits-inner {
  background-color: #fff;
  border-radius: 0.4em;
  -webkit-filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
          filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
  padding: 1.5em;
}
@media screen and (min-width: 640px) {
  .event .oc-benefits .benefits-inner {
    padding: 3em;
    border-radius: 1em;
  }
}
.event .oc-benefits .benefits-inner.pb0 {
  padding-bottom: 0;
}
.event .oc-benefits .benefits-body {
  margin-top: 2em;
}
@media screen and (min-width: 640px) {
  .event .oc-benefits .benefits-body {
    margin-top: 3em;
  }
}
.event .oc-benefits .row-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2em;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 640px) {
  .event .oc-benefits .row-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 4em;
  }
}
.event .oc-benefits .row-box .box-col {
  max-width: 412px;
}
@media screen and (max-width: 639px) {
  .event .oc-benefits .row-box .box-col + .box-col {
    border-top: 1px solid #eee;
    padding-top: 2em;
  }
}
@media screen and (min-width: 640px) {
  .event .oc-benefits .row-box .box-col {
    width: 50%;
  }
}
.event .oc-benefits .box-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.event .oc-benefits .box-title {
  position: relative;
  font-size: clamp(1.6rem, 0.8708860759rem + 0.9493670886vw, 2.2rem);
  color: #95c7d5;
  text-align: center;
  padding: 0 0.8em;
}
.event .oc-benefits .box-title::before {
  content: "";
  position: absolute;
  right: 100%;
  bottom: 0.5em;
  background: url(../../img/event/share/dash-ico-left.png) 0 0 no-repeat;
  width: 16px;
  height: 31px;
  background-size: contain;
}
@media screen and (min-width: 640px) {
  .event .oc-benefits .box-title::before {
    width: 24px;
    height: 45px;
  }
}
.event .oc-benefits .box-title::after {
  content: "";
  position: absolute;
  left: 100%;
  bottom: 0.5em;
  background: url(../../img/event/share/dash-ico-right.png) 0 0 no-repeat;
  width: 16px;
  height: 31px;
  background-size: contain;
}
@media screen and (min-width: 640px) {
  .event .oc-benefits .box-title::after {
    width: 24px;
    height: 45px;
  }
}
.event .oc-benefits .box-title.lg {
  font-size: clamp(1.6rem, -0.1012658228rem + 2.2151898734vw, 3rem);
}
.event .oc-benefits .box-photo {
  text-align: center;
  margin-top: 1em;
}
.event .oc-benefits .box-text {
  margin-top: 2em;
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
}
.event .oc-benefits .box-text .small {
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
}
.event .oc-benefits .box-text.sm {
  margin-top: 1em;
}
.event .oc-benefits .box-button {
  margin-top: 2em;
}
.event .oc-benefits .box-button .base-btn,
.event .oc-benefits .box-button .btn-blank {
  margin-left: auto;
  margin-right: auto;
}
.event .box-border {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid #eee;
}
@media screen and (min-width: 640px) {
  .event .box-border {
    margin-top: 3em;
    padding-top: 3em;
  }
}
.event .box-border-bottom {
  margin-bottom: 2em;
  padding-bottom: 2em;
  border-bottom: 1px solid #eee;
}
@media screen and (min-width: 640px) {
  .event .box-border-bottom {
    margin-bottom: 3em;
    padding-bottom: 3em;
  }
}
.event .benefits-goods {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 1.5em;
  gap: 1em;
}
@media screen and (min-width: 640px) {
  .event .benefits-goods {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2em;
    margin-top: 3em;
  }
}
.event .benefits-goods-photo {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding-bottom: 2em;
}
@media screen and (min-width: 640px) {
  .event .benefits-goods-photo {
    max-width: 520px;
    padding-bottom: 3em;
  }
}
.event .benefits-goods-photo img {
  width: 100%;
}
.event .benefits-goods-comment {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  text-align: center;
}
@media screen and (min-width: 640px) {
  .event .benefits-goods-comment {
    max-width: 359px;
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}
.event .benefits-goods-comment img {
  width: 100%;
  max-width: 70%;
}
@media screen and (min-width: 640px) {
  .event .benefits-goods-comment img {
    max-width: none;
  }
}
.event .oc-relation {
  padding: min(15.3846153846vw, 120px) 0;
  background: 50% 50% no-repeat;
  background-size: cover;
}
@media screen and (min-width: 640px) {
  .event .oc-relation {
    background-image: url(../../img/event/observation/relation-bg.jpg);
  }
}
.event .oc-relation .relation-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.event .oc-relation .relation-title {
  position: relative;
  text-align: center;
  font-size: clamp(1.8rem, 0.5848101266rem + 1.582278481vw, 2.8rem);
  padding: 0 1em;
}
.event .oc-relation .relation-title::before {
  content: "";
  position: absolute;
  right: 100%;
  bottom: 15%;
  background: url(../../img/event/observation/dots-slash-left.png) 0 0 no-repeat;
  width: 18px;
  height: 40px;
}
.event .oc-relation .relation-title::after {
  content: "";
  position: absolute;
  left: 100%;
  bottom: 15%;
  background: url(../../img/event/observation/dots-slash-right.png) 0 0 no-repeat;
  width: 18px;
  height: 40px;
}
.event .oc-relation .relation-body {
  margin-top: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1em;
}
@media screen and (min-width: 640px) {
  .event .oc-relation .relation-body {
    margin-top: 4em;
    gap: 2em;
  }
}
.event .oc-relation .relation-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 639px) {
  .event .oc-relation .relation-card {
    width: calc(50% - 0.5em);
  }
}
@media screen and (max-width: 639px) {
  .event .oc-relation .relation-card:nth-child(3) {
    min-width: 55%;
  }
}
.event .oc-relation .relation-card a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-filter: drop-shadow(0 0.4em 1.25em rgba(111, 111, 128, 0.1));
          filter: drop-shadow(0 0.4em 1.25em rgba(111, 111, 128, 0.1));
  background: #fff;
  width: 100%;
  border-radius: 0.4em;
  text-align: center;
  padding: 1.5em;
  text-decoration: none;
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
}
@media screen and (min-width: 640px) {
  .event .oc-relation .relation-card a {
    min-width: 233px;
    padding: 2em;
  }
}
.event .oc-relation .relation-card a:hover {
  -webkit-filter: drop-shadow(0 0 1.5rem #95c7d5);
          filter: drop-shadow(0 0 1.5rem #95c7d5);
}
.event .oc-relation .relation-card a::after {
  content: "";
  position: absolute;
  right: 1em;
  bottom: 1em;
  border-right: 5px solid currentColor;
  border-bottom: 5px solid currentColor;
  border-top: 5px solid transparent;
  border-left: 5px solid transparent;
}
.event .oc-relation .relation-card.purple .card-title,
.event .oc-relation .relation-card.purple .card-en,
.event .oc-relation .relation-card.purple a::after {
  color: #a2abcf;
}
.event .oc-relation .relation-card.green .card-title,
.event .oc-relation .relation-card.green .card-en,
.event .oc-relation .relation-card.green a::after {
  color: #b4cc8b;
}
.event .oc-relation .relation-card.blue .card-title,
.event .oc-relation .relation-card.blue .card-en,
.event .oc-relation .relation-card.blue a::after {
  color: #95c7d5;
}
.event .oc-relation .relation-card.orange .card-title,
.event .oc-relation .relation-card.orange .card-en,
.event .oc-relation .relation-card.orange a::after {
  color: #E5BB7F;
}
.event .oc-relation .relation-card.pink .card-title,
.event .oc-relation .relation-card.pink .card-en,
.event .oc-relation .relation-card.pink a::after {
  color: #E8B2B4;
}
@media screen and (max-width: 639px) {
  .event .oc-relation .relation-card .card-icon img {
    width: 40px;
  }
}
.event .oc-relation .relation-card .card-title {
  margin-top: 0.5em;
  font-size: clamp(1.8rem, 1.0708860759rem + 0.9493670886vw, 2.4rem);
  line-height: 1.3;
}
@media screen and (min-width: 640px) {
  .event .oc-relation .relation-card .card-title {
    margin-top: 1em;
  }
}
.event .oc-relation .relation-card .card-title span {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
}
.event .oc-relation .relation-card .card-en {
  font-family: "Neuton", serif;
  font-weight: 400;
}
.event .oc-relation .relation-card .card-text {
  margin-top: 1em;
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
  font-weight: bold;
}
.event .news-box {
  width: min(89.7435897436vw, 1024px);
  margin: 0 auto 3em;
}
@media screen and (min-width: 640px) {
  .event .news-box {
    margin-bottom: 4em;
  }
}
.event .link-btn {
  max-width: 600px;
  margin: 0 auto;
}
.event .link-btn:not(:last-child) {
  margin-bottom: 2em;
}
.event .link-btn > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  font-weight: bold;
  text-decoration: none;
  color: #fff;
  background: #c00;
  padding: 0.5em 1em;
  text-decoration: none;
  border-radius: 0.4em;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.event .link-btn > a:hover {
  opacity: 0.7;
}
.event .link-btn > a::after {
  content: "";
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: block;
  width: 18px;
  height: 14px;
  -webkit-mask-image: url("/assets/img/share/icon-arrow.svg");
          mask-image: url("/assets/img/share/icon-arrow.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background: #fff;
}

.gradient .header .header-container {
  background: none;
}
.gradient .header.scrolled .header-container {
  background: #fff;
}
.gradient .header.open:not(.scrolled) .header-container {
  background: #fff;
}
.gradient .content-wrapper::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  aspect-ratio: 1400/600;
  background-image: radial-gradient(at 100% 100%, hsl(217, 44%, 79%) 0px, transparent 50%), radial-gradient(at 0% 0%, hsl(191, 75%, 84%) 0px, transparent 50%), radial-gradient(at 0% 100%, hsl(202, 53%, 78%) 0px, transparent 50%), radial-gradient(at 100% 0%, hsl(161, 56%, 82%) 0px, transparent 50%);
  content: "";
}
.gradient .content-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  aspect-ratio: 1400/600;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#fff), color-stop(70%, rgba(255, 255, 255, 0)));
  background-image: linear-gradient(to top, #fff 0%, rgba(255, 255, 255, 0) 70%);
}

.top .mv-container {
  padding-bottom: min(19.2307692308vw, 7.5em);
}
.top .mv-container .mv-front {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.top .mv-container .mv-title-box01 {
  width: min(82.0512820513vw, 850px);
  margin: 0 auto;
  background: #fff;
  border-radius: 10px 10px 0 0;
  text-align: center;
  padding: min(5.1282051282vw, 3em) 1em min(10.2564102564vw, 4em);
}
.top .mv-container .mv-title-ja01 {
  font-size: clamp(2.3rem, 0.7202531646rem + 2.0569620253vw, 3.6rem);
  font-weight: bold;
}
.top .mv-container .mv-title-en01 {
  color: #95c7d5;
  font-family: "Neuton", serif;
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1;
}
@media screen and (min-width: 640px) {
  .top .mv-container .mv-bg {
    max-height: 480px;
  }
}
.top .main-container {
  padding: 0;
}
.top .menu-block {
  padding: min(14.1025641026vw, 100px) 0;
}
.top .menu-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.5em 3.125%;
}
.top .menu-list .img-box {
  border-radius: 10px;
  margin-bottom: 1em;
  overflow: hidden;
}
.top .menu-list .img-box img {
  width: 100%;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.top .menu-list .menu-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: clamp(1.8rem, 1.0708860759rem + 0.9493670886vw, 2.4rem);
  font-weight: bold;
  margin-bottom: 0.2em;
}
.top .menu-list .menu-title .arrow {
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  position: relative;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.top .menu-list .menu-title .arrow::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.7em;
  height: 0.54em;
  background: #fff;
  -webkit-mask-image: url(/assets/img/share/icon-arrow.svg);
          mask-image: url(/assets/img/share/icon-arrow.svg);
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.top .menu-list li {
  width: 100%;
}
.top .menu-list li:nth-child(1) .menu-title {
  color: #f2afb3;
}
.top .menu-list li:nth-child(1) .menu-title .arrow {
  background: #f2afb3;
  border: 1px solid #f2afb3;
}
.top .menu-list li:nth-child(2) .menu-title {
  color: #95c7d5;
}
.top .menu-list li:nth-child(2) .menu-title .arrow {
  background: #95c7d5;
  border: 1px solid #95c7d5;
}
.top .menu-list li:nth-child(3) .menu-title {
  color: #b4cc8b;
}
.top .menu-list li:nth-child(3) .menu-title .arrow {
  background: #b4cc8b;
  border: 1px solid #b4cc8b;
}
.top .menu-list li:nth-child(4) .menu-title {
  color: #f6cd75;
}
.top .menu-list li:nth-child(4) .menu-title .arrow {
  background: #f6cd75;
  border: 1px solid #f6cd75;
}
.top .menu-list li:nth-child(5) .menu-title {
  color: #eeb977;
}
.top .menu-list li:nth-child(5) .menu-title .arrow {
  background: #eeb977;
  border: 1px solid #eeb977;
}
.top .menu-list a {
  display: block;
  text-decoration: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media (hover: hover) {
  .top .menu-list a:hover .img-box img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .top .menu-list a:hover .menu-title .arrow {
    background: #fff;
  }
  .top .menu-list a:hover .menu-title .arrow::after {
    background: currentColor;
  }
}
@media screen and (min-width: 640px) {
  .top .menu-list li {
    width: 48.4375%;
  }
}
.top .color-box {
  background: #f4f9fb;
  border-radius: 10px;
  padding: 3em min(6.4102564103vw, 3em) 3em;
  margin-top: min(10.2564102564vw, 4.5em);
  position: relative;
}
.top .color-box .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: clamp(5.5em, 10.2564102564vw, 6.3em);
  height: clamp(5.5em, 10.2564102564vw, 6.3em);
  position: absolute;
  left: 2.8571428571%;
  top: -1em;
  background: url(/assets/img/event/top/icon-pickup.png) center center/contain no-repeat;
  z-index: 1;
}
.top .color-box .icon span {
  display: inline-block;
  color: #fff;
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.top .color-box .box-title {
  color: #95c7d5;
  font-size: clamp(1.6rem, 0.6278481013rem + 1.2658227848vw, 2.4rem);
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}
.top .color-box .img-box {
  margin-bottom: 1em;
}
.top .color-box .img-box img {
  width: 100%;
}
.top .color-box .txt-box .small {
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
}
@media screen and (min-width: 640px) {
  .top .color-box .box-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
  }
  .top .color-box .box-title {
    position: absolute;
    left: 42.7966101695%;
    top: 0;
    text-align: left;
  }
  .top .color-box .img-box {
    width: 37.5%;
    margin-bottom: 0;
  }
  .top .color-box .txt-box {
    width: 57.2033898305%;
    margin-top: 6em;
  }
  .top .color-box .icon {
    left: -1em;
  }
}
.top .goods-block {
  padding: min(14.1025641026vw, 100px) 0;
  background: url(/assets/img/event/top/bg-dots.png) #eaf4f7;
}
.top .goods-box {
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 5px 20px rgba(111, 111, 128, 0.1);
          box-shadow: 0 5px 20px rgba(111, 111, 128, 0.1);
  padding: 3em min(6.4102564103vw, 3em) 0;
  position: relative;
}
.top .goods-box .goods-title {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding: 0.5em 3.4%;
  background: #95c7d5;
  border-radius: 0.33em;
  color: #fff;
  font-size: clamp(1.8rem, 1.0708860759rem + 0.9493670886vw, 2.4rem);
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.top .goods-box .goods-title::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  border-top: 0.3em solid #95c7d5;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.top .goods-box .box-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  row-gap: 2em;
  margin-top: min(5.1282051282vw, 2.5em);
}
.top .goods-box .img-box01 {
  width: 100%;
}
.top .goods-box .img-box01 img {
  width: 100%;
}
.top .goods-box .img-box02 {
  width: min(59.7435897436vw, 359px);
  margin: 0 auto;
}
@media screen and (min-width: 640px) {
  .top .goods-box {
    text-align: center;
  }
  .top .goods-box .img-box01 {
    width: 56.0344827586%;
    padding-bottom: 3em;
  }
  .top .goods-box .img-box02 {
    width: 38.6853448276%;
    margin: 0;
  }
}
.top .event-block {
  padding: min(12.8205128205vw, 100px) 0 min(17.9487179487vw, 140px);
}
.top .event-box {
  background: #f8f8f8;
  border-radius: 10px;
  padding: 1.5em min(3.8461538462vw, 3em);
  margin: 2em 0 3em;
}
.top .event-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5em 3.125%;
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
  font-weight: bold;
}
.top .event-list li {
  width: 48.4375%;
}
.top .event-list .time {
  line-height: 1.4;
  padding-left: 1.7em;
}
.top .event-list .time + .time {
  margin-top: 0.2em;
}
.top .event-list .course {
  display: inline-block;
  color: #fff;
  border-radius: 4px;
  font-size: clamp(1rem, 0.7569620253rem + 0.3164556962vw, 1.2rem);
  text-align: center;
  padding: 0 0.5em;
  margin-right: 0.5em;
}
.top .event-list .course.observation {
  min-width: 5em;
  background: #95c7d5;
}
.top .event-list .course.pre-school {
  min-width: 6em;
  background: #b4cc8b;
}
@media screen and (min-width: 640px) {
  .top .event-list {
    -webkit-column-gap: 4.3103448276%;
       -moz-column-gap: 4.3103448276%;
            column-gap: 4.3103448276%;
  }
  .top .event-list li {
    width: auto;
  }
}
.top .custom-calendar-wrap {
  width: 100%;
}

.hide {
  display: none;
}

.fc-calendar-container {
  background: #fff;
}

.custom-header {
  position: relative;
  margin-bottom: 1em;
}

.custom-month {
  font-family: "Neuton", serif;
  font-size: clamp(3.5rem, 1.6772151899rem + 2.3734177215vw, 5rem);
  font-weight: 300;
  text-align: center;
  line-height: 1;
}
.custom-month .en {
  margin-left: 0.5em;
  font-size: 0.56em;
}

.custom-next,
.custom-prev {
  position: absolute;
  bottom: 0;
  width: 3.5em;
  height: 3.5em;
  border: 1px solid currentColor;
  border-radius: 50%;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.custom-next:hover,
.custom-prev:hover {
  background: #3e3a39;
}
.custom-next:hover::after,
.custom-prev:hover::after {
  background: #fff;
}
.custom-next::after,
.custom-prev::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30%;
  height: 24%;
  background: #3e3a39;
  -webkit-mask-image: url(/assets/img/share/icon-arrow.svg);
  mask-image: url(/assets/img/share/icon-arrow.svg);
  -webkit-mask-size: 100%;
  mask-size: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  content: "";
}

.custom-next {
  right: 0;
}

.custom-prev {
  left: 0;
}
.custom-prev::after {
  -webkit-transform: translate(-50%, -50%) rotate(180deg);
          transform: translate(-50%, -50%) rotate(180deg);
}

.fc-calendar {
  background: #f8f8f8;
}

.fc-head,
.fc-body {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  letter-spacing: 0.05em;
}

.fc-body {
  display: table;
  width: 100%;
  border-collapse: collapse;
}

.fc-head {
  display: table;
  width: 100%;
  background: #3e3a39;
  text-align: center;
}
.fc-head > div {
  padding: 0.5em 0;
  display: table-cell;
  vertical-align: top;
  width: 10%;
  color: #fff;
  font-size: clamp(1rem, 0.7569620253rem + 0.3164556962vw, 1.2rem);
  text-transform: uppercase;
}
.fc-head div:nth-child(1) {
  color: #e9b3b3;
}
.fc-head div:nth-child(7) {
  color: #95c7d5;
}

.fc-row {
  display: table-row;
  width: 100%;
  height: 85px;
}
.fc-row > div {
  display: table-cell;
  vertical-align: top;
  width: 14.2%;
  min-height: 54px;
  padding: 0.2em 0.5em;
  border: 1px solid #ddd;
  font-size: clamp(1.2rem, 0.9569620253rem + 0.3164556962vw, 1.4rem);
}
.fc-row > div:nth-child(1) {
  color: #e9b3b3;
}
.fc-row > div:nth-child(7) {
  color: #95c7d5;
}
.fc-row > div .icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.1em 12%;
}
.fc-row > div .icons li {
  width: clamp(15px, 40%, 19px);
}
.fc-row > div .icons a {
  display: block;
}
.fc-row > div .icons img {
  width: 100%;
}
.fc-row > div .fc-weekday {
  display: none;
}
.fc-row .holiday {
  color: #e9b3b3;
}

.event-categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.8em 1em;
  margin-top: 1em;
}
.event-categories > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1rem, 0.7569620253rem + 0.3164556962vw, 1.2rem);
  font-weight: bold;
  line-height: 1.2;
}
.event-categories > li > span {
  margin-right: 0.3em;
}

.observation .cont-wrap.cont-wrap {
  margin-top: min(3.8461538462vw, 30px);
}
@media screen and (max-width: 639px) {
  .observation .pc {
    display: none;
  }
}
@media screen and (min-width: 640px) {
  .observation .sp {
    display: none;
  }
}
@media screen and (max-width: 639px) {
  .observation .sp-align-left {
    text-align: left;
  }
}
.observation .mv-static img {
  width: 100%;
}
.observation .pb0 {
  padding-bottom: 0;
}
.observation .oc-check {
  padding: min(15.3846153846vw, 120px) 0;
}
.observation .oc-check .base-btn {
  margin-left: auto;
  margin-right: auto;
}
.observation .mv-cover {
  position: relative;
  margin-bottom: min(-6.4102564103vw, -70px);
}
@media screen and (min-width: 640px) {
  .observation .mv-cover {
    margin-bottom: min(-6.4102564103vw, -100px);
  }
}
.observation .mv-cover .mv-body {
  background-color: #fff;
  width: min(89.7435897436vw, 850px);
  margin-left: auto;
  margin-right: auto;
  padding-top: 2.5em;
  -webkit-transform: translateY(-55%);
          transform: translateY(-55%);
}
.observation .mv-cover .mv-title-ja {
  font-size: clamp(2.3rem, 0.7202531646rem + 2.0569620253vw, 3.6rem);
  text-align: center;
}
.observation .mv-cover .mv-title-en {
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  color: #95c7d5;
  text-align: center;
  font-family: "Neuton", serif;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}
.observation .mv-cover .mv-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.observation .card-links {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 3em 2em;
}
@media screen and (min-width: 640px) {
  .observation .card-links {
    grid-template-columns: repeat(2, 1fr);
  }
}
.observation .card-link {
  --card-color: #95c7d5;
}
.observation .card-link.night {
  --card-color: #a2abcf;
}
.observation .card-link.repeat {
  --card-color: #b4cc8b;
}
.observation .card-link.special {
  --card-color: #95c7d5;
}
.observation .card-link.web {
  --card-color: #d4a7d6;
}
.observation .card-link a {
  text-decoration: none;
}
.observation .card-link a:hover .link-head img {
  scale: 1.04;
}
.observation .card-link a:hover .link-title::before {
  background-color: #fff;
}
.observation .card-link a:hover .link-title::after {
  background-color: var(--card-color);
}
.observation .card-link .link-head {
  overflow: hidden;
  border-radius: 0.4em;
}
.observation .card-link .link-head img {
  -webkit-transition: scale 0.4s ease;
  transition: scale 0.4s ease;
}
.observation .card-link .link-body {
  padding-top: 1.5em;
}
.observation .card-link .link-title {
  position: relative;
  font-size: clamp(1.8rem, 1.0708860759rem + 0.9493670886vw, 2.4rem);
  font-weight: bold;
  color: var(--card-color);
}
.observation .card-link .link-title::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 25px;
  height: 25px;
  background-color: var(--card-color);
  border: 1px solid var(--card-color);
  border-radius: 50%;
  -webkit-transition: background-color 0.4s ease;
  transition: background-color 0.4s ease;
}
@media screen and (min-width: 640px) {
  .observation .card-link .link-title::before {
    width: 30px;
    height: 30px;
  }
}
.observation .card-link .link-title::after {
  display: block;
  position: absolute;
  top: 7px;
  right: 6px;
  width: 0;
  height: 12px;
  width: 12px;
  background: #fff;
  -webkit-mask-image: url(/assets/img/share/icon-arrow.svg);
  mask-image: url(/assets/img/share/icon-arrow.svg);
  -webkit-mask-size: 100%;
  mask-size: 100%;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-transition: background-color 0.4s ease;
  transition: background-color 0.4s ease;
  content: "";
}
@media screen and (min-width: 640px) {
  .observation .card-link .link-title::after {
    top: 9px;
    right: 8px;
  }
}
.observation .card-link .link-text {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  margin-top: 0.5em;
}
.observation .pickup-banner {
  position: relative;
  margin-top: 4em;
  background-color: #fef7f7;
  border-radius: 0.4em;
  padding: 25px;
}
@media screen and (min-width: 640px) {
  .observation .pickup-banner {
    padding: 40px;
  }
}
.observation .pickup-banner .banner-icon {
  position: absolute;
  left: -20px;
  top: -20px;
}
@media screen and (max-width: 639px) {
  .observation .pickup-banner .banner-icon {
    width: 65px;
    left: 10px;
  }
}
.observation .pickup-banner .banner-inner {
  display: grid;
  gap: 0 2em;
  grid-template-areas: "header title" "header desc";
  grid-template-rows: auto 1fr;
}
@media screen and (max-width: 639px) {
  .observation .pickup-banner .banner-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5em;
  }
}
.observation .pickup-banner .banner-header {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  grid-area: header;
}
.observation .pickup-banner .banner-title {
  font-size: clamp(1.6rem, 0.6278481013rem + 1.2658227848vw, 2.4rem);
  font-weight: bold;
  color: #95c7d5;
  margin-bottom: 0.5em;
  grid-area: title;
}
@media screen and (max-width: 639px) {
  .observation .pickup-banner .banner-title {
    text-align: center;
    margin-bottom: 0;
  }
}
.observation .pickup-banner .banner-text {
  grid-area: desc;
}
.observation .pickup-banner .banner-notes {
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
}
.observation .pickup-banner02 {
  width: 100%;
  max-width: 480px;
  margin: 2em auto 0;
}
@media screen and (min-width: 640px) {
  .observation .pickup-banner02 {
    margin-top: 3em;
  }
}
.observation .pickup-banners {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 2em;
  margin: 3em 0 0;
}
@media screen and (min-width: 640px) {
  .observation .pickup-banners {
    grid-template-columns: repeat(2, 1fr);
  }
}
.observation .pickup-banners .banner-img img {
  border-radius: 0.8em;
}
.observation .pickup-banners .banner-title {
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  font-size: clamp(1.4rem, 1.1569620253rem + 0.3164556962vw, 1.6rem);
  font-weight: bold;
  line-height: 1.4;
}
.observation .pickup-banners .banner-title strong {
  color: #95c7d5;
}
.observation .pickup-banners .banner-txt {
  font-size: clamp(1.2rem, 0.9569620253rem + 0.3164556962vw, 1.4rem);
}
.observation .event-calendar .event-header {
  background-color: #f8f8f8;
  border-radius: 0.4em;
  margin-top: 2em;
  margin-bottom: 2em;
  padding: 2em;
}
@media screen and (max-width: 639px) {
  .observation .event-calendar .event-header {
    padding: 1em;
  }
}
.observation .event-calendar .event-categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2em;
  margin-top: 0;
}
@media screen and (max-width: 639px) {
  .observation .event-calendar .event-categories {
    gap: 1em 0;
  }
}
.observation .event-calendar .event-categories .event-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 639px) {
  .observation .event-calendar .event-categories .event-category {
    width: calc(50% - 1em);
  }
}
.observation .event-calendar .event-categories .event-category .category-icon {
  margin-right: 0.5em;
}
@media screen and (max-width: 639px) {
  .observation .event-calendar .event-categories .event-category .category-icon {
    width: 15px;
  }
}
.observation .event-calendar .event-categories .event-category .category-icon img {
  vertical-align: top;
}
.observation .event-calendar .event-categories .event-category .category-label {
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
  line-height: 1.4;
  font-weight: bold;
}
.observation .oc-intro {
  position: relative;
}
.observation .oc-intro .intro-title {
  font-size: clamp(1.8rem, 0.5848101266rem + 1.582278481vw, 2.8rem);
  color: #95c7d5;
  text-align: center;
  font-weight: bold;
}
.observation .oc-intro .intro-text {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  text-align: center;
  margin-top: 2em;
}
@media screen and (max-width: 639px) {
  .observation .oc-intro .intro-bg {
    margin-left: -10vw;
    margin-right: -10vw;
  }
}
.observation .oc-intro .intro-bg img {
  width: 100%;
}
.observation .oc-intro .intro-body {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%;
}
.observation .oc-feature {
  padding-top: min(15.3846153846vw, 120px);
}
.observation .oc-feature .feature-header img {
  width: 100%;
}
.observation .oc-feature .feature-body {
  background: url(../../img/event/observation/feature-bg.png) 0 0;
  padding: min(12.8205128205vw, 100px) 0;
}
.observation .oc-feature .feature-inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2em;
}
@media screen and (max-width: 639px) {
  .observation .oc-feature .feature-inner {
    grid-template-columns: repeat(1, 1fr);
    gap: 3em;
  }
}
.observation .oc-feature .feature-card {
  position: relative;
  -webkit-filter: drop-shadow(0 0.4em 1.25em rgba(111, 111, 128, 0.1));
          filter: drop-shadow(0 0.4em 1.25em rgba(111, 111, 128, 0.1));
  background-color: #fff;
  padding: 3.5em 1.75em 2em;
  border-radius: 0.8em;
}
.observation .oc-feature .feature-card .card-icon {
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, -30%);
          transform: translate(-50%, -30%);
}
@media screen and (max-width: 639px) {
  .observation .oc-feature .feature-card .card-icon {
    width: 45px;
  }
}
.observation .oc-feature .feature-card .card-ttl {
  font-size: clamp(1.8rem, 1.5569620253rem + 0.3164556962vw, 2rem);
  color: #95c7d5;
  text-align: center;
  line-height: 1.4;
}
.observation .oc-feature .feature-card .card-photo {
  margin-top: 1.5em;
}
.observation .oc-feature .feature-card .card-text {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  margin-top: 1.5em;
}
.observation .oc-voice {
  padding: min(15.3846153846vw, 120px) 0;
}
.observation .oc-voice .voice-body {
  position: relative;
  margin-top: 3em;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 4em;
  padding-bottom: 4em;
}
@media screen and (min-width: 640px) {
  .observation .oc-voice .voice-body {
    margin-top: 4em;
  }
}
.observation .oc-voice .voice-body::after {
  content: "";
  position: absolute;
  left: 1.5em;
  right: 1.5em;
  top: 0;
  bottom: 0;
  z-index: -1;
  background-color: #eff7f9;
  border-radius: 0.4em;
}
@media screen and (min-width: 640px) {
  .observation .oc-voice .voice-body::after {
    left: 3em;
    right: 3em;
    border-radius: 0.8em;
  }
}
.observation .oc-voice .voice-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2em;
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}
.observation .oc-voice .voice-item + .voice-item {
  margin-top: 2em;
}
@media screen and (min-width: 640px) {
  .observation .oc-voice .voice-item + .voice-item {
    margin-top: 2.5em;
  }
}
.observation .oc-voice .voice-item.left .item-body::before {
  content: "";
  position: absolute;
  right: 100%;
  top: 50%;
  z-index: 1;
  border-top: 5px solid #fff;
  border-right: 5px solid #fff;
  border-bottom: 5px solid transparent;
  border-left: 5px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .observation .oc-voice .voice-item.left .item-body::before {
    top: 30px;
    -webkit-transform: none;
            transform: none;
  }
}
.observation .oc-voice .voice-item.left .item-body::after {
  content: "";
  position: absolute;
  right: 100%;
  top: 50%;
  z-index: 0;
  border-top: 7px solid #cae3ea;
  border-right: 8px solid #cae3ea;
  border-bottom: 7px solid transparent;
  border-left: 7px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .observation .oc-voice .voice-item.left .item-body::after {
    top: 28px;
    -webkit-transform: none;
            transform: none;
  }
}
.observation .oc-voice .voice-item.right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.observation .oc-voice .voice-item.right .item-body::before {
  content: "";
  position: absolute;
  left: 100%;
  top: 50%;
  z-index: 1;
  border-top: 5px solid #fff;
  border-left: 5px solid #fff;
  border-bottom: 5px solid transparent;
  border-right: 5px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .observation .oc-voice .voice-item.right .item-body::before {
    top: 30px;
    -webkit-transform: none;
            transform: none;
  }
}
.observation .oc-voice .voice-item.right .item-body::after {
  content: "";
  position: absolute;
  left: 100%;
  top: 50%;
  z-index: 0;
  border-top: 7px solid #cae3ea;
  border-left: 8px solid #cae3ea;
  border-bottom: 7px solid transparent;
  border-right: 7px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .observation .oc-voice .voice-item.right .item-body::after {
    top: 28px;
    -webkit-transform: none;
            transform: none;
  }
}
.observation .oc-voice .voice-item .item-header {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 70px;
}
@media screen and (min-width: 640px) {
  .observation .oc-voice .voice-item .item-header {
    width: auto;
  }
}
.observation .oc-voice .voice-item .item-header .caption {
  position: relative;
  text-align: center;
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
  margin-top: 0.5em;
  padding-top: 2em;
}
.observation .oc-voice .voice-item .item-header .caption-inner {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  white-space: nowrap;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  line-height: 1.4285714286;
  font-weight: bold;
}
.observation .oc-voice .voice-item .item-body {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: #fff;
  border-radius: 1em;
  border: 2px solid #cae3ea;
  padding: 1em 1.5em;
}
@media screen and (min-width: 640px) {
  .observation .oc-voice .voice-item .item-body {
    padding: 1.5em;
  }
}
.observation .oc-voice .voice-item .item-text {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
}
.observation .oc-voice .voice-footer {
  margin-top: 3em;
}
@media screen and (min-width: 640px) {
  .observation .oc-voice .voice-footer {
    margin-top: 4em;
  }
}

.pre-school .mv-container {
  padding-bottom: min(19.2307692308vw, 7.5em);
}
.pre-school .mv-container .mv-front {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.pre-school .mv-container .mv-title-box01 {
  width: min(82.0512820513vw, 850px);
  margin: 0 auto;
  background: #fff;
  border-radius: 10px 10px 0 0;
  text-align: center;
  padding: min(5.1282051282vw, 3em) 1em min(10.2564102564vw, 4em);
}
.pre-school .mv-container .mv-title-ja01 {
  font-size: clamp(2.3rem, 0.7202531646rem + 2.0569620253vw, 3.6rem);
  font-weight: bold;
}
.pre-school .mv-container .mv-title-en01 {
  color: #95c7d5;
  font-family: "Neuton", serif;
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1;
}
@media screen and (min-width: 640px) {
  .pre-school .mv-container .mv-bg {
    max-height: 480px;
  }
}
.pre-school .main-container {
  padding: 0;
}
.pre-school .line-box {
  padding: 2em 1em;
  background: #f8f8f8;
  border-radius: 0.4em;
}
@media screen and (min-width: 640px) {
  .pre-school .line-box {
    padding: 3em;
  }
}
.pre-school .line-box-text {
  margin-bottom: 1em;
  color: #95c7d5;
  font-size: clamp(1.3rem, -0.0367088608rem + 1.7405063291vw, 2.4rem);
  font-weight: bold;
  text-align: center;
}
.pre-school .line-box-bnr {
  text-align: center;
}
.pre-school .line-box-bnr > a {
  display: inline-block;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.pre-school .line-box-bnr > a:hover {
  opacity: 0.7;
}
.pre-school .lineup_wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2em;
}
@media screen and (min-width: 640px) {
  .pre-school .lineup_wrap {
    grid-template-columns: 1fr 1fr;
    gap: 3em min(4vw, 40px);
  }
}
.pre-school .lineup_wrap .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.pre-school .lineup_wrap .item .photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
}
.pre-school .lineup_wrap .item .photo picture {
  width: 100%;
}
.pre-school .lineup_wrap .item .photo picture img {
  width: 100%;
}
.pre-school .lineup_wrap .item .txt_wrap {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: auto !important;
  padding: 2.5em 1.5em 0;
  background: #fff;
}
.pre-school .lineup_wrap .item .txt_wrap .ttl_wrap {
  position: absolute;
  bottom: 100%;
  left: 0;
  color: #fff;
  font-size: clamp(1.6rem, 1.3569620253rem + 0.3164556962vw, 1.8rem);
  font-weight: bold;
  background: #95c7d5;
  padding: 0.3em 1em;
  -webkit-transform: translate(0, 50%);
          transform: translate(0, 50%);
}
.pre-school .lineup_wrap .item .txt_wrap .ttl_wrap.day {
  background: #e67399;
}
.pre-school .lineup_wrap .item .txt_wrap .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  width: 100%;
  height: auto !important;
}
.pre-school .lineup_wrap .item .txt_wrap .schedule {
  margin-top: 1.5em;
}
.pre-school .lineup_wrap .item .txt_wrap .schedule span {
  font-size: clamp(1.6rem, 1.3569620253rem + 0.3164556962vw, 1.8rem);
  font-weight: bold;
}
.pre-school .lineup_wrap .item .txt_wrap .time span {
  font-size: clamp(1.6rem, 1.3569620253rem + 0.3164556962vw, 1.8rem);
  font-weight: bold;
}
.pre-school .lineup_wrap .item .btn {
  padding: 1.5em;
  background: #fff;
}
.pre-school .lineup_wrap .item .btn > b {
  display: none;
}
.pre-school .lineup_wrap .item .btn > a {
  display: block;
  position: relative;
  padding: 1em 2.5em;
  background: #3e3a39;
  border: 2px solid #3e3a39;
  border-radius: 2.5em;
  width: 100%;
  max-width: 320px;
  color: #fff;
  font-size: clamp(1.3rem, 0.935443038rem + 0.4746835443vw, 1.6rem);
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
  text-decoration: none;
  margin: 0 auto;
}
.pre-school .lineup_wrap .item .btn > a:hover {
  background: #fff;
  color: #3e3a39;
}
.pre-school .lineup_wrap .item .btn > a::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 1em;
  width: 1em;
  height: 0.78em;
  background: currentColor;
  -webkit-mask-image: url(/assets/img/share/icon-arrow.svg);
  mask-image: url(/assets/img/share/icon-arrow.svg);
  -webkit-mask-size: 100%;
  mask-size: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
}

.observation-society .line-box-text {
  margin-bottom: 1em;
  color: #95c7d5;
  font-size: clamp(1.3rem, -0.0367088608rem + 1.7405063291vw, 2.4rem);
  font-weight: bold;
  text-align: center;
}
.observation-society .line-box-bnr {
  text-align: center;
}
.observation-society .line-box {
  padding: 2em 1em;
  background: #f8f8f8;
  border-radius: 0.4em;
}
.observation-society .schedule-box + .content-box {
  margin-top: min(2em + 8.2051282051vw, 2em + 64px);
}
.observation-society .no-schedule-date .schedule-date {
  display: none !important;
}

.observation-society .mv-container {
  padding-bottom: min(19.2307692308vw, 7.5em);
}
.observation-society .mv-container .mv-front {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.observation-society .mv-container .mv-title-box01 {
  width: min(82.0512820513vw, 850px);
  margin: 0 auto;
  background: #fff;
  border-radius: 10px 10px 0 0;
  text-align: center;
  padding: min(5.1282051282vw, 3em) 1em min(10.2564102564vw, 4em);
}
.observation-society .mv-container .mv-title-ja01 {
  font-size: clamp(2.3rem, 0.7202531646rem + 2.0569620253vw, 3.6rem);
  font-weight: bold;
}
.observation-society .mv-container .mv-title-en01 {
  color: #95c7d5;
  font-family: "Neuton", serif;
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1;
}
@media screen and (min-width: 640px) {
  .observation-society .mv-container .mv-bg {
    max-height: 480px;
  }
}
.observation-society .main-container {
  padding: 0;
}
.observation-society .red {
  color: #c00;
}

.web_campus .mv-container {
  padding-bottom: min(19.2307692308vw, 7.5em);
}
.web_campus .mv-container .mv-front {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.web_campus .mv-container .mv-title-box01 {
  width: min(82.0512820513vw, 850px);
  margin: 0 auto;
  background: #fff;
  border-radius: 10px 10px 0 0;
  text-align: center;
  padding: min(5.1282051282vw, 3em) 1em min(10.2564102564vw, 4em);
}
.web_campus .mv-container .mv-title-ja01 {
  font-size: clamp(2.3rem, 0.7202531646rem + 2.0569620253vw, 3.6rem);
  font-weight: bold;
}
.web_campus .mv-container .mv-title-en01 {
  color: #95c7d5;
  font-family: "Neuton", serif;
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1;
}
@media screen and (min-width: 640px) {
  .web_campus .mv-container .mv-bg {
    max-height: 480px;
  }
}
.web_campus .main-container {
  padding: 0;
}
.web_campus .schedule-flow-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2em;
}
@media screen and (min-width: 640px) {
  .web_campus .schedule-flow-cards {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.web_campus .schedule-flow-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1.5em;
  background-color: #fff;
  border-radius: 0.8em;
  -webkit-filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
          filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
}
.web_campus .schedule-flow-card .flow-title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  font-weight: bold;
  margin-bottom: 1em;
  width: 100%;
}
.web_campus .schedule-flow-card .flow-body-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
}
.web_campus .schedule-flow-card .flow-body-photo img {
  max-width: none;
  width: 100%;
}
.web_campus .oc-voice {
  padding: min(15.3846153846vw, 120px) 0;
}
.web_campus .oc-voice .voice-body {
  position: relative;
  margin-top: 3em;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 4em;
  padding-bottom: 4em;
}
@media screen and (min-width: 640px) {
  .web_campus .oc-voice .voice-body {
    margin-top: 4em;
  }
}
.web_campus .oc-voice .voice-body::after {
  content: "";
  position: absolute;
  left: 1.5em;
  right: 1.5em;
  top: 0;
  bottom: 0;
  z-index: -1;
  background-color: #eff7f9;
  border-radius: 0.4em;
}
@media screen and (min-width: 640px) {
  .web_campus .oc-voice .voice-body::after {
    left: 3em;
    right: 3em;
    border-radius: 0.8em;
  }
}
.web_campus .oc-voice .voice-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2em;
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}
.web_campus .oc-voice .voice-item + .voice-item {
  margin-top: 2em;
}
@media screen and (min-width: 640px) {
  .web_campus .oc-voice .voice-item + .voice-item {
    margin-top: 2.5em;
  }
}
.web_campus .oc-voice .voice-item.left .item-body::before {
  content: "";
  position: absolute;
  right: 100%;
  top: 50%;
  z-index: 1;
  border-top: 5px solid #fff;
  border-right: 5px solid #fff;
  border-bottom: 5px solid transparent;
  border-left: 5px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .web_campus .oc-voice .voice-item.left .item-body::before {
    top: 30px;
    -webkit-transform: none;
            transform: none;
  }
}
.web_campus .oc-voice .voice-item.left .item-body::after {
  content: "";
  position: absolute;
  right: 100%;
  top: 50%;
  z-index: 0;
  border-top: 7px solid #cae3ea;
  border-right: 8px solid #cae3ea;
  border-bottom: 7px solid transparent;
  border-left: 7px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .web_campus .oc-voice .voice-item.left .item-body::after {
    top: 28px;
    -webkit-transform: none;
            transform: none;
  }
}
.web_campus .oc-voice .voice-item.right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.web_campus .oc-voice .voice-item.right .item-body::before {
  content: "";
  position: absolute;
  left: 100%;
  top: 50%;
  z-index: 1;
  border-top: 5px solid #fff;
  border-left: 5px solid #fff;
  border-bottom: 5px solid transparent;
  border-right: 5px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .web_campus .oc-voice .voice-item.right .item-body::before {
    top: 30px;
    -webkit-transform: none;
            transform: none;
  }
}
.web_campus .oc-voice .voice-item.right .item-body::after {
  content: "";
  position: absolute;
  left: 100%;
  top: 50%;
  z-index: 0;
  border-top: 7px solid #cae3ea;
  border-left: 8px solid #cae3ea;
  border-bottom: 7px solid transparent;
  border-right: 7px solid transparent;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 639px) {
  .web_campus .oc-voice .voice-item.right .item-body::after {
    top: 28px;
    -webkit-transform: none;
            transform: none;
  }
}
.web_campus .oc-voice .voice-item .item-header {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 70px;
}
@media screen and (min-width: 640px) {
  .web_campus .oc-voice .voice-item .item-header {
    width: auto;
  }
}
.web_campus .oc-voice .voice-item .item-header .caption {
  position: relative;
  text-align: center;
  font-size: clamp(1.1rem, 0.735443038rem + 0.4746835443vw, 1.4rem);
  margin-top: 0.5em;
  padding-top: 1em;
}
.web_campus .oc-voice .voice-item .item-header .caption-inner {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  white-space: nowrap;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  line-height: 1.4285714286;
  font-weight: bold;
}
.web_campus .oc-voice .voice-item .item-body {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: #fff;
  border-radius: 1em;
  border: 2px solid #cae3ea;
  padding: 1em 1.5em;
}
@media screen and (min-width: 640px) {
  .web_campus .oc-voice .voice-item .item-body {
    padding: 1.5em;
  }
}
.web_campus .oc-voice .voice-item .item-text {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
}
.web_campus .oc-voice .voice-footer {
  margin-top: 3em;
}
@media screen and (min-width: 640px) {
  .web_campus .oc-voice .voice-footer {
    margin-top: 4em;
  }
}

.society .mv-container {
  padding-bottom: min(19.2307692308vw, 7.5em);
}
.society .mv-container .mv-front {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.society .mv-container .mv-title-box01 {
  width: min(82.0512820513vw, 850px);
  margin: 0 auto;
  background: #fff;
  border-radius: 10px 10px 0 0;
  text-align: center;
  padding: min(5.1282051282vw, 3em) 1em min(10.2564102564vw, 4em);
}
.society .mv-container .mv-title-ja01 {
  font-size: clamp(2.3rem, 0.7202531646rem + 2.0569620253vw, 3.6rem);
  font-weight: bold;
}
.society .mv-container .mv-title-en01 {
  color: #95c7d5;
  font-family: "Neuton", serif;
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1;
}
@media screen and (min-width: 640px) {
  .society .mv-container .mv-bg {
    max-height: 480px;
  }
}
.society .main-container {
  padding: 0;
}
.society .schedule-flow-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2em;
}
@media screen and (min-width: 640px) {
  .society .schedule-flow-cards {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.society .schedule-flow-cards:not(:last-child) {
  margin-bottom: 1.5em;
}
.society .schedule-flow-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1.5em;
  background-color: #fff;
  border-radius: 0.8em;
  -webkit-filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
          filter: drop-shadow(0 5px 20px rgba(111, 111, 128, 0.1));
}
.society .schedule-flow-card .flow-title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  font-weight: bold;
  margin-bottom: 1em;
  width: 100%;
}
.society .schedule-flow-card .flow-body-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
}
.society .schedule-flow-card .flow-body-photo img {
  max-width: none;
  width: 100%;
}

.online .mv-container {
  width: min(89.7435897436vw, 1240px);
  margin: auto;
}
.online .mv-container h2 img {
  width: 100%;
}
.online .lead-text {
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  text-align: center;
}
.online .btn-box {
  text-align: center;
  margin-top: 2em;
}
.online .btn-box .text {
  font-size: clamp(1.4rem, 1.1569620253rem + 0.3164556962vw, 1.6rem);
  font-weight: bold;
}
.online .btn-box .btn > a {
  display: inline-block;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.online .btn-box .btn > a:hover {
  opacity: 0.7;
}
.online .btn-box .btn > a img {
  max-width: 300px;
  width: 100%;
}
@media screen and (min-width: 640px) {
  .online .btn-box .btn > a img {
    max-width: 100%;
  }
}
.online .nav-content {
  margin: min(15.3846153846vw, 120px) 0;
  padding: clamp(50px, 7.1428571429%, 100px) 0;
  background: url("/assets/img/event/online/bg01.png") repeat 0 0;
}
.online .link-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(35px, 4.8828125vw, 50px) clamp(16px, 3.125vw, 32px);
}
@media screen and (min-width: 640px) {
  .online .link-cards {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.online .link-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.online .link-card > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  text-decoration: none;
  background: #fff;
  border-radius: 0.4em;
  -webkit-filter: drop-shadow(5px 0 1em rgba(111, 111, 128, 0.1));
          filter: drop-shadow(5px 0 1em rgba(111, 111, 128, 0.1));
  padding: 0 clamp(10px, 6.25vw, 20px) clamp(10px, 6.25vw, 20px);
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
}
.online .link-card > a::after {
  display: block;
  width: 16px;
  height: 9px;
  background: #4cc764;
  -webkit-mask-image: url(/assets/img/event/online/arrow.svg);
  mask-image: url(/assets/img/event/online/arrow.svg);
  -webkit-mask-size: 100%;
  mask-size: 100%;
  content: "";
}
.online .link-card > a:hover {
  -webkit-filter: drop-shadow(0 0 1.5rem #4cc764);
          filter: drop-shadow(0 0 1.5rem #4cc764);
}
.online .link-card .icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
  text-align: center;
  margin: -1em 0 1em;
}
.online .link-card .icon img {
  width: clamp(133px, 58.125vw, 186px);
}
.online .link-card .text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  margin: 0 0 1em;
}
.online .decoration-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1em;
  font-size: clamp(1.8rem, 0.5848101266rem + 1.582278481vw, 2.8rem);
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}
.online .decoration-title::before {
  display: block;
  width: 21px;
  height: 40px;
  background: url(/assets/img/event/online/icon_left.png) no-repeat 0 0/100% 100%;
  content: "";
}
.online .decoration-title::after {
  display: block;
  width: 21px;
  height: 40px;
  background: url(/assets/img/event/online/icon_right.png) no-repeat 0 0/100% 100%;
  content: "";
}
.online .pamph-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 2em 0 0;
  border-radius: 0.4em;
  background: #f8f8f8;
  padding: 0 min(6.4102564103vw, 50px);
  gap: 0 4.5714285714%;
}
@media screen and (min-width: 640px) {
  .online .pamph-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.online .pamph-box-body {
  padding: min(6.1538461538vw, 48px) 0;
}
@media screen and (min-width: 640px) {
  .online .pamph-box-body {
    max-width: 400px;
    width: 50%;
  }
}
.online .pamph-box-body .catch {
  font-size: clamp(1.4rem, 0.6708860759rem + 0.9493670886vw, 2rem);
  font-weight: bold;
  text-align: center;
}
.online .pamph-box-body .title {
  margin: 1em 0;
}
.online .pamph-box-image {
  margin-right: -4%;
  text-align: center;
}
.online .pamph-box-image img {
  max-width: 70%;
}
@media screen and (min-width: 640px) {
  .online .pamph-box-image {
    width: 50%;
  }
}
.online .main-content {
  padding: clamp(50px, 7.1428571429%, 100px) 0 0;
  background: url("/assets/img/event/online/bg02.png") repeat 0 0;
}
.online .container-box {
  padding-top: 2em;
  margin-bottom: -2em;
}
.online .container-box + .container-box {
  margin-top: min(10.2564102564vw, 80px);
}
.online .container-box + .content-box {
  margin-top: min(2em + 8.2051282051vw, 2em + 64px);
}
.online .container-box.pb-none {
  padding-bottom: 0;
}
.online .container-box-inner {
  background: #fff;
  padding: 0 min(7.1428571429%, 50px) min(7.1428571429%, 50px);
  border-radius: 0.4em;
  -webkit-filter: drop-shadow(5px 0 1em rgba(111, 111, 128, 0.1));
          filter: drop-shadow(5px 0 1em rgba(111, 111, 128, 0.1));
}
@media screen and (min-width: 640px) {
  .online .container-box-inner {
    padding: 0 min(4.8828125%, 50px) min(7.1428571429%, 50px);
  }
}
.online .icon-title {
  text-align: center;
  margin-bottom: 2em;
}
.online .icon-title::after {
  content: "";
  display: block;
  height: 3px;
  margin: 1.5em 0 0;
  background: url("/assets/img/event/online/dot01.png") repeat-x 0 0;
}
.online .icon-title .icon {
  display: block;
}
.online .icon-title .icon img {
  margin-top: -1.5em;
  max-width: 161px;
}
@media screen and (min-width: 640px) {
  .online .icon-title .icon img {
    max-width: none;
  }
}
.online .icon-title .label {
  font-size: clamp(1.8rem, 0.5848101266rem + 1.582278481vw, 2.8rem);
  display: block;
  font-weight: bold;
  margin-top: 0.4em;
}
.online .lead {
  font-size: clamp(1.3rem, 0.6924050633rem + 0.7911392405vw, 1.8rem);
  font-weight: bold;
  text-align: center;
  margin-bottom: 0.5em;
}
@media screen and (min-width: 640px) {
  .online .lead {
    text-align: left;
  }
}
.online .lead .marker {
  display: inline-block;
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(39.5%, transparent), color-stop(40%, #fff66c), color-stop(80%, #fff66c), color-stop(80.1%, transparent));
  background-image: linear-gradient(to bottom, transparent 0%, transparent 39.5%, #fff66c 40%, #fff66c 80%, transparent 80.1%);
  line-height: inherit;
}
.online .title-green {
  font-size: clamp(1.6rem, 0.6278481013rem + 1.2658227848vw, 2.4rem);
  font-weight: bold;
  color: #4cc764;
  text-align: center;
  margin-bottom: 0.5em;
}
@media screen and (min-width: 640px) {
  .online .title-green {
    text-align: left;
  }
  .online .title-green.txt-center {
    text-align: center;
  }
}
.online .media-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 640px) {
  .online .media-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(5.4112554113%, 50px);
  }
}
.online .media-box-body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (min-width: 640px) {
  .online .media-box-body.pb {
    padding-bottom: min(7.1428571429%, 50px);
  }
}
.online .media-box-img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  text-align: center;
}
@media screen and (min-width: 640px) {
  .online .media-box-img {
    max-width: 50%;
  }
}
.online .video-box {
  display: grid;
  grid-template-columns: 1fr;
  gap: min(4.2857142857%, 30px);
}
@media screen and (min-width: 640px) {
  .online .video-box {
    grid-template-columns: 1fr 1fr;
    gap: min(3.4632034632%, 32px);
  }
}
.online .video-box-item .caption {
  text-align: center;
}
.online .video {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  margin-bottom: 1em;
  border-radius: 0.4em;
}
.online .link-boxes {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 3em;
  gap: min(5vw, 30px);
}
@media screen and (min-width: 640px) {
  .online .link-boxes {
    grid-template-columns: 1fr 1fr;
    gap: min(3.4632034632%, 32px);
  }
}
.online .link-box-title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-weight: bold;
  text-align: center;
  font-size: clamp(1.4rem, 1.1569620253rem + 0.3164556962vw, 1.6rem);
  margin-bottom: 1em;
  width: 100%;
}
@media screen and (min-width: 640px) {
  .online .link-box-title {
    font-size: clamp(1.1rem, 0.4924050633rem + 0.7911392405vw, 1.6rem);
  }
}
.online .link-box-main {
  width: 100%;
}
.online .link-box-main a {
  display: block;
  color: #fff;
  text-decoration: none;
  -webkit-transition: -webkit-filter 0.5s;
  transition: -webkit-filter 0.5s;
  transition: filter 0.5s;
  transition: filter 0.5s, -webkit-filter 0.5s;
}
.online .link-box-main img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  border-top-right-radius: 0.4em;
  border-top-left-radius: 0.4em;
}
.online .link-box-main .label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #fff;
  font-size: clamp(1.6rem, 1.3569620253rem + 0.3164556962vw, 1.8rem);
  font-weight: bold;
  padding: 0.3em 0.75em;
  border-bottom-right-radius: 0.4em;
  border-bottom-left-radius: 0.4em;
}
@media screen and (min-width: 640px) {
  .online .link-box-main .label {
    font-size: clamp(1.3rem, 0.6924050633rem + 0.7911392405vw, 1.8rem);
  }
}
.online .link-box-main .label .icon-circle-arrow {
  background: #fff;
}
.online .link-box-main.pink .label {
  background: #f2afb3;
}
.online .link-box-main.pink .label .icon-circle-arrow {
  color: #f2afb3;
}
.online .link-box-main.pink a:hover {
  -webkit-filter: drop-shadow(0 0 1.5rem #f2afb3);
          filter: drop-shadow(0 0 1.5rem #f2afb3);
}
.online .link-box-main.green .label {
  background: #b4cc8b;
}
.online .link-box-main.green .label .icon-circle-arrow {
  color: #b4cc8b;
}
.online .link-box-main.green a:hover {
  -webkit-filter: drop-shadow(0 0 1.5rem #b4cc8b);
          filter: drop-shadow(0 0 1.5rem #b4cc8b);
}
.online .link-box-main.blue .label {
  background: #a2abcf;
}
.online .link-box-main.blue .label .icon-circle-arrow {
  color: #a2abcf;
}
.online .link-box-main.blue a:hover {
  -webkit-filter: drop-shadow(0 0 1.5rem #a2abcf);
          filter: drop-shadow(0 0 1.5rem #a2abcf);
}
.online .experience-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 640px) {
  .online .experience-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: min(5.4112554113%, 50px);
  }
}
.online .list-box {
  margin-bottom: 3em;
}
@media screen and (min-width: 640px) {
  .online .list-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: min(7.1428571429%, 50px);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
.online .list-disc {
  font-size: clamp(1.2rem, 0.4708860759rem + 0.9493670886vw, 1.8rem);
  font-weight: bold;
}
.online .list-disc li {
  position: relative;
  padding-left: 1em;
}
.online .list-disc li::before {
  content: "";
  display: block;
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 0.5em;
  height: 0.5em;
  background: #4cc764;
  border-radius: 50%;
}
.online .list-disc li:not(:last-child) {
  margin-bottom: 0.3em;
}
.online .survey-box-keyword {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  font-weight: bold;
  text-align: center;
}
.online .teethmag-box {
  text-align: center;
}
.online .teethmag-box-img {
  width: 150px;
}
.online .title-dialogue {
  font-size: clamp(1.4rem, 0.6708860759rem + 0.9493670886vw, 2rem);
  font-weight: bold;
  text-align: center;
  margin-bottom: 0.5em;
}
.online .survey-box {
  margin-top: 3em;
  border-radius: 0.4em;
  background: url("/assets/img/event/online/bg03.png") repeat 0 0;
  padding: min(6.6666666667%, 40px) min(8.3333333333%, 50px);
}
@media screen and (min-width: 640px) {
  .online .survey-box {
    padding: min(4.329004329%, 40px);
  }
}
.online .survey-box-title {
  font-size: clamp(1.6rem, 0.8708860759rem + 0.9493670886vw, 2.2rem);
  font-weight: bold;
  text-align: center;
  margin-bottom: 1.25em;
}
.online .survey-box-title .marker {
  display: inline-block;
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(49.5%, transparent), color-stop(50%, #fff66c), color-stop(80%, #fff66c), color-stop(80.1%, transparent));
  background-image: linear-gradient(to bottom, transparent 0%, transparent 49.5%, #fff66c 50%, #fff66c 80%, transparent 80.1%);
  line-height: inherit;
}
.online .survey-box-keyword {
  font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  font-weight: bold;
  text-align: center;
}
.online .title-balloon {
  position: relative;
  text-align: center;
  font-weight: bold;
  color: #fff;
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  padding: 0.4em;
  background: #4cc764;
  border-radius: 0.4em;
  margin-bottom: 1.5em;
}
.online .title-balloon::after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 16px;
  height: 8px;
  margin: 0 auto;
  background: #4cc764;
  clip-path: polygon(100% 0%, 0 0, 50% 100%);
}
.online .foot-image {
  text-align: center;
  margin-top: min(8.2051282051vw, 64px);
}

.online-contents .mv-container .mv-front {
  position: static;
}
@media screen and (min-width: 640px) {
  .online-contents .mv-container .mv-front {
    position: absolute;
  }
}
.online-contents .mv-container .mv-front h2 {
  width: 100%;
  height: 100%;
  text-align: center;
}
.online-contents .mv-container .mv-front h2 img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 640px) {
  .online-contents .mv-container .mv-front h2 img {
    max-width: 1400px;
  }
}
.online-contents .mv-bg {
  display: none;
}
@media screen and (min-width: 640px) {
  .online-contents .mv-bg {
    display: block;
    max-height: 516px;
    overflow: hidden;
  }
}
.online-contents .mv-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.online-contents .main-container {
  background: url("/assets/img/event/online/contents/bg01.jpg") repeat 0 0;
}
.online-contents .container {
  padding: min(5.1282051282vw, 40px);
  border-radius: 0.4em;
  background: #fff;
}
.online-contents .movies {
  display: grid;
  gap: 2em 4.5714285714%;
  grid-template-columns: 1fr;
  margin-bottom: min(10.2564102564vw, 80px);
}
@media screen and (min-width: 640px) {
  .online-contents .movies {
    row-gap: 3em;
    grid-template-columns: 1fr 1fr;
  }
}
.online-contents .movie {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.online-contents .movie-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-bottom: 1em;
  width: 100%;
}
.online-contents .movie-title-icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  padding: 0.75em 8px;
  background: #95c7d5;
}
.online-contents .movie-title-icon .label {
  font-size: 10px;
}
@media screen and (min-width: 640px) {
  .online-contents .movie-title-icon .label {
    font-size: clamp(1.2rem, 1.2rem + 0vw, 1.2rem);
  }
}
.online-contents .movie-title-icon .number {
  font-size: clamp(2rem, 0.5417721519rem + 1.8987341772vw, 3.2rem);
  line-height: 1;
}
.online-contents .movie-title-main {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.5em 10px;
  background: #f8f8f8;
}
@media screen and (min-width: 640px) {
  .online-contents .movie-title-main {
    padding: 0.5em 20px;
  }
}
.online-contents .movie-title-main .label {
  font-size: clamp(1.4rem, 0.6708860759rem + 0.9493670886vw, 2rem);
  font-weight: bold;
}
@media screen and (min-width: 640px) {
  .online-contents .movie-title-main .label {
    font-size: clamp(1.6rem, 0.6278481013rem + 1.2658227848vw, 2.4rem);
  }
}
.online-contents .movie-title-main .text {
  font-size: clamp(1rem, 0.5139240506rem + 0.6329113924vw, 1.4rem);
}
@media screen and (min-width: 640px) {
  .online-contents .movie-title-main .text {
    font-size: clamp(1.2rem, 0.7139240506rem + 0.6329113924vw, 1.6rem);
  }
}
.online-contents .movie-video {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  margin-bottom: 1em;
}
.online-contents .movie-time {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
.online-contents .movie-time-inner {
  font-size: clamp(1.4rem, 0.9139240506rem + 0.6329113924vw, 1.8rem);
  font-weight: bold;
  color: #fff;
  padding: 0.5em 12px;
  line-height: 1.2;
  background: #95c7d5;
}
.online-contents .text-image {
  text-align: center;
}
.online-contents .text-image img {
  width: 100%;
  height: auto;
  max-width: 473px;
}
@media screen and (min-width: 640px) {
  .online-contents .text-image img {
    max-width: 742px;
  }
}
.online-contents .oc-banner {
  margin: 3em auto;
}
.online-contents .oc-banner a {
  display: block;
  border-radius: 0.45em;
  overflow: hidden;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
@media (hover: hover) {
  .online-contents .oc-banner a:hover {
    -webkit-filter: drop-shadow(0 0 1em #95c7d5);
            filter: drop-shadow(0 0 1em #95c7d5);
    -webkit-transition: 0.3s all;
    transition: 0.3s all;
  }
}
.online-contents .oc-banner img {
  width: 100%;
}