.frame-type-frptemplate_accordion {
  margin-bottom: 64px;
}

.accordion {
  border-top: 1px solid var(--line);
}

.accordion-item {
  border-bottom: 1px solid var(--line);
}

.accordion-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 0;
  font-weight: var(--fw-semibold);
  color: var(--primary);
  text-underline-offset: 6px;
  text-decoration-thickness: 2px;
  text-align: left;
  hyphens: none;
  cursor: pointer;
  list-style: none;
}

.accordion-header::-webkit-details-marker {
  display: none;
}

.accordion-header::after {
  content: "";
  flex-shrink: 0;
  width: 9px;
  height: 9px;
  margin-right: 4px;
  border-right: 2px solid var(--primary);
  border-bottom: 2px solid var(--primary);
  transform: translateY(-3px) rotate(45deg);
  transition: transform .15s ease;
}

.accordion-item[open] > .accordion-header::after {
  transform: translateY(2px) rotate(-135deg);
}

.accordion-header:hover {
  text-decoration: underline;
}

.accordion-body {
  padding: 0 0 24px;
}

.accordion-body header {
  display: none;
}

.accordion-body .frame {
  margin-bottom: 16px;
}

.accordion-body .frame:last-child {
  margin-bottom: 0;
}

@media (max-width: 640px) {
  .frame-type-frptemplate_accordion {
    margin-bottom: 48px;
  }

  .accordion-header {
    padding: 14px 0;
  }
}
