@charset "UTF-8";
.container-menu {
  width: 100%;
}

.container-menu *,
.container-menu *::before,
.container-menu *::after {
  box-sizing: border-box;
}

.container-menu img {
  width: auto;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border-style: none;
  outline: none;
}

.container-menu button {
  font: inherit;
  color: #000;
  appearance: none;
  cursor: pointer;
  border-radius: 0;
  outline: none;
}

.container-menu button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.container-menu button,
.container-menu input,
.container-menu a {
  -webkit-tap-highlight-color: transparent;
}

.single-menu__section {
  padding: 10.6667vw 0;
}

.single-menu__section--bgc01 {
  background-color: #f3f1ee;
}

.single-menu__section--bgc01 + .single-menu__section--bgc01 {
  border-top: 1px solid #ddd;
}

.single-menu__section--bgc02 {
  color: #fff;
  background-color: #978b7c;
}

.single-menu__section--bgc02 .single-menu__section-title::after {
  background-color: #fff;
}

.single-menu__section--bgc02 .img-box figcaption {
  color: #fff !important;
}

.single-menu__section--bgc03 {
  color: #fff;
  background-image: linear-gradient(
    67deg,
    rgb(151 139 124) 0%,
    rgb(195 187 176) 83%,
    rgb(151 139 124) 100%
  );
}

.single-menu__section--bgc03 .single-menu__section-title::after {
  background-color: #fff;
}

.single-menu__section--bgc03 .img-box figcaption {
  color: #fff !important;
}

.single-menu__section-inner {
  width: 90%;
  margin: 0 auto;
}

.single-menu__section-title {
  position: relative;
  padding-bottom: 5.3333vw;
  margin-bottom: 8vw;
  font-size: 5.3333vw;
  font-weight: bold;
  text-align: center;
}

.single-menu__section-title::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 13.3333vw;
  height: 0.5333vw;
  content: "";
  background-color: #978b7c;
  transform: translateX(-50%);
}

.single-menu__section .text-box * + * {
  margin-top: 1em;
}

.single-menu__section .text-box p {
  font-size: 3.7333vw;
  text-align: justify;
}

.single-menu__section .text-box ul li,
.single-menu__section .text-box ol li {
  font-size: 3.7333vw;
}

.single-menu__section .img-box img {
  width: 100%;
}

.single-menu__section .img-box figcaption {
  margin-top: 0.5em;
  color: #888;
  text-align: center;
}

.single-menu__section-more-btn {
  text-align: center;
}

.single-menu__section-more-btn a {
  display: inline-block;
  padding: 2.6667vw 8vw;
  font-size: 4.2667vw;
  border-radius: 26.6667vw;
}

.single-menu__section-more-btn--color01 a {
  color: #696156;
  background-color: #fff;
}

.single-menu__section-more-btn--color02 a {
  color: #fff;
  background-color: #978b7c;
}

.single-menu__hero {
  width: 100%;
}

.single-menu__hero-img {
  width: 100%;
  height: auto;
}

.single-menu__hero-img picture {
  display: block;
  width: 100%;
}

.single-menu__hero-img img {
  width: 100%;
  height: auto;
}

.single-menu__case .single-menu__section-more-btn {
  margin-top: 8vw;
}

.single-menu__layout-01 .block {
  display: flex;
  flex-direction: column;
  gap: 5.3333vw;
}

.single-menu__layout-01 .block:not(:first-child) {
  margin-top: 5.3333vw;
}

.single-menu__layout-02 {
  display: flex;
  flex-direction: column;
  gap: 5.3333vw;
}

.single-menu__layout-02 .list li {
  position: relative;
  padding-left: 1.2em;
  margin-bottom: 0.5em;
  font-size: 4vw;
}

.single-menu__layout-02 .list li::before {
  position: absolute;
  top: 0.2em;
  left: 0;
  width: 1em;
  height: auto;
  aspect-ratio: 1/1;
  content: "";
  background-image: url("../img/common/icon_check_02.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}

.single-menu__layout-03 .list li:not(:first-child) {
  margin-top: 8vw;
}

.single-menu__layout-03 .list li .title {
  padding: 1.6vw 2.6667vw;
  margin-bottom: 2.6667vw;
  font-size: 4.2667vw;
  background-color: #f3f1ee;
  border-radius: 1.6vw;
}

.single-menu__layout-05 {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.single-menu__layout-05 .flow-list {
  padding: 0 5%;
  counter-reset: flow;
}

.single-menu__layout-05 .flow-list.swiper {
  overflow: hidden;
}

.single-menu__layout-05 .flow-list__pagination.swiper-pagination {
  position: static;
  margin-top: 5.3333vw;
}

.single-menu__layout-05
  .flow-list__pagination.swiper-pagination
  .swiper-pagination-bullet {
  width: 2.6667vw;
  height: 2.6667vw;
  margin: 0 1.6vw;
  background-color: #fff;
  border: 1px solid rgb(105 97 86 / 40%);
  opacity: 1;
}

.single-menu__layout-05
  .flow-list__pagination.swiper-pagination
  .swiper-pagination-bullet-active {
  background-color: #696156;
}

.is-single .single-menu__layout-05 .flow-list__pagination {
  display: none;
}

.single-menu__layout-05 .flow-item {
  position: relative;
  height: auto;
}

.single-menu__layout-05 .flow-item:not(:last-child)::after {
  position: absolute;
  top: 50%;
  left: calc(100% + 0.2667vw);
  width: 3.7333vw;
  height: auto;
  aspect-ratio: 1/1;
  content: "";
  border-top: 1px solid #978b7c;
  border-right: 1px solid #978b7c;
  transform: translate(0, -50%) rotate(45deg);
}

.single-menu__layout-05 .flow-item .title {
  position: relative;
  padding-left: 12.2667vw;
  margin-bottom: 2.6667vw;
  font-size: 4.5333vw;
}

.single-menu__layout-05 .flow-item .title::before {
  position: absolute;
  top: -0.4em;
  left: 0;
  font-size: 8.5333vw;
  font-weight: bold;
  color: rgb(105 97 86 / 20%);
  content: counter(flow, decimal-leading-zero);
  counter-increment: flow;
}

.single-menu__layout-05 .flow-item .wrap {
  display: flex;
  flex-direction: column;
  gap: 5.3333vw;
}

.single-menu__layout-05 .flow-item .img-box figure {
  width: 100%;
  height: auto;
  aspect-ratio: 1/0.6;
  overflow: hidden;
}

.single-menu__layout-05 .flow-item .img-box figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-menu__cta {
  padding: 10.6667vw 0;
  background-image: linear-gradient(
    67deg,
    rgb(151 139 124) 0%,
    rgb(195 187 176) 83%,
    rgb(151 139 124) 100%
  );
}

.single-menu__cta-inner {
  width: 90%;
  margin: 0 auto;
}

.single-menu__cta-head {
  margin-bottom: 8vw;
}

.single-menu__cta-title {
  font-size: 5.3333vw;
  color: #fff;
  text-align: center;
}

.single-menu__cta-text {
  margin-top: 4vw;
  font-size: 3.7333vw;
  color: #fff;
  text-align: justify;
}

.single-menu__cta-list {
  display: flex;
  flex-direction: column;
  gap: 5.3333vw;
  width: 90%;
  margin: 0 auto;
}

.single-menu__cta-item a {
  display: flex;
  gap: 2.6667vw;
  align-items: center;
  justify-content: center;
  height: 14.4vw;
  border-radius: 26.6667vw;
}

.single-menu__cta-item .icon {
  display: block;
  width: 6.9333vw;
}

.single-menu__cta-item .text {
  display: block;
  font-size: 4.8vw;
  color: #fff;
}

.single-menu__cta-item--web a {
  background-color: #e9c069;
}

.single-menu__cta-item--line a {
  background-color: #00b900;
}

@media (width >= 768px) {
  .single-menu__section {
    padding: 70px 0;
  }

  .single-menu__section-inner {
    width: 90%;
    max-width: 1024px;
  }

  .single-menu__section-title {
    padding-bottom: 24px;
    margin-bottom: 40px;
    font-size: 26px;
  }

  .single-menu__section-title::after {
    width: 50px;
    height: 2px;
  }

  .single-menu__section .text-box p {
    font-size: 16px;
  }

  .single-menu__section .text-box ul li,
  .single-menu__section .text-box ol li {
    font-size: 16px;
  }

  .single-menu__section-more-btn a {
    padding: 12px 40px;
    font-size: 16px;
    border-radius: 100px;
    transition:
      background-color 0.3s ease,
      color 0.3s ease;
  }

  .single-menu__section-more-btn--color01 a:hover {
    color: #fff;
    background-color: #696156;
  }

  .single-menu__section-more-btn--color02 a {
    border: 1px solid #978b7c;
  }

  .single-menu__section-more-btn--color02 a:hover {
    color: #978b7c;
    background-color: #fff;
  }

  .single-menu__hero--fixed {
    max-width: 1024px;
    margin: 0 auto;
  }

  .single-menu__layout-01 {
    flex-direction: row;
    gap: 40px;
    align-items: flex-start;
  }

  .single-menu__layout-01 .text-box {
    flex: 1;
  }

  .single-menu__layout-01 .img-box {
    width: 40%;
  }

  .single-menu__case .single-menu__section-more-btn {
    margin-top: 40px;
  }

  .single-menu__layout-01 .block {
    flex-direction: row;
    gap: 5%;
  }

  .single-menu__layout-01 .block:not(:first-child) {
    margin-top: 40px;
  }

  .single-menu__layout-01 .block .text-box {
    flex: 1;
  }

  .single-menu__layout-01 .block .img-box {
    width: 40%;
  }

  .single-menu__layout-02 {
    flex-direction: row;
    gap: 5%;
    align-items: flex-start;
  }

  .single-menu__layout-02 .img-box {
    width: 40%;
  }

  .single-menu__layout-02 .list {
    flex: 1;
  }

  .single-menu__layout-02 .list li {
    padding-left: 1.3em;
    margin-bottom: 0.5em;
    font-size: 18px;
  }

  .single-menu__layout-03 .list li:not(:first-child) {
    margin-top: 30px;
  }

  .single-menu__layout-03 .list li .title {
    padding: 10px 15px;
    margin-bottom: 16px;
    font-size: 18px;
    border-radius: 6px;
  }

  .single-menu__layout-05 {
    width: 100%;
    margin: 0;
  }

  .single-menu__layout-05 .flow-list {
    padding: 0;
  }

  .single-menu__layout-05 .flow-list__wrapper {
    display: flex;
    flex-direction: column;
    gap: 60px;
  }

  .single-menu__layout-05 .flow-list__pagination {
    display: none;
  }

  .single-menu__layout-05 .flow-item {
    position: relative;
    height: auto;
  }

  .single-menu__layout-05 .flow-item:not(:last-child)::after {
    top: calc(100% + 15px);
    left: 15%;
    width: 20px;
    transform: translate(-50%, 0) rotate(135deg);
  }

  .single-menu__layout-05 .flow-item .title {
    padding-left: 46px;
    margin-bottom: 20px;
    font-size: 20px;
  }

  .single-menu__layout-05 .flow-item .title::before {
    top: -0.3em;
    font-size: 30px;
  }

  .single-menu__layout-05 .flow-item .wrap {
    flex-direction: row;
    gap: 5%;
    align-items: flex-start;
  }

  .single-menu__layout-05 .flow-item .img-box {
    width: 30%;
  }

  .single-menu__layout-05 .flow-item .img-box figure {
    width: 100%;
    height: auto;
    aspect-ratio: 1/0.6;
    overflow: hidden;
  }

  .single-menu__layout-05 .flow-item .img-box figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .single-menu__layout-05 .flow-item .text-box {
    flex: 1;
  }

  .single-menu__cta {
    padding: 60px 0;
  }

  .single-menu__cta-inner {
    max-width: 1024px;
  }

  .single-menu__cta-head {
    margin-bottom: 40px;
  }

  .single-menu__cta-title {
    font-size: 26px;
  }

  .single-menu__cta-text {
    margin-top: 20px;
    font-size: 16px;
    text-align: center;
  }

  .single-menu__cta-list {
    flex-direction: row;
    gap: 20px;
    justify-content: center;
    width: 100%;
  }

  .single-menu__cta-item {
    flex: 1;
    max-width: 340px;
  }

  .single-menu__cta-item a {
    gap: 16px;
    height: 60px;
    border-radius: 100px;
    transition: opacity 0.3s ease;
  }

  .single-menu__cta-item a:hover {
    opacity: 0.7;
  }

  .single-menu__cta-item .icon {
    width: 26px;
  }

  .single-menu__cta-item .text {
    font-size: 20px;
  }
}

.c-table-01 {
  width: 100%;
}

.c-table-01 tr th {
  width: 6em;
  padding: 2.6667vw;
  font-size: 3.7333vw;
  text-align: left;
  background-color: #f3f1ee;
  border: 1px solid #bbb;
}

.c-table-01 tr td {
  padding: 2.6667vw;
  font-size: 3.7333vw;
  border: 1px solid #bbb;
}

@media (width >= 768px) {
  .c-table-01 {
    width: 100%;
  }

  .c-table-01 tr th {
    width: 10em;
    padding: 20px;
    font-size: 16px;
  }

  .c-table-01 tr td {
    padding: 20px;
    font-size: 16px;
  }
}

.c-case-list__slide {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.c-case-list.swiper {
  overflow: hidden;
}

.c-case-list__card {
  height: auto;
  padding: 2.6667vw;
  background-color: #fff;
  border-radius: 1.6vw;
}

.c-case-list__card a {
  display: block;
  width: 100%;
  height: 100%;
}

.c-case-list__card-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4/5;
  overflow: hidden;
  border-radius: 1.3333vw;
}

.c-case-list__card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-case-list__pagination.swiper-pagination {
  position: static;
  margin-top: 5.3333vw;
}

.c-case-list__pagination.swiper-pagination .swiper-pagination-bullet {
  width: 2.6667vw;
  height: 2.6667vw;
  margin: 0 1.6vw;
  background-color: #fff;
  border: 1px solid rgb(105 97 86 / 40%);
  opacity: 1;
}

.c-case-list__pagination.swiper-pagination .swiper-pagination-bullet-active {
  background-color: #696156;
}

.is-single .c-case-list__pagination {
  display: none;
}

@media (width >= 768px) {
  .c-case-list__slide {
    width: 100%;
    margin: 0;
  }

  .c-case-list__card {
    padding: 10px;
    border-radius: 6px;
  }

  .c-case-list__card-img {
    border-radius: 5px;
  }

  .c-case-list__pagination.swiper-pagination {
    margin-top: 24px;
  }

  .c-case-list__pagination.swiper-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 6px;
  }

  .is-max3 .c-case-list__pagination {
    display: none;
  }
}

.c-faq-list__item:not(:first-child) {
  margin-top: 4.2667vw;
}

.c-faq-list__item dt button {
  position: relative;
  display: block;
  width: 100%;
  padding: 0.7em 2.6em 0.7em 2.2em;
  font-size: 4vw;
  color: #fff;
  text-align: left;
  background-color: #978b7c;
  border: none;
  border-radius: 1.6vw;
}

.c-faq-list__item dt button::before {
  position: absolute;
  top: 0.35em;
  left: 0.5em;
  font-size: 1.2em;
  content: "Q.";
}

.c-faq-list__item dt button::after {
  position: absolute;
  top: 50%;
  right: 1em;
  width: 3.4667vw;
  height: 3.4667vw;
  content: "";
  background-image: linear-gradient(#fff, #fff), linear-gradient(#fff, #fff);
  background-repeat: no-repeat;
  background-position: center center;
  background-size:
    100% 0.2667vw,
    0.2667vw 100%;
  transform: translateY(-50%);
}

.c-faq-list__item.is-open dt button::after {
  background-size:
    100% 0.2667vw,
    0 100%;
}

.c-faq-list__item dd {
  height: 0;
  overflow: hidden;
  transition: height 0.4s ease;
}

.c-faq-list__item dd .text-box {
  position: relative;
  padding: 1em 1em 1em 2.2em;
  margin-top: 2.6667vw;
  background-color: #f3f1ee;
  border-radius: 1.6vw;
}

.c-faq-list__item dd .text-box::before {
  position: absolute;
  top: 0.7em;
  left: 0.6em;
  font-size: 1.2em;
  content: "A.";
}

@media (width >= 768px) {
  .c-faq-list__item:not(:first-child) {
    margin-top: 16px;
  }

  .c-faq-list__item dt button {
    padding: 0.7em 2.8em 0.7em 2.5em;
    font-size: 18px;
    border-radius: 6px;
    transition: opacity 0.3s ease;
  }

  .c-faq-list__item dt button:hover {
    opacity: 0.8;
  }

  .c-faq-list__item dt button::before {
    top: 0.35em;
    left: 0.8em;
  }

  .c-faq-list__item dt button::after {
    right: 1.2em;
    width: 18px;
    height: 18px;
    background-size:
      100% 1px,
      1px 100%;
  }

  .c-faq-list__item.is-open dt button::after {
    background-size:
      100% 1px,
      0 100%;
  }

  .c-faq-list__item dd .text-box {
    padding: 1em 2em 1em 2.6em;
    margin-top: 10px;
    border-radius: 6px;
  }

  .c-faq-list__item dd .text-box::before {
    top: 0.7em;
    left: 0.9em;
    font-size: 1.2em;
  }
}

.c-doctor {
  padding: 8vw 4vw 5.3333vw;
  border: 1px solid #ddd;
}

.c-doctor-title {
  margin-bottom: 6.6667vw;
  font-size: 5.3333vw;
  font-weight: bold;
  text-align: center;
}

.c-doctor-content {
  display: flex;
  flex-direction: column;
  gap: 5.8667vw;
}

.c-doctor-img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1.2;
  overflow: hidden;
}

.c-doctor-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-doctor-position {
  margin-bottom: 0.8vw;
  font-size: 4vw;
}

.c-doctor-name {
  font-size: 5.8667vw;
}

.c-doctor-name span {
  margin-left: 4vw;
  font-size: 0.7em;
}

.c-doctor-description {
  margin-top: 4vw;
}

.c-doctor-description * + * {
  margin-top: 1em;
}

.c-doctor-description p {
  font-size: 3.7333vw;
  text-align: justify;
}

.c-doctor-qualification {
  margin-top: 5.3333vw;
}

.c-doctor-qualification-title {
  margin-bottom: 1.3333vw;
  font-size: 4.8vw;
}

.c-doctor-qualification-list {
  padding-left: 1em;
}

.c-doctor-qualification-list li::marker {
  content: "・";
}

.c-doctor-link {
  margin-top: 4vw;
}

.c-doctor-link a {
  position: relative;
  display: inline-block;
  padding: 2.6667vw 10.6667vw 2.6667vw 8vw;
  font-size: 4.2667vw;
  color: #fff;
  background-color: #978b7c;
  border-radius: 26.6667vw;
}

.c-doctor-link a::after {
  position: absolute;
  top: 50%;
  right: 1.2em;
  width: 0.5em;
  height: 0.5em;
  content: "";
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(-50%) rotate(45deg);
}

@media (width >= 768px) {
  .c-doctor {
    padding: 40px 5%;
  }

  .c-doctor-title {
    margin-bottom: 30px;
    font-size: 26px;
  }

  .c-doctor-content {
    flex-direction: row;
    gap: 5%;
    align-items: flex-start;
  }

  .c-doctor-img {
    width: 30%;
    aspect-ratio: 1/1.5;
  }

  .c-doctor-text {
    flex: 1;
  }

  .c-doctor-position {
    margin-bottom: 3px;
    font-size: 16px;
  }

  .c-doctor-name {
    font-size: 24px;
  }

  .c-doctor-name span {
    margin-left: 15px;
  }

  .c-doctor-description {
    margin-top: 20px;
  }

  .c-doctor-description p {
    font-size: 16px;
  }

  .c-doctor-qualification {
    margin-top: 30px;
  }

  .c-doctor-qualification-title {
    margin-bottom: 5px;
    font-size: 18px;
  }

  .c-doctor-link {
    margin-top: 30px;
  }

  .c-doctor-link a {
    padding: 10px 40px 10px 30px;
    font-size: 16px;
    color: #fff;
    background-color: #978b7c;
    border-radius: 100px;
  }

  .c-doctor-link a::after {
    position: absolute;
    top: 50%;
    right: 1.2em;
    width: 0.5em;
    height: 0.5em;
    content: "";
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translateY(-50%) rotate(45deg);
  }
}

.archive-menu__category {
  padding: 10.6667vw 0;
  background-color: #f3f1ee;
}

.archive-menu__category-inner {
  width: 90%;
  margin: 0 auto;
}

.archive-menu__category-title-02 {
  position: relative;
  padding-bottom: 1.3333vw;
}

.archive-menu__category-title-02::before,
.archive-menu__category-title-02::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  height: 0.5333vw;
  content: "";
}

.archive-menu__category-title-02::before {
  z-index: 1;
  width: 30%;
  background-color: #a09284;
}

.archive-menu__category-title-02::after {
  z-index: 0;
  width: 100%;
  background-color: #dfdfdf;
}

.archive-menu__category-title-02 button {
  position: relative;
  display: block;
  width: 100%;
  font-size: 4.8vw;
  color: #696156;
  text-align: left;
  border: none;
}

.archive-menu__category-title-02 button::before,
.archive-menu__category-title-02 button::after {
  position: absolute;
  top: 50%;
  right: 1.3333vw;
  display: block;
  width: 4vw;
  height: 0.2667vw;
  content: "";
  background-color: #696156;
}

.archive-menu__category-title-02 button::before {
  transform: translateY(-50%);
}

.archive-menu__category-title-02 button::after {
  transition: opacity 0.3s ease;
  transform: translateY(-50%) rotate(90deg);
}

.is-open .archive-menu__category-title-02 button::after {
  opacity: 0;
}

.archive-menu__category-content {
  height: 0;
  overflow: hidden;
  transition: height 0.4s ease;
}

.archive-menu__category-list {
  display: flex;
  flex-direction: column;
  gap: 4vw;
  padding-top: 5.3333vw;
}

.archive-menu__category-item a {
  position: relative;
  display: block;
  padding: 0.5em 0.8em;
  font-size: 3.7333vw;
  background-color: #fff;
  border-radius: 1.3333vw;
}

.archive-menu__category-item a::after {
  position: absolute;
  top: 50%;
  right: 4vw;
  width: 2.1333vw;
  height: auto;
  aspect-ratio: 1/1;
  pointer-events: none;
  content: "";
  border-right: 1px solid #696156;
  border-bottom: 1px solid #696156;
  transform: translateY(-70%) rotate(45deg);
}

.archive-menu__list {
  display: flex;
  flex-direction: column;
  gap: 10.6667vw;
  width: 90%;
  padding: 10.6667vw 0 16vw;
  margin: 0 auto;
}

.archive-menu__item-title {
  padding: 0.8em;
  margin-bottom: 5.3333vw;
  font-size: 4.2667vw;
  background-color: #f3f1ee;
  border-left: 2px solid #696156;
}

.archive-menu__item-content {
  display: flex;
  flex-direction: column;
  gap: 5.3333vw;
}

.archive-menu__item-img figure {
  width: 100%;
  height: auto;
  aspect-ratio: 1/0.6;
  overflow: hidden;
}

.archive-menu__item-img figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.archive-menu__item-list {
  display: flex;
  flex-direction: column;
  gap: 2.1333vw;
  padding: 0 2.6667vw;
}

.archive-menu__item-list li {
  position: relative;
  padding-left: 4vw;
}

.archive-menu__item-list li::before {
  position: absolute;
  top: -1.0667vw;
  left: 0;
  font-size: 4.2667vw;
  color: #978b7c;
  content: "-";
}

.archive-menu__item-list li a {
  font-size: 3.7333vw;
}

@media (width >= 768px) {
  .archive-menu__category {
    padding: 60px 0;
  }

  .archive-menu__category-inner {
    max-width: 1024px;
  }

  .archive-menu__category-title-02 {
    padding-bottom: 8px;
  }

  .archive-menu__category-title-02::before,
  .archive-menu__category-title-02::after {
    height: 2px;
  }

  .archive-menu__category-title-02 button {
    font-size: 20px;
  }

  .archive-menu__category-title-02 button::before,
  .archive-menu__category-title-02 button::after {
    right: 10px;
    width: 17px;
    height: 1px;
  }

  .archive-menu__category-list {
    flex-flow: row wrap;
    gap: 15px;
    padding-top: 30px;
  }

  .archive-menu__category-item {
    width: calc((100% - 30px) / 3);
  }

  .archive-menu__category-item a {
    padding: 0.5em 35px 0.5em 0.8em;
    font-size: 16px;
    border-radius: 5px;
  }

  .archive-menu__category-item a::after {
    right: 15px;
    width: 8px;
  }

  .archive-menu__list {
    gap: 70px;
    max-width: 1024px;
    padding: 60px 0 100px;
  }

  .archive-menu__item-title {
    margin-bottom: 30px;
    font-size: 18px;
  }

  .archive-menu__item-content {
    flex-direction: row;
    gap: 8%;
    align-items: flex-start;
  }

  .archive-menu__item-img {
    width: 30%;
  }

  .archive-menu__item-img figure {
    width: 100%;
    height: auto;
    aspect-ratio: 1/0.6;
    overflow: hidden;
  }

  .archive-menu__item-img figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .archive-menu__item-list {
    flex: 1;
    flex-flow: row wrap;
    gap: 10px 5%;
    padding: 0;
  }

  .archive-menu__item-list li {
    width: 47.5%;
    padding-left: 20px;
  }

  .archive-menu__item-list li::before {
    top: -7px;
    font-size: 20px;
  }

  .archive-menu__item-list li a {
    font-size: 16px;
  }
}
