.mainTwelfthSection {
  padding-bottom: 120px;
}

.twelfthSectionContainer {
}

.twelfthSectionContentWrapper {
  position: relative;
}
.googleMap {
  height: 600px;
  width: 100%;
  
    @media screen and (min-width: 768px) {
    height: 400px;
}
@media screen and (min-width: 1440px) {
    height: 600px;
}
}

.googleMapInfoBox {
  position: absolute;
  top: 20px;
  left: 20px;

  background-color: white;


  @media screen and (min-width: 1440px) {
    top: 50%;
    left: 86px;

    transform: translateY(-50%);
  }
}

.googleMapInfoBoxButton {
  display: flex;
  align-items: center;

  padding: 24px;
  font-family: TT Firs Neue;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.01em;
  text-align: left;

  color: var(--black-color);
  @media screen and (min-width: 1024px) {
    padding: 40px 40px 0px 40px;

    font-size: 24px;

    line-height: 32px;
  }
  @media screen and (min-width: 1440px) {
    padding: 48px 48px 0px 48px;

    font-size: 24px;

    line-height: 32px;
  }
}

.googleMapInfoBoxButtonIcon {
  display: block;
  width: 16px;
  height: 16px;

  margin-left: 74px;

  stroke: var(--black-color);
   @media screen and (min-width: 1024px) {
    display: none;
  }
  @media screen and (min-width: 1440px) {
    display: none;
  }
}

.googleMapInfoBoxBottomBox {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  overflow: hidden;

  max-height: 0;
  opacity: 0;

  padding: 0px 24px;

  transition: max-height var(--transition-duration) ease-in-out, opacity var(--transition-duration-after) ease-in-out;

@media screen and (min-width: 1024px) {
    max-height: 300px;
    opacity: 1;
    padding: 16px 40px 40px 40px;
  }
  @media screen and (min-width: 1440px) {
    max-height: 400px;
    opacity: 1;
    padding: 16px 48px 48px 48px;
  }
}

.googleMapInfoBoxBottomBox.isOpen {
  max-height: 400px;
  opacity: 1;
  padding-bottom: 24px;
}

.googleMapInfoBoxListAddress {
  font-family: Futura PT;
  font-size: 14px;
  font-weight: 400;
  line-height: 16px;
  letter-spacing: 0em;
  text-align: left;

  @media screen and (min-width: 1440px) {
    font-size: 16px;
    line-height: 24px;
  }
}

.googleMapInfoBoxLink {
  display: flex;
  align-items: center;
  justify-content: center;

  margin-top: 16px;
}

.googleMapInfoBoxLinkText {
  border-bottom: 1px solid var(--black-color);
  /* text-decoration: underline; */
  font-family: TT Firs Neue;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: -0.01em;
  text-align: center;

  color: var(--black-color);
  transition: color var(--transition-duration) ease-in-out, border-color var(--transition-duration) ease-in-out;

  @media screen and (min-width: 1440px) {
    font-family: Futura PT;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0em;
    text-align: left;
  }
}

.googleMapInfoBoxLink:hover .googleMapInfoBoxLinkText,
.googleMapInfoBoxLink:focus .googleMapInfoBoxLinkText {
  color: var(--blue-color);
  border-color: var(--blue-color);
}

.googleMapInfoBoxLinkIcon {
  display: block;
  width: 16px;
  height: 16px;
  margin-left: 8px;

  stroke: var(--black-color);
  transition: stroke var(--transition-duration) ease-in-out;
}

.googleMapInfoBoxLink:hover .googleMapInfoBoxLinkIcon,
.googleMapInfoBoxLink:focus .googleMapInfoBoxLinkIcon {
  stroke: var(--blue-color);
}

.googleMapInfoBoxBottomBoxTitle {
  margin-top: 40px;

  font-family: TT Firs Neue;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.01em;
  text-align: left;

  @media screen and (min-width: 1440px) {
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    letter-spacing: -0.01em;
    text-align: left;
  }
}

.googleMapInfoBoxBottomBoxList {
  display: flex;
  flex-direction: column;
  align-items: flex-start;

  margin-top: 16px;
}

.googleMapInfoBoxBottomBoxListItem {
  font-family: Futura PT;
  font-size: 14px;
  font-weight: 400;
  line-height: 16px;
  letter-spacing: 0em;
  text-align: left;

  @media screen and (min-width: 1440px) {
    font-size: 16px;
    line-height: 24px;
  }
}

.googleMapInfoBoxBottomBoxListItem:not(:first-child) {
  margin-top: 8px;
  @media screen and (min-width: 1440px) {
    margin-top: 0px;
  }
}

.googleMapInfoBoxBottomBoxListItemLink {
  color: var(--black-color);
  transition: color var(--transition-duration) ease-in-out;
}

.googleMapInfoBoxBottomBoxListItemLink:hover,
.googleMapInfoBoxBottomBoxListItemLink:focus {
  color: var(--blue-color);
}
