@charset "UTF-8";
/*
* top.css
*
*/
.title01.top {
  box-sizing: border-box;
  padding-left: 10px;
  width: 100%;
  height: 45px;
  background: #fff;
  background: none !important; 
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "メイリオ", Meiryo, sans-serif;
}

p > span {
  color: #000;
}

#contents a {
  display: inline-block;
}

#beauty_challenge_card {
  overflow: hidden;
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto;
  background: #fff;
  text-align: left;
  letter-spacing: 0;
  word-break: break-all;
  color: #333;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1;
  /* HEAD */
  /* STAMP */
  /* beauty_challenge_card */
}
#beauty_challenge_card img {
  border: 0;
  width: 100%;
}
#beauty_challenge_card p {
  margin: 0;
  padding: 0;
}
#beauty_challenge_card ul {
  display: flex;
  list-style: none;

  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
#beauty_challenge_card a {
  opacity: 1;
  box-sizing: border-box; 
  cursor: pointer;
  transition: all 0.4s;
  text-decoration: none;
  color: inherit;
}
#beauty_challenge_card a:hover {
  opacity: 0.7;
}
#beauty_challenge_card .sp {
  display: none !important;
}
@media (max-width: 1.98px) {
  #beauty_challenge_card .sp {
    display: inline-block !important;
  }
}
#beauty_challenge_card .pc {
  display: inline-block !important;
}
@media (max-width: 1.98px) {
  #beauty_challenge_card .pc {
    display: none !important;
  }
}
#beauty_challenge_card a.pink {
  display: inline-block;
  box-sizing: border-box; 
  padding: 7px;
  border: 2px solid #e75297;
  border-radius: 20px;
  background: url("../img/common/arrow_pink.png") no-repeat right 10px center #fff;
  background-size: 10px auto;
  text-align: center;
  text-decoration: none;
  color: #e75297;
  font-size: 80%;
}
@media all and (-ms-high-contrast: none) {
  #beauty_challenge_card a.pink {
    padding: 12px 10px 5px 10px;
  }
}
#beauty_challenge_card .kv {
  padding: 40px 0 0 0;
  width: 100%;
  background: url("../img/card/kv_bg.png");
  background-size: 20px 20px;
}
#beauty_challenge_card .kv .logo {
  margin: 0 auto 30px auto; 
  width: 90%;
}
#beauty_challenge_card .kv .read {
  margin: 0 auto 30px auto; 
  width: 70%;
}
#beauty_challenge_card .kv .txt {
  margin: 0 auto 25px auto; 
  width: 80%;
}
#beauty_challenge_card .kv .illust {
  margin: 0 auto 0 auto; 
  width: 60%;
}
#beauty_challenge_card .attention {
  margin: 0 auto; 
  padding: 20px 0;
  width: 90%;
}
#beauty_challenge_card .attention h3 {
  margin-bottom: 20px; 
  text-align: center;
  font-size: 11px;
}
#beauty_challenge_card .attention ul {
  padding: 10px 15px;
  background: #f5f5f5;
  font-size: 10px;
}
#beauty_challenge_card .attention ul li {
  margin-bottom: 2px;
  margin-left: 10px;
  list-style: disc;
  line-height: 16px;
}
#beauty_challenge_card .stamp {
  overflow: hidden; 
  position: relative;
  padding: 50px 0 40px 0;
  width: 100%;
  background: #f8d9e9;
}
#beauty_challenge_card .stamp .main_ttl {
  margin: 0 auto; 
  width: 98%;
}
#beauty_challenge_card .stamp .illust_1 {
  position: absolute;
  top: 28%;
  right: 1%;
  width: 21%;
}
#beauty_challenge_card .stamp .illust_2 {
  position: absolute;
  top: 41%;
  left: 1%;
  width: 21%;
}
#beauty_challenge_card .stamp .illust_3 {
  position: absolute;
  top: 49%;
  right: 1%;
  width: 18%;
}
#beauty_challenge_card .stamp .illust_4 {
  position: absolute;
  top: 57%;
  left: 1%;
  width: 21%;
}
#beauty_challenge_card .stamp .illust_5 {
  position: absolute;
  top: 69%;
  right: 1%;
  width: 20%;
}
#beauty_challenge_card .stamp .fluffy {
  -webkit-animation: fluffy 2.5s ease infinite;
          animation: fluffy 2.5s ease infinite;
}
#beauty_challenge_card .stamp .delay_1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
#beauty_challenge_card .stamp .delay_2 {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
#beauty_challenge_card .stamp .delay_3 {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
#beauty_challenge_card .stamp .delay_4 {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}
#beauty_challenge_card .stamp .delay_5 {
  -webkit-animation-delay: 1.1s;
          animation-delay: 1.1s;
}

@-webkit-keyframes fluffy {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  10% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
  }
  20% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  30% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes fluffy {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  10% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
  }
  20% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  30% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
#beauty_challenge_card .stamp .base {
  position: relative; 
  margin: 0 auto;
  width: 70%;
}
#beauty_challenge_card .stamp .base .start_btn {
  position: relative; 
  margin-bottom: 1.5%;
  width: 110%;
}
#beauty_challenge_card .stamp .base .start_btn .stamped {
  display: none; 
  position: absolute;
  bottom: 26%;
  left: 4.5%;
  width: 14%;
}
#beauty_challenge_card .stamp .base ul {
  flex-direction: row;
}
#beauty_challenge_card .stamp .base ul li {
  position: relative;
  margin-bottom: 1.5%;
  width: 18.5%;
  line-height: 0;
}
#beauty_challenge_card .stamp .base ul li .stamped {
  display: none; 
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
#beauty_challenge_card .stamp .base .last_day {
  margin-top: 1.5%;
  width: 70%;
}
#beauty_challenge_card .stamp .base .illust_bottom {
  position: absolute;
  bottom: 0;
  left: 57%;
  width: 40%;
}
#beauty_challenge_card .stamp .stamp_modal {
  display: none; 
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(248, 217, 233, 0.9);
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base {
  position: relative;
  margin: 70px auto 0 auto;
  padding: 40px 0 40px 0;
  width: 80%;
  background: #fff;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base .modal_ttl {
  position: absolute;
  top: -10px;
  left: 50%;
  margin-left: -80px;
  width: 160px;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base .close {
  position: absolute;
  top: -30px;
  right: 0; 
  width: 30px;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base ul {
  margin: 0 auto; 
  width: 80%;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base ul li {
  display: none;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base ul li .ttl {
  margin: 0 auto 20px auto; 
  width: 80%;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base ul li .txt {
  font-size: 13px;
  line-height: 20px;
}
#beauty_challenge_card .stamp .stamp_modal .stamp_modal_base ul li .img {
  position: absolute;
  right: -4px;
  bottom: -50px; 
  width: 100px;
}
#beauty_challenge_card .stamp .stamp_modal .modal_end {
  display: none;
  position: absolute;
  bottom: 0;
  left: 15%;
  width: 70%;
}
#beauty_challenge_card .stamp.card02 {
  background: #ccf2fa;
}
#beauty_challenge_card .stamp.card02 .base .start_btn {
  margin-top: -3%;
}
#beauty_challenge_card .stamp.card02 .base .illust_bottom {
  position: absolute;
  bottom: 0;
  left: 59%;
  width: 36%;
}
#beauty_challenge_card .stamp.card02 .base .last_day {
  margin-top: 0%;
}
#beauty_challenge_card .stamp.card02 .illust_1 {
  position: absolute;
  top: 28%;
  right: 1%;
  width: 22%;
}
#beauty_challenge_card .stamp.card02 .illust_2 {
  position: absolute;
  top: 40%;
  left: 1%;
  width: 22%;
}
#beauty_challenge_card .stamp.card02 .illust_3 {
  position: absolute;
  top: 47%;
  right: 1%;
  width: 19%;
}
#beauty_challenge_card .stamp.card02 .illust_4 {
  position: absolute;
  top: 54%;
  left: 1%;
  width: 20%;
}
#beauty_challenge_card .stamp.card02 .illust_5 {
  position: absolute;
  top: 67%;
  right: 1%;
  width: 19%;
}
#beauty_challenge_card .stamp.card02 .stamp_modal .stamp_modal_bg {
  background: rgba(204, 242, 250, 0.9);
}
#beauty_challenge_card .stamp.card03 {
  background: #d0fdd4;
}
#beauty_challenge_card .stamp.card03 .base .start_btn {
  margin-top: -2%;
  width: 107%;
}
#beauty_challenge_card .stamp.card03 .base .illust_bottom {
  position: absolute;
  bottom: 0;
  left: 60%;
  width: 34%;
}
#beauty_challenge_card .stamp.card03 .base .last_day {
  margin-top: 0%;
}
#beauty_challenge_card .stamp.card03 .illust_1 {
  position: absolute;
  top: 26%;
  right: 1%;
  width: 21%;
}
#beauty_challenge_card .stamp.card03 .illust_2 {
  position: absolute;
  top: 40%;
  left: 1%;
  width: 22%;
}
#beauty_challenge_card .stamp.card03 .illust_3 {
  position: absolute;
  top: 47%;
  right: 1%;
  width: 22%;
}
#beauty_challenge_card .stamp.card03 .illust_4 {
  position: absolute;
  top: 54%;
  left: 1%;
  width: 20%;
}
#beauty_challenge_card .stamp.card03 .illust_5 {
  position: absolute;
  top: 67%;
  right: 0%;
  width: 21%;
}
#beauty_challenge_card .stamp.card03 .stamp_modal .stamp_modal_bg {
  background: rgba(208, 253, 212, 0.9);
}
#beauty_challenge_card .stamp.card03 .stamp_modal .stamp_modal_base ul li .ttl {
  margin: 0 auto 20px auto; 
  width: 90%;
}
#beauty_challenge_card .link_top {
  margin: 30px auto 30px auto; 
  width: 90%;
}
#beauty_challenge_card .link_top a {
  display: block;
  border-radius: 100px;
  font-weight: bold; 
  line-height: 16px;
}
#beauty_challenge_card .link_top a.pink {
  border: 2px solid #e9612a;
  background: url("../img/card/arrow_orange.png") no-repeat right 10px center #fff;
  background-size: 10px auto; 
  color: #e9612a;
}
#beauty_challenge_card .link_top span {
  display: block;
  padding-top: 10px;
  width: 100%;
  text-align: center; 
  font-size: 10px;
}
#beauty_challenge_card .reset_stamp {
  margin: 0 auto;
  margin-bottom: 10px; 
  width: 60%;
  color: #fff;
}
#beauty_challenge_card .reset_stamp a {
  display: block;
  padding: 10px;
  border-radius: 10px;
  background: #9b9b9b;
  text-align: center;
  font-size: 13px;
  font-weight: bold;
}
#beauty_challenge_card .foot_cap {
  margin: 0 auto 20px;
  width: 90%;
  text-align: center; 
  font-size: 10px;
  line-height: 16px;
}
#beauty_challenge_card .foot_link {
  margin: 0 auto 40px auto;
  padding: 35px 0;
  width: 100%;
  background: #ebebeb;
}
#beauty_challenge_card .foot_link a.pink {
  display: block;
  margin: 0 auto; 
  width: 90%;
  letter-spacing: 0;
}