@charset "UTF-8";
/* CSS Document */
#header {
position: fixed;
z-index: 20000;
}

#breadcrumbs {
width: 90%;
margin-left: auto;
margin-right: auto;
max-width: 1024px;
}
#breadcrumbs ol li {
float: left;
}
#breadcrumbs ol li:nth-of-type(1), #breadcrumbs ol li:nth-of-type(2) {
font-family: "Tinos", "Palatino Linotype", "Book Antiqua", Palatino, "serif";
}
#breadcrumbs i {
padding: 0 10px;
}

#menu p {
display: table;
margin: 0 auto;
}
.menu h3, .menu h4 {
text-align: center;
font-family: "Tinos", "Palatino Linotype", "Book Antiqua", Palatino, "serif";
font-size: 1.5em;
letter-spacing: 2px;
}
.menu h3{
font-size: 1.5em;
}
.menu h4 {
font-size: 1.3em;
}
#okashi ul li img {
background: #fff;
box-sizing: border-box;
box-shadow: 0px 0px 10px #000;
}
#okashi ul li span {
display: block;
text-align: center;
}
#lunch h3 span {
display: block;
font-size: 0.5em;
}
#lunch p {
text-align: center;
}
#lunch p:nth-last-of-type(1) {
padding-bottom: 0;
}

#news article, #blogDetail {
border-bottom: 1px solid #999999;
}
#news article h3, #news article time, #blogDetail h3, #blogDetail time {
display: table;
margin: 0 auto;
}
#news article time, #blogDetail time {
font-family:"Arapey", "Times New Roman", Times, "serif";
}

#blogDetail ~ ul li a {
display: block;
}
#blogDetail ~ ul li a, .location div address ~ a {
background: #fff;
color:#1C1C1C;
border: 1px solid #000;
border-radius: 3px;
}
#next i {
padding-left: 10px;
}
#prev i {
padding-right: 10px;
}

#location article:nth-last-of-type(1) {
padding-bottom: 0;
}
.location h3 {
display: block;
margin: 0 auto;
text-align: center;
}
.location h3 span, .location address {
display: table;
margin: 0 auto;
}
.location iframe {
width: 100%;
}
.location div address ~ a {
display: table;
margin-left: auto;
margin-right: auto;
}

#access ul li span {
display: block;
text-align: center;
}

#reserve ul li:before {
content: "※ ";
}
#reserve ul li:last-child {
padding-bottom: 0;
}

@media screen and (max-width:560px){
#breadcrumbs {
padding-top: 70px;
}
#breadcrumbs ol li:nth-of-type(3) {
clear: left;
}
	
#menu div {
padding-bottom: 180px;
background: url(../images/menu_img.webp) no-repeat bottom center;
background-size: 280px auto;
}
#menu div p {
font-size: 0.8em;
}
#okashi h3, #cafe h3 {
padding-bottom: 20px;
}
#cafe h4, #lunch h3 {
padding-bottom: 15px;
}
.menu ul li {
width: 80%;
margin: 0 auto 15px auto;
font-size: 0.7em;
}
.menu ul li img {
margin-bottom: 8px;
padding: 3px;
}
#cafe ul {
display: table;
margin: 0 auto;
}
#cafe ul li {
display: block;
width: 100%;
}
#cafe > div:nth-of-type(1) {
margin-bottom: 20px;
}

#blogDetail {
margin-bottom: 10px;
padding-bottom: 20px;
}
#blogDetail ~ ul {
margin-bottom: 40px;
}
#blogDetail ~ ul li:nth-of-type(2) {
margin-top: 10px;
}
#blogDetail ~ ul li a, .location div address ~ a {
width: 100%;
padding: 4px 0;
text-align: center;
font-size: 0.8em;
}
	
#location article {
padding-top:60px;
}

#reserve p {
padding-bottom: 20px;
}
#reserve ul li {
padding-bottom: 10px;
}
}

@media screen and (min-width:561px){
.menu ul li {
width: 45%;
font-size: 0.8em;
}
.menu ul li img {
margin-bottom: 10px;
padding: 5px;
}
.menu ul li:nth-child(odd) {
float: left;
}
.menu ul li:nth-child(even) {
float: right;
}
#cafe ul li {
text-align: center;
}
	
#next {
float: right;
}
#prev {
float: left;
}

#reserve p {
text-align: center;
padding-bottom: 30px;
}
#reserve ul {
display: table;
margin: 0 auto;
}
#reserve ul li {
padding-bottom: 16px;
font-size: 1.2em;
}
}

@media (min-width:561px) and (max-width:960px){
#breadcrumbs {
padding-top: 80px;
}
#main {
padding-top: 30px;
}
#menu div {
padding-bottom: 250px;
background: url(../images/menu_img.webp) no-repeat bottom center;
background-size: 400px auto;
}
#okashi h3, #cafe h3 {
padding-bottom: 30px;
}
#cafe h4, #lunch h3 {
padding-bottom: 20px;
}
#cafe > div:nth-of-type(1) {
margin-bottom: 30px;
}

#blogDetail {
margin-bottom: 40px;
padding-bottom: 20px;
}
#blogDetail ~ ul li a, .location div address ~ a {
padding: 3px 6px;
font-size: 0.85em;
}
	
#location article {
padding-top:60px;
padding-bottom:20px;
}
}

@media screen and (max-width:960px){
#news article {
margin-bottom: 40px;
padding-bottom: 20px;
}
#news article h3, #blogDetail h3 {
padding-bottom: 8px;
font-size: 1.2em;
}
#news article time, #blogDetail time {
padding-bottom: 15px;
font-size: 0.7em;
}
	
.location h3 {
font-size: 1.3em;
padding-bottom: 20px;
}
.location h3 span {
font-size: 0.75em;
padding-top: 5px;
}
.location div {
padding-bottom: 10px;
}
.location div img {
padding-bottom: 5px;
}
.location div p, .location div address {
font-size: 0.8em;
}
.location div address {
padding-top: 8px;
}
.location div address ~ a {
margin-top: 10px;
}
	
#lunch p {
padding-bottom: 16px;
}

#access ul li {
font-size:0.9em;
}
#access ul li:first-child {
padding-bottom: 30px;
}
#access ul li span {
font-size: 1.2em;
padding-bottom: 5px;
}
#access ul li span i {
margin-right: 10px;
font-size: 1.2em;
}
#maps {
padding-top: 40px;
}
}

@media screen and (min-width:961px){
#breadcrumbs {
padding-top: 60px;
}
#main {
padding-top: 40px;
}

#okashi h3, #cafe h3 {
padding-bottom: 40px;
}
#cafe h4, #lunch h3 {
padding-bottom: 30px;
}
#lunch p {
padding-bottom: 24px;
}
#menu div {
padding-left: 52%;
background: url(../images/menu_img.webp) no-repeat left top;
background-size: 50% auto;
}
#okashi ul li {
padding-bottom: 30px;
}
#cafe > div:nth-of-type(1) {
margin-bottom: 40px;
}
	
#news article, #blogDetail {
margin-bottom: 50px;
padding-bottom: 30px;
}
#news article h3, #blogDetail h3 {
padding-bottom: 10px;
font-size: 1.3em;
}
#news article time, #blogDetail time {
padding-bottom: 20px;
font-size: 0.8em;
}
	
#blogDetail ~ ul li a, .location div address ~ a {
padding: 4px 8px;
font-size: 0.9em;
}

#location article {
padding-top:60px;
padding-bottom:60px;
}
.location h3 {
font-size: 1.5em;
padding-bottom: 30px;
}
.location h3 span {
font-size: 0.8em;
padding-top: 10px;
}
.location div {
padding-bottom: 20px;
}
.location div img {
width: 48%;
padding-right: 4%;
float: left;
}
.location div p, .location div address {
font-size: 0.7em;
}
.location div address {
padding-top: 10px;
}
.location div address ~ a {
margin-top: 20px;
}

#access ul {
display: table;
table-layout: fixed;
border-collapse: separate;
border-spacing: 40px 0;
}
#access ul li {
display: table-cell;
font-size:0.8em;
}
#access ul li span {
font-size: 1.3em;
padding-bottom: 10px;
}
#access ul li span i {
font-size: 2em;
display: block;
}
}

@media (min-width:961px) and (max-width:1279px){
#menu div {
min-height: 250px;
}
}

@media screen and (min-width:1280px){
#menu div {
min-height: 320px;
}
}