@charset "utf-8";
/* CSS Document */
/* ■■■■■ 基本部分 ■■■■■ */

#irisfes *,
#irisfes *::before,
#irisfes *::after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html,
body,
#irisfes h1,
#irisfes h2,
#irisfes h3,
#irisfes h4,
#irisfes h5,
#irisfes h6,
#irisfes ul,
#irisfes ol,
#irisfes dl,
#irisfes li,
#irisfes dt,
#irisfes dd,
#irisfes p,
#irisfes div,
#irisfes span,
#irisfes img,
#irisfes a,
#irisfes table,
#irisfes tr,
#irisfes th,
#irisfes td {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}

#irisfes header,
#irisfes footer,
#irisfes nav,
#irisfes section,
#irisfes article,
#irisfes main,
#irisfes aside,
#irisfes figure,
#irisfes figcaption {
    display: block;
}

#irisfes ol,
#irisfes ul,
#irisfes li {
    list-style: none;
    list-style-type: none;
}

#irisfes img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

#irisfes a {
    color: inherit;
    text-decoration: none;
}

#irisfes a:hover {
    opacity: 0.5;
}

#irisfes .no{
    display: none !important;
}


/* ここから追加
================================ */
/* ベース */
#irisfes {
	font-size: 3.5vw;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.2;
	color: #222222;
	background-color: #fbf1d6;
	background-position: 0 26vw;
	background-size: contain;
}

#irisfes div.inner_content{
    width: 95%;
    margin: 0 auto;
}


#irisfes section{
    padding: 2.5vw 0;
}

#irisfes section.title,
#irisfes section.fotter {
    padding: 0 0;
}

#irisfes img {
	width: 100%;
}

#irisfes .smp_none{
display: none !important;
}


/* 共通 見出し
================================ */
#irisfes h2{
	text-align: center;
	font-size: 5vw;
	font-weight: 800;
	padding: 3vw 0;
	color: #fff;
}

#irisfes h3{
	text-align: center;
	font-size: 4.2vw;
	font-weight: 800;
	padding: 3vw 0;
	margin-bottom: 1vw;
	color: #e50928;
	background-color: #fff;
}

#irisfes .item.event h3{/*イベントの時だけ色変更*/
	background-color: #fffaa2;
}

#irisfes p{
	text-align: center;
	font-size: 3vw;
	font-weight: 600;
	padding: 0.5 0;
	color: #fff;
	margin-bottom: 2%;
}

/* 共通 カラム
================================ */
#irisfes ul[class^="col_"]{
	display: flex;
	flex-wrap: wrap;
	gap:1.2vw 1%;
}

#irisfes ul.col_1 > li{
	width:100%;
	margin-bottom: 0vw;
}

#irisfes ul.col_2 > li,
#irisfes ul.col_4 > li{
	width: calc(calc(100% - 1%) / 2);
}

#irisfes ul.col_3 > li,
#irisfes ul.col_5 > li{
	width: calc(calc(100% - calc(1% * 2)) / 3);
}


/*cate_block カテゴリから探す
================================ */
#irisfes .cate_block {
	background-color: #222;
}


/*cate カテゴリ選択
================================ */
#irisfes .cate ul li a{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;

	height: 15vw;
	background-color: #fff;

	text-align: center;
	font-size: 3.5vw;
	font-weight: 800;
	color: #222;

	transition: 0.2s;
}

#irisfes .cate ul li a::before{
	position: absolute;
	font-family: 'Material Icons';
	content: "expand_more";
	transform:translate(50%,-50%);
	bottom:-15%;
	right: 50%;
	font-size: 4vw;
}

/* section event
================================ */
#irisfes section:nth-of-type(2){
	background-color: #dca31b;
}


/* section event
================================ */
#irisfes section.event{
	background-color: #dca31b;
}


/* section event
================================ */
#irisfes section:nth-last-of-type(1){
	background-color: #dca31b;
}

/* item
================================ */


/*商品========*/
#irisfes .item ul.item_box li a{
	padding: 1vw;
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #fff;
	padding-bottom: 2vw;
}

#irisfes .item.event ul.item_box li a{/*イベントの時だけ色変更*/
	background-color: #fffaa2;
}

#irisfes .item ul.item_box dl{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 100%;
}

#irisfes .item ul.item_box dl dt{/*商品名*/
	font-size: 2.7vw;
	font-weight: 800;
	margin-bottom: 1%;
	text-align: center;
	letter-spacing: 0;
	height: 13vw;
	display: flex;
	justify-content: center;
	align-items: center;
}

#irisfes .item ul.item_box dl dd.sale{/*販促あるとき*/
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ea2326;
	width: 100%;
	height:10vw;

	font-size: 3vw;
	font-weight: bold;
	color: #fbff00;
	text-align: center;
}

#irisfes .item ul.item_box dl dd.price_nomal{/*通常価格あるとき*/
	display: flex;
	justify-content: center;
	align-items: center;
	height: 4vw;
	font-size: 2.5vw;
	color: #222;
}


/*価格====================*/
#irisfes .item ul.item_box dl dd.price_block{/*価格*/
	margin-bottom:3%;
	margin-top: auto;
}

#irisfes .item ul.item_box dl dd.price_block .prdisp-taxin{
	font-family: 'Lato';
	color: #ea2326;
	font-weight: 600;
}

#irisfes .item ul.item_box dl dd.price_block .prdisp-taxin span.value{
	font-size: 5.5vw;
}

#irisfes .item ul.item_box dl dd.price_block .prdisp-taxin span{
	font-size: 4vw;
}


#irisfes .item ul.item_box dl dd.btn{/*詳細ボタン*/
	position: relative;
	background-color: #222;
	border-radius: 50px;
	border: solid 2px #222;
	padding: 1.8vw 0;
	width: 100%;
	color: #fff;
	text-align: center;
	font-size: 3vw;
	transition: 0.3s;
}

#irisfes .item ul.item_box dl dd.btn::after{
	position: absolute;
	font-family: 'Material Icons';
	content: "expand_more";
	transform:translate(50%,-50%) rotate(-90deg);
	top:50%;
	right: 10%;
}


/*その他対象商品 ボタン*/
#irisfes a.other_btn{
	position: relative;
	display: block;
	width: 100%;
	padding: 4vw 0;
	margin: 3vw auto;
	background-color: #222;
	border-radius: 50px;
	text-align: center;
	font-size: 4vw;
	color: #fff;
	font-weight: 700;
}

#irisfes a.other_btn::after{
	position: absolute;
	font-family: 'Material Icons';
	content: "expand_more";
	transform:translate(50%,-50%) rotate(-90deg);
	top:50%;
	right: 10%;
}


/* fotter
================================ */
#irisfes section.fotter {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #212121;
    height: 12vw;
    text-align: center;
    color: #fff;
}

#irisfes section.fotter a {
    color: #fff;
    font-size: 4vw;
    padding: 0 2vw;
}

/*top_back TOPに戻る
================================ */
#irisfes .top_back {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    right: 0;
    bottom: 2%;
    background-color: #1b1b1b;
    height: 13vw;
    width: 27vw;
    border-radius: 100px 0 0 100px;
    border: solid 0.7vw #fff;
    border-right: 0;
    z-index: 999;
}

#irisfes .top_back a {
    color: #fff;
    font-size: 4vw;
}
