@charset "utf-8";
/*--------------------------------------
  hero
--------------------------------------*/
.s-intro {
  display: flex;
  padding-top: 2rem;
}
.s-intro__contents {
  flex: 1;
}
.s-intro__contents .title .catch {
  display: block;
  text-align: center;
  margin-bottom: 2rem;
}
.s-intro__contents .title .catch .text {
  display: inline-block;
  position: relative;
  background: #E37D7D;
  padding: 1rem 3rem;
  border-radius: 99rem;
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
}
.s-intro__contents .title .catch .text .renewal {
  position: absolute;
  left: -3rem;
  top: -2rem;
  transform: rotate(-6deg);
}
.s-intro__contents .title .main_text {
  display: block;
  text-align: center;
  font-size: 4.4rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
.s-intro__contents .wantto {
  text-align: center;
  margin-bottom: 3rem;
}
.s-intro__contents .app_link {
  display: flex;
  justify-content: center;
  gap: 2rem;
}
.s-intro__contents .app_link li {
  position: relative;
}
.s-intro__contents .app_link li a:hover {
  opacity: 0.7;
}
.s-intro__contents .app_link li .remarks {
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.2rem;
  font-weight: bold;
  white-space: nowrap;
}
.s-intro__image {
  width: 300px;
}
.s-intro__image img {
  transform: translateX(-88px);
}

/*--------------------------------------
  flow
--------------------------------------*/
.s-flow {
  background: #FCF2F2;
  padding: 7rem 0;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
}
.s-flow__title {
  margin-bottom: 5rem;
}
.s-flow__title .catch {
  display: block;
  text-align: center;
  color: #E37D7D;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 1.6rem;
}
.s-flow__title .text {
  display: block;
  text-align: center;
  font-size: 3.4rem;
  font-weight: bold;
}
.s-flow__image {
  text-align: center;
  margin-bottom: 4rem;
}
.s-flow__description {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.8;
}
.s-flow__description em {
  font-weight: bold;
  font-style: normal;
}

/*--------------------------------------
  feature
--------------------------------------*/
.s-feature {
  padding: 7rem 0 21rem;
  display: flex;
  justify-content: space-between;
}
.s-feature > section {
  width: 460px;
}
.s-feature > section .title {
  margin-bottom: 3rem;
}
.s-feature > section .title .catch {
  display: block;
  text-align: center;
  color: #E37D7D;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 1.6rem;
}
.s-feature > section .title .text {
  display: block;
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
}
.s-feature > section .description {
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 3rem;
}
.s-feature > section .image {
  text-align: center;
}

/*--------------------------------------
  download
--------------------------------------*/
.s-download {
  padding: 9.6rem 0 8rem;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
  position: relative;
}
.s-download .cw {
  position: relative;
  z-index: 3;
}
.s-download__title {
  margin-bottom: 5rem;
}
.s-download__title .catch {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 2.4rem;
}
.s-download__title .text {
  display: block;
  text-align: center;
  font-size: 4.4rem;
  font-weight: bold;
  color: #fff;
}
.s-download__app_link {
  display: flex;
  justify-content: center;
  gap: 3rem;
}
.s-download__app_link li {
  position: relative;
}
.s-download__app_link li a:hover {
  opacity: 0.7;
}
.s-download__app_link li .remarks {
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  white-space: nowrap;
}
.s-download__icon {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 3;
  transform: translate(-50%, -50%);
}
.s-download__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #E37D7D;
  z-index: 2;
}
.s-download__tsuchiya {
  position: absolute;
  left: calc(50% - 29.5rem);
  bottom: 0;
  z-index: 1;
  padding-top: 2rem;
  transition: bottom 0.3s ease-out;
}
.s-download__tsuchiya .tsuchiya {
  position: relative;
  z-index: 2;
}
.s-download__tsuchiya .star {
  position: absolute;
  left: 50%;
  bottom: 6rem;
  width: 149px;
  height: 58px;
  background: url(/images/app/tsuchiya_star.svg) no-repeat center/contain;
  z-index: 1;
  transform: translateX(-50%);
  transition: all 0.45s ease-out;
}
.s-download__tsuchiya.is-show {
  bottom: calc(100% - 1px);
}
.s-download__tsuchiya.is-show .star {
  width: 300px;
  height: 116px;
}
