@charset "utf-8";

html {
	font-size: 62.5%;
	font-feature-settings: 'palt' 1;
}

body {
	font-size: 1.6rem;
	font-weight: normal;
	font-family: 'Muli','Noto Sans Japanese', serif , 'ヒラギノ角ゴ Pro W3' , 'メイリオ';
	line-height: 1;
	letter-spacing: normal;
	text-align: left;
	color: #635049;
	/* background: #fffeef; */
}

img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

.blockContents {
	display: block;
}

#sale--38 *:is(b, span, em, strong) {
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
}

.sp_br {display: none;}
@media only screen and (max-width: 1000px){
	.sp_br {display: block;}
}


/*	===============
	header
===================	*/

header {
	width: 100%;
	background: #fff;
	padding: 4rem 1rem;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
}
@media only screen and (max-width: 1280px){
	header {
		padding: 1.71875vw 1rem;
	}

	header a {
		max-width: 42.1875%;
	}
}



/*	===============
	main
===================	*/

#sale--38 {}
@media only screen and (max-width: 1280px){
	#sale--38 {
		overflow-x: hidden;
	}
}


#main {
	width: 100%;
	background: url(../images/bkg/main_bkg.jpg) center top / cover no-repeat;
	padding: 0 2rem;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
}
@media only screen and (max-width: 768px){
	#main {
		padding: 0 2.604166vw;
		background: url(../images/bkg/main_bkg_sp.jpg) center top / cover no-repeat;
	}
}

#main::before,
#main::after, 
#main .__inner::before,
#main .__inner::after {
	content: '';
	position: absolute;
	pointer-events: none;
}
@media only screen and (max-width: 768px){
	#main::after, 
	#main .__inner::after {
		content: none;
	}
}

#main::before,
#main::after {
	top: 0;
}

#main .__inner::before,
#main .__inner::after {
	bottom: 0;
}

/* #main::before {
	width: 36.09375vw;
	height: 9.375vw;
	background: url(../images/bkg/main_bkg_left.png) center / 100% no-repeat;
	left: 0;
	aspect-ratio: 782 / 220;
}
@media only screen and (max-width: 768px){
	#main::before {
		width: 100%;
		height: 18.61979166vw;
		background: url(../images/bkg/main_bkg_top_sp.png) center / 100% no-repeat;
		left: 0;
		aspect-ratio: 768 / 143;
	}
}

#main::after {
	width: 40.729166vw;
	height: 11.45833vw;
	background: url(../images/bkg/main_bkg_right.png) center / 100% no-repeat;
	right: 0;
	aspect-ratio: 782 / 220;
}

#main .__inner::before {
	width: 18.4895833vw;
	height: 18.95833vw;
	background: url(../images/bkg/main_bkg_left2.png) center / 100% no-repeat;
	left: 0;
	aspect-ratio: 355 / 364;
}
@media only screen and (max-width: 768px){
	#main .__inner::before {
		width: 100%;
		height: 47.265625vw;
		background: url(../images/bkg/main_bkg_bottom_sp.png) center bottom -9.765625vw / 100% no-repeat;
		top: inherit;
		bottom: 0;
		right: 0;
		aspect-ratio: 768 / 363;
	}
}

#main .__inner::after {
	width: 16.979166vw;
	height: 20.104166vw;
	background: url(../images/bkg/main_bkg_right2.png) center / 100% no-repeat;
	right: 0;
	aspect-ratio: 326 / 386;
} */

#main .__body {
	max-width: 100rem;
	width: 100%;
	padding: 9rem 0 10rem;
	margin: 0 auto;
	position: relative;
	animation: pop-fuwa-soft 1s cubic-bezier(.22,1,.36,1) both;
}
@media only screen and (max-width: 1280px){
	#main .__body {
		padding: 7.03125vw 0 7.8125vw;
	}
}
@media only screen and (max-width: 768px){
	#main .__body {
		padding: 4vw 0 13.020833vw;
	}
}

/* #main .__body::after {
	content: '';
	width: 8rem;
	height: 6.8rem;
	background: url(../images/icon/bee.png) center / 100% no-repeat;
	position: absolute;
	bottom: 0;
	right: 0;
	aspect-ratio: 80 / 68;
	pointer-events: none;

	--base: translate(-150%, 80%);
	--ty: 0px;
	--rot: 0deg;
	--s: 1;

	transform: var(--base) translateY(var(--ty)) rotate(var(--rot)) scale(var(--s));
	transform-origin: 60% 60%;
	will-change: transform, opacity;

	animation:
		bee-idle 4s ease-in-out 3s infinite alternate;
	animation-delay: 2s;
}
@media only screen and (max-width: 768px){
	#main .__body::after {
		width: 8.59375vw;
		height: 7.29166vw;
		aspect-ratio: 66 / 56;
		--base: translate(0, -160%);
	}
} */

#main .__title {
	max-width: 98rem;
	width: 100%;
	margin: 0 auto 2.5rem;
}
@media only screen and (max-width: 1280px){
	#main .__title {
		max-width: 70vw;
	}
}
@media only screen and (max-width: 768px){
	#main .__title {
		max-width: 100%;
		margin: 0 auto;
		position: relative;
		z-index: 1;
		transform: translateX(-1vw);
	}
}

#main .__text {
	font-size: 1.6rem;
	font-weight: bold;
	font-family: YakuHanMP, 'Zen Old Mincho', 'Zen Kaku Gothic New', sans-serif;
	line-height: 2.25;
	letter-spacing: 0;
	text-align: center;
	color: #381f0f;
}
@media only screen and (max-width: 768px){
	#main .__text {
		font-size: 2.604166vw;
	}
}

#main .__item li{
	--base: translateX(0);
	opacity: 0;
	transform: var(--base) translateY(12px) scale(.98);
	animation: item-fuwa 1s cubic-bezier(.16,1,.3,1) both;
	will-change: opacity, transform;
}
@media only screen and (max-width: 768px){
	#main .__item li{}
}

#main .__item li:nth-child(1) {
	max-width: 7.29166vw;
	width: 100%;
	position: absolute;
	top: 4.5rem;
	right: -1.5rem;
	--base: translateX(100%);
	aspect-ratio: 140 / 271;
	animation-delay: 1.3s;
}
@media only screen and (max-width: 1280px){
	#main .__item li:nth-child(1) {
		--base: translateX(0);
	}
}
@media only screen and (max-width: 768px){
	#main .__item li:nth-child(1) {
		display: none;
	}
}

#main .__item li:nth-child(2) {
	max-width: 12.9166vw;
	width: 100%;
	position: absolute;
	bottom: 12.2rem;
	left: 2.5rem;
	--base: translateX(-100%);
	aspect-ratio: 248 / 327;
	animation-delay: 1.5s;
}
@media only screen and (max-width: 1280px){
	#main .__item li:nth-child(2) {
		--base: translateX(-25%);
	}
}
@media only screen and (max-width: 768px){
	#main .__item li:nth-child(2) {
		max-width: 21.09375vw;
		bottom: 29.55729166vw;
		left: -1.3020833vw;
	}
}

#main .__item li:nth-child(3) {
	max-width: 12.604166vw;
	width: 100%;
	position: absolute;
	bottom: 3.5rem;
	right: 6.8rem;
	--base: translateX(100%);
	aspect-ratio: 264 / 430;
	animation-delay: 1.7s;
}
@media only screen and (max-width: 1280px){
	#main .__item li:nth-child(3) {
		--base: translateX(50%);
	}
}
@media only screen and (max-width: 768px){
	#main .__item li:nth-child(3) {
		max-width: 18.61979166vw;
		bottom: 26.04166vw;
		right: -1.3020833vw;
		--base: translateX(0);
	}
}

#main .__item li:nth-child(4) {
	max-width: 7.7604166vw;
	width: 100%;
	position: absolute;
	top: 2.5rem;
	left: 5rem;
	--base: translateX(-100%);
	aspect-ratio: 149 / 263;
	animation-delay: 1.8s;
}
@media only screen and (max-width: 1280px){
	#main .__item li:nth-child(4) {
		top: 10rem;
		--base: translateX(-50%);
	}
}
@media only screen and (max-width: 768px){
	#main .__item li:nth-child(4) {
		max-width: 13.671875vw;
		top: 3.90625vw;
		left: 5.20833vw;
		--base: translateX(0);
	}
}



/*	===============
	caution
===================	*/

#caution {
	max-width: 100rem;
	width: 100%;
	background: #fff;
	padding: 10rem 2rem 27.3rem;
	margin: 0 auto;
	box-sizing: border-box;
	position: relative;
}
@media only screen and (max-width: 768px){
	#caution {
		padding: 7.8125vw 4.166vw 19.921875vw;
	}
}

#caution .__title {
	height: 2.14285714285em;
	font-size: 2.8rem;
	font-weight: normal;
	font-family: 'RocknRoll One', YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 2.14285714285em;
	letter-spacing: normal;
	text-align: center;
	color: #fff;
	background: #ee1323;
	border-radius: 1rem 1rem 0 0;
	box-sizing: border-box;
}
@media only screen and (max-width: 768px){
	#caution .__title {
		height: 3em;
		font-size: 4vw;
		line-height: 3em;
	}
}

#caution .__list {
	width: 100%;
	border: 1px solid #ee1323;
	border-radius: 0 0 1rem 1rem;
	padding: 4rem;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
@media only screen and (max-width: 768px){
	#caution .__list {
		padding: 4vw;
	}
}

#caution .__list li {
	font-size: 1.6rem;
	font-weight: bold;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1.75;
	letter-spacing: normal;
	text-align: left;
	color: #635049;
}
@media only screen and (max-width: 768px){
	#caution .__list li {
		font-size: 3.25vw;
	}
}

#caution .__list .txt-red {color: #ee1323;}
#caution .__list .txt-underline {text-decoration: underline;text-underline-offset: .35em;text-decoration-color: #ee1323;}



/*	===============
	product
===================	*/

#product {
	width: 100%;
	background: #fff7e5;
	padding: 0 2rem 15rem;
	box-sizing: border-box;
	position: relative;
}
@media only screen and (max-width: 768px){
	#product {
		padding: 3.90625vw 4.166vw 13.020833vw;
	}
}

#product::before {
	content: '';
	width: 100%;
	height: 10.625vw;
	background: url(../images/bkg/wave_texture.png) center bottom / 100% no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	transform: translateY(-100%);
	aspect-ratio: 1920 / 204;
	pointer-events: none;
}
@media only screen and (max-width: 768px){
	#product::before {
		height: 11.979166vw;
		background: url(../images/bkg/wave_texture_sp.png) center bottom / 100% no-repeat;
		aspect-ratio: 770 / 92;
	}
}

#product .__inner {
	max-width: 100rem;
	width: 100%;
	margin: 0 auto;
	transform: translateY(-4.5rem);
	position: relative;
}
@media only screen and (max-width: 1280px){
	#product .__inner {
		transform: none;
	}
}
#product .__inner:not(:last-child) {
	margin-bottom: 13rem;
}

#product .__inner::before,
#product .__inner::after,
#product .__list::before,
#product .__list::after {
	content: '';
	position: absolute;
	pointer-events: none;
	animation: bounce-top 4.5s ease infinite alternate;
	/* will-change: transform; */
}
@media only screen and (max-width: 768px){
	#product .__inner::before {
		display: none;
	}
}

#product .__inner::before {
	--tx: 100%;
	--ty: 100%;
	--bx: 0;
	--by: 0;

	width: 5.0520833vw;
	height: 4.84375vw;
	background: url(../images/icon/bee1.png) center / 100% no-repeat;
	top: 0;
	right: 0;
	transform: translate(var(--tx), var(--ty)) translate(var(--bx), var(--by));
	aspect-ratio: 97 / 93;
	animation-delay: 0;
}
@media only screen and (max-width: 1280px){
	#product .__inner::before {
		--tx: -100%;
	}
}

#product .__inner::after {
	--tx: -210%;
	--ty: -100%;
	--bx: 0;
	--by: 0;

	width: 5.15625vw;
	height: 3.95833vw;
	background: url(../images/icon/bee2.png) center / 100% no-repeat;
	top: 50%;
	left: 0;
	transform: translate(var(--tx), var(--ty)) translate(var(--bx), var(--by));
	aspect-ratio: 99 / 76;
	animation-delay: .25s;
}
@media only screen and (max-width: 1280px){
	#product .__inner::after {
		--tx: -30%;
	}
}
@media only screen and (max-width: 768px){
	#product .__inner::after {
		--tx: 30%;

		width: 12.109375vw;
		height: 9.375vw;
		top: 0;
		left: 0;
	}
}

#product .__list::after {
	--tx: 170%;
	--ty: 100%;
	--bx: 0;
	--by: 0;

	width: 3.229166vw;
	height: 3.28125vw;
	background: url(../images/icon/bee3.png) center / 100% no-repeat;
	bottom: 28%;
	right: 0;
	transform: translate(var(--tx), var(--ty)) translate(var(--bx), var(--by));
	aspect-ratio: 62 / 63;
	animation-delay: .5s;
}
@media only screen and (max-width: 1280px){
	#product .__list::after {
		--tx: 50%;
		bottom: 20%;
	}
}
@media only screen and (max-width: 768px){
	#product .__list::after {
		--tx: 0;
		--ty: 0;
		--bx: 0;
		--by: 0;

		width: calc(7.29166vw * 1.5);
		height: calc(7.03125vw * 1.5);
		background: url(../images/icon/bee1.png) center / 100% no-repeat;
		bottom: -15vw;
	}
}

#product .__title {
	font-size: 6rem;
	font-weight: normal;
	font-family: 'RocknRoll One', YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1;
	letter-spacing: normal;
	text-align: center;
	color: #381f0f;
	margin-bottom: 8rem;
	position: relative;
}
@media only screen and (max-width: 768px){
	#product .__title {
		font-size: 7vw;
		margin-bottom: 8.5vw;
	}
}

#product .__title span {
	display: inline-block;
	position: relative;
}

#product .__title span::after {
	content: '';
	width: 100%;
	height: 1.3rem;
	background: url(../images/common/line.png) center / 100% repeat-x;
	position: absolute;
	bottom: -.125em;
	left: 50%;
	transform: translate(-50%, 100%);
}

#product .__list {
	display: flex;
	flex-wrap: wrap;
	align-items: inherit;
	justify-content: start;
	gap: 4rem 2rem;
}

#product .__list li {
	max-width: calc((100% - 2rem * 1) / 2);
	width: 100%;
	background: #fff;
	border-radius: 4rem;
	padding: 3.5rem;
	box-sizing: border-box;
	transform: translateY(12px) scale(.98);
	opacity: 0;
}
@media only screen and (max-width: 1000px){
	#product .__list li {
		border-radius: 3vw;
		padding: 2.5vw;
	}
}
@media only screen and (max-width: 768px){
	#product .__list li {
		max-width: 100%;
		padding: 4.166vw;
	}
}

#product .__list li.is-in {
	animation: item-in 1s cubic-bezier(.16,1,.3,1) both;
}

#product .__list li:nth-child(even).is-in {
	animation-delay: .1s;
}
@media only screen and (max-width: 768px){
	#product .__list li:nth-child(even).is-in {
		animation-delay: 0s;
	}
}

#product .__list .__img {
	width: 100%;
	margin-bottom: 3rem;
	aspect-ratio: 1;
	position: relative;
	overflow: hidden;
}
@media only screen and (max-width: 1000px){
	#product .__list .__img {
		margin-bottom: 2vw;
	}
}
@media only screen and (max-width: 768px){
	#product .__list .__img {
		margin-bottom: 2.604166vw;
	}
}

#product .__list .__img a, 
#product .__list .__img img {
	transition: all .4s ease-in-out;
}

#product .__list .__img a:hover {
	opacity: .8;
}

#product .__list .__img a:hover img {
	transform: scale(1.025);
}

#product .__list .__off {
	width: 30.714285%;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: normal;
	text-align: center;
	color: #fff;
	background: #fc6f28;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	z-index: 1;
	aspect-ratio: 128 / 148;
	clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
}
@media only screen and (max-width: 1000px){
	#product .__list .__off {
		font-size: 3.44vw;
		top: 1rem;
		right: 1rem;
	}
}
@media only screen and (max-width: 768px){
	#product .__list .__off {
		font-size: 7.479166vw;
	}
}

#product .__list .__off .blockContents {
	font-size: 200%;
}
@media only screen and (max-width: 1000px){
	#product .__list .__off .blockContents {
		font-size: 120%;
	}
}

#product .__list .__off small {
	font-size: 80%;
}

#product .__point {
	width: 100%;
	height: 2.0833em;
	font-size: 2.4rem;
	font-weight: bold;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 2.0833em;
	letter-spacing: normal;
	text-align: center;
	color: #fff;
	background: #fc6f28;
	border-radius: 1rem;
	margin-bottom: 1.5rem;
	box-sizing: border-box;
}
@media only screen and (max-width: 1000px){
	#product .__point {
		height: 2.375em;
		font-size: 2vw;
		line-height: 2.375em;
		margin-bottom: 1.5vw;
	}
}
@media only screen and (max-width: 768px){
	#product .__point {
		/* height: 5.20833vw;
		font-size: 2.604166vw;
		line-height: 5.20833vw;
		margin-bottom: 2.604166vw; */

		height: 7.20833vw;
		font-size: 4.604166vw;
		line-height: 7.20833vw;
		margin-bottom: 2.604166vw;
	}
}

#product .__point:empty {
	opacity: 0;
}

#product .__point span {
	font-size: 120%;
}

#product .__name {
	font-size: 2.4rem;
	font-weight: bold;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1.5;
	letter-spacing: calc(80 / 1000 * 1em);
	text-align: left;
	color: #381f0f;
	margin-bottom: 1.5rem;
}
@media only screen and (max-width: 1000px){
	#product .__name {
		font-size: 2.4vw;
		margin-bottom: 1.5vw;
	}
}
@media only screen and (max-width: 768px){
	#product .__name {
		/* font-size: 3.125vw; */
		font-size: 4.5vw;
		margin-bottom: 2.604166vw;
	}
}

#product .__name small {
	font-size: 75%;
	color: #ee1323;
}

#product .__text {
	font-size: 1.8rem;
	font-weight: 500;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1.5;
	letter-spacing: calc(80 / 1000 * 1em);
	text-align: left;
	color: #381f0f;
	margin-bottom: 3rem;
}
@media only screen and (max-width: 1000px){
	#product .__text {
		font-size: 1.6vw;
		margin-bottom: 1.875em;
	}
}
@media only screen and (max-width: 768px){
	#product .__text {
		/* font-size: 2.34375vw; */
		font-size: 3.25vw;
		margin-bottom: 3.90625vw;
	}
}

#product .__priceArea {
	margin-bottom: 3rem;
	display: flex;
	flex-direction: column;
	/* gap: .5rem; */
}
@media only screen and (max-width: 1000px){
	#product .__priceArea {
		margin-bottom: 3vw;
	}
}
@media only screen and (max-width: 768px){
	#product .__priceArea {
		margin-bottom: 3.90625vw;
	}
}

#product .__priceArea .__group {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

#product .__priceArea .__group dt {
	font-weight: 500;
	line-height: 1;
	letter-spacing: calc(80 / 1000 * 1em);
	text-align: left;
	color: #381f0f;
}

#product .__priceArea .__group dd {
	font-weight: bold;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1;
	letter-spacing: calc(80 / 1000 * 1em);
	text-align: right;
	color: #381f0f;
}

#product .__priceArea .__group dd span {
	font-size: 125%;
}

#product .__priceArea .__group[data="proper"] * {color: #666;}
#product .__priceArea .__group[data="proper"] dt {font-size: 1.8rem;}
#product .__priceArea .__group[data="proper"] dd {font-size: 2.24rem;}
#product .__priceArea .__group[data="proper"] dd span {font-size: 125%;}

@media only screen and (max-width: 1000px){
	#product .__priceArea .__group[data="proper"] dt {font-size: 1.8vw;}
	#product .__priceArea .__group[data="proper"] dd {font-size: 2.24vw;}
}

@media only screen and (max-width: 768px){
	/* #product .__priceArea .__group[data="proper"] dt {font-size: 2.34375vw;}
	#product .__priceArea .__group[data="proper"] dd {font-size: 3.125vw;} */

	#product .__priceArea .__group[data="proper"] dt {font-size: 3.25vw;}
	#product .__priceArea .__group[data="proper"] dd {font-size: 3.75vw;}
}
#product .__priceArea .__group[data="sale"] dt {font-size: 2.4rem;font-weight: bold;}
#product .__priceArea .__group[data="sale"] dd {font-size: 2.88rem;}
#product .__priceArea .__group[data="sale"] dd span {font-size: 166.66%;}

@media only screen and (max-width: 1000px){
	#product .__priceArea .__group[data="sale"] dt {font-size: 2.4vw;}
	#product .__priceArea .__group[data="sale"] dd {font-size: 2.88vw;}
}

@media only screen and (max-width: 768px){
	/* #product .__priceArea .__group[data="sale"] dt {font-size: 3.125vw;}
	#product .__priceArea .__group[data="sale"] dd {font-size: 3.75vw;} */

	#product .__priceArea .__group[data="sale"] dt {font-size: 3.75vw;}
	#product .__priceArea .__group[data="sale"] dd {font-size: 4.25vw;}
}

#product .__button {
	width: 100%;
}

#product .__button a {
	width: 100%;
	height: 8rem;
	font-size: 2.4rem;
	font-weight: bold;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1;
	letter-spacing: calc(80 / 1000 * 1em);
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #381f0f;
	border-radius: 1rem;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: all .4s ease-in-out;
}

#product .__button a:hover {
	color: #fff;
	background: #fc6f28;
}

#product .__button a::after {
	content: '';
	width: 2.5rem;
	height: 2.5rem;
	background: url(../images/icon/icon_button.png) center / 100% no-repeat;
	position: absolute;
	top: 50%;
	right: 3rem;
	transform: translate(0, -50%);
	aspect-ratio: 1;
	pointer-events: none;
}

@media only screen and (max-width: 1000px){
	#product .__button a {
		height: 7vw;
		font-size: 2.2vw;
	}
	#product .__button a::after {
		width: 2.25vw;
		height: 2.25vw;
		right: 2.5vw;
	}
}

@media only screen and (max-width: 768px){
	#product .__button a {
		height: 12.5vw;
		font-size: 4vw;
	}
	#product .__button a::after {
		width: 3.25vw;
		height: 3.25vw;
		right: 3.25vw;
	}
}



/*	===============
	offers
===================	*/

#offers {
	width: 100%;
	background: url(../images/bkg/back.jpg) center top / cover no-repeat;
	padding: 10rem 2rem 15rem;
	box-sizing: border-box;
}

#offers .__inner {
	max-width: 100rem;
	width: 100%;
	margin: 0 auto;
}

#offers .__title {
	max-width: 82.6rem;
	width: 100%;
	margin: 0 auto 6rem;
}

#offers .__button {
	max-width: 65rem;
	width: 100%;
	margin: auto;
}

#offers .__button a {
	width: 100%;
	height: 13rem;
	font-size: 4.2rem;
	font-weight: bold;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1;
	letter-spacing: calc(80 / 1000 * 1em);
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #fc6f28;
	border-radius: 99rem;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

#offers .__button a::after {
	content: '';
	width: 3.5rem;
	height: 3.5rem;
	background: url(../images/icon/icon_button.png) center / 100% no-repeat;
	position: absolute;
	top: 50%;
	right: 5rem;
	transform: translate(0, -50%);
	aspect-ratio: 1;
	pointer-events: none;
}



/*	===============
	footer
===================	*/

footer {
	width: 100%;
	background: #381f0f;
	padding: 2rem 1rem;
	box-sizing: border-box;
}

footer .__copy {
	font-size: 1.6rem;
	font-weight: bold;
	font-family: YakuHanMP, 'atilla', 'Zen Kaku Gothic New', sans-serif;
	line-height: 1;
	letter-spacing: calc(80 / 1000 * 1em);
	text-align: center;
	color: #fff;
}
@media only screen and (max-width: 768px){
	footer .__copy {
		font-size: 2.0833vw;
	}
}



/*	===============
	animation
===================	*/

@keyframes bounce-top {
	0%{ --by: 0; animation-timing-function:ease-in; }
	20%{ --by: -4rem; animation-timing-function:ease-in; }
	60%{ --by: -3rem; animation-timing-function:ease-in; }
	90%{ --by: -1rem;  animation-timing-function:ease-in; }

	40%, 75%{
		--by: 0;
		animation-timing-function:ease-out;
	}

	100%{ --by: 0; animation-timing-function:ease-out; }
}

@property --by {syntax: '<length>';inherits: false;initial-value: 0px;}
@property --ty {syntax: '<length>'; inherits: false; initial-value: 0px;}
@property --rot {syntax: '<angle>';  inherits: false; initial-value: 0deg;}
@property --s {syntax: '<number>'; inherits: false; initial-value: 1;}

@keyframes pop-fuwa-soft {
	0%{ transform: scale(.8) translateY(4px); opacity: 0; }
	100%{ transform: scale(1) translateY(0); opacity: 1; }
}

@keyframes item-fuwa {
	to{
		opacity: 1;
		transform: var(--base) translateY(0) scale(1);
	}
}

@keyframes bee-in{
	0%{
		--ty: 0;
		--rot: 0;
	}
	60%{
		--ty: -2px;
		--rot: 6deg;
	}
	100%{
		--ty: 1rem;
		--rot: -8degdeg;
	}
}

@keyframes bee-idle{
	0%,100%{ --ty: 0px;  --rot: 0deg; }
	25%	 { --ty: -4px; --rot: 2deg; }
	50%	 { --ty: 1px;  --rot: -2deg; }
	75%	 { --ty: -3px; --rot: 1deg; }
}

.js-inview{
	opacity: 0;
	transform: translateY(16px);
	filter: blur(6px);
}

.js-inview.is-in{
	animation: fuwa-in .9s cubic-bezier(.16,1,.3,1) both;
}

@keyframes fuwa-in{
	to{
		opacity: 1;
		transform: translateY(0);
		filter: blur(0);
	}
}


@keyframes item-in{
	to{ opacity:1; transform: translateY(0) scale(1); }
}