@charset "UTF-8";

/* FAQ page 共通タブ .tab-wrap.offer + 共通スライド動作を使用 */

body.faq-page-body .page-hero img {
  object-position: center center;
}

.faq-list {
  background: var(--color-white);
}

.faq-tabs {
  max-width: 980px;
  margin: 0 auto;
}

.faq-tab-panels {
  padding-top: 0;
}

.acd_box {
  border-top: 1px solid var(--color-sea-salt);
}

.acd-open {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 14px 30px 14px 0;
  border: 0;
  border-bottom: 1px solid var(--color-sea-salt);
  background: transparent;
  color: var(--color-black);
  font-size: var(--font-size-xs);
  line-height: 1.7;
  text-align: left;
  cursor: pointer;
}

.acd-open::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 6px;
  color: var(--color-black);
  font-size: var(--font-size-lg);
  transform: translateY(-50%);
}

.acd-open.is-open::after {
  content: "−";
}

.acd-open i, .acd i {
  font-style: normal;
  font-weight: 500;
}

.acd {
  display: none;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  padding: 16px;
  border-bottom: 1px solid var(--color-sea-salt);
  background: var(--color-sea-salt);
  color: var(--color-black);
  font-size: var(--font-size-xs);
  line-height: 1.8;
}

.acd.is-open {
  display: grid;
}

.acd p {
  margin: 0;
}

@media screen and (min-width: 601px) {
  .acd-open {
    padding: 16px 34px 16px 0;
    font-size: var(--font-size-sm);
  }

  .acd {
    padding: 18px 22px;
    font-size: var(--font-size-sm);
  }
}

@media screen and (min-width: 1024px) {
  .faq-tab-panels {
    padding-top: 28px;
  }
}

.faq-tab-panels.common-motion-panels {
  height: auto !important;
  overflow: visible;
}

.faq-tab-panels .common-motion-track {
  display: block;
  transform: none !important;
  align-items: stretch;
}

.faq-tab-panels .common-motion-panel {
  display: none;
  width: 100%;
  min-width: 0;
}

.faq-tab-panels .common-motion-panel.is-active {
  display: block;
}
