#curriculum {
  width: 100%;
	padding-block: 62px 80px;

	@media (max-width: 768px) {
		padding-block: 50px 56px;
	}

  .curriculum-container {
    display: grid;
    gap: 16px;

		.time-container {
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 8px;

			@media (max-width: 768px) {
				gap: 12.5px;
			}

      .separator {
        width: 1px;
        height: 24px;
        background-color: #000000;
      }

			& > div {
				display: flex;
				align-items: center;
				gap: 5px;
			}

			.left {
				border-radius: 9999px;
				border: 1px solid #000000;
				font-size: 1rem;
				font-weight: 500;
				line-height: 14px;
        height: 17px;
				padding-inline: 10px;
				background-color: #fff;
			}

			.right {
				font-size: 1.2rem;
				font-weight: 500;
				line-height: 1.6em;

				.bold {
					font-size: 1.8rem;
					font-weight: bold;
          line-height: 1.6em;
				}
			}
		}

		.accordion-wrapper {
			border: 5px solid #F9F5F0;
			background: #ffffff;
			padding: 32px;

			@media (max-width: 768px) {
				background: none;
				border: none;
				padding: 0;
				width: 100vw;
				margin-inline: calc(50% - 50vw);
			}

			.accordion-container {
				counter-reset: list-counter -1;

				& > li {
					counter-increment: list-counter;
				};
				
				.accordion-number::before {
					content: counter(list-counter);
				}
			}
		}
  }
}
  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion:nth-child(odd) {
    background-color: #F9F5F0;
  }
  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion:nth-child(odd) .box {
    background-color: #ffffff;
  }
  @media (width < 769px) {
    #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion:nth-child(odd) .box {
      background: none;
    }
  }
  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion:nth-child(even) {
    background-color: #ffffff;
  }
  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion:nth-child(even) .box {
    background-color: #F9F5F0;
  }
  @media (width < 769px) {
    #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion:nth-child(even) .box {
      background: none;
    }
  }
  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion details .details-text {
    color: #333;
    font-size: 14px;
    line-height: 1.6;
    padding: 10px 14px;
    overflow: hidden;
  }
  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion details summary {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 28px auto;
    list-style: none;
    cursor: pointer;
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary::-webkit-details-marker {
    display: none;
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-number {
    background-color: #992453;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
    padding: 22px 0;
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 10px;
  }
  @media (width < 769px) {
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title {
      display: grid;
      gap: 0 15px;
    }
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-title
    .title {
    color: #292838;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5;
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion:last-child
    details
    summary
    .accordion-title
    .title {
      /* color: #108FE2; */
    }
  @media (width < 769px) {
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title
      .title {
      grid-area: 1/1/2/2;
      align-self: flex-end;
      font-size: 14px;
    }
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-title
    .box-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  @media (width < 769px) {
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title
      .box-wrapper {
      display: contents;
    }
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title
      .box-wrapper::after {
      grid-area: 1/2/3/3; /* safari対策 */
    }
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-title
    .box-wrapper::after {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    background: url('../../img/curriculum/plus.svg') no-repeat center center/cover;
  }
  @media (width < 769px) {
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title
      .box-wrapper::after {
      grid-area: 1/2/3/3;
    }
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-title
    .box-wrapper
    .box {
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2px;
    min-width: 108px;
    padding: 8px 16px;

    &:last-child {
      margin-right: 10px;
    }
  }
  @media (width < 769px) {
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title
      .box-wrapper
      .box {
      grid-area: 2/1/3/2;
      align-self: flex-start;
      justify-content: left;
      border-radius: 0;
      width: auto;
      padding: 0;
    }
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-title
    .box-wrapper
    .box
    img {
    width: 15px;
  }
  @media (width < 769px) {
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title
      .box-wrapper
      .box
      img {
      width: 10px;
    }
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details
    summary
    .accordion-title
    .box-wrapper
    .box
    .text {
    color: #292838;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.6;
  }
  @media (width < 769px) {
    #curriculum
      .inner
      .curriculum-container
      .accordion-wrapper
      .accordion-container
      .accordion
      details
      summary
      .accordion-title
      .box-wrapper
      .box
      .text {
      color: #1a1a1a;
      font-weight: 500;
    }
  }
  #curriculum
    .inner
    .curriculum-container
    .accordion-wrapper
    .accordion-container
    .accordion
    details[open]
    summary
    .accordion-title
    .box-wrapper::after {
    background: url('../../img/curriculum/minus.svg') no-repeat center center/cover;
  }


  #curriculum .inner .curriculum-container .accordion-wrapper .accordion-container .accordion details summary .accordion-title .box-wrapper .sp-box-wrapper {
    display: contents;

    @media (max-width: 768px) {
      display: flex;
      align-items: center;
      gap: 5px;
    }

    .box {
      @media (max-width: 768px) {
        min-width: initial;
      }

      img {
        @media (max-width: 768px) {
          margin-bottom: -2px;
        }
      }
    }
  }