@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,700);
/* CSS reset */
/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}
*, *:before, *:after {
	/* make all elements to be sized by border */
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	-o-box-sizing:border-box;
	box-sizing:border-box;
}
*:focus {
	outline:none;
}
*::-moz-focus-inner {
	/* remove mozilla extra space from button */
	border:0;
	padding:0;
}
html, body {
	margin:0;
	padding:0;
	width:100%;
	min-height:100%;
	scroll-behavior: smooth;
	scroll-padding-top: 1rem;
}
body {
	overflow-y:scroll;
}

/* General styles */
body {
	background:url(img/page-bg.jpg) repeat 0 50% #beb3a5;
}
body, td, input, button, select, textarea {
	/* General font declaration */
	font-family:'Open Sans', Arial, Helvetica;
	font-size:16px;
	line-height:20px;
	color:#444;
}
h1 {
	font-size:30px;
	line-height:30px;
	font-weight:300;
	margin-bottom:30px;
}
h1 small {
	display:block;
	font-size:16px;
	font-weight:600;
}
h2 {
	font-size:16px;
	line-height:24px;
	font-weight:600;
	margin-bottom:10px;
}
p {
	margin-bottom:30px;
}
p.tight {
	margin-bottom:10px;
}
p small {
	font-size:13px;
	font-weight:400;
	font-style: italic;
}
p.todays-lunch {
	font-size:30px;
	font-weight:300;
	line-height:34px;
	margin-bottom:10px;
	margin-right:-20px;
}
p.todays-lunch.small {
	font-size:16px;
	font-weight:400;
	font-style:italic;
	margin-top:-10px;
}
@media screen and (max-width:479px){
	p.todays-lunch {
		font-size:25px;
		line-height:30px;
	}
	p.todays-lunch.small {
		font-size:14px;
	}
}
b {
	font-weight:600;
}

div.today-marker {
	position:absolute;
	margin:-6px 0 0 -56px;
	background:#4a6425;
	width:36px;
	height:36px;
	border-radius:50% 50% 0 50%;
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
div.today-marker:before {
	content:"";
	display:inline-block;
	background:#fff;
	border-radius:50%;
	width:16px;
	height:16px;
	margin:10px;
}
a {
	color:#c14d2a;
	text-decoration:none;
}
a:hover {
	text-decoration:underline;
}
i {
	font-style: italic;
}
header {
	display:inline-block;
	width:100%;
	height:487px;
	background:url(img/header-bg.jpg) no-repeat 50% 50% #573230;
	background-size:cover;
}
header .piken-kookki-logo {
	width:293px;
	height:148px;
	background:url(img/piken-kookki.png) no-repeat 50% 50% transparent;
	background-size:cover;
	margin:60px auto 0 auto;
}
header .piken-kookki-slogan {
	text-align:center;
	color:#fff;
	font-size:20px;
	margin:30px 0 0 0;
	text-shadow:0 0 10px rgba(0,0,0,1);
}
header .header-navbar {
	margin: 2rem auto 0 auto;
	max-width: 1000px;
	padding: 0 40px;
}
header .header-navbar nav {
	display: flex;
	justify-content: center;
	background-color: #4a6425;
}
header .header-navbar nav a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 1rem;
	background-color: #4a6425;
	color: #e6fdc6;
	font-size: 18px;
	font-weight: bold;
}
header .header-navbar nav a.selected {
	background-color: #a1c56e;
	color: #1a2709;
}
@media screen and (max-width:767px){
	header {
		height:auto;
	}
	header .piken-kookki-logo {
		width:250px;
		height:110px;
		margin:60px auto 0 auto;
	}
	header .header-navbar {
		max-width: 500px;
		padding: 20px;
	}
	header .header-navbar nav {
		flex-direction: column;
	}
	header .header-navbar nav a {
		width: 100%;
	}
	header .header-navbar nav br {
		display: none;
	}
}

div.content {
	position:relative;
	z-index:1;
	width:100%;
	max-width:1000px;
	margin:-135px auto 0 auto;
	padding:20px;
}
@media screen and (max-width:767px){
	div.content {
		margin: 0 auto 0 auto;
	}
}
@media screen and (max-width:479px){
	div.content {
		padding:20px 0px;
	}
}
div.content .col-left {
	float:left;
	width:50%;
	padding:20px;
}
div.content .col-right {
	float:right;
	width:50%;
	padding:20px;
}
@media screen and (max-width:767px){
	div.content .col-left {
		float:none;
		margin:0 auto;
		width:100%;
		max-width:500px;
		padding:0 20px;
	}
	div.content .col-right {
		float:none;
		margin:0 auto;
		width:100%;
		max-width:500px;
		padding:0 20px;
	}
}

div.content section {
	background:#ecf0e8;
	color:#4a6425;
	border:1px dashed #a1c56e;
	padding:40px;
	margin-bottom:40px;
}
div.content section.theme-2 {
	background:#f8f6ed;
	color:#54140c;
	border-color:#b6a69a;
}
div.google-map {
	margin:0 -20px -20px -20px;
}
div.google-map iframe {
	display:block;
	width:100%;
	height:300px;
}

footer {
	display:inline-block;
	width:100%;
	font-size:13px;
	text-transform:uppercase;
	color:#333;
	text-align:center;
	margin:0 0 60px 0;
}
footer a {
	color:#333;
}