/*!
Theme Name: Tachibana
Theme URI: http://faustofratelli.com/
Author: Fausto Fratelli
Author URI: https://faustofratelli.com/
Description: Custom theme for Tachibana Restaurant
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: tachibana
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Grid
# Base
	- Settings
	- Layout
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Grid
--------------------------------------------- */
/*--------------------------------------------------------------
# Flexbox Grid
--------------------------------------------------------------*/
.container,
.container-fluid {
	margin-right: auto;
	margin-left: auto;
}

.container-fluid {
	padding-right: 2rem;
	padding-left: 2rem;
}

/* ----------- ## Flex */
.wp-block-columns,
.row,
.block {
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 0;
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.wp-block-columns,
.row {
	margin-right: -1.5rem;
	margin-left: -1.5rem;
}

.row.compact {
	margin-right: -1rem;
	margin-left: -1rem;
}

.row.compact .cols {
	padding-right: 1rem;
	padding-left: 1rem;
}

.cols {
	box-sizing: border-box;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	flex-basis: 100%;
	max-width: 100%;
	padding-right: 1.5rem;
	padding-left: 1.5rem;
}

.col-xs-6 {
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
	max-width: 50%;
}

.hidden-xs {
	display: none;
}

@media only screen and (min-width: 768px) {
	.col-sm-3 {
		-ms-flex-preferred-size: 25%;
		flex-basis: 25%;
		max-width: 25%;
	}
	.col-sm-4 {
		-ms-flex-preferred-size: 33.33333333%;
		flex-basis: 33.33333333%;
		max-width: 33.33333333%;
	}
	.col-sm-5 {
		-ms-flex-preferred-size: 41.66666667%;
		flex-basis: 41.66666667%;
		max-width: 41.66666667%;
	}
	.col-sm-6 {
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.col-sm-7 {
		-ms-flex-preferred-size: 58.33333333%;
		flex-basis: 58.33333333%;
		max-width: 58.33333333%;
	}
	.col-sm-8 {
		-ms-flex-preferred-size: 66.66666667%;
		flex-basis: 66.66666667%;
		max-width: 66.66666667%;
	}
	.col-sm-9 {
		-ms-flex-preferred-size: 75%;
		flex-basis: 75%;
		max-width: 75%;
	}
	.between-sm {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.last-sm {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}
	.show-sm {
		display: block;
	}
}

@media only screen and (min-width: 1024px) {
	.col-md-2 {
		-ms-flex-preferred-size: 16.66666667%;
		flex-basis: 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-md-3 {
		-ms-flex-preferred-size: 25%;
		flex-basis: 25%;
		max-width: 25%;
	}
	.col-md-4 {
		-ms-flex-preferred-size: 33.33333333%;
		flex-basis: 33.33333333%;
		max-width: 33.33333333%;
	}
	.col-md-5 {
		-ms-flex-preferred-size: 41.66666667%;
		flex-basis: 41.66666667%;
		max-width: 41.66666667%;
	}
	.col-md-6 {
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.col-md-7 {
		-ms-flex-preferred-size: 58.33333333%;
		flex-basis: 58.33333333%;
		max-width: 58.33333333%;
	}
	.col-md-8 {
		-ms-flex-preferred-size: 66.66666667%;
		flex-basis: 66.66666667%;
		max-width: 66.66666667%;
	}
	.col-md-9 {
		-ms-flex-preferred-size: 75%;
		flex-basis: 75%;
		max-width: 75%;
	}
	.last-md {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}
}

@media only screen and (min-width: 1200px) {
	.col-lg-2 {
		-ms-flex-preferred-size: 16.66666667%;
		flex-basis: 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-lg-3 {
		-ms-flex-preferred-size: 25%;
		flex-basis: 25%;
		max-width: 25%;
	}
	.col-lg-4 {
		-ms-flex-preferred-size: 33.33333333%;
		flex-basis: 33.33333333%;
		max-width: 33.33333333%;
	}
	.col-lg-6 {
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.col-lg-12 {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}
	.last-lg {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}
	.hidden-lg {
		display: none;
	}
}

.start-xs {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	text-align: start;
}

.center-xs {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}

.end-xs {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	text-align: end;
}

.top-xs {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.middle-xs {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.bottom-xs {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.around-xs {
	-ms-flex-pack: distribute;
	justify-content: space-around;
}

.between-xs {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.first-xs {
	-webkit-box-ordinal-group: 0;
	-ms-flex-order: -1;
	order: -1;
}

.last-xs {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

body,
button,
input,
select,
optgroup,
textarea {
	color: #3c3c3c;
	font-family: "Montserrat", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	margin: 0 0 12px 0;
	color: #3c3c3c;
	line-height: 1.4em;
}

h1 {
	font-size: 26px;
}

.h2,
h2 {
	font-size: 22px;
}

.h3,
h3 {
	font-size: 22px;
}

.h4,
h4 {
	font-size: 18px;
}

.h5,
h5 {
	font-size: 17px;
}

.h6,
h6 {
	font-size: 15px;
}

p {
	margin-top: 0;
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", "courier", monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: "monaco", "consolas", "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* General Settings
--------------------------------------------- */
body {
	background: #f9f9f9;
	padding: 0;
	margin: 0;
	color: #7b7b7b;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.88857143;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

hr {
	background-color: #f5f5f5;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

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

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

a {
	color: #b7022d;
	text-decoration: none;
}

a:visited, a:hover, a:focus, a:active {
	color: #b7022d;
}

a:focus {
	outline: none;
}

a:hover, a:active {
	outline: 0;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.wp-block-button__link {
	border: 1px solid;
	border-color: #b7022d;
	background: #b7022d;
	color: #f9f9f9;
	border-radius: 0px;
	font-size: 13px;
	line-height: 21px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	height: 47px;
	font-weight: 500;
	padding: 12px 30px;
	min-width: 120px;
	cursor: pointer;
	display: inline-block;
	transition: all 0.3s ease;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover {
	border-color: #a80229;
	background: #a80229;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus,
.wp-block-button__link:active,
.wp-block-button__link:focus {
	border-color: #a80229;
	background: #a80229;
	outline: none;
}

button.has-default-background-color,
input[type="button"].has-default-background-color,
input[type="reset"].has-default-background-color,
input[type="submit"].has-default-background-color,
.wp-block-button__link.has-default-background-color {
	border-color: #3c3c3c;
}

button.has-default-background-color:hover, button.has-default-background-color:active, button.has-default-background-color:focus,
input[type="button"].has-default-background-color:hover,
input[type="button"].has-default-background-color:active,
input[type="button"].has-default-background-color:focus,
input[type="reset"].has-default-background-color:hover,
input[type="reset"].has-default-background-color:active,
input[type="reset"].has-default-background-color:focus,
input[type="submit"].has-default-background-color:hover,
input[type="submit"].has-default-background-color:active,
input[type="submit"].has-default-background-color:focus,
.wp-block-button__link.has-default-background-color:hover,
.wp-block-button__link.has-default-background-color:active,
.wp-block-button__link.has-default-background-color:focus {
	border-color: #343434;
	background: #343434;
}

button.has-light-yellow-background-color,
input[type="button"].has-light-yellow-background-color,
input[type="reset"].has-light-yellow-background-color,
input[type="submit"].has-light-yellow-background-color,
.wp-block-button__link.has-light-yellow-background-color {
	border-color: #fff7e8;
	color: #3c3c3c;
}

button.has-light-yellow-background-color:hover, button.has-light-yellow-background-color:active, button.has-light-yellow-background-color:focus,
input[type="button"].has-light-yellow-background-color:hover,
input[type="button"].has-light-yellow-background-color:active,
input[type="button"].has-light-yellow-background-color:focus,
input[type="reset"].has-light-yellow-background-color:hover,
input[type="reset"].has-light-yellow-background-color:active,
input[type="reset"].has-light-yellow-background-color:focus,
input[type="submit"].has-light-yellow-background-color:hover,
input[type="submit"].has-light-yellow-background-color:active,
input[type="submit"].has-light-yellow-background-color:focus,
.wp-block-button__link.has-light-yellow-background-color:hover,
.wp-block-button__link.has-light-yellow-background-color:active,
.wp-block-button__link.has-light-yellow-background-color:focus {
	color: #3c3c3c;
	border-color: #fff2d9;
	background: #fff2d9;
}

button.has-light-gray-background-color,
input[type="button"].has-light-gray-background-color,
input[type="reset"].has-light-gray-background-color,
input[type="submit"].has-light-gray-background-color,
.wp-block-button__link.has-light-gray-background-color {
	border-color: #8a8a8a;
}

button.has-light-gray-background-color:hover, button.has-light-gray-background-color:active, button.has-light-gray-background-color:focus,
input[type="button"].has-light-gray-background-color:hover,
input[type="button"].has-light-gray-background-color:active,
input[type="button"].has-light-gray-background-color:focus,
input[type="reset"].has-light-gray-background-color:hover,
input[type="reset"].has-light-gray-background-color:active,
input[type="reset"].has-light-gray-background-color:focus,
input[type="submit"].has-light-gray-background-color:hover,
input[type="submit"].has-light-gray-background-color:active,
input[type="submit"].has-light-gray-background-color:focus,
.wp-block-button__link.has-light-gray-background-color:hover,
.wp-block-button__link.has-light-gray-background-color:active,
.wp-block-button__link.has-light-gray-background-color:focus {
	border-color: #828282;
	background: #828282;
}

button.has-white-background-color,
input[type="button"].has-white-background-color,
input[type="reset"].has-white-background-color,
input[type="submit"].has-white-background-color,
.wp-block-button__link.has-white-background-color {
	border-color: #f9f9f9;
	color: #3c3c3c;
}

button.has-white-background-color:hover, button.has-white-background-color:active, button.has-white-background-color:focus,
input[type="button"].has-white-background-color:hover,
input[type="button"].has-white-background-color:active,
input[type="button"].has-white-background-color:focus,
input[type="reset"].has-white-background-color:hover,
input[type="reset"].has-white-background-color:active,
input[type="reset"].has-white-background-color:focus,
input[type="submit"].has-white-background-color:hover,
input[type="submit"].has-white-background-color:active,
input[type="submit"].has-white-background-color:focus,
.wp-block-button__link.has-white-background-color:hover,
.wp-block-button__link.has-white-background-color:active,
.wp-block-button__link.has-white-background-color:focus {
	color: #3c3c3c;
	border-color: #f1f1f1;
	background: #f1f1f1;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link,
.is-style-outline > .wp-block-button__link {
	border: 1px solid;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-primary-color,
.is-style-outline > .wp-block-button__link.has-primary-color {
	color: #b7022d;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-primary-color:hover,
.is-style-outline > .wp-block-button__link.has-primary-color:hover {
	color: #850121;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-light-gray-color,
.is-style-outline > .wp-block-button__link.has-light-gray-color {
	color: #8a8a8a;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-light-gray-color:hover,
.is-style-outline > .wp-block-button__link.has-light-gray-color:hover {
	color: #8a8a8a;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-light-yellow-color,
.is-style-outline > .wp-block-button__link.has-light-yellow-color {
	color: #fff7e8;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-light-yellow-color:hover,
.is-style-outline > .wp-block-button__link.has-light-yellow-color:hover {
	color: #fff7e8;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-default-color,
.is-style-outline > .wp-block-button__link.has-default-color {
	color: #3c3c3c;
}

.wp-block-button__link.is-style-outline > .wp-block-button__link.has-default-color:hover,
.is-style-outline > .wp-block-button__link.has-default-color:hover {
	color: #3c3c3c;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	font-size: 14px;
	font-style: italic;
	color: #3c3c3c;
	background-color: #f5f5f5;
	border: 1px solid #f5f5f5;
	width: 100%;
	max-width: 100%;
	padding: 12px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
	outline: none;
	background-color: #eee;
	border-color: #eee;
}

::-webkit-input-placeholder {
	color: #ccc;
	font-size: 14px;
}

:-ms-input-placeholder {
	color: #ccc;
	font-size: 14px;
}

::placeholder {
	color: #ccc;
	font-size: 14px;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

.overflow-h {
	overflow: hidden;
}

/*--------------------------------------------------------------
# Color Palette
--------------------------------------------------------------*/
.has-default-color {
	color: #3c3c3c;
}

.has-default-color h1,
.has-default-color h2,
.has-default-color h3,
.has-default-color h4,
.has-default-color h5,
.has-default-color h6 {
	color: #3c3c3c;
}

.has-primary-color {
	color: #b7022d;
}

.has-primary-color h1,
.has-primary-color h2,
.has-primary-color h3,
.has-primary-color h4,
.has-primary-color h5,
.has-primary-color h6 {
	color: #b7022d;
}

.has-white-color {
	color: #f9f9f9;
}

.has-white-color h1,
.has-white-color h2,
.has-white-color h3,
.has-white-color h4,
.has-white-color h5,
.has-white-color h6,
.has-white-color a,
.has-white-color .cmn-link a,
.has-white-color .cmn-label {
	color: #f9f9f9;
}

.has-white-color .cmn-link:before {
	background-color: #f9f9f9;
}

.has-light-yellow-color {
	color: #fff7e8;
}

.has-light-yellow-color h1,
.has-light-yellow-color h2,
.has-light-yellow-color h3,
.has-light-yellow-color h4,
.has-light-yellow-color h5,
.has-light-yellow-color h6,
.has-light-yellow-color a,
.has-light-yellow-color .cmn-link a,
.has-light-yellow-color .cmn-label {
	color: #fff7e8;
}

.has-light-yellow-color .cmn-link:before {
	background-color: #fff7e8;
}

.has-light-gray-color {
	color: #8a8a8a;
}

.has-light-gray-color h1,
.has-light-gray-color h2,
.has-light-gray-color h3,
.has-light-gray-color h4,
.has-light-gray-color h5,
.has-light-gray-color h6 {
	color: #8a8a8a;
}

section.has-default-background-color,
section.has-primary-background-color,
section.has-light-yellow-background-color,
section.has-light-gray-background-color {
	position: relative;
	overflow: hidden;
}

section.has-default-background-color .wrapper,
section.has-primary-background-color .wrapper,
section.has-light-yellow-background-color .wrapper,
section.has-light-gray-background-color .wrapper {
	z-index: 9;
}

@media screen and (min-width: 992px) {
	section.has-default-background-color,
	section.has-primary-background-color,
	section.has-light-yellow-background-color,
	section.has-light-gray-background-color {
		padding: 140px 0 !important;
	}
}

.has-default-background-color {
	background-color: #3c3c3c;
}

.has-default-background-color .backgrid .f0 {
	background-color: #484848;
}

.has-primary-background-color {
	background-color: #b7022d;
}

.has-primary-background-color .backgrid .f0 {
	background-color: #da1644;
}

.has-light-yellow-background-color {
	background-color: #fff7e8;
}

.has-light-yellow-background-color .backgrid .f0 {
	background-color: #fdf1da;
}

.has-light-gray-background-color {
	background-color: #8a8a8a;
}

/*--------------------------------------------------------------
# Custom Classes
--------------------------------------------------------------*/
.underlined {
	position: relative;
}

.underlined:after {
	content: "";
	position: absolute;
	bottom: -2px;
	right: 0;
	left: auto;
	height: 2px;
	z-index: 1;
	width: 0;
	background-color: #b7022d;
	-moz-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.underlined.active:after, .underlined:hover:after {
	width: 100%;
	right: auto;
	left: 0;
}

.alt_font {
	font-family: "Eagle Lake", cursive;
}

.alt_jp {
	font-family: "Noto Serif JP", serif;
}

.no-marg {
	margin: 0 0 4px;
}

.uppercase {
	text-transform: uppercase;
}

.contact-line {
	position: relative;
	padding-left: 30px;
	font-size: 14px;
	margin-bottom: 12px;
	display: inline-block;
	margin-right: 16px;
}

.contact-line a {
	color: #3c3c3c;
	font-weight: 500;
}

.contact-line svg {
	position: absolute;
	top: 2px;
	left: 0;
	width: 20px !important;
}

/* General Layout
--------------------------------------------- */
.main__root {
	width: 100%;
	position: relative;
}

.content {
	position: relative;
	padding-top: 0px;
	overflow: hidden;
}

.wrapper {
	width: 100%;
	max-width: 1380px;
	margin: 0 auto;
	padding: 0 24px;
	position: relative;
}

.cmn__section {
	padding: 80px 0;
}

.cmn__section.full .wrapper {
	padding: 0;
	max-width: 100%;
}

.cmn__section.with_image {
	position: relative;
	background-size: cover;
	background-position: 50% 50%;
	padding: 140px 0;
}

.cmn__section.with_image:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.55);
}

.cmn__section.with_image .wrapper {
	position: relative;
	z-index: 9;
}

#main__content,
#main__sidebar {
	box-sizing: border-box;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	max-width: 100%;
}

.blog #main__content:not(.has_sidebar),
.single-post #main__content:not(.has_sidebar),
.single-dish #main__content:not(.has_sidebar) {
	max-width: 1020px;
	margin: 0 auto;
}

#main__sidebar {
	max-width: 640px;
	margin: 100px auto 0;
}

#main__sidebar .widget:before, #main__sidebar .widget:after {
	content: "";
	display: table;
}

#main__sidebar .widget:after {
	clear: both;
}

#main__sidebar .social_widget {
	margin-top: 26px;
}

.boxed {
	margin: 0 auto;
	max-width: 780px;
}

.backgrid {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: 100%;
	max-width: 1380px;
	margin: 0 auto;
	padding: 0 12px;
	z-index: 1;
}

.backgrid .f0 {
	width: 1px;
	background-color: #f5f5f5;
	height: 100%;
}

.site__main {
	position: relative;
	z-index: 6;
}

@media screen and (min-width: 620px) {
	.wrapper {
		padding: 0 34px;
	}
}

@media screen and (min-width: 992px) {
	.cmn__section {
		padding: 90px 0;
	}
}

@media screen and (min-width: 1024px) {
	#main__content.has_sidebar {
		-ms-flex-preferred-size: 73%;
		flex-basis: 73%;
		max-width: 73%;
		padding-right: 30px;
	}
	#main__sidebar {
		margin: 0;
		-ms-flex-preferred-size: 27%;
		flex-basis: 27%;
		max-width: 27%;
		padding-left: 30px;
	}
}

@media only screen and (min-width: 1200px) {
	#main__content.has_sidebar {
		-ms-flex-preferred-size: 76%;
		flex-basis: 76%;
		max-width: 76%;
	}
	#main__sidebar {
		-ms-flex-preferred-size: 24%;
		flex-basis: 24%;
		max-width: 24%;
	}
}

/* Loading
--------------------------------------------- */
.loading {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #f5f5f5;
	overflow: hidden;
	z-index: 999;
	color: #1b1b1b;
	transition: all 0.28s ease-in;
	transition-delay: 0.15s;
}

.loading .centered {
	text-align: center;
	max-width: 500px;
	padding: 54px 40px;
	width: calc(100% - 20px);
	margin: 0 auto;
	position: absolute;
	left: 50%;
	top: 50%;
	transition: all 0.3s ease-in;
	transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
	.loading .centered {
		padding: 60px;
	}
}

.loading .centered .pattern > span {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.loading .centered .pattern > span,
.loading .centered .pattern > span:before,
.loading .centered .pattern > span:after {
	content: "";
	position: absolute;
}

.loading .centered .pattern > span:before,
.loading .centered .pattern > span:after {
	background: #1b1b1b;
	transition: all 0.6s ease;
}

.loading .centered .pattern > span:first-child:before, .loading .centered .pattern > span:first-child:after {
	top: 0;
	left: 0;
}

.loading .centered .pattern > span:first-child:before {
	width: 2px;
	height: 100%;
	transition-delay: 0.2s;
}

.loading .centered .pattern > span:first-child:after {
	width: 100%;
	height: 2px;
}

.loading .centered .pattern > span:last-child:before, .loading .centered .pattern > span:last-child:after {
	bottom: 0;
	right: 0;
}

.loading .centered .pattern > span:last-child:before {
	width: 2px;
	height: 100%;
	transition-delay: 0.2s;
}

.loading .centered .pattern > span:last-child:after {
	width: 100%;
	height: 2px;
	transition-delay: 0.4s;
}

.loading .logo {
	transition: all 0.8s ease;
	transition-delay: 0.1s;
}

.loading .logo svg {
	display: block;
	margin: 0 auto;
}

.loading .logo svg.logo_short {
	width: 110px;
}

.loading .title {
	text-transform: uppercase;
	margin-bottom: 18px;
	font-weight: 400;
	font-size: 15px;
	letter-spacing: 0.12em;
	overflow: hidden;
	height: 30px;
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
	padding: 0 20px;
	background-color: #f5f5f5;
	z-index: 1;
}

.loading .title span {
	display: block;
	transition: all 0.6s ease;
	transition-delay: 0.2s;
}

.loading.out {
	bottom: -20%;
	height: 0;
}

.loading.out .centered {
	opacity: 0;
	transform: translate(-50%, -10%);
}

.loading.in .centered .pattern > span:first-child:before,
.loading.in .centered .pattern > span:last-child:before {
	height: 0;
}

.loading.in .centered .pattern > span:first-child:after,
.loading.in .centered .pattern > span:last-child:after {
	width: 0;
}

.loading.in .title span {
	transform: translateY(100%);
}

.loading.in .logo {
	transform: translateY(10%);
	opacity: 0;
}

@media screen and (min-width: 1024px) {
	h1 {
		font-size: 34px;
	}
	h2 {
		font-size: 28px;
	}
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
.admin-bar .header {
	top: 46px;
}

.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99;
	bottom: auto;
	transition: all 0.3s ease;
}

.header > .wrapper {
	z-index: 20;
	max-width: 100%;
}

.header .inner-block {
	transition: all 0.3s ease;
	height: 80px;
}

.header .logo {
	width: 200px;
	transition: all 0.3s ease;
}

.header .logo a {
	display: block;
	font-size: 22px;
	font-weight: 500;
	color: #3c3c3c;
}

.header .logo a svg,
.header .logo a img {
	display: block;
}

.header .social_widget a {
	color: #3c3c3c;
}

.header .wp-block-button__link {
	display: none;
	height: 46px;
	line-height: 22px;
	padding: 10px 22px 10px 18px;
	font-weight: 600;
	font-size: 12px;
}

.header .wp-block-button__link svg {
	width: 22px;
	margin-right: 8px;
}

.header .wp-block-button__link span,
.header .wp-block-button__link svg {
	vertical-align: middle;
	display: inline-block;
}

.scroll.header {
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
	background-color: #f9f9f9;
}

.scroll.header .inner-block {
	height: 70px;
}

.has-second-nav .scroll.header {
	box-shadow: none;
}

.menu-block {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	line-height: 1;
	align-items: center;
}

.menu-top {
	display: none;
}

.menu-top .social_widget {
	margin-left: 40px;
}

.main_nav ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main_nav ul li {
	display: inline-block;
	position: relative;
	margin-left: 32px;
}

.main_nav ul li:first-child {
	margin-left: 0;
}

.main_nav ul li a {
	display: block;
	text-decoration: none;
	color: #3c3c3c;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 0.06em;
	position: relative;
}

.main_nav ul li a:after {
	content: "";
	position: absolute;
	bottom: -2px;
	right: 0;
	left: auto;
	height: 2px;
	z-index: 1;
	width: 0;
	background-color: #b7022d;
	-moz-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main_nav ul li a.active:after, .main_nav ul li a:hover:after {
	width: 100%;
	right: auto;
	left: 0;
}

.main_nav ul li a span {
	position: relative;
	z-index: 2;
}

.main_nav ul li.current-menu-item a:after {
	width: 100%;
	right: auto;
	left: 0;
}

.main_nav ul li:hover > ul,
.main_nav ul li.focus > ul {
	left: auto;
}

.main_nav ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main_nav ul ul li:hover > ul,
.main_nav ul ul li.focus > ul {
	left: 100%;
}

.main_nav ul ul a {
	width: 200px;
}

.main_nav ul ul ul {
	left: -999em;
	top: 0;
}

.light:not(.scroll) .main_nav ul li a,
.light:not(.scroll) .logo a {
	color: #f9f9f9;
}

.light:not(.scroll) .menu_toggle span {
	background-color: #f9f9f9;
}

@media screen and (min-width: 560px) {
	.header .wp-block-button__link {
		display: block;
	}
}

@media screen and (min-width: 783px) {
	.admin-bar .header {
		top: 32px;
	}
}

@media screen and (min-width: 1024px) {
	.header {
		padding: 10px 0;
	}
	.header .logo {
		width: 220px;
		margin-right: 50px;
	}
	.main_nav ul li {
		margin-left: 48px;
	}
}

@media screen and (min-width: 1200px) {
	.header {
		padding: 10px 0;
		box-shadow: none;
		background-color: transparent;
	}
	.menu-top {
		display: block;
	}
}

@media screen and (min-width: 1280px) {
	.header .logo {
		margin-right: 80px;
	}
	.main_nav ul li {
		margin-left: 54px;
	}
}

/* Header Toggle Mobile Menu */
.menu_toggle {
	display: block;
	cursor: pointer;
	position: relative;
	height: 24px;
	width: 24px;
	margin-left: 40px;
}

.menu_toggle .hamb,
.menu_toggle .close {
	transition: all 0.2s ease;
}

.menu_toggle .hamb span,
.menu_toggle .close span {
	position: absolute;
	width: 24px;
	height: 2px;
	display: block;
}

.menu_toggle .hamb span {
	top: 9px;
	left: 0;
	background-color: #3c3c3c;
	margin: 3px 0;
	transition: all 0.3s ease;
}

.menu_toggle .hamb span:first-child {
	top: 3px;
}

.menu_toggle .hamb span:last-child {
	top: 15px;
	width: 15px;
}

.menu_toggle:hover .hamb span:first-child {
	width: 12px;
	left: 12px;
}

.menu_toggle:hover .hamb span:last-child {
	width: 12px;
}

.menu_toggle .close {
	transform: scale(1.2);
	opacity: 0;
}

.menu_toggle .close span {
	transform-origin: right;
	transform: rotate(45deg);
	top: 18px;
	right: 4px;
	left: -4px;
	background-color: #f9f9f9;
}

.menu_toggle .close span:last-child {
	transform: rotate(-45deg);
	top: 1px;
	right: 4px;
	width: 24px;
}

.menu_toggle.open .hamb {
	transform: scale(0.6);
	opacity: 0;
}

.menu_toggle.open .close {
	transform: scale(1);
	opacity: 1;
}

/* Mobile Menu */
.mobile_menu {
	display: block;
	position: fixed;
	color: #f9f9f9;
	bottom: 0;
	right: -20%;
	width: 50%;
	height: 100%;
	background-color: rgba(17, 17, 17, 0.98);
	z-index: 9;
	padding-top: 140px;
	padding-bottom: 24px;
	overflow-x: hidden;
	overflow-y: scroll;
	transition: all 0.38s ease;
	visibility: hidden;
	opacity: 0;
}

.mobile_menu .wrapper {
	min-width: 100vw;
}

.mobile_menu .main_nav li {
	display: block;
	margin: 0 0 36px 0;
}

.mobile_menu .main_nav li a {
	text-transform: none;
	display: inline-block;
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
}

@media screen and (min-width: 768px) {
	.mobile_menu .main_nav li a {
		font-size: 16px;
	}
}

.mobile_menu .social_widget h3 {
	margin-right: 0;
}

.mobile_menu .social_widget a {
	margin-left: 24px;
	margin-right: 0;
	color: #f9f9f9;
}

.mobile_menu .widget {
	margin-bottom: 80px;
	font-size: 14px;
	font-weight: 500;
}

.mobile_menu .widget .widget-title {
	color: #f9f9f9;
}

@media screen and (min-width: 768px) {
	.mobile_menu {
		width: 100%;
		height: 80%;
		bottom: -10%;
		right: 0;
	}
}

.full_menu_cover {
	height: calc(100vh - 230px);
	min-height: 480px;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	margin-bottom: 24px;
	position: relative;
	padding: 40px;
	text-align: center;
	color: #f9f9f9;
}

.full_menu_cover:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.55);
}

.full_menu_cover:before {
	background-color: rgba(0, 0, 0, 0.6);
}

.full_menu_cover:after {
	content: "";
	position: absolute;
	top: -10px;
	left: -10px;
	right: -10px;
	bottom: -10px;
	border: 1px solid #f9f9f9;
	opacity: 0.1;
	z-index: -1;
}

.full_menu_cover .box_inner {
	position: relative;
	z-index: 1;
	height: 100%;
}

.full_menu_cover .box_title {
	position: relative;
	max-width: 600px;
	padding: 50px 0;
	margin: 0 auto 40px;
	border: 2px solid rgba(249, 249, 249, 0.7);
	border-top-color: transparent;
	border-radius: 1px;
	color: #f9f9f9;
	text-transform: uppercase;
}

.full_menu_cover .box_title > .logo_short {
	position: absolute;
	top: -35px;
	left: 50%;
	width: 70px;
	margin-left: -35px;
	z-index: 10;
}

.full_menu_cover .box_title h2 {
	font-family: "Eagle Lake", cursive;
	color: #f9f9f9;
	font-size: 40px;
	font-weight: 500;
	margin: 0;
}

.full_menu_cover .box_title .subtitle {
	font-family: "Eagle Lake", cursive;
	font-size: 14px;
	text-transform: capitalize;
}

.full_menu_cover .box_title .where {
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.09em;
	margin: 26px 0 0;
}

.full_menu_cover .box_title:before, .full_menu_cover .box_title:after {
	content: "";
	position: absolute;
	top: -2px;
	border-top: 2px solid rgba(249, 249, 249, 0.7);
	width: calc(50% - 44px);
}

.full_menu_cover .box_title:before {
	left: -1px;
}

.full_menu_cover .box_title:after {
	right: -1px;
}

.full_menu_cover .box_text {
	position: relative;
	display: inline-block;
	max-width: 600px;
	color: #f9f9f9;
	font-style: italic;
	font-size: 26px;
	font-weight: 600;
	line-height: 36px;
	text-transform: uppercase;
}

.full_menu_cover .box_text:before, .full_menu_cover .box_text:after {
	content: "";
	position: absolute;
	top: 50%;
	margin-top: -2px;
	width: 8px;
	height: 8px;
	background: #f9f9f9;
	transform: rotate(45deg);
}

.full_menu_cover .box_text:before {
	left: -30px;
}

.full_menu_cover .box_text:after {
	right: -30px;
}

.full_menu_cover .open_on {
	max-width: 340px;
	font-weight: 600;
	font-size: 14px;
	margin: 16px auto 0;
}

.full_menu_cover .open_on > span {
	text-transform: uppercase;
	position: relative;
}

.full_menu_cover .open_on > span:before, .full_menu_cover .open_on > span:after {
	content: "";
	position: absolute;
	top: 50%;
	margin-top: -2px;
	width: 6px;
	height: 6px;
	border: 1px solid #f9f9f9;
	transform: rotate(45deg);
}

.full_menu_cover .open_on > span:before {
	left: -16px;
}

.full_menu_cover .open_on > span:after {
	right: -16px;
}

.full_menu_footer {
	margin-top: 10px;
}

.full_menu_footer .contact_info a {
	display: block;
	margin-bottom: 20px;
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 600;
	color: #f9f9f9;
}

.full_menu_footer .contact_info a svg {
	width: 19px;
	margin-right: 5px;
}

.full_menu_footer .contact_info a svg,
.full_menu_footer .contact_info a span {
	vertical-align: middle;
	display: inline-block;
}

.menu_open {
	overflow: hidden;
}

.menu_open .menu_toggle span {
	background-color: #f9f9f9;
}

.menu_open .mobile_menu {
	width: 100%;
	right: 0;
	visibility: visible;
	opacity: 1;
}

@media screen and (min-width: 768px) {
	.menu_open .mobile_menu {
		bottom: 0;
		height: 100%;
	}
}

.menu_open .header .logo a,
.menu_open .header .main_nav ul li a {
	color: #f9f9f9;
	transition: all 0.3s ease;
	transition-delay: 0.23s;
}

@media screen and (min-width: 768px) {
	.full_menu_footer > div {
		display: inline-block;
		vertical-align: middle;
	}
	.full_menu_footer .contact_info a {
		font-size: 11px;
		margin-right: 20px;
		margin-bottom: 0;
		display: inline-block;
		vertical-align: middle;
	}
	.full_menu_footer .contact_info a.tel, .full_menu_footer .contact_info a.email {
		display: none;
	}
	.full_menu_footer .social_widget {
		float: right;
	}
	.mobile_menu .social_widget h3 {
		display: none;
	}
}

@media screen and (min-width: 992px) {
	.mobile_menu .social_widget h3 {
		display: inline-block;
	}
	.full_menu_footer .contact_info a {
		font-size: 12px;
	}
}

.cmn-link,
.cmn-label {
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.cmn-label {
	display: block;
	color: #8a8a8a;
	margin-bottom: 12px;
}

.cmn-link {
	font-weight: 600;
	position: relative;
}

.cmn-link a {
	display: inline-block;
	vertical-align: middle;
	color: #3c3c3c;
	transition: all 0.4s ease;
	padding-left: 50px;
}

.cmn-link a:before {
	content: "";
	position: absolute;
	top: 10px;
	left: 0;
	width: 40px;
	height: 3px;
	background-color: #b7022d;
	transition: all 0.4s ease;
}

.cmn-link a:hover {
	padding-left: 56px;
}

.cmn-link a:hover:before {
	left: 0;
	width: 37px;
}

.double-image {
	position: relative;
	max-width: 300px;
	margin: 30px auto 0;
	transform: translateX(-40px);
}

.double-image figure img {
	display: block;
}

.double-image figure:nth-child(2) {
	position: absolute;
	top: 100px;
	right: -85px;
	border: 10px solid #f9f9f9;
	max-width: 300px;
}

@media screen and (min-width: 768px) {
	.double-image figure:nth-child(2) {
		max-width: 260px;
	}
}

@media screen and (min-width: 992px) {
	.double-image figure:nth-child(2) {
		right: -110px;
		max-width: 280px;
	}
}

@media screen and (min-width: 1024px) {
	.double-image figure:nth-child(2) {
		right: -140px;
		max-width: 320px;
	}
}

@media screen and (min-width: 1200px) {
	.double-image figure:nth-child(2) {
		max-width: 340px;
		right: -180px;
		top: 100px;
	}
}

@media screen and (min-width: 1280px) {
	.double-image figure:nth-child(2) {
		max-width: 380px;
	}
}

.double-image.variant figure:first-child {
	margin-top: 140px;
}

.double-image.variant figure:nth-child(2) {
	top: -100px;
}

@media screen and (min-width: 768px) {
	.double-image.variant figure:nth-child(2) {
		top: -80px;
	}
}

@media screen and (min-width: 768px) {
	.double-image {
		max-width: 250px;
		margin: 0;
		transform: none;
	}
}

@media screen and (min-width: 992px) {
	.double-image {
		max-width: 280px;
	}
}

@media screen and (min-width: 1024px) {
	.double-image {
		max-width: 340px;
	}
}

@media screen and (min-width: 1280px) {
	.double-image {
		margin-left: 30px;
		max-width: 400px;
	}
}

.review-box {
	position: relative;
	padding: 48px 20px 20px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.08);
	border-radius: 3px;
	background: #f9f9f9;
	margin-bottom: 24px;
}

.review-box svg {
	width: 70px;
	display: block;
	position: absolute;
	top: -8px;
	left: 20px;
}

.review-box svg path {
	fill: #ffc91c;
}

.review-box h3 {
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 4px;
}

.review-box p {
	margin: 0;
	font-size: 13px;
	min-height: 55px;
}

.review-box label {
	display: block;
	font-size: 12px;
	font-weight: 500;
	font-style: italic;
	margin-top: 16px;
}

.hero_section {
	-webkit-background-size: cover;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	position: relative;
}

.hero_section.has_image {
	color: #f9f9f9;
}

.hero_section.has_image:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.55);
}

.hero_section.has_image h1,
.hero_section.has_image h2,
.hero_section.has_image .page-desc,
.hero_section.has_image .page-label {
	color: #f9f9f9;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}

.hero_section .wrapper {
	min-height: 400px;
	padding-top: 180px;
	padding-bottom: 180px;
}

.hero_section .page-label {
	margin-bottom: 12px;
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.05em;
}

.hero_section .page-title {
	margin: 0;
	line-height: 1;
	font-size: 28px;
	font-family: "Eagle Lake", cursive;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.hero_section .page-title.small {
	font-size: 26px;
}

.hero_section .page-desc {
	font-size: 15px;
	line-height: 26px;
	margin: 16px 0 0;
	font-weight: 500;
	font-style: italic;
}

.hero_section h2 {
	font-family: "Noto Serif JP", serif;
	font-size: 25px;
	font-weight: 600;
	margin-bottom: 14px;
}

.hero_section .entry-action {
	margin-top: 20px;
}

.hero_section .cat-links {
	margin-bottom: 8px;
	display: inline-block;
}

.hero_section .cat-links a {
	font-size: 13px;
}

.hero_section.hero_home .page-title {
	line-height: 48px;
}

@media screen and (min-width: 768px) {
	.hero_section.hero_home .page-title {
		font-size: 32px;
	}
}

.hero_section.hero_home .wrapper {
	z-index: 9;
}

.hero_section.hero_restaurant .wrapper > div {
	position: relative;
	width: 100%;
	max-width: 700px;
	padding: 60px 40px 30px;
	margin: 0 auto;
	border: 2px solid #f9f9f9;
	border-top-color: transparent;
}

.hero_section.hero_restaurant .wrapper > div:before, .hero_section.hero_restaurant .wrapper > div:after {
	content: "";
	position: absolute;
	top: -2px;
	border-top: 2px solid #f9f9f9;
	width: calc(50% - 44px);
}

.hero_section.hero_restaurant .wrapper > div:before {
	left: -1px;
}

.hero_section.hero_restaurant .wrapper > div:after {
	right: -1px;
}

@media screen and (min-width: 1024px) {
	.hero_section.hero_restaurant .wrapper {
		height: 620px;
	}
}

.hero_section.hero_restaurant .page-desc {
	font-style: inherit;
	font-size: 13px;
	font-weight: 600;
	margin-top: 40px;
	letter-spacing: 0.2em;
}

.hero_section.hero_restaurant .place_number {
	position: absolute;
	width: 50px;
	height: 50px;
	left: 50%;
	top: -25px;
	margin-left: -25px;
	border: 2px solid #f9f9f9;
	font-weight: 600;
	transform: rotate(45deg);
	z-index: 10;
}

.hero_section.hero_restaurant .place_number span {
	transform: rotate(-45deg);
	display: inline-block;
	width: 100%;
	text-align: center;
	margin-top: 8px;
}

.blog .hero_section {
	margin-bottom: 0 0 30px;
}

.search .hero_section .wrapper,
.archive .hero_section .wrapper {
	height: auto;
	padding-top: 240px;
	padding-bottom: 100px;
}

.single-post .hero_section {
	margin-bottom: 140px;
}

.single-post .hero_section .wrapper {
	height: 0;
	min-height: auto;
	padding-top: 0;
	padding-bottom: 0;
}

.entry_header_standard {
	margin-bottom: 40px;
}

.entry_header_standard .date,
.hero_section .date {
	margin-top: 16px;
	font-size: 13px;
	font-weight: 600;
}

.entry_header_standard .date > span,
.hero_section .date > span {
	display: inline-block;
	margin-right: 12px;
}

.entry_header_standard .date a,
.hero_section .date a {
	color: #3c3c3c;
}

.sticky {
	display: block;
}

@media screen and (min-width: 1024px) {
	.hero_section {
		margin-bottom: 40px;
	}
	.hero_section .wrapper {
		min-height: 600px;
		height: 500px;
		padding-top: 120px;
		padding-bottom: 120px;
	}
	.hero_section .page-label {
		font-size: 13px;
	}
	.hero_section .page-title {
		font-size: 36px;
	}
	.hero_section .page-title.small {
		font-size: 26px;
	}
	.hero_section .page-desc {
		font-size: 17px;
		line-height: 30px;
	}
	.admin-bar .hero_section.hero_home .wrapper {
		height: calc(100vh - 32px);
	}
	.hero_section.hero_home .wrapper {
		height: 100vh;
	}
	.hero_section.hero_home .wrapper > div {
		max-width: 660px;
	}
	.hero_section.hero_home .page-title {
		line-height: 64px;
		font-size: 38px;
	}
	.hero_section.hero_home h2 {
		line-height: 36px;
		font-size: 28px;
	}
}

.page-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

article.post {
	position: relative;
	margin-bottom: 100px;
}

.post_thumbnail {
	margin-bottom: 20px;
}

.post_thumbnail img {
	display: block;
	width: 100%;
}

.post_thumbnail,
.post_thumb a {
	display: block;
	overflow: hidden;
	border-radius: 3px;
}

.post_thumb img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	display: block;
}

.post_inner {
	overflow: auto;
}

.post_inner.pushed {
	font-size: 14px;
	min-height: 215px;
}

.post_inner:after {
	content: "";
	clear: both;
	display: table;
}

.entry-header {
	font-size: 13px;
}

.entry-header .entry-title {
	margin-top: 8px;
	font-size: 28px;
}

.entry-header .cat {
	font-size: 11px;
	text-transform: uppercase;
	font-weight: 600;
	margin-bottom: 18px;
	line-height: 1;
	opacity: 0.5;
}

.entry-footer {
	padding-top: 12px;
	margin-top: 10px;
	font-size: 12px;
}

.entry-footer .tags {
	margin-top: 48px;
}

.entry-footer .tags .icon {
	width: 22px;
	height: 22px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}

.entry-footer .tags span {
	font-size: 12px;
	display: inline-block;
	padding: 2px 10px;
	border-radius: 20px;
	background-color: #f7f7f7;
	margin-right: 3px;
}

.entry-header a,
.entry-footer a {
	color: #3c3c3c;
	transition: all 0.3s ease;
}

.entry-header a:hover, .entry-header a:focus,
.entry-footer a:hover,
.entry-footer a:focus {
	color: #b7022d;
}

.entry-header > span,
.entry-footer > span {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	font-weight: 600;
	font-size: 12px;
}

.entry-header > span:last-child,
.entry-footer > span:last-child {
	margin-right: 0;
}

.cat-links,
.cat-links a {
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 600;
	color: #b7022d;
}

.tags-links:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
	width: 16px;
	height: 16px;
	background-size: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' viewBox='0 0 486.982 486.982' style='enable-background:new 0 0 486.982 486.982;' xml:space='preserve'%3E%3Cg%3E%3Cpath fill='%233c3c3c' d='M131.35,422.969c14.6,14.6,38.3,14.6,52.9,0l181.1-181.1c5.2-5.2,9.2-11.4,11.8-18c18.2,5.1,35.9,7.8,51.5,7.7 c38.6-0.2,51.4-17.1,55.6-27.2c4.2-10,7.2-31-19.9-58.6c-0.3-0.3-0.6-0.6-0.9-0.9c-16.8-16.8-41.2-32.3-68.9-43.8 c-5.1-2.1-10.2-4-15.2-5.8v-0.3c-0.3-22.2-18.2-40.1-40.4-40.4l-108.5-1.5c-14.4-0.2-28.2,5.4-38.3,15.6l-181.2,181.1 c-14.6,14.6-14.6,38.3,0,52.9L131.35,422.969z M270.95,117.869c12.1-12.1,31.7-12.1,43.8,0c7.2,7.2,10.1,17.1,8.7,26.4 c11.9,8.4,26.1,16.2,41.3,22.5c5.4,2.2,10.6,4.2,15.6,5.9l-0.6-43.6c0.9,0.4,1.7,0.7,2.6,1.1c23.7,9.9,45,23.3,58.7,37 c0.2,0.2,0.4,0.4,0.6,0.6c13,13.3,14.4,21.8,13.3,24.4c-3.4,8.1-39.9,15.3-95.3-7.8c-16.2-6.8-31.4-15.2-43.7-24.3 c-0.4,0.5-0.9,1-1.3,1.5c-12.1,12.1-31.7,12.1-43.8,0C258.85,149.569,258.85,129.969,270.95,117.869z' /%3E%3C/g%3E%3C/svg%3E");
}

.tagcloud a,
.tags-links a {
	display: inline-block;
	padding: 4px 6px;
	background-color: #f7f7f7;
	line-height: 1;
	border-radius: 2px;
	font-weight: 500;
}

.tagcloud a:hover, .tagcloud a:focus {
	color: #b7022d;
}

.updated:not(.published) {
	display: none;
}

.comments-link {
	float: right;
}

.edit-link {
	display: inline-block;
	font-size: 13px;
}

a.more-link {
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 600;
	color: #3c3c3c;
	transition: all 0.3s ease;
	position: relative;
	float: right;
}

a.more-link:hover {
	color: #b7022d;
}

a.more-link:after {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 17px;
	height: 17px;
	margin-left: 8px;
	margin-top: -2px;
	background-size: 17px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%233c3c3c' d='M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z' /%3E%3C/svg%3E");
	transition: all 0.3s ease;
}

a.more-link:hover:after {
	margin-left: 10px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23B7022D' d='M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z' /%3E%3C/svg%3E");
}

.archive_title {
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 0.05em;
}

.archive_title span {
	display: block;
	font-size: 28px;
	font-weight: 700;
	text-transform: none;
	margin-top: 18px;
}

@media screen and (min-width: 768px) {
	.post_thumb {
		margin-bottom: 0;
		position: absolute;
		top: 10px;
		left: 0;
		width: 290px;
	}
	.post_thumb a {
		height: 185px;
	}
	.post_inner.pushed {
		padding-left: 320px;
	}
}

.nav-links {
	text-align: right;
	overflow: auto;
}

.nav-links span.page-numbers,
.nav-links a.page-numbers:not(.next):not(.prev) {
	text-align: center;
	display: inline-block;
	vertical-align: middle;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	line-height: 1;
	padding: 11px 10px;
	font-weight: 600;
}

.nav-links span.page-numbers:not(.current):hover,
.nav-links a.page-numbers:not(.next):not(.prev):not(.current):hover {
	background: #f5f5f5;
}

.nav-links .current {
	background: #f5f5f5;
}

.nav-links .nav-previous,
.nav-links .nav-next,
.nav-links .next,
.nav-links .prev {
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 600;
}

.nav-links .nav-previous .nav-subtitle,
.nav-links .nav-next .nav-subtitle,
.nav-links .next .nav-subtitle,
.nav-links .prev .nav-subtitle {
	display: block;
	font-size: 12px;
	color: #3c3c3c;
}

.nav-links .prev {
	margin-right: 8px;
}

.nav-links .next {
	margin-left: 8px;
}

.nav-links .nav-previous {
	float: left;
}

.nav-links .nav-previous .nav-subtitle {
	text-align: left;
}

.nav-links .nav-next {
	float: right;
}

.nav-links:after {
	content: "";
	clear: both;
	display: table;
}

.comments-area {
	margin: 80px auto 0 auto;
}

.comment-respond {
	max-width: 890px;
	margin: 120px auto 0 auto;
}

.comments-title {
	font-size: 13px;
	font-weight: 700;
	margin-bottom: 20px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.comment-notes {
	font-size: 14px;
}

.comment-form-cookies-consent {
	font-size: 13px;
}

.comment-form-cookies-consent label,
.comment-form-cookies-consent input {
	vertical-align: middle;
	display: inline-block;
}

.comment-form-cookies-consent input {
	margin-right: 8px;
}

.comment-list {
	padding: 0;
	margin: 0 0 40px;
}

.comment-list li {
	margin-top: 30px;
	border-bottom: 1px solid #e4e6e6;
	padding-bottom: 30px;
	list-style-type: none;
}

.comment-list li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.comment-list ol {
	margin: 0;
	padding-left: 44px;
}

.comment-body {
	position: relative;
	padding-left: 44px;
}

.comment-body .reply {
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 600;
}

.comment-body .reply:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	margin-right: 6px;
	width: 17px;
	height: 20px;
	background-size: 17px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' style='width:24px;height:24px' viewBox='0 0 24 24'%3E%3Cpath fill='%23B7022D' d='M10,9V5L3,12L10,19V14.9C15,14.9 18.5,16.5 21,20C20,15 17,10 10,9Z' /%3E%3C/svg%3E");
}

.comment-author,
.comment-metadata a {
	font-weight: 500;
	color: #3c3c3c;
}

.comment-metadata a {
	margin-right: 12px;
	display: inline-block;
}

.comment-author .fn {
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
}

.comment-author .says {
	display: none;
}

.comment-author img {
	border-radius: 50%;
	display: inline-block;
	vertical-align: middle;
	margin-right: 6px;
	position: absolute;
	top: 0;
	left: 0;
}

.comment-metadata {
	font-size: 12px;
	font-weight: 500;
	font-style: italic;
	line-height: 1;
	margin-top: 4px;
	opacity: 0.7;
}

.comment-content {
	margin: 20px 0;
	font-size: 14px;
}

.comment-content p {
	margin: 0;
}

.comment-content a {
	word-wrap: break-word;
}

.comment-reply-title {
	font-size: 16px;
	margin-bottom: 6px;
	font-weight: 600;
}

.logged-in-as {
	font-size: 13px;
	font-weight: 500;
}

.form-submit {
	margin: 0;
}

.comment-form-comment > label {
	font-size: 14px;
	font-weight: 600;
	display: block;
	margin-bottom: 6px;
}

.bypostauthor {
	display: block;
}

.related_posts {
	margin-top: 100px;
}

.related_posts > h4 {
	text-transform: uppercase;
	font-size: 13px;
	margin-bottom: 18px;
}

.related_content {
	position: relative;
}

.related_data {
	color: #3c3c3c;
	margin-top: 12px;
}

.related_data h3 {
	font-size: 15px;
	margin-bottom: 0;
	font-weight: 600;
}

.related_data h3 a {
	color: #3c3c3c;
}

.related_data .posted-on {
	font-size: 12px;
	font-style: italic;
	letter-spacing: 0.02em;
}

.related_thumb {
	display: block;
	border-radius: 3px;
	overflow: hidden;
}

.related_thumb img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	display: block;
}

@media screen and (min-width: 768px) {
	.related_thumb {
		height: 180px;
	}
}

.post_share {
	margin-top: 80px;
	text-align: center;
}

.post_share h4 {
	text-transform: uppercase;
	font-size: 13px;
	margin-bottom: 24px;
}

.post_share a {
	display: inline-block;
	padding: 3px;
	margin: 0 8px;
	transition: all 0.3s ease;
	color: #3c3c3c;
}

.post_share a svg {
	width: 21px;
	display: block;
}

.post_share a:last-child {
	margin-right: 0;
}

.post_share a:hover {
	color: #b7022d;
}

.lang__jp {
	display: none;
}

.menu_section {
	padding: 60px 0 0;
	position: relative;
}

.menu_section .arrow {
	position: absolute;
	top: 4px;
	right: 0;
	transition: all 0.3s ease;
}

.menu_section .arrow svg {
	width: 24px;
}

.menu_section .type_header_toggle {
	font-family: "Eagle Lake", cursive;
	margin: 0 0 48px;
	font-weight: 500;
	font-size: 26px;
	letter-spacing: 0.01em;
	position: relative;
	cursor: pointer;
	transition: all 0.3s ease;
}

.menu_section .type_header_toggle:hover {
	opacity: 0.6;
}

.menu_section .type_header_toggle:before {
	content: "";
	display: inline-block;
	height: 3px;
	width: 44px;
	margin-right: 16px;
	background-color: #3c3c3c;
	vertical-align: middle;
	display: inline-block;
}

.menu_section .dish_list {
	height: 0px;
	overflow: hidden;
}

.menu_section .dish_item {
	position: relative;
	margin-bottom: 56px;
	cursor: pointer;
	padding-left: 54px;
}

@media screen and (min-width: 560px) {
	.menu_section .dish_item {
		padding-left: 64px;
	}
}

.menu_section .dish_item:hover {
	opacity: 0.7;
}

.menu_section .dish_item h3 {
	font-size: 15px;
	font-weight: 500;
	margin: 0;
	background-color: #f9f9f9;
	display: inline-block;
	padding-right: 16px;
}

@media screen and (min-width: 560px) {
	.menu_section .dish_item h3 {
		font-size: 16px;
	}
}

.menu_section .dish_item .dish_img {
	position: absolute;
	top: 5px;
	left: 0;
	width: 38px;
	height: 38px;
	border-radius: 2px;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}

@media screen and (min-width: 560px) {
	.menu_section .dish_item .dish_img {
		width: 46px;
		height: 46px;
	}
}

.menu_section .dish_item .dish_ingr {
	font-style: italic;
	font-size: 13px;
	margin: 0;
}

@media screen and (min-width: 560px) {
	.menu_section .dish_item .dish_ingr {
		font-size: 14px;
	}
}

.menu_section .dish_item .dish_price {
	position: absolute;
	right: 0;
	top: 6px;
	font-weight: 500;
	font-size: 16px;
	color: #3c3c3c;
	background-color: #f9f9f9;
	padding-left: 16px;
	line-height: 1;
}

.menu_section .dish_item > div {
	position: relative;
	z-index: 1;
}

.menu_section .dish_item:before {
	content: "";
	position: absolute;
	left: 68px;
	right: 0;
	top: 14px;
	border-bottom: 1px dashed #8a8a8a;
	opacity: 0.2;
}

.menu_section:not(.expanded) {
	border-bottom: 1px solid #eee;
}

.menu_section.expanded .arrow {
	right: 10px;
	transform: rotate(90deg);
}

.menu_section.expanded .dish_list {
	height: auto;
}

.admin-bar .nav_menu.fixed .our_menu_holder {
	top: 116px;
}

@media screen and (min-width: 783px) {
	.admin-bar .nav_menu.fixed .our_menu_holder {
		top: 102px;
	}
}

@media screen and (min-width: 1024px) {
	.admin-bar .nav_menu.fixed .our_menu_holder {
		top: 122px;
	}
}

.nav_menu {
	min-height: 58px;
}

.nav_menu:not(.fixed) .wrapper {
	padding-left: 0;
	padding-right: 0;
}

.nav_menu .our_menu_holder {
	padding: 14px 0;
	border-top: 1px solid transparent;
}

.nav_menu .menu-types {
	flex-grow: 1;
}

.nav_menu .menu-types .toggle_menu_types {
	display: block;
	cursor: pointer;
}

.nav_menu .menu-types .toggle_menu_types svg {
	display: block;
	width: 24px;
	color: #3c3c3c;
}

@media screen and (min-width: 1024px) {
	.nav_menu .menu-types .toggle_menu_types {
		display: none;
	}
}

@media screen and (min-width: 1024px) {
	.nav_menu .menu-types ul {
		display: block;
	}
}

@media screen and (max-width: 1023px) {
	.nav_menu .menu-types ul {
		position: absolute;
		margin-top: 15px;
		top: 100%;
		height: 0;
		left: 0;
		width: 100vw !important;
		margin-left: 50% !important;
		transform: translateX(-50%) !important;
		background-color: #f9f9f9;
		overflow-x: hidden;
		overflow-y: scroll;
		transition: all 0.3s ease;
		z-index: 99;
	}
	.nav_menu .menu-types ul li {
		display: block;
		margin-top: 24px;
		padding: 0 24px;
		margin-right: 0;
	}
	.nav_menu .menu-types ul.open_types {
		height: 300px;
		box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
	}
}

.nav_menu ul {
	padding: 0;
	margin: 0;
}

.nav_menu ul li {
	display: inline-block;
	vertical-align: middle;
	list-style-type: none;
}

.nav_menu ul li a {
	display: block;
	position: relative;
	color: #3c3c3c;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: 0.08em;
	transition: all 0.3s ease;
}

.nav_menu ul li a:hover, .nav_menu ul li a.active {
	color: #b7022d;
}

.nav_menu ul li a:not(.active):hover {
	opacity: 0.7;
}

.nav_menu .menu-types a {
	margin-right: 24px;
}

.nav_menu .menu_lang a {
	margin-left: 24px;
}

.nav_menu.fixed .our_menu_holder {
	transition: all 0.3s ease;
	position: fixed;
	top: 70px;
	left: 0;
	right: 0;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
	background-color: #f9f9f9;
	border-color: #eee;
	z-index: 10;
}

@media screen and (min-width: 1024px) {
	.nav_menu.fixed .our_menu_holder {
		top: 90px;
	}
}

.nav_menu.fixed ul li a {
	transition: all 0.3s ease;
}

.nav_menu.fixed.out .our_menu_holder {
	transform: translateY(-100%) !important;
}

article.type-dish .entry_header_standard {
	position: relative;
}

article.type-dish .entry_header_standard .dish_price {
	color: #3c3c3c;
	font-weight: 600;
	font-size: 18px;
}

@media screen and (min-width: 560px) {
	article.type-dish .entry_header_standard .dish_price {
		position: absolute;
		top: 36px;
		right: 0;
	}
}

#overlay_dish {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	overflow: scroll;
	color: #f9f9f9;
	display: none;
}

#overlay_dish .overlay_layer {
	position: absolute;
	background: rgba(17, 17, 17, 0.98);
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#overlay_dish .overlay_inner {
	height: 100vh;
	padding: 40px 0;
}

#overlay_dish .wrapper {
	max-width: 880px;
	z-index: 5;
}

#overlay_dish img {
	border: 8px solid #f9f9f9;
	margin-bottom: 16px;
}

#overlay_dish .dish_item {
	position: relative;
}

#overlay_dish .dish_item h3 {
	color: #f9f9f9;
	font-weight: 600;
	margin-bottom: 3px;
}

#overlay_dish .dish_item .dish_ingr {
	font-style: italic;
}

#overlay_dish .dish_item .dish_price {
	position: absolute;
	top: -2px;
	right: 0;
	font-weight: 600;
	font-size: 20px;
}

#overlay_dish .nav_menu {
	position: fixed;
	top: 28px;
	right: 30px;
	min-height: 28px;
	z-index: 9;
}

#overlay_dish .nav_menu ul li a:not(.active) {
	color: #f9f9f9;
}

#overlay_dish .close {
	position: fixed;
	top: 30px;
	left: 20px;
	cursor: pointer;
	font-weight: 600;
	font-size: 11px;
	text-transform: uppercase;
	z-index: 9;
}

#overlay_dish .close:hover {
	color: #b7022d;
}

#overlay_dish .close span,
#overlay_dish .close svg {
	vertical-align: middle;
	display: inline-block;
}

#overlay_dish .close svg {
	margin-right: 8px;
}

.widget {
	margin: 0 0 3.5em;
	padding: 0;
}

.widget a {
	color: #3c3c3c;
	font-size: 13px;
}

.widget a.alt-link {
	font-size: 12px;
	display: block;
	text-align: center;
	border: 2px solid #b7022d;
	padding: 8px 0;
	text-transform: uppercase;
	font-weight: 600;
	margin-top: 12px;
}

.widget .widget-title {
	text-transform: uppercase;
	font-size: 12px;
	margin: 0 0 16px;
	position: relative;
	padding-left: 24px;
}

.widget .widget-title:after {
	content: "";
	position: absolute;
	top: 50%;
	margin-top: -1px;
	left: 0px;
	height: 2px;
	z-index: 1;
	width: 14px;
	background-color: #b7022d;
}

.widget ul {
	padding: 0;
	margin: 0;
}

.widget ul li {
	list-style-type: none;
	margin-bottom: 12px;
}

.widget ul li:last-child {
	margin-bottom: 0;
}

.widget select {
	max-width: 100%;
}

/* About Widget
--------------------------------------------- */
/*--------------------------------------------------------------
## About Widget
--------------------------------------------------------------*/
.about-widget {
	position: relative;
	font-size: 13px;
}

.about-widget .about-image {
	text-align: center;
}

.about-widget img {
	border-radius: 4px;
}

.about-widget .about-title {
	font-size: 21px;
	font-weight: 700;
	margin: 10px 0;
	text-align: center;
	font-family: "Eagle Lake", cursive;
}

.about-widget .about-label {
	font-size: 14px;
	text-align: center;
	display: block;
	margin-bottom: 8px;
	font-weight: 500;
	color: #3c3c3c;
}

/* Latest Posts Widget
--------------------------------------------- */
/*--------------------------------------------------------------
## Latest Posts Widget
--------------------------------------------------------------*/
.ls-post-side {
	position: relative;
	margin-top: 20px;
	min-height: 60px;
}

.ls-post-side:after {
	content: "";
	display: table;
	clear: both;
}

.ls-post-side .ls-post-img {
	overflow: hidden;
	border-radius: 3px;
	width: 60px;
	height: 60px;
	position: absolute;
	top: 0;
	left: 0;
	max-width: 60px;
}

.ls-post-side .ls-post-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ls-post-side h4 {
	font-size: 13px;
	font-weight: 500;
	margin: 0;
}

.ls-post-side h4 a {
	color: #3c3c3c;
}

.ls-post-side h4 a:hover {
	opacity: 0.75;
}

.ls-post-side .ls-count {
	position: absolute;
	top: -12px;
	left: -12px;
	width: 26px;
	height: 26px;
	border-radius: 26px;
	text-align: center;
	color: #fff;
	font-weight: 600;
	line-height: 1;
	padding: 3px 0;
	background: #b7022d;
	border: 2px solid #fff;
	z-index: 1;
}

.ls-post-side .ls-date {
	font-size: 12px;
}

.ls-post-side .ls-post-content {
	padding-left: 74px;
}

/* Social Widget
--------------------------------------------- */
/*--------------------------------------------------------------
## Social Widget
--------------------------------------------------------------*/
.social_widget {
	text-align: left;
}

.social_widget h3 {
	text-transform: uppercase;
	font-size: 12px;
	opacity: 1;
	color: #f9f9f9;
	display: inline-block;
	vertical-align: middle;
	margin: 0;
	margin-right: 20px;
}

.social_widget a {
	display: inline-block;
	vertical-align: middle;
	width: 19px;
	margin-right: 16px;
}

.social_widget a svg {
	display: block;
}

#main__sidebar .social_widget {
	margin-top: 26px;
}

.page-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

.wpcf7-form label {
	font-size: 13px;
	font-weight: 500;
	display: block;
}

.wpcf7-form p:last-child {
	margin-bottom: 0;
}

.wpcf7 .row {
	margin-bottom: 24px;
}

/* Gutenberg
--------------------------------------------- */
/* Blockquote */
.wp-block-quote {
	position: relative;
	font-style: italic;
	padding-left: 40px;
	font-family: "Georgia";
	margin: 0 auto;
	border-left: 4px solid #b7022d;
}

.wp-block-quote p {
	font-size: 18px;
	line-height: 30px;
}

.wp-block-quote cite {
	font-size: 14px;
}

.wp-block-quote.is-style-large {
	padding-left: 80px;
}

.wp-block-quote.is-style-large p {
	font-size: 24px;
}

.wp-block-quote.is-style-large cite {
	font-size: 16px;
}

.wp-block-pullquote:before,
.wp-block-quote:before {
	content: "\201C";
	color: #f7f7f7;
	font-size: 140px;
	line-height: 1;
	font-weight: 700;
	position: absolute;
	top: 0;
	left: 0;
	text-shadow: none;
	z-index: -300;
	font-family: "Georgia";
}

/* Pullquote */
.wp-block-pullquote {
	position: relative;
	font-family: "Georgia";
	border-top: 4px solid #eee;
	border-bottom: 4px solid #eee;
	font-style: italic;
	text-align: center;
}

.wp-block-pullquote p {
	font-size: 22px;
	line-height: 32px;
}

.wp-block-pullquote cite:before,
.wp-block-quote cite:before {
	content: "-";
	margin-right: 4px;
	margin-top: -10px;
}

/* Alignment */
.alignfull {
	width: 100vw !important;
	margin-left: 50% !important;
	transform: translateX(-50%) !important;
}

.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* Separator */
.wp-block-separator {
	margin: 30px auto;
	background: #ddd;
	height: 1px;
	border: 0;
}

.wp-block-separator:not(.is-style-dots):not(.is-style-wide) {
	max-width: 180px;
}

.wp-block-separator.is-style-dots::before {
	font-size: 18px;
}

.wp-block-separator.alignfull.is-style-default,
.wp-block-separator.alignwide {
	max-width: none !important;
}

/* Verse */
.wp-block-verse {
	font-style: italic;
	font-size: 16px;
	position: relative;
	padding-left: 80px;
	background: #f9f9f9;
	border-radius: 4px;
}

.wp-block-verse:before {
	content: "";
	position: absolute;
	top: 20px;
	left: 20px;
	height: 40px;
	width: 40px;
	background-size: 40px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23B7022D' d='M22,2C22,2 14.36,1.63 8.34,9.88C3.72,16.21 2,22 2,22L3.94,21C5.38,18.5 6.13,17.47 7.54,16C10.07,16.74 12.71,16.65 15,14C13,13.44 11.4,13.57 9.04,13.81C11.69,12 13.5,11.6 16,12L17,10C15.2,9.66 14,9.63 12.22,10.04C14.19,8.65 15.56,7.87 18,8L19.21,6.07C17.65,5.96 16.71,6.13 14.92,6.57C16.53,5.11 18,4.45 20.14,4.32C20.14,4.32 21.19,2.43 22,2Z' /%3E%3C/svg%3E");
}

/* Tables */
.wp-block-table td,
.wp-block-table th {
	border-color: #e5e5e5;
}

.wp-block-table .mce-content-body {
	line-height: 28px;
}

/* Latest Posts */
.wp-block-latest-posts__list li {
	position: relative;
	margin-bottom: 30px;
	font-size: 13px;
}

.wp-block-latest-posts__list li > a {
	font-size: 15px;
	display: block;
	font-weight: 500;
}

.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image {
	border-radius: 3px;
	overflow: hidden;
}

.wp-block-latest-posts__list
li
.wp-block-latest-posts__featured-image.alignleft {
	margin-top: 6px;
	margin-right: 20px;
}

.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image img {
	display: block;
}

.wp-block-latest-posts__post-author,
.wp-block-latest-posts__post-date {
	display: inline-block;
	vertical-align: middle;
	margin-right: 12px;
	font-size: 11px;
}

.wp-block-latest-posts__list li .more-link-wr {
	margin-top: 6px;
}

.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__featured-image {
	margin-bottom: 20px;
}

.wp-block-latest-posts__list.is-grid
li
.wp-block-latest-posts__featured-image
img {
	width: 100%;
}

.wp-block-column {
	margin-left: 0 !important;
	padding-right: 1.5rem !important;
	padding-left: 1.5rem !important;
}

@media (min-width: 600px) and (max-width: 767px) {
	.wp-block-column:not(:only-child) {
		flex-basis: 100% !important;
		flex-grow: 0;
		margin-left: 0 !important;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.wp-block-column:not(:only-child) {
		flex-basis: calc(50% - 1em) !important;
		flex-grow: 0;
	}
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
.search-form {
	position: relative;
}

.search-form label > span {
	display: block;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 13px;
}

.search-form .search-submit {
	border: none;
	position: absolute;
	cursor: pointer;
	right: 0px;
	top: 0;
	background: transparent;
	color: #8a8a8a;
	padding: 13px;
	min-width: auto;
	line-height: 1;
	height: auto;
}

.search-form .search-submit svg {
	width: 20px;
}

.search-form .search-submit:hover {
	opacity: 0.5;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f9f9f9;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# 404
--------------------------------------------------------------*/
.not_found .hero_section {
	margin: 0;
}

.not_found .hero_section .wrapper {
	height: 220px;
	min-height: auto;
	padding-top: 240px;
}

.not_found .not_big {
	font-size: 120px;
	margin: 0 0 20px;
	line-height: 1;
}

.not_found .back_to_home {
	display: inline-block;
	margin-top: 60px;
	font-weight: 600;
	font-size: 13px;
}

.not_found .upper-title {
	font-size: 90px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 16px;
}

.not_found .nothing_title {
	font-size: 26px;
	line-height: 38px;
}

.not_found.no_results {
	text-align: center;
}

.not_found.no_results .search-form {
	max-width: 400px;
	margin: 30px auto 0;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
	padding: 70px 0 50px;
	background: #111;
	color: #f9f9f9;
}

.footer a {
	color: #f9f9f9;
}

.footer a:hover {
	color: #f9f9f9;
	opacity: 0.8;
}

.footer .logo {
	width: 240px;
	margin: 0 0 30px;
}

@media screen and (min-width: 768px) {
	.footer .logo {
		width: 260px;
	}
}

.footer .logo a,
.footer .logo a svg {
	display: block;
}

.footer .social_widget {
	margin-top: 24px;
}

.footer .footer_bottom {
	font-size: 12px;
	margin-top: 60px;
	color: #f9f9f9;
}

.footer .footer_copy {
	font-size: 10px;
	opacity: 0.4;
	margin-top: 20px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	display: inline-block;
	vertical-align: middle;
}

.footer .footer_by {
	margin-left: 16px;
	margin-top: 20px;
	opacity: 0.4;
	display: inline-block;
	vertical-align: middle;
	font-size: 10px;
}

.footer .footer_by .designby {
	font-weight: 500;
	text-transform: uppercase;
}

.footer .footer_by .designby a > span {
	display: inline-block;
	margin-right: -2px;
	font-weight: 600;
}

.footer .footer_contacts {
	margin-top: 40px;
}

@media screen and (min-width: 768px) {
	.footer .footer_contacts {
		margin-top: 0;
	}
}

@media screen and (min-width: 992px) {
	.footer .footer_contacts {
		padding-left: 30%;
	}
}

.footer .footer_contacts a {
	display: block;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.04em;
	margin-bottom: 22px;
}

.footer .footer_contacts a svg {
	width: 18px;
	margin-right: 12px;
}

.footer .footer_contacts a svg,
.footer .footer_contacts a span {
	display: inline-block;
	vertical-align: middle;
}

.footer .footer_contacts a.tel {
	letter-spacing: 0.09em;
	font-size: 12px;
}

.footer .widget-title {
	color: #f9f9f9;
}

.footer .widget {
	font-size: 12px;
	font-weight: 600;
	margin: 0;
}

.footer .widget {
	font-size: 13px;
	opacity: 0.4;
	font-weight: 500;
	font-style: italic;
}

#footer-privacy {
	padding: 0;
	margin: 0;
}

#footer-privacy li {
	list-style-type: none;
	display: inline-block;
	letter-spacing: 0.06em;
	margin-right: 16px;
	padding-right: 16px;
	position: relative;
}

#footer-privacy li:after {
	content: "";
	position: absolute;
	top: 4px;
	bottom: 4px;
	right: 0px;
	background-color: #f9f9f9;
	width: 1px;
	opacity: 0.4;
}

#footer-privacy li:last-child {
	margin-right: 0;
	padding-right: 0;
}

#footer-privacy li:last-child:after {
	display: none;
}

#footer-privacy li a {
	opacity: 0.4;
	transition: all 0.3s ease;
}

#footer-privacy li a:hover {
	opacity: 0.8;
}

@media screen and (min-width: 768px) {
	.footer .logo {
		width: 260px;
	}
}

/*# sourceMappingURL=style.css.map */