@charset "UTF-8";

:root {
    --VPRate: 100vw / 375;
}
@media only screen and (min-width: 501px) {
    :root {
        --VPRate: 1.33px;
    }
}
.pc{
    display: block;
}
.sp{
    display: none;
}
@media screen and (max-width:499px){
    .pc{
        display: none;
    }
    .sp{
        display: block;
    }
}
/***************************************

メインビジュアル

****************************************/
.cosmecp2_content_bg{
    font-family: "Noto Sans JP", sans-serif;
    background-image: url(/img/beautyup-cosmecp3/contents_bg_pc.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    background-attachment: fixed;
    background-color: #FFFBC2;
    position: relative;
}
@media screen and (max-width:499px){
  .cosmecp2_content_bg{
    background-image: inherit;
  }
  .cosmecp2_content_bg::after,
  .cosmecp2_content_bg::before{
    display: none;
  }
}
.cosmecp2_content_wrap{
    max-width: 375px;
    width: 100%;
    margin: 0 auto;
    background-color: #fff;
    position: relative;
    z-index: 2;
}
.cosmecp2_content_wrap h2{
    margin: 0;
    padding: 0;
}
.cosmecp2_content_wrap h2 img{
    display: block;
    width: 100%;
}
@media screen and (max-width:499px){
    .cosmecp2_content_wrap{
        max-width: 430px;
    }
    .cosmecp2_content_bg::after{
        display: none;
    }
}
/***************************************

フッター

****************************************/
.cosmecp2_footer_whitespace{
    width: 100%;
    height: 70px;
    margin-bottom: -70px;
    background-color: #fff;
    position: relative;
    z-index: 2;
}
/***************************************

お買い上げ / ご応募

****************************************/
.cosmecp2_entry{
    padding: 20px 15px 40px;
    background-color: #FCE3C4;
}
.cosmecp2_entry h3{
    margin: 0;
    padding: 0;
}
.cosmecp2_entry_box h3{
    color: #C9384D;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    margin: 0 0 5px;
}
.cosmecp2_entry_box_mt{
    margin-top: 15px;
}
.cosmecp2_entry_text{
    margin: 20px 0 0;
}
.cosmecp2_entry_text.cosmecp2_entry_mt{
  margin-top: 30px;
}
.cosmecp2_entry_text h3{
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}
.cosmecp2_entry_text ul{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 15px;
    margin: 7px 0 0;
}
.cosmecp2_entry_text ul li{
    width: 165px;
}
.cosmecp2_entry_text ul li a{
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    height: 80px;
    padding: 8px 0 10px;
    border-radius: 8px;
    border: 1px solid #2B2B2B;
    background-image: url(/img/beautyup-cosmecp3/btn_arrow.png);
    background-repeat: no-repeat;
    background-size: 6px 12px;
    background-position: center right 9.5px;
    background-color: #892548;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    line-height: 1.28;
    letter-spacing: 0;
}
.cosmecp2_entry_text ul li:nth-child(2) a{
  background-color: #DD6A6A;
}
.cosmecp2_entry_text ul li a strong{
    font-size: 20px;
}
.cosmecp2_entry_text ul li a span{
  font-size: 12px;
}
.cosmecp2_entry_text ul li div{
    position: relative;
    transition: 0.2s;
}
.cosmecp2_entry_text ul li div:hover{
  opacity: 0.7;
}
.cosmecp2_entry_text ul li div::after{
    content: "";
    display: block;
    width: 165px;
    height: 80px;
    border: 1px solid #2B2B2B;
    background-color: #fff;
    border-radius: 8px;
    position: absolute;
    top: 5px;
    left: 0;
    z-index: 1;
}
.cosmecp2_entry_text ul li > p small{
    display: block;
    font-size: 11px;
    letter-spacing: 0;
    line-height: 1.6;
    margin: 10px 0 0;
}
.cosmecp2_entry_text > p{
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 0;
    margin: 15px 0;
    padding-left: 5px;
}
.cosmecp2_entry_text > p span{
    color: #C9384D;
    font-weight: 700;
}
.cosmecp2_entry_notetext{
  margin-top: 25px;
}
.cosmecp2_entry_notetext p{
    position: relative;
    font-size: 12px;
    letter-spacing: 0;
    padding-left: 15px;
}
.cosmecp2_entry_notetext p::after{
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}
.cosmecp2_entry_notetext p a{
    font-weight: 700;
    text-decoration: underline;
}
/***************************************

賞品一覧

****************************************/
.cosmecp2_prize{
    padding: 30px 10px 30px 15px;
    background-color: #FFF4EA;
}
.cosmecp2_prize h2{
    width: 155px;
    height: 40px;
    margin: 0 auto;
    padding: 1.5px 0 0;
    color: #2B2B2B;
    background: none;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}
@media screen and (max-width:499px){
  .cosmecp2_prize h2{
    padding: 2.5px 0 0;
  }
}
.cosmecp2_prize_notetop{
    position: relative;
    font-size: 12px;
    font-weight: 400;
    padding-left: 15px;
    letter-spacing: 0;
    margin: 15px 0 -10px;
}
.cosmecp2_prize_notetop::after{
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}
.cosmecp2_prize_listwrap{
    padding-right: 8px;
    margin: 25px 0 0;
}
.cosmecp2_prize_listwrap.cosmecp2_prize_active{
    margin-top: 10px;
}
.cosmecp2_prize_listbox{
    position: relative;
}
.cosmecp2_prize_listbox::after{
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 1;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 15px;
    background-color: #9D3950;
    border: 1px solid #2B2B2B;
}
.cosmecp2_prize_contents{
    position: relative;
    z-index: 2;
    border-radius: 15px;
    overflow: hidden;
    background-color: #fff;
    border: 1px solid #2B2B2B;
}
.cosmecp2_prize_contents h3{
    margin: 0;
    padding: 0;
    display: flex;
}
.cosmecp2_prize_contents h3 span{
    font-weight: 700;
    padding: 6px 32px 4px;
    border-bottom: 1px solid #2B2B2B;
    border-right: 1px solid #2B2B2B;
}
.cosmecp2_prize_contents h3 span:first-child{
    font-size: 24px;
    color: #fff;
    background-color: #9D3950;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 77%;
}
.cosmecp2_prize_contents h3 span:first-child small{
  font-size: 18px;
  vertical-align: sub;
  line-height: 1;
  margin-bottom: -4px;
}
.cosmecp2_prize_contents h3 span:first-child img{
  margin-right: 10px;
}
.cosmecp2_prize_contents h3 span:first-child small.cosmecp3_text_margin{
  margin-left: 5px;
}
.cosmecp2_prize_contents h3 span:last-child{
    font-size: 14px;
    color: #9D3950;
    background-color: #FFFFFF;
    display: block;
    border-radius: 0px;
    border-right: 0;
    padding: 6px 4px 4px;
    width: 23%;
    text-align: center;
}
.cosmecp2_prize_contents h3 span:last-child strong{
    font-size: 21px;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
}
.cosmecp2_prize_inner{
    padding: 15px 15px 28px;
}
.cosmecp2_prize_contents h4{
    color: #9D3950;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0;
    text-align: center;
}
.cosmecp2_prize_contents h4 span{
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  font-weight: 700;
}
.cosmecp2_prize_contents h4 small{
  font-size: 14px;
}
.cosmecp2_prize_inner > p{
    font-size: 14px;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0;
    margin: 10px 0 0;
}
.cosmecp2_prize_inner > img{
    display: block;
    max-width: 258px;
    width: 100%;
    margin: 10px auto 0;
}
.cosmecp2_prize_winner{
    margin: 20px 0 0;
}
.cosmecp2_prize_winner h5{
    position: relative;
    color: #C9384D;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    margin: 0 0 6px;
}
.cosmecp2_prize_winner h5 span{
    position: relative;
    padding: 0 14px;
    background-color: #fff;
    z-index: 2;
}
.cosmecp2_prize_winner h5::after{
    content: "";
    width: 100%;
    height: 1px;
    background-color: #C9384D;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
}
.cosmecp2_prize_winner p{
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0;
}
.cosmecp2_prize_winner p strong{
    color: #C9384D;
    font-weight: 700;
}
.cosmecp2_prize_winner ul{
    margin: 6px 0 0;
}
.cosmecp2_prize_winner ul li{
    padding-left: 15px;
    position: relative;
    font-size:  12px;
    letter-spacing: 0;
}
.cosmecp2_prize_winner ul li::after{
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}
/***************************************

賞品一覧 - コスメクーポン賞 -

****************************************/
.cosmecp2_prize_coupon .cosmecp2_prize_inner img{
    max-width: 100%;
    margin: 15px 0 0;
}
.cosmecp2_daimatsu_coupon_note{
    margin: 15px 0 20px;
}
.cosmecp2_daimatsu_coupon_note li{
    padding-left: 15px;
    position: relative;
    font-size: 12px;
    letter-spacing: 0;
}
.cosmecp2_daimatsu_coupon_note li::after{
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}
.cosmecp2_daimatsu_coupon_note li a{
    font-weight: 700;
    text-decoration: underline;
}
.accordion {
    overflow: hidden;
    width: 100%;
    max-width: 600px; /* Optional, adjust width */
    margin-top: 30px;
  }
.accordion.accordion02{
    margin: 15px 0 0;
}
.accordion .accordion-header {
  padding: 9px 20px;
  cursor: pointer;
  font-size: 13px;
    letter-spacing: 0;
    font-weight: bold;
    display: flex;
    align-items: center;
    text-align: center;
    transition: background-color 0.3s ease;
    justify-content: center;
    background-color: #fff;
    border: 1px solid #2B2B2B;
    color: #2B2B2B;
    line-height: 1.6;
    position: relative;
  }
.accordion.accordion02 .accordion-header {
  background-color: #EE7288;
  }
.accordion .accordion-body {
    display: none;
    font-size: 14px;
    color: #333;
  }
.accordion.active {
    border-bottom: 0px;
  }
.accordion.active .accordion-body {
    display: block;
    animation: slideDown 0.3s ease;
  }
  .coupon_use_shop_wrapper .coupon_use_shop {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .coupon_use_shop_wrapper .coupon_use_shop p:first-child{
    width: 75px;
  }
  .coupon_use_shop_wrapper .coupon_use_shop p:last-child{
    width: 195px;
  }
  .coupon_no_use_shop {
    font-size: 14px;
    line-height: 1.7;
    font-weight: bold;
    text-align: center;
    display: block;
    text-decoration: underline;
    margin-top: 10px;
    margin-bottom: 20px;
  }
  .coupon_sub_title_step_inner {
    display: inline-block;
    background: linear-gradient(transparent 65%, #F8B6C5 0%);
    padding: 0 5px;
    font-size: 20px;
    line-height: 1;
    margin: 0 0 10px;
  }
  .coupon_sub_title_step_inner span {
    font-family: "Montserrat", sans-serif;
    font-size: 36px;
} 
/***************************************

賞品一覧 - 特別賞 -

****************************************/
.cosmecp2_special_prize{
  margin: 35px 0 0;
}
.cosmecp2_special_prize_title{
  position: absolute;
  top: 0;
  left: 0;
  width: 90px;
  height: 51px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #2B2B2B;
  border-radius: 10px 0 10px 0;
  background-color: #C9384D;
}
.cosmecp2_special_prize_title p{
  color: #fff;
  font-size: 18px;
  font-weight: 700;
}
.cosmecp2_special_prize_copy{
  text-align: center;
}
.cosmecp2_special_prize_copy p:first-child{
  font-size: 17px;
  font-weight: 700;
  padding: 0 0 0 20px;
}
.cosmecp2_special_prize_copy p:last-child{
  color: #C9384D;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
}
.cosmecp2_special_prize_copy p:last-child strong{
  font-size: 28px;
}
.cosmecp2_allprize_notes{
  margin: 20px 0 0;
}
.cosmecp2_allprize_notes p{
  font-size: 12px;
}
.cosmecp2_allprize_notes ul{
  margin: 10px 0 0;
}
.cosmecp2_allprize_notes ul li{
  padding-left: 15px;
  position: relative;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0;
}
.cosmecp2_allprize_notes ul li::after{
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
/***************************************

応募条件

****************************************/
.cosmecp2_about{
  padding: 30px 15px;
  background-color: #FCE3C4;
}
.cosmecp2_about_box h3{
  width: 100%;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 10px;
  color: #C10505;
  font-size: 14px;
  font-weight: 700;
  background-color: #fff;
  border: 1px solid #C10505;
}
.cosmecp2_about_conditions > p{
  font-size: 14px;
  letter-spacing: 0;
}
.cosmecp2_about_conditions > p span{
  color: #C10505;
  font-weight: 700;
}
.cosmecp2_about_shops{
  margin: 25px 0 0;
  padding: 10px 15px 12px;
  border-radius: 10px;
  background-color: #FFF4EA;
}
.cosmecp2_about_shops h4{
  font-size: 15px;
  font-weight: 700;
  text-align: center;
  margin: 0 auto 3px;
}
.cosmecp2_about_shops > div{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin: 0 0 4px;
}
.cosmecp2_about_shops > div:last-child{
  margin: 0 0 0;
}
.cosmecp2_about_shops > div p{
  width: 67px;
  font-size: 12px;
  letter-spacing: 0;
  line-height: 1.7;
}
.cosmecp2_about_shops > div p:last-child{
  width: 270px;
}
.cosmecp2_about_shops > div:last-child p:first-child{
  width: 130px;
}
.cosmecp2_about_shops > div:last-child p:last-child{
  width: 200px;
}
.cosmecp2_about_howto{
  margin: 40px 0 0;
}
.cosmecp2_about_howto > p{
  font-size: 14px;
}
.cosmecp2_about_howto h4{
  max-width: 305px;
  height: 32px;
  border-radius: 16px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #C10505;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}
.cosmecp2_about_pattern_shop h4{
  background-color: #892548;
}
.cosmecp2_about_pattern_online h4{
  background-color: #DD6A6A;
}
.cosmecp2_about_pattern_shop{
  margin: 20px auto 0;
  max-width: 305px;
  width: 100%;
}
.cosmecp2_about_pattern_shop > p{
  font-size: 14px;
  font-weight: 700;
  margin: 15px 0 0;
}
.cosmecp2_about_pattern_shop ul{
  margin: 12px 0 0;
}
.cosmecp2_about_pattern_shop ul li{
  padding-left: 15px;
  position: relative;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0;
}
.cosmecp2_about_pattern_shop ul li::after{
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.cosmecp2_about_pattern_shop img{
  display: block;
  max-width: 251px;
  width: 100%;
  margin: 10px auto 0;
}
.cosmecp2_about_pattern_online{
  margin: 20px auto 0;
  max-width: 305px;
  width: 100%;
}
.cosmecp2_about_pattern_online > p{
  font-size: 14px;
  font-weight: 700;
  margin: 15px 0 0;
}
.cosmecp2_about_pattern_online img{
  margin: 17px 0 0;
}
.cosmecp2_note_list ul:first-child{
  margin: 20px 0 30px;
}
.cosmecp2_note_list ul:first-child li{
  padding-left: 15px;
  position: relative;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0;
}
.cosmecp2_note_list ul:first-child li::after{
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.cosmecp2_note_list ul:first-child li.list_note_bold{
  font-weight: 700;
}
.cosmecp2_note_list ul:first-child li a{
  font-weight: 700;
  text-decoration: underline;
}
.cosmecp2_note_list > p{
  font-size: 12px;
}
.cosmecp2_notelist_wrap li{
  padding-left: 15px;
  position: relative;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0;
}
.cosmecp2_notelist_wrap li::after{
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.cosmecp2_notelist_wrap li.list_style_dot::after{
  content: "・";
}
.cosmecp2_note_list > a{
  display: block;
  margin: 25px 0 0;
}

/***************************************

2026 秋BU 

****************************************/
.cosmecp3_top_text{
  text-align: center;
  font-size: 14px;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: 26px;
}
.cosmecp3_top_text span{
  font-size: 12px;
}
.cosmecp3_notetext_bold{
  font-weight: 700;
}
.accordion-toggle_close,.accordion-toggle_open{
  background: none;
  border: 0;
  color: #2b2b2b;
  font-size: 14px;
  margin-left: 5px;
}
.coupon_use_time_note{
  padding-top: 15px;
}
.coupon_use_time_note ul li{
  font-size: 12px;
  letter-spacing: 0;
  position: relative;
  padding-left: 15px;
}
.coupon_use_time_note ul li::after{
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.coupon_use_time_note ul li.list_style_dot::after{
  content: "・";
}
.cosmecp3_title_flex{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 26px;
}
.cosmecp3_title_flex img{
  width: 56px;
}
.cosmecp3_art .cosmecp2_prize_contents h3 span:first-child{
  background-color: #004E7C;
}
.cosmecp3_art .cosmecp2_prize_contents h3 span:first-child img{
  width: 24px;
}
.cosmecp3_art .cosmecp2_prize_contents h3 span:last-child{
  color: #004E7C;
}
.cosmecp3_art .cosmecp2_prize_contents h4{
  color: #004E7C;
}
.cosmecp3_art .cosmecp2_prize_listbox::after{
  background-color: #004E7C;
}
.cosmecp3_art .cosmecp3_title_flex{
  gap: 10px;
}
.cosmecp3_art .cosmecp3_title_flex img{
  width: 80px;
}

.cosmecp3_reading .cosmecp2_prize_contents h3 span:first-child img{
  width: 30px;
}
.cosmecp3_reading .cosmecp2_prize_contents h3 span:first-child{
  background-color: #507935;
}
.cosmecp3_reading .cosmecp2_prize_contents h3 span:last-child{
  color: #507935;
}
.cosmecp3_reading .cosmecp2_prize_contents h4{
  color: #507935;
}
.cosmecp3_reading .cosmecp2_prize_listbox::after{
  background-color: #507935;
}
.cosmecp3_reading .cosmecp3_title_flex img{
  width: 75px;
}
.cosmecp3_number_text{
  position: relative;
  padding-left: 15px;
}
.cosmecp3_number_text img{
  position: absolute;
  top: 2px;
  left: 0;
  width: 12px;
  margin-top: 0;
}
.cosmecp3_number_text.cosmecp3_number_2{
  margin-top: 0;
}