header hr {
  height: 2.5vw;
  background-image: url("../img/shared/line.png");
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: 3.5vw;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 1;
  border: none;
}
@media only screen and (min-width: 768px) {
  header hr {
    height: 20px;
    background-size: auto;
  }
}

#key {
  background-image: url("../img/wine/key.jpg");
  background-position: 17% 50%;
  height: 100vh;
}

.top_mv {
  position: relative;
  width: 100%;
  height: 100vh;
  visibility: hidden;
}

.has_nav .top_mv {
  visibility: visible;
}

.top_mv_inline {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.top_mv.is-hidden {
  visibility: hidden;
}

.top_mv_cover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(35, 24, 22, 0.9);
  content: "";
  opacity: 0;
}

#sec1 {
  position: relative;
  z-index: 3;
  padding: 15vw 0;
}
#sec1 h2 {
  line-height: 12vw;
  margin-bottom: 10vw;
}
@media only screen and (max-width: 767px) {
  #sec1 h2 {
    letter-spacing: 0.05em;
    white-space: nowrap;
  }
  #sec1 h2 span {
    letter-spacing: 0.05em;
  }
  #sec1 h2 .r2 {
    margin-left: 4%;
  }
  #sec1 h2 .r3 {
    margin: 2vw 0 0 17%;
  }
  #sec1 .fz26 {
    font-size: 6vw;
  }
  #sec1 .fz35 {
    font-size: 7vw;
  }
  #sec1 .fz45 {
    font-size: 9vw;
  }
  #sec1 .fz59 {
    font-size: 12vw;
  }
}
@media only screen and (min-width: 768px) {
  #sec1 {
    padding: 182px 0 157px;
  }
  #sec1 h2 {
    width: 240px;
    float: left;
    line-height: 57px;
    margin: 0 0 0 68px;
  }
  #sec1 h2 .r2 {
    margin: 19px 14px 0 34px;
  }
  #sec1 h2 .r3 {
    margin-top: 84px;
  }
  #sec1 .txt {
    width: 620px;
    float: right;
    margin: 120px -16px 0 0;
  }
}

#sec2 {
  padding: 15vw 0 35vw;
  position: relative;
  z-index: 2;
}
#sec2:before {
  content: "";
  width: 46%;
  height: 50vw;
  background-image: url("../img/wine/s2-dc1.png");
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: 50%;
  top: 5vw;
  z-index: -1;
}
#sec2:after {
  content: "";
  width: 74%;
  height: 50vw;
  background-image: url("../img/wine/s2-dc2.png");
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center bottom;
  position: absolute;
  right: 4%;
  bottom: -2vw;
  z-index: -1;
}
#sec2 h2 img {
  display: block;
  width: 80%;
  margin: 0 0 3vw 8%;
}
#sec2 h2 span {
  line-height: 12vw;
}
#sec2 .txt {
  margin: 8vw 0;
}
#sec2 .img img {
  height: 70vw;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 80% 50%;
     object-position: 80% 50%;
}
#sec2 .tabs-switch .tab-link {
  margin: 6vw 0;
  position: relative;
}
#sec2 .tabs-switch .tab-link:before {
  content: "";
  width: 30%;
  height: 24vw;
  background-image: url("../img/wine/s2-catch2.png");
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: -4%;
  top: 17vw;
  z-index: 2;
}
#sec2 .tabs-switch .tab-link li {
  position: relative;
  width: 30%;
}
#sec2 .tabs-switch .tab-link li .on {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0;
}
#sec2 .tabs-switch .tab-link .active .on {
  opacity: 1;
}
#sec2 .tabs-switch .tab-link .active .off {
  opacity: 0;
}
#sec2 .tabs-switch .tab-content .col {
  margin: 9vw 0 0;
}
#sec2 .tabs-switch .tab-content .col .num {
  width: 12%;
}
#sec2 .tabs-switch .tab-content .col .ttl {
  line-height: 8vw;
  margin: 4vw 0 7vw;
}
#sec2 .tabs-switch .tab-content .col .ttl small {
  line-height: 7vw;
  margin-top: 3vw;
}
#sec2 .btn-link {
  margin-top: 9vw;
}
@media only screen and (max-width: 767px) {
  #sec2 .fz59 {
    font-size: 11vw;
  }
  #sec2 .fz34 {
    font-size: 7vw;
  }
  #sec2 .fz24 {
    font-size: 4.7vw;
  }
  #sec2 .btn-link a {
    font-size: 4vw;
    padding-left: 17%;
  }
  #sec2 .btn-link a:after {
    right: 4%;
  }
}
@media only screen and (min-width: 768px) {
  #sec2 {
    padding: 127px 0 95px;
  }
  #sec2:before {
    width: 306px;
    height: 266px;
    left: calc(50% + 52px);
    top: 83px;
  }
  #sec2:after {
    width: 467px;
    height: 266px;
    right: calc(50% - 564px);
    bottom: 9px;
  }
  #sec2 h2 {
    width: 574px;
  }
  #sec2 h2 img {
    width: auto;
    margin: 0 0 18px 83px;
  }
  #sec2 h2 span {
    line-height: 70px;
  }
  #sec2 .txt {
    width: 555px;
    text-align: center;
    margin: 43px 0 48px;
  }
  #sec2 .img {
    position: absolute;
    left: -26px;
    top: 147px;
    z-index: -1;
  }
  #sec2 .img img {
    height: auto;
  }
  #sec2 .tabs-switch .tab-link {
    margin: 0 0 0 236px;
    display: block;
  }
  #sec2 .tabs-switch .tab-link:before {
    width: 203px;
    height: 159px;
    left: -103px;
    top: 86px;
  }
  #sec2 .tabs-switch .tab-link li {
    width: 185px;
    display: block;
  }
  #sec2 .tabs-switch .tab-link li img {
    transition: 0.3s all ease-in-out;
  }
  #sec2 .tabs-switch .tab-link li:hover .on {
    opacity: 1;
  }
  #sec2 .tabs-switch .tab-link li:hover .off {
    opacity: 0;
  }
  #sec2 .tabs-switch .tab-link .link2 {
    margin: 107px 0 0 72px;
  }
  #sec2 .tabs-switch .tab-link .link3 {
    position: absolute;
    top: 194px;
    left: 363px;
    z-index: 1;
  }
  #sec2 .tabs-switch .tab-content .pic {
    width: 526px;
    float: left;
    margin: 22px 0 0 -26px;
  }
  #sec2 .tabs-switch .tab-content .col {
    width: 450px;
    float: right;
    margin: 0 12px 0 0;
  }
  #sec2 .tabs-switch .tab-content .col .num {
    width: auto;
  }
  #sec2 .tabs-switch .tab-content .col .num img {
    margin: -42px 0 0 3px;
  }
  #sec2 .tabs-switch .tab-content .col .ttl {
    line-height: 39.17px;
    margin: 23px 0 38px;
  }
  #sec2 .tabs-switch .tab-content .col .ttl small {
    line-height: 39.17px;
    margin-top: 11px;
  }
  #sec2 .tabs-switch .tab-content .col .txt2 {
    margin: 0 -8px 0 1px;
  }
  #sec2 .btn-link {
    margin: 73px 0 0 347px;
  }
  #sec2 .btn-link:before {
    left: -81px;
  }
  #sec2 .btn-link a {
    padding: 17px 0 15px 9px;
  }
}
@media only screen and (min-width: 1200px) {
  #sec2 .tabs-switch .tab-content .col {
    margin-right: 5px;
  }
}

.s3_s4 {
  position: relative;
  z-index: 2;
}
.s3_s4:before {
  content: "";
  background: rgba(25, 17, 11, 0.6);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}

#sec3 {
  padding: 15vw 0;
  position: relative;
  z-index: 0;
}
#sec3:before {
  content: "";
  height: 80vw;
  background-image: url("../img/wine/s3-bg.jpg");
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center bottom;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -30vw;
  z-index: -1;
}
#sec3 .col h2 {
  line-height: 13vw;
  margin: 7vw 0;
}
@media only screen and (min-width: 768px) {
  #sec3 {
    padding: 105px 0 72px;
  }
  #sec3:before {
    height: 1005px;
    width: 1500px;
    left: calc(50% - 750px);
    right: auto;
    bottom: auto;
    top: 325px;
  }
  #sec3 .col {
    width: 400px;
    float: left;
    margin: 62px 0 0 25px;
    position: relative;
    z-index: 1;
  }
  #sec3 .col h2 {
    line-height: 50px;
    margin: 0 0 33px;
    white-space: nowrap;
  }
  #sec3 .col h2 span.db {
    margin-bottom: 16px;
  }
  #sec3 .col .txt {
    margin-right: 5px;
  }
  #sec3 .img {
    width: 887px;
    float: right;
    margin: 0 -171px;
  }
}

#sec4 {
  position: relative;
  z-index: 1;
  padding: 15vw 0;
}
#sec4:before {
  content: "";
  width: 23%;
  height: 55vw;
  background-image: url("../img/wine/s4-dc.png");
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: 4%;
  top: -8vw;
  z-index: -1;
}
#sec4 .note {
  margin: 5vw 0 8vw;
}
#sec4 .blk .col .item {
  margin-bottom: 8vw;
}
#sec4 .blk .col .item .ttl {
  font-size: 15px;
  letter-spacing: 0.12em;
  border-bottom: 2px solid #767575;
  padding-bottom: 6px;
  margin-bottom: 10px;
}
#sec4 .blk .col .item dl {
  font-size: 12px;
  letter-spacing: 0.09em;
  line-height: 20px;
  display: table;
  width: 100%;
  border-bottom: 1px solid #767575;
  padding-bottom: 6px;
  margin-bottom: 8px;
}
#sec4 .blk .col .item dl dt {
  display: table-cell;
}
#sec4 .blk .col .item dl dd {
  width: 120px;
  display: table-cell;
  text-align: right;
}
@media only screen and (min-width: 768px) {
  #sec4 {
    padding: 0 0 300px;
  }
  #sec4:before {
    width: 142px;
    height: 324px;
    left: calc(50% - 373px);
    top: -118px;
  }
  #sec4 h2 {
    padding-right: 52px;
  }
  #sec4 .note {
    margin: 23px 0 71px 4px;
  }
  #sec4 .blk {
    padding: 0 15px;
  }
  #sec4 .blk .col {
    width: 468px;
  }
  #sec4 .blk .col .item {
    margin-bottom: 61px;
  }
  #sec4 .blk .col .item .ttl {
    font-size: 17px;
    line-height: 22px;
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
  #sec4 .blk .col .item dl {
    font-size: 15px;
    line-height: 22px;
    padding-bottom: 12px;
    margin-bottom: 9px;
  }
  #sec4 .blk .col .item dl dd {
    width: 100px;
    letter-spacing: 0.13em;
  }
}

#sec5 {
  position: relative;
  z-index: 3;
  padding-bottom: 15vw;
}
#sec5:before {
  content: "";
  height: 30vw;
  background-image: url("../img/shared/bg2.jpg");
  position: absolute;
  left: 0;
  right: 0;
  top: -6vw;
  z-index: -2;
  transform: skewY(6deg);
}
#sec5:after {
  content: "";
  background-image: url("../img/shared/bg2.jpg");
  position: absolute;
  left: 0;
  right: 0;
  top: 0vw;
  bottom: 0;
  z-index: -2;
}
#sec5 .wrap {
  position: static;
}
#sec5 .wrap:before {
  content: "";
  height: 2.5vw;
  background-image: url("../img/shared/line2.png");
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: 3.5vw;
  position: absolute;
  left: 0;
  right: 0;
  top: -8vw;
  z-index: 1;
  transform: skewY(6deg);
}
#sec5 .wrap:after {
  content: "";
  width: 80%;
  height: 60vw;
  background-image: url("../img/wine/s5-dc.png");
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: 0;
  top: 31vw;
  z-index: -1;
}
#sec5 h2 {
  line-height: 13vw;
}
#sec5 h2 img {
  width: 80%;
  margin: 0 0 -10vw 24%;
}
#sec5 .note {
  margin: 5vw 0 8vw;
}
#sec5 .blk .col .item {
  margin-bottom: 8vw;
}
#sec5 .blk .col .item .ttl {
  font-size: 18px;
  letter-spacing: 0.12em;
  border-bottom: 2px solid #767575;
  padding-bottom: 6px;
  margin-bottom: 10px;
}
#sec5 .blk .col .item img {
	width: 30%;
	margin-bottom: 2vw;
}
#sec5 .blk .col .item dl {
  font-size: 12px;
  letter-spacing: 0.09em;
  line-height: 20px;
  display: table;
  width: 100%;
  border-bottom: 1px solid #767575;
  padding-bottom: 6px;
  margin-bottom: 8px;
}

#sec5 .blk .col .item dl dt {
/*  display: table-cell;*/
	font-size: 4vw;
	padding-bottom: 1vw;
}
#sec5 .blk .col .item dl dd {
/*  width: 55px;
  display: table-cell;
  text-align: right;*/
	padding-bottom: 2vw;
}
#sec5 .blk .col .item .memo {
	color: #3D3D3D;
	font-weight: normal;
}

#sec5 .btn-link {
  margin-top: 9vw;
}
#sec5 .btn-link a img {
  width: 6vw;
  margin: -1vw 3% 0 0;
}
@media only screen and (max-width: 767px) {
  #sec5 h2 {
    white-space: nowrap;
  }
  #sec5 h2 span {
    letter-spacing: 0.05em;
  }
  #sec5 .fz59 {
    font-size: 11vw;
  }
  #sec5 .fz45 {
    font-size: 8vw;
  }
  #sec5 .btn-link a {
    padding-left: 12%;
  }
}
@media only screen and (min-width: 768px) {
  #sec5 {
    padding-bottom: 31px;
    margin-top: -197px;
  }
  #sec5:before {
    height: 300px;
    top: -24px;
    transform: skewY(5.3deg);
  }
  #sec5:after {
    top: 170px;
  }
  #sec5 .wrap:before {
    height: 20px;
    background-size: auto;
    top: -43px;
    transform: skewY(5.3deg);
  }
  #sec5 .wrap:after {
    width: 689px;
    height: 338px;
    left: calc(50% - 735px);
    top: 56px;
  }
  #sec5 h2 {
    line-height: 75px;
    margin-left: 15px;
  }
  #sec5 h2 img {
    width: auto;
    margin: 0 0 -79px 179px;
  }
  #sec5 .note {
    text-align: left;
    margin: -5px 0 48px 14px;
  }
  #sec5 .blk {
    padding: 0 15px;
  }
  #sec5 .blk .col {
    width: 468px;
  }
  #sec5 .blk .col .item {
    margin-bottom: 61px;
  }
  #sec5 .blk .col .item .ttl {
    font-size: 20px;
    line-height: 22px;
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
#sec5 .blk .col .item img {
	width: 98px;
	height: 92px;
}
	
  #sec5 .blk .col .item dl {
    line-height: 22px;
    padding-bottom: 12px;
    margin-bottom: 9px;
  }
	#sec5 .blk .col .item dl dt {
    font-size: 20px;
	}
  #sec5 .blk .col .item dl dd {
    /*width: 80px;*/
    letter-spacing: 0.13em;
    font-size: 18px;
  }
	#sec5 .blk .col .item .memo {
		font-size: 16px;
		
	}
	
  #sec5 .btn-link {
    margin-top: 0;
    position: absolute;
    right: calc(50% - 490px);
    top: 206px;
    z-index: 1;
  }
  #sec5 .btn-link:before {
    left: -51px;
  }
  #sec5 .btn-link a {
    padding: 17px 0 15px 24px;
  }
  #sec5 .btn-link a img {
    width: 29px;
    margin: -9px 4px 0 0;
  }
}

#sec6 {
  padding: 15vw 0;
  position: relative;
  z-index: 2;
}
#sec6 .col h2 {
  line-height: 13vw;
  margin: 6vw 0;
}
@media only screen and (min-width: 768px) {
  #sec6 {
    padding: 96px 0 92px;
  }
  #sec6 .col {
    width: 390px;
    float: right;
    margin: 61px -12px 0 0;
  }
  #sec6 .col h2 {
    line-height: 60px;
    margin: 0 0 29px;
    white-space: nowrap;
  }
  #sec6 .col h2 span.db {
    margin-bottom: 5px;
  }
  #sec6 .img {
    width: 617px;
    float: left;
    margin-left: -67px;
  }
}

#sec7 {
  margin-top: -1px;
  position: relative;
  z-index: 2;
  padding: 15vw 0 7vw;
}
#sec7:before {
  content: "";
  width: 45%;
  height: 60vw;
  background-image: url("../img/wine/s7-dc.png");
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  right: 0;
  top: -10vw;
  z-index: -1;
}
#sec7 .note {
  margin: 5vw 0 8vw;
}
#sec7 .blk .col .item {
  margin-bottom: 8vw;
}
#sec7 .blk .col .item .ttl {
  font-size: 15px;
  letter-spacing: 0.12em;
  border-bottom: 2px solid #767575;
  padding-bottom: 6px;
  margin-bottom: 10px;
}
#sec7 .blk .col .item dl {
  font-size: 12px;
  letter-spacing: 0.09em;
  line-height: 20px;
  display: table;
  width: 100%;
  border-bottom: 1px solid #767575;
  padding-bottom: 6px;
  margin-bottom: 8px;
}
#sec7 .blk .col .item dl dt {
  display: table-cell;
}
#sec7 .blk .col .item dl dd {
  width: 120px;
  display: table-cell;
  text-align: right;
}
@media only screen and (min-width: 768px) {
  #sec7 {
    padding: 0px 0 36px;
  }
  #sec7:before {
    width: 324px;
    height: 295px;
    right: calc(50% - 510px);
    top: -84px;
  }
  #sec7 h2 {
    padding-right: 4px;
  }
  #sec7 .note {
    margin: 23px 0 71px 4px;
  }
  #sec7 .blk {
    padding: 0 15px;
  }
  #sec7 .blk .col {
    width: 468px;
  }
  #sec7 .blk .col .item {
    margin-bottom: 61px;
  }
  #sec7 .blk .col .item .ttl {
    font-size: 17px;
    line-height: 22px;
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
  #sec7 .blk .col .item dl {
    font-size: 15px;
    line-height: 22px;
    padding-bottom: 12px;
    margin-bottom: 9px;
  }
  #sec7 .blk .col .item dl dd {
    width: 80px;
    letter-spacing: 0.13em;
  }
}/*# sourceMappingURL=wine.css.map */