@charset "utf-8";
.index {
  padding: 12.5vw 0vw 0vw 0vw;
}

@media screen and (min-width: 768px), print {
  .index {
    padding: 90px 0 0;
  }
}

.index_kv {
  height: 46.875vw;
  background: url(../img/index/kv_sp.jpg) center top no-repeat;
  background-size: 100% auto;
  margin: 0 auto;
}

@media screen and (min-width: 768px), print {
  .index_kv {
    height: 360px;
    background-image: url(../img/index/kv_pc.jpg);
    max-width: 1200px;
    background-size: 1200px auto;
  }
}

.index_kv h1 {
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  line-height: 0;
}

.index_contents .inner {
  padding: 6.25vw 0vw 6.25vw 0vw;
}

@media screen and (min-width: 768px), print {
  .index_contents .inner {
    padding: 20px 0;
  }
}

.index_contents .lede {
  padding: 0vw 3.125vw 0vw 3.125vw;
}

@media screen and (min-width: 768px), print {
  .index_contents .lede {
    padding: 0;
  }
}

.index_contents .lede h2 {
  text-align: center;
  font-weight: 700;
  font-size: 5.625vw;
  margin: 3.125vw 0vw 5.625vw 0vw;
  white-space: nowrap;
}

@media screen and (min-width: 768px), print {
  .index_contents .lede h2 {
    font-size: 25px;
    margin: 0 0 25px;
  }
}

.index_contents .lede h3 {
  text-align: center;
  font-size: 5vw;
  line-height: 1;
  margin: 0vw 0vw 1.5625vw 0vw;
  color: #cca468;
  font-weight: 700;
  white-space: nowrap;
}

@media screen and (min-width: 768px), print {
  .index_contents .lede h3 {
    font-size: 22px;
    margin: 0 0 10px;
  }
}

.index_contents .lede p {
  font-size: 3.75vw;
  line-height: 1.25;
  padding: 3.125vw 0vw 3.125vw 0vw;
  border-top: 1px solid #cca468;
  border-bottom: 1px solid #cca468;
  letter-spacing: -0.04em;
}

@media screen and (min-width: 768px), print {
  .index_contents .lede p {
    text-align: center;
    font-size: 14px;
    line-height: 1.28571;
    padding: 10px 0;
    letter-spacing: 0;
  }
}

.index_contents .map {
  height: 65.625vw;
  background: url(../img/index/map_sp.jpg) center top no-repeat;
  background-size: 100% auto;
  margin: 6.25vw 0vw 6.25vw 0vw;
}

@media screen and (min-width: 768px), print {
  .index_contents .map {
    height: 260px;
    background-image: url(../img/index/map_pc.jpg);
    margin: 15px 0;
  }
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul {
    display: flex;
    justify-content: space-between;
  }
}

.index_contents .winerys ul li {
  margin: 0vw 0vw 5.46875vw 0vw;
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul li {
    display: flex;
    flex-direction: column;
    width: 315px;
    margin: 0;
  }
}

.index_contents .winerys ul li > a {
  display: block;
}

.index_contents .winerys ul li.katsunuma {
  background: #aabc71;
}

.index_contents .winerys ul li.kikyogahara {
  background: #5a3d1c;
}

.index_contents .winerys ul li.mariko {
  background: #5084c4;
}

.index_contents .winerys ul li h3 {
  padding: 0vw 0vw 1.5625vw 0vw;
  text-align: center;
  background: white;
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul li h3 {
    width: auto;
    margin: 0;
    padding: 0 0 20px;
  }
}

.index_contents .winerys ul li h3 img {
  width: 65.625vw;
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul li h3 img {
    width: 280px;
  }
}

.index_contents .winerys ul li .photo {
  display: block;
  height: 43.75vw;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background: white;
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul li .photo {
    height: 230px;
  }
}

.index_contents .winerys ul li .nav {
  padding: 3.75vw 3.75vw 3.75vw 3.75vw;
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul li .nav {
    display: block;
    padding: 12px 25px;
  }
}

.index_contents .winerys ul li .nav a {
  display: inline-block;
  font-size: 3.90625vw;
  line-height: 1.6;
  letter-spacing: -0.02em;
  padding: 0vw 3.90625vw 0vw 0vw;
  position: relative;
  color: white;
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul li .nav a {
    font-size: 14px;
    line-height: 1.71429;
    padding: 0;
    margin: 0;
  }
}

.index_contents .winerys ul li .nav a:after {
  display: inline-block;
  width: 1.875vw;
  height: 3.75vw;
  content: '';
  background: url(../img/index/link_arrow.png) center center no-repeat;
  background-size: 100% 100%;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

@media screen and (min-width: 768px), print {
  .index_contents .winerys ul li .nav a:after {
    position: relative;
    right: auto;
    top: auto;
    bottom: auto;
    width: 10px;
    height: 12px;
    margin-left: 5px;
  }
}
