header,
main {
  background-color: var(--bg-gray);
}

/* title */
#title {
  position: relative;
  width: 100%;
  height: 15.5rem;
  margin-top: 6.25rem;
  background: url(../images/about/bg_title_about.jpg) center center/cover no-repeat;
  z-index: 100;
}
#title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7);
  background-image: linear-gradient(180deg, rgb(192, 199, 205) 0%, rgba(192, 199, 205, 0) 32%);
}
#title .title_wrap {
  width: 90rem;
  height: 100%;
  margin: 0 auto;
}
#title .title_wrap .title_inner {
  position: relative;
  width: 75rem;
  margin: 0 auto;
  z-index: 200;
}
#title .title_wrap .title_inner .breadcrumb {
  width: 100%;
  padding-top: 2.5rem;
}
#title .title_wrap .title_inner .breadcrumb ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
}
#title .title_wrap .title_inner .breadcrumb ul li {
  font-size: 0.75rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  color: var(--black02);
}
#title .title_wrap .title_inner .breadcrumb ul li::after {
  content: "/";
  margin-left: 0.75rem;
  margin-right: 0.75rem;
}
#title .title_wrap .title_inner .breadcrumb ul li.focus_on {
  color: var(--black00);
}
#title .title_wrap .title_inner .breadcrumb ul li:last-child::after {
  content: "";
  margin-right: 0;
}
#title .title_wrap .title_inner h1 {
  margin-top: 1rem;
  margin-left: 0;
  font-size: 3rem;
  font-family: "Cormorant Garamond", cursive;
  font-style: italic;
  line-height: normal;
  color: var(--black00);
  display: block;
}
#title .title_wrap .title_inner h1 span {
  margin-top: 0.125rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 200%;
  display: block;
}
#title .title_wrap .title_inner h1 span:before {
  content: "";
  display: inline-block;
  width: 0.375rem;
  height: 0.375rem;
  background-image: url(../images/title_dot01.svg);
  background-size: contain;
  margin-right: 0.375rem;
}
#title .title_wrap .title_inner p {
  margin-top: 1.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 200%;
  color: var(--black01);
}
#title.sub01 {
  background: url(../images/about/suggestion/bg_title_suggestion.jpg) center center/cover no-repeat;
}
#title.sub01 .title_wrap h1 span {
  width: 13.4375rem;
  padding: 0.25rem 1rem 0.25rem 0.5rem;
  font-size: 1rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  display: flex;
  align-items: center;
  background-color: rgb(176, 221, 205);
}
#title.sub01 .title_wrap h1 span:before {
  content: "";
  display: inline-block;
  width: 1.875rem;
  height: 1.875rem;
  background-image: url(../images/about/suggestion/icon_coordinate.svg);
  background-size: contain;
  margin-right: 0.0625rem;
}
#title.sub02 {
  background: url(../images/about/organization/bg_title_organization.jpg) center center/cover no-repeat;
}
#title.sub02::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgb(192, 199, 205);
  background-image: linear-gradient(180deg, rgb(192, 199, 205) 0%, rgba(192, 199, 205, 0) 32%);
  opacity: 0.6;
}
#title.sub02 .title_wrap h1 span {
  width: 15.625rem;
  padding: 0.25rem 1rem 0.25rem 0.5rem;
  font-size: 1rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  display: flex;
  align-items: center;
  background-color: rgb(155, 223, 243);
}
#title.sub02 .title_wrap h1 span:before {
  content: "";
  display: inline-block;
  width: 0.875rem;
  height: 1.375rem;
  background-image: url(../images/about/organization/icon_point.svg);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 0.5rem;
}
#title.sub03 {
  background: url(../images/about/process/bg_title_process.jpg) center center/cover no-repeat;
}
#title.sub03::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgb(192, 199, 205);
  background-image: linear-gradient(180deg, rgb(192, 199, 205) 0%, rgba(192, 199, 205, 0) 32%);
  opacity: 0.6;
}
#title.sub03 .title_wrap h1 span {
  width: 7.5rem;
  padding: 0.25rem 1rem 0.25rem 0.5rem;
  font-size: 1rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  display: flex;
  align-items: center;
  background-color: rgb(221, 176, 192);
}
#title.sub03 .title_wrap h1 span:before {
  content: "";
  display: inline-block;
  width: 1.875rem;
  height: 1.875rem;
  background-image: url(../images/about/process/icon_process.svg);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 0.0625rem;
}

@media screen and (max-width: 750px) {
  #title {
    width: 100vw;
    height: 59.7333333333vw;
    margin-top: 21.3333333333vw;
    background: url(../images/about/bg_title_about_sp.jpg) center center/cover no-repeat;
  }
  #title .title_wrap {
    width: 100vw;
  }
  #title .title_wrap .title_inner {
    width: 89.3333333333vw;
  }
  #title .title_wrap .title_inner .breadcrumb {
    padding-top: 8vw;
  }
  #title .title_wrap .title_inner .breadcrumb ul {
    justify-content: flex-start;
  }
  #title .title_wrap .title_inner .breadcrumb ul li {
    font-size: 3.2vw;
  }
  #title .title_wrap .title_inner .breadcrumb ul li::after {
    margin-left: 3.2vw;
    margin-right: 3.2vw;
  }
  #title .title_wrap .title_inner h1 {
    margin-top: 11.2vw;
    font-size: 7.4666666667vw;
  }
  #title .title_wrap .title_inner h1 span {
    margin-top: 0.5333333333vw;
    font-size: 3.7333333333vw;
  }
  #title .title_wrap .title_inner h1 span:before {
    width: 1.6vw;
    height: 1.6vw;
    margin-right: 1.6vw;
  }
  #title.sub01 {
    background: url(../images/about/suggestion/bg_title_suggestion.jpg) center center/cover no-repeat;
  }
  #title.sub01 .title_wrap h1 span {
    width: 45.3333333333vw;
    padding: 1.0666666667vw 4.2666666667vw 1.0666666667vw 2.1333333333vw;
    font-size: 3.2vw;
  }
  #title.sub01 .title_wrap h1 span:before {
    width: 6.4vw;
    height: 6.4vw;
    margin-right: 0.2666666667vw;
  }
  #title.sub02 {
    background: url(../images/about/organization/bg_title_organization_sp.jpg) center center/cover no-repeat;
  }
  #title.sub02 .title_wrap h1 span {
    width: 52vw;
    padding: 1.0666666667vw 4.2666666667vw 1.0666666667vw 2.1333333333vw;
    font-size: 3.2vw;
  }
  #title.sub02 .title_wrap h1 span:before {
    width: 3.7333333333vw;
    height: 5.8666666667vw;
    margin-right: 2.1333333333vw;
  }
  #title.sub03 {
    background: url(../images/about/process/bg_title_process_sp.jpg) center center/cover no-repeat;
  }
  #title.sub03 .title_wrap h1 span {
    width: 32vw;
    padding: 1.0666666667vw 2.1333333333vw 1.0666666667vw 2.1333333333vw;
    font-size: 3.2vw;
  }
  #title.sub03 .title_wrap h1 span:before {
    width: 6.4vw;
    height: 6.4vw;
    margin-right: 0.2666666667vw;
  }
}
/* fv */
#fv {
  width: 100%;
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: var(--bg-gray02);
}
#fv .wrap01 {
  width: 75rem;
  margin: 0 auto;
  text-align: center;
}
#fv .wrap01 h2 {
  font-size: 1.5rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  color: var(--black01);
}
#fv .wrap01 > p {
  width: 36.875rem;
  margin: 1.5rem auto 0;
  font-size: 0.875rem;
  font-weight: 400;
  font-family: "Noto Sans JP", cursive;
  line-height: 180%;
  text-align: left;
  color: var(--black01);
}
#fv .wrap01 .fv_wrap {
  width: 62.25rem;
  margin: 5rem auto 0;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: top;
}
#fv .wrap01 .fv_wrap .fv_box_l {
  width: 22.875rem;
}
#fv .wrap01 .fv_wrap .fv_box_r {
  width: 36.875rem;
}
#fv .wrap01 .fv_wrap .fv_box_l,
#fv .wrap01 .fv_wrap .fv_box_r {
  text-align: left;
  color: var(--black00);
}
#fv .wrap01 .fv_wrap .fv_box_l p,
#fv .wrap01 .fv_wrap .fv_box_r p {
  margin-bottom: 1rem;
  font-size: 1.5rem;
  font-family: "Cormorant Garamond", cursive;
  font-style: italic;
  line-height: 1;
  display: inline-flex;
  align-items: center;
}
#fv .wrap01 .fv_wrap .fv_box_l p:before,
#fv .wrap01 .fv_wrap .fv_box_r p:before {
  content: "";
  display: inline-block;
  width: 0.375rem;
  height: 0.375rem;
  background-image: url(../images/title_dot01.svg);
  background-size: contain;
  margin-right: 0.375rem;
}
#fv.sub01, #fv.sub02 {
  background-color: var(--bg-gray);
}

@media screen and (max-width: 750px) {
  #fv {
    width: 100vw;
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
  #fv .wrap01 {
    width: 89.3333333333vw;
    margin: 0 auto;
    text-align: center;
  }
  #fv .wrap01 h2 {
    font-size: 4.8vw;
  }
  #fv .wrap01 > p {
    width: 100%;
    margin: 6.4vw auto 0;
    font-size: 3.7333333333vw;
  }
  #fv .wrap01 .fv_wrap {
    width: 100%;
    margin: 10.6666666667vw auto 0;
    display: flex;
    flex-direction: column;
    align-items: top;
  }
  #fv .wrap01 .fv_wrap .fv_box_l {
    width: 66.6666666667vw;
    margin: 0 auto;
  }
  #fv .wrap01 .fv_wrap .fv_box_r {
    width: 89.3333333333vw;
    margin-top: 8vw;
  }
  #fv .wrap01 .fv_wrap .fv_box_l,
  #fv .wrap01 .fv_wrap .fv_box_r {
    text-align: center;
  }
  #fv .wrap01 .fv_wrap .fv_box_l p,
  #fv .wrap01 .fv_wrap .fv_box_r p {
    margin-bottom: 3.2vw;
    font-size: 4.8vw;
  }
  #fv .wrap01 .fv_wrap .fv_box_l p:before,
  #fv .wrap01 .fv_wrap .fv_box_r p:before {
    margin-right: 2.1333333333vw;
  }
}
/* brands */
#brands {
  position: relative;
  width: 100%;
  padding-top: 5rem;
  padding-bottom: 5rem;
}
#brands .brands_box {
  position: relative;
  width: 90rem;
  height: 36.875rem;
  margin: 0 auto;
  z-index: 100;
}
#brands .brands_box .brands_img_wrap {
  width: 45rem;
  height: auto;
  padding-bottom: 2rem;
  overflow-x: hidden;
  overflow-y: visible;
  z-index: 500;
}
#brands .brands_box .brands_img_wrap .swiper-horizontal > .swiper-pagination-bullets,
#brands .brands_box .brands_img_wrap .swiper-pagination-bullets.swiper-pagination-horizontal,
#brands .brands_box .brands_img_wrap .swiper-pagination-custom,
#brands .brands_box .brands_img_wrap .swiper-pagination-fraction {
  bottom: 0;
  /*bottom: calc(-1rem * (24 / 16));*/
  z-index: 520;
}
#brands .brands_box .brands_img_wrap .swiper-pagination-bullet {
  width: 1.5rem;
  height: 0.25rem;
  background-color: rgba(165, 155, 99, 0.6);
  border-radius: 0;
}
#brands .brands_box .brands_img_wrap .swiper-pagination-bullet-active {
  background-color: rgb(165, 155, 99);
}
#brands .brands_box .brands_txt {
  width: 52rem;
  padding-bottom: 5rem;
  background-color: var(--bg-gray03);
  z-index: 300;
}
#brands .brands_box .brands_txt h3 {
  width: 30.5rem;
  font-size: 1.25rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  color: var(--black01);
  text-align: left;
}
#brands .brands_box .brands_txt p {
  width: 30.5rem;
  margin-top: 1.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-family: "Noto Sans JP", cursive;
  line-height: 180%;
  text-align: left;
  color: var(--black01);
}
#brands .brands_box .brands_txt #bgtxt01 {
  position: absolute;
  top: 25.3125rem;
  right: 7.5rem;
  z-index: 400;
}
#brands .brands_box .brands_txt #bgtxt02 {
  position: absolute;
  top: 25.3125rem;
  left: 7.5rem;
  z-index: 410;
}
#brands .brands_box .brands_txt #bgtxt03 {
  position: absolute;
  top: 25.3125rem;
  right: 7.5rem;
  z-index: 420;
}
#brands .brands_box.pic_l .brands_img_wrap {
  position: absolute;
  top: 2.5rem;
  left: 0;
}
#brands .brands_box.pic_l .brands_txt {
  position: absolute;
  top: 0;
  right: 0;
}
#brands .brands_box.pic_l .brands_txt h3 {
  margin: 5rem 7.5rem 0 14rem;
}
#brands .brands_box.pic_l .brands_txt p {
  margin: 1.5rem 7.5rem 0 14rem;
}
#brands .brands_box.pic_r .brands_img_wrap {
  position: absolute;
  top: 2.5rem;
  right: 0;
}
#brands .brands_box.pic_r .brands_txt {
  position: absolute;
  top: 0;
  left: 0;
}
#brands .brands_box.pic_r .brands_txt h3 {
  margin: 5rem 14rem 0 7.5rem;
}
#brands .brands_box.pic_r .brands_txt p {
  margin: 1.5rem 14rem 0 7.5rem;
}
#brands .tag_box {
  width: 75rem;
  margin: 2.5rem auto 0;
  background-color: var(--bg-gray03);
}
#brands .tag_box h2 {
  width: 70rem;
  margin: 2.5rem 2.5rem 0 2.5rem;
  padding-bottom: 1rem;
  border-bottom: 0.0625rem var(--gray-line) solid;
  font-size: 2.5rem;
  font-family: "Cormorant Garamond", cursive;
  font-style: italic;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  color: var(--black00);
}
#brands .tag_box h2 span {
  margin-left: 1.25rem;
  font-size: 0.75rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 1;
}
#brands .tag_box h2 span:before {
  content: "";
  display: inline-block;
  width: 0.375rem;
  height: 0.375rem;
  background-image: url(../images/title_dot01.svg);
  background-size: contain;
  margin-right: 0.375rem;
}
#brands .tag_box p {
  margin: 1.5rem 2.5rem 0 2.5rem;
  padding-bottom: 2.5rem;
}
#brands .tag_box p span {
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
  padding: 0.125rem 0.5rem;
  background-color: var(--bg-tag);
  border-radius: 0.25rem;
  font-size: 0.75rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 200%;
  color: var(--white00);
  white-space: nowrap;
}

@media screen and (max-width: 750px) {
  #brands {
    width: 100vw;
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
  #brands .brands_box {
    width: 100vw;
    min-height: 165.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  #brands .brands_box .brands_img_wrap {
    width: 94.6666666667vw;
    height: auto;
    padding-bottom: 0;
  }
  #brands .brands_box .brands_img_wrap .swiper-horizontal > .swiper-pagination-bullets,
  #brands .brands_box .brands_img_wrap .swiper-pagination-bullets.swiper-pagination-horizontal,
  #brands .brands_box .brands_img_wrap .swiper-pagination-custom,
  #brands .brands_box .brands_img_wrap .swiper-pagination-fraction {
    display: none;
  }
  #brands .brands_box .brands_txt {
    width: 94.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
  #brands .brands_box .brands_txt h3 {
    /*width: calc(100vw * (315 / 375));*/
    font-size: 4.8vw;
    letter-spacing: -0.096vw;
  }
  #brands .brands_box .brands_txt p {
    width: 84vw;
    margin-top: 6.4vw;
    font-size: 3.7333333333vw;
  }
  #brands .brands_box .brands_txt #bgtxt01 {
    top: 116.2666666667vw;
    right: 5.3333333333vw;
    width: 33.3333333333vw;
  }
  #brands .brands_box .brands_txt #bgtxt02 {
    top: 110.6666666667vw;
    left: 9.3333333333vw;
    width: 80vw;
  }
  #brands .brands_box .brands_txt #bgtxt03 {
    top: 110.6666666667vw;
    right: 5.3333333333vw;
    width: 47.4666666667vw;
  }
  #brands .brands_box.pic_l .brands_img_wrap {
    top: 0;
    left: 0;
  }
  #brands .brands_box.pic_l .brands_txt {
    top: 31.7333333333vw;
    right: 0;
  }
  #brands .brands_box.pic_l .brands_txt h3 {
    margin: 42.4vw 5.3333333333vw 0 5.3333333333vw;
  }
  #brands .brands_box.pic_l .brands_txt p {
    margin: 6.4vw 5.3333333333vw 0 5.3333333333vw;
  }
  #brands .brands_box.pic_l:nth-of-type(3) {
    margin-bottom: 0;
  }
  #brands .brands_box.pic_r .brands_img_wrap {
    top: 0;
    left: 0;
  }
  #brands .brands_box.pic_r .brands_txt {
    top: 31.7333333333vw;
    left: 5.3333333333vw;
  }
  #brands .brands_box.pic_r .brands_txt h3 {
    margin: 42.4vw 5.3333333333vw 0 5.3333333333vw;
  }
  #brands .brands_box.pic_r .brands_txt p {
    margin: 6.4vw 5.3333333333vw 0 5.3333333333vw;
  }
  #brands .tag_box {
    width: 89.3333333333vw;
    margin: 5.3333333333vw auto 0;
  }
  #brands .tag_box h2 {
    width: 78.6666666667vw;
    margin: 10.6666666667vw 5.3333333333vw 0 5.3333333333vw;
    padding-bottom: 6.4vw;
    border-bottom: 0.2666666667vw var(--gray-line) solid;
    font-size: 9.0666666667vw;
  }
  #brands .tag_box h2 span {
    margin-left: 5.3333333333vw;
    font-size: 3.2vw;
  }
  #brands .tag_box h2 span:before {
    width: 1.6vw;
    height: 1.6vw;
    margin-right: 1.6vw;
  }
  #brands .tag_box p {
    margin: 6.4vw 5.3333333333vw 0 5.3333333333vw;
    padding-bottom: 10.6666666667vw;
  }
  #brands .tag_box p span {
    margin-right: 2.1333333333vw;
    margin-bottom: 2.1333333333vw;
    padding: 0.5333333333vw 2.1333333333vw;
    border-radius: 1.0666666667vw;
    font-size: 3.2vw;
  }
}
/* flow */
#flow {
  width: 100%;
  padding-bottom: 5rem;
  color: var(--black00);
  background-color: rgb(220, 221, 217);
}
#flow h2 {
  margin-top: 5rem;
  margin-left: 7.5rem;
  font-size: 1.5rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  display: inline-flex;
  align-items: center;
}
#flow h2:before {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-image: url(../images/about/dot_about.svg);
  background-size: contain;
  margin-top: -1rem;
  margin-right: -1rem;
}
#flow ol {
  width: 75rem;
  margin: 2.5rem auto;
  padding: 0;
  display: flex;
  justify-content: space-between;
}
#flow ol li {
  position: relative;
  width: 287.25rem;
  text-align: center;
}
#flow ol li em {
  font-size: 1.75rem;
  font-family: "Cormorant Garamond", cursive;
  font-weight: 700;
  font-style: italic;
  color: var(--black00);
}
#flow ol li img {
  margin-top: 0.5rem;
  margin-left: 50%;
  transform: translateX(-50%);
}
#flow ol li h3 {
  margin-top: 1.125rem;
  font-size: 1rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  white-space: nowrap;
}
#flow ol li p {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 200%;
}
#flow ol li::after {
  content: "";
  position: absolute;
  top: 3.5625rem;
  left: 17.953125rem;
  display: block;
  width: 0.5625rem;
  height: 1.0625rem;
  background-image: url(../images/arrow_right.svg);
  background-size: contain;
}
#flow ol li:last-child::after {
  display: none;
}
#flow .flow_banner {
  width: 75rem;
  margin: 4.25rem auto 0;
}
#flow .flow_banner ul {
  width: 49.625rem;
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#flow .flow_banner ul li {
  width: 24.1875rem;
  height: 11.4375rem;
  text-align: center;
}
#flow .flow_banner ul li a {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  background-color: var(--white00);
}
#flow .flow_banner ul li a h4 {
  padding-top: 2.1875rem;
  font-size: 1rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  white-space: nowrap;
}
#flow .flow_banner ul li a p {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 200%;
}
#flow .flow_banner ul li a .telnum {
  display: inline-flex;
  align-items: center;
  margin-top: 1.5rem;
  font-size: 1.25rem;
  font-weight: 500;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
}
#flow .flow_banner ul li a .telnum::before {
  content: "";
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: 0.375rem;
  background-image: url(../images/tel_icon.svg);
  background-size: contain;
}
#flow .flow_banner ul li a .icon_mail {
  position: absolute;
  top: 7.3125rem;
  left: 5.875rem;
}
#flow .flow_banner ul li a .icon_mail::before {
  content: "";
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: 0.6875rem;
  background-image: url(../images/about/icon_mail.svg);
  background-size: contain;
}
#flow .flow_banner ul li a .flow_link {
  margin-top: 1.5rem;
  margin-left: 50%;
  transform: translateX(-50%);
  height: 2rem;
  display: inline-block;
  align-items: center;
  font-size: 1rem;
  font-family: "Cormorant Garamond", cursive;
  font-style: italic;
  font-weight: 700;
  text-align: left;
}
#flow .flow_banner ul li.col1 {
  width: 49.625rem;
  height: 7.5rem;
  margin-bottom: 1.25rem;
}
#flow .flow_banner ul li.col1 a {
  position: relative;
}
#flow .flow_banner ul li.col1 a h4 {
  position: absolute;
  top: 2.75rem;
  left: 1.875rem;
  padding: 0;
}
#flow .flow_banner ul li.col1 a h4::before {
  content: "";
  display: inline-block;
  width: 2.5rem;
  height: 2.5rem;
  top: 0.625rem;
  margin-right: 1.25rem;
  background-image: url(../images/about/icon_help.svg);
  background-size: contain;
  vertical-align: middle;
}
#flow .flow_banner ul li.col1 a .btn_toNext {
  position: absolute;
  top: 2.6875rem;
  right: 1.875rem;
  font-size: 0.875rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  text-align: left;
  white-space: nowrap;
}
#flow.sub01 .flow_banner, #flow.sub02 .flow_banner, #flow.sub03 .flow_banner {
  margin: 0 auto;
  padding-top: 5rem;
}

@media screen and (max-width: 750px) {
  #flow {
    width: 100vw;
    padding-bottom: 10.6666666667vw;
  }
  #flow h2 {
    width: 89.3333333333vw;
    margin-top: 10.6666666667vw;
    margin-left: 5.3333333333vw;
    font-size: 5.3333333333vw;
    display: inline-block;
  }
  #flow h2:before {
    width: 6.4vw;
    height: 6.4vw;
    margin-top: -3.2vw;
    margin-right: -3.2vw;
  }
  #flow h2 #text {
    width: 89.3333333333vw;
  }
  #flow ol {
    width: 100vw;
    margin: 10.6666666667vw auto 0;
    flex-direction: column;
  }
  #flow ol li {
    width: 89.3333333333vw;
    height: 36.2666666667vw;
    margin-left: 5.3333333333vw;
  }
  #flow ol li em {
    position: absolute;
    top: 1.6vw;
    left: 5.0666666667vw;
    font-size: 7.4666666667vw;
  }
  #flow ol li img {
    position: absolute;
    top: 10.6666666667vw;
    left: 0;
    width: 16vw;
    margin: 0;
    transform: translateX(0);
  }
  #flow ol li h3 {
    position: absolute;
    top: 0;
    left: 20vw;
    font-size: 4.2666666667vw;
  }
  #flow ol li p {
    position: absolute;
    top: 11.2vw;
    left: 20vw;
    margin-top: 0;
    font-size: 3.7333333333vw;
    text-align: left;
  }
  #flow ol li::after {
    bottom: 25.6vw;
    left: 31.7333333333vw;
    width: 4.5333333333vw;
    height: 2.4vw;
  }
  #flow .flow_banner {
    width: 100vw;
    margin: 10.6666666667vw auto 0;
  }
  #flow .flow_banner ul {
    width: 89.3333333333vw;
    margin: 0 0 0 5.3333333333vw;
    flex-direction: column;
  }
  #flow .flow_banner ul li {
    width: 89.3333333333vw;
    height: 46.1333333333vw;
    margin-bottom: 2.6666666667vw;
  }
  #flow .flow_banner ul li a h4 {
    padding-top: 5.3333333333vw;
    font-size: 4.2666666667vw;
  }
  #flow .flow_banner ul li a p {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
  }
  #flow .flow_banner ul li a .telnum {
    margin-top: 3.7333333333vw;
    font-size: 5.3333333333vw;
  }
  #flow .flow_banner ul li a .telnum::before {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    margin-right: 1.6vw;
  }
  #flow .flow_banner ul li a .icon_mail {
    top: 30.1333333333vw;
    left: 18.4vw;
  }
  #flow .flow_banner ul li a .icon_mail::before {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    margin-right: 2.1333333333vw;
  }
  #flow .flow_banner ul li a .flow_link {
    margin-top: 5.3333333333vw;
    height: 9.3333333333vw;
    font-size: 4.2666666667vw;
  }
  #flow .flow_banner ul li.col1 {
    width: 89.3333333333vw;
    height: 57.3333333333vw;
    margin-bottom: 2.6666666667vw;
  }
  #flow .flow_banner ul li.col1 a {
    position: relative;
  }
  #flow .flow_banner ul li.col1 a h4 {
    width: 89.3333333333vw;
    top: 20.2666666667vw;
    left: 5.3333333333vw;
    text-align: center;
    line-height: 200%;
  }
  #flow .flow_banner ul li.col1 a h4::before {
    position: absolute;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    top: -14.9333333333vw;
    left: 39.2vw;
  }
  #flow .flow_banner ul li.col1 a .btn_toNext {
    position: absolute;
    top: 42.6666666667vw;
    right: 21.8666666667vw;
    font-size: 3.7333333333vw;
  }
  #flow .flow_banner ul li:last-child {
    height: 49.3333333333vw;
  }
  #flow.sub01 .flow_banner {
    padding-top: 13.3333333333vw;
  }
}
/* more */
#more {
  width: 100%;
  padding-bottom: 5rem;
}
#more h2 {
  margin-top: 5rem;
  margin-left: 7.5rem;
  font-size: 1.5rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  color: var(--black01);
  display: inline-flex;
  align-items: center;
}
#more h2:before {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-image: url(../images/about/dot_about.svg);
  background-size: contain;
  margin-top: -1rem;
  margin-right: -1rem;
}
#more .more_banner {
  width: 75rem;
  margin: 2.5rem auto 0;
  display: flex;
  justify-content: space-between;
}
#more .more_banner .more_box {
  width: 24.1875rem;
}
#more .more_banner .more_box p {
  margin-top: 1rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 180%;
  color: var(--black01);
}

@media screen and (max-width: 750px) {
  #more {
    width: 100vw;
    padding-bottom: 10.6666666667vw;
  }
  #more h2 {
    margin-top: 10.6666666667vw;
    margin-left: 5.3333333333vw;
    font-size: 5.3333333333vw;
  }
  #more h2:before {
    width: 6.4vw;
    height: 0.064rem;
    background-image: url(../images/about/dot_about.svg);
    background-size: contain;
    margin-top: -3.2vw;
    margin-right: -3.2vw;
  }
  #more .more_banner {
    width: 89.3333333333vw;
    margin: 5.3333333333vw auto 0;
    flex-direction: column;
  }
  #more .more_banner .more_box {
    width: 89.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  #more .more_banner .more_box p {
    margin-top: 4.2666666667vw;
    font-size: 3.7333333333vw;
  }
  #more .more_banner .more_box:last-child {
    margin-bottom: 0;
  }
}
/* story */
#story {
  width: 100%;
  padding-bottom: 3rem;
  background-color: rgb(191, 201, 225);
}
#story .wrap01 {
  position: relative;
  background-image: url(../images/about/bg_title_media.svg);
  background-size: 11.625rem;
  background-position: 7.75rem 3rem;
  background-repeat: no-repeat;
}
#story .wrap01 h2 {
  margin: 8.3125rem 0 0 7.5rem;
  font-size: 2.5rem;
  font-family: "Cormorant Garamond", cursive;
  font-style: italic;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  color: var(--black00);
}
#story .wrap01 h2 span {
  margin-left: 1.25rem;
  font-size: 0.75rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Noto Sans JP", cursive;
  line-height: 1;
}
#story .wrap01 h2 span:before {
  content: "";
  display: inline-block;
  width: 0.375rem;
  height: 0.375rem;
  background-image: url(../images/title_dot01.svg);
  background-size: contain;
  margin-right: 0.375rem;
}
#story .wrap01 .story_wrap {
  width: 75rem;
  margin: 2.5rem auto 0;
  overflow-x: hidden;
}
#story .wrap01 .story_wrap .story_box {
  width: 24.1875rem;
  padding: 0 0.625rem;
  color: var(--black01);
}
#story .wrap01 .story_wrap .story_box img {
  width: 100%;
}
#story .wrap01 .story_wrap .story_box h3 {
  margin-top: 0.25rem;
  font-size: 1rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
}
#story .wrap01 .story_wrap .story_box p {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 200%;
}
#story .wrap01 .story_wrap .story_box p.story_date {
  font-weight: 500;
}
#story .wrap01 .story_wrap .story_box p.story_date::before {
  content: "";
  display: inline-block;
  width: 0.375rem;
  height: 0.375rem;
  margin-right: 0.375rem;
  background-image: url(../images/index/media_dot01.svg);
  background-size: contain;
}
#story .wrap01 .story_wrap .swiper-button-prev,
#story .wrap01 .story_wrap .swiper-button-next {
  width: 1.3125rem;
  height: 2.5rem;
}
#story .wrap01 .story_wrap .swiper-button-prev {
  top: 21.3125rem;
  left: 5rem;
}
#story .wrap01 .story_wrap .swiper-button-next {
  top: 21.3125rem;
  right: 5rem;
}
#story .wrap01 .story_wrap .swiper-button-prev::after,
#story .wrap01 .story_wrap .swiper-button-next::after {
  content: "";
  width: 1.3125rem;
  height: 2.5rem;
  margin: 0;
  background-repeat: no-repeat;
  background-size: contain;
}
#story .wrap01 .story_wrap .swiper-button-prev::after {
  background-image: url(../images/about/arrow_left.svg);
}
#story .wrap01 .story_wrap .swiper-button-next::after {
  background-image: url(../images/about/arrow_right.svg);
}
#story .wrap01 .story_wrap .swiper-slide img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 750px) {
  #story {
    width: 100vw;
    padding-bottom: 10.6666666667vw;
  }
  #story .wrap01 {
    background-size: 49.6vw;
    background-position: 5.3333333333vw 8vw;
  }
  #story .wrap01 h2 {
    margin: 34.6666666667vw 0 0 5.3333333333vw;
    font-size: 9.0666666667vw;
  }
  #story .wrap01 h2 span {
    margin-left: 4.2666666667vw;
    font-size: 3.2vw;
  }
  #story .wrap01 h2 span:before {
    width: 1.6vw;
    height: 1.6vw;
    margin-right: 1.6vw;
  }
  #story .wrap01 .story_wrap {
    width: 94.6666666667vw;
    margin: 10.6666666667vw 0 0 5.3333333333vw;
  }
  #story .wrap01 .story_wrap .story_box {
    width: 76vw;
    padding: 0 2.6666666667vw;
  }
  #story .wrap01 .story_wrap .story_box h3 {
    margin-top: 3.2vw;
    font-size: 4.2666666667vw;
  }
  #story .wrap01 .story_wrap .story_box p {
    margin-top: 3.2vw;
    font-size: 3.2vw;
  }
  #story .wrap01 .story_wrap .story_box p.story_date::before {
    width: 1.6vw;
    height: 1.6vw;
    margin-right: 1.6vw;
  }
  #story .wrap01 .story_wrap .swiper-button-prev,
  #story .wrap01 .story_wrap .swiper-button-next {
    display: none;
  }
}
/* plan */
#plan {
  position: relative;
  width: 100%;
  padding-top: 0;
  padding-bottom: 2.5rem;
}
#plan .plan_box {
  position: relative;
  width: 90rem;
  height: 35.125rem;
  margin: 0 auto;
  z-index: 100;
}
#plan .plan_box .img_plan {
  width: 45rem;
  height: auto;
  padding-bottom: 2rem;
  overflow-x: hidden;
  overflow-y: visible;
  z-index: 500;
}
#plan .plan_box .plan_txt {
  width: 52rem;
  padding-bottom: 5rem;
  background-color: var(--bg-green);
  z-index: 300;
}
#plan .plan_box .plan_txt h2 {
  margin-top: 5rem;
  margin-left: 8.5rem;
  font-size: 1.5rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  color: var(--black01);
  display: inline-flex;
  align-items: center;
}
#plan .plan_box .plan_txt h2:before {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-image: url(../images/about/dot_about02.svg);
  background-size: contain;
  margin-top: -1rem;
  margin-right: -1rem;
}
#plan .plan_box .plan_txt h3 {
  width: 30.5rem;
  font-size: 1.25rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  color: var(--black01);
  text-align: left;
}
#plan .plan_box .plan_txt p {
  width: 30.5rem;
  margin-top: 1.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-family: "Noto Sans JP", cursive;
  line-height: 180%;
  text-align: left;
  color: var(--black01);
}
#plan .plan_box.pic_l .img_plan {
  position: absolute;
  top: 2.5rem;
  left: 0;
}
#plan .plan_box.pic_l .plan_txt {
  position: absolute;
  top: 0;
  right: 0;
}
#plan .plan_box.pic_l .plan_txt h3 {
  margin: 5rem 7.5rem 0 14rem;
}
#plan .plan_box.pic_l .plan_txt p {
  margin: 1.5rem 7.5rem 0 14rem;
}
#plan .plan_box.pic_r .img_plan {
  position: absolute;
  top: 2.5rem;
  right: 0;
}
#plan .plan_box.pic_r .plan_txt {
  position: absolute;
  top: 0;
  left: 0;
}
#plan .plan_box.pic_r .plan_txt h3 {
  margin: 5rem 14rem 0 7.5rem;
}
#plan .plan_box.pic_r .plan_txt p {
  margin: 1.5rem 14rem 0 7.5rem;
}
#plan.sub02 .plan_box .plan_txt {
  background-color: var(--bg-blue);
}
#plan.sub02 .plan_box.pic_r h3 {
  margin: 2.5rem 14rem 0 7.5rem;
}

@media screen and (max-width: 750px) {
  #plan {
    width: 100vw;
    padding-top: 10.6666666667vw;
    padding-bottom: 0;
  }
  #plan .plan_box {
    width: 100vw;
    min-height: 144vw;
    margin-bottom: 10.6666666667vw;
  }
  #plan .plan_box .img_plan {
    width: 94.6666666667vw;
    height: auto;
    padding-bottom: 0;
  }
  #plan .plan_box .plan_txt {
    width: 94.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
  #plan .plan_box .plan_txt h2 {
    margin-top: 42.4vw;
    margin-left: 5.3333333333vw;
    font-size: 5.3333333333vw;
  }
  #plan .plan_box .plan_txt h2:before {
    width: 6.4vw;
    height: 6.4vw;
  }
  #plan .plan_box .plan_txt h3 {
    width: 100vw;
    font-size: 4.8vw;
    letter-spacing: -0.36px;
  }
  #plan .plan_box .plan_txt p {
    width: 84vw;
    margin-top: 6.4vw;
    font-size: 3.7333333333vw;
  }
  #plan .plan_box.pic_l .img_plan {
    top: 0;
    left: 0;
  }
  #plan .plan_box.pic_l .plan_txt {
    top: 31.7333333333vw;
    right: 0;
  }
  #plan .plan_box.pic_l .plan_txt h3 {
    width: 84vw;
    margin: 42.4vw 0 0 5.3333333333vw;
    padding-right: 2.6666666667vw;
  }
  #plan .plan_box.pic_l .plan_txt p {
    margin: 6.4vw 0 0 5.3333333333vw;
    padding-right: 2.6666666667vw;
  }
  #plan .plan_box.pic_r .img_plan {
    top: 0;
    left: 0;
  }
  #plan .plan_box.pic_r .plan_txt {
    top: 31.7333333333vw;
    left: 5.3333333333vw;
  }
  #plan .plan_box.pic_r .plan_txt h3 {
    width: 84vw;
    margin: 42.4vw 0 0 5.3333333333vw;
    padding-right: 2.6666666667vw;
  }
  #plan .plan_box.pic_r .plan_txt p {
    margin: 6.4vw 0 0 5.3333333333vw;
    padding-right: 2.6666666667vw;
  }
  #plan.sub02 {
    padding-bottom: 10.6666666667vw;
  }
  #plan.sub02 .plan_box {
    min-height: 159.2vw;
  }
  #plan.sub02 .plan_box .plan_txt {
    background-color: var(--bg-blue);
  }
  #plan.sub02 .plan_box.pic_r h3 {
    margin: 6.4vw 0 0 5.3333333333vw;
  }
}
/* process */
#process {
  position: relative;
  width: 100%;
  padding-top: 4.125rem;
  padding-bottom: 5rem;
  background-color: var(--bg-gray);
}
#process .wrap01 {
  background-image: url(../images/about/process/img_line01.png);
  background-size: 0.0625rem;
  background-position: 13.875rem 0.1875rem;
  background-repeat: no-repeat;
}
#process .wrap01 .process_box {
  padding-bottom: 2.5rem;
  display: flex;
}
#process .wrap01 .process_box h3 {
  position: relative;
  min-width: 8.5rem;
  margin-left: 12.875rem;
  font-size: 1.25rem;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  color: var(--black01);
  display: flex;
  align-items: flex-start;
}
#process .wrap01 .process_box h3:before {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-image: url(../images/about/dot_about03.svg);
  background-size: contain;
  margin-top: 0;
  margin-right: -1rem;
}
#process .wrap01 .process_box h3 span {
  position: absolute;
  top: 2.75rem;
  left: 1.3125rem;
  font-size: 1rem;
  font-family: "Cormorant Garamond";
  font-style: italic;
  font-weight: 700;
  line-height: 120%;
}
#process .wrap01 .process_box .img_process {
  width: 11.3125rem;
  height: 11.3125rem;
  margin-left: 5.3125rem;
}
#process .wrap01 .process_box .img_process img {
  width: 100%;
}
#process .wrap01 .process_box .process_txt {
  width: 30.5rem;
  margin-left: 1.25rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#process .wrap01 .process_box .process_txt p {
  width: 30.5rem;
  font-size: 0.875rem;
  font-weight: 400;
  font-family: "Noto Sans JP", cursive;
  line-height: 180%;
  text-align: left;
  color: var(--black01);
}
#process .wrap01 .process_box .process_txt div {
  margin-top: 1.25rem;
  display: inline-flex;
  flex-direction: row;
  align-items: flex-start;
}
#process .wrap01 .process_box .process_txt div a {
  display: inline-block;
  padding: 0.375rem 1.25rem;
  border: var(--black01) 0.0625rem solid;
  font-family: "Shippori Mincho", cursive;
  font-weight: 700;
  line-height: 200%;
  color: var(--black01);
  display: inline-flex;
  align-items: center;
}
#process .wrap01 .process_box .process_txt div a:after {
  content: "";
  display: inline-block;
  width: 0.5625rem;
  height: 1.0625rem;
  background-image: url(../images/arrow_right.svg);
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: 0.5rem;
}
#process .wrap01 .process_box .process_txt div a:nth-of-type(2) {
  margin-left: 1.25rem;
}

@media screen and (max-width: 750px) {
  #process {
    width: 100vw;
    padding-top: 12vw;
    padding-bottom: 0;
  }
  #process .wrap01 {
    background-image: url(../images/about/process/img_line01_sp.png);
    background-size: 0.2666666667vw;
    background-position: 5.3333333333vw 0.2666666667vw;
  }
  #process .wrap01 .process_box {
    position: relative;
    padding-bottom: 10.6666666667vw;
    display: flex;
    flex-direction: column;
  }
  #process .wrap01 .process_box h3 {
    position: relative;
    min-width: 37.3333333333vw;
    margin-left: 1.3333333333vw;
    font-size: 5.3333333333vw;
  }
  #process .wrap01 .process_box h3:before {
    width: 8.5333333333vw;
    height: 8.5333333333vw;
    margin-right: -4.2666666667vw;
  }
  #process .wrap01 .process_box h3 span {
    position: absolute;
    top: 11.7333333333vw;
    left: 5.6vw;
    font-size: 4.2666666667vw;
  }
  #process .wrap01 .process_box .img_process {
    position: absolute;
    width: 26.6666666667vw;
    height: 26.6666666667vw;
    top: 0;
    right: 6.6666666667vw;
  }
  #process .wrap01 .process_box .process_txt {
    width: 84vw;
    margin-top: 18.1333333333vw;
    margin-left: 10.6666666667vw;
    justify-content: flex-start;
  }
  #process .wrap01 .process_box .process_txt p {
    width: 84vw;
    font-size: 3.7333333333vw;
  }
  #process .wrap01 .process_box .process_txt div {
    margin-top: 20;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
  }
  #process .wrap01 .process_box .process_txt div a {
    padding: 1.6vw 5.3333333333vw;
    border: var(--black01) 0.2666666667vw solid;
  }
  #process .wrap01 .process_box .process_txt div a:after {
    width: 2.4vw;
    height: 4.5333333333vw;
    margin-left: 2.1333333333vw;
  }
  #process .wrap01 .process_box .process_txt div a:nth-of-type(2) {
    margin-left: 0;
    margin-top: 4.2666666667vw;
  }
}/*# sourceMappingURL=about.css.map */