/* Reset
-----------------------------------*/
*, ::before, ::after {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
}
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
}
body {
	margin: 0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	position: relative;
}
main {
	display: block;
}
p, table, blockquote, address, pre, iframe, form, figure, dl {
	margin: 0;
}
h1, h2, h3, h4, h5, h6 {
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	margin: 0;
}
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}
dt {
	font-weight: bold;
}
dd {
	margin-left: 0;
}
pre {
	font-family: monospace, monospace;
	font-size: inherit;
}
address {
	font-style: inherit;
}
a {
	background-color: transparent;
	text-decoration: none;
	color: inherit;
}
b, strong {
	font-weight: bolder;
}
small {
	font-size: 80%;
}
img, embed, object, iframe {
	vertical-align: bottom;
}
img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
}
/* Layout
-----------------------------------*/
#wrapper {
	width: 100%;
	max-width: 750px;	
	margin: 0 auto;
	position: relative;
}
main div {
	position: relative;
}
/* kv */
.kv__btn {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: min(96.133333333vw, 721px);
	bottom: min(3.7333333333vw, 28px);
}
.cta__btn {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: min(96.133333333vw, 721px);
	bottom: min(6.8vw, 51px);
}

/* faq */
.faq {
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	padding: min(12.8vw, 96px) 0 min(10.666666667vw, 80px);
}
.faq__title {
	margin: 0 auto min(7.6vw, 57px);
	width: min(88vw,660px);
}
.faq__wrap {
	margin-inline: auto;
	width: min(90.6666666667vw, 680px);
}
.faq__item {
	border: 1px solid #8085b8;
	border-radius: min(2vw, 15px);
}
.faq__item:not(:last-of-type) {
	margin-bottom: min(5.33333333vw, 40px);
}
.faq__head {
	position: relative;
	cursor: pointer;
	padding: min(4.266666667vw, 32px) min(5.6vw, 42px);
}
.faq__head img {
	width: auto;
	height: min(9.86666666667vw, 74px);
}
.faq__head::after {
	position: absolute;
	content: '';
	display: block;
	background: center / contain no-repeat url(../images/ic-faq-arrow.png);
	top: 50%;
	transform: translateY(-50%);
	width: min(6vw, 45px);
	height: min(3.4666666667vw, 26px);
	right: min(6vw, 45px);
	transition: all .3s;
}
.faq__head.is-open::after {
	transform: translateY(-50%) rotate(-180deg);
}
.faq__body {
	position: relative;
	display: none;
	padding: min(3.2vw, 24px) min(5.2vw, 39px) min(5.2vw, 39px);
}
.faq__body::before {
	position: absolute;
	content: '';
	display: block;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #8085b8;
	width: min(79.6vw, 597px);
	height: 1px;
}
#wrapper .faq__body img {
	margin-inline: auto;
	width: min(79.6vw, 597px);
}
/*store*/
#store {
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	padding-bottom: min(4.4vw, 33px)
}
#store .store__title {
	position: relative;
	z-index: 3;
	margin: max(-3.2vw, -24px) auto 0;
	background-color: #fff;
	width: min(90.666667vw, 680px);
	border-radius: min(2.4vw, 18px);
	padding: min(10vw, 75px) 0 min(4.8vw, 36px);
}
#store .store__title img {
	width: min(28vw, 210px);
	margin-inline: auto;
}
#store .store__wrap {
	width: calc(680 / 750 * 100%);
	margin-inline: auto;
	box-sizing: border-box;
}
#store .store__item {
	margin-inline: auto;
	width: 100%;
	max-width: 680px;
	margin-bottom: calc(33 / 750 * 100%);
	border: min(0.26666667vw, 2px) solid #8085b8;
	border-radius: min(2vw, 15px);
	overflow: hidden;
	box-sizing: border-box;
	background: #FFF;
}
#store .store__item:last-child {
	margin-bottom: 0;
}
#store .store__item__head {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	height: min(13.6vw, 102px);
}
#store .store__item__head img {
	width: auto;
	height: min(5.06666666667vw, 38px);
}
#store .store__item__head .icon {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: min(6.4vw, 48px);
	width: min(3.733333vw, 28px);
	height: min(3.733333vw, 28px);
}
#store .store__item__head .icon::before,
#store .store__item__head .icon::after {
	position: absolute;
	content: '';
	display: block;
	width: 100%;
	height: min(0.5333333333vw, 4px);
	border-radius: 999px;
	background-color: #8085b8;
	transition: all .3s;
	top: 50%;
	left: 50%;
}
#store .store__item__head .icon::before {
	transform: translate(-50%,-50%);
}
#store .store__item__head .icon::after {
	transform: translate(-50%,-50%) rotate(90deg);
}
#store .store__item__head.is-open .icon::after {
	width: 0;
}
#store .store__item__body {
	display: none;
	position: relative;
	background: #FFF;
	width: 100%;
	padding-top: calc(50 / 680 * 100%);
	padding-bottom: calc(23 / 680 * 100%);
}
#store .store__item__body::before {
	position: absolute;
	content: '';
	display: block;
	width: calc(580 / 680 * 100%);
	height: min(0.5333333333vw, 4px);
	background-color: #8085b8;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
#store .store__item__body iframe {
	width: calc(580 / 680 * 100%);
	margin-inline: auto;
	display: block;
	aspect-ratio: 580 / 378;
	margin-bottom: calc(41 / 680 * 100%);
}
#store .store__item__body .info {
	width: calc(580 / 680 * 100%);
	margin: 0 auto calc(38 / 680 * 100%);
}
#store .store__item__body .btn {
	width: calc(640 / 680 * 100%);
	display: block;
	margin-inline: auto;
}
#store .store__item__body .store_tel{
	width: calc(588 / 680 * 100%);
	margin-bottom: calc(20 / 680 * 100%);
}
#store .store_cv_bottom {
	display: block;
	margin: min(8.8vw, 66px) auto 0;
	width: min(96.13333333vw, 721px);
}
#store .store_cv_bottom img {
	width: 100%;
}
.btn {
	transition: 0.2s;
}
.btn:hover {
	opacity: 0.8;
	transition: 0.3s;
	cursor: pointer;
}

.footer a.gotop{
	position: absolute;
	right: calc(35 / 750 * 100%);
	bottom: calc(93 / 438 * 100%);
	width: calc(79 / 750 * 100%);
}

.footer a:hover, .header a:hover, .cv_btn a:hover {
	opacity: 0.8;
	transition: 0.3s;
	cursor: pointer;
}