@charset "UTF-8";

a[target=_blank]:after {
  font-family: "Hobonichi-Icons";
  content: "\e914";
  font-weight: normal;
  font-size: .8em;
  position: relative;
  top: -.2em;
}
#instagram a[target=_blank]:after {
  display: none;
}
.indent {
  text-indent: -1.2em;
  padding-left: 1.2em;
  display: block;
}
#top > .img > picture img {
  object-position: center center;
  height: 100vh;
  height: 100svh;
}
.desc span {
  font-size: 1.4rem;
  line-height: 1.44;
  display: inline-block;
}
.index h3 {
  font-size: 1.6rem;
}
.content h3 {
  font-size: min(5.7vw, 2.4rem);
}
.content h3 + p {
  margin: -20px 0 20px;
}
.content figure {
  line-height: .5;
}
.content .caption {
  line-height: 1.42;
}
.content .picture {
    margin-top: 20px;
}
.content .picture .caption {
  line-height: 1.44;
  color: #434242;
}
.content .icon {
  margin: 80px 0 50px;
}
.content .icon img {
  margin: 0 auto;
}
.content .bold {
  font-family: "Yu Gothic Pr6N B", sans-serif;
}
.content .bold2 {
  font-family: "Yu Gothic Pr6N B", sans-serif;
  font-size: 1.8rem;
}
.content .image {
  padding: 20px 0 40px;
}
.content .inner > div {
  margin-top: 20px;
}
.content .marginBottom {
  margin-bottom: -40px;
}
@media (min-width: 992px) {
  #pre2 #top > div.text > picture img {
    object-position: -16vw -34vh;
    object-position: -16vw -34svh;
  }
  #pre2 #top > div.text h2 img {
    width: 42.361vw;
  }
  .content {
    padding-top: 80px;
  }
  .text-point {
    padding-top: 80px;
  }
  .content dl dt p {
    white-space: nowrap;
  }
  .content dl dd {
    padding-top: 30px;
  }
  .content .picture {
    margin-top: 40px;
  }
  .content .inner > div {
    white-space: nowrap;
  }
  .content .swiper {
    margin-bottom: 40px;
  }
}
@media (max-width: 992px) {
  #pre2 #top > div.text > picture img {
      -o-object-position: center -58vw;
      object-position: center -58vw;
      transform: scale(1.3);
  }
  #pre2 #top > div.text h2 img {
    width: 83.46vw;
    margin-left: 5vw;
  }
}
@media (min-width: 600px) {
  hr {
    padding-bottom: 0;
    z-index: 1;
    position: relative;
  }
}
@media (max-width: 600px) {
  .content .icon {
    margin: 40px 0 30px;
  }  
  .content h4 {
    margin-top: 40px;
  }
  .content .image {
    padding: 20px 0;
  }
  .content .inner > div.figure {
    margin-left: calc((100vw - 92.3vw)/2 * -1);
    margin-right: calc((100vw - 92.3vw)/2 * -1);
  }
  .content .marginBottom {
    margin-bottom: 0;
  }
  .content .bold2 {
    font-size: 1.6rem;
  }  
}