.golf {
  position: relative;
}
.golf__itembox {
  position: relative;
  margin-top: 5rem;
}
.golf__itembox__text {
  font-size: 1.8rem;
  color: #000;
  margin-bottom: 1.5rem;
}
.golf .sub-title {
  text-align: left;
  margin-bottom: 1rem;
}
.golf__text {
  font-size: var(--font-size20);
  color: #000;
  line-height: 1.5;
}
.golf__text + .golf__text {
  margin-top: 1rem;
}
.golf .ideology {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3.8rem;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 639px) {
  .golf .ideology {
    grid-template-columns: 1fr;
  }
}
.golf .ideology__item {
  position: relative;
  padding: 2.5rem 20px 3rem;
  background-color: #f1f1f1;
  font-weight: 700;
  font-size: var(--font-size20);
  color: #000;
  text-align: center;
}
.golf .ideology__item__image {
  margin-bottom: 0.8rem;
}
.golf .ideology__item__image img {
  width: 100%;
  max-width: 10.5rem;
  height: auto;
}
.golf__image {
  text-align: center;
}
.golf__image img {
  max-width: 100%;
}

.introduction {
  position: relative;
}
.introduction__items {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 1.9rem;
}
@media screen and (max-width: 800px) {
  .introduction__items {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 639px) {
  .introduction__items {
    grid-template-columns: 1fr 1fr;
  }
}
.introduction__item {
  position: relative;
  padding: 4rem 10px;
  background-color: #f1f1f1;
  text-align: center;
  font-size: var(--font-size20);
  color: #000;
}
.introduction__item__large-text {
  margin-bottom: 1rem;
  font-weight: 700;
  font-size: var(--font-size40);
  color: #000;
}
.introduction__arr {
  margin-top: 3rem;
  text-align: center;
}
.introduction__arr img {
  width: 100%;
  max-width: 12.9rem;
}
.introduction__result {
  margin-top: 3rem;
  text-align: center;
}
.introduction__result > div {
  display: inline-block;
  position: relative;
  padding: 3rem 7rem;
  background-color: #519812;
  color: #fff;
}
.introduction__result > div .small-text {
  font-size: var(--font-size20);
}
.introduction__result > div .large-text {
  font-weight: 700;
  font-size: var(--font-size60);
}

.ripple-effect {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 2.8rem;
}
@media screen and (max-width: 800px) {
  .ripple-effect {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 639px) {
  .ripple-effect {
    grid-template-columns: 1fr;
  }
}
.ripple-effect__item {
  padding: 4rem 2rem;
  border: 1px solid #ddd;
}
.ripple-effect__item__image {
  text-align: center;
}
.ripple-effect__item__image img {
  width: 100%;
  max-width: 9rem;
}
.ripple-effect__item dl {
  margin-top: 1.5rem;
}
.ripple-effect__item dl dt {
  font-size: var(--font-size20);
  color: 3000;
  font-weight: 700;
  text-align: center;
}
.ripple-effect__item dl dd {
  margin-top: 1.2rem;
  font-size: var(--font-size16);
  color: #000;
}

.found {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
}
@media screen and (max-width: 639px) {
  .found {
    flex-direction: column;
  }
}
.found + .found {
  margin-top: 5rem;
}
.found__image {
  width: 10rem;
}
.found__image img {
  width: 100%;
}
.found__content {
  width: calc(100% - 10rem);
  padding-left: 5.8rem;
}
@media screen and (max-width: 639px) {
  .found__content {
    width: 100%;
    padding-left: 0;
    margin-top: 1rem;
  }
}
.found__title {
  margin-bottom: 1.2rem;
  font-size: var(--font-size30);
  font-weight: 700;
  color: #000;
}
.found__text {
  font-size: var(--font-size20);
  color: #000;
}

.book {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
}
.book__image {
  width: 19.4rem;
}
.book__image img {
  width: 100%;
}
@media screen and (max-width: 639px) {
  .book__image {
    position: relative;
    margin: 0 auto;
  }
}
.book__content {
  width: calc(100% - 19.4rem);
  padding-left: 3.3rem;
}
@media screen and (max-width: 639px) {
  .book__content {
    width: 100%;
    padding-left: 0;
    margin-top: 2rem;
  }
}

.history-image {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  max-width: 1332px;
}
.history-image__item {
  position: relative;
}
.history-image__item img {
  max-width: 100%;
}
@media screen and (max-width: 1332px) {
  .history-image__item {
    width: 50%;
  }
}
@media screen and (max-width: 639px) {
  .history-image__item {
    width: 100%;
  }
}
.history-image__item + .history-image__item {
  margin-left: -1px;
}

.training-image {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 2.3rem;
}
@media screen and (max-width: 800px) {
  .training-image {
    grid-template-columns: 1fr 1fr;
  }
}
.training-image__item {
  position: relative;
}
.training-image__item img {
  width: 100%;
}

.instrument-top {
  position: relative;
  margin-top: 5rem;
  padding: 2rem;
  background: linear-gradient(#0c9583 0%, #0daf78 100%);
  font-size: var(--font-size20);
  border-radius: 2rem;
  color: #000;
  text-align: center;
}
.instrument-top__inner {
  padding: 4.2rem 20px;
  background-color: #fff;
  border-radius: 2rem;
}

.instrument-items {
  margin-top: 5rem;
}
.instrument-items__item {
  position: relative;
  min-height: 20.4rem;
  margin-bottom: 4rem;
}
.instrument-items__item--height507 {
  min-height: 50.7rem;
}
.instrument-items__item:last-child {
  margin-bottom: 0;
}
.instrument-items__item__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 33.8rem;
}
.instrument-items__item__image img {
  width: 100%;
}
.instrument-items__item__content {
  position: relative;
  padding-left: 37.1rem;
}
.instrument-items__item__title {
  margin-bottom: 1.8rem;
  font-weight: 600;
  font-size: var(--font-size24);
  color: #000;
}
@media screen and (max-width: 800px) {
  .instrument-items__item {
    min-height: auto;
  }
  .instrument-items__item__image {
    position: relative;
    top: auto;
    left: auto;
    margin-bottom: 1rem;
    width: 100%;
  }
  .instrument-items__item__content {
    padding-left: 0;
  }
}

.structure {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.structure__image-box {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  padding: 2.9rem 1.6rem;
  width: 50%;
  border: 1px solid #ddd;
}
@media screen and (max-width: 800px) {
  .structure__image-box {
    width: 100%;
  }
}
.structure__image-box__image {
  width: 50%;
}
@media screen and (max-width: 639px) {
  .structure__image-box__image {
    width: 100%;
  }
}
.structure__image-box__image img {
  width: 100%;
}
.structure__content {
  width: 50%;
  padding-left: 3.9rem;
}
@media screen and (max-width: 800px) {
  .structure__content {
    width: 100%;
    padding-left: 0;
    margin-top: 2rem;
  }
}

.props {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 1.6rem;
}
@media screen and (max-width: 800px) {
  .props {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 639px) {
  .props {
    grid-template-columns: 1fr 1fr;
  }
}
.props__item {
  position: relative;
}
.props__item__image img {
  width: 100%;
}
.props__item__text {
  padding: 1.5rem 20px;
  background-color: #ddd;
  font-size: var(--font-size20);
  color: #000;
  text-align: center;
}

.management-box {
  position: relative;
}
.management-box + .management-box {
  margin-top: 4rem;
}
.management-box__image {
  margin-top: 1.4rem;
}
.management-box__image img {
  max-width: 100%;
}

.facility {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 1.9rem;
}
@media screen and (max-width: 800px) {
  .facility {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 639px) {
  .facility {
    grid-template-columns: 1fr 1fr;
  }
}
.facility__item {
  position: relative;
}
.facility__item__image {
  width: 100%;
}
.facility__item__image img {
  width: 100%;
}
.facility__item__text {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 8.7rem;
  padding: 0 20px 0;
  background-color: #ddd;
  font-size: var(--font-size20);
  color: #000;
  text-align: center;
}

.composition {
  position: relative;
}
.composition__item {
  position: relative;
  min-height: 23rem;
  margin-bottom: 3rem;
}
.composition__item:last-child {
  margin-bottom: 0;
}
.composition__item__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 31rem;
}
.composition__item__image img {
  width: 100%;
}
.composition__item__content {
  position: relative;
  padding-left: 34rem;
}
.composition__item__title {
  margin-bottom: 1.5rem;
  font-weight: 600;
  font-size: var(--font-size24);
  color: #000;
}
.composition__item__text {
  font-size: var(--font-size17);
  color: #000;
  line-height: 1.5;
}
@media screen and (max-width: 800px) {
  .composition__item {
    min-height: auto;
  }
  .composition__item__image {
    position: relative;
    top: auto;
    left: auto;
    margin-bottom: 1rem;
    width: 100%;
  }
  .composition__item__content {
    padding-left: 0;
  }
}

.japan {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 2rem;
}
@media screen and (max-width: 800px) {
  .japan {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 639px) {
  .japan {
    grid-template-columns: 1fr 1fr;
  }
}
.japan__item img {
  width: 100%;
}

.textbook {
  position: relative;
  margin-top: 5rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4rem 2rem;
}
@media screen and (max-width: 800px) {
  .textbook {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 480px) {
  .textbook {
    grid-template-columns: repeat(2, 1fr);
  }
}
.textbook__item {
  position: relative;
}
.textbook__item__image img {
  width: 100%;
}
.textbook__item__text {
  margin-top: 2rem;
  font-weight: 600;
  font-size: 2.4rem;
  text-align: center;
  color: #000;
}