@charset "UTF-8";
:root {
  --color-black: #222222;
  --color-white: #ffffff;
  --color-gray: #595757;
  --color-lightgray: #E6F0F0;
  --color-primary: #004F99;
  --color-secondary: #008A3B;
  --color-blue: #178FD9;
  --color-lightblue: #EBF2F4;
  --color-lightblue2: #D9E8EC;
  --color-navy: #2F2A7F;
  --color-lightnavy: #EBEBF4;
  --color-green: #258346;
  --color-yellowgreen: #579900;
  --color-lightyellowgreen: #EAF0E2;
  --color-orange: #E97406;
  --color-purple: #774B91;
  --color-enji: #842640;
  --color-lightenji: #F2ECEC;
  --color-pink: #AC4683;
  --color-lightpink: #F2ECF0;
  --color-gold: #A99500;
  --color-border: #DFEAED;
  --color-bg: #F4F4F4;
}

/*----------------------------------------

	top CSS

-----------------------------------------*/
/*----------------------------------------
	Overwrite
-----------------------------------------*/
.content {
  margin-top: 0;
}

@media screen and (max-width: 959px ) {
  .footer__main {
    margin-bottom: 60rem;
  }
}

/*----------------------------------------
	common
-----------------------------------------*/
.wrapper {
  overflow: hidden;
}

.section-title h2 {
  color: #222;
  font-size: 40rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
}
@media screen and (max-width: 959px ) {
  .section-title h2 {
    font-size: 28rem;
  }
}
.section-title p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 40rem;
  color: var(--color-primary);
  font-family: Heebo, sans-serif;
  font-size: 20rem;
  line-height: 1;
}
.section-title p span {
  font-size: 10rem;
}
@media screen and (max-width: 959px ) {
  .section-title p {
    margin-top: 20rem;
    font-size: 15rem;
  }
}
.section-title--white h2,
.section-title--white p {
  color: var(--color-white);
}
.section-title--center {
  text-align: center;
}
.section-title--center p {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*----------------------------------------
	Mv
-----------------------------------------*/
.mv {
  position: relative;
  height: 1080rem;
  overflow: hidden;
  /*margin-top: 80rem;*/
}
@media screen and (max-width: 959px ) {
  .mv {
    height: 440rem;
    margin-top: 50rem;
  }
}
.mv::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 79, 153, 0.08);
  content: "";
  pointer-events: none;
}
.mv__slider, .mv__slider .swiper-slide, .mv__slider picture {
  width: 100%;
  height: 100%;
}
.mv__slider img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mv__slider img.img02 {
  -o-object-position: center top;
     object-position: center top;
}
.mv__copy {
  position: absolute;
  z-index: 2;
  top: 49%;
  left: 50%;
  color: var(--color-white);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  white-space: nowrap;
}
@media screen and (max-width: 959px ) {
  .mv__copy {
    top: 48%;
    width: 100%;
    padding: 0 20rem;
    font-size: 23rem;
    text-align: center;
    white-space: normal;
  }
}
.mv__copy img {
  width: 1090rem;
  height: auto;
}
@media screen and (max-width: 959px ) {
  .mv__copy img {
    width: 90vw;
  }
}
.mv__news {
  position: absolute;
  z-index: 3;
  right: 0;
  bottom: 0;
  width: 420rem;
  height: 62rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 20rem 0 30rem;
  border-radius: 4rem 0 0 0;
  background: var(--color-primary);
  font-size: 14rem;
}
@media screen and (max-width: 959px ) {
  .mv__news {
    width: 100%;
    height: 50rem;
    padding: 0 20rem;
    border-radius: 0;
    background: rgba(255, 255, 255, 0.9);
    font-size: 10rem;
  }
}
.mv__news-slider {
  width: 100%;
  height: 100%;
}
.mv__news-slider .swiper-slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
.mv__news a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20rem;
  width: 100%;
  height: 100%;
}
.mv__news time {
  padding-right: 20rem;
  border-right: 1rem solid var(--color-white);
  color: var(--color-white);
}
@media screen and (max-width: 959px ) {
  .mv__news time {
    border-right-color: #888;
    font-size: 10rem;
    color: var(--color-primary);
  }
}
.mv__news span {
  overflow: hidden;
  font-size: 14rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--color-white);
}
@media screen and (max-width: 959px ) {
  .mv__news span {
    font-size: 12rem;
    color: var(--color-black);
  }
}
.mv__news .icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 10rem;
          flex: 0 0 10rem;
  width: 10rem;
  height: 13rem;
  margin-left: auto;
  background: url("../img/common/arw_btn.svg") no-repeat center/contain;
}

/*----------------------------------------
	About
-----------------------------------------*/
.intro {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 120rem;
  min-height: 888rem;
  padding: 140rem 320rem 130rem 140rem;
  background: var(--color-primary);
  color: var(--color-white);
}
@media screen and (max-width: 959px ) {
  .intro {
    display: block;
    min-height: 690rem;
    padding: 60rem 20rem;
  }
}
.intro__lead {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 430rem;
          flex: 0 0 430rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 608rem;
  padding-top: 20rem;
}
@media screen and (max-width: 959px ) {
  .intro__lead {
    display: block;
    min-height: auto;
    padding: 0;
  }
}
.intro__lead h2 {
  font-size: 50rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 959px ) {
  .intro__lead h2 {
    font-size: 34rem;
    line-height: 1.7;
  }
}
.intro__lead .btn-pc {
  margin-top: 120rem;
}
.intro__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 18rem;
  letter-spacing: 0.05em;
  line-height: 2.4;
}
@media screen and (max-width: 959px ) {
  .intro__body {
    margin-top: 30rem;
    font-size: 15rem;
    line-height: 2;
  }
}
@media screen and (max-width: 959px ) {
  .intro__body p {
    text-align: justify;
  }
}
@media screen and (max-width: 959px ) {
  .intro__body p br {
    display: none;
  }
}
.intro__body > p + p {
  margin-top: 30rem;
}
@media screen and (max-width: 959px ) {
  .intro__body > p + p {
    margin-top: 15rem;
  }
}
.intro__body h3 {
  margin-top: 60rem;
  font-size: 22rem;
  line-height: 1.8;
}
@media screen and (max-width: 959px ) {
  .intro__body h3 {
    margin-top: 22rem;
    font-size: 18rem;
    text-align: center;
  }
}
.intro__body h3 span {
  display: inline-block;
  -webkit-transform: translateY(-20%);
          transform: translateY(-20%);
  margin-right: 10rem;
  font-size: 10rem;
}
@media screen and (max-width: 959px ) {
  .intro__body h3 span {
    margin-right: 5rem;
  }
}
@media screen and (max-width: 959px ) {
  .intro .btn-sp {
    margin-top: 30rem;
  }
}
.intro .btn-sp a {
  margin-inline: auto;
}

.strength-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30rem;
  width: 856rem;
  margin-top: 10rem;
}
@media screen and (max-width: 959px ) {
  .strength-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0;
    width: 100%;
    margin-top: 20rem;
  }
}
.strength-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 959px ) {
  .strength-list li:nth-child(1) {
    width: 100%;
  }
}
@media screen and (max-width: 959px ) {
  .strength-list li:nth-child(n+2) {
    width: 48%;
  }
}
.strength-list img {
  width: auto;
  height: 240rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 959px ) {
  .strength-list img {
    height: 144rem;
  }
}

/*----------------------------------------
	News
-----------------------------------------*/
.news {
  position: relative;
  min-height: 850rem;
  background: var(--color-white);
}
@media screen and (max-width: 959px ) {
  .news {
    min-height: 560rem;
  }
}
@media screen and (max-width: 959px ) {
  .news .section-title {
    text-align: center;
  }
}
@media screen and (max-width: 959px ) {
  .news .section-title p {
    margin-top: 10rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.news__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 150rem;
  padding: 120rem 380rem 120rem 140rem;
}
@media screen and (max-width: 959px ) {
  .news__inner {
    display: block;
    padding: 60rem 20rem;
  }
}
.news__side {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 215rem;
          flex: 0 0 215rem;
  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: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 959px ) {
  .news__side {
    display: block;
    min-height: 0;
  }
}
.news__side .btn-pc {
  margin-top: 100rem;
}
@media screen and (max-width: 959px ) {
  .news__side .round-btn {
    position: absolute;
    bottom: 25rem;
    left: 20rem;
  }
}
.news__main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
@media screen and (max-width: 959px ) {
  .news__main {
    margin-top: 25rem;
  }
}
.news__tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3rem;
}
.news__tabs button {
  padding: 15rem 20rem;
  border-radius: 2rem;
  background: #f4f4f4;
  color: var(--color-primary);
  font-size: 14rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 959px ) {
  .news__tabs button {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    padding: 10rem 8rem;
    font-size: 10rem;
  }
}
.news__tabs button.is-active {
  background: var(--color-primary);
  color: var(--color-white);
}
.news__list {
  margin-top: 20rem;
}
@media screen and (max-width: 959px ) {
  .news__list {
    margin-top: 12rem;
  }
}
.news__list li {
  border-bottom: 1rem solid #ddd;
}
.news__list li.is-hidden {
  display: none;
}
.news__list a {
  display: block;
  padding: 15rem 10rem 20rem;
}
@media screen and (max-width: 959px ) {
  .news__list a {
    padding: 10rem 5rem 12rem;
  }
}
.news__list a:hover p {
  border-bottom-color: var(--color-primary);
  color: var(--color-primary);
}
.news__list a > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5rem;
}
.news__list time {
  margin-right: auto;
  color: var(--color-primary);
  font-size: 16rem;
}
@media screen and (max-width: 959px ) {
  .news__list time {
    font-size: 13rem;
  }
}
.news__list p {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 10rem;
  font-size: 18rem;
  letter-spacing: 0.05em;
  line-height: 1.8;
  border-bottom: solid 1px transparent;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 959px ) {
  .news__list p {
    margin-top: 7rem;
    line-height: 1.6;
    font-size: 14rem;
  }
}
.news__photo {
  position: absolute;
  top: -290rem;
  right: 0;
  width: 260rem;
  height: 640rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 959px ) {
  .news__photo {
    display: none;
  }
}
.news .btn-sp {
  margin-top: 30rem;
}
.news .btn-sp a {
  margin-inline: auto;
}

.tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2rem 15rem;
  border-radius: 30rem;
  color: var(--color-white);
  font-size: 12rem;
  font-style: normal;
  line-height: 1.8;
}
.tag--new { /* NEW */
  background: var(--color-orange);
  font-style: normal;
}
.tag--info { /* お知らせ */
  background: var(--color-primary);
}
.tag--event { /* セミナー・イベント */
  background: var(--color-gold);
}
.tag--buy { /* 売買 */
  background: var(--color-navy);
}
.tag--asset { /* 資産相談 */
  background: var(--color-yellowgreen);
}
.tag--cre { /* 法人向けソリューション */
  background: var(--color-pink);
}
.tag--rent { /* 賃貸募集・仲介 */
  background: var(--color-blue);
}
.tag--management { /* 賃貸管理 */
  background: var(--color-enji);
}
.tag--resale { /* 売買・買取再販 */
  background: var(--color-secondary);
}
.tag--maintenance { /* 改修工事・メンテナンス */
  background: #60708A;
}
@media screen and (max-width: 959px ) {
  .tag {
    padding: 2rem 12rem;
    font-size: 10rem;
  }
}

/*----------------------------------------
	Business
-----------------------------------------*/
.business {
  position: relative;
  padding: 140rem 120rem;
  background: #f4f4f4;
}
@media screen and (max-width: 959px ) {
  .business {
    padding: 0 20rem 60rem;
  }
}
.business__accent {
  position: absolute;
  z-index: 2;
  top: -300rem;
  left: 0;
  width: 380rem;
  height: 780rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 959px ) {
  .business__accent {
    position: static;
    width: calc(100% + 40rem);
    height: 240rem;
    margin: 0 -20rem 95rem;
    content: url("../img/top/img_business_sp.webp");
  }
}
.business__head {
  position: absolute;
  top: 0;
  left: 380rem;
  width: 470rem;
  height: 310rem;
  padding: 100rem 100rem 20rem 100rem;
  border-radius: 0 0 2rem 0;
  background: var(--color-white);
}
@media screen and (max-width: 959px ) {
  .business__head {
    top: 240rem;
    left: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 215rem;
    height: auto;
    margin: 0;
    padding: 30rem 20rem 30rem 40rem;
  }
}
.business__head p {
  margin-top: 20rem;
}
@media screen and (max-width: 959px ) {
  .business__head p {
    margin-top: 10rem;
  }
}
.business__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 40rem;
}
@media screen and (max-width: 959px ) {
  .business__cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    gap: 20rem;
  }
}

.business-card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 50rem;
  width: calc(50% - 20rem);
  min-height: 434rem;
  padding: 40rem;
  border-radius: 2rem;
  background: var(--color-white);
  overflow: hidden;
}
@media screen and (max-width: 959px ) {
  .business-card {
    display: block;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 25rem;
  }
}
.business-card:first-child {
  margin-left: calc(50% + 20rem);
}
@media screen and (max-width: 959px ) {
  .business-card:first-child {
    margin: 0;
  }
}
.business-card::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 260rem;
  height: 334rem;
  content: "";
}
@media screen and (max-width: 959px ) {
  .business-card::before {
    width: 160rem;
    height: 190rem;
  }
}
.business-card--01::before {
  background: var(--color-navy);
}
.business-card--02::before {
  background: var(--color-yellowgreen);
}
.business-card--03::before {
  background: var(--color-pink);
}
.business-card--04::before {
  background: var(--color-blue);
}
.business-card--05::before {
  background: var(--color-enji);
}
.business-card picture {
  position: relative;
  z-index: 1;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 300rem;
          flex: 0 0 300rem;
  min-height: 354rem;
  overflow: hidden;
}
@media screen and (max-width: 959px ) {
  .business-card picture {
    display: block;
    width: 100%;
    min-height: 0;
    height: auto;
  }
}
.business-card picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.business-card__body {
  position: relative;
  z-index: 1;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 0;
}
@media screen and (max-width: 959px ) {
  .business-card__body {
    padding: 20rem 0 0;
  }
}
.business-card__body > p {
  margin-top: 20rem;
  font-size: 16rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (max-width: 959px ) {
  .business-card__body > p {
    margin-top: 12rem;
    font-size: 14rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 959px ) {
  .business-card__body > p br {
    display: none;
  }
}
.business-card__body ul {
  margin-top: 15rem;
}
@media screen and (max-width: 959px ) {
  .business-card__body ul {
    margin: 8rem 0 15rem;
  }
}
.business-card__body li {
  font-size: 16rem;
  line-height: 1.75;
}
@media screen and (max-width: 959px ) {
  .business-card__body li {
    font-size: 14rem;
  }
}
.business-card__body li::before {
  display: inline-block;
  -webkit-transform: translateY(-2rem);
          transform: translateY(-2rem);
  margin-right: 7rem;
  color: var(--color-yellowgreen);
  content: "●";
  font-size: 7rem;
}
.business-card__body .c-button {
  -ms-flex-item-align: end;
      align-self: flex-end;
  margin-top: auto;
}
@media screen and (max-width: 959px ) {
  .business-card__body .c-button {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  }
}
.business-card__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.business-card__head h3 {
  font-size: 28rem;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}
@media screen and (max-width: 959px ) {
  .business-card__head h3 {
    font-size: 24rem;
  }
}
.business-card__head h3 small {
  display: none;
  color: var(--color-yellowgreen);
  font: 16rem Heebo, sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 959px ) {
  .business-card__head h3 small {
    font-size: 16rem;
  }
}
.business-card__head > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.business-card__head > div span {
  padding: 4rem 15rem;
  border-radius: 20rem;
  background: #3e3987;
  color: var(--color-white);
  font-size: 12rem;
  white-space: nowrap;
}
@media screen and (max-width: 959px ) {
  .business-card__head > div span {
    padding: 3rem 12rem;
    font-size: 10rem;
  }
}
.business-card__head > div span + span {
  background: #258346;
}
.business-card--01 h3 small {
  color: var(--color-navy);
}
.business-card--01 li::before {
  color: var(--color-navy);
}
.business-card--02 h3 small {
  color: var(--color-yellowgreen);
}
.business-card--02 li::before {
  color: var(--color-yellowgreen);
}
.business-card--03 h3 small {
  color: var(--color-pink);
}
.business-card--03 li::before {
  color: var(--color-pink);
}
.business-card--04 h3 small {
  color: var(--color-blue);
}
.business-card--04 li::before {
  color: var(--color-blue);
}
.business-card--05 h3 small {
  color: var(--color-enji);
}
.business-card--05 li::before {
  color: var(--color-enji);
}
.business-card--05 .business-card__head > div span {
  background: #258346;
}

/*----------------------------------------
	Divider
-----------------------------------------*/
.divider {
  display: block;
  height: 500rem;
}
.divider img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 959px ) {
  .divider {
    height: 240rem;
  }
}

/*----------------------------------------
	Case
-----------------------------------------*/
.case {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 718rem;
  padding-left: 120rem;
  background: #f4f4f4;
}
@media screen and (max-width: 959px ) {
  .case {
    display: block;
    min-height: 560rem;
    padding: 0;
  }
}
.case .section-title {
  position: relative;
  z-index: 60;
}
@media screen and (max-width: 959px ) {
  .case .section-title {
    padding-left: 30rem;
  }
}
.case .section-title p {
  margin-top: 20rem;
}
@media screen and (max-width: 959px ) {
  .case .section-title p {
    margin-top: 10rem;
  }
}
.case__side {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 325rem;
          flex: 0 0 325rem;
  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: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 140rem 0 100rem;
}
@media screen and (max-width: 959px ) {
  .case__side {
    display: block;
    padding: 75rem 20rem 20rem;
  }
}
@media screen and (max-width: 959px ) {
  .case__side .round-btn {
    position: absolute;
    bottom: 25rem;
    left: 20rem;
  }
}
.case__slider-wrap {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  margin-top: 120rem;
  padding: 60rem 0 60rem 60rem;
  background: var(--color-white);
  overflow: hidden;
}
@media screen and (max-width: 959px ) {
  .case__slider-wrap {
    margin: -65rem 0 0 20rem;
    padding: 60rem 0 30rem 30rem;
  }
}
.case__slider-wrap::before {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 50;
  content: "";
  display: block;
  width: 58rem;
  height: 100%;
  background: var(--color-white);
}
@media screen and (max-width: 959px ) {
  .case__slider-wrap::before {
    width: 28rem;
  }
}
.case__slider {
  overflow: visible;
}
.case__slider .swiper-slide {
  width: 362rem;
}
@media screen and (max-width: 959px ) {
  .case__slider .swiper-slide {
    width: 240rem;
  }
}
.case__slider figure {
  overflow: hidden;
}
.case__slider img {
  height: 242rem;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.8s;
  transition: 0.8s;
}
@media screen and (max-width: 959px ) {
  .case__slider img {
    height: 160rem;
  }
}
.case__slider h3 {
  min-height: 76rem;
  margin: 20rem 0 0;
  font-size: 16rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.75;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 959px ) {
  .case__slider h3 {
    min-height: 64rem;
    margin: 12rem 0 0;
    font-size: 14rem;
  }
}
.case__slider article a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
@media screen and (max-width: 959px ) {
  .case__slider article a:hover img {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.case__slider article a:hover h3 {
  color: var(--color-primary);
}
@media screen and (max-width: 959px ) {
  .case__slider article a:hover h3 {
    color: var(--color-black);
  }
}
.case__slider article a > p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4rem 8rem;
}
.case__slider article a > p .tag {
  padding: 4rem 14rem;
  border-radius: 20rem;
  color: var(--color-white);
  font-size: 12rem;
  line-height: 1.4;
}
@media screen and (max-width: 959px ) {
  .case__slider article a > p .tag {
    padding: 5rem 10rem;
    font-size: 10rem;
  }
}
.case__slider article a > p .tag.tag--new { /* 新着 */
  background: var(--color-orange);
}
.case__slider article a > p .tag.tag--buy { /* 売買 */
  background: var(--color-navy);
}
.case__slider article a > p .tag.tag--asset { /* 資産相談 */
  background: var(--color-yellowgreen);
}
.case__slider article a > p .tag.tag--cre { /* 法人向けソリューション */
  background: var(--color-pink);
}
.case__slider article a > p .tag.tag--rent { /* 賃貸募集・仲介 */
  background: var(--color-blue);
}
.case__slider article a > p .tag.tag--management { /* 賃貸管理 */
  background: var(--color-enji);
}
.case__slider article a > p .tag.tag--resale { /* 売買・買取再販 */
  background: var(--color-secondary);
}
.case__slider article a > p .tag.tag--maintenance { /* 改修工事・メンテナンス */
  background: #60708A;
}
.case__controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10rem;
  height: 90rem;
  margin-top: 40rem;
  padding-right: 60rem;
}
@media screen and (max-width: 959px ) {
  .case__controls {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10rem 20rem;
    height: 60rem;
    padding-right: 20rem;
  }
}
.case__controls .swiper-pagination {
  position: static;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: auto;
          flex: auto;
  height: 2rem;
  margin-right: 100rem;
}
@media screen and (max-width: 959px ) {
  .case__controls .swiper-pagination {
    width: 100%;
    margin: 0;
  }
}
.case__controls .swiper-pagination-bullet {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 2rem;
  margin: 0 !important;
  border-radius: 0;
  background: #cfd8dd;
  opacity: 1;
}
.case__controls .swiper-pagination-bullet-active {
  background: var(--color-primary);
}
.case-prev, .case-next {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50rem;
          flex: 0 0 50rem;
  width: 50rem;
  height: 50rem;
  border-radius: 50%;
  background: var(--color-primary) url("../img/common/arw_btn_w.svg") no-repeat 54% 50%/10rem 13rem;
  color: var(--color-white);
  font-size: 0;
  line-height: 1;
}
@media screen and (max-width: 959px ) {
  .case-prev, .case-next {
    font-size: 0;
  }
}
.case-prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.case .btn-sp {
  margin-top: 30rem;
}
.case .btn-sp a {
  margin-inline: auto;
}

/*----------------------------------------
	Links
-----------------------------------------*/
.links {
  min-height: 802rem;
  padding: 140rem 176rem;
  background: #f4f4f4;
}
@media screen and (max-width: 959px ) {
  .links {
    min-height: 330rem;
    padding: 60rem 20rem;
  }
}
@media screen and (max-width: 959px ) {
  .links .section-title p {
    margin-top: 10rem;
  }
}
.links__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40rem;
  margin-top: 60rem;
}
@media screen and (max-width: 959px ) {
  .links__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20rem;
    margin-top: 20rem;
  }
}
.links__list li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
@media screen and (max-width: 959px ) {
  .links__list li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(50% - 10rem);
            flex: 0 0 calc(50% - 10rem);
  }
}
.links__list li a:hover img {
  opacity: 0.7;
}
@media screen and (max-width: 959px ) {
  .links__list li a:hover img {
    opacity: 1;
  }
}
.links__list li a:hover p {
  color: var(--color-primary);
}
@media screen and (max-width: 959px ) {
  .links__list li a:hover p {
    color: var(--color-black);
  }
  .links__list li a:hover p span {
    color: var(--color-primary);
  }
}
.links__list li a:hover p .icon {
  background-image: url(../img/common/ico_blank.svg);
}
@media screen and (max-width: 959px ) {
  .links__list li a:hover p .icon {
    background-image: url(../img/common/ico_blank_black.svg);
  }
}
.links__list img {
  height: 350rem;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 959px ) {
  .links__list img {
    height: auto;
  }
}
.links__list p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10rem;
  padding-top: 10rem;
  font-size: 13rem;
  line-height: 1.7;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 959px ) {
  .links__list p {
    display: block;
    padding-top: 10rem;
    font-size: 14rem;
  }
}
.links__list p span {
  padding: 4rem 10rem;
  border-radius: 2rem;
  border: 1rem solid var(--color-primary);
  color: var(--color-primary);
  font-size: 12rem;
}
@media screen and (max-width: 959px ) {
  .links__list p span {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 3rem;
    padding: 1rem 4rem;
    font-size: 10rem;
  }
}
.links__list .icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 14rem;
          flex: 0 0 14rem;
  width: 14rem;
  height: 14rem;
  background: url("../img/common/ico_blank_black.svg") no-repeat center/contain;
}
@media screen and (max-width: 959px ) {
  .links__list .icon {
    display: inline-block;
    margin-left: 5rem;
  }
}
/*# sourceMappingURL=top.css.map */