@charset "UTF-8";
/*-----------------------------------------------------*/
/* PC用 */
/*-----------------------------------------------------*/
@media only screen and (min-width: 1181px) {

.container{
    width: 98%;
    margin: 0 auto;
    justify-content: center;
    align-items: center;
    font-family: "Noto Serif", serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.slideshow {
    position: relative;
    width: 100%;  /* 画像の幅（調整可能） */
    height: 80vh; /* 画像の高さ（調整可能） */
    overflow: hidden;
    margin-top: 10PX;
}

.slideshow img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    animation: fade 12s infinite;
}

/* 各画像の表示タイミングをずらす */
.slideshow img:nth-child(1) {
    animation-delay: 0s;
}
.slideshow img:nth-child(2) {
    animation-delay: 3s;
}
.slideshow img:nth-child(3) {
    animation-delay: 6s;
}
.slideshow img:nth-child(4) {
    animation-delay: 9s;
}

/* ゆっくりフェードアニメーション */
@keyframes fade {
    0% { opacity: 0; }
    15% { opacity: 1; }  /* ゆっくりフェードイン */
    40% { opacity: 1; }  /* しばらく表示 */
    60% { opacity: 0; }  /* ゆっくりフェードアウト */
    100% { opacity: 0; }
}

.top{
    width: 100%;
    display: flex;
}

.top1{
    width: 40%;
    padding-top: 40px;
    padding-left: 170px;
    color: #666666;
}

.top1 p{
    padding-left: 80px;

}

.top2{
    width: 20%;
    padding-left: 90px;
    padding-top: 10px;
}

.top2 img{
    width: 140px;
}

.top3{
    width: 40%;
    padding-left: 350px;
    padding-top: 20px;
}

.top3 ul{
    list-style: none;
    writing-mode: vertical-lr; /* 左から右に縦書き */
    text-orientation: upright; /* 文字を正しく表示 */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px; /* 均等な間隔を設定 */
    
}

.top3 a{
    text-decoration-line: none;
    color: #111;
}

.top3 a:hover{
    color: #bcbaba;
}

/*==================================================
スライダーのためのcss
===================================*/
.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
    margin-top: 50px;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 3px;/*スライド左右の余白調整*/
}

.lunch{
    width: 50%;
    height: 60vh;
    margin-top: 10%;
    margin-left: 370px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 70px;
}

.lunch h2{
    font-size: 36px;
}

.lunch img{
    width: 50px;
    padding-top: 20px;
}

.dinner{
    width: 50%;
    height: 60vh;
    margin-top: 5%;
    margin-left: 370px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 70px;
}

.dinner h2{
    font-size: 36px;
}

.yoyaku{
    width: 50%;
    height: 70vh;
    margin-top: 5%;
    margin-left: 370px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 70px;
}

.yoyaku h2{
    font-size: 36px;
}

.yoyaku img{
    width: 50px;
    padding-top: 20px;
}

.access{
    width: 50%;
    height: 90vh;
    margin-top: 5%;
    margin-left: 370px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 50px;
}

.access h2{
    font-size: 36px;
}

.access iframe{
    width: 400px;
    padding-top: 20px;
}

.fotter{
    width: 100%;
    display: flex;
}

.fotter1{
    width: 30%;
    margin-top: 5%;
    padding-left: 15%;
}

.fotter1 img{
    width: 200px;
}

.fotter2{
    width: 40%;
    padding-left: 250px;
    padding-top: 70px;
    margin-left: 30%;
}

.fotter2 ul{
    list-style: none;
    writing-mode: vertical-lr; /* 左から右に縦書き */
    text-orientation: upright; /* 文字を正しく表示 */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px; /* 均等な間隔を設定 */
}

.fotter2 a{
    text-decoration-line: none;
    color: #111;
}

.fotter2 a:hover{
    color: #bcbaba;
}

.fotter3{
    width: 100%;
    text-align: center;
    padding-bottom: 10px;
} 
}





























/*-----------------------------------------------------*/
/* タブレット用のCSS */
/*-----------------------------------------------------*/
@media only screen and (min-width:600px) and (max-width:1180px) {
.container{
    width: 98%;
    margin: 0 auto;
    justify-content: center;
    align-items: center;
    font-family: "Noto Serif", serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.slideshow {
    position: relative;
    width: 100%;  /* 画像の幅（調整可能） */
    height: 80vh; /* 画像の高さ（調整可能） */
    overflow: hidden;
    margin-top: 10PX;
}

.slideshow img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    animation: fade 12s infinite;
}

/* 各画像の表示タイミングをずらす */
.slideshow img:nth-child(1) {
    animation-delay: 0s;
}
.slideshow img:nth-child(2) {
    animation-delay: 3s;
}
.slideshow img:nth-child(3) {
    animation-delay: 6s;
}
.slideshow img:nth-child(4) {
    animation-delay: 9s;
}

/* ゆっくりフェードアニメーション */
@keyframes fade {
    0% { opacity: 0; }
    15% { opacity: 1; }  /* ゆっくりフェードイン */
    40% { opacity: 1; }  /* しばらく表示 */
    60% { opacity: 0; }  /* ゆっくりフェードアウト */
    100% { opacity: 0; }
}

.top{
    width: 100%;
    display: flex;
}

.top1{
    width: 40%;
    padding-top: 40px;
    padding-left: 70px;
    color: #666666;
}

.top1 p{
    padding-left: 80px;

}

.top2{
    width: 20%;
    padding-left: 90px;
    padding-top: 10px;
}

.top2 img{
    width: 140px;
}

.top3{
    width: 40%;
    padding-left: 250px;
    padding-top: 20px;
}

.top3 ul{
    list-style: none;
    writing-mode: vertical-lr; /* 左から右に縦書き */
    text-orientation: upright; /* 文字を正しく表示 */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px; /* 均等な間隔を設定 */
    
}

.top3 a{
    text-decoration-line: none;
    color: #111;
}

.top3 a:hover{
    color: #bcbaba;
}

/*==================================================
スライダーのためのcss
===================================*/
.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
    margin-top: 50px;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 3px;/*スライド左右の余白調整*/
}

.lunch{
    width: 50%;
    height: 60vh;
    margin-top: 10%;
    margin-left: 300px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 70px;
}

.lunch h2{
    font-size: 36px;
}

.lunch img{
    width: 50px;
    padding-top: 20px;
}

.dinner{
    width: 50%;
    height: 60vh;
    margin-top: 5%;
    margin-left: 300px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 70px;
}

.dinner h2{
    font-size: 36px;
}

.yoyaku{
    width: 50%;
    height: 70vh;
    margin-top: 5%;
    margin-left: 300px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 70px;
}

.yoyaku h2{
    font-size: 36px;
}

.yoyaku img{
    width: 50px;
    padding-top: 20px;
}

.access{
    width: 50%;
    height: 80vh;
    margin-top: 5%;
    margin-left: 300px;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 50px;
}

.access h2{
    font-size: 36px;
}

.access iframe{
    width: 400px;
    padding-top: 20px;
}

.fotter{
    width: 100%;
    display: flex;
}

.fotter1{
    width: 30%;
    margin-top: 5%;
    padding-left: 10%;
}

.fotter1 img{
    width: 200px;
}

.fotter2{
    width: 40%;
    padding-left: 250px;
    padding-top: 70px;
    margin-left: 30%;
}

.fotter2 ul{
    list-style: none;
    writing-mode: vertical-lr; /* 左から右に縦書き */
    text-orientation: upright; /* 文字を正しく表示 */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px; /* 均等な間隔を設定 */
}

.fotter2 a{
    text-decoration-line: none;
    color: #111;
}

.fotter2 a:hover{
    color: #bcbaba;
}

.fotter3{
    width: 100%;
    text-align: center;
    padding-bottom: 10px;
} 
}





























/*-----------------------------------------------------*/
/* スマホ用のCSS */
/*-----------------------------------------------------*/
@media only screen and (max-width: 599px) {
.container{
    width: 98%;
    margin: 0 auto;
    font-family: "Noto Serif", serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.slideshow {
    position: relative;
    width: 100%;  /* 画像の幅（調整可能） */
    height: 50vh; /* 画像の高さ（調整可能） */
    overflow: hidden;
    margin-top: 10PX;
}

.slideshow img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    animation: fade 12s infinite;
}

/* 各画像の表示タイミングをずらす */
.slideshow img:nth-child(1) {
    animation-delay: 0s;
}
.slideshow img:nth-child(2) {
    animation-delay: 3s;
}
.slideshow img:nth-child(3) {
    animation-delay: 6s;
}
.slideshow img:nth-child(4) {
    animation-delay: 9s;
}

/* ゆっくりフェードアニメーション */
@keyframes fade {
    0% { opacity: 0; }
    15% { opacity: 1; }  /* ゆっくりフェードイン */
    40% { opacity: 1; }  /* しばらく表示 */
    60% { opacity: 0; }  /* ゆっくりフェードアウト */
    100% { opacity: 0; }
}

.top{
    width: 100%;
    display: flex;
}

.top1{
    width: 70%;
    padding-top: 30px;
    padding-left: 60px;
    color: #666666;
}

.top1 h1{
    font-size: 14px;
}

.top1 p{
    font-size: 10px;
    padding-left: 15px;
}

.top2{
    width: 30%;
    padding-top: 10px;
}

.top2 img{
    width: 80px;
}

.top3{
    display: none;
}
}


/*==================================================
スライダーのためのcss
===================================*/
.slider img {
    width:80%;/*スライダー内の画像を横幅100%に*/
    height:auto;
    margin-top: 10px;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 1px;/*スライド左右の余白調整*/
}

.lunch{
    width: 88%;
    margin: 0 auto;
    height: 45vh;
    margin-top: 10%;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 50px;
}

.lunch h2{
    font-size: 24px;
}

.lunch p{
    font-size: 14px;
}

.lunch img{
    width: 50px;
    padding-top: 20px;
}

.dinner{
    width: 88%;
    margin: 0 auto;
    height: 45vh;
    margin-top: 10%;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 50px;
}

.dinner h2{
    font-size: 24px;
}

.dinner h3{
    font-size: 15px;
}

.dinner p{
    font-size: 14px;
}

.yoyaku{
    width: 88%;
    margin: 0 auto;
    height: 55vh;
    margin-top: 10%;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 50px;
}

.yoyaku h2{
    font-size: 24px;
}

.yoyaku h3{
    font-size: 15px;
}

.yoyaku p{
    font-size: 14px;
}

.yoyaku img{
    width: 50px;
    padding-top: 20px;
}

.access{
    width: 88%;
    margin: 0 auto;
    height: 45vh;
    margin-top: 10%;
    text-align: center;
    background-color: whitesmoke;
    padding-top: 40px;
}

.access h2{
    font-size: 24px;
}

.access iframe{
    width: 200px;
    height: 30vh;
    padding-top: 20px;
}

.fotter{
    width: 100%;
    display: flex;
}

.fotter1{
    width: 30%;
    margin-top: 5%;
    padding-left: 37%;
}

.fotter1 img{
    width: 100px;
}

.fotter2{
    width: 40%;
    padding-left: 250px;
    padding-top: 70px;
    margin-left: 30%;
}

.fotter2 ul{
    list-style: none;
    writing-mode: vertical-lr; /* 左から右に縦書き */
    text-orientation: upright; /* 文字を正しく表示 */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px; /* 均等な間隔を設定 */
}

.fotter2 a{
    text-decoration-line: none;
    color: #111;
}

.fotter2 a:hover{
    color: #bcbaba;
}

.fotter2{
    display: none;
}

.fotter3{
    width: 100%;
    text-align: center;
    padding-bottom: 10px;
    font-size: 10px;
} 
}