.early {
  max-width: 900px;
  width: 100%;
  margin: 40px auto 0;
  text-align: center;
  padding-right: 20px;
  padding-left: 20px;
}

.early-top {
  display: inline-block;
}

.early-second {
  display: inline-block;
  margin-top: 33px;
}

.ranking {
  margin-top: 45px;
  padding-right: 20px;
  padding-left: 20px;
}

.ranking-title__wrap {
  text-align: center;
}

.ranking-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 30px;
}

.ranking-items {
  margin-top: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .ranking-items {
    display: block;
  }
}

.ranking-item {
  width: calc(33% - 40px);
}
@media screen and (max-width: 767px) {
  .ranking-item {
    width: 100%;
  }
  .ranking-item:not(:first-child) {
    margin-top: 60px;
  }
}

.ranking-item-img__wrap {
  position: relative;
}

.ranking-item__number {
  position: absolute;
  left: 0;
  top: 0;
  width: 40px;
  height: 40px;
  color: #fff;
  font-size: 20px;
  text-align: center;
  font-weight: 600;
}
.ranking-item__number.rank-1 {
  background: #d5a300;
}
.ranking-item__number.rank-2 {
  background: #8e8e8e;
}
.ranking-item__number.rank-3 {
  background: #965730;
}

.ranking-item__text {
  margin-top: 10px;
}

.ranking-item__price {
  color: #c5a05b;
}
@media screen and (max-width: 767px) {
  .ranking-item__price {
    margin-bottom: 25px;  
  }
}

.ranking-btn__wrap {
  text-align: center;
  margin-top: 25px;
}

.ranking-btn {
  height: 70px;
  line-height: 70px;
  text-align: center;
  max-width: 400px;
  width: 100%;
  border: 1px solid #000;
  display: inline-block;
  position: relative;
  font-size: 18px;
}
.ranking-btn::after {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 10px;
  height: 10px;
  background: url(https://rosegallery.itembox.design/item/white-day/ranking-icon-aroow.png) no-repeat center center/contain;
}

.set {
  padding-right: 20px;
  padding-left: 20px;
}

.set-items {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  margin-top: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .set-items {
    display: block;
      margin-top: 30px!important;
  }

}

.set-item {
  width: calc(50% - 30px);
}
@media screen and (max-width: 767px) {
  .set-item {
    width: 100%;
  }
  .set-item:not(:first-child) {
    margin-top: 60px;
  }
}

.set-item-title__wrap {
  text-align: center;
}

.set-item-title {
  font-size: 26px;
  color: #c5a05b;
}
@media screen and (max-width: 767px) {
  .set-item-title {
    font-size: 22px;
  }
}

.set-item-text {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .set-item-text {
    font-size: 14px;
  }
}

.set-item-text__annotation {
  color: #959595;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .set-item-text__annotation {
    font-size: 14px;
  }
}

.order-title__wrap {
  text-align: center;
}

/* 2026年クリスマス */
    .mv-w2026 {
        background: url('https://rosegallery.itembox.design/item/wday2026/mv-whiteday2026_pc.png') no-repeat left top / 100%;
        aspect-ratio: 96 / 35;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
    }

    .mv-w2026 .mv-cart_btn {
        display: block;
        border: solid 1px #384fb1;
        color: #384fb1;
        text-align: center;
        font-size: 14px;
        position: absolute;
        left: 15.5%;
        top: 72%;
        width: 300px;
        height: 60px;
        line-height: 60px;
    }

    @media screen and (max-width: 767px) {
        .mv-w2026 {
            background: url('https://rosegallery.itembox.design/item/wday2026/mv-whiteday2026_sp.png') no-repeat left top / 100%;
            aspect-ratio: 13 / 20;
        }

        .mv-w2026 .mv-cart_btn {
            width: 90%;
            padding-left: 0;
            left: 50%;
            transform: translateX(-50%);
            top: 50%;
            color: #fff;
            border: solid 1px #fff;
        }
    }

    .wday2026-intro {
        background-color: #f3f3f3;
    }

    .wday2026-intro .container {
        max-width: 1220px;
        width: 100%;
        padding: 120px 10px;
        margin-inline: auto;
        text-align: center;
        color: #000;
    }

    .wday2026-intro .container h2 {
        font-size: clamp(20px, 20px + 2vw, 40px);
        font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    }

    .wday2026-intro .container .txt01 {
        font-size: 18px;
        line-height: 28px;
        padding: 60px 0;
    }

    .wday2026-intro .container .txt02 {
        font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif!important;
        font-size: 28px;
        line-height: 43px;
    }

    .wday2026-intro .container img {
        max-width: 1200px;
        width: 100%;
        height: auto;
        padding: 20px 0;
    }

    @media screen and (max-width: 767px) {
        .wday2026-intro .container {
            padding: 90px 20px;
        }

        .wday2026-intro .container h2 {
            font-size: 24px;
            line-height: 41px;
        }

        .wday2026-intro .container .txt01 {
            font-size: 14px;
            line-height: 26px;
            padding: 40px 0;
        }

        .wday2026-intro .container .txt02 {
            font-size: 18px;
            line-height: 31px;
        }

        .wday2026-intro .container img {
            padding: 0;
        }
    }

    /* --- 全体共通設定 --- */
    .wday2026-ranking {
        /* section自体のスタイル（必要に応じて） */
    }

    .wday2026-ranking .ranking-container {
        max-width: 1220px;
        width: 100%;
        padding: 120px 10px; /* PC時の余白設定 */
        margin: 0 auto;
        box-sizing: border-box;
    }

    /* 4カラム並び (左右端余白なし) */
    .wday2026-ranking .ranking-list {
        display: flex;
        justify-content: space-between;
        padding: 0;
        margin: 0;
        list-style: none;
    }

    /* 各アイテムの幅 */
    .wday2026-ranking .ranking-item {
        width: 277px;
    }

    .wday2026-ranking .ranking-item a {
        text-decoration: none;
        display: block;
    }

    /* 画像エリア設定 */
    .wday2026-ranking .image-wrapper {
        position: relative;
        width: 277px;
        height: 277px;
        margin-bottom: 20px;
    }

    .wday2026-ranking .image-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* 順位バッジ共通 (30x30, #fff) */
    .wday2026-ranking .rank-number {
        position: absolute;
        top: 0;
        left: 0;
        width: 30px;
        height: 30px;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 16px;
        font-weight: bold;
        z-index: 1;
    }

    /* 順位別の背景色 */
    .wday2026-ranking .rank-1 .rank-number { background-color: #d5a300; }
    .wday2026-ranking .rank-2 .rank-number { background-color: #8e8e8e; }
    .wday2026-ranking .rank-3 .rank-number { background-color: #965730; }
    .wday2026-ranking .rank-4 .rank-number { background-color: #0d0d0d; }

    /* テキスト設定 (PC 16px) */
    .wday2026-ranking .item-name {
        font-size: 16px;
        color: #000;
        margin: 0;
        padding: 0;
        line-height: 1.5;
    }

    .wday2026-ranking .item-price {
        font-size: 16px;
        color: #c5a05b;
        margin: 0;
        padding: 0;
        line-height: 1.5;
    }

    /* --- スマホ設定 (767px以下) --- */
    @media (max-width: 767px) {
        .wday2026-ranking .ranking-container {
            padding: 90px 20px; /* スマホ時の余白設定 */
        }

        .wday2026-ranking .ranking-list {
            flex-direction: column; /* 1カラム（縦並び） */
            align-items: center;
        }

        .wday2026-ranking .ranking-item {
            width: 100%;
            max-width: 700px;
            margin-bottom: 40px; /* アイテム間の余白 */
        }

        .wday2026-ranking .image-wrapper {
            width: 100%;
            height: auto;
            aspect-ratio: 1 / 1; /* 正方形維持 */
            max-width: 700px;
        }

        /* アイテム・料金 14px */
        .wday2026-ranking .item-name,
        .wday2026-ranking .item-price {
            font-size: 14px;
        }
    }



            .wday2026-about {
                background-color: #f3f3f3;
            }

            .wday2026-about .container {
                max-width: 1220px;
                width: 100%;
                margin-inline: auto;
                padding: 120px 10px;
            }

            .wday2026-about .txt01 {
                font-size: 18px;
                line-height: 28px;
                text-align: center;
                padding-bottom: 80px;
            }

            .wday2026-about .row {
                margin: 0 auto 90px;
                display: -webkit-flex;
                display: flex;
                align-items: center;
            }

            .wday2026-about .row .col1 {
                width: 45%;

            }

            .wday2026-about .row .col1 img {
                max-width: 570px;
                width: 100%;
                height: auto;
            }

            .wday2026-about .row .col2 {
                width: 55%;
                padding: 0 40px 0 90px;
            }

            .wday2026-about .row .txt_head .txt02 {
                font-size: 26px;
                line-height: 1;
                color: #c5a05b;
            }

            .wday2026-about .row .txt_head .txt03 {
                font-size: 22px;
                line-height: 1;
                color: #c5a05b;
                padding: 20px 0;
            }

            .wday2026-about .row .txt_box p {
                font-size: 18px;
                line-height: 32px;
            }

            @media screen and (max-width: 767px) {
                .wday2026-about .container {
                    padding: 90px 20px;
                }

                .wday2026-about .txt01 {
                    font-size: 14px;
                    line-height: 26px;
                    text-align: center;
                    padding-bottom: 60px;
                }

                .wday2026-about .row {
                    margin: 0 auto 40px;
                    flex-flow: column;
                }

                .wday2026-about .row .col1 {
                    width: 100%;

                }

                .wday2026-about .row .col2 {
                    width: 100%;
                    padding: 15px 0 0;
                }

                .wday2026-about .row .txt_head .txt02 {
                    font-size: 18px;
                }

                .wday2026-about .row .txt_head .txt03 {
                    font-size: 16px;
                    line-height: 1;
                    color: #c5a05b;
                }

                .wday2026-about .row .txt_box p {
                    font-size: 14px;
                    line-height: 26px;
                }
            }

            .wday2026-flow_h2 {
                font-size: 26px;
                color: #c5a05b;
                text-align: center;
                padding-top: 120px;
            }

            @media screen and (max-width: 767px) {
                .wday2026-flow_h2 {
                    font-size: 20px;
                    padding-top: 90px;
                }
            }