:root {
    --color-text: #464650;
    --color-text-gray: #7E8392;
    --color-gradient: linear-gradient(225deg, #FF5BE8 0%, #3C9AFF 100%);
    --color-gradientLight: linear-gradient(0deg, rgba(255, 255, 255, 0.60) 0%, rgba(255, 255, 255, 0.60) 100%), linear-gradient(90deg, #FFC7D7 0%, #DCD4FF 100%);

    --font-JProunded: "M PLUS Rounded 1c", "Tsukimi Rounded", sans-serif;
    --font-title: "fot-tsukuardgothic-std", sans-serif;

    --grid-template-column: [container-start] var(--mp-container) [content-start] 1fr [content-end] var(--mp-container) [container-end];
    --grid-column-container: container-start / container-end;
    --grid-column-content: content-start / content-end;
    --mp-container: 24px;


    --padding-lr-drawer-nav: 16px;
    --padding-tb-drawer-nav: 32px;

    --header-height: 60px;

    --section-maxWidth: 1200px;
}

* {
    color: var(--color-text);
    scroll-behavior: smooth;
    scroll-padding-top:60px;
    font-family: "Noto Sans JP",sans-serif;
}

form {
    position: relative;
}

form>.product_detail_submit_overlay {
    z-index: 9;
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    height: 100%;
    width: 100%;
    cursor: pointer;
    opacity: 0;
}

.ec-searchProductRole {
    margin: 0 14px;
}

.detailedSearch_div {
    display: none;
}

.sp_title_area {
    display: none;
}

.ec-searchProductRole .ec-searchProductRole__btn {
    margin: 0;
}

.ec-inlineBtn--primary.titleSearch-btn,
.ec-inlineBtn--primary.detailedSearch-btn {
    text-align: left;
    display: block;
    margin-bottom: 8px;
    padding: 10px 16px;
    line-height: 1.42857;
    font-size: 14px;
    background-color: #525263;
    border: 1px solid #525263;
    border-radius: 8px;
    color: #FFF;
    font-weight: bold;
    cursor: pointer;
    white-space: nowrap;
}

.ec-inlineBtn--primary.titleSearch-btn:hover,
.ec-inlineBtn--primary.detailedSearch-btn:hover {
    background-color: #323243;
    border-color: #323243;
}

.ec-inlineBtn--primary.titleSearch-btn:active,
.ec-inlineBtn--primary.detailedSearch-btn:active {
    background-color: #222233;
    border-color: #222233;
}

.detailedSearch-btn:hover {
    opacity: 0.9;
}

.form-group {
    margin: 0 auto;
}

@media screen and (max-width: 428px) {

    .detailedSearch-h-div,
    .detailedSearch-m-div {
        width: 50%;
    }

    .ec-inlineBtn--primary,
    .detailedSearch-btn {
        font-family: sans-serif;
        font-size: 12px;
        padding: 10px;
    }
}

@media screen and (max-width: 319px) {

    .ec-inlineBtn--primary,
    .detailedSearch-btn {
        font-size: 10px;
        padding: 6px;
    }
}

#excludeStock {
    float: right;
}

.sf_ranking {
    display: block;
    width: 80%;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 30px;
    padding: 3px 0;
    border: solid 1px;
    border-color: black;
    text-align: center;
}

.sf_title-logo {
    height: 80px;
    object-fit: contain;
}

.ec-pageHeader--mallShop {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 2rem;
}

.ec-headerNaviRole-h1 {
    display: flex;
    align-items: end;
    gap: 4px;
    margin: 0;
    font-size: 16px;
}

@media screen and (min-width: 1131px) {
    .ec-pageHeader--mallShop {
        padding: 0;
    }
}

.splide-container {
    position: relative;
    width: 100%;
}

.splide-skeleton {
    display: flex;
    gap: 1rem;
    overflow: hidden;
}

.skeleton-slide {
    width: 100%;
    height: 258px;
    background-color: #e0e0e0;
    border-radius: 8px;
    animation: skeleton-loading 1.2s infinite;
}

@keyframes skeleton-loading {
    0% {
        background-color: #e0e0e0;
    }

    50% {
        background-color: #f0f0f0;
    }

    100% {
        background-color: #e0e0e0;
    }
}

@media (max-width: 768px) {
    .skeleton-is-pc {
        display: none;
    }

    .splide-skeleton {
        justify-content: space-between;
    }
}

.sake_moji {
    font-size: 18px !important,
        font-weight: bold,
        text-align: right,
        line-height: 1.5em
}

.sp_space {
    height: 54px;
}

.ec-role,
.ec-searchnavRole,
.ec-layoutRole__contents {
    margin-top: 0 !important;
}

.breadcrumb-container {
    position: relative;
    top: 0;
}

.ec-searchProductRole {
    padding: 16px;
    margin: 0 0 16px;
}

.ec-shelfRole {
    padding: 0 2rem;
}

.ec-searchProductRole .form-group {
    margin-bottom: 0;
}

#home_carousel {
    margin-bottom: 2rem;
    margin-top: 2rem;
}

.ec-searchnavRole .ec-searchnavRole__infos {
    border-top: none;
}

.ec-layoutRole__mainBottom {
    margin-top: 4rem;
}

/*注文完了ページ*/
.a8sales {
    position: absolute;
}

@media only screen and (min-width: 1131px) {

    .sp_space {
        height: 104px;
    }

    .breadcrumb-container .breadcrumb {
        padding: 8px 1rem;
    }

    .ec-searchProductRole .form-group {
        margin-bottom: 0;
    }

    .ec-shelfRole {
        padding: 0;
    }
}

.ec-cartRole {
    margin: 0 auto 3rem;
}

/*20241016*/
.ec-headerNavSP {
    font-size: 0 !important;
    width: 24px !important;
    height: 24px !important;
    padding: 0 !important;
    margin-right: .8rem !important;
}

.ec-headerNaviRole .ec-headerNaviRole-left {
    max-width: 364px;
}

.ec-headerNaviRole .ec-headerNaviRole__right {
    max-width: 520px;
}

#icon__header-hamb {
    width: 24px !important;
    max-width: none !important;
}

@media only screen and (max-width: 360px) {

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__item .ec-headerNav__itemLink,
    .ec-cartNavi .ec-cartNavi__itemLink {
        display: none;
    }

    .ec-headerNav__item {
        width: 25px;
    }

    .ec-headerNaviRole .ec-headerNaviRole__right {
        gap: clamp(10px, 2vw, 16px);
    }

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__itemIcon {
        font-size: 18px;
    }
}

@media only screen and (min-width: 321px) {
    .ec-headerNaviRole .ec-headerNaviRole-left .navi-logoIMG {
        width: clamp(100px, 30vw, 160px);
    }
}

.ec-cartNavi {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    justify-content: center;
    align-items: center;
    width: auto;
    color: #000;
    background: 0 0;
}

.ec-headerNav__itemIcon {
    display: inline-block;
    animation: fadeIn .2s linear 0s;
    width: 24px;
    height: 24px;
}

.ec-headerNav__itemIcon-sp {
    filter: brightness(0) invert(1);
}

.ec-cartNavi__icon {
    display: flex !important;
    align-items: end;
    justify-content: end;
    position: relative;
    color: #000;
    fill: black;
    display: flex;
    width: 24px;
    height: 24px;
}

.ec-cartNavi__badge {
    display: inline-block;
    border-radius: 99999px;
    box-sizing: border-box;
    padding: 5px;
    height: 17px;
    font-size: 10px;
    line-height: 0.6;
    vertical-align: top;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #DE5D50;
    position: absolute;
    left: 60%;
    top: 6px;
}

.ec-cartNavi__price {
    display: none;
}

@media only screen and (min-width: 768px) {
    .ec-cartNavi {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        border-radius: 99999px;
        box-sizing: border-box;
        padding: 12px 17px;
        padding-left: 10px;
        width: auto;
        min-width: 140px;
        height: 44px;
        white-space: nowrap;
        cursor: pointer;
        background: #f8f8f8;
    }

    .ec-cartNavi__icon {
        gap: 8px;
        justify-content: space-between;
        align-items: center;
    }

    .ec-cartNavi__badge {
        min-width: 17px;
        position: relative;
        left: 0;
        top: 0;
        line-height: 0.8;
    }

    .ec-cartNavi__price {
        display: inline-block;
        font-size: 14px;
        font-weight: 400;
        vertical-align: middle;
    }

    .ec-cartNavi__itemLink {
        display: none;
    }
}

@media only screen and (max-width: 360px) {

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__item .ec-headerNav__itemLink,
    .ec-cartNavi .ec-cartNavi__itemLink {
        display: none;
    }
}

.ec-headerSearch__keywordBtn {
    width: 20px;
    padding: 0;
}

.poplink_search,
.poplink_suggest,
.poplink_recommend {
    display: none !important;
}

.navfix .poplink.pc011 {
    width: 90%;
    margin-left: 13px;
}

.navfix .poplink>div.poplink_custom_suggest ._custom {
    border-top: solid 1px transparent;
    border-left: solid 1px #dadada;
    border-right: solid 1px #dadada;
    border-bottom: solid 1px #dadada;
    color: #555;
    background-color: #F6F6F6;
    border-radius: 0 0 8px 8px;
    box-shadow: 1px 5px 6px rgba(0, 0, 0, 0.25);
}

.navfix .poplink>div.poplink_custom_suggest ._custom ._row>div.word {
    width: 100%;
    padding: 8px 5px !important;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #dadada;
}

.navfix .poplink>div.poplink_custom_suggest ._custom ._row>div.word:hover {
    color: #333;
}

.navfix .poplink>div.poplink_custom_suggest ._custom ._row>div.word::after {
    content: "";
    display: block;
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d='M285.5 273L91.1 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.7-22.7c-9.4-9.4-9.4-24.5 0-33.9L188.5 256 34.5 101.3c-9.3-9.4-9.3-24.5 0-33.9l22.7-22.7c9.4-9.4 24.6-9.4 33.9 0L285.5 239c9.4 9.4 9.4 24.6 0 33.9z'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
}

@media only screen and (min-width: 1131px) {
    .navfix .poplink>div.poplink_custom_suggest ._custom {
        opacity: 0.98;
    }
}

.breadcrumb-item,
.breadcrumb-item a {
    font-size: 14px;
}



body {
    overflow: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
}

img {
    display: block;
    width: 100%;
}

a {
    color: var(--color-text);
}

a:hover {
    color: white;
    opacity: .8;
    text-decoration: none;
}

.ec-layoutRole__header,
.breadcrumb-container,
#form1,
#headerLink--about {
    display: none;
}

.ec-layoutRole .ec-layoutRole__contents {
    max-width: 100%;
}

.header-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background-color: white;
    height: fit-content;
}

.header-container.header--extend {
    overflow: scroll;
    height: 100%;
}

.headerTop-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 24px;
    position: relative;
    z-index: 95;
    background-color: white;
    height: 60px;
    max-width: 1240px;
    margin: 0 auto;
}

.left-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.logo-box {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.logo-oshiplus {
    width: 94px;
    height: 25px;
}

.byeeo-box {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 6px;
}

.logo-byeeo {
    width: auto;
    height: 12px;
    margin: 0;
}

.h1 {
    color: var(--color-text-gray);
    leading-trim: both;
    text-edge: cap;
    font-size: 10px;
    font-weight: 400;
    line-height: 14px;
    margin: 0;
    white-space: nowrap;
}

/*.headerTop-container .searchform--oshiplus {*/
/*    display: none;*/
/*}*/

.headerTop-container .links-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-left: auto;
}

.ec-headerNav__item {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: var(--color-text-gray);
    fill: var(--color-text-gray);
}

.ec-cartNavi {
    flex-direction: row !important;
}

.ec-cartNavi .ec-headerNav__itemIcon,
.ec-headerNav__itemIcon {
    font-size: 22px;
    color: var(--color-text-gray) !important;
    fill: var(--color-text-gray) !important;
    gap: 8px;
    justify-content: space-between;
    align-items: center;
}

.ec-headerNav__itemIcon {
    display: flex;
    justify-content: center;
    align-content: center;
}

.ec-headerNav__itemIcon::before {
    display: block;
}

.ec-headerNav__itemLink {
    line-height: 1;
    color: var(--color-text-gray);
    fill: var(--color-text-gray);
}

.headerTop-container .ec-cartNavi {
    background: transparent;
    padding: 0;
}

.headerTop-container .links-container .ec-cartNavi__icon {
    font-size: 24px;
    color: var(--color-text-gray) !important;
}

.headerTop-container .links-container .ec-headerNav__item,
.headerTop-container .links-container .ec-cartNavi__label,
.headerTop-container .links-container .ec-cartNavi__itemLink {
    display: none;
}

.headerTop-container .links-container .ec-cartNavi {
    min-width: fit-content;
}

.hamburger-container {
    position: relative;
    z-index: 99;
    width: fit-content;
    height: 100%;
    width: 44px;
    display: flex;
    justify-content: end;
    align-items: center;
}

.checkbox2 {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

.hamburger-container label {
    margin-bottom: 0;
}

.hamburger-container label:hover {
    cursor: pointer;
}

.hamburger {
    margin: 0 auto;
    width: 20px;
    height: 20px;
    position: relative;
}

.hamburger .bar {
    padding: 0;
    width: 24px;
    height: 3px;
    background-color: var(--color-text-gray);
    display: block;
    border-radius: 4px;
    transition: all 0.4s ease-in-out;
    position: absolute;
}

.bar1 {
    top: 0;
}

.bar2,
.bar3 {
    top: 8px;
}

.bar3 {
    right: -4px;
}

.bar4 {
    bottom: 0;
}

.checkbox2:checked+label .bar1 {
    transform: translateX(40px);
    background-color: transparent;
}

.checkbox2:checked+label .bar2 {
    transform: rotate(45deg);
}

.checkbox2:checked+label .bar3 {
    transform: rotate(-45deg);
}

.checkbox2:checked+label .bar4 {
    transform: translateX(-40px);
    background-color: transparent;
}

.nav-container--oshiplus {
    position: absolute;
    top: -300px;
    left: 0;
    width: 100%;
    opacity: 0;
    z-index: -90;
    transition: all 0.4s ease-in-out;
    background: var(--color-gradientLight);
    height: 0;
}

.nav-container--oshiplus .nav-box {
    background-color: white;
    max-width: 960px;
    margin: 0 auto;
    transition: opacity .5s ease-in-out, top 0.1s ease-in-out;
}

.nav--show {
    top: var(--header-height);
    opacity: 1;
    transition: opacity .5s ease-in-out, top 0.1s ease-in-out;
    z-index: 90;
    height: 100%;
}

.nav-box .links-container {
    display: flex;
}

.nav-box .links-container>* {
    width: 100%;
    border-top: 1px solid #E5E5E5;
    border-right: 1px solid #E5E5E5;
    border-bottom: 1px solid #E5E5E5;
    border-radius: 0;
    height: 60px;
}

.nav-box .links-container .ec-cartNavi {
    justify-content: center;
    background-color: transparent;
}

.nav-box .links-container .ec-cartNavi__label,
.nav-box .links-container .ec-cartNavi__badge {
    display: none;
}

.nav-box .links-container .ec-cartNavi__itemLink {
    display: block;
}

.nav-box .searchform--oshiplus {
    margin: 16px 24px;
}

.nav-list {
    margin-bottom: 0;
}

.parent-box {
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}

.parent-category {
    border: none;
    background-color: transparent;
    width: 100%;
    padding: 0;
    min-height: 28px;
    padding: 24px 0px 24px 24px;
    display: grid;
    grid-template-columns: 12px 1fr 60px;
    align-items: center;
}

.parent-category .text {
    font-size: 14px;
    line-height: 14px;
    width: 100%;
    text-align: left;
    margin-left: 12px;
}

.parent-category.category--trend {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    border-top: 1px solid rgba(0, 0, 0, 0.10);
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}

.parent-category.category--trend .text {
    width: fit-content;
}

.parent-category .category--trend-arrow {
    display: block;
    margin: auto;
}

.plus-container {
    position: relative;
    margin-left: auto;
    width: 60px;
    height: 20px;
}

.plus-box {
    position: absolute;
    inset: 0 0 0 0;
    width: 3px;
    height: 16px;
    background-color: var(--color-text-gray);
    margin: auto;
    border-radius: 20px;
    rotate: 0deg;
    transition: all 0.1s ease-in-out;
    opacity: 1;
}

.plus-box.open {
    rotate: 90deg;
    opacity: 0;
    transition: all 0.4s ease-in-out;
}

.minus-box {
    position: absolute;
    inset: 0 0 0 0;
    width: 16px;
    height: 3px;
    background-color: var(--color-text-gray);
    margin: auto;
    border-radius: 20px;
}

.child-container {
    position: fixed;
    z-index: -5;
    opacity: 0;
    height: 1px;
    min-height: 1px;
}

.child-container.open {
    position: static;
    z-index: 0;
    opacity: 1;
    height: 150px;
    min-width: fit-content;
    transition: all 0.5s ease-in-out;
    height: 100%;
}

.child-link {
    padding: 16px 49px;
    display: none;
    align-items: center;
    gap: 10px;
    line-height: 1;
    color: var(--color-text);
    font-size: 12px;
}

.child-link.open {
    display: flex;
    transition: all 0.5s ease-in-out;
}

.child-link:hover {
    color: var(--color-text);
}

.child-link::before {
    content: "";
    display: block;
    width: 10px;
    height: 2.4px;
    background: var(--color-gradientLight);
}

header .trend-list {
    display: inline-flex;
    justify-content: start;
    align-items: center;
    flex-wrap: nowrap;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    width: fit-content;
    user-select: none;
    position: relative;
    width: 100%;
    gap: 10px 4px;
    margin-bottom: 0;
    height: 40px;
    padding: 0 24px;
}

header .trend-item {
    position: relative;
    display: flex;
    height: 27px;
    padding: 0px 16px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 40px;
    background: var(--color-gradient);
    width: fit-content;
}

header .trend-item::before {
    content: "";
    display: block;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    margin: auto;
    inset: 0 0 0 0;
    background-color: white;
    z-index: 1;
    border-radius: 50px;
}

header .trend-link {
    position: relative;
    z-index: 2;
    text-align: center;
    leading-trim: both;
    text-edge: cap;
    font-family: "Noto Sans JP";
    font-size: 14px;
    line-height: 14px;
    background: var(--color-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    white-space: nowrap;
}

@media screen and (min-width: 768px) {
    .header-container {
        height: fit-content;
    }

    .header-container.header--extend {
        overflow: unset;
        height: fit-content;
    }

    .headerTop-container .searchform--oshiplus {
        display: flex;
        height: 40px;
        margin: auto;
        width: 100%;
        max-width: 330px;
    }

    .headerTop-container .links-container {
        width: 60px;
    }

    .nav-container--oshiplus {
        height: unset;
        overflow: unset;
    }

    .nav--show {
        height: unset;
    }
}

@media screen and (min-width: 1131px) {
    .headerTop-container .searchform--oshiplus {
        max-width: 330px;
    }

    .headerTop-container .links-container {
        width: fit-content;
    }

    .headerTop-container .links-container .ec-headerNav__item,
    .headerTop-container .links-container .ec-cartNavi__label {
        display: flex;
    }

    header .links-container .ec-cartNavi {
        min-width: fit-content;
        color: var(--color-text-gray);
        text-align: center;
        font-size: 21px;
        font-weight: 900;
        line-height: 14px;
        border-radius: 100px;
        border: 1px solid #F0F0F0;
        padding: 5px 17px 5px 10px;
    }

    .nav-container--oshiplus {
        padding: 24px 0px;
    }

    .nav-list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }

    .parent-category {
        padding: 0;
    }

    .parent-category:hover {
        cursor: unset;
    }

    .parent-category.category--trend {
        padding: 20px 0px;
        gap: 10px;
        justify-content: center;
    }

    .parent-category.category--trend:hover {
        cursor: pointer;
    }

    .parent-category .category--trend-arrow {
        display: none;
    }

    .parent-category .icon-donut--trend {
        display: block;
    }

    .parent-box {
        display: flex;
        padding: 16px 24px;
        flex-direction: column;
        border-right: 1px solid rgba(0, 0, 0, 0.10);
        background: #FFF;
    }

    .parent-category {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .plus-container {
        display: none;
    }

    .child-container {
        position: static;
        display: block;
        opacity: 1;
        height: 100%;
        z-index: 0;
    }

    .child-link {
        padding: 12px 0px;
        display: flex;
    }
}

.oshi_all_div {
    margin-top: var(--header-height);
}

.oshiplus--oshirase-container {
    display: flex;
    padding: 4px 32px;
    justify-content: center;
    align-items: center;
    align-self: stretch;
    background: var(--color-gradient);
}

.oshiplus--oshirase {
    color: var(--white, #FFF);
    text-align: center;
    font-size: 12px;
    line-height: 14px;
}

/*.section--kv {*/
/*    display: block;*/
/*    padding-top: 0;*/
/*    padding-bottom: 0;*/
/*    max-width: 100%;*/
/*}*/

/*.kv-pagination {*/
/*    display: flex;*/
/*    flex-wrap: nowrap;*/
/*    max-width: 400px;*/
/*    margin: 0 auto;*/
/*    display: flex;*/
/*    padding: 8px 0px;*/
/*    justify-content: center;*/
/*    align-items: center;*/
/*    gap: 8px;*/
/*}*/

/*.kv-pagination span {*/
/*    border-radius: 0 !important;*/
/*    width: 100%;*/
/*    background: #CCC;*/
/*    height: 2px;*/
/*    opacity: 1;*/
/*}*/
/*.kv-pagination span.swiper-pagination-bullet-active {*/
/*    background: var(--color-gradient);*/
/*}*/

.section-top {
    position: relative;
    overflow: hidden;
    gap: 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: end;
    height: 100%;
    padding-top: 80px;
    padding-bottom: 80px;
    max-width: 100%;
}

.section-top::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 110%;
    background-size: cover;
    background-position: center;
    background-image: url(https://eeo.today/store/101/html/user_data/oshi/oshi_top_bg-sp.webp);
    z-index: 0;
    top: 0;
}

.top__logo-img {
    width: 280px;
    margin: auto;
    margin-bottom: 0;
    position: relative;
    z-index: 2;
    display: block;
}

.top__description {
    font-family: var(--font-title);
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    line-height: 190%;
    position: relative;
    z-index: 2;
    margin: 0;
}

.top__bg-flowers {
    max-width: 520px;
    position: absolute;
    z-index: 1;
    left: 47%;
    right: 0;
    margin: auto;
    bottom: -10vh;
    top: 0;
    animation: moveUpDown 10s ease-in-out infinite;
    width: 120%;
}

@keyframes moveUpDown {

    0%,
    100% {
        transform: translate(-52%, 0px);
    }

    50% {
        transform: translate(-52%, -20px);
    }
}

.top__byeeo {
    width: 120px;
    position: relative;
    z-index: 1;
}

@media screen and (min-width: 768px) {
    .section-top::before {
        transform: rotate(0deg);
        height: 100%;
        background-image: url(https://eeo.today/store/101/html/user_data/oshi/oshi_top_bg.webp);
    }

    .top__bg-flowers {
        max-width: 840px;
        bottom: -2vh;
        width: 100%;
        left: 49%;
        right: auto;
    }
}

@media screen and (min-width: 1131px) {
    .oshi_all_div::before {
        position: fixed;
        left: 20px;
        top: calc(var(--header-height) + 40px);
        content: "";
        display: block;
        height: 580px;
        width: 310px;
        background-image: url('https://eeo.today/store/101/html/user_data/oshi/oshiplus-bg--left.png');
        background-size: 14vw;
        background-repeat: no-repeat;
        background-position: left top;
    }

    .oshi_all_div::after {
        position: fixed;
        right: 20px;
        bottom: 0;
        content: "";
        display: block;
        height: 580px;
        width: 310px;
        background-image: url('https://eeo.today/store/101/html/user_data/oshi/oshiplus-bg--right.png');
        background-size: 14vw;
        background-repeat: no-repeat;
        background-position: right bottom;
    }
}

section {
    display: grid;
    grid-template-columns: var(--grid-template-column);
    row-gap: 40px;
    padding-top: 28px;
    padding-bottom: 32px;
    max-width: var(--section-maxWidth);
    margin: 0 auto;
}

section>* {
    grid-column: var(--grid-column-content);
    width: 100%;
}

.h2-div {
    display: flex;
    margin: 0 auto;
    padding: 0;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
    grid-column: var(--grid-column-container);
}

.h2-bar {
    width: 112px;
    animation: blink-pattern 6s steps(1, start) infinite;
}

@keyframes blink-pattern {

    0%,
    3%,
    45%,
    50%,
    55%,
    100% {
        opacity: 1;
    }

    1.5% {
        opacity: 0;
    }

    /* First blink */
    47.5%,
    52.5% {
        opacity: 0;
    }

    /* Second and third blink */
}

.h2-h2 {
    text-align: center;
    font-family: var(--font-title);
    font-style: italic;
    font-size: 27px;
    font-weight: 700;
    letter-spacing: 2.7px;
    margin: 0;
    text-transform: uppercase;
    white-space: nowrap;
}

.h2-sub {
    text-align: center;
    font-family: var(--font-title);
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    grid-area: 2 / 1 / 3 / 4;
}

.section-description {
    text-align: center;
    color: var(--blue-black, #464650);
    text-align: center;
    leading-trim: both;
    text-edge: cap;
    font-family: "Noto Sans JP";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
    /* 25.2px */
}


.button-oshi {
    border-radius: 100px;
    background: var(--color-gradient);
    display: flex;
    width: 100%;
    max-width: 480px;
    padding: 16px 0px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 0 auto;
    position: relative;

    color: var(--white, #FFF);
    text-align: center;
    font-size: 14px;
    line-height: 150%;
    letter-spacing: 1px;
    max-height: 54px;
}

.button-oshi::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;

    position: absolute;
    right: 20px;
    bottom: 0;
    top: 0;
    margin: auto;

    background: url("https://eeo.today/store/101/html/user_data/oshi/oshi_btn-circle.png") no-repeat center;
    background-size: 100%;
    z-index: 2;
}

.section--line {
    display: block;
    max-width: 424px;
    margin: 0 auto;
}

.text-gradient {
    background: var(--color-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* VISUMO TREND */
.vsm-slider .ecbn-selection-widget-new div.ecbn-selection-wrapper {
    margin: 0;
}

.ecbn-selection-wrapper .ecbn-selection-slide-wrapper {
    width: 100%;
}

.vsm-goods .ecbn-selection-wrapper li.ecbn-selection-item,
.vsm-slider .ecbn-selection-wrapper li.ecbn-selection-item {
    width: unset !important;
}

.vsm-goods .ecbn-selection-wrapper li.ecbn-selection-item>div>a,
.vsm-slider .ecbn-selection-wrapper li.ecbn-selection-item>div>a {
    width: 160px;
    height: 160px;
}

.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction a.ecbn-selection-slider-next,
.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction div.ecbn-selection-slider-next,
.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction a.ecbn-selection-slider-prev,
.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction div.ecbn-selection-slider-prev {
    top: 50% !important;
}

.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction a.ecbn-selection-slider-next:before,
.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction div.ecbn-selection-slider-next:before {
    border-color: #409bfc;
}

.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction a.ecbn-selection-slider-prev:before,
.ecbn-selection-wrapper .ecbn-selection-slider-controls-direction div.ecbn-selection-slider-prev:before {
    border-color: #fc5bef;
}

/* VISUMO INFLUENCER */
.section--influencer .ecbn-selection-page-wrapper .ecbn-selection-snap {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    width: 100% !important;
    height: 100% !important;
}

.vsm-tile .ecbn-selection-page-wrapper li.ecbn-selection-item,
.vsm-tile-goods .ecbn-selection-page-wrapper li.ecbn-selection-item {
    position: static !important;
    width: 100% !important;
}

@media (min-width: 721px) {

    /* VISUMO TREND */
    .vsm-goods .ecbn-selection-wrapper li.ecbn-selection-item>div>a,
    .vsm-slider .ecbn-selection-wrapper li.ecbn-selection-item>div>a {
        width: 300px;
        height: 300px;
    }

    /* VISUMO INFLUENCER */
    .section--influencer .ecbn-selection-page-wrapper .ecbn-selection-snap {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }
}

/* SECTION TREND セクッショントレンド */
.section--trend .section-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.searchform--oshiplus {
    display: flex;
    height: 48px;
    padding: 0px 16px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-radius: 1000px;
    background: var(--color-gradientLight)
}

.searchInput--oshiplus {
    border: none;
    width: 100%;
    height: 100%;
    background-color: transparent;
}

.searchInput--oshiplus:active,
.searchInput--oshiplus:focus-visible,
.searchInput--oshiplus:focus {
    border: none;
}

.searchIcon--oshiplus {
    border: none;
    background: none;
    fill: var(--color-gradient);
}

.searchIcon--oshiplus svg {
    fill: var(--color-gradient);
}

/* SECTION RANKING セクッションランキング　*/
.section-oshiranking {
    top: 0 !important;
    grid-column: var(--grid-column-container);
}

.oshiranking__swiper-slide:hover {
    cursor: pointer;
}

.oshiranking__swiper-imgdiv {
    margin-bottom: 12px;
    position: relative;
}

#splide_titleRankingItems {
    grid-column: var(--grid-column-container);
}

.splide__track {}

.splide__slide::after,
.oshiranking__swiper-imgdiv::after {
    position: absolute;
    z-index: 2;
    border-radius: 6px 0px;
    background: linear-gradient(226deg, rgba(255, 91, 232, 0.40) 0%, rgba(60, 154, 255, 0.40) 102.13%);
    font-size: 14px;
    top: 0;
    left: 0;
    width: 28px;
    height: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#splide_titleRankingItems-slide01::after,
.oshiranking__swiper-slide:nth-of-type(1) .oshiranking__swiper-imgdiv::after {
    content: "1";
}

#splide_titleRankingItems-slide02::after,
.oshiranking__swiper-slide:nth-of-type(2) .oshiranking__swiper-imgdiv::after {
    content: "2";
}

#splide_titleRankingItems-slide03::after,
.oshiranking__swiper-slide:nth-of-type(3) .oshiranking__swiper-imgdiv::after {
    content: "3";
}

#splide_titleRankingItems-slide04::after,
.oshiranking__swiper-slide:nth-of-type(4) .oshiranking__swiper-imgdiv::after {
    content: "4";
}

#splide_titleRankingItems-slide05::after,
.oshiranking__swiper-slide:nth-of-type(5) .oshiranking__swiper-imgdiv::after {
    content: "5";
}

#splide_titleRankingItems-slide06::after,
.oshiranking__swiper-slide:nth-of-type(6) .oshiranking__swiper-imgdiv::after {
    content: "6";
}

#splide_titleRankingItems-slide07::after,
.oshiranking__swiper-slide:nth-of-type(7) .oshiranking__swiper-imgdiv::after {
    content: "7";
}

#splide_titleRankingItems-slide08::after,
.oshiranking__swiper-slide:nth-of-type(8) .oshiranking__swiper-imgdiv::after {
    content: "8";
}

#splide_titleRankingItems-slide09::after,
.oshiranking__swiper-slide:nth-of-type(9) .oshiranking__swiper-imgdiv::after {
    content: "9";
}

#splide_titleRankingItems-slide10::after,
.oshiranking__swiper-slide:nth-of-type(10) .oshiranking__swiper-imgdiv::after {
    content: "10";
}

.splide__slide-imgdiv {
    position: relative;
}

.splide__slide-imgdiv::before,
.oshiranking__swiper-imgdiv::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: var(--color-gradient);
    position: absolute;
    right: -3px;
    bottom: -3px;
    z-index: 0;
    border-radius: 6px;
}

.splide__slide img,
.splide__slide-img,
.oshiranking__swiper-img {
    width: 100%;
    position: relative;
    z-index: 1;
    border-radius: 6px;
    border: none;
    margin-bottom: 12px;
}

.splide__slide .item-name,
.oshiranking__swiper-title {
    font-size: 12px;
    line-height: 150%;
    font-weight: 400;
    text-decoration: none;
    margin: 0 0 8px 0;
}

.splide__slide .item-kakaku,
.oshiranking__swiper-price {
    font-size: 12px;
    line-height: 150%;
    font-weight: 400;
    text-align: left;
    color: var(--color-text-gray);
}

.splide__slide a:hover,
.splide__slide a:hover .item-name,
.splide__slide a:hover .item-kakaku,
.goods__card-slide:hover .goods_card-slide-title,
.goods__card-slide:hover .goods_card-slide-price,
.media__card:hover .media__card-title,
.media__card:hover .media__card-more {
    background: var(--color-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    text-decoration: none;
}

/*.splide__arrows .custom-arrows,*/
/*.ranking-btn-prev,*/
/*.ranking-btn-next {*/
/*    display: none;*/
/*}*/

.splide__arrows .splide__arrow--prev,
.ranking-btn-prev {
    display: block;
    color: white;
    left: 0;
    top: 40%;
    border: none;
    background: white;
    border-radius: 0;
    width: 42px;
    height: 42px;
}

.splide__arrows .splide__arrow--next,
.ranking-btn-next {
    display: block;
    color: white;
    right: 0;
    top: 40%;
    border: none;
    background: white;
    border-radius: 0;
    width: 42px;
    height: 42px;
}

.splide__arrows .splide__arrow--next:hover,
.splide__arrows .splide__arrow--prev:hover {
    background: transparent;
}

.splide__arrows .splide__arrow--prev svg {
    fill: #fc5bef;
}

.splide__arrows .splide__arrow--next svg {
    fill: #409bfc;
}

.ranking-btn-prev::after,
.ranking-btn-next::after {
    font-size: 24px;
    font-weight: bold;
}

/* SECTION COLORS セクッションカラー */
.colors-description {
    text-align: center;
    leading-trim: both;
    text-edge: cap;
    font-family: "Noto Sans JP";
    font-size: 20px;
    line-height: 1;
    letter-spacing: 8px;
    width: fit-content;
    margin: 0 auto;
}

.color-list {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    gap: 8px;
    flex-wrap: wrap;
    grid-column: var(--grid-column-content);
}

.color-list-box {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    gap: 8px;
}

.color-link {
    display: flex;
    width: 72px;
    height: 72px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 100px;

    color: #FFF;
    text-align: center;
    leading-trim: both;
    text-edge: cap;
    line-height: 100%;
}

.color-link--red {
    background: #F88;
}

.color-link--pink {
    background: #F68DBE;
}

.color-link--yellow {
    background: #F5B96A;
}

.color-link--green {
    background: #53DDA1;
}

.color-link--blue {
    background: #5DCDF9;
}

.color-link--purple {
    background: #B96AF5;
}

.color-link--brown {
    background: #D29676;
}

.color-link--gray {
    background: #A09B9B;
}

.color-link--black {
    background: #4D4545;
}

.color-link--white {
    color: #A09191;
    border-radius: 100px;
    border: 2px solid #E5E1E1;
    background: #FFF;
}

/* SECTION GOODS セクッショングッズ */

.goods__card {
    display: grid;
    row-gap: 40px;
    position: relative;
}

.goods__card>* {
    grid-column: var(--grid-column-content);
}

.goods__card-title {
    display: flex;
    align-items: center;
    gap: 10px;
    overflow: hidden;
}

.goods__card-title-text {
    white-space: nowrap;
    font-family: var(--font-title);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
}

.goods__card-title-icon {
    height: 10px;
}

.goods__card-description {
    font-size: 14px;
    line-height: 180%;
}

.slider--goods {
    padding-left: 32px;
    padding-right: 32px;
    grid-column: var(--grid-column-container);
    width: 100%;
}

.goods__card-slide {
    display: flex;
    flex-direction: column;
    justify-content: start;
}

.goods_card-slide-imgdiv {
    position: relative;
    margin-bottom: 12px;
}

.goods_card-slide-imgdiv::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: var(--color-gradient);
    position: absolute;
    right: -3px;
    bottom: -3px;
    z-index: 0;
    border-radius: 6px;
}

.goods_card-slide-img {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1;
    border-radius: 6px;
}

.goods_card-slide-title {
    font-size: 12px;
    line-height: 150%;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    color: var(--color-text);
}

.goods_card-slide-price {
    font-size: 12px;
    line-height: 150%;
    text-align: left;
    color: var(--color-text-gray);
}

.ec-searchnavRole {
    display: none;
}

.ec-shelfRole {
    padding: 0 16px;
    grid-column: var(--grid-column-container);
}

.ec-shelfGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 24px;
    column-gap: 8px;
    padding: 2px;
    max-width: var(--section-maxWidth);
    margin: 0 auto;
}

.ec-shelfGrid .ec-shelfGrid__item,
.ec-shelfGrid .ec-shelfGrid__item:nth-child(odd),
.ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {
    padding: 0;
    margin: 0;
    width: 100%;
    overflow: hidden;
}

.ec-shelfGrid a {
    display: block;
}

.ec-shelfGrid .ec-shelfGrid__item-image {
    margin: 0;
    margin-bottom: 12px;
    max-height: unset;
}

.ec-shelfGrid .ec-shelfGrid__item img {
    border: none;
    max-height: unset;
    height: auto;
    width: 100%;
    border-radius: 6px;
}

.ec-shelfGrid a {
    position: relative;
}

.ec-shelfGrid .ec-shelfGrid__item-title {
    color: var(--blue-black, #464650);
    leading-trim: both;
    text-edge: cap;
    font-size: 11px;
    font-weight: 400;
    line-height: 150%;
    margin-bottom: 8px;
}

.ec-shelfGrid .ec-shelfGrid__item-price {
    padding: 0;
    word-break: keep-all;
    width: 100%;
    margin-bottom: 0;

    color: var(--color-text-gray);
    font-size: 11px;
    font-weight: 400;
    line-height: 150%;
}

.ec-shelfGrid__label {
    margin-bottom: 0;
}

.ec-shelfGrid .ec-shelfGrid__item-desc {
    padding: 4px 2px 0;
    font-size: 12px !important;
    white-space: nowrap;
    text-align: center;
    display: none !important;
}

.ec-pager .ec-pager__item,
.ec-pager .ec-pager__item--active {
    padding: 0;
}

.ec-pager .ec-pager__item--active a {
    background: var(--color-gradient);
    color: white;
}

.ec-shelfGrid .ec-shelfGrid__item-image .sold_deco_area {
    left: 0 !important;
}

.ec-shelfGrid .ec-shelfGrid__item-image .sold_deco_area .sold_text {
    word-break: keep-all;
}

@media screen and (min-width: 768px) {
    /*.splide__arrows .splide__arrow--prev,*/
    /*.ranking-btn-prev {*/
    /*    left: -40px;*/
    /*}*/

    /*.splide__arrows .splide__arrow--next,*/
    /*.ranking-btn-next {*/
    /*    right: -40px;*/
    /*}*/

    .color-list {
        grid-column: var(--grid-column-container);
    }

    .ec-shelfRole {
        padding: 0;
        grid-column: var(--grid-column-content);
    }

    .ec-shelfGrid {
        grid-template-columns: repeat(5, 1fr);
        grid-column: var(--grid-column-content);
    }

    .h2-bar {
        width: 112px;
    }

    .button-oshi {
        max-width: 480px;
    }

    .swiper-oshiranking {
        padding-left: 0;
        padding-right: 4px;
    }

    .splide__track {
        padding: 0 !important;
        padding-right: 4px !important;
    }

    .goods__card>* {
        grid-column: var(--grid-column-container);
    }

    .slider--goods {
        padding-left: 0;
        padding-right: 4px;
    }

    .button-goods {
        max-width: 330px;
    }
}

@media screen and (min-width: 1131px) {
    .section--products {
        max-width: 1980px;
    }

    .nav-box .links-container,
    .nav-box .searchform--oshiplus {
        display: none;
    }

    .headerTop-container .links-container .ec-cartNavi {
        min-width: 150px;
    }
}

@media only screen and (max-width: 360px) {

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__item .ec-headerNav__itemLink,
    .ec-cartNavi .ec-cartNavi__itemLink {
        display: none;
    }

    .ec-headerNav__item {
        width: 25px;
    }

    .ec-headerNaviRole .ec-headerNaviRole__right {
        gap: clamp(10px, 2vw, 16px);
    }

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__itemIcon {
        font-size: 18px;
    }
}

@media only screen and (min-width: 321px) {
    .ec-headerNaviRole .ec-headerNaviRole-left .navi-logoIMG {
        width: clamp(100px, 30vw, 160px);
    }
}

/*20241016 header_css.twig から、コピペ*/
.ec-cartNavi {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    justify-content: center;
    align-items: center;
    width: auto;
    color: #000;
    background: 0 0;
}

.ec-headerNav__itemIcon {
    display: inline-block;
    animation: fadeIn .2s linear 0s;
    width: 24px;
    height: 24px;
}

.ec-headerNav__itemIcon-sp {
    filter: brightness(0) invert(1);
}

.ec-cartNavi__icon {
    display: flex !important;
    align-items: end;
    justify-content: end;
    position: relative;
    color: #000;
    fill: black;
    display: flex;
    width: 24px;
    height: 24px;
}

.ec-cartNavi__badge {
    display: inline-block;
    border-radius: 99999px;
    box-sizing: border-box;
    padding: 5px;
    height: 17px;
    font-size: 10px;
    line-height: 0.6;
    vertical-align: top;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #DE5D50;
    position: absolute;
    left: 60%;
    top: 6px;
}

.ec-cartNavi__price {
    display: none;
}

@media only screen and (min-width: 768px) {
    .ec-cartNavi {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        border-radius: 99999px;
        box-sizing: border-box;
        padding: 12px 17px;
        padding-left: 10px;
        width: auto;
        min-width: 140px;
        height: 44px;
        white-space: nowrap;
        cursor: pointer;
        background: #f8f8f8;
    }

    .ec-cartNavi__icon {
        gap: 8px;
        justify-content: space-between;
        align-items: center;
    }

    .ec-cartNavi__badge {
        min-width: 17px;
        position: relative;
        left: 0;
        top: 0;
        line-height: 0.8;
    }

    .ec-cartNavi__price {
        display: inline-block;
        font-size: 14px;
        font-weight: 400;
        vertical-align: middle;
    }

    .ec-cartNavi__itemLink {
        display: none;
    }
}

@media only screen and (max-width: 360px) {

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__item .ec-headerNav__itemLink,
    .ec-cartNavi .ec-cartNavi__itemLink {
        display: none;
    }
}

@media only screen and (max-width: 360px) {

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__item .ec-headerNav__itemLink,
    .ec-cartNavi .ec-cartNavi__itemLink {
        display: none;
    }

    .ec-headerNav__item {
        width: 25px;
    }

    .ec-headerNaviRole .ec-headerNaviRole__right {
        gap: clamp(10px, 2vw, 16px);
    }

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__itemIcon {
        font-size: 18px;
    }
}

@media only screen and (min-width: 321px) {
    .ec-headerNaviRole .ec-headerNaviRole-left .navi-logoIMG {
        width: clamp(100px, 30vw, 160px);
    }
}

/*20241016 header_css.twig から、コピペ*/
.ec-cartNavi {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    justify-content: center;
    align-items: center;
    width: auto;
    color: #000;
    background: 0 0;
}

.ec-headerNav__itemIcon {
    display: inline-block;
    animation: fadeIn .2s linear 0s;
    width: 24px;
    height: 24px;
}

.ec-headerNav__itemIcon-sp {
    filter: brightness(0) invert(1);
}

.ec-cartNavi__icon {
    display: flex !important;
    align-items: end;
    justify-content: end;
    position: relative;
    color: #000;
    fill: black;
    display: flex;
    width: 24px;
    height: 24px;
}

.ec-cartNavi__badge {
    display: inline-block;
    border-radius: 99999px;
    box-sizing: border-box;
    padding: 5px;
    height: 17px;
    font-size: 10px;
    line-height: 0.6;
    vertical-align: top;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #DE5D50;
    position: absolute;
    left: 60%;
    top: 6px;
}

.ec-cartNavi__price {
    display: none;
}

@media only screen and (min-width: 768px) {
    .ec-cartNavi {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        border-radius: 99999px;
        box-sizing: border-box;
        padding: 12px 17px;
        padding-left: 10px;
        width: auto;
        min-width: 140px;
        height: 44px;
        white-space: nowrap;
        cursor: pointer;
        background: #f8f8f8;
    }

    .ec-cartNavi__icon {
        gap: 8px;
        justify-content: space-between;
        align-items: center;
    }

    .ec-cartNavi__badge {
        min-width: 17px;
        position: relative;
        left: 0;
        top: 0;
        line-height: 0.8;
    }

    .ec-cartNavi__price {
        display: inline-block;
        font-size: 14px;
        font-weight: 400;
        vertical-align: middle;
    }

    .ec-cartNavi__itemLink {
        display: none;
    }
}

@media only screen and (max-width: 360px) {

    .ec-headerNaviRole .ec-headerNaviRole__right .ec-headerNav__item .ec-headerNav__itemLink,
    .ec-cartNavi .ec-cartNavi__itemLink {
        display: none;
    }
}

.section--brand {
    grid-template-columns: var(--grid-template-column);
}

.section--brand .card-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    gap: 32px 16px;
}

.section--brand .card-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 16px;
    width: 100%;
}

.section--brand .card-title {
    leading-trim: both;
    text-edge: cap;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
    /* 32.4px */
    text-align: center;
}

.section--brand .card-description {
    leading-trim: both;
    text-edge: cap;
    font-size: 11px;
    font-weight: 400;
    line-height: 180%;
}

.snsaccount-description {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 40px;
    text-align: center;
}

.snslist-container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.snslist-title {
    color: var(--color-text-gray);
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 2.2px;
    font-family: var(--font-title);
    font-style: italic;
    text-transform: uppercase;
}

.snslist-link {
    display: flex;
    width: 40px;
    height: 40px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 50px;
    background: var(--color-gradient);
}

.snslist-img {
    height: 20px;
    width: auto;
}

.influencer-swiper {
    grid-column: var(--grid-column-container);
    width: 100%;
    padding-left: 24px;
    padding-right: 24px;
}

.influencer-swiper .slide-description-container {
    display: flex;
    padding: 8px;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
}

.influencer-swiper .slide-title {
    color: var(--color-text-gray);
    font-size: 12px;
    line-height: 180%;
}

.influencer-swiper .slide-description {
    font-size: 13px;
    line-height: 140%;
}

.influencer-swiper .slide-date {
    color: var(--color-text-gray);
    leading-trim: both;

    text-edge: cap;
    font-family: "Noto Sans JP";
    font-size: 10px;
    line-height: 180%;
}

/* VISUMO */
.section--visumo {
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
}

.vsm-gallery {
    position: relative;
}

.slider-fade-right {
    position: absolute;
    right: 0px;
    bottom: -40.714px;
    background: linear-gradient(270deg, #FFF 0%, rgba(255, 255, 255, 0.00) 100%);
    width: 40px;
    height: 500px;
    z-index: 10;
}


/* AMBASSADOR */

/* TOPICS */
.section--topics {
    position: relative;
}

/* ABOUT OSHIPLUS */

.section--aboutoshi {
    text-align: center;
}

.section--aboutoshi .logo-oshiplus {
    width: 226.456px;
    height: 60.228px;
    margin: 0 auto;
}

/* TOPICS */

.oshiplus--topics-swiper .slide-description-container {
    gap: 0;
    padding: 8px 0;
}

.swiper-button-next,
.swiper-button-prev {
    top: 42%;
    width: 42px;
    height: 42px;
    opacity: .9;
    background: white;
}

.swiper-button-prev {
    left: 0;
}

.swiper-button-next {
    right: 0;
}

.oshiplus--topics-swiper .swiper-button-next:after,
.oshiplus--topics-swiper .swiper-button-prev:after {
    font-size: 18px;
    font-weight: 700;
}

.oshiplus--topics-swiper .swiper-button-next:after {
    color: #409bfc;
}

.oshiplus--topics-swiper .swiper-button-prev:after {
    color: #fc5bef;
}

/* RECRUIT */

.banner--recruit {
    max-width: 600px;
    margin: 0 auto;
}

.recruit-description {
    text-align: center;
    leading-trim: both;
    text-edge: cap;
    font-size: 14px;
    font-weight: 400;
    line-height: 180%;
}

/* ABOUT EEO */

.section--abouteeo {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 56px;
    padding: 40px 24px 80px;
    text-align: center;
}

.abouteeo-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.abouteeo-description {
    color: var(--blue-gray, #7E8392);
    text-align: left;
    leading-trim: both;
    text-edge: cap;
    font-size: 14px;
    font-weight: 400;
    line-height: 180%;
}

.abouteeo-copy {
    color: var(--blue-gray, #7E8392);
    text-align: center;
    leading-trim: both;
    text-edge: cap;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
    /* 21.6px */
}

.snslist-linkcopied {
    opacity: 0;
    position: fixed;
    bottom: -100%;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: flex;
    width: 345px;
    height: 40px;
    padding: 0px 16px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    leading-trim: both;
    text-edge: cap;
    font-size: 16px;
    line-height: 14px;
    transition: all .4s ease-in-out;
    border-radius: 50px;
}

.snslist-linkcopied.display {
    bottom: 20px;
    opacity: 1;
    transition: all .4s ease-in-out;
}

footer p {
    filter: none;
}

@media screen and (min-width: 768px) {
    .section--brand {
        grid-template-columns: var(--grid-column-container);
    }

    .section--brand .card-description {
        font-size: 13px;
        text-align: center;
        margin: 0;
    }

    .snsaccount-description {
        flex-direction: row;
    }

    .abouteeo-box {
        flex-direction: row;
    }

    .abouteeo-description {
        text-align: left;
    }
}

@media screen and (max-width: 358px) {
    .byeeo-box{display: none;}
}
