@charset "utf-8";

/*COMMON */
body {
	-webkit-animation: fadeIn 3s ease 0s 1 normal;
	animation: fadeIn 3s ease 0s 1 normal;
}

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

@keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

main {
	/* font-family: 'Sawarabi Mincho', serif; */
	color: #fff;
	background: linear-gradient(180deg, rgba(2, 9, 41, 1) 0%, rgba(16, 3, 41, 1) 50%, rgba(0, 0, 0, 1) 100%);
	font-family: 'Sawarabi Mincho', serif;
}

h1 {
	margin: 0;
}

@media (min-width: 768px){
	.container {
		width: 100%;
	}
}

/* MV */
#mv {
	position: relative;
}

#mv h1 img {
	z-index: 9999;
	position: absolute;
	top: 34%;
	margin: auto;
}

#mv .slick-slide img {
	width: 100%;
}

@media screen and (max-width: 991px) {
	#mv h1 img {
		top: 40%;
	}
}

/* CONTENTS */
#contents {
	padding: 5em 0;
	background: #660050;
}

#contents h2 {
	width: 90%;
	margin: 0 auto 1em;
	text-align: center;
}

#contents h2 small {
	display: block;
	color: #fff;
}

#contents h3 {
	width: 65%;
    margin: 20px auto 10px;
}

#contents .flexWrap {
	width: 90%;
	max-width: 940px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#contents .flexItem{
	width: 48%;
}

#contents .txtWrap {
	padding-top: 45.20%;
	background: url(../img/bg_txt.png) bottom/cover no-repeat;
}

#contents .txtWrap p {
	text-align: center;
}

#contents .txtWrap p img {
	margin: 0 auto;
}

@media screen and (max-width: 568px) {
	#contents .flexItem {
		width: 100%;
	}

	#contents .flexItem img {
		display: block;
		margin: 0 auto;
	}

	#contents .flexItem:first-child {
		margin-bottom: 30px;
	}

	#contents .txtWrap {
		padding-top: 82.50%;
		background: url(../img/bg_txt_sp.png) bottom/contain no-repeat;
	}
}

/* FAQ */
#faq {
	width: 90%;
	max-width: 940px;
	margin: 0 auto;
    padding: 5em 0;
    text-align: center;
}

#faq h2 {
    margin: 0 0 1.5em;
}

#faq .acMenu_faq dt,
#faq .acMenu_faq dd {
    text-align: left;
    padding: 2em 3em 2em 5em;
    margin: 1em 0 0.2em;
	border: 1px solid #fff;
	border-radius: 10px;
}

#faq .acMenu_faq dt {
    background: rgba(0, 0, 0, 1) url(../img/Q.svg) no-repeat;
	background-position: 1em;
    background-size: 40px;
	font-weight: normal;
}

#faq .acMenu_faq dd {
    margin: 0;
    line-height: 1.6em;
    background: rgba(0, 0, 0, 1) url(../img/A.svg) no-repeat;
	background-position: 1em;
    background-size: 40px;
}

@media screen and (max-width:568px) {
    #faq .acMenu_faq dt,
    #faq .acMenu_faq dd {
        padding: 2em 3em 2em 4em;
    }
    #faq .acMenu_faq dt {
		background-size: 8%;
    }
    #faq .acMenu_faq dd {
    	background-size: 8%;
    }
}

/* SHOP */

#shop {
	background: #efefef;
	color: #000;
	padding: 5em 0;
}

#shop h2 {
    border-bottom: none;
    border-top: none;
	text-align: center;
}

#shop p {
	text-align: center;
	font-size: clamp(14px, 5vw, 18px);
}

#shop p span {
	display: block;
	color: #17622a;
	font-size: clamp(20px, 8vw, 40px);
	margin-bottom: 10px;
}

#shop address {
    margin: 30px auto;
    max-width: 500px;
}

#shop dl {
	margin: 0 0 0.8em;
}

#shop dt {
	color : #ae0b21;
}

#shop .shop_map iframe {
	border-radius: 25px;
	border: 1px solid #000;
}

#shop  .sns {
	margin: 30px 0;
	text-align: center;
}