@charset 'utf-8';

.pankuzu,
.page_ttl {
    display: none;
}

.cnt {
    position: relative;
}

.mg2403 img {
    width: 100%;
    height: auto;
}

@media (min-width: 768px) {
    :root {
        /*pc用比率*/
        --pc-raito: 0.8;
    }

    .main_contents .wrapper {
        max-width: initial;
        padding: 0 !important;
    }

    .mg2403_inner {
        width: calc(750px * var(--pc-raito));
        margin: auto;
    }

    /*FV*/
    .fv_ttl {
        width: calc(var(--pc-raito) * 502px);
        height: calc(var(--pc-raito) * 172px);
        position: absolute;
        top: calc(var(--pc-raito) * 600px);
        left: calc(var(--pc-raito) * 125px);
    }

    .fv_txt {
        width: calc(var(--pc-raito) * 420px);
        height: calc(var(--pc-raito) * 34px);
        position: absolute;
        top: calc(var(--pc-raito) * 797px);
        left: calc(var(--pc-raito) * 161px);
    }

    .fv_maru {
        width: calc(var(--pc-raito) * 160px) !important;
        height: calc(var(--pc-raito) * 160px) !important;
        position: absolute;
        top: calc(var(--pc-raito) * 37px);
        left: calc(var(--pc-raito) * 40px);
    }

    /*ページ内ナビ*/
    .nav {
        width: calc(var(--pc-raito) * 750px);
        position: sticky;
        top: 0;
        z-index: 100;
        transition: 0.5s;
    }

    .nav ul {
        background: rgba(255, 255, 255, var(--pc-raito));
        display: flex;
        justify-content: space-between;
        transition: 0.2s;
    }

    .nav ul:hover {
        background: rgba(255, 255, 255, 0.6);
        transition: 0.2s;
    }

    .nav li {
        width: 100%;
        margin-bottom: 0;
    }

    .nav li + li {
        border-left: 1px solid #00693e;
    }

    .nav li a {
        display: block;
        width: 100%;
        height: calc(var(--pc-raito) * 130px);
        background: url(sankaku.webp) no-repeat center bottom calc(var(--pc-raito) * 20px);
        background-size: calc(var(--pc-raito) * 29px) auto;
        color: #00693e;
        font-size: calc(var(--pc-raito) * 26px);
        text-decoration: none;
        text-align: center;
        padding-top: calc(var(--pc-raito) * 46px);
        position: relative;
        transition: 0.5s;
    }

    /* cnt1 */
    .cnt1 {
        min-height: calc(var(--pc-raito) * 1250px);
        background: url(cnt1_bg.webp) no-repeat top center;
        background-size: cover;
        overflow: hidden;
    }

    .cnt1_ttl {
        width: calc(var(--pc-raito) * 750px);
        height: calc(var(--pc-raito) * 275px);
    }

    .cnt1_txt {
        width: calc(var(--pc-raito) * 741px);
        height: calc(var(--pc-raito) * 631px);
        background: url(cnt1_txt.webp) no-repeat;
        background-size: cover;
        position: absolute;
        top: calc(var(--pc-raito) * 160px);
        left: 0;
        text-indent: -9999px;
        overflow: hidden;
    }

    .cnt1_img {
        width: calc(var(--pc-raito) * 590px) !important;
        background: url(cnt1_kaori.webp) no-repeat;
        background-size: cover;
        position: absolute;
        top: calc(var(--pc-raito) * 771px);
        left: calc(var(--pc-raito) * 80px);
    }

    /* cnt2 */
    .cnt2 {
        height: calc(var(--pc-raito) * 1060px);
        overflow: hidden;
    }

    .cnt2_inner {
        height: calc(var(--pc-raito) * 1537px);
        background: url(cnt2_bg.webp) no-repeat;
        background-size: cover;
    }

    .cnt2_ttl {
        width: calc(var(--pc-raito) * 496px);
        height: calc(var(--pc-raito) * 175px);
        position: absolute;
        top: calc(var(--pc-raito) * 100px);
        left: calc(var(--pc-raito) * 125px);
    }

    [class^="cnt2_txt"] {
        text-indent: -9999px;
        overflow: hidden;
        width: calc(var(--pc-raito) * 724px);
        height: calc(var(--pc-raito) * 387px);
        position: absolute;
        left: calc(var(--pc-raito) * 16px);
    }

    .cnt2_txt1 {
        background: url(cnt2_1.webp) no-repeat;
        background-size: cover;
        top: calc(var(--pc-raito) * 332px);
    }

    .cnt2_txt2 {
        background: url(cnt2_2.webp) no-repeat;
        background-size: cover;
        top: calc(var(--pc-raito) * 702px);
    }

    .cnt2_txt3 {
        background: url(cnt2_3.webp) no-repeat;
        background-size: cover;
        top: calc(var(--pc-raito) * 1072px);
    }

    .cnt2_grad {
        width: 100%;
        height: calc(var(--pc-raito) * 347px);
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 65%, rgba(255, 255, 255, 1) 100%);
        position: absolute;
        left: 0;
        bottom: 0;
    }

    .btn_more {
        display: block;
        width: calc(var(--pc-raito) * 300px) !important;
        position: absolute;
        left: 0;
        right: 0;
        bottom: calc(var(--pc-raito) * 70px);
        margin: auto;
        cursor: pointer;
        transition: 0.2s;
    }

    .btn_more:hover {
        opacity: 0.7;
        transition: 0.2s;
    }

    /* cnt3 */
    .cnt3 {
        min-height: calc(var(--pc-raito) * 4055px);
        background: url(cnt3_bg.webp) no-repeat;
        background-size: cover;
        padding-top: calc(var(--pc-raito) * 104px);
    }

    .cnt3_ttl {
        width: calc(var(--pc-raito) * 476px);
        height: calc(var(--pc-raito) * 116px);
        margin-left: calc(var(--pc-raito) * 139px);
    }

    [class^="cnt3_img"] {
        width: 100%;
    }

    [class^="cnt3_img"] p {
        color: #314836;
        font-size: calc(var(--pc-raito) * 20px);
        line-height: 1;
        text-align: right;
        margin-right: calc(var(--pc-raito) * 50px);
        padding-top: calc(var(--pc-raito) * 11px);
    }

    [class^="cnt3_img"] p a {
        color: inherit;
        text-decoration: underline;
    }

    .cnt3_img1 {
        margin-top: calc(var(--pc-raito) * 22px);
    }

    .cnt3_img2 {
        margin-top: calc(var(--pc-raito) * 140px);
    }

    .cnt3_img3 {
        margin-top: calc(var(--pc-raito) * 97px);
    }

    .cnt3_img4 {
        margin-top: calc(var(--pc-raito) * 8px);
    }

    /* cnt4 */
    .cnt4 {
        height: calc(var(--pc-raito) * 762px);
        background: url(cnt4.webp) no-repeat;
        background-size: cover;
        text-indent: -9999px;
        overflow: hidden;
    }
     /* cnt5 */
    .cnt5 {
        height: calc(var(--pc-raito) * 450px);
        background: url(cnt5.webp) no-repeat;
        background-size: cover;
        text-indent: -9999px;
        overflow: hidden;
    }

    /* cnt_bnr */
    .cnt_bnr {
        background: #fff;
        padding: calc(var(--pc-raito) * 80px) calc(var(--pc-raito) * 30px);
    }

    /* cnt_cart */
    .cnt_cart {
        min-height: calc(var(--pc-raito) * 6276px);
        background: url(cart_bg.webp) no-repeat;
        background-size: cover;
    }

    .bnr_teiki {
        transition: 0.2s;
    }

    .bnr_teiki:hover {
        opacity: 0.7;
        transition: 0.2s;
    }

    /* cnt_cart */
    .cnt_cart {
        padding-top: calc(var(--pc-raito) * 128px);
    }

    .cart_ttl {
        width: calc(var(--pc-raito) * 626px);
        height: calc(var(--pc-raito) * 89px);
        margin: auto;
    }

    .cart_maru {
        width: calc(var(--pc-raito) * 150px) !important;
        position: absolute;
        top: calc(var(--pc-raito) * -40px);
        right: calc(var(--pc-raito) * 39px);
    }

    .cart1 {
        margin-top: calc(var(--pc-raito) * 65px);
    }

    .cart2 {
        margin-top: calc(var(--pc-raito) * 2px);
    }

    .cart3 {
        margin-top: calc(var(--pc-raito) * 60px);
    }

    .cart4 {
        margin-top: calc(var(--pc-raito) * 80px);
    }

    .cart [class^="btn"] {
        appearance: none;
        border: 0;
        text-indent: -9999px;
        overflow: hidden;
        position: absolute;
        cursor: pointer;
        transition: 0.2s;
        margin: auto;
    }

    .cart [class^="btn"]:hover {
        opacity: 0.7;
        transition: 0.2s;
    }

    .btn_cart_l {
        width: calc(var(--pc-raito) * 400px);
        height: calc(var(--pc-raito) * 80px);
        background: url(btn_cart_l.webp) no-repeat;
        background-size: cover;
    }

    .btn_cart_m {
        width: calc(var(--pc-raito) * 220px);
        height: calc(var(--pc-raito) * 65px);
        background: url(btn_cart_m.webp) no-repeat;
        background-size: cover;
    }

    .btn_cart_s {
        width: calc(var(--pc-raito) * 180px);
        height: calc(var(--pc-raito) * 65px);
        background: url(btn_cart_s.webp) no-repeat;
        background-size: cover;
    }

    .cart1 .btn_cart {
        left: 0;
        right: 0;
        bottom: calc(var(--pc-raito) * 315px);
    }

    .cart2 .btn_cart {
        left: 0;
        right: 0;
        bottom: calc(var(--pc-raito) * 205px);
    }

    .cart3 .btn_cart {
        left: 0;
        right: 0;
        bottom: calc(var(--pc-raito) * 60px);
    }

    .cart4 .btn_cart {
        bottom: calc(var(--pc-raito) * 61px);
    }

    .cart4 .s1 {
        left: calc(var(--pc-raito) * 80px);
    }

    .cart4 .s2 {
        left: calc(var(--pc-raito) * 285px);
    }

    .cart4 .s3 {
        left: calc(var(--pc-raito) * 490px);
    }

    .cnt_tanpin {
        width: calc(var(--pc-raito) * 670px);
        overflow: hidden;
        margin-left: auto;
        margin-right: auto;
        margin-top: calc(var(--pc-raito) * 80px);
    }

    .cnt_tanpin > div {
        width: calc(var(--pc-raito) * 320px);
        margin-bottom: calc(var(--pc-raito) * 40px);
    }

    .cnt_tanpin > div:nth-child(odd) {
        float: left;
        clear: both;
    }

    .cnt_tanpin > div:nth-child(even) {
        float: right;
    }

    .cart5 .btn_cart,
    .cart6 .btn_cart,
    .cart7 .btn_cart,
    .cart8 .btn_cart {
        left: 0;
        right: 0;
        margin: auto;
        bottom: calc(var(--pc-raito) * 40px);
    }

    .cart9 .btn_cart,
    .cart10 .btn_cart {
        left: 0;
        right: 0;
        margin: auto;
        bottom: calc(var(--pc-raito) * 130px);
    }

    /*seibun*/
    .seibun_area {
        width: calc(var(--pc-raito) * 750px);
        background: #fff;
        margin: auto;
        padding-top: calc(var(--pc-raito) * 90px);
        padding-bottom: calc(var(--pc-raito) * 40px);
    }

    .seibun {
        width: calc(var(--pc-raito) * 690px);
        height: calc(var(--pc-raito) * 200px);
        overflow-y: hidden;
        margin: auto;
        border: 1px solid #ccc;
        position: relative;
        transition: 0.3s;
    }

    .seibun_txt {
        padding: calc(var(--pc-raito) * 20px) calc(var(--pc-raito) * 30px);
    }

    .seibun_txt > span {
        display: block;
        font-size: calc(var(--pc-raito) * 24px);
        text-align: center;
        margin-bottom: 0.4em;
    }

    .seibun p {
        font-size: calc(var(--pc-raito) * 18px);
        line-height: 1.66;
    }

    .seibun p b {
        color: inherit;
    }

    .grad {
        display: block;
        content: "";
        width: 100%;
        height: 50%;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 1%, rgba(255, 255, 255, 1) 70%, rgba(255, 255, 255, 1) 100%);
        position: absolute;
        left: 0;
        bottom: 0;
    }

    .btn_seibun {
        width: calc(var(--pc-raito) * 194px);
        background: #fff;
        color: #000;
        font-size: calc(var(--pc-raito) * 20px);
        line-height: 1;
        padding: calc(var(--pc-raito) * 9px) 0 calc(var(--pc-raito) * 8px) calc(var(--pc-raito) * 20px);
        position: absolute;
        left: 0;
        right: 0;
        bottom: calc(var(--pc-raito) * 30px);
        margin: auto;
        border: 1px solid;
        cursor: pointer;
    }

    .btn_seibun span {
        display: block;
        width: calc(var(--pc-raito) * 12px);
        height: calc(var(--pc-raito) * 12px);
        position: absolute;
        top: 0;
        bottom: 0;
        right: calc(var(--pc-raito) * 16px);
        margin: auto;
    }

    .btn_seibun i {
        display: block;
        width: 2px;
        height: calc(var(--pc-raito) * 12px);
        background: #000;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    .btn_seibun .i1 {
        transform: rotate(90deg);
    }

    /* ページ内リンク位置調整 */
    [id^="anchor"] {
        position: absolute;
        top: calc(var(--pc-raito) * -120px);
    }

    /* カミングスーン */
    .end .btn_cart,
    .cs .btn_cart {
        user-select: none;
        pointer-events: none;
    }

    .cs .btn_cart_l {
        width: calc(var(--pc-raito) * 400px);
        height: calc(var(--pc-raito) * 80px);
        background: url(btn_cs_l.webp) no-repeat;
        background-size: cover;
    }

    .cs .btn_cart_m {
        width: calc(var(--pc-raito) * 220px);
        height: calc(var(--pc-raito) * 65px);
        background: url(btn_cs_m.webp) no-repeat;
        background-size: cover;
    }

    .cs .btn_cart_s {
        width: calc(var(--pc-raito) * 180px);
        height: calc(var(--pc-raito) * 65px);
        background: url(btn_cs_s.webp) no-repeat;
        background-size: cover;
    }

    /* 終了対応 */
    .end .btn_cart::before {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        content: "販売期間は終了しました";
        background: #adadad;
        color: #fff;
        text-indent: 0;
    }

    .end .btn_cart_l::before {
        font-size: calc(var(--pc-raito) * 20px);
    }

    .end .btn_cart_m::before {
        font-size: calc(var(--pc-raito) * 16px);
    }

    .end .btn_cart_s::before {
        font-size: calc(var(--pc-raito) * 14px);
    }

    .page_body {
        background: url(bg_pc.webp) no-repeat fixed center top;
        background-size: cover;
    }
}

@media (max-width: 767px) {
    .main_contents .wrapper {
        padding: 0 !important;
    }

    /*FV*/
    .fv_ttl {
        width: 66.933vw;
        height: 22.9vw;
        position: absolute;
        top: 80vw;
        left: 16.666vw;
    }

    .fv_txt {
        width: 56vw;
        height: 4.54vw;
        position: absolute;
        top: 106.26vw;
        left: 21.467vw;
    }

    .fv_maru {
        width: 21.333vw !important;
        height: 21.333vw !important;
        position: absolute;
        top: 4.93vw;
        left: 5.33vw;
    }

    /*ページ内ナビ*/
    .nav {
        width: 100vw;
        position: sticky;
        top: 0;
        z-index: 100;
        transition: 0.5s;
    }

    .nav ul {
        background: rgba(255, 255, 255, 0.8);
        display: flex;
        justify-content: space-between;
        transition: 0.2s;
    }

    .nav ul:hover {
        background: rgba(255, 255, 255, 0.6);
        transition: 0.2s;
    }

    .nav li {
        width: 100%;
        margin-bottom: 0;
    }

    .nav li + li {
        border-left: 1px solid #00693e;
    }

    .nav li a {
        display: block;
        width: 100%;
        height: 17.33vw;
        background: url(sankaku.webp) no-repeat center bottom 2.66vw;
        background-size: 3.86vw auto;
        color: #00693e;
        font-size: 3.46vw;
        text-decoration: none;
        text-align: center;
        padding-top: 6.13vw;
        position: relative;
        transition: 0.5s;
    }

    /* cnt1 */
    .cnt1 {
        min-height: 166.66vw;
        background: url(cnt1_bg.webp) no-repeat top center;
        background-size: cover;
        overflow: hidden;
    }

    .cnt1_ttl {
        width: 100vw;
        height: 36.66vw;
    }

    .cnt1_txt {
        width: 98.8vw;
        height: 84.13vw;
        background: url(cnt1_txt.webp) no-repeat;
        background-size: cover;
        position: absolute;
        top: 21.33vw;
        left: 0;
        text-indent: -9999px;
        overflow: hidden;
    }

    .cnt1_img {
        width: 78.66vw !important;
        background: url(cnt1_kaori.webp) no-repeat;
        background-size: cover;
        position: absolute;
        top: 102.8vw;
        left: 10.66vw;
    }

    /* cnt2 */
    .cnt2 {
        height: 141.13vw;
        overflow: hidden;
    }

    .cnt2_inner {
        height: 204.93vw;
        background: url(cnt2_bg.webp) no-repeat;
        background-size: cover;
    }

    .cnt2_ttl {
        width: 66.13vw;
        height: 23.33vw;
        position: absolute;
        top: 13.33vw;
        left: 16.66vw;
    }

    [class^="cnt2_txt"] {
        text-indent: -9999px;
        overflow: hidden;
        width: 96.53vw;
        height: 51.6vw;
        position: absolute;
        left: 2.13vvw;
    }

    .cnt2_txt1 {
        background: url(cnt2_1.webp) no-repeat;
        background-size: cover;
        top: 44.26vw;
    }

    .cnt2_txt2 {
        background: url(cnt2_2.webp) no-repeat;
        background-size: cover;
        top: 93.6vw;
    }

    .cnt2_txt3 {
        background: url(cnt2_3.webp) no-repeat;
        background-size: cover;
        top: 142.93vw;
    }

    .cnt2_grad {
        width: 100%;
        height: 46.26vw;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 65%, rgba(255, 255, 255, 1) 100%);
        position: absolute;
        left: 0;
        bottom: 0;
    }

    .btn_more {
        display: block;
        width: 40vw !important;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 9.33vw;
        margin: auto;
    }

    /* cnt3 */
    .cnt3 {
        min-height: 540.66vw;
        background: url(cnt3_bg.webp) no-repeat;
        background-size: cover;
        padding-top: 13.86vw;
    }

    .cnt3_ttl {
        width: 63.46vw;
        height: 15.46vw;
        margin-left: 18.53vw;
    }

    [class^="cnt3_img"] {
        width: 100%;
    }

    [class^="cnt3_img"] p {
        color: #314836;
        font-size: 2.66vw;
        line-height: 1;
        text-align: right;
        margin-right: 6.66vw;
        padding-top: 1.46vw;
    }

    [class^="cnt3_img"] p a {
        color: inherit;
        text-decoration: underline;
    }

    .cnt3_img1 {
        margin-top: 2.93vw;
    }

    .cnt3_img2 {
        margin-top: 18.66vw;
    }

    .cnt3_img3 {
        margin-top: 12.93vw;
    }

    .cnt3_img4 {
        margin-top: 10.66vw;
    }

    /* cnt4 */
    .cnt4 {
        height: 101.6vw;
        background: url(cnt4.webp) no-repeat;
        background-size: cover;
        text-indent: -9999px;
        overflow: hidden;
    }
    
    /* cnt5 */
    .cnt5 {
        height: 60vw;
        background: url(cnt5.webp) no-repeat;
        background-size: cover;
        text-indent: -9999px;
        overflow: hidden;
    }

    /* cnt_bnr */
    .cnt_bnr {
        background: #fff;
        padding: 10.66vw 8vw;
    }

    /* cnt_cart */
    .cnt_cart {
        min-height: 836.8vw;
        background: url(cart_bg.webp) no-repeat;
        background-size: cover;
    }

    /* cnt_cart */
    .cnt_cart {
        padding-top: 17.06vw;
    }

    .cart_ttl {
        width: 83.46vw;
        height: 11.86vw;
        margin: auto;
    }

    .cart_maru {
        width: 16.66vw !important;
        position: absolute;
        top: -5.33vw;
        right: 5.2vw;
    }

    .cart1 {
        margin-top: 8.666vw;
    }

    .cart2 {
        margin-top: 0.26vw;
    }

    .cart3 {
        margin-top: 8vw;
    }

    .cart4 {
        margin-top: 10.66vw;
    }

    .cart [class^="btn"] {
        appearance: none;
        border: 0;
        text-indent: -9999px;
        overflow: hidden;
        position: absolute;
        margin: auto;
    }

    .btn_cart_l {
        width: 53.3vw;
        height: 10.66vw;
        background: url(btn_cart_l.webp) no-repeat;
        background-size: cover;
    }

    .btn_cart_m {
        width: 25.66vw;
        height: 8.67vw;
        background: url(btn_cart_m.webp) no-repeat;
        background-size: cover;
    }

    .btn_cart_s {
        width: 24vw;
        height: 8.67vw;
        background: url(btn_cart_s.webp) no-repeat;
        background-size: cover;
    }

    .cart1 .btn_cart {
        left: 0;
        right: 0;
        bottom: 42vw;
    }

    .cart2 .btn_cart {
        left: 0;
        right: 0;
        bottom: 27.33vw;
    }

    .cart3 .btn_cart {
        left: 0;
        right: 0;
        bottom: 8vw;
    }

    .cart4 .btn_cart {
        bottom: 8.13vw;
    }

    .cart4 .s1 {
        left: 10.66vw;
    }

    .cart4 .s2 {
        left: 38vw;
    }

    .cart4 .s3 {
        left: 65.33vw;
    }

    .cnt_tanpin {
        width: 89.33vw;
        overflow: hidden;
        margin-left: auto;
        margin-right: auto;
        margin-top: 10.66vw;
    }

    .cnt_tanpin > div {
        width: 42.66vw;
        margin-bottom: 5.33vw;
    }

    .cnt_tanpin > div:nth-child(odd) {
        float: left;
        clear: both;
    }

    .cnt_tanpin > div:nth-child(even) {
        float: right;
    }

    .cart5 .btn_cart,
    .cart6 .btn_cart,
    .cart7 .btn_cart,
    .cart8 .btn_cart {
        left: 0;
        right: 0;
        margin: auto;
        bottom: 5.33vw;
    }

    .cart9 .btn_cart,
    .cart10 .btn_cart {
        left: 0;
        right: 0;
        margin: auto;
        bottom: 17.33vw;
    }

    /*seibun*/
    .seibun_area {
        width: 100vw;
        background: #fff;
        margin: auto;
        padding-top: 12vw;
        padding-bottom: 5.33vw;
    }

    /*seibun*/
    .seibun_area {
        background: #fff;
        padding: 6.667vw 5vw 16.667vw;
    }

    .seibun {
        height: 33.333vw;
        overflow-y: hidden;
        border: 1px solid #ccc;
        position: relative;
    }

    .seibun p span {
        display: block;
        color: inherit;
    }

    .seibun_txt {
        padding: 3.333vw 5vw;
    }

    .seibun_txt b {
        color: inherit;
    }

    .seibun p {
        font-size: 3vw;
        line-height: 1.66;
    }

    .grad {
        display: block;
        content: "";
        width: 100%;
        height: 50%;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 1%, rgba(255, 255, 255, 1) 70%, rgba(255, 255, 255, 1) 100%);
        position: absolute;
        left: 0;
        bottom: 0;
    }

    .btn_seibun {
        width: 29vw;
        background: #fff;
        color: #000;
        font-size: 3.333vw;
        line-height: 1;
        padding: 1.5vw 0 1.333vw 3.333vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 2.667vw;
        margin: auto;
        border: 1px solid;
        cursor: pointer;
    }

    .btn_seibun span {
        display: block;
        width: 2vw;
        height: 2vw;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 2.667vw;
        margin: auto;
    }

    .btn_seibun i {
        display: block;
        width: 0.333vw;
        height: 2vw;
        background: #000;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    .btn_seibun .i1 {
        transform: rotate(90deg);
    }

    /* ページ内リンク位置調整 */
    [id^="anchor"] {
        position: absolute;
        top: -12.66vw;
    }

    /* カミングスーン */
    .end .btn_cart,
    .cs .btn_cart {
        user-select: none;
        pointer-events: none;
    }

    .cs .btn_cart_l {
        width: 53.3vw;
        height: 10.66vw;
        background: url(btn_cs_l.webp) no-repeat;
        background-size: cover;
    }

    .cs .btn_cart_m {
        width: 25.66vw;
        height: 8.67vw;
        background: url(btn_cs_m.webp) no-repeat;
        background-size: cover;
    }

    .cs .btn_cart_s {
        width: 24vw;
        height: 8.67vw;
        background: url(btn_cs_s.webp) no-repeat;
        background-size: cover;
    }

    /* 終了対応 */
    .end .btn_cart::before {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        content: "販売期間は終了しました";
        background: #adadad;
        color: #fff;
        text-indent: 0;
    }

    .end .btn_cart_l::before {
        font-size: 2.66vw;
    }

    .end .btn_cart_m::before {
        font-size: 2.13vw;
    }

    .end .btn_cart_s::before {
        font-size: 1.86vw;
    }
}

@media (max-width: 1080px) and (min-width: 768px) {
    .page_body {
        background: none !important;
    }

    .tb_bg {
        width: 100vw;
        height: 100vh;
        position: fixed;
        left: 0;
        top: 0;
        z-index: -1;
        background: url(bg_pc.webp) no-repeat center top;
        background-size: cover;
    }
}

.mg2403.end::before {
    display: block;
    content: "販売期間は終了しました";
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background: #aaa;
    color: #fff;
    font-family: serif;
    line-height: 1;
}

@media (min-width: 768px) {
    .mg2403.end::before {
        height: 64px;
        font-size: 24px;
    }
}

@media (max-width: 767px) {
    .mg2403.end::before {
        height: 14vw;
        font-size: 5.3vw;
    }
}
