@charset "UTF-8";
/* ----------------------------------------------------------------------------------------------------
*  TOP PAGE
* --------------------------------------------------------------------------------------------------*/
/* HERO */
.hero {
	width: 100%;
	height: 100%;
	background: url("../images/bg_mv_other@2x.png") no-repeat center top / 1708px;
	position: relative;
	z-index: 0;
}
.hero__inner {
	width: 500px;
	height: auto;
	margin: 0 auto 22px;
	position: relative;
}
.hero__heading {
	display: flex;
	align-items: flex-start;
	position: absolute;
	top: 30px;
	left: -112px;
	z-index: 100;
}
.hero__heading--left,
.hero__heading--right {
	color: #FFF;
	font-size: 3.2rem;
	writing-mode: vertical-rl;
	border-radius: var(--corner-smallround);
	background: linear-gradient(-45deg, #7f9699, #c26555, #c79321) fixed;
	background-size: 200% 200%;
	animation: text-gradietion 30s ease infinite;
	padding: 25px 5px 5px;
}
.hero__heading--left {
	order: 1;
	margin: 0 12px 0 0;
}
.hero__heading--right {
	order: 2;
}
@keyframes text-gradietion {
	0% {
		background-position:0% 50%
	}
	50% {
		background-position:100% 50%
	}
	100% {
		background-position:0% 50%
	}
}
.hero__swiper .swiper {
	overflow: visible;
}
.hero__swiper .swiper-wrapper {
	margin: 0 0 20px;
}
.hero__swiper .swiper__image {
	height: auto;
	-webkit-mask: url("../images/image_mask_01.svg") no-repeat center center / contain;
		    mask: url("../images/image_mask_01.svg") no-repeat center center / contain;
	overflow: hidden;
}
.hero__swiper .swiper__image img {
    width: 100%;
    height: 100%;
	transform-origin: center center;
    -o-object-fit: cover;
       object-fit: cover;
	-webkit-transition: 5s 2s ease-out;
            transition: 5s 2s ease-out;
}
.hero__swiper .swiper__button {
	width: 150px;
    height: auto;
	position: absolute;
    background: #FFF;
	border-radius: 50%;
	position: absolute;
	bottom: -40px;
	right: -65px;
	z-index: 50;
	box-shadow: var(--box-shadow);
}
.hero__swiper .swiper__button span {
	display: block;
	width: 100%;
	font-size: 2rem;
	text-align: center;
	line-height: 1.5;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.hero__swiper .swiper__button span::after {
	content: '';
	display: block;
	height: 14px;
	margin: 10px 0 0;
	background: #505050;
	-webkit-mask: url("../images/icon_arrow_02.svg") no-repeat center center / contain;
		    mask: url("../images/icon_arrow_02.svg") no-repeat center center / contain;
	transition: all 0.4s 0s;
}
.hero__swiper .swiper__button:hover span::after {
	margin: 10px 0 0 20px;
	background: #FFF;
}
.hero__swiper .swiper__button.swiper__button__about {
	color: var(--color-about);
	border: 5px solid var(--color-about);
	transition: all 0.2s;
}
.hero__swiper .swiper__button.swiper__button__about:hover {
	color: #FFF;
	background: var(--color-about);
}
.hero__swiper .swiper__button.swiper__button__recipe {
	color: var(--color-recipe);
	border: 5px solid var(--color-recipe);
	transition: all 0.2s;
}
.hero__swiper .swiper__button.swiper__button__recipe:hover {
	color: #FFF;
	background: var(--color-recipe);
}
.hero__swiper .swiper__button.swiper__button__special {
	color: var(--color-special);
	border: 5px solid var(--color-special);
	transition: all 0.2s;
}
.hero__swiper .swiper__button.swiper__button__special:hover {
	color: #FFF;
	background: var(--color-special);
}
.hero__swiper .swiper-fade .swiper-slide {
    -webkit-transition-property: opacity, -webkit-transform !important;
    transition-property: opacity, -webkit-transform !important;
    transition-property: opacity, transform !important;
    transition-property: opacity, transform, -webkit-transform !important;
    pointer-events: none;
}
.hero__swiper .swiper-fade .swiper-slide-active {
    pointer-events: auto;
}
.hero__swiper .swiper-slide[class*=-active] .swiper__image img {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
}
.hero__image--girl,
.hero__image--scallops,
.hero__image--pea,
.hero__image--lemon,
.hero__image--mister,
.hero__image--apple,
.hero__image--mushroom,
.hero__image--cheese {
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 0;
	pointer-events: none;
}
.hero__image--girl {
	background: url("../images/bg_mv_girl@2x.png") no-repeat center center / 75px;
	top: -222px;
	left: -450px;
	animation: image-move 4s infinite ease-in-out .8s alternate;
}
.hero__image--scallops {
	background: url("../images/bg_mv_scallops@2x.png") no-repeat center center / 70px;
	top: 75px;
	left: -681px;
	animation: image-move 4s infinite ease-in-out .8s alternate;
}
.hero__image--pea {
	background: url("../images/bg_mv_pea@2x.png") no-repeat center center / 64px;
	top: 93px;
	left: -429px;
	animation: image-move-reverse 4s infinite ease-in-out .8s alternate;
}
.hero__image--lemon {
	background: url("../images/bg_mv_lemon@2x.png") no-repeat center center / 71px;
	top: 79px;
	left: 412px;
	animation: image-move-reverse 4s infinite ease-in-out .8s alternate;
}
.hero__image--mister {
	background: url("../images/bg_mv_mister@2x.png") no-repeat center center / 67px;
	top: 173px;
	left: 593px;
	animation: image-move 4s infinite ease-in-out .8s alternate;
}
.hero__image--apple {
	background: url("../images/bg_mv_apple@2x.png") no-repeat center center / 60px;
	top: -155px;
	left: 599px;
	animation: image-move-reverse 4s infinite ease-in-out .8s alternate;;
}
.hero__image--mushroom {
	background: url("../images/bg_mv_mushroom@2x.png") no-repeat center center / 63px;
	top: -91px;
	left: -530px;
	animation: image-move 4s infinite ease-in-out .8s alternate;
}
.hero__image--cheese {
	background: url("../images/bg_mv_cheese@2x.png") no-repeat center center / 70px;
	top: -131px;
	left: 322px;
	animation: image-move 4s infinite ease-in-out 10s alternate;
}
@keyframes image-move {
	0% {
	  transform: translate(0, 0) rotate(-10deg);
	}
	100% {
	  transform: translate(0, 0) rotate(10deg);
	}
}
@keyframes image-move-reverse {
	0% {
	  transform: translate(0, 0) rotate(10deg);
	}
	100% {
	  transform: translate(0, 0) rotate(-10deg);
	}
}
@media screen and (max-width: 1099px) {
	.hero {
		margin: 55px 0 0;
	}
	.hero__inner {
		margin: 15px auto 22px;
	}
	.hero__heading--left,
	.hero__heading--right {
		border-radius: var(--corner-largeround);
	}
}
@media screen and (max-width: 767px) {
	.hero {
		background: url("../images/bg_mv_other_sp@2x.png") no-repeat center 29% / 100%;
	}
	.hero__inner {
		width: 70.667%;
		max-width: 265px;
		margin: 10px auto 22px;
	}
	.hero__heading {
		display: none;
	}
	.hero__swiper .swiper-wrapper {
		margin: 0 0 20px;
	}
	.hero__swiper .swiper__button {
		width: 37.736%;
		max-width: 100px;
		bottom: -7.5px;
		right: -25px;
	}
	.hero__swiper .swiper__button span {
		font-size: 1.3rem;
	}
	.hero__swiper .swiper__button span::after {
		height: 13px;
	}
	.hero__swiper .swiper__button:hover > span::after {
		margin: 10px 0 0 15px;
	}
	.hero__swiper .swiper__button.swiper__button__about {
		border: 3px solid var(--color-about);
	}
	.hero__swiper .swiper__button.swiper__button__recipe {
		border: 3px solid var(--color-recipe);
	}
	.hero__swiper .swiper__button.swiper__button__special {
		border: 3px solid var(--color-special);
	}
	.hero__image--girl,
	.hero__image--scallops,
	.hero__image--pea,
	.hero__image--lemon,
	.hero__image--mister,
	.hero__image--apple,
	.hero__image--mushroom,
	.hero__image--cheese {
		display: none;
	}
}
@media screen and (max-width: 414px) {
	.hero {
		background: url("../images/bg_mv_other_sp@2x.png") no-repeat center 0% / 100%;
	}
}
@media screen and (max-width: 375px) {
	.hero {
		background: url("../images/bg_mv_other_sp@2x.png") no-repeat center 2% / 105%;
	}
}
@media screen and (max-width: 320px) {
	.hero__heading--left,
	.hero__heading--right {
		font-size: 1.5rem;
	}
	.hero__heading--left {
		margin: 0 7px 0 0;
	}
	.hero__swiper .swiper__button span {
		font-size: 1.1rem;
	}
	.hero__swiper .swiper__button span::after {
		height: 11px;
	}
}

/* IMPORTANT INFORMATION */
.important-information {
	width: 100%;
	background: var(--bg-gray);
	position: relative;
	z-index: 3;
}
.important-information__inner {
	display: flex;
	align-items: flex-start;
	width: 1100px;
	margin: 0 auto;
	padding: 15px 0;
}
.important-information__heading {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 54px;
	border-radius: var(--corner-smallround);
	background: #FFF;
	margin: 0;
	color: var(--color-base);
	font-size: 1.4rem;
	margin-top: 3px;
}
.important-information__list {
	width: calc(100% - 116px);
}
.important-information__announce {
	width: 100%;
	font-weight: bold;
	min-height: 30px;
	line-height: 30px;
	padding-left: 20px;
}
.important-information__announce .news__text,
.important-information__item .news__text {
	max-width: calc(100% - 1em);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
	display: inline-block;
  width: auto;
}
a.icon--blank::after {
	background: var(--color-base);
}
.important-information__other {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 30px;
	line-height: 30px;
}
.important-information__swiper {
	width: 100%;
}
.swiper.js-news-swiper {
	width: 100%;
	max-height: 30px;
	/* overflow: visible; */
	display: flex;
	justify-content: space-between;
}
.swiper-wrapper.js-news-swiper__wrapper {
	width: calc(100% - 90px);
}
.swiper-slide.js-news-swiper__wrapper--slide {
	padding-left: 20px;
	padding-right: 20px;
	background: var(--bg-gray);
	transition: all 0.2s;
}
.js-news-swiper .swiper-notification {
	display: none;
}
.important-information__item {
	width: 100%;
}
.important-information__item a.icon--blank::after {
	background: var(--color-base);
}

/* On Click .stopbtn => swiperの停止時、swiperがインラインで書き込んでるClassを上書き*/
.acmenu-open .important-information__announce {
	margin-bottom: 0.5em;
}
.acmenu-open .important-information__announce .news__text:after {
	display: none;
}
.acmenu-open .important-information__announce .news__text {
	white-space: break-spaces;
	line-height: 1.25;
  margin-bottom: 0.85em;
}
.acmenu-open .important-information__announce .icon--blank:after {
	opacity: 0;
}
.acmenu-open .important-information__other {
	height: auto;
}
.acmenu-open .important-information__inner {
	align-items: flex-start;
}
.acmenu-open .js-news-swiper {
	/* display: block !important; */
	/* overflow: visible !important; */
	max-height: 500px;
	transition: 1.2s ease;
}
.acmenu-open .js-news-swiper__wrapper {
	/* display: flex !important; */
	transform: inherit !important;
	flex-direction: column;
}
.acmenu-open .js-news-swiper__wrapper--slide {
	/* display: block !important; */
	height: auto !important;
}
.acmenu-open .icon--blank {

}
.acmenu-open .js-news-swiper__wrapper--slide.nth-1 {
	order: 1;
}
.acmenu-open .js-news-swiper__wrapper--slide.nth-2 {
	order: 2;
}
.acmenu-open .js-news-swiper__wrapper--slide.nth-3 {
	order: 3;
}
.acmenu-open .js-news-swiper__wrapper--slide.nth-4 {
	order: 4;
}
.acmenu-open .js-news-swiper__wrapper--slide.nth-5 {
	order: 5;
}

.acmenu-open .important-information__item .news__text {
	white-space: break-spaces;
	line-height: 1.25;
  margin-bottom: 0.85em;
}
.acmenu-open .important-information__item .news__text:after {
	content: "";
	display: inline-block;
	width: 0.8em;
  height: 0.8em;
  -webkit-mask: url(../images/icon_blank.svg) no-repeat center center / contain;
  mask: url(../images/icon_blank.svg) no-repeat center center / contain;
	background-color: var(--color-base);
}
.acmenu-open .important-information__item a.icon--blank::after {
  opacity: 0;
}
.acmenu-open .swiper-slide-duplicate {
	display: none !important;
}
.acmenu-open  {}
/* END On Click .stopbtn */

.button--open {
	width: 76px;
	/* background: green; */
	display: flex;
	align-items: center;
	justify-content: flex-end;
	color: var(--color-base);
	position: absolute;
  top: 0;
  right: 0;
	cursor: pointer;
}
.button--open .icon--open {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--color-base);
	position: relative;
	margin: 0 0 0 5px;
}
.button--open .icon--open svg {
	width: 31.818%;
	fill: #FFF;
	transition: all 0.2s;
}
.button--open:hover .icon--open svg {
	transform: rotate(90deg);
} 
.button--open.start .icon--open svg {
	transform: rotate(90deg);
}
@media screen and (max-width: 1099px) {
	.important-information__inner {
		width: 100%;
		padding: 15px 20px;
	}
}
@media screen and (max-width: 767px) {
	.button--open:hover .icon--open svg {
		transform: rotate(0deg);
	}
	.button--open.start .icon--open svg {
		transform: rotate(90deg);
	}
	.important-information__announce {
		padding-left: 0;
	}
	.important-information__inner {
		width: calc(100% - 10.667%);
		padding: 15px 0;
	}
	.important-information__heading {
		display: none;
	}
	.important-information__list {
		width: 100%;
	}
	.important-information__other {
		font-size: 1.3rem;
	}
	.important-information__swiper {
		width: 100%;
	}
	.swiper-slide.js-news-swiper__wrapper--slide {
		padding-left: 0;
	}
	.swiper-wrapper.js-news-swiper__wrapper {
		
	}
	.swiper-slide.js-news-swiper__wrapper--slide {
		width: 100%;
	}
	.important-information__item .icon--blank {
		width: 100%;
	}
}
@media screen and (max-width: 414px) {
	.important-information__swiper {
		width: 100%;
	}
	.swiper-wrapper.js-news-swiper__wrapper {
		width: calc(100% - 10vw);
	}
	.swiper-slide.js-news-swiper__wrapper--slide {
		padding-right: 0;
	}
	.button--open .icon--open {
		width: 7vw;
		height: 7vw;
	}
	.button--open p {
		display: none;
	}
}


/* TOPPAGE NAVIGATION */
.page__nav {
	width: 100%;
	background: url("../images/bg_pattern_stripe.png") repeat center center / 42px 42px;
}
.page__nav__lists {
	display: flex;
	flex-wrap: wrap;
	width: 920px;
	margin: 0 auto;
	padding: 30px 0 20px;
}
.page__nav__items {
	width: 300px;
	height: 80px;
	margin: 0 10px 10px 0;
}
.page__nav__items:nth-of-type(3n) {
	margin: 0 0 10px 0;
}
.page__nav__items a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: #FFF;
	border-radius: var(--corner-largeround);
	box-shadow: var(--box-shadow);
	font-size: 1.8rem;
	font-weight: bold;
}
.page__nav__recipe a svg {
	width: 41.31px;
	margin: 0 10px 0 0;
	fill: var(--color-recipe);
}
.page__nav__products a svg {
	width: 42.24px;
	margin: 0 10px 0 0;
	fill: var(--color-products);
}
.page__nav__special a svg {
	width: 41.31px;
	margin: 0 10px 0 0;
	fill: var(--color-special);
}
.page__nav__about a svg {
	width: 37.56px;
	margin: 0 10px 0 0;
	fill: var(--color-about);
}
.page__nav__company a svg {
	width: 37.56px;
	margin: 0 10px 0 0;
	fill: var(--color-company);
}
.page__nav__news a svg {
	width: 33.26px;
	margin: 0 10px 0 0;
	fill: var(--color-news);
}
.page__nav__recipe a:hover {
	background: var(--color-recipe);
	border: 2px solid #FFF;
}
.page__nav__products a:hover {
	background: var(--color-products);
	border: 2px solid #FFF;
}
.page__nav__special a:hover {
	background: var(--color-special);
	border: 2px solid #FFF;
}
.page__nav__about a:hover {
	background: var(--color-about);
	border: 2px solid #FFF;
}
.page__nav__company a:hover {
	background: var(--color-company);
	border: 2px solid #FFF;
}
.page__nav__news a:hover {
	background: var(--color-news);
	border: 2px solid #FFF;
}
.page__nav__recipe a:hover svg,
.page__nav__products a:hover svg,
.page__nav__special a:hover svg,
.page__nav__about a:hover svg,
.page__nav__company a:hover svg,
.page__nav__news a:hover svg {
	fill: #FFF;
}
.page__nav__items a:hover p {
	color: #FFF;
}
@media screen and (max-width: 1099px) {
	.page__nav__lists {
		justify-content: center;
		width: 83.636%;
		margin: 0 auto;
	}
	.page__nav__items {
		width: calc((100% - 20px) / 3);
		margin: 0 10px 10px 0;
	}
	.page__nav__items a {
		flex-direction: column;
		text-align: center;
		line-height: 1.4;
	}
	.page__nav__recipe a svg {
		width: 16.767%;
		margin: 0 0 7px;
	}
	.page__nav__products a svg {
		width: 15.284%;
		margin: 0 0 7px;
	}
	.page__nav__special a svg {
		width: 16.769%;
		margin: 0 0 7px;
	}
	.page__nav__about a svg {
		width: 14.13%;
		margin: 0 0 7px;
	}
	.page__nav__company a svg {
		width: 14.63%;
		margin: 0 0 7px;
	}
	.page__nav__news a svg {
		width: 13.176%;
		margin: 0 0 7px;
	}
	.page__nav__about p {
		letter-spacing: -0.05em;
	}
}
@media screen and (max-width: 767px) {
	.page__nav {
		background: url("../images/bg_pattern_stripe.png") repeat center center / 21px 21px;
	}
	.page__nav__lists {
		width: 100%;
		margin: 0;
		padding: 20px 5.333% 10px;
	}
	.page__nav__items {
		width: calc((100% - 2.985%) / 2);
		max-width: inherit;
		height: 65px;
		margin: 0 0 10px;
	}
	.page__nav__items:nth-of-type(odd) {
		margin: 0 2.985% 10px 0;
	}
	.page__nav__items a {
		font-size: 1.4rem;
	}
	.page__nav__recipe a svg {
		width: 16.767%;
		max-width: 27.165px;
		margin: 0 0 5px;
	}
	.page__nav__products a svg {
		width: 15.284%;
		max-width: 24.76px;
		margin: 0 0 5px;
	}
	.page__nav__special a svg {
		width: 16.769%;
		max-width: 27.165px;
		margin: 0 0 5px;
	}
	.page__nav__about a svg {
		width: 14.13%;
		max-width: 22.89px;
		margin: 0 0 5px;
	}
	.page__nav__company a svg {
		width: 14.63%;
		max-width: 23.7px;
		margin: 0 0 5px;
	}
	.page__nav__news a svg {
		width: 13.176%;
		max-width: 21.345px;
		margin: 0 0 5px;
	}
	.page__nav__about p {
		letter-spacing: -0.05em;
	}
}

/* PROMOTION */
.promotion {
	background: var(--bg-gray);
}
.promotion .heading--tiny {
	color: var(--color-promotion);
}
@media screen and (max-width: 1099px) {
	.promotion .heading--huge {
		letter-spacing: -0.05em;
	}
}

/* RECIPE */
.recipe__heading {
	width: 100%;
}
.recipe__heading .heading--tiny {
	color: var(--color-recipe);
	text-align: left;
}
.recipe__heading .heading--huge {
	text-align: left;
	margin: 0 0 20px;
}
.recipe__lead {
	width: 600px;
	margin: 0 0 40px;
}
.recipe__inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 1100px;
	margin: 0 auto 50px;
}
.recipe__left {
	width: 600px;
}
.recipe__heading--small {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	margin: 0 0 25px;
}
.recipe__heading--small::after {
	content: '';
	flex: 1 auto;
	margin-left: 1em;
	border-top: 2px solid #D2D2D2;
}
.recipe__heading--small.icon--recipe::before {
	content: '';
	width: 1.62em;
	height: 1.25em;
	background: var(--color-recipe);
}
.recipe__right {
    flex: 1 auto;
	margin: -40px calc(50% - 50vw) 0 50px;
	background: var(--color-recipe);
	border-radius: 10px 0 0 10px;
}
.recipe__right__inner {
	width: 400px;
	padding: 40px 0 40px 50px;
}
.recipe__search {
	color: #FFF;
}
.recipe__search .recipe__heading--small::after {
	border-top: 2px solid #FFF;
}
.recipe__search__form {
	position: relative;
}
.recipe__search__form input[type="search"] {
	width: 100%;
	height: 58px;
	padding: 0 10px;
	border: 1px solid var(--color-gray);
	background: #FFF;
	border-radius: var(--corner-circle);
}
.recipe__search__form input[type="submit"] {
	display: block;
	width: 22px;
	height: 22px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	background: var(--color-darkgray);
	-webkit-mask: url("../images/icon_search.svg") no-repeat center center / contain;
			mask: url("../images/icon_search.svg") no-repeat center center / contain;
}
.recipe__search__form input[type="search"]::placeholder {
	color:#C8C8C8;
}
.recipe__search__form input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
}
.recipe__search__keyword {
	margin: 10px 0 70px;
	padding: 0 10px;
}
.recipe__search__keyword a {
	display: inline-block;
	margin: 0 10px 0 0;
	color: #fff;
	text-decoration: underline;
}
.recipe__search__keyword a:hover {
	text-decoration: none;
}
.recipe__category__lists {
	display: grid;
    grid-template-rows: auto;
	grid-template-columns: repeat(2,minmax(127px,1fr));
	gap: 20px 15px;
	align-items: center;
}
.recipe__category__item {
	width: 100%;
}
.recipe__category__item a {
	display: flex;
	align-items: center;
	width: 100%;
}
.recipe__category__item a p {
	color: #FFF;
	line-height: 1.4;
	flex: 1;
}
.recipe__icon {
    width: 41.558%;
	max-width: 80px;
    height: auto;
    background: #FFF;
	border-radius: 50%;
	position: relative;
	margin: 0 10px 0 0;
}
.recipe__icon span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
    height: 100%;
}
.recipe__category__products a svg {
	width: 48%;
	fill: #FC8905;
}
.recipe__category__menu a svg {
	width: 39.023%;
	fill: #FC8905;
}
.recipe__category__scene a svg {
	width: 57.466%;
	fill: #FC8905;
}
.recipe__category__ingredients a svg {
	width: 51.614%;
	fill: #FC8905;
}
.recipe__category__item a:hover .recipe__icon {
	background: var(--color-recipe);
	border: 2px solid #FFF;
}
.recipe__category__products a:hover svg,
.recipe__category__menu a:hover svg,
.recipe__category__scene a:hover svg,
.recipe__category__ingredients a:hover svg {
	fill: #FFF;
}
@media screen and (max-width: 1099px) {
	.recipe__lead {
		width: 54.545%;
		padding: 0 20px 0 0;
	}
	.recipe__inner {
		width: 100%;
		padding: 0 20px;
	}
	.recipe__left {
		width: 54.545%;
	}
	.recipe__left .recipe__recommend__lists {
		grid-template-columns: repeat(auto-fill,minmax(178px,1fr));
	}
	.recipe__right {
		width: 36.364%;
		margin: -40px calc(50% - 50vw) 0 4.545%;
	}
	.recipe__right__inner {
		width: 100%;
		padding: 40px 20px 40px 9.091%;
	}
}
@media screen and (max-width: 767px) {
	.recipe__heading {
		width: calc(100% - 10.667%);
		margin: 0 auto;
	}
	.recipe__heading .heading--tiny {
		text-align: center;
	}
	.recipe__heading .heading--huge {
		text-align: center;
	}
	.recipe__lead {
		width: calc(100% - 10.667%);
		text-align: center;
		margin: 0 auto 30px;
		padding: 0;
	}
	.recipe__inner {
		flex-direction: column;
		width: 100%;
		margin: 0 auto 50px;
		padding: 0;
	}
	.recipe__left {
		width: calc(100% - 10.667%);
		margin: 0 auto;
	}
	.recipe__heading--small {
		font-size: 1.7rem;
	}
	.recipe__recommend > .recipe__heading--small {
		width: 100%;
	}
	.recipe__heading--small::after {
		display: none;
	}
	.recipe__left .recipe__recommend__lists {
		grid-template-columns: repeat(auto-fill,minmax(122px,1fr));
		gap: 40px 20px;
		margin: 0 0 40px;
	}
	.recipe__right {
		width: 100%;
		margin: 0;
		border-radius: 0;
	}
	.recipe__right__inner {
		width: calc(100% - 10.667%);
		margin: 0 auto;
		padding: 40px 0;
	}
	.recipe__search__form {
		max-width: 450px;
		margin: 0 auto;
	}
	.recipe__search__form input[type="search"] {
		height: 55px;
	}
	.recipe__search__keyword {
		text-align: center;
		margin: 15px 0 40px;
	}
	.recipe__search__keyword a {
		margin: 0 20px 0 0;
		line-height: 2;
	}
	.recipe__category__lists {
		grid-template-columns: repeat(4,minmax(81px,1fr));
		gap: 20px 15px;
		width: 100%;
	}
	.recipe__category__item {
		display: flex;
		justify-content: center;
		align-self: flex-start;
	}
	.recipe__category__item a {
		flex-direction: column;
		text-align: center;
		width: fit-content;
	}
	.recipe__icon {
		width: 70px;
		margin: 0 0 10px;
	}
	.recipe__left + .button--more a {
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 414px) {
	.recipe__category__lists {
		grid-template-columns: repeat(auto-fill,minmax(81px,1fr));
		gap: 20px 40px;
		width: 71%;
		margin: 0 auto;
	}
	.recipe__category__item a {
		width: 100%;
	}
	.recipe__icon {
		width: 85.924%;
	}
}

/* BRAND */
.section.brand {
	padding: 50px 0 90px;
}
.brand {
	position: relative;
}
.brand .heading--huge {
	position: relative;
}
.brand .heading--tiny {
	color: var(--color-brand);
}
.brand .swiper__controller .swiper-pagination-bullet {
	background: #FFF;
}
.brand .swiper__controller .swiper-pagination-bullet-active {
    background: var(--color-base);
}
.brand__bg {
	width: 80%;
	height: 100%;
	border-radius: 0 10px 0 0;
	background: var(--color-brand);
	position: absolute;
	bottom: -35%;
	left: 0%;
	z-index: -1;
}
.section.brand + .fadein-footprints-toppage-bottom .fadein-footprints {}
.section.brand + .fadein-footprints-toppage-bottom .fadein-footprints .fadein-footprints__inner {
	top: -204px;
  left: auto;
  transform: scale(-1, 1);
  transform-origin: top left;
  right: clamp(200px, 24%, 380px);
  z-index: 1;
}
.section.brand + .fadein-footprints-toppage-bottom .fadein-footprints .bg-fadein-footprints:nth-of-type(n + 11) {
	display: none;
}
@media screen and (max-width: 767px) {
	.section.brand + .fadein-footprints-toppage-bottom .fadein-footprints .fadein-footprints__inner {
		top: -31vw;
		left: 0;
		transform: scale(-0.8, 0.8) rotate(13deg) translateX(0vw) translateY(0);
		transform-origin: center center;
		right: 0;
		z-index: 1;
	}
	.section.brand + .fadein-footprints-toppage-bottom .fadein-footprints .bg-fadein-footprints:nth-of-type(n + 9) {
		display: none;
	}
}
@media screen and (max-width: 414px) {
	.section.brand {
		padding: 40px 0 30px;
	}
	.brand__lists {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		width: calc(100% - 10.667%);
		margin: 0 auto;
	}
	.brand__item {
		width: calc((100% - 4.478%) / 2);
		max-width: 160px;
		box-shadow: var(--box-shadow);
		border-radius: var(--corner-largeround);
		background: #FFF;
		margin: 0 4.478% 20px 0;
	}
	.brand__item:nth-of-type(even) {
		margin: 0 0 20px 0;
	}
	.brand__item a {
		position: relative;
	}
	.brand__image img {
		border-radius: 5px 5px 0 0;
	}
	.brand__text {
		text-align: center;
		padding: 15px;
	}
	.brand__text.icon--blank::after {
		background: var(--color-base);
	}
	.brand__bg {
		width: 100%;
		border-radius: 0;
		position: absolute;
		top: 25%;
		left: 0;
	}
	.section.brand + .fadein-footprints-toppage-bottom .fadein-footprints .fadein-footprints__inner {
		transform: scale(-0.57, 0.57) rotate(8deg) translateX(-14vw) translateY(0vw);
		top: -25vw;
	}
}

/* PRODUCTS */
.products {
	background: var(--bg-gray);
}
.products .heading--tiny {
	color: var(--color-products);
}
.products__inner {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.products__inner .products__category__lists {
	grid-template-columns: repeat(auto-fill,minmax(260px,1fr));
	gap: 40px 20px;
	padding: 0 0 60px;
}
/*
.products__inner .products__category__item,
.products__inner .products__category__item--new {
	width: calc((100% - 50px) / 5);
	margin: 0 10px 40px 0;
}*/
@media screen and (max-width: 1099px) {
	.products__inner {
		width: calc(100% - 40px);
		max-width: inherit;
	}
	.products__inner .products__category__lists {
		grid-template-columns: repeat(auto-fill,minmax(196px,1fr));
	}
	/*
	.products__inner .products__category__item,
	.products__inner .products__category__item--new {
		width: calc((100% - 4.505%) / 5);
		max-width: 212px;
		margin: 0 0.901% 40px 0;
	}
	*/
}
@media screen and (max-width: 767px) {
	.products__inner {
		width: calc(100% - 6.666%);
	}
	.products__inner .products__category__lists {
		grid-template-columns: repeat(auto-fill,minmax(136px,1fr));
		gap: 40px 13px;
	}
	/*
	.products__inner .products__category__item,
	.products__inner .products__category__item--new {
		width: calc((100% - 2.816%) / 2);
		margin: 0 1.408% 40px 0;
	}
	*/
}

/* BULL KITCHEN */
.section.bull-kitchen {
	padding: 70px 0;
}
.bull-kitchen {
	width: 100%;
	background: url("../images/bg_pattern_stripe.png") repeat center center / 42px 42px;
}
.bull-kitchen__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.section__heading.bull-kitchen__heading {
	margin: 0 auto 20px;
}
.bull-kitchen__lead {
	margin: 0 0 40px;
}
.bull-kitchen .button--more a {
	color: var(--color-base);
	background: #FFF;
}
.bull-kitchen .button--more a:hover {
	color: #FFF;
	background: var(--color-base);
	box-shadow: var(--box-shadow);
	border: 2px solid #FFF;
}
.bull-kitchen .button--more .icon--blank::after {
	background: var(--color-base);
	transition: none;
}
.bull-kitchen .button--more a:hover.icon--blank::after {
	background: #FFF;
}
.bull-kitchen__right {
	width: calc(100% - 397px);
	text-align: center;
	position: relative;
	color: #FFF;
}
.bull-kitchen__right .heading--huge {
	margin: 0 0 20px;
}
.bull-kitchen__image01 {
	width: 153px;
	position: absolute;
	top: -10px;
	left: 3px;
}
.bull-kitchen__image02 {
	width: 134px;
	position: absolute;
	top: 96px;
	right: -10px;
}
.bull-kitchen__image03 {
	width: 91px;
	position: absolute;
	top: 255px;
	left: 72px;
}
@media screen and (max-width: 1099px) {
	.bull-kitchen {
		width: 100%;
	}
	.bull-kitchen__inner {
		width: calc(100% - 50px);
	}
	.bull-kitchen__left {
		width: 36.091%;
	}
	.bull-kitchen__right {
		width: 63.909%;
	}
	.bull-kitchen__image01 {
		width: 21.764%;
		top: -18%;
		left: 0.5%;
	}
	.bull-kitchen__image02 {
		width: 19.061%;
		top: 21%;
		right: -1.5%;
	}
	.bull-kitchen__image03 {
		width: 12.945%;
		top: 59%;
		left: 1%;
	}
}
@media screen and (max-width: 767px) {
	.section.bull-kitchen {
		padding: 35px 0 40px;
	}
	.bull-kitchen__inner {
		flex-direction: column-reverse;
		width: calc(100% - 10.667%);
	}
	.section__heading.bull-kitchen__heading {
		margin: 0 0 15px;
	}
	.bull-kitchen__lead {
		margin: 0 0 35px;
	}
	.bull-kitchen__left {
		width: 64.179%;
		max-width: 215px;
		margin: 0 0 35px 5px;
	}
	.bull-kitchen__right {
		width: 100%;
	}
	.bull-kitchen__image01 {
		max-width: 153px;
		top: -3%;
		left: -0.5%;
	}
	.bull-kitchen__image02 {
		max-width: 134px;
		top: 92%;
		right: 0.5%;
	}
	.bull-kitchen__image03 {
		max-width: 91px;
		top: 144%;
		left: 6%;
	}
}
@media screen and (max-width: 414px) {
	.bull-kitchen__image01 {
		width: 20%;
		max-width: 67px;
		top: 87%;
		left: -4%;
	}
	.bull-kitchen__image02 {
		width: 17.612%;
		max-width: 59px;
		top: 128%;
		right: -3.5%;
	}
	.bull-kitchen__image03 {
		width: 10.746%;
		max-width: 36px;
		top: 161.5%;
		left: 4%;
	}
}

/* ABOUT */
.section.about {
	padding: 100px 0 70px;
}
.about {
	width: 100%;
	background: url("../images/image_about_01@2x.png") no-repeat left top / 37%;
	background-attachment: fixed;
}
.about__inner {
	width: 1100px;
	margin: 0 auto;
}
.about__box {
	width: 650px;
	float: right;
	position: relative;
}
.section__heading.about__heading {
	text-align: left;
	margin: 0 0 30px;
}
.about__section__heading--japanese {
	font-size: 5rem;
	line-height: 1.4;
}
.about__text--orange {
	display: table-cell;
	color: var(--color-products);
}
.about__text--skyblue {
	display: table-cell;
	color: var(--color-company);
}
.about__text--green {
	display: table-cell;
	color: var(--color-brand);
}
.about__text--pink {
	display: table-cell;
	color: var(--color-about);
}
.about__lead {
	font-size: 2rem;
	font-weight: bold;
	line-height: 2.5;
	margin: 0 0 50px 80px;
}
.about .button--more {
	justify-content: flex-start;
	padding: 0 0 0 80px;
}
.about__image01 {
	width: 270px;
	position: absolute;
	top: 300px;
	left: -250px;
}
.about__image02 {
	width: 161px;
	position: absolute;
	top: 260px;
	right: 0;
}
@media screen and (max-width: 1099px) {
	.section.about {
		padding: 80px 0 70px;
	}
	.about {
		background: url("../images/image_about_01@2x.png") no-repeat -16% -2% / 48%;
		background-attachment: initial;
	}
	.about__inner {
		width: 100%;
		margin: 0 auto;
		padding: 0 20px;
	}
	.about__box {
		width: 100%;
		margin: 0 auto;
		float: none;
	}
	.section__heading.about__heading {
		text-align: center;
		margin: 0 0 30px;
	}
	.about__lead {
		margin: 0 0 50px 0;
		text-align: center;
	}
	.about .button--more {
		justify-content: center;
		padding: 0;
	}
	.about__image01 {
		width: 20.4%;
		position: absolute;
		top: 51%;
		left: -4.5%;
	}
	.about__image02 {
		width: 16.3%;
		position: absolute;
		top: 68.3%;
		right: 4%;
	}
	.about__image03 {
		width: 15.3%;
		position: absolute;
		top: 28%;
		right: 9%;
	}
}
@media screen and (max-width: 767px) {
	.section.about {
		padding: 100px 0 70px;
	}
	.about {
		background: url("../images/image_about_01@2x.png") no-repeat -36% -2% / 60%;
	}
	.about__inner {
		width: calc(100% - 10.667%);
		padding: 0;
	}
	.about__section__heading--japanese {
		font-size: 3rem;
		line-height: 1.6;
	}
	.about__lead {
		font-size: 1.6rem;
		margin: 0 0 235px;
	}
	.about__inner .button--more a {
		width: 77.612%;
		max-width: 260px;
	}
	.about__image01 {
		width: 32%;
		position: absolute;
		top: 43%;
		left: -16%;
	}
	.about__image02 {
		width: 24%;
		position: absolute;
		top: 66%;
		left: 50%;
		transform: translateX(-50%) !important;
	}
	.about__image03 {
		width: 25%;
		position: absolute;
		top: 18%;
		right: -10%;
	}
}
@media screen and (max-width: 414px) {
	.section.about {
		padding: 325px 0 50px;
	}
	.about {
		background: url("../images/image_about_01_sp@2x.png") no-repeat left -4% / 94%;
	}
	.section__heading.about__heading {
		text-align: center;
		margin: 0 0 20px;
		padding: 0;
	}
	.about__image01 {
		width: 32.5%;
		max-width: 111.5px;
		position: absolute;
		top: 17.5%;
		left: -9%;
	}
	.about__image02 {
		width: 37.2%;
		max-width: 125px;
		position: absolute;
		top: 67.8%;
		left: 50%;
		transform: translateX(-50%) !important;
	}
	.about__image03 {
		width: 32.7%;
		max-width: 111.5px;
		position: absolute;
		top: 65%;
		right: -12%;
	}
}
@media screen and (max-width: 375px) {
	.about {
		background: url("../images/image_about_01_sp@2x.png") no-repeat left top / 94%;
	}
}
@media screen and (max-width: 320px) {
	.section.about {
		padding: 280px 0 40px;
	}
	.about__section__heading--japanese {
		font-size: 2.6rem;
	}
	.about__lead {
		font-size: 1.6rem;
	}
	.about__image01 {
		width: 32.5%;
		max-width: 111.5px;
		position: absolute;
		top: 17.5%;
		left: -16%;
	}
	.about__image02 {
		width: 37.2%;
		max-width: 125px;
		position: absolute;
		top: 69.8%;
		left: 50%;
		transform: translateX(-50%) !important;
	}
	.about__image03 {
		width: 32.7%;
		max-width: 111.5px;
		position: absolute;
		top: 65%;
		right: -19%;
	}
}

/* NEWS RELEASE */
.section.news {
	padding: 70px 0 140px;
}
.news .heading--tiny {
	color: var(--color-company);
}
.news__inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.news__inner .heading--large {
	display: none;
}
.news__left,
.news__right {
	display: flex;
	flex-direction: column;
	width: 510px;
	height: auto;
}
.news__lists {
	margin: 0 0 50px;
}
.news__item {
	padding: 15px 0;
	border-bottom: 1px solid var(--color-lightgray);
}
.news__item.icon--blank:hover {
	background: rgba(232,79,58,0.05);
	transition: all 0.2s;
}
.news__item .news__item__inner {
    display: flex;
	flex-wrap: wrap;
    align-items: flex-start;
    width: 100%;
    line-height: 1.4;
}
.news__item.icon--blank::after {
	background: var(--color-base);
}
.news__item.icon--none {
	display: flex;
    align-items: center;
}
.news__item.icon--none::after {
	content: '';
    display: inline-block;
	width: 0.8em;
	height: 0.8em;
}
.news__item .icon--new::after {
	content: 'NEW!';
	display: inline-block;
	color: var(--color-base);
	font-weight: bold;
	font-size: 1.4rem;
	margin: 0 0 0 10px;
}
.news__item .icon--new::before {
	display: none;
}
.news__date {
	font-family: 'webfont-english';
	font-weight: bold;
	color: #323232;
	margin: 0 20px 0 0;
}
.news__category {
	display: inline-block;
	width: 110px;
	text-align: center;
	font-size: 1.4rem;
	color: #646464;
	line-height: 1;
	border: 1px solid #646464;
	padding: 4px 0;
	border-radius: var(--corner-circle);
	background: #FFF;
}
.news__title {
	width: 100%;
	color: #323232;
	padding: 10px 10px 0 0;
}
.news__left .button--more,
.news__right .button--more {
	margin: auto auto 0;
}
.news__right .button--more a {
	color: #FFF;
	background: var(--color-darkgray);
}
.news__right .button--more a:hover {
	color: var(--color-darkgray);
	background: #FFF;
	box-shadow: var(--box-shadow);
	border: 2px solid var(--color-darkgray);
}
.news__right .button--more .icon--blank::after {
	background: #FFF;
	transition: none;
}
.news__right .button--more a:hover.icon--blank::after {
	background: var(--color-darkgray);
}
@media screen and (max-width: 1099px) {
	.news__left,
	.news__right {
		display: flex;
		flex-direction: column;
		width: 46.364%;
		height: auto;
	}
	.news__date {
		margin: 0 3.922% 0 0;
	}
}
@media screen and (max-width: 767px) {
	.section.news {
		padding: 70px 0 60px;
	}
	.news__inner {
		flex-direction: column;
	}
	.news__inner .heading--large {
		display: flex;
		margin: 0 0 20px;
	}
	.news__left,
	.news__right {
		width: 100%;
	}
	.news__left {
		margin: 0 0 60px;
	}
	.news__lists {
		margin: 0 0 40px;
	}
	.news__item {
		padding: 20px 0;
	}
	.news__item .icon--new::after {
		font-size: 1.2rem;
	}
	.news__date {
		margin: 0 4.478% 0 0;
	}
	.news__category {
		font-size: 1.2rem;
	}
	.news__title {
		padding: 10px 2.985% 0 0;
	}
	.news__left .button--more,
	.news__right .button--more {
		margin: 0;
	}
	.news__left .button--more a,
	.news__right .button--more a {
		width: 77.612%;
		max-width: 260px;
		margin: 0 auto;
	}
}

/* INSTAGRAM */
.instagram {
	width: 100%;
	padding: 50px 0 60px;
	background: var(--bg-gray);
	text-align: center;
}
.instagram__heading {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 3.4rem;
	font-weight: bold;
	font-family: 'webfont-english';
	margin: 0 0 5px;
}
.instagram__heading img {
	width: 40px;
	margin: 0 10px 0 0;
}
.instagram__lead {
	margin: 0 0 35px;
}
.instagram__lists {
	display: flex;
	flex-wrap: wrap;
	width: 1100px;
	margin: 0 auto;
}
.instagram__item {
	width: 180px;
	margin: 0 4px 4px 0;
}
.instagram__item:nth-of-type(6n) {
	margin: 0 0 4px 0;
}
@media screen and (max-width: 1099px) {
	.instagram {
		padding: 50px 20px 60px;
	}
	.instagram__lists {
		width: 100%;
	}
	.instagram__item {
		width: calc((100% - 1.82%) / 6);
		margin: 0 0.364% 4px 0;
	}
	.instagram__item:nth-of-type(6n) {
		margin: 0 0 4px 0;
	}
}
@media screen and (max-width: 767px) {
	.instagram {
		padding: 30px 5.333% 45px;
	}
	.instagram__heading img {
		width: 29.5px;
	}
	.instagram__heading {
		font-size: 2.4rem;
		margin: 0 0 10px;
	}
	.instagram__lead {
		margin: 0 0 25px;
	}
	.instagram__lists {
		justify-content: center;
	}
	.instagram__item {
		width: calc((100% - 1.82%) / 6);
		max-width: 109px;
		margin: 0 0.364% 4px 0;
	}
}
@media screen and (max-width: 414px) {
	.instagram__item {
		width: calc((100% - 2.388%) / 3);
		margin: 0 1.194% 4px 0;
	}
	.instagram__item:nth-of-type(3n) {
		margin: 0 0 4px 0;
	}
}

/* ----------------------------------------------------------------------------------------------------
*  下層ページ
* --------------------------------------------------------------------------------------------------*/

/* ----------------------------------------------------------------------------------------------------
*  RECIPE
* --------------------------------------------------------------------------------------------------*/

/* インデックス */
.main-area .recipe__lists {
	padding: 0 0 40px;
}
.recipe__head-area {
	padding: 60px 0 1px !important;
	background: url("../images/recipe/bg_01@2x.jpg") no-repeat center top / cover;
}
.recipe__head-area .heading--tiny {
	color: var(--color-recipe);
}
.recipe__head-area .heading--huge {
	margin: 0 0 20px;
}
.recipe__head-area .inner > p {
	margin: 0 0 30px;
}
#recipe-top .recipe__search__keyword {
	margin: 10px 0 0;
}
#recipe-top .recipe__search__keyword a {
	color: var(--color-recipe);
}
.recipe__heading--small-icon,
.recipe__heading--large-icon,
.recipe__heading--andbulldog {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 50px;
}
.recipe__heading--small-icon span,
.recipe__heading--large-icon span,
.recipe__heading--andbulldog span {
	margin: 0;
}
.recipe__heading--small-icon span:first-of-type,
.recipe__heading--large-icon span:first-of-type,
.recipe__heading--andbulldog span:first-of-type {
	display: grid;
	height: auto;
}
.recipe__heading--small-icon span:first-of-type {
	width: 30px;
	margin: 0 10px 0 0;
}
.recipe__heading--large-icon span:first-of-type {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 45px;
	height: auto;
	margin: 0 15px 0 0;
}
.recipe__heading--small-icon svg,
.recipe__heading--large-icon svg {
	fill: var(--color-recipe);
}
.recipe__heading--large-icon svg.icon--products {
	width: 83.528%;
}
.recipe__heading--large-icon svg.icon--menu {
	width: 77.906%;
}
.recipe__heading--large-icon svg.icon--scene {
	width: 100%;
}
.recipe__heading--large-icon svg.icon--ingredients {
	width: 89.817%;
}
.recipe__heading--andbulldog span:first-of-type {
	width: 72px;
	margin: 0 10px 0 0;
}
.recipe__main-area .heading--line::before,
.recipe__main-area .heading--line::after {
	border-top: 3px solid #E6DCCF;
}
.recipe__lists {
	display: grid;
    grid-template-rows: auto;
	grid-template-columns: repeat(auto-fill,minmax(245px,1fr));
	gap: 50px 40px;
}
.recipe__unit {
	width: 100%;
}
.recipe__unit p {
	line-height: 1.4;
}
.recipe__unit > a {
	position: relative;
}
.recipe__unit .recipe__image--small {
	margin: 0 0 15px;
}
.recipe__unit .recipe__image--small + p {
	font-size: 2rem;
	margin: 0 0 15px;
}
.recipe__unit .recipe__data {
	margin: 0 0 15px;
	padding: 0;
	background: none;
}
.recipe__unit .recipe__data p span:first-of-type {
	width: inherit;
}
.recipe__unit .recipe__data p span:nth-of-type(2) {
	font-size: inherit;
	margin: 0;
}
.recipe__unit .products__image--small {
	width: 28.642%;
}
@media screen and (max-width: 1099px) {
	.recipe__lists {
		grid-template-columns: repeat(auto-fill,minmax(180px,1fr));
	}
}
@media screen and (max-width: 767px) {
	.main-area .recipe__lists {
		padding: 0 0 20px;
	}
	.recipe__head-area {
		margin: 0px 0 35px;
		padding: 35px 0 1px !important;
		background: url("../images/recipe/bg_01_sp.jpg") no-repeat center top / cover;
	}
	.recipe__head-area .heading--huge {
		margin: 0 0 10px;
	}
	#recipe-top .recipe__bottom + form {
		width: calc(100% - 10.667%);
	}
	.recipe__heading--small-icon,
	.recipe__heading--large-icon {
		margin: 0 0 30px;
	}
	.recipe__heading--large-icon span:first-of-type {
		width: 10.448%;
		max-height: 35px;
	}
	.recipe__heading--andbulldog {
		flex-direction: column;
		margin: 0 0 30px;
	}
	.recipe__heading--andbulldog span:first-of-type {
		width: 19.004%;
		max-width: 63.665px;
		margin: 0 0 10px;
	}
	.recipe__lists {
		grid-template-columns: repeat(auto-fill,minmax(122px,1fr));
		gap: 40px 20px;
	}
	.recipe__unit p {
		font-size: 1.2rem;
	}
	.recipe__unit .recipe__image--small + p {
		font-size: 1.6rem;
	}
	.recipe__unit .products__item__item a {
		flex-direction: row;
	}
	.recipe__unit .products__image--small {
		width: 34.37%;
		margin: 0 10px 0 0;
	}
	.recipe__unit .products__item__item p {
		text-align: left;
	}
}

/* レシピ詳細 */
.recipe__gridbox {
	width: 100%;
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: 1fr 1fr;
	gap: 0 4.546%;
}
.recipe__gridbox > div:nth-of-type(3) {
	margin: 50px 0 40px;
}
.recipe__heading__outer {
	grid-area: 1 / 1 / 2 / 3;
	display: flex;
	align-items: center;
	flex-direction: column;
	width: 100%;
	margin: 0 auto;
}
.recipe__heading__outer .heading--small {
	color: var(--color-recipe);
}
.recipe__heading__outer .heading--huge {
	width: 70%;
	margin: 0;
}
.recipe__image {
	grid-area: 2 / 1 / 5 / 2;
	height: fit-content;
	margin: 50px 0 70px;
}
.recipe__image img {
	width: 100%;
	object-fit: contain;
}
.recipe__data {
	padding: 15px 3.81%;
	background: var(--bg-gray);
	margin: 0 0 40px;
}
.recipe__data p {
	display: flex;
}
.recipe__data p:first-of-type {
	margin: 0 0 5px;
}
.recipe__data p span:first-of-type {
	width: 25%;
	color: var(--color-recipe);
}
.recipe__data p span:nth-of-type(2) {
	flex: 1;
	font-size: 1.8rem;
	margin: 0 0 0 3.81%;
}
.recipe__data p .icon--energy::before {
	width: 1em;
	height: 1em;
	background: var(--color-recipe);
}
.recipe__data p .icon--time::before {
	width: 1em;
	height: 1em;
	background: var(--color-recipe);
}
.recipe__products-used {
	margin: 0 0 40px;
}
.recipe__products-used > .heading--medium {
	color: var(--color-recipe);
	text-align: left;
}
.recipe__products-used__item {
	display: flex;
	align-items: center;
	background: var(--bg-recipe);
	border-radius: var(--corner-largeround);
	padding: 20px 5.714% 20px 1.905%;
}
.recipe__products-used__item:nth-of-type(n+2) {
	margin: 10px 0 0;
}
.recipe__products-used__image {
    width: 31.683%;
	margin: 0 5.714% 0 0;
}
.recipe__products-used__text {
	flex: 1;
}
.recipe__products-used__text .heading--medium {
	text-align: left;
}
.recipe__products-used__text p {
	margin: 0 0 10px;
}
.recipe__products-used__text a {
	display: inline-block;
}
.recipe__products-used__text a:nth-of-type(n+2) {
	margin: 0 0 0 3.401%;
}
.recipe__products-used__text a.icon--arrow::after,
.recipe__products-used__text a.icon--blank::after {
	background: var(--color-base);
	margin: 0 0 0 10px;
}
.recipe__point {
	margin: 0 0 70px;
}
.recipe__point .heading--medium {
	color: var(--color-recipe);
	text-align: left;
}
.recipe__ingredients .heading--medium,
.recipe__steps .heading--medium {
	border-bottom: 2px solid var(--color-recipe);
	margin: 0;
	padding: 0 0 15px;
	text-align: left;
}
.recipe__ingredients {
	grid-area: 5 / 1 / 6 / 2;
	margin: 0;
}
.recipe__ingredients .heading--medium span {
	font-size: initial;
}
.recipe__ingredients__lists {
	background: var(--bg-gray);
}
.recipe__ingredients__item {
	display: flex;
	justify-content: space-between;
	padding: 10px 3.81%;
	border-bottom: 1px solid var(--color-lightgray);
}
.recipe__ingredients__item span:first-of-type,
.recipe__ingredients__item span:nth-of-type(2) {
	width: 48%;
}
.recipe__ingredients__item span:nth-of-type(2) {
	text-align: right;
}
.recipe__ingredients__group > .recipe__ingredients__item:first-of-type {
	padding: 20px 20px 5px;
}
.recipe__steps {
	grid-area: 5 / 2 / 6 / 3;
	margin: 0;
}
.recipe__steps__item {
	padding: 20px 0;
	border-bottom: 1px solid var(--color-lightgray);
}
.recipe__steps__item p {
	display: flex;
	align-items: baseline;
}
.recipe__steps__number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	font-family: 'webfont-english';
	font-size: 1.8rem;
	color: #FFF;
	background: var(--color-recipe);
	border-radius: 50%;
	margin: 0 15px 0 0;
}
.recipe__steps__number--small {
	display: inline-block;
	width: 26px;
	height: 26px;
	line-height: 26px;
	font-family: 'webfont-english';
	font-size: initial;
	color: #FFF;
	background: var(--color-recipe);
	border-radius: 50%;
	text-align: center;
	vertical-align: baseline;
}
.recipe__steps__item span:nth-of-type(2)  {
	flex: 1;
}
.choose-recipes {
	background: var(--color-recipe);
}
.choose-recipes .heading--large {
	color: #FFF;
}
.choose-recipes .products__item__item a p {
	color: #FFF;
}
.choose-recipes .products__item__item a p.textlink__icon--arrow::after {
	background: #FFF;
}
.choose-recipes .products__item__item a:hover p {
	color: #323232;
}
.choose-recipes .products__item__item a:hover p.textlink__icon--arrow::after {
	background: var(--color-base);
}
.sub-area .recipe__category__lists {
	display: grid;
    grid-template-rows: auto;
	grid-template-columns: repeat(4,minmax(245px,1fr));
	gap: 0 40px;
}
.sub-area .recipe__category__item {
	width: 100%;
	margin: 0;
}
.other-recipes {
	background: var(--bg-recipe);
	margin: 70px 0 0;
}
.sub-area .recipe__recommend__lists {
	margin: 0 0 50px;
}
.recipe-creater {
	display: flex;
    align-items: baseline;
	width: 100%;
	margin: 15px 0 0;
}
.recipe-creater__icon--recipe,
.recipe-creater__icon--person {
	width: 1.35em;
	height: 100%;
    text-align: center;
}
.recipe-creater a {
	flex: 1;
	margin: 0 0 0 10px;
}
.recipe-creater__icon--recipe svg {
	width: 100%;
}
.recipe-creater__icon--person svg {
	width: 83.333%;
}
.recipe-creater__icon--recipe svg,
.recipe-creater__icon--person svg {
	fill: var(--color-recipe);
	vertical-align: sub;
}

@media screen and (max-width: 1099px) {
	.recipe__heading__outer .heading--huge {
		width: 55%;
	}
	.recipe__data p span:first-of-type {
		width: 40%;
	}
	.recipe__data p span:nth-of-type(2) {
		margin: 0;
	}
	.recipe__data p:first-of-type {
		margin: 0 0 10px;
	}
	.recipe__products-used__item:nth-of-type(n+2) {
		margin: 10px 0 0;
	}
	.recipe__products-used__image {
		margin: 0 5.714% 0 0;
	}
	.recipe__products-used__text a:nth-of-type(n+2) {
		margin: 0;
	}
	.recipe__ingredients__group > .recipe__ingredients__item:first-of-type {
		padding: 20px 3.81% 5px;
	}
	.recipe__steps__number {
		margin: 0 2.857% 0 0;
	}
	.sub-area .recipe__category__lists {
		grid-template-columns: repeat(4,minmax(140px,1fr));
	}
}
@media screen and (max-width: 767px) {
	.recipe__gridbox {
		display: flex;
		flex-direction: column;
		gap: 0 0;
	}
	.recipe__gridbox > div:nth-of-type(3) {
		margin: inherit;
	}
	.recipe__heading__outer {
		order: 1;
	}
	.recipe__heading__outer .heading--huge {
		width: 100%;
	}
	#recipe .share {
		order: 8;
		margin: 0 0 60px;
	}
	.recipe__image {
		order: 2;
		margin: 30px auto 20px;
		max-width: 375px;
	}
	.recipe__data {
		order: 3;
		margin: 10px 0 20px;
		padding: 15px 5.97%;
	}
	.recipe__data p span:first-of-type {
		width: 35%;
	}
	.recipe__data p span:nth-of-type(2) {
		font-size: 1.4rem;
	}
	.recipe__data p:first-of-type {
		margin: 0 0 5px;
	}
	.recipe__data p .icon--energy {
		font-size: 1.2rem;
	}
	.recipe__data p .icon--time {
		font-size: 1.2rem;
	}
	.recipe__data p .icon--energy::before {
		width: 1.3em;
		height: 1.3em;
	}
	.recipe__data p .icon--time::before {
		width: 1.3em;
		height: 1.3em;
	}
	.recipe__products-used {
		order: 6;
		margin: 0 0 50px !important;
	}
	.recipe__products-used__item {
		flex-direction: column;
		justify-content: center;
		border-radius: var(--corner-largeround);
		padding: 30px 5.97%;
	}
	.recipe__products-used__item:nth-of-type(n+2) {
		margin: 10px 0 0;
	}
	.recipe__products-used__text p {
		margin: 0 0 25px;
	}
	.recipe__products-used__image {
		width: 44.776%;
		max-width: 150px;
		margin: 0 0 20px;
	}
	.recipe__products-used__text a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		max-width: 295px;
		height: 40px;
		background: var(--color-base);
		border-radius: var(--corner-circle);
		margin: 0 auto;
		color: #FFF;
		font-weight: bold;
		position: relative;
		transition: all 0.2s;
	}
	.recipe__products-used__text a:hover {
		background: #FFF;
		border: 1px solid var(--color-base);
		color: var(--color-base);
	}
	.recipe__products-used__text a:nth-of-type(n+2) {
		margin: 15px auto 0;
	}
	.recipe__products-used__text a.icon--arrow::after,
	.recipe__products-used__text a.icon--blank::after {
		background: #FFF;
		position: absolute;
		right: 20px;
	}
	.recipe__products-used__text a:hover.icon--arrow::after {
		background: var(--color-base);
		position: absolute;
		right: 15px;
	}
	.recipe__products-used__text a:hover.icon--blank::after {
		background: var(--color-base);
		position: absolute;
	}
	.recipe__point {
		order: 7;
		margin: 0 0 60px;
	}
	.recipe__ingredients__heading--medium,
	.recipe__steps__heading--medium {
		border-bottom: 3px solid var(--color-recipe);
	}
	.recipe__ingredients {
		order: 4;
		margin: 30px 0 50px;
	}
	.recipe__ingredients__item {
		padding: 10px 4.478%;
	}
	.recipe__ingredients__group > .recipe__ingredients__item:first-of-type {
		padding: 20px 4.478% 5px;
	}
	.recipe__steps {
		order: 5;
		margin: 0 0 50px;
	}
	.recipe__steps__number {
		width: 30px;
		height: 30px;
		font-size: 1.6rem;
		margin: 0 2.239% 0 0;
	}
	.recipe__steps__number--small {
		width: 23px;
		height: 23px;
		line-height: 23px;
	}
	.other-recipes {
		margin: 0;
	}
	.sub-area .recipe__recommend__lists {
		margin: 0 0 40px;
	}
	.recipe-creater__icon--recipe,
	.recipe-creater__icon--person {
		width: 1.58em;
	}
}

/* 新着レシピ検索 */
.search__new-recipe a {
	height: 50px;
	margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
	.search__new-recipe a {
		height: 45px;
	}
}

/* ----------------------------------------------------------------------------------------------------
*  SHOPPING
* --------------------------------------------------------------------------------------------------*/

/* ポップアップ */
.order__popup input {
	display: none;
}
.order__popup__overlay {
	display: flex;
	justify-content: center;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
	height: 100%;
	background:rgba(0,0,0,0.5);
	opacity: 0;
	transition: opacity 0.2s, transform 0s 0.2s;
	transform: scale(0);
}
.order__popup__trigger {
	position: absolute;
	width: 100%;
	height: 100%;
}
.order__popup__inner {
	position: relative;
	align-self: center;
	overflow-y: scroll;
	width: 100%;
	max-width: 720px;
	height: 80vh;
	padding: 30px 50px;
	background: #FFFCF2;
	transition: 0.2s;
	border-radius: var(--corner-largeround);
	box-shadow: var(--box-shadow);
}
.order__popup input:checked ~ .order__popup__overlay {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.2s;
}
.order__popup__button--detail {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 42px;
	color: #FFF;
	transition: all 0.2s;
	border-radius: var(--corner-smallround);
	background: #43B762;
	position: relative;
	cursor: pointer;
	margin: 15px 0 0;
}
.order__popup__button--detail.icon--arrow::after {
	background: #FFF;
	width: 0.8em;
	height: 0.8em;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	transition: all 0.2s;
}
.order__popup__button--detail:hover.icon--arrow::after {
	background: #43B762;
	right: 10px;
}
.order__popup__button--detail:hover {
	background: #FFF;
	color:#43B762;
	border: 2px solid #43B762;
}
.order__popup__button--detail span::after {
	content: '';
	display: inline-block;
	margin: 0 0 0 10px;
}
.order__popup__inner .products__heading__outer .heading--small {
	margin: 0 0 5px;
}
.order__popup__inner .products__heading__outer .heading--huge {
	width: 90%;
	font-size: 3rem;
	margin: 0 0 30px;
}
.order__popup__inner .products__image__outer {
	width: 56.452%;
	margin: 0 auto 30px;
}
.order__popup__inner .products__description {
	margin: 0 0 30px;
}
.order__popup__inner .products__data {
	margin: 0 0 30px;
}
.order__popup__inner .products__allergy {
	margin: 0 0 30px;
}
.order__popup__inner .products__component {
	margin: 0 0 50px;
}
.order__popup__inner .products__button__outer {
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 0 50px;
}
.order__popup__inner .button--more a {
	width: 260px;
}
.order__popup__inner .button--more a.icon--cart::before {
	background: #FFF;
	width: 1.2em;
	height: 1.2em;
	margin: 0 10px 0 0;
}
.order__popup__inner .button--more a:hover.icon--cart::before {
	background: var(--color-base);
}
.order__popup__inner .button--more:first-of-type {
	margin: 0 6.452% 30px 0;
}
.order__popup__inner .button--more:first-of-type span::after {
	content: '';
	display: inline-block;
	margin: 0 0 0 10px;
}
.order__popup__inner .button--more:nth-of-type(2) {
	margin: 0 0 30px;
}
.order__popup__button--close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: var(--color-lightgray);
	position: absolute;
	top: 14px;
	right: 16px;
}
.order__popup__button--close.icon--close::before {
	background: var(--color-darkgray);
	width: 17px;
	height: 17px;
}
.order__popup__button--close:hover {
	opacity: 0.5;
}
.order__popup__bottom-button--close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24.194%;
	height: 40px;
	margin: 0 auto;
	color: #FFF;
	border-radius: var(--corner-smallround);
	background: var(--color-darkgray);
}
.order__popup__bottom-button--close.icon--close::before {
	background: #FFF;
	width: 0.8em;
	height: 0.8em;
	margin: 0 10px 0 0;
}
.order__popup__bottom-button--close:hover {
	opacity: 0.5;
}
@media screen and (max-width: 767px) {
	.order__popup__inner {
		width: 86.667%;
		padding: 30px 6.154%;
	}
	.order__popup__button--detail.icon--arrow::after {
		right: 10px;
	}
	.order__popup__button--detail:hover.icon--arrow::after {
		right: 10px;
	}
	.order__popup__inner .products__heading__outer .heading--huge {
		font-size: 2.1rem;
		margin: 0 0 25px;
	}
	.order__popup__inner .products__image__outer {
		width: 92.982%;
		max-width: 265px;
	}
	.order__popup__inner .products__component {
		margin: 0 0 30px;
	}
	.order__popup__inner .products__button__outer {
		margin: 0 0 40px;
	}
	.order__popup__inner .button--more a {
		width: 87.719%;
		max-width: 280px;
	}
	.order__popup__inner .button--more:first-of-type {
		margin: 0 auto 20px;
	}
	.order__popup__inner .button--more:first-of-type span::after {
		display: none;
	}
	.order__popup__inner .button--more:nth-of-type(2) {
		margin: 0 auto 20px;
	}
	.order__popup__button--close {
		width: 35px;
		height: 35px;
		top: 14px;
		right: 16px;
	}
	.order__popup__button--close.icon--close::before {
		background: var(--color-darkgray);
		width: 15.5px;
		height: 15.5px;
	}
	.order__popup__bottom-button--close {
		width: 45.965%;
		max-width: 131px;
		height: 35px;
		border-radius: var(--corner-largeround);
	}
	.order__popup__bottom-button--close.icon--close::before {
		margin: 0 5px 0 0;
	}
}
@media screen and (max-width: 320px) {
	.order__popup__button--detail.icon--arrow::after {
		right: 3px;
	}
	.order__popup__button--detail:hover.icon--arrow::after {
		right: 3px;
	}
	.order__popup__inner .button--more {
		max-width: inherit;
	}
	.order__popup__inner .button--more a {
		width: 100%;
		max-width: inherit;
	}
}

/* タブメニュー */
.limited__item__inner {
	background: #FFF;
	width: 100%;
	margin: 40px 0 0;
	padding: 40px 0 70px;
}
.order__limited {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	margin: 0 auto;
}
.order__limited::after {
	content: '';
	width: 100%;
	order: -1;
	display: block;
}
.order__limited .order__limited__tab-label {
	display: flex;
	align-items: center;
	justify-content: center;
	order: -1;
	width: 23.455%;
	height: 40px;
	transition: all 0.2s;
	cursor: pointer;
	background: var(--color-gray);
	border-radius: var(--corner-circle);
	text-align: center;
	margin: 0 10px 10px;
}
.order__limited .order__limited__tab-label:nth-last-of-type(1) {
	margin-right: 0;
}
.order__limited input {
	display: none;
}
.order__limited .order__limited__inner {
	width: 100%;
	height: 0;
	overflow: hidden;
	opacity: 0;
}
.order__limited input:checked + .order__limited__tab-label {
	color: #fff;
	background: var(--color-base);
}
.order__limited input:checked + .order__limited__tab-label + .order__limited__inner {
	height: auto;
	overflow: auto;
	transition: .5s opacity;
	opacity: 1;
}
.order__limited__inner .section__heading--banner {
	padding: 30px 0 0;
}
.order__limited__inner .section__heading--small {
	text-align: center;
	margin: 0 0 20px;
	padding: 30px 0 0;
}
.order__limited__main {
	width: 80%;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.limited__item__inner {
		margin: 20px auto 0;
		padding: 20px 0;
	}
	.order__limited {
		justify-content: flex-start;
		width: 92.537%;
		margin: 0 0 0 5.97%;
	}
	.order__limited .order__limited__tab-label {
		width: 45.161%;
		height: 35px;
		margin: 0 4.839% 15px 0;
		line-height: 1.2;
	}
	.order__limited__inner .section__heading--banner {
		width: calc(100% - 4.839%);
		padding: 10px 0 0;
	}
	.order__limited__inner .section__heading--small {
		width: calc(100% - 4.839%);
		font-size: 1.6rem;
		margin: 0 0 20px;
		padding: 10px 0 0;
	}
	.order__limited__main {
		/*width: calc(100% - 4.839%);*/
		width: 100%;
		margin: 0;
	}
}

/* 絞り込み */
.is-hide {
	display: none;
}


/* 内容 */
.order__heading .heading--tiny {
	color: var(--color-base);
}
.order__heading .heading--huge {
	justify-content: center;
}
.order__heading .heading--huge.icon--cart::before {
	background: var(--color-base);
	width: 34px;
	height: 34px;
	margin: 4px 10px 0 0;
}
.order__heading + p {
	margin: 0 0 50px;
}
.order__box {
	margin: 0 0 40px;
}
.button--down {
	width: 260px;
}
.order__box div:first-of-type {
	margin: 0 3.636% 0 0;
}
.order__contact {
	flex-direction: column;
	text-align: center;
	margin: 0 0 50px;
}
.order__contact:last-of-type {
	margin: 0 0 120px;
}
.order__contact.order__complete:last-of-type {
	margin: 0 0 70px;
}
.order__contact__lead {
	margin: 0 0 30px;
}
.order__contact__address {
	margin: 30px 0 0;
}
.order__contact__address span {
	font-weight: bold;
}
.order__contact__telephone img {
	width: 52px;
	margin: 0 10px 0 0;
}
.order__contact__telephone p {
	font-size: 4rem;
	line-height: 1.4;
	font-weight: bold;
	font-style: normal;
}
.order__banner,
.order__bannerNoTabs {
	margin: 0 0 80px;
}
.order__banner__box {
	flex-wrap: wrap;
	gap: 2.5rem 3rem;
	width: 82.727%;
	margin: 0 auto;
}
.order__banner__box a {
	width: min(48.352%, 44rem);
}
.order__banner__box a:hover {
	opacity: 0.5;
}
.order__bottom {
	width: 100%;
	background: #E67566;
	padding: 5px 0;
	position: fixed;
	z-index: 999;
	bottom: 0;
}
.order__bottom__inner {
	width: 100%;
	max-width: 1100px;
	padding: 0 1.818%;
	color: #FFF;
	margin: 0 auto;
}
.order__bottom__inner > p {
	font-size: 1.8rem;
	line-height: 1.4;
	margin: 0 1.887% 0 0;
}
.order__bottom__detail {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 55.455%;
	margin: 0 3.774% 0 0;
}
.order__bottom__price {
	width: calc((100% - 6.43%) / 3);
	text-align: center;
}
.order__bottom__price > p {
	font-size: 1.5rem;
}
.order__bottom__price div {
	width: 100%;
	height: 46px;
	background: #FFF;
	border-radius: var(--corner-circle);
}
.order__bottom__price div p {
	color: #323232;
}
.order__bottom__detail p {
	width: 100%;
}
.order__bottom__button {
	display: flex;
	justify-content: center;
	width: 24.528%;
	height: 64px;
	font-size: 1.8rem;
	color: #FFF;
	border-radius: var(--corner-largeround);
	border: 2px solid #FFF;
	position: relative;
}
.order__bottom__button.icon--arrow::after {
	width: 0.5em;
	height: 0.8em;
	background: #FFF;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%) rotate(90deg);
	transition: all 0.2s;
	-webkit-mask-size: cover;
	        mask-size: cover;
}
.order__bottom__button:hover {
	color: var(--color-base);
	background: #FFF;
}
.order__bottom__button:hover.icon--arrow::after {
	background: var(--color-base);
	top: 55%;
}
.order__bottom__button span::after {
	content: '';
	display: inline-block;
	margin: 0 0 0 15px;
}
.order__products {
	background: #FDF3F2;
	margin: 0 0 70px;
}
.order__products__inner {
	padding: 70px 0 0;
}
.order__products__menu {
	display: flex;
	width: 100%;
	height: 58px;
	background: #FFF;
	border-radius: var(--corner-circle);
	border: 1px solid var(--color-gray);
}
.order__products__menu p {
	width: 16.182%;
	font-size: 1.8rem;
	position: relative;
}
.order__products__menu p span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	white-space: nowrap;
}
.order__products__menu p::after {
	content: '';
	width: 1px;
	height: calc(100% - 14px);
	margin: 7px 0;
	border-right: 1px solid var(--color-gray);
	float: right;
}
.order__search__lists {
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	width: 83.818%;
}
.order__search__item {
	display: inline-block;
	cursor: pointer;
}
.order__search__item:hover {
	transition: all 0.2s;
}
.order__search__item.is-active {
	color: var(--color-base);
	border-bottom: 1px solid var(--color-base);
}
.order__products__menu + p {
	display: flex;
	align-items: center;
	margin: 0 0 10px;
}
@media screen and (max-width: 1099px) {
	.order__banner__box {
		width: 100%;
	}
	.order__banner__box a {
		width: min(590 / 750 * 100vw, 59rem);
	}
	.order__products__menu p {
		font-size: 1.6rem;
	}
	.order__bottom__inner {
		width: calc(100% - 40px);
		max-width: inherit;
		padding: 0;
	}
	.order__bottom__detail > p {
		font-size: 1.3rem;
	}
	.order__products--attention {
		width: 100%;
		margin: 0 0 30px;
	}
}
@media screen and (max-width: 767px) {
	.order__heading .heading--huge.icon--cart::before {
		width: 26.5px;
		height: 26.5px;
	}
	.order__box {
		margin: 0 0 40px;
	}
	.button--down {
		width: 47.015%;
		max-width: 260px;
	}
	.order__box div:first-of-type {
		margin: 0 5.97% 0 0;
	}
	.order__contact {
		margin: 0 0 60px;
	}
	.order__contact:last-of-type {
		margin: 0 0 60px;
	}
	.order__contact__address {
		margin: 30px 0 0;
	}
	.order__contact__telephone p {
		font-size: 3.5rem;
	}
	.order__bottom {
		width: 100%;
		padding: 7px 0;
	}
	.order__bottom__inner {
		display: flex;
		flex-wrap: wrap;
		width: calc(100% - 10.667%);
	}
	.order__bottom__inner > p {
		display: none;
	}
	.order__bottom__detail {
		width: 100%;
		margin: 0;
	}
	.order__bottom__detail > p {
		font-size: 1.2rem;
		line-height: 1.4;
		text-align: center;
		margin: 5px 0 7px;
	}
	.order__bottom__price {
		width: calc((100% - 2.986%) / 3);
	}
	.order__bottom__price > p {
		font-size: 1.2rem;
		line-height: 1;
		margin: 0 0 5px;
	}
	.order__bottom__price div {
		height: 26px;
	}
	.order__bottom__price div p {
		font-size: 1.1rem;
	}
	.order__bottom__button {
		width: 100%;
		max-width: 335px;
		height: 50px;
	}
	.order__products {
		margin: 0 0 40px;
	}
	.order__products__inner {
		padding: 30px 0 0;
	}
	.order__products__menu {
		display: inline-block;
		height: auto;
		background: none;
		border-radius: 0;
		border: none;
	}
	.order__products__menu p {
		width: 100%;
		text-align: center;
		font-size: 1.4rem;
		margin: 0 0 20px;
	}
	.order__products__menu p span {
		position: static;
	}
	.order__products__menu p::after {
		display: none;
	}
	.order__search__lists {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		justify-content: inherit;
		width: 100%;
		margin: 0 -4.286% 0 2.143%;
	}
	.order__search__item {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 29%;
		height: 45px;
		text-align: center;
		line-height: 1.2;
		border-radius: var(--corner-circle);
		border: 1px solid var(--color-base);
		background: #FFF;
		margin: 0 4.286% 15px 0;
	}
	.order__search__item.is-active {
		background: var(--color-base);
		border-bottom: none;
		color: #FFF;
	}
	.order__products__menu + p {
		justify-content: center;
		margin: 0 0 20px;
	}
}
@media screen and (max-width: 375px) {
	.order__heading + p {
		margin: 0 0 20px;
	}
}
@media screen and (max-width: 320px) {
	.order__bottom__price > p {
		font-size: 1rem;
		letter-spacing: -0.05em;
	}
}
.order__limited .order__limited__tab-label.text--small {
	font-size: 1.4rem;
}
.order__limited__select {
	position: relative;
    width: 23.455%;
    margin: 0 auto;
}
.order__limited__select .product_limited {
	width: 100%;
	height: 60px;
    padding: 0 15px;
    border-radius: var(--corner-circle);
    border: 1px solid var(--color-gray);
	background: #FFF;
}
.order__limited__select .icon--arrow::after {
	width: 0.5em;
    height: 0.8em;
    background: var(--color-gray);
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(90deg);
    transition: all 0.2s;
    -webkit-mask-size: cover;
}
.order__limited__inner .section__heading--small .section__heading__head {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 1.5rem;
}
.order__limited__inner .section__heading--small .section__heading__body {
	width: 80%;
	border-radius: 0.5rem;
	margin: 0 auto;
	padding: 1rem;
	background: var(--bg-gray);
}
@media screen and (max-width: 767px) {
	.order__limited .order__limited__tab-label.text--small {
		font-size: 1.2rem;
	}
	.order__limited__select {
		width: calc(100% - 4.839%);
		margin: inherit;
	}
	.order__limited__select .product_limited {
		height: 50px;
	}
	.order__limited__inner .section__heading--small .section__heading__head {
		font-size: 1.6rem;
	}
	.order__limited__inner .section__heading--small .section__heading__body {
		width: 100%;
		font-size: 1.4rem;
	}
}

/* カード */
.order__lists {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.order__lists.one-item {
	justify-content: center;
}
.order__item.limited__item__detail {
	width: 100%;
}
.order__item {
	display: flex;
	flex-direction: column;
	width: 47.273%;
	margin: 0 0 70px;
}
.order__icon {
	display: grid;
	margin: 0 0 10px;
}
.order__icon__inner {
	display: flex;
	flex-wrap: wrap;
	align-self: end;
}
.order__icon__tag {
	display: inline-block;
	text-align: center;
	background: #FFF;
	color: var(--color-base);
	border: 2px solid var(--color-base);
	margin: 0 5px 5px 0;
	padding: 3px 10px;
	line-height: 1;
}
.order__icon__tag:last-of-type {
	margin: 0 0 5px 0;
}
.order__icon__tag span {
	display: flex;
	font-size: 1.4rem;
}
.order__note {
	font-weight: bold;
	font-size: 1.5rem;
	margin-bottom: 1rem;
}
.order__item__inner {
	display: flex;
}
.order__item--left {
	width: 35.385%;
	margin: 0 3.846% 0 0;
}
.order__item--left .products__image--small {
	width: 100%;
	background: #FFF;
	margin: 0 0 15px;
}
.order__item--left .products__image--small img {
	height: 100%;
	object-fit: contain;
}
.order__item--right {
	width: 60.769%;
	flex: 1;
}
.order__item--right ul li {
	width: 100%;
	padding: 5px 0;
	border-bottom: 1px solid var(--color-lightgray);
}
.order__item--right ul li .text--bold {
	font-size: 1.7rem;
}
.order__item--right ul li:last-of-type {
	padding: 10px 0;
}
.order__item--right ul li.heading--large {
	margin: 0;
	text-align: left;
}
.order__item--right .text--price {
	color: var(--color-base);
}
.order__item__quantity__number {
	width: 64px;
	height: 33px;
	background: #FFF;
	margin: 0 10px;
	padding: 0 10px;
	position: relative;
	border: 1px solid var(--color-lightgray);
}
.order__item__quantity__number select {
	width: 100%;
	height: 100%;
}
.order__item__quantity__number.icon--arrow::after {
	background: var(--color-darkgray);
	width: 0.7em;
	height: 0.7em;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) rotate(90deg);
	pointer-events: none;
}
.order__item__quantity__number.icon--arrow::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 3rem;
    height: 100%;
    z-index: 0;
	pointer-events: none;
    background: #FFF;
}
.order__item__quantity {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	line-height: 1.4;
}
.order__item__quantity p {
	white-space: nowrap
}
.order__item__quantity p:last-of-type {
	margin-left: auto;
}
.order__privacy {
	text-align: center;
	margin: 0 0 40px;
}
.order__privacy p:first-of-type {
	display: flex;
	justify-content: center;
	margin: 0 0 10px;
}
.order__privacy p:first-of-type span {
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: bold;
}
.order__privacy p:nth-of-type(2) {
	margin: 0 0 20px;
}
.order__privacy p:nth-of-type(2) a {
	display: inline-block;
	color: var(--color-base);
	text-decoration: underline;
}
.order__privacy p:nth-of-type(2) a:hover {
	text-decoration: none;
}
.order__confirm {
	text-align: center;
	margin: 0 0 70px;
}
.order__confirm p:first-of-type {
	margin: 0 0 10px;
}
.order__confirm p:nth-of-type(2) {
	width: 36.905%;
	height: 55px;
	margin: 0 auto 20px;
	border: 1px solid var(--color-base);
	border-radius: var(--corner-circle);
}
.order__confirm p:nth-of-type(2) .text--price {
	color: var(--color-base);
	font-size: 3.5rem;
	line-height: 50px;
}
.order__confirm.color--black p:nth-of-type(2) {
	border: 1px solid #000;
}
.order__confirm.color--black p:nth-of-type(2) .text--price {
	color: #000;
}
.order__telephone {
	width: 100%;
	background: #FDF3F2;
	margin: 0 0 70px;
	padding: 70px 0;
}
.order__telephone .order__contact {
	margin: 0;
}
.order__telephone__heading--medium {
	font-size: 2.2rem;
	margin: 0 0 20px;
}
.order__telephone__heading--medium img {
	width: 33.39px;
	margin: 0 10px 0 0;
}
.order__shopping-guide dt {
	font-size: 2.0rem;
	font-weight: bold;
	margin: 0 0 10px;
}
.order__shopping-guide dd {
	margin: 0 0 40px;
}
.order__shopping-guide dd p {
	display: inline-block;
	width: 100%;
}
.order__shopping-guide dd p.text--circle:first-of-type::before {
	color: var(--color-base);
}
.order__shopping-guide dd p:nth-of-type(3) {
	margin: 0 0 10px;
}
.order__guide {
	margin: 0 0 100px;
}
.order__step {
	margin: 0 0 100px;
}
.order__step__lists {
	width: 100%;
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: 28.571% 7.1435% 28.571% 7.1435% 28.571%;
}
.order__step__image01 {
	grid-area: 1 / 1 / 2 / 2;
	border: 1px solid var(--color-lightgray);
}
.order__step__image01 + p {
	grid-area: 2 / 1 / 3 / 2;
	margin: 10px 0 40px;
	text-align: center;
}
.order__step__image02 {
	grid-area: 1 / 3 / 2 / 4;
	border: 1px solid var(--color-lightgray);
}
.order__step__image02 + p {
	grid-area: 2 / 3 / 3 / 4;
	margin: 10px 0 40px;
	text-align: center;
}
.order__step__image03 {
	grid-area: 1 / 5 / 2 / 6;
	border: 1px solid var(--color-lightgray);
}
.order__step__image03 + p {
	grid-area: 2 / 5 / 3 / 6;
	margin: 10px 0 40px;
	text-align: center;
}
.order__step__image04 {
	grid-area: 3 / 1 / 4 / 2;
	border: 1px solid var(--color-lightgray);
}
.order__step__image04 + p {
	grid-area: 4 / 1 / 5 / 2;
	margin: 10px 0 0;
	text-align: center;
}
.order__step__image05 {
	grid-area: 3 / 3 / 4 / 4;
	border: 1px solid var(--color-lightgray);
}
.order__step__image05 + p {
	grid-area: 4 / 3 / 5 / 4;
	margin: 10px 0 0;
	text-align: center;
}
.order__step__arrow01 {
	grid-area: 1 / 2 / 2 / 3;
}
.order__step__arrow02 {
	grid-area: 1 / 4 / 2 / 5;
}
.order__step__arrow03 {
	grid-area: 3 / 2 / 4 / 3;
}
.order__step__arrow01,
.order__step__arrow02,
.order__step__arrow03 {
	display: grid;
	justify-items: center;
	align-items: center;
}
.order__step__arrow01 svg,
.order__step__arrow02 svg,
.order__step__arrow03 svg {
	width: 10px;
	fill: var(--color-gray);
}
#order + .promotion {
	margin: 120px 0 0;
	padding: 50px 0 80px;
}
@media screen and (max-width: 1099px) {
	.order__item--right ul li.heading--large {
		font-size: 2rem;
	}
	.order__item__quantity {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.order__item__quantity p:first-of-type {
		width: 100%;
	}
	.order__item__quantity__number {
		width: 65px;
		height: 40px;
		margin: 0;
	}
}
@media screen and (max-width: 767px) {
	.order__item {
		width: 100%;
		margin: 0 0 40px;
	}
	.order__icon__inner {
		width: 100%;
	}
	.order__icon__tag span {
		font-size: 1.2rem;
		letter-spacing: -0.05em;
	}
	.order__item--left {
		width: 35.821%;
		max-width: 120px;
		margin: 0 5.97% 0 0;
	}
	.order__item--right ul li .text--bold {
		font-size: 1.5rem;
	}
	.order__item--right ul li.heading--large {
		font-size: 1.6rem;
	}
	.order__item--right ul li:last-of-type > p {
		display: flex;
		justify-content: space-between;
	}
	.order__privacy input[type="checkbox"]:checked + label::after {
		width: 17px;
		height: 11px;
		top: 31%;
		left: 9.5px;
	}
	.order__privacy p:first-of-type {
		margin: 0 0 10px;
	}
	.order__privacy p:first-of-type span {
		font-size: 1.4rem;
	}
	.order__confirm {
		margin: 0 0 40px;
	}
	.order__confirm p:nth-of-type(2) {
		width: 74.627%;
	}
	.order__confirm p:nth-of-type(2) .text--price {
		font-size: 3.1rem;
	}
	.order__confirm__outer .order__confirm:nth-of-type(3) p:first-of-type {
		margin: 0;
	}
	.order__telephone {
		width: 100%;
		background: #FDF3F2;
		margin: 0 0 40px;
		padding: 40px 0;
	}
	.order__telephone .order__contact {
		margin: 0;
	}
	.order__telephone__heading--medium {
		font-size: 2.1rem;
	}
	.order__telephone__heading--medium img {
		width: 28px;
	}
	.order__shopping-guide dt {
		font-size: 1.6rem;
	}
	.order__shopping-guide dd p:nth-of-type(3) {
		margin: 0 0 15px;
	}
	.order__guide {
		margin: 0 0 60px;
	}
	.order__step {
		margin: 0 0 60px;
	}
	.order__step__lists {
		grid-template-columns: 45.97% 8.06% 45.97%;
	}
	.order__step__image01 {
		grid-area: 1 / 1 / 2 / 2;
	}
	.order__step__image01 + p {
		grid-area: 2 / 1 / 3 / 2;
		margin: 10px 0 25px;
		text-align: left;
	}
	.order__step__image02 {
		grid-area: 1 / 3 / 2 / 4;
	}
	.order__step__image02 + p {
		grid-area: 2 / 3 / 3 / 4;
		margin: 10px 0 25px;
		text-align: left;
	}
	.order__step__image03 {
		grid-area: 3 / 1 / 4 / 2;
	}
	.order__step__image03 + p {
		grid-area: 4 / 1 / 5 / 2;
		margin: 10px 0 25px;
		text-align: left;
	}
	.order__step__image04 {
		grid-area: 3 / 3 / 4 / 4;
	}
	.order__step__image04 + p {
		grid-area: 4 / 3 / 5 / 4;
		margin: 10px 0 25px;
		text-align: left;
	}
	.order__step__image05 {
		grid-area: 5 / 1 / 6 / 2;
	}
	.order__step__image05 + p {
		grid-area: 6 / 1 / 7 / 2;
		margin: 10px 0 0;
		text-align: left;
	}
	.order__step__arrow01 {
		grid-area: 1 / 2 / 2 / 3;
	}
	.order__step__arrow02 {
		grid-area: 3 / 2 / 4 / 3;
	}
	.order__step__arrow03 {
		display: none;
	}
	#order + .promotion {
		margin: 60px 0 0;
		padding: 40px 0;
	}
	.order__note {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 320px) {
	.order__item__quantity__number {
		width: 50px;
	}
}
.order__content {
	width: 100%;
	max-width: 840px;
	margin: 0 auto;
}
.order__content table {
	table-layout: fixed;
	width: 100%;
	margin: 0 0 70px;
}
.order__content tr th:first-of-type {
	width: 54.762%;
}
.order__content tr th:nth-of-type(2) {
	width: 16.667%;
}
.order__content tr th:nth-of-type(3) {
	width: 11.904%;
}
.order__content tr th:nth-of-type(4) {
	width: 16.667%;
}
.order__content tr td:nth-of-type(2) {
	text-align: center;
	padding: 20px;
}
.order__content tr td:nth-of-type(3) {
	text-align: center;
	padding: 20px;
}
.order__content tr td:nth-of-type(4) {
	text-align: right;
	padding: 20px;
}
.order__content tbody {
	border-top: 1px solid var(--color-lightgray);
	border-left: 1px solid var(--color-lightgray);
}
.order__content th {
	border-right: 1px solid var(--color-lightgray);
	height: 50px;
	background: var(--bg-gray);
}
.order__content td {
	border-right: 1px solid var(--color-lightgray);
	border-bottom: 1px solid var(--color-lightgray);
}
.order__content__item > p {
	padding: 10px 20px 0;
}
.order__content__item > span {
	display: flex;
	align-items: center;
}
.order__content__item > span:first-of-type {
	padding: 10px 20px;
}
.order__content__item > span:not(:first-of-type) {
	padding: 0 20px 10px;
}
.order__content__item > span .products__image {
	width: 82px;
	height: 82px;
	margin: 0 15px 0 0;
}
.order__content__item > span p {
	display: inline-block;
	font-size: 1.8rem;
	flex: 1;
	margin: 0;
}
.order__content__item .square-box {
	border-radius: 0;
}
.order__content__item .products__image--small img {
	height: 100%;
	object-fit: contain;
}
.order__confirm__outer {
	display: flex;
	justify-content: space-between;
	width: 87.273%;
	margin: 0 auto 30px;
}
.order__confirm__outer .order__confirm {
	width: 32.292%;
	margin: 0;
}
.order__confirm__outer .order__confirm p:nth-of-type(2) {
	width: 100%;
	margin: 0;
}
.order__confirm__outer + p + p {
	margin: 0 0 70px;
}
.order__warning__outer {
	padding: 25px 4.762%;
	background: var(--bg-gray);
	border-radius: var(--corner-largeround);
	margin: 0 0 70px;
}
.order__warning__outer .order__shopping-guide dd {
	margin: 0 0 30px;
}
.order__warning__outer .order__shopping-guide dd:nth-of-type(2) {
	margin: 0;
}
.order__warning__outer.order__complete {
	margin: 70px 0;
}
.order__warning__outer.order__complete + .button--more {
	margin: 0 0 100px;
}
.order__button__area {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin: 0 0 50px;
}
.order__button__area button:first-of-type {
	margin: 0 0 30px;
}
@media screen and (max-width: 767px) {
	.order__content {
		max-width: inherit;
	}
	.order__content table {
		margin: 0 0 40px;
	}
	.order__content tr th:first-of-type {
		width: 40.896%;
	}
	.order__content tr th:nth-of-type(2) {
		width: 22.687%;
	}
	.order__content tr th:nth-of-type(3) {
		width: 13.73%;
	}
	.order__content tr th:nth-of-type(4) {
		width: 22.687%;
	}
	.order__content tr td:nth-of-type(2) {
		padding: 10px;
	}
	.order__content tr td:nth-of-type(3) {
		padding: 10px;
	}
	.order__content tr td:nth-of-type(4) {
		padding: 10px;
	}
	.order__content th {
		height: 50px;
	}
	.order__content__item > span {
		padding: 10px;
	}
	.order__content__item > span .products__image {
		display: none;
	}
	.order__content__item > span p {
		font-size: 1.4rem;
	}
	.order__confirm__outer {
		flex-direction: column;
		width: 84.776%;
		margin: 0 auto 30px;
	}
	.order__confirm__outer .order__confirm {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		width: 100%;
		margin: 0;
	}
	.order__confirm__outer .order__confirm:first-of-type p:nth-of-type(2) {
		width: 66.667%;
		height: 40px;
		margin: 0 0 10px 10px;
		padding: 0 20px 0 0;
		text-align: right;
	}
	.order__confirm__outer .order__confirm:nth-of-type(2) p:nth-of-type(2) {
		width: 66.667%;
		height: 40px;
		margin: 0 0 10px 10px;
		padding: 0 20px 0 0;
		text-align: right;
	}
	.order__confirm__outer .order__confirm:nth-of-type(3) p:nth-of-type(2) {
		width: 66.667%;
		height: 55px;
		margin: 0 0 0 10px;
		padding: 0 20px 0 0;
		text-align: right;
	}
	.order__confirm__outer .order__confirm:first-of-type p:nth-of-type(2) .text--price {
		font-size: 2.1rem;
		line-height: 35px;
	}
	.order__confirm__outer .order__confirm:nth-of-type(2) p:nth-of-type(2) .text--price {
		font-size: 2.1rem;
		line-height: 35px;
	}
	.order__confirm__outer .order__confirm:nth-of-type(3) p:nth-of-type(2) .text--price {
		font-size: 3.1rem;
		line-height: 50px;
	}
	.order__confirm__outer + p + p {
		margin: 0 0 60px;
	}
	.order__warning__outer {
		padding: 25px 5.97% 15px;
		margin: 0 0 40px;
	}
	.order__warning__outer .order__shopping-guide dd {
		margin: 0 0 30px;
	}
	.order__warning__outer .order__shopping-guide dd:nth-of-type(2) {
		margin: 0;
	}
	.order__warning__outer.order__complete {
		margin: 40px 0;
	}
	.order__warning__outer.order__complete + .button--more {
		margin: 0 0 60px;
	}
	.order__button__area {
		margin: 0 0 40px;
	}
	.order__button__area button:first-of-type {
		margin: 0 0 30px;
	}
}
@media screen and (max-width: 320px) {
	.order__confirm__outer {
		width: 100%;
	}
}

.order__item.order__item--banner {
	width: 100%;
}
.order__item.order__item--banner a:hover {
	opacity: 0.75;
}

/* ----------------------------------------------------------------------------------------------------
*  PRODUCTS
* --------------------------------------------------------------------------------------------------*/

/* インデックス */
.products__head-area .heading--tiny {
	color: var(--color-products);
}
.main-area .products__category__lists {
	grid-template-columns: repeat(auto-fill,minmax(260px,1fr));
	gap: 40px 20px;
	padding: 0 0 40px;
}
@media screen and (max-width: 1099px) {
	.main-area .products__category__lists {
		grid-template-columns: repeat(auto-fill,minmax(196px,1fr));
	}
}
@media screen and (max-width: 767px) {
	.main-area .products__category__lists {
		grid-template-columns: repeat(auto-fill,minmax(136px,1fr));
		gap: 40px 13px;
		padding: 0 0 20px;
	}
}

/* 商品情報詳細 */
.products__gridbox {
	width: 100%;
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: 1fr 1fr;
	gap: 0 4.546%;
}
.products__heading__outer {
	grid-area: 1 / 1 / 2 / 3;
	display: flex;
	align-items: center;
	flex-direction: column;
	width: 100%;
	margin: 0 auto;
}
.products__heading__outer .heading--small {
	color: var(--color-products);
}
.products__heading__outer .heading--huge {
	width: 70%;
	margin: 0;
}
.products__image__outer {
	grid-area: 2 / 1 / 4 / 2;
	margin: 50px 0 40px;
}
.products__image {
	border: 1px solid var(--color-lightgray);
	background: #FFF;
}
.products__image img {
	height: 88%;
	margin: 6% 0;
	object-fit: contain;
}
.products__image + p {
	display: table;
	width: 100%;
	margin: 10px auto 0;
}
.products__image + p a {
	float: right;
}
.products__image + p a.icon--blank::after {
	background: var(--color-base);
	width: 0.8em;
	height: 0.8em;
	margin: 0 0 0 5px;
}
.products__description {
	margin: 50px 0 40px;
}
.products__data {
	margin: 0 0 40px;
}
.products__data .heading--medium {
	text-align: left;
}
.products__data__inner {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: repeat(auto-fill,minmax(100%,1fr));
	border-top: 2px solid var(--color-lightgray);
}
.products__data__inner dl {
	display: flex;
	width: 100%;
	border-bottom: 1px solid var(--color-lightgray);
}
.products__data__inner dl dt,
.products__data__inner dl dd {
	display: flex;
	align-items: baseline;
	padding: 10px 20px;
}
.products__data__inner dl dt {
	width: 43.81%;
	background: var(--bg-gray);
}
.products__data__inner dl dd {
	width: 56.19%;
	background: #FFF;
}
.products__allergy {
	grid-area: 4 / 1 / 5 / 2;
	margin: 0 0 70px;
}
.products__allergy > p + p {
	margin: 0 0 10px;
}
.products__allergy ul {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: repeat(auto-fill,minmax(104px,1fr));
	border-top: 1px solid var(--color-lightgray);
	border-left: 1px solid var(--color-lightgray);
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.4;
}
.products__allergy ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	border-right: 1px solid var(--color-lightgray);
	border-bottom: 1px solid var(--color-lightgray);
	padding: 5px 0;
	background: #FFF;
}
.products__allergy--alert {
	background: var(--color-products) !important;
}
.products__component {
	grid-area: 4 / 2 / 5 / 3;
	margin: 0 0 70px;
}
.products__component p:first-of-type {
	margin: 27px 0 10px;
}
.products__component__inner {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: repeat(auto-fill,minmax(130px,1fr));
	border-top: 1px solid var(--color-lightgray);
	border-left: 1px solid var(--color-lightgray);
	margin: 0 0 10px;
}
.products__component__inner dl {
	display: flex;
	flex-direction: column;
	width: 100%;
	text-align: center;
}
.products__component__inner dl dt,
.products__component__inner dl dd {
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: 1px solid var(--color-lightgray);
	border-bottom: 1px solid var(--color-lightgray);
	word-break: break-all;
}
.products__component__inner dl dt {
	padding: 5px 20px;
	font-size: 1.4rem;
	line-height: 1.4;
	background: var(--bg-gray);
}
.products__component__inner dl dd {
	height: 100%;
	padding: 10px 20px;
	background: #FFF;
}
.products__button__outer {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 89.091%;
	margin: 0 auto 70px;
}
.products__button__outer .button--more {
	margin: 0 4% 0 0;
}
.products__button__outer .button--more:last-of-type {
	margin: 0;
}
.products__button__outer .button--special a {
	background: #FFF;
	color: #323232;
	border: 2px solid var(--color-base);
}
.products__button__outer .button--special a.icon--blank::after {
	background: var(--color-base);
}
.products__button__outer .button--special a:hover {
	background: var(--color-base);
	color: #FFF;
}
.products__button__outer .button--special a:hover.icon--blank::after {
	background: #FFF;
}
.products__button__outer .button--more a.icon--cart::before {
	background: #FFF;
	width: 1.2em;
	height: 1.2em;
	margin: 0 10px 0 0;
}
.products__button__outer .button--more a:hover.icon--cart::before {
	background: var(--color-base);
}
.similar-products {
	background: #FFFCF2;
}
.home-products {
	background: var(--color-products);
}
.wholesale-products {
	background: var(--bg-gray);
}
.home-products .products__list {
	border-left: 1px solid #F8DD82;
}
.wholesale-products .products__list {
	border-left: 1px solid var(--color-lightgray);
}
.home-products .products__list svg {
	fill: #FFF;
}
.wholesale-products .products__list svg {
	fill: var(--color-darkgray);
}
@media screen and (max-width: 1099px) {
	.products__heading__outer .heading--huge {
		width: 55%;
	}
	.products__allergy ul {
		grid-template-columns: repeat(auto-fill,minmax(104px,1fr));
	}
	.products__component__inner {
		grid-template-columns: repeat(auto-fill,minmax(115px,1fr));
	}
	.products__button__outer {
		justify-content: center;
		flex-wrap: wrap;
		width: 89.091%;
	}
	.products__button__outer .button--more:first-of-type {
		margin: 0 4.82% 30px 0;
	}
	.products__button__outer .button--more:nth-of-type(2) {
		margin: 0 0 30px;
	}
}
@media screen and (max-width: 767px) {
	.products__gridbox {
		display: flex;
		flex-direction: column;
		gap: 0 0;
	}
	.products__heading__outer .heading--huge {
		width: 100%;
	}
	.products__heading__outer {
		order: 1;
	}
	#products .share {
		order: 7;
		margin: 0 0 60px;
	}
	.products__image__outer {
		order: 2;
		width: 100%;
		max-width: 375px;
		margin: 30px auto 30px;
	}
	.products__description {
		order: 3;
		margin: 0 0 50px;
	}
	.products__data {
		order: 4;
		margin: 0 0 50px;
	}
	.products__data__inner {
		border-top: 3px solid var(--color-lightgray);
	}
	.products__data__inner dl {
		flex-direction: column;
	}
	.products__data__inner dl dt {
		width: 100%;
		padding: 10px 4.478%;
	}
	.products__data__inner dl dd {
		width: 100%;
		padding: 10px 4.478% 25px;
	}
	.products__allergy {
		order: 5;
		margin: 0 0 50px;
	}
	.products__allergy ul {
		grid-template-columns: repeat(3,minmax(92px,1fr));
		font-size: 1.2rem;
		line-height: 1.2;
	}
	.products__allergy ul li {
		padding: 7px 0;
	}
	.products__component {
		order: 6;
		margin: 0 0 60px;
	}
	.products__component p:first-of-type {
		margin: 0 0 10px;
	}
	.products__component__inner {
		grid-template-columns: repeat(3,minmax(92px,1fr));
	}
	.products__component__inner dl dt {
		padding: 7px 0;
		font-size: 1.2rem;
		line-height: 1.2;
	}
	.products__component__inner dl dd {
		padding: 10px 13.514%;
	}
	.products__button__outer {
		flex-direction: column;
		width: 100%;
		margin: 0 auto 40px;
	}
	.products__button__outer .button--more {
		width: 100%;
	}
	.products__button__outer .button--more:first-of-type,
	.products__button__outer .button--more:nth-of-type(2),
	.products__button__outer .button--more:nth-of-type(3) {
		margin: 0 0 20px 0;
	}
	.similar-products {
		background: #FFFCF2;
		margin: 0 0 20px;
	}
	.home-products,
	.wholesale-products {
		display: none;
	}
}
@media screen and (max-width: 320px) {
	.products__allergy ul li {
		letter-spacing: -0.1em;
	}
}

/* 検索窓＆ポップアップ */
.search {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	margin: 0 0 50px;
}
.products__bottom {
	display: flex;
	align-items: center;
}
.recipe__popup {
	width: 400px;
	margin: 0 40px 0 0;
}
.home__popup,
.wholesale__popup {
	width: 316px;
	margin: 0 40px 0 0;
}
.search__popup > label {
	position: relative;
}
.search__popup__button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 58px;
	border-radius: var(--corner-largeround);
	cursor: pointer;
	transition: all 0.2s;
}
.recipe__popup .search__popup__button {
	color: #FFF;
	font-weight: bold;
	background: var(--color-recipe);
	border: 2px solid var(--color-recipe);
}
.home__popup .search__popup__button {
	color: #FFF;
	font-weight: bold;
	background: var(--color-products);
	border: 2px solid var(--color-products);
}
.wholesale__popup .search__popup__button {
	color: #323232;
	font-weight: bold;
	background: #EBEBEB;
	border: 2px solid #EBEBEB;
}
.search__popup__button.icon--plus-minus::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	-webkit-mask: url("../images/icon_plus.svg") no-repeat center center / cover;
	        mask: url("../images/icon_plus.svg") no-repeat center center / cover;
}
.recipe__popup .search__popup__button.icon--plus-minus::after {
	background: #FFF;
}
.home__popup .search__popup__button.icon--plus-minus::after {
	background: #FFF;
}
.wholesale__popup .search__popup__button.icon--plus-minus::after {
	background: var(--color-darkgray);
}
.recipe__popup .search__popup__button.open {
	color: var(--color-recipe);
	background: #FFF;
}
.home__popup .search__popup__button.open,
.wholesale__popup .search__popup__button.open {
	color: #323232;
	background: #FFF;
}
.search__popup__button.open.icon--plus-minus::after {
	-webkit-mask: url("../images/icon_minus.svg") no-repeat center center / cover;
	        mask: url("../images/icon_minus.svg") no-repeat center center / cover;
}
.recipe__popup .search__popup__button.open.icon--plus-minus::after {
	background: var(--color-recipe);
}
.home__popup .search__popup__button.open.icon--plus-minus::after {
	background: var(--color-products);
}
.wholesale__popup .search__popup__button.open.icon--plus-minus::after {
	background: var(--color-darkgray);
}
.search__popup__inner input {
	display: none;
}
.search__popup__inner input:checked ~ .search__popup__overlay {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.2s;
}
.search__popup__overlay {
	display: flex;
	justify-content: center;
	overflow: initial;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 999;
	width: 100%;
	height: 100vh;
	opacity: 0;
	transition: opacity 0.2s, transform 0s 0.2s;
	transform: scale(0);
}
.search__popup__trigger {
	position: absolute;
	width: 100%;
	height: 100%;
}
.search__popup__content {
	align-self: baseline;
	width: 970px;
	transition: all 0.2s;
	border-radius: var(--corner-largeround);
	box-shadow: var(--box-shadow);
	position: relative;
}
/*吹き出し位置調整*/
#recipe-top .search__popup__content {
	top: 545px;
}
#products-top .search__popup__content {
	top: 460px;
}
#recipe .search__popup__content,
#products .search__popup__content {
	top: 330px;
}
.recipe__popup .search__popup__content {
	background: var(--color-recipe);
	padding: 40px 40px 80px;
}
.home__popup .search__popup__content {
	background: var(--color-products);
	padding: 30px 0 70px 50px;
}
.wholesale__popup .search__popup__content {
	background: #EBEBEB;
	padding: 30px 0 70px 50px;
}
.search__popup__content::before {
	content: '';
	position: absolute;
	top: -30px;
	margin: 0 0 0 -15px;
	border: 15px solid transparent;
}
.recipe__popup .search__popup__content::before {
	left: 27.32%;
	border-bottom: 15px solid var(--color-recipe);
}
.home__popup .search__popup__content::before {
	border-bottom: 15px solid var(--color-products);
	left: 13.299%;
}
.wholesale__popup .search__popup__content::before {
	border-bottom: 15px solid #EBEBEB;
	left: 50%;
}
.search__popup__button--close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 40px;
	background: var(--color-gray);
	position: absolute;
	bottom: 0;
	left: 0;
	border-radius: 0 0 5px 5px;
	transition: all 0.2s;
}
.search__popup__button--close .icon--close::before {
	width: 0.8em;
	height: 0.8em;
	background: #646464;
	margin: 0 5px 0 0;
}
.search__popup__button--close span {
	display: block;
	font-size: 1.4rem;
	color: #646464;
}
.search__popup__button--close:hover {
	background: #646464;
}
.search__popup__button--close:hover .icon--close::before {
	background: #FFF;
}
.search__popup__button--close:hover span {
	color: #FFF;
}
.recipe__bottom + form {
	width: 400px;
}
.recipe__bottom + form .recipe__search__form input[type="submit"] {
	background: var(--color-recipe);
}
.products__bottom + form {
	width: 316px;
}
.products__bottom + form .recipe__search__form input[type="submit"] {
	background: var(--color-products);
}
.search form .recipe__search__form {
	width: 100%;
}

/*内容*/
.recipe__popup .search__popup__category__lists {
	display: grid;
	grid-template-rows: auto;
	grid-template-columns: repeat(4,minmax(192px,1fr));
	gap: 0 40px;
}
.recipe__popup .recipe__category__item {
	width: 100%;
	margin: 0;
}
.recipe__popup .recipe__category__item a {
	transition: all 0.2s;
	width: fit-content;
}
.recipe__popup .recipe__category__item a:hover .recipe__icon {
	background: none;
	border: none;
}
.recipe__popup .recipe__icon {
	width: 45px;
	background: none;
	border-radius: 0;
}
.recipe__popup .recipe__category__products a svg {
	width: 93%;
}
.recipe__popup .recipe__category__menu a svg {
	width: 76.61%;
}
.recipe__popup .recipe__category__scene a svg {
	width: 111.34%;
}
.recipe__popup .recipe__category__ingredients a svg {
	width: 98%;
}
.recipe__popup .recipe__category__products a svg,
.recipe__popup .recipe__category__menu a svg,
.recipe__popup .recipe__category__scene a svg,
.recipe__popup .recipe__category__ingredients a svg {
	fill: #FFF;
	height: 100%;
}
.recipe__popup .recipe__category__products a:hover svg,
.recipe__popup .recipe__category__menu a:hover svg,
.recipe__popup .recipe__category__scene a:hover svg,
.recipe__popup .recipe__category__ingredients a:hover svg {
	fill: #323232;
}
.recipe__popup .recipe__category__item a:hover p {
	color: #323232;
}

.home__popup .products__lists__outer,
.wholesale__popup .products__lists__outer {
	width: 720px;
	position: relative;
}
.home__popup .products__lists__outer {
	border-right: 1px solid #F8DD82;
}
.wholesale__popup .products__lists__outer {
	border-right: 1px solid var(--color-lightgray);
}
.home__popup .products__item__lists,
.wholesale__popup .products__item__lists {
	grid-template-columns: repeat(auto-fill,minmax(140px,1fr));
	gap: 20px 40px;
}
.home__popup .products__item__lists li:last-of-type,
.wholesale__popup .products__item__lists li:last-of-type {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -200px;
}
.home__popup .products__item__item .products__image--small,
.wholesale__popup .products__item__item .products__image--small {
	width: 35%;
}
.home__popup .products__item__item .square-box,
.wholesale__popup .products__item__item .square-box {
	border-radius: var(--corner-smallround);
}
.home__popup .products__list,
.wholesale__popup .products__list {
	width: 200px;
	border: none;
}
.home__popup .products__list__inner a,
.wholesale__popup .products__list__inner a {
	width: fit-content;
	margin: 0 auto;
}
.home__popup .products__list .products__image--small,
.wholesale__popup .products__list .products__image--small {
	width: 36px;
	margin: 0 auto 5px;
	background: none;
}
.home__popup .products__list .products__image--small.square-box,
.wholesale__popup .products__list .products__image--small.square-box {
	border-radius: 0;
}
.home__popup .products__list svg,
.wholesale__popup .products__list svg {
	width: 36px;
	margin: 0;
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.2s;
}
.home__popup .products__list svg {
	fill: #FFF;
}
.wholesale__popup .products__list svg {
	fill: var(--color-darkgray);
}

@media screen and (max-width: 1099px) {
	.recipe__bottom {
		width: 51.818%;
	}
	.products__bottom {
		width: 69.091%;
	}
	.recipe__popup {
		width: 92.982%;
		margin: 0 7.018% 0 0;
	}
	.home__popup,
	.wholesale__popup {
		width: 44.736%;
		margin: 0 5.263% 0 0;
	}
	.search__popup__content {
		width: 100%;
		margin: 0 20px;
	}
	#recipe-top .search__popup__content {
		top: 380px;
	}
	#products-top .search__popup__content {
		top: 315px;
	}
	#recipe .search__popup__content,
	#products .search__popup__content {
		top: 185px;
	}
	.recipe__popup .search__popup__content::before {
		left: 24.1%;
	}
	.home__popup .search__popup__content::before {
		left: 15.447%;
	}
	.recipe__bottom + form {
		width: 48.182%;
	}
	.products__bottom + form {
		width: 30.909%
	}

	/*内容*/
	.recipe__popup .search__popup__category__lists {
		grid-template-columns: repeat(4,minmax(147px,1fr));
		gap: 0 20px;
	}
	.home__popup .search__popup__content,
	.wholesale__popup .search__popup__content {
		padding: 30px 5.155% 70px;
	}
	.home__popup .products__lists__outer,
	.wholesale__popup .products__lists__outer {
		width: 100%;
		position: static;
		border: none;
	}
	.home__popup .products__item__lists,
	.wholesale__popup .products__item__lists {
		grid-template-columns: repeat(auto-fill,minmax(125px,1fr));
		gap: 20px 40px;
		padding: 0;
	}
	.home__popup .products__item__lists li:last-of-type,
	.wholesale__popup .products__item__lists li:last-of-type {
		position: static;
		top: 0;
		transform: none;
		right: 0;
	}
	.home__popup .products__list,
	.wholesale__popup .products__list {
		width: auto;
	}
	.home__popup .products__list a,
	.wholesale__popup .products__list a {
		display: flex;
		align-items: center;
	}
	.home__popup .products__list__inner a,
	.wholesale__popup .products__list__inner a {
		width: inherit;
	}
	.home__popup .products__list .products__image--small,
	.wholesale__popup .products__list .products__image--small {
		width: 35%;
		margin: 0 10px 0 0;
	}
	.home__popup .products__list p,
	.wholesale__popup .products__list p {
		text-align: left;
	}
}

@media screen and (max-width: 767px) {
	.search {
		margin: 0 0 30px;
	}
	.search__bottom {
		display: flex;
		width: 100%;
		height: auto;
		position: fixed;
		z-index: 999;
		bottom: 0;
		left: 0;
	}
	.search__bottom .search__popup {
		width: 50%;
		margin: 0;
	}
	.search__bottom .search__popup__button {
		height: 55px;
	}
	.search__bottom .recipe__popup .search__popup__button {
		display: none;
	}
	.search__bottom .home__popup .search__popup__button,
	.search__bottom .wholesale__popup .search__popup__button {
		width: 100%;
		border-radius: 0;
	}
	.search__bottom .home__popup .search__popup__button.open {
		border-top: none;
		border-left: 2px solid var(--color-products);
		border-right: 2px solid var(--color-products);
		border-bottom: 2px solid var(--color-products);
	}
	.search__bottom .wholesale__popup .search__popup__button.open {
		border-top: none;
		border-left: 2px solid #EBEBEB;
		border-right: 2px solid #EBEBEB;
		border-bottom: 2px solid #EBEBEB;
	}
	.recipe__popup .search__popup__overlay {
		width: 100%;
		height: 0;
	}
	.search__bottom .search__popup__content {
		align-self: flex-end;
		width: 100%;
		margin: 0;
		border-radius: 0;
		box-shadow: none;
	}
	#recipe-top .search__bottom .search__popup__content {
		top: 0;
	}
	#products-top .search__bottom .search__popup__content {
		top: 0;
	}
	#recipe .search__bottom .search__popup__content,
	#products .search__bottom .search__popup__content {
		top: 0;
	}
	.search__bottom .recipe__popup .search__popup__content {
		padding: 0;
		top: 0 !important;
	}
	.search__bottom .home__popup .search__popup__content,
	.search__bottom .wholesale__popup .search__popup__content {
		padding: 0;
		top: -55px !important;
	}
	.search__bottom .recipe__popup .search__popup__content::before,
	.search__bottom .home__popup .search__popup__content::before,
	.search__bottom .wholesale__popup .search__popup__content::before {
		display: none;
	}
	.search__bottom .search__popup__button--close {
		display: none;
	}

	/*内容*/
	.search__bottom .recipe__popup .search__popup__content {
		padding: 5px 5.333%;
	}
	.search__bottom .recipe__popup .search__popup__category__lists {
		grid-template-columns: repeat(4,minmax(60px,1fr));
	}
	.search__bottom .recipe__popup .recipe__category__item:nth-of-type(2) p {
		letter-spacing: -0.05em;
	}
	.search__bottom .recipe__popup .recipe__icon {
		margin: 0 0 5px;
	}
	.search__bottom .home__popup .search__popup__content,
	.search__bottom .wholesale__popup .search__popup__content {
		padding: 30px 5.333%;
	}
	.search__bottom .home__popup .products__item__lists,
	.search__bottom .wholesale__popup .products__item__lists {
		grid-template-columns: repeat(auto-fill,minmax(56px,1fr));
		gap: 20px 20px;
	}
	.search__bottom .home__popup .products__list a,
	.search__bottom .wholesale__popup .products__list a {
		flex-direction: column;
	}
	.search__bottom .home__popup .products__item__item .products__image--small,
	.search__bottom .wholesale__popup .products__item__item .products__image--small {
		width: 100%;
	}
	.search__bottom .home__popup .products__list .products__image--small,
	.search__bottom .wholesale__popup .products__list .products__image--small {
		width: 100%;
		margin: 0 0 10px;
	}
	.search__bottom .home__popup .products__list p,
	.search__bottom .wholesale__popup .products__list p {
		text-align: center;
	}
	.search__bottom .home__popup .products__list svg,
	.search__bottom .wholesale__popup .products__list svg {
		width: 62.247%;
		max-height: 42.795px;
	}
	.search__bottom p {
		font-size: 1.2rem;
	}
	.recipe__bottom + form,
	.products__bottom + form {
		width: 100%;
		max-width: 450px;
		margin: 0 auto;
	}
}
@media screen and (max-width: 414px) {
	.recipe__popup .recipe__category__item a {
		width: 100%;
	}
	.search__bottom .recipe__popup .search__popup__category__lists {
		gap: 0 15px;
	}
	.search__bottom .recipe__popup .recipe__icon {
		width: 46.479%;
	}
}

/* ----------------------------------------------------------------------------------------------------
*  NEWSRELEASE
* --------------------------------------------------------------------------------------------------*/

.news__head-area {
	display: flex;
    justify-content: center;
    position: relative;
    margin: 0 0 70px;
}
.news__head-area .heading--huge {
	margin: 0;
}
.news__head-area .to-ir-news {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
.article-search {
	position: relative;
}
.article-search__inner {
	display: flex;
	align-items: center;
	position: absolute;
	top: -55px;
	right: 0;
}
.article-search__inner p {
	margin: 0 10px 0 0;
	color: #646464;
}
.article-search__select {
	width: 220px;
	height: 35px;
	background: #FFF;
	padding: 0 10px;
	position: relative;
	border: 1px solid var(--color-lightgray);
	border-radius: var(--corner-smallround);
}
.article-search__select select {
	width: 100%;
	height: 100%;
}
.article-search__select.icon--arrow::after {
	background: var(--color-darkgray);
	width: 0.7em;
	height: 0.7em;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) rotate(90deg);
	pointer-events: none;
}
#news .main-area + .main-area {
	padding: 70px 0 0;
}
.main-area .news__lists {
	margin: 0;
}
.main-area .news__item .news__item__inner {
	flex-wrap: nowrap;
}
.main-area .news__title {
	flex: 1;
	padding: 0 10px 0 20px;
}
.news-past__lists {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.news-past__item {
	width: 47.024%;
	padding: 15px 0;
	border-bottom: 1px solid var(--color-lightgray);
}
.news-past__item > a {
	justify-content: space-between;
}
.news-past__item .icon--arrow::after {
	background: var(--color-base);
}
@media screen and (max-width: 1099px) {
	.article-search {
		position: inherit;
	}
	.article-search__inner {
		justify-content: center;
		margin: -20px 0 40px;
		position: inherit;
	}
}
@media screen and (max-width: 767px) {
	.news__head-area {
		flex-direction: column;
		align-items: center;
		position: static;
		margin: 0 0 30px;
	}
	.news__head-area .heading--huge {
		margin: 0 0 20px;
	}
	.news__head-area .to-ir-news {
		position: static;
		transform: inherit;
	}
	.article-search__inner {
		margin: 0 0 30px;
	}
	.article-search__inner p {
		margin: 0 10px 0 0;
		color: #646464;
	}
	.article-search__select {
		width: 57.91%;
		max-width: 194px;
	}
	.article-search__select.icon--arrow::after {
		background: var(--color-darkgray);
		width: 0.7em;
		height: 0.7em;
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%) rotate(90deg);
		pointer-events: none;
	}
	#news .main-area + .main-area {
		padding: 30px 0 0;
	}
	.main-area .news__lists {
		margin: 0;
	}
	.main-area .news__item .news__item__inner {
		flex-wrap: wrap;
	}
	.main-area .news__title {
		flex: none;
		padding: 10px 2.985% 0 0;
	}
	.news-past__lists {
		flex-direction: column;
	}
	.news-past__item {
		width: 100%;
	}
}
@media screen and (max-width: 320px) {
	.article-search__inner p {
		margin: 0 5px 0 0;
	}
	.article-search__select {
		width: 60.91%;
	}
}

/* ----------------------------------------------------------------------------------------------------
*  SPECIAL
* --------------------------------------------------------------------------------------------------*/

.special__heading .heading--tiny {
	color: var(--color-promotion);
}
#special .heading--huge {
	margin: 0;
}
#special .heading--large {
	margin: 0 0 40px;
}
@media screen and (max-width: 767px) {
	#special .heading--large {
		margin: 0 0 30px;
	}
	#special .main-area + .main-area {
		padding: 120px 0 35px;
	}
}

/* ----------------------------------------------------------------------------------------------------
*  CONTACT
* --------------------------------------------------------------------------------------------------*/

#contact {
	margin-top: 4.5rem;
}
.contact__step {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 50px;
}
.contact__step__item {
	width: 13.81%;
	max-width: 116px;
	background: var(--bg-gray);
	border-radius: 50%;
	border: 1px solid var(--bg-gray);
}
.contact__step__text {
	font-size: 1.6rem;
	text-align: center;
	line-height: 1.4;
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.contact__step__arrow {
	display: grid;
	width: 1.786%;
	max-width: 15px;
	margin: 0 20px;
}
.contact__step__arrow svg {
	fill: var(--color-base);
}
.contact__step__item.contact__step--current {
	background: #FFF;
	border: 1px solid var(--color-base);
}
.contact__step__item.contact__step--current .contact__step__text {
	color: var(--color-base);
}
.contact--text {
	text-align: center;
}
.contact--text.contact__complete {
	margin: 0 0 50px;
}
.contact--text.contact__complete .button--more {
	margin: 0 0 30px;
}
.contact__error {
	width: 100%;
	margin: 50px 0 0;
	padding: 5px 0;
	border: 1px solid var(--color-base);
	background: #FFF;
}
.contact__form td .contact__form__error:first-of-type {
	margin: 10px 0 0;
}
.contact__form td .contact__form__error {
	font-size: 1.4rem;
	color: var(--color-base);
	line-height: 1.4;
}
#contact .contact__error + .contact__form {
	margin: 30px 0 !important;
}
#contact .contact__form {
	width: 100%;
	margin: 70px 0 30px;
}
#order .contact__error + .contact__form {
	margin: 30px 0 70px !important;
}
#order .contact__form {
	width: 100%;
	margin: 0 0 70px;
}
.contact__form .must::after,
.order__privacy .must::after {
	content: '必須';
	flex-shrink: 0;
	order: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--corner-smallround);
	background: var(--color-base);
	width: 45px;
	height: 21px;
	font-size: 1.4rem;
	line-height: 1;
	color: #FFF;
	margin: 1.5px 0 0 5px;
}
.contact__form .ok::before,
.order__privacy .ok::before {
	content: '';
	flex-shrink: 0;
	order: 2;
	display: inline-block;
	width: 25px;
	height: 25px;
	background: url("../images/icon_check.svg") no-repeat center center / contain;
	margin: -0.5px 0 0 5px;
}
.contact__form tr {
	border-bottom: 1px solid var(--color-lightgray);
	transition: all 0.2s;
}
.contact__form tr:first-of-type th {
	padding: 0 10px 30px 0;
}
.contact__form tr:first-of-type td {
	padding: 0 0 30px;
}
.contact__form tr th {
	width: 35.714%;
	line-height: 1.4;
	text-align: left;
	padding: 30px 10px 30px 0;
}
.contact__form tr th span:first-of-type {
	display: flex;
}
.contact__form tr th span:nth-of-type(2) {
	display: inline-block;
	color: #787878;
	font-size: 1.4rem;
	margin: 10px 0 0;
}
.contact__form tr td {
	width: 64.286%;
	min-width: 100%;
	padding: 30px 0;
}
.contact__form tr td input,
.contact__form tr td select {
	width: 100%;
	height: 60px;
	padding: 0 15px;
	border-radius: var(--corner-circle);
	border: 1px solid var(--color-gray);
}
.contact__form tr td textarea {
	width: 100%;
	height: 160px;
	padding: 15px;
	border-radius: var(--corner-largeround);
	border: 1px solid var(--color-gray);
}
.contact__form tr td.bisection > input,
.contact__form tr td.bisection > select,
.contact__form tr td.bisection > .icon--arrow {
	width: 48.148%;
}
.contact__form tr td.trisection > input,
.contact__form tr td.trisection > select,
.contact__form tr td.trisection > .icon--arrow {
	width: 30.864%;
}
.contact__form tr td.bisection > input + input {
	margin-left: calc(100% - (48.148% * 2));
}
.contact__form tr td.trisection > input + input {
	margin-left: calc((100% - (30.864% * 3)) / 2);
}
.contact__form tr td.bisection.--withHyphen > input {
	width: 47.222%;
}
.contact__form tr td.trisection.--withHyphen > input {
	width: 29.63%;
}
.contact__form tr td.bisection.--withHyphen > input + span {
	margin-left: calc((100% - ((47.222% * 2) + 0.5em)) / 2);
	margin-right: calc((100% - ((47.222% * 2) + 0.5em)) / 2);
}
.contact__form tr td.trisection.--withHyphen > input + span {
	margin-left: calc((100% - ((29.63% * 3) + (0.5em * 2))) / 4);
	margin-right: calc((100% - ((29.63% * 3) + (0.5em * 2))) / 4);
}
.contact__form tr td.bisection.--withHyphen span,
.contact__form tr td.trisection.--withHyphen span {
	display: inline-block;
	text-align: center;
	width: 0.5em;
}
.contact__form tr td > .icon--arrow {
	position: relative;
}
.contact__form tr td > .icon--arrow::after {
	width: 0.5em;
	height: 0.8em;
	background: var(--color-gray);
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%) rotate(90deg);
	transition: all 0.2s;
	-webkit-mask-size: cover;
	        mask-size: cover;
}
.contact__form input::placeholder,
.contact__form textarea::placeholder {
	color:#C8C8C8;
}
.contact__form.contact__form--confirm tr:first-of-type th {
	padding: 0 0 15px;
}
.contact__form.contact__form--confirm tr:first-of-type td {
	padding: 0 0 15px;
}
.contact__form.contact__form--confirm tr th {
	padding: 15px 0;
}
.contact__form.contact__form--confirm tr td {
	padding: 15px 0;
}
.contact__box {
	padding: 25px 4.762%;
	background: var(--bg-gray);
	border-radius: var(--corner-largeround);
	margin: 50px 0;
}
.contact__button__area {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 0 0 50px;
}
.contact__button__area button:first-of-type {
	margin: 0 0 30px;
}
.contact-pege-telephoneArea + .contact__button__area {
	align-items: inherit;
}

@media screen and (max-width: 1099px) {
	#contact {
		margin-top: 10rem;
	}
}
@media screen and (max-width: 767px) {
	#contact {
		margin-top: 8rem;
	}
	.contact__step {
		margin: 0 0 30px;
	}
	.contact__step__item {
		width: 26.866%;
		max-width: 90px;
	}
	.contact__step__text {
		font-size: 1.4rem;
	}
	.contact__step__arrow {
		width: 3.433%;
		max-width: 11.5px;
		margin: 0 3.134%;
	}
	.contact--text {
		text-align: left;
	}
	.contact--text.contact__complete {
		text-align: center;
		margin: 0 0 40px;
	}
	.contact--text.contact__complete + .button--more {
		margin: 0 0 60px;
	}
	.contact__error {
		margin: 30px 0 0;
	}
	.contact__form td .contact__form__error {
		width: 100%;
		font-size: 1.2rem;
	}
	#contact .contact__error + .contact__form {
		margin: 30px 0 !important;
	}
	#contact .contact__form {
		margin: 30px 0;
	}
	#order .contact__error + .contact__form {
		margin: 30px 0 40px !important;
	}
	#order .contact__form {
		margin: 30px 0 40px;
	}
	.contact__form .must::after,
	.order__privacy .must::after {
		width: 36px;
		height: 18px;
		font-size: 1.2rem;
		margin: 0 0 0 5px;
	}
	.contact__form .ok::before,
	.order__privacy .ok::before {
		width: 21px;
		height: 21px;
		margin: -1.5px 0 0 5px;
	}
	.contact__form tr:first-of-type th {
		padding: 0 0 15px;
	}
	.contact__form tr:first-of-type td {
		padding: 0;
	}
	.contact__form tr th {
		display: block;
		width: 100%;
		padding: 20px 0 15px 0;
	}
	.contact__form tr th span:nth-of-type(2) {
		font-size: 1.2rem;
		margin: 7px 0 0;
	}
	.contact__form tr td {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		width: 100%;
		margin: 0 0 20px;
		padding: 0;
	}
	.contact__form tr td input,
	.contact__form tr td select{
		height: 50px;
	}
	.contact__form tr td.bisection > input,
	.contact__form tr td.bisection > select,
	.contact__form tr td.bisection > .icon--arrow,
	.contact__form tr td.bisection.--withHyphen > input {
		width: 47.015%;
	}
	.contact__form tr td.trisection > input,
	.contact__form tr td.trisection > select,
	.contact__form tr td.trisection > .icon--arrow,
	.contact__form tr td.trisection.--withHyphen > input {
		width: 29.254%;
	}
	.contact__form tr td.bisection > input + input {
		margin-left: calc(100% - (47.015% * 2));
	}
	.contact__form tr td.trisection > input + input {
		margin-left: calc((100% - (29.254% * 3)) / 2);
	}
	.contact__form tr td.bisection.--withHyphen > input + span {
		margin-left: calc((100% - ((47.015% * 2) + 0.5em)) / 2);
		margin-right: calc((100% - ((47.015% * 2) + 0.5em)) / 2);
	}
	.contact__form tr td.trisection.--withHyphen > input + span {
		margin-left: calc((100% - ((29.254% * 3) + (0.5em * 2))) / 4);
		margin-right: calc((100% - ((29.254% * 3) + (0.5em * 2))) / 4);
	}
	.contact__form.contact__form--confirm tr:first-of-type th {
		padding: 0 0 10px;
	}
	.contact__form.contact__form--confirm tr:first-of-type td {
		padding: 0 0 20px;
	}
	.contact__form.contact__form--confirm tr th {
		padding: 20px 0 10px;
	}
	.contact__form.contact__form--confirm tr td {
		margin: 0;
		padding: 0 0 20px;
	}
	.contact__box {
		padding: 25px 5.97%;
		margin: 40px 0;
	}
	.contact__button__area {
		padding: 0 0 60px;
	}
}
@media screen and (max-width: 320px) {
	.contact__step__text {
		font-size: 1.2rem;
	}
}


.contact-pege-telephoneArea {
	margin: 2rem 0 4rem;
}
.contact-pege-tel-box {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.contact-pege-tel-box__title {
	font-size: 2.2rem;
	line-height: 1;
	margin-bottom: 1.2em;
}
.contact-pege-tel-box__tel {
	max-width: 33.8rem;
}
.contact-pege-tel-box__tel--a {
	display: block;
	width: 100%;
}
.contact-pege-tel-box__text {
	margin-top: 1.5em;
	text-align: center;
}
.contact-pege-tel-box__text .sponly {
	display: none;
}
@media (max-width: 767px) {
	.contact-pege-tel-box__title {
		font-size: 1.9rem;
	}
	.contact-pege-tel-box__tel {
		width: 78%;
	}
	.contact-pege-tel-box__text .sponly {
		display: block;
	}
}

/* 画像アップロード */
.upload-image-wrap {
	display: flex;
	flex-flow: column;
	width: 100%;
}
.upload-image {
	position: relative;
	width: min(100%, 30rem);
	height: max-content;
	aspect-ratio: 1 / 1;
}
.upload-image__image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-color: var(--bg-gray);
	border-radius: var(--corner-smallround);
}
.upload-image__image .icon--photo {
	display: block;
	width: min(10.667%, 3.5rem);
}
.upload-image__image .image__preview {
	display: none;
	height: 100%;
	object-fit: cover;
	border-radius: var(--corner-smallround);
}
.upload-image input[type="button"],
.upload-file input[type="file"] {
	display: none;
}
.upload-image input[type="button"] + label {
	display: none;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 1rem;
	right: 1rem;
	z-index: 1;
	width: 3.4rem;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background-color: #FFF;
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .16);
	cursor: pointer;
}
.upload-image input[type="button"] + label svg {
	width: 14px;
	fill: var(--color-ir);
	transform: rotate(45deg);
}
.upload-file {
	display: flex;
	align-items: center;
}
.upload-image + .upload-file {
	margin-top: 2rem;
}
.upload-file input[type="file"] + label {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 6rem;
	margin-right: 1.5rem;
	padding-left: 3.4rem;
	padding-right: 3.4rem;
	border-radius: var(--corner-circle);
	background-color: #EBEBEB;
}
.upload-file input[type="file"] + label > span {
	text-align: center;
	line-height: 1.4;
}
.upload-file input[type="file"] + label > span span {
	font-size: 1.4rem;
}
.upload-file__filename {
	line-height: 1.4;
}
.contact__form--confirm .upload-image__image .image__preview {
	display: block;
}
@media (max-width: 767px) {
	.upload-image {
		width: min(100%, 28.6rem);
	}
	.upload-image__image {
		border-radius: var(--corner-largeround);
	}
	.upload-image__image .image__preview {
		border-radius: var(--corner-largeround);
	}
	.upload-file {
		flex-flow: column-reverse;
		align-items: flex-start;
		gap: 1.5rem 0;
	}
	.upload-image + .upload-file {
		margin-top: 1.5rem;
	}
	.upload-file input[type="file"] + label {
		min-height: 5rem;
	}
	.upload-file input[type="file"] + label > span span {
		font-size: 1.2rem;
	}
}


/* ----------------------------------------------------------------------------------------------------
*  footprints
* --------------------------------------------------------------------------------------------------*/
.fadein-footprints {
	position: relative;
	width: 100%;
	height: 0;
	pointer-events: none;
}
.fadein-footprints__inner {
	position: absolute;
	top: -244px;
	left: clamp(400px, 48%, calc(618px + (45px * 2)));
	right: 0;
	margin: auto;
	width: 618px;
	height: 430px;
}
.fadein-footprints__inner--point {
	position: relative;
	width: 100%;
	height: 100%;
}
.bg-fadein-footprints {
	width: 30px;
	height: 30px;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	transition: all 0.1s;
	opacity: 0;
}
.bg-fadein-footprints.show {
	opacity: 1;
}
.bg-fadein-footprints.nth-1 {
	background-image: url(../images/image_footprints_01.png);
	top: 0px;
	left: 588px;
}
.bg-fadein-footprints.nth-2 {
	background-image: url(../images/image_footprints_01.png);
	top: 55px;
	left: 577px;
}
.bg-fadein-footprints.nth-3 {
	background-image: url(../images/image_footprints_02.png);
	top: 53px;
	left: 507px;
}
.bg-fadein-footprints.nth-4 {
	background-image: url(../images/image_footprints_02.png);
	top: 108px;
	left: 497px;
}
.bg-fadein-footprints.nth-5 {
	background-image: url(../images/image_footprints_03.png);
	top: 101px;
	left: 426px;
}
.bg-fadein-footprints.nth-6 {
	background-image: url(../images/image_footprints_03.png);
	top: 156px;
	left: 415px;
}
.bg-fadein-footprints.nth-7 {
	background-image: url(../images/image_footprints_04.png);
	top: 142px;
	left: 351px;
}
.bg-fadein-footprints.nth-8 {
	background-image: url(../images/image_footprints_04.png);
	top: 197px;
	left: 341px;
}
.bg-fadein-footprints.nth-9 {
	background-image: url(../images/image_footprints_05.png);
	top: 208px;
	left: 261px;
}
.bg-fadein-footprints.nth-10 {
	background-image: url(../images/image_footprints_05.png);
	top: 262px;
	left: 250px;
}
.bg-fadein-footprints.nth-11 {
	background-image: url(../images/image_footprints_06.png);
	top: 270px;
	left: 181px;
}
.bg-fadein-footprints.nth-12 {
	background-image: url(../images/image_footprints_06.png);
	top: 325px;
	left: 171px;
}
.bg-fadein-footprints.nth-13 {
	background-image: url(../images/image_footprints_07.png);
	top: 298px;
	left: 93px;
}
.bg-fadein-footprints.nth-14 {
	background-image: url(../images/image_footprints_07.png);
	top: 353px;
	left: 83px;
}
.bg-fadein-footprints.nth-15 {
	background-image: url(../images/image_footprints_08.png);
	top: 345px;
	left: 11px;
}
.bg-fadein-footprints.nth-16 {
	background-image: url(../images/image_footprints_08.png);
	top: 400px;
	left: 0px;
}
@media  (max-width: 767px) {
	.fadein-footprints__inner {
		top: 0;
		left: 0;
		margin: auto;
		width: 280px;
		height: auto;
		transform: rotate(17deg) scale(0.8) translateY(-300px) translateX(-150px);
		transform-origin: top left;
	}
}
@media screen and (max-width: 414px) {
	.fadein-footprints__inner {
		transform: rotate(17deg) scale(0.57) translateY(-322px) translateX(-24px);
	}
}

/* ----------------------------------------------------------------------------------------------------
*  SPECIAL SAUCE
* --------------------------------------------------------------------------------------------------*/
.window-box {
	width: 100%;
	overflow: hidden;
	z-index: 0;
	-webkit-mask: url(../images/image_mask_01.svg) no-repeat center center / contain;
			mask: url(../images/image_mask_01.svg) no-repeat center center / contain;
}
.sauce-page-list-number--small {
	font-size: 1.4rem;
	color: #FFF;
	text-align: center;
	margin: 0 0 5px;
}
.sauce-page-list-number--small span {
	font-size: 1.8rem;
	font-weight: bold;
}
.nav-sauce-list--current .nav-sauce-list-a__title {
	color: #323232;
}
.nav-sauce-list--current .window-box {
	background: var(--color-base);
}
.nav-sauce-list--current .window-box img {
	opacity: 0.5;
}

/* ----------------------------------------------------------------------------------------------------
*  404
* --------------------------------------------------------------------------------------------------*/
#error-404 .heading--huge,
#error-404 .text--lead {
	margin: 0 0 30px;
}
#error-404 span {
	justify-content: center;
}
#error-404 span.icon--pad::before {
	width: 22px;
	height: 22px;
	background: var(--color-base);
	transform: rotate(-20deg);
	margin: 0 10px 0 0;
}
.error-404__heading {
	padding: 100px 0 70px;
}
@media screen and (max-width: 1099px) {
	#error-404 {
		margin: 55px 0 0;
	}
}
@media screen and (max-width: 767px) {
	#error-404 .heading--huge,
	#error-404 .text--lead {
		margin: 0 0 15px;
	}
	#error-404 span.icon--pad::before {
		width: 18px;
		height: 18px;
	}
	.error-404__heading {
		padding: 60px 0;
	}
}




.limited__item__inner.select-campaign {
	background: none;
	width: 100%;
	margin: 0;
	padding: 0;
}
.select-campaign__heading {
	width: 100%;
}
.select-campaign .select-campaign__select:first-of-type {
	margin-top: 3rem;
}
.select-campaign .select-campaign__select:not(:first-of-type) {
	margin-top: 2rem;
}
.select-campaign__select__item {
	position: relative;
	background: #FFEB6C;
	padding: 2rem 0 4rem;
}
.select-campaign__select__item > p {
	width: 100%;
	font-size: 2.4rem;
	color: #CB001E;
	text-align: center;
	margin-bottom: 2rem;
}
.select-campaign__select__item ul {
	display: flex;
	justify-content: center;
	gap: 0 5.455%;
}
.select-campaign__select__item ul li {
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
	width: 20%;
	border-radius: var(--corner-largeround);
	padding: 0.8rem 0 1.5rem;
	border: 0.2rem dashed rgba(50,50,50,.35);
}
.select-campaign__select__item ul li.choice {
	background: #FFF;
	border: none;
}
.select-campaign__select__item ul li .choice__image {
	display: block;
	width: 84.239%;
	height: auto;
	aspect-ratio: 1 / 1;
	margin-bottom: 0.8rem;
}
.select-campaign__select__item ul li .order__item__quantity__number {
	width: 84.239%;
}
.select-campaign .contact__error {
	width: 76.364%;
	margin: 0 auto 3rem;
}
.select-campaign__select + p {
	margin-top: 3rem;
	font-size: 1.8rem;
	text-align: center;
}
@media screen and (max-width: 1099px) {
	.select-campaign .contact__error {
		width: 100%;
	}
}
@media screen and (max-width: 767px) {
	.select-campaign__select__item {
		padding: 1.5rem 0 2.5rem;
	}
	.select-campaign__select__item > p {
		font-size: 2.1rem;
		margin-bottom: 1.5rem;
	}
	.select-campaign__select__item ul {
		flex-direction: column;
		align-items: center;
		gap: 1rem 0;
	}
	.select-campaign__select__item ul li {
		width: 88.06%;
	}
	.select-campaign__select__item ul li .choice__image {
		width: 44.674%;
		max-width: 26rem;
	}
	.select-campaign__select__item ul li .order__item__quantity__number {
		width: 90%;
	}
	.select-campaign .order__limited__select {
		width: 100%;
	}
	.select-campaign__select + p {
		font-size: 1.4rem;
	}
}