@charset "UTF-8";
/* index.css */

/* ===== ローディングアニメーション ===== */
body,
main {
	overflow: hidden;
}
body.loaded,
body.loaded main {
	overflow: scroll;
}
body:before {
	content: "";
	width:  100%;
	height: 100vh;
	display: block;
	position: fixed;
	top:  0;
	left: 0;
	z-index: 9900;
	opacity: 1;
	background-color: #fff;
	transition: opacity .5s;
	pointer-events: none;
}
body.loaded:before {
	opacity: 0;
	transition: opacity .5s;
}
body.before_none:before {
	visibility: hidden !important;
}

/* ローディング画面 */
#loading {
	width:  100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 9999;
	background-color: #2ca3da;
	transition: opacity .5s, background-color .5s, visibility .6s;
	pointer-events: none;
}
.loading_animation {
	width: 20%;
	max-width: 200px;
	min-width: 150px;
	transform: translateX(-10%);
}
#loading.anim_start {
	opacity: 1;
	transition: opacity .5s, background-color .5s, visibility .6s;
}
#loading.anim_end {
	opacity: 0 !important;
	visibility: hidden !important;
}

/* ===== メインビジュアル ===== */
#mv {
	width: 100%;
	height: 56.2vw;
	overflow: hidden;
	position: relative;
}
#mv > div {
	width: 100%;
	height: 56.2vw;
	position: absolute;
	top:  0;
	left: 0;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	animation-name: fade;
	animation-duration: 25s;
	animation-iteration-count: infinite;
	opacity: 0;
	z-index: 10;
}
@keyframes fade {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 5;
	}
	80% {
	opacity: 0;
	transform: scale(1.05);
	}
	100% {
	z-index: 0;
	transform: scale(0);
	opacity: 0;
	}
}
#mv > div:first-of-type {
	background-image: url("../../img/index/mvPC01.jpg");
}
#mv > div:nth-of-type(2) {
	background-image: url("../../img/index/mvPC02.jpg");
	animation-delay: 5s;
}
#mv > div:nth-of-type(3) {
	background-image: url("../../img/index/mvPC03.jpg");
	animation-delay: 10s;
}
#mv > div:nth-of-type(4) {
	background-image: url("../../img/index/mvPC04.jpg");
	animation-delay: 15s;
}
#mv > div:nth-of-type(5) {
	background-image: url("../../img/index/mvPC05.jpg");
	animation-delay: 20s;
}


/* ===== Seasonal LineUp ===== */
.seasonal_card {
	position: relative;
	padding: 0 10px;
}
.seasonal_card.limited:before {
	content: "";
	width:  3em;
	height: 3.5em;
	font-size: clamp(12px,1.4vw,14px);
	display: block;
	position: absolute;
	background-image: url(../../img/seasonal/icon_limited.svg);
	background-repeat: no-repeat;
	background-position: center;
	top:  .5em;
	left: 10px;
	transform: translate(.5em);
	z-index: 1;
}
.seasonal_card img {
	object-fit: cover;
	object-position: center;
	aspect-ratio: 3 / 2;
}
.seasonal_card p {
	font-size: clamp(12px,1.4vw,14px);
	text-align: center;
	margin-top: 1em;
	color: #000;
}

@media screen and (max-width:959px) {
	.seasonal_card.limited:before {
		transform: translate(.75em);
	}
}










/* ===== 最初のセクション ===== */
#sec_first .bg_wrap {
	position: relative;
}
.width_wrap {
	width: 55%;
}
.h2_img {
	font-size: 32px;
	font-size: clamp(24px,3.2vw,32px);
	height: 3em;
}
.h2_img img {
	width:  100%;
	height: 100%;
	object-fit: contain;
	object-position: left;
}
/* 画像 */
.width_wrap .img_abs {
	width: 40%;
	position: absolute;
	top:   0;
	right: 0;
}
.img_abs img {
	width: 100%;
}

/* 画像 2カラム */
#sec_first .img_flex {
	width: 100%;
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-end;
	justify-content: space-between;
	z-index: 2;
}
#sec_first .left_img {
	width: 60%;
	margin-right: 4%;
}
#sec_first .right_img {
	width: 40%;
}

/* ----- 背景装飾 ----- */
#sec_first {
	overflow: hidden;
}
#sec_first .wrap,
#sec_first .img_abs {
	z-index: 0;
}
#sec_first .wrap:before,
#sec_first .img_abs:after,
#sec_first .img_flex:after {
	content: "";
	height: 100%;
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
}
/* 左上 紙吹雪 */
#sec_first .width_wrap h2,
#sec_first .width_wrap p  {
	position: relative;
	z-index: 1;
}
#sec_first .wrap:before {
	width: 13%;
	top:  0;
	left: 0;
	background-image: url(../../img/index/first_bg01_pc.png);
	z-index: 0;
}
/* 右上 お菓子 */
#sec_first .img_abs:after {
	width: 100%;
	height: 120%;
	display: block;
	bottom: -65%;
	left:   -35%;
	background-image: url(../../img/index/first_bg02_pc.png);
	z-index: -1;
}
/* 右中央 クッキー */
#sec_first .img_flex:after {
    width:  100%;
    height: 110%;
    top:    -45%;
    right: -22%;
    background-image: url(../../img/index/first_bg03_pc.png);
    background-position: right bottom;
    z-index: -1;
}


/* ===== あなたの想い出の扉 ===== */
.tobira_wrap .h2_img {
	width: 32%;
	max-width: 320px;
	height: auto;
	display: block;
	margin: auto;
}
.tobira_wrap .h2_img img {
	height: 100%;
}
.tobira_wrap h2 small {
	font-size: .95em;
	font-weight: bold;
	letter-spacing: .15em;
	margin-right: .15em;
}
.tobira_wrap h2 span {
	font-weight: 900;
}

/* ----- ループスライダー ----- */
/* スライドの動き等速 */
.swiper-wrapper {
	transition-timing-function: linear;
}
/* 画像のサイズ調整 */
.swiper-slide img {
	width: 100%;
	height: auto;
}


.scroll-infinity__item {
	padding: 0 15px;
}
.scroll-infinity__item > img {
	width: 100%;
}

/* ----- 背景装飾 ----- */
.tobira_wrap {
	position: relative;
	z-index: 2;
}
.tobira_wrap .minwidth_wrap:before,
.tobira_wrap:after  {
	content: "";
	height: 100%;
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: -1;
}
/* 左上 パン */
.tobira_wrap .minwidth_wrap:before {
	width: 30%;
	min-width: 300px;
	top:  -5%;
	left: -2%;
	background-image: url(../../img/index/first_bg04_pc.png);
}
/* 右下 紙吹雪 */
.tobira_wrap:after {
	width: 85%;
	bottom: 0;
	right:  0;
	background-image: url(../../img/index/first_bg05_pc.png);
	background-position: center bottom;
	background-size: 20%;
}




/* ===== Proust roll ===== */
#sec_roll {
	position: relative;
}
#sec_roll .width_wrap {
	width: 43%;
	margin-left:  auto;
	margin-right: 0;
}
#sec_roll .width_wrap .img_abs {
	width: 51%;
	left: 0;
	right: inherit;
}
/* ロールケーキの画像高さ（仮想） */
#sec_roll .wrap {
	display: flex;
}
#sec_roll .wrap:before {
	content: "";
	width: 0;
	height: 32.5vw;
	display: block;
	background-color: blue;
}


/* ===== Owner chef ===== */
#sec_owner {
	position: relative;
}
.opa_wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 27vw;
	background-color: rgba(0,0,0,.2);
}
.opa_wrap:before,
.opa_wrap:after {
	content: "";
	width:  50%;
	height: 100%;
	display: block;
	position: absolute;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: -1;
}
.opa_wrap:before {
	top:  0;
	left: 0;
	background-image: url(../../img/index/owner_bg01.jpg);
}
.opa_wrap:after {
	top:   0;
	right: 0;
	background-image: url(../../img/index/owner_bg02.jpg);
}


/* ----- modal ----- */
.uk-modal {
	background-color: rgba(0,0,0,.55);
	z-index: 10000;
}
.uk-modal.uk-open {
	padding: 40px 30px;
}
.uk-modal-dialog {
	width:  95%;
	max-width: 1200px !important;
	min-height: fit-content;
	padding: min(5vw,80px);
}
.modal_flex {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: space-between;
	margin: auto;
}
.modal_flex .img_wrap {
	width: 47%;
	margin-right: 4%;
}
.modal_flex .cont_wrap {
	width: 49%;
}
.modal_flex h3 {
	font-size: 20px;
	font-size: clamp(18px,2vw,20px);
	font-family: "Zen Kaku Gothic New", "Noto Sans JP", sans-serif;
	letter-spacing: .2em;
	margin-bottom: .85em;
}
.modal_flex p {
	line-height: 2;
	letter-spacing: .2em;
}

/* ----- chef modal ----- */
#modal_chef .img_wrap {
	width: 37%;
}
#modal_chef .cont_wrap {
	width: 59%;
}
.modal_flex h3 {
	margin-bottom: 1em;
}
.modal_flex h3 small {
	margin-right: 1em;
}
#modal_chef dt {
	line-height: 1;
	display: inline-block;
	margin-left:  -.5em;
	margin-bottom: 1em;
	padding: 0.5em 1em;
	color: #fff;
	background-color: #2ca3da;
	border-radius: 50px;
}
/* 装飾 */
#modal_chef .img_wrap:before {
	content: "";
	width:  15%;
	height: 100%;
	display: block;
	position: absolute;
	top:  0;
	left: 0;
	background-image: url(../../img/index/chef_bgLT.png);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: contain;
	z-index: -1;
}
#modal_chef .cont_wrap:before {
	content: "";
	width:  15%;
	height: 100%;
	display: block;
	position: absolute;
	top:  0;
	right: 0;
	background-image: url(../../img/index/chef_bgRT.png);
	background-repeat: no-repeat;
	background-position: top right;
	background-size: contain;
	z-index: -1;
}
#modal_chef .cont_wrap:after {
	content: "";
	width:  80%;
	height: 25%;
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	background-image: url(../../img/index/chef_bgCB.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
	z-index: -1;
}

/* ----- lineup modal ----- */
.lineup_modal .img_wrap:before {
	content: "";
	width:  15%;
	height: 90%;
	display: block;
	position: absolute;
	top:  0;
	left: 0;
	background-image: url(../../img/index/lineup_bgLC.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	z-index: -1;
}
.lineup_modal .cont_wrap:before {
	content: "";
	width:  15%;
	height: 100%;
	display: block;
	position: absolute;
	top:  0;
	right: 0;
	background-image: url(../../img/index/lineup_bgRT.png);
	background-repeat: no-repeat;
	background-position: top right;
	background-size: contain;
	z-index: -1;
}
.lineup_modal .cont_wrap:after {
	content: "";
	width:  80%;
	height: 30%;
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	background-image: url(../../img/index/lineup_bgCB.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
	z-index: -1;
}
.lineup_modal .bottom_deco_none .cont_wrap:after {
	content: none;
}


/* ===== Line up ===== */
#sec_lineup .head_flex {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
}
#sec_lineup .head_cont {
	width: 70%;
}
#sec_lineup .head_img  {
	width: 28%;
}
.lineup_wrap {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
.lineup_wrap .card {
	width: calc(100%/4 - 1%);
}
.lineup_wrap .img_wrap {
	position: relative;
}
.lineup_wrap .img_wrap:before {
	content: "";
	width:  2.5vw;
	height: 2.5vw;
	max-width:  25px;
	max-height: 25px;
	min-width:  20px;
	min-height: 20px;
	display: block;
	position: absolute;
	right:  5%;
	bottom: 5%;
	pointer-events: none;
	touch-action: none;
	background-image: url(../../img/index/lineup_more.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.lineup_wrap p {
	width: 100%;
	min-height: 2.6em;
	font-size: clamp(12px,1.6vw,16px);
	display: inline-flex;
	justify-content: center;
	text-align: left;
	font-weight: 500;
	line-height: 1.3;
	margin-top: .85em;
	margin-bottom: 1.5em;
}
.lineup_wrap br.add_blk {
	display: none !important;
}
/* 4カラム（最後の段のcard数が2・3のときのデザイン調整） */
.lineup_wrap:before,
.lineup_wrap:after   {
	content: "";
	width: calc(100%/4 - 1%);
	height: 0;
	display: block;
}
.lineup_wrap:before {
	order: 1;
}


/* ===== Online shop ===== */
#sec_onlineshop {
	position: relative;
}
#sec_onlineshop .opa_wrap:before {
	width: 100%;
	background-image: url(../../img/index/onlineshop_bg.jpg);
}
#sec_onlineshop .opa_wrap:after  {
	content: none;
}


/* ===== Shop ===== */
.shop_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
.shop_wrap .card {
	width: calc(100%/3 - 2%);
}
.shop_wrap .card h3 {
	font-size: clamp(17px,2vw,20px);
	margin-top: 1.5em;
	margin-bottom: .75em;
}
.shop_wrap .card p {
	line-height: 2;
}


/* ----- 背景装飾 ----- */
.deco_matome {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index:  1;
}
.deco_matome:before {
	content: "";
	width:  100%;
	height: 110%;
	display: block;
	position: absolute;
	top:  0;
	left: 0;
	background-image: url(../../img/index/deco_matome.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	z-index: -1;
}



/* ===== Topics ===== */
.news_list li,
.news_list li a {
	width: 100%;
}
.news_list li:first-of-type a {
	border-top: 1px solid #ccc;
}
.news_list li a {
	display: inline-block;
	border-bottom: 1px solid #ccc;
	background-color: rgba(255,255,255,1);
	transition: background-color .5s;
}
.news_list li a:hover {
	background-color: rgba(204,204,204,.15) !important;
}
.news_list dl {
	display: flex;
	flex-wrap: nowrap;
	padding: 1em;
}
.news_list dl * {
	font-weight: normal;
}
.news_list dt {
	font-size: clamp(12px,1.4vw,14px);
	letter-spacing: .2em;
	margin-top: .2em;
	margin-right: 3em;
	color: #808080;
}


/* ===== Recruit ===== */
#sec_recruit {
	position: relative;
}
#sec_recruit .opa_wrap {
	background-color: transparent;
}
#sec_recruit .opa_wrap:before {
	width: 100%;
	background-image: url(../../img/index/recruit_bg.jpg);
}
#sec_recruit .opa_wrap:after  {
	content: none;
}





@media screen and (min-width:1600px) {
	/* ===== 最初のセクション ===== */
	/* ----- 背景装飾 ----- */
	.minwidth_wrap {
		max-width: 1480px;
		position: relative;
		margin: auto;
	}
	.minwidth_wrap .img_abs.marXL_T {
		margin-top: 0 !important;
	}

	/* ===== あなたの想い出の扉 ===== */
	/* ----- 背景装飾 ----- */
	.tobira_wrap .minwidth_wrap:before {
		left: 0;
		height: 500px;
	}
	.tobira_wrap:after {
		height: 120px;
		background-size: contain;
	}

	/* ===== お店について ===== */
	/* ----- 背景装飾 ----- */
	.deco_matome:before {
		width: 1300px;
		left: inherit;
	}
}


@media screen and (max-width:1100px) {
	/* ===== header ===== */
	#mv {
		margin-top: 80px;
	}
	header {
		background-color: rgba(255,255,255,.9);
	}
	header .header_logo svg {
		fill: #2ca3da !important;
	}
	header > .hmenu_btn a {
		color: #2ca3da !important;
		border-color: #2ca3da !important;
	}
	header > .hmenu_btn a svg {
		stroke: #2ca3da !important;
	}
	header > .hmenu_btn a:hover {
		color: #fff !important;
		background-color: #2ca3da !important;
	}
	header > .hmenu_btn a:hover svg {
		stroke: #fff !important;
	}

	
	/* --- header active --- */
	header.is-bg > .hmenu_btn a {
		color: #fff !important;
		border-color: transparent !important;
	}
	.is-bg .hmenu_btn a svg {
		stroke: #fff !important;
	}
	header.is-bg > .hmenu_btn a:hover {
		color: #2ca3da !important;
		border-color: #2ca3da !important;	
		background-color: transparent !important;
	}
	#g-nav_sp .hmenu_btn a:hover svg,
	header.is-bg > .hmenu_btn a:hover svg {
		stroke: #2ca3da !important;
	}










	/* ===== 最初のセクション ===== */
	/* ----- 背景装飾 ----- */
	#sec_first .img_abs:after {
		bottom: -80%;
		left:   -27%;
	}
	#sec_first .img_flex:after {
		height: 90%;
		top:   -45%;
		right:  -5%;
	}
}


@media screen and (max-width:1015px) {
	/* ===== LINE UP ===== */
	.lineup_wrap br.add_blk {
		display: block !important;
	}
}


@media screen and (max-width:768px)  {
	/* ===== メインビジュアル ===== */
	#mv,
	#mv > div {
		height: 80vw;
	}
	#mv > div:first-of-type {
		background-image: url("../../img/index/mvSP01.jpg");
	}
	#mv > div:nth-of-type(2) {
		background-image: url("../../img/index/mvSP02.jpg");
	}
	#mv > div:nth-of-type(3) {
		background-image: url("../../img/index/mvSP03.jpg");
	}
	#mv > div:nth-of-type(4) {
		background-image: url("../../img/index/mvSP04.jpg");
	}
	#mv > div:nth-of-type(5) {
		background-image: url("../../img/index/mvSP05.jpg");
	}

	
	/* ===== Seasonal LineUp ===== */
	.seasonal_card {
		padding: 0 1.5%;
	}
	@media screen and (max-width:639px) {
		.seasonal_card.limited:before {
			width:  2.5em;
			height: 3em;
			top: .5em;
			left: 1.5%;
			transform: translateX(.75em);
		}
	}


	/* ===== 最初のセクション ===== */
	#sec_first {
		position: relative;
	}
	#div_first .h2_img {
		height: 2.5em;
	}
	#sec_first .bg_wrap {
		position: inherit;
	}
	#sec_first .width_wrap {
		width: 100%;
		margin-top: min(52vw,360px);
	}
	.width_wrap .img_abs {
		width: 75%;
	}
	#sec_first .width_wrap .img_ab {
		max-width: 500px;
		margin-top: clamp(40px,12vw,80px) !important;
	}
	#sec_first .p_aki {
		letter-spacing: .1em;
	}
	/* 下部分 画像flex */
	#sec_first .img_flex {
		width: 100%;
		position: inherit;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
	}
	#sec_first .left_img,
	#sec_first .right_img {
		width: 100%;
		margin-right: 0;
	}
	#sec_first .left_img  {
		margin-bottom: 43vw;
	}
	#sec_first .right_img {
		position: absolute;
		left:   0;
		bottom: 0;
		transform: translateX(calc(clamp(20px,5.333vw,40px)*-1));
	}
	#sec_first .left_img img {
		width: 70%;
		margin-left: auto;
	}
	#sec_first .right_img img {
		width: 50%;
	}
	/* ----- 背景装飾 ----- */
	/* 装飾 非表示 */
	#sec_first .img_flex:after,
	.tobira_wrap .minwidth_wrap:before {
		content: none;
	}

	/* 左上 */
	#sec_first .wrap:before {
		width: 25%;
		max-width: 150px;
		top:  3%;
		left: 3%;
		background-image: url(../../img/index/first_bg01_sp.png);
	}
	/* 右上 お菓子 */
	#sec_first .img_abs:after {
		width: 45%;
		left:  inherit;
		right: 2%;
		bottom: -115%;
		background-image: url(../../img/index/first_bg02_sp.png);
		background-position: right bottom;
	}
	#div_first .left_img {
		position: relative;
		z-index: 0;
	}
	/* 左中央パンと 右中央紙吹雪 */
	#div_first .left_img:before {
		content: "";
		width:  35%;
		height: 100%;
		display: block;
		position: absolute;
		top:  -25%;
		left: -11%;
		background-image: url(../../img/index/first_bg03_sp.png);
		background-position: left top;
		background-repeat: no-repeat;
		background-size: contain;
		z-index: -1;
	}
	#div_first .left_img:after {
		content: "";
		width:  35%;
		height: 100%;
		display: block;
		position: absolute;
		top:  -55%;
		right: -7%;
		background-image: url(../../img/index/first_bg04_sp.png);
		background-position: right top;
		background-repeat: no-repeat;
		background-size: contain;	
		z-index: -1;
	}
	/* 右中央 クッキー */
	#div_first .right_img:after {
		content: "";
		width:  100%;
		height: 150%;
		max-width: 280px;
		display: block;
		position: absolute;
		top: -5%;
		right: -11%;
		background-image: url(../../img/index/first_bg05_sp.png);
		background-position: right top;
		background-repeat: no-repeat;
		background-size: contain;	
		z-index: -1;
	}


	/* ===== あなたの想い出の扉 ===== */
	.tobira_wrap .h2_img {
		width: 60%;
		max-width: 220px;
	}
	.tobira_wrap:after {
		width: 40%;
		left:  10%;
		bottom: 5%;
		right: inherit;
		background-image: url(../../img/index/first_bg06_sp.png);
		background-position: left bottom;
		background-size: 100%;
	}


	/* ===== Proust roll ===== */
	#sec_roll .bg_wrap {
		padding-left:  0;
		padding-right: 0;
	}
	#sec_roll .wrap {
		max-width: inherit;
	}
	#sec_roll .cont_wrap {
		max-width: 640px;
		margin-left:  auto;
		margin-right: auto;
		padding: 0 20px;
		padding: clamp(20px,5.333vw,40px);
	}
	#sec_roll .width_wrap .img_abs {
		width: 100%;
		position: relative;
	}
	#sec_roll .width_wrap {
		width: 100%;
	}
	#sec_roll p {
		font-size: 12px;
		line-height: 2;
	}



	/* ===== Owner chef ===== */
	.opa_wrap h2 + p {
		font-size: 12px;
	}
	.opa_wrap:before {
		background-image: url(../../img/index/owner_bg01_sp.jpg);
		background-position: 70%;
	}
	.opa_wrap:after  {
		background-image: url(../../img/index/owner_bg02_sp.jpg);
		background-position: 35%;
	}
	/* ----- modal ----- */
	.uk-modal.uk-open {
		padding: 40px clamp(20px,5.333vw,40px) clamp(20px,5.333vw,40px);
	}
	.uk-modal-dialog {
		width: 100%;
		max-width: 400px !important;
		padding: 20px;
	}
	.modal_flex {
		flex-wrap: wrap;
	}
	.modal_flex .img_wrap,
	.modal_flex .cont_wrap {
		width: 100%;
		margin-right: 0;
	}
	.modal_flex h3 {
		font-size: 17px;
		margin-top: 1em;
	}
	.modal_flex p {
		font-size: 12px;
	}
	/* owner modal */
	#modal_chef .img_wrap,
	#modal_chef .cont_wrap {
		width: 100%;
	}
	#modal_chef .img_wrap {
		display: flex;
		align-items: flex-end;
	}
	#modal_chef .img_wrap > * {
		width: 50%;
	}
	#modal_chef h3 {
		font-size: 24px;
		font-size: clamp(20px,6.4vw,24px);
		line-height: 1.5;
		margin-top: 0;
		margin-left: .75em;
		margin-bottom: 0;
	}
	#modal_chef h3 small {
		font-size: 12px;
	}
	#modal_chef .cont_wrap > p {
		margin-top: 1.25em;
	}
	/* lineup modal */
	.lineup_modal .cont_wrap p {
		margin-bottom: 20px;
	}

	
	/* ----- 背景装飾 ----- */
	/* 装飾 非表示 */
	.lineup_modal .cont_wrap:before,
	#modal_chef .cont_wrap:before,
	#modal_chef .cont_wrap:after  {
		content: none;
	}
	/* chef 背景装飾 */
	#modal_chef .img_wrap:before {
		width: 35%;
		top: 8%;
		left: inherit;
        right: 5%;
		background-image: url(../../img/index/chef_bgRT_sp.png);
	}
	/* lineup 背景装飾 */
	.lineup_modal .img_wrap:before {
        width: 40%;
        height: 100%;
        background-position: top right;
        left: inherit;
        right: 2%;
		background-image: url(../../img/index/lineup_bgRT_sp.png);
	}
	.lineup_modal .cont_wrap:after {
        width: 25%;
        height: 100%;
		left: 3%;
		right: inherit;
		bottom: 3%;
        background-position: left bottom;
		background-image: url(../../img/index/lineup_bgLB_sp.png);
	}

	/* ===== Line up ===== */
	#sec_lineup h2 + p,
	#sec_shop h2 + p,
	#sec_topics h2 + p {
		font-size: 12px;
	}
	#sec_lineup .head_img {
		width: 50%;
		max-width: 170px;
	}
	.lineup_wrap .card {
		width: calc(100%/2 - 1.5%)
	}
	.lineup_wrap p {
		min-height: inherit;
	}

	/* ===== Online shop ===== */
	#sec_onlineshop .opa_wrap:before {
		background-image: url(../../img/index/onlineshop_bg_sp.jpg);
	}

	/* ===== Shop ===== */
	#sec_shop {
		position: relative;
		overflow: hidden;
	}
	.shop_wrap .card {
		width: 100%;
		position: relative;
	}
	.shop_wrap .card + .card {
		margin-top: 40px;
	}
	.shop_wrap .card p {
		font-size: 12px;
		letter-spacing: .05em;
	}
	/* ----- 背景装飾 ----- */
	/* 背景非表示 */
	.deco_matome:before {
		content: none;
	}
	.shop_wrap .card:before {
		content: "";
		width:  100%;
		height: 100%;
		display: block;
		position: absolute;
		background-repeat: no-repeat;
		background-size: contain;
		z-index: -1;
	}
	.shop_wrap .card:nth-of-type(1):before {
		width:  30%;
		top:   -20%;
		right: -5%;
		background-image: url(../../img/index/shop_bg01_sp.png);
	}
	.shop_wrap .card:nth-of-type(2):before {
		width: 20%;
        top:  -7%;
        left: -8%;
		background-image: url(../../img/index/shop_bg02_sp.png);
	}


	/* ===== Topics ===== */
	.news_list dl,
	.news_list dd {
		font-size: 12px;
	}
	.news_list dl {
		padding-left:  0;
		padding-right: 0;
	}
	.news_list dt {
		font-size: 10px;
	}
	#sec_topics {
		position: relative;
	}
	/* 背景装飾 */
	#sec_topics:before {
		content: "";
		width:  30%;
		height: 100%;
		display: block;
		position: absolute;
        top: -10%;
        left: 20%;
		background-image: url(../../img/index/topics_bg_sp.png);
		background-repeat: no-repeat;
		background-position: top center;
		background-size: contain;
		z-index: 1;
	}
	.fs_mini_sp {
		font-size: 12px;
	}

	/* ===== Recruit ===== */
	#sec_recruit .opa_wrap:before {
		height: 57vw;
		position: relative;
		background-image: url(../../img/index/recruit_bg_sp.jpg);
	}
	#sec_recruit .opa_wrap h2 + p {
		color: #000;
	}

	
	@media screen and (min-width:550px) {
		/* ----- 背景装飾 位置調整 ----- */
		#sec_first .img_abs:after {
			max-width: 210px;
			right: 7%;
		}
		#div_first .right_img:after {
			right: -2%;
		}
	}

}