@charset "utf-8";
#mv .slideshow {
  height: 100%;
}
#mv .slideshow .slick-list {
  height: 100%;
}
#mv .slideshow .slick-track {
  height: 100%;
}
#mv .slideshow .slide_item {
  position: relative;
  height: 100%;
}
#mv .slideshow .slide_item picture {
  height: 100%;
}
#mv .slideshow .slide_item picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 0 0;
}
#mv .slideshow .slide_item .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.3s linear;
}
#mv .slideshow .slide_item .inner .note {
  font-size: 1.42vw;
  line-height: 2.2em;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 4.32vw;
  height: fit-content;
  width: fit-content;
}
@media (max-width: 600px) {
  #mv .slideshow .slide_item .inner {
    position: static;
  }
  #mv .slideshow .slide_item .inner .note {
    font-size: 3.42vw;
    line-height: 2.3334em;
    position: static;
    height: auto;
    width: auto;
    background: #efeff0;
    padding: 4.91vw 9.95vw;
  }
}
.mv__copy {
  position: absolute;
  color: #231815;
  top: 5.43vw;
  left: 3.57vw;
  z-index: 1;
  opacity: 1;
  transition: opacity 0.3s linear;
  font-size: calc(2.36vw * 0.77);
}
.mv__copy.active {
  opacity: 0;
}
@media (max-width: 600px) {
  .mv__copy {
    top: 5.44vw;
    left: 6.85vw;
    font-size: 6.27vw;
  }
}
.slick-slider {
  margin-bottom: 0;
}
.message {
  font-size: calc(1.3vw * 0.77);
  line-height: 3.2728em;
  text-align: center;
  margin: 7.32vw 0 5.86vw;
}
@media (max-width: 600px) {
  .message {
    font-size: 3.38vw;
    line-height: 2em;
    text-align: center;
    margin: 10.77vw 0 24.48vw;
  }
  .message span {
    display: inline-block;
  }
}
@media (max-width: 600px) {
  #flow {
    width: 72.7vw;
    margin: 0 auto;
  }
}
h2 {
  font-size: calc(1.3vw * 0.77);
  line-height: 1.6462em;
  font-weight: normal;
  border-bottom: 1px solid #231815;
  padding-left: calc(1.91vw * 0.8454);
  position: relative;
  margin-bottom: calc(8.01vw * 0.8454);
}
h2:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 0.91vw;
  height: calc(100% - 2px);
  display: block;
  background: #f0f0f1;
}
@media (max-width: 600px) {
  h2 {
    font-size: 3.75vw;
    line-height: 1em;
    padding-left: 4.05vw;
    margin-bottom: 16.09vw;
    height: 6.99vw;
    padding-top: 0.83vw;
  }
  h2:before {
    width: 2.54vw;
    height: 5.97vw;
  }
}
.flow_item {
  margin-bottom: calc(10.45vw * 0.8454);
  display: flex;
}
.flow_item picture {
  width: calc(38.94vw * 0.8454);
}
.flow_item .flow_text {
  width: calc(37.13vw * 0.8454);
}
.flow_item h3.pc {
  font-size: calc(1.3vw * 0.77);
  line-height: 1em;
  font-weight: normal;
  background: #f0f0f1;
  text-align: center;
  padding: calc(1.6562em * 0.8454);
  margin-bottom: calc(2.14vw * 0.8454);
}
.flow_item h3.sp {
  display: none;
}
.flow_item .flow_note {
  font-size: calc(1.18vw * 0.77);
  line-height: 2.6em;
  padding-left: calc(1.83vw * 0.8454);
}
.flow_item .flow_note .sp {
  display: none;
}
@media (max-width: 600px) {
  .flow_item {
    margin-bottom: 17.28vw;
    display: block;
  }
  .flow_item picture {
    width: 100%;
    margin-bottom: 3.73vw;
  }
  .flow_item .flow_text {
    width: 100%;
  }
  .flow_item h3.pc {
    display: none;
  }
  .flow_item h3.sp {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 3.75vw;
    line-height: 1em;
    font-weight: normal;
    margin-bottom: 7.46vw;
  }
  .flow_item h3.sp:before,
  .flow_item h3.sp:after {
    content: "";
    display: block;
    width: 4.29vw;
    height: 1px;
    background: #231815;
    margin: 0 1.89vw;
  }
  .flow_item .flow_note {
    font-size: 3.38vw;
    line-height: 1.8889em;
    padding-left: 0;
  }
  .flow_item .flow_note .pc {
    display: none;
  }
  .flow_item .flow_note .sp {
    display: inline;
  }
}
.message2 {
  text-align: center;
  font-size: calc(1.3vw * 0.77);
  line-height: 3.2728em;
}
.message2 span {
  display: inline-block;
}
@media (max-width: 600px) {
  .message2 {
    font-size: 3.8vw;
    line-height: 2.5em;
    background: #efeff0;
    padding: 11.17vw 0 13.43vw;
  }
}
@media (max-width: 600px) {
  #main {
    padding-bottom: 0;
  }
}
