  @charset "utf-8";

/*
************************************************************************
* ・2022年GWキャンペーン
* @copyright Revolme Inc.
************************************************************************
*/

/* ################################################################################################ */
/* ## PC                         ################################################################## */
/* ################################################################################################ */


span.supText {
font-size: 75.5%;
vertical-align: top;
position: relative;
top: -0.1em;
}

.section:before {
    margin: 0;
}

#campaing-gw-2022 {

}
#campaing-gw-2022 .bg-color {
    background-color: #FAF8F2;
}



#campaing-gw-2022 .page-title .mv {
    padding:0;
    border-radius: 0;
}
/*
#campaing-gw-2022 .page-title .mv::after{
    content: '';
    position: absolute;
    left:0;
    bottom: 10%;

  transform: skewY(3deg);
  transform-origin: bottom left;

  z-index: -1;
  width:100%;
  height:30%;
  background-color:#FAF8F2;

  visibility: visible;
}
*/

#campaing-gw-2022  .page-title .mv img {
    border-radius: 0;
}

#campaing-gw-2022 .flex-box {
    display: flex;
    flex-wrap: nowrap;
}
#campaing-gw-2022 .flex-box:nth-child(even) {
    flex-direction: row-reverse;
}
#campaing-gw-2022 .flex-box .image {
    padding: 3em;
    width: 40%;


}
#campaing-gw-2022 .flex-box .image img {
    border: 8px solid var(--main-color);
    border-image:linear-gradient(135deg, #d6c6b4 0%, #faf8f2 100%);
    border-image-slice: 1;
}
#campaing-gw-2022 .flex-box:nth-child(even) .image img {
    border: 8px solid var(--main-color);
    border-image:linear-gradient(225deg, #d6c6b4 0%, #faf8f2 100%);
    border-image-slice: 1;
}
#campaing-gw-2022 .flex-box .text {
    padding: 3em;
    width: 60%;
}
#campaing-gw-2022 .number {
  width: 300px;
  margin-bottom: 3em;
  margin-top: 0em;
}
#campaing-gw-2022 .number.number-03 {
  width: 400px;
  margin: 2em auto;
}
.pos-center {
    position: absolute;
    top: 50%;
    transform:translateY(-50%);
}





#campaing-gw-2022 .campaign-description {
    width: 60%;
    padding: 6em 0 10em 0em;
    margin: 0 auto;
}

#campaing-gw-2022 .campaign-description .title-en {
    font-size: 2em;
    font-weight: bold;
    margin-bottom: 2em;
}

#campaing-gw-2022 .campaign-description .title-jp {
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 1em;
}


#campaing-gw-2022 .campaign-contents {
    padding: 3em;
}

#campaing-gw-2022 .campaign-contents .name {
    color: #543838;
    font-weight: bold;
    font-size: 1.4em;
    margin-bottom: 0.5em;
}


#campaing-gw-2022 .only-bc {
  width: 500px;
  padding-top: 2em;
  margin: 0 auto;
}

#campaing-gw-2022 .flex-box.select-present {
    flex-wrap: wrap;
    flex-direction: row;
    margin: 0 -1em;
    justify-content: center;
}

.select-present .item {
    width: calc(33.3333% - 2em);
    margin: 2em 1em 1em 1em;
}
.select-present .item .thumb {
    width: 100%;
}
.select-present .item .thumb img {
  border-radius: 3px;
}
.select-present .item .thumb::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 5px;
  top: 5px;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  padding: 5px;
  border: 2px solid #fff;
}
.select-present .item .name {
  padding: 0.2em 1em;
}

.select-present .item .alphabet {
  position: absolute;
  font-size: 50px;
  bottom: 15px;
  left: 20px;
  color: #fff;
  text-shadow: 3px 3px 3px rgba(0,0,0,0.3);
  line-height: 1;
}

.select-present .item .annotation {
  font-size: 0.8em;
  padding: 0 0 0 1em;
  color: #404040;
}


@media screen and (max-width:640px) {
  #campaing-gw-2022 .page-title .mv {
    padding: 0;
    margin: 0 -3.90625vw;
    margin-bottom: 2em;
  }
  #campaing-gw-2022 .flex-box {
    flex-wrap: wrap;
    margin-bottom: 1em;
  }
  #campaing-gw-2022 .only-bc {
    position: absolute;
    top: -1em;
    left: 50%;
    transform: translateX(-50%);
    width: 50vw;
    padding-top: 0;
  }

  #campaing-gw-2022 .number {
    width: 50vw;
    margin:0 auto 1em auto;
  }
  #campaing-gw-2022 .number.number-01 {
  }
  #campaing-gw-2022 .number.number-03 {
    width: 75vw;
  }
  .number-03-text {
    font-size: 1.2em;
  }

  #campaing-gw-2022 .flex-box .image {
    padding: 0;
  }
  #campaing-gw-2022 .flex-box .image img {
    border:none;
    border-radius: 0 20px 20px 0;
  }
  #campaing-gw-2022 .flex-box:nth-child(even) .image img {
    border:none;
    border-radius: 20px 0 0 20px;
  }
  #campaing-gw-2022 .campaign-contents {
    padding: 2em 0;
    margin: 0 -3.90625vw;
  }
  .pos-center {
    position: relative;
  }
#campaing-gw-2022 .flex-box .text {
  font-size: 0.9em;
  padding: 0 1em;
}
#campaing-gw-2022 .campaign-contents .name {
  text-align: center;
  font-size: 1.6em;
}

  #campaing-gw-2022 .campaign-description {
    width: 100%;
    padding: 0;
  }
  #campaing-gw-2022 .flex-box.select-present {
    margin: 0 -3.90125vw;
  }
  .select-present .item {
    width: calc(50%);
    margin: 1em 0em;
  }
  .select-present .item .alphabet {
    left: auto;
    bottom: auto;
    right: 3vw;
    bottom: 3vw;
    font-size: 2em;
  }
  .select-present .item .name {
    padding: 0.2em;
    text-align: center;
  }
  .select-present .item .thumb img {
    border-radius: 0;
  }
  .select-present .item .annotation {
    display: none;
  }
  .circle-text {
    display: none;
  }

  #campaing-gw-2022 .popup .link-button {
    width: 80%;
  }
}



@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}


.number-circle {
    position:relative;
    width: 500px; /* 直径
    height: 500px; /* 直径 */
    font-size: 30px;
    text-align: center;
    margin: 0;
    animation:rotation 25s linear infinite;
    transform-origin: center;
}


.block-circle-text {
    width: 40%;
}
.circle-text {

    position:relative;
    width: 300px;
    font-size: 30px;
    text-align: center;
    margin: 1em auto 0 auto;
    animation:rotation 50s linear infinite;
    transform-origin: center;
}


.circle-text span {
    /*position: absolute;*/
    top: 0;
    left: calc(50% - 15px); /* 中心点、、文字サイズ分ずらす */
    display: inline-block;
    width: 30px; /* 文字サイズより小さくしない */
    height: 150px; /* 半径 */
    transform-origin: center bottom; /* 回転の基準点 */
}
