/* RESET */
body {
  padding: 0;
  margin: 0;
}

iframe {
  padding: 0;
  margin: 0;
}

h1, h2, h3, h4, h5, h6, p, a, span {
  line-height: 1;
  font-weight: normal;
  font-size: 100%;
  padding: 0;
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

ul, li, dl, dt, dd {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.pc {
  display: block;
}
@media only screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media only screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}

body img {
  width: 100%;
  display: block;
}
body a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
body a:hover {
  opacity: 0.7;
}

.mv {
  width: 100%;
  position: relative;
  margin-bottom: 0vw;
  height: 53.5714285714vw;
  background-color: #fff;
}
.mv::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  z-index: 6;
}
@media only screen and (max-width: 768px) {
  .mv {
    padding-bottom: 0vw;
    height: 133.3333333333vw;
  }
  .mv::before {
    width: 100%;
    height: 100%;
  }
}
.mv .mv_1 {
  width: 26.1428571429vw;
  position: absolute;
  margin-top: 5.7142857143vw;
  margin-left: -2.5vw;
  z-index: 7;
}
@media only screen and (max-width: 768px) {
  .mv .mv_1 {
    width: 46.6666666667vw;
    margin-top: 41.2vw;
    margin-left: 0;
    top: 0;
    left: 0;
  }
}
.mv .mv_2 {
  width: 19.0714285714vw;
  position: absolute;
  top: 27.2857142857vw;
  left: 27.9285714286vw;
  z-index: 7;
}
@media only screen and (max-width: 768px) {
  .mv .mv_2 {
    width: 26vw;
    top: 0vw;
    left: 0;
  }
}
.mv .mv_3 {
  width: 19.0714285714vw;
  position: absolute;
  top: 27.2857142857vw;
  left: 50.7142857143vw;
  z-index: 7;
}
@media only screen and (max-width: 768px) {
  .mv .mv_3 {
    width: 25.8666666667vw;
    top: 12vw;
    left: 28vw;
    z-index: 9;
  }
}
.mv .mv_4 {
  width: 26.1428571429vw;
  position: absolute;
  top: 22.2142857143vw;
  right: 0vw;
  z-index: 8;
}
@media only screen and (max-width: 768px) {
  .mv .mv_4 {
    width: 46.6666666667vw;
    top: 30vw;
    right: 0;
  }
}
.mv .mv_5 {
  width: 61.2857142857vw;
  position: fixed;
  top: 2.8571428571vw;
  left: 28.0714285714vw;
  z-index: 8;
}
@media only screen and (max-width: 768px) {
  .mv .mv_5 {
    position: absolute;
    width: 90.1333333333vw;
    top: 6vw;
    left: 4.6666666667vw;
  }
}

.lead {
  padding-top: 10vw;
  padding-bottom: 14.2857142857vw;
  text-align: center;
  background-color: #f3f5d9;
  color: #1a1a1a;
  overflow: hidden;
  z-index: 9;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .lead {
    padding-top: 12vw;
    padding-bottom: 19.2vw;
  }
}
.lead__date {
  margin-bottom: 2.1428571429vw;
  text-align: center;
  font-size: 1.2857142857vw;
  opacity: 0.5;
}
@media only screen and (min-width: 1400px) {
  .lead__date {
    margin-bottom: 30px;
    font-size: 18px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__date {
    letter-spacing: 0.1333333333vw;
    margin-bottom: 7.4666666667vw;
    font-size: 2.4vw;
  }
}
.lead__ttl {
  margin-bottom: 2.1428571429vw;
  text-align: center;
  font-size: 2vw;
  font-weight: bold;
}
@media only screen and (min-width: 1400px) {
  .lead__ttl {
    margin-bottom: 30px;
    font-size: 28px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__ttl {
    letter-spacing: 0.1333333333vw;
    margin-bottom: 6vw;
    font-size: 4.6666666667vw;
  }
}
.lead__txt {
  margin-bottom: 1.4285714286vw;
  line-height: 2.5;
  text-align: center;
  font-size: 1.1428571429vw;
}
@media only screen and (min-width: 1400px) {
  .lead__txt {
    margin-bottom: 1.4285714286vw;
    font-size: 1.1428571429vw;
  }
}
@media only screen and (max-width: 768px) {
  .lead__txt {
    letter-spacing: 0.1333333333vw;
    margin-bottom: 6vw;
    font-size: 2.8vw;
    line-height: 2.3;
    text-align: justify;
    width: 93.3333333333vw;
    margin-left: auto;
    margin-right: auto;
    word-break: auto-phrase;
    text-align: center;
  }
}
.lead__txt span {
  text-decoration: underline;
}
.lead__cast {
  margin-bottom: 9.2857142857vw;
  line-height: 1.75;
  text-align: center;
  font-size: 1.0714285714vw;
}
@media only screen and (min-width: 1400px) {
  .lead__cast {
    font-size: 15px;
    margin-bottom: 130px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__cast {
    letter-spacing: 0.1333333333vw;
    font-size: 2.4vw;
    margin-bottom: 13.3333333333vw;
  }
}
.lead__prof {
  margin: 0 auto 0vw;
  width: 50vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.1428571429vw;
}
@media only screen and (min-width: 1400px) {
  .lead__prof {
    width: 795px;
    margin-bottom: 150px;
    gap: 30px;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 768px) {
  .lead__prof {
    width: 93.3333333333vw;
    margin-bottom: 0;
    gap: 4vw;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.lead__prof-Lft {
  width: 21.4285714286vw;
}
@media only screen and (min-width: 1400px) {
  .lead__prof-Lft {
    width: 250px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__prof-Lft {
    width: 66.6666666667vw;
  }
}
.lead__prof-Rgt {
  width: 27.8571428571vw;
  text-align: justify;
}
@media only screen and (min-width: 1400px) {
  .lead__prof-Rgt {
    width: 340px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__prof-Rgt {
    width: 66.6666666667vw;
    margin-top: 2.4vw;
  }
}
.lead__prof-Rgt-ttl {
  font-size: 0.9285714286vw;
  font-weight: 600;
}
@media only screen and (min-width: 1400px) {
  .lead__prof-Rgt-ttl {
    font-size: 13px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__prof-Rgt-ttl {
    font-size: 2.4vw;
  }
}
.lead__prof-Rgt-name {
  font-size: 1.2857142857vw;
  margin-top: 2vw;
  font-weight: 600;
  letter-spacing: 0;
}
@media only screen and (min-width: 1400px) {
  .lead__prof-Rgt-name {
    font-size: 18px;
    margin-top: 28px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__prof-Rgt-name {
    font-size: 2.4vw;
    margin-top: 2.4vw;
  }
}
.lead__prof-Rgt-txt {
  font-size: 1.0714285714vw;
  margin-top: 1.8571428571vw;
  line-height: 1.75;
}
@media only screen and (min-width: 1400px) {
  .lead__prof-Rgt-txt {
    font-size: 15px;
    margin-top: 26px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__prof-Rgt-txt {
    font-size: 2.1333333333vw;
    margin-top: 2.4vw;
    line-height: 2.3;
  }
}
.lead__imp {
  margin: 0 auto;
  margin-bottom: 2.3571428571vw;
  width: 32.8571428571vw;
}
@media only screen and (min-width: 1400px) {
  .lead__imp {
    width: 460px;
    margin-bottom: 33px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__imp {
    width: 72.8vw;
    margin-bottom: 5.3333333333vw;
  }
}
.lead__imptxt {
  line-height: 2;
  text-align: center;
  font-size: 1.1428571429vw;
  width: 65.7142857143vw;
  margin: 0 auto;
  position: relative;
  font-weight: bold;
}
.lead__imptxt::before, .lead__imptxt::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 80px;
  height: 80px;
}
@media only screen and (max-width: 768px) {
  .lead__imptxt::before, .lead__imptxt::after {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}
.lead__imptxt::before {
  left: 0;
  top: 0;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
}
.lead__imptxt::after {
  right: 0;
  bottom: 0;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}
@media only screen and (min-width: 1400px) {
  .lead__imptxt {
    font-size: 16px;
    width: 920px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__imptxt {
    letter-spacing: 0.1333333333vw;
    font-size: 2.8vw;
    width: 93.3333333333vw;
  }
}
.lead__imptxt p {
  line-height: 2;
  padding-top: 2.1428571429vw;
  padding-bottom: 2.1428571429vw;
}
@media only screen and (min-width: 1400px) {
  .lead__imptxt p {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .lead__imptxt p {
    line-height: 2.3;
  }
}

.movie {
  position: relative;
  background-color: #DAC694;
  z-index: 6;
  padding-top: 6.4285714286vw;
}
.movie.movie02 {
  background-color: #f3ede8;
}
.movie video {
  width: 100%;
}
.movie_ttl {
  position: absolute;
  width: auto;
  height: 29.2857142857vw;
  bottom: 37%;
  left: 50%;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
}
@media only screen and (min-width: 1400px) {
  .movie_ttl {
    height: 410px;
  }
}
@media only screen and (max-width: 768px) {
  .movie_ttl {
    height: 36vw;
  }
}
.movie_ttl img {
  height: 100%;
}

.int {
  padding: 13.5714285714vw 0;
  background: #fff;
  z-index: unset;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .int {
    padding: 18.6666666667vw 0;
  }
}
.int::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  z-index: 6;
}
.int h2,
.int h3,
.int p {
  position: relative;
  z-index: 10;
}
.int h2 {
  width: 46vw;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  .int h2 {
    width: 65.6vw;
  }
}
.int h3 {
  width: 53.5714285714vw;
  margin: 9.2857142857vw auto 5.7142857143vw;
  text-align: center;
  font-size: 2.1428571429vw;
  font-weight: bold;
  line-height: 1.8;
  background: #fff;
}
@media only screen and (max-width: 768px) {
  .int h3 {
    width: 100%;
    margin: 12vw auto 12vw;
    font-size: 4.2666666667vw;
  }
}
.int__inr {
  width: 62.8571428571vw;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  .int__inr {
    width: 100%;
  }
}
.int__inr p {
  background: #fff;
  line-height: 2;
  letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
  .int__inr p {
    font-size: 2.6666666667vw;
    padding-inline: 3.3333333333vw;
  }
  .int__inr p picture.-sp100vw {
    display: block;
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}
.int__inr p span {
  font-weight: bold;
}
.int__inr p small {
  display: inline-block;
  width: 50px;
  height: 2px;
  background: #000;
  margin-right: 10px;
  margin-bottom: 6px;
}
@media only screen and (max-width: 768px) {
  .int__inr p small {
    width: 4vw;
    height: 0.1333333333vw;
    margin-right: 1.0666666667vw;
    margin-bottom: 1.0666666667vw;
  }
}
.int__inr p:nth-of-type(n+2) {
  margin-top: 5.7142857143vw;
}
@media only screen and (max-width: 768px) {
  .int__inr p:nth-of-type(n+2) {
    margin-top: 13.3333333333vw;
  }
}

.style {
  position: relative;
  z-index: unset;
}
.style::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  z-index: 6;
}
.style p {
  position: relative;
  z-index: 11;
}
.style .-txt {
  background-color: #fff;
  z-index: 10;
  line-height: 1.6;
  font-size: 1.1428571429vw;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 768px) {
  .style .-txt {
    font-size: 2.4vw;
  }
}
.style .-txt a {
  text-decoration: underline;
}

.style01 {
  padding-top: 0;
  padding-bottom: 31.0714285714vw;
}
@media only screen and (max-width: 768px) {
  .style01 {
    padding-bottom: 20vw;
  }
}
.style01 .-main {
  width: 88vw;
}
@media only screen and (max-width: 768px) {
  .style01 .-main {
    width: 100%;
  }
}
.style01 .-txt {
  position: absolute;
  background-color: #fff;
  z-index: 11;
  width: 34.2857142857vw;
  left: 10.7142857143vw;
  bottom: 30.7142857143vw;
  line-height: 1.6;
  font-size: 1.1428571429vw;
  letter-spacing: 0.1em;
}
.style01 .-txt a {
  text-decoration: underline;
}
@media only screen and (max-width: 768px) {
  .style01 .-txt {
    position: relative;
    left: 6vw;
    bottom: 0;
    font-size: 2.4vw;
    width: 80vw;
    margin-top: 5.3333333333vw;
  }
}

.style02 {
  padding: 31.0714285714vw 0 9.6428571429vw;
}
@media only screen and (max-width: 768px) {
  .style02 {
    padding: 20vw 0 24vw;
  }
}
.style02 .-main {
  width: 94.5vw;
  margin-left: 5.3571428571vw;
}
@media only screen and (max-width: 768px) {
  .style02 .-main {
    width: 100%;
    margin-left: 0;
  }
}
.style02 .-txt {
  position: absolute;
  background-color: #fff;
  z-index: 11;
  width: 36.4285714286vw;
  left: 51.4285714286vw;
  bottom: 14.2857142857vw;
  line-height: 1.6;
  font-size: 1.1428571429vw;
  letter-spacing: 0.1em;
  text-align: right;
}
@media only screen and (max-width: 768px) {
  .style02 .-txt {
    width: 80vw;
    left: 0;
    bottom: 0;
    right: 8vw;
    font-size: 2.4vw;
    margin-left: auto;
  }
}
.style02 .-txt a {
  text-decoration: underline;
}

.drag-item-block {
  min-width: 100%;
  min-height: 100vh;
  position: relative;
  background-color: #f3f5d9;
  z-index: 5;
  overflow: hidden;
}
.drag-item-block .logo-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.drag-item-block .logo-container .logo {
  position: fixed;
  top: 30.7142857143vw;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  z-index: 5;
  pointer-events: none;
  width: 60%;
  height: auto;
  min-width: 300px;
  max-width: 500px;
}
@media only screen and (max-width: 768px) {
  .drag-item-block .logo-container .logo {
    min-width: unset;
    width: 200px;
    top: 50%;
  }
}

.col {
  padding-bottom: 7.1428571429vw;
  background: #fff;
  z-index: 10;
}
@media only screen and (max-width: 768px) {
  .col {
    padding-bottom: 24vw;
  }
}
.col::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  z-index: 6;
}
.col h2,
.col p {
  position: relative;
  z-index: 11;
  background: #fff;
}
.col h2 {
  width: 34vw;
  margin: 0 auto 3.5714285714vw;
}
@media only screen and (max-width: 768px) {
  .col h2 {
    width: 61.0666666667vw;
    margin: 0 auto 7.3333333333vw;
  }
}
.col .-txt {
  margin: 2.1428571429vw 0 0 9.4285714286vw;
  line-height: 1.6;
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .col .-txt {
    margin: 4vw 6.6666666667vw 0vw;
    font-size: 2.4vw;
  }
}
.col .-txt a {
  text-decoration: underline;
}

section {
  width: 100%;
  padding-top: 15.7142857143vw;
  padding-bottom: 3.9285714286vw;
  margin: auto;
  overflow: hidden;
  position: relative;
  background-color: #DAC694;
  z-index: 6;
}
section.fashion {
  padding-bottom: 0vw;
  padding-top: 17.1428571429vw;
  background-color: #f3ede8;
}
@media only screen and (min-width: 1400px) {
  section.fashion {
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion {
    padding-top: 24vw;
  }
}
section.fashion .con1 {
  display: block;
  width: 85.2857142857vw;
  margin: auto;
  position: relative;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con1 {
    width: 1194px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con1 {
    width: 100%;
  }
}
section.fashion .con1__img {
  margin-left: auto;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con1__img {
    width: 644px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con1__img {
    width: 80vw;
    margin: 0 auto;
    margin-bottom: 6.6666666667vw;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con1__img img {
    width: 100%;
    height: 100%;
  }
}
section.fashion .con1__txtblk {
  left: 0vw;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con1__txtblk {
    left: 0;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con1__txtblk {
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
}
section.fashion .con1 .con1__ttl {
  margin-left: auto;
  width: 45vw;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con1 .con1__ttl {
    width: 630px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con1 .con1__ttl {
    width: 80vw;
  }
}
section.fashion .con2 {
  display: block;
  padding-top: 9.2857142857vw;
  margin: 0 auto;
  position: relative;
  max-width: 1400px;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con2 {
    padding-top: 130px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con2 {
    width: 100%;
    margin-top: 60vw;
  }
}
section.fashion .con2__img01 {
  display: block;
  width: 33.5714285714vw;
  margin-bottom: 26.7857142857vw;
  margin-right: auto;
  margin-left: 13.5714285714vw;
}
section.fashion .con2__img01 p {
  margin-top: 12vw;
  letter-spacing: 0.05em;
}
section.fashion .con2__img01 p::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  left: auto;
  right: -12.1428571429vw;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con2__img01 {
    margin-bottom: 375px;
    margin-left: 190px;
  }
  section.fashion .con2__img01 p::after {
    right: -170px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con2__img01 {
    width: 56vw;
    margin-bottom: 81.3333333333vw;
    margin-right: 0;
  }
  section.fashion .con2__img01 p {
    margin-top: 10.6666666667vw;
    left: 2.6666666667vw;
    width: 69.3333333333vw;
  }
  section.fashion .con2__img01 p::after {
    left: -18.6666666667vw;
    top: -89.3333333333vw;
  }
}
section.fashion .con2__img02 {
  left: auto;
  right: 11.3571428571vw;
  top: 35.7142857143vw;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con2__img02 {
    right: 159px;
    top: 500px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con2__img02 {
    top: -19.7333333333vw;
    right: 16.8vw;
  }
}
section.fashion .con2__img03 {
  width: 43.8571428571vw;
  margin-bottom: 35.7142857143vw;
  margin-right: 0;
  margin-top: -23.3571428571vw;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con2__img03 {
    width: 614px;
    margin-bottom: 500px;
    margin-top: -327px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con2__img03 {
    width: 70.6666666667vw;
    margin-left: auto;
    margin-top: -49.3333333333vw;
    margin-bottom: 64vw;
  }
}
section.fashion .con2__img04 {
  width: 37.8571428571vw;
  top: 115vw;
  left: 7.1428571429vw;
}
@media only screen and (min-width: 1400px) {
  section.fashion .con2__img04 {
    width: 530px;
    top: 1610px;
    left: 100px;
  }
}
@media only screen and (max-width: 768px) {
  section.fashion .con2__img04 {
    top: 0;
    left: 0;
    margin-bottom: 14.9333333333vw;
    margin-left: 10.1333333333vw;
    width: 55.4666666667vw;
    position: inherit;
    margin-top: -25.3333333333vw;
  }
}
section.prof {
  padding-bottom: 0;
  z-index: 10;
  background-color: #f3f5d9;
}
@media only screen and (max-width: 768px) {
  section.prof {
    padding-top: 21.3333333333vw;
  }
}
section.prof div.-txt {
  margin-left: 10.7142857143vw;
}
@media only screen and (max-width: 768px) {
  section.prof div.-txt {
    margin-left: 6.6666666667vw;
  }
}
section.prof div.-txt .-under {
  margin-inline: 0 !important;
}
section.prof .con7 {
  margin: 0 !important;
}
@media only screen and (min-width: 1400px) {
  section {
    padding-top: 220px;
    padding-bottom: 55px;
  }
}
@media only screen and (max-width: 768px) {
  section {
    width: 100%;
    padding-top: 24vw;
    padding-bottom: 16vw;
  }
}
section .con1 {
  display: block;
  width: 85.2857142857vw;
  margin: auto;
  position: relative;
}
@media only screen and (min-width: 1400px) {
  section .con1 {
    width: 1194px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1 {
    width: 100%;
  }
}
section .con1__img {
  display: block;
  width: 46vw;
}
@media only screen and (min-width: 1400px) {
  section .con1__img {
    width: 644px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__img {
    width: 80vw;
    margin: 0 auto;
    margin-bottom: 6.6666666667vw;
  }
}
section .con1__img .js-slide {
  width: 100%;
}
section .con1__img .js-slide .slick-next,
section .con1__img .js-slide .slick-prev {
  width: 3.5714285714vw;
  height: 3.5714285714vw;
  z-index: 2;
}
section .con1__img .js-slide .slick-next.slick-disabled::before,
section .con1__img .js-slide .slick-prev.slick-disabled::before {
  opacity: 0;
}
section .con1__img .js-slide .slick-next::before,
section .con1__img .js-slide .slick-prev::before {
  font-size: 3.5714285714vw;
}
section .con1__img .js-slide .slick-next {
  right: 1.0714285714vw;
}
section .con1__img .js-slide .slick-prev {
  left: 1.0714285714vw;
}
section .con1__img .js-slide .slick-dots {
  bottom: -2.5vw;
}
section .con1__img .js-slide .slick-dots li {
  margin: 0 0.7142857143vw;
}
section .con1__img .js-slide .slick-dots li button {
  padding: 0;
}
section .con1__img .js-slide .slick-dots li button::before {
  content: "";
  background-color: #323232;
  border-radius: 3.5714285714vw;
  width: 1.4285714286vw;
  height: 1.4285714286vw;
}
@media only screen and (min-width: 1400px) {
  section .con1__img .js-slide .slick-next,
  section .con1__img .js-slide .slick-prev {
    width: 50px;
    height: 50px;
  }
  section .con1__img .js-slide .slick-next::before,
  section .con1__img .js-slide .slick-prev::before {
    font-size: 50px;
  }
  section .con1__img .js-slide .slick-next {
    right: 15px;
  }
  section .con1__img .js-slide .slick-prev {
    left: 15px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__img .js-slide .slick-next,
  section .con1__img .js-slide .slick-prev {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    z-index: 2;
  }
  section .con1__img .js-slide .slick-next.slick-disabled::before,
  section .con1__img .js-slide .slick-prev.slick-disabled::before {
    opacity: 0;
  }
  section .con1__img .js-slide .slick-next::before,
  section .con1__img .js-slide .slick-prev::before {
    font-size: 6.6666666667vw;
  }
  section .con1__img .js-slide .slick-next {
    right: 2vw;
  }
  section .con1__img .js-slide .slick-prev {
    left: 2vw;
  }
  section .con1__img .js-slide .slick-dots {
    bottom: -7.3333333333vw;
  }
  section .con1__img .js-slide .slick-dots li {
    margin: 0 0.6666666667vw;
  }
  section .con1__img .js-slide .slick-dots li button {
    padding: 0;
    width: 2.4vw;
  }
  section .con1__img .js-slide .slick-dots li button::before {
    border-radius: 6.6666666667vw;
    width: 2.4vw;
    height: 2.4vw;
  }
}
section .con1__img img {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  section .con1__img img {
    width: 100%;
    height: 100%;
  }
}
section .con1__txtblk {
  width: 32.5714285714vw;
  position: absolute;
  right: 0vw;
  top: 0vw;
}
@media only screen and (min-width: 1400px) {
  section .con1__txtblk {
    width: 456px;
    right: 0;
    top: 0px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__txtblk {
    width: 80vw;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
}
section .con1__txtblk--ttl {
  margin: auto;
  margin-top: -0.3571428571vw;
  margin-bottom: 2.5vw;
}
@media only screen and (min-width: 1400px) {
  section .con1__txtblk--ttl {
    margin-top: -5px;
    margin-bottom: 35px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__txtblk--ttl {
    margin-top: 18.6666666667vw;
  }
}
section .con1__txtblk--ttl p {
  font-weight: 700;
  line-height: 1.27;
  white-space: nowrap;
  font-size: 2.5714285714vw;
}
@media only screen and (min-width: 1400px) {
  section .con1__txtblk--ttl p {
    font-size: 36px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__txtblk--ttl p {
    text-align: center;
    font-size: 4.5333333333vw;
  }
}
section .con1__txtblk--txt {
  line-height: 2;
  font-size: 1.1428571429vw;
  position: relative;
  margin-bottom: 2.4285714286vw;
}
section .con1__txtblk--txt::before, section .con1__txtblk--txt::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 80px;
  height: 80px;
}
@media only screen and (max-width: 768px) {
  section .con1__txtblk--txt::before, section .con1__txtblk--txt::after {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}
section .con1__txtblk--txt::before {
  left: 0;
  top: 0;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
}
section .con1__txtblk--txt::after {
  right: 0;
  bottom: 0;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}
@media only screen and (min-width: 1400px) {
  section .con1__txtblk--txt {
    font-size: 16px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__txtblk--txt {
    letter-spacing: 0.1333333333vw;
    font-size: 2.4vw;
  }
}
section .con1__txtblk--txt p {
  line-height: 1.85;
  padding: 3.5714285714vw 0;
  width: 26.1428571429vw;
  margin: auto;
  text-align: justify;
}
@media only screen and (min-width: 1400px) {
  section .con1__txtblk--txt p {
    padding-top: 50px;
    padding-bottom: 50px;
    width: 366px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__txtblk--txt p {
    line-height: 1.8;
    width: 66.6666666667vw;
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
}
section .con1__txtblk--img {
  width: 26.1428571429vw;
  margin: 0 auto;
}
section .con1__txtblk--img p {
  font-size: 1.4285714286vw;
  margin-top: 0.3571428571vw;
  line-height: 1.2;
  letter-spacing: 0.03em;
}
section .con1__txtblk--img p a {
  text-decoration: underline;
}
@media only screen and (min-width: 1400px) {
  section .con1__txtblk--img p {
    font-size: 20px;
    margin-top: 5px;
    line-height: 1.2;
  }
}
@media only screen and (max-width: 768px) {
  section .con1__txtblk--img {
    width: 66.6666666667vw;
    margin: 12.8vw auto 0;
  }
  section .con1__txtblk--img p {
    font-size: 3.2vw;
    margin-top: 1.3333333333vw;
  }
}
section .con1 .con1__ttl {
  line-height: 1.4;
  margin-top: 4.2857142857vw;
  font-size: 1.4285714286vw;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media only screen and (min-width: 1400px) {
  section .con1 .con1__ttl {
    margin-top: 60px;
    font-size: 20px;
  }
}
@media only screen and (max-width: 768px) {
  section .con1 .con1__ttl {
    width: 80vw;
    margin: 5.3333333333vw auto 0;
    font-size: 2.9333333333vw;
    margin-top: 7.4666666667vw;
  }
}
section .con2 {
  display: block;
  padding-top: 9.2857142857vw;
  margin: 0 auto;
  position: relative;
  max-width: 1400px;
}
@media only screen and (min-width: 1400px) {
  section .con2 {
    padding-top: 130px;
  }
}
@media only screen and (max-width: 768px) {
  section .con2 {
    width: 100%;
    margin-top: 60vw;
  }
}
section .con2__img01 {
  display: block;
  width: 33.5714285714vw;
  margin-bottom: 26.7857142857vw;
  margin-left: auto;
  margin-right: 13.5714285714vw;
}
section .con2__img01 p {
  margin-top: 12vw;
  font-size: 1.2142857143vw;
  line-height: 1.85;
  font-weight: 500;
  letter-spacing: 0.05em;
  position: relative;
}
section .con2__img01 p::after {
  content: "";
  display: inline-block;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  background-color: #000;
  position: absolute;
  width: 12.1428571429vw;
  height: 0.0714285714vw;
  left: -11.4285714286vw;
  top: -5vw;
}
@media only screen and (min-width: 1400px) {
  section .con2__img01 {
    width: 470px;
    margin-bottom: 375px;
    margin-right: 190px;
  }
  section .con2__img01 p {
    margin-top: 168px;
    font-size: 17px;
  }
  section .con2__img01 p::after {
    width: 170px;
    height: 1px;
    left: -160px;
    top: -70px;
  }
}
@media only screen and (max-width: 768px) {
  section .con2__img01 {
    width: 72vw;
    margin-bottom: 81.3333333333vw;
    margin-right: 0;
  }
  section .con2__img01 p {
    margin-top: 13.3333333333vw;
    font-size: 2.4vw;
    left: -11.7333333333vw;
  }
  section .con2__img01 p::after {
    width: 18.6666666667vw;
    height: 0.2666666667vw;
    left: -18.6666666667vw;
    top: -9.3333333333vw;
  }
}
section .con2__img02 {
  display: block;
  position: absolute;
  top: 47.8571428571vw;
  left: 11.3571428571vw;
  width: 32.5714285714vw;
}
@media only screen and (min-width: 1400px) {
  section .con2__img02 {
    top: 670px;
    left: 159px;
    width: 456px;
  }
}
@media only screen and (max-width: 768px) {
  section .con2__img02 {
    top: -8.4vw;
    left: 9.3333333333vw;
    width: 70.1333333333vw;
  }
}
section .con2__img03 {
  display: block;
  width: 31.2857142857vw;
  margin-bottom: 69.4285714286vw;
  margin-left: auto;
  margin-right: 10.7142857143vw;
  margin-top: -13.7857142857vw;
}
@media only screen and (min-width: 1400px) {
  section .con2__img03 {
    width: 438px;
    margin-bottom: 972px;
    margin-right: 150px;
    margin-top: -193px;
  }
}
@media only screen and (max-width: 768px) {
  section .con2__img03 {
    width: 67.2vw;
    margin-left: 0;
    margin-top: -51.7333333333vw;
    margin-bottom: 90.6666666667vw;
  }
}
section .con2__img04 {
  display: block;
  position: absolute;
  width: 31.2857142857vw;
  top: 159.2857142857vw;
  left: 34.2857142857vw;
}
@media only screen and (min-width: 1400px) {
  section .con2__img04 {
    width: 438px;
    top: 2230px;
    left: 480px;
  }
}
@media only screen and (max-width: 768px) {
  section .con2__img04 {
    top: 0;
    left: 0;
    margin-bottom: 14.9333333333vw;
    margin-left: 10.1333333333vw;
    width: 55.4666666667vw;
    position: inherit;
  }
}
section .con2__img04-txt {
  color: #6d2de3;
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
  margin-top: 14px;
  letter-spacing: 0.1em;
  text-align: right;
}
@media only screen and (max-width: 768px) {
  section .con2__img04-txt {
    margin-top: 1.0666666667vw;
    font-size: 2.6666666667vw;
  }
}
section .con2__img05 {
  display: block;
  width: 53.0714285714vw;
  margin-left: auto;
  margin-right: 10.7142857143vw;
}
@media only screen and (min-width: 1400px) {
  section .con2__img05 {
    width: 743px;
    margin-right: 150px;
  }
}
@media only screen and (max-width: 768px) {
  section .con2__img05 {
    width: 89.0666666667vw;
    margin: 0 auto;
  }
}
section .con2__img06 {
  display: block;
  width: 37.8571428571vw;
  position: absolute;
  top: 74vw;
  left: 0vw;
}
@media only screen and (min-width: 1400px) {
  section .con2__img06 {
    width: 530px;
    top: 1036px;
  }
}
@media only screen and (max-width: 768px) {
  section .con2__img06 {
    width: 56vw;
    margin: 0;
    top: 282.6666666667vw;
    left: auto;
    right: 0;
  }
}
section .con7 {
  width: 85.7142857143vw;
  margin: 0 auto;
}
@media only screen and (min-width: 1400px) {
  section .con7 {
    width: 1200px;
  }
}
@media only screen and (max-width: 768px) {
  section .con7 {
    width: 100%;
  }
}
section .con7 .con7_b1 {
  width: 31.2857142857vw;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 12.8571428571vw;
}
@media only screen and (min-width: 1400px) {
  section .con7 .con7_b1 {
    width: 438px;
    margin-bottom: 180px;
  }
}
@media only screen and (max-width: 768px) {
  section .con7 .con7_b1 {
    width: 100%;
    margin-bottom: 21.3333333333vw;
  }
}
section .con7 .con7_b1 p {
  letter-spacing: 0.1428571429vw;
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 400;
}
@media only screen and (min-width: 1400px) {
  section .con7 .con7_b1 p {
    letter-spacing: 2px;
  }
}
@media only screen and (max-width: 768px) {
  section .con7 .con7_b1 p {
    letter-spacing: 0.2666666667vw;
  }
}
section .con7 .con7_b1 p:nth-of-type(1) {
  line-height: 2.25;
  font-size: 1vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 6.4285714286vw;
}
@media only screen and (min-width: 1400px) {
  section .con7 .con7_b1 p:nth-of-type(1) {
    margin-bottom: 90px;
    font-size: 14px;
  }
}
@media only screen and (max-width: 768px) {
  section .con7 .con7_b1 p:nth-of-type(1) {
    margin-bottom: 6.6666666667vw;
    font-size: 2.1333333333vw;
  }
}
section .con7 .con7_b1 p:nth-of-type(2) {
  line-height: 2;
  font-size: 0.7142857143vw;
}
@media only screen and (min-width: 1400px) {
  section .con7 .con7_b1 p:nth-of-type(2) {
    font-size: 10px;
  }
}
@media only screen and (max-width: 768px) {
  section .con7 .con7_b1 p:nth-of-type(2) {
    width: 70.1333333333vw;
    margin-right: auto;
    margin-left: auto;
    font-size: 1.6vw;
  }
}
section .con7 .con7_b1 p .info {
  display: block;
  margin-bottom: 15px;
}
@media only screen and (max-width: 768px) {
  section .con7 .con7_b1 p .info {
    margin-bottom: 10px;
  }
}
section .con7 .con7_b1 p .tell {
  display: inline-block;
  width: 12px;
  padding-right: 3px;
}
@media only screen and (max-width: 768px) {
  section .con7 .con7_b1 p .tell {
    width: 9px;
  }
}
section .con7 .con7_b1 p .tell img {
  width: 100%;
}
section .con7 .con7_b1 .movie_con {
  display: block;
  width: 53.5714285714vw;
  margin-bottom: 7.1428571429vw;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%) !important;
          transform: translateX(-50%) !important;
}
@media only screen and (min-width: 1400px) {
  section .con7 .con7_b1 .movie_con {
    width: 750px;
    margin-bottom: 100px;
  }
}
@media only screen and (max-width: 768px) {
  section .con7 .con7_b1 .movie_con {
    left: 0;
    -webkit-transform: translateX(0%) !important;
            transform: translateX(0%) !important;
    width: 97.3333333333vw;
    margin-bottom: 13.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
section .con7 .con7_b1 .movie_con img {
  width: 100%;
}

.archive {
  padding: 130px 0;
  background-color: #323232;
  position: relative;
  z-index: 10;
}
.archive_inr {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: calc(100% - 20px);
  margin: 0 auto;
}
.archive_ttl {
  color: #fff;
}
.archive ul {
  margin-top: 5px;
}
.archive ul li:nth-of-type(n+2) {
  margin-top: 3px;
}
.archive ul li a {
  color: #fff;
  text-decoration: underline;
}
@media only screen and (max-width: 768px) {
  .archive {
    padding: 26.6666666667vw 0;
  }
  .archive_inr {
    max-width: calc(100% - 5.3333333333vw);
    font-size: 2.6666666667vw;
  }
  .archive ul {
    margin-top: 1.3333333333vw;
  }
  .archive ul li:nth-of-type(n+2) {
    margin-top: 0.8vw;
  }
}

.eaves {
  letter-spacing: 0.125vw;
  font-family: "mr-eaves-modern", "Noto Serif JP", serif;
}

.jpn {
  font-family: "Hiragino Kaku Gothic ProN ", "Noto Sans JP", sans-serif;
}

.lora {
  font-family: "Lora", serif;
}

.indent {
  text-indent: -0.5em;
}

.iframe-wrapper {
  position: relative;
}
.iframe-wrapper::before {
  content: "";
  display: inline-block;
  padding-top: 56.25%;
}
.iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.eachTextAnime {
  opacity: 0;
}
.eachTextAnime span {
  opacity: 0;
}

.eachTextAnime.appeartext {
  letter-spacing: 0.125vw;
  opacity: 1;
}
.eachTextAnime.appeartext span {
  -webkit-animation: text_anime_on 0s ease-in forwards;
          animation: text_anime_on 0s ease-in forwards;
}

@-webkit-keyframes text_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes text_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*# sourceMappingURL=style.css.map */