﻿@charset "utf-8";
/*--------------------------------------------------------------------------------

  shop

--------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------
  .shop-info
--------------------------------------------------------------------------------*/
.shop-info {
  --ttl2-mgb: var(--space-s);
}
.shop-info_item {
  margin-top: var(--space-2l);
}
.shop-info_item:first-of-type {
  margin-top: var(--space-l);
}
.shop-info_item:last-of-type {
  margin-bottom: var(--space-s);
}

/*--------------------------------------------------------------------------------
  .shop-list
--------------------------------------------------------------------------------*/
.shop-list {
  --shop-list-width: 0;
  display: grid;
  position: relative;
}
.shop-list_area:not(:last-of-type) {
  margin-bottom: var(--space-2l);
}
.shop-list_ttl {
  --ttl3-mgb: 0;
}
@media not (max-width: 1000px) {
  .shop-list:has(.shop-list_nav) {
    --shop-list-width: 300;
    grid-template-columns: minmax(auto, min(calc(var(--shop-list-width) / var(--base-width) * 100%), calc(var(--shop-list-width) * 1px))) 1fr;
  }
}

/*--------------------------------------------------------------------------------
  .shop-list_nav
--------------------------------------------------------------------------------*/
.shop-list_nav {
  --link-color: var(--txt-color);
  --link-color-hover: var(--color-primary);
  --link-deco: none;
  --link-deco-hover: none;
}
.shop-list_nav {
  display: flex;
}
@media not (max-width: 1000px) {
  .shop-list_area-nav {
    position: sticky;
    left: 0;
    top: 0;
    align-self: start;
    padding-top: calc(var(--space-s) + 0.5rem);
    padding-left: 1rem;
  }
  .shop-list_nav {
    --link-color: var(--color-gray);
    row-gap: 0.5rem;
    flex-direction: column;
  }
  .shop-list_nav a {
    display: flex;
    align-items: center;
    column-gap: 0.75rem;
    cursor: pointer;
    transition: var(--hover-trans);
  }
  .shop-list_nav li:has(.is-active) {
    --link-color: var(--txt-color);
    font-weight: bold;
  }
  .shop-list_nav a:before {
    content: "";
    width: 0.4rem;
    height: 0.4rem;
    font-size: 0.4rem;
    line-height: 1;
    border-radius: 100%;
  }
  .shop-list_nav li:has(.is-active) a:before {
    background-color: var(--color-primary);
  }
}
@media (max-width: 1000px) {
  .shop-list_area-nav {
    white-space: nowrap;
    overflow-x: scroll;
    margin-top: -1rem;
    margin-bottom: calc(var(--space-m) - 1rem);
  }
  .shop-list_nav {
    width: max-content;
  }
  .shop-list_nav a {
    display: block;
    padding: 1rem max(1.5vw, 0.5rem); 
  }
  .shop-list_nav li:first-child a {
    padding-left: 0;
  }
  .shop-list_nav li:last-child a {
    padding-right: 0;
  }
}
@media (max-width: 760px) {
  .shop-list_nav {
    font-size: var(--fs-s);
  }
}
@media (hover: hover) {
  .shop-list_nav a:hover {
    color: var(--color-primary);
  }
}

/*--------------------------------------------------------------------------------
  .shop-data
--------------------------------------------------------------------------------*/
@media not (max-width: 1000px) { .shop-data { --img-width: 360; } }
@media (max-width: 1000px) { .shop-data { --img-width: 440; } }
.shop-data {
  display: grid;
  column-gap: var(--space-m);
  margin-top: var(--space-m);
}
.shop-data:not(:last-of-type) {
  border-bottom: 1px solid var(--border-color);
}
@media not (max-width: 760px) {
  .shop-data {
    grid-template-columns: 1fr minmax(auto, min(calc(var(--img-width) / (1200 - var(--shop-list-width)) * 100%), calc(var(--img-width) * 1px)));
    grid-template-rows: auto auto 1fr;
  }
  .shop-data:not(:last-of-type) {
    padding-bottom: var(--space-m);
  }
}
@media (max-width: 760px) {
  .shop-data:not(:last-of-type) {
    padding-bottom: var(--space-l);
  }
}
.shop-data_ttl { grid-area: shop-data-ttl; }
.shop-data_content { grid-area: shop-data-content; }
.shop-data_link { grid-area: shop-data-link; align-self: end; }
.shop-data_img { grid-area: shop-data-img; }
@media not (max-width: 760px) {
  .shop-data {
    grid-template-areas: 
      "shop-data-ttl shop-data-img"
      "shop-data-content shop-data-img"
      "shop-data-link shop-data-img";
  }
  .shop-data_ttl {
    margin-bottom: 1rem;
  }
}
@media (max-width: 760px) {
  .shop-data {
    grid-template-areas: 
      "shop-data-ttl"
      "shop-data-img"
      "shop-data-content"
      "shop-data-link";
  }
  .shop-data_img {
    margin: var(--space-s) 0;
  }
  .shop-data_img img {
    aspect-ratio: 3 / 2;
  }
}
.shop-data_ttl {
  font-weight: bold;
  font-size: var(--fs-2m);
}
.shop-data_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--rd-1);
}
.shop-data_tel {
  margin-top: 0.5rem;
}
.shop-data_tel:has(dt) {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 1em;
}
.shop-data_tel dt {
  font-weight: normal;
}
.shop-data_link {
  --link-color: var(--txt-color);
  --link-color-hover: var(--color-primary);
  --link-deco: none;
  --link-deco-hover: none;
  display: flex;
  gap: var(--space-3s);
  margin-top: var(--space-m);
}
.shop-data_link img {
  width: auto;
  height: 1em;
}
.shop-data_link img[src*=pizzahut] {
  height: 1.5em;
}
.shop-data_link:has(li:nth-child(2)) li {
  width: 100%;
  flex-grow: 1;
}
.shop-data_link li {
  border: 1px solid var(--border-color);
  border-radius: var(--rd-h2);
  transition: var(--hover-trans);
  position: relative;
}
.shop-data_link li:has(a[target="_blank"]):before {
  content: "";
  pointer-events: none;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  width: var(--newwin-size);
  height: var(--newwin-size);
  line-height: 1;
  display: inline-block;
  vertical-align: middle;
  margin-bottom: var(--newwin-mgb);
  background: currentColor;
  color: var(--color-primary);
  mask-image: var(--icon-newwin);
  mask-position: center center;
  mask-repeat: no-repeat;
  transition: var(--hover-trans);
}
.shop-data_link a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.15rem 0.5rem;
  font-size: var(--fs-s);
  line-height: var(--line-height-s);
  padding: 1rem calc(1.75rem + var(--newwin-size)) 1rem 1rem;
}
@media (max-width: 500px) or ((max-width: 1300px) and (not (max-width: 1000px))) {
  .shop-data_link:has(li:nth-child(2)) a {
    flex-direction: column;
  }
  .shop-data_link img[src*=kfc] {
    margin: 0.25rem 0;
  }
}
@media (hover: hover) {
  .shop-data_link li:hover {
    border-color: var(--color-primary);
  }
}

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

  recruit

--------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------
  .recruit-intro
--------------------------------------------------------------------------------*/
.recruit-intro {
  padding-bottom: var(--space-l);
}
.recruit-intro_catch {
  font-family: var(--ff-go);
  font-size: var(--fs-l);
  font-weight: 500;
  padding-bottom: var(--space-s);
}

/*--------------------------------------------------------------------------------
  .recruit-ideal
--------------------------------------------------------------------------------*/
.recruit-ideal {
  margin-top: 1rem;
  background-color: var(--bg-primary);
  padding: var(--inner-space-m);
  border-radius: var(--rd-1);
}
.recruit-ideal_ttl {
  color: var(--color-primary);
  font-family: var(--ff-go);
  font-size: var(--fs-2l);
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-bottom: var(--inner-space-2s);
}
.recruit-ideal_list {
  --list-rgap: 0.75rem;
  --list-mark-mgt: 0.15em;
  padding-left: calc((var(--fs-2l) / 2) - 0.5em);
  margin-bottom: var(--inner-space-2s);
  line-height: var(--line-height-s);
}

/*--------------------------------------------------------------------------------
  .recruit
--------------------------------------------------------------------------------*/
.recruit {
  margin-top: var(--space-2l);
}
.recruit-ttl:not(:first-of-type) {
  margin-top: var(--space-2l);
}

/*--------------------------------------------------------------------------------
  .recruit-tbl_dl
--------------------------------------------------------------------------------*/
.recruit-tbl_dl {
  --list-rgap: 0;
}
.recruit-tbl_dl dt:not(:first-of-type) {
  margin-top: var(--inner-space-2s);
}
.recruit-tbl_dl dt {
  margin-bottom: 0.25rem;
}
.recruit-tbl_dl dd {
  margin-left: 1rem;
}
.recruit-tbl_dl dl {
  margin-top: 1rem;
}
.recruit-tbl_dl dl dt {
  margin-bottom: 0;
}
.recruit-tbl_dl dl dt:not(:first-of-type) {
  margin-top: 1rem;
}

/*--------------------------------------------------------------------------------
  .recruit-contact
--------------------------------------------------------------------------------*/
.recruit-contact {
  border: 1px solid var(--border-color);
  padding: var(--inner-space-s);
}
.recruit-contact_ttl {
  font-size: var(--fs-m);
  font-weight: bold;
  margin-bottom: 0.5rem;
}
