.font-noto-sans {
  font-family: 'Noto Sans JP', sans-serif;
}

.font-lato-sans {
  font-family: "Lato", sans-serif;
}

.gift-bg-neutral-100 {
  background-color: #f0f0f0;
}

.gift-bg-wrapper {
  position: relative;
  display: flex;
  justify-content: center;
  padding-top: 226px;  
}

.gift-bg-wrapper + .gift-bg-wrapper {
  margin-top: -226px;
}

.gift-bg-wrapper--last {
  padding-bottom: 226px;
}

.gift-bg-wrapper::before,
.gift-bg-wrapper--last::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 226px;
  content: '';
}

.gift-bg-wrapper::before {
  top: 0;
  clip-path: ellipse(50% 100% at 50% 100%);
}

.gift-bg-wrapper--last::after {
  bottom: 0;
  clip-path: ellipse(50% 100% at 50% 0%);
}

.gift-bg-wrapper__inner {
  padding-bottom: 226px;
  width: 100%;
}

.gift-bg-wrapper--last .gift-bg-wrapper__inner {
  padding-bottom: 0;
}

.gift-bg-wrapper--yellow::before,
.gift-bg-wrapper--last.gift-bg-wrapper--yellow::after,
.gift-bg-wrapper--yellow .gift-bg-wrapper__inner {
  background-color: #faf5c6;
}

.gift-bg-wrapper--green::before,
.gift-bg-wrapper--last.gift-bg-wrapper--green::after,
.gift-bg-wrapper--green .gift-bg-wrapper__inner {
  background-color: #e0f1d4;
}

.gift-bg-wrapper--red::before,
.gift-bg-wrapper--red .gift-bg-wrapper__inner {
  background-color: #ffe2de;
}

.gift-bg-wrapper--blue::before,
.gift-bg-wrapper--last.gift-bg-wrapper--blue::after,
.gift-bg-wrapper--blue .gift-bg-wrapper__inner {
  background-color: #d0f3f8;
}

.gift-gender-section-wrap {
  padding-bottom: 100px;
}

.gift-gender-section__tag-list {
  margin-bottom: 40px;
}

.gift-genre-search-section__title {
  margin-bottom: 72px;
}

.gift-genre-search-section__group {
  padding-bottom: 36px;
}

.gift-genre-search-section__group + .gift-genre-search-section__group {
  padding-top: 36px;
}

.gift-kanban {
  background-color: #9bd136;
  overflow: hidden;
}

.gift-kanban picture {
  display: block;
  width: 1920px;
  height: 360px;
  margin-left: 50%;
  transform: translateX(-50%);
}

.gift-kanban-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.gift-gender-section, .gift-best-seller-section {
  position: absolute;
  top: 100px;
}
