#key .kv {
  height: 110vw;
  background: url("../img/onlineshop/kv.jpg") center/cover;
}
header{
  height: 110vw;
}
@media only screen and (min-width: 768px) {
  header,#key .kv {
    height: 1010px;
  }
}

@media only screen and (max-width: 768px) {
  .logo{
    top: 24vw;
  }
}

.nav-target {
  background: url("../img/shared/bg2.jpg") repeat top center;
}

.ttl {
  font-size: 8vw;
  letter-spacing: 0.2em;
  position: relative;
}
.ttl span {
  font-size: 3vw;
  letter-spacing: 0.08em;
}
@media only screen and (min-width: 768px) {
  .ttl {
    font-size: 40px;
    line-height: 44px;
  }
  .ttl span {
    font-size: 12px;
  }
}

#sec1 {
  padding: 20vw 0px 10vw;
  background: url("../img/shared/bg.jpg") repeat top center;
}
#sec1 .sec1-box h2 {
  font-size: 6vw;
  line-height: 1.2;
  margin: 0px 0px 6vw;
}
#sec1 .sec1-img {
  margin: 0px -5% 8vw;
}
#sec1 .sec1-video{
  width: 100%;
  margin: 10vw 0px 0px;
}
@media only screen and (min-width: 768px) {
  #sec1 {
    padding: 150px 0px 60px;
  }
  #sec1 .sec1-row {
    flex-direction: row-reverse;
  }
  #sec1 .sec1-box {
    width: 510px;
    margin: 40px 0px 0px -55px;
  }
  #sec1 .sec1-box h2 {
    font-size: 24px;
    line-height: 36px;
    margin: 0px 0px 58px;
  }
  #sec1 .sec1-img {
    width: 744px;
    margin: 0px -250px 0px 0px;
  }
  #sec1 .sec1-video{
    margin: 100px 0px 0px;
  }
}
@media only screen and (min-width: 1000px) and (max-width: 1150px) {
  #sec1 .sec1-box {
    margin: 40px 0px 0px 8px;
  }
  #sec1 .sec1-img {
    margin: 0px -290px 0px 0px;
  }
}

#sec2 {
  padding: 10vw 0px;
}
#sec2 h2 {
  width: 90%;
  margin: 0px 0px 0px auto;
  letter-spacing: 0.01em;
  line-height: 1.6;
}
#sec2 h2 span {
  margin: 0px 0px 0px 8px;
}
#sec2 h2::before {
  content: "";
  position: absolute;
  bottom: -7px;
  left: 0px;
  width: 400%;
  height: 1px;
  background-color: #000;
}
#sec2 .sec2-list {
  margin: 20vw 0px 0px;
}
#sec2 .sec2-list .sec2-item {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  text-align: center;
  padding: 0vw 14% 9vw;
  margin: 0px 0px 16vw;
}
#sec2 .sec2-list .sec2-item .sec2-txt1 {
  font-size: 5vw;
  margin: 0px 0px 8vw;
}
#sec2 .sec2-list .sec2-item .sec2-txt2 {
  display: flex;
  justify-content: center;
  align-items: start;
}
#sec2 .sec2-list .sec2-item::before {
  content: "";
  position: absolute;
  top: 10vw;
  left: 50%;
  transform: translateX(-50%);
  width: 85%;
  height: 100%;
  background: url("../img/onlineshop/sec2_deco2.jpg") top center/cover;
  z-index: -1;
}
#sec2 .wrap {
  z-index: 1;
}
#sec2 .wrap::before {
  content: "";
  position: absolute;
  top: -10vw;
  right: -10%;
  width: 111%;
  height: 40vw;
  background: url("../img/onlineshop/sec2_deco.jpg") repeat top center;
}
@media only screen and (min-width: 768px) {
  #sec2 {
    padding: 176px 0px;
  }
  #sec2 .wrap::before {
    top: -176px;
    width: 1500px;
    height: 280px;
    right: -660px;
  }
  #sec2 h2 {
    width: 442px;
    letter-spacing: 0.2em;
    line-height: 44px;
  }
  #sec2 h2 span {
    margin: 0px 4px;
  }
  #sec2 .sec2-list {
    margin: 68px 0px 0px;
  }
  #sec2 .sec2-list .sec2-item {
    width: 326px;
    padding: 12px 30px 6px;
    margin: 0px;
  }
  #sec2 .sec2-list .sec2-item::before {
    top: 60px;
    width: 326px;
    height: 270px;
  }
  #sec2 .sec2-list .sec2-item .sec2-txt1 {
    font-size: 25px;
    line-height: 40px;
    margin: 0px 0px 37px;
  }
}
@media only screen and (min-width: 1000px) and (max-width: 1100px) {
  #sec2 h2 {
    margin: 0px 12px 0px auto;
  }
}

#sec3 {
  padding: 0px 0px 12vw;
}
#sec3 .sec3-row {
  position: relative;
}
#sec3 .sec3-row h2::before {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 200%;
  height: 1px;
  background: #000;
}
#sec3 .sec3-row h2 span {
  margin: 0px 0px 0px 8px;
}
#sec3 .sec3-row .sec3-txt1 {
  margin: 4vw 0px 8vw;
}
#sec3 .sec3-row .sec3-box {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  text-align: center;
  padding: 0px 0px 4vw;
  margin: 10vw 0px 12vw;
}
#sec3 .sec3-row .sec3-box li:nth-child(1) {
  position: relative;
  width: 18%;
  margin: 0px auto -4vw;
  top: -4vw;
  background: url("../img/shared/bg2.jpg") repeat top center;
}
#sec3 .sec3-row .sec3-list {
  flex-wrap: wrap;
}
#sec3 .sec3-row .sec3-list .sec3-item {
  width: 47%;
  text-align: center;
  letter-spacing: 0.2em;
  margin: 0px 0px 6vw;
}
#sec3 .sec3-row .sec3-list .sec3-item .sec3-txt2 {
  margin: 2vw 0px 0px;
}
#sec3 .sec3-row .sec3-btn1 {
  width: 70%;
  border-bottom: 2px solid #d9d9d9;
  margin: 8vw auto 0px;
  box-sizing: border-box;
  padding: 0px 4%;
  font-size: 5vw;
  display: block;
}
#sec3 .sec3-row .sec3-btn1 i:nth-child(1) {
  margin: 0px 3px 0px 0px;
  width: 15%;
  display: inline-block;
}
#sec3 .sec3-row .sec3-btn1 .arrow {
  float: right;
  font-size: 12px;
}
#sec3 .sec3-row1 h2 {
  margin: 0px 0px 0px 4%;
}
#sec3 .sec3-row2 {
  margin: 12vw 0px;
}
#sec3 .sec3-row2 h2 {
  text-align: right;
  margin: 0px 4% 0px 0px;
}
#sec3 .sec3-row2 h2 span {
  margin: 0px 0px 0px 8px;
}
#sec3 .sec3-row2 h2::before {
  right: 0px;
  left: auto;
}
#sec3 .sec3-row3 h2 {
  margin: 0px 0px 0px 4%;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
#sec3 .sec3-row3 .sec3-txt3 {
  font-size: 4.5vw;
  margin: 7vw 0px 0px;
}
#sec3 .sec3-row3 .sec3-txt3 span {
  font-size: 3vw;
}
@media only screen and (min-width: 768px) {
  #sec3 {
    padding: 0px 0px 64px;
  }
  #sec3 .sec3-row h2 span {
    margin: 0px 0px 0px 30px;
  }
  #sec3 .sec3-row h2::before {
    bottom: -15px;
  }
  #sec3 .sec3-row .sec3-txt1 {
    width: 430px;
  }
  #sec3 .sec3-row .sec3-img1 {
    position: absolute;
    top: 144px;
    right: -250px;
    width: 649px;
  }
  #sec3 .sec3-row .sec3-img3 {
    width: 651px;
    position: absolute;
    top: 144px;
    left: -250px;
  }
  #sec3 .sec3-row .sec3-box {
    width: 380px;
    padding: 0px 0px 23px;
  }
  #sec3 .sec3-row .sec3-box li:nth-child(1) {
    width: 76px;
    margin: 0px auto -20px;
    top: -20px;
  }
  #sec3 .sec3-row .sec3-list {
    margin: 204px 0px 0px;
  }
  #sec3 .sec3-row .sec3-list .sec3-item {
    width: 237px;
    margin: 0px;
  }
  #sec3 .sec3-row .sec3-list .sec3-item .sec3-txt2 {
    margin: 4px 0px 0px;
    line-height: 25px;
  }
  #sec3 .sec3-row .sec3-btn1 {
    width: 290px;
    margin: 54px auto 0px;
    padding: 0px 24px 0px 16px;
    font-size: 20px;
    line-height: 60px;
  }
  #sec3 .sec3-row .sec3-btn1 i:nth-child(1) {
    width: auto;
  }
  #sec3 .sec3-row1 h2 {
    margin: 0px 0px 0px 100px;
  }
  #sec3 .sec3-row1 .sec3-txt1 {
    margin: 40px 0px 0px 100px;
  }
  #sec3 .sec3-row1 .sec3-box {
    margin: 96px 0px 0px 102px;
  }
  #sec3 .sec3-row2 {
    margin: 113px 0px 118px;
  }
  #sec3 .sec3-row2 h2 {
    margin: 0px 70px 0px 0px;
  }
  #sec3 .sec3-row2 .sec3-txt1 {
    margin: 37px 51px 0px auto;
    width: 390px;
  }
  #sec3 .sec3-row2 .sec3-box {
    margin: 98px 73px 0px auto;
  }
  #sec3 .sec3-row3 h2 {
    margin: 0px 0px 0px 100px;
    line-height: 44px;
  }
  #sec3 .sec3-row3 .sec3-txt3 {
    font-size: 22px;
    line-height: 32px;
    width: 330px;
    margin: 42px 0px 0px 94px;
  }
  #sec3 .sec3-row3 .sec3-txt3 span {
    font-size: 17px;
  }
  #sec3 .sec3-row3 .sec3-txt1 {
    margin: 29px 0px 0px 99px;
    width: 423px;
  }
  #sec3 .sec3-row3 .sec3-box {
    margin: 84px 0px 0px 102px;
  }
  #sec3 .sec3-row3 .sec3-btn1 {
    margin: 112px auto 0px;
  }
}

#sec4 {
  background: url("../img/shared/bg.jpg") repeat top center;
  padding: 12vw 0px;
}
#sec4 h2 {
  height: 70vw;
  margin: 0px auto;
  font-size: 5vw;
}
#sec4 h2 span {
  position: relative;
  left: -8px;
  font-size: 10px;
}
#sec4 .sec4-txt1 {
  margin: 4vw 0px 8vw;
}
#sec4 .sec4-slide {
  position: relative;
}
#sec4 .sec4-slide .slider-for dl {
  margin: 4vw 0px 0px;
}
#sec4 .sec4-slide .slider-for dl dd {
  width: 60%;
}
#sec4 .sec4-slide .slider-for dl dt {
  font-size: 4.5vw;
  line-height: 1.4;
  width: 40%;
}
#sec4 .sec4-slide .slider-for dl dt span {
  font-size: 3vw;
}
#sec4 .sec4-slide .slider-nav {
  margin: 4vw 0px 0px;
  width: 94%;
}
#sec4 .sec4-slide .slider-nav .slick-list {
  overflow: unset;
}
#sec4 .sec4-slide .slider-nav .slick-track {
  width: 100% !important;
  transform: none !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#sec4 .sec4-slide .slider-nav .slick-track .slick-slide {
  width: 32% !important;
  margin: 0px 0px 1vw;
  cursor: pointer;
}
#sec4 .sec4-slide .slider-nav .slick-track .slick-slide .sec4-img2 {
  background-color: #000;
}
#sec4 .sec4-slide .slider-nav .slick-track .slick-slide .sec4-img2 img {
  opacity: 0.6;
}
#sec4 .sec4-slide .slider-nav .slick-track .slick-slide:nth-child(4) {
  margin: 0px 0px 0px 42%;
}
#sec4 .sec4-slide .slider-nav .slick-track .slick-slide:nth-child(5) {
  margin: 0px -10% 0px 0px;
}
#sec4 .sec4-slide .slider-nav .slick-track .slick-current .sec4-img2 img {
  opacity: 1;
}
#sec4 .sec4-row2 {
  margin: 12vw 0px;
}
#sec4 .sec4-row2 .sec4-img3 {
  width: 86%;
  margin: 0px 0px 0px -29%;
}
#sec4 .sec4-row2 .sec4-txt2 {
  width: 43%;
  box-sizing: border-box;
  padding: 0px 0px 2vw 4%;
  line-height: 1.4;
  font-size: 3.5vw;
  letter-spacing: 0;
  border-bottom: 1px solid #000;
  align-self: baseline;
}
#sec4 .sec4-btn1 {
  display: block;
  width: 90%;
  font-size: 5vw;
  margin: 0px auto 8vw;
  text-align: center;
  border-bottom: 1px solid #d9d9d9;
  letter-spacing: 0.01em;
}
#sec4 .sec4-btn1 .arrow {
  font-size: 12px;
  float: right;
  line-height: 10vw;
}
#sec4 .sec4-btn2 {
  width: 80%;
  background: none;
  margin: 0px auto;
  display: block;
  border: 1px solid #d9d9d9;
  padding: 0px 5%;
  color: #000;
  font-size: 12px;
  box-sizing: border-box;
}
#sec4 .sec4-btn2:hover {
  color: #fff;
  background: #101277;
}
#sec4 .sec4-btn2 i {
  font-size: 12px;
  float: right;
}
@media only screen and (min-width: 768px) {
  #sec4 {
    padding: 124px 0px 120px;
  }
  #sec4 h2 {
    height: 340px;
    margin: 0px 118px 0px auto;
    font-size: 25px;
  }
  #sec4 h2 span {
    font-size: 12px;
  }
  #sec4 .sec4-txt1 {
    width: 430px;
    margin: 60px -186px 497px auto;
  }
  #sec4 .sec4-slide {
    position: absolute;
    margin: 0px;
    top: 78px;
    left: -146px;
  }
  #sec4 .sec4-slide .slider-for {
    width: 750px;
  }
  #sec4 .sec4-slide .slider-for dl {
    width: 600px;
    margin: 28px 0px 0px;
  }
  #sec4 .sec4-slide .slider-for dl dt {
    width: 180px;
    font-size: 22px;
    line-height: 32px;
  }
  #sec4 .sec4-slide .slider-for dl dt span {
    font-size: 17px;
  }
  #sec4 .sec4-slide .slider-for dl dd {
    width: calc(100% - 180px);
  }
  #sec4 .sec4-slide .slider-nav {
    width: 660px;
    margin: 0;
    position: absolute;
    top: 559px;
    right: -497px;
  }
  #sec4 .sec4-slide .slider-nav .slick-track .slick-slide {
    width: 200px !important;
    margin: 0px 0px 20px;
  }
  #sec4 .sec4-slide .slider-nav .slick-track .slick-slide:hover .sec4-img2 img {
    opacity: 1;
  }
  #sec4 .sec4-slide .slider-nav .slick-track .slick-slide:nth-child(4) {
    margin: 0px 0px 0px 318px;
  }
  #sec4 .sec4-slide .slider-nav .slick-track .slick-slide:nth-child(5) {
    margin: 0px -95px 0px 0px;
  }
  #sec4 .sec4-row2 {
    margin: 0px;
  }
  #sec4 .sec4-row2 .sec4-img3 {
    width: 604px;
    margin: 0px;
  }
  #sec4 .sec4-row2 .sec4-txt2 {
    width: 400px;
    margin: 0px;
    letter-spacing: 0.1em;
    padding: 0px 0px 11px 46px;
    font-size: 22px;
    line-height: 44px;
  }
  #sec4 .sec4-btn1 {
    font-size: 25px;
    line-height: 66px;
    margin: 52px auto 62px;
    width: 390px;
  }
  #sec4 .sec4-btn1 .arrow {
    line-height: 66px;
  }
  #sec4 .sec4-btn2 {
    width: 280px;
    font-size: 14px;
    line-height: 40px;
    padding: 0px 10px;
  }
}
@media only screen and (min-width: 1000px) and (max-width: 1200px) {
  #sec4 .sec4-txt1 {
    margin: 60px 0px 497px auto;
  }
  #sec4 .sec4-slide {
    left: -190px;
  }
  #sec4 .sec4-slide .slider-for dl {
    margin: 64px 0px 0px 200px;
    width: 530px;
  }
  #sec4 .sec4-slide .slider-nav {
    right: -365px;
  }
}
@media only screen and (min-width: 1201px) and (max-width: 1400px) {
  #sec4 .sec4-txt1 {
    margin: 60px -102px 497px auto;
  }
  #sec4 .sec4-slide {
    left: -190px;
  }
  #sec4 .sec4-slide .slider-for dl {
    margin: 64px 0px 0px 100px;
  }
  #sec4 .sec4-slide .slider-nav {
    right: -460px;
  }
}/*# sourceMappingURL=onlineshop.css.map */