html {
  scroll-behavior: smooth;
}
html #west_area,
html #east1_area,
html #east2_area,
html #east3_area,
html #south_area {
  scroll-margin-top: 10vw;
}
@media screen and (max-width: 768px) {
  html #west_area,
  html #east1_area,
  html #east2_area,
  html #east3_area,
  html #south_area {
    scroll-margin-top: 7.1428571429vw;
  }
}

.stage-program {
  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-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 14.2857142857vw;
}
@media screen and (max-width: 768px) {
  .stage-program {
    padding-top: 26.6666666667vw;
  }
}
.stage-program h2 {
  font-size: 4.2857142857vw;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .stage-program h2 {
    font-size: 9.3333333333vw;
  }
}
.stage-program__description {
  font-size: 1.7142857143vw;
  font-weight: 500;
  margin-block: 2.8571428571vw;
}
@media screen and (max-width: 768px) {
  .stage-program__description {
    font-size: 5.8666666667vw;
    margin-block: 10.6666666667vw;
    padding-inline: 5.3333333333vw;
  }
}
.stage-program h3 {
  font-size: 1.7142857143vw;
  font-weight: bold;
  margin-block: 1.4285714286vw;
  border: 1px solid #000;
  background-color: #fff;
  border-radius: 30px;
  padding: 0.7142857143vw 2.1428571429vw;
  width: 57.1428571429vw;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .stage-program h3 {
    font-size: 5.8666666667vw;
    margin-block: 5.3333333333vw;
    padding: 2.6666666667vw 5.3333333333vw;
    width: 93.3333333333vw;
  }
}
.stage-program__note {
  font-size: 1.1428571429vw;
  font-weight: 500;
  margin-top: 1.4285714286vw;
  color: #000;
}
@media screen and (max-width: 768px) {
  .stage-program__note {
    font-size: 3.7333333333vw;
    margin-top: 5.3333333333vw;
    padding: 0 5.3333333333vw;
  }
}
.stage-program .gear1 {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.stage-program .gear2 {
  position: absolute;
  top: 107.7142857143vw;
  width: 100%;
  z-index: -1;
}
.stage-program .gear3 {
  position: absolute;
  top: 313.7857142857vw;
  width: 100%;
  z-index: -1;
}
.stage-program .gear4 {
  position: absolute;
  top: 546.3571428571vw;
  right: 0;
  z-index: -1;
}

.program-list {
  padding: 2.8571428571vw 0;
  width: 71.4285714286vw;
}
@media screen and (max-width: 768px) {
  .program-list {
    padding: 10.6666666667vw 0;
    width: 93.3333333333vw;
  }
}
.program-list__content {
  background-color: #fff;
}
.program-list__title {
  background-color: #181878;
  color: #fff;
  text-align: center;
  padding: 0.3571428571vw 0;
  font-size: 1.7142857143vw;
  font-weight: bold;
}
.program-list__title span {
  font-size: 1.2857142857vw;
}
@media screen and (max-width: 768px) {
  .program-list__title span {
    font-size: 4.2666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .program-list__title {
    font-size: 4.8vw;
    padding: 4vw 0;
  }
}
.program-list__subtitle {
  font-size: 2.1428571429vw;
  font-weight: bold;
  color: #181878;
  text-align: center;
  background-color: #fff;
  padding: 2.8571428571vw 0;
}
.program-list__subtitle small {
  font-size: 1.7142857143vw;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .program-list__subtitle small {
    font-size: 3.7333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .program-list__subtitle {
    font-size: 4.2666666667vw;
    margin-bottom: 0;
    padding: 5.3333333333vw 5.3333333333vw;
  }
}
.program-list__event {
  font-size: 1.7142857143vw;
  font-weight: bold;
  color: #181878;
  text-align: center;
  background-color: #fff;
  padding: 0.7142857143vw 0;
}
@media screen and (max-width: 768px) {
  .program-list__event {
    font-size: 5.8666666667vw;
    margin-bottom: 2.6666666667vw;
    padding: 2.6666666667vw 0;
  }
}
.program-list__time {
  background-color: #d1d1e4;
  padding-block: 0.7142857143vw;
  margin-inline: 1.4285714286vw;
  text-align: center;
  font-size: 1.7142857143vw;
  font-weight: bold;
  display: block;
}
@media screen and (max-width: 768px) {
  .program-list__time {
    font-size: 4.2666666667vw;
    padding: 4vw 0;
  }
}
.program-list__description {
  font-size: 1.1428571429vw;
  font-weight: 500;
  line-height: 2;
  background-color: #fff;
  padding-top: 0.7142857143vw;
  padding-inline: 1.4285714286vw;
}
@media screen and (max-width: 768px) {
  .program-list__description {
    font-size: 3.7333333333vw;
    padding-top: 2.6666666667vw;
    padding-inline: 5.3333333333vw;
  }
}
.program-list__speakers {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.0714285714vw;
  padding-top: 2.1428571429vw;
  padding-bottom: 3.5714285714vw;
  background-color: #fff;
  padding-inline: 1.4285714286vw;
}
@media screen and (max-width: 768px) {
  .program-list__speakers {
    grid-template-columns: repeat(1, 1fr);
    gap: 4vw;
    padding-block: 8vw;
    padding-inline: 5.3333333333vw;
  }
}
.program-list__speakers.col1 {
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (max-width: 768px) {
  .program-list__speakers.col1 {
    padding-block: 0 8vw;
    grid-template-columns: repeat(1, 1fr);
  }
}
.program-list__speakers.col5 {
  grid-template-columns: repeat(5, 1fr);
}
@media screen and (max-width: 768px) {
  .program-list__speakers.col5 {
    grid-template-columns: repeat(1, 1fr);
  }
}
.program-list__speaker {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .program-list__speaker {
    padding-bottom: 4vw;
  }
}
.program-list__speaker-img {
  width: 6.3571428571vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .program-list__speaker-img {
    width: 23.7333333333vw;
  }
}
.program-list__speaker-info {
  width: 100%;
  min-height: 8.3571428571vw;
  max-height: 8.3571428571vw;
  padding-inline: 1.4285714286vw 0;
  border-bottom: solid 10px #d1d1e4;
}
@media screen and (max-width: 768px) {
  .program-list__speaker-info {
    min-height: 31.2vw;
    max-height: 31.2vw;
    padding-inline: 5.3333333333vw 0;
    border-bottom: solid 2.6666666667vw #d1d1e4;
  }
}
.program-list__speaker-info.none-img {
  padding-inline: 0;
  padding-bottom: 0.7142857143vw;
  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: end;
      -ms-flex-pack: end;
          justify-content: end;
}
@media screen and (max-width: 768px) {
  .program-list__speaker-info.none-img {
    padding-bottom: 2.6666666667vw;
  }
}
.program-list__speaker-info.coming-soon {
  padding-inline: 0;
  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;
}
.program-list__speaker-role {
  font-size: 0.8571428571vw;
  font-weight: 500;
  color: #181878;
  margin-bottom: 0.3571428571vw;
  display: block;
  padding-top: 1.1428571429vw;
}
.program-list__speaker-role.long {
  padding-top: 0;
  line-height: 1.1;
}
.program-list__speaker-role.super-long {
  font-size: 0.7142857143vw;
  padding-top: 0;
  line-height: 1.1;
}
@media screen and (max-width: 768px) {
  .program-list__speaker-role {
    font-size: 2.6666666667vw;
    margin-bottom: 0.8vw;
    padding-top: 4.2666666667vw;
  }
  .program-list__speaker-role.long {
    padding-top: 0;
  }
  .program-list__speaker-role.super-long {
    font-size: 2.1333333333vw;
    padding-top: 0;
  }
}
.program-list__speaker-name {
  padding-top: 1vw;
  font-size: 1.7142857143vw;
  font-weight: bold;
  color: #181878;
  display: block;
}
.program-list__speaker-name.long {
  padding-top: 0.2857142857vw;
}
@media screen and (max-width: 768px) {
  .program-list__speaker-name.small {
    font-size: 3.7333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .program-list__speaker-name {
    font-size: 5.8666666667vw;
    padding-top: 3.7333333333vw;
  }
  .program-list__speaker-name.long {
    padding-top: 1.0666666667vw;
  }
}

.fmf-intro {
  margin-top: 5.7142857143vw;
  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;
}
.fmf-intro__title {
  width: 30.7142857143vw;
}
@media screen and (max-width: 768px) {
  .fmf-intro__title {
    width: 80vw;
  }
}
.fmf-intro p {
  margin-top: 1.4285714286vw;
  font-size: 1.1428571429vw;
  font-weight: 500;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .fmf-intro p {
    font-size: 3.7333333333vw;
    padding: 0 5.3333333333vw;
  }
}

.btnWrap {
  text-align: center;
  padding-block: 5rem;
  padding-inline: 1.5rem;
}
@media screen and (max-width: 768px) {
  .btnWrap {
    padding-block: 3rem;
  }
}
.btnWrap .btn {
  background-color: #000;
  color: #fff;
  max-width: 38rem;
  width: 100%;
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  padding: 1rem 2rem;
  border: 1px solid #000;
  border-radius: 5rem;
  -webkit-transform: 0.3s;
          transform: 0.3s;
}
.btnWrap .btn:hover {
  background-color: #fff;
  color: #000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .btnWrap .btn {
    font-size: 1.6rem;
  }
}/*# sourceMappingURL=style.css.map */