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

* {
margin:0;
padding:0;
}

body {
background-size:50px;
color:#000;
font-family:serif;
padding:0;
}

h1, h2, h3, h4 {
font-weight:normal;
}

a:link {color:#000; text-decoration:none;}
a:visited {color:#000; text-decoration:none;}
a:hover {color:#bf9a00; text-decoration:none;}

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

ul {list-style:none;}

.clearfix:after {
content:"."; 
display:block;
clear:both;
height:0;
visibility:hidden;
}

.clearfix {min-height:1px;}

* html .clearfix {
height:1px;
/*¥*//*/
height:auto;
overflow:hidden;
/**/
}



header {
background:#fff;
position:fixed;
top:0;
width:100%;
box-sizing:border-box;
padding:0;
}

#foot_menu {
background:#fff;
border-bottom:3px #ccbb75 solid;
position:fixed;
bottom:0;
width:100%;
box-sizing:border-box;
padding:0;
z-index:70;
}

#foot_menu li {
float:left;
list-style:none;
width:33.33%;
text-align:center;
display:table;
}

#foot_menu li a {
background:url("../images/common/footmenu_bg.png") no-repeat;
background-size:35px;
background-position:50% 50%;
box-sizing:border-box;
display:table-cell;
height:50px;
padding:10px;
vertical-align:middle;
width:100%;
z-index:5;
position:relative;
letter-spacing:0.2em;
}

#foot_menu li a:after {
content:"";
display:block;
border-right:1px #dbd5bf solid;
height:40%;
width:1px;
z-index:10;
position:absolute;
right:0;
top:50%;
transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}

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

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

#foot_menu li a:hover {
background:url("../images/common/footmenu_bg.png") no-repeat #fffcf1;
background-size:35px;
background-position:50% 50%;
color:#bf9a00;
}


section {
display:flex;
}

.one {
display:flex;
align-items:center;
width:100%;
min-height:100vh;
padding:20px;
}

.bg {
position:fixed;
top:0;
left:0;
right:0;
width:100%;
height:100%;
background-position:center center;
background-size:cover;
background-repeat:no-repeat;
opacity:0;
transition:all 0.5s ease 0s;
z-index:-1;
}

.show .bg {opacity:1;}

.bg._01 {background-image:url("../images/home/slide1_2.jpg");}

.bg._02 {background-image:url("../images/home/slide1_2.jpg");}

.bg._03 {background-image:url("../images/home/slide2_2.jpg");}

.bg._04 {background-image:url("../images/home/slide2_2.jpg");}

.bg._05 {
background-image:url("../images/home/slide3_2.jpg");
background-position:85% top;
}

.bg._06 {
background-image:url("../images/home/slide3_2.jpg");
background-position:85% top;
}

.bg._07 {background-image:url("../images/home/slide4_2.jpg");}

.bg._08 {background-image:url("../images/home/slide4_2.jpg");}

.bg._09 {background-image:url("../images/home/slide5_2.jpg");}

.bg._10 {background-image:url("../images/home/slide5_2.jpg");}


.show .bg._02::before,
.show .bg._04::before,
.show .bg._06::before,
.show .bg._08::before,
.show .bg._10::before {
content:'';
background-color:rgba(0,0,0,.7);
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
}

.onebox {
margin:0 auto;
padding:20px;
color:#fff;
background:none;
}

.onebox img {
width:100%;
height:auto;
vertical-align:top;
margin-bottom:15px;
}

.onebox p {
margin:0;
text-align:justify;
letter-spacing:0.1em;
line-height:2.2em;
font-size:1em;
}

body {
margin:0;
padding:0;
}

#contents {
background:#fff;
}


.slide_item_title {
border-top:3px #aaa double;
border-bottom:3px #aaa double;
font-size:1.4em !important;
line-height:1.6em !important;
padding:1em 0;
margin:0 0 1em !important;
text-align:center !important;
}

#contents section {
display:block;
}

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

@media (max-width:767px) {


.br_pc {
display:none;
}


.onebox {
width:100%;
}

.slide_item_title {
text-align:center !important;
}

#foot_menu li:last-child a:after {
border:0;
}

body {
font-size:14px;
}

.line_sp {
display:block;
}

#header_content {
display:block;
padding:10px;
text-align:center;
}

.hamburger-menu {
}

#header_logo {
display:inline-block;
}

#header_logo h1 {
font-size:1em;
}

#header_logo h1 span {
display:block;
font-size:0.5em;
}

#header_logo .subtitle {
margin:5px 0 0;
font-size:0.6em;
}

#header_logo .subtitle img {
width:160px;
}


#contents section {
padding:100px 0 0;
}

#contents section h2 {
font-size:1.5em;
padding:0 0 1em;
text-align:center;
letter-spacing:0.2em;
margin:0 auto;
width:85%;
}

#contents section h3 {
font-size:1.1em;
font-weight:400;
line-height:1.6em;
padding:1em 0;
text-align:center;
letter-spacing:0.1em;
margin:0 auto;
width:85%;
}

#contents section .point {
background:#fffdf9;
box-sizing:border-box;
border:1px #e3d59d solid;
line-height:1.6em;
padding:1em;
text-align:center;
letter-spacing:0.1em;
margin:0 auto;
width:85%;
}

.point dt {
padding:0 0 1em;
border-bottom:3px #d4cba5 double;
}

.point dd {
font-size:0.9em;
margin:1em 0 0;
}

.point dd .number {
display:block;
margin:0 0 0.5em;
}

.point dd .number span {
background:#9d7e00;
border-radius:3em;
color:#fff;
display:inline-block;
width:2em;
height:2em;
line-height:2em;
text-align:center;
}

.point_title {
color:#9d7e00;
display:block;
font-size:1.2em;
}

.point_content {
display:block;
line-height:2em;
margin:1em 0 0;
text-align:justify;
}

#contents section .schedule {
box-sizing:border-box;
line-height:1.6em;
padding:1em 0;
letter-spacing:0.1em;
margin:0 auto;
width:85%;
}

#contents section .schedule h4 {
margin:1em 0 0;
text-align:center;
}

#restaurant {
background:#fffdf9;
box-sizing:border-box;
border:1px #e3d59d solid;
line-height:1.6em;
padding:1em;
text-align:center;
letter-spacing:0.1em;
margin:0 auto;
width:85%;
}

#restaurant h4 {
padding:0 0 1em;
}

#restaurant img {
width:100%;
}

.restaurant_detail {
border:1px #e3d59d solid;
margin:0 0 1em;
}

.titleimage {
width:100%;
}

#faq {
box-sizing:border-box;
line-height:1.6em;
letter-spacing:0.1em;
margin:0 auto;
padding:100px 0 !important;
width:85%;
}

#faq dl {
border-top:1px #d3d3d3 solid;
}

#faq dt {
color:#9d7e00;
font-weight:700;
padding:1em 0 0;
}

#faq dd {
border-bottom:1px #d3d3d3 solid;
padding:1em 0;
}

#nagare_schedule {
border:3px #e3d59d double;
box-sizing:border-box;
margin:0 auto;
padding:1em;
width:85%;
}

#nagare_schedule ul {
position:relative;
}

#nagare_schedule li {
font-size:14px;
display:table;
position:relative;
width:100%
}

#nagare_schedule .arrow:before {
content:"";
width:7px;
height:7px;
border-top:solid 1px #fff;
border-right:solid 1px #fff;
transform:rotate(135deg);
position:absolute;
top:6px;
left:8px;
}

#nagare_schedule .arrow {
background:#d4cba5;
position:absolute;
bottom:-10px;
left:50%;
display:block;
border-radius:50%;
width:23px;
height:23px;
margin:0 auto;
transform:translateX(-50%);
}

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

#nagare_schedule .number {
border-bottom:1px #e8e4d2 solid;
display:table-cell;
color:#9d7e00;
padding:1.5em 0;
text-align:left;
width:30%;
}

#nagare_schedule li:last-child .number {
border:0;
}

#nagare_schedule .content {
display:table-cell;
border-bottom:1px #e8e4d2 solid;
padding:1.5em 0;
width:70%;
}

#nagare_schedule li:last-child .content {
border:0;
}

.restaurant_item h5 {
font-size:1.2em;
font-weight:400;
padding:1em 0 0;
text-align:center;
}

.restaurant_item .intro {
padding:0.5em 0 1em;
text-align:center;
}

.restaurant_item .link a {
background:url(../images/common/icon_link.png) no-repeat;
background-size:16px;
background-position:90% 50%;
border:1px #e3d59d solid;
border-radius:3em;
display:inline-block;
line-height:1em;
margin:0 0 2em;
padding:1em 3.5em 1em 2em;
vertical-align:text-bottom;
}

.restaurant_item .content {
text-align:justify;
}

.restaurant_detail .toggle {
display: none;
}

.restaurant_detail {
position: relative;
margin-bottom: 1em;
}

.restaurant_detail .title,
.restaurant_detail .content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.restaurant_detail .title {
padding: 0.5em;
display: block;
color: #333;
font-weight: bold;
}
.restaurant_detail .title::after,
.restaurant_detail .title::before {
content: "";
position: absolute;
right: 1.25em;
top: 0.75em;
width: 1px;
height: 1em;
background-color: #e3d59d;
transition: all 0.3s;
}
.restaurant_detail .title::after {
transform: rotate(90deg);
}
.restaurant_detail .content {
max-height: 0;
overflow: hidden;
}
.restaurant_detail .content p {
margin: 0;
padding: 0.5em 1em 1em;
font-size: 1em;
line-height: 2em;
}

.restaurant_detail .toggle:checked + .title + .content {
max-height: 500px;
transition: all 1s;
}
.restaurant_detail .toggle:checked + .title::before {
transform: rotate(90deg) !important;
}


/*
.faq_detail .toggle {
display: none;
}
*/

.faq_detail {
position: relative;
}

/*
.faq_detail .title,
.faq_detail .content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
*/

.faq_detail .title {
border-top:1px #ddd solid;
padding:1em 2em 1em 0;
color:#9d7e00;
display: block;
font-weight: bold;
}
/*
.faq_detail .title::after,
.faq_detail .title::before {
content: "";
position: absolute;
right: 0.75em;
top: 1.25em;
width: 1px;
height: 1em;
background-color: #e3d59d;
transition: all 0.3s;
}

.faq_detail .title::after {
transform: rotate(90deg);
}
*/
/*
.faq_detail .content {
max-height: 0;
overflow: hidden;
}
*/

.faq_detail .content p {
margin: 0;
padding:0 0 1em;
font-size: 1em;
line-height:2em;
}

/*
.faq_detail .toggle:checked + .title + .content {
max-height: 500px;
transition: all 1s;
}

.faq_detail .toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

*/

.faq_a {
display:none;
}

.schedule table {
border-collapse:collapse;
border:0;
margin:1em 0;
width:100%;
}

.schedule th {
border-right:1px #9d7e00 solid;
color:#9d7e00;
font-weight:400;
text-align:right;
padding:0.5em;
vertical-align:top;
}

.schedule td {
padding:0.5em;
vertical-align:top;
}


#ishou .intro {
margin:0 auto;
text-align:center;
width:85%;
}

#insta {
padding:50px 0 100px !important;
}

#insta ul {
margin:0 auto;
width:85%;
}

#insta li {
box-sizing: border-box;
padding:1em;
float:left;
width:50%;
}

#insta li img {
width:100%;
}

footer {
background:#ccbb75;
color:#fff;
text-align: center;
padding:2em 0 6em;
}

footer img {
width:40%;
}

}

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

@media all and (min-width:768px) {

.br_sp {
display:none;
}

.line_pc {
display:block;
}


.onebox {
max-width:400px;
}

#foot_menu li:first-child a:before {
content:"";
display:block;
border-right:1px #dbd5bf solid;
height:40%;
width:1px;
z-index:10;
position:absolute;
left:0;
top:50%;
transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}

.restaurant_detail_list {
display:flex;
}

.restaurant_detail_list .restaurant_detail {
flex: 1 0 auto; /* IE11 */
}

body {
font-size:14px;
}

#contents p {
margin:0;
padding:30px;
}

#header_content {
display:block;
padding:15px;
text-align:left;
}

.hamburger-menu {
}

#header_logo {
display:inline-block;
}

#header_logo h1 {
display:inline-block;
font-size:1em;
}

#header_logo h1 span {
display:block;
font-size:0.5em;
}

#header_logo .subtitle {
display:inline-block;
margin:5px 0 0;
font-size:0.6em;
}

#header_logo .subtitle img {
width:200px;
}

#foot_menu ul {
margin:0 auto;
width:500px;
}


#contents section {
margin:0 auto;
padding:100px 0 0;
width:1000px;
}

#contents section img {width:100%;}

#contents section h2 {
font-size:2em;
padding:0 0 1em;
text-align:center;
letter-spacing:0.2em;
}

#contents section h3 {
font-size:1.5em;
font-weight:400;
line-height:1.6em;
padding:2em 0;
text-align:center;
letter-spacing:0.1em;
}


#about .titleimage {
width:100%;
height:600px;
object-fit:cover;
}

#contents section .point {
background:#fffdf9;
box-sizing:border-box;
border:1px #e3d59d solid;
line-height:1.6em;
padding:1em;
text-align:center;
letter-spacing:0.1em;
margin:0 auto;
width:50%;
}

.point dt {
padding:0 0 1em;
border-bottom:3px #d4cba5 double;
font-size:16px;
}

.point dd {
margin:1em 0 0;
}

.point dd .number {
display:block;
margin:0 0 0.5em;
}

.point dd .number span {
background:#9d7e00;
border-radius:3em;
color:#fff;
display:inline-block;
width:2em;
height:2em;
line-height:2em;
text-align:center;
}

.point_title {
color:#9d7e00;
display:block;
font-size:16px;
}

.point_content {
display:block;
line-height:2em;
margin:10px 20px 0;
text-align:justify;
}

#contents section .schedule {
border:1px #e3d59d solid;
box-sizing:border-box;
line-height:1.6em;
padding:1em 0;
letter-spacing:0.1em;
margin:50px auto 0;
width:50%;
}

#contents section .schedule h4 {
border-bottom:1px #e3d59d solid;
margin:0 1em 2em;
padding:15px 0 30px;
font-size: 16px;
line-height:1em;
text-align:center;
}

.schedule table {
border-collapse:collapse;
border:0;
margin:1em auto 0;
}

.schedule th {
border-right:1px #9d7e00 solid;
color:#9d7e00;
font-weight:400;
text-align:right;
padding:0.75em 2em;
vertical-align:top;
}

.schedule td {
padding:0.75em 2em;
vertical-align:top;
}

#about .schedule .note {
padding:0 1em 1em;
text-align:right;
font-size:0.8em;
}


#staff .titleimage {
width:100%;
height:600px;
object-fit:cover;
}


#kaishoku .titleimage {
width:100%;
height:600px;
object-fit:cover;
}



#ishou .titleimage {
width:100%;
height:600px;
object-fit:cover;
}

#ishou .intro {
padding:0;
text-align:center;
}

#restaurant {
background:#fffdf9;
box-sizing:border-box;
border:1px #e3d59d solid;
line-height:1.6em;
padding:20px 50px 50px;
text-align:center;
letter-spacing:0.1em;
margin:0 auto;
width:100%;
}

#restaurant h4 {
border-top:1px #e3d59d solid;
border-bottom:1px #e3d59d solid;
font-size:18px;
padding:1em 0;
margin:1em 0 2em;
}

#restaurant img {
width:100%;
}

.restaurant_item {
margin:0 0 100px;
}

.restaurant_item:last-child {
margin:0;
}


#restaurant .restaurant_item .titleimage {
width:100%;
height:450px;
object-fit:cover;
}

.restaurant_item h5 {
font-size:1.4em;
font-weight:400;
padding:2em 0 0;
text-align:left;
}

#restaurant .restaurant_item .intro {
padding:0.75em 0 2em;
text-align:left;
}

.restaurant_item .content {
text-align:justify;
}

.restaurant_detail .toggle {
display: none;
}

#restaurant .restaurant_detail .thumb {
padding:0 10px;
}

.restaurant_detail .thumb img {
width:100%;
height:170px;
object-fit:cover;
}

#restaurant .content p {
padding:10px;
}

.restaurant_detail {
border:1px #e3d59d solid;
box-sizing:border-box;
position: relative;
margin:0 2% 0 0;
width:32%;
float:left;
}

.restaurant_detail:nth-child(3) {
margin:0;
}

.restaurant_item .link a {
background:url(../images/common/icon_link.png) no-repeat;
background-size:16px;
background-position:90% 50%;
border:1px #e3d59d solid;
border-radius:3em;
display:inline-block;
line-height:1em;
margin:0 0 2em;
padding:1em 3.5em 1em 2em;
vertical-align:text-bottom;
}

.restaurant_detail .title,
.restaurant_detail .content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.restaurant_detail .title {
padding:1em;
display: block;
color: #333;
font-size:18px;
}
/*
.restaurant_detail .title::after,
.restaurant_detail .title::before {
content: "";
position: absolute;
right: 1.25em;
top: 0.75em;
width: 1px;
height: 1em;
background-color: #e3d59d;
transition: all 0.3s;
}
.restaurant_detail .title::after {
transform: rotate(90deg);
}
*/
/*
.restaurant_detail .content {
max-height: 0;
overflow: hidden;
}
*/
.restaurant_detail .content p {
margin: 0;
padding: 0.5em 1em 1em;
font-size: 1em;
line-height: 2em;
}

/*
.restaurant_detail .toggle:checked + .title + .content {
max-height: 2500px;
transition: all 1s;
}

.restaurant_detail .toggle:checked + .title::before {
transform: rotate(90deg) !important;
}
*/


#nagare_schedule {
border:3px #e3d59d double;
box-sizing:border-box;
margin:0 auto;
padding:1em;
width:50%;
}

#nagare_schedule ul {
position:relative;
width:85%;
margin:0 auto;
}

#nagare_schedule li {
font-size:14px;
display:table;
position:relative;
width:100%
}

#nagare_schedule .arrow:before {
content:"";
width:7px;
height:7px;
border-top:solid 1px #fff;
border-right:solid 1px #fff;
transform:rotate(135deg);
position:absolute;
top:6px;
left:8px;
}

#nagare_schedule .arrow {
background:#d4cba5;
position:absolute;
bottom:-10px;
left:50%;
display:block;
border-radius:50%;
width:23px;
height:23px;
margin:0 auto;
transform:translateX(-50%);
}

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

#nagare_schedule .number {
border-bottom:1px #e8e4d2 solid;
display:table-cell;
color:#9d7e00;
padding:2em 0;
text-align:left;
width:8em;
}

#nagare_schedule li:last-child .number {
border:0;
}

#nagare_schedule .content {
display:table-cell;
border-bottom:1px #e8e4d2 solid;
padding:2em 0;
}

#nagare_schedule li:last-child .content {
border:0;
}


.faq_detail .toggle {
display: none;
}

.faq_detail {
position: relative;
}

/*
.faq_detail .title,
.faq_detail .content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
*/

.faq_detail .title {
border-top:1px #ddd solid;
padding:1em 2em 1em 0;
color:#9d7e00;
display: block;
font-weight: bold;
}
/*
.faq_detail .title::after,
.faq_detail .title::before {
content: "";
position: absolute;
right: 0.75em;
top: 1.25em;
width: 1px;
height: 1em;
background-color: #e3d59d;
transition: all 0.5s;
}

.faq_detail .title::after {
transform: rotate(90deg);
}
*/
/*
.faq_detail .content {
max-height: 0;
overflow: hidden;
}
*/

#faq {
padding:100px 0 !important;
}

#faq .faq_detail .content p {
margin: 0;
padding:0 0 1em;
font-size: 1em;
line-height:2em;
}

/*
.faq_detail .toggle:checked + .title + .content {
max-height: 500px;
transition: all 1s;
}

*/
.faq_detail .toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

.faq_a {
display:none;
}


#insta {
padding:50px 0 100px !important;
}

#insta ul {
margin:0 auto;
width:100%;
}

#insta li {
box-sizing: border-box;
padding:1em;
float:left;
width:25%;
}

#insta li img {
width:100%;
}

footer {
background:#ccbb75;
color:#fff;
text-align: center;
padding:2em 0 6em;
}

footer img {
width:200px;
}


}