@charset "UTF-8";
/* 共通 */
.sp {
    display: none;
}
h1.block-event-page--header {
    display: none;
}
.container {
    width: 100%;
    margin: 0 auto;
    
}
.pane-main {
    padding-top: 0;
    max-width: none;
    background-color: #000231;
    padding-bottom: 100px;
}
.content_inner {
    width: 1200px;
    margin: 0 auto;
}
.p-block-top-event-more {
    display: none;
}
.content-box .content_ttl {
    color: #ECD77D;
    font-family: "Noto Serif JP", serif;
    text-align: center;
    font-weight: normal;
    margin-bottom: 40px;
}
.content-box .content_ttl span {
    position: relative;
    display: inline-block;
    margin-bottom: 20px;
}
.content-box .content_ttl span::after {
    content: "";
    position: absolute;
    display: block;
    width: 65px;
    height: 2px;
    background-color: #ECD77D;
    left: 50%;
    bottom: -14px;
    transform: translateX(-50%);
}

/* pc */
[data-browse-mode="P"] .content-box {
    margin-top: 100px;
}
[data-browse-mode="P"] .content-box .content_ttl {
    font-size: 35px;
}
[data-browse-mode="P"] .content-box .content_ttl span {
    font-size: 18px;
}
[data-browse-mode="P"] .pane-right-menu {
    margin-top: 50px;
}
[data-browse-mode="P"] .block-recent-item {
    width: 1200px;
    margin: 0 auto;
}
/* sp */
[data-browse-mode="S"] .pc {
   display: none; 
}
[data-browse-mode="S"] .sp {
   display: block; 
}
[data-browse-mode="S"] .block-event-page {
   padding: 0 0 50px;
   background-color: #000231; 
}
[data-browse-mode="S"] .content_inner {
    width: 100%;
    padding: 0 14px;
}
[data-browse-mode="S"] .content-box {
    margin-top: 50px;
}
[data-browse-mode="S"] .content-box .content_ttl {
    font-size: 22px;
    margin-bottom: 30px;
}
[data-browse-mode="S"] .content-box .content_ttl span {
    font-size: 13px;
}
[data-browse-mode="S"] .pane-footer {
    margin-top: 0;
}
/*------------ 
mv
--------------------- */
.mv {
    text-align: center;
}
.mv img {
    margin: 0 auto; 
}
/*------------ 
アンカー
--------------------- */
.anchor {
    font-family: "Noto Serif JP", serif;
}
.anchor_txt {
    text-align: center;
    color: #ffffff;
    font-size: 20px;
    margin-top: 30px;
}
.anchor_list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 50px;
}
.anchor_list li {
    width: calc((100% - 60px) / 5);
}
.anchor_list a {
    position: relative;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    text-align: center;
    display: block;
}
.anchor_list a span {
    position: relative;
    top: -3px;
}
.anchor_list a::after {
    position: absolute;
    content: "";
    left: 50%;
    bottom: 16px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000A4C;
    border-right: 2px solid #000A4C;
    transform: translate(-50%, 0) rotate(135deg);
}
/* pc */
[data-browse-mode="P"] .anchor_list a {
    font-size: 20px;
    background-image: url(/shop_assets/img/event/premium/anchor_pc.png);
    padding: 26.5px 10px;
}
/* sp */
[data-browse-mode="S"] .anchor .content_inner {
    padding: 0;
}
[data-browse-mode="S"] .anchor_txt {
    font-size: 17px;
    padding: 0 10px;
}
[data-browse-mode="S"] .anchor_list {
    gap: 10px;
    padding: 0 25px;
    margin-top: 40px;
}
[data-browse-mode="S"] .anchor_list li {
    width: calc((100% - 10px) / 2);
    display: flex;
    justify-content: center;
}
[data-browse-mode="S"] .anchor_list a {
    background-image: url(/shop_assets/img/event/premium/anchor_sp.png);
    display: flex;
    justify-content: center;
    width: calc(316px / 2);
    height: calc(116px / 2);
    font-size: 16px;
    padding: 18px 10px;
}
[data-browse-mode="S"] .anchor_list a::after {
    bottom: 10px;
}
/*------------ 
商品
--------------------- */
.event__titile {
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Noto Serif JP", serif;
    line-height: 1;
    color: #ffffff;
}
/* pc */
[data-browse-mode="P"] .item-box {
    margin: 100px auto 0;
}
[data-browse-mode="P"] .event__titile {
    height: 59px;
    font-size: 30px;
    background-image: url(/shop_assets/img/event/premium/heading_pc.png);
    padding: 10px 20px;
    margin-bottom: 35px;
}
[data-browse-mode="P"] .event__titile span {
    font-size: 18px;
    margin-right: 20px;
}
/* sp */
[data-browse-mode="S"] .item-box {
    margin: 50px auto 0;
}
[data-browse-mode="S"] .event__titile {
    font-size: 20px;
    background-image: url(/shop_assets/img/event/premium/heading_sp.png);
    padding: 10px 10px;
    margin: 0 auto 30px;
    box-sizing: border-box;
    width: calc(640px / 2);
    height: calc(91px / 2);
}
[data-browse-mode="S"] .event__titile span {
    font-size: 14px;
    margin-right: 10px;
}
/* [data-browse-mode="S"] .block-thumbnail-t.swiper-container {
    margin: 0;
}
[data-browse-mode="S"] .block-thumbnail-t.swiper-container .block-thumbnail-t--items.swiper-wrapper {
    flex-wrap: wrap;
    gap: 10px;  
}
[data-browse-mode="S"] .block-thumbnail-t.swiper-container li {
    flex: 0 0 calc((100% - 10px) / 2);
    max-width: calc((100% - 10px) / 2);
    width: calc((100% - 10px) / 2);
} */
/*------------ 
寄付上限額を調べる
--------------------- */
.link-list {
    display: flex;
    gap: 30px;
    justify-content: center;
}
.link-list a {
    position: relative;
    background-repeat: no-repeat;
    background-size: contain;
    text-align: center;
    display: block;
    font-family: "Noto Serif JP", serif;
}
.link-list .black_btn {
    color: #ffffff;
}
.link-list .white_btn {
    color: #000231;
}
.link-list a::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 30px;
    width: 10px;
    height: 10px;
    transform: translate(0, -50%) rotate(45deg);
}
.link-list .black_btn::after {
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}
.link-list .white_btn::after {
    border-top: 2px solid #000231;
    border-right: 2px solid #000231;
}


/* pc */
[data-browse-mode="P"] .link-list a {
    font-size: 18px;
    width: 287px;
    padding: 11.5px 40px 12.5px;
}
[data-browse-mode="P"] .link-list .black_btn {
    background-image: url(/shop_assets/img/event/premium/btn_01_pc.png);
}
[data-browse-mode="P"] .link-list .white_btn {
    background-image: url(/shop_assets/img/event/premium/btn_02_pc.png);
}
/* sp */
[data-browse-mode="S"] .link-list {
    flex-direction: column;
    align-items: center;
    gap: 15px;
}
[data-browse-mode="S"] .link-list a {
    width: calc(513px / 2);
    height: calc(94px / 2);
    font-size: 17px;
    padding: 10px;
}
[data-browse-mode="S"] .link-list .black_btn {
    background-image: url(/shop_assets/img/event/premium/btn_01_sp.png);
}
[data-browse-mode="S"] .link-list .white_btn {
    background-image: url(/shop_assets/img/event/premium/btn_02_sp.png);
}
/*------------ 
その他おすすめ情報はこちら
--------------------- */
.bnr-list {
    display: flex;
    gap: 30px;
}
[data-browse-mode="S"] .bnr-list {
    flex-direction: column;
    gap: 20px;
}
[data-browse-mode="S"] .bnr-list li {
    margin: 0 auto;
}
/*------------ 
追従ボタン
--------------------- */
[data-browse-mode="P"] .btn_wrapper {
    display: none;
}
/* sp */
[data-browse-mode="S"] .btn_wrapper {
    position: fixed;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
[data-browse-mode="S"] .btn_wrapper.is-fixed {
    opacity: 1;
    visibility: visible;
}
[data-browse-mode="S"] .btn_wrapper .black_btn {
    display: block;
    width: calc(510px / 2);
    height: calc(91px / 2);
    font-size: 17px;
    padding: 10px;
    background-image: url(/shop_assets/img/event/premium/btn_01_sp.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: relative;
    color: #ffffff;
    text-align: center;
}
[data-browse-mode="S"] .btn_wrapper .black_btn::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 30px;
    width: 10px;
    height: 10px;
    transform: translate(0, -50%) rotate(315deg);
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}