@charset "UTF-8";
.pre-inc .txt {
  width: 100%;
  text-align: justify;
  font-size: min(3.2vw, 16px);
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .pre-inc .txt {
    line-height: 1.8;
  }
}
.pre-inc .txt .sup {
  font-size: 0.6em;
}
.pre-inc #main {
  position: relative;
  background: url(../images/concept/mv.webp) no-repeat center center;
  background-size: cover;
}
.pre-inc #main .title {
  padding: 0;
  height: 66.3194444444vw;
}
@media screen and (max-width: 767px) {
  .pre-inc #main .title {
    width: 100%;
    height: 100vw;
  }
}
.pre-inc #main .title .mv-box {
  margin: 0;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  filter: drop-shadow(0 0 3px #000);
}
.pre-inc #main .title .mv-box .mv-txt1 {
  margin: 0;
  width: 100%;
}
.pre-inc #main .title .mv-box .mv-txt1 .main-title {
  color: #FFF;
}
.pre-inc #main .title .mv-box .mv-txt1 .ttl-sub {
  color: #FFF;
}
.pre-inc #main .title .mv-box .photo {
  margin: 3em auto;
  width: 10vw;
}
@media screen and (max-width: 767px) {
  .pre-inc #main .title .mv-box .photo {
    margin: 1em auto;
    width: 18vw;
  }
}
.pre-inc #main .title .mv-box .photo::after {
  content: "※";
  position: absolute;
  right: 0;
  bottom: 0;
  color: #FFF;
  font-size: min(2vw, 10px);
}
@media screen and (max-width: 767px) {
  .pre-inc #main .title .mv-box .photo::after {
    transform: translateY(0.5em);
  }
}
.pre-inc #main .title .mv-box .txt {
  text-align: center;
  color: #FFF;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .pre-inc #main .title .mv-box .txt {
    letter-spacing: 0.05em;
    line-height: 1.6;
  }
}
.pre-inc #contents {
  padding: 0;
  border-bottom: 1px solid #d4d4d4;
}
.pre-inc #contents .lead {
  margin: 0 0 1em;
  width: 100%;
  text-align: justify;
  color: #938051;
  font-size: min(4.2vw, 24px);
  line-height: 1.8;
}
.pre-inc #contents .sec01,
.pre-inc #contents .sec02 {
  margin: 0;
  padding: 0 0 6em;
  width: 100%;
  background: url(../images/concept/bg02.webp) repeat-y 0 0;
  background-size: cover;
  color: #FFF;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01,
  .pre-inc #contents .sec02 {
    padding: 0 0 3em;
  }
}
.pre-inc #contents .sec01 .block1,
.pre-inc #contents .sec02 .block1 {
  margin: 0 auto 5em;
  padding-bottom: 4em;
  width: 100%;
  max-width: 1280px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .block1,
  .pre-inc #contents .sec02 .block1 {
    margin: 0 auto 2em;
    padding-bottom: 0;
  }
}
.pre-inc #contents .sec01 .block1 .sub-txt,
.pre-inc #contents .sec02 .block1 .sub-txt {
  margin: 0;
  position: absolute;
  top: 0;
  left: 5%;
  z-index: 1;
}
.pre-inc #contents .sec01 .block1 .sub-txt .photo,
.pre-inc #contents .sec02 .block1 .sub-txt .photo {
  margin: 0;
  padding: 3em 1em;
  background: rgba(9, 7, 13, 0.5019607843);
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .block1 .sub-txt .photo,
  .pre-inc #contents .sec02 .block1 .sub-txt .photo {
    background: rgba(0, 0, 0, 0.8156862745);
    padding: 1.2em 0.6em;
  }
}
.pre-inc #contents .sec01 .block1 .sub-txt .photo .image,
.pre-inc #contents .sec02 .block1 .sub-txt .photo .image {
  width: 32px;
  height: auto;
  filter: drop-shadow(0 0 3px #000);
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .block1 .sub-txt .photo .image,
  .pre-inc #contents .sec02 .block1 .sub-txt .photo .image {
    width: 5vw;
  }
}
.pre-inc #contents .sec01 .block1 .img01,
.pre-inc #contents .sec02 .block1 .img01 {
  margin: 0;
  width: 80%;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .block1 .img01,
  .pre-inc #contents .sec02 .block1 .img01 {
    width: 100%;
  }
}
.pre-inc #contents .sec01 .block1 .txt,
.pre-inc #contents .sec02 .block1 .txt {
  margin: 0;
  width: 100%;
  position: absolute;
  left: 5%;
  bottom: 0;
  filter: drop-shadow(0 0 3px #000);
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .block1 .txt,
  .pre-inc #contents .sec02 .block1 .txt {
    margin: 1.5em auto 0;
    width: 90%;
    position: static;
  }
}
.pre-inc #contents .sec01 .slider1,
.pre-inc #contents .sec01 .slider2,
.pre-inc #contents .sec02 .slider1,
.pre-inc #contents .sec02 .slider2 {
  margin: 4em auto 0.3em;
  width: 100%;
  max-width: 1280px;
  display: flex;
  overflow: hidden;
  line-height: 0;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .slider1,
  .pre-inc #contents .sec01 .slider2,
  .pre-inc #contents .sec02 .slider1,
  .pre-inc #contents .sec02 .slider2 {
    margin: 2em auto 0.2em;
  }
}
.pre-inc #contents .sec01 .slider1 .in-slider1,
.pre-inc #contents .sec01 .slider2 .in-slider1,
.pre-inc #contents .sec02 .slider1 .in-slider1,
.pre-inc #contents .sec02 .slider2 .in-slider1 {
  margin: 0;
  width: 162%;
  animation: scroll-left 25s infinite linear 0.5s both;
  display: flex;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .slider1 .in-slider1,
  .pre-inc #contents .sec01 .slider2 .in-slider1,
  .pre-inc #contents .sec02 .slider1 .in-slider1,
  .pre-inc #contents .sec02 .slider2 .in-slider1 {
    width: 298%;
  }
}
.pre-inc #contents .sec01 .slider1 .in-slider1 .photo,
.pre-inc #contents .sec01 .slider2 .in-slider1 .photo,
.pre-inc #contents .sec02 .slider1 .in-slider1 .photo,
.pre-inc #contents .sec02 .slider2 .in-slider1 .photo {
  width: 162vw;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .slider1 .in-slider1 .photo,
  .pre-inc #contents .sec01 .slider2 .in-slider1 .photo,
  .pre-inc #contents .sec02 .slider1 .in-slider1 .photo,
  .pre-inc #contents .sec02 .slider2 .in-slider1 .photo {
    width: 298vw;
  }
}
.pre-inc #contents .sec01 .slider1 .in-slider2,
.pre-inc #contents .sec01 .slider2 .in-slider2,
.pre-inc #contents .sec02 .slider1 .in-slider2,
.pre-inc #contents .sec02 .slider2 .in-slider2 {
  margin: 0;
  width: 162%;
  animation: scroll-right 25s infinite linear 0.5s both;
  display: flex;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .slider1 .in-slider2,
  .pre-inc #contents .sec01 .slider2 .in-slider2,
  .pre-inc #contents .sec02 .slider1 .in-slider2,
  .pre-inc #contents .sec02 .slider2 .in-slider2 {
    width: 298%;
  }
}
.pre-inc #contents .sec01 .slider1 .in-slider2 .photo,
.pre-inc #contents .sec01 .slider2 .in-slider2 .photo,
.pre-inc #contents .sec02 .slider1 .in-slider2 .photo,
.pre-inc #contents .sec02 .slider2 .in-slider2 .photo {
  width: 162vw;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec01 .slider1 .in-slider2 .photo,
  .pre-inc #contents .sec01 .slider2 .in-slider2 .photo,
  .pre-inc #contents .sec02 .slider1 .in-slider2 .photo,
  .pre-inc #contents .sec02 .slider2 .in-slider2 .photo {
    width: 298vw;
  }
}
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
.pre-inc #contents .sec01 .slider2,
.pre-inc #contents .sec02 .slider2 {
  margin: 0 auto;
}
.pre-inc #contents .sec02 {
  background: url(../images/concept/bg03.webp) repeat-y 0 0;
  background-size: cover;
  color: #000;
}
.pre-inc #contents .sec02 .block1 {
  padding-bottom: 0;
  justify-content: flex-start;
}
.pre-inc #contents .sec02 .block1 .sub-txt {
  left: auto;
  right: 5%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec02 .block1 .sub-txt {
    left: 5%;
    right: auto;
  }
}
.pre-inc #contents .sec02 .block1 .sub-txt .photo {
  background: rgba(255, 255, 255, 0.5019607843);
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec02 .block1 .sub-txt .photo {
    background: rgba(255, 255, 255, 0.8156862745);
  }
}
.pre-inc #contents .sec02 .block1 .sub-txt .photo .image {
  filter: drop-shadow(0 0 3px #FFF);
}
.pre-inc #contents .sec02 .block2 {
  margin: 0 auto;
  width: 90%;
  max-width: 1000px;
  position: relative;
}
.pre-inc #contents .sec02 .block2 .map {
  margin: 0;
  width: 65%;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(10%, -10em);
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec02 .block2 .map {
    margin: 2em auto 1em;
    width: 100%;
    position: relative;
    transform: none;
  }
}
.pre-inc #contents .sec02 .block2 .map .caption {
  padding: 4em;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec02 .block2 .map .caption {
    padding: 2em;
  }
}
.pre-inc #contents .sec02 .block2 .img-list {
  margin: 4em auto 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec02 .block2 .img-list {
    margin: 2em auto 0;
  }
}
.pre-inc #contents .sec02 .block2 .img-list .img-item {
  margin: 0;
  width: calc((100% - 4em) / 3);
}
@media screen and (max-width: 767px) {
  .pre-inc #contents .sec02 .block2 .img-list .img-item {
    width: calc((100% - 2em) / 3);
  }
}
.pre-inc #contents .sec02 .block2 .img-list .img-item .ttl {
  margin: 0 0 0.5em;
  text-align: left;
  color: #816E21;
  font-size: min(3.8vw, 20px);
  line-height: 1;
}
.pre-inc #contents .sec02 .block2 .img-list .img-item .cap1 {
  text-align: left;
  color: #000;
}/*# sourceMappingURL=concept.css.map */