@charset "utf-8";

/*-------------------------
Layout
-------------------------*/
.l-contents {
  background: #f4f0ea;
}
.l-section {
  color: #3c3c3c;
}
.l-section--offset {
  margin-top: -54px !important;
  padding-top: 54px;
}
  .l-section__inner {
    padding: 15px 10px;
  }

.is-rock {
  width: 100%;
  overflow-y: scroll;
}

.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99999;
}

/*-------------------------
Title
-------------------------*/
.c-title__section {
  padding: 10px;
  position: relative;
  color: #fff;
  background: #aca69f;
  font-size: 14px;
}

/*-------------------------
Link
-------------------------*/
.l-contents a {
  color: #3c3c3c;
}

/*-------------------------
Image
-------------------------*/
.c-no-image {
  margin: 0 auto;
  max-width: 89px;
}

/*-------------------------
Table
-------------------------*/
.c-table {
  margin-top: 15px;
  width: 100%;
}
  .c-table__th {
    padding: 5px 10px;
    background: #f4f0ea;
    font-size: 14px;
    text-align: left;
  }
  .c-table__td {
    padding: 10px 10px 15px 10px;
    position: relative;
    font-size: 14px;
  }
  .c-table__td.c-td__address {
    padding-right: 57px;
  }
  .p-shop-equipment tr:last-child .c-table__td {
    padding-bottom: 0;
  }
  .c-table__td a:not(.c-icon__map) {
    text-decoration: underline;
  }

/*-------------------------
Button
-------------------------*/
button[class^="c-btn"] {
  outline: 0;
}

a.c-btn__more {
  margin-top: 15px;
  padding: 15px;
  border-radius: 5px;
  display: block;
  color: #3c3c3c;
  background: #dccfbe !important;
  font-weight: bold;
  font-size: 14px;
  text-align: center;
  line-height: 1;
}

.c-btn__favorite {
  padding: 10px;
  border: none;
  border-radius: 5px;
  width: 100%;
  display: block;
  color: #fff !important;
  background: #fead0a;
  font-weight: bold;
  font-size: 14px;
  text-align: center;
  line-height: 1;
}

.c-btn__use-coupon {
  padding: 13px 10px;
  border: none;
  border-radius: 5px;
  width: 100%;
  display: block;
  color: #fff !important;
  background: #e61e0a;
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  line-height: 1.4;
}
  .c-btn__use-coupon span {
    display: block;
    font-size: 12px;
    font-weight: normal;
  }

.c-btn__show-coupon {
  padding: 13px 10px;
  border: none;
  border-radius: 5px;
  width: 100%;
  box-sizing: border-box;
  display: block;
  color: #fff !important;
  background: #e61e0a;
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  line-height: 1.4;
}
.c-btn__show-coupon.is-disabled {
  background: #ccc;
}
  .c-btn__show-coupon span {
    display: block;
    font-size: 12px;
    font-weight: normal;
  }

.p-btn__favorite {}
  .c-icon__star {
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
  }
  .c-icon__star.is-active {
    animation: anim-icon 0.3s ease-out;
    -webkit-animation: anim-icon 0.3s ease-out;
    transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
  }
    @-webkit-keyframes anim-icon {
      0% {
        transform: scale(0.4);
        -webkit-transform: scale(0.4);
      }
      50% {
        transform: scale(1.2);
        -webkit-transform: scale(1.2);
      }
      100% {
        transform: scale(1);
        -webkit-transform: scale(1);
      }
    }

a.c-btn_map {
  padding: 3px 9px;
  border: 1px solid #ddcfbe;
  border-radius: 5px;
  position: absolute;
  top: 10px;
  right: 10px;
  color: #3c3c3c;
  background: #fff;
  font-size: 8px;
  display: inline-block;
  text-align: center;
  line-height: 1.2;
}
  .c-btn_map.c-icon__map:before {
    display: block;
  }

/*-------------------------
Section
-------------------------*/
.l-card-list {}
  .p-card {
    border: 1px solid #ddd0bf;
    border-radius: 5px;
    position: relative;
    background: #fff;
  }
  .p-card__none {
    display: none;
  }
  .p-card:nth-child(n+2) {
    margin-top: 15px;
  }
    .p-card a {
      display: block;
      color: #3c3c3c;
    }

  /*-------------------------
  Shop
  -------------------------*/
  .p-card__shop {}
    .p-card__shop a {
      padding: 5px 10px 10px 10px;
    }
      .p-card__shop .p-card__header {
        position: relative;
        display: -webkit-flex;
        display: flex;
        height: 38px;
        align-items: center;
      }
        .p-card__shop .p-shop__logo {
          border: 1px solid #ddd0bf;
          border-radius: 50%;
          width: 26px;
          height: 26px;
          box-sizing: border-box;
          overflow: hidden;
          flex-shrink: 0;
        }
          .p-card__shop .c-shop__logo {
            width: 24px;
            height: 24px;
            display: block;
            object-fit: contain;
            object-position: center;
            font-family: 'object-fit: cover; object-position: center;';
          }
         .p-card__shop .c-shop__name {
           margin: 0 40px 0 5px;
           font-size: 13px;
           font-weight: bold;
           line-height: 1.2;
           overflow: hidden;
           text-overflow: ellipsis;
           display: -webkit-box;
           -webkit-box-orient: vertical;
           -webkit-line-clamp: 2;
           word-break: break-all;
         }
         .p-card__shop .p-btn__favorite {
           padding: 1px;
           border: 1px solid #ddd0bf;
           border-radius: 0 5px 0 5px;
           box-sizing: border-box;
           display: block;
           position: absolute;
           top: -1px;
           right: -1px;
           background: #fff;
           z-index: 100;
         }
           .p-card__shop .c-icon__star {
             width: 38px;
             height: 38px;
             font-size: 30px;
           }
       .p-card__shop .p-card__body {
         margin-top: 10px;
         text-align: center;
       }
         .p-card__shop .p-thumb-list {
           display: -webkit-flex;
           display: flex;
           -webkit-justify-content: space-between;
           -webkit-box-pack: justify;
           justify-content: space-between;
         }
           .p-card__shop .p-shop__thumb {
             width: 32.1%;
             height: 66px;
             overflow: hidden;
             object-fit: cover;
             background: #eee;
             font-family: 'object-fit: cover; object-position: center;';
             text-align: center;
           }
             .p-card__shop .c-shop__thumb {
               display: block;
               width: 100%;
               height: 66px;
               object-fit: cover;
               object-position: center;
               font-family: 'object-fit: cover; object-position: center;';
             }
         .p-card__shop .p-notification-list {
           margin-top: 15px;
         }
           .p-card__shop .c-notification-list {
             display: -webkit-flex;
             display: flex;
             -webkit-justify-content: space-around;
             justify-content: space-around;
           }
             .p-card__shop .c-notification-list li  {
               position: relative;
               width: 25%;
             }
             .p-card__shop .c-notification-list li:nth-child(n+2):before {
               position: absolute;
               top: 4px;
               left: 0;
               content: "";
               height: 16px;
               border-left: 1px solid #ddd0bf;
             }
           .p-card__shop .c-event-calendar {
             margin-top: 15px;
             border: 1px solid #ddd0bf;
             border-collapse: collapse;
             width: 100%;
             font-size: 10px;
           }
             .p-card__shop .c-event-calendar tr > *:first-child {
               background: #f4f2ea;
             }
             .p-card__shop .c-event-calendar th {
               padding: 5px 0;
               border-right: 1px solid #ddd0bf;
               font-weight: normal;
             }
             .p-card__shop .c-event-calendar td {
               padding-bottom: 5px;
               border-right: 1px solid #ddd0bf;
               font-weight: normal;
             }
             .p-card__shop .c-calendar__sat {
               color: #6370d6;
             }
             .p-card__shop .c-calendar__sun {
               color: #dd6458;
             }
         .p-card__shop .c-message {
           color: #aca69f;
           font-size: 14px;
         }

  /*-------------------------
  Chirashi
  -------------------------*/
  .p-card__chirashi {}
    .p-card__chirashi .p-card__body {
      padding: 10px;
      display: -webkit-flex;
      display: flex;
    }
      .p-chirashi__thumb {
        width: 150px;
        height: 93px;
        overflow: hidden;
        flex-shrink: 0;
      }
        .p-card__chirashi .c-chirashi__thumb {
          width: 100%;
          height: 93px;
          object-fit: cover;
          font-family: 'object-fit: cover; object-position: center;';
        }
      .p-chirashi__text {
        margin-left: 10px;
        line-height: 1.2;
      }
        .p-chirashi__text .c-chirashi__shop-name {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          overflow: hidden;
          font-size: 13px;
          font-weight: bold;
          text-overflow: ellipsis;
          word-break: break-all;
        }
        .p-chirashi__text .c-chirashi__title {
          margin-top: 6px;
          display: -webkit-box;
          -webkit-box-orient: vertical;
           -webkit-line-clamp: 4;
          overflow: hidden;
          font-size: 13px;
          font-weight: bold;
          text-overflow: ellipsis;
          word-break: break-all;
        }
        .p-chirashi__text .c-chirashi__shop-name + .c-chirashi__title {
           -webkit-line-clamp: 2;
          font-size: 11px;
          font-weight: normal;
        }
        .p-card__chirashi .cl_ticker {
           width: 4em;
          left: 170px;
          bottom: 10px;
        }
        .p-card__chirashi .cl_other_shop {
          right: 10px;
          bottom: 10px;
        }

  /*-------------------------
  Coupon
  -------------------------*/
  .p-card__coupon {
    border: 0;
    background: none;
  }
    .p-card__coupon .p-card__body {
      display: -webkit-flex;
      display: flex;
    }
      .p-coupon__thumb {
        padding: 5px;
        border-top: 1px solid #e61e0a;
        border-bottom: 1px solid #e61e0a;
        border-left: 1px solid #e61e0a;
        border-radius: 5px 10px 10px 5px;
        width: 100px;
        height: 100px;
        overflow: hidden;
        flex-shrink: 0;
        background: #ffdad6;
      }
      .p-card__coupon.is-used .p-coupon__thumb:before {
        margin: 1px;
        border-radius: 5px 10px 10px 5px;
        content: "";
        width: 109px;
        height: 110px;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        background: #ffdad6;
        opacity: .8;
      }
      .p-card__coupon.is-used .p-coupon__thumb:after {
        padding: 3px 10px;
        content: "ご使用済み";
        position: absolute;
        top: 43px;
        left: 14.5px;
        color: #fff;
        background: #ACA69F;
        font-size: 12px;
      }
        .p-card__coupon .c-coupon__thumb {
          width: 100%;
          height: 100px;
          object-fit: cover;
          font-family: 'object-fit: cover; object-position: center;';
        }
      .p-coupon__text {
        padding: 10px;
        border-top: 1px solid #e61e0a;
        border-right: 1px solid #e61e0a;
        border-bottom: 1px solid #e61e0a;
        border-left: 1px dashed #e61e0a;
        border-radius: 10px 5px 5px 10px;
        position: relative;
        background: #fff;
        line-height: 1.2;
        -webkit-flex-grow: 1;
        flex-grow: 1;
      }
        .p-coupon__text .c-coupon__title {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          overflow: hidden;
          color: #e61e0a;
          font-size: 14px;
          font-weight: bold;
          text-overflow: ellipsis;
          word-break: break-all;
        }
        .p-coupon__text .c-coupon__amount {
          margin-top: 6px;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          overflow: hidden;
          font-size: 10px;
          text-overflow: ellipsis;
          word-break: break-all;
        }
        .p-coupon__text .c-coupon__limited {
          position: absolute;
          right: 10px;
          bottom: 10px;
          width: 90%;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          overflow: hidden;
          color: #e61e0a;
          font-size: 12px;
          font-weight: bold;
          text-align: right;
          text-overflow: ellipsis;
          word-break: break-all;
        }

  /*-------------------------
  Pickup
  -------------------------*/
  .p-card__pickup {}
    .p-card__pickup .p-card__body {
      padding: 10px;
      display: -webkit-flex;
      display: flex;
    }
      .p-pickup__thumb {
        width: 100px;
        height: 100px;
        overflow: hidden;
        flex-shrink: 0;
      }
        .p-card__pickup .c-pickup__thumb {
          width: 100%;
          height: 100px;
          object-fit: cover;
          font-family: 'object-fit: cover; object-position: center;';
        }
      .p-pickup__text {
        margin-left: 10px;
        position: relative;
        line-height: 1.2;
        -webkit-flex-grow: 1;
        flex-grow: 1;
      }
        .p-card__pickup .c-pickup__title {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          overflow: hidden;
          font-size: 14px;
          font-weight: bold;
          text-overflow: ellipsis;
          word-break: break-all;
        }
        .p-card__pickup .c-pickup__amount {
          margin-top: 6px;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          overflow: hidden;
          font-size: 10px;
          text-overflow: ellipsis;
          word-break: break-all;
        }
        .p-card__pickup .c-pickup__price {
          position: absolute;
          right: 0;
          bottom: 0;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 1;
          overflow: hidden;
          color: #e61e0a;
          font-size: 20px;
          font-weight: bold;
          text-overflow: ellipsis;
          word-break: break-all;
        }
          .c-pickup__price span {
            font-size: 10px;
          }

  /*-------------------------
  Timeline
  -------------------------*/
  .p-card__timeline {}
    .p-card__timeline .p-card__body {
      padding: 10px;
      display: -webkit-flex;
      display: flex;
    }
      .p-timeline__thumb {
        width: 100px;
        height: 100px;
        overflow: hidden;
        flex-shrink: 0;
      }
        .p-card__timeline .c-timeline__thumb {
          width: 100%;
          height: 100px;
          object-fit: cover;
          font-family: 'object-fit: cover; object-position: center;';
        }
      .p-timeline__text {
        margin-left: 10px;
        line-height: 1.2;
      }
        .p-timeline__text .c-timeline__title {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 2;
          overflow: hidden;
          font-size: 14px;
          font-weight: bold;
          text-overflow: ellipsis;
          word-break: break-all;
        }
        .p-timeline__text .c-timeline__introduction {
          margin-top: 6px;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 3;
          overflow: hidden;
          font-size: 12px;
          text-overflow: ellipsis;
          word-break: break-all;
        }

  /*-------------------------
  Event
  -------------------------*/
  .p-calendar__inner {
    border-right: 1px solid #ddcfbe;
    border-left: 1px solid #ddcfbe;
    border-radius: 0;
    width: 100%;
    box-sizing: border-box;
    display: table;
    background: #fff;
  }
  .p-calendar__inner:first-child {
    border-top: 1px solid #ddcfbe;
    border-radius: 5px 5px 0 0;
  }
  .p-calendar__inner:nth-child(n+2) {
    border-top: 1px solid #ddcfbe;
  }
  .p-calendar__inner:last-child {
    border-bottom: 1px solid #ddcfbe;
    border-radius: 0 0 5px 5px;
  }
    .p-calendar__date {
      padding: 15px 5px;
      width: 40px;
      box-sizing: border-box;
      display: table-cell;
      background: #f8f4f0;
      text-align: center;
      vertical-align: middle;
      line-height: .9;
    }
    .p-calendar__inner:first-of-type .p-calendar__date {
      border-top-left-radius: 5px;
    }
    .p-calendar__inner:last-of-type .p-calendar__date {
      border-bottom-left-radius: 5px;
    }
    .p-calendar .c-calendar__sat {
      color: #6370d6;
      background: #f0f3fa;
    }
    .p-calendar .c-calendar__sun {
      color: #dd6458;
      background: #fcecec;
    }
      .p-calendar__inner span {
        display: inline-block;
      }
      .c-calendar__date{
        font-size: 18px;
        font-weight: bold;
      }
      .c-calendar__day {
        font-size: 10px;
      }
    .p-calendar .l-card-list {
      padding: 0 10px;
      display: table-cell;
      vertical-align: middle;
    }
    .p-calendar:nth-child(2) .p-calendar__inner:first-child .l-card-list {
      border-top-right-radius: 5px;
      background: #fffee2;
    }
      .p-card__event {
        padding: 15px 0;
        border: none;
        background: none;
      }
      .p-card__event:nth-child(n+2) {
        margin: 0;
        border-top: 1px solid #ddcfbe;
      }
        .p-card__event .p-card__body {
          display: -webkit-flex;
          display: flex !important;
          -webkit-justify-content: space-between;
          -webkit-box-pack: justify;
          justify-content: space-between;
          align-items: center;
        }
          .c-event__title {
            font-size: 14px;
            font-weight: bold;
          }
          .p-event__thumb {
            margin-left: 10px;
            width: 52px;
            height: 52px;
            overflow: hidden;
            flex-shrink: 0;
          }
            .p-card__event .c-event__thumb {
              height: 52px;
              height: 52px;
              object-fit: cover;
              font-family: 'object-fit: cover; object-position: center;';
            }

.dialog_wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 84%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
  .dialog {
    margin: 0;
  }
  #appdl_spfavdialog a {
    margin-top: 20px;
    display: block;
  }

/*-------------------------
Modal
-------------------------*/
.l-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2147483647;
  width: 100%;
  height: 100%;
  display: none;
  background: rgba(0,0,0,.8);
}
.l-overlay.is-open {
  display: block;
}
.p-modal {
  border-radius: 5px;
  position: absolute;
  top: 10%;
  left: 8%;
  width: 84%;
  height: 70%;
  background: #fff;
}
  .p-modal__content {
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
    .p-modal__header {
      padding: 8px 10px;
      border-radius: 5px 5px 0 0;
      color: #fff;
      font-size: 14px;
      font-weight: bold;
      text-align: center;
    }
    .p-modal__coupon .p-modal__header {
      background: #fe7e2e;
    }
    .p-modal__pickup .p-modal__header {
      background: #4cba59;
    }
    .p-modal__event .p-modal__header {
      background: #9e6bc9;
    }
      .p-modal__header.c-icon:before {
        margin-right: 5px;
        color: #fff;
        font-size: 20px;
        vertical-align: -3px;
      }
    .c-modal__period {
      font-size: 12px;
    }
      .l-screen__03 .c-modal__period {
        margin-top: 5px;
        text-align: center;
      }
    .p-modal__body {
      padding: 15px 20px;
    }
    .p-modal__coupon .p-modal__body.l-screen__01 {
      padding-bottom: 112px;
    }
    .p-modal__coupon .p-modal__body.l-screen__02 {
      padding-bottom: 164px;
    }
      .c-modal__locality {
        padding: 2px 5px;
        border: 1px solid #ddcfbe;
        border-radius: 5px;
        display: inline-block;
        font-size: 10px;
        line-height: 1.2;
      }
      .c-modal__title {
        font-size: 14px;
      }
        .c-modal__locality + .c-modal__title {
          margin-top: 5px;
        }
        .p-modal__coupon .c-modal__title {
          text-align: center;
        }
        .l-screen__02 .c-modal__title {
          font-weight: bold;
        }
      .c-modal__shop-name {
        font-size: 14px;
        font-weight: bold;
        text-align: center;
      }
        .p-modal__event .c-modal__shop-name {
          font-size: 12px;
          font-weight: normal;
          text-align: left;
        }
      .p-modal__thumb {
        margin: 15px 0;
        text-align: center;
      }
      .p-modal__thumb:first-child {
        margin-top: 0;
      }
        .c-modal__thumb {
          width: 100%;
          max-height: 230px;
          display: block;
          object-fit: contain;
          object-position: center;
          font-family: 'object-fit: contain; object-position: center;';
        }
        .l-screen__03 .c-modal__thumb {
          max-height: 80px;
        }
      .c-modal__amount {
        margin-top: 5px;
        font-size: 10px;
      }
      .c-modal_limited {
        margin-top: 10px;
        color: #e61e0a;
        font-size: 10px;
      }
        .p-modal__coupon .c-modal_limited {
          text-align: center;
        }
      .c-modal__price {
        margin-top: 15px;
        color: #e61e0a;
        font-size: 20px;
        font-weight: bold;
        text-align: right;
      }
        .c-modal__price span {
          font-size: 10px;
        }
      .c-modal__copy {
        margin-top: 15px;
        font-size: 14px;
        font-weight: bold;
      }
      .c-modal__text {
        margin-top: 15px;
        font-size: 14px;
        line-height: 1.4;
      }
        .c-modal__copy + .c-modal__text {
          margin-top: 10px;
        }
        .c-modal__text .c-list__note {
          margin: 20px 0;
          font-size: 12px;
        }
          .c-modal__text .c-list__note li {
            padding-left: 2em;
            text-indent: -2em;
          }
      .c-modal__note {
        color: #e61e0a;
        font-size: 12px;
        text-align: center;
      }
        .p-modal_use .c-modal__note {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 3;
          overflow: hidden;
          text-overflow: ellipsis;
          word-break: break-all;
        }
      .l-modal__message {
        margin: -15px -20px 20px -20px;
        padding: 10px;
        background: #fffdc9;
      }
        .p-modal__message {
          margin: 0 auto;
          max-width: 320px;
          display: table;
          box-sizing: border-box;
          position: relative;
        }
        .p-modal__message:before {
          padding-right: 10px;
          content: "";
          width: 93px;
          height: 78px;
          display: table-cell;
          background: url(/s/img/share/coupon_kero@2x.png) no-repeat left top;
          background-size: 93px;
        }
        .c-message__text {
          display: table-cell;
          font-size: 16px;
          font-weight: bold;
          line-height: 1.4;
          vertical-align: middle;
        }
      .l-modal__action {
        margin-left: -20px;
        padding: 20px 10px;
        border-radius: 0 0 5px 5px;
        width: 84%;
        box-sizing: border-box;
        position: fixed;
        bottom: 20%;
        background: rgba(255,255,255,.88);
      }
        .l-modal__action [class^="c-btn"] {
          margin-top: 10px;
        }
        .l-modal__action .c-btn__use-coupon {
          margin: 0;
        }
          .c-modal__note + .c-btn__use-coupon {
            margin-top: 10px;
          }
        .l-modal__action .c-btn__favorite .c-icon__star:before {
          margin-right: 4px;
          display: inline-block;
          color: #fff;
          font-size: 24px;
          vertical-align: -5px;
        }
        .c-check__agree {
          margin: 0 0 15px 0;
          padding: 12px 10px;
          border: 1px solid #ccc;
          border-radius: 5px;
          display: block;
          color: #3c3c3c;
          font-size: 14px;
          text-align: center;
        }
        .l-modal__action .c-icon__check:before {
          margin-right: 5px;
          vertical-align: -2px;
        }
        .l-modal__action .c-icon__check.is-check:before {
          color: #e61e0a;
        }
          .c-check__agree input {
            display: none;
          }
        .c-text__used-coupon {
          padding: 15px 10px;
          border-radius: 5px;
          color: #fff;
          background: #ccc;
          font-weight: bold;
          font-size: 14px;
          text-align: center;
          line-height: 1;
        }
    .p-modal__button {
      width: 100%;
      position: absolute;
      bottom: -45px;
      left: 0;
      font-size: 16px;
      text-align: center;
    }
    .p-modal .c-btn__close {
      display: inline-block;
      color: #fff;
    }

/*-------------------------
Icon
-------------------------*/
  [class^="c-icon"], [class*=" c-icon"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'item_v5', ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: top;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .c-notification .c-icon {
    font-size: 20px;
  }
  .c-notification__event .c-icon {
    font-size: 12px;
  }
  .c-icon.is-none:before {
    color: #ddcfbe;
  }
  .c-icon__flyer:before {
    content: "\e900";
    color: #dd6458;
  }
  .c-icon__coupon:before {
    content: "\e901";
    color: #ff7e2e;
  }
  .c-icon__pickup:before {
    content: "\e902";
    color: #4cba59;
  }
  .c-icon__timeline:before {
    content: "\e903";
    color: #2da2eb;
  }
  .c-icon__event:before {
    content: "\e907";
    color: #9e6bc9;
  }
  .c-icon__eventflag:before {
    content: "\e904";
    color: #dd6458;
  }
  .c-icon__shopdetail:before {
    content: "\e908";
    color: #fa95db;
  }
  .c-icon__star:before {
    content: "\e906";
    color: #ddcfbe;
  }
  .c-icon__star.is-active:before {
    content: "\e905";
    color: #ffa72e;
  }
  .c-icon__atm:before {
    content: "\e909";
    font-size: 25px;
  }
  .c-icon__liquor:before {
    content: "\e90a";
    font-size: 25px;
  }
  .c-icon__cigarette:before {
    content: "\e90b";
    font-size: 25px;
  }
  .c-icon__elevator:before {
    content: "\e90c";
    font-size: 25px;
  }
  .c-icon__restroom:before {
    content: "\e90d";
    font-size: 25px;
  }
  .c-icon__restroom-accessible:before {
    content: "\e90e";
    font-size: 25px;
  }
  .c-icon__baby-room:before {
    content: "\e90f";
    font-size: 25px;
  }
  .c-icon__break-room:before {
    content: "\e910";
    font-size: 25px;
  }
  .c-icon__recycle-box:before {
    content: "\e911";
    font-size: 25px;
  }
  .c-icon__delivery:before {
    content: "\e912";
    font-size: 25px;
  }
  .c-icon__id-photo:before {
    content: "\e913";
    font-size: 25px;
  }
  .c-icon__tax-free:before {
    content: "\e914";
    font-size: 25px;
  }
  .c-icon__service-counter:before {
    content: "\e915";
    font-size: 25px;
  }
  .c-icon__map:before {
    content: "\e916";
    font-size: 17px;
  }
  .c-icon__arrow:after {
    content: "\e917";
    font-size: 20px;
  }
  .c-icon__info:before {
    content: "\e918";
    color: #aca69f;
    font-size: 20px;
  }
  .c-icon__check:before {
    content: "\e919";
    color: #ccc;
    font-size: 18px;
  }
  .c-icon__close {
    margin-right: 10px;
    border-radius:15px;
    content: "";
    width: 30px;
    height: 30px;
    display: inline-block;
    position: relative;
    background: #fff;
    vertical-align: -8px;
  }
    .p-modal__button .c-icon__close:before,
    .p-modal__button .c-icon__close:after {
      border-radius: 1px;
      content: "";
      width: 16px;
      height: 2px;
      display: block;
      position: absolute;
      top: 48%;
      left: 24%;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      background: #3c3c3c;
    }
    .p-modal__button .c-icon__close:after {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
    }

/*-------------------------
Badge
-------------------------*/
.c-badge {
  margin-left: 5px;
  padding: 3px;
  border-radius: 8px;
  min-width: 16px;
  box-sizing: border-box;
  display: inline-block;
  color: #fff;
  background: #3c3c3c;
  font-size: 10px;
  line-height: 1;
  vertical-align: 5px;
  animation: anim-icon 0.3s ease-out;
  -webkit-animation: anim-icon 0.3s ease-out;
  transform-origin: 50% 50%;
  -webkit-transform-origin: 50% 50%;
}
  .c-badge__flyer {
    background-color: #dd6458;
  }
  .c-badge__coupon {
    background-color: #ff7e2e;
  }
  .c-badge__pickup {
    background-color: #4cba59;
  }
  .c-badge__timeline {
    background-color: #2da2eb;
  }
  @-webkit-keyframes anim-icon {
    0% {
      transform: scale(0.4);
      -webkit-transform: scale(0.4);
    }
    50% {
      transform: scale(1.2);
      -webkit-transform: scale(1.2);
    }
    100% {
      transform: scale(1);
      -webkit-transform: scale(1);
    }
  }

/*-------------------------
Shop detail
-------------------------*/
.p-title__shopdetail {
  padding: 10px;
  display: -webkit-flex;
  display: flex;
  height: 38px;
  color: #fff;
  background-color: #3c3c3c;
  align-items: center;
}
  .p-title__shopdetail .p-shop__logo {
    border: 1px solid #ddd0bf;
    border-radius: 50%;
    width: 26px;
    height: 26px;
    box-sizing: border-box;
    overflow: hidden;
    flex-shrink: 0;
  }
    .p-title__shopdetail .c-shop__logo {
      width: 24px;
      height: 24px;
      display: block;
      object-fit: contain;
      object-position: center;
      font-family: 'object-fit: cover; object-position: center;';
      background: #fff;
    }
    .p-title__shopdetail .c-shop__name {
      margin-left: 10px;
      font-size: 13px;
      font-weight: bold;
      line-height: 1.5;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      word-break: break-all;
    }

.p-tab__shopdetail {
  border-top: 1px solid #ddd0bf;
  width: 100%;
  height: 54px;
}
  .p-tab__shopdetail ul {
    border-bottom: 1px solid #ddd0bf;
    border-collapse: collapse;
    display: table;
    table-layout: fixed;
    width: 100%;
    background: #fff;
  }
    .p-tab__shopdetail li {
      border-left: 1px solid #ddd0bf;
      border-collapse: collapse;
      display: table-cell;
      position: relative;
      text-align: center;
      vertical-align: middle;
    }
    .p-tab__shopdetail li:first-child {
      border-left: none;
    }
      .p-tab__shopdetail .c-icon {
        padding: 30px 5px 4px 5px;
        display: table-cell;
        width: 1000px;
        height: 20px;
        color: #707070;
        font-size: 20px;
        vertical-align: middle;
      }
      .p-tab__shopdetail .c-icon.is-none {
        color: #ddcfbe;
      }
      .p-tab__shopdetail .c-icon:before {
        margin-left: -10px;
        position: absolute;
        top: 6px;
        left: 50%;
      }
      .p-tab__shopdetail span {
        display: block;
        font-size: 10px;
      }

#chirashiViewer {
  margin: -54px 0 0 0;
  padding-top: 55px;
}
  #cross {
    padding: 15px 0 10px 0;
    background: #fff;
  }
  .chirashi_viewer {
    margin: 0;
    text-align: center;
  }
  .chirashi_viewer_info {
    margin: 10px auto 0 auto;
    padding: 0;
    display: inline-block;
    position: relative;
    color: #aca69f;
    font-size: 12px;
    font-weight: normal;
  }
  .chirashi_viewer_info:before {
    position: absolute;
    top: -3px;
    left: -24px;
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(/s/img/share/pinch.png) no-repeat left top;
    background-size: 20px auto;
  }
  .chirashi_info {
    margin: 0;
    padding: 10px;
    color: #fff;
    background: #666;
  }
    .chirashi_title {
      margin-bottom: 5px;
    }
    .chirashi_period {
      font-size: 12px;
    }

.c-title__section.c-icon {
  padding: 0;
  display: table;
  width: 100%;
}
#c-section__shopdetail + .l-section .c-title__section.c-icon__flyer {
  background: #dd6458;
}
  .c-title__section.c-icon span {
    padding: 10px;
    display: table-cell;
    font-weight: bold;
    vertical-align: middle;
  }
  #c-section__shopdetail + .l-section .c-title__section.c-icon__flyer span {
    padding-left: 0;
  }
  .c-title__section.c-icon:before {
    padding: 8px 8px;
    width: 36px;
    box-sizing: border-box;
    display: table-cell;
    color: #fff;
    font-size: 20px;
    vertical-align: middle;
  }
  .c-title__section.c-icon__flyer:before {
    background: #dd6458;
  }
  .c-title__section.c-icon__coupon:before {
    background: #fe7e2e;
  }
  .c-title__section.c-icon__pickup:before {
    background: #4cba59;
  }
  .c-title__section.c-icon__timeline:before {
    background: #2da2eb;
  }
  .c-title__section.c-icon__event:before {
    background: #9e6bc9;
  }
  .c-title__section.c-icon__shopdetail:before {
    background: #fa95db;
  }
.c-title__section.c-title__favorite {
  background: #fead0a;
}
.c-title__calendar {
  margin-bottom: 15px;
  font-size: 14px;
  text-align: center;
  line-height: 1;
}
.c-title__calendar:nth-child(n+2) {
  margin-top: 15px;
}

a.contents_chirashi_DB {
  border: none !important;
  background-color: #ffdad6 !important;
}
  input.contents_chirashi_DB_button {
    border: 1px solid #e61e0a !important;
    color: #e61e0a !important;
  }

.p-shop__info {
  padding: 15px 10px 35px 40px;
  position: relative;
  font-size: 12px;
  line-height: 1.6;
  height: auto;
}
.p-shop__info.is-close {
  padding-bottom: 15px;
}
  .p-shop__info:before {
    position: absolute;
    top: 17px;
    left: 10px;
  }
  .p-shop__info .p-info__text {
    height: 38px;
    overflow: hidden;
    transition: all 0.2s;
  }
  .p-shop__info .c-link__more {
    display: inline-block;
    padding-right: 20px;
    position: absolute;
    right: 10px;
    bottom: 15px;
    color: #aca69f;
    background: #f4f0ea;
    font-size: 12px;
    line-height: 1.6;
  }
  .p-shop__info .c-icon__arrow:after {
    position: absolute;
    right: 0;
    top: -6px;
    transform: rotate(180deg);
  }
  .p-shop__info.is-close .c-icon__arrow:after {
    top: -5px;
    transform: rotate(0deg);
  }
  .is-clone {
    display: none;
    position: absolute;
    overflow: visible;
  }
#c-section__shopdetail {
  background: transparent;
}
  #c-section__shopdetail .l-section__inner {
    background: #fff;
  }
  .p-shopdetail {}
  .p-shop-equipment {
    border-top: 1px solid #ddcfbe;
  }
  .c-title__shopdetail {
    font-size: 14px;
  }
    .p-shop-equipment .c-title__shopdetail {
      margin-top: 15px;
    }
  .l-shop__image {
    margin-top: 15px;
    display: -webkit-flex;
    display: flex;
  }
    .p-shop__image {
      width: 50%;
      height: 150px;
      overflow: hidden;
    }
    .l-shop__image .c-shop__image {
      width: 100%;
      height: 150px;
      object-fit: cover;
      font-family: 'object-fit: cover; object-position: center;';
    }
  .p-service-list {}
    .c-service__name {
      position: relative;
      padding: 13px 0 13px 35px;
      box-sizing: border-box;
      float: left;
      font-size: 12px;
    }
    .c-service__name:nth-child(2n+1) {
      padding-right: 15px;
      width: 57%;
    }
    .c-service__name:nth-child(2n) {
      width: 43%;
    }
     .c-service__name:before {
       position: absolute;
       top: 7px;
       left: 0;
     }

#p-btn__favorite {
  padding-left: 36px;
  position: fixed;
  right: -10px;
  bottom: -15px;
  display: none;
  z-index: 80000;
}
#p-btn__favorite.is-show {
  display: block;
  animation: anim-kero 0.3s ease-out;
  -webkit-animation: anim-kero 0.3s ease-out;
  transform-origin: bottom right;
  -webkit-transform-origin: bottom right;
}
  @-webkit-keyframes anim-kero {
    0% {
      transform: scale(0.4);
      -webkit-transform: scale(0.4);
    }
    50% {
      transform: scale(1.2);
      -webkit-transform: scale(1.2);
    }
    100% {
      transform: scale(1);
      -webkit-transform: scale(1);
    }
  }
#p-btn__favorite:before {
  content: "";
  display: block;
  width: 57px;
  height: 72.5px;
  position: absolute;
  top: 11px;
  left: 0;
  background: url(/s/img/share/fav_kero--body@2x.png) no-repeat left top;
  background-size: 57px auto;
}
#p-btn__favorite:after {
  content: "";
  display: block;
  width: 26px;
  height: 30px;
  position: absolute;
  top: 28px;
  left: 24px;
  background: url(/s/img/share/fav_kero--hand@2x.png) no-repeat left top;
  background-size: 26px auto;
}
  #p-btn__favorite .c-icon__star {
    padding: 8px 10px 22px 10px;
    border-radius: 50%;
    width: 78px;
    height: 78px;
    box-sizing: border-box;
    filter: drop-shadow(0 0 8px rgba(0,0,0,0.2));
    background: #fff;
    font-size: 34px;
    text-align: center;
  }
  #p-btn__favorite .c-icon__star.is-active {
    background: #fffdc9;
  }
  #p-btn__favorite .c-text__favorite {
    font-size: 10px;
  }

.adArea {
  margin: -1px 0;
  padding: 1px 0;
  background: #fff;
}

/*-------------------------
favorite
-------------------------*/
.p-banner__addfav {
  margin: 0 -10px -15px -10px;
  text-align: center;
}
  .c-banner__addfav  {
    width: 100%;
  }
.p-title__favorite {
  margin-bottom: 15px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -webkit-box-pack: justify;
  justify-content: space-between;
}
  .p-title__favorite .c-title__favorite {
    font-size: 14px;
  }
  .p-title__favorite .c-results__favorite {
    font-size: 12px;
  }

/*-------------------------
Ad
-------------------------*/
.l-section__inner [id^="div-gpt-ad"] {
  margin-right: -20px !important;
  margin-left: -20px !important;
}
