.mv-sliders,
.mv-slider {
    height: 50vh;                    /* PCデフォルト */
    max-height: 720px;               /* 大画面で高くなりすぎない */
    min-height: 320px;               /* 小さい画面でも最低限の表示 */
    overflow: hidden;
    position: relative;              /* .mv-textのabsolute基準を確実に */
}
/* モバイル・タブレットで高さを小さく（既存の968px以下を拡張） */
@media screen and (max-width: 1069px) {
    .mv-sliders,
    .mv-slider {
        /*height: 42vh;*/
		min-height: 450px;
    }
}
@media screen and (max-width: 968px) {
    .mv-sliders,
    .mv-slider {
        height: 35vh;
		min-height: 390px;
    }
}
@media screen and (max-width: 768px) {
	.mv-sliders,
	.mv-slider {
		
	}
}
@media screen and (max-width: 540px) {
    .mv-sliders,
    .mv-slider {
        min-height: 300px;
    }
}
@media screen and (max-width: 420px) {
    .mv-sliders,
    .mv-slider {
        min-height: 275px;
    }
}
.mv-slider {
    opacity: 0;
    transition: opacity 140ms ease-out;
    will-change: opacity;/* GPU最適化 */
}
/* Swiperが初期化完了後 フェードイン*/
.mv-slider.swiper-initialized {
    opacity: 1;
}
/* 低速フォールバック*/
.mv-slider.slow-fallback{
	opacity: 1 !important;
    transition: opacity 400ms ease-out;
}

.mv-sliders .mv-slide img ,.mv-sliders .mv-slide a {
    object-fit: cover; /* IE: not support */
    width: 100%;
    height: 100%;
}
.mv-slide {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: 100%;
    line-height: 0;
	background-color: #f6f6f6;
}
.mv-slide a {
    display: block;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.2) 80%);
}
.mv-slide a._backimg-dark03 {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.4) 80%);
}
.mv-slide a._not-shadow{
    background-image:none;
}

.mv-slide a:hover {
    opacity: 10;
}
.mv-text {
    margin: auto;
    position: absolute;
    bottom: 20%;
    left: 0;
    right: 0;
    width: 92%;
    max-width: var(--main-column);
    z-index: 9;
}
.mv-text._low-position--bottom10{
    bottom: 10%;
}
.mv-text h1 {
    color: #fff;
    font-size: clamp(1.125rem, 1.057rem + 0.34vw, 1.313rem);
    font-weight: 500;
    line-height: 1.8em;
    text-shadow: 0 2px 3px rgba(0, 0, 0, 0.4);
}
.mv-text h1 .text01 {
    color: inherit;
    letter-spacing: 0.08em;
    font-size: clamp(1.438rem, 0.938rem + 2.5vw, 2.5rem);
    margin: 0 0 15px;
}
.mv-text h1 .text01 > span{
    display:inline-block;
    color: inherit;
}
.mv-text h1 .text02 {
    color: inherit;
    line-height: 1.5em;
    letter-spacing: 0.05em;
    font-size: clamp(0.938rem, 0.71rem + 1.14vw, 1.563rem);
}

@media screen and (max-width: 540px){
    .mv-text{
        bottom: 14%;
    }
    .mv-text h1 .text01{
        margin: 0 0 9px;
    }
    .mv-slide a{
        background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.3) 70%);
    }
}

/* slide _obento2511 */
.mv-slide.swiper-slide._obento2511{
    background-image: url(https://ishidaya029.xsrv.jp/files/toriko/assets/images/slider_obento2511_pc.webp);
}
@media screen and (max-width: 768px) {
    .mv-slide.swiper-slide._obento2511{
        background-image: url(https://ishidaya029.xsrv.jp/files/toriko/assets/images/slider_obento2511_sp.webp);
    }
}
@media screen and (max-width: 420px) {
    .mv-slide.swiper-slide._obento2511{
        background-position: 35% 50%;
    }
}
/* slide hbg509 */
.mv-slide.swiper-slide.hbg509{
    background-image: url(https://ishidaya029.xsrv.jp/files/toriko/assets/images/slider_bulk_pairtoku_pc.webp);
}
a.mv-slide.swiper-slide .mv-text{
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(83, 71, 50, 0.9) 150%);
    bottom: 0;
    width: 100%;
    height: 20%;
    padding-bottom: 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    & h1{
        width: 90%;
    	margin-inline: auto;
        font-size: var(--font-size--x-medium);
    }
}
@media screen and (max-width: 768px) {
    .mv-slide.swiper-slide.hbg509{
    	background-image: url(https://ishidaya029.xsrv.jp/files/toriko/assets/images/slider_bulk_pairtoku03_sp.webp);
	}
}
@media screen and (max-width: 1069px) {
        a.mv-slide.swiper-slide .mv-text{
        padding-bottom: 10px;
    }
}

.main .topReacommend {
    margin-top: -30px;
}
.topReacommend .topReacommend-inner{
    max-width: 860px;
    margin: 0 auto;
}
.topReacommend-body {
	display: grid;
    gap: 30px;
    grid-template-columns: repeat(3, 1fr);
}
.topReacommend__img, .topReacommend__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 968px) {
    .main .topReacommend{
        margin-top:20px;
    }
.topReacommend-body{
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    }
}


/* add category */
.catSubnav{
	margin: 0 0 80px;
    margin-top: -30px;
}
.catSubnav__inner{
	max-width: 860px;
	margin: 0 auto;
}
.catSubnav-items{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}
.catSubnav-item a {
    background: #f2f2f2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
}
.catSubnav__image {
    text-align: center;
    width: 60px;
}
.catSubnav__format-img{
	max-width: 55px;
    clip-path: circle(50%);
   background-color: #fff;
}
.catSubnav__image img[src$=".svg"] {
    max-width: 55px;
    width: 100%;
}
.catSubnav__text {
    width: calc(80% - 60px);
}
.catSubnav__title {
    text-align: center;
    color: #b78939;
    font-weight: 500;
    letter-spacing: 0.08em;
    padding-bottom: 0.052em;
    line-height: 1.2;
    & span{
		color: inherit;
    }
    &._sp-show{
        display:none;
    }
    &._pc-show{
     	display:block;   
    }
}
.catSubnav__title._line-break{
    letter-spacing: 0em;
    font-size: 95%
}
.catSubnav__title._line-break span{
	display: inline-block;
}
.catSubnav__title._line-break._pc-show .line-1 {
    font-size: 13.8px;
    font-weight: 550;
}
.catSubnav-item:where(.subnav02) .catSubnav__title{
	letter-spacing: 0.04em;
    font-size: 98%;
}

@media screen and (max-width: 968px) {
    .catSubnav{
     margin: 0 0 60px;   
    }
	.catSubnav__inner{
        width: 95%;
    }
}
@media screen and (max-width: 768px) {
    .catSubnav__inner {
    	max-width: 480px;
        width: 85%;
	}
     .catSubnav-items {
    	gap: 3%;
	}
	.catSubnav-item a {
    	flex-direction: column;
        background: none;
	}
	.catSubnav__image, .catSubnav__text {
    	width: 100%;
	}
    .catSubnav__format-img{
        background-color: #ebebeb;
    }
    .catSubnav-item .catSubnav__title{
        font-size: clamp(0.875rem, 0.786rem + 0.45vw, 1rem);
    }
	.catSubnav__title {
    	margin: 0;
        &._sp-show{
         	display:block;
        }
        &._pc-show,.pc-only{
            display:none;
        }
    }
    .catSubnav-item.subnav03 .catSubnav__title{
        letter-spacing: 0;
    }
    .catSubnav-item.subnav04 .catSubnav__title{
        font-size:clamp(0.813rem, 0.76rem + 0.26vw, 0.875rem);
    }
}
@media screen and (max-width: 400px) {
    .catSubnav__inner {
        width: 90%;
	}
    .catSubnav-items {
    	gap: 5px;
	}
	.catSubnav__format-img,.catSubnav__image img[src$=".svg"] {
    	max-width: 50px;
	}
}

/* アイコン */
.item-card__tag._looplist {
    gap: .5em;
}
.item-card__tag._looplist li{
    font-size: 14px;
    padding: 3px 15px;
    background: #999;
    color: #fff;
    letter-spacing: .09em;
    /* min-width: 90px; */
    text-align: center;
}
.item-card__tag._looplist .cr4{
    display:none;
}
.item-card__tag._looplist .cr5 {
    background-color: #c1a06b;
}


/* top ランキング */
.ranking-head, .newarrival-head {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}
a.ranking-head_read-more, a.newarrival-head_read-more{
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: .3em;
    padding: 5px;
}
a.ranking-head_read-more img, a.newarrival_read-more img {
    height: auto;
    width: 2.5em;
}

.ranking-body .item-card__image{
    position: relative;
    & .ranking-num {
    position: absolute;
    top: 0;
    left: 0;
    width: 35px;
    height: 35px;
    background: #424242;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    border-bottom: 2px solid;
    border-right: 2px solid;
    border-color: #c0c0c0;
    }
}
