@charset "UTF-8";

@media screen and (min-width: 992px) {
	
  .disp_sp {
    display: none !important;
  }


/*全ページ適用CSS -------------------------------------------------------------- */
* {
  margin: 0;
  padding: 0;
  font-size: 100%;
}
body {
  font-family: 'ＭＳ Ｐゴシック', Arial, sans-serif;
  margin: 0;
  padding: 0;
  text-align: center;
  font-size: 75%;
  line-height: 1.4;
  color: #333333;
  min-width: 1000px;
}
html.is_hidden {
  overflow: hidden;
}
body.home {
  background: none;
}
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, th, td {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
fieldset, img {
  border: 0;
}
img {
  vertical-align: top;
}
/*address, caption, cite, code, dfn, em, strong, th, var{
font-style:normal; font-weight:normal;  
}*/
address, caption, cite, code, dfn, th, var {
  font-style: normal;
  font-weight: normal;
}
em {
  font-style: normal;
}
ol, ul {
  list-style: none;
}
caption, th {
  text-align: left;
}
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}
hr {
  display: none;
}
abbr, acronym {
  border: 0;
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
.clearfix {
  /zoom: 1;
}
/* End IE-mac */
.clear {
  clear: both;
}
/*------------------------------------
リンク 
------------------------------------*/ 
a img, a:link, a:visited {
  text-decoration: underline;
  color: #333333;
  overflow: hidden;
  outline: none;
}
a:hover {
  text-decoration: none;
  color: #333;
}
/*------------------------------------
ラッパー 
------------------------------------*/ 
#wrapper {
  margin: 0;
  text-align: center;
  background: url(../img/img-common/content_bg02.jpg) repeat right top;
  padding-top: 190px;
}
.home #wrapper {
  padding-top: 0;
}
#container {
  clear: both;
  text-align: left;
}
#contents {
  width: 1000px;
  margin: 0px auto;
  background: url(../img/img-common/contents_bg01.jpg) no-repeat center top;
}
#contents.ohako {
  margin: 50px auto 0;
}
#contents #catch {
  margin: 10px 60px 0 90px;
  line-height: 1.8em;
  font-size: 14px;
}
#primary {
  margin: 50px 0 0 0;
  width: auto;
}
#primary.ohako {
  margin: 50px 0 0 60px;
}
#primary.newsgalleryohako {
  margin: 50px 0 0 70px;
}
#primary:after {
  content: "";
  display: table;
  clear: both;
}
/*------------------------------------
ヘッダー 
------------------------------------*/ 
#hed_wrp {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: url(../img/img-common/hed_bg.png) no-repeat top center #fff;
  z-index: 5000;
}
#hed_wrp::before {
  content: "";
  width: 100%;
  height: 48px;
  position: absolute;
  bottom: -48px;
  left: 0;
  background: url(../img/img-common/content_bg.png) repeat-x center top;
}
#hed_wrp::after {
  content: "";
  width: 100%;
  height: 42px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/img-common/hed_bg02.jpg) repeat-x top center;
  z-index: -1;
}
.home #hed_wrp {
  position: relative;
  z-index: auto;
}
.home #hed_wrp::before {
	display: none;
}
.home #hed_wrp::after {
	display: none;
}
#header {
  width: 1000px;
  position: relative;
  margin: 0px auto;
  text-align: left;
}
#header h1 {
  padding: 0;
  margin: 0;
  text-align: right;
  font-size: 12px;
  position: absolute;
  right: 53px;
  top: 2px;
  color: #777;
}
#header p.logo {
  margin: 0;
  padding: 7px 0 0 23px;
  outline: none;
}
#header p.logo a {
  display: block;
  height: 125px;
  width: 510px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(../img/img-common/hed_logo.png) no-repeat top left;
}
#hed_wrp p.logo a:hover {
  background-position: top right;
}
#hed_wrp.index #hnav {
  position: absolute;
  top: 353px;
  right: 0;
  left: 0;
  z-index: 0;
  display: block;
  width: 100%;
  background-color: #FFFF00;
}
#hed_wrp ul#gnav {
  background-color: #FFFF00;
  padding: 0;
  width: 1000px;
  height: 42px;
  margin: 0 auto;
}
#hed_wrp ul#gnav li {
  padding: 0;
  margin: 0;
  float: left;
}
#hed_wrp ul#gnav li a {
  display: none;
  outline: none;
  overflow: hidden;
  width: 155px;
  height: 42px;
  text-decoration: none;
  text-indent: -10000px;
}
#hed_wrp ul#gnav li.cat-item-2 a {
  background: url(../img/img-common/gnav_01.gif) no-repeat left top;
  display: block;
}
#hed_wrp ul#gnav li.cat-item-3 a {
  background: url(../img/img-common/gnav_02.gif) no-repeat left top;
  display: block;
  width: 165px;
}
#hed_wrp ul#gnav li.cat-item-4 a {
  background: url(../img/img-common/gnav_03.gif) no-repeat left top;
  display: block;
  width: 160px;
}
#hed_wrp ul#gnav li.cat-item-5 a {
  background: url(../img/img-common/gnav_04.gif) no-repeat left top;
  display: block;
  width: 150px;
}
#hed_wrp ul#gnav li.cat-item-6 a {
  background: url(../img/img-common/gnav_05.gif) no-repeat left top;
  display: block;
  width: 205px;
}
#hed_wrp ul#gnav li.cat-item-7 a {
  background: url(../img/img-common/gnav_06.gif) no-repeat left top;
  display: block;
  width: 155px;
}
#hed_wrp ul#gnav li a:hover {
  background-position: right bottom !important;
}
	
	
	
	
/*------------------------------------
固定ヘッダー
------------------------------------*/
#fixed_hed_wrp {
  position: fixed;
  top: -220px;
  left: 0;
  width: 100%;
  background: url(../img/img-common/hed_bg.png) no-repeat top center #fff;
  z-index: 5000;
  transition: all .4s;
}
#fixed_hed_wrp::before {
  content: "";
  width: 100%;
  height: 48px;
  position: absolute;
  bottom: -48px;
  left: 0;
  background: url(../img/img-common/content_bg.png) repeat-x center top;
}
#fixed_hed_wrp::after {
  content: "";
  width: 100%;
  height: 42px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/img-common/hed_bg02.jpg) repeat-x top center;
  z-index: -1;
}
#fixed_hed_wrp.active {
  top: 0px;
}
#fixed_header {
  width: 1000px;
  position: relative;
  margin: 0px auto;
  text-align: left;
}
#fixed_header h1 {
  padding: 0;
  margin: 0;
  text-align: right;
  font-size: 12px;
  position: absolute;
  right: 53px;
  top: 2px;
  color: #777;
}
#fixed_header p.logo {
  margin: 0;
  padding: 7px 0 0 23px;
  outline: none;
}
#fixed_header p.logo a {
  display: block;
  height: 125px;
  width: 510px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(../img/img-common/hed_logo.png) no-repeat top left;
}
#fixed_hed_wrp p.logo a:hover {
  background-position: top right;
}

#fixed_hed_wrp ul#gnav {
  background-color: #FFFF00;
  padding: 0;
  width: 1000px;
  height: 42px;
  margin: 0 auto;
}
#fixed_hed_wrp ul#gnav li {
  padding: 0;
  margin: 0;
  float: left;
}
#fixed_hed_wrp ul#gnav li a {
  display: none;
  outline: none;
  overflow: hidden;
  width: 155px;
  height: 42px;
  text-decoration: none;
  text-indent: -10000px;
}
#fixed_hed_wrp ul#gnav li.cat-item-2 a {
  background: url(../img/img-common/gnav_01.gif) no-repeat left top;
  display: block;
}
#fixed_hed_wrp ul#gnav li.cat-item-3 a {
  background: url(../img/img-common/gnav_02.gif) no-repeat left top;
  display: block;
  width: 165px;
}
#fixed_hed_wrp ul#gnav li.cat-item-4 a {
  background: url(../img/img-common/gnav_03.gif) no-repeat left top;
  display: block;
  width: 160px;
}
#fixed_hed_wrp ul#gnav li.cat-item-5 a {
  background: url(../img/img-common/gnav_04.gif) no-repeat left top;
  display: block;
  width: 150px;
}
#fixed_hed_wrp ul#gnav li.cat-item-6 a {
  background: url(../img/img-common/gnav_05.gif) no-repeat left top;
  display: block;
  width: 205px;
}
#fixed_hed_wrp ul#gnav li.cat-item-7 a {
  background: url(../img/img-common/gnav_06.gif) no-repeat left top;
  display: block;
  width: 155px;
}
#fixed_hed_wrp ul#gnav li a:hover {
  background-position: right bottom !important;
}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
/*------------------------------------
���i�r 
------------------------------------*/
#secondary {
  width: 200px;
  padding: 27px 0 0 0;
  margin: 0;
  float: left;
}
#secondary h3.widget-title {
  display: block;
  height: 22px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(../img/img-guide/ttl_04.png) no-repeat top right;
  margin: 0;
  padding: 0;
}
#secondary h3.widget-title02 {
  border-bottom-color: #E5E5E5;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  color: #222222;
  font-size: 22px;
  margin: 0 0 15px;
  padding: 0 0 10px;
  text-transform: uppercase;
  text-align: right;
  font-weight: bold;
}
#secondary ul {
  text-align: right;
  margin: 7px 0 0 0;
}
#secondary ul li {
  font-size: 14px;
  color: #333333;
  margin: 10px 0 0 0;
}
#secondary ul li a {
  font-weight: bold;
  margin: 0 5px 0 0;
}
#secondary ul li a:hover {
  text-decoration: underline;
}
#secondary ul li .avhec-widget-count {
  font-weight: normal;
}
#secondary ul li a {
  text-decoration: none;
}
#secondary #bana {
  width: 150px;
  margin: 65px 0 0 0;
}
#secondary #bana a {
  overflow: hidden;
  display: block;
  text-align: center;
  text-decoration: underline;
}
#secondary #bana a.method01 {
  width: 150px;
  overflow: hidden;
  display: block;
  background: url(../img/img-common/bnr_01.png) no-repeat top left;
  padding: 5px 0 0 0;
  margin: 0 0 30px 40px;
  text-align: center;
}
#secondary #bana a.method02 {
  width: 173px;
  height: 131px;
  overflow: hidden;
  display: block;
  background: url(../img/img-common/bnr_02.png) no-repeat top left;
  margin: 0 0 30px 28px;
}
#secondary #bana a.method03 {
  width: 167px;
  overflow: hidden;
  display: block;
  background: url(../img/img-common/bnr_03.png) no-repeat top left;
  margin: 0 0 0px 30px;
}
#secondary #bana a img {
  margin: 0 0 0 -1000px;
  overflow: hidden;
  display: block;
}
#secondary #bana a:hover {
  background-position: top right;
  text-decoration: none;
}
/*------------------------------------
�y�[�W�g�b�v
------------------------------------*/
#pagetop {
  position: fixed;
  bottom: 50px;
  right: 20px;
  transition: opacity 1s;
  opacity: 0;
  cursor: pointer;
  z-index: 99;
}
#pagetop img{
	height: 30px;
}
#pagetop.is_active {
  opacity: 1;
}


/*------------------------------------
�t�b�^�[
------------------------------------*/
#sns_block {
  width: 100%;
  background: url(../img/img-common/fot_bg.jpg) no-repeat center bottom;
  clear: both;
  padding: 170px 0 0 0;
}
#sns_block ul {
  display: block;
  width: 1000px;
  margin: 0 auto;
}
#sns_block ul li {
  float: left;
  width: 316px;
  margin: 0 24px 0 0;
  background-color: #fff;
}
#sns_block ul li.method03 {
  float: left;
  width: 316px;
  margin: 0;
}
#sns_block ul li.method03 iframe {
  width: 100%;
}
#footer {
  width: 100%;
  background-color: #000;
}
#footer .fot_nav {
  width: 960px;
  padding: 30px 0 20px;
  margin: 0 auto;
  text-align: center;
  display: block;
  background: url(../img/img-common/fot_lin01.gif) no-repeat bottom center;
}
#footer .fot_nav ul {
  display: block;
  overflow: hidden;
  margin: 0 0 0 60px;
}
#footer .fot_nav ul li {
  padding: 0 10px 0 0px;
  margin: 0 10px 0 -1px;
  white-space: nowrap;
  font-size: 14px;
  text-align: left;
  line-height: 1.3em;
  float: left;
}
#footer .fot_nav ul li a {
  padding: 0 0 0 20px;
  color: #A3A3A3;
  text-decoration: none;
  border-left: 1px solid #fff;
}
#footer .fot_nav ul li a:hover {
  text-decoration: underline;
}
#footer .logo {
  width: 960px;
  padding: 20px 0 40px 0px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 0 20px;
  text-align: left;
  font-size: 14px;
  color: #fff;
}
#footer .logo #copyright{
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;

}
#footer .logo ul{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0 10px;
}
#footer .logo small{
  font-size: 14px;
  line-height: 1.0;
}
#fot_catch {
  width: 880px;
  margin: 25px auto 0;
  text-align: left;
  line-height: 1.8em;
  font-size: 110%;
}
/*------------------------------------
記事　ベースレイアウト
------------------------------------*/
#contents.common h2 {
  margin: 0px 0 0 0;
  width: 1000px;
}
.common #bread {
  padding: 45px 0 15px 10px;
  width: 100%;
  height: 20px;
  display: block;
  position: relative;
}
.common #bread ul {
  position: absolute;
  z-index: 10;
}
.common #primary {
  margin: 0 0 50px 0;
  width: auto;
  width: 980px;
}
.common #primary:after {
  content: "";
  display: table;
  clear: both;
}
.common #primary #content {
  float: left;
  width: 710px;
  padding: 12px 0 0 20px;
}
.common #primary .item-inner {
  background-color: #FFFFFF;
  background-position: initial initial;
  background-repeat: initial initial;
  border: 1px solid #E5E5E5;
  margin: 10px;
  padding: 25px;
  position: relative;
  width: 600px;
}
.common #primary .item-inner h2 {
  margin: 0;
  padding: 27px 0 10px 27px;
  width: auto !important;
  text-align: left;
  font-size: 16px;
  color: #333;
  font-weight: bold;
  height: auto;
}
.common #primary .item-inner .item-thumbnail img {
  width: 600px;
  height: auto;
}
.common #primary .item-inner .item-content p {
  line-height: 1.8em;
  margin: 0 27px 27px 27px;
  font-size: 14px;
}
.common #primary .mail tr p {
  display: none;
}
.wp-pagenavi {
  text-align: center;
  width: 850px;
  margin: 30px 0;
  font-size: 120%;
}
.wp-pagenavi a {
  text-decoration: none;
}
/*------------------------------------
おはこ市　ベースレイアウト
------------------------------------*/
.ohako .category-ohako {
  margin: 0 10px 35px 0;
  padding: 10px;
  float: left;
  width: 256px;
  height: 376px;
  text-align: center;
  background-color: #fff;
  border: 1px solid #eee;
}
.ohako .category-ohako a {
  text-decoration: none;
  outline: none;
}
.ohako .category-ohako a:hover {
  text-decoration: underline;
}
.ohako .category-ohako .entry-header {
  margin: 0;
}
.ohako #primary .category-ohako .thumbnail_box {
  width: 255px;
  max-height: 255px;
  display: block;
  text-align: center;
  background-color: #FFF;
}
.ohako #primary .category-ohako img {
  max-width: 255px;
  width: auto;
  max-height: 255px;
  margin: 0;
  height: auto;
  display: inline;
}
.ohako .category-ohako .entry-title {
  text-align: left;
  font-size: 14px;
  color: #333;
  width: 256px;
  display: block;
  word-break: break-all;
  font-weight: bold;
  margin: 10px 5px 0;
}
.ohako .category-ohako .entry-content {
  text-align: left;
  padding: 0;
  margin: 10px 5px 0 5px;
  font-size: 12px;
}
/*------------------------------------
ショップガイド　ベースレイアウト
------------------------------------*/
#contents.guide h2 {
  margin: -35px 0 0 0;
  width: 1000px;
  height: 166px;
  position: relative;
}
#contents.guide h2 img {
  position: absolute;
  top: 0;
  left: 0;
  resize: 0;
  z-index: 0;
}
.guide #bread {
  padding: 45px 0 15px 10px;
  width: 100%;
  height: 20px;
  display: block;
  position: relative;
}
.guide #bread ul {
  position: absolute;
  z-index: 10;
}
.guide #primary #content {
  float: left;
  width: 710px;
  padding: 12px 0 30px 60px;
}
.guide #primary {
  margin: 0 0 10px 0;
  width: auto;
  background: url(../img/img-guide/bg_01.jpg) no-repeat top center;
  width: 1000px;
}
.guide #primary:after {
  content: "";
  display: table;
  clear: both;
}
.guide #primary .guide #primary #content {
  float: left;
  width: 710px;
  padding: 12px 0 0 80px;
}
.guide #primary .category-guide {
  margin: 0 10px x 0;
  padding: 10px;
  float: left;
  width: 200px;
  height: 250px;
  text-align: center;
}
.guide #primary .category-guide a {
  text-decoration: none;
  outline: none;
}
.guide #primary .category-guide a:hover {
  text-decoration: underline;
}
.guide #primary .category-guide .entry-header {
  margin: 0;
}
.guide #primary .category-guide .thumbnail_box {
  width: 200px;
  max-height: 200px;
  display: block;
  text-align: center;
}
.guide #primary .category-guide img {
  max-width: 200px;
  width: auto;
  max-height: 200px;
  margin: 0;
  height: auto;
  display: inline;
}
.guide #primary .category-guide .entry-title {
  text-align: left;
  font-size: 14px;
  color: #333;
  display: block;
  word-break: break-all;
  font-weight: bold;
  margin: 5px 0px 0;
  padding: 5px;
  background-color: #fff;
}
.guide #primary .category-guide .entry-content {
  text-align: left;
  padding: 0;
  padding: 0px 5px 5px 5px;
  font-size: 12px;
  background-color: #fff;
}
.guide #primary #ttl_01 {
  font-size: 16px;
  color: #fff;
  width: 670px;
  padding: 0 0 0 15px;
  margin: 0 0 20px 0;
  line-height: 30px;
  background: url(../img/img-guide/ttl_03.gif) no-repeat top left;
  font-weight: bold;
  display: block;
}
#contents.guide .wp-pagenavi {
  width: 100%;
}
/*------------------------------------
ショップガイド　下層レイアウト
------------------------------------*/
#contents.guide_shop h2 {
  margin: 0;
  width: 1000px;
}
.guide_shop #bread {
  padding: 45px 0 15px 10px;
  width: 100%;
  height: 20px;
  display: block;
  position: relative;
}
.guide_shop #bread ul {
  position: absolute;
  z-index: 10;
}
.guide_shop #primary {
  margin: 0 0 50px 0;
  padding: 0 0 50px 0;
  width: auto;
  width: 1000px;
  background: url(../img/img-guide/bg_01.png) no-repeat top center;
  width: 1000px;
}
.guide_shop #primary:after {
  content: "";
  display: table;
  clear: both;
}
.guide_shop #primary #content {
  float: left;
  width: 710px;
  padding: 12px 0 0 60px;
}
.guide_shop #primary .shop_detail {
  position: relative;
  background-color: #FFFFFF;
  background-position: initial initial;
  background-repeat: initial initial;
  border: 1px solid #E5E5E5;
  margin: 10px;
  padding: 25px 25px 30px;
  position: relative;
  width: 600px;
}
.guide_shop #primary .shop_detail::before{
	content: "";
	width: 28px;
	height: 28px;
	background-color: #ffff00;
	clip-path: polygon(0 0, 0% 100%, 100% 0);
	position: absolute;
	top: 6px;
	left: 6px;
}
.guide_shop #primary .shop_detail a{
	color: #2323ba;
}
.guide_shop #primary .shop_detail a:hover{
	text-decoration: none;
}
.guide_shop #primary .shop_detail__title {
	width: auto;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.4;
	padding: 0 12px 18px;
	background: url("../img/img-guide/guide_shop_bg01_pc.png") repeat-x left bottom;
	margin-bottom: 20px;
}
.guide_shop #primary .shop_detail__thumbnail {
	margin-bottom: 15px;
}		
.guide_shop #primary .shop_detail__thumbnail img{
	width: 100%;
	height: auto;
	border-radius: 0;
	box-shadow: none;
}	
.guide_shop #primary .shop_detail__textarea{
	padding: 0 10px;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.8;
	margin-bottom: 40px;
}	
	
.guide_shop #primary .shop_detail__slider{
	width: 540px;
	margin: 0 auto 70px;
}	
.guide_shop #primary .slick_slider div img{
	width: 100%;
	height: auto;
}	
.slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 10;
}
.slick-prev {
  left: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  width: 30px;
  height: 30px;
}
.slick-prev::before {
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 100px;
	background: #fff;
	position: absolute;
	top: 0;
	left: 10px;
	opacity: .8;

}
.slick-prev::after {
	content: "";
  width: 7px;
  height: 7px;
  border-left: 2px solid #3d3d3d;
  border-bottom: 2px solid #3d3d3d;
    position: absolute;
    top: 50%;
    left: 22px;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
}
.slick-next {
  right: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  width: 30px;
  height: 30px;
}
.slick-next::before {
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 100px;
	background: #fff;
	position: absolute;
	top: 0;
	right: 10px;
	opacity: .8;
}
.slick-next::after {
	content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid #3d3d3d;
  border-right: 2px solid #3d3d3d;
    position: absolute;
    top: 50%;
    right: 22px;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
}
.slick-next:hover, .slick-prev:hover,
.slick-next:focus, .slick-prev:focus,
.slick-next:active, .slick-prev:active{
  color: transparent !important;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
}	
	.slick-num{
		position: absolute;
		bottom: 15px;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		background-color: rgba(255,255,255,0.60);
		border-radius: 100px;
		font-size: 16px;
		font-weight: bold;
		padding: 2px 15px 0;
	}
	
	
	
	
	
	
	
	
	

	
	
.guide_shop #primary .shop_detail__recommend{
	position: relative;
	background: #fbf8ef;
	width: 480px;
	margin: 0 auto 75px;
	padding: 80px 40px 40px;
}	
.guide_shop #primary .shop_detail__recommend__title{
    position: absolute;
    top: -8px;
    left: -33px;
}	
.guide_shop #primary .content01_group + .content01_group{
	margin-top: 45px;
}	
.guide_shop #primary .content01_group__title{
	font-size: 20px;
	letter-spacing: 0.05em;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
	margin-bottom: 30px;
}
.guide_shop #primary .content01_group__image{
	margin-bottom: 20px;
}
.guide_shop #primary .content01_group__image img{
	width: 100%;
	height: auto;
}	
.guide_shop #primary .content01_group__textarea{
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.8;
}	
	
.guide_shop #primary .shop_detail__freearea{
	width: 550px;
	margin: 0 auto 55px;
}	
.guide_shop #primary .content02_group + .content02_group{
	margin-top: 45px;
}	
.guide_shop #primary .content02_group__title{
	font-size: 18px;
	letter-spacing: 0.1em;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
	margin-bottom: 35px;
}		
.guide_shop #primary .content02_group__title span{
	display: inline-block;
	padding: 0 7px 13px;
	background: url("../img/img-guide/guide_shop_bg01_pc.png") repeat-x left bottom;
}	
.guide_shop #primary .content02_group__textarea{
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 2.0;
}	
	
.guide_shop #primary .shop_detail__instagram{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	margin-bottom: 55px;
}	
	
.guide_shop #primary .shop_detail__data{
	width: 540px;
	margin: 0 auto 35px;
}	
.guide_shop #primary .shop_detail__data__title{
	font-size: 18px;
	letter-spacing: 0.1em;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
	margin-bottom: 35px;
}		
.guide_shop #primary .shop_detail__data__title span{
	display: inline-block;
	padding: 0 5px 13px;
	background: url("../img/img-guide/guide_shop_bg01_pc.png") repeat-x left bottom;
}
.guide_shop #primary .shop_detail__data dl{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0 20px;
	padding-bottom: 15px;
	border-bottom: 1px solid #dcd6c3;
}	
.guide_shop #primary .shop_detail__data dl + dl{
	padding-top: 15px;
}	
.guide_shop #primary .shop_detail__data dl dt{
	font-size: 15px;
	font-weight: bold;
	color: #c1154d;
	letter-spacing: 0.1em;
	background: #f8e9ee;
	border-radius: 100px;
	min-width:70px;
	padding: 5px 20px;
	display: flex;
	justify-content: center;
	align-items: center;
}	
.guide_shop #primary .shop_detail__data dl dd{
	font-size: 15px;
	letter-spacing: 0.1em;
	width: auto;
	padding: 5px;
}
.guide_shop #primary .shop_detail__map{
	width: 540px;
	height: 240px;
	margin: 0 auto 30px;
}
.guide_shop #primary .shop_detail__map iframe{
	width: 100% !important;
	height: 100% !important;
}
	
	
	
	
	
	
	
	
	
	
	
/*------------------------------------
ギャラリー
------------------------------------*/
#contents.gallery h2 {
  margin: -40px 0 0 0;
  width: 1000px;
  height: 149px;
  position: relative;
}
#contents.gallery h2 img {
  position: absolute;
  top: 0;
  left: 0;
  resize: 0;
  z-index: 0;
}
.gallery #bread {
  padding: 45px 0 15px 10px;
  width: 100%;
  height: 20px;
  display: block;
  position: relative;
}
.gallery #bread ul {
  position: absolute;
  z-index: 10;
}
.gallery #primary #content {
  padding: 0px 0 0 90px;
  width: auto;
}
.gallery #primary {
  margin: 0 0 10px 0;
  width: auto;
  background: url(../img/img-gallery/bg_01.jpg) no-repeat top left;
  width: 960px;
}
.gallery #primary:after {
  content: "";
  display: table;
  clear: both;
}
.gallery #primary .category-gallery {
  margin: 0 10px 28px 0;
  padding: 10px;
  float: left;
  width: 180px;
  height: 310px;
  text-align: center;
  background-color: #fff;
  border: 1px solid #eee;
}
.gallery #primary .category-gallery a {
  text-decoration: none;
  outline: none;
}
.gallery #primary .category-gallery a:hover {
  text-decoration: underline;
}
.gallery #primary .category-gallery .entry-header {
  margin: 0;
}
.gallery #primary .category-gallery .thumbnail_box {
  width: 180px;
  max-height: 180px;
  display: block;
  text-align: center;
}
.gallery #primary .category-gallery img {
  max-width: 180px;
  width: auto;
  max-height: 180px;
  margin: 0;
  height: auto;
  display: inline;
}
.gallery #primary .category-gallery .entry-title {
  text-align: left;
  font-size: 14px;
  color: #333;
  display: block;
  word-break: break-all;
  font-weight: bold;
  margin: 5px 0px 0;
  padding: 5px;
}
.gallery #primary .category-gallery .entry-content {
  text-align: left;
  padding: 0;
  padding: 0px 5px 5px 5px;
  font-size: 12px;
}
/*------------------------------------
寺子屋
------------------------------------*/
#contents .terakoya h2 {
  margin: -65px 0 0 0;
  width: 1000px;
  height: 291px;
  position: inherit !important;
}
#contents .terakoya h2 img {
  z-index: 0;
}
#contents .terakoya #bread {
  padding: 45px 0 15px 10px;
  width: 100%;
  height: 20px;
  display: block;
  position: relative;
}
#contents .terakoya #bread ul {
  position: absolute;
  z-index: 10;
}
#contents .terakoya #catch {
  padding: 0 310px 110px 40px;
  margin: 0px 0 0 0;
  width: auto;
  position: relative;
  z-index: 10;
  display: block;
  background: url(../img/img-terakoya/img_01.jpg) no-repeat right top;
  line-height: 1.8em;
}
#contents .terakoya #catch h3 {
  display: block;
  margin: 0 0 10px 0;
}
#contents .terakoya #catch p {
  margin: 0 0 10px 0;
  display: block;
  letter-spacing: 0.06em;
}
.terakoya #primary {
  margin: -5px 0 0 25px;
  width: 930px;
}
.terakoya #primary #content {
  padding: 30px 20px 0;
  border: 1px solid #AF345C;
  background-color: #fff;
  margin: 0;
}
.terakoya #primary #ttl_02 {
  margin: 0 0 -1px 0;
  padding: 0;
  font-size: 12px;
  line-height: 50px;
}
.terakoya #primary #ttl_02:after {
  content: "";
  display: table;
  clear: both;
}
.terakoya #primary #ttl_02 img {
  display: block;
  float: left;
  margin: 0 10px 0 0;
}
.terakoya #primary ul li {
  margin: 0 0 35px;
  list-style-position: inside;
  padding: 0 35px 35px 35px;
  color: #0000B2;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
  font-size: 200%;
}
.terakoya #primary ul li h4 {
  font-size: 16px;
  margin: 0 0 15px 0;
  font-weight: bold;
}
.terakoya #primary ul li p {
  font-weight: normal;
  color: #000;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 14px;
  margin: 10px 0 15px 0em;
  text-indent: 0em;
  width: 800px;
  position: relative;
  line-height: 1.8em;
  letter-spacing: 0.06em;
}
.terakoya #primary ul li p span{
  width: 620px;
}
.terakoya #primary ul li p a {
  display: block;
  height: 36px;
  width: 154px;
  padding: 0;
  text-indent: -1000000px;
  overflow: hidden;
  background: url(../img/img-terakoya/btn_01.jpg) no-repeat left top;
/*  position: absolute;
  top: 50%;
  margin: -18px 0 0 0;
  right: -190px;*/
}
.terakoya #primary ul li p a:hover {
  background-position: right top;
}
.terakoya #primary ul li table {
  width: 800px;
  font-weight: normal;
  color: #000;
  text-indent: 0em;
  font-size: 12px;
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
}
.terakoya #primary ul li table th, .terakoya #primary ul li table td {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  font-weight: normal;
  color: #000;
  padding: 10px;
}
.terakoya #primary ul li table th {
  background-color: #eee;
  text-align: center;
  width: 168px;
}
.terakoya #primary ul li table th.method03 {
  width: 78px;
}
.terakoya #primary ul li table th.method04 {
  width: 408px;
}
.terakoya #primary ul li table td {
  line-height: 1.5em;
}
/*------------------------------------
寺子屋
------------------------------------*/
#terakoya {
  margin: -71px 0 0 -20px;
}
#terakoya img {
  border-radius: 0px;
  box-shadow: none;
}
#terakoya h2 {
  width: 1000px;
  height: 303px;
  position: relative;
}
#terakoya h2 img {
  margin: 15px 0 0 0 !important;
  position: absolute;
  top: 0;
  left: 0;
  resize: 0;
  z-index: 0;
}
#terakoya #catch02 {
  padding: 0 310px 30px 60px;
  width: auto;
  position: relative;
  z-index: 10;
  display: block;
  line-height: 1.8em;
  width: 100%;
  font-size: 14px;
}
#terakoya #catch02 h3 {
  display: block;
  margin: -65px 0 10px 0;
}
#terakoya #catch02 strong {
  display: block;
  position: absolute;
  left: 60px;
  z-index: 100;
}
#terakoya .primary {
  margin: -5px 0 0 25px;
  width: 930px;
}
#terakoya .primary .content {
  padding: 30px 20px 0;
  border: 1px solid #AF345C;
  background-color: #fff;
  margin: 0;
}
#terakoya .primary #ttl_02 {
  margin: 30px 0 -1px 0;
  padding: 0;
  font-size: 12px;
  line-height: 50px;
  height: 45px;
}
#terakoya .primary #ttl_02:after {
  content: "";
  display: table;
  clear: both;
}
#terakoya .primary #ttl_02 img {
  display: block;
  float: left;
  margin: 0 10px 0 0;
}
#terakoya .primary .category-terakoya {
  margin: 30px 0;
  padding: 0 35px 35px 35px;
}
#terakoya .block03 {
  display: block;
  margin: -10px 0 0 0;
}
#terakoya .block03 p {
  font-size: 120%;
  line-height: 1.5em;
}
#terakoya .block03 p strong {
  color: #D80000;
}
#terakoya .block03 table {
  display: block;
  margin: 30px 0 0 30px;
  border: none;
  width: auto;
}
#terakoya .block03 table tr th, #terakoya .block03 table tr td {
  padding: 10px 0 10px 20px;
  margin: 2px;
  border-bottom: 5px solid #fff;
}
#terakoya .block03 table tr td {
  padding: 15px 0 10px 20px;
  margin: 2px;
  border-bottom: 0px solid #fff;
}
#terakoya .block03 table tr th {
  width: 280px;
  background-color: #F7F2DF;
  font-size: 100%;
  font-weight: normal;
}
#terakoya .block03 table tr th em {
  display: block;
  line-height: 1em;
  font-size: 80%;
}
#terakoya .block03 table tr th strong {
  color: #D80000;
}
#terakoya .block03 table tr td {
  border: none;
  width: 400px;
}
#terakoya .block03 table tr td p {
  display: none;
}
#terakoya .block03 table tr td input, #terakoya .block03 table tr td textarea {
  padding: 5px;
  font-size: 120%;
}
#terakoya .block03 p.btn01 {
  display: block;
  height: 54px;
  width: 174px;
  margin: 30px auto 40px;
}
#terakoya .block03 p.btn01 input {
  display: block;
  height: 54px;
  width: 174px;
  overflow: hidden;
  text-indent: -100000px;
  background: url(../img/img-terakoya/btn_02.gif) no-repeat top left;
  outline: none;
  border: none;
  border-radius: 3px;
  box-shadow: none;
}
.mw_wp_form_preview #terakoya .block03 .btn_block {
  margin: 30px 0 30px 250px;
}
.mw_wp_form_preview #terakoya .block03 p.btn01 input {
  background: url(../img/img-terakoya/btn_03.gif) no-repeat top left;
}
.mw_wp_form_preview #terakoya .block03 p.btn01 {
  float: left;
  margin: 0 15px 0 0;
}
.mw_wp_form_preview #terakoya .block03 p.btn02 {
  display: block;
  height: 54px;
  width: 200px;
  float: left;
}
.mw_wp_form_preview #terakoya .block03 p.btn02 input {
  display: block;
  height: 54px;
  width: 194px;
  overflow: hidden;
  text-indent: -100000px;
  background: url(../img/img-terakoya/btn_04.gif) no-repeat top left;
  outline: none;
  border: none;
  border-radius: 3px;
  box-shadow: none;
}
#terakoya .block03 p.btn01 input:hover, #terakoya .block03 p.btn02 input:hover, #terakoya .block03 p.btn03 input:hover {
  background-position: top right;
}
	
.common #primary #content:has(.mw_wp_form_complete){
	width:100%;
	float: none;
}
.mw_wp_form_complete .topback_btn{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 40px;
}	
.mw_wp_form_complete .topback_btn a{
	background: #f97c00;
	border-bottom: 4px solid #e57200;
	border-radius: 8px;
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
	width: 160px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	transition: all .3s;
}		
.mw_wp_form_complete .topback_btn a:hover{
	opacity: .8;
}
	
/*------------------------------------
いしばしニュース
------------------------------------*/
#contents.news h2 {
  margin: -10px 0 0 0;
  width: 1000px;
  height: 144px;
  position: relative;
}
#contents.news h2 img {
  position: absolute;
  bottom: 0;
  left: 0;
  resize: 0;
  z-index: 0;
}
.news #bread {
  padding: 45px 0 15px 10px;
  width: 100%;
  height: 20px;
  display: block;
  position: relative;
}
.news #bread ul {
  position: absolute;
  z-index: 10;
}
.news #primary #content {
  width: 712px;
  padding: 42px 59px 0;
  margin: 0 81px;
  border: 2px solid #EFEEEE;
  background-color: #fff;
}
.news #primary {
  margin: 0 0 10px 0;
  width: auto;
}
.news #primary:after, .news #primary .category-news:after, .news #primary .category-news .entry-title:after {
  content: "";
  display: table;
  clear: both;
}
.news #primary .category-news {
  margin: 0 10px 80px 0;
  padding: 0px;
  border: none;
}
.news #primary .category-news a {
  text-decoration: none;
}
.news #primary .category-news .entry-header {
  margin: 0;
}
.news #primary .category-news .entry-header:after {
  content: "";
  display: table;
  clear: both;
}
.news #primary .category-news .thumbnail_box {
  width: 180px;
  max-height: 180px;
  display: block;
  text-align: center;
}
.news #primary .category-news .entry-title {
  text-align: left;
  font-size: 16px;
  color: #333;
  display: block;
  word-break: break-all;
  font-weight: bold;
  border-bottom: 1px dotted #333;
  background: url(../img/img-news/icon01.gif) no-repeat top left;
  padding: 8px 0 5px 30px;
}
.news #primary .category-news .entry-title h1 {
  width: 600px;
  font-weight: bold;
  display: inline;
}
.news #primary .category-news .entry-title h1 img{
	display: none;
}
.news #primary .category-news .entry-title span.date {
  float: right;
  font-weight: normal;
  font-size: 14px;
  width: 100px;
  text-align: right;
}
.news #primary .category-news .entry-content {
  text-align: left;
  padding: 0;
  padding: 20px 10px;
  font-size: 14px;
}
.news #primary .category-news .entry-content img {
  width: 180px;
  margin: 0 20px 0 0;
  height: auto;
  display: block;
  float: left;
}
.news #primary .category-news .entry-content p {
  overflow: hidden;
  margin: 0 !important;
}
.news #primary #content .entry-content .btn_read a{
	position: relative;
	width: 110px;
	height: 32px;
	border: 1px solid #333;
	border-radius: 100px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 0 10px 0 20px;
	margin: 15px 0 0 auto;
	transition: .3s;
}	
.news #primary #content .entry-content .btn_read a::before{
	content: "";
	width: 18px;
	height: 18px;
	border-radius: 100px;
	background: #000;
	position: absolute;
    top: 50%;
    right: 6%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition: .3s;
}
.news #primary #content .entry-content .btn_read a::after{
	content: "";
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
	position: absolute;
    top: 50%;
    right: 11%;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
	transition: .3s;
}
.news #primary #content .entry-content .btn_read a span{
	position: relative;
	font-size: 14px;
	line-height: 1.0;
	padding-right: 15px;
}	
.news #primary #content .entry-content .btn_read a:hover{
	background: #000;
}	
.news #primary #content .entry-content .btn_read a:hover::before{
	background: #fff;
}
.news #primary #content .entry-content .btn_read a:hover::after{
  border-top: 1px solid #000;
  border-right: 1px solid #000;
}
.news #primary #content .entry-content .btn_read a:hover span{
	color: #fff;
}	

	.common #primary #content.news{
		width: 100%;
		display: flex;
		justify-content: center;
		float: none;
		
	}

}



/*-----------------------------------------------------------

ハンバーガー

-------------------------------------------------------------*/

@media screen and (min-width: 992px) {
.pc_hamburger_button {
  position: fixed;
  top: 20px;
  right: calc( calc(100% - 1060px) / 2);
  z-index: 5000;
  width: 45px;
  height: 45px;
  background: #000;
  border-radius: 100px;
  transition: all 0.4s;
}
.pc_hamburger_button span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 11px;
  height: 2px;
  background: #fff;
}
.pc_hamburger_button span:nth-of-type(1) {
  top: 18px;
  width: 22px;
}
.pc_hamburger_button span:nth-of-type(2){
  top: 26px;
  width: 22px;
}
.pc_hamburger_button.active {
  background: transparent;
}
.pc_hamburger_button.active span:nth-of-type(1) {
  top: 16px;
  left: 11px;
  transform: translateY(6px) rotate(-135deg);
  width: 27px;
}
.pc_hamburger_button.active span:nth-of-type(2) {
  top: 27px;
  left: 11px;
  transform: translateY(-6px) rotate(135deg);
  width: 27px;
}
.home .pc_hamburger_button {
  position: absolute;
  background: #fff;
  cursor: pointer;
}
.home .pc_hamburger_button span {
  background: #000;
}
.home #fixed_hed_wrp .pc_hamburger_button {
  background: #000;
  cursor: pointer;
}
.home #fixed_hed_wrp .pc_hamburger_button span {
  background: #fff;
}
.pc_hamburger_menu {
  position: relative;
  width: 100%;
  height: 100%;
  position: fixed;
  top: -100%;
  left: 0;
  background: #fbf8ef;
  overflow-y: scroll;
  z-index: 3000;
  transition: 0.3s cubic-bezier(.86, .35, .41, .8);
  visibility: hidden;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  z-index: 6000;
}
.pc_hamburger_menu::before {
  content: "";
  width: 100%;
  height: 55px;
  background: url("../img/img-common/hamburger_bg_pc.png") repeat-x top left;
  position: absolute;
  left: 0;
  top: 0;
}
.pc_hamburger_menu.active{
  opacity: 1;
  visibility: visible;
  top: 0%;
}
.pc_hamburger_menu a{
	text-decoration: none;
	transition: all .3s;
}
.pc_hamburger_menu a:hover{
	text-decoration: none;
	opacity: .7;
}
.pc_hamburger_menu__left{
	width: 50%;
	height: 100%;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}
.pc_hamburger_menu__right{
    box-sizing:border-box;
	width: 50%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	padding-left: 80px;
}	
#menu-pc_hamburger_menu{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	width: 400px;
	margin-bottom: 60px;
	text-align: left;
}
#menu-pc_hamburger_menu li{
	width: 100%;
	border-bottom: 1px solid #e5e0d2;
}
#menu-pc_hamburger_menu li a{
	position: relative;
	display: block;
	font-family: "RocknRoll One", sans-serif;
	font-size: 16px;
	letter-spacing: 0.1em;
	padding: 25px 0 25px 40px;
}
#menu-pc_hamburger_menu li a::before{
	content: "";
	width: 14px;
	height: 14px;
	border-radius: 100px;
	background: #000;
	position: absolute;
    top: 52%;
    left: 7px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition: .3s;
}
#menu-pc_hamburger_menu li a::after{
	content: "";
  width: 3px;
  height: 3px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
	position: absolute;
    top: 52%;
    left: 11px;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
	transition: .3s;
}
#menu-pc_hamburger_menu li:has(.sub-menu) a{
	padding: 10px 0 10px 40px;
}
#menu-pc_hamburger_menu .sub-menu{
	padding: 0 0 0 15px;
}
#menu-pc_hamburger_menu .sub-menu li {
	border-bottom: none;
}
#menu-pc_hamburger_menu .sub-menu li a{
	font-size: 14px;
	padding: 10px 0 10px 30px;
}
.pc_hamburger_menu__right__snslinks{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0 10px;
}
.pc_hamburger_menu__right__snslinks li a{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 2px 0;
}
.pc_hamburger_menu__right__snslinks li a img{
	width: 70px;
	height: auto;
}	
.pc_hamburger_menu__right__snslinks li a span{
	font-family: "RocknRoll One", sans-serif;
	font-size: 15px;
}	
.pc_hamburger_menu__close  {
	position: absolute;
	top: 150px;
	right: calc( calc(100% - 1080px) / 2);
	width: 40px;
	height: 40px;
	border-radius: 100px;
    cursor: pointer;
}
.pc_hamburger_menu__close span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 11px;
  height: 2px;
  background: #000;
}
.pc_hamburger_menu__close span:nth-of-type(1) {
  top: 13px;
  left: 7px;
  transform: translateY(6px) rotate(-135deg);
  width: 27px;
}
.pc_hamburger_menu__close span:nth-of-type(2) {
  top: 24.5px;
  left: 7px;
  transform: translateY(-6px) rotate(135deg);
  width: 27px;
}

}

@media screen and (max-width: 991px) {
.sp_hamburger_button {
  position: fixed;
  top: 5px;
  /*right: 0.5%;*/
  right: 2.2%;
  z-index: 7000;
  width: 36px;
  height: 36px;
}

.sp_hamburger_button span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 7px;
  height: 3px;
  margin-top: -1px;
  background: #000;
}
.sp_hamburger_button span:nth-of-type(1) {
  top: 14px;
  width: 60%;
}
.sp_hamburger_button span:nth-of-type(2) {
  top: 22px;
  width: 60%;
}

.sp_hamburger_button.active span:nth-of-type(1) {
  top: 13px;
  left: 4.5px;
  transform: translateY(6px) rotate(-135deg);
  width: 75%;
}
.sp_hamburger_button.active span:nth-of-type(2) {
  top: 24px;
  left: 4.5px;
  transform: translateY(-6px) rotate(135deg);
  width: 75%;
}
	
.home .sp_hamburger_button {
	background: #fff;
	border-radius: 100px;
}

	
.sp_hamburger_menu {
  position: relative;
  width: 100%;
  height: 100%;
  position: fixed;
  top: -100%;
  left: 0;
  background: #fbf8ef;
  overflow-y: scroll;
  z-index: 3000;
  transition: 0.3s cubic-bezier(.86, .35, .41, .8);
  visibility: hidden;
  z-index: 6000;
}
.sp_hamburger_menu.active{
  opacity: 1;
  visibility: visible;
  top: 0%;
}
.sp_hamburger_menu a{
	text-decoration: none;
}
.sp_hamburger_menu a:hover{
	text-decoration: none;
}
	
.sp_hamburger_menu__head{
	background: url(../img/img-common/content_bg_sp.png) repeat-x center bottom/contain;
	padding-bottom: 37px;
}
.sp_hamburger_menu__head .logo img{
	width: 100%;
}
.sp_hamburger_menu__content{
	padding: 0 5%;
	font-family: "RocknRoll One", sans-serif;
}	
.sp_hamburger_menu__content__links_01{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0 0;
	border-bottom: 3px solid #e5e0d2;
	padding: 10px 0 25px;
	margin-bottom: 20px;
}
.sp_hamburger_menu__content__links_01 li{
	width: 33.3333%;
}
.sp_hamburger_menu__content__links_01 li a{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	gap: 0px 0;
}
.sp_hamburger_menu__content__links_01 li a span{
	text-align: center;
	font-family: "RocknRoll One", sans-serif;
	font-size: 1.3rem;
	line-height: 1.2;
}	
.sp_hamburger_menu__content__links_01 li img{
	height: 100px;
}
	
	
	
.sp_hamburger_menu__content__links_02{
	width: 100%;
}
.sp_hamburger_menu__content__links_02 li{
	border-bottom: 1px solid #e5e0d2;
}
.sp_hamburger_menu__content__links_02 li a{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 20px;
	font-size: 1.4rem;
	padding: 10px 5%;
}
.sp_hamburger_menu__content__links_02 li a img{
	width: 20px;
}
.sp_hamburger_menu__content__links_02 li:nth-of-type(3) a img{
	width: 30px;
	margin-left: -5px;
}
.sp_hamburger_menu__content__links_02 li:nth-of-type(3) a span{
	margin-left: -5px;
}
	
	

#menu-sp_hamburger_menu{
	width: 100%;
	margin-bottom: 30px;
}
#menu-sp_hamburger_menu li{
	width: 100%;
	border-bottom: 1px solid #e5e0d2;
}
#menu-sp_hamburger_menu li a{
	position: relative;
	display: block;
	font-size: 1.4rem;
	padding: 10px 5% 10px 16%;
}
#menu-sp_hamburger_menu li a::before{
	content: "";
	width: 18px;
	height: 18px;
	border-radius: 100px;
	background: #000;
	position: absolute;
    top: 52%;
    left: 17px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition: .3s;
}
#menu-sp_hamburger_menu li a::after{
	content: "";
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
	position: absolute;
    top: 52%;
    left: 22px;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
	transition: .3s;
}
#menu-sp_hamburger_menu li:has(.sub-menu) a{
	padding: 10px 0 10px 40px;
}
#menu-sp_hamburger_menu .sub-menu{
	padding: 0 0 0 15px;
}
#menu-sp_hamburger_menu .sub-menu li {
	border-bottom: none;
}
#menu-sp_hamburger_menu .sub-menu li a{
	font-size: 14px;
	padding: 10px 0 10px 30px;
}
	
	
	
.sp_hamburger_menu__content__snslinks{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0 10px;
}
.sp_hamburger_menu__content__snslinks li a{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 2px 0;
}
.sp_hamburger_menu__content__snslinks li a img{
	width: 70px;
	height: auto;
}	
.sp_hamburger_menu__content__snslinks li a span{
	font-size: 1.0rem;
}	
	
.sp_hamburger_menu__content__close{
	text-align: center;
	margin: 30px 0;
}
.sp_hamburger_menu__content__close__text{
	font-size: 1.1rem;
	color: #444444;
	padding: 0 11px;
	position: relative;
}
.sp_hamburger_menu__content__close__text::before{
	content: "";
	width: 1px;
	height: 16px;
	background: #444;
	position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.sp_hamburger_menu__content__close__text::after{
	content: "";
	width: 1px;
	height: 16px;
	background: #444;
	position: absolute;
    top: 50%;
    right: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
}


/*-----------------------------------------------------------

新固定ページ

-------------------------------------------------------------*/
.content-pc #merit img, .content-sp #merit img{
	height: auto;
}
@media screen and (min-width: 992px) {
  .content-pc {
	display: block;
  }
  .content-sp {
	display: none;
  }
}
@media screen and (max-width: 991px) {
  .content-pc {
	display: none;
  }
  .content-sp {
	display: block;
  }
}



/*-----------------------------------------------------------

広告バナー

-------------------------------------------------------------*/
.footer-banners{
	width: 990px;
	margin: 80px auto 0;
	border-top: 1px dotted #000;
	padding-top: 35px;
}
.ww-banners{
	width: 100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 25px 35px;
	margin: auto;
}
.ww-banners +.ww-banners{
	margin: 40px auto 0;
}
.ww-banners li{
	width: 220px;
}
.ww-banners li img{
	max-width: 100%;
	height: auto;
}

/*-----------------------------------------------------------

ハンバーガーメニュー

-------------------------------------------------------------*/

@media screen and (max-width: 991px) {
	html.is_hidden {
		overflow: hidden;
	}
	
  .disp_pc {
    display: none !important;
  }
#hed_wrp{
position: fixed;
top: 0;
left: 0;
background: url(../img/img-common/content_bg_sp.png) repeat-x center bottom/contain;
padding-bottom: 37px;
z-index: 1000;
	width: 100%;
}
#hed_wrp img{
	width: 100%;
}
#fixed_hed_wrp{
	width: 100%;
	position: fixed;
	top: -330px;
	left: 0;
	background: url(../img/img-common/content_bg_sp.png) repeat-x center bottom/contain;
	padding-bottom: 37px;
	z-index: 1000;
	transition: all .4s;
}
#fixed_hed_wrp.active{
	top: 0;
}
#fixed_hed_wrp img{
	width: 100%;
}
	
	
	
	
	
#wrapper {
  position: relative;
  padding-top: 90px;
  background: #fbf8ef;
  z-index: 1;
}
.home #wrapper {
  padding-top: 0px;
}	
#container {
  padding: 50px 0 0;
}
.home #container {
  padding: 0;
}
.home .site-content {
	margin: 0;
}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
/*パンくず*/	
#bread ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 0 10px;
	font-size: 0.9rem;
	padding: 0 5%;
	margin-bottom: 15px;
}
#bread ul li{
	color: #555;
}
#bread ul li a{
	color: #555;
}
/*/パンくず*/	
	
/*ページング*/	
.wp-pagenavi {
	margin: 25px auto 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 4px;
}
.wp-pagenavi a, .wp-pagenavi span {
	border: 1px solid #BFBFBF;
	padding: 0;
	margin: 0;
	width: 35px;
	height: 35px;
	font-size: 1.2rem;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}
.wp-pagenavi .pages {
	padding: 0 5px;
	width: auto;
	height: 35px;
	display: none;
}
.wp-pagenavi .extend {
	display: none;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	border-color: #000;
}

.wp-pagenavi span.current {
	background: #333;
	color: #fff;
	font-weight: bold;
}
/* /ページング*/	
	
.footer-banners{
	position: relative;
	width: 100%;
	padding: 50px 5% 40px;
	background: #fbf8ef;
	border: none;
}
.footer-banners::before{
	content: "";
	width: 96%;
	height: 1px;
	border-top: 1px dotted #000;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.ww-banners{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 15px 4%;
	width: 96%;
	margin: auto;
}
.ww-banners +.ww-banners{
	margin: 20px auto 0;
}
.ww-banners li{
	width: 48%;
	text-align: center;
}
	
#sns_block {
	width: 100%;
	height: 157px;
	background: url("../img/img-common/fot_bg_sp.png") no-repeat center bottom/contain #fbf8ef;
}
	
#footer {
	position: relative;
	background: #000;
	padding: 45px 5% 10px;
	z-index: 100;
}
#footer .fot_nav .gnav{
	width: 100%;
	padding: 0 3% 15px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 20px 16%;
	border-bottom: 1px solid #fff;
}	
#footer .fot_nav .gnav li{
	width: 42%;
}	
#footer .fot_nav .gnav li a{
	width: 100%;
	color: #fff;
	font-size: 1.3rem;
}	
#footer .logo{
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 30px 0 0 0;
}	
#footer #copyrights{
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 30px 0 0 0;
}
#footer #copyrights p{
	color: #fff;
	font-weight: bold;
	font-size: 1.3rem;
	margin-bottom: 10px;
}	
#footer #copyrights ul{
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 3%;
	margin-bottom: 40px;
}	
#footer #copyrights ul li, #footer #copyrights ul li a {
	color: #fff;
}
#footer #copyrights ul li.fax a {
	pointer-events: none;
}
#footer #copyrights small {
	color: #8a8a8a;
	font-size: 1.0rem;
}
	
	
	
	
#pagetop {
  position: fixed;
  bottom: 50px;
  right: 6px;
  transition: opacity 1s;
  opacity: 0;
  cursor: pointer;
  z-index: 99;
}
#pagetop img{
	height: 40px;
}
#pagetop.is_active {
  opacity: 1;
}

	
	
}



/*寺子屋*/


.common .terakoya #primary #content {
  float:none;
  width: auto;
}



/*------------------------------------
ショップガイド詳細
------------------------------------*/

@media screen and (max-width: 991px) {
#contents.guide_shop #primary #content{
		margin-bottom: 50px;
	}	
#contents.guide_shop #bread + h2 {
	display: none;
}

.guide_shop #primary .shop_detail {
  position: relative;
  background-color: #FFFFFF;
  background-position: initial initial;
  background-repeat: initial initial;
  border: 1px solid #E5E5E5;
  padding: 25px 0 20px;
}
.guide_shop #primary .shop_detail::before{
	content: "";
	width: 28px;
	height: 28px;
	background-color: #ffff00;
	clip-path: polygon(0 0, 0% 100%, 100% 0);
	position: absolute;
	top: 6px;
	left: 6px;
}
.guide_shop #primary .shop_detail a{
	color: #2323ba;
	text-decoration: underline;
}
.guide_shop #primary .shop_detail__title {
	width: auto;
	font-size: 1.5rem;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.4;
	padding: 0 0 18px 10px;
	background: url("../img/img-guide/guide_shop_bg01_sp.png") repeat-x left bottom;
	background-size: 12px;
	margin: 0 5% 20px;
}
.guide_shop #primary .shop_detail__thumbnail {
	margin-bottom: 15px;
}		
.guide_shop #primary .shop_detail__thumbnail img{
	width: 100%;
	height: auto;
	border-radius: 0;
	box-shadow: none;
}	
.guide_shop #primary .shop_detail__textarea{
	padding: 0 5%;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
	line-height: 1.8;
	margin-bottom: 40px;
}	
	
.guide_shop #primary .shop_detail__slider{
	width: 86vw;
	margin: 0 auto 50px;
}	
.guide_shop #primary .slick_slider div img{
	width: 100%;
	height: auto;
}	
.slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 10;
}
.slick-prev {
  left: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  width: 26px;
  height: 26px;
}
.slick-prev::before {
	content: "";
	width: 26px;
	height: 26px;
	border-radius: 100px;
	background: #fff;
	position: absolute;
	top: 0;
	left: 10px;
	opacity: .8;

}
.slick-prev::after {
	content: "";
  width: 9px;
  height: 9px;
  border-left: 2px solid #3d3d3d;
  border-bottom: 2px solid #3d3d3d;
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
}
.slick-next {
  right: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  width: 26px;
  height: 26px;
}
.slick-next::before {
	content: "";
	width: 26px;
	height: 26px;
	border-radius: 100px;
	background: #fff;
	position: absolute;
	top: 0;
	right: 10px;
	opacity: .8;
}
.slick-next::after {
	content: "";
  width: 9px;
  height: 9px;
  border-top: 2px solid #3d3d3d;
  border-right: 2px solid #3d3d3d;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
}
.slick-next:hover, .slick-prev:hover,
.slick-next:focus, .slick-prev:focus,
.slick-next:active, .slick-prev:active{
  color: transparent !important;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
}	
	.slick-num{
		position: absolute;
		bottom: 10px;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		background-color: rgba(255,255,255,0.60);
		border-radius: 100px;
		font-size: 1.0rem;
		font-weight: bold;
		padding: 1px 10px;
	}
	
	
	
	
	
	
	
	
	

	
	
.guide_shop #primary .shop_detail__recommend{
	position: relative;
	background: url("../img/img-guide/guide_shop_bg02_sp.png") repeat left top;
	width: 94%;
	margin: 0 auto 55px;
	padding: 80px 6% 40px;
}	
.guide_shop #primary .shop_detail__recommend__title{
    position: absolute;
    top: 0px;
    left: 0px;
}	
.guide_shop #primary .content01_group + .content01_group{
	margin-top: 30px;
}	
.guide_shop #primary .content01_group__title{
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
	margin-bottom: 10px;
}
.guide_shop #primary .content01_group__image{
	margin-bottom: 10px;
}
.guide_shop #primary .content01_group__image img{
	width: 100%;
	height: auto;
}	
.guide_shop #primary .content01_group__textarea{
	font-size: 1.2rem;
	letter-spacing: 0.05em;
	line-height: 1.8;
}	
	
.guide_shop #primary .shop_detail__freearea{
	width: 84%;
	margin: 0 auto 55px;
}	
.guide_shop #primary .content02_group + .content02_group{
	margin-top: 35px;
}	
.guide_shop #primary .content02_group__title{
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
	margin-bottom: 25px;
}		
.guide_shop #primary .content02_group__title span{
	display: inline-block;
	padding: 0 7px 13px;
	background: url("../img/img-guide/guide_shop_bg01_sp.png") repeat-x left bottom;
	background-size: 12px;
}	
.guide_shop #primary .content02_group__textarea{
	font-size: 1.2rem;
	letter-spacing: 0.05em;
	line-height: 2.0;
}	
	
.guide_shop #primary .shop_detail__instagram{
	width: 88%;
	margin: 0 auto 55px;
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	position: absolute;
	top: 0;
	left: 0;
}	
.guide_shop #primary .shop_detail__instagram.loaded{
	position: relative;
	top: 0;
	left: 0;
	display: flex;
}
.guide_shop #primary .shop_detail__instagram iframe{
	width: 100% !important;
	min-width: auto !important;
	max-width: none !important;
}
.guide_shop #primary .shop_detail__instagram__title{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0 10px;
	font-size: 1.6rem;
	font-family: "RocknRoll One", sans-serif;
	margin-bottom: 15px;
}
.guide_shop #primary .shop_detail__instagram__title img{
	height: 27px;
	margin-top: 3px;
}
	
	
.guide_shop #primary .shop_detail__data{
	width: 88%;
	margin: 0 auto 35px;
}	
.guide_shop #primary .shop_detail__data__title{
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
	margin-bottom: 35px;
}		
.guide_shop #primary .shop_detail__data__title span{
	display: inline-block;
	padding: 0 5px 13px;
	background: url("../img/img-guide/guide_shop_bg01_sp.png") repeat-x left bottom;
	background-size: 12px;
}
.guide_shop #primary .shop_detail__data dl{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #dcd6c3;
}	
.guide_shop #primary .shop_detail__data dl + dl{
	padding-top: 15px;
}	
.guide_shop #primary .shop_detail__data dl dt{
	font-size: 1.1rem;
	font-weight: bold;
	color: #c1154d;
	letter-spacing: 0.1em;
	background: #f8e9ee;
	border-radius: 100px;
	min-width:27%;
	padding: 5px 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}	
.guide_shop #primary .shop_detail__data dl dd{
	font-size: 1.2rem;
	width: auto;
	padding: 5px;
}
.guide_shop #primary .shop_detail__map{
	width: 90%;
	height: 240px;
	margin: 0 auto 40px;
}
.guide_shop #primary .shop_detail__map iframe{
	width: 100% !important;
	height: 100% !important;
}

}
