@charset "UTF-8";
.shr-accordionItem summary {
  display: block;
  list-style: none;
  cursor: pointer;
}

.shr-accordionItem__toggle .icon {
  color: #000000;
  width: 1.4rem;
  height: 1.4rem;
  position: absolute;
}
@media screen and (min-width: 1000px) {
  .shr-accordionItem__toggle .icon {
    right: 2.6rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-accordionItem__toggle .icon {
    right: 0;
    top: 3.4rem;
  }
}
.shr-accordionItem__toggle .icon::before, .shr-accordionItem__toggle .icon::after {
  content: "";
  position: absolute;
  background-color: #000000;
  border-radius: 0.2rem;
}
@media screen and (min-width: 1000px) {
  .shr-accordionItem__toggle .icon::before, .shr-accordionItem__toggle .icon::after {
    top: 1.9rem;
    width: 1.4rem;
    height: 0.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-accordionItem__toggle .icon::before, .shr-accordionItem__toggle .icon::after {
    top: 0;
    width: 1rem;
    height: 0.2rem;
  }
}
.shr-accordionItem__toggle .icon::after {
  transform: rotate(90deg);
  transition: transform 0.3s ease;
}

details.shr-accordionItem[open] .icon::after {
  transform: rotate(180deg);
}

summary::-webkit-details-marker {
  display: none;
}

html {
  height: -webkit-fill-available;
}

body {
  min-height: 100vh;
  min-height: -webkit-fill-available;
}

.shr-modal {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  z-index: 10000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);
  transition: opacity 0.3s ease-in-out, visibility 0s linear 0.3s;
}
.shr-modal.fade-in {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease-in-out, visibility 0s linear 0s;
}

@media screen and (min-width: 1000px) {
  .shr-modalTopMovieWrap {
    width: 640px;
    height: 360px;
    position: relative;
    right: 0;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    margin: auto;
  }
}
.shr-modalTopMovieWrap .shr-modal__close {
  position: fixed;
}
@media screen and (min-width: 1000px) {
  .shr-modalTopMovieWrap .shr-modal__close {
    cursor: pointer;
    width: 40px;
    right: -0.4rem;
  }
}

.shr-modal__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.shr-modal__inner.--iframe {
  text-align: center;
}
@media screen and (max-width: 999px) {
  .shr-modal__inner {
    width: 100%;
    max-width: 640px;
  }
}
@media (max-width: 640px) {
  .shr-modal__inner iframe {
    width: 100% !important;
  }
}
@media screen and (min-width: 1000px) {
  .shr-modal__inner {
    width: 825px;
    border-radius: 10px;
  }
}
.shr-modal__inner img {
  width: 100%;
}

@media screen and (max-width: 999px) {
  .shr-modal__iframe {
    width: 100%;
  }
}

@media screen and (max-width: 999px) {
  .shr-modal__content {
    overflow-y: scroll;
    overflow-x: hidden;
    max-height: 80vh;
  }
}
@media screen and (min-width: 1000px) {
  .shr-modal__content {
    overflow-y: auto;
    overflow-x: hidden;
    padding: 40px 47px 40px 45px;
    max-height: 600px;
  }
}

.shr-modal__close {
  position: absolute;
  display: block;
}
@media screen and (min-width: 1000px) {
  .shr-modal__close {
    width: 50px;
    height: 50px;
    right: 0;
    transform: translateY(-100%);
  }
}
@media screen and (max-width: 999px) {
  .shr-modal__close {
    width: 2.9rem;
    height: 2.9rem;
    top: 2.8rem;
    right: 2.5rem;
  }
}
.shr-modal__close::before, .shr-modal__close::after {
  content: "";
  display: block;
  width: 100%;
  height: 0.1rem;
  background: #FFF;
  transform: rotate(45deg);
  transform-origin: 0% 50%;
  position: absolute;
  top: calc(14% - 5px);
  left: 14%;
}
.shr-modal__close::after {
  transform: rotate(-45deg);
  transform-origin: 100% 50%;
  left: auto;
  right: 14%;
}

@media screen and (min-width: 1000px) {
  .block {
    position: fixed;
    width: 100px;
    height: 20rem;
    right: 0;
    bottom: 0;
    z-index: 100;
  }
}

@media screen and (min-width: 1000px) {
  .shr-spNav {
    padding: 0.7rem 0.7rem 0.7rem 2.3rem;
    background: #00BCC5;
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 10;
    transition: all 0.5s;
    transform: translateX(62rem);
  }
  .shr-spNav:hover {
    transform: translateX(-100px);
  }
  .shr-spNav::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0.7rem;
    background-image: url("../img/icon_under_arrow_white.svg");
    background-size: 100% 100%;
    width: 1rem;
    height: 0.8rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-spNav {
    position: fixed;
    bottom: 0;
    display: block;
    z-index: 3;
  }
}

ul.shr-spNavList {
  display: flex;
  flex-wrap: wrap;
  background-color: #fff;
  border: 0.2rem solid #00BCC5;
}
@media screen and (min-width: 1000px) {
  ul.shr-spNavList {
    width: 81.7rem;
    border: none;
    background-color: #00BCC5;
  }
}

.shr-spNavList__item {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  width: 50%;
  font-size: 1.2rem;
  line-height: 1.25;
  position: relative;
  background-color: #fff;
}
.shr-spNavList__item a {
  color: #000;
}
.shr-spNavList__item::before {
  width: 0.8rem;
  height: 0.5rem;
  top: 50%;
  right: 1.2rem;
  transform: translateY(-50%);
  position: absolute;
  content: "";
  background-image: url("../img/icon_under_arrow.svg");
  background-size: 100% 100%;
}
@media screen and (min-width: 1000px) {
  .shr-spNavList__item {
    width: 27.2333333333rem;
    font-size: 1.5rem;
    border: 0.15rem solid #00BCC5;
  }
  .shr-spNavList__item:hover::before {
    background-image: url("../img/icon_under_arrow_blue.svg");
  }
  .shr-spNavList__item:hover .shr-spNavList__link {
    color: #00BCC5;
  }
}
@media screen and (max-width: 999px) {
  .shr-spNavList__item {
    display: flex;
    align-items: center;
    border: 0.2rem solid #00BCC5;
  }
}
.shr-spNavList__item.--black {
  background-color: #43434C;
}
.shr-spNavList__item.--black a {
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 1000px) {
  .shr-spNavList__item.--black:hover .shr-spNavList__link {
    color: #fff;
    background-color: #62626d;
  }
}
.shr-spNavList__item.--black::before {
  background-image: url("../img/icon_under_arrow_white.svg");
}
.shr-spNavList__item.--current a {
  color: #00BCC5;
}
.shr-spNavList__item.--current::before {
  background-image: url("../img/icon_under_arrow_blue.svg");
}

.shr-spNavList__link {
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 1000px) {
  .shr-spNavList__link {
    display: flex;
    align-items: center;
    gap: 1.7rem;
    padding: 0.6rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-spNavList__link {
    padding: 0.5rem 1.2rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-spNavList__Image {
    width: 5.2rem;
    height: 5.2rem;
  }
  .shr-spNavList__Image img {
    width: 100%;
  }
}
@media screen and (max-width: 999px) {
  .shr-spNavList__Image {
    display: none;
  }
}

@media screen and (max-width: 999px) {
  .shr-wrap {
    overflow: hidden;
  }
}

.shr-contents--worklife {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 1000px) {
  .shr-contents--worklife {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 999px) {
  .shr-contents--worklife {
    font-size: 1.5rem;
    line-height: 1.6;
  }
}

.shr-fvContent {
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .shr-fvContent {
    padding-right: 100px;
  }
}
@media screen and (max-width: 999px) {
  .shr-fvContent {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}

h1.shr-headMain {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-align: center;
  position: relative;
  display: inline-block;
  z-index: 1;
}
h1.shr-headMain::before {
  content: "";
  background-size: cover;
  position: absolute;
  z-index: -1;
  background-image: url("../img/text_fv.svg");
}
@media screen and (min-width: 1000px) {
  h1.shr-headMain {
    font-size: 5.6rem;
    margin-bottom: 5.8rem;
  }
  h1.shr-headMain::before {
    width: 92rem;
    height: 13.8rem;
    top: -5.4rem;
    left: -36.9rem;
  }
}
@media screen and (max-width: 999px) {
  h1.shr-headMain {
    font-size: 3.4rem;
    margin-bottom: 3.3rem;
  }
  h1.shr-headMain::before {
    width: 34.7rem;
    height: 5.2rem;
    top: -1.2rem;
    left: -2.8rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-headDescription {
    text-align: center;
    font-size: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-headDescription {
    text-align: left;
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-headDescription__text + .shr-headDescription__text {
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-headDescription__text + .shr-headDescription__text {
    margin-top: 1.6rem;
  }
}

.shr-headImageWrap {
  display: flex;
  justify-content: center;
  gap: 4.8rem;
  margin-top: 4rem;
}
@media screen and (min-width: 1000px) {
  .shr-headImageWrap {
    max-width: 95rem;
    margin-inline: auto;
  }
}
@media screen and (max-width: 999px) {
  .shr-headImageWrap {
    flex-wrap: wrap;
    gap: 2.4rem 4.8rem;
  }
}

.shr-headImageLink {
  color: #000;
  display: inline-block;
}
@media screen and (min-width: 1000px) {
  .shr-headImageLink {
    width: 14.6rem;
  }
  .shr-headImageLink.--workAndPrivate {
    width: 17.4rem;
  }
  .shr-headImageLink.--vision .shr-headImageText {
    width: 11.6rem;
    margin-inline: auto;
  }
}
@media screen and (max-width: 999px) {
  .shr-headImageLink {
    width: 12.2rem;
  }
}

.shr-headImageText__adjust {
  display: inline-block;
  transform: translateX(-0.8rem);
}

.shr-headImage {
  margin-inline: auto;
}
.shr-headImage img {
  width: 100%;
}
@media screen and (min-width: 1000px) {
  .shr-headImage {
    max-width: 14.6rem;
  }
}
.shr-headImageText {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
  border-bottom: 0.1rem solid #9D9D9D;
}
.shr-headImageText::after {
  width: 0.8rem;
  height: 0.5rem;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  position: absolute;
  content: "";
  background-image: url("../img/icon_under_arrow.svg");
  background-size: 100% 100%;
}
@media screen and (min-width: 1000px) {
  .shr-headImageText {
    font-size: 1.5rem;
    white-space: nowrap;
    margin-top: 0.5rem;
    padding-bottom: 0.9rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-headImageText {
    font-size: 1.2rem;
    padding-bottom: 0.7rem;
  }
}

.shr-headButon {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #fff;
  background-color: #000;
  display: inline-block;
  text-align: center;
  margin-inline: auto;
  letter-spacing: 0.02rem;
  position: relative;
}
.shr-headButon::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 1rem;
  height: 0.6rem;
  top: 50%;
  transform: translateY(-50%);
  background-image: url("../img/icon_under_arrow_white.svg");
  background-size: cover;
}
@media screen and (min-width: 1000px) {
  .shr-headButon {
    font-size: 1.8rem;
    width: 51.8rem;
    margin-top: 8rem;
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
  }
  .shr-headButon::before {
    right: 1.8rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-headButon {
    width: 100%;
    font-size: 1.6rem;
    margin-top: 4.8rem;
    padding-top: 1.8rem;
    padding-bottom: 1.8rem;
  }
  .shr-headButon::before {
    right: 2rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowWrap {
    padding-bottom: 16rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowWrap {
    padding-bottom: 4.8rem;
    margin-top: 8rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowBackground01 {
    background-image: url("../img/bg_flow01.png"), url("../img/bg_flow02.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: 0 38.3rem, 0 106rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBackground01 {
    position: relative;
  }
  .shr-flowBackground01::before {
    content: "";
    position: absolute;
    width: 19.5rem;
    height: 16.2rem;
    top: 5rem;
    right: 0;
    background-image: url("../img/bg_flow01-01.svg");
    background-size: cover;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowBackground02 {
    background-image: url("../img/bg_flow03.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: 0 39rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowBackground03 {
    background-image: url("../img/bg_flow04.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: 0 39rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowBackground04 {
    background-image: url("../img/bg_flow05.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: 0 22.5rem;
  }
}

.shr-flow {
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .shr-flow {
    margin-top: 16rem;
    margin-left: 14.6rem;
    max-width: 104.3rem;
    position: relative;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flow.--short {
    margin-top: 14rem;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flow.--growAtAnyAge {
    margin-top: 0;
    max-width: 119.4rem;
    margin-left: 10rem;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flow.--peace {
    max-width: 97.7rem;
    margin-left: 18.2rem;
  }
}

.shr-flow__titleWrap {
  text-align: center;
}

h2.shr-flow__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  display: inline-block;
  position: relative;
  z-index: 1;
}
h2.shr-flow__title::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  transform: translateX(-130%);
  display: inline-block;
  width: 2.4rem;
  height: 2.4rem;
  background-image: url("../img/icon_title_parentheses.svg");
  background-size: cover;
}
h2.shr-flow__title::after {
  position: absolute;
  bottom: 0;
  right: 0;
  content: "";
  transform: rotate(180deg) translateX(-130%);
  display: inline-block;
  width: 2.4rem;
  height: 2.4rem;
  background-image: url("../img/icon_title_parentheses.svg");
  background-size: cover;
}
h2.shr-flow__title.--parenthesesNone::before, h2.shr-flow__title.--parenthesesNone::after {
  display: none;
}
@media screen and (min-width: 1000px) {
  h2.shr-flow__title {
    font-size: 4rem;
    background: radial-gradient(circle at calc(100% - 0.9rem) calc(100% - 0.9rem), #99E4E8 0.9rem, transparent 0.9rem), radial-gradient(circle at 0.9rem calc(100% - 0.9rem), #99E4E8 0.9rem, transparent 0.9rem), linear-gradient(to bottom, #fff calc(100% - 1.8rem), transparent calc(100% - 1.8rem)), linear-gradient(to right, transparent 0.9rem, #99E4E8 0.9rem, #99E4E8 calc(100% - 0.9rem), transparent calc(100% - 0.9rem));
  }
  h2.shr-flow__title.--lightBlue {
    background: radial-gradient(circle at calc(100% - 0.9rem) calc(100% - 0.9rem), #99E4E8 0.9rem, transparent 0.9rem), radial-gradient(circle at 0.9rem calc(100% - 0.9rem), #99E4E8 0.9rem, transparent 0.9rem), linear-gradient(to bottom, #F2F9FA calc(100% - 1.8rem), transparent calc(100% - 1.8rem)), linear-gradient(to right, transparent 0.9rem, #99E4E8 0.9rem, #99E4E8 calc(100% - 0.9rem), transparent calc(100% - 0.9rem));
  }
}
@media screen and (max-width: 999px) {
  h2.shr-flow__title {
    font-size: 2.8rem;
    line-height: 1.25;
    width: 100%;
  }
  h2.shr-flow__title::before {
    left: 1.7rem;
    width: 2.3rem;
    height: 2.3rem;
    transform: none;
  }
  h2.shr-flow__title::after {
    right: 1.7rem;
    width: 2.3rem;
    height: 2.3rem;
    transform: rotate(180deg);
  }
}

@media screen and (min-width: 1000px) {
  .shr-flow__titleAnnotationWrap {
    display: inline-block;
  }
}

.shr-flow__titleAnnotation {
  text-align: right;
  display: block;
}
@media screen and (min-width: 1000px) {
  .shr-flow__titleAnnotation {
    font-size: 1.3rem;
    margin-top: 1.2rem;
    transform: translateX(3.3rem);
  }
}
@media screen and (max-width: 999px) {
  .shr-flow__titleAnnotation {
    font-size: 1.2rem;
    padding-inline: 2rem;
    margin-top: 1rem;
  }
}

@media screen and (max-width: 999px) {
  .shr-flow__titleDecoration {
    background: radial-gradient(circle at calc(100% - 0.7rem) calc(100% - 0.7rem), #99E4E8 0.7rem, transparent 0.7rem), radial-gradient(circle at 0.7rem calc(100% - 0.7rem), #99E4E8 0.7rem, transparent 0.7rem), linear-gradient(to bottom, #fff calc(100% - 1.4rem), transparent calc(100% - 1.8rem)), linear-gradient(to right, transparent 0.7rem, #99E4E8 0.7rem, #99E4E8 calc(100% - 0.7rem), transparent calc(100% - 0.7rem));
  }
  .shr-flow__titleDecoration.--lightBlue {
    background: radial-gradient(circle at calc(100% - 0.7rem) calc(100% - 0.7rem), #99E4E8 0.7rem, transparent 0.7rem), radial-gradient(circle at 0.7rem calc(100% - 0.7rem), #99E4E8 0.7rem, transparent 0.7rem), linear-gradient(to bottom, #F2F9FA calc(100% - 1.4rem), transparent calc(100% - 1.8rem)), linear-gradient(to right, transparent 0.7rem, #99E4E8 0.7rem, #99E4E8 calc(100% - 0.7rem), transparent calc(100% - 0.7rem));
  }
  .shr-flow__titleDecoration.--backSide {
    z-index: -1;
    position: relative;
  }
}

.shr-flowBlockWrap {
  /* ===========================================
   * workAndPrivate01
   * ======================================== */
  /* ===========================================
   * workAndPrivate02
   * ======================================== */
  /* ===========================================
   * wantToDo
   * ======================================== */
  /* ===========================================
   * growAtAnyAge
   * ======================================== */
  /* ===========================================
   * growAtAnyAge02
   * ======================================== */
  /* ===========================================
   * peace
   * ======================================== */
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap {
    margin-top: 6.5rem;
    position: relative;
  }
  .shr-flowBlockWrap.--growAtAnyAge {
    transform: translateX(4.8rem);
    max-width: 104.3rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap {
    margin-top: 5rem;
    display: flex;
    flex-direction: column;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--3column {
    height: 71rem;
  }
  .shr-flowBlockWrap.--3column.--long {
    height: 84rem;
  }
  .shr-flowBlockWrap.--3column .shr-flowBlock {
    position: absolute;
  }
  .shr-flowBlockWrap.--3column .shr-flowBlock:first-child {
    left: 0;
  }
  .shr-flowBlockWrap.--3column .shr-flowBlock:nth-child(2) {
    top: 5.9rem;
    right: 0;
    left: 0;
    margin-inline: auto;
  }
  .shr-flowBlockWrap.--3column .shr-flowBlock:nth-child(3) {
    right: 0;
  }
  .shr-flowBlockWrap.--3column .shr-flowBlock:nth-child(4) {
    right: 0;
    left: 0;
    margin-inline: auto;
    top: 60rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--3column .shr-flowBlock {
    position: relative;
  }
  .shr-flowBlockWrap.--3column .shr-flowBlock::before {
    content: "";
    position: absolute;
    background-size: cover;
    z-index: -1;
  }
  .shr-flowBlockWrap.--3column .shr-flowBlock:nth-child(4) {
    margin-left: 9rem;
  }
}
.shr-flowBlockWrap.--workAndPrivate01 {
  position: relative;
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock {
    position: relative;
  }
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock::before, .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock::after {
    position: absolute;
    background-size: cover;
  }
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock:first-child {
    margin-left: 2rem;
    margin-bottom: 3.2rem;
  }
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock:first-child::before {
    width: 6.1rem;
    height: 17.9rem;
    bottom: -14rem;
    left: 2rem;
    background-image: url("../img/bg_flow01-02.svg");
  }
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock:nth-child(2) {
    margin-left: 9rem;
    margin-bottom: 19.6rem;
  }
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock:nth-child(2)::before {
    width: 33.7rem;
    height: 29rem;
    bottom: -28rem;
    right: 0.7rem;
    background-image: url("../img/bg_flow01-03.svg");
  }
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock:nth-child(3) {
    margin-left: 2rem;
    margin-bottom: 30rem;
  }
  .shr-flowBlockWrap.--workAndPrivate01 .shr-flowBlock:nth-child(3)::before {
    width: 33.3rem;
    height: 39.9rem;
    bottom: -37rem;
    left: 0;
    background-image: url("../img/bg_flow01-04.svg");
  }
}
.shr-flowBlockWrap.--workAndPrivate02 {
  margin-top: 0;
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--workAndPrivate02 {
    height: 84.5rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock {
    position: absolute;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:first-child {
    left: 0;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(2) {
    left: 13.6rem;
    top: 60rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(3) {
    right: 13.6rem;
    top: 55.5rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(4) {
    top: 5.9rem;
    right: 0;
    left: 0;
    margin-inline: auto;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(5) {
    right: 0;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock {
    position: relative;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock::before {
    content: "";
    position: absolute;
    background-size: cover;
    z-index: -1;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:first-child {
    margin-left: 9rem;
    margin-bottom: 21.1rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:first-child::before {
    width: 33.7rem;
    height: 29rem;
    bottom: -27rem;
    left: -6rem;
    background-image: url("../img/bg_flow01-05.svg");
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(2) {
    margin-left: 2rem;
    margin-bottom: 3.1rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(2)::before {
    width: 6.1rem;
    height: 17.9rem;
    bottom: -11rem;
    left: 2rem;
    background-image: url("../img/bg_flow01-06.svg");
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(3) {
    margin-left: 9rem;
    margin-bottom: 17.6rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(3)::before {
    width: 28.8rem;
    height: 26.3rem;
    bottom: -22.5rem;
    left: -3rem;
    background-image: url("../img/bg_flow01-07.svg");
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(4) {
    margin-left: 2rem;
    margin-bottom: 21.2rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(4)::before {
    width: 30.8rem;
    height: 39.7rem;
    bottom: -35.7rem;
    left: 2.5rem;
    background-image: url("../img/bg_flow01-08.svg");
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(5) {
    margin-left: 9rem;
    margin-bottom: 26.7rem;
  }
  .shr-flowBlockWrap.--workAndPrivate02 .shr-flowBlock:nth-child(5)::before {
    width: 34.5rem;
    height: 27.9rem;
    bottom: -23rem;
    left: -4.5rem;
    background-image: url("../img/bg_flow01-09.svg");
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--wantToDo {
    position: relative;
  }
  .shr-flowBlockWrap.--wantToDo::before {
    content: "";
    width: 14.2rem;
    height: 15.2rem;
    right: 0;
    top: -6rem;
    position: absolute;
    background-image: url("../img/bg_flow02-01.svg");
    background-size: cover;
    z-index: -1;
  }
  .shr-flowBlockWrap.--wantToDo .shr-flowBlock {
    position: relative;
  }
  .shr-flowBlockWrap.--wantToDo .shr-flowBlock:first-child {
    margin-left: 2rem;
    margin-bottom: 20.8rem;
  }
  .shr-flowBlockWrap.--wantToDo .shr-flowBlock:first-child::before {
    width: 29.1rem;
    height: 31.1rem;
    bottom: -29rem;
    left: 2rem;
    background-image: url("../img/bg_flow02-02.svg");
  }
  .shr-flowBlockWrap.--wantToDo .shr-flowBlock:nth-child(2) {
    margin-left: 9rem;
    margin-bottom: 27.3rem;
  }
  .shr-flowBlockWrap.--wantToDo .shr-flowBlock:nth-child(2)::before {
    width: 36.8rem;
    height: 38.7rem;
    bottom: -36.5rem;
    right: -1.5rem;
    background-image: url("../img/bg_flow02-03.svg");
  }
  .shr-flowBlockWrap.--wantToDo .shr-flowBlock:nth-child(3) {
    margin-left: 2rem;
    margin-bottom: 22.6rem;
  }
  .shr-flowBlockWrap.--wantToDo .shr-flowBlock:nth-child(3)::before {
    width: 39.2rem;
    height: 19.3rem;
    bottom: -16rem;
    right: -9rem;
    background-image: url("../img/bg_flow02-04.svg");
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--growAtAnyAge {
    position: relative;
  }
  .shr-flowBlockWrap.--growAtAnyAge::before {
    content: "";
    position: absolute;
    background-size: cover;
    z-index: -1;
    width: 14rem;
    height: 17.7rem;
    top: -7rem;
    right: 0;
    background-image: url("../img/bg_flow03-01.svg");
    background-size: cover;
  }
  .shr-flowBlockWrap.--growAtAnyAge .shr-flowBlock {
    position: relative;
  }
  .shr-flowBlockWrap.--growAtAnyAge .shr-flowBlock:first-child {
    margin-left: 2rem;
    margin-bottom: 3.2rem;
  }
  .shr-flowBlockWrap.--growAtAnyAge .shr-flowBlock:first-child::before {
    width: 6.1rem;
    height: 17.9rem;
    bottom: -10rem;
    left: 2rem;
    background-image: url("../img/bg_flow03-02.svg");
  }
  .shr-flowBlockWrap.--growAtAnyAge .shr-flowBlock:nth-child(2) {
    margin-left: 9rem;
    margin-bottom: 12rem;
  }
  .shr-flowBlockWrap.--growAtAnyAge .shr-flowBlock:nth-child(2)::before {
    width: 12.8rem;
    height: 21.7rem;
    bottom: -19rem;
    right: 0;
    background-image: url("../img/bg_flow03-03.svg");
  }
  .shr-flowBlockWrap.--growAtAnyAge .shr-flowBlock:nth-child(3) {
    margin-left: 2rem;
    margin-bottom: 24rem;
  }
  .shr-flowBlockWrap.--growAtAnyAge .shr-flowBlock:nth-child(3)::before {
    width: 33.8rem;
    height: 32.1rem;
    bottom: -31rem;
    left: 0;
    background-image: url("../img/bg_flow03-04.svg");
  }
}
.shr-flowBlockWrap.--growAtAnyAge02 {
  margin-top: 0;
  display: flex;
  gap: 1.3rem;
}
.shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock {
  position: relative;
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock {
    width: 28.4rem;
    padding-top: 3.5rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock::before {
    content: "";
    position: absolute;
    background-size: cover;
    z-index: -1;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock h3.shr-flow__head {
    width: 26rem;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock.--2line .shr-flowText__top {
    padding-top: 4.5rem;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(1) {
    margin-top: 4.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(1) {
    margin-left: 9rem;
    margin-bottom: 3.2rem;
  }
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(1)::before {
    width: 6.8rem;
    height: 14.3rem;
    bottom: -10rem;
    right: 3rem;
    background-image: url("../img/bg_flow03-05.svg");
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(2) {
    margin-left: 2rem;
    margin-bottom: 20.4rem;
  }
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(2)::before {
    width: 29.5rem;
    height: 28.7rem;
    bottom: -27.8rem;
    left: 1rem;
    background-image: url("../img/bg_flow03-06.svg");
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(3) {
    margin-top: 4.2rem;
    padding-top: 2.3rem !important;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(3) {
    margin-left: 9rem;
    margin-bottom: 3.2rem;
  }
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(3)::before {
    width: 6.8rem;
    height: 14.3rem;
    bottom: -11.7rem;
    right: 3rem;
    background-image: url("../img/bg_flow03-07.svg");
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(4) {
    margin-left: 2rem;
    margin-bottom: 19.5rem;
  }
  .shr-flowBlockWrap.--growAtAnyAge02 .shr-flowBlock:nth-child(4)::before {
    width: 39.2rem;
    height: 20.7rem;
    bottom: -14.7rem;
    left: -2.5rem;
    background-image: url("../img/bg_flow03-08.svg");
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--peace {
    margin-top: 8.4rem;
    height: 43.9rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--peace {
    position: relative;
  }
  .shr-flowBlockWrap.--peace::before {
    content: "";
    position: absolute;
    background-size: cover;
    background-image: url("../img/bg_flow04-01.svg");
    width: 14.1rem;
    height: 9rem;
    top: -4rem;
    right: 0;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--peace .shr-flowBlock {
    position: absolute;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--peace .shr-flowBlock:nth-child(1) {
    left: 11.4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--peace .shr-flowBlock:nth-child(1) {
    margin-left: 9rem;
    margin-bottom: 4.8rem;
  }
  .shr-flowBlockWrap.--peace .shr-flowBlock:nth-child(1)::before {
    content: "";
    position: absolute;
    background-size: cover;
    background-image: url("../img/bg_flow04-02.svg");
    width: 10.1rem;
    height: 16.2rem;
    top: 6rem;
    left: -7rem;
    z-index: -1;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlockWrap.--peace .shr-flowBlock:nth-child(2) {
    left: 55.4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlockWrap.--peace .shr-flowBlock:nth-child(2) {
    margin-left: 2rem;
    margin-bottom: 24rem;
  }
  .shr-flowBlockWrap.--peace .shr-flowBlock:nth-child(2)::before {
    content: "";
    position: absolute;
    background-size: cover;
    background-image: url("../img/bg_flow04-03.svg");
    width: 28.5rem;
    height: 27.7rem;
    top: 15rem;
    right: -4rem;
    z-index: -1;
  }
}

.shr-flowBlock {
  position: relative;
  padding-top: 2.4rem;
  display: inline-block;
  z-index: 2;
}
@media screen and (min-width: 1000px) {
  .shr-flowBlock {
    width: 32.8rem;
    position: absolute;
  }
  .shr-flowBlock.--arrowReversible::after {
    top: 0;
    bottom: inherit;
    transform: rotate(180deg) translateY(100%);
  }
}
.shr-flowBlock.--colorGray .shr-flow__head {
  border-color: #CCC;
}
.shr-flowBlock.--colorGray .shr-flowText {
  border-color: #CCC;
  background-color: #F7F7F7;
}
.shr-flowBlock.--colorGray::after {
  border-top-color: #CCC;
}
@media screen and (max-width: 999px) {
  .shr-flowBlock {
    width: 28rem;
    margin-bottom: 1.2rem;
  }
  .shr-flowBlock.--colorToBlueReversible .shr-flow__head {
    border-color: #00BCC5;
  }
  .shr-flowBlock.--colorToBlueReversible .shr-flowText {
    border-color: #00BCC5;
    background-color: #EBF9FA;
  }
  .shr-flowBlock.--colorToBlueReversible::after {
    border-top-color: #00BCC5;
  }
  .shr-flowBlock.--colorToGrayReversible .shr-flow__head {
    border-color: #CCC;
  }
  .shr-flowBlock.--colorToGrayReversible .shr-flowText {
    border-color: #CCC;
    background-color: #F7F7F7;
  }
  .shr-flowBlock.--colorToGrayReversible::after {
    border-top-color: #CCC;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowBlock.--2line .shr-flowText__top {
    padding-top: 6rem;
  }
  .shr-flowBlock.--2line h3.shr-flow__head {
    border-radius: 3.5rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlock.--2line .shr-flowText__top {
    padding-top: 4.6rem;
  }
  .shr-flowBlock.--2line h3.shr-flow__head {
    border-radius: 3rem;
  }
}
.shr-flowBlock.--buttonNone {
  padding-top: 0;
}
@media screen and (min-width: 1000px) {
  .shr-flowBlock.--buttonNone .shr-flowText__top {
    padding: 2.3rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlock.--buttonNone .shr-flowText__top {
    padding: 1.6rem;
  }
}
.shr-flowBlock::after {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin-inline: auto;
  transform: translateY(100%);
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-bottom: 0;
}
@media screen and (min-width: 1000px) {
  .shr-flowBlock::after {
    border-right: 2.1rem solid transparent;
    border-left: 2.1rem solid transparent;
    border-top: 1.6rem solid #00BCC5;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowBlock::after {
    border-right: 1.5rem solid transparent;
    border-left: 1.5rem solid transparent;
    border-top: 1.2rem solid #00BCC5;
  }
}

h3.shr-flow__head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: inline-block;
  margin-inline: auto;
  background-color: #fff;
}
@media screen and (min-width: 1000px) {
  h3.shr-flow__head {
    width: 29.6rem;
    border: 0.3rem solid #00BCC5;
    padding: 1.3rem;
    border-radius: 2.5rem;
    line-height: 1.25;
  }
}
@media screen and (max-width: 999px) {
  h3.shr-flow__head {
    width: 26.8rem;
    padding: 1rem 1rem;
    border: 0.2rem solid #00BCC5;
    border-radius: 2.5rem;
    line-height: 1.13;
  }
}

.shr-flowText {
  text-align: left;
  background-color: #EBF9FA;
  border-radius: 0.8rem;
}
@media screen and (min-width: 1000px) {
  .shr-flowText {
    border: 0.3rem solid #00BCC5;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowText {
    border: 0.2rem solid #00BCC5;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowText__top {
    padding: 4.4rem 2.3rem 0;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowText__top {
    padding: 3rem 1.6rem 0;
  }
}

.shr-flowText__button {
  position: relative;
  text-align: center;
  padding-top: 1.2rem;
  padding-bottom: 1.6rem;
  margin-inline: 2.4rem;
  border-top: 1px solid #C4C4C4;
  cursor: pointer;
}
.shr-flowText__button.--open {
  border: none;
}
.shr-flowText__button.--open .shr-flowText__iconBlack::before {
  transform: rotate(90deg);
}
.shr-flowText__button.--open .shr-flowText__iconYellow::before {
  transform: rotate(90deg);
}

.shr-flowText__highlight {
  display: inline-block;
  transform: translateX(-1.5rem);
  background: linear-gradient(transparent 60%, #FFEC1A 60%);
  font-size: 1.4rem;
}

.shr-flowText__iconBlack {
  position: absolute;
  z-index: 2;
}
.shr-flowText__iconBlack::before, .shr-flowText__iconBlack::after {
  content: "";
  display: inline-block;
  width: 0.2rem;
  height: 1.2rem;
  background-color: #000;
  position: absolute;
  top: 0.7rem;
  right: -0.2rem;
  transition: all 0.5s;
}
.shr-flowText__iconBlack::after {
  transform: rotate(90deg);
}

.shr-flowText__iconYellow {
  position: absolute;
}
.shr-flowText__iconYellow::before, .shr-flowText__iconYellow::after {
  content: "";
  display: inline-block;
  width: 0.2rem;
  height: 1.2rem;
  background-color: #FFEC1A;
  position: absolute;
  top: 0.9rem;
  right: -0.4rem;
  transition: all 0.5s;
}
.shr-flowText__iconYellow::after {
  transform: rotate(90deg);
}

.shr-flowTextAccordion {
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.5s;
  background-color: #fff;
}
@media screen and (min-width: 1000px) {
  .shr-flowTextAccordion {
    margin-top: 2rem;
    padding-inline: 1.6rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowTextAccordion {
    font-size: 1.4rem;
    padding-inline: 1.1rem;
    margin-top: 1.7rem;
  }
}
.shr-flowTextAccordion.--open {
  height: auto;
  opacity: 1;
}
@media screen and (min-width: 1000px) {
  .shr-flowTextAccordion.--open {
    padding: 1.6rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowTextAccordion.--open {
    padding: 1.1rem;
  }
}

.shr-peaceBoxContentText {
  text-align: left;
}
@media screen and (min-width: 1000px) {
  .shr-peaceBoxContentText {
    margin-top: 1.7rem;
    padding-inline: 1.2rem;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-peaceBoxContentText {
    font-size: 1.4rem;
    padding: 1.6rem;
    padding-bottom: 0;
  }
}

.shr-peaceBoxContentImage {
  margin-inline: auto;
}
@media screen and (min-width: 1000px) {
  .shr-peaceBoxContentImage {
    margin-top: 1.7rem;
  }
  .shr-peaceBoxContentImage.--01 {
    width: 16.6rem;
  }
  .shr-peaceBoxContentImage.--02 {
    width: 22.7rem;
  }
  .shr-peaceBoxContentImage.--03 {
    width: 22.6rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-peaceBoxContentImage {
    padding: 1.6rem;
    padding-bottom: 0;
  }
  .shr-peaceBoxContentImage.--01 {
    width: 23.7rem;
  }
}
.shr-peaceBoxContentImage img {
  width: 100%;
}

@media screen and (min-width: 1000px) {
  .shr-peaceBoxContentDescription {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-peaceBoxContentDescription {
    font-size: 1.3rem;
    padding: 1.3rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowTextAccordion__intro {
    font-size: 1.5rem;
  }
}
.shr-flowTextAccordion__link {
  font-size: 1.4rem;
  color: #000;
  border-bottom: 1px solid #000;
  display: inline-block;
}
@media screen and (min-width: 1000px) {
  .shr-flowTextAccordion__link {
    margin-top: 1.3rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowTextAccordion__link {
    margin-top: 1.2rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowTextAccordion__bottom {
    margin-top: 1.7rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowTextAccordion__bottom {
    margin-top: 1.6rem;
  }
}
@media screen and (min-width: 1000px) {
  .shr-flowTextAccordion__bottom.--big {
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowTextAccordion__bottom.--big {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-flowTextAccordion__bottomImageWrap:not(:first-child) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowTextAccordion__bottomImageWrap:not(:first-child) {
    margin-top: 1.6rem;
  }
}

.flowTextAccordion__bold {
  font-weight: 700;
  text-align: center;
  font-size: 1.5rem;
}
@media screen and (min-width: 1000px) {
  .flowTextAccordion__bold span {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 999px) {
  .flowTextAccordion__bold span {
    font-size: 1rem;
  }
}

.flowTextAccordion__supplement {
  font-size: 1.2rem;
}
.flowTextAccordion__image {
  margin-top: 1.2rem;
}
.flowTextAccordion__image img {
  width: 100%;
  display: block;
}
@media screen and (min-width: 1000px) {
  ul.flowTextAccordion__annotationList {
    font-size: 1.1rem;
    margin-top: 0.8rem;
  }
}
@media screen and (max-width: 999px) {
  ul.flowTextAccordion__annotationList {
    font-size: 1rem;
    margin-top: 1.2rem;
  }
}

@media screen and (min-width: 1000px) {
  .flowTextAccordion__annotationItem:not(:first-child) {
    margin-top: 0.7rem;
  }
}
@media screen and (max-width: 999px) {
  .flowTextAccordion__annotationItem:not(:first-child) {
    margin-top: 0.6rem;
  }
}

.shr-flowText__voice {
  text-align: right;
}
@media screen and (min-width: 1000px) {
  .shr-flowText__voice {
    font-size: 1.3rem;
    margin-top: 0.4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowText__voice {
    font-size: 1.2rem;
  }
}

.shr-flowButton {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .shr-flowButton {
    margin-top: 1.2rem;
    padding-top: 1.2rem;
    border-top: 1px solid #C4C4C4;
    cursor: pointer;
  }
}
@media screen and (max-width: 999px) {
  .shr-flowButton {
    margin-top: 1.7em;
    padding-top: 0.8rem;
  }
}

.shr-flowLast {
  text-align: center;
  margin-inline: auto;
}

.shr-peaceBoxWrap {
  display: flex;
  justify-content: center;
  width: 100%;
  background-color: #fff;
}
@media screen and (min-width: 1000px) {
  .shr-peaceBoxWrap {
    gap: 4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-peaceBoxWrap {
    flex-direction: column;
    padding-inline: 2rem;
    gap: 1.2rem;
    position: relative;
    z-index: 2;
  }
}

.shr-peaceBox {
  align-self: flex-start;
  border: 0.3rem solid #00BCC5;
  border-radius: 0.8rem;
}
@media screen and (min-width: 1000px) {
  .shr-peaceBox {
    width: calc(33.3333333333% - 2.7rem);
    padding: 2.4rem;
    cursor: pointer;
  }
}
@media screen and (max-width: 999px) {
  .shr-peaceBox {
    padding: 1.8rem 2.4rem;
  }
}
.shr-peaceBox.--open .shr-peaceBoxText {
  border: none;
}
.shr-peaceBox.--open .shr-flowText__iconBlack::before {
  transform: rotate(90deg);
}
.shr-peaceBox.--open .shr-flowText__iconYellow::before {
  transform: rotate(90deg);
}

.shr-peaceBoxText {
  position: relative;
  text-align: left;
  padding-bottom: 0.7rem;
  border-bottom: 0.1rem solid #9D9D9D;
}
.shr-peaceBoxText .shr-flowText__iconBlack {
  right: 0.7rem;
}
.shr-peaceBoxText .shr-flowText__iconYellow {
  right: 0.5rem;
}
.shr-peaceBoxText i:before, .shr-peaceBoxText i:after {
  right: 0;
}

.shr-peaceBoxText__highLight {
  background: radial-gradient(circle at calc(100% - 0.4rem) calc(100% - 0.4rem), #FFEC1A 0.4rem, transparent 0.4rem), radial-gradient(circle at 0.4rem calc(100% - 0.4rem), #FFEC1A 0.4rem, transparent 0.4rem), linear-gradient(to bottom, #fff calc(100% - 0.8rem), transparent calc(100% - 0.8rem)), linear-gradient(to right, transparent 0.4rem, #FFEC1A 0.4rem, #FFEC1A calc(100% - 0.4rem), transparent calc(100% - 0.4rem));
}

.shr-peaceBoxContent {
  overflow: hidden;
  transition: all 0.5s;
  opacity: 0;
  height: 0;
}
.shr-peaceBoxContent.--open {
  height: auto;
  opacity: 1;
}

.shr-10years {
  background-color: #F2F9FA;
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .shr-10years {
    padding-top: 10.1rem;
    padding-bottom: 13.6rem;
    padding-right: 100px;
  }
}
@media screen and (max-width: 999px) {
  .shr-10years {
    padding-top: 4.9rem;
    padding-bottom: 4.8rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-10yearsInner {
    width: 105.1rem;
    margin-inline: auto;
  }
}
@media screen and (max-width: 999px) {
  .shr-10yearsInner {
    padding-inline: 2rem;
  }
}

.shr-10years__boxWrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media screen and (min-width: 1000px) {
  .shr-10years__boxWrap {
    gap: 2.3rem 2rem;
    margin-inline: auto;
    margin-top: 4.9rem !important;
  }
}
@media screen and (max-width: 999px) {
  .shr-10years__boxWrap {
    gap: 1rem;
    margin-top: 1.7rem !important;
  }
}

.shr-10years__box {
  background: #fff;
  border-radius: 0.8rem;
}
@media screen and (min-width: 1000px) {
  .shr-10years__box {
    width: calc(33.3333333333% - 1.5333333333rem);
    border: 0.3rem solid #00BCC5;
    padding: 3.2rem 2.4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-10years__box {
    border: 0.2rem solid #00BCC5;
    width: calc(50% - 0.5rem);
    padding: 1.2rem 1.2rem 1.6rem;
  }
}
.shr-10years__box.--annotation {
  position: relative;
}
.shr-10years__box.--annotation::before {
  position: absolute;
  content: "※積水ハウスの木造住宅";
  font-size: 1rem;
}
@media screen and (min-width: 1000px) {
  .shr-10years__box.--annotation::before {
    bottom: 1.2rem;
    right: 2.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-10years__box.--annotation::before {
    bottom: 1rem;
    right: 1.2rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-10years__boxText {
    font-size: 1.8rem;
    height: 7.4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-10years__boxText {
    font-size: 1.2rem;
    line-height: 1.29;
  }
}

.shr-10years__boxSup {
  display: inline-block;
  font-size: 5px;
}

.shr-10years__boxImage {
  margin-inline: auto;
}
.shr-10years__boxImage img {
  width: 100%;
}
@media screen and (min-width: 1000px) {
  .shr-10years__boxImage {
    margin-top: 2.1rem;
    width: 13.4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-10years__boxImage {
    margin-top: 1.6rem;
    width: 8.7rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-10years__boxAnnotation {
    font-size: 0.9rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-10years__boxAnnotation {
    font-size: 0.6rem;
  }
}

.shr-pageFaq {
  max-width: 105rem;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media screen and (min-width: 1000px) {
  .shr-pageFaq {
    max-width: 88.4rem;
    margin: 16rem 0 0 22.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-pageFaq {
    padding: 0 2rem;
    margin-top: 4.8rem;
  }
}

@media screen and (min-width: 1000px) {
  .shr-FaqBlock {
    margin-top: 5.6rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqBlock {
    margin-top: 4.9rem;
  }
}

h2.shr-FaqHead-02 {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 1000px) {
  h2.shr-FaqHead-02 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 999px) {
  h2.shr-FaqHead-02 {
    font-size: 2.2rem;
    padding-left: 1.2rem;
  }
  h2.shr-FaqHead-02.--1line {
    white-space: nowrap;
  }
}
h2.shr-FaqHead-02::before {
  content: "";
  display: block;
  position: absolute;
  background: #000000;
}
@media screen and (min-width: 1000px) {
  h2.shr-FaqHead-02::before {
    width: 5.8rem;
    height: 0.2rem;
    left: -8.2rem;
    top: 2.6rem;
  }
}
@media screen and (max-width: 999px) {
  h2.shr-FaqHead-02::before {
    width: 2rem;
    height: 0.2rem;
    left: -2rem;
    top: 1.6rem;
  }
}
h2.shr-FaqHead-02::after {
  content: "";
  display: block;
  position: absolute;
  background: #00BCC5;
}
@media screen and (min-width: 1000px) {
  h2.shr-FaqHead-02::after {
    width: 5.8rem;
    height: 0.2rem;
    left: -7.9rem;
    top: 2.9rem;
  }
}
@media screen and (max-width: 999px) {
  h2.shr-FaqHead-02::after {
    width: 2rem;
    height: 0.2rem;
    left: -2rem;
    top: 1.8rem;
  }
}

.shr-FaqList {
  margin-bottom: 8rem;
  margin-top: 4.1rem;
}
@media screen and (max-width: 999px) {
  .shr-FaqList {
    margin-top: 1rem;
  }
}

.shr-FaqTextBlock {
  margin-top: 5.6rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

.shr-FaqItem {
  border-bottom: 1px solid #C4C4C4;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItem:first-child {
    border-top: 1px solid #C4C4C4;
  }
}

.shr-FaqItemHead {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemHead {
    font-size: 2rem;
    letter-spacing: 0.06em;
    line-height: 2;
    padding: 3.2rem 0 3.2rem 3.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemHead {
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height: 1.5;
    padding: 2.3rem 0 2.4rem;
  }
}
.shr-FaqItemHead span {
  display: inline-block;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemHead span {
    max-width: 74.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemHead span {
    max-width: 30rem;
  }
}

.shr-FaqItemBody {
  overflow-y: hidden;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemBody {
    padding-left: 3.2rem;
  }
}
.shr-FaqItemBlock {
  display: inline-block;
  width: 100%;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemBlock {
    max-width: 74.2rem;
    margin-bottom: 6rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemBlock {
    max-width: 29.7rem;
    margin-bottom: 5.6rem;
  }
}
.shr-FaqItemBlock .shr-FaqItemText {
  padding-top: 0;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemBlock .shr-FaqItemText {
    margin-bottom: 3.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemBlock .shr-FaqItemText {
    margin-bottom: 1.9rem;
  }
}

.shr-FaqItemSideWrap {
  display: flex;
  justify-content: center;
  gap: 4rem;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemSideWrap {
    margin-bottom: 3.2rem;
    padding-right: 3.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemSideWrap {
    flex-direction: column;
    margin-bottom: 2.4rem;
    gap: 0;
  }
}

@media screen and (min-width: 1000px) {
  .shr-FaqItem2column {
    width: 28rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItem2column:not(:first-child) {
    margin-top: 2rem;
  }
}

.shr-FaqItemText {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.75;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemText {
    font-size: 1.6rem;
    max-width: 75.5rem;
    margin-bottom: 4rem;
  }
  .shr-FaqItemText.--long {
    max-width: 80rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemText {
    font-size: 1.5rem;
    margin-bottom: 2.4rem;
  }
}

.shr-FaqItemTextLink {
  display: inline-block;
  border-bottom: 1px solid #000;
  color: #000;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemTextLink {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemTextLink {
    margin-top: 1.7rem;
  }
}

.shr-FaqItemImageWrap img {
  width: 100%;
  display: block;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemImageWrap {
    max-width: 30rem;
  }
}

.shr-FaqItemImage {
  width: 100%;
}
.shr-FaqItemImage.--marginNone {
  margin: 0;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemImage.--small {
    width: 23.7rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemImage.--small {
    width: 27.2rem;
    margin-inline: auto;
  }
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemImage {
    margin-top: 1.7rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemImage {
    margin-top: 1.3rem;
  }
}

.shr-FaqItemImageDescription {
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemImageDescription {
    font-size: 1.4rem;
    margin-top: 1.4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemImageDescription {
    font-size: 1.3rem;
    margin-top: 0.9rem;
  }
}

ul.shr-FaqItem__annotationList {
  margin-top: 1.2rem;
}

@media screen and (min-width: 1000px) {
  .shr-FaqItem__annotationItem {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItem__annotationItem {
    font-size: 1rem;
  }
}
@media screen and (min-width: 1000px) {
  .shr-FaqItem__annotationItem:not(:first-child) {
    margin-top: 0.7rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItem__annotationItem:not(:first-child) {
    margin-top: 0.6rem;
  }
}

h3.shr-FaqItemImageHead {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 1000px) {
  h3.shr-FaqItemImageHead span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 999px) {
  h3.shr-FaqItemImageHead span {
    font-size: 1.1rem;
  }
}
@media screen and (min-width: 1000px) {
  h3.shr-FaqItemImageHead {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 999px) {
  h3.shr-FaqItemImageHead {
    font-size: 1.5rem;
  }
}

.shr-FaqItemParentheses {
  font-size: 1.2rem;
  text-align: center;
}

.shr-FaqItemLink {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.5;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemLink {
    font-size: 1.5rem;
    padding-bottom: 3.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemLink {
    font-size: 1.5rem;
    display: inline-block;
    max-width: 29.7rem;
    padding-bottom: 3.2rem;
  }
}
.shr-FaqItemLink a {
  color: #000000;
  text-decoration: underline;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemLink a:hover {
    text-decoration: none;
  }
}
.shr-FaqItemLink a[target=_blank]::after {
  content: "";
  display: inline-block;
  position: static;
  background: url(../../../common/img/icon_blank-black.svg) no-repeat;
  background-size: cover;
  width: 1.5rem;
  height: 1.3rem;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemLink a[target=_blank]::after {
    width: 1.5rem;
    height: 1.3rem;
    margin-left: 0.8rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemLink a[target=_blank]::after {
    width: 1.4rem;
    height: 1.2rem;
    margin-left: 0.6rem;
  }
}

.shr-FaqItemDefinition-table {
  border: 1px solid #E8EDED;
  line-height: 2;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemDefinition-table {
    max-width: 74.2rem;
  }
}
.shr-FaqItemDefinition-table dt {
  background: #F5F7F7;
  text-align: center;
  border-bottom: 1px solid #E8EDED;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemDefinition-table dt {
    padding: 2rem 4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemDefinition-table dt {
    font-size: 1.5rem;
    padding: 2.1rem;
  }
}
.shr-FaqItemDefinition-table dd {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemDefinition-table dd {
    font-size: 1.5rem;
    padding: 2.4rem 4rem 2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemDefinition-table dd {
    font-size: 1.5rem;
    padding: 2rem 2rem 2.2rem;
  }
}

.shr-FaqItemDefinition-list {
  border-top: 1px solid #E8EDED;
  border-bottom: 1px solid #E8EDED;
  line-height: 2;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemDefinition-list {
    max-width: 74.2rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemDefinition-list {
    font-size: 1.5rem;
    margin-left: -2rem;
  }
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemDefinition-list:first-of-type {
    margin-top: 3.1rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemDefinition-list:first-of-type {
    margin-top: 2.7rem;
  }
}
.shr-FaqItemDefinition-list dt {
  background: #F5F7F7;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemDefinition-list dt {
    padding: 2rem 4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemDefinition-list dt {
    font-size: 1.5rem;
    padding: 1.7rem 0 1.6rem;
  }
}
.shr-FaqItemDefinition-list dd {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 1000px) {
  .shr-FaqItemDefinition-list dd {
    padding: 2.4rem 4rem 4rem;
  }
}
@media screen and (max-width: 999px) {
  .shr-FaqItemDefinition-list dd {
    font-size: 1.5rem;
    padding: 2rem 0 4rem;
  }
}