@charset "UTF-8";

html {
    position: relative;
    overflow-y: scroll;
}

body {
    color: #1a1a1a;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: #fff;
}

body.cms-home {
    position: relative;
}

p, dd, dl {
	margin: 0;
	line-height: 1;
}

ul, li {
	list-style: none;
	padding: 0;
}

img {
    margin: 0;
    padding: 0;
    width: 100%;
    vertical-align: bottom;

}

/* 日本語フォント指定　*/
/* ・Windows は "游明朝 Medium"と"Yu Mincho Medium" */
/* ・Windows で　medium表記に対応しない場合に備えてmediumなしも記述 */
/* Macは "游明朝体"と"YuMincho" */
body,
input[type="text"],
input,
textarea,
select,
button,
.action.primary
{
    font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝体", YuMincho, "游明朝 Medium", "Yu Mincho Medium", "游明朝", "Yu Mincho", "HG明朝E", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

/* 中国語フォント指定　*/
html[lang="zh-Hans-CN"] body,
html[lang="zh-Hans-CN"] input[type="text"],
html[lang="zh-Hans-CN"] input,
html[lang="zh-Hans-CN"] textarea,
html[lang="zh-Hans-CN"] select,
html[lang="zh-Hans-CN"] button,
html[lang="zh-Hans-CN"] button.action.primary
{
    font-family:"Fangsong", "SimSun", "Hei", "Songti SC", "STSong", "Kaiti SC", "STKaiti", serif, "Heiti SC";
}


/* スライダー 共通*/
.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
}

/** main内block 共通 **/
.page-main .block {
	margin: 0;
	padding: 0;
}

/*　ヘッダー共通　*/
.page-header {
	background-color: #f2f2f2;
    background-image: url(../../../../../../media/Ori_images/bg_w.png);
    background-repeat: repeat;
}

.page-header .nav-sections,
.page-header .navigation {
    background: transparent;
}

/* フッター共通　*/
.page-footer {
    margin: -2px 0 0 0;
    background-color: #323232;
}

.footer,
.footer a {
    color: #fff;
}

/* カテゴリにウィジェットで追加しているページ共通*/
/* カラムを削除　*/
/* 「織り」とはページ　*/
.category-about .columns,
.category-company .columns,
.category-shop .columns{
    display: none;
}

/*　ここから　PC　*/
@media screen and (min-width:768px) {
    /* 画像のボケ防止　*/
    img {
      -webkit-backface-visibility: hidden;
      -moz-backface-visibility: hidden;
      -o-backface-visibility: hidden;
      -ms-backface-visibility: hidden;
      backface-visibility: hidden;
    }

    .sp {
    display: none !important;
    }

    /* IEのレイアウト崩れ対策　*/
    /* 高さがおかしくなるのを回避　*/
    .ie10 .page-wrapper,
    .ie11 .page-wrapper {
        height: 100%;
    }

    /* IE　ヘッダー表示のエラー回避 */
    .page-wrapper {
        overflow: hidden;
        height: auto !important;
        min-height: initial;
    }

    /*　page-bottomのw1280はずす*/
    .page-wrapper > .page-bottom {
        max-width: none;
    }

    /** widget共通 **/
    .page-wrapper .widget {
    	margin:0;
    	padding:0;
        max-width: 100%;
        width: 100%;
        /* IEでW100%の際画面幅が変化しても原寸の高さを維持しようとするのを回避*/
        height: auto;
        overflow: hidden;
    }

    /** widget内画像共通 **/
    .page-wrapper > .widget img {
    	margin:0;
    	padding:0;
        width: 100%;
        vertical-align: bottom;
    }

     /* メインコンテント　共通　*/
    .page-main {
        max-width: 100%;
        margin: 0;
        padding: 0;
        /* IEバグ回避　*/
        overflow: hidden;
        height: auto;
     }

     /* カラムメイン　共通　*/
     .columns .column.main {
         padding: 0;
     }

     /* ページタイトル共通　*/
     .page-title-wrapper {
         text-align: center;
     }

     .page-main .page-title-wrapper .page-title {
         display: inline-block;
         margin: 0;
         padding: 0 50px 30px;
         font-size: 24px;
         border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
     }

    small.copyright {
    	text-align: center;
    }

    /*　                  　  */
    /*　  ここから  ヘッダー　   */
    /*　                      */
    .page-header {
        position: relative;
        height: 240px;
    }

    .page-header .header.content {
        max-width: initial;
        padding: 0;
    }

    .page-header .sections.nav-sections {
        top: 0;
        width: 100%;
        margin: 0;
    }

    .page-header .navigation {
        text-align: center;
    }

    .page-header .ui-menu {
        bottom: 0;
    }

    /*　ロゴ　*/
    .page-header .logo-wrap {
        overflow: hidden;
        margin: 0;
        text-align: center;
    }

    .page-header .logo {
        display: inline-block;
        float: none;
        margin: 20px 0 25px 0;
        width: 100px;
    }

    /* 言語タブ　*/
    .page-header .switcher-language {
        position: absolute;
        top: 18px;
        right: 40px;
        z-index: 10000;
        margin: 0;
        padding: 0;
        float: none;
    }

    .page-header .switcher-language .options.active {
        width: 110px;
    }

    .page-header .switcher-options {
        box-sizing: border-box;
        padding: 2px 0 0 8px;
        width: 110px;
	    border: solid 1px #fff;
	    border-radius: 3px;
        text-align: center;
    }
    .page-header .switcher-options {
        box-sizing: border-box;
        padding: 2px 0 0 8px;
        width: 110px;
	    border: solid 1px;
	    border-radius: 3px;
        text-align: center;
    }

    .page-header .switcher .options ul.dropdown {
        margin: 0;
        padding: 0;
        list-style: none none;
        background: #fff;
        border: none;
        margin-top: 4px;
        min-width: 100px;
        z-index: 100;
        box-sizing: border-box;
        display: none;
        top: 100%;
        box-shadow: 0 3px 3px rgba(0, 0, 0, 0.15);
        text-align: center;
        left: 0;
    }

    .page-header .switcher .options ul.dropdown a,
    .page-header .switcher .options ul.dropdown a:active
    .page-header .switcher .options ul.dropdown a:visited {
        color: #1a1a1a;
    }

    .page-header .switcher .options ul.dropdown a:hover {
        color: #fff;
        background: #454545;
    }

    .page-header .switcher .options ul.dropdown::before {
        border-color: transparent transparent  #fff transparent;
        left: 40px;
    }

    .page-header .switcher .options ul.dropdown::before:hover {
        border-color: transparent transparent #454545 transparent;
        left: 40px;
    }

    .page-header .switcher .options ul.dropdown:after {
        border: none;
        border-color: transparent transparent transparent transparent;
    }

    /* ヘッダー　ナブ　*/
    .page-header .navigation ul {
        padding: 0;
    }

    .page-header .navigation li.level0 {
        margin: 0 .5%;
        padding: 0 1.5%;
    }

    .page-header .navigation li.level0:hover {
        border-bottom: 4px solid #091e3d;
    }

    /* 選択されているメニュー*/
    .page-header .navigation li.level0.active {
        border-bottom: 4px solid #091e3d;
    }

    /* お知らせは手書きなので手動でactive時の動作を追加*/
    .blog-index-index .page-header .navigation li.level0.menu-active {
        border-bottom: 4px solid #091e3d;
    }

    .navigation .level0.active>.level-top {
        border: none;
    }

    .page-header .navigation .level0>.level-top {
        display: block;
        line-height: 64px;
        padding: 0;
        color: #1a1a1a;
    }

    .page-header .navigation .level0>.level-top:hover {
        display: block;
        line-height: 64px;
        padding: 0;
        color: rgba(26, 26, 26, .5);
    }

    /* ナビ文字色 */
    .page-header .navigation .level0 > .level-top span {
	    font-size: 16px;
    }

    /* インスタアイコン */
    .btn_insta {
        display: inline-block;
        height: 40px;
        opacity: .8;
    }

    .btn_insta:hover {
        opacity: .5;
    }

    .icon_insta {
        width: 20px;
    }

    /* 　こここまで　ヘッダー　　　*/


    /*　                  　  */
    /*　  ここから  フッター　   */
    /*　                      */
    .page-footer .widget.block {
        margin: 0;
    }

    .footer {
        overflow: hidden;
        padding: 30px 5% 50px;
        text-align: center;
    }

    .footer-nav {
        margin: 0;
        height: 36px;
    }

    .footer-nav li {
        display: inline-block;
        margin: 0 1%;
        padding: 0 .8%;
    }

    .footer-nav li:hover {
        border-bottom: 1px solid #fff;
        opacity: .6;
    }

    .footer-nav li a {
        display: block;
        line-height: 36px;
        font-size: 14px;
    }

    .footer-nav li a:hover {
        text-decoration: none;
    }

    .footer .copyright,
    .footer .copyright address{
        display: inline-block;
        color: #ccc;
        font-size: 12px;
    }

    .footer .copyright {
        margin: 60px 0 0 0;
    }

    .privacy_box {
        width: 70px;
        padding: 2px;
        display: inline-block;
        float: right;
        background: #fff;
    }

    .privacy_box:hover {
        opacity: .8;
    }
    /*　                  　  */
    /*　  ここまで  フッター　   */
    /*　                      */

    /*　ここからパンくずリスト　*/
    /* 共通部分 - パンくずリスト*/
    .breadcrumbs {
	    margin: 40px auto;
        box-sizing: border-box;
        width: 1280px;
        display: block;
        padding: 0 40px;
    }

    .breadcrumbs .item:not(:last-child):after {
    	margin: 0 2px;
    }

    .breadcrumbs a {
    	font-size: 13px;
    }

    .breadcrumbs a:visited {
    	color: #808080 !important;
    }

    .breadcrumbs li.item a {
    	color: #808080;
    	font-size: 13px;
    }

    .breadcrumbs li.item strong {
    	color: #1a1a1a;
    	font-size: 13px;
    }

/***************************************************/
/************* お知らせブログ関連　　　****************/
/***************************************************/
/*　　　共通　　　*/
/* 日付をイタリックにしない*/
.post-holder .post-header .post-info .value {
	font-style: normal;
}

/* トップウィジェットと新着情報一覧で本文を表示しない　*/
.cms-home .post-text-hld p,
.blog-index-index .post-text-hld p {
	display: none;
}

.cms-home .post-list-wrapper.blog-widget-recent {
    max-width: 924px;
    margin: 0 auto;
    padding: 80px 0 100px;
    text-align: center;
}

.cms-home .blog-widget-recent .post-holder {
	width: 610px;
	float: none;
	margin: 0 auto;
	text-align: left;
	padding: 12px 0;
	background: transparent;
    box-sizing: border-box;
}

.cms-home .blog-widget-recent .post-holder:hover {
	box-shadow: none;
}

.cms-home .blog-widget-recent h3 {
  font-size: 24px;
  display: inline-block;
  padding: 0 40px 20px;
  border-bottom: 1px solid rgba(26, 26, 26, .3);
  letter-spacing: .2em;
  margin: 50px 0 30px 84px;
}

.cms-home .new_list {
    display: inline-block;
    float: right;
    margin: 0 20px 0 0;
    font-size: 16px;
    color: #1a1a1a;
    line-height: 36px;
}

.cms-home .new_list:hover {
    text-decoration: none;
    opacity: .8;
}

.cms-home .new_list span {
    font-size: 10px;
    vertical-align: 6%;
}

.cms-home a.new_list p {
    display: inline-block;
}

.cms-home .post-list .post-header .post-title a:visited {
	text-decoration: none;
	font-size: 14px;
	color: #1a1a1a;
}

.cms-home .blog-widget-recent .post-title a {
	color: #1a1a1a;
}

.cms-home .blog-widget-recent .post-title a:hover {
	text-decoration: none;
	opacity: 0.8;
}

.cms-home .post-holder .post-header .post-info .label {
	display: none;
}

.cms-home .post-holder .post-header .post-info .value {
	font-size: 12px;
	font-style: normal;
}

.cms-home .post-holder .post-header .post-info {
	padding: 0;
}

.cms-home .post-title-holder,
.cms-home .post-holder .post-header {
	display: inline-block;
}

.cms-home .post-title-holder {
    width: 79%;
}

.cms-home .post-holder .post-header {
	width: 20%;
    vertical-align: top;
}

/* 新着情報一覧ページで 1カラムに*/
.blog-index-index .column.main,
.blog-category-view .column.main {
	width: 100%;
	margin-top: 30px;
	margin-bottom: 200px;
}

.blog-index-index .post-holder,
.blog-category-view .post-holder {
	max-width: 880px;
	margin: 0px auto;
    padding: 20px 5%;
	overflow: hidden;
	background: transparent;
	box-sizing: content-box;
    /* IE 対策　*/
    position: relative;
}

.blog-index-index .post-holder:hover,
.blog-category-view .post-holder:hover {
	box-shadow: none;
    position: relative;
    z-index: 0;
}

.blog-index-index .post-list,
.blog-category-view .post-list{
	padding-left: 0;
}

.blog-index-index .post-content .post-description .post-ftimg-hld,
.blog-category-view .post-content .post-description .post-ftimg-hld {
	width: 100px;
	height: 70px;
	overflow: hidden;
	position: relative;
	margin: 0;
    text-align: center;
    background: #fff;
}

.blog-index-index .post-content .post-description .post-ftimg-hld img,
.blog-category-view .post-content .post-description .post-ftimg-hld img {
	/*position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);*/
  width: initial;
  max-width: 100%;
  height: 100%;
}

.blog-index-index .post-content .post-description .post-ftimg-hld img:hover,
.blog-category-view .post-content .post-description .post-ftimg-hld img:hover {
	opacity: .8;
}

.blog-index-index .post-description {
}

/* サムネ画像はw100px固定で右可変　*/
.blog-index-index .post-content,
.blog-category-view .post-content {
	float: left;
    width: 100px;
    margin: 0 2% 0 0;
    box-sizing: border-box;
}

.blog-index-index .post-title-holder,
.blog-category-view .post-title-holder {
	display: none;
}

.blog-index-index .blog_date_title,
.blog-category-view .blog_date_title {
    max-width: 84%;
	float: left;
}

.blog-index-index .post-holder .post-header .post-info,
.blog-category-view .post-holder .post-header .post-info {
	font-size: 14px;
	color: #666;
	padding: 0;
}

.blog-index-index h2.post-title,
.blog-category-view h2.post-title {
	font-size: 18px;
	margin: 8px 0;
    line-height: 1.4;
}

.blog-index-index h2.post-title a,
.blog-category-view h2.post-title a {
	color: #1a1a1a;
}

.blog-index-index h2.post-title a:hover,
.blog-category-view h2.post-title a:hover {
	color: #1a1a1a;
	text-decoration: none;
	opacity: .8;
}

/* ページング */
.blog-index-index .toolbar-blog-posts,
.blog-category-view .toolbar-blog-posts {
    text-align: center;
    margin: 60px 0 0;
}

.blog-category-view .pages .page,
.blog-index-index .pages .page {
    margin: 0 8px;
    font-size: 18px;
}

.blog-category-view .pages strong.page,
.blog-index-index .pages strong.page {
    border-bottom: 3px solid #1a1a1a;
}

.blog-category-view .pages .action.next,
.blog-category-view .pages .action.previous {
    border: 1px solid #1a1a1a;
}

.pages .action.next:visited:before,
.pages .action.previous:visited:before {
    color: #1a1a1a;
}

.blog-index-index .post-holder .post-header .post-info .label,
.blog-category-view .post-holder .post-header .post-info .label {
	display: none;
}

/* カテゴリ 追加 関連　▼　*/
/* パンくずリストで第カテゴリの「お知らせを非表示に」 */
.blog-category-view .breadcrumbs .item.blog,
.blog-post-view .breadcrumbs .item.blog {
    display: none;
}

/* 日付横のカテゴリ名非表示 */
.blog-post-view .post-header .post-info .dash,
.blog-post-view .post-header .post-info .post-categories,
.post-holder .post-header .post-info .dash,
.post-holder .post-header .post-info .item.post-categories {
    display: none;
}

.blog-category-view .category-content {
    padding: 0;
}

/* ブログ記事のimgを含むpはセンター寄せ */
.blog-post-view .post-text-hld .img-wrap {
    text-align: center;
    margin: 20px 0 40px;
}
/* カテゴリ 追加 関連　▲　*/

/*　ブログ (新着情報)　詳細ページ　▲　*/
.blog-post-view #maincontent .page-title {
	display: inline-block;
	/*width: 910px;*/
	font-size: 24px;
    text-align: left;
    text-align: justify;
	padding: 30px 5%;
    margin: 0;
    line-height: 1.5;
    border-bottom: none;
}

.blog-post-view .page-title-wrapper {
    max-width: 910px;
    text-align: center;
    border-top: 1px solid #999;
	border-bottom: 1px solid #999;
    margin: 10px auto 10px;
}

.date_custom {
	text-align: right;
	margin: 20px 0 40px;
}

.blog-post-view .columns{
	max-width: 910px;
	margin: 0 auto;
}

.blog-post-view .post-content {
    padding: 0 0 160px 0;

}

.blog-post-view .column.main {
	max-width: 910px;
	margin: 0 auto;
    width: initial;
    float:none;
}

.blog-post-view .post-holder {
	background: transparent;
	padding: 0;
	margin: 0;
}

.blog-post-view .post-holder:hover {
	box-shadow: none;
}

.blog-post-view .post-posed-date .label {
	display: none;
}

/* ブログのトップイメージ表示しない　*/
.blog-post-view .post-content .post-description .post-ftimg-hld {
	margin: 0;
    display: none;
}

.blog-post-view .post-description {
    text-align: center;
}

.blog-post-view .post-text-hld {
	font-size: 14px;
	clear: both;
    max-width: 900px;
    display: inline-block;
    text-align: center;
}

.blog-post-view .post-text-hld p {
    line-height: 1.7;
    padding: 10px 0;
    clear:both;
    text-align: left;
}

.blog-post-view .post-text-hld .blog-image,
.blog-post-view .post-text-hld .blog-image2 {
    height: 300px;
    width: 47%;
    margin: 20px 1%;
    box-sizing: border-box;
    display: inline-block;
    object-fit: contain;
    text-align: center;
}

.blog-post-view .post-text-hld img {
    margin: 0;
    clear: none;
    max-height: 500px;
    max-width: 100%;
    width: initial;
    height: initial;
}

/* シェアボタン */
.sns-box  {
    margin: 0 auto;
    max-width: 910px;
    text-align: right;
}

  .sns-share-twitter,
  .sns-share-facebook,
  .sns-share-hatena {
      margin: 0 2px;
      display: inline-block;
      vertical-align: middle;
  }

  .fa-twitter-square {
      color: #333;
      font-size: 40px;
  }

  .fa-facebook-square {
      color: #333;
      font-size: 40px;
  }

  .sns-share-hatena {
    margin: 0 2px;
    width: 36px;
    height: 36px;
    display: inline-block;
    background: #333;
    border-radius: 4px;
    vertical-align: middle;
}


/***************************************************/
/************* Topページ（.cms-home）****************/
/***************************************************/
    /* トップ　ページタイトル非表示　*/
    .cms-home .page-title-wrapper {
        display: none;
    }

    .cms-home .page-main {
        margin: -1px 0 0 0;
    }

/*　スライダー　height 調節　仮　*/
    /*.cms-home .swiper-container {
    max-height: 72%;
    max-height: 80vw;
    max-height: 680px;
}*/

    /* トップスライダー　カスタム　*/
    .swiper-container .swiper-pagination-bullet-active {
        background: #1a1a1a;
        border: 1px solid #c9c9c9;
    }

    .swiper-container .swiper-pagination-bullet {
        background: rgba(26, 26, 26, .8);
        border: 1px solid #c9c9c9;
    }

    .swiper-container .swiper-button-prev,
    .swiper-container .swiper-button-next {
        top: 40%;
        width: 20px;
        height: 20px;
        border: 3px solid;
        background-image: none;
    }

    .swiper-container .swiper-button-prev {
        margin: 0 0 1% 1%;
        border-color:  transparent transparent rgba(26, 26, 26, .3)     rgba(26, 26, 26, .3);
        transform: rotate(45deg);
    }

    .swiper-container .swiper-button-next {
        margin: 1% 1% 0 0;
        border-color: rgba(26, 26, 26, .3) rgba(26, 26, 26, .3)     transparent transparent;
        transform: rotate(45deg);
    }

    /* トップ　店舗関連　*/
    .top_h1_title {
        margin: 80px 0 0 0;
        font-size: 36px;
    }
    .section-cafe {
        overflow: hidden;
        padding: 110px 0 0 0;
        text-align: center;
    }

    .top_h1_title_s {
        font-size: 20px;
        vertical-align: 26%;
        margin: 0 0 0 1%;
    }

    .block-cafe1,
    .block-cafe2 {
        width: 50%;
        float: left;
    }

    .block-cafe1 img {
        margin: -3px 0 0 0;
    }

    .box-menu-image {
        position: relative;
        width: 50%;
        float: left;
    }

    .box-menu {
        overflow: hidden;
        margin: -2px 0 0 0;
    }

    .box-menu-link {
        position: relative;
        width: 50%;
        float: left;
    }

    .box-menu-link a:hover {
        opacity: .7;
    }

    .top-menu-name {
        display: block;
        margin: 0 0 20px 0;
        font-size: 18px;
    }

    .top-menu-name .small {
        display: inline-block;
        margin: 24px 0;
        line-height: 1.8;
        font-size: 18px;
    }

    .menu-btn {
        width: 150px;
        display: inline-block;
        line-height: 40px;
        font-size: 16px;
        border: 1px solid #fff;
        border-radius: 5px;
    }

    /* トップ　レコメンド */
    /* レコメンド　キャプションサイド　*/
    .block-recommend {
        text-align: center;
        padding: 80px 0 0 0;
    }

    .box-product {
        overflow: hidden;
        margin: -2px 0 0 0;
    }

    .box-product-link {
        position: relative;
        width: 50%;
        float: left;
    }

    .box-product-link a:hover {
        opacity: .7;
    }

    .text-warp {
        width: 100%;
        margin: 0;
        position: absolute;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        color: #fff;
        text-align: center;
    }

    /* レコメンド　アイテムサイド　*/
    .box-product-image {
        position: relative;
        width: 50%;
        float: left;
    }

    .product-name {
        font-size: 34px;
    }

    .product-name .small {
        display: block;
        margin: 24px 0;
        line-height: 1.8;
        font-size: 18px;
    }

    .product-btn {
        width: 160px;
        display: inline-block;
        line-height: 40px;
        font-size: 16px;
        border: 1px solid #fff;
        border-radius: 5px;
    }

    /* トップ「織り」とはブロック　*/
    .cms-home .page-bottom {
        margin: 0;
        padding: 0;
    }

    /* 新規ページ　「織り」とは　*/


    .page-bottom .content .widget {
  background-image: none;
}

.about-ori {
    text-align: center;
    /*margin: 0 0 120px 0;*/
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    padding: 80px 0 90px;
    width: 100vw;
    max-width: 1280px;
}

.category-about .page-title-wrapper .page-title {
    display: inline-block;
    font-size: 24px;
    letter-spacing: .2em;
    margin: 50px 0 0;
    padding: 0 120px 30px;
    text-align: center;
    border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
}

.about-ori .wrap-box {
  width: 100%;
  display: table;
  overflow: hidden;
  max-height: 404px;
}

.about-ori .img-box {
  display: table-cell;
  width: 50%;
}

.about-ori .img-box img {
    margin: 0;
    padding: 0;
    vertical-align: bottom;
    /* 高さ固定で画像を長編に合わせてトリミング(テキスト溢れ防止) */
    object-fit: cover;
    height: 430px;
}

.about-ori .text-box {
    display: table-cell;
    padding: 0 5%;
    width: 50%;
    text-align: justify;
    word-break: break-all;
    vertical-align: middle;
    background: rgba(26, 26, 26, .15);
}

.about-ori .text-box p {
  vertical-align: middle;
  line-height: 2;
}

/***************************************************/
/************* 会社概要ページ（.）****************/
/***************************************************/
.category-company.categorypath-company .page-main {
    margin: 0 auto;
    padding: 0 20px;
    max-width: 1280px;
}
/* ここから　新規ページ　会社概要　▼　*/
.about_company {
	max-width: 800px;
    font-size: 14px;
	margin: 60px auto 210px;
	line-height: 1.8;
}

.about_company,
.about_company th,
.about_company td {
	border: 1px solid #ccc;
}

.about_company td:first-child {
	width: 30%;
	color: #fff;
	background: #1e5b50;
	text-align: center;
	-moz-text-align-last: justify;
    text-align-last: justify;
	padding: 23px 8%;
	vertical-align: middle;
}

/*　英語と中国語で均等割りなし　*/
.about_company td:first-child:lang(en),
.about_company td:first-child:lang(zh-Hans-CN) {
    padding: 23px 4%;
    -moz-text-align-last: auto;
    text-align-last: auto;
}

.about_company td:last-child {
	width: 70%;
	background: #fff;
	padding: 23px 7%;
}

.about_company .head_office {
	display: inline-block;
	margin: 0 0 10px 0;
}

    /* ここから　案内・アクセス　▼　*/
    /*　カフェメニュー　一旦非表示　*/
    .section-cafe-menu {
        display: none;
    }

    /* カテゴリタイトル非表示　*/
    .category-shop .page-title-wrapper {
        /* display: none; */
    }

    .shop-and-access-inner {
        margin: 0 auto 160px;
    }

    .section-shop {
        text-align: center;
    }

    .about-shop-box {
        max-width: 1280px;
        margin: 0 auto;
        text-align: center;
        padding: 40px 0 110px;
    }

    .section-title {
        margin: 70px 0;
        font-size: 24px;
        letter-spacing: .2em;
    }

    .section-text {
        margin: 0 0 100px 0;
        line-height: 2;
        text-align: justify;
        text-align: center;
    }

    /* table タグできっちり3つ並ぶ　*/
    /*.shop-image {
        display: table;
        margin: 0;
        width: 100%;
        table-layout: fixed;
    }

    .shop-image li {
        display: table-cell;
    }*/

    /* リストタイプ　*/
    .shop-image {
        overflow: hidden;
        margin: 0;
    }

    .shop-image li {
        float: left;
        width: 33.33333%;
        margin: 0 0 8px 0;
    }

    .shop-image li:hover {
        opacity: .9;
    }

    .section-cafe-menu {
        padding: 130px 0 0 0;
        text-align: center;
    }

    .section-headline {
        display: inline-block;
        /* display: none; */
        margin: 0px auto 76px;
        padding: 30px 94px;
        font-size: 24px;
        letter-spacing: .1em;
        border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
    }

    .cafe-menu-list {
        margin: 0;
        width: 100%;
        overflow: hidden;
    }

    .cafe-menu-list li {
        float: left;
        width: 21%;
        margin: 0 2%;
    }

    .section-cafe-menu .menu-name {
        text-align: left;
        margin: 40px 0 0 0;
        font-size: 14px;
    }

    .section-cafe-access {
        padding: 0 2%;
        max-width: 1000px;
        margin: 0 auto;
        text-align: center;
        overflow: hidden;
    }

    .section-cafe-access-inner {
        display: table;
        width: 100%;
        margin: 70px 0 0 0;
    }

    .section-cafe-access .map_box {
        padding: 36px 5%;
        border: 1px solid #1a1a1a;
        border-radius: 20px;
    }

    .section-cafe-access .map_box img {
        /*width: initial;
        max-width: initial;*/
    }

    .section-cafe-access .map_box,
    .section-cafe-access .shop_box {
        display: table-cell;
    }

    .section-cafe-access .shop_box {
        width: 53%;
        padding: 0 0 0 6%;
        vertical-align: middle;
        text-align: left;
    }

    .shop_box .shop-name {
        margin: 0;
        font-size: 24px;
        letter-spacing: .2em;
    }

    .shop-info {
        margin: 22px 0;
        font-size: 14px;
        line-height: 2;
    }

    .shop-info li {
        margin: 0;
        padding: 0;
    }

    .shop-info-memo {
        margin: 14px 0;
        font-size: 14px;
        line-height: 1.8;
    }

    /*.google-map {
        text-align: right;
    }*/

    .google-map a {
        display: inline-block;
        margin: 20px 0 0 0;
        font-size: 14px;
        color: #1e5a50;
    }



/***************************************************/
/********* お問い合わせ（contact-index-index）****************/
/***************************************************/
/* お問い合わせ完了　メッセージ*/
.message.success,
.message.notice {
    margin: 40px 0 0 0;
    padding: 14px 0;
    font-size: 20px;
    text-align: center;
}

.message.success>*:first-child:before,
.message.notice>*:first-child:before {
    font-size: 40px;
    line-height: 40px;
    margin: 6px 0 0 -40px;
    top: 0;
    left: auto;
}

/*　テキスト削除　*/
.contact-index-index .fieldset .legend {
    display: none;
}

/* デフォルトメッセージ　*/
.contact-index-index .fieldset .field.note {
    margin: 30px 0;
}

/*　「会社名」下　マージン？*/
.contact-index-index .fieldset .company {
    margin: 0 0 8px 0;
}

.contact-index-index .fieldset>.field:not(.choice)>.label {
    text-align: left;
}

.contact-index-index .page-main {
    margin: 70px 0 0 0;
}

.contact-index-index .column.main {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 0 80px 0;
}

.contact-index-index .form.contact {
    margin: 20px 0 0 0;
}

.contact-index-index .field.note.no-label {
    line-height: 1.6;
}
.contact-index-index .field.note.no-label a {
    color: #660000;
    text-decoration: underline;
}

.contact-index-index .field.note.no-label a:hover,
.contact-index-index .field.note.no-label a:visited,
.contact-index-index .field.note.no-label .alink,
.contact-index-index .field.note.no-label .alink:visited {
    opacity: .7;
}

.contact-index-index .action.submit {
    background-color: #1a1a1a;
    line-height: 40px;
    font-size: 18px;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝体", YuMincho, "游明朝 bold", "Yu Mincho bold", "HG明朝E", serif;
    padding: 0 30px;
    width: 100%;
}

.contact-index-index .column:not(.sidebar-additional) form .actions-toolbar {
    margin-left: 36% !important;
}

.contact-index-index .primary {
    width: 40%;
}

.contact .fieldset .note:before {
	width: 0;
	padding: 0;
	content: "";
}

.page-main .columns .column form.contact {
	max-width: 600px;
	margin: 0 auto;
}

.contact .fieldset>.field:not(.choice)>.control {
	width: 100%;
}

/***************************************************/
/********* カフェメニュー（menu）****************/
/***************************************************/
#menu-drink {
    overflow: hidden;
}

.cafe-menu-innner {
    padding: 0 0 100px 0;
}

.title-drink {
    margin: 68px auto;
    text-align: center;
    font-size: 24px;
}

.menu-text-m {
    margin: 20px 0 0;
    display: inline-block;
    font-size: 18px;
}

.menu-list-drink {
    overflow: hidden;
}

.menu-list-drink li {
    float: left;
    width: 30.2666%;
    margin: 0 0 60px 2.3%;
}

.cafe-menu-innner .menu-text-box {
    display: block;
    margin: 20px 0 0 0;
}

.menu-list-drink p {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 .4em 0 0;
}

.lunch-comment {
    margin: 40px 0 0;
    display: inline-block;
    text-align: center;
    font-size: 14px;

}

/* 右寄せで表示する「・・・価格」を左からoverhiddenさせる　▼　*/
.outer-div {
    width: auto;
    /* margin-left: auto; */
    /* margin-right: auto; */
    /* text-align: right; */
    overflow: hidden;
    white-space: nowrap;
    /* display: inline-block; */
    /* float: right; */
    /* display: inline; */
}

.inner-div {
    float:right;
}
/* 右寄せで表示する「・・・価格」を左からoverhiddenさせる　▲　*/

/* 商品名幅固定（テキスト量）＋・・・価格の可変*/
.menu-text {
    float: left;
    display: inline-block; /*　固定幅＝テキスト　*/
}

.menu-attention {
    text-align: right;
    margin: 0 2.3% 0 0;
    line-height: 1.6;
}

.category-menu .column.main {
    display: none;
}

.dot2 {
    /* letter-spacing: .1em; */
}

/* 404エラーページ ▼ */

.cms-no-route .page-main {
    padding: 60px 0 0 0;
}

.cms-no-route .page-main h1.page-title {
    margin: 80px 0 0 0;
}

.cms-no-route .access-error-wrap
{
    margin: 50px auto 80px auto;
    max-width: 860px;
}

.cms-no-route .access-error-wrap p {
    font-size: 16px;
    line-height: 2;
}

.cms-no-route .nf-nav {
    margin: 40px 0 0 0;
}

.cms-no-route .nf-nav li {
    margin: 0 0 14px 0;
}

.cms-no-route .nf-nav a {
    font-size: 16px;
    color: #1a1a1a;
    text-decoration: underline;
}

.cms-no-route .nf-nav a::before {
    content: "\003e";
}

.cms-no-route .nf-nav a:hover {
    opacity: .7;
}

}

/* ナブ　調整　*/
@media screen and (min-width:768px) and (max-width:900px) {
    /* ナブ　調整　*/
    .page-header .navigation .level0 > .level-top span {
    	   font-size: 1.8vw;
    }

    /* メニュー１列表示の際、overflow:hiddendで価格が見えなくなるのを回避*/
    .menu-text-s {
        font-size: 10px;
        line-height: 1.6;
    }

    html[lang="en-US"] .menu-list-drink p {
        font-size: 13px;
    }
}

/*  ここから　SP 　▼　*/
@media screen and (max-width:768px) {
    .pc {
        display: none !important;
    }

    /* スマホで勝手に拡大防止 とそれに関するレイアウト調整　*/
    input[type="text"],
    input[type="password"],
    input[type="url"],
    input[type="tel"],
    input[type="search"],
    input[type="number"],
    input[type="datetime"],
    input[type="email"],
    textarea {
      font-size: 16px;
      transform: scale(0.96);
    }

    select {
        font-size: 16px !important;
    }

    img {
        width: 100%;
        margin: 0;
        padding: 0;
        vertical-align: middle;
    }

    /*　ウィジェット共通　*/
    .cms-home .page-wrapper > .widget,
    .block-static-block.widget {
        padding: 0;
        margin: 0;
    }

    .page-wrapper > .widget {
        margin: 0;
        padding:0;
    }

    .page-wrapper > .widget img {
        margin: -1px 0 0 0;
        /*margin: 0;*/
	    padding:0;
    }

    /* ページメイン共通　*/
    .page-main {
        margin: 0;
        padding: 0;
    }

    /* カラムメイン共通　 */
    .columns .column.main {
        margin: 0;
        padding: 0;
        width: 100%;
    }

    /* ページタイトル共通　*/
    .page-title-wrapper {
        text-align: center;
    }

    .page-title {
        display: inline-block;
        margin: 10px 0 20px;
        padding: 0 14% 10px;
        line-height: 1.5;
        font-size: 17px;
        letter-spacing: .2em;
        border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
        font-weight: bold;
    }

    /*　ここから　SP　ヘッダー　*/
    /*これでヘッダー固定有効*/
    .page-wrapper {
    	overflow: hidden;
    }

    .page-header {
        position: fixed;
        z-index: 10000;
        width: 100%;
    }

    .page-header .header.content {
        padding: 11px 8px;
        border-bottom: 1px solid #333;
        text-align: center;
    }

    /* トップサブメニュー　位置調整*/
    .page-header {
        border: none;
    }

    .block-search .control {
        border-top: none;
    }

    .logo-wrap {
        margin: 0;
    }

    .page-header .logo {
        float: none;
        display: inline-block;
        margin: 0;
        max-width: initial;
    }

    .page-header .logo img {
        width: 144px;
        display: inline-block;
    }

    /* インスタアイコン */
    .btn_insta {
        display: inline-block;
        height: 40px;
        opacity: .8;
    }

    .btn_insta:hover {
        opacity: .5;
    }

    .icon_insta {
        width: 20px;
    }
    /* ここまでヘッダー　*/

    /* パンくずリスト　SP */
    .page-wrapper .breadcrumbs {
        margin: 70px auto 20px;
        box-sizing: border-box;
        display: block;
        padding: 0 4%;
    }


.breadcrumbs a:visited {
	color: #808080 !important;
}

.breadcrumbs li.item a {
	color: #808080;
	font-size: 13px;
}

.breadcrumbs li.item strong {
	color: #1a1a1a;
	font-size: 13px;
}

    /*               　 */
    /*  ここからフッター　*/
    /*               　*/
    .page-footer .widget.block {
        margin: 0;
    }

    .footer {
        overflow: hidden;
        padding: 40px 0 0 0;
    }

    .footer > p {
        text-align: center;
    }

    .footer-logo {
        width: 84px;
    }

    .footer-nav {
        margin: 36px 0 0;
    }

    .footer-nav ul {
        overflow: hidden;
        margin-bottom: 0;
    }

    .footer-nav li {
        border-bottom: 1px solid rgba(255, 255, 255, .2);
        padding: 0 100%;
        margin: 0 -100%;
    }

    .footer-nav li:first-child {
        border-top: 1px solid rgba(255, 255, 255, .2);
    }

    .footer-nav a {
        display: block;
        padding: 0 12%;
	    font-size: 14px;
	    font-weight: bold;
	    color: #fff;
        line-height: 40px;
    }

    .footer-nav a::after {
        content: "\003e";
	    font-size: 12px;
        float: right;
    }

    .footer-nav a:hover {
        text-decoration: none;
        color: #fff;
    }

    .privacy_box {
        margin: 20px auto 0;
        width: 70px;
        background: #fff;
    }

    .copyright {
        clear: both;
        padding: 35px 8%;
        text-align: center;
        font-size: 10px;
        border-top: 1px solid rgba(255, 255, 255, .2);
    }

    /* サイドバー関連　*/
    /* サイドバーをcloseボタン*/
    .button-side-close {
        display: inline-block;
        margin: 0 20px 0 0;
        float: right;
        width: 60px;
        line-height: 30px;
        text-align: right;
        font-size: 13px;
    }

    /* サイドメニュートグルスイッチ　*/
    .page-header .nav-toggle:before {
        color: #5d5d5d;
    }

    .page-header .nav-toggle {
        top: 6px;
    }

    .nav-sections-item-content {
        padding: 18px 0;
    }

    .page-header .block-search {
         margin: 0;
     }

    .page-header .block-search .label:before {
        box-sizing: border-box;
        padding: 4px;
        border-radius: 10px;
        background: #1a1a1a;
        font-size: 22px;
        line-height: 22px;
        color: #fff;
    }

    .page-header .block-search .label {
        position: absolute;
        top: 10px;
        right: 10px;
    }

    /* 　選択時の赤ボーダーなし　*/
    .navigation .level0.active>a:not(.ui-state-active),
    .navigation .level0.has-active>a:not(.ui-state-active),
    .navigation .level0.active .all-category .ui-state-focus {
        border-color: transparent;
    }

    /** 言語選択ボタン関連　▼ **/
    .page-header .switcher-language {
        display: block;
        box-sizing: border-box;
        border: solid 1px #091e3d;
        border-radius: 3px;
        color: #091e3d;
        padding: 0 20px 0 0;
        width: 140px;
        margin: 0 0 0 20px;
        line-height: 30px;
    }


    /* 言語タブ三角　通常とアクティブ*/
    .page-header .nav-sections .switcher-trigger strong:after {
        position: absolute;
        top: auto;
        right: 30px;
        content: "▼";
        font-size: 8px;
        transform: scale(1, .7);
        line-height: 30px;
    }

    .page-header .nav-sections .switcher-trigger.active strong:after {
        position: absolute;
        top: auto;
        right: 30px;
        content: "▲";
        font-size: 8px;
        transform: scale(1, .7);
        line-height: 30px;
        color: #091e3d;
    }

    /* 言語タブ全体がトグルスイッチ　*/
    .page-header .switcher .options .action.toggle,
    .page-footer .switcher .options .action.toggle {
        display: block;
        width: 140px;
        text-align: center;
        font-size: 14px;
    }

    .page-header .switcher .options .action.toggle span,
    .page-footer .switcher .options .action.toggle span {
        margin: 0 0 0 -10px;
    }

    /* 言語タブの三角が二重になってたの解消　*/
    .page-header .switcher .options .action.toggle.active:after,
    .page-footer .switcher .options .action.toggle.active:after,
    .page-header .switcher .options .action.toggle:after,
    .page-footer .switcher .options .action.toggle:after {
        content: none;
    }

    /* 言語タブ一旦非表示　*/
    .page-header .switcher-language {
        position: relative;
        display: inline-block;
        margin: 0 0 20px 20px;
    }

    .page-header .switcher-language .options.active {
        width: 39px;
    }

    .page-header .switcher .options .action.toggle.active:after,
    .page-header .switcher .options .action.toggle:after {
        margin:  0 -.5em 0 -.3em;
    }

    /** 言語選択ボタン関連　▲ **/
    .page-header .switcher .options ul.dropdown {
        position: absolute;
        z-index: 100000;
        width: 138px;
        min-width: initial;
        border: none;
    }

    .page-header .switcher .options ul.dropdown:after,
    .page-footer .switcher .options ul.dropdown:after {
        border: none;
    }

    .page-header .switcher .options ul.dropdown li:hover,
    .page-header .switcher .options ul.dropdown li
     {
        background: #42210b;
        text-align: center;
    }

    .page-header .switcher .options ul.dropdown li:first-child {
        border-bottom: 1px solid #fff;
    }

    .page-header .switcher .options ul.dropdown:before {
        border-color: transparent transparent #42210b transparent;
    }

    .page-header a,
    .page-header a:visited,
    .page-header .alink:visited {
        color: #1a1a1a;
    }

    .page-header .switcher .options ul.dropdown a,
    .page-header .switcher .options ul.dropdown a:visited
    {
        color: #fff;
        font-size: 15px;
    }

    .page-header .switcher .options ul.dropdown:before,
    .page-footer .switcher .options ul.dropdown:before {
        left: 45%;
    }

    .page-header .switcher .options ul.dropdown li:last-child {
        border-bottom: none;
    }

    /*　SP サイドメニュー　▼　*/
    .header.content .nav-sections,
    .header.content .navigation {
        background: #f2f2f2;
        clear: both;
    }

    .header.content .nav-sections,
    .header.content .navigation ul {
        text-align: left;
    }

    /* サイドバー　メニュータブ　タブ部分非表示*/
    .header.content .nav-sections-item-title {
        display: none;
        border: none;
    }

    .header.content .nav-sections-item-content {
        margin-top: 0;
    }

    /*　大カテゴリ　*/
    .header.content .navigation .level0,
    .header.content .navigation .level0:last-child {
        box-sizing: border-box;
        border: none;
        font-size: 15px;
        line-height: 50px;
        padding: 0px 0px 0px 0px;
        color: #1a1a1a;
    }

    .header.content .navigation .level0.submenu>.level-top {
        padding: 0;
        text-align: left;
    }

    .header.content .navigation .level0.submenu,
    .header.content .navigation .level0.submenu:last-child {
        box-sizing: border-box;
        border: none;
        font-size: 15px;
        line-height: 50px;
        padding: 0px 0px 0px 0px;
        background-color: rgba(204, 204, 204, .2);
    }

    /*　小カテゴリ　*/
    .header.content .navigation .parent .level-top:after {
        top: 0;
        color: #1a1a1a;
    }

    .header.content .navigation a {
        padding: 0 0 0 20px;
    }

    .header.content .navigation .submenu:not(:first-child)>li>a {
        padding-left: 20px;
        font-weight: bold;
    }

    /*　SP サイドメニュー　▲　*/

    /***************************************************/
    /************* お知らせブログ関連　　　****************/
    /***************************************************/
    /* 日付をイタリックにしない*/
    .post-holder .post-header .post-info .value {
	font-style: normal;
}

.cms-home .blog-widget-recent {
    position: relative;
    clear: both;
    margin: 0 0 50px;
    padding: 30px 0 0 0;
    text-align: center;
}

.cms-home .page-main .info_new {
	margin-top: 30px;
	padding-bottom: 50px;
	text-align: center;
}

.cms-home .post-holder {
    box-sizing: border-box;
    width: 90%;
    margin: 7px 5%;
    background: none;
    padding: 0 0 0 2%;
    clear: both;
    text-align: left;
}

.cms-home .post-holder:hover {
    box-shadow: none;
    position: relative;
    z-index: 2;
}

.cms-home .post-holder .post-posed-date .label {
    display: none;
}

.cms-home .post-holder .post-info {
    display: inline-block;
    width: 22%;
    margin: 0 2% 0 0;
    line-height: 1;
    float: left;
}

.cms-home .post-holder .post-item-link {
    display: inline-block;
    max-width: 74%;
    text-align: left;
    vertical-align: top;
    font-size: 13px;
}

.cms-home .post-holder a,
.cms-home .post-holder a:visited,
.cms-home .post-holder .alink:visited,
.cms-home .post-holder .alink {
    color: #1a1a1a;
}

.cms-home .new_list {
    display: block;
    margin: 20px 8% 0 0;
    font-size: 13px;
    color: #1a1a1a;
    line-height: 36px;
    position: absolute;
    bottom: -30px;
    right: 0;
    clear: both;
}

.cms-home .new_list:hover,
.cms-home .new_list:active {
    text-decoration: none;
}

.cms-home .blog-widget-recent h3 {
  font-size: 17px;
  font-weight: bold;
  display: inline-block;
  padding: 0 18% 14px;
  border-bottom: 1px solid rgba(26, 26, 26, .3);
  letter-spacing: .2em;
  margin: 0 0 20px 0;
}

.cms-home .new_list span {
    font-size: 10px;
    vertical-align: 6%;
}

.cms-home .post-holder .post-posed-date {
    font-size: 9px;
}

/* ここから　お知らせブログ　一覧ページ　SP ▼ */
.page-title-wrapper {
    text-align: center;

}

.blog-index-index .page-main .page-title-wrapper h1.page-title,
.blog-category-view .page-main .page-title-wrapper h1.page-title {
  display: inline-block;
  font-size: 22px;
  padding: 10px 6% 10px;
  line-height: 1.5;
  border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
  margin: 20px 0;
}

.blog-index-index .column.main .post-list,
.blog-category-view .column.main .post-list {
    margin: 20px 0 0 0;
    padding: 0 5%;
}

.blog-index-index .post-holder,
.blog-category-view .post-holder {
	overflow: hidden;
	background: transparent;
	padding: 0;
    margin: 0 0 40px 0;
}

.blog-index-index .post-holder:hover,
.blog-category-view .post-holder:hover {
	box-shadow: none;
    position: relative;
    z-index: 0;
}

.blog-index-index .post-content .post-description .post-ftimg-hld,
.blog-category-view .post-content .post-description .post-ftimg-hld {
	height: 90px;
	overflow: hidden;
	position: relative;
    text-align: center;
}

/* サムネ画像　幅か高さどちらか合わせて画面いっぱい*/
.blog-index-index .post-content .post-description .post-ftimg-hld img,
.blog-category-view .post-content .post-description .post-ftimg-hld img {
/*position: absolute;*/
  /*top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);*/
  max-width: 100%;
  max-height: 100%;
  width: initial;
  height: initial;
}

.blog-index-index .post-content .post-description .post-ftimg-hld img:hover,
.blog-category-view .post-content .post-description .post-ftimg-hld img:hover {
	opacity: .8;
}

.blog-index-index .post-content,
.blog-category-view .post-content {
    width: 36%;
	float: left;
    margin: 0 4% 0 0;
    height: 90px;
    /*background-color: #ededed;*/
}

.blog-index-index .post-title-holder,
.blog-category-view .post-title-holder {
	display: none;
}

.blog-index-index .blog_date_title,
.blog-category-view .blog_date_title {
    width: 60%;
	float: left;
}

.blog-index-index .post-holder .post-header .post-info,
.blog-category-view .post-holder .post-header .post-info {
	font-size: 14px;
	color: #666;
	padding: 0;
}

.blog-index-index h2.post-title,
.blog-category-view h2.post-title {
	font-size: 16px;
	margin: 4px 0;
    line-height: 1.3;
}

.blog-index-index h2.post-title a,
.blog-category-view h2.post-title a {
	color: #1a1a1a;
}

.blog-index-index h2.post-title a:hover,
.blog-category-view h2.post-title a:hover {
	color: #1a1a1a;
	text-decoration: none;
	opacity: .8;
}

.blog-index-index .post-holder .post-header .post-info .label,
.blog-category-view .post-holder .post-header .post-info .label {
	display: none;
}
/* カテゴリ 追加 関連　▼　*/
/* パンくずリストで第カテゴリの「お知らせを非表示に」 */
.blog-category-view .breadcrumbs .item.blog,
.blog-post-view .breadcrumbs .item.blog {
    display: none;
}

/* 日付横のカテゴリ名非表示 */
.blog-post-view .post-header .post-info .dash,
.blog-post-view .post-header .post-info .post-categories,
.post-holder .post-header .post-info .dash,
.post-holder .post-header .post-info .item.post-categories {
    display: none;
}

.blog-category-view .category-content {
    padding: 0;
}

/* スタッフブログ開始するまでメニュー非表示 */
.menu-staff-blog {
    /* display: none; */
}

/* ブログ記事のimgを含むpはセンター寄せ */
.blog-post-view .post-text-hld .img-wrap {
    text-align: center;
    margin: 20px 0;
}

/* ページング */
.blog-index-index .toolbar-blog-posts,
.blog-category-view .toolbar-blog-posts {
    text-align: center;
    margin: 60px 0;
}

.blog-category-view .pages .page,
.blog-index-index .pages .page {
    margin: 0 8px;
    font-size: 18px;
}

.blog-category-view .pages strong.page,
.blog-index-index .pages strong.page {
    border-bottom: 3px solid #1a1a1a;
}

.blog-category-view .pages .action.next,
.blog-category-view .pages .action.previous {
    border: 1px solid #1a1a1a;
}

.pages .action.next:visited:before,
.pages .action.previous:visited:before {
    color: #1a1a1a;
}

.blog-index-index .post-holder .post-header .post-info .label,
.blog-category-view .post-holder .post-header .post-info .label {
	display: none;
}

/* ここまで　お知らせブログ　一覧ページ　SP ▲ */

/* ここから　お知らせブログ　詳細ページ　SP ▼ */
/* テキストは左寄せで、テキストの塊は中央寄せ　▼ */
.blog-post-view .page-title-wrapper {
    width: 90%;
    text-align: center;
    border-top: 1px solid #999;
	border-bottom: 1px solid #999;
    margin: 0 5% 10px;
}
.blog-post-view #maincontent .page-title {
	display: inline-block;
    text-align: left;
    text-align: justify;
	font-size: 20px;
    font-weight: normal;
    letter-spacing: normal;
	padding: 20px 6%;
    margin: 0 0 0 0;
    line-height: 1.5;
    border-bottom: none;
}
/* テキストは左寄せで、テキストの塊は中央寄せ　▲ */
.blog-post-view .column.main {
    padding: 0 5%;
}

.blog-post-view .post-holder {
    background: transparent;
    padding: 0;
    margin: 0;
}

.blog-post-view .post-content {
    padding: 0 0 40px 0;
}

.date_custom {
	text-align: right;
	margin: 0 0 10px;
}

.blog-post-view .post-holder:hover {
	box-shadow: none;
}

.blog-post-view .post-posed-date .label {
	display: none;
}

/* ブログのトップイメージ表示しない　*/
.blog-post-view .post-content .post-description .post-ftimg-hld {
	margin: 0;
    display: none;
}

.blog-post-view .post-text-hld .blog-image {
    height: 100px;
    width: 47%;
    margin: 20px 1%;
    box-sizing: border-box;
    display: inline-block;
    object-fit: contain;
    text-align: center;
}

.blog-post-view .post-text-hld .blog-image2 {
    height:260px;
    width: 100%;
    margin: 20px 0;
    box-sizing: border-box;
    display: inline-block;
    object-fit: contain;
    text-align: center;
}

.blog-post-view .post-text-hld img {
    margin: 0;
    clear: none;
    max-height: 100%;
    max-width: 100%;
    width: initial;
    height: initial;
}

.blog-post-view .post-text-hld {
    font-size: 14px;
	clear: both;
	padding: 0;
}

.blog-post-view .post-text-hld p {
    line-height: 1.6;
    padding: 10px 0;
}
/* 画像サイズなど修正　*/
.blog-post-view .post-content .post-description img {
    margin: 0;
}

/* SNSシェアボタン */
    .sns-box {
        margin: 30px 5% 10px;
        width: 90%;
        text-align: right;
    }

    .fa-twitter-square {
        color: #333;
        font-size: 40px;
    }

    .fa-facebook-square {
        color: #333;
        font-size: 40px;
    }

    .sns-share-twitter,
    .sns-share-facebook,
    .sns-share-hatena  {
        margin: 0 2px;
        display: inline-block;
        vertical-align: middle;
    }

    .sns-share-hatena {
        /* margin: 0 1%; */
        width: 36px;
        height: 36px;
        display: inline-block;
        background: #333;
        border-radius: 4px;
        vertical-align: middle;
    }
/* ここから　お知らせブログ　SP ▲ */

    /* 　ここからトップページ　　*/
    /* ウィジェット順番の崩れ防止 */

    .columns {
        display: block;
    }

    .top_h1_title {
        margin: 70px 0 0;
            text-align: center;
            font-size: 6.4vw;
    }

    .top_h1_title_s {
        font-size: 5vw;
    }

    /*パンクズリストのマージン不要*/
    .cms-home .page-title-wrapper {
        display: none;
    }

    /* スライダー　カスタム　*/
    .cms-home .swiper-container {
        margin: 50px 0 0 0;
        max-width: 100%;
    }

    .swiper-container .swiper-pagination-bullet-active {
        background: #1a1a1a;
        border: 1px solid #c9c9c9;
    }

    .swiper-container .swiper-pagination-bullet {
        background: rgba(26, 26, 26, .8);
        border: 1px solid #c9c9c9;
    }

    .swiper-container .swiper-button-prev,
    .swiper-container .swiper-button-next {
        top: 40%;
        width: 20px;
        height: 20px;
        border: 3px solid;
        background-image: none;
    }

    .swiper-container .swiper-button-prev {
        margin: 0 0 1% 1%;
        border-color:  transparent transparent rgba(26, 26, 26, .3) rgba(26, 26, 26, .3);
        transform: rotate(45deg);
    }

    .swiper-container .swiper-button-next {
        margin: 1% 1% 0 0;
        border-color: rgba(26, 26, 26, .3) rgba(26, 26, 26, .3) transparent transparent;
        transform: rotate(45deg);
    }

    .swiper-container-horizontal>.swiper-pagination-bullets {
        bottom: -20px;
        z-index: 20000;
    }

    /* トップ　店舗画像ギャラリー */
    /* .cms-home .lightbox {
        top: 600px;
    } */

    .lightbox .lb-data .lb-caption {
        line-height: 1.5em;
    }

    /* トップレコメンドブロック　SP */
    /* レコメンド　キャプションサイド　*/
    /*.section-cafe .section-headline {
        margin-bottom: 50px;
    }*/

    .box-product {
        overflow: hidden;
        margin: -2px 0 0 0;
    }

    .box-product-link {
        position: relative;
        /*width: 50%;*/
        /*float: left;*/
    }

    .box-product-link a:hover {
        opacity: .7;
    }

    .text-warp {
        overflow: hidden;
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        padding: 0 1%;
        position: absolute;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        color: #fff;
        text-align: center;
    }

    /* レコメンド　アイテムサイド　*/
    .block-recommend {
        padding: 30px 0 0 0;
        text-align: center;
    }

    .box-product-image {
        position: relative;
        /*width: 50%;*/
        /*float: left;*/
    }

    .text-warp .product-name {
        font-size: 21px;
    }

    .text-warp .product-name:lang(en) {
        font-size: 21px;
    }

    .product-name .small {
        display: block;
        margin: 16px 0;
        line-height: 1.4;
        font-size: 12px;
    }

    .product-name .small:lang(en) {
        margin: 16px 0;
        line-height: 1.5;
    }

    .product-btn {
        width: 145px;
        display: inline-block;
        line-height: 30px;
        font-size: 14px;
        border: 1px solid #fff;
        border-radius: 5px;
    }

    /* トップ「織り」とはブロック　*/
    .cms-home .page-bottom {
        margin: 0;
        padding: 0;
    }

    /*　トップ店舗関連　*/
    .section-cafe {
        text-align: center;
    }

    /* トップ　店舗関連　*/
    .section-cafe {
        overflow: hidden;
        padding: 30px 0 0 0;
        text-align: center;
    }

    /*.block-cafe1,
    .block-cafe2 {
        width: 50%;
        float: left;
    }*/

    .block-cafe1 img {
        margin: -3px 0 0 0;
    }

    .box-menu-image {
        position: relative;
        width: 50%;
        float: left;
    }

    .box-menu {
        overflow: hidden;
        margin: -2px 0 0 0;
    }

    .box-menu-link {
        position: relative;
        width: 50%;
        float: left;
    }

    .box-menu-link a:hover {
        opacity: .7;
    }

    .top-menu-name {
        display: block;
        margin: 0 0 20px 0;
        font-size: 15px;
    }

    .top-menu-name .small {
        display: inline-block;
        margin: 24px 0;
        line-height: 1.8;
        font-size: 18px;
    }

    .menu-btn {
        width: 120px;
        display: inline-block;
        line-height: 25px;
        font-size: 12px;
        border: 1px solid #fff;
        border-radius: 5px;
    }


    /* 新規ページ　「織り」とは　*/
    .about-ori {
    margin: 20px 0 1px;
    padding: 0 0 30px 0;
    text-align: center;
    background: rgba(26, 26, 26, .15);
}

.about-ori .about-ori-title {
    display: inline-block;
    margin: 20px 0 40px;
    padding: 0px 6% 10px;
    font-size: 17px;
    font-weight: bold;
    line-height: 1.5;
    border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
}

.about-ori .img-box img {
    margin: 0;
    padding: 0;
    vertical-align: bottom;
}

.about-ori .text-box {
    padding: 36px 6%;
    text-align: justify;
}

.about-ori .text-box p {
    line-height: 1.8;
    font-size: 13px;
}

/* SP 会社概要 　▼　*/
.category-company .page-title-wrapper h1.page-title,
.cms-company .page-title-wrapper h1.page-title {
  display: inline-block;
  font-size: 22px;
  padding: 10px 6% 10px;
  line-height: 1.5;
  border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
  margin: 10px 0 30px;
}

/* table-layout: fixed;でword-wrap:break-word;を有効にする */
.about_company {
    table-layout: fixed;
    width: 90%;
    margin: 10px 5% 50px;
    font-size: 13px;
    padding: 0 0 40px 0;
}

.about_company,
.about_company th,
.about_company td {
	border: 1px solid #ccc;
}

.about_company td:first-child {
	width: 34%;
	color: #fff;
	background: #1e5b50;
	text-align: justify;
	-moz-text-align-last: justify;
    text-align-last: justify;
	padding: 16px 5%;
	vertical-align: middle;
}

/*　英語と中国語で均等割りなし　*/
.about_company td:first-child:lang(en),
.about_company td:first-child:lang(zh-Hans-CN) {
    -moz-text-align-last: auto;
    text-align-last: auto;
}

/* word-wrap:break-word;でURLの折り返し有効に */
.about_company td:last-child {
	width: 66%;
	background: #fff;
	vertical-align: middle;
    word-wrap:break-word;

}
/* SP 会社概要 　▲　*/

    /* SP　案内・アクセス　▼　*/
    /*　カフェメニュー　一旦非表示　*/
    .section-cafe-menu {
        display: none;
    }

    .category-shop .page-title-wrapper {
        /* display: none; */
    }

    .shop-and-access-inner {
        text-align: center;
    }

    .section-headline {
        display: inline-block;
        margin: 28px 0 30px;
        padding: 0 14% 13px;
        line-height: 1.5;
        font-size: 17px;
        letter-spacing: .2em;
        border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
        font-weight: bold;
    }

    .top-image {
        margin: 10px 0 0 0;
    }

    .about-shop-box {
        padding: 30px 0 0;

    }

    .section-text {
        line-height: 1.6;
        text-align: justify;
    padding: 0 5% 40px;
    }

    .shop-and-access-inner .section-title {
        margin: 40px 0 30px;
        font-size: 15px;
        letter-spacing: .2em;
    }

    .shop-and-access-inner .section-text {
        font-size: 13px;
        line-height: 1.8;
        text-align: justify;
    }

    /* table タグできっちり3つ並ぶ　*/
    .shop-image {
        display: table;
        margin: 0;
        width: 100%;
        table-layout: fixed;
    }

    .shop-image li {
        width: 50%;
        float: left;
        margin: 0 0 5px 0;
    }

    .section-cafe-menu {
        padding: 50px 3.6% 20px;
    }

    .cafe-menu-list {
        margin: 0;
        width: 100%;
        overflow: hidden;
    }

    .cafe-menu-list li {
        float: left;
        width: 42.8%;
        margin: 0 3.6% 18px;
    }

    .section-cafe-menu .menu-name {
        text-align: left;
        margin: 8px 0 0 0;
        font-size: 10px;
    }

    .section-cafe-access .shop_box {
        padding: 40px 6% 68px;
        text-align: left;
    }

    .shop_box .shop-name {
        font-size: 15px;
        letter-spacing: .2em;
    }

    .shop_box .shop-info {
        font-size: 13px;
        line-height: 1.8;
        margin: 26px 0;
    }

    .shop-info-memo {
        margin: 20px 0;
        font-size: 13px;
        line-height: 1.8;
    }

    .google-map {
        margin: 20px 5% 0 0;
        text-align: right;
    }

    .google-map a {
        color: #1e5a50;
        font-size: 18px;
    }

    .shop-info li {
        margin: 0;
    }

    .map_box {
        margin: 10px 3% 0;
        padding: 20px 5%;
        border: 1px solid #1a1a1a;
        /*border-radius: */
    }

    /* SP お問い合わせ　▼　*/
.contact-index-index .page-title-wrapper {
    margin: 80px 0 0 0;
}

.contact-index-index .column.main {
    margin: 0 auto 70px;
    padding: 0 4% 0;
}

.contact-index-index .page-title-wrapper h1.page-title {
  display: inline-block;
  font-size: 22px;
  padding: 10px 6% 10px;
  line-height: 1.5;
  border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
  margin: 20px 0 0;
}

.contact-index-index .fieldset {
    margin: 0 0 20px;
}

.contact-index-index .field.note.no-label {
    font-size: 13px;
    margin: 0 0 20px 0;
    line-height: 1.7;
    /*padding-left: 2rem;
    text-indent: -2rem;*/
}

.contact-index-index .action.submit {
    background-color: #1a1a1a;
    line-height: 40px;
    font-size: 18px;
}

.contact-index-index .field.required {
    margin: 0 0 16px;
}

.contact-index-index .field.note.no-label a {
    color: #660000;
    text-decoration: underline;
}

/*　テキスト削除　*/
.contact-index-index .fieldset .legend {
    display: none;
}

/* お問い合わせ完了　メッセージ*/
.message.success>*:first-child:before {
    font-size: 32px;
    line-height: 32px;
}
/* SP お問い合わせ 　▲　*/


/***************************************************/
/********* カフェメニュー（menu）****************/
/***************************************************/
#menu-drink,
#menu-food {
    overflow: hidden;
    margin: -50px 0 0 0;
    padding: 50px 0 0 0;
}

.cafe-menu-innner {
    padding: 0 0 100px 0;
}

.category-menu .page-title  {
    margin: 30px 0 20px;
}

.title-drink {
    margin: 50px auto 40px;
    text-align: center;
    font-size: 17px;
    font-weight: bold;
}

.menu-list-drink {
    overflow: hidden;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

.menu-list-drink li {
    width: 50%;
    margin: 0 0 20px 0;
}

.menu-text-box {
    padding: 10px;
}

/* 右寄せで表示する「・・・価格」を左からoverhiddenさせる ▼　*/
.outer-div {
    width: auto;
    /* margin-left: auto; */
    /* margin-right: auto; */
    /* text-align: right; */
    overflow: hidden;
    white-space: nowrap;
    /* display: inline-block; */
    /* float: right; */
    /* display: inline; */
}

.inner-div {
    float:right;
}
/* 右寄せで表示する「・・・価格」を左からoverhiddenさせる　▲　*/

.menu-text {
    font-size: 13px;
}

.menu-text-s {
    font-size: 10px;
    line-height: 1.6;
}

.menu-text-m {
    margin: 6px 0 0;
    display: inline-block;
    font-size: 14px;
    line-height: 1.6;
}

.lunch-comment {
    margin: 20px 0 0;
    display: inline-block;
    font-size: 14px;

}

.inner-div p {
    font-size: 11px;
    line-height: 1.6;
}

.menu-attention {
    margin: 0 0 0 2.3%;
    font-size: 12px;
    line-height: 1.6;
}

/* 404　エラーページ */
.access-error-wrap {
    padding: 0 5%;
}

.cms-no-route .page-main {
    padding: 20px 0 0 0;
}

.cms-no-route .main {
    padding:  5% 40px;
}

.cms-no-route .page-main {
    padding: 80px 0;
}

.cms-no-route .page-main h1.page-title {
    display: inline-block;
    font-size: 22px;
    padding: 10px 6% 10px;
    line-height: 1.5;
    border-bottom: solid 1px rgba(26, 26, 26 ,0.3);
    margin: 20px 0 6px;
}

.cms-no-route .sub-title {
    margin: 10px 0;
    /*font-size: 20px;*/
    font-size: 5.6vw;
    line-height: 1.4;
}

.cms-no-route .access-error-wrap p {
    font-size: 14px;
    line-height: 1.6;
}

.cms-no-route .nf-nav {
    margin: 20px 0 0 0;
}

.cms-no-route .nf-nav li {
    margin: 0 0 14px 0;
}

.cms-no-route .nf-nav a {
    font-size: 14px;
    color: #1a1a1a;
    text-decoration: underline;
}

.cms-no-route .nf-nav a::before {
    content: "\003e";
}

}

/*　IEフォントが細くなるのを回避　*/
/*　IE10以降対応　*/
@media all and (-ms-high-contrast:none) {
    body {
        color: #1a1a1a;
        background: #F2F2F2 !important;
        font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝体", YuMincho, "游明朝 Medium", "Yu Mincho Medium", "游明朝", "Yu Mincho", "HG明朝E", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        font-weight: 500 !important;
    }

    h1,
    h2,
    h3
    {
        font-weight: 600 !important;
        letter-spacing: .1em;
    }

    .dot2 {
        letter-spacing: .1em;
    }

    /* h1,2,3以外で太くしたい部分はここに記述*/
    /* ヘッダーメニュー*/
    .page-header .navigation .level0 > .level-top span,
    #footer_nav a  {
          font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝体", YuMincho, "游明朝 bold", "Yu Mincho bold", "HG明朝E","HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        font-weight: 600 !important;
        /*フォント滑らかに*/
        /*transform: rotate(.001deg);*/
     }
}