html {
  overflow-x: hidden;
  overflow-y: scroll;
}

body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.5625vw;
  font-weight: 400;
  line-height: 1.4;
  color: #231815;
  background: #FFF;
  height: auto;
}

p,
a,
b,
i,
div,
mark,
cite,
li,
dl,
input,
label,
textarea,
span,
header,
footer,
section,
article {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  font-family: inherit;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  margin-inline: auto;
}

h1 {
  font-size: 5.703125vw;
  font-weight: 900;
}

h2 {
  font-size: 2.96875vw;
  font-weight: 900;
  line-height: 4.6875vw;
  text-align: center;
}

h3 {
  font-size: 2.5vw;
  font-weight: 700;
  text-align: center;
}

h4 {
  font-size: 2.1875vw;
  font-weight: 600;
}

strong {
  font-weight: 700;
}

small {
  font-size: 1.40625vw;
  line-height: 2.8125vw;
}

video {
  max-width: 100%;
}

a {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
a:hover {
  opacity: 0.8;
}

.wow.fadeInUp {
  visibility: hidden;
}

.container {
  width: 60.9375vw;
  margin-inline: auto;
}

.sp {
  display: none !important;
}

.pc {
  display: block !important;
}

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

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0;
}

.zen-old-mincho {
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
}

.zen-maru-gothic {
  font-family: "Zen Maru Gothic", serif;
  font-weight: 400;
}

header {
  padding-block: 10vw 7.03125vw;
}
header .logo img {
  display: block;
  width: 27.578125vw;
  margin-inline: auto;
}

.first-view {
  padding-block: 0 8.59375vw;
  margin-bottom: 8.75vw;
  position: relative;
  z-index: 0;
}
.first-view::before {
  content: "";
  display: block;
  background: #DBDCDC;
  width: 100%;
  height: 65.625vw;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.first-view .company-logos {
  width: 60.78125vw;
}
.first-view .company-logos .swiper-wrapper {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1.09375vw;
}
.first-view .company-logos .swiper-slide {
  width: auto;
}
.first-view .company-logos .eye-catch {
  width: 19.375vw;
}
.first-view .company-logos .logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0;
  height: 2.890625vw;
  margin-top: 1.09375vw;
}
.first-view .company-logos .logo-yamasa {
  width: 9.609375vw;
}
.first-view .company-logos .logo-kouei {
  width: 8.28125vw;
}
.first-view .company-logos .logo-mbc {
  width: 9.53125vw;
}
.first-view .icons {
  width: 42.96875vw;
  margin: 9.21875vw auto 0;
}
.first-view .icons img {
  width: 7.8125vw;
}
.first-view h2 {
  font-size: 4.84375vw;
  line-height: 6.5625vw;
  margin-top: 4.296875vw;
}
.first-view p {
  font-size: 2.265625vw;
  line-height: 3.828125vw;
  margin-top: 2.5vw;
}

.movie {
  margin-bottom: 9.375vw;
}
.movie video {
  width: 60.46875vw;
  margin-inline: auto;
}

.subdivision {
  margin-bottom: 7.8125vw;
}
.subdivision p {
  font-size: 1.5625vw;
  line-height: 2.34375vw;
  margin-top: -2.34375vw;
}
.subdivision .models {
  margin-top: 1.796875vw;
}
.subdivision .models .logo-yamasa {
  width: 17.578125vw;
}
.subdivision .models .logo-kouei {
  width: 16.953125vw;
}
.subdivision .models .logo-mbc {
  width: 17.734375vw;
}

.the-leeway {
  margin-bottom: 6.015625vw;
}
.the-leeway .container {
  width: 67.5vw;
}
.the-leeway .contents-wrapper {
  position: relative;
}
.the-leeway .contents-swiper .swiper-slide {
  background: #DBDCDC;
  border-radius: 2.65625vw;
  padding: 6.875vw 4% 7.265625vw;
}
.the-leeway .contents-swiper .logo-the-leeway {
  width: 21.25vw;
}
.the-leeway .contents-swiper .lead {
  font-size: 1.5625vw;
  line-height: 2.890625vw;
  margin-top: 3.90625vw;
}
.the-leeway .contents-swiper .images {
  width: 52.03125vw;
  margin: 3.125vw auto 0;
}
.the-leeway .contents-swiper .images .row {
  gap: 1.640625vw;
}
.the-leeway .contents-swiper .images .row:not(:last-child) {
  margin-bottom: 1.71875vw;
}
.the-leeway .contents-swiper .company-info {
  width: 50.859375vw;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 4.6875vw auto 0;
}
.the-leeway .contents-swiper .company-info .logo {
  width: 21.484375vw;
  margin: 0;
}
.the-leeway .contents-swiper .company-info .more a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0;
  font-weight: 700;
  color: #FFF;
  background: #64B72F;
  border: none;
  width: 25.390625vw;
  height: 4.921875vw;
  font-size: 2.34375vw;
  line-height: 1;
  border-radius: 0.859375vw;
  text-decoration: none;
}
.the-leeway .swiper-button-next,
.the-leeway .swiper-button-prev {
  width: 5.546875vw;
  height: 5.546875vw;
}
.the-leeway .swiper-button-next,
.the-leeway .swiper-rtl .swiper-button-prev {
  right: auto;
  left: calc(100% + 3.125vw);
  margin: 0;
}
.the-leeway .swiper-button-prev,
.the-leeway .swiper-rtl .swiper-button-next {
  right: calc(100% + 3.125vw);
  left: auto;
  margin: 0;
}
.the-leeway .swiper-button-next:after,
.the-leeway .swiper-rtl .swiper-button-prev:after {
  content: "";
  background: url(../img/right_arrow.webp) no-repeat center center/contain;
  width: 5.546875vw;
  height: 5.546875vw;
}
.the-leeway .swiper-button-prev:after,
.the-leeway .swiper-rtl .swiper-button-next:after {
  content: "";
  background: url(../img/left_arrow.webp) no-repeat center center/contain;
  width: 5.546875vw;
  height: 5.546875vw;
}

.town-of-yoshino {
  background: #DBDCDC;
  padding-block: 5.625vw 6.25vw;
}
.town-of-yoshino .container {
  width: 61.328125vw;
}
.town-of-yoshino h2 {
  text-align: left;
  font-size: 4.21875vw;
  line-height: 5.9375vw;
  letter-spacing: -0.15625vw;
}
.town-of-yoshino .lead {
  font-size: 2.109375vw;
  line-height: 3.90625vw;
  margin-top: 3.515625vw;
}
.town-of-yoshino .map {
  min-width: 63.203125vw;
  margin: 6.25vw calc(-1.875vw / 2) 0;
  position: relative;
}
.town-of-yoshino .more {
  margin-top: 3.4375vw;
}
.town-of-yoshino .more a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0;
  width: 33.671875vw;
  height: 7.109375vw;
  font-size: 2.96875vw;
  line-height: 1;
  padding-bottom: 1.015625vw;
  font-weight: 700;
  border: 0.3125vw solid #231815;
  border-radius: 0.78125vw;
  background: #FFF;
  text-decoration: none;
  margin-inline: auto;
}

.access-info {
  padding-block: 4.53125vw 4.84375vw;
}
.access-info .container {
  width: 62.265625vw;
}
.access-info .row {
  gap: 3.359375vw;
}
.access-info .col {
  width: 100%;
}
.access-info ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0;
  font-size: 1.328125vw;
  line-height: 1.953125vw;
}
.access-info ul li .dot {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  position: relative;
  margin: 0 0.3125vw;
  -ms-flex-item-align: end;
  align-self: flex-end;
  height: 0;
  line-height: 1;
  border-bottom: 0.078125vw dotted;
  margin-bottom: 0.390625vw;
}

footer {
  background: #DBDCDC;
  padding-block: 3.28125vw 3.90625vw;
}
footer .title {
  font-size: 1.875vw;
  line-height: 1.484375vw;
}
footer .logos {
  gap: 7.8125vw;
  margin-top: 1.5625vw;
}
footer .logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0;
  height: 4.609375vw;
}
footer .logo-yamasa {
  width: 15.234375vw;
}
footer .logo-kouei {
  width: 14.0625vw;
}
footer .logo-mbc {
  width: 15vw;
}
footer .address {
  font-size: 0.859375vw;
  line-height: 1.015625vw;
  margin-top: 0.703125vw;
}

@media screen and (max-width: 767px) {
  .container {
    width: 86.9333333333vw;
  }
  header {
    padding-block: 14.4vw 22.9333333333vw;
  }
  header .logo img {
    width: 67.2vw;
  }
  .first-view {
    padding-block: 0 12vw;
    margin-bottom: 8.8vw;
  }
  .first-view::before {
    height: 132.5333333333vw;
  }
  .first-view .container {
    width: 100%;
  }
  .first-view .company-logos {
    width: 100%;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .first-view .company-logos .swiper-wrapper {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 0;
  }
  .first-view .company-logos .swiper-slide {
    width: 67.7333333333vw;
    margin-inline: 1.3333333333vw;
  }
  .first-view .company-logos .eye-catch {
    width: 67.7333333333vw;
  }
  .first-view .company-logos .logo {
    height: 10.1333333333vw;
    margin-top: 3.4666666667vw;
  }
  .first-view .company-logos .logo-yamasa {
    width: 33.6vw;
  }
  .first-view .company-logos .logo-kouei {
    width: 28.8vw;
  }
  .first-view .company-logos .logo-mbc {
    width: 33.0666666667vw;
  }
  .first-view .icons {
    width: 48vw;
    margin: 18.9333333333vw auto 0;
  }
  .first-view .icons img {
    width: 8.5333333333vw;
  }
  .first-view h2 {
    font-size: max(5.0666666667vw, 20px);
    line-height: max(6.6666666667vw, 26px);
    margin-top: 4.5333333333vw;
  }
  .first-view .lead {
    width: max(62.9333333333vw, 240px);
    font-size: max(3.7333333333vw, 14px);
    line-height: max(6.6666666667vw, 24px);
    margin: 4vw auto 0;
  }
  .movie {
    margin-bottom: 9.3333333333vw;
  }
  .movie video {
    width: 86.6666666667vw;
    margin-inline: auto;
  }
  .subdivision {
    margin-bottom: 10.6666666667vw;
  }
  .subdivision .container {
    width: 100%;
  }
  .subdivision .map-img {
    width: 98.9333333333vw;
  }
  .subdivision .lead {
    width: max(63.7333333333vw, 240px);
    font-size: max(3.7333333333vw, 14px);
    line-height: max(6.1333333333vw, 22px);
    margin: -2.1333333333vw auto 0;
  }
  .subdivision .models {
    display: table;
    margin: 8.2666666667vw auto 0;
  }
  .subdivision .models .col:not(:last-child) {
    margin-bottom: 3.4666666667vw;
  }
  .subdivision .models .col img {
    margin: 0;
  }
  .subdivision .models .logo-yamasa {
    width: 40vw;
  }
  .subdivision .models .logo-kouei {
    width: 38.4vw;
  }
  .subdivision .models .logo-mbc {
    width: 40.2666666667vw;
  }
  .the-leeway {
    margin-bottom: 10.1333333333vw;
  }
  .the-leeway .container {
    width: 77.8666666667vw;
  }
  .the-leeway .contents-swiper .swiper-slide {
    border-radius: 4.8vw;
    padding: 8.8vw 8.8vw 5.6vw;
  }
  .the-leeway .contents-swiper .logo-the-leeway {
    width: 35.4666666667vw;
  }
  .the-leeway .contents-swiper .lead {
    text-align: left;
    font-size: max(3.2vw, 14px);
    line-height: max(4.8vw, 20px);
    margin-top: 8.5333333333vw;
  }
  .the-leeway .contents-swiper .images {
    width: 60vw;
    margin: 7.4666666667vw auto 0;
  }
  .the-leeway .contents-swiper .images .row {
    gap: 2.6666666667vw;
  }
  .the-leeway .contents-swiper .images .row:not(:last-child) {
    margin-bottom: 2.6666666667vw;
  }
  .the-leeway .contents-swiper .company-info {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4vw;
    margin: 9.0666666667vw auto 0;
  }
  .the-leeway .contents-swiper .company-info .logo {
    width: 45.3333333333vw;
  }
  .the-leeway .contents-swiper .company-info .more a {
    width: max(48.8vw, 184px);
    height: max(9.3333333333vw, 36px);
    font-size: max(2.9333333333vw, 16px);
    border-radius: 1.6vw;
  }
  .the-leeway .swiper-button-next,
  .the-leeway .swiper-button-prev {
    width: 6.4vw;
    height: 6.4vw;
  }
  .the-leeway .swiper-button-next,
  .the-leeway .swiper-rtl .swiper-button-prev {
    left: calc(100% + 3.4666666667vw);
  }
  .the-leeway .swiper-button-prev,
  .the-leeway .swiper-rtl .swiper-button-next {
    right: calc(100% + 3.4666666667vw);
  }
  .the-leeway .swiper-button-next:after,
  .the-leeway .swiper-rtl .swiper-button-prev:after {
    width: 6.4vw;
    height: 6.4vw;
  }
  .the-leeway .swiper-button-prev:after,
  .the-leeway .swiper-rtl .swiper-button-next:after {
    width: 6.4vw;
    height: 6.4vw;
  }
  .town-of-yoshino {
    padding-block: 12.5333333333vw 8vw;
  }
  .town-of-yoshino .container {
    width: 100%;
  }
  .town-of-yoshino h2 {
    width: 74.6666666667vw;
    font-size: max(6.4vw, 25px);
    line-height: max(9.0666666667vw, 35px);
    letter-spacing: -0.5333333333vw;
    margin-inline: auto;
  }
  .town-of-yoshino .lead {
    width: 74.6666666667vw;
    font-size: max(4vw, 16px);
    line-height: max(6.6666666667vw, 26px);
    margin: 6.6666666667vw auto 0;
  }
  .town-of-yoshino .map {
    width: 92.8vw;
    margin: 19.2vw auto 0;
  }
  .town-of-yoshino .more {
    margin-top: 8.8vw;
  }
  .town-of-yoshino .more a {
    width: max(52.5333333333vw, 198px);
    height: max(10.9333333333vw, 42px);
    font-size: max(4.5333333333vw, 18px);
    padding-bottom: 2.4vw;
    border: 0.5333333333vw solid #231815;
    border-radius: 1.3333333333vw;
  }
  .access-info {
    padding-block: 8.8vw 9.6vw;
  }
  .access-info .container {
    width: max(61.6vw, 280px);
  }
  .access-info .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0;
  }
  .access-info .col {
    width: 100%;
  }
  .access-info ul li {
    font-size: max(2.6666666667vw, 14px);
    line-height: max(4vw, 17px);
  }
  .access-info ul li .dot {
    margin: 0 1.0666666667vw;
    border-bottom: 0.2666666667vw dotted;
    margin-bottom: 1.3333333333vw;
  }
  footer {
    padding-block: 5.6vw 6.1333333333vw;
  }
  footer .title {
    font-size: max(3.4666666667vw, 17px);
    line-height: max(2.6666666667vw, 22px);
  }
  footer .logos {
    width: max(60vw, 280px);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 6.4vw;
    margin: 3.4666666667vw auto;
  }
  footer .col {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 0;
  }
  footer .logo {
    height: auto;
  }
  footer .logo-yamasa {
    width: max(27.2vw, 112px);
  }
  footer .logo-kouei {
    width: max(24.2666666667vw, 101px);
  }
  footer .logo-mbc {
    width: max(26.6666666667vw, 110px);
  }
  footer .address {
    width: max(26.9333333333vw, 140px);
    text-align: left;
    font-weight: 700;
    font-size: max(2.1333333333vw, 12px);
    line-height: max(2.4vw, 13px);
    margin: 0;
  }
}
/*# sourceMappingURL=style.css.map */
