  .top {
    margin: 0 auto 80px;
    text-align: center;
    width: 95%;
    max-width: 900px;
  }
  .top p {
  }
  .top img {
    margin: 50px 0;
  }
  .items {
    margin: 0 auto;
    width: 95%;
    max-width: 900px;
  }
  .items ul {
    display: block;
    list-style: none;
    margin: 0;
  }
  .items li {
    display: block;
    overflow: hidden;
  }
  .items li + li {
    margin-top: 80px;
  }
  .items li > a {
    color: #434745;
    display: block;
    overflow: hidden;
  }
  .items .photo {
    display: block;
    float: left;
    text-align: center;
    width: 26.6%;
  }
  .items .thumb {
    display: block;
    width: 100%;
    height: 0;
    padding-top: 149%;
    position: relative;
    overflow: hidden;
  }
  .items .thumb img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: .3s;
  }
  .items a:hover .thumb img,
  .items .inline:hover .thumb img {
    transform: scale(1.07);
  }
  .items .text {
    display: block;
    float: right;
    width: 67.8%;
  }
  @media screen and (max-width:640px) {
    .items .photo {
      width: 100%;
    }
    .items .text {
      margin-top: 1.5em;
      width: 100%;
    }
  }





.prd-lst-name a {
  color: #161817;
  font-size: 16px;
}

.prd-lst-price {
  color: #9b0000;
  font-size: 22px;
}

.prd-lst-soldout {
  color: #888;
  font-size: 14px;
  font-style: italic;
}
.items .inline .ariga {
  color: #9b0000;
}
.items .inline .ariga:hover {
  color: #5e5e5e;
}
.items .inline a {
  color: #cc0000;
}
.items .inline a:hover {
  color: #cc0000;
}
.items li > a:hover strong {
  text-decoration: underline;
}


.campaign {
  text-align: left;
  padding: 30px;
  position: relative;
  padding: 70px 50px;
  margin-bottom: 10px;
  background: url(https://img07.shop-pro.jp/PA01421/734/etc/campaignbg.png?cmsp_timestamp=20210921110941) center center no-repeat;
  background-size: contain;
}

.campaign h1 {
    font-size: 200%;
    line-height: 1.2;
  font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
    font-weight: 700;
  color:  #AAD0A1;
  margin-bottom: 20px;
}

.campaign p span {
   display: inline-block;
    color: #cc0000;
  font-weight: 700;
  margin-top: 5px;
}

.campaign h2 {
    font-size: 100%;
    color: #e36664;
    margin: 20px 0 5px;
  text-align: left;
}

.campaign h2 + p{
  font-size: 85%;
   opacity: .8;
}

.campaign img {
  position: absolute;
  right: 50px;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
}
  @media screen and (max-width:980px) {

.campaign {
  background: #fff;
  border-radius: 20px;
  padding: 25px 15px 15px;
  margin: 40px 0;
}

.campaign h1 {
  font-size: 150%;
  text-align: center;
}
    
.campaign img {
  position: static;
  display: block;
  width: 80%;
  max-width: 160px;
  transform: translateY(0);
  margin: 30px auto;
}
}