/*直営ショップ一覧地図*/
.map-text{
  font-size: 16px;
  color: #333333;
  margin: 16px 0 24px;
}
.pane-left-menu + .pane-main{
  margin: 0 0 0 0;
}
.pane-main h2{
  font-size: 24px;
  color: #333333;
  font-weight: bold;
}
.pane-main .wrap-store{
  overflow: hidden;
  margin: 40px 0 80px 0;
}
.pane-main .wrap-store img{
  max-width: 100%;
}
.pane-main .wrap-store .lt{
  width: 35%;
  margin-right: 40px;
  float: left;
}
.pane-main .wrap-store .lt img{
  max-width: 100%;
}
.pane-main .wrap-store .lt.keyscafefigure img{
  border: 1px solid #ccc;
}
.pane-main .wrap-store .rt{
  width: 60%;
  float: right;
}
.pane-main .wrap-store p{
  font-size: 16px;
  color: #333333;
}
.pane-main p.btn-icon{
  width: max-content;
  margin: 24px 0 0 auto;
}
.pane-main p.btn-icon a{
  display: block;
  font-size: 16px;
  color: #333333;
  text-decoration: none;
  margin-bottom: 8px;
  padding-left: 28px;
  background: url(../img/store/fb/link.png) left center no-repeat;
  min-height: 20px;
  line-height: 1;
}
.pane-main p.btn-icon a:last-child{
  margin: 0;
}
.map-area {
  position: relative;
  max-width: 804.05px;
  margin: 0 0 96px 85px;
}
.map-prefecture {
  stroke: #fff;
  stroke-miterlimit: 10;
  stroke-width: .5px;
}
.map-prefecture.waku{
  stroke: #5D2F0D
}
.map-link:hover .map-prefecture {
  fill: #DACFB6;
}
.map-prefecture {
	fill: #ECE6D8;  
}


.btn-map-link .area-name{
  font-size: 20px;
  font-weight: bold;
  color: #333333;
  padding: 0 0 0 24px;
  min-height: 16px;
  text-decoration: none;
  line-height: 1;
  background: url(../img/store/fb/anchor.png) left center no-repeat;
  letter-spacing: 1.5px;
}
.btn-map-link .area-name:hover{
  opacity: 0.8;
}
.btn-map-link .shop-area{
  font-size: 14px;
  font-weight: bold;
}

.btn-map-link[data-area-name="hokkaido"] {
  position: absolute;
  top: 21px;
  left: 468px;
  width: 220px;
  height: 100px;
  background: url(../img/store/fb/hokkaido.png) right bottom no-repeat;
}
.btn-map-link[data-area-name="koushinetsuhokuriku"] {
  position: absolute;
  top: 168px;
  left: 289px;
  width: 284px;
  height: 219px;
  background: url(../img/store/fb/koushinetsuhokuriku.png) right bottom no-repeat;
}
.btn-map-link[data-area-name="koushinetsuhokuriku"] ul{
  justify-content: start;  
  margin-left: 28px;
}
#map-toraja .btn-map-link[data-area-name="koushinetsuhokuriku"] ul{
  width: 160px;
}
#map-toraja .btn-map-link[data-area-name="touhoku"] ul{
  margin-right: 0;
  width: 120px;
  justify-content: start;
}
.btn-map-link[data-area-name="touhoku"] {
  position: absolute;
  top: 237px;
  left: 640px;
  width: 300px;
  height: 119px;
  background: url(../img/store/fb/touhoku.png) right bottom no-repeat;
  text-align: right;
}
.btn-map-link[data-area-name="kanto"] {
  position: absolute;
  top: 385px;
  right: -153px;
  width: 349px;
  height: 114px;
  background: url(../img/store/fb/kanto.png) right bottom no-repeat;
  background-size: 100%;
  text-align: right;
}
.btn-map-link[data-area-name="kanto"] a.area-name{
  margin-right: 50px;
}
.btn-map-link[data-area-name="kanto"]  ul{
  justify-content: start;  
}
.btn-map-link[data-area-name="toukai"]  ul{
  justify-content: start;
  margin-right: 0;
  width: max-content;
}
.btn-map-link[data-area-name="toukai"] {
  position: absolute;
  bottom: 124px;
  left: 520px;
  width: 291px;
  height: 135px;
  background: url(../img/store/fb/toukai.png) right bottom 30px no-repeat;
  text-align: right;
  justify-content: end;
  align-items: end;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.btn-map-link[data-area-name="kinki"] {
  position: absolute;
  top: 341px;
  left: 182px;
  width: 194px;
  height: 172px;
  background: url(../img/store/fb/kinki.png) right top 30px no-repeat;
  text-align: left;
  justify-content: start;
  align-items: start;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.btn-map-link[data-area-name="kinki"] ul{
  justify-content: start;  
  margin-left: 28px;
}
#keyscafemap .btn-map-link[data-area-name="kinki"] ul{
  margin-left: 0;
}
.btn-map-link[data-area-name="chugoku"] {
  position: absolute;
  top: 596px;
  left: 309px;
  width: 306px;
  height: 136px;
  background: url(../img/store/fb/chugoku.png) right top 0px no-repeat;
  text-align: right;
  justify-content: end;
  align-items: end;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.btn-map-link[data-area-name="chugoku"] ul{
  justify-content: start;  
  margin-left: 28px;
}
.btn-map-link ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: 0 16px;
  margin: 15px 15px 0 auto;
  width: 135px;
}
.btn-map-link ul li a{
  color: #333333;
  font-size: 14px;
}
.btn-map-link ul li a:hover{
  text-decoration: none;
}
.btn-map-link[data-area-name="kyushu"] {
  position: absolute;
  bottom: 198px;
  left: -29px;
  width: 224px;
  height: 165px;
  background: url(../img/store/fb/kyushu.png) right top 30px no-repeat;
  text-align: right;
  justify-content: start;
  align-items: start;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.btn-map-link[data-area-name="kyushu"] ul{
  justify-content: start;  
  align-items: start;
  margin-left: 28px;
}
.btn-map-link[data-area-name="kaigai"] {
  position: absolute;
  top: 56px;
  left: 14px;
  width: 116px;
  background: url(../img/store/fb/kaigai.png) left top 30px no-repeat;  
}
.btn-map-link[data-area-name="kaigai"]  ul{
  justify-content: start;
  margin-left: 24px;
}
.map-link#active .map-prefecture {
	fill: #DACFB6;
}


#map-toraja .map-prefecture.waku{
  stroke: #5D2F0D
}
#map-toraja .map-link:hover .map-prefecture {
  fill: #99C1AD;
}
#map-toraja .map-prefecture {
	fill: #CCE0D5;  
}
#map-toraja .map-link#active .map-prefecture {
	fill: #99C1AD;
}
.heading04.level2 + .tableType02.tableTypeStore01.level2{
  display: none;
}
/*直営ショップ一覧地図*/

/*直営ショップ一覧*/
.storePara02.level1{
}
.level2 > .storeList02.storeArea01{
  display: none;
}
.heading04.level1{
  border-top: 1px solid #5D2F0C;
  padding: 32px 0 0 0;
  margin-top: 64px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  margin-bottom: 40px;
  gap: 40px;
}
.heading04 ul{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}
.heading04.level2{
  margin-bottom: 16px;
}
.heading04 ul a{
  color: #333333;
  font-size: 16px;
  text-decoration: none;
  padding: 0 0 0 24px;
  min-height: 24px;
  line-height: 1;
  background: url(../img/store/fb/anchor.png) left center no-repeat;
}
.heading04 ul a:hover{
  opacity: 0.8;
}
table.level2{
  display: none;
}
.tableType02 table{
  width: 100%;
}
.storePara02.level1{
  font-size: 22px;
  font-weight: bold;
  color: #333333;
}

.tableType02{
  margin-bottom: 24px;
}
h4.storePara02.level2 + .tableType02.tableTypeStore01.level2{
  display: none;
}
.tableType02:last-child{
  margin-bottom: 0;
}
.tableType02 table thead th{
  background: #F8F7F3;
  padding: 18px 16px 18px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #333333;
  border-top: 1px solid #D3D0C8;
  border-bottom: 1px solid #D3D0C8;
  box-sizing: border-box;
}

.tableType02.level1 table:first-of-type + table th,
.tableType02.level1 table:first-of-type + table td,
.tableType02.level2 table:first-of-type + table th,
.tableType02.level2 table:first-of-type + table td{

  border-top: 1px solid #D3D0C8;
}
.tableType02 th.shopname{
  min-width: 28%;
  width: 28%;
}
.tableType02 td.address{
  min-width: 38%;
  width: 38%;
}
.tableType02 tbody th{
  background-color: #FBFBF9;
  border-bottom: 1px solid #D3D0C8;
  padding: 18px 16px 18px;
  color: #333333;
  font-size: 16px;
  width: 300px;
  box-sizing: border-box;
}
#shoplist-toraja .tableType02 .shopname{
  min-width: 330px;
}
#shoplist-toraja .tableType02 .address{
  min-width: 570px;
}
#shoplist-toraja .tableType02 .tel{
  min-width: 220px;
}
.tableType02 th a{
  color: #333;
}
.tableType02 th a:hover{
  text-decoration: none;
}
.tableType02 td{
  border-bottom: 1px solid #D3D0C8;
  padding: 18px 16px 18px;
  color: #333333;
  font-size: 16px;
  vertical-align: middle;
  box-sizing: border-box;
}
.tableType02 .tel{
  text-align: center;
  min-width: 21%;
  width: 21%;
}
.tableType02 .kissa{
  text-align: center;
  min-width: 14%;
  min-width: 14%;
}

.tableType02 thead th:nth-child(2),
.tableType02 th + td{
  width: 38%;
}
.storePara02.level2{
  margin: 0 0 0;
  padding: 0 0 0 20px;
  box-sizing: border-box;
  color: #333333;
  font-size: 20px;
  font-weight: bold;
  position: relative;
  line-height: 1;
}
.storePara02.level2::before{
  content: '';
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  left: 0;
  width: 10px;
  height: 10px;
  background: #005BAC;
}
/*直営ショップ一覧*/


/*dialy*/
div.keycoffeedialy + div.keycoffeedialy{
  margin: 0 0 80px 0;
}
div.keycoffeedialy{
  height: auto;
  margin: 0 0 40px;
}
div.keycoffeedialy::before{
  display: none;
}
div.keycoffeedialy-main{
  display: block;
  min-width: 100%;
  max-width: 100%;
  width: 100%;
  margin: 0;
}
div.keycoffeedialy-detail{
  width: max-content;
  text-align: center;
  margin: 0 auto;
}
.keycoffeedialy-inner{
  width: auto;
  height: unset;
}
/*dialy*/

/*オンラインショップ*/
#onlineshop{
  width: 1200px;
  margin: 100px auto 0 auto;
}
.pane-header p{
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  margin: 0 auto 24px;
  padding: 0;
  color: #005BAC;
  width: max-content;

  background-image: url(../img/store/sb/left.png),url(../img/store/sb/right.png);
  background-position: left bottom,right bottom;
  background-repeat: no-repeat,no-repeat;
  background-size: 16px 24px,16px 24px;
  padding: 0 24px;
}
#torajaonlineshop{
 color: #026633; 
 background-image: url(../img/store/sb/torajaonlineshop_left.png),url(../img/store/sb/torajaonlineshop_right.png);
 background-position: left bottom,right bottom;
 background-repeat: no-repeat,no-repeat;
 background-size: 16px 24px,16px 24px;
 padding: 0 24px;
}
.pane-header a:hover{
  opacity: 0.8;
}


/*キーズカフェ*/
#storekeyscafelist .shopname{
  max-width: unset;
  min-width: 20%;
  width: 20%;
  box-sizing: border-box;
}
#storekeyscafelist .address{
  min-width: 20%;
  width: 20%;
  box-sizing: border-box;
}
#storekeyscafelist .tel{
  min-width: 13%;
  width: 13%;
  text-align: center;
  padding: 0;

}
#storekeyscafelist .hours{
  min-width: 14%;
  width: 14%;
  text-align: center;
}
#storekeyscafelist .close
{
  min-width: 12%;
  width: 12%;
  text-align: center;
  padding: 0;
}

#storekeyscafelist .seat{
  min-width: 10%;
  width: 10%;
  text-align: center;
  padding: 0;
}
#storekeyscafelist .park{
  min-width: 11%;
  width: 11%;
  text-align: center;
}
/*
.keycoffeedialy-inner .hacobune-app-container{
  width: 100%;
}
.keycoffeedialy-inner .ecbn-selection-page-wrapper .ecbn-selection-snap{
  width: 100%!important;
  max-height: 444.876px!important;
  height: unset!important;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.keycoffeedialy-inner .hacobune-gallery{
  width: 100%!important;
  height: unset!important;
}
.keycoffeedialy-inner .vsm-tile .ecbn-selection-page-wrapper li.ecbn-selection-item{
  position: relative!important;
  left: unset!important;
  top: unset!important;
}

.keycoffeedialy-inner .vsm-tile .ecbn-selection-page-wrapper li.ecbn-selection-item{
  margin: 0;
  padding: 0;
  width: calc(( 100% / 5) - 8px) !important;
}
.keycoffeedialy-inner .vsm-tile .ecbn-selection-page-wrapper li.ecbn-selection-item:nth-child(n+11){
  display: none;
}
.keycoffeedialy-inner .vsm-tile .ecbn-selection-image-loading-more{
  display: none!important;
}
.keycoffeedialy-inner .vsm-tile .ecbn-selection-page-wrapper .ecbn-selection-to-nextpage>a.ecbn-selection-to-nextpage-btn,
.keycoffeedialy-inner .vsm-tile .ecbn-selection-wrapper .ecbn-selection-to-nextpage>a.ecbn-selection-to-nextpage-btn{
  width: 212px;
  padding-left: 77px;
  background-position: 49px center;
  bottom: 30px;
  right: 0;
}

.keycoffeedialy .hacobune-layout-base-bottom-html .snap-more a.btn_{
  width: 212px;
  padding-left: 77px;
  background-position: 49px center; 
  bottom: 39px;
}
div.keycoffeedialy2 div.keycoffeedialy-detail h2 br{
  display: none;
}*/
.roboto {
  font-family: "Roboto Slab", sans-serif;
  letter-spacing: 3px;
}

@media only screen and (max-width: 1400px) {
  #onlineshop,
  .pane-header.onlineshop{
    width: calc(100% - 40px);
    padding: 0 20px;
  }
  .pane-header.onlineshop img{
    max-width: 100%;
  }
  .map-area{
    margin-left: auto;
    margin-right: auto;
  }
  .btn-map-link[data-area-name="touhoku"],
  .btn-map-link[data-area-name="kanto"]{
    left: auto;
    right: 0;
    background: unset;
  }
  .btn-map-link[data-area-name="touhoku"] a.area-name::before{
    background: unset;
    display: inline-block;
    content: '';
    width: 40%;
    height: 1px;
    content: '';
    background: #736D6D;
    position: absolute;
    right: 0;
    top: 30px;
  }
  .btn-map-link[data-area-name="touhoku"] a.area-name::after{
    background: unset;
    display: inline-block;
    content: '';
    width: 12%;
    height: 1px;
    content: '';
    background: #736D6D;
    position: absolute;
    right: 117px;
    top: 39px;
    transform: rotate(-30deg);
  }
  .btn-map-link[data-area-name="kanto"] a.area-name{
    margin-right: 0;
  }
  .btn-map-link[data-area-name="kanto"] a.area-name::before{
    background: unset;
    display: inline-block;
    content: '';
    width: 40%;
    height: 1px;
    content: '';
    background: #736D6D;
    position: absolute;
    right: 0;
    top: 30px;
  }
  .btn-map-link[data-area-name="kanto"] a.area-name::after{
    background: unset;
    display: inline-block;
    content: '';
    width: 20%;
    height: 1px;
    content: '';
    background: #736D6D;
    position: absolute;
    right: 135px;
    top: 47px;
    transform: rotate(-30deg);
  }  
  .keycoffeedialy-inner .vsm-tile .ecbn-selection-page-wrapper .ecbn-selection-to-nextpage>a.ecbn-selection-to-nextpage-btn,
  .keycoffeedialy-inner .vsm-tile .ecbn-selection-wrapper .ecbn-selection-to-nextpage>a.ecbn-selection-to-nextpage-btn,
  .keycoffeedialy .hacobune-layout-base-bottom-html .snap-more a.btn_{
    width: 195px;
    background-position: 40px center;
    padding-left: 70px;
  }
}
@media only screen and (max-width: 1300px) {
  .keycoffeedialy-inner .vsm-tile .ecbn-selection-page-wrapper .ecbn-selection-to-nextpage>a.ecbn-selection-to-nextpage-btn,
  .keycoffeedialy-inner .vsm-tile .ecbn-selection-wrapper .ecbn-selection-to-nextpage>a.ecbn-selection-to-nextpage-btn,
  .keycoffeedialy .hacobune-layout-base-bottom-html .snap-more a.btn_{
    width: 164px;
    height: 164px;
  }
}

.pane-main p.btn-icon a.store_list_btn {
  position: relative;
  display: block;
  font-size: 16px;
  color: #005BAC;
  text-decoration: none;
  margin-bottom: 8px;
  padding-left: 28px;
  background: url(../img/store/link_anc.png) left center no-repeat;
  min-height: 20px;
  line-height: 1;
}
/* 直性ショップニュースブロック */
.direct-header-block {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid #ECECEB;
  padding-bottom: 10px;
  z-index: 1;
}
.direct-header-block::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100px;
  height: 2px;
  background-color: #005BAC;
  z-index: 2;
}
h2.direct_store_news_ttl_ {
  font-size: 24px;
  line-height: 1.5em;
  font-weight: bold;
}
.direct-header-block a {
  text-decoration: none;
  font-size: 16px;
  color: #333333;
  padding: 0 0 0 28px;
  line-height: 1;
  background: url(../img/top/fb/infobtn.png) left center no-repeat;
  min-height: 20px;
}
.direct_store_news_list_ {
  padding-left: 30px;
  margin-bottom: 80px;
}
.direct_store_news_list_ li {
  padding: 20px 0;
  border-bottom: 1px solid #ECECEB;
}
.direct_store_news_list_ li a {
  text-decoration: none;
}
.direct_store_news_list_ li a .formdetail_main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.direct_store_news_list_ li a .formdetail_main .formdetail_detail {
  width: 75%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 30px;
}
.direct_store_news_list_ li a .formdetail_main .formdetail_detail .formdetail_left {
  width: 100px;
}
.direct_store_news_list_ li a .formdetail_main .formdetail_detail .formdetail_left p {
  color: #000;
  text-decoration: none;
}
.direct_store_news_list_ li a .formdetail_main .formdetail_detail .formdetail_center {
  width: calc(100% - 130px);
  color: #005BAC;
  text-decoration: none;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.direct_store_news_list_ li a .formdetail_main .formdetail_img {
  width: 20%;
  padding-right: 5%;
  box-sizing: border-box;
}
.direct_store_news_list_ li a .formdetail_main .formdetail_img img {
  width: 100%;
}
