@charset "UTF-8";
@media screen and (min-width: 481px) {
    #fb-root, #fb-root div, .fb-page {
        font-family: serif!important;
    }
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
    .fl {
        float: left;
    }
    .fr {
        float: right;
    }
    html {
        height: 100%;
        width: 100%;
    }
    body {
        height: 100%;
        margin: 0;
        text-align: center;
        line-height: 1em;
        width: 100%;
        color: #000;
        background-color: #fff;
        -webkit-text-size-adjust: 100%;
    }
    * {
        margin: 0;
        padding: 0;
    }
    .onsp {
        display: none;
    }
    .onpc {
        display: inherit;
    }
    /*Link Greem*/
    
    a {
        color: #6a7f24;
        text-decoration: none;
    }
    a:hover {
        color: #c26f12;
        text-decoration: none;
    }
    .fg {
        font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    }
    .tt,
    .ttt {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-orientation: upright;
    }
    .hh {
        font-size: 10px;
        text-indent: 100%;
        display: block;
        white-space: nowrap;
        overflow: hidden;
    }
    /* header *********************************************************************/
    
    header {
        height: 99px;
        position: fixed;
        top: 0px;
        left: 0px;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 10%, rgba(255, 255, 255, 0.6) 60%, transparent 100%);
        z-index: 100;
        width: 100%;
    }
    header.sub {
        background: #fff;
    }
    #header {
        width: 1000px;
        min-width: 1000px;
        height: 99px;
        margin-left: auto;
        margin-right: auto;
    }
    #header h1 {
        width: 213px;
        float: left;
        display: block;
        position: relative;
        z-index: 99999;
        height: 85px;
        margin: 7px auto auto 10px;
    }
    #header h1 a {
        font-size: 10px;
        font-weight: 300;
        text-indent: 100%;
        width: 213px;
        height: 85px;
        display: block;
        white-space: nowrap;
        overflow: hidden;
        background-image: url(../images/logo.png);
        background-repeat: no-repeat;
        background-position: 0px 0px;
        background-size: cover;
        transition-property: all;
        transition: 0.2s linear;
    }
    #header h1 a:hover {
        filter: brightness(100%) drop-shadow(0px 0px 5px rgba(255, 255, 255, 1)) drop-shadow(0px 0px 5px rgba(255, 255, 255, .1));
    }
    .navbar_toggle {
        display: none;
    }
    nav {
        float: right;
    }
    nav ul {
        height: 65px;
        margin: 17px 10px;
    }
    nav li {
        float: left;
        height: 65px;
        text-align: center;
    }
    nav li a {
        font-weight: 600;
        font-size: 16px;
        color: #000;
        text-decoration: none;
        transition-property: all;
        transition: 0.2s linear;
        line-height: 65px;
        padding: 0em 1.5em;
        display: inline-block;
    }
    nav li a:hover {
        color: #6a7f24;
        font-weight: 600;
        filter: brightness(100%) drop-shadow(0px 0px 5px rgba(255, 255, 255, 1)) drop-shadow(0px 0px 5px rgba(255, 255, 255, .1));
    }
    /* Slider swiper *********************************************************/
    
    .swiper-slide {
        overflow: hidden;
        backface-visibility: hidden;
    }
    .slide-img {
        background-size: cover;
        background-position: center center;
        height: 100vh;
    }
    .slide-img img {
        width: 100%;
        display: block;
    }
    .slide-img i {
        display: none;
    }
    .slide-img#sl0 {
        background-image: url(../slider/0.jpg);
    }
    .slide-img#sl1 {
        background-image: url(../slider/001.jpg);
    }
    .slide-img#sl2 {
        background-image: url(../slider/002.jpg);
    }
    .slide-img#sl3 {
        background-image: url(../slider/003.jpg);
    }
    .slide-img#sl4 {
        background-image: url(../slider/004.jpg);
    }
    .slide-text {
        font-size: 32px;
        position: absolute;
        color: #fff;
        padding-top: 60px;
        top: 50%;
        transform: translateY(-50%);
        width: 100%;
        text-align: center;
        letter-spacing: 0.1em;
        margin-left: 0.1em;
        text-shadow: 0px 0px 4px #000, 0px 0px 6px #453110;
        display: block;
    }
    #container {
        background-repeat: no-repeat;
        background-position: center center;
        background-size: auto;
        z-index: 1;
        min-width: 1000px;
    }
    .slide-text p {
        font-weight: 600;
        display: block;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        line-height: 1.75em;
    }
    /* News ***********************************************/
    
    #News {
        padding-bottom: 15px;
        background-color: #fff;
        clear: both;
        width: 980px;
        min-width: 980px;
        margin: 40px auto;
        text-align: left;
    }
    #News h3 {
        font-size: 24px;
        font-weight: 600;
        height: 52px;
        line-height: 52px;
        text-indent: 35px;
        margin: 25px 25px 0;
    }
    #News ul,
    #News dl {
        padding-top: 0px;
        padding-left: 25px;
        padding-right: 25px;
        padding-bottom: 0px;
        margin-top: 6px;
        margin-left: 0px;
        margin-right: 0px;
        margin-bottom: 0px;
    }
    #News dt {
        font-size: 16px;
        padding: 14px 0px;
        margin: 0px;
        line-height: 20px;
        width: 7em;
        clear: both;
        float: left;
        text-align: center;
    }
    #News dd {
        font-size: 16px;
        line-height: 20px;
        padding: 14px 0px 14px 7em;
        margin: 0px;
        border-bottom: 1px solid #555;
    }
    #News dd strong.new {
        color: #c00;
        padding-left: 0.5em;
        display: inline-block;
    }
    #News dd a,
    #News ul li a,
    .opbt {
        color: black;
        cursor: pointer;
        color: #000;
    }
    #News dd a:hover,
    #News ul li a:hover {
        text-decoration: underline;
    }
    #News ul li {
        font-size: 16px;
        line-height: 24px;
        padding: 14px 0px 14px 1em;
        margin: 0px;
        border-bottom: 1px solid #555;
    }
    #News ul li:last-child {
        border: none;
        font-weight: 600;
    }
    #News .topics {
        margin: 25px 25px 10px;
        padding: 20px;
        background-color: #222;
    }
    #News .topics h4 {
        font-weight: 600;
        font-size: 16px;
        padding-bottom: 12px;
        color: #bf5600;
    }
    #News .topics h4:nth-of-type(n+2) {
        padding-top: 24px;
    }
    #News .topics p {
        font-size: 14px;
        line-height: 165%;
    }
    #News .topics p a {
        text-decoration: underline;
    }

    #News ul li.t-btn {
    display:flex;
    flex-direction: column;
    }
    
    #News ul li.t-btn a {
    width:20em;
text-align:center;
        color: #6a7f24;
        font-size: 14px;
        font-weight: 600;
        line-height: 32px;
        padding: 0px 21px;
        margin: 0 0 10px;
        border: 1px solid #6a7f24;
        transition-property: all;
        transition: 0.2s linear;
    }
    #News ul li.t-btn a:hover {
        color: #6a7f24;
        background-color: #e3ecbd;
        text-decoration:none;
    }
    #News a.n-btn {
        color: #6a7f24;
        font-size: 14px;
        font-weight: 600;
        line-height: 32px;
        padding: 0px 21px;
        margin: 8px 0 0;
        border: 1px solid #6a7f24;
        display: inline-block;
        transition-property: all;
        transition: 0.2s linear;
    }
    #News a.n-btn:hover {
        color: #6a7f24;
        background-color: #fff;
    }
    /* Footer ****************************************/
    
    footer {
        padding-top: 55px;
        min-width: 1000px;
        background-image: url(../images/bk_ftu.png), url(../images/bk_footer.jpg);
        background-repeat: no-repeat, repeat;
        background-position: center center, center center;
    }
    footer .footer {
        color: #fff;
        width: 420px;
        margin: auto;
        background-image: url(../images/bk_ft.png);
        background-repeat: no-repeat;
        background-position: left center;
        padding: 10px 0;
    }
    footer .footer .ft_address {
        text-align: left;
        padding-left: calc(50% - 60px);
    }
    footer .footer .ft_address h2 {
        font-size: 22px;
        line-height: 1em;
        letter-spacing: 0.1em;
    }
    footer .footer .ft_address h2 span {
        font-size: 30px;
        letter-spacing: 0.1em;
    }
    footer .footer .ft_address h2 + p {
        padding-top: 12px;
        font-size: 16px;
        line-height: 175%;
    }
    footer .footer .ft_address h2 + p + p a {
        font-size: 22px;
        color: #fff;
        line-height: 2em;
        letter-spacing: 0.2em;
    }
    footer .footer .ft_address h2 + p + p + p {
        font-size: 14px;
        line-height: 200%;
    }
    footer .copyright {
        color: #fff;
        clear: both;
        line-height: 110px;
        font-size: 12px;
    }
    /* Page Top ****************************************/
    
    #page-top {
        position: fixed;
        bottom: 30px;
        right: 20px;
    }
    #page-top img {
        font-size: 12px;
        width: 50px;
    }
    #page-top img:hover {
        opacity: 0.8;
    }
    /* Top Section ****************************************/
    
    section#detail_top .detail_top {
        width: 1000px;
        min-width: 1000px;
        margin: 0 auto 100px;
        text-align: center;
    }
    section#detail_top h2 {
        font-size: 10px;
        height: 204px;
        width: 143px;
        background: url('../images/logot.png') no-repeat border-box center center;
        margin: 0 40px;
        display: inline-block;
    }
    section#detail_top h2 + p {
        font-size: 24px;
        line-height: 44px;
        font-weight: 600;
        padding-top: 44px;
    }
    section#detail_top h2 + p span {
        display: block;
        padding-top: 40px;
    }
    section#detail_top h3 {
        font-size: 32px;
        font-weight: 600;
        text-align: center;
        display: block;
        padding-top: 100px;
    }
    section#detail_top h3 + p {
        font-size: 18px;
        line-height: 1em;
        font-weight: 600;
        padding: 34px 0 20px;
    }
    section ul.dtl {
        display: inline-block;
        margin-left: auto;
        margin-right: auto;
    }
    section ul.dtl li {
        display: block;
        float: left;
        margin: 14px;
    }
    section ul.dtl li h4 {
        font-size: 20px;
        font-weight: 600;
        line-height: 1em;
        padding-top: 24px;
    }
    section ul.dtl li h4 + p {
        font-size: 14px;
        line-height: 1em;
        padding-top: 24px;
    }
    section ul.dtl li p {
        font-size: 18px;
        line-height: 1em;
        padding-top: 24px;
    }
    /* Top Section links ************************************/
    
    .topinfo {
        margin-top: 40px;
        font-size: 18px;
        clear: both;
        width: 980px;
        height: 62px;
        text-align: right;
    }
    .topinfo li {
        display: inline-block;
        text-align: center;
    }
    .topinfo li a {
        display: block;
        width: 452px;
        line-height: 58px;
        color: #7f9241;
        border: 2px solid #a4b275;
        transition-property: all;
        transition: 0.2s linear;
        background: #fff url('../images/allow.png') no-repeat border-box 360px center;
    }
    .topinfo li a span {
        display: inline-block;
        position: relative;
        text-indent: 25px;
    }
    .topinfo li a span:before {
        position: absolute;
        left: -5px;
        content: "";
        display: inline-block;
        width: 25px;
        height: 58px;
        background: url('../images/ume.png') no-repeat center center;
        background-size: 25px 25px;
    }
    .topinfo li a:hover {
        background: #f1f3eb url('../images/allow.png') no-repeat border-box 360px center;
    }
    /* ■ Detail ************************************/
    
    .main {
        width: 100%;
        min-width: 1000px;
        height: 440px;
        margin-top: 99px;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .main#sub1 {
        background-image: url(../images/main_bk_sub1.jpg);
        background-position: center center;
    }
    .main#sub2 {
        background-image: url(../images/main_bk_sub2.jpg);
        background-position: bottom center;
    }
    .main#sub3 {
        background-image: url(../images/main_bk_sub3.jpg);
        background-position: center center;
    }
    .main#sub4 {
        background-image: url(../images/main_bk_sub4.jpg);
        background-position: center center;
    }
    .main#sub5 {
        background-image: url(../images/main_bk_sub5.jpg);
        background-position: bottom center;
    }
    /* Sub Section ****************************************/
    
    section#detail_sub {
        position: relative;
        padding-top: 106px
    }
    section#detail_sub h2 {
        position: absolute;
        font-size: 38px;
        font-weight: 600;
        color: #fff;
        line-height: 106px;
        width: 100%;
        background: url('../images/bk_h2.png') repeat-x border-box center center;
        top: -12px;
    }
    .bko1 {
        position: absolute;
        left: 1%;
        top: 0;
    }
    .bko2 {
        position: absolute;
        right: 0;
        bottom: 0;
    }
    section#detail_sub .detail_sub {
        width: 1000px;
        min-width: 1000px;
        margin: 0 auto 100px;
        text-align: center;
    }
    section#detail_sub h3 {
        font-size: 22px;
        font-weight: 600;
        line-height: 150%;
        margin-top: 90px;
    }
    section#detail_sub h3 + p {
        font-size: 16px;
        line-height: 175%;
    }
    section#detail_sub h3 + p img {
        margin: 25px auto 25px;
    }
    /* Sub Section こだわり****************************************/
    
    section#detail_sub ul.kodawari-dtl {
        display: inline-block;
        margin: 40px auto 0;
        width: 772px;
    }
    section#detail_sub ul.kodawari-dtl li {
        display: block;
        float: left;
        margin: 22px;
        width: 342px;
    }
    section#detail_sub ul.kodawari-dtl li img {
        width: 342px;
    }
    section#detail_sub ul.kodawari-dtl li h4 {
        font-size: 28px;
        font-weight: 600;
        line-height: 1em;
        padding-top: 24px;
    }
    section#detail_sub ul.kodawari-dtl li h4 + p {
        font-size: 16px;
        line-height: 175%;
        text-align: left;
        padding-top: 24px;
    }
    /* Sub Section 店舗案内****************************************/
    
    p.tenpo {
        font-size: 16px;
        line-height: 1em;
        padding: 90px 0 80px;
    }
    section#detail_sub ul.tenpo-dtl {
        display: inline-block;
        width: 962px;
        margin-bottom: 100px;
    }
    section#detail_sub ul.tenpo-dtl li {
        display: block;
        float: left;
        margin: 22px;
        width: 432px;
    }
    section#detail_sub ul.tenpo-dtl li img {
        width: 432px;
    }
    section#detail_sub ul.tenpo-dtl li p {
        font-size: 16px;
        line-height: 175%;
        text-align: left;
        padding-top: 16px;
    }
    section#detail_sub ul.tenpo-dtl li:last-child p {
        font-size: 13px;
    }
    /* Sub Section お品書き****************************************/
    
    .os {
        background: url(../images/bk_o.jpg);
        padding-bottom: 80px;
    }
    section#detail_sub .oshinagaki,
    section#detail_sub .obento {
        width: 960px;
        text-align: left;
        margin-left: auto;
        margin-right: auto;
        position: relative;
        z-index: 1;
    }
    section#detail_sub .oshinagaki p.tax,
    section#detail_sub .obento p.tax {
        font-weight: 600;
        font-size: 16px;
        line-height: 1em;
        text-align: right;
        padding-top: 30px;
    }
    section#detail_sub .oshinagaki p + h3,
    section#detail_sub .obento p + h3 {
        margin-top: 10px;
    }
    section#detail_sub .oshinagaki h3,
    section#detail_sub .obento h3 {
        margin-top: 40px;
    }
    section#detail_sub .oshinagaki h3 img,
    section#detail_sub .obento h3 img {
        height: 50px;
    }
    section#detail_sub .oshinagaki ul li {
        float: left;
        display: block;
        width: 50%;
    }
    section#detail_sub .oshinagaki ul li p {
        text-align: left;
        font-size: 18px;
        font-weight: 600;
    }
    section#detail_sub .oshinagaki ul li img {
        width: 422px;
    }
    section#detail_sub .oshinagaki ul li h3 {
        width: 100%;
    }
    section#detail_sub .oshinagaki ul li h3 img {
        width: auto;
    }
    section#detail_sub .oshinagaki ul li img + p {
        position: relative;
        margin: 0 10%;
        padding-top: 12px;
    }
    section#detail_sub .oshinagaki ul li img + p span {
        position: absolute;
        right: 15%;
    }
    section#detail_sub .oshinagaki ul li p {
        line-height: 50px;
        position: relative;
        margin: 0 10%;
    }
    section#detail_sub .oshinagaki ul li p em {
        width: 2em;
        text-align: center;
        display: inline-block;
    }
    section#detail_sub .oshinagaki ul li p span {
        position: absolute;
        right: 15%;
    }
    section#detail_sub .oshinagaki ul li p:first-child {
        margin-top: 40px;
    }
    section#detail_sub .obento h4 {
        margin: 20px 80px 10px 0;
        font-size: 20px;
        font-weight: 600;
        line-height: 175%;
        border-bottom: 1px solid #000;
    }
    section#detail_sub .obento div.herf,
    section#detail_sub .obento div.herf2 {
        width: 50%;
        padding-bottom: 80px;
    }
    section#detail_sub .obento div.herf {
        padding-left: 24px;
        box-sizing: border-box;
        float: left;
    }
    section#detail_sub .obento div.herf p img {
        width: 380px;
    }
    section#detail_sub .obento div.herf2 {
        padding-top: 30px;
        float: right;
    }
    section#detail_sub .obento div.herf ul {
        width: 100%;
    }
    section#detail_sub .obento div.herf ul li {
        float: none;
        width: 100%;
        font-size: 18px;
        line-height: 40px;
        font-weight: 600;
    }
    section#detail_sub .obento .fs {
        font-size: 16px;
    }
    section#detail_sub .obento p.tare {
        padding-bottom: 60px;
        background: url('../images/tare.png') no-repeat border-box 180px center;
    }
    .slider img {
        width: 100%;
    }
    .slider p {
        text-align: center;
        line-height: 175%;
    }
    .thumb {
        padding-top: 30px;
    }
    .thumb img {
        width: 100%;
    }
    section#detail_sub .obento div.herf2 {
        padding-top: 30px;
    }
    /* Sub Section アクセス****************************************/
    
    section#detail_sub .access {
        width: 900px;
        text-align: left;
        margin-left: auto;
        margin-right: auto;
        position: relative;
        z-index: 1;
        padding-bottom: 100px;
    }
    section#detail_sub .access div {
        float: left;
        width: 50%;
    }
    section#detail_sub .access div.map {
        text-align: center;
        padding-top: 120px;
    }
    section#detail_sub .access h3 {
        font-size: 42px;
        line-height: 1em;
        letter-spacing: 0.1em;
        padding-bottom: 20px;
    }
    section#detail_sub .access h3 span {
        font-size: 32px;
        line-height: 1em;
    }
    section#detail_sub .access h3 + p {
        font-size: 18px;
        line-height: 2em;
        padding-bottom: 20px;
    }
    section#detail_sub .access h3 + p + p {
        font-size: 24px;
        line-height: 2em;
        padding-bottom: 20px;
        letter-spacing: 0.15em;
    }
    section#detail_sub .access h4 {
        font-size: 32px;
        line-height: 1em;
        letter-spacing: 0.1em;
        padding: 40px 0 20px;
    }
    section#detail_sub .access h4 + p {
        font-size: 18px;
        line-height: 2em;
        padding-bottom: 20px;
    }
    .map iframe {
        width: 100%;
        height: 460px;
        vertical-align: bottom;
    }
    /*end PC*/
}
/*■■■■■■■■■SP■■■■■■■■*/

@media screen and (max-width: 480px) {
    #fb-root, #fb-root div, .fb-page {
        font-family: serif!important;
    }
    .fl {
        float: left;
    }
    .fr {
        float: right;
    }
    html {
        height: 100%;
        width: 100%;
    }
    body {
        height: 100%;
        margin: 0;
        text-align: center;
        line-height: 1em;
        width: 100%;
        color: #000;
        background-color: #fff;
        -webkit-text-size-adjust: 100%;
    }
    * {
        margin: 0;
        padding: 0;
    }
    .onsp {
        display: inherit;
    }
    .onpc {
        display: none;
    }
    a {
        color: white;
        text-decoration: none;
    }

    .fg {
        font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    }
    .tt {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-orientation: upright;
    }
    .hh {
        font-size: 10px;
        text-indent: 100%;
        display: block;
        white-space: nowrap;
        overflow: hidden;
    }
    .sizell {
        font-size: 24px;
    }
    .sizell_a {
        font-size: 24px;
        line-height: 150%!important;
        padding: 25px;
    }
    .post .photo p.up_date {
        text-align: right;
        border-bottom: 2px solid #ccc;
        padding-bottom: 0.5em;
        margin-bottom: 1em;
        font-weight: 600;
    }
    .post .photo .news_body * {
        font-size: 16px;
        line-height: 175%;
    }
    .post .photo .news_body img {
        max-width: 100%!important;
        height: auto!important;
    }
    /*********************Toggle********************/
    
    .cbsp {
        clear: both;
    }
    .navbar_toggle {
        display: block;
        z-index: 99999;
        float: right;
        margin-top: 18px;
        margin-right: 18px;
        padding: 12px 8px;
        position: absolute;
        top: 0px;
        right: 0px;
        background-color: #fff;
    }
    .navbar_toggle i {
        display: none;
    }
    .navbar_toggle_icon {
        position: relative;
        display: block;
        height: 2px;
        width: 30px;
        background-color: #6a7f24;
        transition: ease .1s;
    }
    .navbar_toggle_icon:nth-child(1) {
        top: 0;
    }
    .navbar_toggle_icon:nth-child(2) {
        margin: 6px 0px;
    }
    .navbar_toggle_icon:nth-child(3) {
        top: 0;
    }
    .navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
        top: 8px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .navbar_toggle.open .navbar_toggle_icon:nth-child(2) {
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        opacity: 0;
    }
    .navbar_toggle.open .navbar_toggle_icon:nth-child(3) {
        top: -8px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    header {
        height: 80px;
        position: fixed;
        top: 0px;
        left: 0px;
        width: 100%;
        z-index: 10000;
        background-color: #fff;
    }
    #header {
        height: 80px;
        margin-left: auto;
        margin-right: auto;
    }
    #header h1 {
        width: 160px;
        height: 64px;
        float: left;
        display: block;
        position: relative;
        z-index: 99999;
        margin: 12px auto auto 10px;
    }
    #header h1 a {
        font-size: 10px;
        font-weight: 300;
        text-indent: 100%;
        width: 160px;
        height: 64px;
        display: block;
        white-space: nowrap;
        overflow: hidden;
        background-image: url(../images/logo.png);
        background-repeat: no-repeat;
        background-position: 0px 0px;
        background-size: cover;
        transition-property: all;
        transition: 0.2s linear;
    }

    .navbar_toggle {
        display: block;
    }
    nav {
        display: none;
    }
    nav.open {
        clear: both;
        display: block;
        position: absolute;
        top: 80px;
        z-index: 9999;
        width: 100%;
    }
    nav ul {
        padding: 10px 4em 40px;
        border-left: 1px solid #555;
        background-color: #fff;
        border-bottom: 4px solid #6a7f24;
    }
    nav li {
        height: 72px;
        text-align: center;
        border-bottom: 1px solid #6a7f24;
        display: block;
    }
    nav li a {
        font-weight: 600;
        font-size: 20px;
        color: #6a7f24;
        text-decoration: none;
        transition-property: all;
        transition: 0.2s linear;
        line-height: 72px;
        padding: 0em 1.5em;
        display: block;
    }

    /* Slider swiper *********************************************************/
    
    #container {
        background-image: url(../images/bk_logo.png);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: auto;
        z-index: 1;
        animation: fade 4s ease 0s 1 normal;
        opacity: 0;
        animation-fill-mode: forwards;
    }
    .swiper-slide {
        overflow: hidden;
        backface-visibility: hidden;
    }
    .slide-img {
        background-size: cover;
        background-position: center center;
        height: calc(100vh - 80px);
    }
    .slide-img img {
        width: 100%;
        display: block;
    }
    .slide-img i {
        display: none;
    }
    .slide-img#sl0 {
        background-image: url(../slider/0.jpg);
    }
    .slide-img#sl1 {
        background-image: url(../slider/s01.jpg);
    }
    .slide-img#sl2 {
        background-image: url(../slider/s02.jpg);
    }
    .slide-img#sl3 {
        background-image: url(../slider/s03.jpg);
    }
    .slide-img#sl4 {
        background-image: url(../slider/s04.jpg);
    }
    .slide-text {
        color: #fff;
        font-size: 26px;
        position: absolute;
        padding-top: 60px;
        top: 50%;
        transform: translateY(-50%);
        width: 100%;
        text-align: left;
        letter-spacing: 0.1em;
        margin-left: 0.1em;
        text-shadow: 0px 0px 4px #000, 0px 0px 6px #000, 0px 0px 10px #000;
        display: block;
    }
    .slide-text p {
        font-weight: 600;
        writing-mode: vertical-rl;
        display: block;
        width: 1.75em;
        margin-left: auto;
        margin-right: auto;
        line-height: 1.75em;
    }
    /* News ***********************************************/
    
    #News {
        padding-bottom: 15px;
        clear: both;
        width: 90%;
        margin: 40px 5% 0;
        text-align: left;
    }
    #News h3 {
        font-size: 18px;
        font-weight: 600;
        height: 1.5em;
        line-height: 1.5em;
        text-indent: 8px;
    }
    #News ul {
        margin: 6px 8px 2em;
    }
    #News ul li a,
    .opbt {
        color: black;
        cursor: pointer;
        color: #000;
    }
    #News ul li {
        font-size: 15px;
        line-height: 20px;
        padding: 8px 0px;
        margin: 0px;
        border-bottom: 1px solid #555;
    }
    #News ul li:last-child {
        border: none;
        font-weight: 600;
    }
    #News .topics {
        margin: 0;
        padding: 14px;
        background-color: #333;
    }
    #News .topics h4 {
        font-weight: 600;
        font-size: 15px;
        padding-bottom: 12px;
        color: #bf5600;
    }
    #News .topics h4:nth-of-type(n+2) {
        padding-top: 24px;
    }
    #News .topics p {
        font-size: 14px;
        line-height: 165%;
    }
    #News .topics p a {
        text-decoration: underline;
    }
    #News ul li.t-btn a {
        color: #6a7f24;
        font-size: 14px;
        font-weight: 600;
        line-height: 32px;
        padding: 8px 21px;
        margin: 12px 0 0;
        border: 1px solid #6a7f24;
        display: block;
        transition-property: all;
        transition: 0.2s linear;
    }

    #News a.n-btn {
        color: #6a7f24;
        font-size: 14px;
        font-weight: 600;
        line-height: 32px;
        padding: 0px 21px;
        margin: 12px 0 0;
        border: 1px solid #6a7f24;
        display: inline-block;
        transition-property: all;
        transition: 0.2s linear;
    }

    /* Footer ****************************************/
    
    footer {
        padding-top: 55px;
        width: 100%;
        background: url(../images/bk_footer.jpg);
    }
    footer .footer {
        color: #fff;
        width: 100%;
        margin: auto;
        background-image: url(../images/bk_ft.png);
        background-repeat: no-repeat;
        background-position: center top;
        margin-right: auto;
    }
    footer .footer .ft_address {
        padding-top: 220px;
        text-align: center;
    }
    footer .footer .ft_address h2 {
        font-size: 22px;
        line-height: 1em;
        letter-spacing: 0.1em;
    }
    footer .footer .ft_address h2 span {
        font-size: 30px;
        letter-spacing: 0.1em;
    }
    footer .footer .ft_address h2 + p {
        padding-top: 12px;
        font-size: 16px;
        line-height: 175%;
    }
    footer .footer .ft_address h2 + p + p a {
        font-size: 22px;
        color: #fff;
        line-height: 2em;
        letter-spacing: 0.2em;
    }
    footer .footer .ft_address h2 + p + p + p {
        font-size: 14px;
        line-height: 200%;
    }
    footer .copyright {
        color: #fff;
        clear: both;
        line-height: 110px;
        font-size: 12px;
    }
    /* Page Top ****************************************/
    
    #page-top {
        position: fixed;
        bottom: 30px;
        right: 20px;
        z-index: 19999;
    }
    #page-top img {
        font-size: 12px;
        width: 50px;
    }

    /* Top Section ****************************************/
    
    section#detail_top .detail_top {
        width: 100%;
        margin: 0 auto 100px;
        text-align: center;
    }
    section#detail_top h2 {
        font-size: 10px;
        height: 180px;
        width: 126px;
        background: url('../images/logot.png') no-repeat border-box center center / cover;
        margin: 0 auto;
        display: inline-block;
    }
    section#detail_top h2 + p {
        font-size: 18px;
        line-height: 175%;
        font-weight: 600;
        padding-top: 24px;
    }
    section#detail_top h2 + p span {
        display: block;
        padding-top: 20px;
    }
    section#detail_top h2 + p span img {
        width: 100%;
    }
    section#detail_top h3 {
        font-size: 26px;
        font-weight: 600;
        text-align: center;
        display: block;
        padding-top: 60px;
    }
    section#detail_top h3 + p {
        font-size: 16px;
        line-height: 175%;
        font-weight: 600;
        padding: 22px 0 0;
    }
    section ul.dtl {
        display: inline-block;
        margin-left: auto;
        margin-right: auto;
    }
    section ul.dtl li {
        padding-top: 10px;
        padding-bottom: 10px;
        display: block;
        margin: 14px;
        position: relative;
    }
    section ul.dtl li h4 {
        font-size: 34px;
        font-weight: 600;
        line-height: 1em;
        padding-top: 24px;
        position: absolute;
        display: inline-block;
        top: -30px;
        left: -10px;
        text-shadow: 0px 0px 5px #fff, 0px 0px 6px #fff, 0px 0px 7px #fff, 0px 0px 8px #fff;
    }
    section ul.dtl li h4 + p {
        font-size: 14px;
        line-height: 1em;
        padding-top: 12px;
        text-align: left;
    }
    section ul.dtl li p {
        font-size: 16px;
        line-height: 1em;
        padding-top: 16px;
    }
    /* Top Section links ************************************/
    
    .topinfo {
        margin-top: 40px;
        font-size: 18px;
        clear: both;
        width: 100%;
        height: 56px;
        text-align: right;
        padding: 0 10%;
    }
    .topinfo li {
        display: block;
        text-align: center;
    }
    .topinfo li a {
        display: block;
        width: 100%;
        line-height: 52px;
        color: #7f9241;
        border: 2px solid #a4b275;
    }
    .topinfo li a span {
        display: inline-block;
        position: relative;
        text-indent: 25px;
    }
    .topinfo li a span:before {
        position: absolute;
        left: -5px;
        content: "";
        display: inline-block;
        width: 25px;
        height: 52px;
        background: url('../images/ume.png') no-repeat center center;
        background-size: 25px 25px;
    }

    /* ■ Detail ************************************/
    
    .main {
        width: 100%;
        height: 0;
        padding-bottom: 66%;
        margin-top: 80px;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .main#sub1 {
        background-image: url(../images/main_bk_sub1.jpg);
        background-position: center center;
    }
    .main#sub2 {
        background-image: url(../images/main_bk_sub2.jpg);
        background-position: bottom center;
    }
    .main#sub3 {
        background-image: url(../images/main_bk_sub3.jpg);
        background-position: center center;
    }
    .main#sub4 {
        background-image: url(../images/main_bk_sub4.jpg);
        background-position: center center;
    }
    .main#sub5 {
        background-image: url(../images/main_bk_sub5.jpg);
        background-position: bottom center;
    }
    /* Sub Section ****************************************/
    
    section#detail_sub {
        width: 100%;
        position: relative;
        overflow: hidden;
    }
    section#detail_sub h2 {
        font-size: 28px;
        font-weight: 600;
        color: #fff;
        line-height: 60px;
        width: 100%;
        background: url('../images/bk_h2.png') repeat-x border-box center center;
    }
    .bko1 {
        position: absolute;
        left: -12%;
        top: 60px;
        width: 90%;
        height: auto;
    }
    .bko2 {
        position: absolute;
        right: -12%;
        bottom: 0px;
        width: 90%;
        height: auto;
    }
    section#detail_sub .detail_sub {
        width: 88%;
        margin: 0 6% 60px;
        text-align: center;
    }
    section#detail_sub h3 {
        font-size: 18px;
        font-weight: 600;
        line-height: 175%;
        margin-top: 40px;
    }
    section#detail_sub h3 + p {
        font-size: 15px;
        line-height: 175%;
        text-align: justify;
    }
    section#detail_sub h3 + p img {
        width: 100%;
        margin: 15px auto 25px;
    }
    /* Sub Section こだわり****************************************/
    
    section#detail_sub ul.kodawari-dtl {
        display: inline-block;
        margin: 20px auto 0;
        width: 100%;
    }
    section#detail_sub ul.kodawari-dtl li {
        display: block;
        width: 92%;
        margin-left: auto;
        margin-right: auto;
        position: relative;
    }
    section#detail_sub ul.kodawari-dtl li img {
        width: 100%;
    }
    section#detail_sub ul.kodawari-dtl li h4 {
        position: absolute;
        font-size: 32px;
        color: #fff;
        font-weight: 600;
        line-height: 1em;
        padding: 12px 24px;
        background-color: rgba(106, 127, 36, 0.5);
        top: 0;
        left: 0;
    }
    section#detail_sub ul.kodawari-dtl li h4 + p {
        font-size: 16px;
        line-height: 175%;
        text-align: left;
        padding: 12px 0 24px;
    }
    /* Sub Section 店舗案内****************************************/
    
    p.tenpo {
        font-size: 16px;
        line-height: 1em;
        padding: 90px 0 80px;
    }
    section#detail_sub ul.tenpo-dtl {
        display: inline-block;
        width: 962px;
        margin-bottom: 100px;
    }
    section#detail_sub ul.tenpo-dtl li {
        display: block;
        float: left;
        margin: 22px;
        width: 432px;
    }
    section#detail_sub ul.tenpo-dtl li img {
        width: 432px;
    }
    section#detail_sub ul.tenpo-dtl li p {
        font-size: 16px;
        line-height: 175%;
        text-align: left;
        padding-top: 16px;
    }
    section#detail_sub ul.tenpo-dtl li:last-child p {
        font-size: 13px;
    }
    /* Sub Section お品書き****************************************/
    
    .os {
        background: url(../images/bk_o.jpg);
        padding-bottom: 80px;
    }
    section#detail_sub .oshinagaki,
    section#detail_sub .obento {
        width: 100%;
        text-align: left;
        margin-left: auto;
        margin-right: auto;
        position: relative;
        z-index: 1;
    }
    section#detail_sub .oshinagaki p.tax,
    section#detail_sub .obento p.tax {
        font-weight: 600;
        font-size: 14px;
        line-height: 1em;
        text-align: right;
        padding: 40px 1em 0 0;
    }
    section#detail_sub .oshinagaki p + h3,
    section#detail_sub .obento p + h3 {
        margin-top: 30px;
    }
    section#detail_sub .oshinagaki h3,
    section#detail_sub .obento h3 {
        margin: 40px 0 0 5%;
    }
    section#detail_sub .oshinagaki h3 img,
    section#detail_sub .obento h3 img {
        height: 40px;
    }
    section#detail_sub .oshinagaki ul li {
        float: left;
        display: block;
        width: 90%;
        margin-left: 5%;
        margin-right: 5%;
    }
    section#detail_sub .oshinagaki ul li p {
        text-align: left;
        font-size: 18px;
        font-weight: 600;
    }
    section#detail_sub .oshinagaki ul li img {
        width: 100%;
    }
    section#detail_sub .oshinagaki ul li h3 {
        width: 100%;
    }
    section#detail_sub .oshinagaki ul li h3 img {
        width: auto;
    }
    section#detail_sub .oshinagaki ul li img + p {
        position: relative;
        margin: 0 5%;
        top: -10px;
    }
    section#detail_sub .oshinagaki ul li img + p.goku {
        position: relative;
        margin: 0 5%;
        top: 4px;
    }
    section#detail_sub .oshinagaki ul li img + p span {
        position: absolute;
        right: 5%;
    }
    section#detail_sub .oshinagaki ul li p {
        line-height: 30px;
        position: relative;
        margin: 0 5%;
        top: -20px;
    }
    section#detail_sub .oshinagaki ul li p em {
        width: 2em;
        text-align: center;
        display: inline-block;
    }
    section#detail_sub .oshinagaki ul li p span {
        position: absolute;
        right: 5%;
    }
    section#detail_sub .oshinagaki ul li p:first-child {
        margin-top: 40px;
    }
    section#detail_sub .oshinagaki ul li p.lt {
        margin-top: 0;
    }
    section#detail_sub .obento h4 {
        margin: 20px 10px 10px 0;
        font-size: 20px;
        font-weight: 600;
        line-height: 175%;
        border-bottom: 1px solid #000;
    }
    section#detail_sub .obento div.herf,
    section#detail_sub .obento div.herf2 {
        width: 88%;
        margin-left: 6%;
        margin-right: 6%;
        padding-bottom: 80px;
    }
    section#detail_sub .obento div.herf ul {
        width: 100%;
    }
    section#detail_sub .obento div.herf ul li {
        float: none;
        width: 100%;
        font-size: 18px;
        line-height: 40px;
        font-weight: 600;
    }
    section#detail_sub .obento div.herf p img {
        width: 100%;
        margin-top: 10px;
    }
    section#detail_sub .obento .fs {
        font-size: 16px;
    }
    section#detail_sub .obento p.tare {
        padding-bottom: 60px;
        background: url('../images/tare.png') no-repeat border-box 180px center;
    }
    .slider img {
        width: 100%;
    }
    .slider p {
        text-align: center;
        font-size: 18px;
        font-weight: 600;
        line-height: 175%;
    }
    .thumb {
        padding-top: 30px;
    }
    .thumb img {
        width: 100%;
    }
    section#detail_sub .obento div.herf2 {
        padding-top: 30px;
    }
    /* Sub Section アクセス****************************************/
    
    section#detail_sub .access {
        width: 90%;
        text-align: left;
        margin-left: 5%;
        margin-right: 5%;
        position: relative;
        z-index: 1;
        padding-bottom: 50px;
    }
    section#detail_sub .access div {
        width: 100%;
    }
    section#detail_sub .access div.map {
        text-align: center;
        padding-top: 40px;
    }
    section#detail_sub .access div.map img {
        width: 100%;
    }
    section#detail_sub .access h3 {
        font-size: 32px;
        line-height: 1em;
        letter-spacing: 0.1em;
        padding-bottom: 20px;
    }
    section#detail_sub .access h3 span {
        font-size: 22px;
        line-height: 1em;
    }
    section#detail_sub .access h3 + p {
        font-size: 16px;
        line-height: 2em;
        padding-bottom: 20px;
    }
    section#detail_sub .access h3 + p + p {
        font-size: 24px;
        line-height: 2em;
        padding-bottom: 20px;
        letter-spacing: 0.15em;
    }
    section#detail_sub .access h4 {
        font-size: 22px;
        font-weight: 600;
        line-height: 1em;
        letter-spacing: 0.1em;
        padding: 40px 0 20px;
    }
    section#detail_sub .access h4 + p {
        font-size: 16px;
        line-height: 2em;
        padding-bottom: 20px;
    }
    .map iframe {
        width: 100%;
        height: 460px;
        vertical-align: bottom;
    }
    /*end SP*/
}