.content__lead-photo {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.link__theme-list a, .link__images a {
  transform: opacity 0.3s;
}
.link__theme-list a:hover, .link__images a:hover {
  opacity: 0.7;
}

.sec04, .sec03, .sec02, .sec01 {
  padding: 115px 0px 100px;
}
@media screen and (max-width: 767px) {
  .sec04, .sec03, .sec02, .sec01 {
    padding: 17.3333333333vw 0px 18.6666666667vw 0px;
  }
}
.sec04 .content__container, .sec03 .content__container, .sec02 .content__container, .sec01 .content__container {
  text-align: center;
}

.content__lead .content__text {
  max-width: 580px;
  margin: 30px auto 0px auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .content__lead .content__text {
    text-align: left;
  }
}

.life__sec-head {
  box-sizing: border-box;
  width: 290px;
  display: inline-block;
  color: #ffffff;
  background-color: #6c2c2f;
  font-size: 2.2rem;
  line-height: 1.5909090909;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .life__sec-head {
    width: 53.3333333333vw;
    margin: auto;
    font-size: 4.2666666667vw;
    line-height: 1.875;
  }
}

.life__contents {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  margin-top: 30px;
  margin-left: -23px;
  margin-right: -23px;
  list-style-type: none;
}
@media screen and (max-width: 767px) {
  .life__contents {
    margin: 0;
  }
}
.life__content {
  width: 28.855721393%;
  margin: 2.9850746269% 2.2388059701% 0;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .life__content {
    width: 100%;
    margin: 0;
    margin-top: 12vw;
  }
}
.life__content:hover .life__photo-overlay {
  opacity: 1;
}
.life__content:hover .life__photo::after {
  opacity: 0;
}
.life__text {
  color: #595757;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: left;
  line-height: 2.5;
  text-shadow: 0px 0px 5px rgb(255, 255, 255), 0px 0px 8px rgb(255, 255, 255);
}
@media screen and (max-width: 1279px) {
  .life__text {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  .life__text {
    border-radius: 0 0 1.3333333333vw 1.3333333333vw;
    font-size: 4.2666666667vw;
    text-shadow: 0px 0px 2px rgb(255, 255, 255), 0px 0px 3px rgb(255, 255, 255);
  }
}
.life__photo {
  position: relative;
  overflow: hidden;
  border-radius: 0 0 60px 0;
  box-shadow: 0px 5px 10px 0px rgba(76, 31, 34, 0.4);
}
@media screen and (max-width: 767px) {
  .life__photo {
    box-shadow: 0px 1.3333333333vw 2.6666666667vw 0px rgba(76, 31, 34, 0.4);
    border-radius: 0 0 13.8666666667vw 0;
  }
  .life__photo img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .life__photo::after {
    position: absolute;
    content: "";
    background-image: url(/assets/images/life/overlay-text-tap.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
    right: 6.8728522337%;
    bottom: 4.295532646%;
    width: 12.7147766323%;
    height: 5.8419243986%;
  }
}
.life__photo-overlay {
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: opacity 0.5s;
}

.content__lead {
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .content__lead {
    padding-bottom: 13.3333333333vw;
  }
}
.content__lead-photo {
  margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .content__lead-photo {
    margin-bottom: 9.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .content__lead .content__lead-text {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .content__lead .content__text {
    margin-top: 0px;
  }
}

.link {
  background-color: #faf5f0;
  padding-top: 70px;
  padding-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .link {
    padding-top: 35px;
    padding-bottom: 35px;
  }
}
.link .content__text {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .link .content__text {
    white-space: nowrap;
    margin-left: -1.5em;
    margin-right: -1.5em;
  }
}
@media screen and (max-width: 319px) {
  .link .content__text {
    white-space: normal;
  }
}
.link__head-text {
  margin: auto;
  margin-top: 30px;
  color: #6c2c2f;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .link__head-text {
    margin-top: 40px;
    font-size: 1.7rem;
    text-align: center;
  }
}
.link__theme-list {
  margin: auto;
  max-width: 488px;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  list-style-type: none;
}
@media screen and (max-width: 767px) {
  .link__theme-list {
    margin-top: 10px;
    width: 200px;
  }
}
.link__theme-list li {
  margin-top: 35px;
  width: 44.8770491803%;
}
@media screen and (max-width: 767px) {
  .link__theme-list li {
    margin-top: 20px;
    width: 100%;
  }
}
.link__image-head {
  margin: auto;
  margin-top: 60px;
  padding-top: 40px;
  max-width: 700px;
  border-top: 2px solid #6c2c2f;
  color: #6c2c2f;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .link__image-head {
    margin-top: 70px;
    padding-top: 20px;
    font-size: 1.7rem;
    text-align: center;
  }
}
.link__images {
  margin-top: 15px;
  margin-right: -15px;
  margin-left: -15px;
  max-width: 990px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  list-style-type: none;
}
@media screen and (max-width: 767px) {
  .link__images {
    margin: auto;
    max-width: 100%;
    justify-content: space-between;
  }
}
.link__images li {
  box-sizing: border-box;
  margin-top: 5.0505050505%;
  width: 16.6666666667%;
  padding-left: 1.5151515152%;
  padding-right: 1.5151515152%;
}
@media screen and (max-width: 767px) {
  .link__images li {
    margin-top: 8.4745762712%;
    width: 28.4745762712%;
    padding: 0;
  }
}
.link__images a {
  display: block;
}
.link__images img {
  display: block;
  border-radius: 0 0 40px 0;
  overflow: hidden;
  box-shadow: 0px 5px 10px 0px rgba(77, 31, 34, 0.4);
}
@media screen and (max-width: 767px) {
  .link__images img {
    width: 100%;
    border-radius: 0 0 5.3333333333vw 0;
    box-shadow: 0px 2.5px 5px 0px rgba(77, 31, 34, 0.4);
  }
}

.sec01 {
  background-color: #fff8ee;
}

.sec02 {
  background-color: #ffe9d3;
}

.sec03 {
  background-color: #f7d7c1;
}

.sec04 {
  background-color: #d9bba6;
}

.change {
  padding: 100px 0;
  background-image: url(/assets/images/life/life-bg-pc.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .change {
    padding: 13.3333333333vw 0;
    background-image: url(/assets/images/life/life-bg-sp.jpg);
  }
}