@charset "utf-8";

/* :rootのCSS変数の宣言 */
:root {
  --c-black: #1B1B1B;
  --c-main1: #228DBB;
  --c-main2: #4BAE36;
  --c-sub1: #F3F9FC;
  --c-sub2: #F6FBF4;

  --br-md: 20px;
  --br-lg: 50px;
}

/* =============================================
  共通
============================================= */
body {
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
#nav-top-area {
  z-index: 1;
}
#contents-area, .lyt-col-1 #contents-body {
  width: 100%;
}
#kdt {
  position: relative;
  color: var(--c-black);
  background: #fff;
  min-width: 850px;
  font-size: 16px;
  line-height: 1.7;
  overflow: hidden;
  text-align: justify;
}
#kdt * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
#kdt img {
  width: 100%;
}
#kdt #js-loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100vh;
  margin: 0;
  padding: 0;
  background: #fff;
}
#kdt a {
  outline: none;
  color: var(--c-main2);
  text-decoration: underline;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}
#kdt .sp {
  display: none;
}
#kdt .note {
  margin: .6em 0 0;
  color: #888;
  font-size: 12px;
  line-height: 1.5;
}
#kdt dl.note {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#kdt dl.note dt {
  width: 2.5em;
}
#kdt dl.note dd {
  width: calc( 100% - 2.5em );
  margin: 0;
  word-break: break-all;
}
#kdt dl.note dd + dt {
  margin-top: .5em;
}
#kdt .newwindowicon,
#kdt .pdficon {
  display: none;
}
#kdt .btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 312px;
  height: 78px;
  margin: 0 auto;
  color: #fff;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  font-size: 16px;
  text-decoration: none;
  border-radius: 39px;
  border: 0;
  -webkit-box-shadow: 0 6px 0 0 #EAEDEF;
          box-shadow: 0 6px 0 0 #EAEDEF;
}
#kdt .btn:hover {
  opacity: .7;
}
#kdt .btn:hover::before,
#kdt .btn:hover::after {
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
#kdt .btn-back {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#kdt .btn-back::before {
  content: '';
  display: block;
  width: 32px;
  height: 32px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_arrow.svg) no-repeat center #fff;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
  background-size: 12px 6px;
  position: absolute;
  left: 22px;
  top: calc(50% - 16px);
  border-radius: 16px;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
#kdt .btn-back:hover::before {
  -webkit-transform: rotate(-90deg) translateY(-2px);
      -ms-transform: rotate(-90deg) translateY(-2px);
          transform: rotate(-90deg) translateY(-2px);
}
#kdt .btn-external {
  padding: 0 10px 0 50px;
  text-align: left;
}
#kdt .btn-external::after {
  content: '';
  display: block;
  width: 32px;
  height: 32px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_window.svg) no-repeat center #fff;
  background-size: 15px 13px;
  position: absolute;
  right: 22px;
  top: calc(50% - 16px);
  border-radius: 16px;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
#kdt .btn-external:hover::after {
  -webkit-transform: translateX(2px);
      -ms-transform: translateX(2px);
          transform: translateX(2px);
}
#kdt .btn-internal {
  padding: 0 55px 0 40px;
  text-align: left;
}
#kdt .btn-internal::after {
  content: '';
  display: block;
  width: 32px;
  height: 32px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_arrow.svg) no-repeat center #fff;
  background-size: 12px 6px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  position: absolute;
  right: 22px;
  top: calc(50% - 16px);
  border-radius: 16px;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
#kdt .btn-internal:hover::after {
  -webkit-transform: rotate(90deg) translateY(-2px);
      -ms-transform: rotate(90deg) translateY(-2px);
          transform: rotate(90deg) translateY(-2px);
}
#kdt .wrapper {
  padding-left: 4.5454%;
  padding-right: 4.5454%;
}
#kdt .inner {
  margin: 0 auto;
  max-width: 1000px;
}

/* Animation
------------------------------------ */
#kdt .js-anim.fadeIn {
  opacity: 0;
}
#kdt .js-anim.fadeIn.is-show {
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  -webkit-animation-duration: .8s;
          animation-duration: .8s;
  -webkit-animation-timing-function: ease-in;
          animation-timing-function: ease-in;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#kdt .js-anim.fadeLeft {
  opacity: 0;
  -webkit-transform: translateX(-50px);
      -ms-transform: translateX(-50px);
          transform: translateX(-50px);
}
#kdt .js-anim.fadeLeft.is-show {
  -webkit-animation-name: fadeLeft;
          animation-name: fadeLeft;
  -webkit-animation-duration: .5s;
          animation-duration: .5s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#kdt .js-anim.fadeRight {
  opacity: 0;
  -webkit-transform: translateX(50px);
      -ms-transform: translateX(50px);
          transform: translateX(50px);
}
#kdt .js-anim.fadeRight.is-show {
  -webkit-animation-name: fadeRight;
          animation-name: fadeRight;
  -webkit-animation-duration: .5s;
          animation-duration: .5s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#kdt .js-anim.fadeUp {
  opacity: 0;
  -webkit-transform: translateY(50px);
      -ms-transform: translateY(50px);
          transform: translateY(50px);
}
#kdt .js-anim.fadeUp.is-show {
  -webkit-animation-name: fadeUp;
          animation-name: fadeUp;
  -webkit-animation-duration: .7s;
          animation-duration: .7s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#kdt .js-anim.bounceUp {
  opacity: 0;
  -webkit-transform: translateY(3vw);
      -ms-transform: translateY(3vw);
          transform: translateY(3vw);
}
#kdt .js-anim.bounceUp.is-show {
  -webkit-animation-delay: .2s;
          animation-delay: .2s;
  -webkit-animation-name: bounceUp;
          animation-name: bounceUp;
  -webkit-animation-duration: .3s;
          animation-duration: .3s;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#kdt .js-anim.delay-01.is-show {
  -webkit-animation-delay: .7s;
          animation-delay: .7s;
}

@-webkit-keyframes bounceUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
}
  15% {
    opacity: 1;
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
 }
}

@keyframes bounceUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
}
  15% {
    opacity: 1;
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
 }
}
@-webkit-keyframes fadeIn {
  0% {
     opacity: 0;
  }
  100% {
     opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
     opacity: 0;
  }
  100% {
     opacity: 1;
  }
}
@-webkit-keyframes fadeLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes fadeLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes fadeRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes fadeRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}


/* =============================================
  トップページ
============================================= */
#kdt .section_ttl {
  margin: 0 auto 82px;
  text-align: center;
}
#kdt .kv-block {
  text-align: center;
  border-top: 1px solid #e1e8ea;
}
#kdt .kv-block_inner {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  aspect-ratio: 1100 / 545;
}
#kdt img {
  width: 100%;
  height: auto;
}
#kdt .kv_img {
  position: absolute;
  left: 53.0909%; /* 584px */
  width: 44%; /* 484px */
  margin: 0 auto;
  /* padding: 25px 0 15px; */
  padding: 2.27272% 0 1.3636%;
  z-index: 1;
}
#kdt .kv_ttl {
  position: absolute;
  left: 5.4545%;
  top: 24.7706%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 42.7272%; /* 470px */
  margin: 0 auto;
}
#kdt .kv_ttl_car {
  width: 25.9574%;
}
#kdt .kv_ttl_car img {
  display: block;
  width: 100%;
  -webkit-transform: translateX(580px);
  -ms-transform: translateX(580px);
  transform: translateX(580px);
  opacity: 0;
}
#kdt .kv_ttl_txt {
  display: block;
  width: 70.8074%;
  -webkit-transform: translateY(100px);
  -ms-transform: translateY(100px);
  transform: translateY(100px);
  opacity: 0;
}
#kdt .kv-block.show .kv_ttl_car img {
  -webkit-animation-name: carMove;
  animation-name: carMove;
  -webkit-animation-delay: .6s;
  animation-delay: .6s;
  -webkit-animation-duration: .8s;
  animation-duration: .8s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  width: 100%; /* 122px */
}
#kdt .kv_note-01 {
  position: absolute;
  left: 5px;
  bottom: 5px;
  opacity: 0;
}
#kdt .kv_note-02 {
  position: absolute;
  right: 5px;
  bottom: 5px;
  opacity: 0;
}
#kdt .kv-block.show .kv_note-01,
#kdt .kv-block.show .kv_note-02 {
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  -webkit-animation-delay: 1.8s;
          animation-delay: 1.8s;
  -webkit-animation-duration: 1.8s;
          animation-duration: 1.8s;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
/*
#kdt .kv-block.show .kv_img {
  animation-name: fadeIn;
  animation-delay: 2.8s;
  animation-duration: 1.8s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}
*/
#kdt .kv-block.show .kv_ttl_txt {
  -webkit-animation-name: kvTxtUp;
          animation-name: kvTxtUp;
  -webkit-animation-delay: 1.3s;
          animation-delay: 1.3s;
  -webkit-animation-duration: .3s;
          animation-duration: .3s;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#kdt .kv_txt {
  position: absolute;
  top: 54.3119%; /* 296px */
  left: 8.3636%; /* 92px */
  width: 37.364%; /* 410px */
  opacity: 0;
}
#kdt .kv-block.show .kv_txt {
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  -webkit-animation-delay: 1.8s;
          animation-delay: 1.8s;
  -webkit-animation-duration: 1.8s;
          animation-duration: 1.8s;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
@-webkit-keyframes kvTxtUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
}
  15% {
    opacity: 1;
    -webkit-transform: translateY(-5px) scale(1, 1.05);
            transform: translateY(-5px) scale(1, 1.05);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1,1);
            transform: translateY(0) scale(1,1);
 }
}
@keyframes kvTxtUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
}
  15% {
    opacity: 1;
    -webkit-transform: translateY(-5px) scale(1, 1.05);
            transform: translateY(-5px) scale(1, 1.05);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1,1);
            transform: translateY(0) scale(1,1);
 }
}
@-webkit-keyframes carMove {
  0% {
     opacity: 0;
     -webkit-transform: translateX(580px) skew(-45deg, 0deg);
             transform: translateX(580px) skew(-45deg, 0deg);
  }
  60% {
     opacity: 1;
     -webkit-transform: translateX(0) skew(0);
             transform: translateX(0) skew(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) skew(0);
            transform: translateX(0) skew(0);
 }
}
@keyframes carMove {
  0% {
     opacity: 0;
     -webkit-transform: translateX(580px) skew(-45deg, 0deg);
             transform: translateX(580px) skew(-45deg, 0deg);
  }
  60% {
     opacity: 1;
     -webkit-transform: translateX(0) skew(0);
             transform: translateX(0) skew(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) skew(0);
            transform: translateX(0) skew(0);
 }
}


/* nav
------------------------------------ */
#kdt .nav-block {
  position: relative;
  height: 60px;
}
#kdt .nav_anchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 60px;
  margin: 0;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  z-index: 100;
  border-bottom: 1px solid var(--c-sub1);
}
#kdt .nav_anchor.fixed {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
}
#kdt .nav_anchor_link {
  height: 60px;
}
#kdt .nav_anchor_link > a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  padding: 0 38px 7px;
}
#kdt .nav_anchor_link > a::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #fff;
  opacity: 0;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}
#kdt .nav_anchor_link > a::after {
  content: '';
  display: block;
  position: absolute;
  left: calc( 50% - .3px );
  bottom: 9px;
  width: 7px;
  height: 4px;
  background-size: contain;
  background-color: #fff;
  -webkit-mask-image: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_arrow.svg);
  mask-image: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_arrow.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  overflow: hidden;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
#kdt .nav_anchor_link > a:hover::before {
  opacity: .2;
}
#kdt .nav_anchor_link > a:hover::after {
  -webkit-transform: rotate(180deg) translateY(-2px);
      -ms-transform: rotate(180deg) translateY(-2px);
          transform: rotate(180deg) translateY(-2px);
}
#kdt .nav_anchor-plan {
  width: 82px;
}
#kdt .nav_anchor-available {
  width: 128px;
}
#kdt .nav_anchor-usage {
  width: 90px;
}
#kdt .nav_anchor-faq {
  width: 160px;
}
#kdt .anchor-available {
  position: absolute;
  right: 0;
  bottom: -80px;
  color: var(--c-main1);
  font-weight: bold;
}
#kdt .anchor-available > a {
  display: block;
  color: inherit;
  text-decoration: none;
}
#kdt .anchor-available > a:hover {
  opacity: .7;
}
#kdt .anchor-available_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 65px;
  padding: 0 20px;
  margin: 0;
  background: #fff;
  border: 2px solid var(--c-main1);
  border-right: 0;
  border-radius: 33px 0 0 33px;
}
#kdt .anchor-available_ttl {
  position: relative;
  width: 7em;
  margin-left: 34px;
  padding: 20px 0;
  font-size: 17px;
  line-height: 1.25;
  text-align: center;
}
#kdt .anchor-available_ttl::before {
  content: '';
  display: block;
  position: absolute;
  left: -35px;
  top: calc( 50% - 17px );
  width: 34px;
  height: 37px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_check.png) no-repeat center;
  background-size: contain;
}
#kdt .anchor-available_ttl::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 8px;
  left: calc( 50% - 3px );
  width: 7px;
  height: 4px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_arrow.svg) no-repeat center;
  background-size: contain;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;;
}
#kdt .anchor-available > a:hover .anchor-available_ttl::after {
  -webkit-transform: rotate(180deg) translateY(-2px);
      -ms-transform: rotate(180deg) translateY(-2px);
          transform: rotate(180deg) translateY(-2px);
}
#kdt .anchor-available_txt {
  padding-left: 23px;
  margin: 0;
  font-size: 13px;
  line-height: 1.35;
}

/* about
------------------------------------ */
#kdt .about-block {
  background: var(--c-sub1);
  padding-top: 140px;
  padding-bottom: 100px;
}
#kdt .about_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding: 90px 0 125px;
  background: #fff;
  border-radius: var(--br-md);
}
#kdt .about_ttl {
  width: 38%;
  margin: 0;
  text-align: center;
}
#kdt .about_txt {
  width: 40%;
}
#kdt .about_otosan {
  position: absolute;
  width: 214px;
  right: 27px;
  bottom: 5px;
}

/* plan
------------------------------------ */
#kdt .plan-block {
  padding-top: 11%;
  padding-bottom: 11%;
}
#kdt .plan_ttl {
  width: 398px;
}
#kdt .plan_list-container {
  padding: 10px;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  border-radius: calc( var(--br-md) + 10px );
}
#kdt .plan_list {
  margin: 0;
  background: #fff;
  border-radius: var(--br-md);
}
#kdt .plan_list_item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 18px 0;
}
#kdt .plan_list_item:nth-child(n+2)::before {
  content: '';
  display: block;
  position: absolute;
  left: 28px;
  right: 28px;
  top: 0;
  height: 1px;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
}
.plan_list_item_inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 70%;
}
#kdt .plan_list_item_icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 178px;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 0 auto;
  padding: 0;
  background: var(--c-sub1);
  border-radius: 50%;
  text-align: center;
}
#kdt .plan_list_item_icon img {
  width: 62.335%;
}
#kdt .plan_list_item_copy {
  width: 100%;
  padding: 5px 30px;
  color: #fff;
  border-radius: 32px 0 0 32px;
  font-size: 31px;
  font-weight: bold;
  text-align: center;
}
#kdt .plan_list_item01 .plan_list_item_copy {
  background: var(--c-main1);
}
#kdt .plan_list_item02 .plan_list_item_copy {
  background-color: #299B80;
}
#kdt .plan_list_item03 .plan_list_item_copy {
  background-color: var(--c-main2);
}
#kdt .plan_list_item_name {
  width: 16.5rem;
  font-size: 34px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  letter-spacing: 0;
}
#kdt .plan_list_item01 .plan_list_item_name {
  color: var(--c-main1);
}
#kdt .plan_list_item02 .plan_list_item_name {
  color: #299B80;
}
#kdt .plan_list_item03 .plan_list_item_name {
  color: var(--c-main2);
}
#kdt .plan_list_item_name .num {
  font-size: 58px;
}
#kdt .plan_list_item_price {
  width: calc( 100% - 16.5rem );
  padding-right: 7.5%;
  font-size: 27px;
  font-weight: bold;
  text-align: right;
  letter-spacing: 0;
}
#kdt .plan_list_item_price .num {
  font-size: 62px;
}
#kdt .plan_list_item_balloon {
  position: absolute;
  right: 93px;
  top: 0;
  margin-top: -74px;
  color: var(--c-main1);
  background: #fff;
  border-radius: 30px;
  padding: 0px 15px;
  font-size: 25px;
  font-weight: bold;
  border: 4px solid var(--c-main1);
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0;
}
#kdt .plan_list_item_balloon_inner {
  position: relative;
}
#kdt .plan_list_item_balloon_inner::before {
  content: '';
  display: block;
  position: absolute;
  bottom: -15px;
  left: calc( 50% - 8px );
  border-top: 15px solid var(--c-main1);
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
}
#kdt .plan_list_item_balloon_inner::after {
  content: '';
  display: block;
  position: absolute;
  bottom: -7px;
  left: calc( 50% - 3px );
  border-top: 7px solid #fff;
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
}
#kdt .plan_list_item_balloon .num {
  font-size: 40px;
}
#kdt .plan_txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 46px auto 0;
  width: 767px;
}
#kdt .plan_otosan {
  width: 85px;
  height: 152px;
}
#kdt .plan_txt_inner {
  width: calc( 100% - 85px );
  padding-left: 38px;
}
#kdt .plan_txt_p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}
#kdt .plan_txt_note {
  margin-top: 25px;
}

/* seane
------------------------------------ */
#kdt .scene-block {
  padding-top: 76px;
  padding-bottom: 160px;
  background: var(--c-sub1);
}
#kdt .scene_ttl {
  position: relative;
  width: 422px;
  padding: 15px;
  font-size: 34px;
  font-weight: bolder;
  text-align: center;
  color: #fff;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  border-radius: 0 var(--br-md) 0 0;
}
#kdt .scene_ttl::after {
  content: '';
  display: block;
  position: absolute;
  right: -100px;
  top: calc(50% - 15px);
  width: 73px;
  height: 30px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/scene_ttl_en.png) no-repeat center;
  background-size: contain;
}
#kdt .scene_list-container1 {
  position: relative;
  margin-top: -8px;
}
#kdt .scene_list-container1::before,
#kdt .scene_list-container1::after {
  content: '';
  display: block;
  position: absolute;
}
#kdt .scene_list-container1::before {
  top: 0;
  right: 0;
  width: calc( 100% + ( 50vw - 50% ) );
  min-width: 811px;
  height: 95px;
  border-radius: 0 95px 0 0;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
}
#kdt .scene_list-container1::after {
  top: 10px;
  right: 10px;
  width: calc( 100% + ( 50vw - 50% ) - 10px );
  min-width: 801px;
  height: 85px;
  border-radius: 0 85px 0 0;
  background: var(--c-sub1);
}
#kdt .scene_list-container2 {
  position: relative;
}
#kdt .scene_list-container2::before,
#kdt .scene_list-container2::after {
  content: '';
  display: block;
  position: absolute;
}
#kdt .scene_list-container2::before {
  bottom: 0;
  left: 0;
  width: calc( 100% + ( 50vw - 50% ) );
  min-width: 811px;
  height: 95px;
  border-radius: 0 0 0 95px;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
}
#kdt .scene_list-container2::after {
  bottom: 10px;
  left: 10px;
  width: calc( 100% + ( 50vw - 50% ) - 10px );
  min-width: 801px;
  height: 86px;
  border-radius: 0 0 0 110px;
  background: var(--c-sub1);
}
#kdt .scene_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  z-index: 1;
  padding: 100px 0;
}
#kdt .scene_list_item {
  width: 34.2%;
  margin: 0 45px;
}
#kdt .scene_list_item:nth-child(n+3) {
  margin-top: 50px;
  position: relative;
  left: 80px;
}
#kdt .scene_list_item_img {
  position: relative;
  height: auto;
  aspect-ratio: 1/1;
  margin: 0 auto -24%;
}
#kdt .scene_list_item_img::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: calc( 50% - 45.614% );
  width: 91.228%;
  height: auto;
  aspect-ratio: 1/1;
  background: #fff;
  border-radius: 50%;
}
#kdt .scene_list_item_img img {
  position: absolute;
  max-width: none;
}
#kdt .scene_list_item_img-01 {
  top: 8.5%;
  left: 2.9%;
  width: 99.125%;
}
#kdt .scene_list_item_img-02 {
  top: 15.2%;
  left: -3.2%;
  width: 108.189%;
}
#kdt .scene_list_item_img-03 {
  top: 6.2%;
  left: 3.8%;
  width: 81%;
}
#kdt .scene_list_item_img-04 {
  top: -4%;
  left: 2.3%;
  width: 97.1%;
}
#kdt .scene_list_item_ttl {
  position: relative;
  font-size: 22px;
  font-weight: bold;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.5;
}
#kdt .scene_list_item_txt {
  margin: 15px 0 0;
  font-size: 15px;
}

/* available
------------------------------------ */
#kdt .available-block {
  position: relative;
  z-index: 1;
  margin-top: -50px;
  padding-top: 110px;
  padding-bottom: 110px;
  color: #fff;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  border-radius: var(--br-lg) 0 0 var(--br-lg);
}
#kdt .available_ttl {
  width: 412px;
}
#kdt .available_device,
#kdt .available_vehicle {
  color: var(--c-black);
  background: #fff;
  border-radius: var(--br-md);
  text-align: center;
}
#kdt .available_device {
  padding: 52px 60px;
  margin-bottom: 100px;
}
#kdt .available_device_ttl {
  display: inline-block;
  margin: 0 auto 35px;
  font-size: 33px;
  font-weight: bold;
  text-align: center;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.5;
}
#kdt .available_device_list {
  /*
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  */
  margin: 0;
  padding: 0;
  text-align: center;
}
#kdt .available_device_list li {
  /*
  width: calc((100% - 80px) / 3);
  margin-right: 40px;
  */
  font-size: 18px;
}
#kdt .available_device_list li:nth-child(3n) {
  margin-right: 0;
}
#kdt .available_vehicle {
  padding: 40px 60px 60px;
}
#kdt .available_vehicle_set {
  position: relative;
  max-width: 650px;
  margin: 0 auto;
  padding: 0;
  text-align: left;
}
#kdt .available_vehicle_set_maker::after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
}
#kdt .available_vehicle_set_maker {
  position: relative;
  color: var(--c-main2);
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  padding: 25px 0;
  margin: 0;
  text-decoration: underline;
  cursor: pointer;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}
#kdt .available_vehicle_set_maker:hover {
  opacity: .7;
}
#kdt .available_vehicle_set_maker .icon_toggle {
  position: absolute;
  right: 22px;
  top: calc(50% - 6px);
  width: 12px;
  height: 12px;
}
#kdt .available_vehicle_set_maker .icon_toggle::before,
#kdt .available_vehicle_set_maker .icon_toggle::after {
  display: block;
  content: '';
  position: absolute;
  background: var(--c-main2);
}
#kdt .available_vehicle_set_maker .icon_toggle::before {
  top: calc(50% - 1px);
  width: 12px;
  height: 2px;
}
#kdt .available_vehicle_set_maker .icon_toggle::after {
  width: 2px;
  height: 12px;
  left: calc(50% - 1px);
  opacity: 1;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}
#kdt .available_vehicle_set_maker.is-open .icon_toggle::after {
  -webkit-transform: translateY(12px);
      -ms-transform: translateY(12px);
          transform: translateY(12px);
  opacity: 0;
} 
#kdt .available_vehicle_set_model {
  display: none;
  margin: 0;
  padding: 20px 0 30px;
}
#kdt .available_vehicle_list {
  padding: 20px 40px;
  background: var(--c-sub1);
  border-radius: var(--br-md);
}
#kdt .available_vehicle_list_item {
  position: relative;
  line-height: 1.5;
  border-bottom: 1px solid #ddd;
}
#kdt .available_vehicle_list_item a {
  display: inline-block;
  padding: 25px 0;
  
}
#kdt .available_vehicle_list_item a:hover {
  opacity: .7;
}
#kdt .available_vehicle_list_item a::before {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: calc( 50% - 22px );
  width: 45px;
  height: 45px;
  background: #fff;
  border-radius: 50%;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}
#kdt .available_vehicle_list_item a::after {
  content: '';
  display: block;
  position: absolute;
  right: 12px;
  top: calc( 50% - 7px );
  width: 19px;
  height: 17px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_window.svg) no-repeat center transparent;
  background-size: contain;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}
#kdt .available_vehicle_list_item a:hover::before {
  background-color: var(--c-main2); 
}  
#kdt .available_vehicle_list_item a:hover::after {
  background: #fff;
  -webkit-mask-image: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_window.svg);
  mask-image: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_window.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
}
#kdt .available_txt {
  text-align: center;
  font-size: 16px;
  margin-bottom: 30px;
}

/* usage
------------------------------------ */
#kdt .usage-block {
  position: relative;
  z-index: 0;
  padding-top: 110px;
  padding-bottom: 170px;
  background: var(--c-sub1);
}
#kdt .usage-block::before {
  content: '';
  display: block;
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  width: 100%;
  height: 50px;
  background: var(--c-sub1);
}
#kdt .usage_ttl-container {
  position: relative;
}
#kdt .usage_ttl {
  width: 280px;
}
#kdt .usage_otosan {
  position: absolute;
  left: 670px;
  bottom: 0px;
  width: 75px;
}
#kdt .usage_flow-container {
  position: relative;
}
#kdt .usage_flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: number 0;
}
#kdt .usage_flow_item {
  position: relative;
  width: calc( (100% - 90px) / 4 );
  margin-right: 30px;
  background: #fff;
  padding: 105px 20px 20px;
  border-radius: 120px var(--br-md) var(--br-md) var(--br-md);
}
#kdt .usage_flow_item:last-child {
  margin-right: 0;
}
#kdt .usage_flow_item::before{
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 29.8901%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  color: #fff;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0;
}
#kdt .usage_flow_item {
  margin-right: 30px;
}
#kdt .usage_flow_item:last-child {
  margin-right: 0;
}
#kdt .usage_flow_item +.usage_flow_item:after{
  content: '';
  display: block;
  position: absolute;
  top: calc( 50% - 7px );
  left: -29px;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  width: 14px;
  height: 33px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/usage_arrow.svg) no-repeat center transparent;
  background-size: contain;
}
#kdt .usage_flow_item_ttl {
  margin-bottom: 15px;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}
#kdt .usage_flow_item_txt {
  margin: 0;
  font-size: 14px;
}
#kdt .usage_flow_item_img {
  position: absolute;
  right: 20px;
  top: 25px;
  width: 56%;
  text-align: right;
}
#kdt .usage_flow_item_img img {
  max-width: 100%;
}
#kdt .usage_flow_item_img-01 {
  width: 34px;
}
#kdt .usage_flow_item_img-02 {
  width: 126px;
}
#kdt .usage_flow_item_img-03 {
  width: 108px;
}
#kdt .usage_flow_item_img-04 {
  width: 103px;
}
#kdt .usage_flow_item_note {
  font-size: 11px;
}
#kdt .usage_btn {
  margin-top: 60px;
}

/* faq
------------------------------------ */
#kdt .faq-block {
  position: relative;
  z-index: 1;
  margin-top: -50px;
  padding-top: 110px;
  padding-bottom: 110px;
  background: #fff;
  border-radius: var(--br-lg) 0 0 var(--br-lg);
}
#kdt .faq_ttl {
  width: 522px;
}
#kdt .faq_btn {
  position: relative;
  margin-top: 30px;
  padding-top: 96px;
}
#kdt .faq_btn .faq_btn_otosan {
  position: absolute;
  left: calc( 50% - 35px );
  top: 0;
  width: 69px;
  height: 96px;
}

/* link
------------------------------------ */
#kdt .link-block {
  position: relative;
  padding-top: 110px;
  padding-bottom: 60px;
  background: #F0F3F4;
}
#kdt .link-block::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: -50px;
  width: 100%;
  height: 50px;
  background: #F0F3F4;
}
#kdt .link-block_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#kdt .link_section {
  width: 47.5%;
  margin-right: 5%;
  margin-bottom: 50px;
  padding: 6% 4.8%;
  background: #fff;
  border-radius: var(--br-md);
}
#kdt .link_section:nth-child(2n) {
  margin-right: 0;
}
#kdt .link_section:nth-child(n+3) {
  margin-top: 0;
}
#kdt .link_section_ttl {
  margin-bottom: 38px;
  text-align: center;
}
#kdt .link_section_ttl img {
  max-width: 100%;
}
#kdt .link_section_ttl-service {
  width: 200px;
}
#kdt .link_section_ttl-important {
  width: 194px;
}
#kdt .link_section_ttl-maintenance {
  width: 360px;
}
#kdt .link_section_ttl-inquiry {
  width: 210px;
}
#kdt .link_section_txt {
  font-size: 15px;
  margin-top: 35px;
}
#kdt .link_section_btn {
  margin-top: 35px;
}
#kdt .link_section_note {
  font-size: 11px;
}
#kdt dl.link_section_note dt {
  width: 2em;
}
#kdt .link_section_inquiry {
  position: relative;
  margin-top: 25px;
  margin-bottom: -20px;
  padding-top: 15px;
  text-align: center;
}
#kdt .link_section_inquiry::before {
  content: '';
  display: block;
  position: absolute;
  left: -25px;
  top: 0;
  right: -25px;
  height: 1px;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
}
#kdt .link_section_inquiry_ttl {
  color: var(--c-main2);
  font-size: 15px;
  font-weight: bold;
}
#kdt .link_section_inquiry_tel {
  margin: 0;
  letter-spacing: 0;
  font-size: 42px;
  font-weight: bold;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.5;
}
#kdt .link_section_inquiry_tel a {
  text-decoration: none;
  opacity: 1;
}
#kdt .link_section_inquiry_time {
  margin: 0;
  color: var(--c-main2);
  background: var(--c-sub1);
  line-height: 1.3;
}
#kdt .link_note {
  margin-top: 10px;
  text-align: center;
}



/* =============================================
  下層ページ
============================================= */
#kdt .content-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 175px;
  margin-top: 18px;
  text-align: center;
  border-top: 15px solid;
  border-bottom: 15px solid;
  -o-border-image: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  border-image: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  border-image: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  border-image-slice: 1; 
}
#kdt .content-header_logo {
  position: absolute;
  left: calc(50% - ( 270px / 2 ) );
  top: -34px;
  width: 290px;
  height: 51px;
  padding: 0 10px;
  background: #fff;
}
#kdt .content-header_ttl {
  line-height: 1;
}
#kdt .content-footer {
  padding: 40px;
  background: #F0F3F4;
}
#kdt .block_ttl {
  margin: 100px auto 40px;
  text-align: center;
}
#kdt .box {
  background: #fff;
  padding: 60px 75px;
  border-radius: var(--br-md);
}

/* spguide
------------------------------------ */
#kdt.page-spguide .content-header_ttl {
  width: 518px;
}
#kdt.page-spguide .document-block {
  background: var(--c-sub1);
  padding-top: 100px;
  padding-bottom: 100px;
}
#kdt.page-spguide .document-block_inner {
  margin: 0 auto;
  padding: 25px 100px;
  background: #fff;
  border-radius: var(--br-md);
}
#kdt.page-spguide .document_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#kdt.page-spguide .document_list_item {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-right: 100px;
  padding: 20px 0;
  font-size: 18px;
  border-bottom: 1px solid;
  -o-border-image: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  border-image: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  border-image: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  border-image-slice: 1; 
}
#kdt.page-spguide .document_list_item:nth-child(2n) {
  margin-right: 0;
}
#kdt.page-spguide .document_list_item:nth-child(1),
#kdt.page-spguide .document_list_item:nth-child(2) {
  border-bottom: 0;
}
#kdt.page-spguide .document_list_item a {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  padding: 20px 80px 20px 0;
}
#kdt.page-spguide .document_list_item_type {
  color: var(--c-main2);
  background: var(--c-sub1);
  border-radius: 15px;
  min-width: 70px;
  padding: 2px 10px;
  font-size: 15px;
  text-align: center;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
}
#kdt.page-spguide .document_list_item:hover  .document_list_item_type {
  color: #fff;
  background: var(--c-main2);
}
#kdt.page-spguide .adobe-block {
  padding-top: 60px;
  padding-bottom: 60px;
  text-align: center;
  font-size: 15px;
}
#kdt.page-spguide .adobe_link_img {
  width: 236px;
}

/* maintenance
------------------------------------ */
#kdt.page-maintenance .content-header_ttl {
  width: 422px;
}
#kdt.page-maintenance .failure_ttl {
  width: 160px;
}
#kdt.page-maintenance .failure_info {
  font-size: 16px;
}
#kdt.page-maintenance .maintenance_ttl {
  width: 248px;
}
#kdt.page-maintenance .maintenance-main {
  padding-bottom: 110px;
  background: var(--c-sub1);
  overflow: hidden;
}
#kdt.page-maintenance .maintenance_info {
  font-size: 16px;
  padding-top: 60px;
  padding-bottom: 60px;
}
#kdt.page-maintenance .failure_info_txt {
  margin: 0;
}
#kdt.page-maintenance .info_txt {
  margin: 0;
}
#kdt.page-maintenance .info_txt-center {
  margin: 0;
  text-align: center;
}
#kdt.page-maintenance .maintenance_info_header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 20px;
  padding-bottom: 28px;
}
#kdt.page-maintenance .maintenance_info_txt + .maintenance_info_header {
  margin-top: 5em;
  padding-top: 5em;
  border-top: 1px solid;
  -o-border-image: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  border-image: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  border-image: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  border-image-slice: 1; 
}
#kdt.page-maintenance .maintenance_info_header_date {
  min-width: 160px;
  display: inline-block;
  line-height: 1;
  padding: 7px 20px;
  letter-spacing: 0;
  color: #fff;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);;
  font-size: 15px;
  text-align: center;
  border-radius: 15px;
}
#kdt.page-maintenance .maintenance_info_header_ttl {
  width: calc(100% - 180px);
  font-size: 20px;
  font-weight: bold;
}
#kdt.page-maintenance .maintenance_info_cont {
  padding-bottom: 40px;
}
#kdt.page-maintenance .maintenance_info_cont dt {
  color: var(--c-main2);
  margin: 50px 0 15px;
  font-size: 14px;
  font-weight: bold;
}
#kdt.page-maintenance .maintenance_info_cont dd {
  margin: 0;
  padding: 0;
}
#kdt.page-maintenance .maintenance_info_txt p {
  margin-bottom: 0;
}
#kdt.page-maintenance .maintenance_info_txt p + p {
  margin-top: 1em; 
}
#kdt.page-maintenance .info-block {
  padding-top: 100px;
  padding-bottom: 100px;
  word-break: break-word;
}
#kdt.page-maintenance .info-block a {
  color: #0B5BCE;
}
#kdt.page-maintenance .info_dl {
  margin: 0;
}
#kdt.page-maintenance .info_dl dt {
  margin-top: 25px;
}
#kdt.page-maintenance .info_dl dd {
  margin: 0;
  padding: 0;
}

/* faq
------------------------------------ */
#kdt.page-faq .content-header_ttl {
  width: 366px;
}
#kdt.page-faq .category-block {
  background: var(--c-sub1);
  padding: 40px 0;
}
#kdt.page-faq .category_ttl {
  width: 249px;
  text-align: center;
  margin: 0 auto 25px;
}
#kdt.page-faq .category_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#kdt.page-faq .category_list_anchor {
  width: calc( (100% - 20px) / 3 );
  margin-right: 10px;
}
#kdt.page-faq .category_list_anchor:nth-child(3n) {
  margin-right: 0;
}
#kdt.page-faq .category_list_anchor:nth-child(n+4) {
  margin-top: 8px;
}
#kdt.page-faq .category_list_anchor a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 40px;
  padding: 5px 40px 5px 15px;
  background: #fff;
  border-radius: 20px;
  font-size: 13px;
}
#kdt.page-faq .category_list_anchor a:hover {
  opacity: .7;
}
#kdt.page-faq .category_list_anchor a::after {
  content: '';
  display: block;
  position: absolute;
  right: 20px;
  top: calc(50% - 2px);
  width: 6px;
  height: 4px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_arrow.svg) no-repeat center;
  background-size: contain;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}
#kdt.page-faq .category_list_anchor a:hover::after {
  -webkit-transform: rotate(180deg) translateY(-2px);
      -ms-transform: rotate(180deg) translateY(-2px);
          transform: rotate(180deg) translateY(-2px);
}
#kdt.page-faq .faq-main {
  padding-bottom: 110px;
}
#kdt.page-faq .faq-content_ttl {
  margin-top: 100px;
  font-size: 36px;
  text-align: center;
  font-weight: bold;
}
#kdt.page-faq .faq-content_txt {
  margin-top: 25px;
}
#kdt.page-faq .faq_ttl_inner {
  display: inline-block;
  background: -o-linear-gradient(left, var(--c-main1) 0%, var(--c-main2) 100%);
  background: -webkit-gradient(linear, left top, right top, from(var(--c-main1)), to(var(--c-main2)));
  background: linear-gradient(to right, var(--c-main1) 0%, var(--c-main2) 100%);
  color: var(--c-main2);
  -webkit-background-clip: text;
  background-clip: text; 
  -webkit-text-fill-color: transparent;
}
#kdt .faq_set {
  margin: 25px 0 0;
  border: 2px solid var(--c-main2);
  border-radius: var(--br-md);
}
#kdt .faq_set_q {
  position: relative;
  padding: 16px 58px 16px 28px;
  color: var(--c-main2);
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
}
#kdt .faq_set_q::before {
  display: block;
  content: '';
  width: 32px;
  height: 40px;
  position: absolute;
  left: -9px;
  top: -14px;
  background: url(/mobile/set/data/service/kuruma-data-teigaku/img/shared/icon_q.png) no-repeat center #Fff;
  background-size: 22px auto;
}
#kdt .faq_set_q .icon_toggle {
  position: absolute;
  right: 22px;
  top: calc(50% - 6px);
  width: 12px;
  height: 12px;
}
#kdt .faq_set_q .icon_toggle::before,
#kdt .faq_set_q .icon_toggle::after {
  display: block;
  content: '';
  position: absolute;
  background: var(--c-main2);
}
#kdt .faq_set_q .icon_toggle::before {
  top: calc(50% - 1px);
  width: 12px;
  height: 2px;
}
#kdt .faq_set_q .icon_toggle::after {
  width: 2px;
  height: 12px;
  left: calc(50% - 1px);
  opacity: 1;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}
#kdt .faq_set_q.is-open .icon_toggle::after {
  -webkit-transform: translateY(12px);
      -ms-transform: translateY(12px);
          transform: translateY(12px);
  opacity: 0;
} 
#kdt .faq_set_a {
  display: none;
  margin: 0;
  padding: 20px 28px;
  background: var(--c-sub2);
  border-radius: 0 0 var(--br-md) var(--br-md);
  font-size: 16px;
} 
#kdt .faq_set_a p {
  margin: 0;
}
#kdt .faq_set_q.open .icon_toggle::after {
  -webkit-transform: translateY(-12px);
      -ms-transform: translateY(-12px);
          transform: translateY(-12px);
  opacity: 0;
}
#kdt .faq_set_a p {
  margin-bottom: 1.5em;
}
#kdt .faq_set_a ul,
#kdt .faq_set_a ol,
#kdt .faq_set_a dl {
  margin-bottom: 1.5em;
}
#kdt .faq_set_a li {
  text-indent: -.5em;
  margin-left: .5em;
  margin-bottom: 0.5em;
}
#kdt .faq_set_a dd {
  margin: 0;
}
#kdt .faq_set_a *:last-child {
  margin-bottom: 0;
}
