@charset "UTF-8";
/* CSS Document */

/*------------------------------ Common elements ------------------------------*/

* {
margin:0;
padding:0;
}

html {
scroll-behavior: smooth;
}

body {
background:url("../images/home/bg.jpg") #eae3d9;
background-size:100%;
margin:0;
padding:0;
font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
font-weight: 300;
font-style: normal;
}

a {outline:none;}

a:link {color:#000; text-decoration:none; transition:all 0.5s ease;}
a:visited {color:#000; text-decoration:none;}
a:hover {color:#535353; text-decoration:none; transition:all 0.5s ease;}

img {
border:0;
vertical-align:bottom;
}

nav {
font-weight:300;
}

#slide_frame {position:relative;}

.swiper-pagination {
font-size:0;
margin:10px 0 0;
text-align:center;
width:100%;
position:absolute;
bottom:0px;
}

.swiper-pagination-bullet {
background:#000 !important;
margin:0 15px 0 0;
width: 5px !important;
height: 5px !important;
display: inline-block;
border-radius: 100%;
opacity:.3 !important;
}

.swiper-pagination-bullet:last-child {margin:0;}

.swiper-pagination-bullet-active {
background:#fff !important;
opacity:1 !important;
}

h2 {
font-weight:300;
text-align:center;
padding:0 0 1em;
}

h2::after {
content:"";
background:#000;
display:block;
margin:1em auto 0;
height:1px;
width:3em;
}

/*========================================================================================================================
  for Smartphone
========================================================================================================================*/

@media (max-width: 640px) {

body {
font-size:13px;
letter-spacing:0.1em;
line-height:2.5em;
}




/*------------------------------ Common elements ------------------------------*/

.line-sp {display:block;}

section {
margin:6em auto 0;
width:100%;
}

header {
background:url("../images/home/bg.jpg") #eae3d9;
background-size:100%;
position:sticky;
left:0;
top:0;
z-index:10;
width:100%;
height:48px;
}

.header {
background:none;
background-size:100%;
position:sticky;
top:0;
width:100%;
transition:all 0.5s ease;
}

.hidden {
background:url("../images/home/bg.jpg") #eae3d9;
background-size:100%;
transition:all 0.5s ease;
}

header h1 {
margin:0;
padding:10px 0;
text-align:center;
}

header h1 img {width:20%;}

#nav_pc {display:none;}

.sns_icon img {height:20px;}

#sns_pc {display:none;}

.hidden #header_logo {transition:all 0.5s ease;}


.titleimg_img {
aspect-ratio:24/37;
height:auto;
object-fit:cover;
width:100%;
}

/*------------------------------ Slide ------------------------------*/

#titleimage {
margin:0;
padding:0;
position:relative;
width:100%;
}

#slide_logo {
margin:0;
position:absolute;
top:50%;
left:50%;
transform: translateY(-60%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);
width:19%;
z-index:5;
}

#slide_logo img {
width:100%;
margin:0;
}

#slide {
margin:2em 0 0;
width:100%;
}

#slide_frame {
margin:0;
width:100%;
}

.swiper-container {
margin:0;
width:100%;
}

.swiper-wrapper {
margin:0;
width:100%;
}

.swiper-slide img {
height:auto;
object-fit:cover;
width:100%;
aspect-ratio:3/2;
}

.swiper-container .caption {
font-size:0.95em;
text-align: center;
}

/*------------------------------ Intro  ------------------------------*/

#intro {
font-weight:400;
letter-spacing:0.4em;
margin:0 auto;
position:relative;
width:100%;
}

#intro h2 {
font-size:20px;
margin:20px 0 0;
text-align:center;
}

#intro h2 span {letter-spacing:0;}

#intro .titleimage img {
object-fit:cover;
height:300px;
width:100%;
}

#intro .intro_main {
width:100%;
font-weight:400;
letter-spacing:0.1em;
text-align:center;
}

.intro_main_content {
padding:4em 2em;
}

.intro_main_content p {
border-bottom:1px #000 solid;
border-top:1px #000 solid;
display:inline-block;
text-align:left;
margin:0;
padding:1em 0;
}


.intro_img {
width:100%;
}

.intro_img img {
aspect-ratio: 6/5;
height:auto;
width:50%;
object-fit: cover;
}


.menu_lunch_img {
margin:30px 0 0;
width:100%;
}

.menu_lunch_img img {
aspect-ratio: 6/5;
height:auto;
width:50%;
object-fit: cover;
}


.menu_dinner_img {
margin:30px 0 0;
width:100%;
}

.menu_dinner_img img {
aspect-ratio: 6/5;
height:auto;
width:50%;
object-fit: cover;
}

.menu_drink_img {
text-align:center;
margin:30px 0 0;
width:100%;
}

.menu_drink_img img {
aspect-ratio: 6/5;
height:auto;
width:50%;
object-fit: cover;
}

/*------------------------------ Event ------------------------------*/

#event {
margin:100px auto 0;
width:85%;
}

#event h2 {
font-size:12px;
font-weight:500;
letter-spacing:0.4em;
padding:40px 0;
text-align:center;
position:relative;
}

#event h2:before {
border-top:2px #000 solid;
content:"";
display:block;
margin:auto;
position:absolute;
top:0;
left:0;
right:0;
width:100px;
}

#event h2 span {letter-spacing:0;}

#event h3 {
font-size:15px;
font-weight:400;
letter-spacing:7px;
text-align:center;
}

#event h2 span {letter-spacing:0;}

#event .titleimage img {
object-fit:cover;
height:300px;
width:100%;
}

.access_detail {
margin:40px 0 0;
text-align:center;
}

.access_detail p {
letter-spacing:0.1em;
margin:1em 0 0;
}

.menu_list {
text-align:center;
}

.menu_list_item {
display:inline-block;
max-width:100%;
text-align:justify;
}

.menu_list_item .small {
font-size:75%;
}

.menu_list_item li {
text-indent:-1em;
margin-left:1em;
}

#menu_drink .menu_list_item p {
line-height: 2em;
margin:1em 0 0;
}

#menu_drink .menu_list_item p:first-child {
margin:0;
}

.menu_list_item h3 {
font-size:16px;
letter-spacing:0.1em;
margin:20px 0 5px;
}

.menu_list_item li {
list-style:none;
line-height:1.5em;
padding:0 0 1em;
}

.menu_list_item ul ul {
margin:0 0 0 1em;
}

.menu_lunch_course {
margin:2em 0 0;
text-align:center;
}

.menu_lunch_course_content {
text-align:left;
display: inline-block;
max-width:90%;
}

.menu_lunch_course li {
list-style:none;
line-height:2em;
}

.menu_lunch_course li ul {
margin:0 0 0 1em;
}

#menu_dinner_content {
margin:0 auto;
width:90%;
}

#menu_dinner dd {
line-height:1.5em;
text-indent:-1em;
margin:0 0 0.5em 1em;
}

#menu_drink_content {
margin:0 auto;
width:90%;
}

/*------------------------------ About ------------------------------*/

#shop {
margin:100px auto 0;
width:90%;
}

#shop h2 {
font-size:20px;
letter-spacing:0.1em;
padding:0 0 30px;
position:relative;
}

#shop h2 span {letter-spacing:0;}

#shop h3 {
font-size:15px;
font-weight:400;
letter-spacing:7px;
text-align:center;
}

#shop h2 span {letter-spacing:0;}

#shop .titleimage {
margin:2em 0 0;
}

#shop .titleimage img {width:100%;}

.shop_detail {
margin:0;
text-align:center;
}

.shop_detail p {
letter-spacing:2px;
margin:1em 0 0;
}

#shop_content .shop_detail .small {
display:inline-block;
font-size:75%;
margin:0 1em 0 2em;
text-indent:-1em;
}

.shop_detail li {
letter-spacing:0.1em;
line-height:1.5em;
list-style:none;
margin:0 0 1em;
text-align:left;
}

.shop_detail li .tel {
font-size:125%;
}

.shop_detail li ul {
margin:0.2em 0 0;
}

.shop_detail li ul li {
margin:0 0 0.3em;
}

.access_detail ul {margin:1em 0 0;}

.access_detail li {list-style:none;}

/*------------------------------ Aisatsu ------------------------------*/

#aisatsu {
margin:100px auto 0;
width:90%;
}

#aisatsu h2 {
font-size:20px;
letter-spacing:0.1em;
padding:0 0 30px;
text-align:center;
position:relative;
}

#aisatsu h2 span {letter-spacing:0;}

#aisatsu h3 {
font-size:15px;
font-weight:400;
letter-spacing:7px;
text-align:center;
}

#aisatsu h2 span {letter-spacing:0;}

#aisatsu .titleimage {
margin:20px 0 0;
}

#aisatsu .titleimage img {width:100%;}

.aisatsu_detail {
margin:0;
text-align:left;
}

.aisatsu_detail p {
text-align:justify;
letter-spacing:0.05em;
margin:1em 0 0;
}

.aisatsu_detail p:first-child {
margin:0;
}

.aisatsu_detail li {
letter-spacing:0.1em;
list-style:none;
text-align:left;
}

.aisatsu_detail ul {margin:1em 0 0;}

.aisatsu_detail li {list-style:none;}

#aisatsu .titleimage img:nth-child(2),
#aisatsu .titleimage img:nth-child(3){
margin:15px 0 0;
width:50%;
}

/*------------------------------ Footer ------------------------------*/

footer {
color:#000;
margin:4em 0 0;
padding:2em 0;
text-align:center;
width:100%;
}

.footer_content {
margin:0 auto;
width:90%;
}

footer .info {padding:1em 0;}

footer .info .line {display:block;}

.footer_logo {padding:0 0 2em;}

.footer_logo img {width:25%;}

.footer_icon {
padding:1em 0 0;
text-align:center;
}

.footer_icon ul{display:inline-block;}

.footer_icon li {
float:left;
display:block;
margin:0 20px;
list-style:none;
}

footer .copyright {
padding:1em 0 0;
font-size:12px;
}

}

/*========================================================================================================================
  for PC
========================================================================================================================*/

@media (min-width: 641px) {

.titleimg_img {
aspect-ratio:2 / 1;
height:auto;
object-fit:cover;
width:100%;
}



body {
font-size:16px;
letter-spacing:0.1em;
line-height:2.5em;
}

header {
background:#163c23;
position:fixed;
left:0;
top:0;
z-index:100;
width:100%;
}

#header_content {
margin:0 auto;
padding:5px 0;
width:960px;
transition:all 0.5s ease;
position:relative;
}

#header_logo {
float:left;
width:134px;
}

#header_logo img {
transition:all 0.5s ease;
width:55%;
}

nav {
width:100%;
font-size:15px;
line-height:1em;
letter-spacing:0.1em;
margin:0 0 0 auto;
}

nav li a span {letter-spacing:0;}

#nav_pc ul {
display:flex;
margin:0 0 0 auto;
}

#nav_pc ul li:nth-child(5) {
  margin-left: auto;
}

#nav_pc li {
height:38px;
display:table-cell;
vertical-align:middle;
}

#nav_pc li a {
position: relative;
display: inline-block;
text-decoration: none;
}

#nav_pc .sns_icon a::after {height:0;}

#nav_pc li a:hover::after {
bottom: 2px;
opacity: 1;
visibility: visible;
}

#header_content li {
list-style:none;
padding:0 2em 0 0;
}

#header_content li.sns_icon {
padding:0 0 0 1em;
}

#header_content li a {
height:37px;
display:table-cell;
vertical-align:middle;
}

#header_content li a:link {color:#000;}

#header_content li a:visited {color:#000;}

#header_content li a:hover {color:#535353;}

.hidden #header_content li a:link {color:#000;}

.hidden #header_content li a:visited {color:#000;}

.hidden #header_content li a:hover {color:#535353;}

#nav_sp {display:none;}

.header {
position:sticky;
top:0;
width:100%;
background:url("../images/home/bg.jpg") #eae3d9;
background-size:100%;
transition:all 0.5s ease;
}

.hidden {
background:url("../images/home/bg.jpg") #eae3d9;
background-size:100%;
transition:all 0.5s ease;
}

.hidden header {
height:97px;
transition:all 0.5s ease;
}

.hidden #header_content {
padding:15px 0;
transition:all 0.5s ease;
}

.hidden #header_logo img {
transition:all 0.5s ease;
width:100%;
}

.hidden #nav_pc ul {
text-align:left;
display:flex;
margin:0;
width:100%;
}

.hidden #nav_pc ul li:nth-child(5) {
  margin-left: auto;
}

.hidden #nav_pc li {
display:table-cell;
vertical-align:middle;
}

.titleimage img {
height:auto;
object-fit:cover;
width:100%;
}

.titleimage img:nth-child(2),
.titleimage img:nth-child(3) {
width:50%;
}

.sns_icon img {height:17px;}

.line-pc {display:block;}

/*------------------------------ Slide ------------------------------*/

#titleimage {
margin:0 auto;
padding:0;
position:relative;
width:100%;
}

#slide_logo {
margin:0;
position:absolute;
top:50%;
left:50%;
width:6.5%;
z-index:5;
transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
}

#slide_logo img {width:100%;}

#slide {
margin:100px auto 0;
width:700px;
}

#slide_frame {
margin:0 auto;
width:100%;
}

.swiper-container {
margin:0;
width:100%;
}

.swiper-wrapper {
margin:0;
width:100%;
}

.swiper-slide img {
height:auto;
object-fit: cover;
width:100%;
filter:brightness(85%);
}

#slide .caption {
font-size:12px;
line-height:2em;
padding: 30px 0 0;
text-align:center;
}


/*------------------------------ Intro  ------------------------------*/

#intro {
margin:0 auto;
width:100%;
}

#intro h2 {
font-size:22px;
letter-spacing:0.1em;
margin:40px 0 0;
text-align:center;
}

#intro .intro_main {
width:100%;
font-weight:400;
letter-spacing:0.1em;
text-align:center;
}

#intro .intro_main p {
border-top:1px #000 solid;
border-bottom:1px #000 solid;
display:inline-block;
line-height:2em;
letter-spacing:0.1em;
margin:100px 0;
padding:30px 0;
text-align:left;
}

#intro .intro_main p.small {
font-size: 12px;
line-height:2em;
letter-spacing:0.1em;
}

#intro .intro_main_content {padding:0;}

.intro_img {
width:100%;
}

.intro_img img {
width:50%;
}

.menu_lunch_img {
margin:50px 0 0;
width:100%;
}

.menu_lunch_img img {
width:50%;
}


.menu_dinner_img {
margin:30px 0 0;
width:100%;
}

.menu_dinner_img img {
width:50%;
}

.menu_drink_img {
text-align:center;
margin: 40px 0 0;
width:100%;
}

.menu_drink_img img {
width:600px;
}

#menu_drink {
margin:100px 0 0;
}

#menu_drink h2 {
font-size:20px;
}

#menu_drink_content {
font-size: 12px;
}

/*------------------------------ Event ------------------------------*/

#event {
margin:100px auto 0;
width:960px;
}

#event h2 {
font-size:15px;
font-weight:400;
letter-spacing:10px;
padding:40px 0;
text-align:center;
}

#event h2:before {
border-top:2px #000 solid;
content:"";
display:block;
margin:auto;
position:absolute;
top:-2px;
left:0;
right:0;
width:100px;
}

#event h2 span {letter-spacing:0;}

#event h3 {
font-size:15px;
font-weight:400;
letter-spacing:7px;
text-align:center;
}
#event .swiper-slide img {
height:550px;
object-fit: cover;
width:100%;
}
/*------------------------------ Facebook  ------------------------------*/

#facebook {
background:#eae7e0;
margin:100px 0 0;
padding:50px 0;
width:100%;
}

#facebook h2 {
font-size:30px;
letter-spacing:0.1em;
line-height:1em;
margin:0 auto;
width:960px;
}

#facebook_content {
background:#c0b9a9;
margin:50px auto 0;
width:960px;
text-align: center;
}



#facebook iframe {
display:block;
margin:0 auto;
width:500px;
}

/*------------------------------ Menu  ------------------------------*/

#menu {
padding:50px 0;
}

#menu h2 {
font-size:20px;
font-weight:300;
letter-spacing:0.1em;
line-height:1em;
margin:0 auto;
width:960px;
}


#menu_content {
margin:0 auto;
width:700px;
}

.menu_list {
margin:20px auto 0;
width:600px;
}

.menu_list_item {
display:inline-block;
margin:0;
text-align:left;
}

.menu_list_item p {
line-height:1.75em;
}

.menu_list_item ul {
display:inline-block;
text-align:left;
}

.menu_list_item:nth-child(4n) {
margin:0 0 10px 0;
}

.menu_list_item h3 {
font-size:21px;
letter-spacing:0.1em;
margin:20px 0 5px;
}

.menu_list_item li,
.menu_list_item dl {
list-style:none;
font-size:12px;
line-height:2em;
text-indent:-1em;
margin:0 0 0.5em 1em;
}

.menu_list_item ul ul {
margin:0 0 0 20px;
}

.menu_lunch_course_content {
text-align:center;
}

.menu_lunch_course {
margin:50px 0 0;
font-size:12px;
}

.menu_lunch_course li {
text-align:left;
list-style:none;
line-height:2em;
margin-left: 1em;
}

.menu_lunch_course ul {
display:inline-block;
}

.menu_lunch_course ul ul {
display:block;
}

#menu_dinner {
margin:100px 0 0;
}

#menu_dinner h2 {
font-size:20px;
}

/*------------------------------ Access  ------------------------------*/

#access {
background:#eae7e0;
padding: 50px 0;
}

#access h2 {
font-size:30px;
letter-spacing:0.1em;
line-height:1em;
margin:0 auto;
width:960px;
}

#access_content {
margin:50px auto 0;
width:960px;
}

.access_detail {
margin:30px auto 0;
text-align:left;
width:500px;
}

.access_detail ul {
float:left;
width:300px;
}

.access_detail ul:first-child {
float:left;
width:200px;
}

.access_detail li {list-style:none;}

.access_detail p {
letter-spacing:2px;
margin:1em 0 0;
}

/*------------------------------ About  ------------------------------*/

#shop {
margin:100px auto 0;
padding:0;
width:100%;
}

#shop h2 {
font-size:20px;
letter-spacing:0.1em;
line-height:1em;
margin:0 auto;
width:960px;
}


.drama_intro {
letter-spacing:0.1em;
margin:40px 0 0;
}

.shop_detail {
font-size:12px;
margin:0;
text-align:center;
width:50%;
}

.shop_detail ul {
}

.shop_detail li {
letter-spacing:0.1em;
list-style:none;
line-height:2em;
text-align:left;
}

#shop .titleimage {
margin:0;
width:50%;
}

#shop_content {
display: flex;
flex-wrap: wrap;
margin:0 auto;
width:1000px;
}

/*------------------------------ aisatsu  ------------------------------*/

#aisatsu {
margin:100px auto 0;
padding:0;
width:100%;
}

#aisatsu h2 {
font-size:20px;
letter-spacing:0.1em;
line-height:1em;
margin:0 auto;
width:1000px;
}


.aisatsu_detail {
box-sizing: border-box;
padding:0 50px 0 0;
margin:0;
text-align:left;
font-size:12px;
line-height:2.5em;
width:50%;
}

.aisatsu_detail p {
margin:2em 0 0;
}

.aisatsu_detail ul {
display:inline-block;
}

.aisatsu_detail li {
letter-spacing:2px;
list-style:none;
text-align:left;
}

#aisatsu .titleimage {
width:50%;
margin:0;
}

#aisatsu_content {
display:flex;
margin:20px auto 0;
width:1000px;
}

/*------------------------------ Footer ------------------------------*/

footer {
color:#000;
margin:200px 0 0;
padding:2em 0;
text-align:center;
width:100%;
}

.footer_content {
margin:0 auto;
width:960px;
}

footer .info {padding:0;}

.footer_logo {
padding:0;
}

.footer_logo img {width:140px;}

.footer_icon {
text-align:center;
}

.footer_icon ul {display:block;}

.footer_icon li {
display:inline-block;
margin:0 0 0 30px;
list-style:none;
}

.footer_icon li:first-child {margin:0;}

footer .copyright {
font-size:12px;
letter-spacing:0.2em;
margin:20px 0 0;
padding:1em 0 0;
}

}