@charset "UTF-8";

/* Common
   ============================= */
body { font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; }
.wf-sawarabimincho { font-family: "Sawarabi Mincho"; }

.fadeOff { opacity: 0; -webkit-transition: 1s all; transition: 1s all; -webkit-transform: translateY(50px); transform: translateY(50px); }
.fadeOn { opacity: 1; -webkit-transform: translateY(0px); transform: translateY(0px); z-index: 2; }
@media screen and (max-width:479px){
	.pc { display: none; }
	.sp { display: block; }
}
@media screen and (min-width:480px){
	.sp { display: none; }
}

/* Contents
   ============================= */
#footprint { margin-bottom: 1em; }
#contents {}
#pageTitle { margin-bottom: 40px; }
#pageTitle h1 { float: none; float: none; }
#pageTitle img { width: 100%; }
#intro { width: 800px; margin: 0 auto 60px; text-align: center; }
@media screen and (max-width:479px){
	#intro { margin-bottom: 0; }
}
@media screen and (max-width:479px){
	#intro { width: 100%; padding: 0 2%; -webkit-box-sizing: border-box;
	box-sizing: border-box; }
}
#intro h1 { font-size: 2.5em; float: none; }
#main { }
#main img { width: 100%; }
#main h1 { font-size: 2.5em; width: 100%; }
#main h2 { font-size: 2.5em; margin-bottom: 1em; border: 0; }
@media screen and (max-width:479px){
	#main h1 { text-align: center; }
	#main h2 { height: auto; margin-bottom: .5em; }
}
#main h3 { font-size: 2.5em; }
#main p { font-size: 1.2em; }
@media screen and (max-width:479px){
	#main p { font-size: 1.4em; }
}

#contents section { width: 100%; padding: 40px 0 20px; }
.innerWrap { width: 800px; margin: 0 auto; margin-bottom: 60px; }
@media screen and (max-width:479px){
	.innerWrap { width: 100%; padding: 0 2%; -webkit-box-sizing: border-box; box-sizing: border-box; margin-bottom: 20px; }
}
section:first-of-type { position: relative; }
.innerWrap .fukidashiL { width: 18%; position: absolute; top: -18px; left: 260px; }
.innerWrap .fukidashiR { width: 18%; position: absolute; top: -18px; right: -42px; }
@media screen and (max-width:479px){
	.innerWrap .fukidashiL { width: 35%; position: absolute; top: -18px; right: 0; }
	.innerWrap .fukidashiR { width: 35%; position: absolute; top: 50%; right: 0; }
}
.innerWrap.secondary { position: relative; margin-bottom: 20px; z-index: 9999; }
@media screen and (max-width:479px){
	.innerWrap.secondary { display: -webkit-box; display: -ms-flexbox; display: flex; }
}
.innerWrap.secondary .titleBoxNum { position: absolute; right: -79px; top: -17px; width: 20%; }
.innerWrap.secondary.flex li { margin-right: 20px; }
.titleBox { width: 128%; }
.titleBoxNum { margin-right: 2em; }
.innerBox {}
.flex { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
@media screen and (max-width:479px){
	.titleBox { width: 100%; }
	.titleBoxNum { width: 20%; margin: 0 auto; }
	.innerBox {}
	.flex { display: block; }
}

#point2 { background: hsl(38, 19%, 90%); }
@media screen and (max-width:479px){
	#point2 { background: #fff; }
}

#point3 .innerBox { margin-bottom: 60px; }
#point3 .innerWrap > p { padding: 1em; border: 1px solid  #ff8d00; margin-bottom: 3em; color: #ff8d00; font-weight: bold; }
#point3 div { margin-bottom: 20px; }
#point3 .menuName { text-align: center; width: 80%; margin: 0 auto;}
@media screen and (max-width:479px){
	#point3 .menuName { width: 95%; }
}
#point3 .menuName p:first-of-type { text-align: center; border-bottom: 1px solid  #ddd; margin-bottom: 1em; padding-bottom: .5em; }

#shopData .innerWrap div { margin-right: 20px; }
@media screen and (max-width:479px){
	#shopData .innerWrap div { text-align: center; margin-right: 0; }
}
#shopData .innerWrap.flex { -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
#shopData .innerWrap h3 { font-size: 1.4em; }
@media screen and (max-width:479px){
	#shopData .innerWrap h3 { margin: 1em 0; }
}
#shopData .innerWrap p { margin-bottom: 1em; }
#shopData .innerWrap .btn { display: inline-block; background: #ff7223; padding: .6em 1.5em; color: #fff; }
@media screen and (max-width:479px){
	#shopData .innerWrap .btn { width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.3em; padding: .8em 1.3em; }
}

/* SNS
   ============================= */
.sns { overflow:hidden; margin:1em 0 0.5em 0; text-align: left;}
.sns #facebook { float:left; width:20%; text-align: left; }
.sns #twitter { float:left; width:auto; margin-right:5px; }