.doublepoint_mv {background-color: #9cd7f1;}
.tc-cp__info {
/* background-color: #a8dcf3; */
background: url(/img/doublepoint/260520/tc-cp__info_bg_260520.png) repeat-y #a8dcf3;;
}
.doublepoint_info {max-width: 750px;}
.doublepoint_info_day span {
    color: #348cb0;
    border: 1px solid #348cb0;
}
.doublepoint_entry_btn a {
/* color: #348cb0;
background-image: linear-gradient(90deg, rgb(255 255 145), rgb(255 179 0)); */
color: #fff;
background-color: #eb4973;
background-image: none;
}
.doublepoint_entry_btn::after {
/* background-color: #348cb0; */
background-color: #be3b5d;
}
.doublepoint_entry_btn a::after {
    /*background-image: url(/img/doublepoint/icon_btn_entry_arrow_251001.png);*/
    background: none;
    content: "\03e";
    content: "\27E9";
    content: "\3009";
    height: auto;
    transform: scale(1.5, 1) translateY(-50%);
    font-size: 16px;
}
.doublepoint_swiper01 .doublepoint_swiper-scrollbar .swiper-scrollbar-drag {
    background-color: #fea593;
}
.brand_list_btn,.link_list a {background-color: #fea593;}
.brand_list_btn p span::after,.link_list a::after {background-image: url(/img/doublepoint/doublepoint_playbtn_260202.png);}

.banner__wrap {
    max-width: 1040px;
    width: 100%;
    margin: 70px auto 0px;
}
h2.banner__wrap__ttl {
    margin-bottom: 12px;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.3;
    letter-spacing: 0px;
    text-align: center;
    padding: 0px;
}
.banner__wrap a {
    display: block;
    margin: 0px auto 30px;
    transition: 0.3s;
}
.doublepoint_about_wrap h2,.doublepoint_banner h3 {color: #348cb0;}
.doublepoint_about_wrap h2 span {border-bottom: 2px solid #348cb0; }
.doublepoint_about_read span {color: #eb4973;}
.doublepoint_about_box::before,.doublepoint_precautions h4::after {
    /*background-image: url(/img/doublepoint/dots_bg_251001.png);*/
    background-image: radial-gradient(circle, #348cb0 1px, transparent 1px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 4px 2px;
    }
.doublepoint_banner h3 span::after, .doublepoint_banner h3 span::before {background-color: #fea593;}
.accordion-header h3 span {
    padding: 0 10% 0 5%;
    left: 16px;
    position: relative;}
.accordion-header img.icon {
    position: relative;
    top: 4px;
    right: 45px;
}
.mt-50-30 {
    margin-top: 50px;
}

.accordion-content.dc__coupon-info__toggle {
margin-top: 40px;
}
@media screen and (max-width: 600px) {/*SP*/
.accordion-content.dc__coupon-info__toggle {
margin-top: 10px;
}
}

.dc__btn--wrap.dc__accordion--btn a:before {
    background-image: url(/img/doublepoint/dc_btn_icon_accordion-open.png) !important;
    right: 30px !important;
    width: 25px !important;
    height: 25px !important;
}
.dc__btn--wrap.dc__accordion--btn a:after {
    background-image: url(/img/doublepoint/dc_btn_icon_accordion-close.png) !important;
    right: 30px !important;
    width: 25px !important;
    height: 25px !important;
}

.tc-cp__infoBanner h3 {
    background: #f1f1f3;
    background: #fbf4b7;
    background: #f4f0d7;
    text-align: center;
    font-weight: bold;
    font-size: 30px;
    height: 150px;
    line-height: 150px;
    background-image: conic-gradient(#f4f0d7 90deg, transparent 90deg 180deg, #f4f0d7 180deg 270deg, transparent 270deg);
background-size: 20px 20px;
background-color: #fbdadd;
}


.doublepoint_title_ribbon {
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    max-width: 1160px;
    width: 100%;
    margin: 0 auto 60px;
    font-size: 22px;
    font-weight: 700;
  height: 60px;/*リボンの高さ*/
  line-height: 60px;/*リボンの高さ*/
  background: #348cb0;/*塗りつぶし色*/
  color: #FFF;/*文字色*/
}

.doublepoint_title_ribbon:before, .doublepoint_title_ribbon:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.doublepoint_title_ribbon:before {
    top: 0;
    left: 0;
    border-width: 30px 0px 30px 15px;
    border-color: transparent transparent transparent #a8dcf3;/*背景色*/
    border-style: solid;
}

.doublepoint_title_ribbon:after {
  top: 0;
  right: 0;
  border-width: 30px 15px 30px 0px;
  border-color: transparent #a8dcf3 transparent transparent;/*背景色*/
  border-style: solid;
}

@media screen and (min-width: 600px) {/*PC*/
    .product_list_2col {
        max-width: 560px !important;
    }
.tc-cp__infoInner.tc-cp__infoInner_mt60 {
    /* padding-bottom: 80px; */
}
}
@media screen and (max-width: 600px) {/*SP*/
    .banner__wrap  {
        margin: 8vw auto 0;
    }
    h2.banner__wrap__ttl {
        font-size: 4.8vw;
        margin-bottom: 4.27vw;
        background: transparent;
    }
    .banner__wrap a {
        max-width: 84vw;
        width: 100%;
        margin: 0 auto 3vw;
    }
    .accordion-header h3 span {
        left: 14px;
        padding: 0 13% 0 7%;
    }
    .accordion-header img.icon {
        right: 20px;
        top: 0px;}
    .tc-cp__infoInner.tc-cp__infoInner_mt60 {
        margin-top: 30px;
        border-radius: 5vw;
        padding-bottom: 1px;
    }
    .mt-50-30 {
    margin-top: 30px;
    }
    p.dc__btn--wrap.dc__accordion--btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    text-decoration: none;
    background-image: none;
    background-color: #2b2b2b;
    color: #fff;

    }
    p.dc__btn--wrap.dc__accordion--btn {
    width: 100%;
    display: block;
    position: relative;
    height: 52px;
    margin: 0 auto;
    transition: .3s;
    }
    .tc-cp__infoBanner h3 {
    height: 80px;
    line-height: 65px;
    font-size: 5.06vw;
    }
    h2.doublepoint_title_ribbon {
    font-size: 4.26vw;
    line-height: 6.2vw;
    text-align: center;
    margin: 0 auto;
    height: 18.6vw;
    height: 70px;
    }
    .doublepoint_title_ribbon:before {border-width: 35px 0px 35px 15px;}
    .doublepoint_title_ribbon:after {border-width: 35px 15px 35px 0px;}
}

/* 赤字終了文言追加 */
@media screen and (min-width: 1040px) {
    .endtext {
        margin: 30px auto 0;
        text-align: center;
        width: 70%;
        color: red;
        max-width: 900px;
    }
    .endtext .line {
        padding: 10px 0;
        border: 3px solid red;
        margin: 0 auto;
        color: red;
        font-size: 18px;
        font-weight: bold;
    }
}
@media screen and (max-width: 1039px) {
    .endtext {
        margin: 20px auto 0;
        text-align: center;
        color: red;
    }
    .endtext .line {
        padding: 10px 0;
        border: 3px solid red;
        width: 80%;
        margin: 0 auto;
        color: red;
        font-weight: bold;
    }
}

/* アコーディオン ポイントバックLPから */
.accordion {
    margin-top: 5%;
}
.accordion-header {
    cursor: pointer;
    width: 460px;
    height: 56px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: rgb(215, 210, 203) 0px 6px;
    background: rgb(237, 237, 237);
    border-radius: 50px;
    margin: auto;
}
.accordion-header img {
    position: relative;
    left: 168px;
}

.accordion-content {
    max-width: 686px;
    width: 100%;
    margin: 32px auto 0;
}

.accordion-content ul li {
    font-size: 14px;
    font-weight: 400;
    margin: 0 0 8px;
    padding-left: 20px;
    position: relative;
    line-height: 1.5;
}
.accordion .accordion-content ul li::after {
    content: "※";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
}

@media screen and (min-width: 500px) {
.doublepoint_card_list li h4 {
width: 250px;
margin-inline: auto;
}
}

.tc-cp__btn-wrap.tc-cp__accordion-btn.open a:after {
opacity: 0
}
.tc-cp__btn-wrap.tc-cp__dmcouponAccordion-btn.open a:after {
opacity: 0
}
.tc-cp__btn-wrap.tc-cp__qirapointAccordion-btn.open a:after {
opacity: 0
}
.tc-cp__btn-wrap.tc-cp__presentAccordion-btn.open a:after {
opacity: 0
}
@media screen and (max-width: 600px) {
.accordion-header {
        width: 84vw;
        height: 13.5vw;
    }
.accordion-header img {
		left: 27vw;
	}
.accordion-content {
		padding: 3vw 0 0;
		margin-top: 3vw;
		font-size: 3.2vw;
		line-height: 6vw;
		letter-spacing: 0vw;
	}
.accordion-header span {
        left: 2.3vw;
        position: relative;
    }
}

/* キャンペーン概要背景 */
.doublepoint_about {
background-color: #f9f8c3;
}

.tc-cp__infoInner__note {
margin-top: 10px;
text-align: center;
font-size: 12px;
}
@media screen and (max-width: 600px) {/*SP*/
.tc-cp__infoInner__note {
text-align: left;
}
}

.doublepoint_entry_notes a {
color: #eb4973;
}

@media screen and (max-width: 499px) {
.doublepoint_about_customer, .doublepoint_about_other {
padding-top: 4vw;
}
}

.doublepoint_icon_ques {
text-decoration: underline;
}

@media screen and (max-width: 600px) {
.link_list {
margin-bottom: 0;
}
.pane-footer {
padding-top: 4.7vw;
}
}

/* 福袋企画 */
.luckybag {
/* background-color: #FDF7F5; */
background-color: #ef6488;
border: 3px solid #EB4973;
border-radius: 20px;
/* max-width: 1040px; */
max-width: 1160px;
width: 100%;
margin: 0 auto;
padding: 0 30px 40px;
text-align: center;
}

.luckybag_inner {
max-width: 1040px;
margin: 0 auto 0px;
position: relative;
padding-top: 50px;
}

.luckybag_title {
width: 280px;
font-size: 20px;
line-height: 1;
border-radius: 100px;
margin-inline: auto;
border: 3px solid #EB4973;
margin-bottom: 30px;
padding: 10px 10px;
background-color: #fff;
position: absolute;
left: 50%;
top: calc(0% - 23px);
transform: translate(-50%, 0%);
}

.luckybag_subtitle {
margin-bottom: 30px;
font-size: 32px;
width: fit-content;
margin-inline: auto;
/* background-image: linear-gradient(0deg, #eb497380 0.45em, transparent 0.45em); */
/* background-image: linear-gradient(0deg, #fb9b33 0.45em, transparent 0.45em); */
color: #fff;
font-weight: bold;
}

.luckybag_inner picture {
text-align: center;
display: inline-block;
margin-bottom: 10px;
}

.luckybag_endtext {
color: #ff3030;
border: 2px solid #ff3030;
padding: 5px;
width: 200px;
margin: 30px auto 0;
font-weight: 700;
}

.luckybag_item_area {
display: flex;
align-items: stretch;
justify-content: space-evenly;
/* max-width: 840px; */
margin: 40px auto 40px;
gap: 30px;
}

.luckybag_item {
position: relative;
display: block;
width: calc(100% / 3);
border: 2px solid #EB4973;
border-radius: 20px;
text-align: left;
background-color: #fff;
}

.luckybag_item > a {
display: block;
width: 100%;
height: 100%;
padding: 20px 20px;
}

.luckybag_item .circle-arrow {
display: inline-block;
position: absolute;
width: 30px;
height: 30px;
border: 2px solid #2b2b2b;
border-radius: 50%;
background-color: transparent;
vertical-align: middle;
right: 15px;
bottom: 10px;
}

.luckybag_item .circle-arrow::after {
content: "";
position: absolute;
top: 50%;
left: 45%;
width: 8px;
height: 8px;
border-top: 2px solid #2b2b2b;
border-right: 2px solid #2b2b2b;
transform: translate(-50%, -50%) rotate(45deg);
}

.luckybag_item > a:hover span.circle-arrow,
.luckybag_item > a:hover span.circle-arrow::after {
border-color: #EB4973;
border-top: 2px solid #EB4973;
border-right: 2px solid #EB4973;
transition: all .4s;
}

.luckybag_item .product-name {
font-size: 16px;
font-weight: bold;
line-height: 1.4;
margin-bottom: 5px;
}



@media screen and (max-width: 600px) {/*SP*/
.luckybag {
padding: 0 20px 40px;
margin: 12vw 0vw 9vw;
width: auto;
}
.luckybag_inner {
padding-top: 9.41vw;
}
.luckybag_title {
font-size: 3.764vw;
width: 51.76vw;
}
.luckybag_subtitle {
font-size: 4.235vw;
margin-bottom: 4.7vw;
}
.luckybag_note {
font-size: 3.2vw;
text-align: left;
}
.luckybag_item_area {
flex-direction: column;
gap: 20px;
margin-top: 4.7vw;
margin-bottom: 4.7vw;
}
.luckybag_item {
width: 100%;
}
.luckybag_item .product-name {
font-size: 3.294vw;
}
.luckybag_item > a {
padding: 3.529vw;
}

}