@charset "utf-8";

.p-footer {
  position: relative;
  z-index: 4;
  border-radius: 1.25rem 1.25rem 0 0;
  position: relative;
  -webkit-padding-before: 9.375rem;
  padding-block-start: 9.375rem;
  -webkit-padding-after: 5rem;
  padding-block-end: 5rem;
  background: linear-gradient(130deg, #1849a5 0%, #3d75c8 20%, #4b85d6 50%, #1849a5 100%);
}

.p-footer::after {
  content: "";
  position: absolute;
  background: URL("https://cross-estate.co.jp/system_panel/uploads/images/bg-noise.png") repeat;
  width: 100%;
  height: 100%;
  top: 0;
  pointer-events: none;
  z-index:-1;
}

@media (min-width: 768px) {
  .p-footer {
    -webkit-padding-before: 12.5rem;
    padding-block-start: 12.5rem;
    -webkit-padding-after: 6.25rem;
    padding-block-end: 6.25rem;
  }
}

.p-footer__cta {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  padding-block: 2.5rem;
}

@media (min-width: 768px) {
  .p-footer__cta {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding-block: 5rem;
    grid-template-columns: repeat(3, 1fr);
    place-items: center;
  }
}

.p-footer__cta {
  border-top: 1px solid rgba(255, 255, 255, 0.368627451);
}

.p-footer__cta-tel,
.p-footer__cta-mail,
.p-footer__cta-line {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  place-items: center;
}

.p-footer__tel-ttl,
.p-footer__mail-ttl,
.p-footer__line-ttl {
  font-size: 1.125rem;
  line-height: 1.5rem;
  color: #ffffff;
  -webkit-margin-before: 0.9375rem;
  margin-block-start: 0.9375rem;
  -webkit-margin-after: 1.875rem;
  margin-block-end: 1.875rem;
}

.p-footer__tel-icon,
.p-footer__mail-icon,
.p-footer__line-icon {
  width: 5.1875rem;
  aspect-ratio: 1/1;
}

.p-footer__tel-icon img,
.p-footer__mail-icon img,
.p-footer__line-icon img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  height: 100%;
}

.p-footer__cta-tel {
  border-right: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.368627451);
  -webkit-padding-after: 2.5rem;
  padding-block-end: 2.5rem;
}

.p-footer__cta-tel .p-footer__tel-text {
  color: #ffffff;
  text-align: center;
}

.p-footer__cta-tel .p-footer__tel-text .num {
  border-bottom: 1px solid #ffffff;
  -webkit-padding-after: 0.3125rem;
  padding-block-end: 0.3125rem;
  font-size: 1.625rem;
  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;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
}

.p-footer__cta-tel .p-footer__tel-text .num::before {
  content: "";
  background: url("https://cross-estate.co.jp/system_panel/uploads/images/Icon-call.png") no-repeat center/contain;
  width: 1.25rem;
  height: 1.25rem;
}

.p-footer__cta-tel .p-footer__tel-text .data {
  -webkit-margin-before: 0.3125rem;
  margin-block-start: 0.3125rem;
  font-size: 0.625rem;
  line-height: 0.875rem;
}

@media (min-width: 768px) {
  .p-footer__cta-tel {
    border-right: 1px solid rgba(255, 255, 255, 0.368627451);
    border-bottom: none;
    -webkit-padding-after: 0;
    padding-block-end: 0;
  }
}

.p-footer__cta-mail {
  border-right: none;
  padding-block: 2.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.368627451);
}

@media (min-width: 768px) {
  .p-footer__cta-mail {
    border-right: 1px solid rgba(255, 255, 255, 0.368627451);
    border-bottom: none;
    padding-block: 0;
  }
}

.p-footer__cta-line {
  -webkit-padding-before: 2.5rem;
  padding-block-start: 2.5rem;
}

@media (min-width: 768px) {
  .p-footer__cta-line {
    -webkit-padding-before: 0;
    padding-block-start: 0;
  }
}

.p-footer__nav {
  border-top: 1px solid rgba(255, 255, 255, 0.368627451);
  color: #ffffff;
  font-size: 0.875rem;
  padding-block: 1.875rem;
}

@media (min-width: 768px) {
  .p-footer__nav {
    padding-block: 6.25rem;
  }
}

.p-footer__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  row-gap: 0.9375rem;
}

@media (min-width: 768px) {
  .p-footer__list {
    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;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 3.125rem;
    -moz-column-gap: 3.125rem;
    column-gap: 3.125rem;
  }
}

.p-footer__link--company, .p-footer__link--contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
}

.p-footer__info {
  text-align: center;
  color: #ffffff;
  border-top: 1px solid rgba(255, 255, 255, 0.368627451);
  -webkit-padding-before: 1.875rem;
  padding-block-start: 1.875rem;
}

@media (min-width: 768px) {
  .p-footer__info {
    -webkit-padding-before: 5rem;
    padding-block-start: 5rem;
  }
}

.p-footer__logo {
  margin-inline: auto;
  width: 5rem;
  aspect-ratio: 1/1;
}

.p-footer__logo img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  height: 100%;
}

.p-footer__company {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.875rem;
}

.p-footer__post {
  font-size: 0.8125rem;
  line-height: 1.25rem;
  -webkit-margin-before: 1.25rem;
  margin-block-start: 1.25rem;
}

@media (min-width: 768px) {
  .p-footer__post {
    -webkit-margin-before: 1.875rem;
    margin-block-start: 1.875rem;
  }
}

.p-footer__add {
  font-size: 0.8125rem;
  line-height: 1.25rem;
}

.p-footer__add br {
  display: block;
}

@media (min-width: 768px) {
  .p-footer__add br {
    display: none;
  }
}

.p-footer__info-tel {
  font-size: 0.8125rem;
  line-height: 1.25rem;
  -webkit-margin-before: 0.9375rem;
  margin-block-start: 0.9375rem;
}

@media (min-width: 768px) {
  .p-footer__info-tel {
    -webkit-margin-before: 1.5625rem;
    margin-block-start: 1.5625rem;
  }
}

.copy {
  position: relative;
  padding: 2.6875rem 0;
}

.copy-bg {

  overflow: hidden;
  inset: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}

.copy-bg::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
  background-color: rgba(35, 81, 168, 0.3137254902);
}

.small {
  color: #ffffff;
  font-size: 0.75rem;
}


.copy-bg img {
  object-fit: cover;
  object-position: center;
  height: 100%;
}


/*company*/

.p-top-company {
  position: relative;
  z-index: 5;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
}
@media (min-width: 768px) {
  .p-top-company {
    -webkit-transform: translateY(8.4375rem);
            transform: translateY(8.4375rem);
  }
}

.p-top-company__wrapper {
  position: relative;
  border-radius: 0.3125rem;
  overflow: hidden;
}

.p-top-company__bg {
  
  border-radius: inherit;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 4;
}
.p-top-company__bg img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  height: 100%;
}
.p-top-company__bg::after {
  content: "";
  position: absolute;
  background: rgba(84, 137, 210, 0.5725490196);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
}

.p-top-company__contents {
  position: relative;
  z-index: 5;
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-inline: 1.25rem;
  padding-block: 5rem;
}
@media (min-width: 768px) {
  .p-top-company__contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-inline: 3.75rem;
    padding-block: 8.4375rem;
  }
}
@media screen and (min-width: 850px) {
  .p-top-company__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-top-company__info {
  width: 100%;
  color: #ffffff;
  text-align: center;
}
@media screen and (min-width: 850px) {
  .p-top-company__info {
    width: 43.6363636364%;
    text-align: left;
  }
}

.p-top-company__ttl {
  aspect-ratio: 358/80;
  width: 14.375rem;
  margin-inline: auto;
}
.p-top-company__ttl img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  height: 100%;
}
@media (min-width: 768px) {
  .p-top-company__ttl {
    width: 22.375rem;
  }
}
@media screen and (min-width: 850px) {
  .p-top-company__ttl {
    margin-inline: unset;
  }
}

.p-top-company__read {
  font-size: 1.25rem;
  line-height: 1.6;
  -webkit-margin-before: 1.25rem;
          margin-block-start: 1.25rem;
}
@media (min-width: 768px) {
  .p-top-company__read {
    -webkit-margin-before: 2.5rem;
            margin-block-start: 2.5rem;
    font-size: 1.625rem;
    line-height: 2.625rem;
  }
}

.p-top-company__text {
  font-size: 0.875rem;
  line-height: 1.875rem;
  -webkit-margin-before: 1.25rem;
          margin-block-start: 1.25rem;
}
@media (min-width: 768px) {
  .p-top-company__text {
    -webkit-margin-before: 2.5rem;
            margin-block-start: 2.5rem;
  }
}

.p-top-company__link {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 1.25rem;
  -webkit-column-gap: 0.625rem;
     -moz-column-gap: 0.625rem;
          column-gap: 0.625rem;
  -webkit-margin-before: 5rem;
          margin-block-start: 5rem;
}
@media (min-width: 768px) {
  .p-top-company__link {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 1.25rem;
    width: 43.6363636364%;
  }
}
@media screen and (min-width: 850px) {
  .p-top-company__link {
    -webkit-margin-before: unset;
            margin-block-start: unset;
  }
}



