@charset "utf-8";
:root {
	--color-main: #e50055;
	--bg-image: url(../img/common/bg_wondersale.png);
	--sp-container: 0 2rem;
}

/* reset */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, legend, input, textarea, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}
article, aside, details, dialog, figure, figcaption, footer, header, main, hgroup, nav, section {
	display:block;
}
h1,h2,h3,h4,h5,h6,em,strong {
	font-size: 100%;
	font-weight: normal;
	font-style: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
ul,ol,li {
	list-style-type: none;
}
img {
	border: 0;
	vertical-align: bottom;
}
a img {
	vertical-align: middle;
}

/*  */
* {
	box-sizing: border-box;
}
html {
	font-size: 10px;
	color: #000;
	scroll-behavior: smooth;
}
@media (max-width: 1150px) {
	html {
		font-size: 0.869vw;
	}
}
@media (max-width: 768px) {
	html {
		font-size: 1.3333vw;
	}
}
body {
	font-size: 1.6rem;
	line-height: 1.5;
	background-color: var(--color-main);
}
@media (max-width: 768px) {
	body {
		font-size: 3.2rem;
		line-height: 1.8;
	}
}
a {
	color: #000;
	text-decoration: none;
}
a img {
	transition: opacity 0.3s ease-out;
}
a img:hover {
	opacity: 0.7;
}
img {
	max-width: 100%;
	height: auto;
}
img[src$=".svg"] {
	width: 100%;
	height: auto;
}
ul, ol {
	list-style: none;
}
.sp {
	display: none;
}
@media (max-width: 768px) {
	.sp {
		display: block;
	}
	.pc {
		display: none;
	}
}
/* html {
	box-sizing: border-box;
	font-size: 62.5%;
	scroll-behavior: smooth;
}

*, *:before, *:after {
	box-sizing: inherit;
}
html, body {
	height: 100%;
}

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

ul, ol {
	list-style: none;
	padding: 0;
	margin: 0;
}

body {
	margin: 0;
	padding: 0;
	background-color: var(--color-main);
} */

/* layout */
.containerWrapper {
	padding: 0;
	margin: 0 auto 10rem;
	background: var(--bg-image);
	background-repeat: repeat;
	background-position: top center;
}
@media (max-width: 768px) {
	.containerWrapper {
		margin: 0 auto 13rem;
	}
}
.inner {
	margin: 0 auto;
	padding: 0;
	max-width: 115rem;
}


/* mv */
h1 {
	text-align: center;
}

/* listWrap */
.listWrap h2 {
	margin: 0 auto 3rem;
	text-align: center;
}
.image-container {
	margin: 0 auto 8rem;
	max-width: 115rem;
}
.image-container ul {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem 2.6%;
}
.image-container ul li {
	width: 23%;
}
@media (max-width: 768px) {
	.listWrap h2 {
		padding: var(--sp-container);
	}
	.image-container {
		padding: var(--sp-container);
		margin: 0 auto 16rem;
	}
	.image-container ul {
		gap: 2.6rem 3.66%;
	}
	.image-container ul li {
		width: 48.1%;
	}
}

/* animation */
.image-animation {
	opacity: 0;
	transition: opacity 1s ease-in-out;
}
.fade-in {
	opacity: 1;
}
@keyframes fadeIn {
	0% {opacity: 0;}
	100% {opacity: 1;}
}

/* event */
.event {
	padding: 12rem 0 2rem;
	margin-top: 16rem;
	background: #fff;
}
.event h2 {
	margin: 0 auto 5rem;
	max-width: 74.5rem;
}
.event-image-container {
	margin: 0 auto 8rem;
	max-width: 80rem;
	text-align: center;
}
.event-image-container li {
	margin-bottom: 8rem;
}
.event-image-container li:last-child {
	margin-bottom: 0;
}
.event-image-container li a {
	display: block;
}
.event-image-container li img {
	/*border: 2px solid #fff;
	box-shadow: 5px 5px 3px 0px rgba(0, 0, 0, 0.46);*/
}
@media (max-width: 768px) {
	.event {
		padding: 12rem 0 3rem;
	}
	.event h2 {
		width: 100%;
		padding: 0 4rem;
	}
	.event-image-container {
		padding: var(--sp-container);
	}
	.event-image-container li {
		margin-bottom: 4rem;
	}
}

/* captionWrap */
.captionWrap {
	padding: 8rem 0 6rem;
}
.caption {
	color: #fff;
	line-height: 3rem;
}
@media (max-width: 768px) {
	.captionWrap {
		padding: 8rem 0 7rem;
	}
	.caption {
		padding: 0 4rem;
		font-size: 2.6rem;
		line-height: 4.4rem;
	}
}

/* footer */
footer {
	margin: 0 auto;
	width: 100%;
	color: #fff;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.4;
	padding: 0 0 5rem;
}
footer .footer_inner {
	margin: 0 auto;
	max-width: 115rem;
}
footer .sns_list {
	margin-bottom: 6rem;
	display: flex;
	justify-content: center;
	gap: 0 5rem;
}
footer .sns_list li img {
	width: 7.8rem;
	height: 7.8rem;
}
footer .corp_logo {
	margin:0 auto 3rem;
	max-width: 46.7rem;
}
@media (max-width: 768px) {
	footer {
		font-size: 2.2rem;
		padding: 0 0 8rem;
	}
	footer .sns_list {
		margin-bottom: 5rem;
		gap: 0 6rem;
	}
	footer .sns_list li img {
		width: 10rem;
		height: 10rem;
	}
	footer .corp_logo {
		margin:0 auto 3rem;
		max-width: 50rem;
	}
}

/* pagetopWrapper */
.pagetopWrapper {
	width: 100%;
	position: relative;
}
.pagetopWrapper .pagetop {
	position: absolute;
	right: 2rem;
	bottom: 13rem;
	width: 9.6rem;
	height: 9.6rem;
	border-radius: 50%;
	z-index: 100;
}
@media (max-width: 768px) {
	.pagetopWrapper .pagetop {
		bottom: 18.4rem;
		width: 11rem;
		height: 11rem;
	}
}

/* bottom-navi */
.bottom-navi {
	position: fixed;
	bottom: 0;
	width: 100%;
	padding: 2rem 0;
	background-color: var(--color-main);
	z-index: 100;
	transition: ease 0.3s;
	box-shadow: 0px -3px 6px 0px rgba(0, 0, 0, 0.4);
}
.bottom-navi-wrapper {
	margin: 0 auto;
	max-width: 68rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.bottom-navi-wrapper a {
	display: block;
	width: 29.4rem;
	border: 0.2rem solid #fff;
	padding: 1.2rem 1rem;
	text-align: center;
	position: relative;
	color: #fff;
	font-size: 2.6rem;
	font-weight: bold;
}
.bottom-navi-wrapper a:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 1rem solid transparent;
	border-bottom: 1rem solid transparent;
	border-left: 1rem solid #fff;
	transition: all 0.3s;
	position: absolute;
	right: 1.5rem;
	top: calc(50% - 1rem);
}
.bottom-navi-wrapper a:hover {
	background-color: #fff;
	color: var(--color-main);
}
.bottom-navi-wrapper a:hover::after {
	border-left-color: var(--color-main);
}
.bottom-navi-wrapper a:nth-child(2) {
	border: 0.2rem solid #000;
	color: #000;
	background: #fff;
}
.bottom-navi-wrapper a:nth-child(2):after {
	border-left: 1rem solid #000;
}
.bottom-navi-wrapper a:nth-child(2):hover {
	background: #000;
	color: #fff;
}
.bottom-navi-wrapper a:nth-child(2):hover::after {
	border-left-color: #fff;
}
@media (max-width: 768px) {
	.bottom-navi-wrapper {
		max-width: 71rem;
	}
	.bottom-navi-wrapper a {
		width: calc((100% - 3.66%) / 2);
		border: 0.3rem solid #fff;
		font-size: 3.6rem;
	}
	.bottom-navi-wrapper a:nth-child(2) {
		border: 0.3rem solid #000;
		padding: 1.2rem 2rem  1.2rem 1rem;
	}
}

