/*new cassette */
/*card*/
.shop-card {
    border-radius: 8px;
    overflow: hidden;
    padding-bottom: 0px;
}
.shop-card:first-child {
    margin-top: 20px;
}
/*label*/
.shop-card .label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.shop-card .label li {
    width: calc(100% / 3);
    white-space: nowrap;
    padding: 9px 12px;
    margin-right: 1px;
    color: #fff;
    font-weight: bold;
    overflow: hidden;
    text-overflow: ellipsis;
}
.shop-card .label li.label__goto {
    background-color: #A57E49; 
}
.shop-card .label li.label__best-chef {
    background-color: #BD9C61;
}
.shop-card .label li.label__premium {
    background-color: #ADADAD;
}
.shop-card .label li.label__recommend {
    background-color: #B2794B;
}
.shop-card .label li:last-child {
    margin-right: 0;
}
.shop-card .label li:only-child {
    width: 100%;
}
.shop-card .label li:first-child:nth-last-child(2), .shop-card .label li:first-child:nth-last-child(2) ~ li {
    width: calc(100% / 2);
}
/*main-area*/
.shop-card .main-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
/*img*/
.shop-card .main-wrapper .shop-image {
    width: 320px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.shop-card .main-wrapper .shop-image li:first-child {
    width: 100%;
    margin-bottom: 1px;
}
.shop-card .main-wrapper .shop-image li:first-child img {
    max-height: none;
    min-height: 240px;
    height: 240px;
}
.shop-card .main-wrapper .shop-image li:only-child {
    margin-bottom: 0;
}
.shop-card .main-wrapper .shop-image li {
    width: calc(319px / 2);
}
.shop-card .main-wrapper .shop-image li.load + li.load::before {
    display: none;
}
.shop-card .main-wrapper .shop-image li img {
    max-height: 120px;
}
.shop-card .main-wrapper .shop-image li:first-child:nth-child(2),
.shop-card .main-wrapper .shop-image li:first-child:nth-last-child(2) ~ li {
    width: 100%;
}
.shop-card .main-wrapper .shop-image li:first-child:nth-child(2) img,
.shop-card .main-wrapper .shop-image li:first-child:nth-last-child(2) ~ li img {
    width: 100%;
    height: 120px;
    object-fit: cover;
}
.shop-card .card-top {
    min-width: 320px;
}
/*right-area*/
.shop-card .main-wrapper .shop-info-wrapper {
    width: 460px;
}
/*user-area*/
.shop-card .shop-card-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 10px 10px 10px 20px;
    border-bottom: 1px solid #f4f4f4;
    justify-content: space-between;
}
.shop-card .shop-card-head .shop-card-head-basic {
    display: flex;
    align-items: center;
    flex: 1;
}
.shop-card .shop-card-head .person-photo-wrapper {
    display: flex;
}
.shop-card .shop-card-head .shop-card-head__rank {
    min-width: 40px;
    min-height: 40px;
    line-height: 40px;
    border-radius: 4px;
    background-color: #333;
    text-align: center;
    font-size: 20px;
    color: #A57E49;
    font-weight: bold;
    margin-right: 10px;
    display: inline-block;
}
.shop-card .shop-card-head .owner-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    margin-right: 10px;
}
.shop-card .shop-card-head .head-inner {
    flex-grow: 1;
    margin-right: 10px;
    display: inline-block;
}
.shop-card .shop-card-head .head-inner .head-inner__shop-name {
    font-weight: bold;
    position: static;
    background: transparent;
    padding: 0;
    text-overflow: ellipsis;
    margin-right: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    white-space: break-spaces;
    text-shadow: none;
}
.shop-card .shop-card-head .head-inner .head-inner__shop-type {
    overflow: hidden;
    text-overflow: ellipsis;
    margin-right: 0;
    margin-top: 5px;
    white-space: nowrap;
    font-weight: bold;
    font-size: 10px;
    width: 310px;
}
.card--rank .shop-card .shop-card-head .head-inner .head-inner__shop-type{
    width:260px;
}
.shop-card .shop-card-head .head-inner .head-inner__shop-type a {
    color: #ADADAD;
    font-weight: bold;
}
.shop-card .shop-card-head .user-action {
    width: max-content;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.shop-card .shop-card-head .user-action a, .shop-card .shop-card-head .user-action p {
    font-size: 10px;
    font-weight: bold;
    color: #ADADAD;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    width: max-content;
}
.shop-card .shop-card-head .user-action .user-action__archive {
    margin-right: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.shop-card .shop-card-head .user-action a span,
.shop-card .shop-card-head .user-action p.user-action__archive span {
    margin-bottom: 5px;
    font-size: 20px;
    font-weight: normal;
    transform: none;
}
.shop-card .shop-card-head .user-action .user-action__went,
.shop-card .shop-card-head .user-action .user-action__went--on {
    margin-top: -5px;
}
.user-action input {
    display: none;
}
.user-action .favorite--on,
.user-action .favorite--on .icon,
.user-action .user-action__went--on,
.user-action .user-action__went--on .icon {
    color: #A57E49 !important;
    animation: none;
}
/*shop info*/
.shop-card .shop-info-wrapper--inner {
    margin: 20px 20px 0;
}
.shop-info-wrapper .shop-info-wrapper__note {
    margin: 10px 0 0;
}
.shop-info-wrapper .shop-info-wrapper__note p{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.shop-card .shop-info {
    margin-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.shop-card .shop-info li {
    display: flex;
    align-items: center;
    margin-right: 10px;
}
.shop-card .shop-info li b {
    color: #8f8f8f;
    font-weight: normal;
    margin-right: 5px;
}
/*モノサシ情報*/
.shop-card .summary {
    margin-top: 10px;
    border-radius: 8px;
    overflow: hidden;
}
.shop-card .summary li {
    background-color: #f4f4f4;
    margin-bottom: 1px;
    padding: 11px 12px;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.shop-card .summary li a {
    font-weight: bold;
}
.shop-card .summary .summary__scene {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.shop-card .summary .summary__scene span.summary__scene-inner {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.shop-card .summary .summary__scene .summary__scene-link {
    width: max-content;
    font-weight: normal;
}
.summary .icon-chef-rec, .summary .icon-scene, .summary .icon-good {
    font-size: 20px;
    margin-right: 10px;
    color: #A57E49;
    font-weight: normal;
}
.summary .icon-chef-rec {
    margin-right: 12px;
}
/*recommend*/
.shop-card .recommend {
    margin: 10px 0;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #f4f4f4;
}
.shop-card .recommend .recommend__shop-name {
    font-weight: bold;
}
.shop-card .recommend .recommend__desc {
    margin-top: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.shop-card .recommend .recommend__desc span {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-right: 10px;
}
.shop-card .recommend .recommend__desc a {
    width: max-content;
    font-weight: normal;
}
/*tag*/
.shop-card .tag-list {
    margin-top: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}
.shop-card .tag-list .tag-list__item {
    margin: 5px 5px 0 0;
}
.shop-card .tag-list .tag-list__item a {
    display: inline-block;
    padding: 8px 12px;
    font-weight: normal;
}
.shop-card .tag-list .tag-list__item.htsr-point a {
    padding: 2px 12px 2px 2px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.shop-card .tag-list .tag-list__item.htsr-point a .cp{
    color: #a57e49;
    margin-right: 5px;
    font-weight: bold;
    font-size: 12px;
}
.shop-card .tag-list .tag-list__item.htsr-point a span {
    font-size: 24px;
    margin-right: 2px;
}
.shop-card .tag-list .tag-list__item.htsr-point a span::before {
    font-size: 24px;
}
/*course*/
.shop-card .course {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 10px;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #f4f4f4;
}
.shop-card .tag-list:last-child,
.shop-card .course:last-child {
    margin-bottom: 10px;
}
.shop-card .course .course__ttl {
    font-weight: bold;
    margin-bottom: 5px;
    word-break: break-all;
}
.shop-card .course .course__price {
    font-weight: bold;
    color: #8f8f8f;
}
.shop-card .course .course__price .course__price--before {
    color: #ADADAD;
    font-size: 14px;
}
.shop-card .course .course__price .course__price--after {
    color: #E26762;
}
.shop-card .course .course__desc {
    width: 100%;
    margin-top: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.shop-card .course .course__desc span {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-right: 10px;
}
.shop-card .course .course__desc .course__link {
    width: max-content;
    font-weight: normal;
}
/*calendar*/
.card-tab-time{
    padding:0 20px;
}
.shop-card .shop-calendar {
    margin: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow-x: scroll;
    overflow-y: hidden;
    flex-wrap: wrap;
}
.shop-card .shop-calendar::-webkit-scrollbar {  /* Chrome, Safari 対応 */
    display:none;
}
.card-time-btn{
    min-width: 92px;
}
.shop-card .shop-calendar .shop-calendar__ttl {
    width: max-content;
    margin-right: 10px;
    white-space: nowrap;
    font-size: 12px;
    color: #ADADAD;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.shop-card .shop-calendar .shop-calendar__ttl b {
    margin-bottom: 5px;
}
.shop-card .shop-calendar .calendar-scroll-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex: 1;
    overflow-x: scroll;
    overflow-y: hidden;  
    scroll-behavior: smooth;
    scroll-snap-type: inline;
}
.card-time-ttl + .shop-calendar .calendar-scroll-tab::-webkit-scrollbar {
    height: 10px;
    border-radius: 10px;
    opacity: 0;
}
.card-time-ttl + .shop-calendar .calendar-scroll-tab:hover::-webkit-scrollbar{
    opacity: 1;
}
.card-time-ttl + .shop-calendar .calendar-scroll-tab:hover::-webkit-scrollbar-thumb {
    display: block;
    transition: all .3s;
    cursor: pointer;
}
.card-time-ttl + .shop-calendar .calendar-scroll-tab::-webkit-scrollbar-thumb {
    background-color: #efefef;
    border-radius: 10px;
    display: none;
}
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item {
    margin-right: 1px;
    width: calc(100% / 14)!important;
    min-width: auto;
}
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-inner {
    display: inline-block;
    width: 100%;
    height: 100%;
    min-height: 44px;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
    padding: 10px 0;
    box-sizing: border-box;
}
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-day {
    color: #8f8f8f;
    line-height: 132%;
    margin-bottom: 5px;
}
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-inner,
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-inner .card-tab-select__day,
.shop-card .shop-calendar .card-tab-select__item--tel .calendar-scroll-tab__item-inner .card-tab-select__info {
    background-color: #f4f4f4;
}
.shop-card .shop-calendar .calendar-scroll-tab .card-tab-select__item--disabled .calendar-scroll-tab__item-inner,
.shop-card .shop-calendar .calendar-scroll-tab .card-tab-select__item--disabled .calendar-scroll-tab__item-inner .card-tab-select__day {
    background-color: #DDD;
    color: #ADADAD;
}
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item:first-child .calendar-scroll-tab__item-inner {
    border-radius: 4px 0 0 4px;
}
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item:last-child .calendar-scroll-tab__item-inner {
    border-radius: 0 4px 4px 0;
}


.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-inner .text--pup {
    color: #E26762;
    line-height: 132%;
    font-size: 10px;
    font-weight: normal;
    margin: 5px 0 0;
    padding: 0;
}
.shop-card .shop-calendar .calendar-scroll-tab__item.card-tab-select__item--disabled .calendar-scroll-tab__item-inner .calendar-scroll-tab__item-icon,
.card-tab-select__item--disabled .calendar-scroll-tab__item-inner .calendar-scroll-tab__item-day,
.shop-card .shop-calendar .calendar-scroll-tab .card-tab-select__item--disabled .calendar-scroll-tab__item-inner .text--pup,
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-inner .no-grant-point-rate {
    color: #ADADAD;
}

.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-inner .calendar-scroll-tab__item-icon {
    color: #E26762;
    font-size: 16px;
}
.card-tab-select__day {
    margin-bottom: 5px;
}
.shop-card .shop-calendar .calendar-scroll-tab .calendar-scroll-tab__item-inner .text--pup.icon-point:before {
	margin-right: 2px;
}
.shop-card .pup-area {
    background-color: #FAECEC;
    border-radius: 22px;
    color: #E26762;
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: bold;
    margin: 5px 20px;
    padding: 6px;
    width: calc(100% - 52px)
}
.shop-card .pup-area::before {
    font-size: 20px;
    margin-right: 10px;
    color: var(--secondary-color);
}
/*icon size*/
.icon-cook, .icon-cal {
    font-size: 20px;
}

.icon-moon::before,
.icon-sun::before {
    font-size: 12px;
}

/* 20240311_thumbsup-icon */
.summary .summary__user .icon-good:before {
  content: "\e960" !important;
}