@charset "UTF-8";
/* ------------------------------ レイアウト
------------------------------ */
.main { font-family: "Zen Maru Gothic", serif; }

.font-min { font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; }

.font-zk { font-family: "Zen Kurenaido", sans-serif; }

.w100 { width: 100%; }

.opacity { transition: all .6s; }
.opacity:hover { opacity: 0.7; }

@media screen and (max-width: 750px) { .inner-l { padding: 0 6.6666666667%; } }

.shobu-in { position: relative; width: 100%; max-width: 1050px; margin: 0 auto; }

._btn { display: block; text-decoration: none; max-width: 308px; padding: 20px 60px 20px 25px; background: #bf9b35 url("../img/shobu/arrow_i001.png") no-repeat right 15px center; color: #fff; }
@media screen and (max-width: 900px) { ._btn { margin: 0 auto; } }
@media screen and (max-width: 750px) { ._btn { max-width: 100%; padding: 20px; background-size: 24px auto; font-size: 1.1428571429rem; } }

/* ------------------------------ コンテンツ
------------------------------ */
.shobu-ttl-icon { margin-bottom: 20px; text-align: center; }
@media screen and (max-width: 750px) { .shobu-ttl-icon { margin-bottom: 1.3333333333%; } }

.shobu-ttl-txt { font-size: 1.4285714286rem; text-align: center; font-weight: 400; }

.shobu-ttl-txt-s { font-size: 1.6428571429rem; text-align: center; }

.shobu-ttl-txt-icon { text-align: center; }

._shobulist { margin-bottom: 120px; }
._shobulist .list-nav { display: flex; justify-content: center; flex-wrap: wrap; margin-bottom: 50px; }
@media screen and (max-width: 750px) { ._shobulist .list-nav { margin-bottom: 0; padding: 0 6.6666666667%; pointer-events: none; } }
._shobulist .list-nav li { width: max(9.619047619%, 90px); margin-right: 3.2380952381%; cursor: pointer; }
@media screen and (max-width: 750px) { ._shobulist .list-nav li { width: 20.1538461538%; margin-right: 6.1538461538%; margin-bottom: 4%; }
  ._shobulist .list-nav li:nth-child(4n) { margin-right: 0; } }
._shobulist .list-nav li:last-child { margin-right: 0; }
._shobulist .list-nav li figure { position: relative; max-width: 102px; margin: 0 auto; }
._shobulist .list-nav li figure::before { content: ''; display: none; position: absolute; top: 50%; left: 50%; translate: -50% -50%; width: 100%; padding-top: 100%; border: 2px solid #000; border-radius: 50%; }
._shobulist .list-nav li p { margin-top: 10px; font-size: 0.7857142857rem; text-align: center; }
@media screen and (max-width: 750px) { ._shobulist .list-nav li p { display: none; } }
._shobulist .list-nav li:hover figure::before { display: block; }
._shobulist.oyatsu-list .list-nav li p span { display: inline-block;}
._shobulist.oyatsu-list .list-nav li figure::before { border-color: #c44d7e; }
._shobulist.meshi-list .list-nav li figure::before { border-color: #464d7e; }
._shobulist ._shobuswiper .swiper-con { position: relative; width: 100%; max-width: 1200px; margin: 0 auto; }
._shobulist ._shobuswiper .swiper-in { width: 100%; max-width: 1000px; margin: 0 auto; overflow: hidden; }
._shobulist ._shobuswiper .list-ttl { margin-bottom: 40px; text-align: center; }
@media screen and (max-width: 750px) { ._shobulist ._shobuswiper .list-ttl { padding: 0 6.6666666667%; } }
._shobulist ._shobuswiper .list-ttl span { padding-bottom: 0.8em; }
._shobulist ._shobuswiper .list-ttl img { vertical-align: middle; }
._shobulist ._shobuswiper .list-ttl small { margin-left: 0.5em; font-size: 3.2142857143rem; font-weight: 300; }
._shobulist ._shobuswiper .list-box { display: flex; padding-inline: 2px; }
@media screen and (max-width: 750px) { ._shobulist ._shobuswiper .list-box { display: block; padding: 0 6.6666666667%; } }
._shobulist ._shobuswiper .list-box._choice { position: relative; padding: 1.5em; }
@media screen and (max-width: 750px) { ._shobulist ._shobuswiper .list-box._choice { padding: 0 6.6666666667%; } }
._shobulist ._shobuswiper .list-box._choice::before {
    content: '';
    position: absolute;
		left: -.3em;
    top: -.3em;
    width: min(115px, 10dvw);
    height: auto;
    aspect-ratio: 23 / 25;
    background: url("../img/shobu2025/ico_choice.png") no-repeat center / contain;
}
@media screen and (max-width: 750px) {
	._shobulist ._shobuswiper .list-box._choice::before {
    left: 1.5em;
    top: -2em;
		width: min(115px, 22dvw);
	}
}
@media screen and (max-width: 640px) {
	._shobulist ._shobuswiper .list-box._choice::before {
    left: .5em;
    top: -1.5em;
	}
}
._shobulist ._shobuswiper .list-box .list-fig { width: 50%; margin-right: 4.1237113402%; overflow: hidden; }
@media screen and (max-width: 750px) { ._shobulist ._shobuswiper .list-box .list-fig { width: 100%; margin-right: 0; margin-bottom: 30px; } }
._shobulist ._shobuswiper .list-box .list-fig img { border-radius: 2em; }
._shobulist ._shobuswiper .list-box .list-fig ._listmain { margin-bottom: 10px; }
._shobulist ._shobuswiper .list-box .list-fig ._listsub img { border-radius: 0.5em; }
._shobulist ._shobuswiper .list-box .list-item { flex: 1; }
._shobulist ._shobuswiper .list-box .list-item .list-top { display: flex; align-items: center; margin-bottom: 20px; }
._shobulist ._shobuswiper .list-box .list-item .list-top .list-subttl { flex: 1; font-weight: 400; position: relative; font-size: clamp(1.75rem, 1.59rem + 0.34vw, 2rem); }
@media (width < 750px) {
  ._shobulist ._shobuswiper .list-box .list-item .list-top .list-subttl { font-size: 2em; } 
}
._shobulist ._shobuswiper .list-box .list-item .list-top .list-subttl span {
  display: inline-block;
}
._shobulist ._shobuswiper .list-box .list-item .list-top .list-subttl.ico-nagoyasai {
  padding-right: 2em;
}
._shobulist ._shobuswiper .list-box .list-item .list-top .list-subttl.ico-nagoyasai::after {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  translate: 0 -50%;
  width: 2em;
  height: 2em;
  background: url("../img/shobu/ico_nagoyasai.png") no-repeat center / contain;
}
._shobulist ._shobuswiper .list-box .list-item .list-txt { margin-bottom: 20px; font-size: 1.0714285714rem; }
._shobulist ._shobuswiper .list-box .list-item .list-money { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #e4edee; font-size: 1.0714285714rem; }
._shobulist ._shobuswiper .list-box .list-item .list-btn a { display: block; text-decoration: none; max-width: 228px; padding: 20px 2.5em 20px 20px; font-size: 1.1428571429rem; }
._shobulist ._shobuswiper .slide-btn { z-index: 9999; position: absolute; top: 50%; width: 54px; cursor: pointer; }
@media screen and (max-width: 750px) { ._shobulist ._shobuswiper .slide-btn { display: none; } }
._shobulist ._shobuswiper .slide-btn._prev { right: calc(100% + 15px); }
._shobulist ._shobuswiper .slide-btn._next { left: calc(100% + 15px); }

.shobu-map { width: 100%; max-width: 970px; margin: 0 auto; }
@media screen and (max-width: 750px) { .shobu-map { padding: 0 6.6666666667%; } }
.shobu-map .shobu-map-ttl { padding: 15px 20px; background-image: url("../img/shobu/ico_toggle_o.svg"); background-repeat: no-repeat; background-position: right 10px center; background-size: 26px auto; font-size: 1.1428571429rem; text-align: center; font-weight: 400; letter-spacing: .03em; cursor: pointer; }
@media screen and (max-width: 750px) { .shobu-map .shobu-map-ttl { padding: 3.8461538462% 4.6153846154%; background-position: right 4.6153846154% center; background-size: 7.5384615385% auto; } }
.shobu-map .shobu-map-ttl.active { background-image: url("../img/shobu/ico_toggle_c.svg"); }
.shobu-map .shobu-map-box { position: relative; width: 100%; padding-bottom: 47.619047619%; height: 0; overflow: hidden; }
@media screen and (max-width: 750px) { .shobu-map .shobu-map-box { padding-bottom: 150%; } }
.shobu-map .shobu-map-box iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.shobunav { padding: 45px 0 85px; }
@media screen and (max-width: 750px) { .shobunav { padding: 0 0 12.6666666667%; } }
@media screen and (max-width: 750px) { .shobunav .inner-l { padding: 0; } }
.shobunav ul { display: flex; justify-content: center; }
@media screen and (max-width: 750px) { .shobunav ul { flex-wrap: wrap; border-top: 1px solid #c8c8c8; } }
.shobunav ul li { width: 14.2857142857%; border-right: 1px solid #c8c8c8; }
@media screen and (max-width: 750px) { .shobunav ul li { width: 33.3333333333%; border-inline: none; border-bottom: 1px solid #c8c8c8; } }
@media screen and (max-width: 750px) {
	.shobunav ul li:nth-child(7) { border-right: 1px solid #c8c8c8; }
}
.shobunav ul li:first-child { border-left: 1px solid #c8c8c8; }
@media screen and (max-width: 750px) { .shobunav ul li:first-child { border-left: none; } }
@media screen and (max-width: 750px) { .shobunav ul li:nth-child(3n+2) { border-inline: 1px solid #c8c8c8;} }
.shobunav ul li a { display: block; text-decoration: none; text-align: center; }
@media screen and (max-width: 750px) { .shobunav ul li a { padding: 12% 0; } }
.shobunav ul li a:hover p { text-decoration: underline; }
.shobunav ul li a p { margin-top: 10px; font-weight: bold;}
@media screen and (max-width: 750px) { .shobunav ul li a p { font-size: 0.8571428571rem; } }

.about-sec { padding-bottom: 110px; background: url("../img/shobu/about_bg001.png") no-repeat right top 50px; }
@media screen and (max-width: 900px) { .about-sec { padding-bottom: 70px; background-position: right top 300px; } }
.about-sec .about-ttl { margin-bottom: 65px; }
@media screen and (max-width: 900px) { .about-sec .about-ttl { margin-bottom: 30px; } }
.about-sec .about-ttl .about-ttl-txt { margin-top: 10px; font-size: 1.4285714286rem; text-align: center; font-weight: 400; }
@media screen and (max-width: 750px) { .about-sec .about-ttl .about-ttl-txt { font-size: 1.5714285714rem; } }
.about-sec .about-in { position: relative; }
.about-sec .about-fig { position: absolute; top: 0; left: 0; width: 34.8571428571%; margin-left: -7.1428571429%; }
@media screen and (max-width: 1230px) { .about-sec .about-fig { margin-left: 0; } }
@media screen and (max-width: 900px) { .about-sec .about-fig { position: static; width: 92.3076923077%; margin: 0 auto 80px; } }
@media screen and (max-width: 750px) { .about-sec .about-fig { margin-bottom: 12.3076923077%; } }
.about-sec .about-fig img { box-shadow: 5px 6px 6px 0px rgba(0, 0, 0, 0.4); }
.about-sec .about-box { width: 63.8095238095%; margin: 0 0 0 auto; }
@media screen and (max-width: 900px) { .about-sec .about-box { width: 100%; } }
.about-sec .about-box .about-heading { margin-bottom: 35px; font-size: 2.0714285714rem; font-weight: 400; }
@media screen and (max-width: 750px) { .about-sec .about-box .about-heading { margin-bottom: 9.2307692308%; font-size: 1.5714285714rem; } }
.about-sec .about-box .about-txt { font-size: 1.2142857143rem; line-height: 2; }
.about-sec .about-box .about-txt._bold { display: block; margin-bottom: 30px;}
@media screen and (max-width: 750px) { .about-sec .about-box .about-txt._bold { margin-bottom: 7.6923076923%; } }
.about-sec .about-box .about-item { display: flex; margin-bottom: 30px; }
@media screen and (max-width: 750px) { .about-sec .about-box .about-item { margin-bottom: 7.6923076923%; } }
.about-sec .about-box .about-item figure { width: 37.3134328358%; }
@media screen and (max-width: 750px) { .about-sec .about-box .about-item figure { width: 49.2307692308%; } }
.about-sec .about-box .about-item dl { flex: 1; margin-left: 20px; }
.about-sec .about-box .about-item dl dt { margin-bottom: 10px; }
.about-sec .about-box .about-item dl dd a { padding-right: 1.5em; background: url("../img/shobu/about_i001.png") no-repeat right top 0.6em; font-size: 1.5rem; }

.oyatsu-sec .oyatsu-top { padding-top: 35px; background: #ffd2e6 url("../img/shobu/oyatsu_bg001.png") no-repeat right top; }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-top { padding-top: 7.3333333333%; background-size: 40% auto; background-position: right -26.6666666667% top; } }
.oyatsu-sec .oyatsu-top .oyatsu-top-bg { padding-bottom: 45px; background: url("../img/shobu/oyatsu_bg002.png") no-repeat left bottom; }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-top .oyatsu-top-bg { padding-bottom: 8%; background-size: 40% auto; background-position: left -26.6666666667% bottom; } }
.oyatsu-sec .oyatsu-top .shobu-ttl-icon { margin-bottom: 10px; }
.oyatsu-sec .oyatsu-top .shobu-ttl-txt-s { margin-bottom: 20px; }
.oyatsu-sec .oyatsu-top .shobu-ttl-txt { margin-bottom: 40px; font-size: 2.3571428571rem; }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-top .shobu-ttl-txt { margin-bottom: 4.6153846154%; font-size: 1.7142857143rem; } }
.oyatsu-sec .oyatsu-top .shobu-ttl-txt span { position: relative; }
.oyatsu-sec .oyatsu-top .shobu-ttl-txt span::after { content: ''; position: absolute; top: 0; right: 0; width: 133px; height: 108px; margin-top: -90px; margin-right: -180px; background: url("../img/shobu/oyatsu_tx002.png") no-repeat left top; }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-top .shobu-ttl-txt span::after { width: 93px; height: 78px; margin-top: -100px; margin-right: -70px; background-size: cover; } }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-top .shobu-ttl-txt-icon { width: 44.615384615400004%; margin: 0 auto; } }
.oyatsu-sec .oyatsu-main { padding: 50px 0 110px; }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-main .inner-l { padding: 0; } }
.oyatsu-sec .oyatsu-main .oyatsu-lead { margin-bottom: 35px; font-size: 1.1428571429rem; text-align: center; line-height: 2; }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-main .oyatsu-lead { padding: 0 6.6666666667%; text-align: left; } }
@media screen and (max-width: 750px) { .oyatsu-sec .oyatsu-main .oyatsu-swiper li { padding: 6.6666666667% 0 9.3333333333%; border-bottom: 1px solid #ffd2e6; }
  .oyatsu-sec .oyatsu-main .oyatsu-swiper li li { padding: 0; border-bottom: none; } }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-ttl span { border-bottom: 1px solid #ffd2e6; }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item .list-top .list-category { position: relative; width: 67px; margin-right: 20px; border-radius: 50%; background-color: #fceef4; }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item .list-top .list-category:has(> .sweets) {
  background: #FCE5D2;
}
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item .list-top .list-category::before { content: ''; display: block; padding-top: 100%; }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item .list-top .list-category p { position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; text-align: center; color: #c44d7e; }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item .list-top .list-category p.sweets {
  color: #C97756;
}
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item dl { margin-bottom: 20px; }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item dl dt { margin-bottom: 10px; font-size: 1.2142857143rem; font-weight: 700; }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item dl dd { padding-left: 15px; background: url("../img/shobu/icon_map_pk.svg") no-repeat left top .3em; background-size: 8px auto; }
.oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item .list-btn a { background: #ffd2e6 url("../img/shobu/ico_link_pk.svg") no-repeat right 20px center; background-size: 12px auto; }
@media (width < 750px) {
  .oyatsu-sec .oyatsu-main .oyatsu-swiper .list-box .list-item .list-btn a {
    width: min(290px, 100%);
    max-width: unset;
    background-size: 1em auto;
    margin: 1em auto 2em;
  }
}
.oyatsu-sec .oyatsu-main .shobu-map .shobu-map-ttl { background-color: #ffd2e6; }

.meshi-sec .meshi-top { padding-top: 35px; background: #a4dff2 url("../img/shobu/meshi_bg002.png") no-repeat right top; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-top { padding-top: 7.3333333333%; background-size: 40% auto; background-position: right -26.6666666667% top; } }
.meshi-sec .meshi-top .meshi-top-bg { padding-bottom: 45px; background: url("../img/shobu/meshi_bg001.png") no-repeat left bottom; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-top .meshi-top-bg { padding-bottom: 8%; background-size: 40% auto; background-position: left -26.6666666667% bottom; } }
.meshi-sec .meshi-top .shobu-ttl-icon { margin-bottom: 10px; }
.meshi-sec .meshi-top .shobu-ttl-txt-s { margin-bottom: 20px; }
.meshi-sec .meshi-top .shobu-ttl-txt { margin-bottom: 40px; font-size: 2.3571428571rem; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-top .shobu-ttl-txt { margin-bottom: 4.6153846154%; font-size: 1.7142857143rem; } }
.meshi-sec .meshi-top .shobu-ttl-txt span { position: relative; }
.meshi-sec .meshi-top .shobu-ttl-txt span::after { content: ''; position: absolute; top: 0; right: 0; width: 133px; height: 108px; margin-top: -90px; margin-right: -180px; background: url("../img/shobu/meshi_tx002.png") no-repeat left top; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-top .shobu-ttl-txt span::after { width: 93px; height: 78px; margin-top: -100px; margin-right: -60px; background-size: cover; } }
@media screen and (max-width: 750px) { .meshi-sec .meshi-top .shobu-ttl-txt-icon { width: 44.615384615400004%; margin: 0 auto; } }
.meshi-sec .meshi-main { padding: 70px 0 110px; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .inner-l { padding: 0; } }
.meshi-sec .meshi-main .meshi-spot { display: flex; width: 100%; max-width: 1050px; margin: 0 auto 70px; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-spot { display: block; padding: 0 6.6666666667%; } }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-fig { width: 33.3333333333%; margin-right: 4.7619047619%; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-spot .meshi-spot-fig { width: 43.0769230769%; margin-right: 4.6153846154%; } }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-spot .meshi-spot-fig._figpc { display: none; } }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-fig._figsp { display: none; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-spot .meshi-spot-fig._figsp { display: block; } }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-box { flex: 1; }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-box .meshi-spot-ttl { margin-bottom: 25px; font-size: 2.0714285714rem; font-weight: 400; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-spot .meshi-spot-box .meshi-spot-ttl { font-size: 1.7142857143rem; } }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-box .meshi-spot-txt { font-size: 1.1428571429rem; }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-box .meshi-spot-item { margin-top: 20px; padding-top: 20px; border-top: 1px dotted #c5cdd1; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-spot .meshi-spot-box .meshi-spot-item { display: flex; margin-top: 7.6923076923%; padding-top: 7.6923076923%; } }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-spot .meshi-spot-box dl { flex: 1; } }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-box dl dt { margin-bottom: 15px; font-size: 1.2857142857rem; font-weight: 700; }
.meshi-sec .meshi-main .meshi-spot .meshi-spot-box dl dt a { color: #007bff; }
.meshi-sec .meshi-main .meshi-list { margin-bottom: 30px; }
@media (width > 750px) { .meshi-sec .meshi-main .meshi-list .meshi-swiper { padding-inline: 70px; } }
.meshi-sec .meshi-main .meshi-list .meshi-list-nav { display: flex; flex-wrap: wrap; }
.meshi-sec .meshi-main .meshi-list .meshi-list-nav li { width: 9.619047619%; margin-right: 3.2380952381%; cursor: pointer; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-list .meshi-list-nav li { width: 20.1538461538%; margin-right: 6.1538461538%; margin-bottom: 4%; }
  .meshi-sec .meshi-main .meshi-list .meshi-list-nav li:nth-child(4n) { margin-right: 0; } }
.meshi-sec .meshi-main .meshi-list .meshi-list-nav li:last-child { margin-right: 0; }
.meshi-sec .meshi-main .meshi-list .meshi-list-nav li p { margin-top: 10px; font-size: 0.7857142857rem; text-align: center; }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-list .meshi-list-nav li p { display: none; } }
@media screen and (max-width: 750px) { .meshi-sec .meshi-main .meshi-swiper li { padding: 6.6666666667% 0 9.3333333333%; border-bottom: 1px solid #a4dff2; }
  .meshi-sec .meshi-main .meshi-swiper li li { padding: 0; border-bottom: none; } }
.meshi-sec .meshi-main .meshi-swiper .list-ttl span { border-bottom: 1px solid #a4dff2; }
.meshi-sec .meshi-main .meshi-swiper .list-box .list-item .list-info { margin-bottom: 20px; }
.meshi-sec .meshi-main .meshi-swiper .list-box .list-item .list-info dl { display: flex; align-items: baseline; margin-bottom: 10px; }
.meshi-sec .meshi-main .meshi-swiper .list-box .list-item .list-info dl dt { width: 6em; font-size: 1.0714285714rem; font-weight: 700; color: #4c76b6; }
.meshi-sec .meshi-main .meshi-swiper .list-box .list-item .list-info dl dd { flex: 1; font-size: 1.1428571429rem; font-weight: 700; }
.meshi-sec .meshi-main .meshi-swiper .list-box .list-item .list-info dl dd .list-info-address { padding-left: 15px; background: url("../img/shobu/icon_map_pk.svg") no-repeat left top 0.3em; background-size: 8px auto; font-size: 1rem; font-weight: 400; }
.meshi-sec .meshi-main .meshi-swiper .list-box .list-item .list-btn a { background: #c7eaf6 url("../img/shobu/ico_link_bl.svg") no-repeat right 20px center; background-size: 12px auto; }
@media (width < 750px) {
  .meshi-sec .meshi-main .meshi-swiper .list-box .list-item .list-btn a {
    width: min(290px, 100%);
    max-width: unset;
    background-size: 1em auto;
  }
}
.meshi-sec .meshi-main .shobu-map .shobu-map-ttl { background-color: #92dafb; }

.venue-sec { padding: 60px 0 120px; background: #f4faf1 url("../img/shobu/venue_bg001.png") no-repeat right -20px top 60px; }
@media screen and (max-width: 750px) { .venue-sec { padding: 60px 0 10px;     background: #f4faf1 url('../img/shobu/venue_bg001.png') no-repeat right -20px top 20px / 30vw; } }
.venue-sec .venue-bg { background: url("../img/shobu/venue_bg002.png") no-repeat left -20px top 400px; }
@media screen and (max-width: 750px) {
  .venue-sec .venue-bg {
    background: url('../img/shobu/venue_bg002.png') no-repeat left -20px top 70px / 26vw;
  }
 }
.venue-sec .shobu-ttl { margin-bottom: 60px; }
.venue-sec .venue-main { display: flex; justify-content: space-between; margin-bottom: 70px; }
@media screen and (max-width: 750px) { .venue-sec .venue-main { display: block; } }
.venue-sec .venue-main figure { width: 46.1904761905%; }
@media screen and (max-width: 750px) { .venue-sec .venue-main figure { width: 100%; margin-bottom: 30px; } }
.venue-sec .venue-main .venue-item { flex: 1; margin-left: 7.619047619%; }
@media screen and (max-width: 750px) { .venue-sec .venue-main .venue-item { margin-left: 0; } }
.venue-sec .venue-main .venue-item .venue-ttl { margin-bottom: 20px; font-size: 3.5714285714rem; font-weight: 700; }
@media screen and (max-width: 750px) { .venue-sec .venue-main .venue-item .venue-ttl { font-size: 2.1428571429rem; } }
.venue-sec .venue-main .venue-item .venue-txt { margin-bottom: 30px; font-size: 1.0714285714rem; }
.venue-sec .venue-main .venue-item .venue-address { margin-bottom: 30px; padding-left: 15px; background: url("../img/shobu/icon_map_g.svg") no-repeat left center; background-size: 8px auto; }
.venue-sec .venue-season { margin-bottom: 70px; }
.venue-sec .venue-season .season-ttl { margin-bottom: 20px; font-size: 1.5714285714rem; font-weight: 700; text-align: center; }
.venue-sec .venue-season ul { display: flex; flex-wrap: wrap; }
.venue-sec .venue-season ul li { width: 23.4285714286%; margin-right: 2.0952380952%; }
@media screen and (max-width: 750px) { .venue-sec .venue-season ul li { width: 48%; margin-right: 4%; margin-bottom: 4%; }
  .venue-sec .venue-season ul li:nth-child(2n) { margin-right: 0; } }
.venue-sec .venue-season ul li:last-child { margin-right: 0; }
.venue-sec .venue-spot { margin-bottom: 70px; }
.venue-sec .venue-spot .spot-ttl { margin-bottom: 20px; font-size: 1.5714285714rem; font-weight: 700; text-align: center; }
.venue-sec .venue-spot .venue-spot-box { display: flex; margin-bottom: 25px; padding: 40px 50px; background-color: #fff; border: 2px solid #bf9b35; }
@media screen and (max-width: 750px) { .venue-sec .venue-spot .venue-spot-box { display: block; padding: 30px; } }
.venue-sec .venue-spot .venue-spot-box:last-child { margin-bottom: 0; }
.venue-sec .venue-spot .venue-spot-box .venue-spot-photo { width: 31.5789473684%; margin-right: 6.3157894737%; overflow: hidden; }
@media screen and (max-width: 750px) { .venue-sec .venue-spot .venue-spot-box .venue-spot-photo { width: 100%; margin-right: 0; margin-bottom: 40px; } }
.venue-sec .venue-spot .venue-spot-box .venue-spot-photo ._swipermain { margin-bottom: 15px; }
.venue-sec .venue-spot .venue-spot-box .venue-spot-photo ._swipersub .swiper-slide-thumb-active { border: 3px solid #bf9b35; }
.venue-sec .venue-spot .venue-spot-box .venue-spot-item { flex: 1; }
.venue-sec .venue-spot .venue-spot-box .venue-spot-item .spot-subttl { margin-bottom: 20px; font-size: 1.4285714286rem; font-weight: 700; }
.venue-sec .venue-spot .venue-spot-box .venue-spot-item .spot-txt { margin-bottom: 20px; font-size: 1.0714285714rem; }
.venue-sec .venue-spot .venue-spot-box .venue-spot-item .spot-address { margin-bottom: 30px; padding-left: 15px; background: url("../img/shobu/icon_map_g.svg") no-repeat left top 0.3em; background-size: 8px auto; }

.event-sec { padding: 90px 0 100px; }
@media screen and (max-width: 750px) { .event-sec { padding: 60px 0; } }
.event-sec .shobu-ttl { margin-bottom: 65px; }
.event-sec .event-list { display: flex; }
@media screen and (max-width: 750px) { .event-sec .event-list { display: block; } }
.event-sec .event-list li { display: grid; width: 30.2857142857%; margin-right: 4.5714285714%; grid-auto-flow: row; grid-template-rows: auto auto auto 1fr auto;}
@media screen and (max-width: 750px) { .event-sec .event-list li { width: 100%; margin-right: 0; margin-bottom: 40px; } }
.event-sec .event-list li:last-child { margin-right: 0; }
@media screen and (max-width: 750px) { .event-sec .event-list li:last-child { margin-bottom: 0; } }
.event-sec .event-list li figure { margin-bottom: 20px; }
.event-sec .event-list li .event-ttl { margin-bottom: 20px; font-size: 1.2857142857rem; font-weight: 400; }
.event-sec .event-list li .event-calendar { margin-bottom: 10px; padding: 2px 0 2px 30px; background: url("../img/shobu/ico_calendar_g.svg") no-repeat left top; background-size: 19px auto; font-size: 0.8571428571rem; color: #515151; }
.event-sec .event-list li .event-txt { margin-bottom: 20px; font-size: 1.0714285714rem; }

.near-sec { padding: 70px 0 140px;}
@media screen and (max-width: 750px) { .near-sec { padding: 60px 0 60px; } }
.near-sec .shobu-ttl { margin-bottom: 45px; }
.near-sec .near-swiper { position: relative; width: 100%; max-width: 1240px; margin: 0 auto min(150px, 28vw); }
@media screen and (max-width: 750px) { .near-sec .near-swiper { padding: 0 12.3076923077%; } }
.near-sec .near-swiper .swiper-in { width: 100%; max-width: 1050px; margin: 0 auto; overflow: hidden; }
.near-sec .near-swiper li figure { margin-bottom: 20px; }
.near-sec .near-swiper li .near-ttl { margin-bottom: 20px; font-size: 1.2857142857rem; font-weight: 400; }
.near-sec .near-swiper li .near-txt { margin-bottom: 20px; font-size: 1.0714285714rem; }
.near-sec .near-swiper li .near-address { margin-bottom: 30px; padding-left: 15px; background: url("../img/shobu/icon_map_g.svg") no-repeat left top 0.3em; background-size: 8px auto; }
.near-sec .near-swiper .swiper-slide {
  height: auto;
  display: grid;
  grid-auto-flow: row;
  grid-template-rows: auto auto 1fr auto;
}
.near-sec .near-swiper .swiper-pagination-bullets { margin-bottom: -80px; }
@media (width < 750px) {
  .near-sec .near-swiper .swiper-pagination-bullets {
    margin-bottom: -60px;
  }
}
.near-sec .near-swiper .swiper-pagination-bullet { width: 12px !important; height: 12px !important; margin: 0 11px !important; background: #c8c8c8; opacity: 1; }
@media (width < 750px) {
  .near-sec .near-swiper .swiper-pagination-bullet {
    width: 8px !important;
    height: 8px !important;
    margin: 0 8px !important;
  }
}
.near-sec .near-swiper .swiper-pagination-bullet-active { background: #bf9b35; }
.near-sec .near-swiper .slide-btn { z-index: 9999; position: absolute; top: 50%; width: 54px; cursor: pointer; }
@media screen and (max-width: 750px) { .near-sec .near-swiper .slide-btn { width: 34px; } }
.near-sec .near-swiper .slide-btn._prev { top: calc(100% + 35px); left: calc(50% - 180px); }
@media (width < 750px) {
  .near-sec .near-swiper .slide-btn._prev { top: 50%; left: 0; }
}
.near-sec .near-swiper .slide-btn._next { top: calc(100% + 35px); right: calc(50% - 180px); }
@media (width < 750px) {
  .near-sec .near-swiper .slide-btn._next { top: 50%; right: 0; }
}
@media screen and (max-width: 750px) { .near-sec .shobu-map { padding: 0; } }
.near-sec .shobu-map .shobu-map-ttl { background-color: #3a3d45; color: #fff; }

.info-sec { padding-top: 85px; background: url("../img/shobu/info_bg001.png") no-repeat right top #f6f8fa; }
@media screen and (max-width: 750px) { .info-sec { padding-top: 60px; background-size: contain; } }
.info-sec .info-bg { padding-bottom: 120px; background: url("../img/shobu/info_bg002.png") no-repeat left bottom; }
@media screen and (max-width: 750px) { .info-sec .info-bg { padding-bottom: 60px; background-size: contain; } }
.info-sec .shobu-ttl { margin-bottom: 65px; }
.info-sec .info-box { position: relative; border: 3px solid #fff; margin-bottom: 90px; padding: 40px 50px; background-color: #fef1fa; border-radius: 2em; }
@media screen and (max-width: 750px) { .info-sec .info-box { padding: 30px; border-radius: 1em; } }
.info-sec .info-box figure { position: absolute; top: 0; left: 0; width: 23.1578947368%; margin-top: -30px; margin-left: 70px; }
@media screen and (max-width: 750px) { .info-sec .info-box figure { position: static; width: min(350px, 100%); margin: 0 auto 30px; } }
.info-sec .info-box .info-item { width: 66.8421052632%; margin: 0 0 0 auto; }
@media screen and (max-width: 750px) { .info-sec .info-box .info-item { width: 100%; } }
.info-sec .info-box .info-item dl { margin-bottom: 30px; }
.info-sec .info-box .info-item dl dt { margin-bottom: 20px; font-size: 1.2857142857rem; font-weight: 700; }
.info-sec .info-box .info-item dl dd { line-height: 1.8; }
.info-sec .info-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1em;
}
@media screen and (max-width: 750px) {
	.info-sec .info-list {
		width: 90%;
		grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
		margin: auto;
	}
}
.footer-pagetop {
  z-index: calc(infinity);
}
@media (width < 750px) {
  .only-sp {
      display: block;
  }
}
.local-food__con {
  padding-block: 0 min(100px, 15vw);
}
@media (width < 750px) {
  .local-food__con {
    padding-block: 20px min(100px, 15vw);
  }
}
.local-food__con .inner {
  max-width: 970px;
}
@media (width < 750px) {
  .local-food__con .inner {
    padding: 0 6.6666666667%;
  }
}
.local-food__con .local-food__box {
  position: relative;
  border: 1px solid #009b75;
  border-radius: 20px;
  padding: 3em;
}
@media (width < 750px) {
  .local-food__con .local-food__box {
    padding: 16% 1.5em 3em;
  }
}
.local-food__con .local-food__box::before {
  content: '';
  position: absolute;
  left: -2em;
  top: -2em;
  width: 80px;
  height: 80px;
  background: url('../img/shobu/ico_check.svg') no-repeat center / contain;
}
@media (width < 750px) {
  .local-food__con .local-food__box::before {
    width: min(150px, 18vw);
    height: min(150px, 18vw);
    left: 50%;
    top: max(-75px, -9vw);
    translate: -50% 0;
  }
}
.local-food__con .local-food__box h2 {
  position: relative;
  color: #009b75;
  font-size: 1.7857142857142858rem;
  font-weight: 400;
  text-align: center;
  padding-bottom: 1.3em;
  margin-bottom: 1.1em;
}
@media (width < 750px) {
  .local-food__con .local-food__box h2 {
    font-size: 1.4285714285714286rem;
    padding-bottom: 1em;
    margin-bottom: 1.2em;
  }
}
.local-food__con .local-food__box h2 span {
  display: inline-block;
}
.local-food__con .local-food__box h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 4em;
  height: 1px;
  background: #009b75;
  translate: -50% 0;
}
.local-food__con .local-food__wrap {
  display: flex;
  gap: 4em;
}
@media (width < 750px) {
  .local-food__con .local-food__wrap {
    flex-direction: column;
    gap: 1em;
  }
}
.local-food__con .local-food__img-area img {
  width: 100%;
}
.local-food__con .local-food__txt-area .local-food__txt {
  font-size: 1.0714285714285714rem;
  line-height: 1.7;
  margin-bottom: 1em;
}
@media (width < 750px) {
  .local-food__con .local-food__txt-area .local-food__txt {
    font-size: 1.1428571428571428rem;
    line-height: 1.8;
  }
}
.local-food__con .local-food__btn-wrap {
  margin-block: 2em 0;
}
@media (width < 750px) {
  .local-food__con .local-food__btn-wrap {
    text-align: center;
  }
}
.local-food__con .local-food__btn-wrap a {
  position: relative;
  display: inline-block;
  font-size: 1.1428571429rem;
  text-decoration: none;
  background: #c7f0e9 url('../img/shobu/ico_link_gr.svg') no-repeat right 20px center;
  background-size: 12px auto;
  padding: 1.15em 3em 1.15em 1em;
}
@media (width < 750px) {
  .local-food__con .local-food__btn-wrap a {
    width: min(100%, 400px);
    text-align: left;
    background-size: 1em auto;
    padding: 1em 3em 1em 1.5em;
  }
}
.oyatsu-list._shobulist {
  margin-bottom: 30px;
}
@media (width > 750px) {
  .oyatsu-list._shobulist .oyatsu-swiper {
    padding-inline: 70px; 
  }
}
.shobu-notes {
  max-width: 970px;
  margin: 0 auto min(80px, 15vw);
}
@media (width < 750px) {
  .shobu-notes {
    padding: 0 6.6666666667%;
  }
}
.shobu-notes .ico-nagoyasai {
  width: 2.5em;
  height: auto;
  aspect-ratio: 1;
  display: inline-block;
  position: relative;
  vertical-align: -.8em;
  margin-left: 4px;
}
.shobu-notes .ico-nagoyasai img {
  position: absolute;
  inset: 0;
}
.shobu-notes ul li {
  font-size: 1.0714285714rem;
  text-indent: -1em;
  padding-left: 1em;
}
.shobu-notes ul li::before {
  content: '※';
}
.shobu-notes ul li:has(+ li) {
  margin-bottom: .8em;
}


/*# sourceMappingURL=shobu.css.map */
