@charset "utf-8";
/*
=========================================
	Base Layout
=========================================
*/
/*ALL and Smart Phone*/
.container{
	max-width: 940px;
	width:90%;
	padding-left: 5%;
	padding-right: 5%;
	margin: 0 auto;
}

.container:after{
	content:"";
	display: block;
	clear:both;
}



/*
=========================================
	ModulesiBlockj
=========================================
*/
/*header
--------------------*/

header{
	width: 100%;
}

h1{
	margin:0 20px;
	position:absolute;
	z-index:9999;
	font-size:200%;
	color:#612109;
	font-family: 'Pacifico', cursive;
	text-shadow:
		1px 1px 0 #fff,
		-1px 1px 0 #fff,
		1px -1px 0 #fff,
		-1px -1px 0 #fff;
}

h1 .grimm{
	font-size:200%;
	font-weight:normal;
}



/*header	intro
--------------------*/

#intro{
	background-image:url(../img/img/1083732_5.png), url(../img/img/1083732_6.png);
	background-repeat:no-repeat, no-repeat;
	background-position:right top, left bottom;
	background-size:100px 100px;
	padding:5px 0;
	margin:10px 0 40px;
}

#intro p#intro-title-2{
	width:100vw;
	height: 25vh;
	background-image:url(../img/img/1083732_1.png);
	background-size:contain;
	background-repeat:no-repeat;
	padding-top:25%;
}

#intro img{
	position:absolute;
}	

#intro p#intro-title-1{
	padding-top:20px;
	display: block;
	color:#612109;
	font-size:150%;
}
#intro p#intro-title-2{
	display: block;
	color:#612109;
	text-align:center;
	font-size:220%;
}
#intro p#intro-title-3{
	display: block;
	color:#612109;
	text-align:center;
	font-size:140%;
	margin:20px auto;
}

#intro p#intro-title-4{
	display: block;
	color:#612109;
	text-align:right;
	font-size:130%;
	margin-bottom:20px;
}

@media screen and (min-width: 640px){
	#intro p#intro-title-2{
		margin: 0 auto;
		padding-top:15%;
		width:720px;
		height: 280px;
		font-size:400%;
		background-position:70px;
	}
	#intro{
		max-width: 940px;
		margin:30px auto 55px;
		padding:50px 0;
		background-size:250px 250px;
	}
	
	#intro p#intro-title-1{
		font-size:280%;
	}
	#intro p#intro-title-3{
		font-size:230%;
	}
	#intro p#intro-title-4{
		font-size:200%;
	}
}




/*global navigation
--------------------*/

#gnav{
	background: #612109;
}
#gnav ul{
	overflow: hidden;
}
#gnav li{
	float: left;
	width: 25%;
	text-align: center;
}
#gnav a{
	display: block;
	padding: 15px 0;
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	font-family: 'Pacifico', cursive;
}
#gnav a:hover{
	background: #cd853f;
}

@media screen and (min-width: 640px){
	#gnav{
		margin-bottom: 20px;
	}
}




/*menu
--------------------*/


h2{
	text-align:center;
	width:350px;
	height:50px;
	margin:20px auto;
	padding-top:30px;
	background-image:url(../img/img/1083732_4.png), url(../img/img/1083732_3.png);
	background-repeat:no-repeat, no-repeat;
	background-position:right center, left center;
	background-size:140px auto;
}

h3{	
	width:300px;
	height:50px;
	text-align:center;
	background-image:url(../img/img/1083732_4.png), url(../img/img/1083732_3.png);
	background-repeat:no-repeat, no-repeat;
	background-position:right bottom, left top;
	background-size:140px auto;
	padding-top:35px;
	margin:0 auto;
}
h3 p{
	margin-top:35px;
	margin-bottom:40px;
}
.cakecut_img{
	width:250px;
	margin:20px auto 20px;
	padding:10px 10px 10px 10px;
	background-color:#612109;
	color:#fff;
	text-align:center;
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
	border-radius: 4px;
}

img p{
	margin-top:10px;
}
	.text_l{
	padding-bottom:30px;
	text-align:left;
}

@media screen and (min-width: 640px){
	h2{
		width:600px;
		height:82px;
		font-size:200%;
		padding-top:45px;
		margin:10px auto;
		padding-top:50px;
		background-size:250px auto;

	}
	h3{
		font-size:140%;
		width:380px;
		height:100px;
		background-size:365px auto;
		padding-top:75px;
		margin:50px auto 10px;
	}
	
	.cakecut_img{
		width:350px;
		overflow:hidden;
	}
	.text_l{
		width:450px;
		margin:0 auto;
		text-align:left;
	
	}
}


#column{
	clear:both;
	text-align:center;
	margin:0 auto;
}



@media screen and (min-width: 640px){
	#cake{
		margin-right:30px;
		margin-left:30px;
		overflow: hidden;
	}
	
	.box_left{
		float:left;
		margin-left:20px;
		margin-right:20px;
	}
}

/*#column
-----------------------*/
#column{
	margin:50px auto;
	text-align:center;
}



/*footer
--------------------*/
#footer{
	background: #612109;
	color:#fff;
	padding-top:20px;
}
#footer h2{
	margin-bottom:25px;
	margin-top:10px;
}
h3.info-title{
	font-size:200%;
	color:#000;
	font-family: 'Pacifico', cursive;
	text-shadow:
		1px 1px 0 #fff,
		-1px 1px 0 #fff,
		1px -1px 0 #fff,
		-1px -1px 0 #fff;
	
	text-align:left;
	margin-top:30px;
	width:300px;
	height:120px;
	background-size:220px auto;
	padding-top:20px;
	margin:30px auto;
}

h3 .info-title-grimm{
	font-size:200%;
	font-weight:normal;
}

.shop-photo{
	text-align:center;
}

.shop-photo img{
	width:100%;
	border: #fff 5px solid;
	box-sizing:border-box;
}

.map{
	border: #fff 5px solid;
	position:relative;
	padding-bottom:57%;
}
#footer .map iframe{
	position: absolute;
	left:0;
	top:0;
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 640px){
	.map{
		float:right;
		width:48%;
		padding-bottom:31%;

	}
	.shop-photo{
		float:left;
		width:48%
	}
}
@media screen and (min-width: 830px){
	.info-title{
		float: left;
		margin-left:50px;
	}
	.info-list{
		float:left;
		margin-top:50px;
		margin-left:50px;
	}
}

.info-title{
	clear:both;
}

.info-list{
	margin-bottom: 20px;
}

.info-list dt{
	clear: left;
	float: left;
	width: 7em;
	margin-bottom: 10px;
}
.info-list dd{
	margin-bottom: 10px;
	overflow: hidden;
}

.sns{
	margin-bottom: 15px;
	text-align: center;
	clear:both;

}
.sns li{
	display: inline-block;
}
.sns a{
	display: block;
	padding: 10px 20px;
	background: #fff;
	color: #612109;
	border-radius: 5px;
	font-size:24px;
	text-decoration: none;
}
.sns a:hover{
	opacity: 0.7;
}

.copyright{
	text-align: center;
}

.pagetop{
	width: 14.0625%;
	min-width: 45px;
	position: fixed;
	right: 10px;
	bottom: 10px;
}


@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?5z8cmc');
  src:  url('fonts/icomoon.eot?5z8cmc#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?5z8cmc') format('truetype'),
    url('fonts/icomoon.woff?5z8cmc') format('woff'),
    url('fonts/icomoon.svg?5z8cmc#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-facebook2:before {
  content: "\ea91";
}
.icon-twitter:before {
  content: "\ea96";
}
.icon-pinterest:before {
  content: "\ead1";
}
