@charset "Shift_JIS";

/*==============================================
共通 ここから
================================================*/

/* パンくず削除 */
#pankuzu {
    display: none;
}
.plazamember_campaign2025 img {
    width: 100%;
    height: auto;
    display: block;
}
.plazamember_campaign2025 svg {
    width: 100%;
}
.header-info-red {
    display: none !important;
}
a {
    display: block;
}
.smp-none {
    display: none;
}
footer {
    margin-top: 0 !important;
}
footer .bottom {
    margin-top: 0 !important;
}

/* 価格プロ */
.buy_price>ol, .buy_price>ul {
    margin: 0;
}
span.marker {
    background: linear-gradient(transparent 60%, #ffe4d2 40%);
    font-weight: bold;
    color: #ff3500;
    line-height: 1;
    font-size: 1em;
}
.buy_price>ol .spesicalprice, .buy_price>ul .spesicalprice,.buy_price>ul .intax {
    display: none;
}

.plazamember_campaign2025 summary::-webkit-details-marker {
    display: none;
}
.plazamember_campaign2025 summary::marker {
    display: none;
}

/* 変数指定 */
:root {
    --font-size-text: 3.74cqw;
    --box-shadow:  0px 1px 3px 1px rgba(0, 0, 0, 0.1);
    --color-orange: #ff5932;
    --color-active: #0090ff;
    --margin-space-beside: 1em;
    --margin-space-vertical: 1em;
}

/*==============================================
共通 ここまで
================================================*/

/*==============================================
.plazamember_campaign2025 共通 STR
================================================*/

.plazamember_campaign2025 {
    font-size: var(--font-size-text);
}

.plazamember_campaign2025 * {
    box-sizing: border-box;
    font-size: var(--font-size-text);
}
.plazamember_campaign2025 a {
    display: block;
}
.plazamember_campaign2025 span {
    font-size: 1em;
    line-height: 1;
}
/* ラジオボタン非表示 */
.plazamember_campaign2025 .bland-item-wrap .radio-slider {
    display: none;
}

.plazamember_campaign2025-inner {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;

    /* コンテナクエリを指定 */
    container-type: inline-size;  /* または size */
}

.plazamember_campaign2025-section {
    width: 100%;
    position: relative;
    padding: var(--margin-space-vertical) 0 calc(var(--margin-space-vertical) * 1.5);
    overflow: hidden;
}
/* 共通見出し */
.plazamember_campaign2025-section .section-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #FFF;
    line-height: 1;
    font-size: 1.4em;
    white-space: nowrap;
    text-align: center;
    margin-bottom: .8em;
}
.plazamember_campaign2025-section .section-title__wrap {
    display: block;
    font-size: 1em;
}
.plazamember_campaign2025-section .section-title__num {
    font-size: 1.7em;
    letter-spacing: 0.01em;
}
.plazamember_campaign2025-section .section-title__min {
    font-size: .9em;
    margin-bottom: .3em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-title__logo {
    width: 6.3em;
    border-radius: 5px;
    overflow: hidden;
    margin-right: .3em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-title__text {
    display: flex;
    align-items: baseline;
    font-size: 1.1em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-title__text .num {
    font-size: 1.7em;
}

/* カテゴリごとのブロック */
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block {
    margin-bottom: 1.8em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block:nth-last-of-type(1) {
    margin-bottom: 0;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block__title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0  calc(var(--margin-space-beside) / 2) 0 var(--margin-space-beside);
    margin-bottom: .5em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block__title__h3 {
    font-size: 1.4em;
    display: flex;
    align-items: center;
    gap: .3em;
    color: #FFF;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block__title__h3::before {
    content: '';
    display: block;
    width: 3px;
    height: 1.8em;
    background-color: #FFF;
}

/* カテゴリごとのブロックのもっと見る */
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block__title__cateBtn-wrap {
    display: flex;
    gap: .5em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block__title__cateBtn {
    border: 2px solid #FFF;
    border-radius: 100em;
    line-height: 1;
    padding: .7em .9em .7em 2em;
    font-size: .9em;
    color: #FFF;
    display: flex;
    align-items: center;
    gap: .3em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block__title__cateBtn:hover {
    color: #FFF !important;
    opacity: .8;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block__title__cateBtn .plazaicon-sitamuki-2 {
    display: inline-block;
    transform: rotate(-90deg);
    font-size: .8em;
}
/* カテゴリごとのブロック ふるさと用バナー */
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block.banner {
    margin: 2em 0 1em;
    padding: 0 var(--margin-space-beside);
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block.banner .banner-item {
    border-radius: 5px;
    overflow: hidden;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block.banner .banner-item:hover {
    transform: scale(1.01);
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-block.banner .section-block__title {
    padding-left: 0;
}

/* 共通カテゴリ遷移ボタン */
.plazamember_campaign2025 .plazamember_campaign2025-section .section-cateBtn {
    position: relative;
    width: 95%;
    max-width: 500px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #FFF;
    border-radius: 100cqw;
    padding: .5em;
    color: #FFF;
    font-size: 1.1em;
    font-weight: 600;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-cateBtn:hover {
    color: #FFF !important;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-cateBtn__logo {
    width: 4em;
    border-radius: 3px;
    overflow: hidden;
    margin-right: .5em;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-cateBtn .plazaicon-yajirusi {
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
    color: #FFF;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .3s;
}
.plazamember_campaign2025 .plazamember_campaign2025-section .section-cateBtn:hover .plazaicon-yajirusi {
    right: .6em;
}

/* ポップアップ */
.plazamember_campaign2025 .detail-popup {
    border: none;
}
.plazamember_campaign2025 .detail-popup summary{
    background: transparent;
    color: var(--color-active);
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-size: .9em;
}
.plazamember_campaign2025 .detail-popup[open] summary {
    border: none;
}
.plazamember_campaign2025 .detail-popup[open] summary::after {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #00000069;
    z-index: 11;

    /* iOSバグ回避のための追加 */
    will-change: transform;
    transform: translateZ(0);
}
.plazamember_campaign2025 .detail-popup summary::before,
.plazamember_campaign2025 .detail-popup[open] summary::before {
    font-family: 'fontPlazaIcon' !important;
    content: "\e909";
    font-size: 1.4em;
    margin-right: .1em;
}

/* ポップアップ内部 */
.plazamember_campaign2025 .popup-contents {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, calc(-50% + 30px));
    z-index: 12;
    background: #FFF;
    width: 80%;
    max-width: 650px;
    padding: 1.5em;
    border-radius: 5px;
}
.plazamember_campaign2025 .popup-contents .popup-inner {
    width: 100%;
    overflow-y: scroll;
    max-height: 50vh;
}
.plazamember_campaign2025 .popup-contents .popup-title {
    color: #222;
    font-size: 1.2em;
    padding: .5em;
    margin: 0 0 .5em;
    background: #f3f3f3;
}
.plazamember_campaign2025 .popup-contents .popup-subtitle {
    color: #222;
    display: inline-block;
    border-bottom: 1px solid #222;
    padding-right: 0.5em;
    margin-bottom: .5em;
}
.plazamember_campaign2025 .popup-contents .popup-img.present {
    padding: 0em 2em;
    max-width: 300px;
    margin: 0 auto;
}
.plazamember_campaign2025 .popup-contents .popup-block {
    margin-bottom: 1em;
}
.plazamember_campaign2025 .popup-contents .popup-block:last-of-type(1) {
    margin-bottom: 0;
}
.plazamember_campaign2025 .popup-contents .popup-box {
    margin-bottom: .8em;
}
/* テキスト */
.plazamember_campaign2025 .popup-contents p{
    font-size: .9em;
    margin-bottom: .5em;
}
.plazamember_campaign2025 .popup-contents p a{
    color: var(--color-active);
    font-size: 1em;
    display: inline-block;
    text-decoration: underline;
}
/* バツボタン */
.plazamember_campaign2025 .popup-contents::after {
    position: absolute;
    right: 0;
    top: -1.3em;
    color: #FFF;
    font-size: 1.5em;
    font-weight: bold;
    pointer-events: none;
    z-index: 1;

    /* バツのエスケープ */
    content: '\2715';
}

/* ポップアップ解除 */
.plazamember_campaign2025 .popup-contents.popup-none {
    position: static;
    transform: none;
    width: 100%;
    padding: 0;
    z-index: 1;
}
.plazamember_campaign2025 .popup-contents.popup-none .popup-inner {
    max-height: none;
    overflow: auto;
}

/*==============================================
.plazamember_campaign2025 共通 END
================================================*/

/*==============================================
.plazamember_campaign2025 看板 STR
================================================*/
.plazamember_campaign2025 .plazamember_campaign2025-section.top {
    width: 100%;
    padding: 0;
}
.plazamember_campaign2025 .plazamember_campaign2025-section.top .top-title {
    width: 100%;
    position: relative;
}
/*==============================================
.plazamember_campaign2025 看板 END
================================================*/

/*==============================================
.plazamember_campaign2025 アンカー STR
================================================*/
.plazamember_campaign2025-section.anchor {
    background-color: #ffd4e1;
    padding: var(--margin-space-vertical) 0;
}
.plazamember_campaign2025-section.anchor .top-anchor {
    padding: 0 .5em;
}
.plazamember_campaign2025-section.anchor .top-anchor__flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
/* アンカー共通 */
.plazamember_campaign2025-section.anchor .top-anchor__flex .flex-item {
    position: relative;
    width: 49%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: .3em 0;
    margin-top: .6em;
    border-radius: 100em;
    border: 1px solid #000;
    box-shadow: 0px 3px 0px 0px #000;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    color: #FFF;

    /* box-shadow分 */
    margin-bottom: 3px;
}

/* 横長ver */
.plazamember_campaign2025-section.anchor .top-anchor__flex .flex-item.sale {
    width: 100%;
    padding: .5em 2.5em .5em 1em;
    margin-top: 0;
}
.plazamember_campaign2025-section.anchor .top-anchor__flex .flex-item .plazaicon-sitamuki-2 {
    content: '';
    position: absolute;
    right: .7em;
    top: 50%;
    transform: translateY(-50%);
    background: #222;
    width: 2em;
    height: 2em;
    border-radius: 100em;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: .65em;
    padding-top: .2em;
}

/* ブランド */
.plazamember_campaign2025-section.anchor .top-anchor__flex .flex-item.bland {
    padding: .5em 2.1em .5em .8em;
}

/* 豪華プレゼント */
.plazamember_campaign2025-section.anchor .top-anchor__flex .flex-item.present {
    padding: .5em 2.3em .5em 1.3em;
}
/* ホバー時 */
.plazamember_campaign2025-section.anchor .top-anchor__flex .flex-item:hover {
    transform: scale(1.05);
}

/*==============================================
.plazamember_campaign2025 商品 STR
================================================*/

/* ブランド商品共通CSS */
.plazamember_campaign2025-section.bland {
    box-shadow: inset 0px -5px 5px 0px rgba(0, 0, 0, 0.2);
}
.plazamember_campaign2025-section .bland-item-wrap {
    position: relative;
}


.plazamember_campaign2025-section .bland-item-inner {
    width: 100%;
    display: flex;
    margin-bottom: .8em;

    /* スクロールバーの余白調節 */
    overflow-x: scroll;
    padding-left: var(--margin-space-beside);
    padding-right: var(--margin-space-beside);
    padding-bottom: .9em;
}
/* スクロールバー色カスタマイズ */
/* Chrome, Edge, Safari用 */
.plazamember_campaign2025-section .bland-item-inner::-webkit-scrollbar {
    height: .3em;
    background: transparent;
    border-radius: 100cqw;
}
.plazamember_campaign2025-section .bland-item-inner::-webkit-scrollbar-thumb {
    background: #FFF;
    border-radius: 4px;
}

.plazamember_campaign2025-section .bland-item {
    border: 1px solid #FFF;
    width: 14em;
    min-width: 14em;
    background-color: #FFF;
    border-radius: 5px;
    overflow: hidden;
    border: 2px solid #000;
    box-shadow: 0 .3em 0px 0px #000;
    margin-right: 1.1em;
    transition: .3s;
    padding: .8em .8em .3em;

    /* スライダー用 */
    flex-direction: column;
}
.plazamember_campaign2025-section .bland-item:hover {
    box-shadow: 0 .3em .2em 0 #000;
}
.plazamember_campaign2025-section .bland-item:nth-last-of-type(1) {
    margin-right: 0;
}
.plazamember_campaign2025-section .bland-item__part {
    margin: .3em 0;
}

/* 商品：キャッチコピー */
.plazamember_campaign2025-section .bland-item__copy {
    font-size: .9em;
    padding: .6em 0 .5em .8em;
    white-space: nowrap;
}
.plazamember_campaign2025-section .bland-item__color {
    font-size: 1.2em;
    padding-right: .1em;
}
/* 商品：サムネ */
.plazamember_campaign2025-section .bland-item__thum {
    width: 100%;
    overflow: hidden;
    aspect-ratio: 1 / 1;
}
.plazamember_campaign2025-section .bland-item__thum img {
    transition: .3s;
}
/* 商品：サムネホバー時 */
.plazamember_campaign2025-section .bland-item:hover .bland-item__thum img {
    transform: scale(1.03);
}
/* 商品：商品名 */
.plazamember_campaign2025-section .bland-item__name {
    display: flex;
    /* padding: .3em .5em; */
}
.plazamember_campaign2025-section .bland-item__name__h3 {
    color: #333;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
}
/* 商品：価格 */
.plazamember_campaign2025-section .bland-item__price {
    font-size: 1.5em;
    display: flex;
    align-items: baseline;
    gap: .2em;
}
.plazamember_campaign2025-section .bland-item__price .main-price,
.plazamember_campaign2025-section .bland-item__price .sub-price {
    position: relative;
    line-height: 1;
    font-family: 'Lato', 'Noto Sans JP', 'Yu Gothic black', sans-serif, 'メイリオ';
    font-weight: 700;
}
.plazamember_campaign2025-section .bland-item__price .main-price {
    font-size: 1em;
    color: #eb0012;
    white-space: nowrap;
}
.plazamember_campaign2025-section .bland-item__price .main-price::first-letter,
.plazamember_campaign2025-section .bland-item__price .sub-price::first-letter {
    font-size: .8em;
}
.plazamember_campaign2025-section .bland-item__price .sub-price {
    font-size: .6em;
    color: #a1a1a1;
}
.plazamember_campaign2025-section .bland-item__price .sub-price::after {
    content: '';
    width: 100%;
    height: 1px;
    background-color: #a1a1a1;
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
}
/* 日本語が入っていた場合 「実質」など */
.plazamember_campaign2025-section .bland-item__price .main-price.ja .ja-min {
    font-size: .5em;
}
.plazamember_campaign2025-section .bland-item__price .main-price.ja .ja-yen {
    font-size: .8em;
}
.plazamember_campaign2025-section .bland-item__price .main-price.ja::first-letter {
    font-size: 1em;
}

/* 販促アイコン */
.plazamember_campaign2025-section .bland-item__promo {
    display: flex;
}
.plazamember_campaign2025-section .bland-item__promo .promo-icon {
    background-color: #e74e83;
    color: #fbff77;
    font-weight: 600;
    line-height: 1;
    padding: .5em .6em;
    width: 100%;
    text-align: center;
    font-size: 1em;
    white-space: nowrap;
}
/* 詳細はこちら */
.plazamember_campaign2025-section .bland-item__link {
    color: var(--color-active);
    font-size: .85em;
    display: flex;
    align-items: center;
    line-height: 1;
    margin-bottom: .6em;
    transition: .3s;
}


/* ダイソン用 */
.plazamember_campaign2025-section.item.sale {
    background-color: #e74e83;
}
.plazamember_campaign2025-section.item.sale .bland-item__copy {
    color: #FFF;
    background-color: #231f20;
}
.plazamember_campaign2025-section.item.sale .bland-item__color {
    color: #00f6ff;
}
.plazamember_campaign2025-section.item.sale .section-cateBtn {
    background-color: #231f20;
}
.plazamember_campaign2025-section.item.sale .section-cateBtn .plazaicon-yajirusi {
    color: #231f20;
}

/* ブランド用 */
.plazamember_campaign2025-section.item.bland {
    background-color: #63a2ff;
}
.plazamember_campaign2025-section.bland .bland-item {
    position: relative;
    width: 18em;
    min-width: 18em;
    padding: 0;
}
.plazamember_campaign2025-section.bland .bland-item::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 7em;
    height: 2.8em;
    z-index: 100;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #FFF;
    border-radius: 0 0 0 5px;
    border-bottom: 2px solid #000;
    border-left: 2px solid #000;
}
.plazamember_campaign2025-section.bland .bland-item__thum {
    border-bottom: 2px solid #000;
    aspect-ratio: 500 / 309;
}
.plazamember_campaign2025-section.bland .bland-item__part {
    padding: 0 .8em;
}




/*==============================================
.plazamember_campaign2025 商品 END
================================================*/

/*==============================================
.plazamember_campaign2025 豪華プレゼント STR
================================================*/

.plazamember_campaign2025-section.present {
    padding: 0;
    background: #FFF;
}
/* プレゼント 見出し */
.plazamember_campaign2025-section.present .present-title {
    margin-bottom: .5em;
    text-align: center;
}
.plazamember_campaign2025-section.present .present-title__h3 {
    font-size: 1.3em;
    color: #6752e8;
    font-weight: 600;
    margin-bottom: .5em;
}
.plazamember_campaign2025-section.present .present-title__p {
    font-size: .9em;
    color: #222;
}
.plazamember_campaign2025-section.present .present-top {
    background-color: #a89af9;
}
.plazamember_campaign2025-section.present .present-top h2 {
    max-width: 650px;
    margin: 0 auto;
}
.plazamember_campaign2025-section.present .present-step {
    background-color: #e5e1fd;
    padding: 1em;
}
.plazamember_campaign2025-section.present .present-step .step-img {
    margin: 0 auto 1.5em;
    max-width: 650px;
}
.plazamember_campaign2025-section.present .present-content {
    padding: 1em;
    background: #FFF;
}

.plazamember_campaign2025-section.present .present-content .present-content__box {
    display: flex;
    justify-content: space-between;
    max-width: 650px;
    margin: 0 auto;
}
.plazamember_campaign2025-section.present .present-content .present-content__box .box {
    width: 32%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
/* 応募人数 */
.plazamember_campaign2025-section.present .present-content .present-content__box .box-number {
    background: #44349f;
    color: #FFF;
    padding: .5em .8em;
    font-size: .9em;
    width: max-content;
    line-height: 1;
    border-radius: 100em;
}
/* プレゼント名 */
/* プレゼントの詳細ポップアップ */
.plazamember_campaign2025-section.present .present-content .present-content__box .box-summary {
    flex-direction: column;
}
.plazamember_campaign2025 .detail-popup summary.box-summary::before, .plazamember_campaign2025 .detail-popup[open] summary.box-summary::before {
    content: none;
}
.plazamember_campaign2025-section.present .present-content .present-content__box .box-name {
    position: relative;
    font-size: .9em;
    color: var(--color-active);
    text-align: center;
    margin: .5em 0 .2em;
    height: 3.5em;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.plazamember_campaign2025-section.present .present-content .present-content__box .box-name .min {
    font-size: .85em;
    margin-bottom: .2em;
}
.plazamember_campaign2025-section.present .present-content .present-content__box .box-name::after {
    font-family: 'fontPlazaIcon' !important;
    content: "\e909";
    font-size: 1.5em;
    position: absolute;
    bottom: calc(100%);
    right: 0;
    background: #FFF;
    border-radius: 50%;
}
/* 応募人数 */
.plazamember_campaign2025-section.present .present-content .present-content__box .box-applications {
    font-size: .9em;
    margin-bottom: .5em;
}
.plazamember_campaign2025-section.present .present-content .present-content__box .box-applications__num {
    font-size: 1.5em;
    margin: 0 .2em;
}
/* 応募ボタン */
.plazamember_campaign2025-section.present .present-content .present-content__box .box-ently {
    background-color: #eb0012;
    color: #FFF;
    border: none;
    line-height: 1;
    padding: .5em 1em;
    border-radius: 5px;
    transition: .3s;
}
.plazamember_campaign2025-section.present .present-content .present-content__box .box-ently:hover {
    cursor: pointer;
    transform: scale(1.05);
}
.plazamember_campaign2025-section.present .present-content .present-content__box .box-ently.false {
    pointer-events: none;
    background-color: #9e9e9e;
}

/* プレゼント内のサマリー装飾 */
.plazamember_campaign2025-section.present .detail-popup .present-attntion-summary {
    background: #FFF;
    padding: .7em 1em;
    border-radius: 100em;
    font-size: .85em;
    line-height: 1;
    width: max-content;
    margin: 0 auto;
}

/* スタンプカード */
.plazamember_campaign2025-section.present .stampCard {
    /* max-width: 750px; */
    margin: 0 auto;
}
.plazamember_campaign2025-section.present .stampCard-inner {

}
.plazamember_campaign2025-section.present .stampCard-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #6a55e0;
    color: #FFF;
    padding: .5em;
}
.plazamember_campaign2025-section.present .stampCard-title__h3 {
    font-size: 1.2em;
}
.plazamember_campaign2025-section.present .stampCard-title__ticket {
    background-color: #FFF;
    color: #222;
    padding: .2em .5em .1em;
    display: flex;
    align-items: center;
    line-height: 1;
}
.plazamember_campaign2025-section.present .stampCard-title__ticket .num {
    font-size: 1.5em;
    color: #eb0012;
    font-family: 'Lato';
    font-weight: 600;
    display: block;
    margin-bottom: 0.15em;
}

.plazamember_campaign2025-section.present .stampCard-slider {
    background-image: repeating-linear-gradient(45deg, rgba(168, 154, 249, 1) 1% 4%, rgba(185, 174, 250, 1) 4% 7%);
    padding: 1.5em 2.5em;
}
/* ラジオボタン非表示 */
.plazamember_campaign2025-section.present .stampCard-slider .radio-slider {
    display: none;
}
.plazamember_campaign2025-section.present .stampCard-slider-inner {
    position: relative;
    background-color: #cbc2fb;
    padding: 1em;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.plazamember_campaign2025-section.present .stampCard-slider__num {
    width: 100%;
    line-height: 1;
    margin-bottom: .5em;
}
.plazamember_campaign2025-section.present .stampCard-slider__item{
    width: 31%;
    aspect-ratio: 1/1;
    background-color: #FFF;
    border-radius: 5px;
    display: none;
    overflow: hidden;
}

/* 矢印 */
.plazamember_campaign2025-section.present .slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: none;
    justify-content: center;
    align-items: center;
    border-radius: 100vw;
    z-index: 1;
    width: 30px;
    height: 30px;

    .arrow {
        position: relative;
        width: 9px;
        height: 9px;
    }
    
    .arrow::before,
    .arrow::after {
        content: "";
        position: absolute;
        top: calc(50% - 3px);
        right: 0;
        width: 18px;
        height: 6px;
        background-color: #ffffff;
        transform-origin: calc(100% - 3px) 50%;
    }
    
    .arrow::before {
        transform: rotate(45deg);
    }
    
    .arrow::after {
        transform: rotate(-45deg);
    }
}

.plazamember_campaign2025-section.present .slider-arrow.prev-label {
    right: calc(100% + 5px);

    .arrow {
        transform: rotate(-180deg);
        margin-right: -1px;
    }
}

.plazamember_campaign2025-section.present .slider-arrow.next-label {
    left: calc(100% + 5px);
}

/* ページネーション */
.plazamember_campaign2025-section.present .stampCard .slider-pagination {
    display: flex;
    justify-content: center;
    gap: .5em;
    margin: .8em 0 1em;
}
.plazamember_campaign2025-section.present .stampCard .slider-pagination__cir {
    width: .8em;
    height: .8em;
    background-color: #222;
    border-radius: 100vw;
}

/* ページネーション変更処理 */
.plazamember_campaign2025-section.present #stampCard-slider-1:checked ~ .slider-pagination .slider-pagination__cir:nth-of-type(1) {
    background-color: #e81788;
}
.plazamember_campaign2025-section.present #stampCard-slider-2:checked ~ .slider-pagination .slider-pagination__cir:nth-of-type(2) {
    background-color: #e81788;
}
.plazamember_campaign2025-section.present #stampCard-slider-3:checked ~ .slider-pagination .slider-pagination__cir:nth-of-type(3) {
    background-color: #e81788;
}
.plazamember_campaign2025-section.present #stampCard-slider-4:checked ~ .slider-pagination .slider-pagination__cir:nth-of-type(4) {
    background-color: #e81788;
}
.plazamember_campaign2025-section.present #stampCard-slider-5:checked ~ .slider-pagination .slider-pagination__cir:nth-of-type(5) {
    background-color: #e81788;
}

/* 3つずつ表示処理 */
.plazamember_campaign2025-section.present #stampCard-slider-1:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(1),
.plazamember_campaign2025-section.present #stampCard-slider-1:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(2),
.plazamember_campaign2025-section.present #stampCard-slider-1:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(3),
.plazamember_campaign2025-section.present #stampCard-slider-1:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(1),
.plazamember_campaign2025-section.present #stampCard-slider-1:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(2) {
    display: flex;
}
.plazamember_campaign2025-section.present #stampCard-slider-2:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(4),
.plazamember_campaign2025-section.present #stampCard-slider-2:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(5),
.plazamember_campaign2025-section.present #stampCard-slider-2:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(6),
.plazamember_campaign2025-section.present #stampCard-slider-2:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(3),
.plazamember_campaign2025-section.present #stampCard-slider-2:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(4) {
    display: flex;
}
.plazamember_campaign2025-section.present #stampCard-slider-3:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(7),
.plazamember_campaign2025-section.present #stampCard-slider-3:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(8),
.plazamember_campaign2025-section.present #stampCard-slider-3:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(9),
.plazamember_campaign2025-section.present #stampCard-slider-3:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(5),
.plazamember_campaign2025-section.present #stampCard-slider-3:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(6) {
    display: flex;
}
.plazamember_campaign2025-section.present #stampCard-slider-4:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(10),
.plazamember_campaign2025-section.present #stampCard-slider-4:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(11),
.plazamember_campaign2025-section.present #stampCard-slider-4:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(12),
.plazamember_campaign2025-section.present #stampCard-slider-4:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(7),
.plazamember_campaign2025-section.present #stampCard-slider-4:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(8) {
    display: flex;
}
.plazamember_campaign2025-section.present #stampCard-slider-5:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(13),
.plazamember_campaign2025-section.present #stampCard-slider-5:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(14),
.plazamember_campaign2025-section.present #stampCard-slider-5:checked ~ .stampCard-slider-inner .stampCard-slider__item:nth-of-type(15),
.plazamember_campaign2025-section.present #stampCard-slider-5:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(9),
.plazamember_campaign2025-section.present #stampCard-slider-5:checked ~ .stampCard-slider-inner .slider-arrow:nth-of-type(10) {
    display: flex;
}

/* カテゴリ */
.plazamember_campaign2025-section.present .present-category {
    padding: 1em;
    background-color: #e5e1fd;
}
/* アイコンの説明 */
.plazamember_campaign2025-section.present .present-category-cap {
    display: flex;
    justify-content: center;
    gap: .8em;
    margin-bottom: .5em;
}
.plazamember_campaign2025-section.present .present-category-cap__item {
    display: flex;
    align-items: center;
    gap: .2em;
}
.plazamember_campaign2025-section.present .present-category-cap__item .cir {
    display: block;
    width: 1em;
    height: 1em;
    border: 1px solid #000;
    border-radius: 50%;
}
/* カテゴリflex */
.plazamember_campaign2025-section.present .present-category-inner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    gap: .5em;
}
.plazamember_campaign2025-section.present .present-title__renewal {
    display: flex;
    justify-content: center;
    margin: 0 auto .4em;
    width: 100%;
}
.plazamember_campaign2025-section.present .present-title__renewal p {
    position: relative;
    background: #ff5959;
    color: #FFF;
    display: inline-block;
    font-size: .9em;
    width: max-content;
    margin: 0 auto .4em;
    padding: .5em 3em;
    border-radius: 100em;
    text-align: center;
}
.plazamember_campaign2025-section.present .present-title__renewal p::after {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: calc(100% - 1px);
    width: 2em;
    height: .6em;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background: #ff5959;
}
.plazamember_campaign2025-section.present .present-category-inner .category-item {
    flex: 48%;
    border-radius: 5px;
    background-color: #FFF;
    border: 2px solid #0000001c;
    padding: .8em 0;
    font-size: 0.9em;
    text-align: center;
    color: #222;
}
.plazamember_campaign2025-section.present .present-category-inner .category-item.status-a {
    background-color: #f44658;
    color: #FFF;
}
.plazamember_campaign2025-section.present .present-category-inner .category-item.status-b {
    background-color: #0950df;
    color: #FFF;
}
.plazamember_campaign2025-section.present .present-category-inner .category-item.status-c {
    background-color: #f44658;
    color: #FFF;
}

/* Xキャンペーン */
.plazamember_campaign2025-section.present .present-camp {
    position: relative;
    width: 100%;
    padding: 0 1em 1em;
    margin: -.5em auto 0;
    background: #e5e1fd;
}
.plazamember_campaign2025-section.present .present-camp-btm {
    display: flex;
    justify-content: space-between;
    background-color: #ffdf6f;
    padding: .5em;
}
.plazamember_campaign2025-section.present .present-camp-btm .camp-btm {
    position: relative;
    width: 49%;
    font-size: 1em;
    padding: .5em;
    text-align: center;
    background-color: #eb0012;
    border: 3px solid #FFF;
    border-radius: 10px;
    color: #FFF;
    display: flex;
    align-items: center;
    justify-content: center;
}
.plazamember_campaign2025-section.present .present-camp-btm .camp-btm:hover {
    color: #FFF !important;
    opacity: .7;
}
.plazamember_campaign2025-section.present .present-camp-btm .camp-btm i {
    position: absolute;
    right: .5em;
    transform: rotate(-90deg);
    font-size: .85em;
}

/*==============================================
.plazamember_campaign2025 豪華プレゼント END
================================================*/

/*==============================================
.plazamember_campaign2025 その他 STR
================================================*/

.plazamember_campaign2025-section.camp  {
    background-color: #ffd4e1;
    padding: var(--margin-space-vertical) var(--margin-space-beside) calc(var(--margin-space-vertical) * 1.5);
}

.plazamember_campaign2025-section.camp .camp-block  {
    position: relative;
    margin: 0 auto 2em;
}
.plazamember_campaign2025-section.camp .camp-block a:hover {
    opacity: .7;
}
.plazamember_campaign2025-section.camp .camp-block__title {
    text-align: center;
    margin: 0 auto .5em;
}
.plazamember_campaign2025-section.camp .camp-block__flex {
    display: flex;
    flex-wrap: wrap;
    gap: 2%;
}
.plazamember_campaign2025-section.camp .camp-block__flex .flex-item {
    width: 49%;
    margin-top: 2%;
    border-radius: 5px;
    overflow: hidden;
}
.plazamember_campaign2025-section.camp .camp-block__flex .flex-item:nth-of-type(1),
.plazamember_campaign2025-section.camp .camp-block__flex .flex-item:nth-of-type(2) {
    margin-top: 0;
}
/* 白背景角丸用 */
.plazamember_campaign2025-section.camp .camp-block.white  {
    background-color: #FFF;
    border-radius: 5px;
    padding: 1em;
}

/* アプリ用 */
.plazamember_campaign2025-section.camp .camp-block.app  {
    margin-top: 2em;
}
/* アプリ用バナー */
.plazamember_campaign2025-section.camp .app-banner {
    margin-top: -.5em;
}

.plazamember_campaign2025-section.camp .app-banner .app-banner__contents {
    display: flex;
    margin-bottom: .9em;
    margin-top: .6em;
}

.plazamember_campaign2025-section.camp .app-banner .text {
    width: 60%;
}

.plazamember_campaign2025-section.camp .app-banner .phone {
    position: relative;
    width: 40%;
    display: flex;
    justify-content: center;
}

.plazamember_campaign2025-section.camp .app-banner .phone .img {
    position: absolute;
    z-index: 1;
    width: 110%;
    top: -2.2em;
}

.plazamember_campaign2025-section.camp .app-banner .app-banner__button {
    position: relative;
    z-index: 10;
}

.plazamember_campaign2025-section.camp .app-banner:hover {
    opacity: .7;
}

/*==============================================
.plazamember_campaign2025 その他 END
================================================*/

/*==============================================
.plazamember_campaign2025 ハンバーガーメニュー STR
================================================*/
/* ハンバーガーメニュー 未クリック */
.plazamember_campaign2025 .menu-check {
    display: block;
    position: fixed;
    z-index: 101;
    bottom: calc(53px + 1%);
    right: 2%;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 5px;
    background: #44349f;
    box-sizing: border-box;
    border: 1px solid #000;

    .menu-check__border {
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 13.5px;
        height: 3px;
        border-radius: 2px;
        background: #FFF;
        width: 45%;
    }

    .menu-check__border:nth-of-type(1) {
        top: 16px;
    }
    .menu-check__border:nth-of-type(2) {
        top: 24px;
    }
    .menu-check__border:nth-of-type(3) {
        top: 32px;
    }

    /* ハンバーガーメニュー インプット非表示 */
    & input {
        display: none;
    }
}

/* ハンバーガーメニュー 未クリック 中身 */
.plazamember_campaign2025 .top-menu {
    position: fixed;
    top: inherit;
    right: 0;
    bottom: 110px;
    height: max-content;
    z-index: 100;
    transform: translateX(100%);
    transition: .3s;

    .top-menu__inner {
        display: flex;
        flex-direction: column;
        align-items: end;
    }

    & a {
        color: #FFF;
        background: #e43f3f;
        border: 2px solid #000;
        padding: .6em 1em .6em 2em;
        display: block;
        border-radius: 100vw 0 0 100vw;
        margin-bottom: 1em;
        box-sizing: border-box;
        box-shadow: 0 .15em 0 0 #000;
        text-align: end;

        /* innerの外のなのでvw */
        font-size: min(3.7vw, 20px);
    }
}

/* ハンバーガーメニュー クリック時 */
.plazamember_campaign2025:has(.menu-check input:checked) .menu-check {
    display: block;
    background: #ffffff;

    .menu-check__border:nth-of-type(1) {
        top: 18px;
        left: 17px;
        transform: translateY(6px) rotate(-45deg);
        width: 30%;
        background: #000;
    }
    .menu-check__border:nth-of-type(2) {
        opacity: 0;
    }
    .menu-check__border:nth-of-type(3) {
        top: 30px;
        left: 17px;
        transform: translateY(-6px) rotate(45deg);
        width: 30%;
        background: #000;
    }
}

.plazamember_campaign2025:has(.menu-check input:checked) .top-menu {
    transform: translateX(0);
    transition: .3s;
}

.plazamember_campaign2025 .menu-gray {
    display: none;
}
.plazamember_campaign2025:has(.menu-check input:checked) .menu-gray {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    background-color: #22222266;
    transition: .3s;
}

/*==============================================
.plazamember_campaign2025 ハンバーガーメニュー END
================================================*/