/* ----------------
	scene page
 ---------------- */
.pc,
.sp {
  display: none;
}

@media screen and (min-width: 768px) {
  .pc {
    display: block !important;
  }
}

@media screen and (max-width: 767px) {
  .sp {
    display: block !important;
  }
}

/* ---- container ---- */
body > .container {
  padding: 100px 5% 120px;
}
body > .container > .inner {
  max-width: 1200px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  body > .container {
    padding: 12vw 7vw 15vw;
  }
  body > .container > .inner {
    max-width: none;
    margin: 0;
  }
}
/* ---- heading ---- */
h1 {
  font-size: 3.7rem;
  font-weight: normal;
  letter-spacing: 0.15em;
  line-height: 1.3;
  text-align: center;
}

.main_img {
  margin: 30px 0 30px;
  text-align: center;
}
.main_img img {
  max-width: 600px;
}
@media screen and (max-width: 767px) {
  .main_img img {
    max-width: 100%;
  }
}

.leadtxt {
  margin-top: 20px;
  font-size: 1.7rem;
  letter-spacing: 0.15em;
  line-height: 2;
  text-align: center;
}

.samples {
  border-bottom: 1px solid #000;
  border-top: 1px solid #000;
  margin-top: 60px;
  padding: 70px 0;
}
@media screen and (max-width: 767px) {
  .samples {
    padding: 50px 0 20px;
  }
}
.samples h2 {
  font-size: 2.6rem;
  font-weight: normal;
  letter-spacing: 0.15em;
  line-height: 1.3;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .samples h2 {
    font-size: 2rem;
  }
}

.sample {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 70px;
}
.sample li {
  width: 30%;
  margin-right: 5%;
}
.sample li:nth-child(3n) {
  margin-right: 0;
}
.sample img {
  display: block;
  width: 100%;
}
.sample dt, .sample dd {
  text-align: center;
}
.sample dt {
  margin-top: 15px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.6;
}
.sample dd {
  margin-top: 8px;
  font-size: 1.5rem;
  line-height: 1.8;
}
.sample + h2 {
  margin-top: 70px;
}
@media screen and (max-width: 767px) {
  .sample + h2 {
    margin-top: 30px;
  }
}
.sample.sample1 {
  border-bottom: 1px solid #000;
  padding-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .sample.sample1 {
    padding-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.6rem;
  }
  h1 + p {
    margin-top: 6vw;
    font-size: 1.4rem;
    line-height: 1.8;
    text-align: left;
  }
}
/* ---- sample ---- */
@media screen and (max-width: 767px) {
  .sample {
    padding-top: 12vw;
  }
  .sample li {
    width: 48%;
    margin: 0 4% 12vw 0;
  }
  .sample li:nth-child(3n) {
    margin-right: 4%;
  }
  .sample li:nth-child(2n) {
    margin-right: 0;
  }
  .sample .time {
    margin-top: 3vw;
    padding: 8px;
    font-size: 1.3rem;
  }
  .sample dt {
    margin-top: 3vw;
    font-size: 1.5rem;
    line-height: 1.4;
  }
  .sample dd {
    margin-top: 5px;
    font-size: 1.3rem;
    line-height: 1.7;
  }
}