@charset "UTF-8";
/* --------------------------------------------------------------------------
SECTION
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
}
@media all and (max-width: 767px) {
}

/* --------------------------------------------------------------------------
MC-CATEGORY-LINEUP
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .mc-category-lineup-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(32 / var(--font) * 1rem);
    }
    .mc-category-lineup-list-item {
        width: calc((100% - (32 / var(--font) * 1rem) * 3) / 4);
    }
    .mc-category-lineup-card {
        display: block;
        background: var(--c-white);
        border: solid 1px var(--c-gray-dc);
        border-radius: calc(20 / var(--font) * 1rem);
        overflow: hidden;
        height: 100%;
    }
    .mc-category-lineup-card__inner {
        height: 100%;
    }
    .mc-category-lineup-card__body {
        height: 100%;
    }
    .mc-category-lineup-card-img {
    }
    .mc-category-lineup-card-img img {
        transition: var(--transition-all);
    }
    .mc-category-lineup-card:hover .mc-category-lineup-card-img img {
        transform: scale(1.1);
    }
    .mc-category-lineup-card-text {
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: calc(76 / var(--font) * 1rem);
        padding: calc(4 / var(--font) * 1rem) calc(20 / var(--font) * 1rem) calc(4 / var(--font) * 1rem);
        position: relative;
        z-index: 1;
    }
    .mc-category-lineup-card-text__label {
        font-size: calc(18 / var(--font) * 1rem);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: 1.2;
    }
}
@media all and (max-width: 767px) {
    .mc-category-lineup-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(15 / var(--font) * 1rem);
    }
    .mc-category-lineup-list-item {
        width: calc((100% - (15 / var(--font) * 1rem)) / 2);
    }
    .mc-category-lineup-card {
        display: block;
        background: var(--c-white);
        border: solid 1px var(--c-gray-dc);
        border-radius: calc(10 / var(--font) * 1rem);
        overflow: hidden;
        height: 100%;
    }
    .mc-category-lineup-card__inner {
        height: 100%;
    }
    .mc-category-lineup-card__body {
        height: 100%;
    }
    .mc-category-lineup-card-img {
    }
    .mc-category-lineup-card-text {
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: calc(50 / var(--font) * 1rem);
        padding: calc(4 / var(--font) * 1rem) calc(20 / var(--font) * 1rem) calc(4 / var(--font) * 1rem);
        position: relative;
        z-index: 1;
    }
    .mc-category-lineup-card-text__label {
        font-size: calc(14 / var(--font) * 1rem);
        font-weight: bold;
        font-feature-settings: "palt";
        line-height: 1.2;
    }
}

/* --------------------------------------------------------------------------
MC-BRAND-LIST
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .mc-brand-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(36 / var(--font) * 1rem) calc(32 / var(--font) * 1rem);
    }
    .mc-brand-list-item {
        width: calc((100% - (32 / var(--font) * 1rem) * 2) / 3);
    }
    .mc-brand-card {
        display: block;
    }
    .mc-brand-card-img {
        border-radius: calc(20 / var(--font) * 1rem);
        overflow: hidden;
        box-shadow: var(--shadow);
    }
    .mc-brand-card-img img {
        transition: var(--transition-all);
    }
    .mc-brand-card:hover .mc-brand-card-img img {
        transform: scale(1.1);
    }
    .mc-brand-card-read {
        margin-top: calc(8 / var(--font) * 1rem);
    }
}
@media all and (max-width: 767px) {
    .mc-brand-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(25 / var(--font) * 1rem) calc(15 / var(--font) * 1rem);
    }
    .mc-brand-list-item {
        width: calc((100% - (15 / var(--font) * 1rem)) / 2);
    }
    .mc-brand-card {
        display: block;
    }
    .mc-brand-card-img {
        border-radius: calc(10 / var(--font) * 1rem);
        overflow: hidden;
        box-shadow: var(--shadow);
    }
    .mc-brand-card-read {
        margin-top: calc(8 / var(--font) * 1rem);
    }
    .mc-brand-card-read .mc-text {
        --txt-font-size: 13;
        --line-height: 1.6;
    }
}

/* --------------------------------------------------------------------------
MC-SPECIAL-LIST
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .mc-special-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(42 / var(--font) * 1rem) calc(32 / var(--font) * 1rem);
    }
    .mc-special-list-item {
        width: calc((100% - (32 / var(--font) * 1rem) * 3) / 4);
    }
    .mc-special-card {
        display: block;
    }
    .mc-special-list-item--no-border .mc-special-card-img {
        border: 0;
    }
    .mc-special-card-img {
        border-radius: calc(20 / var(--font) * 1rem);
        border: solid 1px var(--c-gray-dc);
        overflow: hidden;
    }
    .mc-special-card-img img {
        transition: var(--transition-all);
    }
    .mc-special-card:hover .mc-special-card-img img {
        transform: scale(1.1);
    }
    .mc-special-card-read {
        margin-top: calc(6 / var(--font) * 1rem);
    }
}
@media all and (max-width: 767px) {
    .mc-special-list {
        display: flex;
        flex-wrap: wrap;
        gap: calc(30 / var(--font) * 1rem) calc(16 / var(--font) * 1rem);
    }
    .mc-special-list-item {
        width: calc((100% - (16 / var(--font) * 1rem)) / 2);
    }
    .mc-special-card {
        display: block;
    }
    .mc-special-list-item--no-border .mc-special-card-img {
        border: 0;
    }
    .mc-special-card-img {
        border-radius: calc(10 / var(--font) * 1rem);
        border: solid 1px var(--c-gray-dc);
        overflow: hidden;
    }
    .mc-special-card-read {
        margin-top: calc(12 / var(--font) * 1rem);
    }
    .mc-special-card-read .mc-text {
        --txt-font-size: 13;
        --line-height: 1.6;
    }
}

/* --------------------------------------------------------------------------
MC-NEWS-LIST
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
    .mc-news-list {
    }
    .mc-news-list-item {
        border-bottom: 1px var(--c-gray-dc) solid;
        margin-bottom: calc(30 / var(--font) * 1rem);
        padding-bottom: calc(30 / var(--font) * 1rem);
    }
    .mc-news-list-item:last-child {
        margin-bottom: 0;
    }
    .mc-news-list-item--news {
    }
    .mc-news-list-item--ir {
    }
    .mc-news-list-item--campaign {
    }
    .mc-news-card {
    }
    .mc-news-card__inner {
    }
    .mc-news-card__body {
    }
    .mc-news-card-heading {
        display: flex;
        align-items: center;
        gap: calc(26 / var(--font) * 1rem);
        margin-bottom: calc(12 / var(--font) * 1rem);
    }
    .mc-news-card-heading-date {
    }
    .mc-news-card-heading-date-text {
    }
    .mc-news-card-heading-date-text__label {
        font-family: var(--f-out);
        font-size: calc(16 / var(--font) * 1rem);
    }
    .mc-news-card-heading-cat {
        display: inline-block;
        min-width: calc(86 / var(--font) * 1rem);
        text-align: center;
    }
    .mc-news-card-heading-cat__inner {
        border-radius: 9999px;
        padding: calc(6 / var(--font) * 1rem) calc(18 / var(--font) * 1rem);
    }
    .mc-news-card-heading-cat--news .mc-news-card-heading-cat__inner {
        background: var(--c-sub-ffc22e);
    }
    .mc-news-card-heading-cat--ir .mc-news-card-heading-cat__inner {
        background: #787878;
    }
    .mc-news-card-heading-cat--sdgs .mc-news-card-heading-cat__inner {
        background: #787878;
    }
    .mc-news-card-heading-cat--campaign .mc-news-card-heading-cat__inner {
        background: var(--c-sub-ffc22e);
    }
    .mc-news-card-heading-cat--marusanai-main .mc-news-card-heading-cat__inner,
    .mc-news-card-heading-cat--marusanai-tottori .mc-news-card-heading-cat__inner {
        background: var(--c-gray-999);
    }
    .mc-news-card-heading-cat--recruit .mc-news-card-heading-cat__inner {
        background: var(--c-gray-999);
    }
    .mc-news-card-heading-cat-text::before {
        color: var(--c-white);
        font-size: calc(14 / var(--font) * 1rem);
        line-height: 1;
        display: block;
    }
    .mc-news-card-heading-cat--soup .mc-news-card-heading-cat__inner,
    .mc-news-card-heading-cat--miso .mc-news-card-heading-cat__inner,
    .mc-news-card-heading-cat--chilled .mc-news-card-heading-cat__inner,
    [data-cat="en"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat__inner,
    [data-cat="ch"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat__inner {
        background: var(--c-main);
    }
    .mc-news-card-heading-cat--news .mc-news-card-heading-cat-text::before {
        content: "お知らせ";
    }
    /* 英語 お知らせ */
    [data-cat="en"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat-text::before {
        content: "Topics";
    }
    /* 中国語 お知らせ */
    [data-cat="ch"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat-text::before {
        content: "新品速报";
    }
    .mc-news-card-heading-cat--ir .mc-news-card-heading-cat-text::before {
        content: "IR";
    }
    .mc-news-card-heading-cat--sdgs .mc-news-card-heading-cat-text::before {
        content: "SDGs";
    }
    .mc-news-card-heading-cat--campaign .mc-news-card-heading-cat-text::before {
        content: "キャンペーン";
    }
    .mc-news-card-heading-cat--marusanai-main .mc-news-card-heading-cat-text::before {
        content: "マルサンアイ本社";
    }
    .mc-news-card-heading-cat--marusanai-tottori .mc-news-card-heading-cat-text::before {
        content: "マルサンアイ鳥取";
    }
    .mc-news-card-heading-cat--recruit .mc-news-card-heading-cat-text::before {
        content: "採用情報";
    }
    .mc-news-card-text {
    }
    .mc-news-card-text__label {
        font-size: calc(18 / var(--font) * 1rem);
        line-height: calc(32.4 / 18);
    }
    .mc-news-card-text__label a {
        background: linear-gradient(var(--c-black), var(--c-black)) 100% 100%/100% 1px no-repeat;
    }
    .mc-news-card-text__label a:hover {
        animation: line-animation 1s cubic-bezier(0.23, 1, 0.32, 1) 0s;
    }
}
@media all and (max-width: 767px) {
    .mc-news-list {
    }
    .mc-news-list-item {
        border-bottom: 1px var(--c-gray-dc) solid;
        margin-bottom: calc(16 / var(--font) * 1rem);
        padding-bottom: calc(16 / var(--font) * 1rem);
    }
    .mc-news-list-item:last-child {
        margin-bottom: 0;
    }
    .mc-news-list-item--news {
    }
    .mc-news-list-item--ir {
    }
    .mc-news-list-item--campaign {
    }
    .mc-news-card {
    }
    .mc-news-card__inner {
    }
    .mc-news-card__body {
    }
    .mc-news-card-heading {
        display: flex;
        align-items: center;
        gap: calc(10 / var(--font) * 1rem);
        margin-bottom: calc(5 / var(--font) * 1rem);
    }
    .mc-news-card-heading-date {
    }
    .mc-news-card-heading-date-text {
    }
    .mc-news-card-heading-date-text__label {
        font-family: var(--f-out);
        font-size: calc(11 / var(--font) * 1rem);
        display: block;
        margin-top: calc(2 / var(--font) * 1rem);
    }
    .mc-news-card-heading-cat {
        display: inline-block;
        min-width: calc(50 / var(--font) * 1rem);
        text-align: center;
    }
    .mc-news-card-heading-cat__inner {
        border-radius: 9999px;
        padding: calc(3 / var(--font) * 1rem) calc(10 / var(--font) * 1rem);
    }
    .mc-news-card-heading-cat--news .mc-news-card-heading-cat__inner {
        background: var(--c-sub-ffc22e);
    }
    .mc-news-card-heading-cat--ir .mc-news-card-heading-cat__inner {
        background: #787878;
    }
    .mc-news-card-heading-cat--sdgs .mc-news-card-heading-cat__inner {
        background: #787878;
    }
    .mc-news-card-heading-cat--campaign .mc-news-card-heading-cat__inner {
        background: var(--c-sub-ffc22e);
    }
    .mc-news-card-heading-cat--marusanai-main .mc-news-card-heading-cat__inner,
    .mc-news-card-heading-cat--marusanai-tottori .mc-news-card-heading-cat__inner {
        background: var(--c-gray-999);
    }
    .mc-news-card-heading-cat--recruit .mc-news-card-heading-cat__inner {
        background: var(--c-gray-999);
    }
    .mc-news-card-heading-cat-text::before {
        color: var(--c-white);
        font-size: calc(10 / var(--font) * 1rem);
        line-height: 1;
        display: block;
    }
    .mc-news-card-heading-cat--soup .mc-news-card-heading-cat__inner,
    .mc-news-card-heading-cat--miso .mc-news-card-heading-cat__inner,
    .mc-news-card-heading-cat--chilled .mc-news-card-heading-cat__inner,
    [data-cat="en"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat__inner,
    [data-cat="ch"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat__inner {
        background: var(--c-main);
    }
    .mc-news-card-heading-cat--news .mc-news-card-heading-cat-text::before {
        content: "お知らせ";
    }
    /* 英語 お知らせ */
    [data-cat="en"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat-text::before {
        content: "Topics";
    }
    /* 中国語 お知らせ */
    [data-cat="ch"] .mc-news-card-heading-cat--news .mc-news-card-heading-cat-text::before {
        content: "新品速报";
    }
    .mc-news-card-heading-cat--ir .mc-news-card-heading-cat-text::before {
        content: "IR";
    }
    .mc-news-card-heading-cat--sdgs .mc-news-card-heading-cat-text::before {
        content: "SDGs";
    }
    .mc-news-card-heading-cat--campaign .mc-news-card-heading-cat-text::before {
        content: "キャンペーン";
    }
    .mc-news-card-heading-cat--marusanai-main .mc-news-card-heading-cat-text::before {
        content: "マルサンアイ本社";
    }
    .mc-news-card-heading-cat--marusanai-tottori .mc-news-card-heading-cat-text::before {
        content: "マルサンアイ鳥取";
    }
    .mc-news-card-heading-cat--recruit .mc-news-card-heading-cat-text::before {
        content: "採用情報";
    }
    .mc-news-card-text {
    }
    .mc-news-card-text__label {
        font-size: calc(14 / var(--font) * 1rem);
        font-feature-settings: "palt";
        line-height: calc(50.4 / 28);
    }
    .mc-news-card-text__label a {
        background: linear-gradient(var(--c-black), var(--c-black)) 100% 100%/100% 1px no-repeat;
    }
}

/* --------------------------------------------------------------------------
SLIDE-PAGINATION
-------------------------------------------------------------------------- */
/* ico-soy */
@media all and (min-width: 768px), print {
    .mc-soy-pagination.swiper-pagination {
        position: static;
        margin-top: calc(24 / var(--font) * 1rem);
    }
    .mc-soy-pagination.swiper-pagination .swiper-pagination-bullet {
        -webkit-mask: url("/assets_v2/img/common/ico_soy.svg") no-repeat center / contain;
        mask: url("/assets_v2/img/common/ico_soy.svg") no-repeat center / contain;
        background: var(--c-gray-dc);
        width: calc(14 / var(--font) * 1rem);
        height: calc(14 / var(--font) * 1rem);
        border-radius: 0;
        opacity: 1;
        margin: 0 calc(8 / var(--font) * 1rem);
        transition: var(--transition-all);
    }
    .mc-soy-pagination.swiper-pagination .swiper-pagination-bullet:hover {
        opacity: 0.7;
    }
    .mc-soy-pagination.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background: var(--c-sub-ffc22e);
        pointer-events: none;
    }
}
@media all and (max-width: 767px) {
    .mc-soy-pagination.swiper-pagination {
        position: static;
        margin-top: calc(16 / var(--font) * 1rem);
        display: flex;
        justify-content: center;
    }
    .mc-soy-pagination.swiper-pagination .swiper-pagination-bullet {
        -webkit-mask: url("/assets_v2/img/common/ico_soy.svg") no-repeat center / contain;
        mask: url("/assets_v2/img/common/ico_soy.svg") no-repeat center / contain;
        background: var(--c-gray-dc);
        width: calc(13 / var(--font) * 1rem);
        height: calc(13 / var(--font) * 1rem);
        border-radius: 0;
        opacity: 1;
        margin: 0 calc(8.5 / var(--font) * 1rem);
    }
    .mc-soy-pagination.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background: var(--c-sub-ffc22e);
        pointer-events: none;
    }
}

/* mv-slide */
@media all and (min-width: 768px), print {
    /* swiper */
    .mv-slide-controller {
        display: flex;
        align-items: center;
        justify-content: end;
        gap: calc(40 / var(--font) * 1rem);
        margin: calc(16 / var(--font) * 1rem) auto 0;
        max-width: calc(1200 / var(--font) * 1rem);
        padding: 0 calc(20 / var(--font) * 1rem);
    }
    .mv-slide-controller-block {
        display: flex;
        align-items: center;
    }
    /* swiper-scrollbar */
    .mv-slide-controller .swiper-scrollbar {
        position: static;
        background: var(--c-gray-dc);
        width: calc(130 / var(--font) * 1rem);
        height: calc(3 / var(--font) * 1rem);
        border-radius: 1.5px;
    }
    .mv-slide-controller .swiper-scrollbar .swiper-scrollbar-drag {
        background: var(--c-main);
        border-radius: 1.5px;
        cursor: pointer;
    }
    /* progressbar */
    .mv-slide-progressbar {
        position: relative;
        width: calc(130 / var(--font) * 1rem);
        height: calc(3 / var(--font) * 1rem);
        background: var(--c-gray-dc);
        border-radius: 1.5px;
        overflow: hidden;
    }
    .mv-slide-progressbar-line {
        display: inline-block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        background: var(--c-main);
        border-radius: 1.5px;
        transform: scaleX(0);
        transform-origin: left center;
        transition-timing-function: linear;
    }
    /* swiper-btn */
    .mv-slide-controller .swiper-button-next,
    .mv-slide-controller .swiper-button-prev {
        position: static;
        width: auto;
        height: auto;
        display: block;
        margin: 0;
        width: calc(14 / var(--font) * 1rem);
        height: calc(14 / var(--font) * 1rem);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }
    .mv-slide-controller .swiper-button-next {
        transform: rotate(180deg);
        margin-left: calc(6 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-button-prev {
        margin-right: calc(6 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-button-prev:after,
    .mv-slide-controller .swiper-button-next:after {
        content: "";
        display: block;
        background: url("/assets_v2/img/top/mv_ico_slide.svg") no-repeat center / contain;
        width: calc(7 / var(--font) * 1rem);
        height: calc(7 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-pagination {
        position: static;
        font-family: var(--f-out);
        font-size: calc(14 / var(--font) * 1rem);
        font-feature-settings: "palt";
        letter-spacing: 0;
    }
    .mv-slide-controller .swiper-pagination .swiper-pagination-current {
        margin-right: calc(4 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-pagination .swiper-pagination-total {
        margin-left: calc(2 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-pagination-current::before,
    .mv-slide-controller .swiper-pagination-total::before {
        content: "0";
    }
}
@media all and (max-width: 767px) {
    /* swiper */
    .mv-slide-controller {
        display: flex;
        align-items: center;
        justify-content: end;
        gap: calc(19 / var(--font) * 1rem);
        margin: calc(10 / var(--font) * 1rem) auto 0;
        padding: 0 calc(15 / var(--font) * 1rem);
    }
    .mv-slide-controller-block {
        display: flex;
        align-items: center;
    }
    /* swiper-scrollbar */
    .mv-slide-controller .swiper-scrollbar {
        position: static;
        background: var(--c-gray-dc);
        width: calc(130 / var(--font) * 1rem);
        height: calc(3 / var(--font) * 1rem);
        border-radius: 1.5px;
    }
    .mv-slide-controller .swiper-scrollbar .swiper-scrollbar-drag {
        background: var(--c-main);
        border-radius: 1.5px;
        cursor: pointer;
    }
    /* progressbar */
    .mv-slide-progressbar {
        position: relative;
        width: calc(65 / var(--font) * 1rem);
        height: 1.5px;
        background: var(--c-gray-dc);
        border-radius: 1.5px;
        overflow: hidden;
    }
    .mv-slide-progressbar-line {
        display: inline-block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        background: var(--c-main);
        border-radius: 1.5px;
        transform: scaleX(0);
        transform-origin: left center;
        transition-timing-function: linear;
    }
    /* swiper-btn */
    .mv-slide-controller .swiper-button-next,
    .mv-slide-controller .swiper-button-prev {
        position: static;
        width: auto;
        height: auto;
        display: block;
        margin: 0;
        width: calc(5.5 / var(--font) * 1rem);
        height: calc(14 / var(--font) * 1rem);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }
    .mv-slide-controller .swiper-button-next {
        transform: rotate(180deg);
        margin-left: calc(6 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-button-prev {
        margin-right: calc(6 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-button-prev:after,
    .mv-slide-controller .swiper-button-next:after {
        content: "";
        display: block;
        background: url("/assets_v2/img/top/mv_ico_slide.svg") no-repeat center / contain;
        width: calc(5.5 / var(--font) * 1rem);
        height: calc(5.5 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-pagination {
        position: static;
        font-family: var(--f-out);
        font-size: calc(10 / var(--font) * 1rem);
        font-feature-settings: "palt";
        letter-spacing: 0;
    }
    .mv-slide-controller .swiper-pagination .swiper-pagination-current {
        margin-right: calc(4 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-pagination .swiper-pagination-total {
        margin-left: calc(2 / var(--font) * 1rem);
    }
    .mv-slide-controller .swiper-pagination-current::before,
    .mv-slide-controller .swiper-pagination-total::before {
        content: "0";
    }
}