@charset "UTF-8";
/* CSS Document */
/* ==================================
レスポンシブ設計
===================================*/
.pc {
  display: block; }
  @media screen and (max-width: 897px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media screen and (max-width: 897px) {
    .sp {
      display: block; } }

.inner {
  max-width: 1140px;
  margin: auto; }
  @media screen and (max-width: 897px) {
    .inner {
      margin: 0 20px; } }

.mt-mainview__box {
  width: 100%;
  height: 50vh;
  background: #222;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative; }
  @media screen and (max-width: 897px) {
    .mt-mainview__box {
      height: 30vh; } }
  .mt-mainview__box .txt h1 .jp {
    display: block;
    font-size: 4.0rem;
    line-height: 1.4;
    font-weight: 700; }
    @media screen and (max-width: 897px) {
      .mt-mainview__box .txt h1 .jp {
        font-size: 3.0rem; } }
  .mt-mainview__box .txt h1 .small {
    font-size: 2.5rem;
    line-height: 1.4;
    display: block;
    margin: 10px 0 0 0; }
    @media screen and (max-width: 897px) {
      .mt-mainview__box .txt h1 .small {
        font-size: 1.8rem; } }
  .mt-mainview__box .txt p {
    margin: 30px 0 0 0;
    text-align: center; }
    @media screen and (max-width: 897px) {
      .mt-mainview__box .txt p {
        margin: 20px 20px 0 20px;
        text-align: left;
        font-size: 1.4rem; } }
  .mt-mainview__box ul {
    position: absolute;
    right: 2%;
    top: 2%;
    color: #fff;
    display: flex;
    justify-content: flex-end;
    font-size: 1.3rem; }
    @media screen and (max-width: 897px) {
      .mt-mainview__box ul {
        font-size: 1.2rem; } }
    .mt-mainview__box ul li:not(:last-of-type)::after {
      margin: 0 0 0 10px;
      padding: 0 10px 0 0;
      content: "/"; }
    .mt-mainview__box ul li a {
      color: #fff; }

/* ===============================
service
=============================== */
.service {
  padding: 120px 0 60px 0; }
  @media screen and (max-width: 897px) {
    .service {
      padding: 40px 0 20px 0; } }
  .service__box {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 897px) {
      .service__box {
        display: block; } }
    .service__box__item {
      width: 31%; }
      @media screen and (max-width: 897px) {
        .service__box__item {
          width: 100%; } }
      .service__box__item .img img {
        width: 100%; }
      .service__box__item .txt h2 {
        text-align: center;
        font-size: 2.0rem;
        font-weight: 500;
        padding: 20px 0; }
        @media screen and (max-width: 897px) {
          .service__box__item .txt h2 {
            font-size: 1.8rem;
            padding: 10px 0; } }
      .service__box__item .sbtn {
        margin: 20px 0 0 0;
        position: relative;
        width: 100%; }
        .service__box__item .sbtn::before {
          content: '';
          width: 8px;
          height: 8px;
          border: 0;
          border-top: 2px solid #222;
          border-right: 2px solid #222;
          transform: rotate(45deg);
          position: absolute;
          top: 50%;
          left: 25px;
          margin-top: -6px; }
        .service__box__item .sbtn a {
          text-align: center;
          width: 100%;
          border: 1px solid #eee;
          display: block;
          padding: 15px; }
          .service__box__item .sbtn a:hover {
            background: #f7f7f7; }
        .service__box__item .sbtn:not(:first-of-type) {
          margin: -1px 0 0 0; }
        .service__box__item .sbtn span::after {
          margin-left: 5px;
          font-family: "Font Awesome 5 Free";
          font-size: 1.4rem;
          content: '\f35d';
          font-weight: 900; }
      @media screen and (max-width: 897px) {
        .service__box__item:not(:first-of-type) {
          margin: 20px 0 0 0; } }

/* ==================================
store 一覧
===================================*/
.store {
  max-width: 1140px;
  margin: auto auto 90px auto; }
  @media screen and (max-width: 897px) {
    .store .inner {
      margin: 0; } }
  .store__box {
    margin: 90px 0 0 0; }
    .store__box__list {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      gap: 40px; }
      @media screen and (max-width: 897px) {
        .store__box__list {
          display: block; } }
      .store__box__list__item {
        width: calc((100% - 80px) / 3);
        margin-bottom: 20px; }
        @media screen and (max-width: 897px) {
          .store__box__list__item {
            width: 100%;
            margin-bottom: 0;
            padding: 20px; } }
        .store__box__list__item h3 {
          font-size: 1.8rem;
          font-weight: 700;
          text-align: center;
          padding: 0 0 20px 0;
          margin: 0 0 20px 0;
          position: relative; }
          @media screen and (max-width: 897px) {
            .store__box__list__item h3 {
              text-align: left;
              font-size: 1.6rem;
              padding: 0 0 10px 0;
              margin: 0 0 15px 0; } }
          .store__box__list__item h3::after {
            content: "";
            position: absolute;
            width: 50px;
            height: 5px;
            background: #f4f4f4;
            left: 50%;
            transform: translateX(-50%);
            bottom: 0;
            border-radius: 100px; }
            @media screen and (max-width: 897px) {
              .store__box__list__item h3::after {
                left: 0;
                transform: none; } }
        @media screen and (max-width: 897px) {
          .store__box__list__item .item-body {
            display: flex;
            justify-content: space-between;
            align-items: flex-start; } }
        @media screen and (max-width: 897px) {
          .store__box__list__item .item-body .img {
            width: 40%; } }
        .store__box__list__item .item-body .img img {
          max-width: 100%;
          height: auto;
          display: block; }
        .store__box__list__item .item-body .txt {
          padding: 15px 0 0 0; }
          @media screen and (max-width: 897px) {
            .store__box__list__item .item-body .txt {
              width: 55%;
              padding: 0; } }
          .store__box__list__item .item-body .txt p {
            padding: 0 0 15px 0;
            margin: 0 0 15px 0;
            border-bottom: 1px dotted #ccc;
            display: flex;
            align-items: center; }
            @media screen and (max-width: 897px) {
              .store__box__list__item .item-body .txt p {
                padding: 0 0 5px 0;
                margin: -2px 0 6px 0;
                border-bottom: 1px dotted #ccc;
                font-size: 1.5rem; } }
            .store__box__list__item .item-body .txt p span:first-of-type {
              width: 25%; }
              @media screen and (max-width: 897px) {
                .store__box__list__item .item-body .txt p span:first-of-type {
                  display: none; } }
            @media screen and (max-width: 897px) {
              .store__box__list__item .item-body .txt p span:last-of-type {
                width: 100%; } }
            .store__box__list__item .item-body .txt p.tel a {
              color: #222;
              font-size: 1.75rem;
              font-weight: 700;
              line-height: 1; }
              @media screen and (max-width: 897px) {
                .store__box__list__item .item-body .txt p.tel a {
                  font-size: 1.5rem; } }
            @media screen and (max-width: 897px) {
              .store__box__list__item .item-body .txt p:last-of-type {
                border-bottom: none; } }
        .store__box__list__item .btn {
          width: 100%;
          padding: 0; }
          .store__box__list__item .btn a {
            display: block;
            background: #f7f7f7;
            /* 元の背景色 */
            color: #222;
            /* 元の文字・矢印色 */
            border: 1px solid #eee;
            padding: 15px;
            width: 100%;
            border-radius: 5px;
            text-align: center;
            text-decoration: none;
            position: relative;
            /* ゆるやかな変化の設定 */
            transition: background 0.3s ease, color 0.3s ease; }
            .store__box__list__item .btn a::after {
              content: "";
              position: absolute;
              right: 20px;
              /* 初期位置 */
              top: 50%;
              transform: translateY(-50%) rotate(45deg);
              width: 8px;
              height: 8px;
              border-top: 2px solid currentColor;
              /* 文字色(color)と連動 */
              border-right: 2px solid currentColor;
              /* 矢印の動きをなめらかに */
              transition: right 0.3s ease; }
            .store__box__list__item .btn a:hover {
              background: #222;
              /* 背景を濃い色に反転 */
              color: #fff;
              /* 文字を白に反転 */ }
              .store__box__list__item .btn a:hover::after {
                right: 15px;
                /* 矢印を少し右に寄せる */ }
            @media screen and (max-width: 897px) {
              .store__box__list__item .btn a {
                margin: 5px 0 0 0;
                padding: 8px 5px;
                font-size: 1.3rem; } }
        @media screen and (max-width: 897px) {
          .store__box__list__item:nth-child(odd) {
            background: #f7f7f7; } }
    .store__box__headline {
      text-align: center;
      padding: 0 0 40px 0; }
      .store__box__headline h2 {
        font-size: 2.2rem;
        font-weight: 600;
        padding: 0 0 40px 0;
        position: relative; }
        .store__box__headline h2::after {
          content: "";
          position: absolute;
          width: 50px;
          height: 5px;
          background: #222;
          left: 50%;
          transform: translateX(-50%);
          bottom: 0;
          border-radius: 100px; }

/* ===============================
tab切り替え
=============================== */
/* タブ切り替えの基本表示設定 */
.js-tab-content {
  display: none; }
  .js-tab-content.is-active {
    display: block; }

/* 親要素：ガタつき防止 */
.js-tab-wrapper {
  position: relative;
  width: 100%; }

/* タブ本体 */
.store__headline {
  width: 100%;
  background: #f7f7f7;
  padding: 20px;
  transition: opacity 0.3s ease;
  margin: 90px 0 0 0;
  /* 右側固定時のスタイル */ }
  .store__headline__box {
    display: flex;
    justify-content: space-between;
    max-width: 640px;
    margin: auto; }
    .store__headline__box__item {
      background: #fff;
      width: calc(100% / 2 - 20px);
      border: 1px solid #222;
      cursor: pointer; }
      .store__headline__box__item .inbox {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        .store__headline__box__item .inbox .img {
          width: 40%; }
          .store__headline__box__item .inbox .img img {
            max-width: 100%; }
        .store__headline__box__item .inbox .txt {
          padding: 15px;
          width: 60%;
          text-align: center; }
      .store__headline__box__item.is-active {
        background: #222;
        color: #fff; }
  .store__headline.is-sticky {
    position: fixed;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    z-index: 9999;
    width: auto; }
    .store__headline.is-sticky .store__headline__box {
      flex-direction: column;
      gap: 10px;
      padding: 10px;
      background: rgba(255, 255, 255, 0.9);
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
      border-radius: 10px; }
      .store__headline.is-sticky .store__headline__box__item {
        width: 80px; }
        .store__headline.is-sticky .store__headline__box__item .txt {
          font-size: 10px; }

/* ==================================
store 詳細ページ用一覧
===================================*/
.store-footer {
  max-width: 1140px;
  margin: auto auto 90px auto; }
  .store-footer__box {
    margin: 90px 0 0 0; }
    .store-footer__box__list {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      gap: 40px; }
      .store-footer__box__list__item {
        /* 幅の計算：
   全体の100%から、隙間2つ分（40px * 2 = 80px）を引いて、3で割る
*/
        width: calc((100% - 120px) / 4); }
        .store-footer__box__list__item .img img {
          max-width: 100%; }
        .store-footer__box__list__item .txt {
          padding: 15px 0 0 0; }
          .store-footer__box__list__item .txt h3 {
            font-size: 1.6rem;
            font-weight: 600;
            text-align: center;
            padding: 0 0 15px 0;
            margin: 0 0 15px 0;
            position: relative; }
            .store-footer__box__list__item .txt h3::after {
              content: "";
              position: absolute;
              width: 50px;
              height: 5px;
              background: #f4f4f4;
              left: 50%;
              transform: translateX(-50%);
              bottom: 0;
              border-radius: 100px; }
          .store-footer__box__list__item .txt p {
            padding: 0 0 8px 0;
            margin: 0 0 8px 0;
            border-bottom: 1px dotted #ccc;
            font-size: 1.5rem; }
            .store-footer__box__list__item .txt p.tel a {
              color: #222;
              font-size: 1.5rem;
              line-height: 1;
              font-weight: 700; }
            .store-footer__box__list__item .txt p.adr {
              border-bottom: none !important; }
        .store-footer__box__list__item .btn {
          width: 100%;
          padding: 0; }
          .store-footer__box__list__item .btn a {
            font-size: 1.4rem;
            display: block;
            background: #f7f7f7;
            /* 元の背景色 */
            color: #222;
            /* 元の文字・矢印色 */
            border: 1px solid #eee;
            padding: 10px 15px;
            width: 100%;
            border-radius: 5px;
            text-align: center;
            text-decoration: none;
            position: relative;
            /* ゆるやかな変化の設定 */
            transition: background 0.3s ease, color 0.3s ease; }
            .store-footer__box__list__item .btn a::after {
              content: "";
              position: absolute;
              right: 20px;
              /* 初期位置 */
              top: 50%;
              transform: translateY(-50%) rotate(45deg);
              width: 8px;
              height: 8px;
              border-top: 2px solid currentColor;
              /* 文字色(color)と連動 */
              border-right: 2px solid currentColor;
              /* 矢印の動きをなめらかに */
              transition: right 0.3s ease; }
            .store-footer__box__list__item .btn a:hover {
              background: #222;
              /* 背景を濃い色に反転 */
              color: #fff;
              /* 文字を白に反転 */ }
              .store-footer__box__list__item .btn a:hover::after {
                right: 15px;
                /* 矢印を少し右に寄せる */ }
    .store-footer__box__headline {
      text-align: center;
      padding: 0 0 30px 0; }
      .store-footer__box__headline h2 {
        font-size: 2.2rem;
        font-weight: 600;
        padding: 0 0 30px 0;
        position: relative; }
        .store-footer__box__headline h2::after {
          content: "";
          position: absolute;
          width: 50px;
          height: 5px;
          background: #222;
          left: 50%;
          transform: translateX(-50%);
          bottom: 0;
          border-radius: 100px; }

/* ==================================
store 詳細ページ
===================================*/
.store-details {
  max-width: 1140px;
  margin: auto;
  padding: 90px 0; }
  @media screen and (max-width: 897px) {
    .store-details {
      padding: 40px 0; } }
  .store-details__box {
    display: flex;
    justify-content: space-between; }
    .store-details__box .img {
      width: 52%; }
      .store-details__box .img .main-slider {
        width: 100%;
        margin-bottom: 1px; }
        .store-details__box .img .main-slider img {
          width: 100%;
          height: auto;
          aspect-ratio: 4 / 3;
          object-fit: cover; }
      .store-details__box .img .thumb-slider {
        height: 80px;
        box-sizing: border-box;
        padding: 0; }
        .store-details__box .img .thumb-slider .swiper-slide {
          /*width: 25%;*/
          height: 100%;
          opacity: 0.4;
          cursor: pointer; }
          .store-details__box .img .thumb-slider .swiper-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block; }
        .store-details__box .img .thumb-slider .swiper-slide-thumb-active {
          opacity: 1; }
    .store-details__box .txt {
      width: 44%;
      position: relative; }
      .store-details__box .txt .headline {
        padding: 0; }
        .store-details__box .txt .headline span {
          font-size: 1.6rem;
          padding: 0;
          color: #666; }
        .store-details__box .txt .headline h1 {
          padding: 10px 0 30px 0;
          margin: 0 0 30px 0;
          border-bottom: 1px solid #eee;
          text-align: left;
          font-size: 2.4rem; }
      .store-details__box .txt dl {
        padding: 0;
        margin: 0 0 20px 0; }
        .store-details__box .txt dl div {
          display: flex;
          justify-content: space-between;
          border-bottom: 1px dotted #eee;
          padding: 0 0 15px 0;
          margin: 0 0 15px 0; }
          .store-details__box .txt dl div dt {
            width: 20%; }
          .store-details__box .txt dl div dd {
            width: 80%; }
      .store-details__box .txt .greeting {
        background: #f7f7f7;
        padding: 15px; }
        @media screen and (max-width: 897px) {
          .store-details__box .txt .greeting {
            margin: 0 0 20px 0; } }
        .store-details__box .txt .greeting h2 {
          font-size: 1.6rem;
          font-weight: 600;
          padding: 0 0 10px 0; }
        .store-details__box .txt .greeting p {
          font-size: 1.5rem;
          line-height: 1.6;
          padding: 0;
          margin: 0;
          text-align: justify; }
      .store-details__box .txt .contact {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        display: flex;
        justify-content: space-between;
        gap: 2px; }
        .store-details__box .txt .contact .tel, .store-details__box .txt .contact .fax {
          width: calc(50% - 1px); }
          .store-details__box .txt .contact .tel a, .store-details__box .txt .contact .fax a {
            display: flex;
            flex-direction: row;
            align-items: center;
            background: #222;
            color: #fff;
            text-decoration: none;
            transition: background 0.3s;
            min-height: 65px; }
            .store-details__box .txt .contact .tel a:hover, .store-details__box .txt .contact .fax a:hover {
              background: #444; }
            .store-details__box .txt .contact .tel a .icon-block, .store-details__box .txt .contact .fax a .icon-block {
              display: flex;
              flex-direction: column;
              align-items: center;
              justify-content: center;
              width: 65px;
              height: 65px;
              flex-shrink: 0;
              background: rgba(255, 255, 255, 0.05); }
              .store-details__box .txt .contact .tel a .icon-block .icon, .store-details__box .txt .contact .fax a .icon-block .icon {
                width: 28px;
                height: 28px;
                display: flex;
                align-items: center;
                justify-content: center; }
                .store-details__box .txt .contact .tel a .icon-block .icon svg, .store-details__box .txt .contact .fax a .icon-block .icon svg {
                  width: 100%;
                  height: 100%;
                  fill: currentColor; }
              .store-details__box .txt .contact .tel a .icon-block .label, .store-details__box .txt .contact .fax a .icon-block .label {
                font-size: 1rem;
                font-weight: 700;
                margin-top: 4px;
                line-height: 1;
                letter-spacing: 2px; }
              @media screen and (max-width: 897px) {
                .store-details__box .txt .contact .tel a .icon-block, .store-details__box .txt .contact .fax a .icon-block {
                  width: 60px;
                  height: 60px; } }
            .store-details__box .txt .contact .tel a .num, .store-details__box .txt .contact .fax a .num {
              flex: 1;
              text-align: center;
              font-size: 1.9rem;
              font-weight: 700;
              line-height: 1;
              white-space: nowrap;
              letter-spacing: 0.04em; }
              @media screen and (max-width: 897px) {
                .store-details__box .txt .contact .tel a .num, .store-details__box .txt .contact .fax a .num {
                  font-size: 1.35rem; } }
  .store-details .store-details__box .txt.is-contact-static .contact {
    position: static;
    margin-top: 20px; }
  .store-details .store-details__box .txt .contact {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%; }

/* メインスライダーのコンテナを相対位置に設定 */
.main-slider {
  position: relative;
  width: 100%;
  margin-bottom: 10px;
  overflow: hidden;
  /* 矢印ボタンの形状を正円に固定 */ }
  .main-slider img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block; }
  .main-slider .swiper-button-next,
  .main-slider .swiper-button-prev {
    width: 34px;
    /* 横幅を固定 */
    height: 34px;
    /* 高さを横幅と同じにする */
    background: rgba(255, 255, 255, 0.8);
    /* 背景を白くすると見やすいです */
    border-radius: 50%;
    /* 正円にする */
    color: #000;
    /* 矢印の色 */
    margin-top: -22px;
    /* (heightの半分) 上下に中央配置 */
    /* ホバー時の演出（任意） */ }
    .main-slider .swiper-button-next::after,
    .main-slider .swiper-button-prev::after {
      font-size: 20px;
      /* 矢印自体のサイズ */
      font-weight: bold; }
    .main-slider .swiper-button-next:hover,
    .main-slider .swiper-button-prev:hover {
      background: #fff; }

/* サムネイル側の設定 */
.thumb-slider {
  margin-top: 1px; }
  .thumb-slider .swiper-slide {
    aspect-ratio: 4 / 3;
    opacity: 0.6;
    cursor: pointer;
    transition: opacity 0.3s; }
    .thumb-slider .swiper-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block; }
    .thumb-slider .swiper-slide.swiper-slide-thumb-active {
      opacity: 1; }

.swiper, .swiper-container {
  background: #fff; }

/* サムネ帯の高さはここで決める（PC） */
.store-details__box .img .thumb-slider {
  height: 80px; }

/* SPは縮める */
@media (max-width: 768px) {
  .store-details__box .img .thumb-slider {
    height: 56px; } }
/* 各スライドは帯に合わせる */
.store-details__box .img .thumb-slider .swiper-slide {
  height: 100%;
  /* aspect-ratio: 4 / 3; ← もし残ってたら削除/無効化 */
  aspect-ratio: auto; }

/* 画像は枠にフィットさせる（縦横比は崩さない） */
.store-details__box .img .thumb-slider .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; }

.access {
  max-width: 1140px;
  margin: auto;
  background: #f7f7f7;
  padding: 60px; }
  .access__headline {
    padding: 0 0 40px 0;
    text-align: center; }
    .access__headline span {
      font-size: 1.5rem; }
    .access__headline h2 {
      padding: 5px 0 0 0;
      font-size: 2.2rem;
      font-weight: 600; }
  .access__box {
    display: flex;
    justify-content: space-between;
    position: relative; }
    .access__box .view {
      width: 48%; }
      .access__box .view h3 {
        font-size: 1.7rem;
        font-weight: 600;
        padding: 0 0 15px 0; }
      .access__box .view p {
        text-align: justify; }
    .access__box .map {
      width: 48%;
      position: absolute;
      bottom: 5px;
      right: 0; }
  .access__map {
    width: 100%;
    margin-top: 40px;
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 897px) {
      .access__map {
        margin: 20px 0 0 0; } }
    .access__map a {
      display: flex;
      flex-direction: row;
      align-items: center;
      padding: 0;
      background: #222;
      color: #fff;
      text-decoration: none;
      transition: background 0.3s;
      min-height: 65px;
      width: 100%;
      max-width: 320px; }
      @media screen and (max-width: 897px) {
        .access__map a {
          max-width: 100%; } }
      .access__map a:hover {
        background: #444; }
      .access__map a .icon-block {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 65px;
        height: 65px;
        flex-shrink: 0;
        background: rgba(255, 255, 255, 0.1); }
        .access__map a .icon-block .icon {
          width: 28px;
          height: 28px;
          display: flex;
          align-items: center;
          justify-content: center; }
          .access__map a .icon-block .icon svg {
            width: 100%;
            height: 100%;
            fill: currentColor; }
        @media screen and (max-width: 897px) {
          .access__map a .icon-block {
            width: 55px;
            height: 55px; } }
      .access__map a .txt-block {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        line-height: 1.2; }
        .access__map a .txt-block .main-txt {
          font-size: 1.6rem;
          font-weight: 700;
          margin: 0;
          white-space: nowrap; }
          @media screen and (max-width: 897px) {
            .access__map a .txt-block .main-txt {
              font-size: 1.5rem; } }
        .access__map a .txt-block .sub-txt {
          font-size: 1rem;
          font-weight: 400;
          letter-spacing: 0.1em;
          margin-top: 2px;
          opacity: 0.7; }

/* ADD SCSS 2026.01.15 */
/*-------------------------------------------------------------
	.store__headline
-------------------------------------------------------------*/
@media screen and (max-width: 897px) {
  .store__headline.is-sticky {
    margin: 0;
    top: auto;
    bottom: 80px;
    right: 0; } }
@media screen and (max-width: 897px) {
  .store__headline.is-sticky .store__headline__box {
    flex-direction: inherit; } }
.store__headline.is-sticky .store__headline__box__item {
  width: auto; }
  .store__headline.is-sticky .store__headline__box__item .txt {
    writing-mode: vertical-rl; }
.store__headline__box__item .inbox {
  display: inherit; }
  .store__headline__box__item .inbox .txt {
    width: auto;
    text-align: center; }

.store__headline__address {
  padding: 40px 20px 0 20px;
  text-align: center; }
  @media screen and (max-width: 897px) {
    .store__headline__address {
      padding: 20px 20px 0 20px; } }

/*-------------------------------------------------------------
	.store__box__list
-------------------------------------------------------------*/
@media screen and (max-width: 897px) {
  .store__box__list {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    padding: 20px; }
    .store__box__list__item {
      width: calc(100% / 2 - 10px);
      padding: 0;
      margin-bottom: 30px;
      position: relative; }
      .store__box__list__item:nth-child(odd) {
        background: none; }
      .store__box__list__item .item-body {
        display: grid; }
        .store__box__list__item .item-body .img,
        .store__box__list__item .item-body .txt {
          width: auto; }
        .store__box__list__item .item-body .img {
          margin-bottom: 10px; }
        .store__box__list__item .item-body .txt .adr {
          min-height: 48px; }
      .store__box__list__item h3 {
        min-height: 46px; } }
/*-------------------------------------------------------------
	.store-details
-------------------------------------------------------------*/
@media screen and (max-width: 897px) {
  .store-details__box {
    display: inherit; }
    .store-details__box .txt,
    .store-details__box .img {
      width: auto;
      margin: 20px 0 0 0; }
    .store-details__box .txt dl div {
      gap: 20px; }
    .store-details__box .txt .contact {
      position: static; }

  .access {
    padding: 40px 20px; }
    .access .inner {
      margin: 0; }
    .access__box {
      display: inherit; }
      .access__box .view {
        width: auto; }
      .access__box .map {
        width: auto;
        position: static; } }
/*-------------------------------------------------------------
	.store-footer
-------------------------------------------------------------*/
@media screen and (max-width: 897px) {
  .store-footer__box__list {
    gap: 20px; }
    .store-footer__box__list__item {
      width: calc(100% / 2 - 10px);
      margin-bottom: 20px;
      position: relative; }
      .store-footer__box__list__item .txt .adr {
        min-height: 48px; }
      .store-footer__box__list__item .txt h3 {
        min-height: 46px; } }
