@charset "utf-8";

/* -----------------------------
	cate-area
-------------------------------- */
.cate-area {
	padding: 100px 0 0;
	display: flex;
	flex-wrap: wrap;
	gap: 50px 5%;
	justify-content: center;
	/*align-items: center;*/
	position: relative;
    margin: 0 5%;
    min-width: 1200px;
}

.deco-wrap {
	position: absolute;
	opacity: .1;
	top: 130px;
	left: 10%;
}

.deco {
	display: inline-block;
	position: absolute;
	background: url("../img/brush-deco04.webp") center/cover, no-repeat;
	width: 510px;
	height: initial;
	aspect-ratio: 510 / 144;
	z-index: -1;
}

#cate-spring .deco {
	display: inline-block;
	position: absolute;
	top: 100px;
	left: 30%;
	background: url("../img/deco-season-spring01.webp") center/cover, no-repeat;
	width: 417px;
	height: initial;
	aspect-ratio: 417 / 221;
	z-index: -1;
}

#cate-summer .deco {
	display: inline-block;
	position: absolute;
	top: 100px;
	left: 35%;
	background: url("../img/deco-season-summer01.webp") center/cover, no-repeat;
	width: 400px;
	height: initial;
	aspect-ratio: 1364 / 694;
	z-index: -1;
}

#cate-autumn .deco {
	display: inline-block;
	position: absolute;
	top: 140px;
	left: 30%;
	background: url("../img/deco-season-autumn01.webp") center/cover, no-repeat;
	width: 300px;
	height: initial;
	aspect-ratio: 10 / 7;
	z-index: -1;
}

#cate-winter .deco {
	display: inline-block;
	position: absolute;
	top: 80px;
	left: 20%;
	background: url("../img/deco-season-winter01.webp") center/cover, no-repeat;
	width: 500px;
	height: initial;
	aspect-ratio: 946 / 520;
	z-index: -1;
}

.cate-area .txt-wrap {
	width: 45%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.cate-area .limited {
	color: var(--red);
	padding: 10px 20px;
	border: 1px solid var(--red);
	font-size: 1.8rem;
	font-weight: bold;
	font-family: var(--mincho);
	margin: 0 0 20px;
	display: inline-block;
	background: #fff;
	z-index: 1;
	position: relative;
}

.cate-area .catch {
	font-size: 3.2rem;
	word-break: keep-all;
}

.cate-area .sub-catch {
	margin: 20px 0;
	font-size: 2.6rem;
	letter-spacing: .3rem;
	font-family: var(--mincho);
	word-break: keep-all;
}

.cate-area .basic-txt {
	font-family: var(--mincho);
}

.cate-area .basic-txt + .basic-txt {
	margin-top: 10px;
}

.cate-area .basic-txt.kome {
    padding-left: 1.6rem;
    text-indent: -1.6rem;
}

.cate-area .img-wrap {
	width: 40%;
}

/*PCのみ*/
@media screen and (min-width: 769px){
	/*.cate-area .txt-wrap:first-of-type {
		padding-left: calc( ( 100% - 1200px ) / 2 );
	}
	
	.cate-area .txt-wrap:nth-of-type(2) {
		padding-right: calc( ( 100% - 1200px ) / 2 );
	}*/
}

@media screen and (min-width: 769px) and (max-width: 1700px) {
    .cate-area {
        margin: 0 auto;
    }
}

@media screen and (max-width: 768px){
	.cate-area {
		padding: 40px 20px 0;
		gap: 20px 0;
        min-width: initial;
        margin: 0;
	}
	
	.deco-wrap {
		top: 70vw;
		left: initial;
		right: 60%;
        display: none;
	}
	
	.deco {
		width: 240px;
	}
	
	#cate-spring .deco {
		top: 26%;
		left: initial;
		right: -5%;
		width: 70%;
	}
    
    #cate-summer .deco {
        top: 26%;
		left: initial;
		right: -5%;
		width: 70%;
    }

    #cate-autumn .deco {
        top: 26%;
		left: initial;
		right: -5%;
		width: 50%;
    }

    #cate-winter .deco {
        top: 26%;
		left: initial;
		right: -5%;
		width: 70%;
    }
	
	.cate-area .txt-wrap {
		width: 100%;
	}
	
	.cate-area .catch {
		font-size: min(7.4cqw,3.6rem);
		line-height: 1.6;
	}
	
	.cate-area .sub-catch {
		margin: 10px 0;
		font-size: 5cqw;
		letter-spacing: .2rem;
	}
	
	.cate-area .img-wrap {
		width: 100%;
		height: 50vw;
	}
	
	.cate-area .img-wrap:first-of-type {
		order: 1;
	}
	
	.cate-area .txt-wrap:first-of-type {
		order: 2;
	}
	
	.cate-area .img-wrap:nth-of-type(2) {
		order: 3;
	}

	.cate-area .txt-wrap:nth-of-type(2) {
		order: 4;
	}
}

/* -----------------------------
	lineup-area
-------------------------------- */
.lineup-area {
	margin: 100px 0 0;
	padding: 150px 0;
	background: url("../img/bg-washi01.webp");
}

#lineup-spring {
	--season: #F5A4A3;
}

#lineup-summer {
	--season: #99C63B;
}

#lineup-autumn {
	--season: #C95838;
}

#lineup-winter {
	--season: #3356A4;
}

.lineup-area .inner {
	width: calc( 100% - 200px );
	min-width: 1200px;
	margin: 0 auto;
}

.lineup-area .sec-ttl-box {
	width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 1;
}

.lineup-area .sec-ttl-box::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -70px;
	left: -50px;
	background: url("../img/deco-circle-white.webp") center/cover, no-repeat;
	width: 180px;
	height: 184px;
	z-index: -1;
}

.lineup-area .lineup-ttl {
	font-size: 3.2rem;
	font-family: var(--mincho);
	letter-spacing: .3rem;
}

.lineup-area .lineup-ttl .large {
	font-size: 5.0rem;
}

.lineup-area .catch {
	font-size: 2.4rem;
	letter-spacing: .2rem;
}

.lineup-area .basic-txt {
	font-family: var(--mincho);
}

.lineup-area .lineup-block {
	width: 100%;
	margin: 120px 0 0;
}

.lineup-area .lineup-box {
	display: flex;
	gap: 5%;
	justify-content: space-between;
	align-items: center;
}

.lineup-area .lineup-box:not(:first-child) {
	margin: 100px 0 0;
}

.lineup-area .lineup-box .img-wrap {
	width: 45%;
}

.lineup-area .lineup-box .txt-wrap {
	width: 50%;
}

.lineup-area .lineup-name {
	font-size: 2.4rem;
	font-family: var(--mincho);
	display: inline-block;
	padding: 12px 14px 10px;
	color: #fff;
	background: var(--season);
	line-height: 1;
}

.lineup-area .lineup-catch {
	font-size: 3.0rem;
	margin: 30px 0 0;
	font-family: var(--mincho);
	word-break: keep-all;
}

.lineup-area .lineup-sub-catch {
	font-size: 2.4rem;
	margin: 20px 0;
	font-family: var(--mincho);
	word-break: keep-all;
}

/*PCのみ*/
@media screen and (min-width: 768px){
	.lineup-area .lineup-box:nth-child(odd) .txt-wrap {
		padding-right: calc( ( 100% - 1200px ) / 2 );
	}
	
	.lineup-area .lineup-box:nth-child(even) .txt-wrap {
		padding-left: calc( ( 100% - 1200px ) / 2 );
	}
	
	.lineup-area .lineup-box:nth-child(even) {
		flex-direction: row-reverse;
	}
	
}

@media screen and (max-width: 768px){
	.lineup-area {
		margin: 30px 0 0;
		padding: 70px 0 40px;
	}
	
	.lineup-area .inner {
		width: 100%;
		min-width: initial;
	}
	
	.lineup-area .sec-ttl-box {
		width: 100%;
		flex-wrap: wrap;
	}
	
	.lineup-area .sec-ttl-box::before {
		top: -40px;
		left: -30px;
		width: 120px;
		height: initial;
		aspect-ratio: 180 / 184;
	}
	
	.lineup-area .lineup-ttl {
		font-size: 2.8rem;
		letter-spacing: .2rem;
	}
	
	.lineup-area .lineup-ttl .large {
		font-size: 3.6rem;
	}
	
	.lineup-area .catch {
		font-size: 5cqw;
		letter-spacing: .1rem;
		margin: 30px 0 0;
		line-height: 1.8;
	}
	
	.lineup-area .lineup-block {
		margin: 30px 0 0;
	}
	
	.lineup-area .lineup-box {
		flex-wrap: wrap;
		gap: 20px;
	}
	
	.lineup-area .lineup-box:not(:first-child) {
		margin: 30px 0 0;
	}
	
	.lineup-area .lineup-box .img-wrap {
		width: 100%;
		height: 50vw;
	}
	
	.lineup-area .lineup-box .txt-wrap {
		width: 100%;
	}
	
	.lineup-area .lineup-name {
		font-size: 1.8rem;
		padding: 10px 12px;
	}
	
	.lineup-area .lineup-catch {
		font-size: 7.0cqw;
		margin: 15px 0 0;
	}
	
	.lineup-area .lineup-sub-catch {
		font-size: 5cqw;
		margin: 15px 0;
	}
}

/* -----------------------------
	fresh-area
-------------------------------- */
.fresh-area {
	padding: 100px 0 0;
}

.fresh-area .sec-ttl-wrap {
	position: relative;
}

.fresh-area .bg-wrap {
	width: 100%;
	height: 30vw;
	
}

#fresh-king-crab .bg-wrap {
	background: url("../img/ec-fresh-bg-king-crab.webp") center/cover, no-repeat;
}

#fresh-hair-crab .bg-wrap {
	background: url("../img/ec-fresh-bg-hair-crab.webp") center/cover, no-repeat;
}

#fresh-snow-crab .bg-wrap {
	background: url("../img/ec-fresh-bg-snow-crab.webp") center/cover, no-repeat;
}

.fresh-area .sec-ttl-wrap .sec-ttl-box {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 10%;
	color: #fff;
}

.fresh-area .sec-ttl-box::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -50px;
	left: -50px;
	background: url("../img/red-circle.svg") center/cover, no-repeat;
	width: 180px;
	height: 184px;
	z-index: -1;
}

.fresh-area .sec-ttl-box .sec-ttl {
	font-size: 3.6rem;
	font-family: var(--mincho);
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: .2rem;
}

.fresh-area .sec-ttl-box .sec-ttl .large {
	font-size: 6.0rem;
}

.fresh-area .sec-ttl-box .catch {
	font-size: 2.4rem;
	letter-spacing: .2rem;
	margin: 10px 0 0;
}

.fresh-area .sp-scroll-wrap {
    display: contents;
}

.fresh-area .fresh-list {
	display: flex;
	flex-wrap: wrap;
	margin: 100px 0 30px;
	gap: 30px;
}

.fresh-area .fresh-list li {
	width: calc( ( 100% - 60px ) / 3 );
	padding: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	align-content: flex-start;
	border: 1px solid #ddd;
	gap: 20px 30px;
	position: relative;
}

.fresh-area .fresh-list li:not(:last-child)::before {
	content: "";
	display: inline-block;
	position: absolute;
	background: url("../img/flow-arrow-red.svg") center/cover, no-repeat;
	width: 41px;
	height: 7px;
	aspect-ratio: 41 / 7;
	top: 50%;
	transform: translateY(-50%);
	right: -25px;
}

.fresh-area .fresh-list .list-name {
	width: calc( 100% - 90px );
	font-size: 2.8rem;
	font-family: var(--mincho);
	font-weight: 500;
}

.fresh-area .fresh-list .icon-wrap {
	width: 60px;
	height: 60px;
}

.fresh-area .fresh-list .icon-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fresh-area .fresh-list .list-catch {
	font-size: 2.2rem;
	font-family: var(--mincho);
	font-weight: 500;
	line-height: 1.7;
	word-break: keep-all;
	overflow-wrap: break-word;
    color: var(--enji);
}

.fresh-area .fresh-list .list-txt {
	line-height: 2.2;
    font-family: var(--mincho);
}

.fresh-area .kome {
	padding-left: 1.6rem;
	text-indent: -1.6rem;
    font-family: var(--mincho);
}

@media screen and (max-width: 768px){
	.fresh-area {
		padding: 40px 0 0;
	}
	
	.fresh-area .bg-wrap {
		height: 60vw;
	}
	
	.fresh-area .sec-ttl-wrap .sec-ttl-box {
		left: 5%;
	}
	
	.fresh-area .sec-ttl-box::before {
		top: -20px;
		left: -30px;
		width: 120px;
		height: initial;
		aspect-ratio: 180 / 184;
	}
	
	.fresh-area .sec-ttl-box .sec-ttl {
		font-size: 2.8rem;
	}
	
	.fresh-area .sec-ttl-box .sec-ttl .large {
		font-size: 4.0rem;
	}
	
	.fresh-area .sec-ttl-box .catch {
		font-size: 2.0rem;
		letter-spacing: .2rem;
		margin: 10px 0 0;
		word-break: keep-all;
	}
    
    .fresh-area .sp-scroll-wrap {
        width: 100%;
        overflow-x: scroll;
        display: block;
    }
	
	.fresh-area .fresh-list {
		margin: 30px 0 20px;
		gap: 20px;
        flex-wrap: nowrap;
        width: fit-content;
	}
	
	.fresh-area .fresh-list li {
		width: 85vw;
		padding: 20px;
		gap: 15px 20px;
	}
	
	/*.fresh-area .fresh-list li:not(:last-child)::before {
		top: initial;
		left: 50%;
		bottom: -15px;
		transform: translateX(-50%) rotate(90deg);
		right: initial;
	}*/
	
	.fresh-area .fresh-list .icon-wrap {
		width: 40px;
		height: 40px;
	}
	
	.fresh-area .fresh-list .list-name {
		width: calc( 100% - 60px );
		font-size: 2.6rem;
	}
	
	.fresh-area .fresh-list .list-catch {
		font-size: 2.0rem;
	}
}


/* -----------------------------
	.cmn-contents-area
-------------------------------- */

@media screen and (max-width: 768px){
    .cmn-contents-area .cmn-contents-wrap {
        margin: 0;
        overflow-x: initial;
        padding: 0;
    }	
    
    .cmn-contents-area .cmn-contents-wrap .item-block {
        flex-wrap: wrap;
        overflow-x: initial;
        width: 100%;
        gap: 30px;
    }
    
    .cmn-contents-area .cmn-contents-wrap .item-block .item-box {
        width: 100%;
    }
    
    .cmn-contents-wrap .item-block .item-box .img-wrap {
        height: 50vw;
    }
    
    .cmn-contents-wrap .item-block .status {
        top: calc( 50vw - 30px);
    }
}

/* -----------------------------
	〇〇〇
-------------------------------- */

@media screen and (max-width: 768px){
	
}
