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

	Title: portfolio.css
	Created: 2025-12-08

=========================================================== */
/*

	list


=========================================================== */
/* ===========================================================

	index

=========================================================== */
.port-data {
  border: 1px solid #ccc;
  position: relative;
}
.port-data h5 {
  text-align: center;
  background: #d9ecea;
  margin: 0 0 16px;
  padding: 16px 0;
  border-bottom: 1px solid #ccc;
}
.center-text{
  text-align: center;
  position: absolute;
  left: 50%;
  bottom: 110px;
  font-size: 14px;
  line-height: 1;
  transform: translateX(-50%);
}
.is-en .center-text {
  bottom: 110px;
}
.center-text span {
  font-size: 20px;
  font-weight: 600;
  font-size: 20px;
  font-weight: 600;
  display: inline-block;
  margin-top: 8px;
}
@media (max-width: 1024px) {
  .center-text{
    bottom: 112px;
  }
}
/* ===========================================================

	detail

=========================================================== */
.page-title__inner h1 {
  display: flex;
  align-items: center;
  gap: 8px;
}
.number {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: max-content;
  font-size: 20px;
  font-weight: 600;
  background-color: #9f9fa0;
  color: #fff;
  padding: 4px 8px;
}
.number .premium {
  font-size: 10px;
}
.number.premium-type {
  background-color: #a69668;
}
.pagenation {
  display: flex;
  justify-content: space-between;
  margin-left: 0 !important;
}
.pagenation.top {
  margin-bottom: 64px;
}
.pagenation.bottom {
  margin-top: 64px;
}
.pagenation li {
  list-style: none !important;
}
.pagenation li:before {
  content: none !important;
}
.pagenation .back a::after {
  content: none !important;
}
.prevLink:after {
  right: auto;
  left: 24px;
  transform: translateY(-50%) scale(-1, 1);
}
.bxslider {
  margin: 0 0 32px 0 !important;
}
.bxslider li {
  height: 400px;
}
.bxslider li img {
  height: 400px;
  margin: auto;
}
.bxsliderThumb {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: 16px 0 12px !important;
}
.bxsliderThumb li {
  list-style: none !important;
}
.bxsliderThumb li:before {
  content: none !important;
}
.bxsliderThumb li a {
  opacity: 0.6;
}
.bxsliderThumb li a.active {
  opacity: 1;
}
.bxsliderThumb li img {
  width: 64px;
  aspect-ratio: 1/1;
}
.portfolio-spec th {
  min-width: 82px;
  background-color: #d8ecea !important;
  color: var(--main-color) !important;
}

.news-list {
  margin: 0 !important;
}
.news-list li {
  display: flex;
  gap: 16px;
}
.news-list li:before {
  content: none !important;
}
.news-list li .date {
  width: 8em;
}
.news-list li .text {
  flex: 1;
}
.file-size {
  font-size: 14px;
}

.indent-table,
.indent-table th,
.indent-table td {
  border: none !important;
}
.indent-table th {
  background-color: #fff !important;
  padding: 0 !important;
}
.indent-table th em {
  color: #035f7a;
  font-size: 20px;
}
.indent-table td {
  padding: 0 !important;
}
.map-info-name {
  font-size: 16px;
  font-weight: 500;
}
.map-info-image img {
  max-height: 144px;
  margin: auto;
}
.prop_area.portfolio-area-list__name {
  text-align: left;
  max-width: 144px;
}
@media (max-width: 1024px) {
  .pagenation {
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }
  .portfolio-spec th,
  .portfolio-spec td {
    display: block;
    width: auto !important;
  }
  .portfolio-spec td.td1 {
    border-bottom: none !important;
    padding-bottom: 0 !important;
  }
  .portfolio-spec td.td2 {
    border-bottom: none !important;
    padding-top: 0 !important;
  }
}
/* ===========================================================

	summary

=========================================================== */
.portfolio-summary {
  display: flex;
  align-items: center;
  gap: 32px;
  width: 100%;
}
.portfolio-summary dl {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 1;
  padding: 24px 16px;
  border: 1px solid #ccc;
}
.portfolio-summary dt {
  font-size: 20px;
  font-weight: 600;
}
.portfolio-summary dt span {
  font-size: 16px;
  font-weight: 400;
}
.portfolio-summary dd {
  font-size: 20px;
  font-weight: 400;
}
.portfolio-summary dd em {
  font-style: normal;
  color: #035f7a;
  font-size: 32px;
  font-weight: 600;
  margin-right: 5px;
}
.pmlBox{
  display: flex;
  align-items: center;
  margin-top: 64px;
}
.pml-number {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
  font-size: 24px;
  height: 240px;
  width: 240px;
  border-radius: 50%;
  border: 8px solid #439095;
}
@media (max-width: 1024px) {
  .portfolio-summary {
    flex-direction: column;
    align-items: unset;
    gap: 16px;
  }
}
@media (max-width: 560px) {
  .portfolio-summary dl {
    flex-direction: column;
  }
}



/* ===========================================================

	list

=========================================================== */
#db_filter {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.select-warp {
  display: inline-block;
  padding: 12px;
  background-color: #f2f2f2;
}
#select {
  width: 160px;
  height: 32px;
}
.search-btn {
  height: 32px;
}
.section .list-legend {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.section .list-legend ul {
  display: flex;
  align-items: center;
  margin: 0 0 0 0;
  gap: 16px;
}
.section .list-legend ul li {
  padding-left: 16px;
  margin: 0;
}
.section .list-legend ul li:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 6px;
  left: 0;
  border: 0;
  border-radius: 0;
}
.section .list-legend ul li:first-child:before {
  background: #418b8f;
}
.section .list-legend ul li:nth-child(2):before {
  background: #c3b250;
}
.section .list-legend ul li:last-child:before {
  background: #dc976d;
}

.portfolio-type--1 th {
  background-color: #418b8f !important;
}
.portfolio-type--2 th {
  background-color: #c3b250 !important;
}
.portfolio-type--3 th {
  background-color: #dc976d !important;
}
.total td {
  background-color: var(--table-total-color); !important;
}

.portfolio-type__name_link {
  display: block;
}

a.alpha {
  display: block;
}
.official-icon {
  display: block;
  line-height: 1;
  margin-top: 2px;
}
.official-icon span {
  display: inline-block;
  position: relative;
  text-decoration: none;
  font-size: 10px;
  font-weight: 600;
  border: 1px solid #333;
  color: #333;
  background-color: #f2f2f2;
  padding: 3px 2px 2px;
}
.official-icon span:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  background: url(../img/ja/icon-blank.svg) no-repeat center / contain;
  width: 16px;
  height: 16px;
  margin: 0 8px;
  position: absolute;
  top: 0;
}
@media (max-width: 1024px) {
}

/* ===========================================================

	list

=========================================================== */
.portfolio-list thead th {
  font-weight: 400 !important;
}
/* ===========================================================

	rate

=========================================================== */

.section ul.ul-backnumber {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 12px;
}
.section ul.ul-backnumber li {
  list-style: none;
  white-space: nowrap;
}
.section ul.ul-backnumber li::before {
  content: none !important;
}

th.type-office {
  color: #fff !important;
  background-color: #418b8f !important;
  width: 160px;
}
th.type-resi {
  color: #fff !important;
  background-color: #c3b250 !important;
  width: 160px;
}
th.type-com {
  color: #fff !important;
  background-color: #dc976d !important;
  width: 160px;
}
th.type-total {
  color: #fff !important;
  background-color: #666 !important;
  width: 160px;
}
td.type-office {
  color: #fff;
  background-color: #418b8f22 !important;
  width: 160px;
}
td.type-resi {
  color: #fff;
  background-color: #c3b25022 !important;
  width: 160px;
}
td.type-com {
  color: #fff;
  background-color: #dc976d22 !important;
  width: 160px;
}
td.type-total {
  color: #fff;
  background-color: #f2f2f2 !important;
  width: 160px;
}
.number-table th {
  border-left: 0 !important;
}

.section table#rate_table1 th,
.section table#rate_table2 th {
  color: var(--main-color);
  font-weight: 600;
  background-color: var(--main-lighter-color);
}
.section table#rate_table1 td.is-empty,
.section table#rate_table2 td.is-empty,
.section table#rate_table3 td.is-empty {
  border-left: none;
}

/* ===========================================================

	map

=========================================================== */
.height--160 {
  height: 160px;
}
.width--160 {
  width: 160px;
}

/* map__list
----------------------------------------------------------- */
#map {
  width: 100%;
  transition: all 0.5s;
}
.map {
  width: 100%;
  height: 600px;
  display: block;
  margin-bottom: 32px;
  position: relative;
  z-index: 1;
}
.js--map__list--close .map__gm {
  width: calc(100% - 40px) !important;
}
.mappin-list {
  display: flex;
  justify-content: end;
  align-items: center;
  margin-top: 8px !important;
  clear: both;
}
.mappin-list li {
  margin-left: 16px;
  margin-bottom: 0;
  line-height: 1;
  display: flex;
  align-items: center;
}
.mappin-list li img {
  margin-right: 8px;
  line-height: 1;
}
.prop_title {
  display: flex;
}
.prop_title a {
  display: block;
  line-height: 1.2;
}
.gm-style img {
  margin: auto;

}
@media screen and (max-width: 767px) {
  #map {
    width: 100%;
    height: calc(100vh - 100px);
  }
}
.map__list {
  position: absolute;
  top: 60px;
  left: 0;
  width: 264px;
  height: auto;
  max-height: 540px;
  padding: 40px 20px;
  background-color: #bfd3d1ee;
  overflow-y: auto;
  transition: all 0.5s;
  z-index: 2;
}
.is-en .map__list {
  width: 296px;
}
@media screen and (max-width: 767px) {
  .map__list {
    /* display: none; */
  }
}
.js--map__list--close .map__list {
  width: 40px;
  padding: 40px 0 0 38px;
  overflow: hidden;
  white-space: nowrap;
}
.map__list li {
  border-bottom: solid 1px #aaa;
  color: #111;
  margin: 1px;
}
.map__list a {
  padding: 5px 10px;
  margin: 0;
  display: block;
  color: #111;
}
.map__list a:link,
.map__list a:visited {
  color: var(--main-color);
  text-decoration: none;
  transition: all 0.5s;
}
.map__list a:hover {
  opacity: 0.7;
}
/* map__list-switch */
.map__list-switch {
  position: absolute;
  top: 8px;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
  transition: all 0.5s;
}
.map__list-switch:hover {
}
.map__list-switch::before,
.map__list-switch::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  height: 2px;
  background-color: #111;
  transition: all 0.2s;
}
@media all and (-ms-high-contrast: none) {
  .map__list-switch {
    top: 71px;
  }
  .map__list-switch::before,
  .map__list-switch::after {
    top: 51%;
  }
}
.map__list-switch:hover::before,
.map__list-switch:hover::after {
  background-color: #111;
}
.js--map__list--open .map__list-switch::before,
.js--map__list--open .map__list-switch::after {
  width: 25px;
}
.js--map__list--open .map__list-switch::before {
  transform: rotate(135deg);
  margin-left: -12px;
}
.js--map__list--open .map__list-switch::after {
  transform: rotate(-135deg);
  margin-left: -12px;
}
.js--map__list--close .map__list-switch::before,
.js--map__list--close .map__list-switch::after {
  width: 15px;
}
.js--map__list--close .map__list-switch::before {
  transform: rotate(45deg);
  margin-left: -8px;
  margin-top: -7px;
}
.js--map__list--close .map__list-switch::after {
  transform: rotate(-45deg);
  margin-left: -8px;
  margin-top: 3px;
}
.portfolio-area-list {
  display: flex;
  flex-wrap: wrap;
  margin: 24px -8px !important;
}
.portfolio-area-list h2 {
  width: 100%;
}
.portfolio-area-list li {
  width: 16%;
  margin: 8px 0;
}
.portfolio-area-list li .portfolio-area-list__thum a {
  display: block;
  height: 200px;
  overflow: hidden;
  position: relative;
  margin-bottom: 8px;
}
.portfolio-area-list li img {
  width: 80%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1000px) {
  .portfolio-area-list li {
    width: 25%;
  }
}
@media screen and (max-width: 600px) {
  .portfolio-area-list li {
    width: 50%;
  }
}

.portfolio-area-list__name {
  display: block;
  text-align: center;
}
.portfolio-type-office {
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  padding: 8px;
  background-color: #439095;
}
.portfolio-type-resi {
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  padding: 8px;
  background-color: #c9b84f;
}
.portfolio-type-com {
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  padding: 8px;
  background-color: #e49b6f;
}
.portfolio-type-total {
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  padding: 8px;
  background-color: #666;
}

.backnumber-select {
  font-size: 14px;
  width: 352px;
  border-color: #d9d9d9;
  padding: 8px 16px;
  margin-bottom: 16px;
}
.number-table {
  border-top: none !important;
}
.number-table thead tr:first-child th:first-child {
  background-color: #fff;
}

.diversification .column--equal-width {
    align-items: normal;
}
.diversification .column--equal-width + .column--equal-width {
  margin-top: 32px;
}
