@charset "UTF-8";

body {
    /*base*/
    color: rgb(30, 30, 30);
    font-family: Noto Sans JP, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN W3, sans-serif;
    font-size: 17px;
    line-height: 1.8;
    word-wrap: break-word;
    font-feature-settings: "pkna"1;
    letter-spacing: 0.06em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    /*base*/
    color: rgb(30, 30, 30);
    word-wrap: break-word;
    font-feature-settings: "pkna"1;
}

p {
    /*base*/
    color: rgb(30, 30, 30);
    text-align: justify;
}

a {
    /*base*/
    color: rgb(30, 30, 30);
    text-decoration: none;
    word-wrap: break-word;
    font-feature-settings: "pkna"1;
}

span {
    /*base*/
    color: rgb(30, 30, 30);
    word-wrap: break-word;
    font-feature-settings: "pkna"1;
}

/*▼▼nav▼▼*/
nav {
    width: 100%;
    margin-bottom: 12%;
    background-color: rgb(240, 243, 245);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5000;
}

nav > div > h1,
nav > div > p {
    padding: 29px 0 28px;
    margin-left: 3.5%;
    font-size: 12px;
    font-weight: 300;
    line-height: 33px;
    color: rgb(110, 110, 110);
    letter-spacing: 0;
    float: left;
}

nav > div > h1 img,
nav > div > p img {
    width: auto;
    height: 33px;
    margin-right: 18px;
}

nav > div > h1 br,
nav > div > p br {
    display: none;
}

nav > div > ul {
    line-height: 1;
    float: right;
}

nav > div > ul > li {
    padding-top: 33px;
    margin-left: 12px;
    float: left;
}

nav > div > ul > li:last-child {
    padding-top: 0;
    margin-left: 35px;
}

nav > div > ul > li > a {
    font-weight: 300;
    color: rgb(136, 136, 136);
}

nav > div > ul > li:last-child > a {
    padding: 25px 15px;
    text-align: center;
    background-color: rgb(127, 151, 165);
    display: block;
}

nav > div > ul > li:last-child > a > span {
    color: #fff;
    display: inline-block;
}

nav > div > ul > li:last-child > a > span:first-child {
    margin-bottom: 5px;
    font-size: 18px;
}

nav > div > ul > li:last-child > a > span:last-child {
    font-size: 14px;
    font-weight: 300;
}

#toggle-menu-button {
    padding: 15px;
    background-color: rgb(127, 151, 165);
    display: none;
    float: right;
}

#toggle-menu-button > div {
    width: 40px;
    height: 40px;
    position: relative;
}

#toggle-menu-button > div > span {
    width: 100%;
    height: 2px;
    background-color: #fff;
    display: block;
    position: absolute;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -ms-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
}

#toggle-menu-button > div > span:nth-child(1) {
    top: 15%;
}

#toggle-menu-button.show > div > span:nth-child(1) {
    top: 50%;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#toggle-menu-button > div > span:nth-child(2) {
    top: 50%;
    left: 0;
    -webkit-transition-delay: 0.2s;
    -moz-transition-delay: 0.2s;
    -ms-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s
}

#toggle-menu-button.show > div > span:nth-child(2) {
    left: 200%;
    opacity: 0;
}


#toggle-menu-button > div > span:nth-child(3) {
    top: 85%;
}

#toggle-menu-button.show > div > span:nth-child(3) {
    top: 50%;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

#toggle-menu {
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.9);
    position: fixed;
    top: 0;
    left: 100%;
    z-index: 4000;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -ms-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    -webkit-transition-delay: 0.2s;
    -moz-transition-delay: 0.2s;
    -ms-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s;
}

#toggle-menu.show {
    left: 0;
}

#toggle-menu > div {
    width: 93%;
    padding: 3% 0;
    margin: 70px auto;
    -webkit-overflow-scrolling: touch
}

#toggle-menu > div > p {
    margin: 3% 0;
    font-size: 25px;
    font-weight: 500;
    text-align: center;
    line-height: 1;
    opacity: 0;
    -webkit-transition-duration: 0.8s;
    -moz-transition-duration: 0.8s;
    -ms-transition-duration: 0.8s;
    -o-transition-duration: 0.8s;
    transition-duration: 0.8s;
}

#toggle-menu.show > div > p {
    opacity: 1;
}

#toggle-menu > div > ul > li {
    width: 48%;
    padding-bottom: 2%;
    border-bottom: 1px solid #000;
    margin-bottom: 2%;
    text-align: center;
    float: left;
    opacity: 0;
    -webkit-transform: translateX(60px);
    -moz-transform: translateX(60px);
    -ms-transform: translateX(60px);
    -o-transform: translateX(60px);
    transform: translateX(60px);
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -ms-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
}

#toggle-menu.show > div > ul > li {
    opacity: 1;
    -webkit-transform: transform: translateX(0);
    -moz-transform: transform: translateX(0);
    -ms-transform: transform: translateX(0);
    -o-transform: transform: translateX(0);
    transform: translateX(0);
}

#toggle-menu.show > div > ul > li:nth-child(1) {
    -webkit-transition-delay: 0.4s;
    -moz-transition-delay: 0.4s;
    -ms-transition-delay: 0.4s;
    -o-transition-delay: 0.4s;
    transition-delay: 0.4s;
}

#toggle-menu.show > div > ul > li:nth-child(2) {
    -webkit-transition-delay: 0.6s;
    -moz-transition-delay: 0.6s;
    -ms-transition-delay: 0.6s;
    -o-transition-delay: 0.6s;
    transition-delay: 0.6s;
}

#toggle-menu.show > div > ul > li:nth-child(3) {
    -webkit-transition-delay: 0.8s;
    -moz-transition-delay: 0.8s;
    -ms-transition-delay: 0.8s;
    -o-transition-delay: 0.8s;
    transition-delay: 0.8s;
}

#toggle-menu.show > div > ul > li:nth-child(4) {
    -webkit-transition-delay: 1.0s;
    -moz-transition-delay: 1.0s;
    -ms-transition-delay: 1.0s;
    -o-transition-delay: 1.0s;
    transition-delay: 1.0s;
}

#toggle-menu.show > div > ul > li:nth-child(5) {
    -webkit-transition-delay: 1.2s;
    -moz-transition-delay: 1.2s;
    -ms-transition-delay: 1.2s;
    -o-transition-delay: 1.2s;
    transition-delay: 1.2s;
}

#toggle-menu.show > div > ul > li:nth-child(6) {
    -webkit-transition-delay: 1.4s;
    -moz-transition-delay: 1.4s;
    -ms-transition-delay: 1.4s;
    -o-transition-delay: 1.4s;
    transition-delay: 1.4s;
}

#toggle-menu.show > div > ul > li:nth-child(7) {
    -webkit-transition-delay: 1.6s;
    -moz-transition-delay: 1.6s;
    -ms-transition-delay: 1.6s;
    -o-transition-delay: 1.6s;
    transition-delay: 1.6s;
}

#toggle-menu > div > ul > li:nth-child(2n+1) {
    margin-right: 4%;
}

#toggle-menu > a {
    width: 100%;
    padding: 26px 0;
    font-size: 18px;
    line-height: 1;
    text-align: center;
    color: #fff;
    background-color: #000;
    opacity: 0;
    position: fixed;
    left: 0;
    bottom: -50%;
    -webkit-transition-duration: 0.6s;
    -moz-transition-duration: 0.6s;
    -ms-transition-duration: 0.6s;
    -o-transition-duration: 0.6s;
    transition-duration: 0.6s;
}

#toggle-menu.show > a {
    opacity: 1;
    bottom: 0;
    -webkit-transition-delay: 0.8s;
    -moz-transition-delay: 0.8s;
    -ms-transition-delay: 0.8s;
    -o-transition-delay: 0.8s;
    transition-delay: 0.8s;
    -webkit-transition-duration: 1.2s;
    -moz-transition-duration: 1.2s;
    -ms-transition-duration: 1.2s;
    -o-transition-duration: 1.2s;
    transition-duration: 1.2s;
}

@media screen and (max-width:1200px) {

    /*▼▼nav▼▼*/

    nav > div > h1,
    nav > div > p {
        margin-left: 2%;
    }

    nav > div > ul > li {
        margin-left: 9px;
    }

    nav > div > ul > li:last-child {
        margin-left: 20px;
    }

}

@media screen and (max-width:1150px) {

    nav > div > h1,
    nav > div > p {
        padding: 26px 0 16px;
        line-height: 1;
    }

    nav > div > h1 img,
    nav > div > p img {
        height: 30px;
        margin-bottom: 6px;
        margin-right: 0;
        margin-left: 1px;
    }

    nav > div > h1 br,
    nav > div > p br {
        display: block;
    }

}

@media screen and (max-width:930px) {

    nav > div > h1,
    nav > div > p {
        padding: 22px 0 18px;
        line-height: 30px;
    }

    nav > div > h1 img,
    nav > div > p img {
        margin-bottom: 0;
        margin-right: 15px;
        margin-left: 0;
    }

    nav > div > h1 br,
    nav > div > p br {
        display: none;
    }

    nav > div > ul {
        display: none;
    }

    #toggle-menu-button {
        display: block;
    }

}

@media screen and (max-width:550px) {

    nav > div > h1,
    nav > div > p {
        padding: 16px 0 12px;
        margin-left: 3.5%;
        line-height: 1;
        color: rgb(150, 150, 150);
    }

    nav > div > h1 img,
    nav > div > p img {
        margin-bottom: 2px;
        height: 28px;
    }

    nav > div > h1 br,
    nav > div > p br {
        display: block;
    }
}

@media screen and (max-width:480px) {

    nav > div > h1,
    nav > div > p {
        padding: 14px 0 12px;
    }

    nav > div > h1 img,
    nav > div > p img {
        height: 22px;
        margin-left: 1px;
    }

    #toggle-menu-button {
        padding: 11px;
    }

}

/*header*/
header {
    width: 100%;
    padding-top: 90px;
    overflow: hidden;
}

@media screen and (max-width:930px) {

    header {
        padding-top: 70px;
    }

}

@media screen and (max-width:480px) {
    header {
        padding-top: 62px;
    }
}

/***rize20200218****************************************************/
		/*reservation*/
		#reservation {
			width: 100%;
			height: 100px;
			margin-bottom: 12%;
			background-color: rgb(205, 215, 220);
			text-align: center;
		}
		#reservation a{
			color: #fff;
			margin-top: 17px;
			display: inline-block;
			padding: 12px 62px 9px;
			background-color: #7f97a5;
		}

		#reservation p {
			font-family: 'Josefin Sans', sans-serif;
			font-size:17px;
			color: #fff;
			line-height: 1.33;
			text-align: center;
		}
		#reservation p span{
			font-size: 14px;
			color: #fff;
			line-height: 1;
			padding-top: 8px;
		}
		#reservation a:hover{
			opacity: 0.8;
		}
/*******************************************************/

/*▼▼contact▼▼*/
#contact {
    padding: 9% 0;
    background-color: rgb(198, 176, 141);
}

#contact > h2 {
    margin-bottom: 1.5%;
    font-size: 63px;
    font-weight: 400;
    font-family: 'Josefin Sans', sans-serif;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #fff;
}

#contact > p {
    margin-bottom: 3%;
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em;
}

#contact > a {
    width: 93%;
    max-width: 450px;
    padding: 35px 0 38px;
    margin: 0 auto;
    line-height: 1;
    text-align: center;
    color: #fff;
    background-color: rgb(150, 150, 150);
    display: block;
}

/*▼▼footer▼▼*/
footer > div {
    width: 93%;
    max-width: 1280px;
    margin: 12% auto 6%;
    position: relative;
}

footer > div > div {
    width: 45%;
    float: left;
}

footer > div > div > p,
footer > div > div > p > span {
    font-size: 15px;
    color: rgb(136, 136, 136);
}

footer > div > div > p:nth-child(1) {
    max-width: 290px;
    margin-bottom: 12%;
}

footer > div > div > p:nth-child(2) {
    margin-bottom: 3%;
    font-weight: 500;
}

footer > div > div > p:nth-child(3) {
    margin-bottom: 1%;
}

footer > div > div > p:nth-child(4) {
    margin-bottom: 2%;
}

footer > div > div > p:nth-child(4) > a {
    font-size: 24px;
    text-decoration: underline;
    color: rgb(136, 136, 136);
}

footer > div > div > p:nth-child(5) {
    margin-bottom: 1.5%;
}

footer > div > div > p:nth-child(6) {
    margin-bottom: 1.5%;
}

footer > div > div > p > span {
    margin-right: 20px;
}

footer > div > div > p > br {
    display: none;
}

footer > div > .sitemap {
    width: 55%;
    line-height: 1;
    float: left;
}

.sitemap a {
    color: rgb(130, 130, 130);
}

footer > div > .sitemap > li {
    width: 25%;
    margin-bottom: 40px;
    float: left;
}

footer > div > .sitemap > li > a {
    padding-bottom: 10px;
    font-size: 18px;
    font-family: 'Josefin Sans', sans-serif;
    display: inline-block;
    position: relative;
}

footer > div > .sitemap > li > a:after {
    content: "";
    width: 30%;
    height: 2px;
    background-color: rgb(130, 130, 130);
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -ms-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s;
}

footer > div > .sitemap > li > a:hover:after {
    width: 100%;
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -ms-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s;
}

footer > div > .sitemap > li > ul {
    margin-top: 20px;
}

footer > div > .sitemap > li > ul > li {
    margin-bottom: 15px;
}

footer > div > .sitemap > li > ul > li:last-child {
    margin-bottom: 0;
}

footer > div > .sitemap > li > ul > li > a {
    margin-left: 25px;
    font-size: 15px;
    line-height: 1;
    display: inline-block;
    position: relative;
}

footer > div > .sitemap > li > ul > li > a:hover {
    opacity: 0.6;
}

footer > div > .sitemap > li > ul > li > a:before {
    content: "";
    width: 15px;
    height: 2px;
    background-color: rgb(130, 130, 130);
    display: block;
    position: absolute;
    top: 51%;
    left: -25px;
}

footer > div > .sns {
    line-height: 1;
    position: absolute;
    bottom: 0;
    right: 0;
}

footer > div > .sns > li {
    margin-left: 20px;
    display: inline-block;
}

footer > div > .sns > li > a:hover {
    opacity: 0.6;
}

footer > div > .sns > li > a > img {
    width: auto;
    height: 35px;
}


@media screen and (max-width:1020px) {

    footer > div > div > p > br {
        display: block;
    }

}

/*▼▼copyright▼▼*/
small {
    padding: 25px 0;
    font-size: 15px;
    line-height: 1;
    text-align: center;
    color: rgb(150, 150, 150);
    background-color: rgb(205, 215, 221);
    display: block;
}

/*▼▼トップにスクロール▼▼*/
#goup {
    width: 50px;
    height: 50px;
    background-image: url(../img/scroll.gif);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    display: block;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 9999;
}

#goup:hover {
    background-image: url(../img/scroll_on.gif);
}

/*==============================================================
tb
==============================================================*/
@media screen and (max-width:896px) {

    /*reservation*/
    #reservation {
        height: 80px;
        margin-bottom: 15%;
    }

    /*▼▼contact▼▼*/
    #contact {
        padding: 13% 0 15%;
    }

    #contact > h2 {
        margin-bottom: 6%;
        font-size: 42px;
    }

    #contact > p {
        margin-bottom: 6%;
    }

    #contact > a {
        max-width: 420px;
        padding: 40px 0;
    }

    /*footer*/
    footer > div {
        margin: 12% auto 9%;
    }

    footer > div > .sitemap {
        width: 50%;
        margin-bottom: 10%;
        float: right;
    }

    footer > div > .sitemap > li {
        width: 50%;
        margin-bottom: 25px;
    }

    footer > div > .sitemap > li > ul {
        margin-top: 15px;
    }

    footer > div > .sitemap > li > ul > li {
        margin-bottom: 10px;
    }

    small {
        padding: 40px 0;
    }

}

.br720 {
    display: none;
}

@media screen and (max-width:720px) {

    .br720 {
        display: block;
    }

}

@media screen and (max-width:600px) {

    footer > div {
        padding: 7.5% 0 12%;
    }

    footer > div > div {
        width: 100%;
        margin-bottom: 15%;
        float: none;
    }

    footer > div > div > p:nth-child(1) {
        width: 60%;
        max-width: 100%;
        margin: 0 auto 6%;
    }

    footer > div > div > p:nth-child(2) {
        margin-bottom: 1.5%;
        text-align: center;
        font-weight: 400;
    }

    footer > div > div > p:nth-child(2) > br {
        display: none;
    }

    footer > div > div > p:nth-child(3) {
        margin-bottom: 4.5%;
        text-align: center;
    }

    footer > div > div > p:nth-child(3) br {
        display: none;
    }

    footer > div > div > p:nth-child(4) {
        margin-bottom: 6%;
        text-align: center;
    }

    footer > div > div > p:nth-child(4) span,
    footer > div > div > p:nth-child(4) a {
        font-size: 25px;
        line-height: 1;
    }

    footer > div > div > p:nth-child(5) {
        margin-bottom: 3%;
        text-align: center;
        line-height: 1;
    }

    footer > div > div > p:nth-child(6) {
        margin-bottom: 2%;
        text-align: center;
        line-height: 1;
    }

    footer > div > div > p:nth-child(7) {
        text-align: center;
    }

    footer > div > div > p:nth-child(7) br:first-child {
        display: none;
    }

    footer > div > ul.sitemap {
        width: 100%;
        padding: 15% 0 10%;
        border-top: 1px solid rgb(130, 130, 130);
        border-bottom: 1px solid rgb(130, 130, 130);
        margin-bottom: 15%;
        float: left;
    }

    footer > div > .sitemap > li {
        margin-bottom: 45px;
    }

    footer > div > .sitemap > li > a:after {
        width: 100%;
    }

    footer > div > .sitemap > li > ul > li {
        margin-bottom: 15px;
    }

    footer > div > ul.sns {
        width: 100%;
        position: static;
        text-align: center;
    }

    footer > div > ul.sns > li:last-child {
        margin-left: 30px;
    }

    footer > div > ul.sns > li:first-child {
        margin-left: 0;
    }

    footer > div > ul.sns li img {
        height: 45px;
    }

}

/*==============================================================
mb
==============================================================*/
@media screen and (max-width:480px) {

    /*reservation*/
    #reservation {
        height: 60px;
        margin-bottom: 60px;
    }

    /*▼▼contact▼▼*/
    #contact {
        padding: 17% 0 19%;
    }

    #contact > h2 {
        margin-bottom: 8%;
        font-size: 36px;
    }

    #contact > p {
        margin-bottom: 7%;
        font-size: 14px;
    }

    #contact > a {
        max-width: 420px;
        padding: 38px 0 41px;
        font-size: 20px;
    }

    /*footer*/
    footer > div {
        padding: 9% 0 7.5%;
    }

    footer > div > div > p:nth-child(1) {
        width: 70%;
        margin: 0 auto 9%;
    }

    footer > div > div > p:nth-child(2) {
        margin-bottom: 3%;
        line-height: 1.5;
    }

    footer > div > div > p:nth-child(2) > br {
        display: block;
    }

    footer > div > div > p:nth-child(4) {
        margin-bottom: 7.5%;
    }

    footer > div > div > p:nth-child(7) br:first-child {
        display: block;
    }

    footer > div > ul.sitemap {
        padding: 15% 0 9%;
        margin-bottom: 15%;
    }

    footer > div > .sitemap > li {
        margin-bottom: 30px;
    }

    footer > div > .sitemap > li > a {
        padding-bottom: 8px;
    }

    footer > div > .sitemap > li > a:after {
        height: 1px;
    }

    footer > div > .sitemap > li > ul {
        margin-top: 20px;
    }

    footer > div > .sitemap > li > ul > li > a:before {
        height: 1px;
    }

    footer > div > ul.sns li img {
        height: 30px;
    }

    footer > div > ul.sns > li:last-child {
        margin-left: 25px;
    }

    /*copyright*/
    small {
        padding: 25px 0;
    }

}

/*===============================
//
レスポンシブ｜表示・非表示
//
===============================*/

@media screen and (min-width:897px) {
    .pc {
        display: block
    }

    .tb {
        display: none
    }

    .mb {
        display: none
    }

    .pc_tb {
        display: block
    }

    .tb_mb {
        display: none
    }
}

@media screen and (max-width:896px) {
    .pc {
        display: none
    }

    .tb {
        display: block
    }

    .mb {
        display: none
    }

    .pc_tb {
        display: block
    }

    .tb_mb {
        display: block
    }
}


@media screen and (max-width:480px) {
    .pc {
        display: none
    }

    .tb {
        display: none
    }

    .mb {
        display: block
    }

    .pc_tb {
        display: none
    }

    .tb_mb {
        display: block
    }
}
