@charset "utf-8";
.greeting {
      padding-top: clamp(5rem, 4.583rem + 0.87vw, 5.625rem);
    background-color: #F7F5F2;
}
.greeting__inner {
  padding: 0 clamp(1.25rem, -13.542rem + 30.82vw, 23.438rem);
}
.greeting__container {
      display: flex;
    flex-direction: column;
    align-items: center;
}
.greeting__content {
      margin-top: clamp(2.5rem, 0.833rem + 3.47vw, 5rem);
    display: flex;
    column-gap: clamp(1.25rem, -1.25rem + 5.21vw, 5rem);
}
.greeting__left {
      width: 40%;
    aspect-ratio: 481/542;
    height: auto;
    object-fit: cover;
}
.greeting__right {
  width: 60%;
}
.greeting__title {
      font-size: clamp(1.125rem, 0.542rem + 1.22vw, 2rem);
    font-weight: 500;
}
.greeting__text {
      margin-top: clamp(2rem, 1.667rem + 0.69vw, 2.5rem);
    font-weight: 500;
    line-height: 2;
}
.greeting__name {
      margin-top: clamp(2.5rem, 0.833rem + 3.47vw, 5rem);
    width: fit-content;
    margin-left: auto;
    font-weight: 500;
}
.greeting__name span {
  font-size: clamp(1rem, 0.833rem + 0.35vw, 1.25rem);
}

.philosophy {
      padding-top: clamp(6.25rem, 4.75rem + 3.13vw, 8.5rem);
    background-color: #F7F5F2;
}
.philosophy__inner {
  padding: 0 clamp(1.25rem, -7.417rem + 18.06vw, 14.25rem);
}
.philosophy__container {
      display: flex;
    flex-direction: column;
    align-items: center;
}
.philosophy__title {
      margin-top: clamp(2.5rem, 1.333rem + 2.43vw, 4.25rem);
    font-size: clamp(1.5rem, 1.167rem + 0.69vw, 2rem);
    letter-spacing: 0.1em;
    font-weight: 500;
}
.philosophy__items {
      margin-top: 172px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: clamp(0.625rem, 0.042rem + 1.22vw, 1.5rem);
  position: relative;
}
.philosophy-line1 {
      position: absolute;
    height: 120px;
    width: 1px;
    background-color: #909090;
    top: -120px;
    left: 50%;
}
.philosophy-line2 {
      position: absolute;
    position: absolute;
    height: 1px;
    width: 68%;
    background-color: #909090;
    top: -52px;
    left: 50%;
    transform: translateX(-50%);
}
.philosophy__item {
      display: flex;
    align-items: center;
    justify-content: center;
    column-gap: clamp(0.625rem, 0.042rem + 1.22vw, 1.5rem);
    padding: clamp(0.625rem, 0.042rem + 1.22vw, 1.5rem);
    background-color: #F5EDF1;
  position: relative;
}
.philosophy-item-line {
      position: absolute;
    height: 53px;
    width: 1px;
    background-color: #909090;
    top: -52px;
    left: 50%;
}
.philosophy-item__left {
      width: clamp(3rem, 1.667rem + 2.78vw, 5rem);
    height: auto;
    object-fit: contain;
}
.philosophy-item__title {
      font-size: clamp(1rem, 0.667rem + 0.69vw, 1.5rem);
    font-weight: 500;
}
.philosophy-item__text {
      margin-top: clamp(1rem, 0.667rem + 0.69vw, 1.5rem);
    line-height: 1.7;
    font-size: 14px;
    font-weight: 500;
}

.history {
      padding-top: clamp(6.25rem, 3.75rem + 5.21vw, 10rem);
    background-color: #F7F5F2;
}
.history__inner {
  padding: 0 clamp(2.188rem, -21.188rem + 48.7vw, 37.25rem);
}
.history__container {
      display: flex;
    flex-direction: column;
    align-items: center;
}
.history__items {
  margin-top: clamp(2.5rem, 1.5rem + 2.08vw, 4rem);
}
.history__item {
      display: flex;
    align-items: flex-start;
    position: relative;
}
.history-item__left {
        display: flex;
    column-gap: 32px;
    padding-right: 40px;
    white-space: nowrap;
}
.history-item__left1 {
    font-size: clamp(1rem, 0.833rem + 0.35vw, 1.25rem);
    font-weight: 700;
}
.history-item__left2 {
    font-size: clamp(1rem, 0.833rem + 0.35vw, 1.25rem);
    font-weight: 700;
}
.history-item__right {
      padding-left: 40px;
    font-size: clamp(0.875rem, 0.708rem + 0.35vw, 1.125rem);
    font-weight: 500;
    position: relative;
    border-left: 0.5px solid #2E2E2E;
    padding-bottom: clamp(4.063rem, 3.438rem + 1.3vw, 5rem);
}
.history-item__right--last {
  border-left: none;
}
.history-item__right::after {
        content: "";
    position: absolute;
    left: -10px;
    top: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #E5C5D3;
}
.history-item__right2::after {
        content: "";
    position: absolute;
    left: -10px;
    top: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #FFDBBC;
}

.info {
      background-color: #F7F5F2;
    /*padding-top: clamp(6.25rem, -4.333rem + 22.05vw, 22.125rem);*/
  padding-top: clamp(12.5rem, 6.083rem + 13.37vw, 22.125rem);
    padding-bottom: 40px;
}
.info__container {
  position: relative;
}
.info__img {
      position: absolute;
    width: 56%;
    right: 0;
    bottom: 1200px;
    bottom: clamp(68.75rem, 64.583rem + 8.68vw, 75rem);
}
.info__title {
  margin-left: clamp(2.5rem, -3.833rem + 13.19vw, 12rem);
}
.info__content {
    margin-top: clamp(2.5rem, -0.708rem + 6.68vw, 7.313rem);
    background-color: #fff;
    padding: 0 clamp(1.25rem, -17.917rem + 39.93vw, 30rem);
    padding-top: clamp(2.5rem, -2.292rem + 9.98vw, 9.688rem);
    padding-bottom: 56px;
}
.info__items {
      display: flex;
    flex-direction: column;
    row-gap: 24px;
}
.info__item {
      display: flex;
    padding: 0 30px;
    padding-bottom: 24px;
    border-bottom: 0.5px solid #2E2E2E;
}
.info__item:last-child {
  border-bottom: none;
}
.info-item__left {
      width: 40%;
    font-weight: 500;
}
.info-item__right {
      width: 60%;
    font-weight: 500;
}
.google-map iframe {
      width: 100%;
    height: 409px;
    border: none;
}

@media (max-width: 767px) {
  .greeting__content {
        flex-direction: column;
    row-gap: 24px;
  }
  .greeting__left {
        width: 100%;
    aspect-ratio: 1/1;
  }
  .greeting__right {
    width: 100%;
  }
  
  .philosophy__inner {
    padding: 0;
  }
  .philosophy__items {
        margin-top: 48px;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 8px;
  }
  .philosophy-line1 {
    display: none;
  }
  .philosophy-line2 {
    display: none;
  }
  .philosophy__item {
        justify-content: flex-start;
    padding: 24px;
  }
  .philosophy-item-line {
    display: none;
  }
  .philosophy-item__text {
    font-size: 12px;
  }
  
  .history-item__left {
        padding-right: 16px;
    flex-direction: column;
    align-items: end;
  }
  .history-item__left1 {
    font-size: 12px;
  }
  .history-item__left2 {
    font-size: 14px;
  }
  .history-item__right {
    padding-left: 24px;
  }
  .history-item__right::after {
    left: -8px;
    width: 16px;
    height: 16px;
  }
  .history-item__right2::after {
    left: -8px;
    width: 16px;
    height: 16px;
  }
  
  .info {
    padding-top: 100px;
  }
  .info__title {
        margin-left: auto;
    margin-right: auto;
  }
  .info__img {
        position: unset;
    margin-top: 40px;
    width: 100%;
  }
  .info__content {
    margin-top: 0;
  }
  .info__item {
        flex-direction: column;
    row-gap: 8px;
  }
  .info-item__left,
  .info-item__right {
    width: 100%;
  }
  .google-map iframe {
        margin: 0 calc(50% - 50vw);
    width: 100vw;
  }
}

@media (max-width: 389px) {
  .greeting__inner {
    padding: 0 16px;
  }
  .greeting__title {
    font-size: clamp(1rem, 0.42rem + 2.9vw, 1.125rem);
  }
  
  .philosophy__title {
    font-size: 20px;
  }
  
  .info__item {
        padding-left: 0;
    padding-right: 0;
  }
}