/* ---------------------------------------------------------------------------
//  bg
--------------------------------------------------------------------------- */
.top_movie {
  height: 100vh;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition: .6s ease;
  width: 100%;
}
.top_movie.active {
  opacity: 1;
}
.top_movie .video {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.top_bg01 {
  background-image: url(../img/top/bg01.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition: .6s ease;
  width: 100%;
}
.top_bg01.active {
  opacity: 1;
}
.top_bg01::before {
  background: #000;
  content: '';
  height: 100%;
  opacity: .3;
  position: absolute;
  width: 100%;
}
.top .page_bg {
  opacity: 0;
}
.top .page_bg.active {
  opacity: 1;
}

/* ---------------------------------------------------------------------------
//  .tag
--------------------------------------------------------------------------- */
.tag {
  align-items: center;
  background: #c8e880;
  border: solid .2rem #c8e880;
  color: #fff;
  display: flex;
  font-weight: 700;
  justify-content: center;
  text-align: center;
  transition: .3s ease;
}
.news_tag{
  pointer-events: none;
}
.tag:hover {
  background: #fff!important;
  color: #c8e880;
}
.tag.cat01 {
  background: #b6bce2;
  border: solid .2rem #b6bce2;
}
.tag.cat01:hover {
  color: #b6bce2;
}
.tag.cat02 {
  background: #e4cf74;
  border: solid .2rem #e4cf74;
}
.tag.cat02:hover {
  color: #e4cf74;
}
.tag.cat03 {
  background: #edb5aa;
  border: solid .2rem #edb5aa;
}
.tag.cat03:hover {
  color: #edb5aa;
}
.info_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: center;
}
.info_tags .tag {
  border-radius: 1000rem;
  height: 4.1rem;
  width: 21.4rem;
}
@media screen and (max-width:768px) {
  .tag {
    font-size: 1.4rem;
  }
  .info_tags .tag {
    border-radius: 1000rem;
    height: 4.1rem;
    width: calc((100% - 1.5rem) / 2);
  }
}

/* ---------------------------------------------------------------------------
//  .info_cards
--------------------------------------------------------------------------- */
.info_cards {
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 0;
}
.info_cards .card {
  padding: 2.5rem 2.5rem;
  position: relative;
  transition: .3s ease;
  /* width: calc((100% - 7.5rem) / 4); */
  width: calc((100%) / 4);
}
.info_cards .card:hover {
  background: rgba(255,255,255,.9);
  box-shadow: 1rem 1rem 0 rgba(0, 0, 0, .05);
}
.info_cards .card .tag {
  border-radius: 0 0 2rem 0;
  height: 4.1rem;
  left: 2.5rem;
  pointer-events: none;
  position: absolute;
  top: 2.5rem;
  width: 17.8rem;
  z-index: 1;
}
.info_cards .card .img {
  aspect-ratio: 278/234;
  overflow: hidden;
  position: relative;
}
.info_cards .card .img img {
  height: 100%;
  object-fit: cover;
  transition: .3s ease;
  width: 100%;
}
.info_cards .card:hover .img img {
  transform: scale(1.15);
}
.info_cards .card .txts {
  /* padding: 1.5rem; */
  margin-top: 1.5rem;
}
.info_cards .card .txts .h3 {
  -webkit-box-orient: vertical;
  color: #737373;
  display: -webkit-box;
  font-size: 1.8rem;
  font-weight: 700;
  -webkit-line-clamp: 2;
  line-height: calc(30/21);
  margin-bottom: 0;
  min-height: 5rem;
  overflow: hidden;
}
.info_cards .card .txts .dls dl {
  border-bottom: solid 1px #e9e9e9;
  display: flex;
  font-weight: 400;
  justify-content: space-between;
  padding: 1rem 0;
}
.info_cards .card .txts .dls dl dt {
  font-weight: 400;
}
.info_cards .card .btn {
  display: block;
  margin-left: auto;
  margin-top: 1.5rem;
  width: 2.4rem;
}
@media screen and (max-width:768px) {
  .info_cards {
    flex-direction: column;
    gap: 2rem;
  }
  .info_cards .card {
    background: #fff;
    padding: 2rem;
    width: 100%;
  }
  .info_cards .card .tag {
    left: 2rem;
    top: 2rem;
  }
  .info_cards .card .txts .h3 {
    min-height: inherit;
  }
}
/* ---------------------------------------------------------------------------
//  .news_cards
--------------------------------------------------------------------------- */
.news_cards {
  display: flex;
  flex-wrap: wrap;
  gap: 8rem 0;
}
.news_cards .card {
  padding: 2.5rem 2.5rem;
  position: relative;
  transition: .3s ease;
  /* width: calc((100% - 7.5rem) / 4); */
  width: calc((100%) / 4);
}
.news_cards .card:hover {
  background: rgba(255,255,255,.9);
  box-shadow: 1rem 1rem 0 rgba(0, 0, 0, .05);
}

.news_cards .card .img {
  aspect-ratio: 278/234;
  overflow: hidden;
  position: relative;
}
.news_cards .card .img img {
  height: 100%;
  object-fit: cover;
  transition: .3s ease;
  width: 100%;
}
.news_cards .card:hover .img img {
  transform: scale(1.15);
}
.news_cards .card .txts {
  /* padding: 1.5rem; */
  margin-top: 3rem;
  position: relative;
}
.news_cards .card .txts .news_tag {
  align-items: center;
  border-radius: 100rem 100rem 100rem 0;
  color: #fff;
  display: flex;
  height: 4rem;
  justify-content: center;
  left: 2.5rem;
  pointer-events: none;
  position: absolute;
  top: -5rem;
  width: 13.4rem;
  z-index: 1;
}
.news_cards .card .txts  .news_tag.news {
  background: #36d1dc;
}
.news_cards .card .txts  .news_tag.column {
  background: #5ea4f0;
}
.news_cards .card .txts .date {
  color: #737373;
  font-size: 1.5rem;
  line-height: 2;
}
.news_cards .card .txts .h3 {
  -webkit-box-orient: vertical;
  color: #737373;
  display: -webkit-box;
  font-size: 1.8rem;
  font-weight: 700;
  -webkit-line-clamp: 2;
  line-height: calc(30/21);
  margin-bottom: 0;
  min-height: 5rem;
  overflow: hidden;
}
.news_cards .card .txts p {
  -webkit-box-orient: vertical;
  color: #737373;
  display: -webkit-box;
  font-size: 1.6rem;
  font-weight: 700;
  font-weight: 400;
  -webkit-line-clamp: 4;
  line-height: calc(30/16);
  margin-top: 1.2rem;
  overflow: hidden;
}
@media screen and (max-width:768px) {
  .news_cards {
    flex-direction: column;
    gap: 2rem;
  }
  .news_cards .card {
    background: #fff;
    padding: 2rem;
    width: 100%;
  }
  .news_cards .card .txts .news_tag {
    align-items: center;
    border-radius: 100rem 100rem 100rem 0;
    color: #fff;
    display: flex;
    height: 4rem;
    justify-content: center;
    left: 2.5rem;
    pointer-events: none;
    position: absolute;
    top: -5rem;
    width: 13.4rem;
    z-index: 1;
  }
  .news_cards .card .txts .h3 {
    min-height: inherit;
  }
}
/* ---------------------------------------------------------------------------
//  top_mv
--------------------------------------------------------------------------- */
.top_mv {
  position: relative;
  z-index: 1;
}
.top_mv .wrap01 {
  align-items: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: center;
  text-align: center;
}
.top_mv .wrap01 .eng01 {
  position: relative;
  width: 38.75rem;
  z-index: 2;
}
.top_mv .wrap01 .eng02 {
  font-size: 10.2rem;
  font-weight: 700;
  margin-top: -13.5rem;
}
.top_mv .wrap01 .h1 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-top: -2rem;
}
@media screen and (max-width:768px) {
  .top_mv .wrap01 .eng01 {
    width: calc(38.75rem*.6);
  }
  .top_mv .wrap01 .eng02 {
    font-size: 5.2rem;
    margin-top: -7rem;
  }
  .top_mv .wrap01 .h1 {
    font-size: 1.7rem;
    margin-top: -1rem;
  }
}

/* ---------------------------------------------------------------------------
//  top01
--------------------------------------------------------------------------- */
.top01 .container {
  padding-bottom: 50vh;
  position: relative;
  z-index: 1;
}
.top01 .wrap01 {
  align-items: center;
  color: #fff;
  display: flex;
  justify-content: space-between;
}
.top01 .wrap01 .ttls {
  position: sticky;
  top: 50%;
}
.top01 .wrap01 .ttls .eng01 {
  left: -1rem;
  position: relative;
  width: 30.3rem;
}
.top01 .wrap01 .ttls .h2 {
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: .0056rem;
}

.top01 .wrap01 .txts {
  padding: 50vh 0 0;
}
.top01 .wrap01 .txts .p {
  font-size: 2.2rem;
  font-weight: 600;
  letter-spacing: .044rem;
  line-height: calc(57/22);
  margin-bottom: 8rem;
  white-space: nowrap;
}
@media screen and (max-width:768px) {
  .top01 .container {
    padding-bottom: 0;
  }
  .top01 .wrap01 {
    align-items: center;
    flex-direction: column;
    padding: 0 2rem;
  }
  .top01 .wrap01 .ttls {
    position: static;
    text-align: center;
    top: 100%;
  }
  .top01 .wrap01 .ttls .eng01 {
    width: calc(30.3rem * .6);
  }
  .top01 .wrap01 .ttls .h2 {
    font-size: 2rem;
    margin-top: -3rem;
  }

  .top01 .wrap01 .txts {
    padding: 4rem 0 0;
  }
  .top01 .wrap01 .txts .p {
    font-size: 1.6rem;
    margin-bottom: 6rem;
    text-align: justify;
    white-space: wrap;
  }
  .top01 .wrap01 .txts .btnA {
    margin: 0 auto;
  }
}

/* ---------------------------------------------------------------------------
//  top02
--------------------------------------------------------------------------- */
.top02 .container {
  position: relative;
  z-index: 1;
}
.top02 .wrap01 {
  padding: 20rem 0 0;
}
.top02 .wrap01 .head {
  margin-bottom: 6rem;
}
.top02 .wrap01 .head .ttls {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-align: center;
}
.top02 .wrap01 .head .ttls .eng01 {
  width: 41.6rem;
}
.top02 .wrap01 .head .ttls .h2 {
  font-size: 4rem;
  font-weight: 700;
  margin-top: -7rem;
}
.top02 .wrap01  .head .p {
  font-size: 2rem;
  margin-top: 1rem;
  text-align: center;
}
.top02 .wrap01 .info_cards {
  margin-bottom: 6rem;
  margin-top: 6rem;
}
.top02 .wrap01 .btnA {
  margin: 0 auto;
}
@media screen and (max-width:768px) {
  .top02 .wrap01 {
    padding: 16rem 2rem 0;
  }
  .top02 .wrap01 .head {
    margin-bottom: 4rem;
  }
  .top02 .wrap01 .head .ttls .eng01 {
    width: calc(41.6rem*.6);
  }
  .top02 .wrap01 .head .ttls .h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-top: -3rem;
  }
  .top02 .wrap01  .head .p {
    font-size: 1.6rem;
  }
  .top02 .wrap01 .info_cards {
    margin-bottom: 6rem;
    margin-top: 4rem;
  }
}

/* ---------------------------------------------------------------------------
//  top03
--------------------------------------------------------------------------- */
.top03 .container {
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.top03 .wrap01 {
  padding: 20rem 0 0;
}
.top03 .wrap01 .ttls {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-align: center;
}
.top03 .wrap01 .ttls .eng01 {
  width: 41.3rem;
}
.top03 .wrap01 .ttls .h2 {
  color: #5ea4f0;
  font-size: 3.5rem;
  font-weight: 700;
  margin-top: -8rem;
}
.top03 .wrap01 .contents .content {
  background: #f7f7f7;
  margin-top: 12rem;
  /* min-height: 51.8rem; */
  min-height: 45.3rem;
  position: relative;
}
.top03 .wrap01 .contents .content + .content {
  margin-top: 21.7rem;
}
.top03 .wrap01 .contents .content::before {
  background: #f7f7f7;
  content: '';
  height: 100%;
  position: absolute;
  top: 0;
  width: calc((100vw - 118rem) / 2);
}
.top03 .wrap01 .contents .content:nth-of-type(odd):before {
  right: calc((100vw - 118rem) / 2 * -1);
}
.top03 .wrap01 .contents .content:nth-of-type(even):before {
  left: calc((100vw - 118rem) / 2 * -1);
}
.top03 .wrap01 .contents .content .txts {
  padding: 6rem 8rem 8rem;
  width: 59.1rem;
}
.top03 .wrap01 .contents .content:nth-of-type(even) .txts {
  margin-left: auto;
}
.top03 .wrap01 .contents .content .txts .h3 {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: calc(40/28);
  position: relative;
}
.top03 .wrap01 .contents .content .txts .h3 span {
  color: #5ea4f0;
}
.top03 .wrap01 .contents .content .txts .h3::before {
  background: #5ea4f0;
  content: '';
  height: .2rem;
  position: absolute;
  top: 2rem;
  z-index: 1;
}
.top03 .wrap01 .contents .content:nth-of-type(1) .txts .h3::before {
  right: -17rem;
  width: 35.5rem;
}
.top03 .wrap01 .contents .content:nth-of-type(2) .txts .h3::before {
  left: -25rem;
  width: 22.6rem;
}
.top03 .wrap01 .contents .content:nth-of-type(3) .txts .h3::before {
  right: -15rem;
  width: 31.2rem;
}
.top03 .wrap01 .contents .content .txts .p {
  font-size: 2rem;
  line-height: calc(35/20);
  margin-top: 2rem;
  text-align: justify;
}
.top03 .wrap01 .contents .content .img {
  position: absolute;
  right: calc((100vw - 118rem) / 2 * -1);
  top: -7.4rem;
  width: 72rem;
}
.top03 .wrap01 .contents .content:nth-of-type(odd) .img {
  right: calc((100vw - 118rem) / 2 * -1);
}
.top03 .wrap01 .contents .content:nth-of-type(even) .img {
  left: calc((100vw - 118rem) / 2 * -1);
}
@media screen and (max-width:768px) {
  .top03 .wrap01 {
    padding: 16rem 2rem 0;
  }
  .top03 .wrap01 .ttls .eng01 {
    width: calc(41.3rem*.6);
  }
  .top03 .wrap01 .ttls .h2 {
    font-size: 2rem;
    margin-top: -3rem;
  }
  .top03 .wrap01 .contents .content {
    margin-top: 4rem;
    min-height: inherit;
  }
  .top03 .wrap01 .contents .content + .content {
    margin-top: 8rem;
  }
  .top03 .wrap01 .contents .content::before {
    width: 2rem;
  }
  .top03 .wrap01 .contents .content:nth-of-type(odd):before {
    right: -2rem;
  }
  .top03 .wrap01 .contents .content:nth-of-type(even):before {
    left: -2rem;
  }
  .top03 .wrap01 .contents .content .txts {
    padding: 4rem 2rem;
    width: 100%;
  }
  .top03 .wrap01 .contents .content .txts .h3 {
    font-size: 2rem;
    margin-bottom: 26.5rem;
  }
  .top03 .wrap01 .contents .content .txts .h3::before {
    display: none;
  }
  .top03 .wrap01 .contents .content .txts .p {
    font-size: 2rem;
    line-height: calc(35/20);
    margin-top: 2rem;
    text-align: justify;
  }
  .top03 .wrap01 .contents .content .img {
    border: solid .2rem #5ea4f0;
    position: absolute;
    right: 0;
    top: 12rem;
    width: calc(100% + 2rem);
    z-index: 1;
  }
  .top03 .wrap01 .contents .content:nth-of-type(odd) .img {
    right: .2rem;
  }
  .top03 .wrap01 .contents .content:nth-of-type(even) .img {
    left: .2rem;
  }
}

/* ---------------------------------------------------------------------------
//  top04
--------------------------------------------------------------------------- */
.top04 .container {
  margin-top: 12rem;
  padding-bottom: 17rem;
  position: relative;
  z-index: 1;
}
.top04 .container::before {
  background: linear-gradient(180deg, rgba(54, 209, 220, .15) 0%, rgba(54, 220, 215, .00) 100%);
  content: '';
  height: 46.2rem;
  pointer-events: none;
  position: absolute;
  top: 16rem;
  width: 100%;
}
.top04 .wrap01 {
  padding: 7.4rem 0 0;
}
.top04 .wrap01 .ttls {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-align: center;
}
.top04 .wrap01 .ttls .eng01 {
  width: 68.45rem;
}
.top04 .wrap01 .ttls .h2 {
  font-size: 3.5rem;
  font-weight: 700;
  margin-top: -7rem;
}
.top04 .wrap01 .news_cards {
  margin-bottom: 6rem;
  margin-top: 8rem;
}
.top04 .wrap01 .btnA {
  margin: 0 auto;
}
@media screen and (max-width:768px) {
  .top04 .container {
    margin-top: 16rem;
    padding-bottom: 16rem;
  }
  .top04 .container::before {
    height: 100%;
    top: 6rem;
  }
  .top04 .wrap01 {
    padding: 0 2rem 0;
  }
  .top04 .wrap01 .ttls .eng01 {
    width: calc(68.45rem *.6);
  }
  .top04 .wrap01 .ttls .h2 {
    font-size: 2rem;
    margin-top: -3rem;
  }
  .top04 .wrap01 .news_cards {
    margin-top: 4rem;
  }
}
/* ---------------------------------------------------------------------------
//  top05
--------------------------------------------------------------------------- */
.top05 {
  background-attachment: fixed;
  background-image: url(../img/top/05_bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.top05 .container {
  background: rgba(0, 0, 0, .3);
  position: relative;
  z-index: 1;
}
.top05 .wrap01 {
  align-items: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  font-size: 2rem;
  font-weight: 600;
  line-height: calc(30/20);
  padding: 12rem 0;
  text-align: center;
}
.top05 .wrap01 .h2 {
  font-size: 3.6rem;
  font-weight: 800;
  left: 1rem;
  letter-spacing: 1.85rem;
  position: relative;
  text-align: center;
  white-space: nowrap;
}
.top05 .wrap01 .p01 {
  font-size: 9rem;
  font-weight: 900;
  left: .5rem;
  letter-spacing: .6rem;
  margin-top: -2rem;
  position: relative;
  white-space: nowrap;
}
.top05 .wrap01 .p02 {
  border: solid .8rem;
  font-size: 1.9rem;
  font-weight: 700;
  letter-spacing: .2rem;
  padding: 1rem 2rem;
  white-space: nowrap;
}
.top05 .wrap01 dl {
  display: flex;
  gap: .5rem;
  justify-content: center;
  margin-top: 1.4rem;
}
.top05 .wrap01 dl dt {
  font-weight: 600;
}
.top05 .wrap01 .sup {
  display: flex;
}
.top05 .wrap01 .sup::before {
  content: '\203B';
}
@media screen and (max-width:768px) {
  .top05 {
    background-attachment: inherit;
  }
  .top05 .container {
    background: rgba(0, 0, 0, .4);
  }
  .top05 .wrap01 {
    font-size: 1.4rem;
    padding: 10rem 2rem;
  }
  .top05 .wrap01 .h2 {
    font-size: 2.2rem;
    letter-spacing: 0;
    position: static;
  }
  .top05 .wrap01 .p01 {
    font-size: 3.9rem;
    left: 0rem;
    letter-spacing: 0;
    margin-top: -1rem;
  }
  .top05 .wrap01 .p02 {
    border: solid .3rem;
    font-size: 1.6rem;
    letter-spacing: 0;
    padding: 1rem 1rem;
  }
  .top05 .wrap01 dl {
    justify-content: flex-start;
  }
  .top05 .wrap01 .sup {
    text-align: left;
  }
}
/* ---------------------------------------------------------------------------
//  page_mv
--------------------------------------------------------------------------- */
.page_mv {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.page_mv .bg {
  background: rgba(94, 164, 240, .7);
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.about_mv {
  background-image: url(../img/about/mv.jpg);
}
.properties_mv {
  background-image: url(../img/properties/mv.jpg);
}
.nc_mv {
  background-image: url(../img/nc/mv.jpg);
}
.page_mv .wrap01 {
  align-items: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 39rem;
  justify-content: flex-end;
  padding: 4rem 0;
  text-align: center;
}
.page_mv.other_mv .wrap01 {
  height: 27rem;
}
.page_mv .wrap01 .eng01 {
  font-size: 10.2rem;
  font-weight: 700;
}
.page_mv.other_mv .wrap01 .eng01 {
  font-size: 7.7rem;
}
.page_mv .wrap01 .h1 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-top: -2rem;
}
@media screen and (max-width:768px) {
  .page_mv .wrap01 {
    align-items: center;
    aspect-ratio: 3/2;
    color: #fff;
    display: flex;
    flex-direction: column;
    height: auto;
    justify-content: flex-end;
    padding: 4rem 0;
    text-align: center;
  }
  .page_mv.other_mv .wrap01 {
    aspect-ratio: 2/1;
    height: auto;
  }
  .page_mv .wrap01 .eng01 {
    font-size: 4.1rem;
  }
  .page_mv.other_mv .wrap01 .eng01 {
    font-size: 4.1rem;
  }
  .page_mv .wrap01 .h1 {
    font-size: 1.7rem;
    margin-top: -1rem;
  }
}
/* ---------------------------------------------------------------------------
//  single_mv
--------------------------------------------------------------------------- */
.single_mv .wrap01 {
  padding-top: 5rem;
}
.single_mv .h1 {
  font-size: 4.5rem;
  font-weight: 700;
}
@media screen and (max-width:768px) {
  .single_mv .wrap01 {
    padding: 4rem 2rem 0;
  }
  .single_mv .h1 {
    font-size: 3rem;
  }
}
/* ---------------------------------------------------------------------------
//  about
--------------------------------------------------------------------------- */
.about .h2 {
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width:768px) {
  .about .h2 {
    font-size: 3rem;
  }
}
/* ---------------------------------------------------------------------------
//  about01
--------------------------------------------------------------------------- */
.about01 .wrap01 {
  padding: 13rem 0 ;
}
.about01 .p {
  font-size: 2rem;
  font-weight: 600;
  line-height: calc(45/20);
  margin-top: 3rem;
  text-align: justify;
}
@media screen and (max-width:768px) {
  .about01 .wrap01 {
    padding: 8rem 2rem ;
  }
  .about01 .p {
    font-size: 1.6rem;
  }
}
/* ---------------------------------------------------------------------------
//  about02
--------------------------------------------------------------------------- */
.about02 {
  background: #f7f7f7;
}
.about02 .wrap01 {
  padding: 13rem 0 ;
}
.about02 .wrap01 .contents {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-top: 5rem;
}
.about02 .wrap01 .contents .content01 {
  width: 48.8rem;
}
.about02 .wrap01 .contents .content01 dl + dl {
  margin-top: 3.5rem;
}
.about02 .wrap01 .contents .content01 dl dt {
  align-items: center;
  display: flex;
  font-size: 2.6rem;
  font-weight: 700;
  gap: 2rem;
}
.about02 .wrap01 .contents .content01 dl dt span {
  color: #0082d2;
  font-size: 5rem;
  font-weight: 700;
}
.about02 .wrap01 .contents .content01 dl:nth-of-type(2) dt span {
  color: #00d7e1;
}
.about02 .wrap01 .contents .content01 dl:nth-of-type(3) dt span {
  color: #00aae1;
}
.about02 .wrap01 .contents .content01 dl dd {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: calc(35/18);
  text-align: justify;
}
.about02 .wrap01 .contents .content02 {
  width: 64.1rem;
}
@media screen and (max-width:768px) {
  .about02 {
    background: #f7f7f7;
  }
  .about02 .wrap01 {
    padding: 8rem 2rem ;
  }
  .about02 .wrap01 .contents {
    flex-direction: column;
    margin-top: 3rem;
  }
  .about02 .wrap01 .contents .content01 {
    width: 100%;
  }
  .about02 .wrap01 .contents .content01 dl + dl {
    margin-top: 3rem;
  }
  .about02 .wrap01 .contents .content01 dl dt {
    font-size: 2rem;
    gap: 1rem;
  }
  .about02 .wrap01 .contents .content01 dl dt span {
    font-size: 4rem;
  }
  .about02 .wrap01 .contents .content01 dl dd {
    font-size: 1.6rem;
  }
  .about02 .wrap01 .contents .content02 {
    margin-top: 5rem;
    width: 100%;
  }
}
/* ---------------------------------------------------------------------------
//  about03
--------------------------------------------------------------------------- */
.about03 .wrap01 {
  padding: 13rem 0 ;
}
.about03 .wrap01 .contents .content01 {
  margin-top: 1rem;
}
.about03 .wrap01 .contents .content01 .h3 {
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
}
.about03 .wrap01 .contents .content01 .p {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: calc(35/18);
  margin-top: 4.4rem;
  text-align: justify;
}
.about03 .wrap01 .contents .content01 .img {
  margin: 4rem auto 0;
  width: 63.7rem;
}
.about03 .wrap01 .contents .content02 {
  border: 3px solid #f6f6f6;
  margin-top: 5.7rem;
  padding: 4.7rem 6.5rem;
}
.about03 .wrap01 .contents .content02 .h3 {
  font-size: 2.6rem;
  font-weight: 700;
}
.about03 .wrap01 .contents .content02 .p {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: calc(35/18);
  margin-top: 1.5rem;
  text-align: justify;
}
@media screen and (max-width:768px) {
  .about03 .wrap01 {
    padding: 8rem 2rem ;
  }
  .about03 .wrap01 .contents .content01 .h3 {
    font-size: 1.6rem;
  }
  .about03 .wrap01 .contents .content01 .p {
    font-size: 1.6rem;
    margin-top: 4rem;
  }
  .about03 .wrap01 .contents .content01 .img {
    margin: 4rem auto 0;
    width: 100%;
  }
  .about03 .wrap01 .contents .content02 {
    margin-top: 4rem;
    padding: 3rem 2rem ;
  }
  .about03 .wrap01 .contents .content02 + .content02 {
    margin-top: 3rem;
  }
  .about03 .wrap01 .contents .content02 .h3 {
    font-size: 2rem;
  }
  .about03 .wrap01 .contents .content02 .p {
    font-size: 1.6rem;
  }
}
/* ---------------------------------------------------------------------------
//  about04
--------------------------------------------------------------------------- */
.about04 .wrap01 {
  background: #f7f7f7;
  padding: 13rem 0 ;
}
.about04 .wrap01 .contents {
  border-bottom: 1px solid #d1d1d1;
  border-top: 1px solid #d1d1d1;
  margin: 0 auto;
  margin-top: 4.6rem;
  max-width: 92rem;
  padding: 7.5rem 0;
}
.about04 .wrap01 .contents .content01 dl {
  display: flex;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: calc(60 / 18);
}
.about04 .wrap01 .contents .content01 dl dt {
  font-weight: 400;
  width: 11rem;
}
.about04 .wrap01 .contents .content01 dl dd {
  width: calc(100% - 11rem);
}
.about04 .wrap01 .contents .content02 {
  margin-top: 8rem;
}
.about04 .wrap01 .contents .content02 .map {
  height: 47.5rem;
}
.about04 .wrap01 .contents .content02 .map iframe {
  height: 100%;
  width: 100%;
}
@media screen and (max-width:768px) {
  .about04 .wrap01 {
    padding: 8rem 2rem ;
  }
  .about04 .wrap01 .contents {
    padding: 3rem 0;
  }
  .about04 .wrap01 .contents .content01 dl {
    display: block;
    font-size: 1.6rem;
    line-height: calc(35/18);
  }
  .about04 .wrap01 .contents .content01 dl + dl {
    margin-top: 3rem;
  }
  .about04 .wrap01 .contents .content01 dl dt {
    font-weight: 700;
    width: 11rem;
  }
  .about04 .wrap01 .contents .content01 dl dd {
    width: 100%;
  }
  .about04 .wrap01 .contents .content02 {
    margin-top: 6rem;
  }
  .about04 .wrap01 .contents .content02 .map {
    height: 35rem;
  }
}
/* ---------------------------------------------------------------------------
//  about05
--------------------------------------------------------------------------- */
.about05 .wrap01 {
  padding: 13rem 0 ;
}
.about05 .wrap01 .contents {
  position: relative;
}
.about05 .wrap01 .content01 {
  background: #f0f7ff;
  margin-top: 4rem;
  padding: 10rem 8.6rem;
  width: 93rem;
}
.about05 .wrap01 .content01 dl {
  display: flex;
}
.about05 .wrap01 .content01 dl dt {
  align-items: center;
  color: #5ea4f0;
  display: flex;
  font-size: 1.9rem;
  font-weight: 700;
  gap: .3rem;
  position: relative;
  width: 10.5rem;
}
.about05 .wrap01 .content01 dl dt::before {
  background: #fff;
  border: solid .4rem #5ea4f0;
  border-radius: 100%;
  bottom: 0;
  content: '';
  height: 2.7rem;
  margin: auto;
  position: absolute;
  right: -1.55rem;
  top: 0;
  width: 2.7rem;
  z-index: 1;
}
.about05 .wrap01 .content01 li:last-of-type dl dt::before, .about05 .wrap01 .content01 li:first-of-type dl dt::before {
  background: #5ea4f0;
}
.about05 .wrap01 .content01 dl dt span {
  font-size: 3.3rem;
  text-align: center;
  width: 3.4rem;
}
.about05 .wrap01 .content01 dl dd {
  border-left: .3rem solid #5ea4f0;
  font-size: 2.2rem;
  font-weight: 700;
  padding-bottom: 4rem;
  padding-left: 3.8rem;
  position: relative;
  top: 2.55rem;
  width: calc(100% - 10.5rem);
}
.about05 .wrap01 .content01 li:last-of-type dl dd {
  border-left: transparent;
}
.about05 .wrap01 .content01 dl dd span {
  position: relative;
  top: -.7rem;
}
.about05 .wrap01 .content01 dl dd span small {
  font-size: 2.2rem;
  font-weight: 400;
}
.about05 .wrap01 .contents .content02 {
  bottom: 0;
  height: 42.6rem;
  margin: auto;
  position: absolute;
  right: -2rem;
  top: 0;
  width: 55.3rem;
}
.about05 .wrap01 .contents .sup {
  font-size: 1.8rem;
  font-weight: 400;
  margin-top: 4rem;
}
@media screen and (max-width:768px) {
  .about05 .wrap01 {
    padding: 8rem 0 ;
  }
  .about05 .wrap01 .content01 {
    margin-top: 4rem;
    padding: 3rem 2rem 0;
    width: 100%;
  }
  .about05 .wrap01 .content01 dl {
    display: block;
  }
  .about05 .wrap01 .content01 dl dt {
    padding-left: 2.5rem;
    position: absolute;
  }
  .about05 .wrap01 .content01 dl dt::before {
    left: -1.2rem;
    right: inherit;
  }
  .about05 .wrap01 .content01 li:last-of-type dl dt::before, .about05 .wrap01 .content01 li:first-of-type dl dt::before {
    background: #5ea4f0;
  }
  .about05 .wrap01 .content01 dl dt span {
    font-size: 3.3rem;
    text-align: center;
    width: 3.4rem;
  }
  .about05 .wrap01 .content01 dl dd {
    font-size: 1.6rem;
    padding-bottom: 5rem;
    padding-left: 2.2rem;
    padding-top: 3rem;
    top: 2.55rem;
    width: 100%;
  }
  .about05 .wrap01 .content01 dl dd span small {
    font-size: 1.6rem;
  }
  .about05 .wrap01 .contents .content02 {
    bottom: 2rem;
    right: -3rem;
    top: inherit;
    width: calc(55.3rem * .6);
    width: calc(42.6rem * .6);
  }
  .about05 .wrap01 .contents .sup {
    font-size: 1.2rem;
    margin-top: 2rem;
    text-align: center;
  }
}

/* ---------------------------------------------------------------------------
//  .pagination
--------------------------------------------------------------------------- */
.pagination {
  align-items: center;
  background-color: #f7f7f7;
  display: flex;
  gap: .8rem;
  justify-content: center;
  margin-top: 10rem;
  padding: 4.4rem 2rem;
}
.pagination .item .link {
  align-items: center;
  background: #fff;
  border: solid rgba(214,214,214,1);
  border-radius: .5rem;
  display: flex;
  font-size: 2rem;
  font-weight: 700;
  height: 4.7rem;
  justify-content: center;
  transition: .2s;
  width: 4.7rem;
}
.pagination .item.prev .link, .pagination .item.next .link {
  background-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 2rem;
  border: none;
  font-size: 0;
}
.pagination .item.prev .link {
  background-image: url(../img/common/prev.png);
  margin-right: 1.6rem;
}
.pagination .item.next .link {
  background-image: url(../img/common/next.png);
  margin-left: 1.6rem;
}
.pagination .item.prev .link:hover, .pagination .item.next .link:hover {
  opacity: .8;
}
.pagination .item .link:hover {
  background-color: rgba(224, 231, 238, 1);
  color: #5ea4f0;
}
.pagination .item.active .link {
  background-color: rgba(224, 231, 238, 1);
  color: #5ea4f0;
  cursor: default;
  pointer-events: none;
}
@media screen and (max-width: 760px) {
  .pagination {
    margin-top: 2rem;
  }
  .pagination .item .link {
    font-size: 1.6rem;
    height: 4rem;
    width: 4rem;
  }
  .pagination .item.prev .link {
    margin-right: auto;
  }
  .pagination .item.next .link {
    margin-left: auto;
  }
}
/* ---------------------------------------------------------------------------
//  privacy01
--------------------------------------------------------------------------- */
.privacy01 .wrap01 {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: calc(35/18);
  padding: 13rem 0;
}
.privacy01 .h2 {
  font-size: 4rem;
  font-weight: 700;
  margin-bottom: 3rem;
  text-align: center;
}
.privacy01 .h3 {
  display: flex;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 1rem;
  margin-top: 5rem;
}
.privacy01 ol > li .h4 {
  display: flex;
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 1rem;
}
.privacy01 ol > li + li {
  margin-top: 1rem;
}
.privacy01 ol > li > p, .privacy01 ol > li > ul {
  padding-left: 2.4rem;
}
.privacy01 li > ul > li {
  display: flex;
}
.privacy01 dl {
  background: rgba(255,255,255,.5);
  border: 3px solid #f6f6f6;
  display: inline-block;
  margin-top: 2rem;
  padding: 2rem;
}
@media screen and (max-width:768px) {
  .privacy01 .wrap01 {
    font-size: 1.4rem;
    padding: 8rem 2rem;
  }
  .privacy01 .h2 {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
  .privacy01 .h3 {
    font-size: 2rem;
  }
  .privacy01 ol > li .h4 {
    font-size: 1.6rem;
  }
  .privacy01 ol > li + li {
    margin-top: 1rem;
  }
  .privacy01 ol > li > p, .privacy01 ol > li > ul {
    padding-left: 2.2rem;
  }
  .privacy01 dl {
    display: block;
    padding: 1rem;
  }
}
/* ---------------------------------------------------------------------------
//  nf01
--------------------------------------------------------------------------- */
.page_nf {
  background-attachment: fixed;
  background-color: rgba(94, 164, 240, 1);
  background-image: url(../img/common/bg_404.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
}
.nf01 .wrap01 {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding: 2rem 0 13rem;
}
.page_nf .h2 {
  align-items: center;
  background-image: url(../img/common/404.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 48.3rem;
  display: flex;
  font-size: 3.4rem;
  font-weight: 500;
  height: 34.6rem;
  justify-content: center;
  text-align: center;
}
.page_nf .p {
  font-size: 1.9rem;
  font-weight: 900;
  line-height: calc(37/19);
  margin-bottom: 6rem;
  text-align: center;
}
@media screen and (max-width:768px) {
  .page_nf {
    background-attachment: inherit;
    background-position: center bottom -30rem;
    background-size: 100rem;
    position: relative;
  }
  .page_nf::before {
    background-color: rgba(0, 0, 0, .3);
    content: '';
    height: 100%;
    position: absolute;
    width: 100%;
  }
  .nf01 .wrap01 {
    padding: 0 2rem 8rem;
  }
  .page_nf .h2 {
    background-size: 30rem;
    font-size: 2rem;
    height: 25rem;
    white-space: nowrap;
  }
  .page_nf .p {
    font-size: 1.6rem;
  }
}
/* ---------------------------------------------------------------------------
//  contact01
--------------------------------------------------------------------------- */
.contact01 .wrap01 {
  padding: 13rem 0 0;
}
.contact01 .wrap01 .h2 {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
}
.contact01 .wrap01 .tel_bnr {
  align-items: center;
  background: rgba(255,255,255,.7);
  border: 3px solid #f6f6f6;
  cursor: default;
  display: flex;
  flex-direction: column;
  height: 23.4rem;
  justify-content: center;
  margin: 6rem auto 0;
  pointer-events: none;
  width: 50.3rem;
}
.contact01 .wrap01 .tel_bnr .h3 {
  font-size: 2.3rem;
  font-weight: 700;
}
.contact01 .wrap01 .tel_bnr .tel {
  margin: 2rem auto 1.3rem;
  width: 32.3rem;
}
.contact01 .wrap01 .tel_bnr .sup {
  font-size: 1.6rem;
  font-weight: 400;
}
.contact01 .wrap01 .tel_bnr .sup small {
  font-size: 1.5rem;
}
@media screen and (max-width:768px) {
  .contact01 .wrap01 {
    padding: 8rem 2rem 0;
  }
  .contact01 .wrap01 .h2 {
    font-size: 2rem;
  }
  .contact01 .wrap01 .tel_bnr {
    cursor: pointer;
    height: auto;
    margin: 4rem auto 0;
    padding: 5rem 2rem;
    pointer-events: all;
    width: 100%;
  }
  .contact01 .wrap01 .tel_bnr .h3 {
    font-size: 2.1rem;
  }
  .contact01 .wrap01 .tel_bnr .tel {
    width: 100%;
  }
}
/* ---------------------------------------------------------------------------
//  form_area
--------------------------------------------------------------------------- */
.form_area {
  background: #f7f7f7;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: calc(35/18);
  padding: 8rem 9rem 12rem;
}
.form_area .p {
  text-align: center;
}
.form_area .p span {
  color: #e51f1f;
}
.form_area .first_txt {
  margin-bottom: 3rem;
  text-align: left;
}
.form_area .groups .group {
  display: flex;
}
.form_area .groups .group + .group {
  margin-top: 6rem;
}
.form_area .groups .group dt {
  font-weight: 400;
  padding: 1rem 0;
  width: 23.5rem;
}
.form_area .groups .group dt span {
  color: #e51f1f;
}
.form_area .groups .group dd {
  width: calc(100% - 23.5rem);
}
.form_area .groups .group dd input[type=text], .form_area .groups .group dd input[type=email] {
  background: #fff;
  padding: 1rem 3rem;
  width: 100%;
}
.form_area .groups .group dd.post input {
  width: 26.4rem;
}
.form_area .groups .group dd textarea {
  background: #fff;
  height: 33.9rem;
  padding: 1rem 3rem;
  resize: none;
  width: 100%;
}
::placeholder {
  color: #aaa;
}
.form_area .last_txt {
  border-top: 1px solid #d1d1d1;
  margin-top: 6rem;
  padding-top: 4rem;
}
.form_area .last_txt .p {
  margin-bottom: 5rem;
}
.form_area .p a {
  color: #5ea4f0;
  text-decoration: underline;
}
.form_area .p a:hover {
  opacity: .7;
}
.form_area .design {
  text-align: center;
}
.form_area .design input {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px!important;
}
.form_area .design input + span {
  cursor: pointer;
  display: inline-block;
  padding: 0 0 0 3rem;
  position: relative;
}
.form_area .agree.design input + span {
  padding-left: 4rem;
}
.form_area .design input:checked + span::after {
  opacity: 1!important;
}
/* チェックボックス */
.form_area .design input[type=checkbox] + span:before {
  background: #fff;
  border: 1px solid #dbdbdb;
  content: '';
  display: block;
  height: 3rem;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3rem;
}
.form_area .design input[type=checkbox] + span::after {
  border-bottom: .3rem solid #5ea4f0;
  border-right: .3rem solid #5ea4f0;
  content: '';
  display: block;
  height: 2rem;
  left: .25rem;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: rotate(35deg) skewY(16deg) translateY(-50%);
  transform-origin: center right;
  width: 1rem;
}
/* ラジオボタン */
.form_area .design input[type=radio] + span::before {
  background: #fff;
  border: 1px solid #bebebe;
  border-radius: 50%;
  content: '';
  display: block;
  height: 2.6rem;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.6rem;
}
.form_area .design input[type=radio] + span::after {
  background-color: #455301;
  border-radius: 50%;
  content: '';
  display: block;
  height: 1.6rem;
  left: .5rem;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1.6rem;
}
.form_area .submit input {
  align-items: center;
  background: #5ea4f0;
  border: solid 3px #5ea4f0;
  border-radius: 100rem;
  color: #fff;
  display: flex;
  font-size: 2.2rem;
  font-weight: 700;
  height: 8.8rem;
  justify-content: center;
  margin: 4rem auto 0;
  text-align: center;
  transition: .2s;
  width: 42.6rem;
}
.form_area .submit input:hover {
  background: #fff;
  color: #5ea4f0;
}
.form_area .gray {
  color: #737373;
  margin-top: 2rem;
  text-align: center;
}
@media screen and (max-width:768px) {
  .form_area {
    font-size: 1.6rem;
    padding: 4rem 2rem 6rem;
  }
  .form_area .p {
    text-align: left;
  }
  .form_area .groups .group {
    display: block;
  }
  .form_area .groups .group + .group {
    margin-top: 4rem;
  }
  .form_area .groups .group dt {
    width: 100%;
  }
  .form_area .groups .group dd {
    width: 100%;
  }
  .form_area .groups .group dd input[type=text], .form_area .groups .group dd input[type=email] {
    padding: 1rem;
    width: 100%;
  }
  .form_area .groups .group dd.post input {
    width: 50%;
  }
  .form_area .groups .group dd textarea {
    height: 23rem;
    padding: 1rem;
  }
  .form_area .submit input {
    font-size: 2rem;
    height: 6rem;
    width: 100%;
  }
  .form_area .gray {
    font-size: 1.4rem;
    text-align: left;
  }
}
/* ---------------------------------------------------------------------------
//  contact02
--------------------------------------------------------------------------- */
.contact02 .wrap01 {
  padding: 13rem 0;
}
.contact02 .wrap01 .h2 {
  color: #737373;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 4rem;
  text-align: center;
}
@media screen and (max-width:768px) {
  .contact02 .wrap01 {
    padding: 8rem 0;
  }
}
/* ---------------------------------------------------------------------------
//  thanks01
--------------------------------------------------------------------------- */
.page_thanks {
  background: rgba(54, 209, 220, .05);
  background-image: url(../img/common/bg_thanks.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: 100%;
  position: relative;
}
.page_thanks::before {
  background: linear-gradient(180deg, rgba(54, 209, 220, .10) 0%, rgba(54, 209, 220, .00) 100%);
  content: '';
  height: 32.2rem;
  position: absolute;
  top: 0;
  width: 100%;
}
.thanks01 .wrap01 {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding: 4rem 0 13rem;
}
.thanks01 .h2 {
  align-items: center;
  background-image: url(../img/common/check.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 23.1rem;
  display: flex;
  font-size: 4.5rem;
  font-weight: 700;
  justify-content: center;
  padding-top: 24rem;
  text-align: center;
  width: 100%;
}
.thanks01 .p {
  color: #737373;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: calc(35/18);
  margin-bottom: 6rem;
  margin-top: 4rem;
  text-align: center;
}
@media screen and (max-width:768px) {
  .thanks01 .wrap01 {
    padding: 4rem 2rem 8rem;
  }
  .thanks01 .h2 {
    background-size: 16rem;
    font-size: 2.4rem;
    padding-top: 17rem;
  }
  .thanks01 .p {
    font-size: 1.6rem;
  }
}
/* ---------------------------------------------------------------------------
//  .properties01
--------------------------------------------------------------------------- */
.properties01 .wrap01 {
  padding: 13rem 0;
}
.properties01 .wrap01 .h2 {
  font-size: 2rem;
  font-weight: 400;
  margin-bottom: 6rem;
  text-align: center;
}
.properties01 .wrap01 .info_cards {
  margin-bottom: 6rem;
  margin-top: 6rem;
}
@media screen and (max-width:768px) {
  .properties01 .wrap01 {
    padding: 8rem 2rem;
  }
  .properties01 .wrap01 .h2 {
    font-size: 1.6rem;
    margin-bottom: 4rem;
  }
  .properties01 .wrap01 .info_cards {
    margin-bottom: 6rem;
    margin-top: 4rem;
  }
}
/* ---------------------------------------------------------------------------
//  .single_properties01
--------------------------------------------------------------------------- */
.page_single_properties {
  background: rgba(54, 209, 220, .05);
  background-image: url(../img/common/bg_thanks.png);
  background-position: top;
  background-size: 100%;
  position: relative;
}
.page_single_properties::before {
  background: linear-gradient(180deg, rgba(54, 209, 220, .10) 0%, rgba(54, 209, 220, .00) 100%);
  content: '';
  height: 32.2rem;
  position: absolute;
  top: 0;
  width: 100%;
}
.single_properties01 .wrap01 {
  margin: 0 auto;
  max-width: 100rem;
  padding: 4rem 0 13rem;
}
.single_properties01 .wrap01 .info_tags {
  justify-content: flex-start;
}
.single_properties01 .wrap01 .h2 {
  font-size: 3.5rem;
  font-weight: 700;
  margin-top: 1.3rem;
}
.single_properties01 .wrap01 .point {
  display: flex;
  gap: 1rem;
  margin-top: 2.5rem;
}
.single_properties01 .wrap01 .point span {
  align-items: center;
  background: #fff;
  border: solid .2rem;
  border-radius: .8rem;
  color: #36d1dc;
  display: flex;
  font-size: 2rem;
  font-style: italic;
  font-weight: 600;
  height: 3.3rem;
  justify-content: center;
  width: 9rem;
}
.single_properties01 .wrap01 .point p {
  color: #36d1dc;
  font-size: 2rem;
  font-weight: 700;
  line-height: 2;
  position: relative;
  top: -.3rem;
  width: calc(100% - 10rem);
}
.single_properties01 .wrap01 .contents .content01 {
  display: flex;
  justify-content: space-between;
  margin-top: 3rem;
}
.single_properties01 .wrap01 .contents .content01 .slider {
  width: 56.4rem;
}
.single_properties01 .wrap01 .contents .content01 .slider .main {
  background: #000;
  position: relative;
}
.single_properties01 .wrap01 .contents .content01 .slider .main .img {
  aspect-ratio: 564/378;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.single_properties01 .wrap01 .contents .content01 .slider .main button {
  align-items: center;
  background: #fff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 2rem;
  bottom: 0;
  display: flex;
  font-size: 2rem;
  font-weight: 700;
  height: 4.7rem;
  justify-content: center;
  margin: auto;
  position: absolute;
  top: 0;
  transition: .2s;
  width: 4.7rem;
  z-index: 2;
}
.single_properties01 .wrap01 .contents .content01 .slider .main button.prev {
  background-image: url(../img/common/prev.png);
  border-radius: 0 .5rem .5rem 0;
  left: 0;;
}
.single_properties01 .wrap01 .contents .content01 .slider .main button.next {
  background-image: url(../img/common/next.png);
  border-radius: .5rem 0 0 .5rem;
  right: 0;;
}
.single_properties01 .wrap01 .contents .content01 .slider .main button:hover {
  opacity: .7;
}
.single_properties01 .wrap01 .contents .content01 .slider .thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 2rem;
}
.single_properties01 .wrap01 .contents .content01 .slider .thumbs .thumb {
  aspect-ratio: 125/84;
  background: #000;
  width: calc((100% - 6rem) / 4);
}
.single_properties01 .wrap01 .contents .content01 .slider .thumbs .thumb img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.single_properties01 .wrap01 .contents .content01 .slider .thumbs .thumb.active img {
  opacity: .5;
}
.single_properties01 .wrap01 .contents .content01 .dls {
  font-size: 1.6rem;
  width: 38.7rem;
}
.single_properties01 .wrap01 .contents .content01 .dls dl {
  border-bottom: solid 1px #cedbe4;
  display: flex;
  padding: 1rem 0;
}
.single_properties01 .wrap01 .contents .content01 .dls dl:first-of-type {
  padding-top: 0;
}
.single_properties01 .wrap01 .contents .content01 .dls dl dt {
  color: #4a4a4a;
  font-weight: 400;
  width: 17rem;
}
.single_properties01 .wrap01 .contents .content01 .dls dl dd {
  font-weight: 500;
  width: calc(100% - 17rem);
}
.single_properties01 .wrap01 .contents .content01 .dls .sup {
  display: flex;
  font-size: 1.3rem;
  font-weight: 400;
  margin-top: 1rem;
}
.single_properties01 .wrap01 .contents .content02 {
  background: #fff;
  margin-top: 9.5rem;
  padding: 4rem 6.5rem;
  font-size: 1.6rem;
  line-height: calc(35/18);
  font-weight: 400;
}
.single_properties01 .wrap01 .contents .content02 dl {
  font-size: 1.8rem;
  font-weight: 400;
}
.single_properties01 .wrap01 .contents .content02 dl + dl {
  margin-top: 2.5rem;
}
.single_properties01 .wrap01 .contents .content02 dl dt {
  font-weight: 700;
}
.single_properties01 .wrap01 .contents .content02 dl dd {
  margin-top: 1rem;
}
.single_properties01 .wrap01 .contents .content02 .dl01 ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 3.6rem;
}
.single_properties01 .wrap01 .contents .content02 .dl01 ul li::before {
  content: '\30FB';
}
.single_properties01 .wrap01 .contents .content02 .dl02 ul li {
  display: flex;
}
.single_properties01 .wrap01 .contents .content02 .dl02 ul li + li {
  margin-top: 1rem;
}
@media screen and (max-width:768px) {
  .single_properties01 .wrap01 {
    padding: 4rem 2rem 8rem;
  }
  .single_properties01 .wrap01 .h2 {
    font-size: 1.8rem;
  }
  .single_properties01 .wrap01 .point {
    display: block;
  }
  .single_properties01 .wrap01 .point span {
    font-size: 1.8rem;
  }
  .single_properties01 .wrap01 .point p {
    font-size: 1.6rem;
    margin-top: 1rem;
    top: 0;
    width: 100%;
  }
  .single_properties01 .wrap01 .contents .content01 {
    display: block;
    margin-top: 3rem;
  }
  .single_properties01 .wrap01 .contents .content01 .slider {
    width: 100%;
  }
  .single_properties01 .wrap01 .contents .content01 .slider .main button {
    height: 4rem;
    width: 4rem;
  }
  .single_properties01 .wrap01 .contents .content01 .slider .main button.prev {
    left: -2rem;
  }
  .single_properties01 .wrap01 .contents .content01 .slider .main button.next {
    right: -2rem;
  }
  .single_properties01 .wrap01 .contents .content01 .slider .thumbs {
    gap: 1rem;
    margin-top: 1rem;
  }
  .single_properties01 .wrap01 .contents .content01 .slider .thumbs .thumb {
    width: calc((100% - 3rem) / 4);
  }
  .single_properties01 .wrap01 .contents .content01 .dls {
    margin-top: 3rem;
    width: 100%;
  }
  .single_properties01 .wrap01 .contents .content01 .dls dl {
    display: block;
    padding: 1rem 0;
  }
  .single_properties01 .wrap01 .contents .content01 .dls dl dt {
    width: 100%;
  }
  .single_properties01 .wrap01 .contents .content01 .dls dl dd {
    margin-top: .5rem;
    width: 100%;
  }
  .single_properties01 .wrap01 .contents .content02 {
    margin-top: 6rem;
    padding: 3rem 2rem;
  }
  .single_properties01 .wrap01 .contents .content02 dl {
    font-size: 1.6rem;
  }
  .single_properties01 .wrap01 .contents .content02 .dl01 ul {
    gap: 1rem 1.6rem;
  }
  .single_properties01 .wrap01 .contents .content02 .dl01 ul li {
    width: calc((100% - 1.6rem) / 2);
  }
}
/* ---------------------------------------------------------------------------
//  single_properties02
--------------------------------------------------------------------------- */
.single_properties02 {
  background: #fff;
}
.single_properties02 .wrap01 {
  padding: 13rem 0 ;
}
.single_properties02 .wrap01 .h2 {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
}
.single_properties02 .wrap01  .form_area {
  margin-top: 6rem;
  position: relative;
}
.single_properties02 .wrap01  .form_area::before {
  background-color: #5ea4f0;
  content: '';
  height: 12rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: -4rem;
  width: 1px;
}
.single_properties02 .wrap01  .form_area .h3 {
  color: #5ea4f0;
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
}
.single_properties02 .wrap01  .form_area .h3 + .p {
  margin-bottom: 6rem;
  /* display: flex;
  justify-content: center; */
  margin-top: 3rem;
}
.single_properties02 .wrap01  .form_area .h3 + .p span {
  color: inherit;
}
@media screen and (max-width:768px) {
  .single_properties02 .wrap01 {
    padding: 8rem 0;
  }
  .single_properties02 .wrap01 .h2 {
    font-size: 1.8rem;
  }
  .single_properties02 .wrap01  .form_area {
    margin-top: 4rem;
  }
  .single_properties02 .wrap01  .form_area::before {
    height: 6rem;
    top: -2rem;
  }
  .single_properties02 .wrap01  .form_area .h3 {
    font-size: 2.4rem;
  }
  .single_properties02 .wrap01  .form_area .h3 + .p {
    margin-bottom: 4rem;
    /* display: flex;
  justify-content: flex-start; */
    margin-top: 2rem;
  }
}
/* ---------------------------------------------------------------------------
//  single_properties03
--------------------------------------------------------------------------- */
.single_properties03 {
  background: #fff;
}
.single_properties03 .wrap01 {
  padding: 0 0 13rem;
}
.single_properties03 .wrap01 .head {
  margin-bottom: 4rem;
}
.single_properties03 .wrap01 .head .ttls {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-align: center;
}
.single_properties03 .wrap01 .head .ttls .h2 {
  font-size: 4rem;
  font-weight: 700;
}
.single_properties03 .wrap01  .head .p {
  font-size: 2rem;
  margin-top: 1rem;
  text-align: center;
}
.single_properties03 .wrap01 .info_cards {
  margin-bottom: 6rem;
  margin-top: 2rem;
}
.single_properties03 .wrap01 .btnA {
  margin: 0 auto;
}
@media screen and (max-width:768px) {
  .single_properties03 .wrap01 {
    padding: 0 2rem 8rem;
  }
  .single_properties03 .wrap01 .head {
    margin-bottom: 3rem;
  }
  .single_properties03 .wrap01 .head .ttls .h2 {
    font-size: 2rem;
  }
  .single_properties03 .wrap01  .head .p {
    font-size: 1.6rem;
  }
  .single_properties03 .wrap01 .info_cards {
    margin-top: 2rem;
  }
}
/* ---------------------------------------------------------------------------
//  single_news01
--------------------------------------------------------------------------- */
.page_single_news {
  background-image: url(../img/common/bg_thanks.png);
  background-position: top;
  background-size: 100%;
  position: relative;
}
.page_single_news::before {
  background: linear-gradient(180deg, rgba(54, 209, 220, .10) 0%, rgba(54, 209, 220, .00) 100%);
  content: '';
  height: 32.2rem;
  position: absolute;
  top: 0;
  width: 100%;
}
.page_single_news::after {
  background: rgba(54, 209, 220, .05);
  content: '';
  height: 80rem;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.single_news01 .wrap01 {
  margin: 0 auto;
  max-width: 100rem;
  padding: 4rem 0 13rem;
}
.single_news01 .wrap01 .date {
  color: #737373;
  display: block;
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 1.4rem;
}
.single_news01 .wrap01 .news_tag {
  align-items: center;
  border-radius: 1000rem;
  color: #fff;
  display: flex;
  font-weight: 700;
  height: 4.1rem;
  justify-content: center;
  text-align: center;
  transition: .3s ease;
  width: 21.4rem;
}
.single_news01 .wrap01 .news_tag:hover {
  background: #fff!important;
}
.single_news01 .wrap01 .news_tag.news {
  background: #36d1dc;
  border: solid .2rem #36d1dc;
}
.single_news01 .wrap01 .news_tag.news:hover {
  color: #36d1dc;
}
.single_news01 .wrap01 .news_tag.column {
  background: #5ea4f0;
  border: solid .2rem #5ea4f0;
}
.single_news01 .wrap01 .news_tag.column:hover {
  color: #5ea4f0;
}
.single_news01 .wrap01 .h2 {
  font-size: 3.5rem;
  font-weight: 700;
  margin-top: 1.3rem;
}
.single_news01 .wrap01 .wp_edit {
  color: #000;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: calc(38/18);
  text-align: justify;
}
.single_news01 .wrap01 .wp_edit p {
  margin: 4rem 0;
}
.single_news01 .wrap01 .pagination {
  background: none;
  padding: 0;
}
@media screen and (max-width:768px) {
  .page_single_news {
    background: linear-gradient(rgba(54, 209, 220, .05),transparent);
  }
  .single_news01 .wrap01 {
    padding: 4rem 2rem 8rem;
  }
  .single_news01 .wrap01 .news_tag {
    font-size: 1.4rem;
    height: 4.1rem;
    width: calc((100% - 1.5rem) / 2);
  }
  .single_news01 .wrap01 .h2 {
    font-size: 1.8rem;
  }
  .single_news01 .wrap01 .wp_edit {
    font-size: 1.6rem;
  }
  .single_news01 .wrap01 .wp_edit p {
    margin: 2rem 0;
  }.single_news01 .wrap01 .pagination {
    margin-top: 6rem;
  }
}
