.icon-plus {
  position: relative;
}

.icon-plus::before,
.icon-plus::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 30px;
  height: 1px;
  background-color: #fff;
  transform-origin: center center;
  transition: transform 0.25s ease;
}

/* 横線（−） … これは常に横のまま */
.icon-plus::before {
  transform: translateY(-50%);
}

/* 縦線（＋の縦棒） … 初期状態は90度回転させて縦にする */
.icon-plus::after {
  transform: translateY(-50%) rotate(90deg);
}

/* 開いたとき（is-open）：縦線を回転させて横線に重ねる → マイナス表示に */
.icon-plus.is-open::after {
  transform: translateY(-50%) rotate(0deg);
}