.b-divi__btn,
.b-young,
.b-produ,
.b-hens,
.b-selling,
.b-group {
  font-family: "Noto Sans JP", noto-sans-cjk-jp, sans-serif;
}

.b-divi {
  margin: 4rem 0 0;
}

.b-divi__inner {
  display: grid;
  grid-template-columns: minmax(2rem, 1fr) minmax(auto, 1130px) minmax(2rem, 1fr);
}

.b-divi__inner > * {
  grid-column: 2;
}

.b-divi__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 272px), 1fr));
  column-gap: 1rem;
  row-gap: 2rem;
}

.b-divi__link {
  display: grid;
  row-gap: 1rem;
  color: #242424;
  text-decoration: none;
  place-items: center;
  line-height: 2;
  font-size: clamp(1rem, 1.40625vw, 1.125rem);
}

.b-divi__img {
  border-radius: 20px;
}

.b-divi__btn {
  display: grid;
  place-items: center;
  padding: 0.5rem 0;
  max-width: 192px;
  width: 100%;
  border-radius: 20px;
  border: 3px solid #e2680d;
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  color: #e2680d;
  text-decoration: none;
  margin: 0 auto;
  position: relative;
}

.b-divi__btn:hover::before {
  right: 0.7rem;
}

.b-divi__btn::before {
  content: "";
  width: 13px;
  height: 22px;
  background: url(../../svg/arrow-right.svg) no-repeat center/cover;
  transition: 350ms ease;
  position: absolute;
  right: 1rem;
}

.b-young {
  padding: 2.5rem 0 0;
}

.b-young__inner {
  display: grid;
  grid-template-columns: minmax(2rem, 1fr) minmax(auto, 1280px) minmax(2rem, 1fr);
}

.b-young__inner > * {
  grid-column: 2;
}

.b-young__body {
  margin: 1rem 0 0;
}

.b-young__img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border-radius: 20px;
}

.b-young__textArea {
  margin: 1rem 0 0;
}

.b-young__lead {
  font-size: clamp(1.25rem, 1.875vw, 1.5rem);
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #444;
}

.b-young__text {
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  letter-spacing: 0.05em;
  color: #444;
  margin: 0.5rem 0 0;
}

.b-young__foot {
  margin: 1rem 0 0;
}

.b-young__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 272px), 1fr));
  column-gap: 1rem;
  row-gap: 2rem;
}

.b-young__name {
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  letter-spacing: 0.05em;
  color: #242424;
  text-align: center;
  margin: 0.5rem 0 0;
}

.b-produ {
  padding: 2.5rem 0 0;
}

.b-produ__inner {
  display: grid;
  grid-template-columns: minmax(2rem, 1fr) minmax(auto, 1280px) minmax(2rem, 1fr);
}

.b-produ__inner > * {
  grid-column: 2;
}

.b-produ__body {
  margin: 1rem 0 0;
}

.b-produ__img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border-radius: 20px;
}

.b-produ__textArea {
  margin: 1rem 0 0;
}

.b-produ__lead {
  font-size: clamp(1.25rem, 1.875vw, 1.5rem);
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #444;
}

.b-produ__text {
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  letter-spacing: 0.05em;
  color: #444;
  margin: 0.5rem 0 0;
}

.b-produ__foot {
  margin: 1rem 0 0;
}

.b-produ__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  column-gap: 1rem;
  row-gap: 2rem;
}

.b-produ__name {
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  letter-spacing: 0.05em;
  color: #242424;
  text-align: center;
  margin: 0.5rem 0 0;
}

.b-hens {
  padding: 2.5rem 0 0;
}

.b-hens__inner {
  display: grid;
  grid-template-columns: minmax(2rem, 1fr) minmax(auto, 1280px) minmax(2rem, 1fr);
}

.b-hens__inner > * {
  grid-column: 2;
}

.b-hens__body {
  margin: 1rem 0 0;
}

.b-hens__img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border-radius: 20px;
}

.b-hens__textArea {
  margin: 1rem 0 0;
}

.b-hens__lead {
  font-size: clamp(1.25rem, 1.875vw, 1.5rem);
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #444;
}

.b-hens__text {
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  letter-spacing: 0.05em;
  margin: 0.5rem 0 0;
}

.b-hens__caption {
  text-align: center;
  margin: 0.5rem 0 0;
}

.b-hens__group {
  margin: 1rem 0 0;
}

.b-hens__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 272px), 1fr));
  column-gap: 1rem;
  row-gap: 2rem;
}

.b-hens__foot {
  margin: 1rem 0 0;
  background: rgba(249, 91, 4, 0.2);
  color: #e2680d;
  padding: 1rem;
}

.b-selling {
  padding: 2.5rem 0 0;
}

.b-selling__inner {
  display: grid;
  grid-template-columns: minmax(2rem, 1fr) minmax(auto, 1280px) minmax(2rem, 1fr);
}

.b-selling__inner > * {
  grid-column: 2;
}

.b-selling__body {
  margin: 1rem 0 0;
}

.b-selling__img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border-radius: 20px;
}

.b-selling__caption {
  text-align: center;
  margin: 0.5rem 0 0;
}

.b-selling__textArea {
  margin: 1rem 0 0;
}

.b-selling__lead {
  font-size: clamp(1.25rem, 1.875vw, 1.5rem);
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #444;
}

.b-selling__text {
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  letter-spacing: 0.05em;
  margin: 0.5rem 0 0;
}

.b-group {
  padding: 2.5rem 0;
}

.b-group__inner {
  display: grid;
  grid-template-columns: minmax(2rem, 1fr) minmax(auto, 1280px) minmax(2rem, 1fr);
}

.b-group__inner > * {
  grid-column: 2;
}

.b-group__body {
  margin: 1rem 0 0;
}

.b-group__img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border-radius: 20px;
}

.b-group__textArea {
  margin: 1rem 0 0;
}

.b-group__name {
  background: #144296;
  width: max-content;
  color: #fff;
  padding: 0.3125rem 0.6875rem;
}

.b-group__lead {
  font-size: clamp(1.25rem, 1.875vw, 1.5rem);
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #444;
  margin: 0.5rem 0 0;
}

.b-group__text {
  font-size: clamp(0.875rem, 1.25vw, 1rem);
  letter-spacing: 0.05em;
  margin: 0.5rem 0 0;
}

@media screen and (min-width: 768px) {
  .b-young__body {
    margin: 4rem 0 0;
    display: flex;
    padding: 0 3.9vw;
  }

  .b-young__imgArea {
    order: 2;
    flex-basis: 40%;
    max-width: 452px;
    margin: 0 0 0 3rem;
  }

  .b-young__textArea {
    order: 1;
    flex-basis: 60%;
    max-width: 640px;
    margin: 0;
  }

  .b-young__foot {
    margin: 3.5rem 0 0;
    padding: 0 3.9vw;
  }

  .b-produ__body {
    margin: 4rem 0 0;
    display: flex;
    padding: 0 3.9vw;
  }

  .b-produ__imgArea {
    flex-basis: 40%;
    max-width: 452px;
    margin: 0 3rem 0 0;
  }

  .b-produ__textArea {
    flex-basis: 60%;
    max-width: 640px;
    margin: 0;
  }

  .b-produ__foot {
    margin: 3.5rem 0 0;
    padding: 0 3.9vw;
  }

  .b-hens__body {
    margin: 4rem 0 0;
    display: flex;
    padding: 0 3.9vw;
  }

  .b-hens__imgArea {
    order: 2;
    flex-basis: 40%;
    max-width: 452px;
    margin: 0 0 0 3rem;
  }

  .b-hens__textArea {
    order: 1;
    flex-basis: 60%;
    max-width: 640px;
    margin: 0;
  }

  .b-hens__group {
    margin: 3.5rem 0 0;
    padding: 0 3.9vw;
  }

  .b-hens__foot {
    margin: 3.5rem 3.9vw 0;
    padding: 1rem 3.9vw;
  }

  .b-selling__body {
    margin: 4rem 0 0;
    display: flex;
    padding: 0 3.9vw;
  }

  .b-selling__imgArea {
    flex-basis: 40%;
    max-width: 452px;
    margin: 0 3rem 0 0;
  }

  .b-selling__textArea {
    flex-basis: 60%;
    max-width: 640px;
    margin: 0;
  }

  .b-selling__foot {
    margin: 3.5rem 3.9vw 0;
    padding: 0 3.9vw;
  }

  .b-selling__list {
    display: flex;
    justify-content: space-between;
  }

  .b-selling__item {
    width: calc(100%/3);
    max-width: 360px;
  }

  .b-selling__item + .b-selling__item {
    margin: 0 0 0 1rem;
  }

  .b-group__body {
    margin: 4rem 0 0;
    display: flex;
    padding: 0 3.9vw;
  }

  .b-group__imgArea {
    order: 2;
    flex-basis: 40%;
    max-width: 452px;
    margin: 0 0 0 3rem;
  }

  .b-group__textArea {
    order: 1;
    flex-basis: 60%;
    max-width: 640px;
    margin: 0;
  }

  .b-group__foot {
    margin: 3.5rem 3.9vw 0;
    padding: 0 3.9vw;
  }

  .b-group__list {
    display: flex;
    justify-content: space-between;
  }

  .b-group__item {
    width: calc(100%/3);
    max-width: 360px;
  }

  .b-group__item + .b-group__item {
    margin: 0 0 0 1rem;
  }
}

@media screen and (min-width: 1280px) {
  .b-young {
    padding: 7.5rem 0 0;
  }

  .b-young__imgArea {
    margin: 0 0 0 3rem;
  }

  .b-produ {
    padding: 7.5rem 0 0;
  }

  .b-produ__imgArea {
    width: 452px;
  }

  .b-produ__imgArea .b-produ__img {
    width: 100%;
    height: 100%;
  }

  .b-hens {
    padding: 7.5rem 0 0;
  }

  .b-hens__foot {
    padding: 1.6rem 3.9vw;
  }

  .b-selling {
    padding: 7.5rem 0 0;
  }

  .b-group {
    padding: 7.5rem 0 12.5rem;
  }
}