/* global */
.gl-header{border-bottom: 1px solid #c9cacb;display: flex;align-items: center;justify-content: space-between;margin-bottom: 20px;padding: 5px 15px 0 15px;height: 57px;}
.gl-header .gl-header-aeon{width: 150px;}
.gl-header .gl-header-guide{width: 145px;margin-right: 15px;}

.gl-footer{margin-top: 40px;}
.gl-footer .gl-footer-address{border: 1px solid #b5b5b6;font-size: 1.3rem;padding: 15px;}
.gl-footer .gl-footer-copy{background-color: #595757;color: #fff;font-size: 1.0rem;text-align: center;padding: 15px;}
.gl-footer .gl-footer-social{align-items: center;justify-content: center;}
.gl-footer .gl-footer-social a img{width: 100%;}

/* utility */
.u-fixed{overflow: hidden;height: 100%;}

/* layout */
.l-wrapper{max-width: 768px;margin-left: auto;margin-right: auto;}
.l-contents{display: block;padding: 0 10px;position: relative;}
.l-section+.l-section{margin-top: 30px;}
.l-section--border + .l-section--border{border-top: 1px solid #c9cacb;padding-top: 20px;}
.l-section-lv2+.l-section-lv2{margin-top: 20px;}
.l-grid{display: grid;}

/* component */
.c-heading{font-weight: 700;}
.c-heading.c-heading--A{font-size: 1.8rem;margin-bottom: 10px;}
.c-heading.c-heading--B{font-size: 1.8rem;text-align: center;overflow: hidden;margin-bottom: 10px;}
.c-heading.c-heading--B span{display: inline-block;vertical-align: top;position: relative;padding: 0 12px;}
.c-heading.c-heading--B span::before,
.c-heading.c-heading--B span::after{border-top: 1px dotted #c4c5c5;content: "";position: absolute;left: 100%;top: 50%;width: 50vh;}
.c-heading.c-heading--B span::after{left: auto;right: 100%;}
.c-heading.c-heading--icon-topics{line-height: 1.4;padding-left: 25px;position: relative;}
.c-heading.c-heading--icon-topics::before{background: url(/gourmetguide/shared/img/icon-topics.svg) center center/100% auto no-repeat;content: "";position: absolute;top: calc(.7em - 11px);left: 0;width: 21px;height: 20px;}
.c-heading.c-heading--icon-shoplist{line-height: 1.4;padding-left: 25px;position: relative;display: flex;justify-content: space-between;align-items: center;}
.c-heading.c-heading--icon-shoplist::before{background: url(/gourmetguide/shared/img/icon-shoplist.svg) center center/100% auto no-repeat;content: "";position: absolute;top: calc(50% - 8px);left: 2px;width: 17px;height: 17px;}
.c-heading.c-heading--icon-shoplist button{background: url(/gourmetguide/shared/img/icon-filter.png) left top/cover no-repeat;cursor: pointer;font-size: 0;line-height: 0;width: 22px;height: 22px;}
.c-heading.c-heading--icon-shoplist button.is-opened{background-image: url(/gourmetguide/shared/img/icon-filter_close.png);}
.c-icon{position: relative;}
.c-icon.c-icon--play::after{background: url(/gourmetguide/shared/img/icon-movie-play.svg) center center/100% auto no-repeat;content: "";position: absolute;position: absolute;top: 50%;left: 50%;padding-bottom: calc((67/234)*100%);width: calc((65/234)*100%);transform: translate(-50%,-50%);z-index: +1;}
.c-movie{grid-template-columns: 1fr 1fr 1fr;gap: 2px;}
.c-movie .c-movie-card img{width: 100%;}
.c-shop{grid-template-columns: 1fr 1fr 1fr;padding: 1px 0 0 1px;}
.c-shop a{display: block;margin: -1px 0 0 -1px;}
.c-shop .c-shop-card{display: flex;position: relative;padding: 0 5px;height: 100%;}
.c-shop .c-shop-card::after{background-color: #a0a0a1;content: "";position: absolute;top: 5px;right: 0;width: 1px;height: calc(100% - 10px);}
.c-shop .c-shop-card::before{background-color: #a0a0a1;content: "";position: absolute;top: 5px;left: 0;width: 1px;height: calc(100% - 10px);}
.c-shop .c-shop-card .c-shop-card__inner{box-sizing: border-box;display: flex;flex-direction: column;position: relative;padding: 5px 0;width: 100%;height: 100%;}
.c-shop .c-shop-card .c-shop-card__inner::after{background-color: #a0a0a1;content: "";position: absolute;bottom: 0;left: 5px;width: calc(100% - 10px);height: 1px;}
.c-shop .c-shop-card .c-shop-card__inner::before{background-color: #a0a0a1;content: "";position: absolute;top: 0;left: 5px;width: calc(100% - 10px);height: 1px;}
.c-shop .c-shop-card .c-shop-card__new{background: url(/gourmetguide/shared/img/icon-new-shop.svg) top left/100% auto no-repeat; font-size: 0; line-height: 0; position: absolute; top: 2px; left: -2px; padding-bottom: calc((56 / 239) * 100%); width: calc((118 / 239) * 100%); }
.c-shop .c-shop-card .c-shop-card__img img{width: 100%; height: 140px; object-fit: cover; }
@media only screen and (max-width: 480px) {
    .c-shop .c-shop-card .c-shop-card__img img{width: 240px; height: 10vh; object-fit: cover; }
}
.c-shop .c-shop-card .c-shop-card__name{font-size: 1.2rem;font-weight: 700;text-align: left;margin-top: 5px;flex:1;}
.c-shop .c-shop-card .c-shop-card__text{font-size: 1.0rem;margin-top: 5px;padding-bottom: 5px;}
.c-btn.c-btn--more{text-align: center;margin-top: 15px;}
.c-btn.c-btn--more a{box-sizing: border-box;border: 1px solid #221815;border-radius: 12px;box-shadow: 3px 5px 0 #a19a95;display: inline-block;font-size: 1.5rem;font-weight: 700;line-height: 24px;vertical-align: top;width: 178px;}
.c-btn.c-btn--pageback{font-size: 0;line-height: 0;margin-bottom: 10px;}
.c-btn.c-btn--pageback a{display: inline-block;vertical-align: top;text-align: center;width: 20px;height: 18px;}
.c-btn.c-btn--pageback a img{width: 10px;}
.c-copy-message{background-color: rgba(0,0,0,.5);border-radius: 5px;color: #fff;font-size: 1.3rem;font-weight: 700;position: fixed;top: 50%;left: 50%;padding: 10px 20px;transform: translate(-50%,-50%);z-index: 10;opacity: 0;visibility: hidden;transition: opacity .5s ease,visibility .5s ease;}
.c-copy-message.is-show{opacity: 1;visibility: visible;}
.c-filter{display: none;border-bottom: 1px solid #737674;padding: 5px 0 8px 0;margin-bottom: 20px;}
.c-filter button{box-sizing: border-box;border: 2px solid #000;border-radius: 5px;cursor: pointer;display: flex;justify-content: center;font-size: 1.4rem;font-weight: 700;line-height: 1.2;margin: 0 4px;width: calc(100% - 8px);text-align: center;padding: 3px 10px;transition: background-color .5s ease;}
.c-filter button.is-selected{background-color: #caccca;}
.c-filter .c-filter-floor{display: flex;justify-content: space-around;margin: 0 -4px;}
.c-filter .c-filter-area{margin: 0 -4px;}
.c-filter .c-filter-area button{margin-top: 8px;}
