@charset "utf-8";
/* ===================================================================
 style.css
  - breakpoint: max-width: 767px / min-width: 768px
======================================================================*/

@media screen and (min-width: 768px) {
  .f_main,
  .f_contents {
    padding-top: 0;
  }
}

/*----------------------------------------------------------
 model
------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .model {
    display: grid;
    grid-template-columns: 1fr 10%;
    margin-bottom: 80px;
  }
  .model-intro {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    position: relative;
    z-index: 2;
    padding-top: 150px;
  }
  .model-image {
    grid-column: 2 / 3;
    grid-row: 1 / 3;
  }
  .model-launch {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
    width: 60%;
    margin-top: 80px;
  }

  /* image */
  .model-image > div {
    position: sticky;
    top: 0;
    left: 0;
    height: calc(100vh - 150px);
  }
  .model-image > div > span {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 50vw;
    max-width: 800px;
  }
}
@media screen and (max-width: 767px) {
  .model-image {
    margin-bottom: 50px;
  }
  .model-launch {
    margin-bottom: 50px;
  }
}

/* title
-------------------------------------------------*/
.model-pageTitle {
  margin-bottom: 60px;
  font-size: 5.2rem;
}
.model-subTitle {
  margin-bottom: 50px;
  font-size: 3.2rem;
}

@media screen and (max-width: 1200px) {
  .model-subTitle {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1000px) {
  .model-subTitle br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .model-pageTitle {
    margin-bottom: 30px;
    font-size: 2.8rem;
  }
  .model-subTitle {
    font-size: 1.8rem;
  }
}

/* text
-------------------------------------------------*/
@media screen and (min-width: 768px) {
  .model-intro > p {
    width: 65%;
  }
  .model-intro > p + p {
    width: 48%;
    margin-top: 50px;
  }
}

@media screen and (max-width: 767px) {
  .model-intro > p + p {
    margin-top: 30px;
  }
}

/* model-column
-------------------------------------------------*/
.model-column {
  display: flex;
  margin-bottom: 30px;
}
.model-column-box {
  width: 45%;
}
.model-column-box p {
  margin-top: 15px;
  font-size: 1.4rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .model-column {
    justify-content: space-between;
    padding: 0 5%;
  }
  .model-column-box {
    width: 48%;
  }
  .model-column-box p {
    font-size: 1.2rem;
  }
  .model-column-box p br {
    display: none;
  }
}
