figure {
  position: relative;
}

@media screen and (max-width: 768px) {
  .imgBox .imgNote.imgNote_s {
    font-size: 0.82rem;
    right: 6px;
    bottom: 1px;
  }
}

section#fv {}

section#fv figure {}

section#fv figure figcaption {
  left: unset;
  right: 5px;
  color: var(--maincolor);
}

#contents {
  /* max-width: 1000px; */
  max-width: unset;
}

@media screen and (max-width: 767px) {
  #contents {
    width: 100%;
  }
}

.con_wrap {
  padding-bottom: 0;
}

.con_wrap::before,
.con_wrap::after {
  display: none;
}

.bgb {
  position: relative;
}

.bgb::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-color: rgb(151, 141, 130, .25);
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.ttl_wrap::before {
  display: block;
}

.ttl_wrap {
  padding-bottom: 0;
}

section .page_ttl_area {
  margin-block: 4vw;
}

section .page_ttl_area .page_ttl {
  letter-spacing: .1em;
  /* color: #000; */
}

section .page_ttl_area .page_ttl {
  letter-spacing: .1em;
}

section .page_ttl_area .page_ttl .cgaramond {
  color: #978D82;
}

/* CFA */
section#cfa ol.merit {
  display: flex;
  gap: 20px;
  margin: 8rem auto 0rem;
  max-width: 1200px;
  width: 90%;
}

section#cfa ol.merit li {
  position: relative;
  z-index: 0;
  width: calc(25% - 15px);
  color: #fff;
  background-position: center;
  background-size: cover;
  aspect-ratio: 1.2/1;
  display: flex;
  align-items: center;
  justify-content: center;
}

section#cfa ol.merit li .name {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 6rem;
  font-size: 2rem;
  line-height: 3rem;
  text-align: center;
}

section#cfa ol.merit li .explanation {
  font-size: 1.4rem;
  line-height: 2rem;
}

section#cfa ol.merit li:nth-child(1) {
  background-image: url(../img/quality1.jpg);
}

section#cfa ol.merit li:nth-child(2) {
  background-image: url(../img/quality2.jpg);
}

section#cfa ol.merit li:nth-child(3) {
  background-image: url(../img/quality3.jpg);
}

section#cfa ol.merit li:nth-child(4) {
  background-image: url(../img/quality4.jpg);
}


main nav {}

main nav ol {
  display: flex;
  gap: 14px;
  max-width: 1200px;
  width: 90%;
  margin-inline: auto;
}

main nav ol li {
  width: calc((100% / 7) - 2px);
  font-size: 1.4rem;
  text-align: center;
  user-select: none;
  aspect-ratio: 1.7/1;
}

main nav ol li a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background-color: #978D82;
  color: #fff;
}

main nav ol li a span {
  font-size: clamp(1rem, 2vw, 1.3rem);
}

main nav ol li a:hover {
  opacity: .6;
  text-decoration: none;
}

main nav ol li.active a {
  pointer-events: none;
  background: #503C3D;
}

main ul {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 20px;
  max-width: 1200px;
  width: 90%;
  margin-inline: auto;
}

main ul li {
  width: calc(25% - 15px);
}

main ul li.w2 {
  width: calc(50% - 10px);
}

main ul li.w15 {
  width: calc(33.33% - 14px);
}

main ul li img.logo {
  position: absolute;
  left: 5px;
  top: 5px;
  z-index: 1;
  width: 120px;
}

main ul li div.enb {
  position: absolute;
  right: 5px;
  top: 5px;
  z-index: 1;
  width: 120px;
}

main ul li div.enb .annotation {
  padding: .2rem .5rem;
  letter-spacing: -.05rem;
  line-height: 1em;
  background-color: #fff;
}


main ul li .name {
  margin-top: 1.5rem;
  font-size: 1.8rem;
  color: var(--bodycolor);
  text-align: center;
}

main ul li .name span {
  margin-left: .5rem;
  font-size: 60%;
}

main ul li .explanation {
  margin-top: 1.5rem;
  font-size: clamp(1.2rem, 3.2vw, 1.5rem);
  line-height: 2rem;
  color: var(--bodycolor);
}

main ul li .explanation span {
  display: block;
  font-size: 80%;
}


/* KITCHEN */
section#kitchen {
  padding: 8rem 0;
}

/* BATHROOM */
section#bathroom {
  padding: 8rem 0;
}

/* POWDERROOM */
section#powderroom {
  padding: 8rem 0;
}

/* LAVATORY */
section#lavatory {
  padding: 8rem 0;
}

/* STORAGE */
section#storage {
  padding: 8rem 0;
}

/* AMENITY */
section#amenity {
  padding: 8rem 0;
}

/* SECURITY */
section#security {
  padding: 8rem 0;
}

/* STRUCTURE */
section#structure {
  padding: 8rem 0;
}


@media screen and (min-width: 768px) and (max-width: 1300px) {}



@media screen and (max-width: 767px) {
  .con_wrap {
    padding-bottom: 0;
  }

  section#cfa ol.merit {
    flex-wrap: wrap;
    gap: 10px;
    margin: 4rem auto;
  }

  section#cfa ol.merit li {
    padding: .5rem;
    width: calc(50% - 5px);
  }

  section#cfa ol.merit li .name {
    margin-bottom: 1rem;
    font-size: 1.4rem;
    line-height: 2rem;
  }

  section#cfa ol.merit li .name::before {
    bottom: 0;
  }

  section#cfa ol.merit li .explanation {
    font-size: 1.2rem;
  }


  main nav ol {
    flex-wrap: wrap;
    gap: 4px;
  }

  main nav ol li {
    width: calc(33.33% - 3px);
    aspect-ratio: 1.7/1;
    font-size: 1.2rem;
  }

  main nav ol li.active {
    order: -1;
    width: calc(50% - 2px);
    width: 100%;
    aspect-ratio: 8/1;
    font-size: 1.4rem;
  }

  main nav ol li a {
    padding: 1rem 0 0.5rem;
  }

  .page_ttl_area .page_ttl {
    font-size: 2.4rem;
  }

  main ul {
    gap: 20px 10px;
  }

  main ul li {
    width: calc(50% - 5px);
  }

  main section ul li.w2 {
    width: 100%;
  }

  main section#kitchen ul li:first-child.w2,
  main section#bathroom ul li:first-child.w2 {
    width: 100%;
  }

  main ul li.w15 {
    width: calc(50% - 5px);
  }

  main ul li figure img.logo {
    left: 2px;
    top: 2px;
    width: 20%;
  }

  main ul li div.enb {
    right: 2px;
    top: 2px;
    width: 24%;
  }

  main ul li div.enb .annotation {
    font-size: .9rem;
    line-height: 1rem;
  }

  main ul li .name {
    font-size: 1.6rem;
    letter-spacing: -.05rem;
  }

  main ul li .explanation {
    margin-top: 1rem;
  }


  section#kitchen,
  section#bathroom,
  section#powderroom,
  section#storage,
  section#amenity,
  section#security,
  section#structure {
    padding: 4rem 0;
  }

  section#lavatory {
    padding: 0 0 4rem 0;
  }



}