@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@700&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}

html {
	line-height: 1;
}

ol, ul, li {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}

q, blockquote {
	quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}

a img {
	border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

a,
button {
	text-decoration: none;
	-webkit-transition: opacity 0.4s ease, color 0.4s ease, background-color 0.4s ease;
	transition: opacity 0.4s ease, color 0.4s ease, background-color 0.4s ease;
	color: #471f22;
}

a:hover,
button:hover {
	opacity: 0.5;
}

@media (min-width: 1px) and (max-width: 1050px) {
	a:hover,
button:hover {
		opacity: 1;
	}
}
button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

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

@media screen and (max-width: 767px) {
	img {
		width: 100%;
	}
}
picture {
	display: block;
}

table {
	width: 100%;
}

input[type=text],
input[type=email],
textarea {
	-webkit-appearance: none;
	border: none;
	font-family: inherit;
}

input[type=text]:focus,
input[type=email]:focus {
	outline: 0;
}

::-webkit-input-placeholder {
	color: #cccccc;
}

:-ms-input-placeholder {
	color: #cccccc;
}

::-ms-input-placeholder {
	color: #cccccc;
}

::-moz-placeholder {
	color: #cccccc;
}

::placeholder {
	color: #cccccc;
}

/* IE */
:-ms-input-placeholder {
	color: #cccccc;
}

/* Edge */
::-ms-input-placeholder {
	color: #cccccc;
}

img, object {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

main {
	overflow: hidden;
}

/* ---------------------------------------
  html , body
-----------------------------------------*/
html {
	font-size: 62.5%;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}

body {
	-webkit-text-size-adjust: 100%;
	overflow: auto;
	color: #000000;
	position: relative;
	min-width: 1200px;
}

@media screen and (max-width: 767px) {
	body {
		min-width: inherit;
	}
}
.preload * {
	-webkit-transition: none !important;
	transition: none !important;
}

/* ---------------------------------------
  .wrap
-----------------------------------------*/
.wrap {
	position: relative;
	width: 1200px;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.wrap {
		width: 100%;
	}
}
/* ---------------------------------------
  .common
-----------------------------------------*/
.slider {
	width: 100%;
	height: 225px;
}
@media screen and (max-width: 767px) {
	.slider {
		height: 30vw;
	}
}

.slider__img {
	width: 400px;
}
@media screen and (max-width: 767px) {
	.slider__img {
		width: 53.3333333333vw;
	}
}

@-webkit-keyframes flashing {
	0% {
		opacity: 1;
	}
	90% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes flashing {
	0% {
		opacity: 1;
	}
	90% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.fadein:not(.is-anime-on) {
	opacity: 0;
	-webkit-transform: translate3d(0, 40px, 0);
	        transform: translate3d(0, 40px, 0);
}

.fadein.is-anime-on {
	-webkit-animation-name: fadeInUp;
	        animation-name: fadeInUp;
	-webkit-animation-duration: 1.2s;
	        animation-duration: 1.2s;
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
}

@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 40px, 0);
		        transform: translate3d(0, 40px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 40px, 0);
		        transform: translate3d(0, 40px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}
/* ---------------------------------------
  .floating_btn
-----------------------------------------*/
.floating_btn {
	position: fixed;
	bottom: 42px;
	right: 137px;
	z-index: 999;
	width: 225px;
}

@media screen and (max-width: 767px) {
	.floating_btn {
		width: 29vw;
		bottom: 4vw;
		right: 2vw;
	}
}
.floating_btn.scrolled {
	opacity: 1;
	pointer-events: auto;
}

/* ---------------------------------------
.buylink__list
-----------------------------------------*/
.buylink {
	margin: 67px auto 0;
	width: 980px;
}
@media screen and (max-width: 767px) {
	.buylink {
		margin: 5.5vw auto 0;
		width: 84.8vw;
	}
}

.buylink__ttl {
	display: none;
}

.buylink__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 42px 42px;
	border: none;
	border-radius: 0;
	background-color: transparent;
}
@media screen and (max-width: 767px) {
	.buylink__list {
		display: block;
	}
}

.buylink__list li {
	width: calc((100% - 42px) / 2);
}
@media screen and (max-width: 767px) {
	.buylink__list li {
		width: 100%;
	}
	.buylink__list li:nth-of-type(n+2) {
		margin-top: 3.5vw;
	}
}

.buylink__list a {
	font-size: 3.5rem;
	line-height: 1;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	height: 119px;
	border: none;
	font-weight: bold;
	font-family: "M PLUS Rounded 1c";
	letter-spacing: 0.2em;
	border-radius: 15px;
	background: linear-gradient(93deg, rgb(255, 241, 29) 0%, rgb(251, 204, 0) 28%, rgb(240, 147, 46) 66%, rgb(233, 101, 45) 90%, rgb(228, 53, 43) 100%);
}
@media screen and (max-width: 767px) {
	.buylink__list a {
		font-size: 4vw;
		height: 14.4vw;
		border-radius: 2vw;
		padding: 0;
	}
}
.buylink__list a::before {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	border-radius: 12px;
	background: #000000;
}
@media screen and (max-width: 767px) {
	.buylink__list a::before {
		top: 2px;
		left: 2px;
		width: calc(100% - 4px);
		height: calc(100% - 4px);
		border-radius: 1.6vw;
	}
}

.buylink__link-txt {
	position: relative;
}

.buylink__link-txt:after {
	content: none;
}

.buylink__list-item:not(:last-of-type) .buylink__link {
	border-bottom: none;
}

/* ---------------------------------------
  表示・非表示処理
-----------------------------------------*/
.pc_none {
	display: none;
}

@media screen and (max-width: 767px) {
	.pc_none {
		display: block;
	}
}
@media screen and (max-width: 767px) {
	.sp_none {
		display: none;
	}
}