.op-h {
  height: auto;
  background: rgb(246, 238, 230);
  background: linear-gradient(180deg, #D7FFFE 100%, #FFFEFF 0%);
  background: linear-gradient(0deg, #FFFEFF, #D7FFFE);
  padding-top: 64px;
  padding-bottom: 45px;
}
@media screen and (max-width: 767px) {
  .op-h {
    padding-bottom: 35px;
  }
}


@media screen and (min-width: 768px) {
  h1 {
    font-size: 20px;
    text-align: center;
    margin-bottom: 40px;
  }

  h1 img {
    max-width: 812px;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 16px;
    margin-bottom: 30px;
  }

  h1 img {}

  .logo {
    width: 80px;
  }
}

.ly-body {
  margin-top: 0;
}

.op-title {
  background: #46B0BB;
  color: #FFF;
  margin: 0;
  padding: .5em 0;
}
@media screen and (max-width: 767px) {

  .op-title {
    padding: 15px 0;
  }
}


.op-title h2 {
  margin: 0 auto;
  max-width: 1080px;
  text-align: left;
}

.op-title h2 span {
  font-size: 22px;
}

.op-title .-top {
  font-weight: bold;
  margin-bottom: .5em;
}

.op-h .-catch {
  text-align: center;
  font-weight: bold;
  line-height: 2;
}

.op-h .-fig img {
  width: 100%;
}

.op-sec .-schedule {
  text-align: center;
}

.op-performer h3 {
  background: #F6B2B3;
  color: #FFF;
  text-align: center;
}

.op-performer h3 span {
  font-size: 22px;
}

.op-performer ul {
  display: flex;
}

.op-performer ul li {
  text-align: center;
  color: #F27376;
  font-weight: bold;
}

.op-f {
  padding-top: 40px;
  border-top: 1px solid #333;
}

.op-songlist ol li {
  margin-right: 15px;
  margin-left: 1.2em;
  font-size: 14px;
  /* font-weight: bold; */
  list-style-type: decimal;
}


.op-songlist ol li span {
font-weight: bold;
}


.op-songlist ol {
  padding: 0;
}

.op-teacher-list ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.op-teacher-list ul li {
  width: calc((100% - 75px)/ 6);
  margin: 0;
  margin-right: 15px;
  list-style: none;
  text-align: center;
}

.op-teacher-list ul li:nth-child(6n) {
  margin-right: 0;
}
@media screen and (max-width: 767px) {

  .op-teacher-list ul li {
    width: calc((100% - 24px)/ 3);
    margin: 0;
    margin-right: 12px;
    margin-bottom: 20px;
    list-style: none;
    text-align: center;
    
  }

  .op-teacher-list ul li:nth-child(3n) {
    margin-right: 0;
  }
}
.op-teacher-list ul li p {
  color: #46B0BB;
  font-weight: bold;
  font-size: 14px;
}

.op-photo-btn {
  margin: 24px 0;
  margin-top: 40px;
}

.op-photo-btn a {
  display: inline-block;
  font-weight: bold;
  border-radius: 10px;
  border: solid 2px #46B0BB;
  color: #46B0BB;
  background-color: #FFFFFF;
  padding: 12px 24px;
  text-decoration: none;
  box-shadow: 3px 4px 4px 1px rgba(201, 201, 201, 0.6);
  margin-right: 8px;
  margin-bottom: 16px;
  font-size: 16px;
  text-align: center;
}

.op-movie {
  margin-top: 64px;
  margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .op-title h2 {
    font-size: 40px;
  }

  .op-title .-top {
    font-size: 24px;
  }

  .op-sec .p-block:not(:last-child) {
    margin-bottom: 64px;
  }

  .op-h .-catch {
    margin-top: 35px;
    font-size: 24px;
  }

  .op-sec .-fig {
    margin-top: 64px;
    margin-bottom: 24px;
  }

  .op-sec .-schedule img {
    height: 48px;
  }

  .op-performer {
    margin-top: 80px;
  }

  .op-performer .p-block-h {
    margin-bottom: 64px;
  }

  .op-performer ul li {
    flex: 0 0 13%;
    max-width: 13%;
    margin-bottom: 12px;
  }

  .op-performer ul li:not(:nth-child(7n)) {
    margin-right: 1.5%;
  }

  .op-performer h3 {
    font-size: 40px;
  }
}

@media screen and (max-width: 767px) {
  .op-title h2 {
    font-size: 24px;
    padding-left: 15px;
    padding-right: 15px;

  }

  .op-title .-top {
    font-size: 16px;
  }

  .op-sec .p-block:not(:last-child) {
    margin-bottom: 40px;
  }

  .op-h .-catch {
    font-size: 16px;
    margin-top: 35px;
  }

  .op-sec .-fig {
    margin-top: 24px;
    margin-bottom: 24px;
  }

  .op-sec .-schedule img {
    width: 100%;
    max-width: 400px;
  }

  .op-performer .p-block-h {
    margin-bottom: 30px;
  }

  .op-performer ul li {
    font-size: 10px;
  }

  .op-performer h3 {
    font-size: 24px;
  }

  .op-songlist ol li {
    width: 95%;
    margin: 2px 0;
    margin-left: 1.2em;
    margin-bottom: 1em;
  }
}