@charset "UTF-8";
.fs-c-breadcrumb {
  background: #fff;
  max-width: inherit;
}

.fs-c-breadcrumb__list {
  max-width: 120rem;
  margin: 0 auto;
}

.fs-c-breadcrumb__listItem {
  display: inline;
}

.fs-l-main,
.fs-l-main,
.fs-l-pageMain {
  max-width: inherit !important;
  margin: 0 auto;
}

#fs_CustomPage .fs-l-main {
  padding: 0;
}

html {
  box-sizing: border-box;
  font-size: 62.5%;
}

@media screen and (min-width: 821px) and (max-width: 1536px) {
  html {
    font-size: 0.65vw;
  }
}
@media screen and (max-width: 820px) {
  html {
    font-size: 1.3vw;
  }
}
.lp_style * {
  box-sizing: border-box;
}

.lp_style {
  overflow: hidden;
  -webkit-text-size-adjust: 100%;
  font-size: 100%;
  line-height: 1;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  font-weight: 400;
}

.lp_style button {
  background: transparent;
  padding: 0;
  margin: 0;
}

.lp_style ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.lp_style img {
  max-width: 100%;
}

.lp_style a {
  text-decoration: none;
}

.lp_style .content {
  display: block;
}

.txtBlock {
  display: inline-block;
}

._inner {
  position: relative;
  z-index: 2;
  padding: 0 3rem;
}
@media screen and (min-width: 821px) {
  ._inner {
    margin: 0 auto;
  }
}

/* ---------------------------------------------- 
  head
---------------------------------------------- */
.head {
  text-align: center;
  background: #111111;
}
.head img {
  width: 75rem;
}
@media screen and (min-width: 821px) {
  .head img {
    width: 192rem;
  }
}

.logo {
  position: relative;
  text-align: center;
  padding: 1.8rem 0;
}
.logo img {
  position: relative;
  text-align: center;
  z-index: 1;
  width: 21.5rem;
}
@media screen and (min-width: 821px) {
  .logo img {
    width: 21.6rem;
  }
}
.logo::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: #e62283;
  z-index: 0;
}

#Mainvisual img {
  width: 100%;
}

/* ---------------------------------------------- 
  catch
---------------------------------------------- */
.catch {
  padding: 3.6rem 0;
}
@media screen and (min-width: 821px) {
  .catch {
    padding: 1.8rem 0;
  }
}
.catch ._text {
  position: relative;
  z-index: 2;
  font-size: 3.2rem;
  line-height: 1.375;
  font-weight: 500;
  color: #e62283;
  text-align: center;
}
@media screen and (min-width: 821px) {
  .catch ._text {
    line-height: 1;
    text-align: center;
  }
}
.catch ._text .-block {
  display: block;
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 821px) {
  .catch ._text .-block {
    display: inline-block;
    text-align: center;
  }
  .catch ._text .-block:last-of-type {
    margin-left: 1em;
  }
}

/* ---------------------------------------------- 
  content
---------------------------------------------- */
.content {
  position: relative;
}

.content::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}

.content:nth-of-type(odd)::after {
  background: #e62283;
}

.content:nth-of-type(even)::after {
  background: #d7066d;
}

.content:nth-of-type(even) ._layout {
  flex-direction: row-reverse;
}
@media screen and (min-width: 821px) {
  .content:nth-of-type(even) ._information {
    margin-right: 4rem;
  }
}

.content {
  padding: 8rem 0;
}
@media screen and (min-width: 821px) {
  .content {
    padding: 11rem 0;
  }
}

@media screen and (min-width: 821px) {
  .content ._layout {
    display: flex;
    justify-content: center;
  }
}

._thumbnail {
  width: 69rem;
  margin: 0 auto 8rem;
}
@media screen and (min-width: 821px) {
  ._thumbnail {
    width: 56.5rem;
    margin: 0;
  }
}

._information {
  position: relative;
}
@media screen and (min-width: 821px) {
  ._information {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    max-width: 104.5rem;
    margin-left: 4rem;
  }
}
._information.between {
  justify-content: space-between;
}

._unit {
  position: relative;
}
._unit ._name {
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 5.12rem;
  line-height: 1;
  margin-bottom: 3rem;
}
@media screen and (min-width: 821px) {
  ._unit ._name {
    position: relative;
    margin-bottom: 3.5rem;
    font-size: 4.32rem;
    line-height: 1;
  }
}
._unit ._name .position-top {
  font-weight: bold;
}
@media screen and (min-width: 821px) {
  ._unit ._name .position-top {
    position: absolute;
    top: -1.5rem;
    left: 50%;
    transform: translate(-50%, -100%);
  }
}
._unit ._feature {
  text-align: center;
  color: #e62283;
  background: #fff;
  font-size: 3rem;
  line-height: 1.5;
  padding: 2.4rem 2rem;
  margin: 0 auto 4rem;
}
._unit ._feature span {
  display: inline-block;
  font-weight: 500;
}
@media screen and (min-width: 821px) {
  ._unit ._feature {
    height: 5rem;
    line-height: 5rem;
    margin: 0 auto 2rem;
    font-size: 2.4rem;
    padding: 0;
  }
}
._unit ._variation {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto 4rem;
}
@media screen and (min-width: 821px) {
  ._unit ._variation {
    flex-wrap: nowrap;
    justify-content: center;
    margin: 0 auto;
  }
}
._unit ._variation ._color img {
  width: 100%;
}
@media screen and (min-width: 821px) {
  ._unit ._variation ._color:not(:first-of-type) {
    margin-left: 0.5rem;
  }
}
._unit ._variation figcaption {
  text-align: center;
  margin: 2rem auto 0;
  font-size: 2.6rem;
}
@media screen and (min-width: 821px) {
  ._unit ._variation figcaption {
    font-size: 1.8rem;
    line-height: 1;
  }
}
._unit ._variation._variation-03 {
  display: grid;
  grid-gap: 0.6rem;
  grid-template-columns: repeat(auto-fill, minmax(22.6rem, 1fr));
}
._unit ._variation._variation-03 ._color:nth-of-type(n+4) {
  margin-top: 3rem;
}
._unit ._variation._variation-02 {
  display: grid;
  grid-gap: 0.6rem;
  grid-template-columns: repeat(auto-fill, minmax(34rem, 1fr));
}
._unit ._variation._variation-02 ._color:nth-of-type(n+3) {
  margin-top: 3rem;
}
@media screen and (min-width: 821px) {
  ._unit ._variation._variation-02,
  ._unit ._variation._variation-03 {
    display: flex;
  }
}
@media screen and (min-width: 821px) and (min-width: 821px) {
  ._unit ._variation._variation-02 ._color:nth-of-type(n+3), ._unit ._variation._variation-02 ._color:nth-of-type(n+4),
  ._unit ._variation._variation-03 ._color:nth-of-type(n+3),
  ._unit ._variation._variation-03 ._color:nth-of-type(n+4) {
    margin-top: 0;
  }
}
._unit:nth-of-type(n+2) {
  margin-top: 8rem;
}
@media screen and (min-width: 821px) {
  ._unit:nth-of-type(n+2) {
    margin-top: 0;
  }
}

._cta {
  position: relative;
  color: #fff !important;
  background: #111111;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38rem;
  height: 8rem;
  border-radius: 4rem;
  font-size: 3rem;
  margin: 0 auto;
}
._cta::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.8rem 0 0.8rem 1rem;
  border-color: transparent transparent transparent #ffffff;
}
@media screen and (min-width: 821px) {
  ._cta {
    width: 22rem;
    height: 5rem;
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    font-size: 2rem;
    line-height: 1;
    border-radius: 2.5rem;
  }
}

@media screen and (min-width: 821px) {
  ._variation li {
    transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0.4;
  }
  .fadein.scrollin ._variation li {
    opacity: 1;
  }
  .fadein ._variation li:nth-of-type(2) {
    transform: translateX(calc(-100% - 0.5rem));
    transition-duration: 400ms;
  }
  .fadein ._variation li:nth-of-type(3) {
    transform: translateX(calc(-200% - 1rem));
    transition-duration: 800ms;
  }
  .fadein ._variation li:nth-of-type(4) {
    transform: translateX(calc(-300% - 1.5rem));
    transition-duration: 1200ms;
  }
  .fadein ._variation li:nth-of-type(5) {
    transform: translateX(calc(-400% - 2rem));
    transition-duration: 1600ms;
  }
  .fadein ._variation li:nth-of-type(6) {
    transform: translateX(calc(-500% - 2.5rem));
    transition-duration: 2000ms;
  }
  .fadein.scrollin ._variation li:nth-of-type(2) {
    transform: translateX(0);
  }
  .fadein.scrollin ._variation li:nth-of-type(3) {
    transform: translateX(0);
  }
  .fadein.scrollin ._variation li:nth-of-type(4) {
    transform: translateX(0);
  }
  .fadein.scrollin ._variation li:nth-of-type(5) {
    transform: translateX(0);
  }
  .fadein.scrollin ._variation li:nth-of-type(6) {
    transform: translateX(0);
  }
}
.logo {
  overflow: hidden;
}
.logo:after {
  animation: logo 3s cubic-bezier(0.165, 0.84, 0.44, 1) 2s forwards; /*アニメーションの定義名、アニメーション１回分の時間の長さ、アニメーションの進行具合、アニメーションの開始を遅らせる、アニメーションの開始と終了時の状態を指定をまとめて設定*/
}

@keyframes logo {
  0% {
    width: 0;
    transform: translate(-100%, -100%);
  }
  100% {
    width: 100%;
    transform: translate(0, 0);
  }
}
.content.fadein::after {
  transition: all 3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.content.fadein:nth-of-type(1)::after {
  height: 0;
  top: 0;
}

.content.fadein.scrollin:nth-of-type(1)::after {
  height: 100%;
}

.content.fadein:nth-of-type(2)::after {
  top: 0;
  width: 0;
  right: 0;
}

.content.fadein.scrollin:nth-of-type(2)::after {
  width: 100%;
}

.content.fadein:nth-of-type(3)::after {
  height: 0;
  bottom: 0;
}

.content.fadein.scrollin:nth-of-type(3)::after {
  height: 100%;
}

.content.fadein:nth-of-type(4)::after {
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
}

.content.fadein.scrollin:nth-of-type(4)::after {
  width: 100%;
}

/* Loading背景画面設定　*/
#loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background: #e62283;
  text-align: center;
}

/* Loading画像中央配置　*/
#loading_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#loading_logo img {
  width: 215px;
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media screen and (max-width: 820px) {
  ._color.fadein {
    opacity: 0.1;
    transform: translate(0, 50px);
    transition: all 800ms cubic-bezier(0.17, 0.67, 0.67, 0.91);
  }
  ._color.fadein:nth-of-type(1) {
    transition-duration: 400ms;
  }
  ._color.fadein:nth-of-type(2) {
    transition-duration: 800ms;
  }
  ._color.fadein:nth-of-type(3) {
    transition-duration: 1200ms;
  }
  ._color.fadein:nth-of-type(4) {
    transition-duration: 1600ms;
  }
  ._color.fadein:nth-of-type(5) {
    transition-duration: 2000ms;
  }
  ._color.fadein:nth-of-type(6) {
    transition-duration: 2400ms;
  }
  ._color.fadein.scrollin {
    opacity: 1;
    transform: translate(0, 0);
  }
}/*# sourceMappingURL=style.css.map */