@charset "utf-8";

#primary { padding: 0; }#cfd-cpn2504
#main {min-height:0;}
#main .breadcrumb {display:none;}

#cfd-cpn2504 {
    width:100%;
    background:#000;
    color:#FFF;
}
#cfd-cpn2504 section * {
    margin:0;
    padding:0;
    box-sizing: border-box;
    font-family:"Helvetica Neue LT W01_35 Thin", "Helvetica Neue LT W05 35 Thin", "RodinCattleyaPro-L{pm}", sans-serif !important;
    line-height:1;
    letter-spacing:0;
}
#cfd-cpn2504 section {
    max-width:750px;
    margin:0 auto;
    padding-left:min(calc((40 /750) * 100vw), 40px);
    padding-right:min(calc((40 /750) * 100vw), 40px);
    background:#FFF;
    color:#000;
}
#cfd-cpn2504 img {
    border: none;
    vertical-align: bottom;
}
#cfd-cpn2504 li {
    list-style:none;
}
#cfd-cpn2504 a {
    color:#000;
    text-decoration:none;
    transition: background 0.3s;
}
#cfd-cpn2504 .txt-en {
    font-size:120%;
    line-height:0.8;
    vertical-align:-3%;
}
#cfd-cpn2504 .ult {
    font-family:"HelveticaNeueW01-UltLt", "Helvetica Neue LT W05 25 Ult Lt", sans-serif !important;
}
#cfd-cpn2504 .thin {
    font-family:"Helvetica Neue LT W01_35 Thin", "Helvetica Neue LT W05 35 Thin", sans-serif !important;
}
#cfd-cpn2504 .section-title {
    width:100%;
    padding:min(calc(1 / 750) * 100vw, 1px) 0;
    border:2px solid #000;
    font-size:min(calc(30 / 750) * 100vw, 30px);
    line-height:calc(40 / 30) !important;
    text-align:center;
}
@media (max-width:750px) {
    #cfd-cpn2504 .section-title {
        border:1px solid #000;
    }
}
#cfd-cpn2504 .yugo {
    font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif !important;
}

/* .header ------------------------------------------------------------*/
#cfd-cpn2504 .header {
    padding-left:0;
    padding-right:0;
    background:#000;
    color:#FFF;
    text-align:center;
}
#cfd-cpn2504 .lp-title {
    font-size:min(calc((52 / 750) * 100vw), 52px);
    line-height:1;
}
#cfd-cpn2504 .lp-title span {
    display:block;
    margin:min(calc((26 / 750) * 100vw), 26px) 0 min(calc((1 / 750) * 100vw), 1px);
    font-size:min(calc((33 / 750) * 100vw), 33px);
    line-height:calc(46 / 33);
    letter-spacing:0.05em;
}
#cfd-cpn2504 .header_date {
    margin:min(calc((5 / 750) * 100vw), 5px) 0 min(calc((34 / 750) * 100vw), 34px);
    font-size:min(calc((33 / 750) * 100vw), 33px);
    line-height:1;
}
#cfd-cpn2504 .header_bottom-text {
    padding:min(calc((74 / 750) * 100vw), 74px) min(calc((40 / 750) * 100vw), 40px) min(calc((85 / 750) * 100vw), 85px);
    background:#FFF;
    color:#000;
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(46 / 30);
    text-align:left;
}
/* .target-item ------------------------------------------------------------*/
#cfd-cpn2504 .target-item {
    padding-bottom:min(calc((75 / 750) * 100vw), 75px);
}
#cfd-cpn2504 .target-item * {
    font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif !important;
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(46 / 30);
}
#cfd-cpn2504 .target-item_wrap {
    display:flex;
    flex-wrap:wrap;
    gap:min(calc((50 / 750) * 100vw), 50px) min(calc((42 / 750) * 100vw), 42px);
    margin-top:min(calc((37 / 750) * 100vw), 37px);
}
#cfd-cpn2504 .target-item_img {
    width:min(calc((296 / 750) * 100vw), 296px);
}
#cfd-cpn2504 .target-item_name {
    display:flex;
    flex-wrap:nowrap;
    align-items: center;
    width:min(calc((330 / 750) * 100vw), 330px);
    height:min(calc((296 / 750) * 100vw), 296px);
}
#cfd-cpn2504 .target-item_name a {
    margin-left:min(calc((36 / 750) * 100vw), 36px);
    letter-spacing:-0.13em;
    text-indent: max(calc((-36 / 750) * 100vw), -36px);
    text-decoration: underline;
    text-decoration-thickness:2px;
    text-underline-offset:min(calc((4 / 750) * 100vw), 4px);
}
@media (max-width:750px) {
    #cfd-cpn2504 .target-item_name a {
        text-decoration-thickness:1px;
    }
}
#cfd-cpn2504 .target-item_name a::before {
    display:inline-block;
    width:min(calc((26 / 750) * 100vw), 26px);
    height:min(calc((26 / 750) * 100vw), 26px);
    margin-right:min(calc((8 / 750) * 100vw), 8px);
    background:#000;
    line-height:calc(46 / 30);
    vertical-align: -8%;
    content:'';
}
/* .special-gift ------------------------------------------------------------*/
#cfd-cpn2504 .special-gift {
    padding-top:min(calc((75 / 750) * 100vw), 75px);
}
#cfd-cpn2504 .special-gift_description {
    margin-top:min(calc((14 / 750) * 100vw), 14px);
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(46 / 30);
}
#cfd-cpn2504 .special-gift_item-wrap {
    display:flex;
    flex-wrap:wrap;
    justify-content: center;
    text-align:center;
}
#cfd-cpn2504 .special-gift_item-wrap.item-top {
    margin-top:min(calc((91 / 750) * 100vw), 91px);
}
#cfd-cpn2504 .special-gift_item-wrap.item-bottom {
    gap:0 min(calc((78 / 750) * 100vw), 78px);
    margin-top:min(calc((126 / 750) * 100vw), 126px);
}
#cfd-cpn2504 .special-gift_count {
    width:100%;
    font-size:min(calc((46 / 750) * 100vw), 46px);
}
#cfd-cpn2504 .special-gift_gift-text {
    width:100%;
    margin-top:min(calc((9 / 750) * 100vw), 9px);
    font-size:min(calc((28 / 750) * 100vw), 28px);
    letter-spacing:0.06em;
}
#cfd-cpn2504 .special-gift_item-wrap.item-top .special-gift_gift-text {
    margin-bottom:min(calc((9 / 750) * 100vw), 9px);
}
#cfd-cpn2504 .special-gift_item-wrap.item-bottom .special-gift_gift-text {
    margin-bottom:min(calc((19 / 750) * 100vw), 19px);
}
#cfd-cpn2504 .special-gift_item-wrap.item-top .special-gift_item {
    width:min(calc((335 / 750) * 100vw), 335px);
}
#cfd-cpn2504 .special-gift_item-wrap.item-bottom .special-gift_item {
    width:min(calc((296 / 750) * 100vw), 296px);
}
#cfd-cpn2504 .special-gift_gift-name {
    margin-top:min(calc((2 / 750) * 100vw), 2px);
    font-size:min(calc((24 / 750) * 100vw), 24px);
}
#cfd-cpn2504 .special-gift_gift-size {
    margin-top:min(calc((14 / 750) * 100vw), 14px);
    font-size:min(calc((20 / 750) * 100vw), 20px);
}
/* .howto-cpn ------------------------------------------------------------*/
#cfd-cpn2504 .howto-cpn {
    padding-top:min(calc((151 / 750) * 100vw), 151px);
}
#cfd-cpn2504 .howto-cpn_order * {
    font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif !important;
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(46 / 30);
}
#cfd-cpn2504 .howto-cpn_order {
    margin-top:min(calc((9 / 750) * 100vw), 9px);
    padding-bottom:min(calc((71 / 750) * 100vw), 31px);
}
#cfd-cpn2504 .howto-cpn_order li {
    margin-left:min(calc((30 / 750) * 100vw), 30px);
    padding:min(calc((5 / 750) * 100vw), 5px) 0;
    text-indent:max(calc((-30 / 750) * 100vw), -30px);
}
#cfd-cpn2504 .howto-cpn_order-wrap {
    padding-top:min(calc((40 / 750) * 100vw), 40px);
    padding-bottom:min(calc((80 / 750) * 100vw), 80px);
}
#cfd-cpn2504 .howto-cpn_order-title {
    padding:min(calc((27 / 750) * 100vw), 27px) 0;
    background: #e3e3e3;
    font-size:min(calc((46 / 750) * 100vw), 46px);
    text-align:center;
}
#cfd-cpn2504 .howto-cpn_order-ex-title {
    width:min(calc((300 / 750) * 100vw), 300px);
    margin-top:min(calc((50 / 750) * 100vw), 50px);
    margin-bottom:min(calc((37 / 750) * 100vw), 37px);
    margin-inline:auto;
    padding:min(calc((1 / 750) * 100vw), 1px);
    border:2px solid #000;
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(40 / 30);
    text-align:center;
}
@media (max-width:750px) {
    #cfd-cpn2504 .howto-cpn_order-ex-title {
        border:1px solid #000;
    }
}
#cfd-cpn2504 .howto-cpn_order-item {
    width:min(calc((296 / 750) * 100vw), 296px);
    margin-inline:auto;
}
#cfd-cpn2504 .howto-cpn_order-item-text {
    margin-top:min(calc((2 / 750) * 100vw), 2px);
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(46 / 30);
    letter-spacing:-0.05em;
    text-align:center;
}
#cfd-cpn2504 .howto-cpn_order-arrow {
    width:min(calc((102 / 750) * 100vw), 102px);
    margin-top:min(calc((47 / 750) * 100vw), 47px);
    margin-inline:auto;
}
#cfd-cpn2504 .howto-cpn_order-sg-title {
    margin-top:min(calc((54 / 750) * 100vw), 54px);
    margin-bottom:min(calc((24 / 750) * 100vw), 24px);
    padding:min(calc((1 / 750) * 100vw), 1px);
    border:2px solid #000;
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(40 / 30);
    text-align:center;
}
@media (max-width:750px) {
    #cfd-cpn2504 .howto-cpn_order-sg-title {
        border:1px solid #000;
    }
}
#cfd-cpn2504 .howto-cpn_order-plus {
    width:min(calc((54 / 750) * 100vw), 54px);
    margin-top:min(calc((12 / 750) * 100vw), 12px);
    margin-bottom:min(calc((1 / 750) * 100vw), 1px);
    margin-inline:auto;
}
#cfd-cpn2504 .howto-cpn_order-bottom-text {
    margin-top:min(calc((24 / 750) * 100vw), 24px);
    font-size:min(calc((30 / 750) * 100vw), 30px);
    line-height:calc(46 / 30);
}
#cfd-cpn2504 .howto-cpn_order-item-fbox {
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
}
#cfd-cpn2504 .howto-cpn_order-item-fbox img {
    width:min(calc((296 / 750) * 100vw), 296px);
}
#cfd-cpn2504 .howto-cpn_attention {
    padding-top:min(calc((9 / 750) * 100vw), 9px);
    padding-bottom:min(calc((192 / 750) * 100vw), 192px);
}
#cfd-cpn2504 .howto-cpn_attention * {
    font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif !important;
    font-size:min(calc((26 / 750) * 100vw), 26px);
    line-height:calc(40 / 26);
}
#cfd-cpn2504 .howto-cpn_attention-text li {
    margin-left:min(calc((26 / 750) * 100vw), 26px);
    padding:min(calc((5 / 750) * 100vw), 5px) 0;
    text-indent:max(calc((-26 / 750) * 100vw), -26px);
}
#cfd-cpn2504 .howto-cpn_attention-text li::before {
    content:'＊';
}
#cfd-cpn2504 .howto-cpn_attention-text-child li {
    margin-left:0;
}
#cfd-cpn2504 .howto-cpn_attention-text-child li::before {
    content:'・';
}
#cfd-cpn2504 .howto-cpn_attention-text-child .line-link {
    display:block;
    position:relative;
    margin-top:min(calc((20 / 750) * 100vw), 20px);
    margin-bottom:min(calc((97 / 750) * 100vw), 97px);
    margin-left:max(calc((-26 / 750) * 100vw), -26px);
    padding:min(calc((15.5 / 750) * 100vw), 15.5px) 0;
    border:2px solid #000;
    width:min(calc((670 / 750) * 100vw), 670px);
    font-family: "Helvetica Neue LT W01_35 Thin", "Helvetica Neue LT W05 35 Thin", "RodinCattleyaPro-L{pm}", sans-serif !important;
    font-size:min(calc((28 / 750) * 100vw), 28px);
    text-align:center;
}
@media (max-width:750px) {
    #cfd-cpn2504 .howto-cpn_attention-text-child .line-link {
        border:1px solid #000;
    }
}
#cfd-cpn2504 .howto-cpn_attention-text-child .line-link::after {
    position:absolute;
    top:0;
    bottom:0;
    right:min(calc((40 / 750) * 100vw), 40px);
    width:min(calc((14 / 750) * 100vw), 14px);
    height:min(calc((25 / 750) * 100vw), 25px);
    margin-block:auto;
    background:url(btn-arrow.svg) no-repeat 50% 50% / contain;
    content:'';
}
#cfd-cpn2504 .howto-cpn_attention-text-child .line-link span {
    font-family: "Helvetica Neue LT W01_35 Thin", "Helvetica Neue LT W05 35 Thin", sans-serif !important;
    font-size:120%;
    line-height:0.8;
    vertical-align: -3%;
}

