@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-cosmecp2/202510/contents_bg_pc.png);
    background-repeat: repeat;
    background-position: top center;
    background-size: 100%;
    background-attachment: fixed;
    background-color: #FFFBC2;
    position: relative;
}
/*
.cosmecp2_content_bg::after,
.cosmecp2_content_bg::before{
    content: "";
    display: block;
    min-width: 720px;
    width: 50%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: fixed;
    top: 80px;
    z-index: 1;

}
.cosmecp2_content_bg::after{
    background-image: url(/img/beautyup-cosmecp2/202510/pc_bg_left.png);
    left: 0;
}
.cosmecp2_content_bg::before{
    background-image: url(/img/beautyup-cosmecp2/202510/pc_bg_right.png);
    right: 0;
}*/
@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%;
}
.cosmecp2_main_copy{
    padding: 25px 0 35px;
    background-image: url(/img/beautyup-cosmecp2/202510/main_copy_bg.png);
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: 100%;
    background-color: #FED5B9;
}
@media screen and (max-width:499px){
  .cosmecp2_main_copy{
    min-height: 245px;
  }
}
.cosmecp2_main_copy p{
    font-size: 15px;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0;
    text-align: center;
}
.cosmecp2_main_copy p:last-child{
    margin: 10px 0 0;
}
@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: 30px 10px 40px;
    background-color: #FFE791;
}
.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: 40px;
}
.cosmecp2_entry_text h3{
    font-size: 16px;
    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: 10px 0;
    border-radius: 8px;
    border: 1px solid #2B2B2B;
    background-image: url(/img/beautyup-cosmecp2/202510/btn_arrow.png);
    background-repeat: no-repeat;
    background-size: 6px 12px;
    background-position: center right 9.5px;
    background-color: #C9384D;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    line-height: 1.28;
    letter-spacing: 0;
}
.cosmecp2_entry_text ul li a strong{
    font-size: 16px;
}
.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 p{
    position: relative;
    font-size: 12px;
    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: 40px 10px;
    background-color: #FFFBEB;
}
.cosmecp2_prize h2{
    width: 155px;
    height: 40px;
    margin: 0 auto;
    padding: 1.5px 0 0;
    background-color: inherit;
    background-image: url(/img/beautyup-cosmecp2/202510/prize_title_bg.png);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    color: #ffffff;
    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: 40px;
}
.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: #C9384D;
    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: 18px;
    color: #fff;
    background-color: #C9384D;
    display: block;
}
.cosmecp2_prize_contents h3 span:last-child{
    font-size: 14px;
    color: #C9384D;
    background-color: #FFFFFF;
    display: block;
    border-radius: 0 0 15px 0px;
    padding: 6px 20px 4px;
}
.cosmecp2_prize_contents h3 span:last-child strong{
    font-size: 21px;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
}
.cosmecp2_prize_inner{
    padding: 20px 20px 28px;
}
.cosmecp2_prize_contents h4{
    color: #C9384D;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0;
    text-align: center;
}
.cosmecp2_prize_inner > p{
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0;
    margin: 15px 0 0;
}
.cosmecp2_prize_active .cosmecp2_prize_inner > p{
    font-weight: 700;
}
.cosmecp2_prize_inner > img{
    display: block;
    max-width: 258px;
    width: 100%;
    margin: 10px auto 0;
}
.cosmecp2_prize_winner{
    margin: 10px 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_looklist{
    position: relative;
    margin-top: 32px;
    margin-left: -20px;
    padding: 28px 0 24px;
    border-radius: 0 16px 16px 0;
    background-color: #FFF8DD;
}
.cosmecp2_looklist.cosmecp2_looklist_right{
    margin-left: 0;
    margin-right: -20px;
    border-radius: 16px 0 0 16px;
}
.cosmecp2_looklist_num{
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #C9384D;
    padding: 4.5px 25px 2px;
    border-radius: 12.5px;
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cosmecp2_looklist_num span{
    font-size: 18px;
    line-height: 1;
    margin-left: 3px;
}
.cosmecp2_looklist h4{
    font-size: 16px;
}
.cosmecp2_looklist h4 span{
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    margin-right: 5px;
}
.cosmecp2_looklist_imgbox{
    max-width: 160px;
    width: 100%;
    margin: 15px auto 0;
}
.cosmecp2_looklist_imgbox img{
    display: block;
    width: 100%;
}
.cosmecp2_looklist_brand{
    color: #C9384D;
    font-family: "Figtree", sans-serif;
    font-weight: 700;
    font-size: 14px;
}
.cosmecp2_looklist_name{
    font-size: 13px;
    font-weight: 400;
}
.cosmecp2_looklist_text{
    padding: 12px 0 0;
    text-align: center;
}
.cosmecp2_looklist_text a{
    font-size: 12px;
    font-weight: 700;
    text-decoration: underline;
    position: relative;
}
.cosmecp2_looklist_text a::after{
    content: "";
    display: block;
    width: 5px;
    height: 9px;
    background-image: url(/img/beautyup-cosmecp2/202510/btn_icon_right.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    position: absolute;
    top: 50%;
    right: -9px;
    transform: translateY(-50%);
}
.cosmecp2_looklist_total{
    position: absolute;
    top: 70px;
    right: 20px;
    width: 72px;
    height: 72px;
    background-color: #fff;
    border: 1px solid #C9384D;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cosmecp2_looklist_right .cosmecp2_looklist_total{
    right: 15px;
}
.cosmecp2_looklist_total p{
    color: #C9384D;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.4;
    text-align: center;
}
.cosmecp2_special_box{
    margin: 25px 0;
}
.cosmecp2_special_box div{
    text-align: center;
    margin: 0 0 8px;
}
.cosmecp2_special_box div p{
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    position: relative; 
}
.cosmecp2_special_box div p::after,
.cosmecp2_special_box div p::before{
    content: "";
    display: block;
    width: 1px;
    height: 20px;
    background-color: #302D2C;
    position: absolute;
    top: 0.3rem;
}
.cosmecp2_special_box div p::before{
    right: -15px;
    transform: rotate(40deg);
}
.cosmecp2_special_box div p::after{
    left: -15px;
    transform: rotate(-40deg);
}
.cosmecp2_special_box > p{
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    margin: 10px 0 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 */
  }
.accordion.accordion02{
    margin: 15px 0 0;
}
.accordion .accordion-header {
    padding: 15px 20px;
    cursor: pointer;
    font-size: 15px;
    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: #65C4ED;
    color: #fff;
    line-height: 1.6;
    position: relative;
  }
.accordion.accordion02 .accordion-header {
  background-color: #EE7288;
  }
.accordion .accordion-body {
    display: none;
    background-color: #fff;
    font-size: 14px;
    color: #333;
  }
.accordion.active {
    border-bottom: 0px;
  }
.accordion.active .accordion-body {
    display: block;
    animation: slideDown 0.3s ease;
  }
.apps_coupon{
    padding: 0 15px 25px;
}
.apps_coupon .accordion-body .title {
    text-align: center;
    /* background: #F2F2F2; */
    font-size: 14px;
    font-weight: bold;
    padding: 0 0 8px 0;
    background: #ffffff;
    padding: 5px 0;
    width: 100%;
    border-radius: 30px;
    margin-bottom: 10px;
    text-align: center;
    border: 1px solid #2B2B2B;
  }
  .apps_coupon .accordion-body .top_btn {
    font-size: 14px;
    font-weight: bold;
    color: #ffffff;
    background: #0070C0;
    padding: 7px;
    width: 100%;
    /* margin-bottom: 10px; */
    text-align: center;
  }
  .apps_coupon .accordion-body .app_coupon_detail {
    background: #E0F2FF;
    padding: 25px 20px;
    margin-bottom: 0;
  }
  .apps_coupon .accordion-body .app_coupon_detail .top_title {
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 8px;
  }
  .apps_coupon .accordion-body .top_title_btn {
    font-size: 14px;
    font-weight: bold;
    background: #ffffff;
    padding: 6px;
    width: 100%;
    border-radius: 30px;
    margin-bottom: 10px;
    text-align: center;
    border: 1px solid #2B2B2B;
    margin-top: calc(24 * var(--VPRate));
    font-family: "Noto Sans JP", sans-serif;
  }
  .apps_coupon .accordion-body .shop_names {
    margin-bottom: 20px;
  }
  .apps_coupon .accordion-body .uses_shops {
    background: #ffffff;
    padding: 15px;
    line-height: 1.8;
  }
  .apps_coupon .accordion-body .uses_shops .shops_main_title {
    text-align: center;
  }
  .apps_coupon .accordion-body .uses_shops .shops_main_title,
  .apps_coupon .accordion-body .uses_shops .shop_places {
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0;
  }
  .apps_coupon .accordion-body .uses_shops p {
    letter-spacing: 0;
    font-size: 12px;
  }
  .apps_coupon .accordion-body .uses_shops ul {
    list-style-type: none;
    padding-left: 0;
  }
  .apps_coupon .accordion-body .uses_shops ul li {
    font-size: 12px;
    position: relative;
    padding-left: 15px;
  }
  .apps_coupon .accordion-body .uses_shops ul li::before {
    content: "・";
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 0;
  }
  .apps_coupon .accordion-body .coupon_use_time {
    padding: 0 0px;
    margin-bottom: 0px;
  }
  .apps_coupon .accordion-body .coupon_use_time .shops_main_title {
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    margin-bottom: calc(8 * var(--VPRate));
  }
  .apps_coupon .accordion-body .coupon_use_time .sub_title {
    font-weight: 700;
    margin-top: 16px;
  }
  .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;
  }
  .apps_coupon .accordion-body .coupon_use_time.coupon_use_time_note{
    font-size: 11px;
  }
  .apps_coupon .accordion-body .coupon_use_time.coupon_use_time_note li{
    position: relative;
    padding-left: 12px;
    letter-spacing: 0;
  }
  .apps_coupon .accordion-body .coupon_use_time.coupon_use_time_note li::after{
    content: "※";
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 0;
  }
  .apps_coupon .accordion-body .coupon_use_time.coupon_use_time_note_02 .sub_title {
    margin-top: 0;
    padding-top: calc(20 * var(--VPRate));
  }
  
  .apps_coupon .accordion-body .coupon_use_time.coupon_use_time_note_02 ul {
    padding-bottom: calc(20 * var(--VPRate));
  }
  
  .apps_coupon .accordion02 .top_btn {
    background: #FF679B;
  }
  .apps_coupon .accordion02 .app_coupon_detail {
    padding: 24px 0px 5px;
    background: #FFECF3;
  }
  .apps_coupon .accordion02 .app_coupon_detail .app_coupon_top {
    padding: 0 calc(20 * var(--VPRate));
  }
  .apps_coupon .accordion02 .app_coupon_detail .top_title {
    margin-bottom: 18px;
  }
  .apps_coupon .accordion02 .app_coupon_detail .coupon_img {
    max-width: 90%;
    margin: 0 auto;
    margin-bottom: 10px;
  }
  .apps_coupon .accordion02 .app_coupon_detail .note {
    margin-bottom: 30px;
  }
  .apps_coupon .accordion02 ul {
    list-style-type: none;
    padding-left: 0;
  }
  .apps_coupon .accordion02 ul li {
    font-size: 12px;
    position: relative;
    padding-left: 15px;
    line-height: 1.8;
    letter-spacing: 0;
  }
  .apps_coupon .accordion02 ul li::before {
    content: "※";
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 0;
  }
  .apps_coupon .accordion02 .coupon_slider {
    text-align: center;
    font-size: calc(14 * var(--VPRate));
    font-weight: bold;
    padding: 0 calc(15* var(--VPRate));
  }
  .apps_coupon .accordion02 .coupon_slider .coupon_slider_title {
    padding: 6px;
    border-radius: 30px;
    margin-bottom: 10px;
    background-color: #ffffff;
    text-align: center;
    border: 1px solid #2B2B2B;
    margin-top: 24px;
  }
  .apps_coupon .accordion02 .coupon_slider .coupon_sub_title {
    font-family: "Montserrat", sans-serif;
    font-size: calc(20* var(--VPRate));
    position: relative;
    width: 29%;
    margin: auto;
    height: 44px;
    position: relative;
    bottom: 0;
    letter-spacing: 1.8px;
    font-weight: bold;
  }
  .apps_coupon .accordion02 .coupon_slider .coupon_sub_title span {
    font-size: calc(36* var(--VPRate));
    margin-right: 5px;
  }
  .apps_coupon .accordion02 .slider_comp {
    margin-top: 0;
    background-color: #FFECF3;
  }
  .apps_coupon .accordion02 .slider_comp .slider01,
  .apps_coupon .accordion02 .slider_comp .slider02,
  .apps_coupon .accordion02 .slider_comp .slider03 {
    margin-bottom: 10px;
    font-size: 13px;
    margin: 0 5px;
    border-radius: 15px;
    position: relative;
    max-width: 100%;
  }
  @media screen and (max-width:499px){
    .apps_coupon .accordion02 .slider_comp .slider01,
    .apps_coupon .accordion02 .slider_comp .slider02,
    .apps_coupon .accordion02 .slider_comp .slider03 {
      max-width: 265px;
    }
  }
  .apps_coupon .accordion02 .slider_comp .slider01 .slider_top,
  .apps_coupon .accordion02 .slider_comp .slider02 .slider_top,
  .apps_coupon .accordion02 .slider_comp .slider03 .slider_top {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .apps_coupon .accordion02 .slider_comp .slider01 .slider_top .step_logo img,
  .apps_coupon .accordion02 .slider_comp .slider02 .slider_top .step_logo img,
  .apps_coupon .accordion02 .slider_comp .slider03 .slider_top .step_logo img {
    width: 55px;
    height: 55px;
    margin-right: 10px;
  }
  /*
  .apps_coupon .accordion02 .slider_comp .slider01 .slider_comp_img img,
  .apps_coupon .accordion02 .slider_comp .slider02 .slider_comp_img img,
  .apps_coupon .accordion02 .slider_comp .slider03 .slider_comp_img img {
    position: absolute;
    bottom: 0;
  }*/
  .apps_coupon .accordion02 .slider_comp .slider01 .left_arrow,
  .apps_coupon .accordion02 .slider_comp .slider02 .left_arrow,
  .apps_coupon .accordion02 .slider_comp .slider03 .left_arrow {
    position: absolute;
    top: 50%;
    right: -21px;
    z-index: 10;
  }
  .apps_coupon .accordion02 .slider_comp button {
    height: 50px;
  }
  .apps_coupon .accordion02 .accordion-body .coupon_use_time {
    padding: 0 calc(15 * var(--VPRate));
    background: #FFECF3;
  }
  .apps_coupon button {
    background-color: transparent;
    border: none;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    outline: none;
    transition: color 0.3s ease;
    right: 10px;
    position: absolute;
    vertical-align: middle;
    font-family: "Noto Sans JP", sans-serif;
    color: #fff;
    padding: 0;
  }
  .apps_coupon .slick-arrow{
    width: 40px;
    height: 40px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    z-index: 1;
    transition: 0.2s;
  }
  .apps_coupon .slick-prev{
    left: 0;
    background-image: url(/img/beautyup-cosmecp2/202510/slide_ico_prev.png);
  }
  .apps_coupon .slick-next{
    right: 0;
    background-image: url(/img/beautyup-cosmecp2/202510/slide_ico_next.png);
  }
  .apps_coupon .slick-disabled{
    opacity: 0;
    z-index: -1;
  }
  .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_wrap{
  position: relative;
  width: 345px;
  height: 466px;
  margin: 0 auto;
  padding: 25px 15px 25px;
  background-image: url(/img/beautyup-cosmecp2/202510/special_prize_bg.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
.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_special_prize_dot{
  width: 100%;
  height: 3px;
  background-image: url(/img/beautyup-cosmecp2/202510/special_prize_dots.png);
  background-repeat: no-repeat;
  background-size: 302.5px 3px;
  background-position: center;
  margin: 15px 0 24px;
}
.cosmecp2_special_prize_wrap > p{
  font-size: 14px;
  letter-spacing: 0;
}
.cosmecp2_special_prize_wrap > p strong{
  font-size: 18px;
}
.cosmecp2_special_prize_wrap ul{
  margin: 14px 0 0;
}
.cosmecp2_special_prize_wrap ul li{
  padding-left: 15px;
  position: relative;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0;
  margin: 0 0 0;
}
.cosmecp2_special_prize_wrap ul li::after{
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.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: 40px 15px;
  background-color: #FFE791;
}
.cosmecp2_about_box h3{
  width: 100%;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 10px;
  color: #C9384D;
  font-size: 14px;
  font-weight: 700;
  background-color: #fff;
  border: 1px solid #C9384D;
}
.cosmecp2_about_conditions > p{
  font-size: 14px;
  letter-spacing: 0;
}
.cosmecp2_about_conditions > p span{
  color: #C9384D;
  font-weight: 700;
}
.cosmecp2_about_shops{
  margin: 10px 0 0;
  padding: 10px 15px;
  border-radius: 10px;
  background-color: #FFF4C7;
}
.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;
}
.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: #C9384D;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}
.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: 10px 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: 257px;
  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: 15px 0 20px;
}
.cosmecp2_note_list ul:first-child li{
  font-size: 12px;
}
.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_note_list > a{
  display: block;
  margin: 25px 0 0;
}