@charset "utf-8";
/*------------------------------------------------------------
    special2025(mega)
------------------------------------------------------------*/

/* common */
.special.special2025 .content_block .btn_area .top_txt {
    font-size: 1.6rem;
    color: #00B11B;
    text-align: center;
    margin-bottom: 1.6rem;
}

.special.special2025 .content_block .btn_area .btn {
    background-color: #00B11B;
    height: 7.4rem;
    max-width: 50rem;
    font-size: 3.2rem;
    box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
}

@media all and (min-width: 520px) {
    .special.special2025 .content_block .btn_area .btn:hover {
        background-color: #0FA325;
    }
}


@media all and (max-width: 519px) {
    .special.special2025 .content_block .btn_area .top_txt {
        margin-bottom: 1.0rem;
        font-size: 1.3rem;
    }

    .special.special2025 .content_block .btn_area .btn {
        width: 30.3rem;
        height: 5rem;
        max-width: none;
        font-size: 1.8rem;
    }
}

/* content_wrapper bg */
.special.special2025 {}

.special.special2025 .content_wrapper.-gray {
    font-family: "IBM Plex Sans JP", sans-serif;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9);
    padding-bottom: 12.7rem;
    background-color: #363636;
    background: #1D1D1D url(../images/bg_gray.png) repeat top 1.8rem left / 12.1rem;
}

.special.special2025 .content_wrapper.-gray.last {
    padding-bottom: 7rem;
}

.special.special2025 .content_wrapper.-yellow {
    position: relative;
    background: #FFEA00 url(../images/bg_yellow.png) repeat top left / 6rem;
    padding: 10rem 0 11.4rem;
    background-color: #FFEA00;
}

.special.special2025 .content_wrapper.-yellow::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    top: -2.9rem;
    left: 0;
    height: 2.9rem;
    background: url(../images/bg_yellow_top.png) repeat-x top left / contain;
}

@media all and (max-width: 519px) {
    .special.special2025 .content_wrapper.-gray {
        padding-bottom: 11.6rem;
        background-position: top -0.9rem left -1.7rem;
    }

    .special.special2025 .content_wrapper.-gray.last {
        padding-bottom: 9.5rem;
    }

    .special.special2025 .content_wrapper.-yellow {
        padding: 6.7rem 0.8rem 4.6rem;
    }

    .special.special2025 .content_wrapper.-yellow::before {
        background: url(../images/bg_yellow_top_sp.png) repeat-x top left -5rem / contain;
        top: -2.9rem;
        height: 2.9rem;
    }
}

/* info_area */
.special.special2025 .info_area {
    box-sizing: border-box;
    background-color: #E6E6E6;
    padding: calc(3.5rem / 2) 0;
}

.special.special2025 .info_area .marquee_list>li {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 2.7rem;
}

@media all and (max-width: 519px) {
    .special.special2025 .info_area {
        padding: calc(3.8rem / 2) 0;
    }

    .special.special2025 .info_area .content_block {
        margin: 0;
    }

    .special.special2025 .info_area .marquee_list {
        display: flex;
        white-space: nowrap;
        overflow: hidden;
        gap: 1.6rem;
    }

    .special.special2025 .info_area .marquee_list>li {
        font-size: 1.6rem;
        line-height: 2.4rem;
        animation: marquee 8s linear infinite;
    }

    @keyframes marquee {
        0% {
            translate: 0;
        }

        100% {
            translate: calc(-100% - 1.6rem);
        }
    }
}

/* kv_area */
.special.special2025 .kv_area .-img {
    width: 65rem;
    padding-top: 7.6rem;
    margin: auto;
}

.special.special2025 .kv_area .-lead {
    margin-top: 7.6rem;
    font-size: 2.4rem;
    line-height: 2.05;
    text-align: center;
}

.special.special2025 .kv_area .-lead >.indent_list{
    font-size: inherit;
    font-weight: 700;
    color: #ff0000;
}

@media all and (max-width: 519px) {
    .special.special2025 .kv_area .-img {
        width: 100%;
        padding-top: 0;
    }

    .special.special2025 .kv_area .-lead {
        margin-top: 5.5rem;
        font-size: 2rem;
        line-height: 1.8;
        padding: 0 3.4rem;
    }
}

/* anthor */

.special.special2025 .anchor {
    background: url(../images/bg_anchor.png) no-repeat top left / contain;
    margin-top: 4.8rem;
    padding: 4.3rem 3.0rem 4.0rem 5.0rem;
}

.special.special2025 .anchor .link_list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem 2rem;
}

.special.special2025 .anchor .link_list>li {
    flex-grow: 1;
    display: flex;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.4);
    color: rgba(255, 255, 255, 0.9);
    transition: 0.3s;
    clip-path: polygon(0% 0%, calc(100% - 3.4rem) 0, 100% 50%, calc(100% - 3.4rem) 100%, 0% 100%);
}

@media all and (min-width: 520px) {
    .special.special2025 .anchor .link_list>li:nth-child(1) {
        width: 34%;
    }

    .special.special2025 .anchor .link_list>li:nth-child(2) {
        width: 23%;
    }

    .special.special2025 .anchor .link_list>li:nth-child(3) {
        width: 29.2%;
    }

    .special.special2025 .anchor .link_list>li:nth-child(4) {
        width: 59%;
    }

    .special.special2025 .anchor .link_list>li:nth-child(5) {
        width: 32.7%;
    }

    .special.special2025 .anchor .link_list>li:has(a:hover) {
        background-color: rgba(0, 133, 144, 0.4);
    }
}

.special.special2025 .anchor .link_list>li>a {
    display: flex;
    align-items: center;
    width: 100%;
    height: 6.8rem;
    padding: 0 1.9rem 0 1.6rem;
    color: rgba(255, 255, 255, 0.9);
}

@media all and (min-width: 520px) and (max-width: 1247px) {
    .special.special2025 .anchor {
        padding: 3.4483vw 2.4058vw 3.2077vw 4.0096vw;
    }

    .special.special2025 .anchor .link_list {
        row-gap: 1.925vw;
    }

    .special.special2025 .anchor .link_list>li>a {
        height: 5.454vw;
    }
}

@media all and (max-width: 519px) {
    .special.special2025 .anchor {
        background: url(../images/bg_anchor_sp.png) no-repeat top left / contain;
        height: auto;
        margin-top: 6.5rem;
        padding: 3.6rem 2.0rem;
    }

    .special.special2025 .anchor .link_list {
        gap: 1rem;
    }

    .special.special2025 .anchor .link_list>li {
        clip-path: polygon(0% 0%, calc(100% - 2.6rem) 0, 100% 50%, calc(100% - 2.6rem) 100%, 0% 100%);
    }

    .special.special2025 .anchor .link_list>li>a {
        height: 5.6rem;
        padding: 0 1.9rem 0 1.4rem;
    }

    .special.special2025 .anchor .link_list>li:nth-child(4)>a {
        height: 8rem;
    }
}

/* border_corners_base */
.special.special2025 .border_corners {
    position: relative;
    background: #000;
    margin-top: 16.7rem;
    padding: 10.1rem 4.5rem 9.7rem;
    border: 0.5rem solid #797979;
}

.special.special2025 .border_corners .border_corners-left_top,
.special.special2025 .border_corners .border_corners-right_top,
.special.special2025 .border_corners .border_corners-left_bottom,
.special.special2025 .border_corners .border_corners-right_bottom {
    position: absolute;
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    border: 0.5rem solid #fff;
}

.special.special2025 .border_corners .border_corners-left_top {
    top: -0.5rem;
    left: -0.5rem;
    border-bottom: none;
    border-right: none;
}

.special.special2025 .border_corners .border_corners-right_top {
    top: -0.5rem;
    right: -0.5rem;
    border-bottom: none;
    border-left: none;
}

.special.special2025 .border_corners .border_corners-left_bottom {
    bottom: -0.5rem;
    left: -0.5rem;
    border-top: none;
    border-right: none;
}

.special.special2025 .border_corners .border_corners-right_bottom {
    bottom: -0.5rem;
    right: -0.5rem;
    border-top: none;
    border-left: none;
}

.special.special2025 .border_corners .-title {
    position: absolute;
    max-width: 108.4rem;
    margin: auto;
    right: 0;
    left: 0;
}

.special.special2025 .border_corners .btn_area {
    margin-top: 7.8rem;
}

.special.special2025 .border_corners .btn_area .link_list .item {
    text-align: center;
}

.special.special2025 .border_corners .img_btn-lg {
    display: inline-block;
    width: 100%;
    max-width: 95.7rem;
    color: transparent;
    line-height: 10rem;
    background: url(../images/btn_introduction.png) no-repeat top center / contain;
}

@media all and (min-width: 520px) {
    .special.special2025 .border_corners .img_btn-lg:hover {
        background: url(../images/btn_introduction_hover.png) no-repeat top center / contain;
    }
}

@media all and (max-width: 519px) {
    .special.special2025 .border_corners {
        margin-top: 11.4rem;
        padding: 7.8rem 1.5rem 4.4rem;
        border: 0.5rem solid #797979;
    }

    .special.special2025 .border_corners .border_corners-left_top {
        display: none;
    }

    .special.special2025 .border_corners .border_corners-right_top {
        display: none;
    }

    .special.special2025 .border_corners .-title {
        width: calc(100% + 1.4rem);
        left: -0.9rem;
    }

    .special.special2025 .border_corners .btn_area {
        margin-top: 3.8rem;
    }

    .special.special2025 .border_corners .img_btn-lg {
        max-width: none;
        line-height: 1;
        height: 9rem;
        background: url(../images/btn_introduction_sp.png) no-repeat top center / contain;
    }
}

/* mega */
.special.special2025 .mega .-title {
    top: -7.1rem;
}

.special.special2025 .mega .-lead {
    font-size: 2rem;
    line-height: 1.95;
}

@media all and (max-width: 519px) {
    .special.special2025 .mega .-title {}

    .special.special2025 .mega .-lead {
        font-size: 1.6rem;
        line-height: 2;
    }
}

/* evolution_flow */
.special.special2025 .mega .evolution_flow {
    padding: 0 3.2rem;
    margin-top: 6.3rem;
}

@media all and (max-width: 519px) {
    .special.special2025 .mega .evolution_flow {
        padding: 0 1.2rem;
        margin-top: 1.8rem;
    }
}

/* condition_area */
.special.special2025 .mega .condition_area {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 5.4rem;
    padding: 3.5rem 4.5rem;
    background: linear-gradient(0deg, rgba(57, 57, 57, 1) 0%, rgba(113, 113, 113, 1) 100%);
    clip-path: polygon(2.8rem 0, 100% 0, 100% calc(100% - 2.8rem), calc(100% - 2.8rem) 100%, 0 100%, 0 2.8rem);
}

.special.special2025 .mega .condition_area .inner_block {
    padding: 0.1rem 2.5rem 1.5rem;
    margin: 0 2.5rem;
    order: 2;
    border-right: 1px dotted #fff;
    border-left: 1px dotted #fff;
}

.special.special2025 .mega .condition_area .inner_block .-sub_title {
    max-width: 33.6rem;
    margin: 0 auto 1.6rem;
}

.special.special2025 .mega .condition_area .inner_block .condition_list {
    font-size: 1.6rem;
    line-height: 1.85;
}

.special.special2025 .mega .condition_area .keystone {
    order: 1;
    max-width: 9.5rem;
}

.special.special2025 .mega .condition_area .megastone {
    order: 3;
    max-width: 9.5rem;
}

.special.special2025 .mega .sub_lead {
    font-size: 1.6rem;
    text-align: center;
    line-height: 1.75;
    margin: 3rem auto 0;
}

@media all and (max-width: 519px) {
    .special.special2025 .mega .condition_area {
        flex-wrap: wrap;
        margin-top: 3.8rem;
        padding: 2.2rem 1.2rem;
    }

    .special.special2025 .mega .condition_area .inner_block {
        order: 1;
        padding: 0;
        margin: 0;
        border-right: none;
        border-left: none;
    }

    .special.special2025 .mega .condition_area .inner_block .-sub_title {
        max-width: 21.6rem;
        margin: 0 auto 2rem;
    }

    .special.special2025 .mega .condition_area .inner_block .condition_list {
        font-size: 1.5rem;
        line-height: 1.85;
    }

    .special.special2025 .mega .condition_area .keystone {
        order: 2;
        box-sizing: content-box;
        flex-shrink: 0;
        width: 6.8rem;
        padding-top: 1rem;
        padding-right: 5.1rem;
        margin-right: 5.1rem;
        border-right: 1px dotted #fff;
    }

    .special.special2025 .mega .condition_area .megastone {
        order: 3;
        width: 6.8rem;
        padding-top: 1rem;
        max-width: 9.5rem;
    }

    .special.special2025 .mega .sub_lead {
        font-size: 1.3rem;
    }
}

/* introduction_area */
.special.special2025 .mega .introduction_area {}

.special.special2025 .mega .introduction_area .-sub_title {
    max-width: 59.4rem;
    margin: 10.2rem auto 5.8rem;
}

.special.special2025 .mega .introduction_area .carousel_wrapper {
    display: flex;
    gap: 0 1.4rem;
}

.special.special2025 .mega .introduction_area .main_view {
    width: 67.2rem;
}

.special.special2025 .mega .introduction_area .thumbs {
    width: 39.8rem;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li {
    position: relative;
    width: 12.6rem;
    aspect-ratio: 1 / 1;
    transition: 0.3s;
    background: #fff url(../images/carousel/bg_thumb.png) no-repeat top left / contain;
    cursor: pointer;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li.current {
    background: #fff url(../images/carousel/bg_thumb_current.png) no-repeat top left / contain;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li.none {
    background: transparent;
    pointer-events: none;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li::before,
.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    box-sizing: border-box;
    border: 0.4rem solid #fff;
    transition: 0.3s;
    top: 0;
    left: 0;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li::after {
    border: none;
    opacity: 0;
    background: url(../images/carousel/border_thumb_hover.png) no-repeat top left / contain;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li.current::after {
    opacity: 1;
    background: url(../images/carousel/border_thumb_hover.png) no-repeat top left / contain;
}

.special.special2025 .mega .introduction_area .thumbs .thumbs_list>li.none:before {
    border: none;
}

@media all and (min-width: 520px) and (max-width: 1247px) {
    .special.special2025 .mega .introduction_area .main_view {
        width: 61.993%;
        max-width: 672px;
    }

    .special.special2025 .mega .introduction_area .thumbs {
        width: 36.717%;
        max-width: 398px;
    }

    .special.special2025 .mega .introduction_area .thumbs .thumbs_list {
        height: 100%;
        justify-content: space-between;
        align-content: space-between;
    }

    .special.special2025 .mega .introduction_area .thumbs .thumbs_list>li {
        width: calc((100% - 2rem) / 3);
    }
}

@media all and (min-width: 520px) {
    .special.special2025 .mega .introduction_area .thumbs .thumbs_list>li:hover::after {
        opacity: 1;
    }
}

@media all and (max-width: 519px) {
    .special.special2025 .mega .introduction_area .-sub_title {
        margin: 3rem auto 2.8rem;
    }

    .special.special2025 .mega .introduction_area .carousel_wrapper {
        flex-direction: column;
        gap: 1.2rem;
    }

    .special.special2025 .mega .introduction_area .main_view,
    .special.special2025 .mega .introduction_area .thumbs {
        width: 100%;
    }

    .special.special2025 .mega .introduction_area .thumbs .thumbs_list {
        width: 32rem;
        gap: 0.5rem;
    }

    .special.special2025 .mega .introduction_area .thumbs .thumbs_list>li {
        width: 6rem;
    }

    .special.special2025 .mega .introduction_area .thumbs .thumbs_list>li::before,
    .special.special2025 .mega .introduction_area .thumbs .thumbs_list>li::after {
        border-width: 0.2rem;
    }
}

/* shopping */
.special.special2025 .shopping {
    margin-top: 18.7rem;
    padding-top: 13.6rem;
    padding-bottom: 8.6rem;
}

.special.special2025 .shopping .-title {
    top: -9.4rem;
}

.special.special2025 .shopping .-img {
    max-width: 80rem;
    margin: 0 auto 7.7rem;
}

.special.special2025 .shopping .-txt {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.95;
    margin-bottom: 2.5rem;
}

.special.special2025 .shopping .-txt >.indent_list{
    font-size: inherit;
    font-weight: 700;
    color: #ff0000;
}

.special.special2025 .shopping .indent_list {
    font-size: 1.5rem;
    line-height: 1.95;
}

.special.special2025 .shopping .note_list {
    margin-top: 5.1rem;
    padding: 4.2rem 4.2rem 4.6rem 6.6rem;
    background-color: #262626;
    border: 1px solid #717171;
    font-weight: 500;
    line-height: 2;
}

.special.special2025 .shopping .btn_area {
    margin-top: 5.6rem;
}

.special.special2025 .shopping .img_btn-lg {
    width: 83rem;
    background: url(../images/btn_shopping.png) no-repeat top center / contain;
}

@media all and (min-width: 520px) {
    .special.special2025 .shopping .img_btn-lg:hover {
        background: url(../images/btn_shopping_hover.png) no-repeat top center / contain;
    }
}

@media all and (max-width: 519px) {
    .special.special2025 .shopping {
        margin-top: 10rem;
        padding-top: 6.8rem;
        padding-bottom: 4.8rem;
    }

    .special.special2025 .shopping .-title {
        top: -7.4rem;
    }

    .special.special2025 .shopping .-img {
        margin-bottom: 4.6rem;
    }

    .special.special2025 .shopping .-txt {
        font-size: 1.6rem;
        line-height: 2;
        margin-bottom: 0;
    }

    .special.special2025 .shopping .indent_list {
        font-size: 1.2rem;
        line-height: 1.8;
    }

    .special.special2025 .shopping .note_list {
        margin-top: 2.4rem;
        padding: 1.9rem 1.6rem 1.9rem 3.2rem;
        line-height: 1.67;
    }

    .special.special2025 .shopping .btn_area {
        margin-top: 3.1rem;
    }

    .special.special2025 .shopping .img_btn-lg {
        width: 100%;
        background: url(../images/btn_shopping_sp.png) no-repeat top center / contain;
    }
}

/* goods */
.special.special2025 .goods {
    margin-top: 17rem;
    padding-top: 13.6rem;
    padding-bottom: 12.4rem;
}

.special.special2025 .goods .-title {
    top: -9.2rem;
}

.special.special2025 .goods .goods_list {
    display: flex;
    flex-wrap: wrap;
    gap: 8.2rem 5.2rem;
}

.special.special2025 .goods .goods_list .item {
    width: calc((100% - 5.2rem) / 2);
    font-size: 1.8rem;
}

.special.special2025 .goods .goods_list .-img {}

.special.special2025 .goods .goods_list .-txt {
    line-height: 1.9;
    margin: 3.6rem auto 3.2rem;
}

.special.special2025 .goods .goods_list .img_btn {
    display: block;
    width: 100%;
    color: transparent;
    height: 6.4rem;
    transition: 0.3s;
    background: url(../images/btn_goods.png) no-repeat top center / contain;
}

@media all and (min-width: 520px) {
    .special.special2025 .goods .goods_list .img_btn:hover {
        background: url(../images/btn_goods_hover.png) no-repeat top center / contain;
    }
}

@media all and (max-width: 519px) {
    .special.special2025 .goods {
        margin-top: 12.9rem;
        padding-top: 7.3rem;
        padding-bottom: 6.4rem;
    }

    .special.special2025 .goods .-title {
        top: -7.2rem;
    }

    .special.special2025 .goods .goods_list {
        display: flex;
        flex-wrap: wrap;
        gap: 4.8rem;
    }

    .special.special2025 .goods .goods_list .item {
        width: 51.6rem;
        font-size: 1.6rem;
    }

    .special.special2025 .goods .goods_list .-img {}

    .special.special2025 .goods .goods_list .-txt {
        line-height: 2;
        margin: 2.2rem auto 1.6rem;
    }

    .special.special2025 .goods .goods_list .img_btn {
        height: 5.1rem;
        background: url(../images/btn_goods_sp.png) no-repeat top center / contain;

    }

}

/* order */
.special.special2025 .order {
    margin-top: 14.2rem;
    padding-top: 14rem;
    padding-bottom: 7.3rem;
}

.special.special2025 .order .-title {
    top: -4.8rem;
}

.special.special2025 .order .-img {
    margin: auto;
    max-width: 80rem;
    box-shadow: #fff 0 0 5rem;
}

.special.special2025 .order .product_area {
    margin-top: 6.3rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 3rem;
}

.special.special2025 .order .product_area .-sub_title {
    width: 23rem;
    margin: 0 auto 3.3rem;
}

.special.special2025 .order .product_area .info_list {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 4rem 2.6rem;
}

.special.special2025 .order .product_area .info_list .-label {
    width: 5em;
    flex-shrink: 0;
}

.special.special2025 .order .product_area .info_list .-val {
    width: calc(100% - (3rem + 5em));
}

.special.special2025 .order .product_area .info_list .-val .indent_list {
    font-size: 1.5rem;
    margin-top: 0.6rem;
}

.special.special2025 .order .product_area .info_list .product_title {
    letter-spacing: 0.02em;
}

.special.special2025 .order .product_area .info_list .packages {
    max-width: calc(38.9rem * 2 + 6.7rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.special.special2025 .order .product_area .info_list .packages .-inner {
    width: 38.9rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    line-height: 2;
}

.special.special2025 .order .product_area .info_list .packages .package_img {
    width: 18.8rem;
    filter: drop-shadow(0 0 1.2rem #fff);
}

.special.special2025 .order .product_area .info_list .packages .-inner>p {
    width: 17.3rem;
}

.special.special2025 .order .mailmagazine_area {
    background: #fff;
    border: 0.8rem solid #45A365;
    border-radius: 2rem;
    margin-top: 7.6rem;
    padding: 5.7rem 0;
    font-size: 2.0rem;
    line-height: 1.85;
    text-align: center;
    color: #000;
}

.special.special2025 .order .mailmagazine_area .inner_block {
    position: relative;
}

.special.special2025 .order .mailmagazine_area .inner_block .btn_area {
    margin-top: 1.7rem;
}

.special.special2025 .order .mailmagazine_area .inner_block .btn_area .top_txt {
    margin-bottom: 0.6rem;
}

.special.special2025 .order .mailmagazine_area .inner_block:before,
.special.special2025 .order .mailmagazine_area .inner_block:after {
    content: "";
    position: absolute;
    display: block;
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
}

.special.special2025 .order .mailmagazine_area .inner_block:before {
    background-image: url(../images/img_order_mailmagazine01.png);
    width: 14.1%;
    max-width: 15rem;
    height: 17.7rem;
    top: -2.4rem;
    left: 8.9rem;
}

.special.special2025 .order .mailmagazine_area .inner_block:after {
    background-image: url(../images/img_order_mailmagazine02.png);
    width: 19.8%;
    max-width: 21.1rem;
    height: 22.6rem;
    top: -2.4rem;
    right: 4.5rem;
}

.special.special2025 .order .mailmagazine_area .inner_block .snsUl {
    margin: 4rem auto;
}

.special.special2025 .order .mailmagazine_area .inner_block .snsUl .item {
    width: 6rem;
}

.special.special2025 .order .mailmagazine_area .inner_block .btn_area .btn.blank {
    position: relative;
    max-width: 70rem;
    border: 0.4rem solid rgba(255, 255, 255, 0.4);
}

.special.special2025 .order .mailmagazine_area .inner_block .btn_area .btn.blank::after {
    content: "";
    position: absolute;
    display: block;
    background: url(../../common-n/images/icon_blank_wh.png) no-repeat center / contain;
    width: 2rem;
    aspect-ratio: 1 / 1;
    top: 0;
    bottom: 0;
    right: 5.7rem;
    margin: auto;

}

.special.special2025 .order .copyright {
    margin-top: 4.1rem;
    line-height: 1.9;
}

@media all and (max-width: 519px) {
    .special.special2025 .order {
        margin-top: 13.1rem;
        padding-top: 6.2rem;
        padding-bottom: 3.1rem;
    }

    .special.special2025 .order .-title {
        top: -7.2rem;
    }

    .special.special2025 .order .-img {
        box-shadow: #fff 0 0 2rem;
    }

    .special.special2025 .order .product_area {
        margin-top: 3.1rem;
        font-size: 1.6rem;
        line-height: 2.4rem;
    }

    .special.special2025 .order .product_area .-sub_title {
        width: 20.2rem;
        margin-bottom: 3.1rem;
    }

    .special.special2025 .order .product_area .info_list {
        flex-direction: column;
        gap: 2.2rem;
    }

    .special.special2025 .order .product_area .info_list .-label {
        width: auto;
    }

    .special.special2025 .order .product_area .info_list .-label:not(:first-child) {
        margin-top: 2.7rem;
    }

    .special.special2025 .order .product_area .info_list .-val {
        width: auto;
    }

    .special.special2025 .order .product_area .info_list .product_title {
        line-height: 2;
    }

    .special.special2025 .order .product_area .info_list .packages,
    .special.special2025 .order .product_area .info_list .packages .-inner {
        flex-direction: column;
        align-items: stretch;
        max-width: none;
        width: auto;
        gap: 2rem;
    }

    .special.special2025 .order .product_area .info_list .packages .-inner {
        gap: 1.2rem;
    }

    .special.special2025 .order .product_area .info_list .packages .package_img {
        display: block;
        margin: auto;
        width: 11.3rem;
        filter: drop-shadow(0 0 0.6rem #fff);
    }

    .special.special2025 .order .product_area .info_list .packages .-inner>p {
        width: auto;
    }

    .special.special2025 .order .product_area .info_list .-val .indent_list {
        font-size: 1.2rem;
    }

    .special.special2025 .order .mailmagazine_area {
        margin: 3.7rem -1.1rem 0;
        padding: 14.2rem 0 3.2rem;
        font-size: 1.5rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block:before {
        width: 8.4rem;
        max-width: none;
        height: 10rem;
        top: -12.4rem;
        left: 6.2rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block:after {
        width: 10.4rem;
        max-width: none;
        height: 11.1rem;
        top: -12.1rem;
        right: 7.2rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block .btn_area {
        margin-top: 1.6rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block .btn_area .top_txt {
        font-size: 1.6rem;
        margin-bottom: 0.2rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block .snsUl {
        margin: 2.4rem auto;
        gap: 2.4rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block .snsUl .item {
        width: 3.2rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block .btn_area .btn.blank {
        height: 7.2rem;
        line-height: 2.5rem;
        padding-right: 2rem;
    }

    .special.special2025 .order .mailmagazine_area .inner_block .btn_area .btn.blank::after {
        top: auto;
        bottom: 1.2rem;
        right: 4.3rem;
    }

    .special.special2025 .order .copyright {
        margin-top: 2.4rem;
        font-size: 1.2rem;
        line-height: 1.7;
        letter-spacing: 0.01em;
    }
}

/* about */
.special.special2025 .about {
    font-family: "Noto Sans JP", sans-serif;
}

.special.special2025 .about .inner_block {
    position: relative;
    box-sizing: border-box;
    background: #fff;
    border: 0.8rem solid #6CFF9F;
    border-radius: 2rem;
    box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
    padding: 10.5rem 4.2rem 8.9rem;
}

.special.special2025 .about .-title {
    font-family: "M PLUS Rounded 1c", serif;
    font-size: 4rem;
    font-weight: 900;
    line-height: 5.5rem;
    color: #00BA49;
    text-align: center;
    margin: auto;
}

@media all and (min-width: 520px) and (max-width: 1247px) {
    .special.special2025 .about .-title {
        width: 55rem;
    }
}

.special.special2025 .about .-title:before,
.special.special2025 .about .-title::after {
    content: "";
    position: absolute;
    display: block;
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
}

.special.special2025 .about .-title::before {
    background-image: url(../images/title_about_left.png);
    width: 17.1rem;
    height: 19.2rem;
    top: 1.6rem;
    left: 5rem;
}

.special.special2025 .about .-title::after {
    background-image: url(../images/title_about_right.png);
    width: 26.4rem;
    height: 27.6rem;
    top: -6.6rem;
    right: 1rem;
}

.special.special2025 .about .-lead {
    margin-top: 6rem;
    font-size: 2rem;
    font-weight: 500;
    text-align: center;
    line-height: 1.9;
}

.special.special2025 .about .inner_area {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #FFF9E5;
    padding: 2.5rem 5.4rem 2.4rem 5.8rem;
    border: 0.4rem solid #FFE971;
    border-radius: 2rem;
}

@media all and (min-width: 520px) and (max-width: 1247px) {
    .special.special2025 .about .inner_area:not(.birthday) {
        gap: 1rem;
    }
}

.special.special2025 .about .inner_area:before,
.special.special2025 .about .inner_area:after {
    content: "";
    position: absolute;
    display: block;
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
    z-index: 1;
}

.special.special2025 .about .inner_area .-txt {
    max-width: 59rem;
    font-size: 1.5rem;
    font-weight: 400;
}

.special.special2025 .about .inner_area .-txt .-sub_title {
    margin-top: 1rem;
    margin-bottom: 3rem;
    font-family: "M PLUS Rounded 1c", serif;
    font-size: 2.6rem;
    color: #DC010B;
    font-weight: 900;
}

.special.special2025 .about .inner_area .-txt .-sub_lead {
    margin-bottom: 1rem;
    font-size: 1.8rem;
    font-weight: 700;

}

.special.special2025 .about .inner_area .-img {
    flex-shrink: 0;
    width: 30rem;
}

.special.special2025 .about .inner_area.mailmagazine {
    margin-top: 5.4rem;
    margin-bottom: 5rem;
}

.special.special2025 .about .inner_area.mailmagazine:before {
    background-image: url(../images/ball_about01.png);
    width: 12rem;
    height: 12rem;
    top: -6.4rem;
    right: 1.5rem;
}

.special.special2025 .about .inner_area.mailmagazine:after {
    background-image: url(../images/ball_about02.png);
    width: 7.8rem;
    height: 7.7rem;
    bottom: -5rem;
    left: 12.5rem;
}

.special.special2025 .about .inner_area.pokepoint {
    margin-bottom: 7.9rem;
}

.special.special2025 .about .inner_area.pokepoint:before {
    background-image: url(../images/ball_about03.png);
    width: 8rem;
    height: 8rem;
    top: -4.9rem;
    left: 3.4rem;
}

.special.special2025 .about .inner_area.pokepoint:after {
    background-image: url(../images/ball_about04.png);
    width: 9rem;
    height: 8.9rem;
    bottom: -4.1rem;
    right: 36.4rem;
}

.special.special2025 .about .inner_area.birthday {
    padding: 5.4rem 5.6rem 3.4rem 6.2rem;
    margin-bottom: 6rem;
    border: none;
    border-radius: 0;
    background-color: #4FC9FF;
}

.special.special2025 .about .inner_area.birthday:before {
    background-image: url(../images/ribbon_about01.png);
    width: 6.3rem;
    height: 17.9rem;
    top: -1.7rem;
    left: -1.1rem;
}

.special.special2025 .about .inner_area.birthday:after {
    background-image: url(../images/ribbon_about03.png);
    width: 12.4rem;
    height: 9.8rem;
    bottom: -1.9rem;
    right: 0;
}

.special.special2025 .about .inner_area.birthday .-img {
    position: relative;
    width: 38.7rem;
}

.special.special2025 .about .inner_area.birthday .-img::before {
    content: "";
    position: absolute;
    display: block;
    background: url(../images/ribbon_about02.png) no-repeat top left / contain;
    width: 47.9rem;
    height: 10.1rem;
    top: -9.8rem;
    right: -3.3rem;
}

.special.special2025 .about .inner_area.birthday .-txt {
    max-width: 43rem;
}

.special.special2025 .about .inner_area.birthday .-txt .-sub_title {
    margin-top: 0;
    font-size: 2.4rem;
    color: #00479D;
    -webkit-text-stroke: 0.4rem #fff;
    paint-order: stroke;
}

.special.special2025 .about .inner_area.birthday .-txt .indent_list {
    font-size: 1.2rem;
}

.special.special2025 .about .inner_block .btn_area {
    margin-top: 3.7rem;
}

@media all and (min-width: 520px) and (max-width: 1049px) {
    .special.special2025 .about .inner_area.birthday {
        padding-left: 5.3rem;
        padding-right: 5.5rem;
    }
}

@media all and (max-width: 519px) {
    .special.special2025 .about {
        margin: auto;
    }

    .special.special2025 .about .inner_block {
        padding: 12.5rem 1rem 4.2rem;
    }

    .special.special2025 .about .-title {
        font-size: 2rem;
        line-height: 2.7rem;
        color: #00BA49;
        text-align: center;
        margin: auto;
    }

    .special.special2025 .about .-title:before,
    .special.special2025 .about .-title::after {
        content: "";
        position: absolute;
        display: block;
        background-repeat: no-repeat;
        background-position: top left;
        background-size: contain;
    }

    .special.special2025 .about .-title::before {
        background-image: url(../images/title_about_sp.png);
        width: 33.1rem;
        height: 13.9rem;
        top: -2.2rem;
        left: 1.4rem;
    }

    .special.special2025 .about .-title::after {
        display: none;
    }

    .special.special2025 .about .-lead {
        margin-top: 2.7rem;
        padding: 0 0.9rem;
        font-size: 1.5rem;
        text-align: left;
        line-height: 1.87;
    }

    .special.special2025 .about .inner_area {
        flex-direction: column-reverse;
        padding: 2.5rem 2.1rem 3.1rem;

    }

    .special.special2025 .about .inner_area .-img {
        width: 24rem;
    }

    .special.special2025 .about .inner_area .-txt {
        max-width: none;
        line-height: 1.42;
    }

    .special.special2025 .about .inner_area .-txt .-sub_title {
        margin-top: 2.2rem;
        margin-bottom: 1.5rem;
        font-size: 2.0rem;
    }

    .special.special2025 .about .inner_area .-txt .-sub_lead {
        margin-bottom: 1rem;
        font-size: 1.6rem;
        font-weight: 700;
    }

    .special.special2025 .about .inner_area.mailmagazine {
        margin-top: 3.1rem;
        margin-bottom: 2.4rem;
    }

    .special.special2025 .about .inner_area.mailmagazine:before {
        width: 8.5rem;
        height: 8.5rem;
        top: -3.2rem;
        right: 0.1rem;
    }

    .special.special2025 .about .inner_area.mailmagazine:after {
        width: 6rem;
        height: 6.4rem;
        bottom: -4.4rem;
        left: 8rem;
    }

    .special.special2025 .about .inner_area.pokepoint {
        margin-bottom: 6.2rem;
    }

    .special.special2025 .about .inner_area.pokepoint:before {
        width: 6rem;
        height: 6rem;
        top: -3.4rem;
        left: 1.9rem;
    }

    .special.special2025 .about .inner_area.pokepoint:after {
        width: 7.3rem;
        height: 7.2rem;
        bottom: -5.3rem;
        right: 0.8rem;
    }

    .special.special2025 .about .inner_area.birthday {
        padding: 5.2rem 1rem 4.4rem;
        margin-bottom: 6rem;
        border: none;
        border-radius: 0;
        background-color: #4FC9FF;
    }

    .special.special2025 .about .inner_area.birthday:before {
        background-image: url(../images/ribbon_about01_sp.png);
        width: 29.7rem;
        height: 11.1rem;
        top: -3.1rem;
        left: 0.9rem;
    }

    .special.special2025 .about .inner_area.birthday:after {
        background-image: url(../images/ribbon_about02_sp.png);
        width: 10.2rem;
        height: 8.1rem;
        bottom: -4.3rem;
        right: 0.9rem;
    }

    .special.special2025 .about .inner_area.birthday .-img {
        position: relative;
        width: 23.4rem;
    }

    .special.special2025 .about .inner_area.birthday .-img::before {
        content: none;
    }

    .special.special2025 .about .inner_area.birthday .-txt {
        max-width: none;
        margin-top: 1.7rem;
    }

    .special.special2025 .about .inner_area.birthday .-txt .-sub_title {
        font-size: 1.8rem;
        text-align: center;
    }

    .special.special2025 .about .inner_area.birthday .-txt .indent_list {
        font-size: 1.0rem;
        margin-top: 0.8rem;
    }

    .special.special2025 .about .inner_block .btn_area {
        margin-top: 1.2rem;
    }

}

/* banner */

.special.special2025 .banner {
    padding: 9.5rem 5rem 0;

}

.special.special2025 .banner .-img {
    max-width: 90rem;
    margin: 0 auto 8rem;
}

.special.special2025 .banner .btn_area {
    margin-bottom: 8rem;
}

.special.special2025 .banner .btn_area .link_list .item {
    text-align: center;
}

.special.special2025 .banner .img_btn-lg {
    display: inline-block;
    width: 100%;
    color: transparent;
    line-height: 10rem;
    max-width: 107rem;
    background: url(../images/btn_banner.png) no-repeat top center / contain;
}

.special.special2025 .banner .img_btn-lg:hover {
    background: url(../images/btn_banner_hover.png) no-repeat top center / contain;
}

.special.special2025 .banner .-img {}

.special.special2025 .banner .-img {}

@media all and (max-width: 519px) {
    .special.special2025 .banner {
        padding: 8rem 0 0;
    }

    .special.special2025 .banner .-img {
        max-width: 34.1rem;
        margin-bottom: 4.9rem;
    }

    .special.special2025 .banner .btn_area {
        margin-bottom: 5rem;
    }

    .special.special2025 .banner .img_btn-lg {
        background: url(../images/btn_banner_sp.png) no-repeat top center / contain;
        line-height: 1;
        height: 11.4rem;
        width: 31.8rem;
    }

    .special.special2025 .banner .indent_list {
        font-size: 1.2rem;
        width: 32rem;
        line-height: 1.9;
        margin: auto;
    }
}


/* end */