/*--------------------------------------



--------------------------------------*/
main {
  margin: 0 0 100px;
}

.factoryList {
  max-width: 340px;
  margin: 0 auto;
}

.factoryItem {
  position: relative;
  padding: 0 0 100%;
}
.factoryItem:not(:last-of-type) {
  margin: 0 0 10px;
}

.factoryInnerBg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  background: radial-gradient(#fff, #C6EEF2);
}

.factoryInnerBg01 {
  background: radial-gradient(#fff, #C6EEF2);
}

.factoryInnerBg02 {
  background: radial-gradient(#fff, #FFE8E8);
}

.factoryInnerBg03 {
  background: radial-gradient(#fff, #E3FEC5);
}

.factoryInner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  padding: 45px 55px;
}

.innerTitle {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: calc(1.475rem + 2.025vw);
  font-weight: 700;
  margin: 0 0 20px;
}
.innerTitle span {
  font-size: 1.6rem;
}

.innerTitle01 {
  color: #00A3C5;
}

.innerTitle02 {
  color: #FF5353;
}

.innerTitle03 {
  color: #4BAE00;
}

.factoryText {
  font-size: calc(1.305rem + 0.495vw);
  font-weight: 700;
}

.nameList {
  max-width: 300px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  gap: 50px;
}

.namePic {
  margin-bottom: 10px;
}
.namePic img {
  width: 100%;
}

.name {
  font-weight: 700;
  text-align: center;
  border-bottom: solid 1px #E4DDDD;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.nameText {
  font-size: calc(1.265rem + 0.135vw);
  margin-bottom: 15px;
}

.nameLink {
  color: #fff;
  background: #FF7878;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 10px;
  border-radius: 10px;
  text-decoration: none;
  transition: 0.3s;
}
.nameLink:hover {
  opacity: 0.8;
}
@media (width >= 768px) {
  .nameList {
    max-width: 100%;
    margin: 0;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
}
@media (width >= 960px) {
  .factoryList {
    display: flex;
    justify-content: space-between;
    max-width: 1060px;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  .factoryItem {
    padding: 0 0 32.0754716981%;
    width: 32.0754716981%;
  }
  .factoryItem:not(:last-of-type) {
    margin: 0;
  }
  .nameList {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1000px) {
  .innerTitle {
    font-size: 3.5rem;
  }
  .factoryText {
    font-size: 1.8rem;
  }
  .nameText {
    font-size: 1.4rem;
  }
}

/*# sourceMappingURL=factory.css.map*/