@charset "utf-8";
.greeting {  
  background: url(../img/sub/greeting-bg.jpg) no-repeat right bottom / 39.6rem;
}

.greeting .tit {
  font-size: 3.6rem;
  font-weight: 700;
}

.greeting .tit span {
  color: #005C9F;
}

.greeting p {
  margin-bottom: 3rem;
  font-size: 2rem;
  line-height: 150%;
  letter-spacing: -0.03em;
}

.greeting .name {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3rem;
  padding-top: 6.5rem;
  padding-bottom: 6.5rem;
  font-weight: 600;
}

.greeting .name img {
  max-height: 7rem;
}

.center_system {
  position: relative;
  margin-left: 3rem;
}

.center_system>ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  padding-bottom: 37rem;
  width: 100%;
}

.center_system>ul>li>p {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 17rem;
  height: 17rem;
  color: #000;
  text-align: center;
  border-radius: 9rem;
  border: 1rem solid #E5EBF0;
  background: #E5EBF0;
}

.center_system>ul>li.box01>p,
.center_system>ul>li.box02>p,
.center_system>ul>li.box03>p {
  font-weight: 700;
  border-color: #005C9F;
  background: #F5F5F5;
}

.center_system>ul>li.box02>p {
  width: 24rem;
  color: #fff;
  background: #005C9F;
}

.center_system>ul>li[class ^= box]>p::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3.1rem;
  margin: 0 auto;
  width:0;
  height: 0;
  border-top: 0.8rem solid #005C9F;
  border-right: 0.7rem solid transparent;
  border-left: 0.7rem solid transparent;  
}

.center_system>ul>li.box02>p::after {
  border-top-color: #fff;
}

.center_system dl {
  position: absolute;
  bottom: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 2rem;
  padding: 3rem;
  height: 35rem;
  width: calc(33.3% - 4rem / 3);
  border-radius: 2rem;
  border: 3px solid #E5EBF0;
  background: #FFF;
}

.center_system .box01 dl { 
  left: 0;
}

.center_system .box02 dl {  
  left: 0;
  right: 0;
  margin: 0 auto;
}

.center_system .box03 dl { 
  right: 0;
}

.center_system dt {
  text-align: center;
  padding: 1rem 0;
  color: #FFF;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.06rem;
  border-radius: 3rem;
  background: #005C9F;
}

.center_system dd>ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}

.center_system dd>ul>li {
  flex: 1 1 100%;
  text-align: left;
  margin: 0;
  color: #555;
  font-size: 1.7rem;
}

.center_system .box01 dd>ul>li {
  flex-basis: calc(50% - 0.4rem);
}

.center_business {
  display: flex;
  flex-wrap: wrap;
  padding-left: 3rem;
}

.center_business>li {
  position: relative;
  text-align: center;
  gap: 1.2rem;
  width: 25%;
  padding: 13.2rem 2rem 3rem 2rem;
  font-size: 2rem;
  font-weight: 600;
  border-left: 1px solid #DDD;
}

.center_business>li:nth-child(1) {
  border: none;
}

.center_business>li span {
  display: block;
}

.center_business>li::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 2rem;
  margin: 0 auto;
  --w: 10rem;
	--negative: calc(var(--w) * -1);
  width: var(--w);
  height: var(--w);
  border-radius: 10rem;
  background: #33B2E3 url(../img/sub/center_business.svg) no-repeat 0 0 / 40rem;
}

.center_business>li:nth-child(2)::before {
  background-color: #5FBA46;
  background-position: calc(var(--negative) * 1) 0;
}

.center_business>li:nth-child(3)::before {
  background-color: #FFBD3C;
  background-position: calc(var(--negative) * 2) 0;
}

.center_business>li:nth-child(4)::before {
  background-color: #EB6379;
  background-position: calc(var(--negative) * 3) 0;
}

.history>li {
  position: relative;
  display: flex;
  align-items: flex-start;
}

.history .year {
  position: relative;
  flex: 0 0 auto;
  width: 17.5rem;
  font-size: 2.9rem;
  font-weight: 700;
}

.history .year::before {
  content: '';
  position: absolute;
  right: 3rem;
  top: calc(50% - 1.5rem / 2);
  width: 1.5rem;
  height: 1.5rem;
  background: url(../img/sub/history-dot.svg) no-repeat 0 0 / 100%;
}

.history ul {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-left: 6rem;
  padding-bottom: 6rem;
}

.history ul::after {
  content: '';
  position: absolute;
  top: 1rem;
  left: -3.8rem;
  width: 0.1rem;
  height: 100%;
  background: #AECADF;
  z-index: -1;
}

.history>li:nth-last-child(1) ul {
  padding-bottom: 0;
}

.history>li:nth-last-child(1) ul::after {
  display: none;
}

.history ul li {
  display: flex;
  align-items: flex-start;
}

.history ul li .date {
  flex: 0 0 auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 3rem;
  padding: 0.3rem 1.6rem;
  width: 9.7rem;
  font-size: 1.7rem;
  font-weight: 600;
  border-radius: 1rem;
  background: #E5EBF0;
}

.history ul li .date::after {
  content: '-';
  position: absolute;
  right: -2.5rem;
  top: 0rem;
  font-size: 1.8rem;
  font-weight: 400;
}

.vision {
  display: flex;
  gap: 2rem;
  --bg: url(../img/sub/vision.svg) no-repeat 0 0 / 30rem;
}

.vision+.vision {  
  margin-top: 3rem;
}

.vision dt {
  flex: 0 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 0.6rem 0;
  width: 16rem;
  font-size: 2.4rem;
  font-weight: 500;
  border-radius: 2rem;
  background: #F5F5F5;
}

.vision dd {
  flex: 1 1 auto;
}

.vision .slogan>div {
  position: relative;
  padding: 2.4rem 8.7rem;
}

.vision .slogan>div::before,
.vision .slogan>div::after {
  content: '';
  position: absolute;
  top: calc(50% - 12.9rem / 2);
  left: 0;
  width: 3.2rem;
  height: 12.9rem;
  background: var(--bg);
}

.vision .slogan>div::after {
  left: auto;
  right: 0;
  transform: rotate(180deg);
}

.vision .slogan {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 1rem;
  padding: 2rem 6rem;
  border-radius: 2rem;
  background: #F3F7FB;
}

.vision .slogan .tit {
  display: inline-flex;
  align-items: center;
  margin-bottom: 1rem;
  padding: 0 2rem;
  height: 3.3rem;
  color: #FFF;
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 150%;
  border-radius: 3rem;
  background: #0C8CBE;
}

.vision .slogan .txt {
  color: #005C9F;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 150%;
}

.vision dd>ul {
  display: flex;
  gap: 2rem;
  padding: 2rem 0;
}

.vision dd>ul>li {
  flex: 1 1 calc(33.3% - 6rem / 2);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.vision dd>ul ul {
  width: 100%;
}

.vision dd>ul ul li {
  position: relative;
  margin-top: 0.4rem;
  padding-left: 1rem;
  font-size: 1.7rem;
  line-height: 140%;
}

.vision dd>ul ul li::before {
  content: '-';
  position: absolute;
  left: 0;
  top: 0;
}

.vision .goal>ul {
  gap: 3rem;
}

.vision .goal>ul>li {
  flex: 1 1 calc(33.3% - 9rem / 2);
}

.vision .goal>ul>li::before {
  content: '';
  display: block;
  margin-bottom: 1.2rem;
  --w: 10rem;
	--negative: calc(var(--w) * -1);
  width: var(--w);
  height: var(--w);
  background: var(--bg);
  background-position: 0 -12.9rem;
}

.vision .goal>ul>li:nth-child(2):before {
  background-position: var(--negative) -12.9rem;
}

.vision .goal>ul>li:nth-child(3):before {
  background-position: calc(var(--negative) * 2) -12.9rem;
}

.vision .goal>ul>li>p {
  text-align: center;
  margin-bottom: 0.8rem;
  padding: 0.9rem 0;
  width: 100%;
  color: #1A8F30;
  font-size: 2rem;
  font-weight: 600;
  border-radius: 4rem;
  border: 0.3rem solid #1C9832;
}

.vision .goal>ul>li:nth-child(2)>p {
  color: #9C4F0B;
  border-color: #FFBD3C;
}

.vision .goal>ul>li:nth-child(3)>p {
  color: #D34259;
  border-color: #EB6379;
}

.vision .roadmap .year {
  text-align: center;
  padding: 0.9rem 0;
  width: 100%;
  color: #FFF;
  font-size: 2rem;
  font-weight: 600;
  border-radius: 0.5rem;
  background: #1E3E56;
}
.vision .roadmap .stage {
  margin-bottom: 1rem;
  margin-top: 1.2rem;
  padding: 0.8rem 1rem;
  width: 100%;
  font-weight: 600;
  border-bottom: 0.2rem solid #222;
}

.vision .carry>ul>li {
  padding: 2rem 1.5rem;
  border-radius: 2rem;
  background: #F6F7FA;
}

.vision .carry>ul>li p {
  text-align: center;
  margin-bottom: 2.5rem;
  padding: 1rem;
  width: 100%;
  font-size: 2rem;
  font-weight: 600;
  border-bottom: 1px solid #B4BBC0;
}

.location {
  display: flex;
  gap: 4rem;
  --bg: url(../img/sub/location.svg) no-repeat 0 0 / 18rem;
}

.location .map {
  width: 50%;
  height: 40rem;
  border-radius: 1rem;
  border:0.5rem solid #ddd;
  overflow: hidden;
}

.location .con {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 1rem 0;
  width: calc(50% - 4rem);
}

.location .con dt {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 3.7rem;
  font-size: 2rem;
  font-weight: 600;
}

.location .con dt::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 2.7rem;
  height: 2.7rem;
  background: var(--bg);
}

.location .con>ul {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2.5rem;
  padding: 2rem;
  height: 100%;
  border-radius: 1rem;
  background: #F3F7FB;
}

.location .con>ul>li {
  position: relative;
  min-height: 9rem;
  padding-left: 10.5rem;
}

.location .con>ul>li::before {
  content: '';
  position: absolute;
  left: 0;
  top: calc(50% - 9rem / 2);
  width: 9rem;
  height: 9rem;
  border-radius: 6rem;
  background: #FFF var(--bg);
  background-position: 0 -2.7rem;
}

.location .con>ul>li.bus::before {
  background-position: -9rem -2.7rem;
}

.location .con>ul>li p {
  margin-bottom: 0.7rem;
  font-weight: 600;
}

.location .con>ul li li {
  font-size: 1.7rem;
}

.location .con>ul li.bus li {
  position: relative;
  padding-left: 1.5rem;
}

.location .con>ul li.bus li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.9rem;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #4B75C7;
}

.location .con>ul li.bus li.green::before {
  background: #62B823;
}

.business01 {
  display: flex;
  align-items: center;
  gap: 5rem;
  padding-left: 3rem;
}

.business01>p {
  width: 31rem;
  height: 27rem;
  line-height: 0;
}

.business01>ul {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 3rem;
  margin-bottom: 3rem;
  padding: 0 2rem 0 5rem;
  min-height: 21rem;
  border-radius: 2rem;
  border: 0.5rem solid #C9BDB7;
}

.business01>ul>li:nth-child(1) {
  margin-top: 0;
}

.business_effect {
   display: flex;
  gap: 1rem;
  padding-left: 3rem;
}

.business_effect>li {
  flex: 1 1 25%;
  text-align: center;
  padding: 2rem 2rem 3rem 2rem;
  border-radius: 2rem;
  background: #F3F7FB;
}

.business_effect>li dt {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  margin-bottom: 0.8rem;
  color: #005C9F;
  font-size: 2rem;
  font-weight: 600;
}

.business_effect>li dt::before {
  content: '';
  --w: 10rem;
	--negative: calc(var(--w) * -1);
  width: var(--w);
  height: var(--w);
  background: url(../img/sub/business_effect.svg) no-repeat 0 0 / 40rem;
}

.business_effect>li:nth-child(2) dt::before {
  background-position: calc(var(--negative) * 1) 0;
}

.business_effect>li:nth-child(3) dt::before {
  background-position: calc(var(--negative) * 2) 0;
}

.business_effect>li:nth-child(4) dt::before {
  background-position: calc(var(--negative) * 3) 0;
}

.policy {
  --bg: url(../img/sub/policy.svg) no-repeat 0 0 / 11.8rem;
  --house: #005C9F;
  --money: #34831E;
}

.policy #tmenu,
.policy #con-tit .tit {
  display: none;
}

.policy #con-tit .tit:nth-of-type(1) {
  display: block;
}

.policy-box .policy-con+.policy-con {
  margin-top: 4rem;
}

.policy-box .policy-con {
  position: relative;
  padding-top: 33.7rem;
  min-height: 30rem;
  width: 100%;
}

.policy-box .policy-tab {
  position: absolute;
  top: 0;
  display: flex;
  flex-direction: column;
  width: calc(33.3% - 6rem / 2);
  overflow: hidden;
}

.policy-box .policy-tab.tab02,
.policy-box .policy-tab.tab05 {
  left: calc(33.3% + 3rem);
}

.policy-box .policy-tab.tab03,
.policy-box .policy-tab.tab06 {
  right: 0;
}

.policy-box .policy-tab::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 24rem;
  border-radius: 1rem;
  background: rgba(0, 0, 0, 0.50) url(../img/sub/policy-on.svg) no-repeat center / 8rem;
  box-shadow: 0.2rem 0.2rem 1.5rem 0 rgba(0, 0, 0, 0.15);
  overflow: hidden;
  opacity: 0;
  transition: .3s;
}

.policy-box .policy-tab.on::after,
.policy-box .policy-tab:hover::after {
  opacity: 1;
}

.policy-box .policy-tab::before {
  content: '';
  display: block;
  width: 100%;
  height: 24rem;
  border-radius: 1rem;
  background-size: auto 24rem;
  background-position: center bottom;
  overflow: hidden;
}

.policy-box .policy-tab.tab01::before {
  background-color: #D7E4F1;
  background-image: url(../img/sub/policy01.png);
}

.policy-box .policy-tab.tab02::before {
  background-color: #C7DDDD;
  background-image: url(../img/sub/policy02.png);
}

.policy-box .policy-tab.tab03::before {
  background-color: #FFEEC2;
  background-image: url(../img/sub/policy03.png);
}

.policy-box .policy-tab.tab04::before {
  background-color: #F0E8E1;
  background-image: url(../img/sub/policy04.png);
}

.policy-box .policy-tab.tab05::before {
  background-color: #DCF2DE;
  background-image: url(../img/sub/policy05.png);
}

.policy-box .policy-tab.tab06::before {
  background-color: #E6E1F0;
  background-image: url(../img/sub/policy06.png);
}

.policy-box .policy-tab .target {
  margin-top: 2rem;
  font-size: 2.2rem;
  font-weight: 600;
  line-height: normal;
}

.policy-box .policy-tab .sort {
  margin-top: 1rem;
  font-weight: 600;
  line-height: normal;
}

.policy-box .policy-tab .sort span {
  margin-right: 1.5rem;
}

.policy-box .policy-tab .sort span::before {
  content: '#';
}

.policy-box .policy-tab .sort .txt01 {
  color: var(--house);
}

.policy-box .policy-tab .sort .txt02 {
  color: var(--money);
}

.policy-box .policy-tab-con {
  display: none;
  padding: 4.5rem 5rem;
  width: 100%;
  border-radius: 1rem;
  border: 1px solid #E6E6E6;
  background: #FFF;
  box-shadow: 0.2rem 0.2rem 1.5rem 0 rgba(0, 0, 0, 0.15);
}

.policy-box .policy-tab-con .target {
  position: relative;
  padding-left: 4rem;
  margin-bottom: 1.2rem;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: normal;
}

.policy-box .policy-tab-con .target::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.2rem;
  width: 3rem;
  height: 3rem;
  background: var(--bg);
}

.policy-box .policy-tab-con>ul {
  display: flex;
  gap: 3rem;
}

.policy-box .policy-tab-con>ul>li {
  flex: 1 1 50%;
}

.policy-box .policy-tab-con>ul>li>p {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.7rem;
  margin-bottom: 1rem;
  padding: 1rem 1.8rem;
  color: #FFF;
  font-size: 2.2rem;
  font-weight: 600;
  line-height: normal;
  border-radius: 1rem;
}

.policy-box .policy-tab-con>ul>li>p::before {
  content: '';
  display: block;
  width: 3.2rem;
  height: 3.2rem;
  background: var(--bg);
  background-position: -3rem 0;
}

.policy-box .policy-tab-con>ul>li.house>p {
  background: var(--house);
}

.policy-box .policy-tab-con>ul>li.money>p {
  background: var(--money);
}

.policy-box .policy-tab-con>ul>li.money>p::before {
  background-position: -6.2rem 0;
}

.policy-box .policy-tab-con>ul ul>li>a {
  position: relative;
  display: block;
  padding: 0.8rem 3rem 1rem 2.1rem;
  border-bottom: 1px dashed #CCC;
  transition: .3s;
}

.policy-box .policy-tab-con>ul ul>li>a::before {
  content: '';
  position: absolute;
  left: 1rem;
  top: 1.9rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 0.2rem;
  background: #696969;
  transition: .3s;
}

.policy-box .policy-tab-con>ul ul>li>a::after {
  content: '';
  position: absolute;
  right: 1rem;
  top: 0.8rem;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background: #7D7F89 var(--bg);
  background-position: -9.4rem 0;
  transition: .3s;
}

.policy-box .policy-tab-con .house a:hover {
  color: var(--house);
  font-weight: 700;
}

.policy-box .policy-tab-con .house a:hover::before,
.policy-box .policy-tab-con .house a:hover::after {
  background-color: var(--house);  
}

.policy-box .policy-tab-con .money a:hover {
  color: var(--money);
  font-weight: 700;
}

.policy-box .policy-tab-con .money a:hover::before,
.policy-box .policy-tab-con .money a:hover::after {
  background-color: var(--money);  
}

.rent-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4rem;
  margin-top: 6rem;
}

.rent-list>li {
  flex: 1 1 calc(50% - 2rem);
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.rent-list>li .photo {
  width: 100%;
  height: 25.5rem;
  border-radius: 1rem;
  overflow: hidden;
}

.rent-list>li .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rent-list>li .con .tit {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.3rem;
  padding: 0 1rem;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: normal;
}

.rent-list>li .con .tit>span:not(.tag) {
  flex: 1 1 auto;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.rent-list>li .con .tit .tag {
  flex: 0 0 auto;
  display: inline-block;
  padding: 0.5rem 1.1rem;
  font-size: 1.8rem;
  border-radius: 3rem;
}

.rent-list>li .con dl {
  display: flex;
  border-bottom: 1px solid #D8D8D8;
}

.rent-list>li:only-child .con dl dt {
  width: 16.4rem;
}

.rent-list>li .con dl dt {
  flex: 0 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem 0;
  width: 12.4rem;
  font-size: 1.7rem;
  line-height: 140%;
  background: #F5F5F5;
}

.rent-list>li .con dl:nth-of-type(1) {
  border-top: 2px solid #222;
}

.rent-list>li .con dl dd {
  display: flex;
  justify-content: center;
  padding: 1rem 1.5rem;
  font-size: 1.7rem;
  line-height: 140%;
}

.rent-list>li .con dl dd ul {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.rent-list>li .con dl dd ul a {
  position: relative;
  display: block;
  padding-left: 2.6rem;
  font-size: 1.7rem;
  line-height: 140%;
}

.rent-list>li .con dl dd ul a::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.2rem;
  width: 2.1rem;
  height: 2.1rem;
  background: url(../img/sub/link-ic.svg) no-repeat 0 0 / 100%;
}

.buyHouse>ul {
  position: relative;
  margin-top: 2rem;
}

.buyHouse>ul>li>a {
  position: absolute;
  text-align: center;
  width: 12%;
  top: 0;
  padding: 1rem 2rem;
  font-weight: 500;
  line-height: normal;
  border-radius: 0.4rem;
  background: #DADDE9;
  z-index: 9;
}

.buyHouse>ul>li.on>a {
  color: #fff;
  background: #005C9F;
}

.buyHouse>ul>li>div {
  display: none;
}

.buyHouse>ul>li>div .dataScroll {
  top: 15rem;
}

.buyHouse>ul>li.on>div {
  display: block;
  padding-top: 5.6rem;
}

.buyHouse>ul>li.on>div table.data {
  margin-top: 0;
}

.buyHouse>ul>li:nth-child(1)>a {
  left: 0;
}

.buyHouse>ul>li:nth-child(2)>a {
  left: 12.5%;
}

.buyHouse>ul>li:nth-child(3)>a {
  left: 25%;
}

.buyHouse>ul>li:nth-child(4)>a {
  left: 37.5%;
}

.buyHouse>ul>li:nth-child(5)>a {
  left: 50%;
}

.buyHouse>ul>li:nth-child(6)>a {
  left: 62.5%;
}

.buyHouse>ul>li:nth-child(7)>a {
  left: 75%;
}

.buyHouse>ul>li:nth-child(8)>a {
  left: 87.5%;
}

.buyGraph {
  margin-top: 2rem;
}

.buyGraph>div {
  position: relative;
  padding-bottom: 10rem;
}

.buyGraph .unit p {
  text-align: right;
  width: 3rem;
  font-size: 1.4rem;
  font-weight: 500;
  color: #004faf
}

.buyGraph .unit li {
  position: relative;
  margin-top: 3.3rem;
}

.buyGraph .unit li:first-child {
  margin-top: 1rem;
}

.buyGraph .unit li span {
  display: block;
  text-align: right;
  font-size: 1.4rem;
  line-height: 1.7rem;
  width: 3rem;
}

.buyGraph .unit li:before {
  content: "";
  position: absolute;
  top: 0.9rem;
  left: 4rem;
  right: 0;
  height: 0.1rem;
  border-top: 0.1rem solid #d5d5d5;
  transform: translateY(-50%);
}

.buyGraph .unit li:last-child:before {
  border-top: 0.2rem solid #000;
}

.buyGraph .category {
  position: absolute;
  text-align: center;
  bottom: 2rem;
  width: 100%;
}

.buyGraph .category li {
  position: relative;
  display: inline-block;
  padding-left: 2rem;
  margin-left: 3rem;
}

.buyGraph .category li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  height: 1.6rem;
  width: 1.6rem;
  background: #eaeaea;
}

.buyGraph .category li.sum:after {
  content: "";
  position: absolute;
  left: 0;
  top: -1rem;
  width: 0px;
  height: 0px;
  border: 0.8rem solid transparent;
  border-bottom: 0.6rem solid #eaeaea;
}

.buyGraph .category li.th1:before {
  background: #318dff url('/img/sub/buygraph_th1.gif');
}

.buyGraph .category li.th2:before {
  background: #8bc431 url('/img/sub/buygraph_th2.gif');
}

.buyGraph .category li.th3:before {
  background: #fd8b45 url('/img/sub/buygraph_th3.gif');
}

.buyGraph .category li.th4:before {
  background: #e6274f url('/img/sub/buygraph_th4.gif');
}

.buyGraph .category li.th5:before {
  background: #a857ed url('/img/sub/buygraph_th5.gif');
}

.buyGraph .graph {
  position: absolute;
  left: 4rem;
  right: 0;
  top: 0;
  bottom: 11rem;
}

.buyGraph .graph>ul {
  position: absolute;
  bottom: 0;
  display: flex;
  justify-content: space-around;
  align-items: flex-end;
  text-align: center;
  margin: 0 auto;
  width: 100%;
}

.buyGraph .graph>ul>li {
  position: relative;
  display: inline-block;
}

.buyGraph .graph>ul>li dl:after {
  content: "";
  display: block;
  clear: both;
}

.buyGraph .graph>ul>li dt {
  position: absolute;
  bottom: -3.3rem;
  left: 50%;
  width: 100%;
  transform: translateX(-50%);
}

.buyGraph .graph>ul>li dd.sum {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.buyGraph .graph>ul>li dd.sum span {
  display: block;
  font-size: 1.4rem;
  line-height: 1.4rem;
  font-weight: bold;
}

.buyGraph .graph>ul>li dd.sum span:before {
  content: "";
  position: absolute;
  bottom: 0;
  top: 4rem;
  left: 0;
  right: 0;
  background: linear-gradient(to bottom, #ececec 20%, #fff);
  z-index: -1;
}

.buyGraph .graph>ul>li dd.sum span:after {
  content: "";
  position: absolute;
  top: 2rem;
  left: 0;
  width: 100%;
  height: 0px;
  border: 5rem solid transparent;
  border-bottom: 2rem solid #eaeaea;
  border-top: 0;
  z-index: -1;
  box-sizing: border-box;
}

.buyGraph .graph>ul>li dd:not(.sum) {
  position: relative;
  display: inline-block;
  vertical-align: bottom;
  width: 2.4rem;
}

.buyGraph .graph>ul>li dd:not(.sum) span {
  display: block;
  font-size: 1.1rem;
  line-height: 1.3rem;
}

.buyGraph .graph>ul>li dd:not(.sum) span:before {
  content: "";
  position: absolute;
  bottom: 0;
  top: 1.5rem;
  left: 0.4rem;
  right: 0.4rem;
  border-radius: 0.3rem 0.3rem 0 0;
}

.buyGraph .graph>ul>li dd:nth-of-type(n+3) {
  margin-left: 0.4rem;
}

.buyGraph .graph>ul>li dd.th1 span:before {
  background: #318dff url('/img/sub//buygraph_th1.gif');
}

.buyGraph .graph>ul>li dd.th2 span:before {
  background: #8bc431 url('/img/sub//buygraph_th2.gif');
}

.buyGraph .graph>ul>li dd.th3 span:before {
  background: #fd8b45 url('/img/sub//buygraph_th3.gif');
}

.buyGraph .graph>ul>li dd.th4 span:before {
  background: #e6274f url('/img/sub//buygraph_th4.gif');
}

.buyGraph .graph>ul>li dd.th5 span:before {
  background: #a857ed url('/img/sub//buygraph_th5.gif');
}

.buyGraph.buyGArea .graph>ul>li dd:not(.sum) {
  width: 2.1rem;
}

.buyGraph.buyGArea .graph>ul>li dd:nth-of-type(n+3) {
  margin-left: 0;
}

.buyGraph.buyGArea .graph>ul>li dd:not(.sum) span:before {
  content: "";
  left: 0.2rem;
  right: 0.2rem;
}

.recruit_search .recruit_tab {
  text-align: center;
  margin-top: 3rem;
}

.recruit_search .recruit_tab>li {
  display: inline-block;
  position: relative;
}

.recruit_search .recruit_tab>li+li:before {
  display: block;
  content: '';
  position: absolute;
  left: 0px;
  top: 0.8rem;
  width: 0.1rem;
  height: 1.5rem;
  background: #aaa;
}

.recruit_search .recruit_tab>li.on+li:before {
  display: none
}

.recruit_search .recruit_tab>li a {
  display: block;
  padding: 0.5rem 1.8rem;
  border-radius: 0.3rem;
}

.recruit_search .recruit_tab>li.on a {
  background: #009fdc;
  color: #fff;
}

.recruit_list {
  margin-top: 2.5rem;
  overflow: hidden;
}

.recruit_list>li {
  float: left;
  width: 32.3%;
  position: relative;
  margin: 0.6% 0.5%;
  background: #f5f5f5;
  border-radius: 0.8rem;
}

.recruit_list>li.ih {
  background: #ebf0f9
}

.recruit_list>li a {
  padding: 9% 10% 3rem;
  height: 100%;
  display: block;
  transform: rotate(0.03deg);
}

.recruit_list>li a .tag {
  font-size: 0.9em;
}

.recruit_list>li a .tag>span {
  position: relative;
  margin-right: 2rem;
}

.recruit_list>li a .tag>span+span:before {
  display: block;
  content: '';
  position: absolute;
  left: -1.2rem;
  top: 0.1rem;
  width: 0.1rem;
  height: 1.4rem;
  background: #aaa;
}

.recruit_list>li a .tag .tag_lh {
  color: #e24905;
}

.recruit_list>li a .tag .tag_ih {
  color: #0e49b6;
}

.recruit_list>li a .tag .tag_result {
  color: #b50404;
}

.recruit_list>li a dt {
  margin-top: 2.5rem;
  color: #222;
  font-size: 1.11em;
  line-height: 1.3;
  height: 7.3rem;
  overflow: hidden
}

.recruit_list>li a dd {
  margin-top: 1.5rem;
  max-height: 6.3rem;
  color: #666;
  font-size: 0.92em;
  overflow: hidden;
}

.recruit_list>li a .date {
  position: absolute;
  left: 4rem;
  bottom: 3rem;
  color: #666;
  font-size: 0.85em;
}

.recruit_list>li.nodata {
  width: 99%;
  background: none;
  margin: 0;
  border-radius: 0;
}

/* mb */
@media screen and (max-width:1024px) {
  .center_business>li {
    width: 50%;
  }

  .center_business>li:nth-child(3) {
    border-top: 1px solid #DDD;
    border-left: none;
  }

  .center_business>li:nth-child(4) {
    border-top: 1px solid #DDD;
  }

  .history ul {
    padding-left: 3rem;
  }

  .vision {
    flex-direction: column;
  }

  .vision dt {
    width: 100%;
    min-height: 3.6rem;
    border-radius: 1rem;
  }

  .vision dd>ul {
    padding: 0;
  }

  .vision .slogan {
    padding: 2rem;
  }

  .vision .slogan>div {
    padding: 0;
  }

  .vision .slogan>div::before,
  .vision .slogan>div::after {
    display: none;
  }
  
  .location {
    flex-direction: column;
  }

  .location .map,
  .location .con {
    width: 100%;
  }
  
  .business01 {
    flex-direction: column;
    gap: 0;
  }

  .business01>ul {
    margin: 0;
    width: 100%;
    padding: 3rem;
    min-height: auto;
  }

  .rent-list {
    flex-direction: column;
  }

  .rent-list>li .con .tit>span:not(.tag) {
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
  }
  
  .rent-list>li .con .tit span .tag {
    text-align: center;
    width: 80px;
  }

  .buyHouse>ul>li>a {
    width: 24%;
  }
  
  .buyHouse>ul>li.on>div {
    padding-top: 10rem;
  }

  .buyHouse>ul>li:nth-child(n+5)>a {
    top: 5rem;
  }

  .buyHouse>ul>li:nth-child(2)>a {
    left: 25%;
  }

  .buyHouse>ul>li:nth-child(3)>a {
    left: 50%;
  }

  .buyHouse>ul>li:nth-child(4)>a {
    left: 75%;
  }

  .buyHouse>ul>li:nth-child(5)>a {
    left: 0;
  }

  .buyHouse>ul>li:nth-child(6)>a {
    left: 25%;
  }

  .buyHouse>ul>li:nth-child(7)>a {
    left: 50%;
  }

  .buyHouse>ul>li:nth-child(8)>a {
    left: 75%;
  }

  .buyGraph .scrollBox {
    position: relative;
    display: block;
    max-width: 1024px;
    overflow-y: auto;
  }
  
  .buyGraph .scrollBox>div {
    min-width: 1024px;
    -webkit-text-size-adjust: 100%
  }

  .buyGraph .dataScroll {
    position: absolute;
    left: calc(50% - 6rem);
    top: 5rem;
    display: block;
    text-align: center;
    width: 12rem;
    height: 12rem;
    padding-top: 8rem;
    font-size: 1.4rem;
    color: #fff;
    border-radius: 50%;
    background: rgba(0, 0, 0, .7) url(/img/sub/ic_scroll.png) no-repeat center 2.3rem / 4.3rem;
    z-index: 9;
  }
}

/* min-mb */
@media screen and (max-width:500px) {
  .greeting {
    background: none;
  }

  .greeting .tit {
    font-size: 2.7rem;
  }

  .greeting .name {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding-bottom: 0;
  }

  .center_business>li {
    width: 100%;
    border-left: 0;
    border-top: 1px solid #DDD;
  }

  .center_business>li span {
    display: inline;
  }
  
  .history>li {
    flex-direction: column;
    gap: 3rem;
  }
  
  .history .year {
    padding-left: 3rem;
    width: auto;
  }

  .history .year::before {
    right: auto;
    left: 0;
  }

  .history ul::after {
    left: 0.6rem;
    top: -4rem;
    height: calc(100% + 5rem);
  }

  .vision dd>ul {
    flex-direction: column;
  }

  .business_effect {
    flex-direction: column;
  }

  .policy h4,
  .policy h5 {
    display: none;
  }

  .policy-box .policy-con,
  .policy-box .policy-con+.policy-con {
    padding-top: 0;
    margin-top: 0;
  }

  .policy-box .policy-tab {
    position: relative;
    left: 0 !important;
    padding-left: calc(30% + 1rem);
    width: 100%;
    min-height: 100px;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #DADADA;
  }

  .policy-box .policy-tab::before {
    position: absolute;
    left: 0;
    top: 15px;
    width: 30%;
    height: 85px;
    background-repeat: no-repeat;
    background-size: 100%;
  }

  .policy-box .policy-tab::after {
    top: 15px;
    width: 30%;
    height: 85px;
  }
  
  .policy-box .policy-tab.tab01 {
    padding-top: 0;
    margin-top: 0;
    min-height: 85px;
    border: none;
  }
  
  .policy-box .policy-tab.tab01::before {
    top: 0;
  }
    
  .policy-box .policy-tab.tab01::after {
    top: 0;
  }

  .policy-box .policy-tab .target {
    margin-top: 0;
  }

  .policy-box .policy-tab-con {
    margin-top: 15px;
    margin-bottom: 15px;
    padding: 20px;
  }

  .policy-box .policy-tab-con>ul {
    flex-direction: column;
  }

  .recruit_list>li {
    width: 100%;
  }
}

@media screen and (max-width:1280px) {  
  .center_system ul {
    flex-direction: column;
    gap: 0.5rem;
    padding-bottom: 0;
  }
  
  .center_system>ul>li {
    width: 100%;
  }
  
  .center_system>ul>li>p {
    width: 100%;
    height: 100%;
    padding: 0.7rem 0;
    border-radius: 9rem;
  }
  
  .center_system>ul>li:nth-child(1) {
    order: 1;
  }

  .center_system>ul>li:nth-child(3) {
    order: 2;
  }

  .center_system>ul>li[class ^= box]>p {
    display: none;
  }

  .center_system dl {
    position: static;
    margin-top: 2rem;
    width: 100%;
    height: auto;
  }

  .center_system dd>ul>li {
    flex-basis: 100%;
  }
}