@import url("https://fonts.googleapis.com/css?family=Roboto:400,700");
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
.inner, .mv-inner, .announce-box, .maincontent {
  width: 960px;
  margin: 0 auto;
}

@media screen and (max-width: 640px) {
  .inner, .mv-inner, .announce-box, .maincontent {
    width: 100%;
  }
}

/*
*  # GUIDELINE
*
*  ## Browsers
*
*  We must surpport the following browsers:
*   - Internet Exploror (version 8 and later)
*   - Microsoft Edge (latest version)
*   - Firefox (latest version)
*   - Chrome (latest version)
*   - Safari (latest version)
*
*  We can check browser support for CSS on http://caniuse.com/.
*
*/
/* ---------- Please write styles below this comment ---------- */
* {
  margin: 0;
  padding: 0;
  font-family: 'Noto Sans Japanese', sans-serif !important;
  -webkit-font-feature-settings: 'palt';
          font-feature-settings: 'palt';
  font-size: 18px;
}

body {
  position: relative;
  margin: 0;
  color: #000;
  background-image: url(/shopping/camp/2022_worldbeeday/res/img/bg_all.jpg);
  background-repeat: repeat;
}

main {
  display: block;
}

img {
  max-width: 100%;
}

a img {
  border: 0;
}

em {
  font-style: normal;
}

#return_top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: block;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  text-decoration: none;
  font-size: 15px;
  width: 60px;
  height: 70px;
  text-align: center;
  border-radius: 8px;
  padding-top: 36px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#return_top:before {
  content: "";
  position: absolute;
  top: 24px;
  left: 22px;
  text-align: center;
  display: block;
  width: 15px;
  height: 15px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.display_for_pc {
  display: block !important;
}

.display_for_sp {
  display: none !important;
}

@media all and (max-width: 640px) {
  .display_for_pc {
    display: none !important;
  }
  .display_for_sp {
    display: block !important;
  }
}

#login p {
  font-size: 13px;
}

#login p a {
  font-size: 16px;
}

.login-height {
  height: 50px;
}

.sp-header {
  width: 100%;
  margin: 0 auto;
}

.mv {
  width: 100%;
  height: 809px;
  background: center;
  background-image: url(/shopping/camp/2022_worldbeeday/res/img/header_bg.jpg);
}

@media screen and (max-width: 640px) {
  .mv {
    height: 92.5vw;
    background-image: url(/shopping/camp/2022_worldbeeday/res/img/sp_header_bg.jpg);
    background-size: 100%;
  }
}

.mv-inner {
  position: relative;
  height: 100%;
}

@media screen and (max-width: 640px) {
  .heading {
    width: 90%;
    margin: auto;
  }
}

.logo {
  position: absolute;
  top: 0;
  right: 0;
}

.announce-box {
  margin-top: -170px;
  color: #fff;
  background-color: rgba(85, 139, 65, 0.9);
}

@media screen and (max-width: 640px) {
  .announce-box {
    margin-top: -15vw;
  }
}

.announce-text {
  padding: 20px;
}

.announce-text em {
  color: #ffff72;
}

.maincontent {
  margin-top: 60px;
}

@media screen and (max-width: 640px) {
  .maincontent {
    width: 95%;
  }
}

.maincontent > *:nth-child(n+2) {
  margin-top: 60px;
}

.maincontent > *:last-child {
  margin-bottom: 60px;
}

@media screen and (max-width: 640px) {
  .maincontent {
    margin-top: 5%;
  }
  .maincontent > *:nth-child(n+2) {
    margin-top: 5%;
  }
  .maincontent > *:last-child {
    margin-bottom: 5%;
  }
}

.anchor {
  position: relative;
}

.anchor-btn {
  position: absolute;
  top: 220px;
  right: 70px;
}

@media screen and (max-width: 640px) {
  .anchor-btn {
    width: 55vw;
    top: 22vw;
    right: 7vw;
  }
}

.anchor-btn img {
  display: block;
}

.offer-note {
  margin-top: 1em;
}

.offer-note > li {
  margin-left: 1em;
  text-indent: -1em;
  font-size: 14px;
}

.offer-note > li::before {
  content: '\025CF';
}

.offer-caption {
  font-size: 14px;
}

.offer-caption::before {
  content: '\0203B';
}

.feature > * {
  margin-top: 60px;
}

@media screen and (max-width: 640px) {
  .feature > * {
    margin-top: 10%;
  }
}

/*.feature-content-wrap {
  @include bg-img("/shopping/camp/2022_worldbeeday/res/img/feature_content_bg.png");
}*/
.content-intro {
  margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
  .content-intro {
    width: 80%;
    margin: 5% auto;
  }
}

.content-item-02 {
  margin-top: 30px;
}

@media screen and (max-width: 640px) {
  .content-item-02 {
    margin-top: 4%;
  }
}

@media screen and (min-width: 641px) {
  .content-item-03 h3 {
    width: 70%;
  }
}

.content-item-04 {
  margin-top: 30px;
}

@media screen and (max-width: 640px) {
  .content-item-04 {
    margin-top: 4%;
  }
}

@media screen and (min-width: 641px) {
  .content-item-04 h3 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .content-item-04 h3 img {
    width: 70%;
  }
}

.content-item-06 {
  margin-top: 30px;
}

@media screen and (max-width: 640px) {
  .content-item-06 {
    margin-top: 4%;
  }
}

.content-item-07 {
  margin-top: 30px;
}

@media screen and (max-width: 640px) {
  .content-item-07 {
    margin-top: 4%;
  }
}

.content-item em {
  font-weight: bold;
}

.content-item-wrap {
  padding: 30px;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 1px #D1AE94 inset, 0 0 0 5px #ECDDCB inset;
          box-shadow: 0 0 0 1px #D1AE94 inset, 0 0 0 5px #ECDDCB inset;
}

@media screen and (max-width: 640px) {
  .content-item-wrap {
    padding: 4%;
  }
}

.content-item-box {
  margin-top: 30px;
}

@media screen and (max-width: 640px) {
  .content-item-box-01 {
    margin-top: 0;
  }
}

.content-item-element-wrap {
  padding: 30px;
  border: 1px dashed #c59a7c;
  background: url(/shopping/camp/2022_worldbeeday/res/img/bg_all.jpg);
}

@media screen and (max-width: 640px) {
  .content-item-element-wrap {
    padding: 4%;
  }
}

.content-item-element-container {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.content-item-element-container-01, .content-item-element-container-03, .content-item-element-container-05, .content-item-element-container-07, .content-item-element-container-08, .content-item-element-container-09, .content-item-element-container-10 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.content-item-element-container-02 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}

.content-item-element-container-08 {
  margin: 0;
}

@media screen and (max-width: 640px) {
  .content-item-element-container {
    margin-top: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

@media screen and (max-width: 640px) {
  .content-item-element-pict {
    margin-top: 4%;
  }
}

@media screen and (min-width: 641px) {
  .content-item-element-pict-01 {
    margin-top: -60px;
  }
}

@media screen and (min-width: 641px) {
  .content-item-element-pict-02 {
    margin-top: -90px;
  }
}

@media screen and (min-width: 641px) {
  .content-item-element-pict-03 {
    margin-top: -80px;
  }
}

@media screen and (min-width: 641px) {
  .content-item-element-pict-05 {
    margin-top: -80px;
  }
}

@media screen and (min-width: 641px) {
  .content-item-element-pict-06 {
    margin-top: -80px;
  }
}

@media screen and (min-width: 641px) {
  .content-item-element-pict-07 {
    margin-top: -80px;
  }
}

@media screen and (min-width: 641px) {
  .content-item-element-pict-09 {
    margin-top: -80px;
    width: 28%;
  }
}

.content-item-element-figure {
  margin-top: 30px;
}

@media screen and (max-width: 640px) {
  .content-item-element-figure {
    margin-top: 4%;
  }
}

.content-item-element-figure img {
  display: block;
  margin: auto;
}

.content-item-element-figure figcaption {
  text-align: center;
}

.content-item-element-explanation {
  line-height: 1.6;
}

@media screen and (min-width: 641px) {
  .content-item-element-explanation {
    width: 70%;
  }
}

.product-area {
  position: relative;
}

.product-area-02 {
  margin-top: 30px;
}

.product-btn {
  position: absolute;
}

@media screen and (max-width: 640px) {
  .product-btn {
    width: 90vw;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}

@media screen and (min-width: 641px) {
  .product-btn-01 {
    top: 30px;
    right: 30px;
  }
}

@media screen and (max-width: 640px) {
  .product-btn-01 {
    top: 27vw;
  }
}

@media screen and (min-width: 641px) {
  .product-btn-02 {
    top: 520px;
    left: 90px;
  }
}

@media screen and (max-width: 640px) {
  .product-btn-02 {
    top: 78.5vw;
  }
}

@media screen and (min-width: 641px) {
  .product-btn-03 {
    top: 520px;
    right: 90px;
  }
}

@media screen and (max-width: 640px) {
  .product-btn-03 {
    top: 129vw;
  }
}

@media screen and (min-width: 641px) {
  .product-btn-04 {
    top: 390px;
    left: 90px;
  }
}

@media screen and (max-width: 640px) {
  .product-btn-04 {
    top: 30.5vw;
  }
}

@media screen and (min-width: 641px) {
  .product-btn-05 {
    top: 390px;
    right: 90px;
  }
}

@media screen and (max-width: 640px) {
  .product-btn-05 {
    top: 85vw;
  }
}

.product-btn img {
  display: block;
}

.product-caption {
  margin-top: 1em;
}

.product-caption > li {
  margin-left: 1em;
  text-indent: -1em;
  font-size: 14px;
}

.product-caption > li::before {
  content: '\0203B';
}

.voice {
  margin-bottom: 30px;
}

.voice h2 {
  margin-bottom: 20px;
}

@media screen and (min-width: 641px) {
  .voice h2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.footer__bottom {
  font-size: 12px;
}
