@charset "utf-8";
/*-----------------------------------------------------

  top.css
  TOPpage CSS

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


/*-----------------------------------------------------
  header　
-----------------------------------------------------*/

#mv_PC {
  position: relative;
  overflow: hidden;
  height: clamp(646.67px, calc(970 * var(--vw)), 970px);
  opacity: 0;
  -webkit-transition: all .5s;
  transition: all .5s;
}

#mv_PC.is-loaded {
  opacity: 1;
}

#mv_SP {
  display: none;
}

.slider {
  width: 100%;
  height: clamp(426.67px, calc(640 * var(--vw)), 640px);
  overflow: hidden;
  position: absolute;
}

.track {
  width: max-content;
  height: clamp(426.67px, calc(640 * var(--vw)), 640px);
  display: flex;
}

.slider01 {
  top: 0;
}

.slider02 {
  top: 0;
}

.mv_image {
  margin-right: clamp(26.67px, calc(40 * var(--vw)), 40px);
}

.slider01 .track img {
  width: clamp(1529.33px, calc(2294 * var(--vw)), 2294px);
  height: clamp(426.67px, calc(640 * var(--vw)), 640px);
}

.slider02 .track img {
  width: clamp(1786.67px, calc(2680 * var(--vw)), 2680px);
  height: clamp(426.67px, calc(640 * var(--vw)), 640px);
}

.slider01 .track {
  animation: scroll-left 70s linear infinite;
}

.slider02 .track {
  animation: scroll-left 45s linear infinite;
}

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

@keyframes scroll-right {
  from {
    transform: translateX(-50%);
  }

  to {
    transform: translateX(0);
  }
}

#catch_copy {
  width: 100%;
  height: clamp(246.67px, calc(370 * var(--vw)), 370px);
  position: absolute;
  background: rgba(187, 206, 211, 0.3);
  top: clamp(400px, calc(600 * var(--vw)), 600px);
  padding: clamp(70px, calc(105 * var(--vw)), 105px) 0 0 clamp(53.33px, calc(80 * var(--vw)), 80px);
}

#catch_copy h2 {
  font-size: clamp(40px, calc(60 * var(--vw)), 60px);
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.33rem;
}


#page_header {
  background: rgba(187, 206, 211, 0.3);
  padding-bottom: clamp(46.67px, calc(70 * var(--vw)), 70px);
}

.breadcrumbs {
  display: flex;
  justify-content: flex-end;
  padding: clamp(20px, calc(30 * var(--vw)), 30px) 4.17% 0 0;
}

.breadcrumbs ul {
  display: flex;
  justify-content: flex-end;
}

.breadcrumbs li {
  color: #909090;
  font-size: clamp(10.67px, calc(14 * var(--vw)), 14px);
  line-height: 1;
  position: relative;
  margin-right: clamp(10px, calc(16 * var(--vw)), 16px);
}


.breadcrumbs li:last-child {
  margin-right: 0;
}

.breadcrumbs li::after {
  content: '>';
  /* ここに好きな文字を入れます */
  position: absolute;
  font-size: clamp(10px, calc(14 * var(--vw)), 14px);
  /* 文字のサイズ（お好みで調整） */
  right: clamp(-13px, calc(-13 * var(--vw)), -8.67px);
  top: 50%;
  transform: translateY(-50%);
}

.breadcrumbs li a {
  color: #909090;
}

.breadcrumbs li a:link {
  text-decoration: underline;
}

.breadcrumbs li a:hover {
  text-decoration: none;
}

.breadcrumbs li:last-child:after {
  display: none;
}


#page_header h1 {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: clamp(40px, calc(60 * var(--vw)), 60px);
  line-height: 1;
  margin: clamp(50px, calc(75 * var(--vw)), 75px) 0 clamp(50px, calc(75 * var(--vw)), 75px) 4.17%;
}

#page_header h2 {
  font-size: clamp(13.33px, calc(20 * var(--vw)), 20px);
  font-weight: 400;
  margin-left: clamp(173.33px, calc(260 * var(--vw)), 260px);
}



/*-----------------------------------------------------
  contents　
-----------------------------------------------------*/

section#about_us {
  position: relative;
}

section#about_us::before {
  content: '';
  width: 100%;
  height: clamp(226.67px, calc(340 * var(--vw)), 340px);
  background-color: var(--bg-blue);
  position: absolute;
  bottom: 0;
  z-index: -1;
}


main section#about_us .sect_box {
  display: flex;
  justify-content: space-between;
}

main section#about_us #about_us_01 {
  margin-bottom: clamp(53.33px, calc(80 * var(--vw)), 80px);
  padding: 0 clamp(120px, calc(180 * var(--vw)), 180px);
}

section#about_us #about_us_01 .sect_box_L {
  width: 50%;
  padding-left: 30px;
}

section#about_us #about_us_01 .sect_box_R {
  width: 50%;
}

section#about_us #about_us_01 h3 {
  font-size: clamp(32px, calc(48 * var(--vw)), 48px);
  font-weight: 600;
  color: var(--text-blue);
  line-height: 1.5;
  letter-spacing: 0.33rem;
  margin-bottom: clamp(16.67px, calc(25 * var(--vw)), 25px);
}

section#about_us #about_us_01 p {
  font-size: clamp(13.33px, calc(20 * var(--vw)), 20px);
  letter-spacing: 0;
}

#about_fig {
  width: clamp(493.33px, calc(740 * var(--vw)), 740px);
  height: clamp(338px, calc(507 * var(--vw)), 507px);
  position: relative;
}

#about_fig .fig_border {
  position: absolute;
  background-color: var(--bg-black);
  z-index: 99;
}

#about_fig #fig_border_01 {
  width: 1px;
  height: clamp(182.67px, calc(274 * var(--vw)), 274px);
  bottom: 0;
  left: clamp(13.33px, calc(20 * var(--vw)), 20px);
}

#about_fig #fig_border_02 {
  width: 1px;
  height: 100%;
  bottom: 0;
  left: clamp(168.67px, calc(253 * var(--vw)), 253px);
}

#about_fig #fig_border_03 {
  width: 1px;
  height: 100%;
  bottom: 0;
  left: clamp(324.67px, calc(487 * var(--vw)), 487px);
}

#about_fig #fig_border_04 {
  width: 1px;
  height: clamp(182.67px, calc(274 * var(--vw)), 274px);
  bottom: 0;
  left: clamp(480px, calc(720 * var(--vw)), 720px);
}

#about_fig #fig_border_05 {
  width: clamp(182.67px, calc(274 * var(--vw)), 274px);
  height: 1px;
  top: clamp(13.33px, calc(20 * var(--vw)), 20px);
  left: clamp(156px, calc(234 * var(--vw)), 234px);
}

#about_fig #fig_border_06 {
  width: 100%;
  height: 1px;
  top: clamp(168.67px, calc(253 * var(--vw)), 253px);
  left: 0;
}

#about_fig #fig_border_07 {
  width: clamp(182.67px, calc(274 * var(--vw)), 274px);
  height: 1px;
  bottom: clamp(13.33px, calc(20 * var(--vw)), 20px);
  left: 0;
}

#about_fig #fig_border_08 {
  width: clamp(182.67px, calc(274 * var(--vw)), 274px);
  height: 1px;
  bottom: clamp(13.33px, calc(20 * var(--vw)), 20px);
  right: 0;
}

#about_fig .about_fig_box {
  width: clamp(182.67px, calc(274 * var(--vw)), 274px);
  height: clamp(182.67px, calc(274 * var(--vw)), 274px);
  padding: clamp(13.33px, calc(20 * var(--vw)), 20px);
  position: absolute;
}

.about_fig_inner {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  padding: clamp(41.33px, calc(62 * var(--vw)), 62px) clamp(6.67px, calc(10 * var(--vw)), 10px) 0;
  text-align: center;
}

.about_fig_inner h4 {
  display: inline-block;
  background-color: var(--bg-white);
  margin-bottom: clamp(10px, calc(15 * var(--vw)), 15px);
  padding: clamp(2px, calc(3 * var(--vw)), 3px) clamp(6.67px, calc(10 * var(--vw)), 10px) clamp(3.33px, calc(5 * var(--vw)), 5px);
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: clamp(20px, calc(30 * var(--vw)), 30px);
  line-height: 1;
}

.about_fig_inner p {
  font-size: clamp(12px, calc(18 * var(--vw)), 18px);
  line-height: 1.5;
  font-weight: 500;
}

#about_fig_01 {
  width: clamp(182.67px, calc(274 * var(--vw)), 274px);
  height: clamp(182.67px, calc(274 * var(--vw)), 274px);
  position: absolute;
  top: 0;
  left: 0;
}

#about_fig_01 .arrow_circle {
  position: absolute;
  bottom: clamp(38px, calc(57 * var(--vw)), 57px);
  right: clamp(40.67px, calc(61 * var(--vw)), 61px);
}

#about_fig_02 {
  top: 0;
  left: clamp(155.33px, calc(233 * var(--vw)), 233px);
}

#about_fig_02 .about_fig_inner {
  background: #b8d3e6;
  color: #417ba0;
}

#about_fig_03 {
  width: clamp(182.67px, calc(274 * var(--vw)), 274px);
  height: clamp(182.67px, calc(274 * var(--vw)), 274px);
  position: absolute;
  top: 0;
  left: clamp(310.67px, calc(466 * var(--vw)), 466px);
}

#about_fig_03 .arrow_circle {
  position: absolute;
  bottom: clamp(38px, calc(57 * var(--vw)), 57px);
  left: clamp(40.67px, calc(61 * var(--vw)), 61px);
}

#about_fig_04 {
  top: clamp(155.33px, calc(233 * var(--vw)), 233px);
  left: 0;
}

#about_fig_04 .about_fig_inner {
  background: #b9d9d6;
  color: #429c93;
}

#about_fig_05 {
  width: clamp(182.67px, calc(274 * var(--vw)), 274px);
  height: clamp(182.67px, calc(274 * var(--vw)), 274px);
  position: absolute;
  top: clamp(155.33px, calc(233 * var(--vw)), 233px);
  left: clamp(155.33px, calc(233 * var(--vw)), 233px);
}

#about_fig_05 .arrow_circle {
  position: absolute;
  top: clamp(83.33px, calc(125 * var(--vw)), 125px);
  left: clamp(61.33px, calc(92 * var(--vw)), 92px);
}

#about_fig_06 {
  top: clamp(155.33px, calc(233 * var(--vw)), 233px);
  left: clamp(310.67px, calc(466 * var(--vw)), 466px);
}

#about_fig_06 .about_fig_inner {
  background: #e6e5b9;
  color: #949430;
}

#about_us_01 #about_fig_06 .about_fig_inner p {
  letter-spacing: -0.1em;
  font-size: clamp(12px, calc(18 * var(--vw)), 18px);
}

section#about_us .corp_info {
  width: 50%;
}

section#about_us .hashtag_box_frame_inner {
  padding: clamp(44px, calc(66 * var(--vw)), 66px) clamp(13.33px, calc(20 * var(--vw)), 20px) clamp(36.67px, calc(55 * var(--vw)), 55px);
}

section#about_us #about_us_02.sect_box {
  padding: 0 clamp(90px, calc(160 * var(--vw)), 160px);
}

section#about_us #about_us_02 h4 {
  margin-bottom: clamp(23.33px, calc(35 * var(--vw)), 35px);
}

section#about_us #about_us_02 h4 img {
  width: 100%;
  height: auto;
}

section#about_us #about_us_02 h4.miya_sangyo {
  width: clamp(218.667px, calc(328 * var(--vw)), 328px);
}

section#about_us #about_us_02 h4.miya_estate {
  width: clamp(254px, calc(381 * var(--vw)), 381px);
}

section#about_us #about_us_02 p {
  font-size: clamp(12px, calc(18 * var(--vw)), 18px);
  line-height: 2;
  text-align: center;
}


/*---- business ----*/

.btn_area {
  display: flex;
}


section#business .btn_area {
  position: relative;
  display: flex;

}


section#business .cross_box {
  width: clamp(608.67px, calc(913 * var(--vw)), 913px);
}



section#business .cross_box_inner {
  height: clamp(160px, calc(240 * var(--vw)), 240px);
  background-size: cover;
  position: relative;
  margin: 1em;
}

section#business .cross_box_inner a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 clamp(42px, calc(63 * var(--vw)), 63px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

section#business .cross_box_inner h3 {
  text-align: center;
  font-weight: 600;
  font-size: 2em;
  color: var(--text-blue);
  line-height: 1.25;
  margin-bottom: clamp(10px, calc(15 * var(--vw)), 15px);
}

section#business .cross_box_inner::after {
  content: '';
  width: clamp(53.33px, calc(80 * var(--vw)), 80px);
  height: clamp(53.33px, calc(80 * var(--vw)), 80px);
  position: absolute;
  right: 0;
  bottom: 0;
  background: var(--bg-white);
  clip-path: polygon(100% 100%, 100% 0, 0 100%);
}

#btn_business .cross_box_inner {
  background: url(../images/business/business_btnbg_01.jpg) no-repeat right bottom;
}

#btn_realestate .cross_box_inner {
  background: url(../images/business/business_btnbg_02.jpg) no-repeat right bottom;
}

#btn_owner .cross_box_inner {
  background: url(../images/business/business_btnbg_03.jpg) no-repeat right bottom;
}

section#business .cross_box::after {
  position: absolute;
  left: 8px;
  top: 0;
  height: 100%;
  writing-mode: vertical-lr;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-size: clamp(10.67px, calc(16 * var(--vw)), 16px);
  line-height: 1;
  color: var(--text-light-blue);
}



/*-- hover --*/

.cross:nth-of-type(2) {
  background:
    linear-gradient(to left,
      transparent calc(40 * var(--vw)),
      var(--border-black) calc(40 * var(--vw)),
      var(--border-black) calc((40 * var(--vw)) + 1px),
      transparent calc((40 * var(--vw)) + 1px)),
    linear-gradient(to bottom,
      transparent calc(40 * var(--vw)),
      var(--border-black) calc(40 * var(--vw)),
      var(--border-black) calc((40 * var(--vw)) + 1px),
      transparent calc((40 * var(--vw)) + 1px));
}

.cross:nth-of-type(3) {
  background:
    linear-gradient(to right,
      transparent calc(40 * var(--vw)),
      var(--border-black) calc(40 * var(--vw)),
      var(--border-black) calc((40 * var(--vw)) + 1px),
      transparent calc((40 * var(--vw)) + 1px)),
    linear-gradient(to top,
      transparent calc(40 * var(--vw)),
      var(--border-black) calc(40 * var(--vw)),
      var(--border-black) calc((40 * var(--vw)) + 1px),
      transparent calc((40 * var(--vw)) + 1px));
}

.cross:nth-of-type(4) {
  background:
    linear-gradient(to left,
      transparent calc(40 * var(--vw)),
      var(--border-black) calc(40 * var(--vw)),
      var(--border-black) calc((40 * var(--vw)) + 1px),
      transparent calc((40 * var(--vw)) + 1px)),
    linear-gradient(to top,
      transparent calc(40 * var(--vw)),
      var(--border-black) calc(40 * var(--vw)),
      var(--border-black) calc((40 * var(--vw)) + 1px),
      transparent calc((40 * var(--vw)) + 1px));
}


.cross {
  transition: all .3s;
}

section#business .cross_box:hover .cross:nth-of-type(1) {
  width: 100%;
}

section#business .cross_box:hover .cross:nth-of-type(2) {
  height: 100%;
}

section#business .cross_box:hover .cross:nth-of-type(3) {
  height: 100%;
}

section#business .cross_box:hover .cross:nth-of-type(4) {
  width: 100%;
}

.arrow_diagonal {
  transition: all .3s;
}

section#business .cross_box:hover .arrow_diagonal {
  transform: translate(calc(5 * var(--vw)), calc(5 * var(--vw)));
}


#case {
  background-color: rgba(187, 206, 211, 0.3);
  position: relative;
}

.case_slider_wrap {
  width: 91.67%;
  margin: 0 auto;
  overflow: hidden;
  padding-left: clamp(30.67px, calc(46 * var(--vw)), 46px);
  padding-right: clamp(26.67px, calc(40 * var(--vw)), 40px);
}

#case_slider {
  overflow: visible;
  position: relative;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

/* spaceBetweenの代わり：スライドのmargin-rightで間隔管理 */
#case_slider .swiper-slide {
  margin-right: clamp(54px, calc(78 * var(--vw)), 78px) !important;
}

#case_slider .swiper-slide {
  width: clamp(212.667px, calc(319 * var(--vw)), 319px) !important;
  height: calc(clamp(320px, calc(480 * var(--vw)), 480px) + clamp(53.33px, calc(80 * var(--vw)), 80px));
  -webkit-transition: width .5s ease, height .5s ease;
  transition: width .5s ease, height .5s ease;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  flex-shrink: 0;
}

#case_slider .swiper-slide.swiper-slide-active {
  width: clamp(320px, calc(480 * var(--vw)), 480px) !important;
  margin-top: 0;
}

.swiper-slide img {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}

.swiper-slide img.is-loaded {
  opacity: 1;
  visibility: visible;
}

#case_slider dl {
  position: relative;
}

#case_slider dd {
  width: 100%;
  margin-bottom: clamp(10px, calc(15 * var(--vw)), 15px);
  aspect-ratio: 1/1;
  position: relative;
  background-color: var(--bg-white);
}

#case_slider dd img {
  width: 100%;
  height: auto;
}

#case_slider .swiper-slide:hover dd img {
  opacity: 0.7;
}

#case_slider .notice {
  position: absolute;
  bottom: 8px;
  right: 8px;
  font-size: clamp(10px, calc(12 * var(--vw)), 12px);
  font-weight: 500;
}

#case_slider .case_number {
  position: absolute;
  transform: rotate(90deg);
  transform-origin: left top;
  top: 0;
  left: clamp(-22px, calc(-22 * var(--vw)), -14.67px);
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-size: clamp(10.67px, calc(16 * var(--vw)), 16px);
}

#case_slider dt {
  font-weight: 500;
  font-size: clamp(16px, calc(24 * var(--vw)), 24px);
  line-height: 1.3;
}

#case_slider a:link {
  text-decoration: none;
  color: var(--text-color);
}

#case_slider a:visited {
  text-decoration: none;
  color: var(--text-color);
}

#case_slider a:hover {
  text-decoration: none;
  color: var(--text-color);
}


#case_slider dt span {
  font-size: clamp(12px, calc(18 * var(--vw)), 18px);
  color: var(--text-blue);
  display: block;
}

.slide_control {
  position: absolute;
  top: 0;
  right: clamp(26.67px, calc(40 * var(--vw)), 40px);
  display: flex;
  gap: clamp(10.67px, calc(16 * var(--vw)), 16px);
  z-index: 99;
}

.slide_prev,
.slide_next {
  width: clamp(33.33px, calc(50 * var(--vw)), 50px);
  height: clamp(33.33px, calc(50 * var(--vw)), 50px);
  background-color: var(--bg-black);
  cursor: pointer;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.slide_prev:hover,
.slide_next:hover {
  background-color: var(--hover-blue);
}

.slide_prev {
  background-image: url(../images/common/arrow_btn_L.png);
  background-repeat: no-repeat;
  background-position: center center;
}

.slide_next {
  background-image: url(../images/common/arrow_btn_R.png);
  background-repeat: no-repeat;
  background-position: center center;
}

#case_bg_line {
  width: clamp(1240px, calc(1860 * var(--vw)), 1860px);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: clamp(260px, calc(390 * var(--vw)), 390px);
}



section#contact {
  background-color: var(--bg-blue);
}

main section#contact h2 .h2_en {
  color: var(--text-white);
  border-left: solid 1px var(--border-white);
  border-right: solid 1px var(--border-white);
}

main section#contact h2 .h2_jp {
  color: var(--text-white);
  border-left: solid 1px var(--border-white);
  border-top: solid 1px var(--border-white);
  border-right: solid 1px var(--border-white);
}

#contact .sect_box {
  padding: 0 clamp(120px, calc(180 * var(--vw)), 180px);
  color: var(--text-white);
}

#contact .sect_box p {
  margin-bottom: clamp(46.67px, calc(70 * var(--vw)), 70px);
}


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

  SP layout

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


@media screen and (max-width: 767px) {



  /*-----------------------------------------------------
  SP header
------------------------------------------------------*/
  header {}

  #mv_PC {
    display: none;
  }

  #mv_SP {
    display: block;
    position: relative;
    overflow: hidden;
    height: calc(1310 * var(--vw-sp));
    opacity: 0;
    -webkit-transition: all .5s;
    transition: all .5s;
  }

  #mv_SP.is-loaded {
    opacity: 1;
  }


  .breadcrumbs {
    padding: calc(32 * var(--vw-sp)) calc(32 * var(--vw-sp)) 0 0;
  }

  .breadcrumbs li {
    font-size: calc(18 * var(--vw-sp));
  }

  #page_header {
    padding-bottom: calc(140 * var(--vw-sp));
  }

  #page_header h1 {
    font-size: calc(60 * var(--vw-sp));
    line-height: 1.75;
    margin: calc(80 * var(--vw-sp)) calc(75 * var(--vw-sp)) 0;
    ;
  }

  #page_header h2 {
    margin: 0 calc(75 * var(--vw-sp)) 0 calc(75 * var(--vw-sp));
    font-size: calc(30 * var(--vw-sp));
  }


  .slider {
    height: calc(827 * var(--vw-sp));
  }

  .slider01 .track {
    animation: scroll-left 50s linear infinite;
  }

  .slider02 .track {
    animation: scroll-left 30s linear infinite;
  }

  .slider01 .track img {
    width: calc(2120 * var(--vw-sp));
    height: calc(827 * var(--vw-sp));
  }

  .slider02 .track img {
    width: calc(2120 * var(--vw-sp));
    height: calc(827 * var(--vw-sp));
  }

  #catch_copy {
    height: calc(586 * var(--vw-sp));
    top: calc(725 * var(--vw-sp));
    padding: calc(135 * var(--vw-sp)) calc(35 * var(--vw-sp)) 0;
  }

  #catch_copy h2 {
    font-size: calc(60 * var(--vw-sp));
    line-height: 1.75;
  }

  /*-----------------------------------------------------
  SP contents
------------------------------------------------------*/

  main section#about_us .sect_box {
    display: block;
  }

  main section#about_us #about_us_01 {
    padding: 0 calc(40 * var(--vw-sp));
  }

  section#about_us #about_us_01 .sect_box_L {
    width: 100%;
    margin-bottom: calc(65 * var(--vw-sp));
    padding-left: 0;
  }

  section#about_us #about_us_01 .sect_box_R {
    width: calc(728 * var(--vw-sp));
    margin-left: calc(-65 * var(--vw-sp));
  }

  section#about_us #about_us_01 h3 {
    font-size: calc(48 * var(--vw-sp));
    margin-bottom: calc(55 * var(--vw-sp));
    letter-spacing: 0.2rem;
  }

  section#about_us #about_us_01 .sect_box_L p {
    font-size: calc(30 * var(--vw-sp));
  }

  #about_fig {
    width: calc(728 * var(--vw-sp));
    height: calc(503 * var(--vw-sp));
    position: relative;
  }

  #about_fig .fig_border {
    position: absolute;
    background-color: var(--bg-black);
    z-index: 99;
  }

  #about_fig #fig_border_01 {
    width: 1px;
    height: calc(274 * var(--vw-sp));
    bottom: 0;
    left: calc(24 * var(--vw-sp));
  }

  #about_fig #fig_border_02 {
    width: 1px;
    height: 100%;
    bottom: 0;
    left: calc(251 * var(--vw-sp));
  }

  #about_fig #fig_border_03 {
    width: 1px;
    height: 100%;
    bottom: 0;
    left: calc(477 * var(--vw-sp));
  }

  #about_fig #fig_border_04 {
    width: 1px;
    height: calc(274 * var(--vw-sp));
    bottom: 0;
    left: calc(703 * var(--vw-sp));
  }

  #about_fig #fig_border_05 {
    width: calc(274 * var(--vw-sp));
    height: 1px;
    top: calc(24 * var(--vw-sp));
    left: calc(228 * var(--vw-sp));
  }

  #about_fig #fig_border_06 {
    width: 100%;
    height: 1px;
    top: calc(250 * var(--vw-sp));
    left: 0;
  }

  #about_fig #fig_border_07 {
    width: calc(274 * var(--vw-sp));
    height: 1px;
    bottom: calc(24 * var(--vw-sp));
    left: 0;
  }

  #about_fig #fig_border_08 {
    width: calc(274 * var(--vw-sp));
    height: 1px;
    bottom: calc(24 * var(--vw-sp));
    right: 0;
  }

  #about_fig .about_fig_box {
    width: calc(274 * var(--vw-sp));
    height: calc(274 * var(--vw-sp));
    padding: calc(24 * var(--vw-sp));
    position: absolute;
  }

  .about_fig_inner {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    padding: calc(62 * var(--vw-sp)) calc(10 * var(--vw-sp)) 0;
    text-align: center;
  }

  .about_fig_inner h4 {
    display: inline-block;
    background-color: var(--bg-white);
    margin-bottom: clamp(10px, calc(15 * var(--vw-sp)), 15px);
    padding: calc(3 * var(--vw-sp)) calc(10 * var(--vw-sp)) calc(5 * var(--vw-sp));
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    font-size: calc(30 * var(--vw-sp));
    line-height: 1;
  }

  section#about_us #about_us_01 .about_fig_inner p {
    font-size: calc(18 * var(--vw-sp));
    line-height: 1.5;
    font-weight: 500;
  }

  #about_fig_01 {
    width: calc(274 * var(--vw-sp));
    height: calc(274 * var(--vw-sp));
    position: absolute;
    top: 0;
    left: 0;
  }

  #about_fig_01 .arrow_circle {
    position: absolute;
    bottom: calc(57 * var(--vw-sp));
    right: calc(61 * var(--vw-sp));
  }

  #about_fig_02 {
    top: 0;
    left: calc(228 * var(--vw-sp));
  }

  #about_fig_02 .about_fig_inner {
    background: #b8d3e6;
    color: #417ba0;
  }

  #about_fig_03 {
    width: calc(274 * var(--vw-sp));
    height: calc(274 * var(--vw-sp));
    position: absolute;
    top: 0;
    left: calc(455 * var(--vw-sp));
  }

  #about_fig_03 .arrow_circle {
    position: absolute;
    bottom: calc(57 * var(--vw-sp));
    left: calc(61 * var(--vw-sp));
  }

  #about_fig_04 {
    top: calc(227 * var(--vw-sp));
    left: 0;
  }

  #about_fig_04 .about_fig_inner {
    background: #b9d9d6;
    color: #429c93;
  }

  #about_fig_05 {
    width: calc(274 * var(--vw-sp));
    height: calc(274 * var(--vw-sp));
    position: absolute;
    top: calc(227 * var(--vw-sp));
    left: calc(228 * var(--vw-sp));
  }

  #about_fig_05 .arrow_circle {
    position: absolute;
    top: calc(92 * var(--vw-sp));
    left: calc(92 * var(--vw-sp));
  }

  #about_fig_06 {
    top: calc(227 * var(--vw-sp));
    left: calc(453 * var(--vw-sp));
  }

  #about_fig_06 .about_fig_inner {
    background: #e6e5b9;
    color: #949430;
  }

  #about_us_01 #about_fig_06 .about_fig_inner p {
    letter-spacing: -0.12em;
    font-size: calc(18 * var(--vw-sp));
  }

  section#about_us {
    padding-bottom: 0;
  }

  section#about_us #about_us_02.sect_box {
    padding: 0;
  }



  section#about_us::before {
    display: none;
  }

  section#about_us .corp_info {
    width: 100%;
  }

  section#about_us .hashtag_box_frame_inner {
    padding: calc(67 * var(--vw-sp)) calc(15 * var(--vw-sp)) calc(55 * var(--vw-sp));
  }

  section#about_us #about_us_02 p {
    font-size: calc(24 * var(--vw-sp));
  }

  section#about_us #about_us_02 h4 {
    margin-bottom: calc(30 * var(--vw-sp));
  }

  section#about_us #about_us_02 h4.miya_sangyo {
    width: calc(327 * var(--vw-sp));
  }

  section#about_us #about_us_02 h4.miya_estate {
    width: calc(381 * var(--vw-sp));
  }

  #about_us_02.sect_box {
    position: relative;
  }

  #about_us_02.sect_box::before {
    content: "";
    width: 100vw;
    height: calc(573 * var(--vw-sp));
    background-color: var(--bg-blue);
    position: absolute;
    top: 50%;
    left: calc(-35 * var(--vw-sp));
    z-index: -1;
    transform: translateY(-50%);
  }




  section#business .btn_area {
    display: block;

  }

  section#business .cross_box {
    width: 100%;
    text-align: center;
    margin-bottom: calc(10 * var(--vw-sp));
  }

  section#business .cross_box_inner::after {
    width: calc(80 * var(--vw-sp));
    height: calc(80 * var(--vw-sp));
  }

  #btn_business .cross_box_inner {
    background: url(../images/business/business_btnbg_sp_01.jpg) no-repeat right bottom;
  }

  #btn_realestate .cross_box_inner {
    background: url(../images/business/business_btnbg_sp_02.jpg) no-repeat right bottom;
  }

  #btn_owner .cross_box_inner {
    background: url(../images/business/business_btnbg_sp_03.jpg) no-repeat right bottom;
  }

  /*-- hover --*/

  .cross:nth-of-type(2) {
    background:
      linear-gradient(to left,
        transparent calc(40 * var(--vw-sp)),
        var(--border-black) calc(40 * var(--vw-sp)),
        var(--border-black) calc((40 * var(--vw-sp)) + 1px),
        transparent calc((40 * var(--vw-sp)) + 1px)),
      linear-gradient(to bottom,
        transparent calc(40 * var(--vw-sp)),
        var(--border-black) calc(40 * var(--vw-sp)),
        var(--border-black) calc((40 * var(--vw-sp)) + 1px),
        transparent calc((40 * var(--vw-sp)) + 1px));
  }

  .cross:nth-of-type(3) {
    background:
      linear-gradient(to right,
        transparent calc(40 * var(--vw-sp)),
        var(--border-black) calc(40 * var(--vw-sp)),
        var(--border-black) calc((40 * var(--vw-sp)) + 1px),
        transparent calc((40 * var(--vw-sp)) + 1px)),
      linear-gradient(to top,
        transparent calc(40 * var(--vw-sp)),
        var(--border-black) calc(40 * var(--vw-sp)),
        var(--border-black) calc((40 * var(--vw-sp)) + 1px),
        transparent calc((40 * var(--vw-sp)) + 1px));
  }

  .cross:nth-of-type(4) {
    background:
      linear-gradient(to left,
        transparent calc(40 * var(--vw-sp)),
        var(--border-black) calc(40 * var(--vw-sp)),
        var(--border-black) calc((40 * var(--vw-sp)) + 1px),
        transparent calc((40 * var(--vw-sp)) + 1px)),
      linear-gradient(to top,
        transparent calc(40 * var(--vw-sp)),
        var(--border-black) calc(40 * var(--vw-sp)),
        var(--border-black) calc((40 * var(--vw-sp)) + 1px),
        transparent calc((40 * var(--vw-sp)) + 1px));
  }

  section#business .cross_box_inner {
    height: 140px;
    margin: 0.5em;
  }

  section#business .cross_box_inner a {
    padding: 0 calc(35 * var(--vw-sp));
  }

  section#business .cross_box_inner h3 {
    font-size: calc(40 * var(--vw-sp));
  }

  section#business .cross_box_inner p {
    font-size: calc(24 * var(--vw-sp));
  }

  section#business .cross_box::after {
    font-size: calc(16 * var(--vw-sp));
    top: 0;
    height: 100%;
    transform: none;
  }


  .case_slider_wrap {
    width: 90.6667%;
    padding-left: calc(36 * var(--vw-sp));
    padding-right: 0;
  }

  #case_slider .swiper-slide {
    width: calc(232 * var(--vw-sp)) !important;
    height: calc((328 * var(--vw-sp)) + calc(172 * var(--vw-sp)));
  }

  #case_slider .swiper-slide {
    margin-right: calc(82 * var(--vw-sp)) !important;
  }

  #case_slider .swiper-slide.swiper-slide-active {
    width: calc(328 * var(--vw-sp)) !important;
  }

  #case_slider .case_number {
    font-size: calc(16 * var(--vw-sp));
    left: calc(-14 * var(--vw-sp));
  }

  #case_slider .notice {
    font-size: calc(18 * var(--vw-sp));
    letter-spacing: 0em;
    bottom: 5px;
    right: 5px;
  }

  #case_bg_line {
    display: none;
  }

  #case_slider dt {
    height: calc(150 * var(--vw-sp));
    font-size: calc(30 * var(--vw-sp));
  }

  #case_slider dt span {
    font-size: calc(24 * var(--vw-sp));
  }

  .slide_control {
    right: 0;
    gap: calc(16 * var(--vw-sp));
  }

  .slide_prev,
  .slide_next {
    width: calc(49 * var(--vw-sp));
    height: calc(49 * var(--vw-sp));
    background-size: calc(11 * var(--vw-sp)) auto;
  }


  #company .sect_box {
    display: block;
    padding: 0 calc(75 * var(--vw-sp)) calc(176 * var(--vw-sp));
    position: relative;
  }

  #company .sect_box_L h3 {
    font-size: calc(56 * var(--vw-sp));
    margin-bottom: calc(60 * var(--vw-sp));
  }

  #company .sect_box_L h3 span {
    font-size: calc(40 * var(--vw-sp));
  }

  #company .sect_box_L,
  #company .sect_box_R {
    width: 100%;
  }

  #company .sect_box_L p {
    font-size: calc(30 * var(--vw-sp));
    margin-bottom: calc(70 * var(--vw-sp));
  }

  #company .btn_more {
    position: absolute;
    bottom: 0;
  }


  #contact .sect_box {
    padding: 0 calc(75 * var(--vw-sp));
  }

  #contact .sect_box p {
    margin-bottom: calc(65 * var(--vw-sp));
  }



}