@charset "UTF-8";
/*--------------------------------------------------------------
Project
--------------------------------------------------------------*/
.top_main {
  margin-top: 8rem;
  position: relative;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .top_main {
    margin-top: 6.1rem;
  }
}
.top_main .mv {
  height: calc(100vh - 8rem);
  overflow: hidden;
}
.top_main .img {
  position: absolute;
  width: 100%;
  height: 100%;
  transition: -webkit-clip-path 0.5s ease;
  transition: clip-path 0.5s ease;
  transition: clip-path 0.5s ease, -webkit-clip-path 0.5s ease;
}
.top_main .img > img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top_main .img:hover {
  opacity: 1;
}
.top_main .img.active {
  z-index: 2;
}
.top_main .img.a {
  -webkit-clip-path: polygon(0 0, 63% 0, 37% 100%, 0 100%);
          clip-path: polygon(0 0, 63% 0, 37% 100%, 0 100%);
}
@media screen and (min-width: 768px) {
  .top_main .img.a:hover {
    -webkit-clip-path: polygon(0 0, 93% 0, 67% 100%, 0 100%);
            clip-path: polygon(0 0, 93% 0, 67% 100%, 0 100%);
  }
}
@media screen and (max-width: 767px) {
  .top_main .img.a {
    -webkit-clip-path: polygon(0 0, 200% 0%, 0% 65%, 0 100%);
            clip-path: polygon(0 0, 200% 0%, 0% 65%, 0 100%);
  }
}
.top_main .img.b {
  -webkit-clip-path: polygon(63% 0, 100% 0, 100% 100%, 37% 100%);
          clip-path: polygon(63% 0, 100% 0, 100% 100%, 37% 100%);
}
@media screen and (min-width: 768px) {
  .top_main .img.b:hover {
    -webkit-clip-path: polygon(33% 0, 100% 0, 100% 100%, 7% 100%);
            clip-path: polygon(33% 0, 100% 0, 100% 100%, 7% 100%);
  }
}
@media screen and (max-width: 767px) {
  .top_main .img.b {
    -webkit-clip-path: polygon(200% 0, 100% 0, 100% 100%, -110% 100%);
            clip-path: polygon(200% 0, 100% 0, 100% 100%, -110% 100%);
  }
}
.top_main .ttl {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  text-align: center;
  font-size: 2.9rem;
  font-weight: bold;
  font-style: italic;
  z-index: 1;
  font-size: 2.8rem;
  line-height: 1.34;
}
@media screen and (max-width: 767px) {
  .top_main .ttl {
    font-size: 1.8rem;
  }
}
.top_main .ttl:before, .top_main .ttl:after {
  content: "";
  background: url(../img/quote_left01.svg) no-repeat 50%/contain;
  width: 1.8275em;
  height: 2.3448em;
  position: absolute;
  top: 0.2em;
  margin-left: -2.5em;
}
.top_main .ttl:after {
  background-image: url(../img/quote_right01.svg);
  margin-left: 2.5em;
}
@media screen and (max-width: 767px) {
  .top_main .ttl:before, .top_main .ttl:after {
    width: 2.7em;
    height: 100%;
    top: 50%;
    translate: 0 -50%;
    margin-left: -4.5em;
  }
  .top_main .ttl:after {
    margin-left: 1em;
  }
}
.top_main .link {
  position: absolute;
}
.top_main .link.a {
  left: 3.5rem;
  top: 3.5rem;
}
@media screen and (max-width: 767px) {
  .top_main .link.a {
    left: 1rem;
  }
}
.top_main .link.b {
  right: 3.5rem;
  bottom: 3.5rem;
}
@media screen and (max-width: 767px) {
  .top_main .link.b {
    right: 1rem;
  }
}
.top_main .link.b img {
  width: 17.25em;
}
.top_main .link p {
  font-size: 1.6rem;
  letter-spacing: 0.22em;
  display: block;
  position: relative;
  padding-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .top_main .link p {
    font-size: 1.2rem;
  }
}
.top_main .link img {
  display: block;
  width: 15.8125em;
  margin-bottom: 0.4em;
}
.top_main .link .arrow {
  position: absolute;
  inset: auto auto 0 0;
  width: 100%;
  height: 1rem;
  animation: arrowlong 2s ease infinite;
}
.top_main .link .arrow::before {
  content: "";
  background: #fff;
  position: absolute;
  inset: auto auto 0 0;
  width: 100%;
  height: 1px;
}
.top_main .link .arrow::after {
  content: "";
  background: #fff;
  position: absolute;
  inset: auto 0 0 auto;
  width: 1rem;
  height: 1px;
  transform: rotate(45deg);
  transform-origin: bottom right;
}

@keyframes arrowlong {
  0% {
    width: 0;
    opacity: 0;
  }
  20% {
    width: 0;
    opacity: 1;
  }
  80% {
    width: 100%;
    opacity: 1;
  }
  100% {
    width: 100%;
    opacity: 0;
  }
}
.c_bg {
  background: #dbe7ed;
  padding: 6rem 0;
}
.c_bg.b {
  background: #ebebec;
}

.c_blog {
  background: #dbe7ed;
  padding: 3rem 0;
}
.c_blog li {
  width: 19.8rem;
}
@media screen and (max-width: 767px) {
  .c_blog li {
    margin: 0 0.5rem;
  }
}
.c_blog li img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c_blog ul {
    margin: 0 -2rem;
  }
  .c_blog .slick-arrow {
    position: absolute;
    z-index: 2;
    height: 100%;
    width: 4rem;
    top: 0;
    border: none;
    color: transparent;
    cursor: pointer;
  }
  .c_blog .slick-arrow:active, .c_blog .slick-arrow:focus {
    outline: 0;
  }
  .c_blog .slick-prev {
    background: url(../img/slick_arrow_prev.png) no-repeat 50%/contain;
    left: 5rem;
  }
  .c_blog .slick-next {
    background: url(../img/slick_arrow_next.png) no-repeat 50%/contain;
    right: 5rem;
  }
}
@media screen and (min-width: 768px) {
  .c_blog ul {
    display: flex;
    justify-content: space-between;
  }
  .c_blog .u_inner {
    width: 102rem;
  }
}

.top_lead {
  padding: 7rem 0;
  text-align: center;
}
.top_lead .ttl {
  margin-bottom: 3.5rem;
}
.top_lead .ttl img {
  /* width: 34.4rem; */
  width: 45rem; /*202607*/
}
.top_lead .lead {
  font-size: 1.3rem;
  line-height: 2.5;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  .top_lead .lead {
    text-align: left;
  }
}
.top_lead ul {
  margin-top: 3.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top_lead li img {
  width: 10.7rem;
}
@media screen and (max-width: 767px) {
  .top_lead li {
    width: 48%;
    margin-top: 3rem;
  }
}
.top_lead dt {
  font-size: 1.6rem;
  letter-spacing: 0.07em;
  line-height: 1.625;
  font-weight: bold;
  margin: 1em 0 0.7em;
}
@media screen and (max-width: 767px) {
  .top_lead dt {
    font-size: 1.2rem;
  }
}
.top_lead dd {
  font-size: 1.1rem;
  line-height: 1.8;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 767px) {
  .top_lead dd {
    display: none;
  }
}

.top_service {
  text-align: center;
}
.top_service figure {
  position: relative;
  border: solid 1px #000;
}
.top_service figure:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  box-shadow: inset 0 0 0.5rem rgba(0, 0, 0, 0.8);
}
.top_service figure img {
  width: 100%;
}
.top_service li:nth-child(1) figure::after {
  animation-delay: 0.1s;
}
.top_service li:nth-child(2) figure::after {
  animation-delay: 0.2s;
}
.top_service li:nth-child(3) figure::after {
  animation-delay: 0.3s;
}
@media screen and (max-width: 767px) {
  .top_service li {
    margin-top: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .top_service ul {
    display: flex;
    justify-content: space-between;
  }
  .top_service li {
    width: 29rem;
  }
}
.top_service dt {
  font-size: 1.9rem;
  letter-spacing: 0.15em;
  font-weight: bold;
  margin: 1em 0 0.4em;
}
.top_service dd {
  font-size: 1.1rem;
  line-height: 1.8;
  letter-spacing: 0.14em;
}

.low_header {
  margin-top: 8rem;
  height: 39.3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .low_header {
    height: 25rem;
  }
}
.low_header.b {
  height: 24.7rem;
}
@media screen and (max-width: 767px) {
  .low_header.b {
    height: 14rem;
  }
}
.low_header.b .ttl:before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  border-bottom: solid 1px #fff;
  width: 15em;
  top: 2.7em;
}
.low_header.b .ttl i {
  font-size: 1.84em;
  position: relative;
  padding-bottom: 0.32em;
  letter-spacing: 0.06em;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.low_header.b .ttl i:before, .low_header.b .ttl i:after {
  content: none;
}
@media screen and (max-width: 767px) {
  .low_header {
    margin-top: 4.8rem;
  }
}
.low_header img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.low_header .ttl {
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  letter-spacing: 0.28em;
  color: #fff;
  font-size: 1.25rem;
}
@media screen and (max-width: 767px) {
  .low_header .ttl {
    font-size: 1.1rem;
  }
}
.low_header .ttl i {
  display: block;
  line-height: 1;
  font-size: 2.8em;
  letter-spacing: 0.01em;
  margin-bottom: 0.2em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .low_header .ttl i {
    font-size: 2.5em;
  }
}
.low_header .ttl i:before, .low_header .ttl i:after {
  content: "";
  background: url(../img/quote_left01.svg) no-repeat 50%/contain;
  width: 1.594em;
  height: 1.942em;
  position: absolute;
  top: 0;
  margin-left: -2.3em;
}
.low_header .ttl i:after {
  background-image: url(../img/quote_right01.svg);
  margin-left: 0.8em;
}

.c_lead {
  text-align: center;
  padding: 5rem 0;
}
.c_lead .ttl {
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin-bottom: 1.5em;
}
.c_lead .ttl + p {
  font-size: 1.2rem;
  letter-spacing: 0.14em;
  line-height: 2.3;
}
@media screen and (max-width: 767px) {
  .c_lead .ttl + p {
    text-align: left;
  }
}
.c_lead figure {
  margin: 3.5rem auto 0;
}
@media screen and (min-width: 768px) {
  .c_lead figure {
    width: 50rem;
  }
}
.c_lead .row {
  border: solid 0.3px #040000;
}
@media screen and (min-width: 768px) {
  .c_lead .row {
    display: flex;
    align-items: center;
  }
}
.c_lead .cap {
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  .c_lead .cap {
    margin: 0.5rem 0;
  }
}
@media screen and (min-width: 768px) {
  .c_lead .cap {
    width: 13rem;
  }
}
.c_lead table {
  border-collapse: separate;
  border-spacing: 0 0.5rem;
}
.c_lead tr > * {
  font-size: 1.05rem;
  letter-spacing: 0.15em;
  background: #eef4f7;
  padding: 0.5em 1.5em;
  vertical-align: middle;
}
.c_lead th {
  background: #dbe7ed;
  width: 13em;
}
@media screen and (max-width: 767px) {
  .c_lead th {
    width: 11.5em;
  }
}
.c_lead td {
  text-align: left;
}
.c_lead figcaption {
  text-align: right;
  font-size: 0.85rem;
  letter-spacing: 0.15em;
  margin-top: 0.5em;
}

.low_nav {
  display: flex;
  justify-content: center;
  margin: 4rem 0 6rem;
  gap: 3.5rem;
}
@media screen and (max-width: 767px) {
  .low_nav {
    gap: 1rem;
  }
}
.low_nav a {
  display: block;
  font-size: 1.2rem;
  background: #ebebec;
  line-height: 2.5;
  width: 17.7em;
  text-align: center;
  letter-spacing: 0.2em;
  border-radius: 0.2em;
}
@media screen and (max-width: 767px) {
  .low_nav a {
    width: 15.5em;
  }
}

.agency_lead {
  margin-bottom: 8rem;
  text-align: center;
}
.agency_lead .ttl {
  margin: 5rem 0 1.5rem;
  font-size: 1.9rem;
  font-weight: bold;
  position: relative;
  padding-bottom: 0.5em;
}
.agency_lead .ttl:before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  left: 0;
  background: linear-gradient(90deg, #00a7ea 0%, #1d2088 100%);
  height: 0.5rem;
}
.agency_lead p {
  font-size: 1.3rem;
}
.agency_lead .link {
  margin: 1.5rem 0 0;
}
.agency_lead .link a {
  position: relative;
  background: linear-gradient(90deg, #00a7ea 0%, #1d2088 100%);
  display: block;
  color: #fff;
  font-size: 1.4rem;
  line-height: 3;
}
.agency_lead .link a:after {
  content: "";
  background: url(../img/agency/arrow08.svg) no-repeat 50%/contain;
  height: 100%;
  position: absolute;
  width: 1.4rem;
  bottom: 0;
  z-index: 1;
  margin-left: 0.5em;
  animation: arrowRight 2s ease infinite;
}
@media screen and (min-width: 768px) {
  .agency_lead .u_inner {
    width: 57rem;
  }
}

.reno_list {
  margin: -2rem 0 6rem;
}
@media screen and (max-width: 767px) {
  .reno_list {
    margin: -3rem -2rem 6rem;
  }
}
.reno_list .slick-slide > div {
	max-width: 100vw;
  margin: 0 1rem;
}
@media screen and (min-width: 768px) {
  .reno_list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 4rem;
  }
  .reno_list ul li {
    width: calc(50% - 2rem);
  }
}
.reno_list figure {
  position: relative;
  padding-top: 66.6%;
}
@media screen and (max-width: 767px) {
  .reno_list figure {
    padding-top: 22rem;
  }
}
.reno_list figure img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .reno_list li {
    width: 26rem;
  }
}
.reno_list li a {
  display: block;
}
.reno_list li p {
  font-size: 1.4rem;
  background: rgba(131, 177, 219, 0.35);
  padding: 1em;
}
.reno_list li p small {
  display: block;
  margin-bottom: 0.5em;
}
.reno_list li p i {
  padding: 0 0.3em;
}
.reno_list .pnavi {
  margin-top: 4rem;
  text-align: center;
  display: flex;
  justify-content: center;
  gap: 1em;
  font-size: 1.4rem;
}
.reno_list .pnavi .current{
	text-decoration: underline;
}
.reno_list .slick-dots {
  position: initial;
}
.reno_list .slick-dots li button:before {
  font-size: 12px;
}

.biz_flow figure {
  text-align: center;
  margin-top: 5.5rem;
}
.biz_flow figure img {
  width: 56.6rem;
}

.biz_feature ul {
  display: flex;
  flex-wrap: wrap;
  gap: 2.8rem;
}
@media screen and (max-width: 767px) {
  .biz_feature ul {
    gap: 1rem;
  }
}
.biz_feature li {
  width: calc(33.33% - 1.866rem);
  background: #fff;
  border-radius: 0.8rem;
  padding: 3rem 4rem;
}
@media screen and (max-width: 767px) {
  .biz_feature li {
    width: calc(50% - 0.5rem);
    border-radius: 0.5rem;
    padding: 2rem 1.5rem;
  }
}
.biz_feature .ttl {
  text-align: center;
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .biz_feature .ttl {
    font-size: 1.3rem;
  }
}
.biz_feature p {
  font-size: 1.15rem;
  line-height: 1.72;
  letter-spacing: 0.12em;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .biz_feature p {
    font-size: 1.05rem;
  }
}
.biz_feature figure {
  position: relative;
  border: solid 1px #000;
  margin: 2rem 0 1.6rem;
}
.biz_feature figure:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  box-shadow: inset 0 0 0.5rem rgba(0, 0, 0, 0.8);
}
.biz_feature figure img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .biz_feature .u_inner {
    width: 91rem;
  }
}

.rease_img {
  margin: 4rem 0 5rem;
  text-align: center;
}
.rease_img img {
  width: 57.3rem;
}

.rease_img .box{
	width: 57.3rem;
	margin: 0 auto;
}
.rease_img .box .movie{
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 62.75%;
}
.rease_img .box .movie video{
	position: absolute;
	inset: 0 auto auto 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 767px) {
	.rease_img .box{
		width: 100%;
	}
}

.lease_bene {
  margin: 5rem 0 5.5rem;
}
.lease_bene ul {
  display: flex;
  gap: 2.7rem;
}
@media screen and (max-width: 767px) {
  .lease_bene ul {
    flex-wrap: wrap;
    gap: 1rem;
  }
}
.lease_bene li {
  border: solid 0.3px #040000;
  border-radius: 0.6rem;
  width: calc(25% - 2.025rem);
  text-align: center;
  padding: 2.5rem 0 2rem;
}
@media screen and (max-width: 767px) {
  .lease_bene li {
    width: calc(50% - 0.5rem);
  }
}
.lease_bene li img {
  width: 9rem;
}
.lease_bene li p {
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.07em;
  line-height: 1.4;
  margin-top: 0.5em;
}
.lease_bene li small {
  display: block;
  font-size: 0.9rem;
  font-weight: normal;
  letter-spacing: 0.14em;
  margin-top: 0.5em;
}
@media screen and (min-width: 768px) {
  .lease_bene .u_inner {
    width: 83rem;
  }
}

.lease_plan {
  text-align: center;
}
.lease_plan li {
  width: 29rem;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .lease_plan li {
    margin: 0 0.5rem;
    width: 29rem;
  }
}
.lease_plan li img {
  width: 100%;
}
.lease_plan dt {
  font-weight: bold;
  position: relative;
  font-size: 1.7rem;
  margin: 1em 2rem 0.9em;
  padding-bottom: 0.9em;
  letter-spacing: 0.15em;
}
.lease_plan dt:before {
  content: "";
  position: absolute;
  height: 0.5rem;
  width: 100%;
  bottom: 0;
  left: 0;
  background: linear-gradient(90deg, #00a7ea 0%, #1d2088 100%);
}
.lease_plan dd {
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.14em;
  padding-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .lease_plan ul {
    margin: 0 -2rem;
  }
}
@media screen and (min-width: 768px) {
  .lease_plan ul {
    display: flex;
    justify-content: space-between;
  }
}

.lease_adv ul {
  display: flex;
  gap: 3.3rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .lease_adv ul {
    gap: 1rem;
  }
}
.lease_adv li {
  background: #fff;
  border-radius: 0.6rem;
  text-align: center;
  width: calc(33.33% - 2.2rem);
  padding: 2rem 0;
}
@media screen and (max-width: 767px) {
  .lease_adv li {
    width: calc(50% - 0.5rem);
  }
}
.lease_adv li i {
  display: block;
  font-size: 3rem;
  font-weight: bold;
  position: relative;
  padding-bottom: 0.3em;
  margin-bottom: 0.7em;
}
.lease_adv li i:before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 1.2em;
  border-bottom: solid 1.5px #231815;
}
.lease_adv li p {
  font-weight: bold;
  font-size: 1.25rem;
  letter-spacing: 0.15em;
  line-height: 1.84;
}
@media screen and (max-width: 767px) {
  .lease_adv li p {
    font-size: 1.1rem;
  }
}
.lease_adv li p em {
  background: linear-gradient(transparent 50%, #dff2fc 50%);
}
.lease_adv li img {
  width: 8rem;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .lease_adv .u_inner {
    width: 77rem;
  }
}

.lease_back {
  padding-bottom: 10rem;
}
.lease_back .item {
  width: 26.4rem;
  margin: 0 0.6rem;
  overflow: hidden;
}
.lease_back .item a {
  display: block;
  position: relative;
  background: #fff;
  border-radius: 0.6rem;
  overflow: hidden;
  padding: 1rem;
}
.lease_back .item a:before {
  content: "";
  position: absolute;
  display: none;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.5);
  transition: opacity 0.2s ease-in;
}
.lease_back .item a:hover:before {
  display: block;
}
.lease_back .item p {
  font-size: 1.35rem;
  color: #fff;
  letter-spacing: 0.14em;
  height: 5em;
  display: flex;
  align-items: center;
  background: linear-gradient(90deg, #00a7ea 0%, #1d2088 100%);
  padding-left: 1em;
}
.lease_back .item p img {
  width: 1.4rem;
  display: inline-block;
  margin-left: 0.3em;
}
.lease_back .item img {
  width: 100%;
}
.lease_back .slick-arrow {
  position: absolute;
  z-index: 2;
  width: 7.5rem;
  height: 1rem;
  border: none;
  color: transparent;
  cursor: pointer;
  bottom: -5rem;
}
.lease_back .slick-arrow:active, .lease_back .slick-arrow:focus {
  outline: 0;
}
.lease_back .slick-prev {
  background: url(../img/leaseback/arrow06.svg) no-repeat 50%/contain;
  left: calc(50% - 15rem);
}
.lease_back .slick-next {
  background: url(../img/leaseback/arrow07.svg) no-repeat 50%/contain;
  right: calc(50% - 15rem);
}
.lease_back .slick-dots {
  position: absolute;
  width: 100%;
  display: flex;
  justify-content: center;
  bottom: -6.8rem;
  gap: 1rem;
}
.lease_back .slick-dots li.slick-active button:before {
  background: linear-gradient(90deg, #00a7ea 0%, #1d2088 100%);
}
.lease_back .slick-dots button {
  border: none;
  cursor: pointer;
  color: transparent;
  position: relative;
  background: none;
  width: 1.6rem;
  height: 2rem;
}
.lease_back .slick-dots button:active, .lease_back .slick-dots button:focus {
  outline: 0;
}
.lease_back .slick-dots button:before {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  background: #9fa0a0;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.back_modal dt {
  font-size: 1.7rem;
  text-align: center;
  letter-spacing: 0.14em;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 2.6em;
}
.back_modal dt i {
  position: relative;
  display: inline-block;
}
.back_modal dt i:before, .back_modal dt i:after {
  content: "";
  background: url(../img/leaseback/quote_left03.svg) no-repeat 50%/contain;
  width: 1em;
  height: 2.824em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0.2em;
}
.back_modal dt i:before {
  left: -1.8em;
}
.back_modal dt i:after {
  background-image: url(../img/leaseback/quote_right03.svg);
  right: -1.8em;
}
.back_modal dd {
  font-size: 1.3rem;
  letter-spacing: 0.14em;
  line-height: 1.7;
}
.back_modal dd strong {
  font-size: 2rem;
  display: block;
  text-align: center;
  color: #fff;
  font-weight: 500;
  padding: 0.7em 0;
  background: linear-gradient(90deg, #00a7ea 0%, #1d2088 100%);
  margin: 0.7em 0 0.8em;
}
@media screen and (max-width: 767px) {
  .back_modal dd strong {
    margin-bottom: 2rem;
    font-size: 1.4rem;
  }
}
.back_modal .box {
  display: none;
  width: 86rem;
}
@media screen and (max-width: 767px) {
  .back_modal figure {
    margin-bottom: 2rem;
  }
}
.back_modal figure img {
  width: 100%;
}
.back_modal .row {
  background: #fff;
  padding: 3rem;
  border-radius: 0.6rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .back_modal .row {
    padding: 4rem 2rem;
  }
}
@media screen and (min-width: 768px) {
  .back_modal .row {
    display: flex;
    justify-content: space-between;
  }
  .back_modal .row figure {
    width: 37.3rem;
  }
  .back_modal .row dl {
    width: calc(100% - 38.4rem);
  }
}

.popup-modal {
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 9999;
  display: none;
}
.popup-modal .close {
  position: absolute;
  top: 1.5rem;
  width: 2.2rem;
  right: 1.5rem;
  cursor: pointer;
  z-index: 1;
}
.popup-modal .close img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .popup-modal .close {
    top: 0.5rem;
  }
}
.popup-modal .wrap {
  position: relative;
  margin: auto;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: calc(100% - 4rem);
}
body.show-modal {
  overflow-y: hidden;
}

.lease_faq {
  padding: 6rem 0;
}
.lease_faq dt, .lease_faq dd {
  font-size: 1.35rem;
  letter-spacing: 0.16em;
  border-left: solid 0.4rem #89abc1;
  padding: 0.7em 1em 0.7em 5em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .lease_faq dt, .lease_faq dd {
    padding-left: 4em;
  }
}
.lease_faq dt i, .lease_faq dd i {
  position: absolute;
  left: 1.5em;
}
.lease_faq dt {
  background: #dbe5ec;
  margin-top: 1rem;
  padding-right: 17rem;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .lease_faq dt {
    padding-right: 7rem;
  }
}
.lease_faq dt.open:after {
  content: "−";
}
.lease_faq dt.open + dd {
  display: block;
}
.lease_faq dt:after {
  content: "+";
  position: absolute;
  background: #89abc1;
  width: 2em;
  height: 100%;
  top: 0;
  color: #fff;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.7em;
  width: 13rem;
}
@media screen and (max-width: 767px) {
  .lease_faq dt:after {
    width: 5rem;
  }
}
.lease_faq dd {
  background: #efefef;
}
@media screen and (min-width: 768px) {
  .lease_faq .u_inner {
    width: 82rem;
  }
}

.form {
  padding: 0 0 7.5rem;
}
@media screen and (max-width: 767px) {
  .form {
    padding: 0 0 6rem;
  }
}
.form .lead {
  font-size: 1.2rem;
  letter-spacing: 0.16em;
  line-height: 2.33;
  text-align: center;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .form .lead {
    text-align: left;
  }
  .form .lead br {
    display: none;
  }
}
.form th {
  text-align: left;
  width: 15em;
  vertical-align: top;
}
.form tr > * {
  font-size: 1.4rem;
  padding-bottom: 1.5em;
}
@media screen and (max-width: 767px) {
  .form tr > * {
    width: 100%;
    float: left;
  }
}
@media screen and (max-width: 767px) {
  .form th {
    padding-bottom: 0.5em;
  }
}
.form td input[type=text], .form td input[type=email], .form td input[type=tel], .form td textarea, .form td select {
  border: solid 1px #ccc;
  padding: 0.5em 1em;
  width: 100%;
}
.form td a {
  color: #024795;
}
.form td input[type=checkbox] {
  margin-right: 0.5em;
}
.form td label {
  margin-right: 1em;
}
.form .explain_txt {
  font-size: 0.9em;
  margin-bottom: 0.2em;
}
.form button {
  background: linear-gradient(90deg, #229CD8 0%, #1D2A73 100%);
  width: 100%;
  color: #fff;
  font-size: 1.8rem;
  line-height: 3.4;
  transition: opacity 0.2s ease-in;
  position: relative;
}
.form button:before {
  content: "";
  background: url(../img/ico_arrow.svg) no-repeat 50%/contain;
  height: 100%;
  position: absolute;
  width: 1.4rem;
  bottom: 0;
  z-index: 1;
  right: 1em;
  animation: arrowRight 2s ease infinite;
}
.form button:hover {
  opacity: 0.7;
}
.form button.backBtn {
  background: #a7a4a4;
}
.form button.backBtn:before {
  left: 1em;
  background-image: url(../img/ico_arrow_r.svg);
}
.form .formBtnArea {
  display: flex;
}
.form .caution_txt {
  color: transparent;
  width: 1em;
}
.form .caution_txt:before {
  content: "*";
  color: red;
}
@media screen and (min-width: 768px) {
  .form .u_inner {
    width: 64rem;
	  margin-top: 5rem;
  }
}

@keyframes arrowRight {
  0% {
    translate: 0 0;
    opacity: 0;
  }
  20% {
    translate: 0 0;
    opacity: 1;
  }
  80% {
    translate: 50% 0;
    opacity: 1;
  }
  100% {
    translate: 50% 0;
    opacity: 0;
  }
}
