@charset "utf-8";
/* CSS Document */

body {
	margin:0;
	padding:0;
	font-size: 2vmax;
	letter-spacing: 0.1em;
	font-family:"Hiragino Sans", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W1", "Hiragino Kaku Gothic ProN W1", "Hiragino Kaku Gothic Pro", sans-serif;
}
* {
	box-sizing: border-box;
}
a {
	text-decoration: none;
	color:#000;
}
ul {
	padding:0;
}
li {
	list-style: none;
}
img,svg {
	display: block;
	width:100%;
	height: auto;
}

.body_wrapper {
	background:#efefef;
	width:100%;
}
.body_inner {
	position: relative;
	width:100vw;
	max-width:900px;
	margin:0 auto;
	overflow-x: hidden;
	background:#ffffff;
}

/*------------------------------
 loading
------------------------------*/

#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 999;
	background:#d60e19;
	text-align:center;
	color:#fff;
}
#splash_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#splash_logo img {
	width:170px;
}

/* fadeUpをするアイコンの動き */
.fadeUp{
	animation-name: fadeUpAnime;
	animation-duration:0.5s;
	animation-fill-mode:forwards;
	opacity: 0;
}
@keyframes fadeUpAnime{
	from {opacity: 0;transform: translateY(50px);}
	to {opacity: 1;transform: translateY(0);}
}

/*------------------------------
 header
------------------------------*/

#header {
	width:100%;
	background:#d60e19;
	padding:1em 1.2em;
}
.header_logo {
	display: block;
	width:30%;
	height: auto;
}

/*------------------------------
 mv
------------------------------*/

.mv {
	width:100%;
	margin-top:-1em;
}
.mv_background {
	width:100%;
	opacity: 0;
	animation: fadein 1s ease 2.5s;
	animation-fill-mode: forwards;
}
@keyframes fadein {
	100% {opacity: 1;}
}
.mv_open {
	position: absolute;
	top:2.5em;left:-1.5%;
	width:103%;
	opacity: 0;
	transform: scale(0.5);
	animation: zoomin .7s ease 2s;
	animation-fill-mode: forwards;
	transform-origin: center;
}
@keyframes zoomin {
	100% {transform: scale(1);opacity: 1;}
}

/*------------------------------
 flyer
------------------------------*/

.flyer {
	background:#8fc31f;
	padding:12% 0;
	position: relative;
	overflow: hidden;
}
.flyer_btn {
	display: block;
	width:75%;
	margin:0 auto;
	position: relative;
	z-index: 2;
}
.flyer_btn strong {
	color:#ffffff;
	text-align: center;
	display: block;
	margin-top:5%;
	font-size: 0.9em;
	line-height:1.7;
	text-align: center;
}
.flyer_p1 {
	width:23%;
	position: absolute;
	left:-3%;bottom:-10%;
}
.flyer_p2 {
	width:18%;
	position: absolute;
	right:0;bottom:-10%;
}
.flyer_btn img {
	transition: .2s;
	transform-origin: center;
}
.flyer_btn:hover img {
	transform: scale(0.98);
}

/*------------------------------
 maker
------------------------------*/

.maker {
	padding:7% 0;
}
.maker_wrapper {
	width:87.16%;
	margin:0 auto;
}
.maker_h2 {
	position: relative;
	font-size: 1em;
	height: 1.2em;
	margin-bottom:10%;
}
.maker_h2 span {
	position: absolute;
	top:0;bottom:0;left:0;margin:auto;
	z-index: 2;
	background:#fff;
	padding-right:1em;
}
.maker_h2:after {
	content:'';
	width:100%;
	height: 1px;
	background:#000;
	position: absolute;
	top:0.7em;left:0;
	z-index: 1;
}
.maker_inner {
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-wrap: wrap;
}
.maker_inner img {
	width:auto;
	height: 2.5em;
	margin: 1.8%;
}/*
.maker_inner img:nth-of-type(4),
.maker_inner img:nth-of-type(7),
.maker_inner img:nth-of-type(10){
	margin-right: 0;
}*/

/*------------------------------
 footer
------------------------------*/

#footer {
	background:#d60e19;
	padding:7% 0;
}
.footer_inner {
	width:87.16%;
	margin:0 auto;
	position: relative;
}
.footer_information li {
	font-weight: bold;
	color:#ffffff;
	position: relative;
	padding-left:1.2em;
	font-size: 0.9em;
	margin-bottom:0.5em;
	line-height: 1.7;
}
.footer_information li:before {
	content:'';
	width:0.9em;
	height: 0.9em;
	position: absolute;
	top:0.4em;left:0;
	background:#fff;
}
.footer_information li:nth-last-of-type(1):before {
	display: none;
}
.footer_information li span {
	font-size: 0.75em;
	font-weight: normal;
	display: inline-block;
	transform: translateY(-0.1em);
	margin-left:1em;
}
.footer_information li a.map {
	display: inline-block;
	border:1px solid #fff;
	transform: translateX(-1.1em);
	color:#fff;
	padding:0 0.3em;
	margin-top:0.5em;
	transition: .5s;
}
.footer_information li a.map:hover {
	background:#fff;
	color:#000;
}
.store_image {
	width:35%;
	margin-top:25%;
}
.footer_image {
	width:50%;
	position: absolute;
	right:0;bottom:0;
}

/*-------------------------------
 animation
-------------------------------*/

/* フェードイン */
.fadeInUp {
	opacity: 0;
}
.fadeInUp.visible {
	opacity: 0;
	animation: fadeInUp 0.7s ease 0s 1 normal;
	animation-fill-mode: forwards;
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translateY(10px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ズームイン */
.zoomIn {
	opacity: 0;
}
.zoomIn.visible {
	opacity: 0;
	animation: zoomIn 0.7s ease 0s 1 normal;
	animation-fill-mode: forwards;
}

@keyframes zoomIn {
	0% {
		opacity: 0;
		transform: scale(0.5);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}

.access_map {
	display: block;
	width:100%;
	height: calc(100vw * 0.6);
	border:0;
	margin:0;
}