@charset 'utf-8';
/* ======================================================
CSS information

 File Name  : index.css
 Style Info : トップページのCSS


/*============================================== */
/*ローディングアニメーション(モバイルファースト)*/
.loading {
  z-index: 99999999;
  display: flex;
  justify-content: center;
  align-items: center;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  color: #252222;
  font-weight: 500;
  font-size: 2.5rem;
  font-family: 'Zen Maru Gothic', sans-serif;
  background-color: #fff6f0;
  transition: 2s;
}

.loading.active {
  visibility: visible;
  opacity: 1;
}
/*フラッシュアニメーション(モバイルファースト)*/
@keyframes flashing {
  50% {
    opacity: .9;
  }
}

/*ローディング画像(モバイルファースト)*/
.loading img {
  margin-left: 5px;
  width: 65px;
  animation: fuwafuwa 1s infinite ease-in-out .2s alternate;
}

/*ローディング画像アニメーション(モバイルファースト)*/
@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0) rotate(-3deg);
  }
  50% {
    transform: translate(0, -3px) rotate(0deg);
  }
  100% {
    transform: translate(0, 0) rotate(3deg);
  }
}

/*ローディング文字(モバイルファースト)*/
.loading-text {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  animation: 1s flashing infinite;
}

/*ローディング文字色(モバイルファースト)*/
.loading-text span {
  display: inline-block;
  color: #fb787a;
  font-weight: 500;
  font-size: 1.3em;
  animation: animation-loading-text 1s infinite;
}

/*アニメーションを開始秒数(モバイルファースト)*/
.loading-text span:nth-of-type(2) {
  animation-delay: .1s;
}

.loading-text span:nth-of-type(3) {
  animation-delay: .2s;
}

.loading-text span:nth-of-type(4) {
  animation-delay: .3s;
}

.loading-text span:nth-of-type(5) {
  animation-delay: .4s;
}

.loading-text span:nth-of-type(6) {
  animation-delay: .5s;
}

.loading-text span:nth-of-type(7) {
  animation-delay: .6s;
}

.loading-text span:nth-of-type(8) {
  animation-delay: .7s;
}

.loading-text span:nth-of-type(9) {
  animation-delay: .8s;
}

.lloading-text span:nth-of-type(10) {
  animation-delay: .9s;
}

@keyframes animation-loading-text {
  50% {
    transform: translateY(10px);
  }
}


/*============================================== */
/*トップページ画像とキャッチ(モバイルファースト)*/
#top-price {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

/*トップページ画像(モバイルファースト)*/
#top-price img {
  position: relative;
  width: 100%;
  height: 237px;
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
}


/*キャッチコピーとコメント(モバイルファースト)*/
.top-text {
  display: flex;
  justify-content: center;
  align-items: center;
}

/*キャッチコピー(モバイルファースト)*/
.top-text .text1 {
  z-index: 5555;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 132px;
  left: 30px;
  padding-top: 30px;
  color: #fc7979;
  font-weight: 500;
  font-size: 2.5rem;
  font-family: 'Zen Maru Gothic', sans-serif;
  text-align: left;
  text-shadow: 0 1px 1px rgb(243, 239, 239);
}

/*コメント(モバイルファースト)*/
.top-text .text2 {
  z-index: 4444;
  position: absolute;
  top: 269px;
  left: 0;
  margin: 20px auto 0;
  padding: 18px;
  width: 100%;
  color: #585657;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 2;
  text-align: center;
  background-color: #ffeddf79;
}

/*コメント優の文字色(モバイルファースト)*/
#top-price span {
  color: #fc7c7c;
  font-weight: 900;
  font-size: 1.7rem;
}

/*============================================== */
/*料金ボタン(モバイルファースト)*/

/*料金ボタン全体の幅(モバイルファースト)*/
.price-box {
  position: relative;
  margin-top: 95px;
  margin-left: calc(50% - 50vw);
  width: 100vw;
  height: 88px;
}

/*料金ボタン背景(モバイルファースト)*/
.price-box::before {
  z-index: -1;
  content: '';
  opacity: .7;
  position: absolute;
  top: 110px;
  left: 0;
  width: 100%;
  height: 70px;
  background-image: url(../img/index/home.png);
  background-position: center bottom;
  background-size: contain;
  background-repeat: repeat-x;
}

/*料金ボタン幅(モバイルファースト)*/
a.btn_22 {
  display: block;
  position: relative;
  margin: auto;
  padding: 2rem 4rem;
  width: 300px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  background: #fc665b;
  border: 2px solid #fc665b;
  border-radius: 5px;
  box-shadow: 0 5px 0 rgb(197, 58, 48);
  vertical-align: middle;
  transition: .5s;
  animation: move_d 2s infinite;
}
@keyframes move_d {
  0% {
    top: 0;
    box-shadow: 0 5px 0 rgb(197, 58, 48);
  }
  10% {
    top: 5px;
    box-shadow: 0 0 0 rgb(197, 58, 48);
  }
  20% {
    top: 0;
    box-shadow: 0 5px 0 rgb(197, 58, 48);
  }
  30% {
    top: 5px;
    box-shadow: 0 0 0 rgb(197, 58, 48);
  }
  40% {
    top: 0;
    box-shadow: 0 5px 0 rgb(197, 58, 48);
  }
}


/*距離単価文字(モバイルファースト)*/
.btn-copy {
  margin-bottom: .2em;
  font-weight: 700;
  font-size: 1.7rem;
  text-align: center;
}

.btn-copy span {
  color: #f12c2c;
  font-weight: 900;
  font-size: 2.5rem;
}


/*距離単価文字装飾(モバイルファースト)*/
.btn-copy:before {
  content: '＼';
  margin-right: 1rem;
  color: #fc4242;
}

/*距離単価文字装飾(モバイルファースト)*/
.btn-copy:after {
  content: '／';
  margin-left: 1rem;
  color: #fc4242;
}

/*paypay使えます全体幅(モバイルファースト)*/
.price-kinds {
  padding-top: 10px;
  width: 100%;
  line-height: 2;
}

/*paypay使えます文字(モバイルファースト)*/
.price-kinds p {
  font-weight: 400;
  font-size: 1.7rem;
  line-height: 2;
  text-align: center;
}

/*paypayアイコン(モバイルファースト)*/
.price-box span {
  padding-right: 5px;
  color: #fc4242;
  font-weight: 500;
}

/*============================================== */
/*優運転代行の約束(モバイルファースト)*/

/*優運転代行の約束タイトル幅(モバイルファースト)*/
.title-yakusoku {
  position: relative;
  margin: 50px auto 40px;
  padding: 10px 0;
}

/*優運転代行タイトル(モバイルファースト)*/
.title-yakusoku h1 {
  display: block;
  color: #585657;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.3;
  text-align: center;
}

/*優の文字色(モバイルファースト)*/
.title-yakusoku  span {
  padding-right: 5px;
  padding-left: 5px;
  color: #fc4242;
  font-size: 2.2rem;
}

/*============================================== */
/*３つの約束項目とアニメーション(モバイルファースト)*/

/*3つの項目全体(モバイルファースト)*/
#pc-yakusoku {
  position: relative;
  width: 100%;
}

/*背景真ん中グレー部分(モバイルファースト)*/
#pc-yakusoku::after {
  z-index: -1;
  content: '';
  opacity: .8;
  position: absolute;
  top: 45px;
  left: 0;
  width: 100%;
  height: 468px;
  background-color: #f5f3f0;
}

/*背景真ん中白い部分(モバイルファースト)*/
#pc-yakusoku::before {
  content: '';
  position: absolute;
  top: 0;
  left: 40%;
  width: 20%;
  height: 514px;
  background-color: #fdfafa;
}

/*保険加入文字(モバイルファースト)*/
#pc-yakusoku h1 {
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 23px;
  width: 260px;
  color: #585657;
  font-weight: 500;
  font-size: 1.5rem;
  letter-spacing: 2px;
  background-color: #fdf1e7;
  border: double 5px #f07373;
  border-radius: 20px;
}

/*保険加入アイコン(モバイルファースト)*/
#pc-yakusoku h1::before {
  z-index: 2;
  content: '';
  display: flex;
  align-items: center;
  margin-right: 5px;
  width: 33px;
  height: 39px;
  background-image: url(../img/index/star5.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

/*約束幅(モバイルファースト)*/
.grid-yakusoku {
  z-index: 1;
  position: relative;
  margin: 0 auto;
  width: 100%;
  max-width: 500px;
  height: 501px;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

/*アニメーション設定(モバイルファースト)*/
.grid-item,
.grid-item1,
.grid-item2,
.grid-item3 {
  display: grid;
  opacity: 0;
  margin: 1%;
  padding: 11%;
  width: calc(100% / 3 -4%);
  word-break: keep-all;
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;

  grid-template-columns: repeat(2, 1fr);
}

/*アニメーションの開始から終了までを指定する*/
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/*違う秒数で指定(モバイルファースト)*/
.grid-item1 {
  animation-delay: .5s;
}

.grid-item2 {
  animation-delay: 1s;
}

.grid-item3 {
  animation-delay: 1.5s;
}

/*優の文字色(モバイルファースト)*/
.grid-item span,
.grid-item1 span,
.grid-item2 span,
.grid-item3 span {
  color: #fc4242;
  font-weight: 400;
  font-size: 2.5rem;
}

/*3つの約束項目(モバイルファースト)*/
.grid-yakusoku li {
  display: block;
  position: relative;
  margin: 10px auto 15px;
  color: #212529;
  font-weight: 400;
  font-size: 1.9rem;
  letter-spacing: 2px;
  text-align: center;
  text-shadow: 0 0 2px white;
}

/*3つの約束項目の背景素材(モバイルファースト)*/
.grid-yakusoku li:before {
  z-index: -1;
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
          transform: translate(-50%,-50%);
  width: 80px;
  height: 80px;
  background-image: url(../img/index/star6.png);
  background-position: center center;
  background-size: contain;
  background-size: contain;
  background-repeat: no-repeat;
  border-radius: 50%;

  -webkit-transform: translate(-50%,-50%);
}


/*============================================== */
/*よくある質問(モバイルファースト)*/
.title-yakusoku2 {
  display: block;
  position: relative;
  margin: 60px auto;
  width: 250px;
}

/*よくある質問タイトル(モバイルファースト)*/
.title-yakusoku2 h1 {
  padding: 10px 0;
  color: #4d4848;
  font-weight: 900;
  font-size: 1.8rem;
  line-height: 1.3;
  text-align: center;
  background-image: linear-gradient(rgba(0,0,0,0) 90%, #fc6464 95%);
}

.title-yakusoku2 h1::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background-image: url(../img/index/question.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

/*よくある質問全体幅(モバイルファースト)*/
.question {
  position: relative;
  margin: 2em auto; /* ボックスの余白 */
  padding: 3em 2em 2em;
  width: 80%;
  background-color: #fcefeb; /* ボックス背景色 */
  box-shadow: 0 1px 5px rgba(0,0,0,.1);
}

/*よくある質問内容(モバイルファースト)*/
.question .box-title {
  position: absolute;
  top: 0;
  left: 0;
  padding: 5px;
  width: 100%;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
  word-break: keep-all;
  background-color: #fa8282;
}

/*よくある質問答え(モバイルファースト)*/
.question p {
  font-weight: 400;
  line-height: 1.5;
}

/*約款ボタン*/
a.btn_15 {
  display: block;
  position: relative;
  margin: auto;
  padding: 3rem;
  color: #4cbd30;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  background-color: #ccffc0;
  border-width: 4px;
  border-style: solid;
  border-image-source: repeating-linear-gradient(45deg, #4cbd30 0, #4cbd30 6px, rgba(0, 0, 0, 0) 6px, rgba(0, 0, 0, 0) 8px);
  border-image-slice: 4;
  border-image-repeat: round;
  border-radius: .3rem;
  vertical-align: middle;
}

.clause {
  margin-top: 93px;
  padding-top: 20px;
  width: 100%;
  text-align: center;
}

.clause p {
  font-weight: 700;
  line-height: 1.9;
}

.clause span {
  color: #f12c2c;
  font-weight: 900;
}


/* 410px～（タブレット）
------------------------------------------------------------------------- */
@media screen and (min-width: 410px) {
  /*============================================== */
  /*トップページ画像とキャッチ(タブレット410px)*/

  /*トップ画像サイズ(タブレット410px)*/
  #top-price img {
    position: relative;
    width: 100%;
    height: 258px;
  }

  /*トップキャッチコピー(タブレット410px)*/
  .top-text .text1 {
    top: 143px;
    left: 8%;
    padding-top: 30px;
    font-size: 3.3rem;
  }

  /*トップコメント(タブレット410px)*/
  .top-text .text2 {
    top: 294px;
    left: 0;
    margin: 20px auto 0;
    padding: 13px;
    font-size: 1.5rem;
  }

  /*コメント文字「優」の色(タブレット410px)*/
  .top-text span {
    color: #fc4242;
    font-size: 1.6rem;
  }

  /*コメント文字「優」の色(タブレット410px)*/
  #top-price span {
    font-weight: 500;
    font-size: 1.7rem;
  }

  /*============================================== */
  /*料金ボタン(タブレット410px)*/

  /*距離単価(タブレット410px)*/
  .btn-copy {
    margin-top: 99px;
  }


  /*============================================== */
  /*優運転代行の約束(タブレット410px)*/

  /*約束タイトル(タブレット410px)*/
  .title-yakusoku h1 {
    margin: 30px auto 0;
  }

  /*保険加入文字(タブレット410px)*/
  #pc-yakusoku h1 {
    margin: 60px auto 20px;
  }

  /*背景真ん中グレー部分(タブレット410px)*/
  #pc-yakusoku::after {
    height: 459px;
  }

  /*背景真ん中白い部分(タブレット410px)*/
  #pc-yakusoku::before {
    height: 503px;
  }

  /*保険から3つの約束の幅(タブレット410px)*/
  .grid-yakusoku {
    max-width: 500px;
    height: 503px;
  }

  /*約束幅(タブレット410px)*/
  .grid-yakusoku::after {
    height: 653px;
  }

  /*3つの項目囲み幅(タブレット410px)*/
  .grid-yakusoku ul {
    margin-top: 10px;
  }

  /*約束項目(タブレット410px)*/
  .grid-yakusoku li {
    padding: 38px;
  }

  /*約束背景素材(タブレット410px)*/
  .grid-yakusoku li::before {
    width: 85px;
    height: 85px;
  }

  /*文字の間隔(タブレット410px)*/
  .grid-item,
  .grid-item1,
  .grid-item2,
  .grid-item3 {
    padding: 11%;
  }
}


/* 530px～（タブレット）
------------------------------------------------------------------------- */
@media screen and (min-width: 530px) {
  /*loading画面全体幅(タブレット530px)*/
  .loading {
    font-size: 2.8rem;
    transition: .8s;
  }

  /*loadingテキスト(タブレット530px)*/
  .loading-text span {
    font-size: 2.8rem;
  }

  /*loading画像(タブレット530px)*/
  .loading img {
    margin-left: 5px;
    width: 75px;
  }

  /*============================================== */
  /*トップ画像とキャッチコピー(タブレット530px)*/


  /*トップ画像とキャッチコピー幅(タブレット530px)*/
  #top-price {
    margin-top: 0;
    margin-left: calc(50% - 50vw);
    width: 100vw;
  } .top-text ul {
    position: relative;
    width: 100vw;
    height: 100%;
  }

  /*トップキャッチコピー(タブレット530px)*/
  .top-text .text1 {
    position: absolute;
    top: 10px;
    left: 0;
    padding-right: 50%;
    width: 100%;
    font-size: 2.7rem;
    line-height: 1.5;
  }

  /*トップコメント(タブレット530px)*/
  .top-text .text2 {
    position: absolute;
    top: 0;
    right: 20px;
    margin-top: 0;
    padding-top: 211px;
    padding-right: 50%;
    width: 100vw;
    height: 360px;
    font-weight: 400;
    font-size: 1.8rem;
    word-break: keep-all;
    border-radius: 0;

    grid-area: text2;
  }

  /*コメントの素材(タブレット530px)*/
  .top-text .text2::after {
    z-index: 5555;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background-image: url(../img/index/car-salon.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;

    grid-area: img-grid;
  }

  /*トップ画像(タブレット530px)*/
  #top-price img {
    display: none;
    height: 300px;

    grid-area: 'img-grid';
  }

  /*キャッチコピー(タブレット530px)*/
  .top-text {
    display: grid;
    position: relative;
    width: 100vw;

    grid-template-areas: 'text2 img-grid' 'text2 img-grid';
    grid-template-columns: repeat( 2 ,auto);
  }

  /*トップ画像の星アニメーション(タブレット530px)*/
  .top-text::before {
    z-index: 6666;
    content: '';
    opacity: 1;
    position: absolute;
    top: 68px;
    left: 40%;
    width: 45px;
    height: 45px;
    background-image: url(../img/index/star2.png);
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    animation: poyoyon3 4s infinite;
  }

  @keyframes poyoyon3 {
    0%,
    40% {
      transform: skew(0deg, 0deg);
    }
    5% {
      transform: skew(5deg, 5deg);
    }
    10% {
      transform: skew(-4deg, -4deg);
    }
    15% {
      transform: skew(3deg, 3deg);
    }
    20% {
      transform: skew(-2deg, -2deg);
    }
    25% {
      transform: skew(1deg, 1deg);
    }
    30% {
      transform: skew(-.6deg, -.6deg);
    }
    35% {
      transform: skew(.3deg, .3deg);
    }
  }

  /*トップ画像の星アニメーション(タブレット530px)*/
  .top-text::after {
    z-index: 6666;
    content: '';
    opacity: 1;
    position: absolute;
    top: 106px;
    left: 54%;
    width: 48px;
    height: 47px;
    background-image: url(../img/index/star3.png);
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    animation: poyopoyo 2s ease-out infinite;
  }
  @keyframes poyopoyo {
    0%,
    40%,
    60%,
    80% {
      transform: scale(1.0);
    }
    50%,
    70% {
      transform: scale(.95);
    }
  }

  /*============================================== */
  /*料金ボタン(タブレット530px)*/


  /*料金ボタン全体の幅(タブレット530px)*/
  .price-box {
    margin-top: 417px;
  }

  /*料金ボタン背景(タブレット530px)*/
  .price-box::before {
    top: 161px;
    left: 0;
    width: 100%;
    height: 80px;
  }

  /*料金ボタン幅(タブレット530px)*/
  .price-box a {
    margin: 10px auto;
    padding: 27px;
    width: 426px;
    height: 80px;
    font-weight: 500;
    font-size: 2rem;
  }

  /*距離単価文字(タブレット530px)*/
  .btn-copy {
    margin-bottom: .2em;
    font-weight: 700;
    font-size: 2rem;
  }

  /*paypay使えます文字(タブレット530px)*/
  .price-kinds p {
    font-weight: 400;
    font-size: 1.7rem;
  }

  /*paypayアイコン(タブレット530px)*/
  .price-box span {
    padding-right: 5px;
    font-weight: 700;
    font-size: 2rem;
  }

  /*優運転代行の約束タイトル(タブレット530px)*/
  .title-yakusoku h1 {
    margin: 0 auto 50px;
    padding-bottom: 20px;
    width: 247px;
    font-size: 2.3rem;
  }

  .title-yakusoku span {
    font-size: 3rem;
  }

  /*============================================== */
  /*優運転代行3つの約束(タブレット530px)*/

  /*3つの項目全体(タブレット530px)*/
  #pc-yakusoku {
    display: flex;
    position: relative;
  }

  /*背景真ん中グレー部分(タブレット530px)*/
  #pc-yakusoku::after {
    top: 13px;
    left: 0;
    width: 100%;
    height: 593px;
  }

  /*背景真ん中白い部分(タブレット530px)*/
  #pc-yakusoku::before {
    top: 0;
    left: 40%;
    width: 20%;
    height: 606px;
  }

  /*保険加入文字(タブレット530px)*/
  #pc-yakusoku h1 {
    margin-top: -30px;
    width: 418px;
    font-size: 1.9rem;
  }

  /*保険加入アイコン(タブレット530px)*/
  #pc-yakusoku h1::before {
    top: 20px;
    left: 32px;
    width: 43px;
    height: 41px;
  }

  /*保険から3つの約束の幅(タブレット530px)*/
  .grid-yakusoku {
    width: 100%;
    max-width: 1200px;
    height: 536px;
  }

  /*3つの項目囲み幅(タブレット530px)*/
  .grid-yakusoku ul {
    position: absolute;
    top: 46px;
    right: 0;
    margin: 0 auto;
    width: 100%;
  }

  /*約束文字(タブレット530px)*/
  .grid-yakusoku li {
    margin: 85px auto 30px;
    padding: 12px;
    width: 193px;
    font-size: 2.5rem;
    letter-spacing: 3px;
  }

  /*約束優の文字(タブレット530px)*/
  .grid-item span,
  .grid-item1 span,
  .grid-item2 span,
  .grid-item3 span {
    font-size: 3.4rem;
  }

  /*約束文字背景星素材(タブレット530px)*/
  .grid-item li::before {
    width: 153px;
    height: 153px;
  }

  /*============================================== */
  /*よくある質問(タブレット530px)*/

  /*よくある質問タイトル(タブレット530px)*/
  .title-yakusoku2 h1 {
    margin: 130px auto 60px;
    font-size: 2.2rem;
  }

  /*よくある質問全体幅(タブレット530px)*/
  .question {
    margin: 2em auto; /* ボックスの余白 */
    padding: 3em 3em;
    width: 70%;
    font-size: 1.5rem;
  }

  /*よくある質問タイトル(タブレット530px)*/
  .question .box-title {
    top: 0;
    left: 0;
    padding: 9px;
    font-weight: 400;
    font-size: 1.6rem;
    word-break: keep-all;
  }

  /*よくある質問答え(タブレット530px)*/
  .question p {
    padding-top: 14px;
    line-height: 2;
  }

  .clause p {
    font-size: 1.8rem;
  }

  .clause-btn {
    margin: 85px auto 10px;
    width: 500px;
  }

  .clause-btn a {
    padding: 20px;
    font-size: 1.8rem;
    letter-spacing: 2px;
  }

  .clause {
    margin-top: 158px;
  }

  .clause p br {
    display: none;
  }
}

/* 768px～（タブレット）
------------------------------------------------------ */
@media screen and (min-width: 768px) {
  /*============================================== */
  /*トップページ画像とキャッチ2分割(タブレット768px)*/

  /*キャッチコピーとコメント(タブレット768px)*/
  .top-text {
    display: grid;

    grid-template-areas: 'text2 img-grid' 'text2 img-grid';
    grid-template-columns: repeat( 2 ,auto);
  }

  /*トップのキャッチコピー(タブレット768px)*/
  .top-text .text1 {
    font-size: 3.5rem;
  }

  /*トップのコメント(タブレット768px)*/
  .top-text .text2 {
    padding-top: 242px;
    padding-right: 50%;
    height: 407px;

    grid-area: 'text2';
  }

  /*トップのコメント優の文字(タブレット768px)*/
  .text2 span {
    font-size: 2.7rem;
  }

  /*トップの画像(タブレット768px)*/
  .top-text .text2::after {
    z-index: 5555;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background-image: url(../img/index/car-salon.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;

    grid-area: 'img-grid';
  }

  /*トップ画像(タブレット768px)*/
  #top-price img {
    z-index: 4444;
    height: 300px;

    grid-area: 'img-grid';
  }

  /*============================================== */
  /*料金ボタン(タブレット768px)*/

  /*料金ボタン全体の幅(タブレット768px)*/
  .price-box {
    margin-top: 476px;
    height: 144px;
  }

  /*料金ボタン背景(タブレット768px)*/
  .price-box::before {
    top: 183px;
    left: 0;
    width: 100%;
    height: 87px;
  }

  /*料金ボタン幅(タブレット768px)*/
  .price-box a {
    margin: 10px auto;
    padding: 27px;
    width: 400px;
    height: 73px;
    font-weight: 500;
    font-size: 2rem;
  }

  /*距離単価文字(タブレット768px)*/
  .btn-copy {
    font-size: 2.5rem;
  }

  /*paypay使えます文字(タブレット768px)*/
  .price-kinds p {
    font-size: 2.3rem;
  }

  /*paypayアイコン(タブレット768px)*/
  .price-box span {
    padding-right: 5px;
    font-weight: 700;
    font-size: 2.5rem;
  }



  /*============================================== */
  /*優運転代行の約束(タブレット768px)*/

  /*優運転代行の約束タイトル(タブレット768px)*/
  .title-yakusoku h1 {
    margin: 70px auto 60px;
    width: 247px;
    font-size: 2.5rem;
  }

  /*優運転代行の約束タイトル優の文字(タブレット768px)*/
  .title-yakusoku span {
    font-size: 3rem;
  }

  /*背景真ん中グレー部分(タブレット768px)*/
  #pc-yakusoku::after {
    top: 16px;
    left: 0;
    width: 100%;
    height: 367px;
  }

  /*背景真ん中白い部分(タブレット768px)*/
  #pc-yakusoku::before {
    top: 129px;
    left: 0;
    width: 100%;
    height: 145px;
  }

  /*保険加入文字(タブレット768px)*/
  #pc-yakusoku h1 {
    font-size: 2.1rem;
  }

  /*保険加入アイコン(タブレット768px)*/
  #pc-yakusoku h1::before {
    top: 18px;
    left: 24px;
    width: 43px;
    height: 44px;
  }

  /*保険から3つの約束の幅(タブレット768px)*/
  .grid-yakusoku {
    width: 100%;
    max-width: 1200px;
    height: 392px;
  }

  /*3つの項目囲み幅(タブレット768px)*/
  .grid-yakusoku ul {
    display: flex;
    flex-wrap: nowrap;
    position: absolute;
    top: 46px;
    right: 0;
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
  }

  /*約束文字(タブレット768px)*/
  .grid-yakusoku li {
    margin: 115px auto 30px;
    padding: 17px;
    width: 246px;
    font-size: 2.5rem;
    letter-spacing: 3px;
  }

  /*約束背景素材(タブレット768px)*/
  .grid-yakusoku li::before {
    width: 107px;
    height: 132px;
  }

  /*============================================== */
  /*よくある質問(タブレット768px)*/
  .title-yakusoku2 {
    width: 294px;
  }

  .title-yakusoku2 h1::before {
    width: 50px;
    height: 50px;
  }

  /*よくある質問タイトル(タブレット768px)*/
  .title-yakusoku2 h1 {
    margin: 60px auto;
    font-size: 2.5rem;
  }

  /*よくある質問全体幅(タブレット768px)*/
  .question {
    padding: 4em;
    max-width: 500px;
  }

  /*よくある質問タイトル(タブレット768px)*/
  .question .box-title {
    padding: 13px;
    font-size: 1.8rem;
  }

  /*よくある質問答え(タブレット768px)*/
  .question p {
    font-size: 1.8rem;
    line-height: 2;
  }
}

/* 960px～（パソコン）
------------------------------------------------------ */
@media screen and (min-width: 960px) {
  /*============================================== */
  /*ローデング(パソコン960px)*/

  /*loading画面全体幅(パソコン960px)*/
  .loading {
    font-size: 3rem;
  }

  /*loadingテキスト(パソコン960px)*/
  .loading-text span {
    font-size: 3rem;
  }

  /*loading画像(パソコン960px)*/
  .loading img {
    width: 80px;
  }

  /*============================================== */
  /*トップキャッチコピー・画像(パソコン960px)*/

  /*トップ画像とキャッチコピー幅(パソコン960px)*/
  #top-price {
    margin-top: -40px;
  }

  /*トップ画像(パソコン960px)*/
  #top-price img {
    position: relative;
    width: 50%;
  }

  /*トップコメント(パソコン960px)*/
  #top-price .text2 {
    position: relative;
    margin-top: 0;
    padding-top: 410px;
    height: 656px;
    font-size: 2.4rem;
    letter-spacing: 2.5px;
  }

  /*トップコメント優の文字(パソコン960px)*/
  #top-price .text2 span {
    font-size: 2.1rem;
  }

  /*トップ画像の星アニメーション(パソコン960px)*/
  .top-text::before {
    top: 134px;
    left: 37%;
  }

  /*トップキャッチコピー(パソコン960px)*/
  #top-price .text1 {
    opacity: 0;
    position: absolute;
    top: 109px;
    font-size: 5.2rem;
    letter-spacing: 4px;
    animation-name: fadeLeftAnime;
    animation-duration: 6s;
    animation-fill-mode: forwards;
  }

  @keyframes fadeLeftAnime {
    from {
      opacity: 0;
      transform: translateX(-50px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  /*トップコメント(パソコン960px)*/
  .top-text .text2 {
    padding-top: 313px;
  }

  /*トップの画像(パソコン960px)*/
  .top-text .text2::after {
    top: 38px;
    right: 0;
    width: 50%;
    height: 94.3%;
  }

  /*トップ星素材(パソコン960px)*/
  .top-text::after {
    top: 186px;
    left: 54%;
  }

  a.btn_15:hover {
    color: #4cbd30;
    background-color: #fafafa;
    border: 4px solid #4cbd30;
  }

  /*============================================== */
  /*優運転代行の約束(パソコン960px)*/

  /*優運転代行の約束タイトル(パソコン960px)*/
  .title-yakusoku h1 {
    margin-top: 50px;
    width: 350px;
    font-size: 3.5rem;
  }

  /*優運転代行の約束タイトル優の文字(パソコン960px)*/
  .title-yakusoku span {
    font-size: 4rem;
  }

  /*============================================== */
  /*料金ボタン(パソコン960px)*/

  /*料金ボタン全体の幅(パソコン960px)*/
  .price-box {
    margin-top: 110px;
    height: 144px;
  }

  /*料金ボタン背景(パソコン960px)*/
  .price-box::before {
    top: 182px;
    height: 116px;
  }

  /*料金ボタン幅(パソコン960px)*/
  .price-box a {
    margin: 10px auto;
    padding: 33px;
    width: 574px;
    height: 95px;
    font-size: 2.4rem;
  }

  /*料金ボタン幅hover(パソコン960px)*/
  a.btn_22:hover {
    color: #fc665b;
    background: #fff;
    border: 2px solid #fc665b;
  }
  /*距離単価文字(パソコン960px)*/
  .btn-copy {
    font-size: 2.5rem;
  }

  /*paypay使えます文字(パソコン960px)*/
  .price-kinds p {
    font-size: 2.4rem;
  }

  /*paypayアイコン(パソコン960px)*/
  .price-box span {
    padding-right: 5px;
    font-weight: 700;
    font-size: 2.6rem;
  }


  .clause p {
    margin-top: 20px;
    font-size: 1.9rem;
  }

  .clause-btn {
    margin: 155px auto 10px;
    width: 720px;
  }

  /*============================================== */
  /*優運転代行の約束(パソコン960px)*/

  .title-yakusoku {
    margin: 90px auto 40px;
  }

  /*保険加入文字(パソコン960px)*/
  #pc-yakusoku h1 {
    overflow: hidden;
    top: 6px;
    padding: 47px;
    width: 531px;
    font-size: 2.4rem;
  }

  /*保険加入アイコン(パソコン960px)*/
  #pc-yakusoku h1::before {
    top: 39px;
    left: 64px;
    width: 46px;
    height: 46px;
  }

  /*背景真ん中白い部分(パソコン960px)*/
  #pc-yakusoku::before {
    top: 230px;
    left: 0;
    width: 100%;
    height: 182px;
  }

  /*背景真ん中グレー部分(パソコン960px)*/
  #pc-yakusoku::after {
    top: 71px;
    height: 493px;
  }

  /*保険から3つの約束の幅(パソコン960px)*/
  .grid-yakusoku {
    max-width: 1200px;
    height: 440px;
  }

  /*約束文字(パソコン960px)*/
  .grid-yakusoku li {
    margin-top: 235px;
    padding-top: 10px;
    width: 250px;
    height: 130px;
    font-size: 2.8rem;
  }

  /*約束背景素材(パソコン960px)*/
  .grid-yakusoku li::before {
    width: 100px;
    height: 100px;
  }

  /*約束優の文字(パソコン960px)*/
  .grid-item span,
  .grid-item1 span,
  .grid-item2 span,
  .grid-item3 span {
    font-size: 5rem;
  }

  /*============================================== */
  /*よくある質問(パソコン960px)*/

  .title-yakusoku2 {
    width: 396px;
  }


  /*よくある質問タイトル(パソコン960px)*/
  .title-yakusoku2 h1 {
    margin-top: 239px;
    font-size: 3.4rem;
  }

  /*よくある質問２列の設定(パソコン960px)*/
  .grid-question {
    display: grid;
    margin: 30px auto;
    width: 80%;
    max-width: 1000px;

    grid-template-columns: 1fr 1fr;
  }

  /*よくある質問全体幅(パソコン960px)*/
  .question {
    padding: 3em 2em;
    width: 95%;
    max-width: 600px;
    font-size: 2.2rem;
  }

  /*よくある質問タイトル(パソコン960px)*/
  .question .box-title {
    top: 0;
    left: 0;
    padding: 24px;
    width: 100%;
    font-size: 1.9rem;
  }

  /*よくある質問答え(パソコン960px)*/
  .question p {
    padding-top: 20px;
    font-size: 1.8rem;
    line-height: 2;
  }
}
/* 1250px～（パソコン）
------------------------------------------------------ */
@media screen and (min-width: 1250px) {
  /*よくある質問全体幅(パソコン1250px)*/
  .question {
    padding: 2em 2em;
    max-width: 500px;
    font-size: 2.3rem;
  }

  /*よくある質問答え(パソコン1250px)*/
  .question p {
    padding-top: 48px;
  }
}
