:root {
    --ease-elastic-3: cubic-bezier(.5, 1.25, .75, 1.25);
    --radius-2: 5px;
    --font-weight-4: 400;
    --font-lineheight-3: 1.5;
    --font-lineheight-5: 2;
    --font-lineheight-4: 1.75;
    --font-lineheight-1: 1.25;
    --font-weight-7: 700;
    --font-serif: ui-serif, serif;
    --gray-12: #030507
  }
  
  *, *:before, *:after {
    box-sizing: border-box
  }
  
  body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
    margin: 0
  }
  
  ul[role=list], ol[role=list] {
    list-style: none
  }
  
  html:focus-within {
    scroll-behavior: smooth
  }
  
  body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 1.5
  }
  
  a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto
  }
  
  img, picture {
    max-width: 100%;
    display: block
  }
  
  input, button, textarea, select {
    font: inherit
  }
  
  @media (prefers-reduced-motion:reduce) {
    html:focus-within {
      scroll-behavior: auto
    }
    *, *:before, *:after {
      animation-duration: .01ms!important;
      animation-iteration-count: 1!important;
      transition-duration: .01ms!important;
      scroll-behavior: auto!important
    }
  }
  
  .CardRestaurant {
    height: 100%;
    background-color: #fff;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-2);
    overflow: hidden;
    padding: var(--unit-size-1);
    position: relative;
    text-decoration: inherit;
    transition: box-shadow .3s var(--ease-elastic-3), transform .3s var(--ease-elastic-3)
  }
  
  @media (min-width: 1024px) {
    .CardRestaurant {
      flex-direction: row
    }
  }
  
  @media (min-width: 1024px) {
    .CardRestaurant .food {
      width: 62%;
      flex-shrink: 0
    }
  }
  
  .CardRestaurant .food img {
    border-radius: var(--radius-2);
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: auto;
    aspect-ratio: 1/1
  }
  
  @media (min-width: 1024px) {
    .CardRestaurant .food img {
      aspect-ratio: 600/353
    }
  }
  
  :is(.CardRestaurant .food)+div {
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-00)
  }
  
  .CardRestaurant .logo {
    height: var(--unit-size-6);
    width: auto;
    margin-inline: auto
  }
  
  @media (min-width: 1024px) {
    .CardRestaurant .logo {
      margin-inline: 0;
    }
    .CardRestaurant .logo1 {
      width: 50% !important;
    }
  }
  
  .CardRestaurant .logo img {
    -o-object-fit: contain;
    object-fit: contain;
    height: 100%;
    width: auto
  }
  
  .CardRestaurant .title {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    font-size: var(--unit-size-2);
    font-weight: var(--font-weight-4);
    -webkit-line-clamp: 3;
    line-height: var(--font-lineheight-3);
    overflow: hidden
  }
  
  .CardRestaurant .desc {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    font-size: var(--unit-size-0);
    -webkit-line-clamp: 6;
    line-height: var(--font-lineheight-5);
    overflow: hidden
  }

  .CardMenuItem {
    border-radius: var(--unit-size-0);
    overflow: hidden;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-2);
    position: relative
  }
  
  @media (min-width: 1024px) {
    .CardMenuItem {
      flex-direction: row
    }
  }
  
  .CardMenuItem>div:first-child {
    flex-shrink: 0
  }
  
  @media (min-width: 1024px) {
    .CardMenuItem>div:first-child {
      width: 50%
    }
  }
  
  .CardMenuItem>div:first-child img {
    width: 100%;
    height: auto;
    aspect-ratio: 3/2;
    -o-object-fit: cover;
    object-fit: cover
  }
  
  @media (min-width: 1024px) {
    .CardMenuItem>div:first-child img {
      min-height: 100%
    }
  }
  
  .CardMenuItem>div:last-child {
    padding: var(--unit-size-3) var(--unit-size-1);
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-3)
  }
  
  .CardMenuItem>div:last-child .title, .CardMenuItem>div:last-child .price, .CardMenuItem>div:last-child .desc {
    display: flex;
    gap: var(--unit-size-0)
  }
  
  .CardMenuItem>div:last-child .title>div:first-child, .CardMenuItem>div:last-child .price>div:first-child, .CardMenuItem>div:last-child .desc>div:first-child {
    display: flex;
    align-items: center
  }
  
  .CardMenuItem>div:last-child .title>div:first-child span, .CardMenuItem>div:last-child .price>div:first-child span, .CardMenuItem>div:last-child .desc>div:first-child span {
    display: flex;
    align-items: center;
    line-height: 1;
    border-radius: var(--unit-size-2)
  }
  
  .CardMenuItem>div:last-child .title {
    flex-direction: column
  }
  
  @media (min-width: 1024px) {
    .CardMenuItem>div:last-child .title {
      flex-direction: row
    }
  }
  
  .CardMenuItem>div:last-child .title>div:first-child span {
    color: #fff;
    white-space: nowrap;
    background-color: var(--color-cp-accent);
    padding: var(--unit-size-00) var(--unit-size-1)
  }
  
  .CardMenuItem>div:last-child .title h2 {
    font-size: var(--unit-size-4)
  }
  
  .CardMenuItem>div:last-child .price {
    line-height: 1.25
  }
  
  .CardMenuItem>div:last-child .price>div:first-child span {
    font-size: var(--unit-size-1);
    display: flex;
    align-items: center;
    color: var(--color-cp-accent);
    white-space: nowrap;
    background-color: #ffeedb;
    padding: var(--unit-size-000) var(--unit-size-1)
  }
  
  :is(.CardMenuItem > div:last-child .price > div:first-child)+div span {
    font-size: var(--unit-size-5);
    font-weight: 700
  }
  
  :is(:is(.CardMenuItem > div:last-child .price > div:first-child) + div span)+span {
    font-size: var(--unit-size-2);
    align-self: flex-end;
    line-height: 1.2
  }
  
  .CardMenuItem>div:last-child .desc {
    flex-direction: column
  }
  
  .CardMenuItem>div:last-child .desc>div:first-child span {
    font-size: var(--unit-size-1);
    display: flex;
    align-items: center;
    color: var(--color-cp-accent);
    white-space: nowrap;
    background-color: #ffeedb;
    padding: var(--unit-size-000) var(--unit-size-1)
  }
  .CardMenuItem>div:last-child .desc>div:first-child h3 {
    font-size: var(--unit-size-2);
    display: flex;
    align-items: center;
    color: var(--color-cp-accent);
    padding: var(--unit-size-000) 0
  }
  .CardMenuItem>div:last-child .desc>div p {
    text-align: left!important;
  }
  .CardMenuItem>div:last-child .desc>div p.sub_text {
    font-size: var(--unit-size-0);
  }
  
  :is(body.CP_Restaurant .page-content .grid-cols) + div .shop_text > p {
    text-align: left;
  }
  :is(body.CP_Restaurant .page-content .grid-cols) + div .shop_text > p span {
    font-size: var(--unit-size-1);
    display: flex;
    align-items: center;
    color: var(--color-cp-accent);
    white-space: nowrap;
    background-color: #ffeedb;
    padding: var(--unit-size-000) var(--unit-size-1)
  }
  
  .CardMenuItem>div:last-child .desc>div:last-child {
    line-height: var(--font-lineheight-4)
  }
  
  :is(.CardMenuItem > div:last-child .desc > div:last-child) p+p {
    margin-top: var(--unit-size-0)
  }
  
  .CardBranch {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-00);
    padding: var(--unit-size-4);
    line-height: var(--font-lineheight-1)
  }
  
  .CardBranch>div:nth-child(1) {
    border-bottom: var(--border-primary);
    display: flex;
    gap: var(--unit-size-0);
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding-bottom: var(--unit-size-2);
    flex-direction: column
  }
  
  @media (min-width: 1024px) {
    .CardBranch>div:nth-child(1) {
      flex-direction: column;
    }
  }
  
  .CardBranch>div:nth-child(1) span {
    font-size: var(--unit-size-1);
    vertical-align: baseline
  }
  
  .CardBranch>div:nth-child(1) h3 {
    font-size: var(--unit-size-3)
  }
  
  .CardBranch>div:nth-child(2) {
    margin-block: var(--unit-size-1);
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-2)
  }
  
  @media (min-width: 1024px) {
    .CardBranch>div:nth-child(2) {
      gap: var(--unit-size-1)
    }
  }
  
  .CardBranch>div:nth-child(2) .address, .CardBranch>div:nth-child(2) .tel, .CardBranch>div:nth-child(2) .url {
    padding-left: var(--unit-size-4);
    background-repeat: no-repeat;
    background-size: var(--unit-size-2);
    background-position: 0% 50%
  }
  
  .CardBranch>div:nth-child(2) .address {
    background-image: url(/files/user/assets/icon-map-pin-90168ef7.svg)
  }
  
  .CardBranch>div:nth-child(2) .tel {
    background-image: url(/files/user/assets/icon-smartphone-eacb763b.svg)
  }
  
  .CardBranch>div:nth-child(2) .tel a {
    color: var(--color-text);
    text-decoration: none
  }
  
  .CardBranch>div:nth-child(2) .url {
    background-image: url(/files/user/assets/icon-airplay-bb44caeb.svg)
  }
  
  .CardBranch>div:nth-child(2) .url a {
    color: var(--color-cp-accent);
    text-decoration: none;
    word-break: break-all;
  }
  
  .CardBranch>div:nth-child(2) .url a:hover {
    text-decoration: underline
  }
  
  .CardBranch>div:nth-child(2) .img {
    margin-block: var(--unit-size-00)
  }
  
  .CardBranch>div:nth-child(2) .img img {
    border-radius: var(--unit-size-000)
  }
  
  .CardBranch>div:nth-child(2) .menu-title, .CardBranch>div:nth-child(2) .price {
    display: flex
  }
  
  @media (min-width: 1024px) {
    .CardBranch>div:nth-child(2) .menu-title, .CardBranch>div:nth-child(2) .price {
      justify-content: center
    }
  }
  
  .CardBranch>div:nth-child(2) .menu-title>div:first-child, .CardBranch>div:nth-child(2) .price>div:first-child {
    display: flex;
    align-items: center
  }
  
  .CardBranch>div:nth-child(2) .menu-title>div:first-child span, .CardBranch>div:nth-child(2) .price>div:first-child span {
    display: flex;
    align-items: center;
    line-height: 1;
    border-radius: var(--unit-size-2)
  }
  
  .CardBranch>div:nth-child(2) .menu-title {
    flex-direction: column;
    gap: var(--unit-size-000)
  }
  
  @media (min-width: 1024px) {
    .CardBranch>div:nth-child(2) .menu-title {
      gap: var(--unit-size-00) var(--unit-size-2);
      flex-direction: row
    }
  }
  
  .CardBranch>div:nth-child(2) .menu-title>div:first-child span {
    color: #fff;
    white-space: nowrap;
    background-color: var(--color-cp-accent);
    padding: var(--unit-size-000) var(--unit-size-1);
    font-size: var(--unit-size-0)
  }
  
  .CardBranch>div:nth-child(2) .menu-title h2 {
    font-size: var(--unit-size-4)
  }
  
  .CardBranch>div:nth-child(2) .price {
    line-height: 1;
    gap: var(--unit-size-2)
  }
  
  .CardBranch>div:nth-child(2) .price>div:first-child span {
    font-size: var(--unit-size-1);
    display: flex;
    align-items: center;
    color: var(--color-cp-accent);
    white-space: nowrap;
    background-color: #ffeedb;
    padding: var(--unit-size-000) var(--unit-size-1)
  }
  
  :is(.CardBranch > div:nth-child(2) .price > div:first-child)+div span {
    font-size: var(--unit-size-4);
    font-weight: 700;
    line-height: 1.2
  }
  
  :is(:is(.CardBranch > div:nth-child(2) .price > div:first-child) + div span)+span {
    font-size: var(--unit-size-1);
    align-self: flex-end;
    line-height: 1.2
  }
  
  .CardBranch>div:nth-child(3),
  .CardBranch>div:nth-child(4) {
    text-align: center
  }
  
  .CardBranch>div:nth-child(3) button {
    border: 0
  }
  .LinkLarge,
  .CardBranch>div:nth-child(4) a {
    min-width: var(--unit-size-14);
    padding: var(--unit-size-1) var(--unit-size-4);
  }
  @media (min-width: 1024px) {
    .LinkLarge,
    .CardBranch>div:nth-child(4) a {
      min-width: var(--unit-size-15);
    }
  }
  
  .branch-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    overflow-y: auto
  }
  
  .branch-modal .modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #000000b3
  }
  
  .branch-modal .modal-panel {
    position: relative;
    display: flex;
    min-height: 100vh;
    align-items: center;
    justify-content: center;
    padding: var(--unit-size-8) var(--unit-size-3)
  }
  
  .branch-modal .modal-panel-inner {
    position: relative;
    width: 100%;
    max-width: var(--unit-size-20);
    background-color: #fff;
    border-radius: var(--unit-size-000);
    padding: var(--unit-size-3) var(--unit-size-1);
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-5)
  }
  
  @media (min-width: 1024px) {
    .branch-modal .modal-panel-inner {
      padding: var(--unit-size-6)
    }
  }
  
  .branch-modal .modal-close {
    position: absolute;
    border: 0;
    right: 0;
    top: calc(var(--unit-size-7) * -1);
    width: var(--unit-size-6);
    height: var(--unit-size-6);
    background-color: transparent;
    cursor: pointer;
    transition: opacity .3s ease
  }
  
  .branch-modal .modal-close:hover {
    opacity: .75
  }
  
  .branch-modal .modal-close:before, .branch-modal .modal-close:after {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    content: "";
    width: 100%;
    height: 2px;
    border-top: 2px solid white
  }
  
  .branch-modal .modal-close:before {
    transform: rotate(45deg)
  }
  
  .branch-modal .modal-close:after {
    transform: rotate(-45deg)
  }
  
  .branch-modal .branch-modal-title {
    border-bottom: var(--border-primary);
    display: flex;
    gap: var(--unit-size-0);
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding-bottom: var(--unit-size-2);
    flex-direction: column
  }
  
  @media (min-width: 1024px) {
    .branch-modal .branch-modal-title {
      flex-direction: row
    }
  }
  
  .branch-modal .branch-modal-title span {
    font-size: var(--unit-size-1);
    vertical-align: baseline
  }
  
  .branch-modal .branch-modal-title h3 {
    font-size: var(--unit-size-3)
  }
  
  .branch-modal .branch-modal-info {
    background-color: var(--color-background);
    padding: var(--unit-size-3);
    display: flex;
    border-radius: var(--unit-size-000);
    flex-direction: column;
    overflow: hidden
  }
  
  @media (min-width: 1024px) {
    .branch-modal .branch-modal-info {
      flex-direction: row;
      align-items: center
    }
  }
  
  .branch-modal .branch-modal-info h4 {
    color: var(--color-cp-accent);
    font-size: var(--unit-size-3);
    padding-bottom: var(--unit-size-0);
    margin-bottom: var(--unit-size-0);
    border-bottom: 2px solid var(--color-cp-accent);
    width: 100%;
    text-align: center;
    white-space: nowrap
  }
  
  @media (min-width: 1024px) {
    .branch-modal .branch-modal-info h4 {
      width: auto;
      padding: var(--unit-size-2) var(--unit-size-5);
      border-right: 2px solid var(--color-cp-accent);
      border-bottom: 0;
      margin-bottom: 0
    }
  }
  
  @media (min-width: 1024px) {
    :is(.branch-modal .branch-modal-info h4)+div {
      padding-left: var(--unit-size-6);
      display: flex;
      flex-wrap: wrap;
      gap: 0 var(--unit-size-6)
    }
  }
  
  .branch-modal .branch-modal-address, .branch-modal .branch-modal-tel, .branch-modal .branch-modal-url {
    margin-top: var(--unit-size-00);
    padding-left: var(--unit-size-4);
    background-repeat: no-repeat;
    background-size: var(--unit-size-2);
    background-position: 0% 50%
  }
  
  .branch-modal .branch-modal-address {
    background-image: url(/files/user/assets/icon-map-pin-90168ef7.svg);
    width: 100%
  }
  
  .branch-modal .branch-modal-tel {
    background-image: url(/files/user/assets/icon-smartphone-eacb763b.svg)
  }
  
  .branch-modal .branch-modal-url {
    background-image: url(/files/user/assets/icon-airplay-bb44caeb.svg)
  }
  
  .branch-modal .branch-modal-url a {
    color: var(--color-cp-accent);
    text-decoration: none
  }
  
  .branch-modal .branch-modal-url a:hover {
    text-decoration: underline
  }
  
  .branch-modal .fx-reveal:not(:last-child) {
    border-bottom: 2px solid var(--color-cp-accent);
    padding-bottom: var(--unit-size-5)
  }
  
  .branch-modal .CardMenuItem {
    align-items: center;
    border-radius: 0
  }
  
  @media (min-width: 1024px) {
    .branch-modal .CardMenuItem>div:first-child {
      width: 35%
    }
  }
  
  .branch-modal .CardMenuItem>div:first-child img {
    aspect-ratio: 4/3;
    border-radius: var(--unit-size-000)
  }
  
  @media (min-width: 1024px) {
    .branch-modal .CardMenuItem>div:first-child img {
      aspect-ratio: 1/1
    }
  }
  
  .branch-modal .CardMenuItem>div:last-child {
    padding: 0
  }
  
  .CpFooter .recruitment {
    margin-top: var(--unit-size-3)
  }
  
  .CpFooter .recruitment .link {
    margin: var(--unit-size-5); var(--unit-size-5) 0;
    background-color: var(--color-primary)
  }
  
  .CpFooter .recruitment .link span {
    text-align: center;
    color: var(--color-text);
    text-decoration: none;
    font-size: var(--unit-size-3);
    font-weight: 800;
    display: flex;
    width: 100%;
    padding: var(--unit-size-4) var(--unit-size-3);
    flex-direction: column;
    gap: var(--unit-size-3);
    align-items: center
  }
  
  .CpFooter .recruitment .link a {
    text-align: center;
    color: var(--color-text);
    text-decoration: none;
    font-size: var(--unit-size-3);
    font-weight: 800;
    display: flex;
    width: 100%;
    padding: var(--unit-size-4) var(--unit-size-3);
    flex-direction: column;
    gap: var(--unit-size-3);
    align-items: center
  }
  
  .CpFooter .recruitment .link a img {
    width: var(--unit-size-4);
    height: auto;
    margin: 0 auto;
  }
  
  @media (min-width: 1024px) {
    .CpFooter .recruitment .link a img {
      width: var(--unit-size-3)
    }
  }
  
  .CpFooter .row1 {
    margin-block: var(--unit-size-10) var(--unit-size-7);
    display: flex;
    flex-direction: column;
    align-items: center
  }
  
  .CpFooter .row1>a {
    width: 80vw
  }
  
  @media (min-width: 1024px) {
    .CpFooter .row1>a {
      width: 50vw
    }
  }
  
  .CpFooter .row1>ul {
    list-style-type: none;
    padding: 0;
    margin-top: var(--unit-size-6);
    display: flex;
    gap: var(--unit-size-5)
  }
  
  .CpFooter .row1>ul li img {
    aspect-ratio: 1/1;
    width: var(--unit-size-6);
    height: auto
  }
  
  @media (min-width: 1024px) {
    .CpFooter .row1>ul li img {
      width: var(--unit-size-5)
    }
  }
  
  .CpFooter .row2 {
    display: flex;
    justify-content: space-between;
    padding: var(--unit-size-2)
  }
  
  .CpFooter .row2 a {
    color: var(--color-text)
  }
  
  .CpHeader {
    border-inline: var(--border-primary);
    border-block: var(--border-primary);
    margin: var(--unit-size-000) var(--unit-size-000) 0
  }
  
  @media (min-width: 1024px) {
    .CpHeader {
      margin: var(--unit-size-3) var(--unit-size-3) 0
    }
  }
  
  .CpHeader h1 img {
    width: 100%;
    height: auto
  }
  
  :is(.CpHeader h1)+div {
    border-top: var(--border-primary);
    padding: var(--unit-size-2) var(--unit-size-1) var(--unit-size-3)
  }
  
  @media (min-width: 480px) {
    :is(.CpHeader h1)+div {
      text-align: center
    }
  }
  
  :is(.CpHeader h1)+div p {
    color: var(--color-cp-accent)
  }
  
  :is(.CpHeader h1)+div p:first-child {
    font-weight: 700;
    font-size: var(--unit-size-2)
  }
  
  :is(:is(.CpHeader h1) + div p)+p {
    font-size: var(--unit-size-1);
    margin-top: var(--unit-size-000)
  }
  
  @media (min-width: 1024px) {
    :is(.CpHeader h1)+div br {
      display: none
    }
  }
  
  :is(.CpHeader h1)+div span {
    font-size: var(--unit-size-3)
  }
  
  @media (min-width: 1024px) {
    .SiteHeader .site-logo {
      width: var(--unit-size-17)
    }
    .SiteHeader nav ul:first-child li:first-child {
      display: block
    }
  }
  
  :is(.HeaderSecondary div:last-child) p+p {
    margin-top: var(--unit-size-0)
  }
  
  .HeaderSecondary .title {
    font-size: var(--unit-size-4)
  }
  
  @media (min-width: 1024px) {
    .HeaderSecondary .title {
      font-size: var(--unit-size-5)
    }
  }
  
  .LinkLarge:disabled, .LinkSmall:disabled, .LinkAccent:disabled {
    cursor: not-allowed;
    background-color: #ccc
  }
  
  .LinkLarge:disabled:hover, .LinkSmall:disabled:hover, .LinkAccent:disabled:hover {
    animation: none
  }
  
  body.CP_Index main .sns-campaign {
    margin-top: var(--unit-size-3);
    margin-bottom: var(--unit-size-3);
  }
  
  :is(body.CP_Index main .sns-campaign .HeaderSecondary)+div {
    border-inline: var(--border-primary);
    border-bottom: var(--border-primary);
    padding: var(--unit-size-3)
  }
  
/**  :is(body.CP_Index main .sns-campaign .HeaderSecondary)+div>div {
    border: var(--unit-size-000) solid white;
    background-color: #f1e9d2
  }
  
  @media (min-width: 1024px) {
    :is(body.CP_Index main .sns-campaign .HeaderSecondary)+div>div {
      padding: var(--unit-size-4)
    }
  }
**/

  :is(body.CP_Index main .sns-campaign .HeaderSecondary)+div>div img {
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
/*    max-width: 976px;*/
    height: auto;
    margin-inline: auto
  }
  
  body.CP_Index main .pick-up-restaurant {
    margin-top: var(--unit-size-3)
  }
  
  :is(body.CP_Index main .pick-up-restaurant .HeaderSecondary)+div {
    border-inline: var(--border-primary);
    border-bottom: var(--border-primary);
    padding: var(--unit-size-3);
    margin-bottom: var(--unit-size-3);
  }
  
  body.CP_Index main .pick-up-restaurant .grid-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }
  
  body.CP_Index .return-to-index:first-child,
  body.CP_Restaurant .return-to-index:first-child {
    border-inline: var(--border-primary);
    border-top: var(--border-primary)
  }
  
  body.CP_Restaurant .page-header {
    border-inline: var(--border-primary);
    padding-inline: var(--unit-size-3)
  }
  
  @media (min-width: 1024px) {
    body.CP_Restaurant .page-header {
      padding-inline: var(--unit-size-9)
    }
  }
  
  body.CP_Restaurant .page-header .section-title {
    font-family: var(--font-display);
    font-size: var(--unit-size-2);
    font-weight: var(--font-weight-7)
  }
  
  body.CP_Restaurant .page-header .title {
    text-align: center
  }
  
body.CP_Restaurant .page-header .logo {
  margin: var(--unit-size-3) auto;
  width: var(--unit-size-14);
  height: var(--unit-size-12)
}
  @media (min-width: 1024px) {
  body.CP_Restaurant .page-header .logo {
    margin: var(--unit-size-3) auto;
    width: var(--unit-size-16);
    height: var(--unit-size-12)
  }
}


  body.CP_Restaurant .page-header .logo img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
  }
  
  body.CP_Restaurant .page-header .fair-period {
    margin-top: var(--unit-size-3);
    border: 1px solid var(--color-text);
    padding: var(--unit-size-0);
    text-align: center;
    background-color: var(--color-cp-accent-pale);
    color: var(--color-cp-accent);
    font-weight: 700
  }
  
  body.CP_Restaurant .page-header .fair-period span {
    font-size: var(--unit-size-3)
  }
  
  body.CP_Restaurant .page-content {
    padding-block: var(--unit-size-6)
  }
  
  :is(body.CP_Restaurant .page-content .grid-cols)+div {
    margin-top: var(--unit-size-6);
    text-align: center
  }
  
  body.CP_Restaurant .page-content .branches {
    margin-top: var(--unit-size-7)
  }
  
  body.CP_Restaurant .page-content .branches>h2 {
    font-family: var(--font-serif);
    text-align: center
  }
  
  body.CP_Restaurant .page-content .branches>h2 span {
    display: inline-block;
    padding-bottom: var(--unit-size-0);
    border-bottom: var(--border-primary)
  }
  
  body.CP_Restaurant .page-content .branches .grid-cols-2 {
    margin-top: var(--unit-size-5)
  }
  
  :is(body.CP_Restaurant .page-content .branches)+div {
    margin-top: var(--unit-size-6);
    text-align: center
  }
  
  body.CP_Restaurant .related-information {
    margin-top: var(--unit-size-3)
  }
  
  body.CP_Restaurant .related-information>div:nth-child(2) {
    border-inline: var(--border-primary);
    border-bottom: var(--border-primary)
  }
  
  body.CP_Restaurant .related-information>div:nth-child(2) .grid-cols-3 {
    padding: var(--unit-size-3)
  }
  
  :is(body.CP_Restaurant .related-information > div:nth-child(2) .grid-cols-3)+div {
    margin-block: var(--unit-size-3) var(--unit-size-6);
    text-align: center
  }
  
  body.CP_Index .return-to-index,
  body.CP_Restaurant .return-to-index {
    display: flex;
    padding: var(--unit-size-3)
  }
  
  body.CP_Index .return-to-index .LinkLarge,
  body.CP_Restaurant .return-to-index .LinkLarge {
    margin: var(--unit-size-3) auto
  }
  
  body.CP_Restaurant .page-content {
    border-bottom: var(--border-primary);
    border-inline: var(--border-primary);
    padding-inline: var(--unit-size-3)
  }
  
  @media (min-width: 1024px) {
    body.CP_Restaurant .page-content {
      padding-inline: var(--unit-size-9)
    }
  }
  
  body.CP_Restaurant .page-header {
    padding-top: var(--unit-size-3)
  }
  
  body.CP_Restaurant .page-header .fx-reveal {
    display: flex;
    flex-direction: column;
    gap: var(--unit-size-2)
  }
  
  body.CP_Restaurant .page-header .meta {
    align-items: center;
    display: flex;
    justify-content: center
  }
  
  @media (min-width: 1024px) {
    body.CP_Restaurant .page-header .meta {
      justify-content: flex-start
    }
  }
  
  body.CP_Restaurant .page-header .type {
    font-family: var(--font-display);
    font-size: var(--unit-size-2);
    font-weight: var(--font-weight-7)
  }
  
  body.CP_Restaurant .page-header .date {
    align-items: center;
    display: flex;
    font-size: var(--unit-size-1)
  }
  
  body.CP_Restaurant .page-header .date:before {
    border-top: var(--border-primary);
    content: "";
    display: inline-block;
    margin-inline: var(--unit-size-0);
    width: var(--unit-size-5)
  }
  
  body.CP_Restaurant .page-header .title {
    font-family: var(--font-serif);
    font-size: var(--unit-size-4);
    font-weight: var(--font-weight-7)
  }
  
  @media (min-width: 1024px) {
    body.CP_Restaurant .page-header .title {
      font-size: var(--unit-size-6)
    }
  }
  
  body.CP_Restaurant .page-header .desc_box {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  body.CP_Restaurant .page-header .desc {
    line-height: var(--font-lineheight-4);
    width:100%;
  }
  body.CP_Restaurant .page-header .komerin {
    width: 30%;
    margin: 0 auto;
  }

  @media (min-width: 1024px) {
    body.CP_Restaurant .page-header .desc_box {
      flex-direction: row;
    }
    body.CP_Restaurant .page-header .desc {
      width: 75%;
    }
    body.CP_Restaurant .page-header .komerin {
      width: 15%;
    }
  }

  body.CP_Restaurant .related-entry {
    border: var(--border-primary);
    padding: var(--unit-size-6) var(--unit-size-3)
  }
  
  body.CP_Restaurant .related-entry>.title, body.CP_Restaurant .related-entry>div>.title {
    font-family: var(--font-serif);
    font-size: var(--unit-size-5)
  }
  
  body.CP_Restaurant .related-entry .grid-cols-3 {
    margin-top: var(--unit-size-4)
  }
  
  body.CP_Search .search h2 {
    font-family: var(--font-serif);
    text-align: center
  }
  
  body.CP_Search .search h2 span {
    display: inline-block;
    padding-bottom: var(--unit-size-0);
    border-bottom: var(--border-primary)
  }
  
  body.CP_Search .search .tabs {
    font-size: var(--unit-size-1);
    margin-top: var(--unit-size-5)
  }
  
  body.CP_Search .search ul {
    list-style-type: none;
    padding: 0;
    margin: 0 -1.5px
  }
  
  body.CP_Search .search li {
    flex-grow: 1;
    min-width: 50%;
    padding: 1.5px
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search li {
      min-width: auto
    }
  }
  
  body.CP_Search .search .tab-list {
    display: flex;
    flex-wrap: wrap
  }
  
  body.CP_Search .search .tab-list button {
    color: var(--color-text)
  }
  
  body.CP_Search .search .tab {
    width: 100%;
    background-color: #fff;
    border: none;
    padding: var(--unit-size-1) var(--unit-size-4);
    cursor: pointer
  }
  
  body.CP_Search .search .tab.selected {
    background-color: var(--color-cp-accent);
    color: #fff;
    cursor: default
  }
  
  body.CP_Search .search .panels {
    margin-top: 1.5px
  }
  
  body.CP_Search .search .panel {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    padding: var(--unit-size-2)
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search .panel {
      flex-direction: row;
      padding: 0
    }
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search .panel>div {
      padding: var(--unit-size-2)
    }
  }
  
  @media (min-width: 1024px) and (min-width: 1024px) {
    body.CP_Search .search .panel>div {
      padding: var(--unit-size-4)
    }
  }
  
  body.CP_Search .search .panel>div:first-child {
    white-space: nowrap
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search .panel>div:first-child {
      width: 20%;
      flex-shrink: 0
    }
  }
  
  body.CP_Search .search .panel ul {
    margin-top: var(--unit-size-00);
    display: flex;
    flex-wrap: wrap
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search .panel ul {
      margin-top: 0;
      justify-content: flex-start;
      gap: var(--unit-size-4) var(--unit-size-6)
    }
  }
  
  body.CP_Search .search .panel li {
    padding-block: var(--unit-size-00)
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search .panel li {
      flex-grow: 0;
      padding-block: 0;
      width: auto
    }
  }
  
  body.CP_Search .search .panel li label {
    cursor: pointer
  }
  
  body.CP_Search .search .panel li input[type=radio] {
    display: none
  }
  
  :is(body.CP_Search .search .panel li input[type="radio"]):checked+span:before {
    border: 0;
    background-color: var(--color-cp-accent)
  }
  
  :is(body.CP_Search .search .panel li input[type="radio"]):checked+span:after {
    width: var(--unit-size-000);
    height: var(--unit-size-000);
    background-color: #fff;
    top: 50%;
    left: calc(var(--unit-size-2) / 2);
    transform: translate(-50%, -50%)
  }
  
  :is(body.CP_Search .search .panel li input[type="radio"])+span {
    padding-left: var(--unit-size-4);
    display: inline-block;
    position: relative
  }
  
  :is(body.CP_Search .search .panel li input[type="radio"])+span:before, :is(body.CP_Search .search .panel li input[type="radio"])+span:after {
    content: "";
    position: absolute;
    display: block;
    border-radius: 50%
  }
  
  :is(body.CP_Search .search .panel li input[type="radio"])+span:before {
    width: var(--unit-size-2);
    height: var(--unit-size-2);
    background-color: #fff;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    border: 1px solid var(--color-text)
  }
  
  body.CP_Search .search .panel li input[type=checkbox] {
    display: none
  }
  
  :is(body.CP_Search .search .panel li input[type="checkbox"]):checked+span:before {
    border: 0;
    background-color: var(--color-cp-accent)
  }
  
  :is(body.CP_Search .search .panel li input[type="checkbox"]):checked+span:after {
    width: var(--unit-size-1);
    height: var(--unit-size-000);
    border-left: 3px solid white;
    border-bottom: 3px solid white;
    transform: rotate(-45deg) translate(-50%, -50%);
    transform-origin: 0 0;
    top: 45%;
    left: calc(var(--unit-size-2) / 2)
  }
  
  :is(body.CP_Search .search .panel li input[type="checkbox"])+span {
    padding-left: var(--unit-size-4);
    display: inline-block;
    position: relative
  }
  
  :is(body.CP_Search .search .panel li input[type="checkbox"])+span:before, :is(body.CP_Search .search .panel li input[type="checkbox"])+span:after {
    content: "";
    position: absolute;
    display: block
  }
  
  :is(body.CP_Search .search .panel li input[type="checkbox"])+span:before {
    width: var(--unit-size-2);
    height: var(--unit-size-2);
    background-color: #fff;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    border: 1px solid var(--color-text)
  }
  
  body.CP_Search .search-from-genre {
    margin-top: 3px
  }
  
  body.CP_Search .search-submit {
    margin-top: var(--unit-size-4);
    text-align: center
  }
  
  body.CP_Search .search-submit button {
    border: none
  }
  
  body.CP_Search .search-accordion {
    display: flex;
    flex-direction: column
  }
  
  body.CP_Search .search-accordion.expanded>.search-accordion-toggle:before {
    position: absolute;
    bottom: 0;
    left: var(--unit-size-2);
    content: "";
    display: block;
    width: calc(100% - (var(--unit-size-2) * 2));
    border-top: 3px solid var(--color-background)
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search-accordion.expanded>.search-accordion-toggle:before {
      left: var(--unit-size-4);
      width: calc(100% - (var(--unit-size-4) * 2))
    }
  }
  
  body.CP_Search .search-accordion.expanded>.search-accordion-toggle:after {
    height: 0;
    opacity: 0
  }
  
  body.CP_Search .search-accordion .panel {
    position: relative
  }
  
  body.CP_Search .search-accordion .panel:after {
    position: absolute;
    bottom: 0;
    left: var(--unit-size-2);
    content: "";
    display: block;
    width: calc(100% - (var(--unit-size-2) * 2));
    border-top: 3px solid var(--color-background)
  }
  
  @media (min-width: 1024px) {
    body.CP_Search .search-accordion .panel:after {
      left: var(--unit-size-4);
      width: calc(100% - (var(--unit-size-4) * 2))
    }
  }
  
  body.CP_Search .search-accordion .search-accordion-toggle {
    color: var(--color-text);
    font-size: var(--unit-size-2);
    border: 0;
    background-color: #fff;
    padding: var(--unit-size-2);
    width: 100%;
    cursor: pointer;
    position: relative
  }
  
  body.CP_Search .search-accordion .search-accordion-toggle:after {
    transition: height .25s ease .25s, opacity .25s ease;
    display: block;
    content: "";
    background-image: url(/files/user/assets/icon-chevron-down-7010ee32.svg);
    background-repeat: no-repeat;
    background-size: var(--unit-size-3);
    background-position: 50%;
    width: 100%;
    height: var(--unit-size-4);
    transform: rotate(180deg)
  }
  
  body.CP_Search .search-accordion .search-accordion-content {
    padding: 0;
    flex-direction: column
  }
  
  body.CP_Search .search-accordion .search-accordion-content .search-accordion-toggle:after {
    transform: rotate(0)
  }
  
  :root {
    --color-background: #F3EFD8;
    --color-text: var(--gray-12);
    --color-primary: #FFD584;
    --color-primary-rgb: 255, 213, 132;
    --color-secondary: #FFD2D2;
    --color-tirtiary: #FFF1F9;
    --color-quaternary: #F47E7E;
    --color-quinary: #CCE8F1;
    --color-cp-accent: #FF7651;
    --color-cp-accent-pale: #F1E9D2;
    --font-sans: "Noto Sans JP", sans-serif;
    --font-serif: "Noto Serif JP", serif;
    --font-display: "Libre Baskerville", serif;
    --unit-scale: 1.25;
    --unit-base: 2.8vw;
    --unit-size-00: calc( var(--unit-size-0) / var(--unit-scale));
    --unit-size-000: calc( var(--unit-size-00) / var(--unit-scale));
    --unit-size-0000: calc( var(--unit-size-000) / var(--unit-scale));
    --unit-size-0: var(--unit-base);
    --unit-size-1: calc( var(--unit-size-0) * var(--unit-scale));
    --unit-size-2: calc( var(--unit-size-1) * var(--unit-scale));
    --unit-size-3: calc( var(--unit-size-2) * var(--unit-scale));
    --unit-size-4: calc( var(--unit-size-3) * var(--unit-scale));
    --unit-size-5: calc( var(--unit-size-4) * var(--unit-scale));
    --unit-size-6: calc( var(--unit-size-5) * var(--unit-scale));
    --unit-size-7: calc( var(--unit-size-6) * var(--unit-scale));
    --unit-size-8: calc( var(--unit-size-7) * var(--unit-scale));
    --unit-size-9: calc( var(--unit-size-8) * var(--unit-scale));
    --unit-size-10: calc( var(--unit-size-9) * var(--unit-scale));
    --unit-size-11: calc( var(--unit-size-10) * var(--unit-scale));
    --unit-size-12: calc( var(--unit-size-11) * var(--unit-scale));
    --unit-size-13: calc( var(--unit-size-12) * var(--unit-scale));
    --unit-size-14: calc( var(--unit-size-13) * var(--unit-scale));
    --unit-size-15: calc( var(--unit-size-14) * var(--unit-scale));
    --unit-size-16: calc( var(--unit-size-15) * var(--unit-scale));
    --unit-size-17: calc( var(--unit-size-16) * var(--unit-scale));
    --unit-size-18: calc( var(--unit-size-17) * var(--unit-scale));
    --unit-size-19: calc( var(--unit-size-18) * var(--unit-scale));
    --unit-size-20: calc( var(--unit-size-19) * var(--unit-scale));
    --border-primary: 2px solid var(--color-text);
    --icon-chevron-right: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22%23030507%22%3E%20%3Cpath%20fill-rule%3D%22evenodd%22%20d%3D%22M7.21%2014.77a.75.75%200%2001.02-1.06L11.168%2010%207.23%206.29a.75.75%200%20111.04-1.08l4.5%204.25a.75.75%200%20010%201.08l-4.5%204.25a.75.75%200%2001-1.06-.02z%22%20clip-rule%3D%22evenodd%22%20%2F%3E%3C%2Fsvg%3E);
    --icon-chevron-right-white: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22%23ffffff%22%3E%20%3Cpath%20fill-rule%3D%22evenodd%22%20d%3D%22M7.21%2014.77a.75.75%200%2001.02-1.06L11.168%2010%207.23%206.29a.75.75%200%20111.04-1.08l4.5%204.25a.75.75%200%20010%201.08l-4.5%204.25a.75.75%200%2001-1.06-.02z%22%20clip-rule%3D%22evenodd%22%20%2F%3E%3C%2Fsvg%3E)
  }
  
  @media (min-width: 1024px) {
    :root {
      --unit-base: 1vw
    }
  }
  
  footer {
    padding-inline: var(--unit-size-000)
  }
  
  @media (min-width: 1024px) {
    footer {
      padding-inline: var(--unit-size-3)
    }
  }
  
  [x-cloak] {
    display: none!important
  }

/**********
追記
**********/
body.CP_Index main .movie > div:nth-child(2) > div:nth-child(2) {
  margin-top: var(--unit-size-6);
  text-align: center;
}



/**********
追記
**********/
  .Pagination {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    font-weight: 700;
    gap: var(--unit-size-2);
    justify-content: center
  }
  @media (min-width: 1024px) {
    .Pagination {
      gap: var(--unit-size-4);
    }
  }

  .Pagination .page_links, .Pagination .page_none {
    display: none;
  }
  
  .Pagination .prev, .Pagination .next, .Pagination .prev2, .Pagination .next2 {
    aspect-ratio: var(--ratio-square);
    width: var(--unit-size-6);
    height: var(--unit-size-6)
  }
  
  .Pagination a, .Pagination button {
    border: 2px solid var(--color-text);
    border-radius: var(--radius-round);
    color: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color .2s var(--ease-2), transform .2s var(--ease-2)
  }

  .Pagination .status a, .Pagination .status button {
    border: none;
  }

  .Pagination a.prev:before, .Pagination button.prev:before, .Pagination a.next:before, .Pagination button.next:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-image: var(--icon-chevron-right);
    background-repeat: no-repeat;
    background-position: center;
    transform: translate(2%)
  }
  
  .Pagination a.prev2:before, .Pagination button.prev2:before, .Pagination a.next2:before, .Pagination button.next2:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-image: var(--icon-chevron-right2);
    background-repeat: no-repeat;
    background-position: center;
    transform: translate(2%)
  }

  .Pagination a.prev:before, .Pagination button.prev:before, .Pagination a.prev2:before, .Pagination button.prev2:before {
    transform: translate(-2%) rotate(180deg)
  }
  
  .Pagination a svg, .Pagination button svg {
    block-size: var(--unit-size-4)
  }
  
  .Pagination a:hover, .Pagination button:hover {
    background-color: var(--color-primary)
  }
  
  .Pagination a.prev:hover, .Pagination button.prev:hover, .Pagination a.prev2:hover, .Pagination button.prev2:hover {
    transform: translate(-5%)
  }
  
  .Pagination a.next:hover, .Pagination button.next:hover, .Pagination a.next2:hover, .Pagination button.next2:hover {
    transform: translate(5%)
  }
  
  .Pagination .status {
    align-items: center;
    display: flex;
    gap: var(--unit-size-0)
  }
  
  .Pagination button {
    background-color: transparent;
    cursor: pointer;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
  }

  .CardMenuItem .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }