:root {
  --color-gray: #737373;
  --color-gray-light: #e6e6e6;
  --color-white: #ffffff;
  --font-size-xsmall: clamp(10.5px, 0.656rem + ((1vw - 3.2px) * 0.384), 14px);
  --font-size-small: clamp(12px, 0.75rem + ((1vw - 3.2px) * 0.439), 16px);
  --font-size-medium: clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.439), 18px);
  --font-size-large: clamp(16px, 1rem + ((1vw - 3.2px) * 0.439), 20px);
  --font-size-x-large: clamp(16px, 1rem + ((1vw - 3.2px) * 0.877), 24px);
  --font-size-xx-large: clamp(20px, 1.25rem + ((1vw - 3.2px) * 0.877), 28px);
  --lending-trim: calc((1em - 1lh) / 2);
}

@supports not (top: 1lh) {
  :root {
    --lending-trim: 0;
  }
}
img {
  max-width: 100%;
  height: auto;
}

.c-group {
  container-type: inline-size;
  width: 100%;
}
.c-group__map {
  position: relative;
  aspect-ratio: 1045/640.467;
  width: 100%;
  border: solid 4px var(--color-white);
  background: url("images/map-pc.jpg") no-repeat center/cover;
}
.c-group__map-list {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-group__map-item {
  line-height: 0;
  cursor: pointer;
}
.c-group__map-item-text {
  position: absolute;
  padding-inline: min(0.5614035088dvw, 0.5rem);
  padding-block: min(0.1403508772dvw, 0.125rem);
  transform: translate(-50%, -50%);
  background-color: rgba(255, 255, 255, 0.7);
  font-size: min(1.3824561404dvw, 1.23125rem);
  line-height: 1.5;
}
.c-group__map-item-text .small {
  font-size: min(1.0526315789dvw, 0.9375rem);
}
.c-group__map-item-pin {
  position: absolute;
  width: min(1.1649122807dvw, 1.0375rem);
  transform: translate(-50%, -50%);
}
.c-group__map-item.--egota .c-group__map-item-text {
  top: 7.6514678326%;
  left: 18.1818181818%;
}
.c-group__map-item.--egota .c-group__map-item-pin {
  top: 11.2429731418%;
  left: 29.3779904306%;
}
.c-group__map-item.--asagaya .c-group__map-item-text {
  top: 21.5490318551%;
  left: 20.1913875598%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--asagaya .c-group__map-item-pin {
  top: 21.3928794503%;
  left: 19.2344497608%;
}
.c-group__map-item.--satellite .c-group__map-item-text {
  top: 15.45908807%;
  left: 2.3923444976%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--satellite .c-group__map-item-pin {
  top: 19.8313554029%;
  left: 18.3732057416%;
}
.c-group__map-item.--momiji .c-group__map-item-text {
  top: 32.7920049969%;
  left: 26.1244019139%;
}
.c-group__map-item.--momiji .c-group__map-item-pin {
  top: 28.2635852592%;
  left: 34.4497607656%;
}
.c-group__map-item.--honkomagome .c-group__map-item-text {
  top: 8.5883822611%;
  left: 65.0717703349%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--honkomagome .c-group__map-item-pin {
  top: 7.9637726421%;
  left: 64.2105263158%;
}
.c-group__map-item.--ichigaya .c-group__map-item-text {
  top: 33.5727670206%;
  left: 57.6076555024%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--ichigaya .c-group__map-item-pin {
  top: 33.5727670206%;
  left: 56.3636363636%;
}
.c-group__map-item.--mejiro .c-group__map-item-text {
  top: 7.1830106184%;
  left: 47.8468899522%;
}
.c-group__map-item.--mejiro .c-group__map-item-pin {
  top: 11.5552779513%;
  left: 41.5311004785%;
}
.c-group__map-item.--shinmejiro .c-group__map-item-text {
  top: 19.3628981886%;
  left: 50.2392344498%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--shinmejiro .c-group__map-item-pin {
  top: 20.1436602124%;
  left: 49.1866028708%;
}
.c-group__map-item.--otakibashi .c-group__map-item-text {
  top: 25.296689569%;
  left: 44.976076555%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--otakibashi .c-group__map-item-pin {
  top: 25.4528419738%;
  left: 44.019138756%;
}
.c-group__map-item.--gotokuji .c-group__map-item-text {
  top: 55.9025608994%;
  left: 17.7990430622%;
}
.c-group__map-item.--gotokuji .c-group__map-item-pin {
  top: 60.1186758276%;
  left: 26.2200956938%;
}
.c-group__map-item.--meguro-chuo .c-group__map-item-text {
  top: 83.0730793254%;
  left: 30.8133971292%;
}
.c-group__map-item.--meguro-chuo .c-group__map-item-pin {
  top: 87.4453466583%;
  left: 41.1483253589%;
}
.c-group__map-item.--setagaya .c-group__map-item-text {
  top: 93.5352904435%;
  left: 24.4019138756%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--setagaya .c-group__map-item-pin {
  top: 93.5352904435%;
  left: 22.8708133971%;
}
.c-group__map-item.--akasaka .c-group__map-item-text {
  top: 50.2810743285%;
  left: 60.2870813397%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--akasaka .c-group__map-item-pin {
  top: 50.4372267333%;
  left: 59.2344497608%;
}
.c-group__map-item.--motoazabu .c-group__map-item-text {
  top: 61.5240474703%;
  left: 59.3301435407%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--motoazabu .c-group__map-item-pin {
  top: 61.5240474703%;
  left: 58.0861244019%;
}
.c-group__map-item.--shirokane .c-group__map-item-text {
  top: 77.139287945%;
  left: 56.9377990431%;
  transform: translate(0%, -50%);
}
.c-group__map-item.--shirokane .c-group__map-item-pin {
  top: 77.6077451593%;
  left: 55.5023923445%;
}
.c-group__map-description {
  display: none;
}
.c-group__suburbs {
  padding-inline: min(4dvw, 3.5625rem);
  padding-block: min(2.8070175439dvw, 2.5rem);
  border-top: none;
  border-inline: solid 4px var(--color-white);
  background-color: #d9d9d9;
}
.c-group__suburbs-title {
  margin-bottom: min(1.6842105263dvw, 1.5rem);
  font-size: var(--font-size-large);
  line-height: 1.75;
  letter-spacing: 0.24em;
}
.c-group__suburbs-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: start;
  gap: min(1.4736842105dvw, 1.3125rem);
}
.c-group__suburbs-item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: min(0.701754386dvw, 0.625rem);
  cursor: pointer;
}
.c-group__suburbs-pin {
  flex-shrink: 0;
  aspect-ratio: 1/1;
  width: min(1.1649122807dvw, 1.0375rem);
  transform: translateY(13%);
  vertical-align: middle;
}
.c-group__suburbs-text {
  font-size: var(--font-size-medium);
}
.c-group__detail {
  display: flex;
  padding-inline: min(2.8070175439dvw, 2.5rem);
  padding-block: min(1.6842105263dvw, 1.5rem);
  gap: min(2.5263157895dvw, 2.25rem);
  border: solid 4px #FFF;
  background-color: var(--color-gray-light);
}
.c-group__detail-left {
  flex: 0 1 225px;
}
.c-group__detail-right {
  flex: 0 1 695px;
}
.c-group__detail-title {
  margin-bottom: calc(min(1.3333333333dvw, 1.1875rem) + var(--lending-trim));
  font-size: var(--font-size-large);
  line-height: 1.75;
  letter-spacing: 0.24em;
}
.c-group__detail-text {
  font-size: var(--font-size-small);
  line-height: 2;
  letter-spacing: 0.02em;
}
.c-group__detail-info {
  font-size: var(--font-size-small);
  line-height: 2;
  letter-spacing: 0.02em;
}
.c-group__detail-info-wrapper {
  display: flex;
  gap: 1em;
}
.c-group__detail-info-web a {
  color: #38acb5;
}
@container (max-width: 767px) {
  .c-group__map {
    position: relative;
    aspect-ratio: 457.6/363.5;
    border-width: 2px;
    background: url("images/map-sp.jpg") no-repeat center/cover;
  }
  .c-group__map-item-pin {
    width: 1.750547046cqw;
  }
  .c-group__map-item-text {
    padding-inline: 0.875273523cqw;
    padding-block: 0;
    font-size: 2.4070021882cqw;
  }
  .c-group__map-item-text .small {
    font-size: 1.9693654267cqw;
  }
  .c-group__map-item.--egota .c-group__map-item-text {
    top: 5.9880239521%;
    left: 18.5393258427%;
  }
  .c-group__map-item.--egota .c-group__map-item-pin {
    top: 9.4910591472%;
    left: 33.4269662921%;
  }
  .c-group__map-item.--asagaya .c-group__map-item-text {
    top: 18.5694635488%;
    left: 23.8512035011%;
  }
  .c-group__map-item.--asagaya .c-group__map-item-pin {
    top: 18.8995873453%;
    left: 22.7571115974%;
  }
  .c-group__map-item.--satellite .c-group__map-item-text {
    top: 13.7551581843%;
    left: 2.2757111597%;
  }
  .c-group__map-item.--satellite .c-group__map-item-pin {
    top: 17.4690508941%;
    left: 21.8161925602%;
  }
  .c-group__map-item.--momiji .c-group__map-item-text {
    top: 28.8858321871%;
    left: 29.4943820225%;
  }
  .c-group__map-item.--momiji .c-group__map-item-pin {
    top: 24.7592847318%;
    left: 39.2997811816%;
  }
  .c-group__map-item.--honkomagome .c-group__map-item-text {
    top: 7.1107784431%;
    left: 75%;
    transform: translate(0%, -50%);
  }
  .c-group__map-item.--honkomagome .c-group__map-item-pin {
    top: 7.1107784431%;
    left: 73.595505618%;
  }
  .c-group__map-item.--ichigaya .c-group__map-item-text {
    top: 29.4360385144%;
    left: 65.7303370787%;
    transform: translate(0%, -50%);
  }
  .c-group__map-item.--ichigaya .c-group__map-item-pin {
    top: 29.3810178817%;
    left: 64.3258426966%;
  }
  .c-group__map-item.--mejiro .c-group__map-item-text {
    top: 6.3622754491%;
    left: 53.0898876404%;
  }
  .c-group__map-item.--mejiro .c-group__map-item-pin {
    top: 10.4790419162%;
    left: 47.4719101124%;
  }
  .c-group__map-item.--shinmejiro .c-group__map-item-text {
    top: 17.3314993122%;
    left: 56.7415730337%;
    transform: translate(0%, -50%);
  }
  .c-group__map-item.--shinmejiro .c-group__map-item-pin {
    top: 17.7716643741%;
    left: 55.6179775281%;
  }
  .c-group__map-item.--otakibashi .c-group__map-item-text {
    top: 22.5584594223%;
    left: 51.404494382%;
    transform: translate(0%, -50%);
  }
  .c-group__map-item.--otakibashi .c-group__map-item-pin {
    top: 22.6685006878%;
    left: 50.1094091904%;
  }
  .c-group__map-item.--gotokuji .c-group__map-item-text {
    top: 49.7111416781%;
    left: 5.2516411379%;
    transform: translate(0%, -50%);
  }
  .c-group__map-item.--gotokuji .c-group__map-item-pin {
    top: 53.3700137552%;
    left: 29.9343544858%;
  }
  .c-group__map-item.--meguro-chuo .c-group__map-item-text {
    top: 76.4786795048%;
    left: 48.7089715536%;
    transform: translate(0%, -50%);
  }
  .c-group__map-item.--meguro-chuo .c-group__map-item-pin {
    top: 76.4786795048%;
    left: 47.04595186%;
  }
  .c-group__map-item.--setagaya .c-group__map-item-text {
    top: 82.2558459422%;
    left: 27.5711159737%;
  }
  .c-group__map-item.--setagaya .c-group__map-item-pin {
    top: 82.5309491059%;
    left: 26.3676148796%;
  }
  .c-group__map-item.--akasaka .c-group__map-item-text {
    top: 44.5667125172%;
    left: 67.9775280899%;
  }
  .c-group__map-item.--akasaka .c-group__map-item-pin {
    top: 44.5667125172%;
    left: 66.7396061269%;
  }
  .c-group__map-item.--motoazabu .c-group__map-item-text {
    top: 54.4704264099%;
    left: 67.3960612691%;
  }
  .c-group__map-item.--motoazabu .c-group__map-item-pin {
    top: 54.4704264099%;
    left: 66.0831509847%;
  }
  .c-group__map-item.--shirokane .c-group__map-item-text {
    top: 67.9504814305%;
    left: 64.3258426966%;
  }
  .c-group__map-item.--shirokane .c-group__map-item-pin {
    top: 67.9504814305%;
    left: 63.4831460674%;
  }
  .c-group__map-description {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0.875273523cqw 2.6258205689cqw;
    background-color: rgba(255, 255, 255, 0.7);
  }
  .c-group__map-description-pin {
    aspect-ratio: 1/1;
    width: 2.1663019694cqw;
    vertical-align: middle;
  }
  .c-group__map-description-list {
    display: flex;
    -moz-column-gap: 2.6258205689cqw;
    column-gap: 2.6258205689cqw;
    row-gap: 0.6564551422cqw;
    flex-wrap: wrap;
    font-size: 2.6258205689cqw;
    line-height: 1.1666666667;
  }
  .c-group__map-description-list .small {
    font-size: 2.1881838074cqw;
    line-height: 1.4;
  }
  .c-group__map-description-list > li {
    display: flex;
    align-items: flex-start;
    gap: 0.875273523cqw;
    font-feature-settings: "halt";
  }
  .c-group__map-description-list > li .c-group__map-description-pin {
    flex-shrink: 0;
    transform: translateY(20%);
  }
  .c-group__map-description-list > li:not(:last-child) {
    letter-spacing: 0.1em;
  }
  .c-group__map-description-list > li:last-child {
    letter-spacing: 0;
  }
  .c-group__map-description-type {
    display: flex;
    position: absolute;
    right: 4.3763676149cqw;
    bottom: 0.875273523cqw;
    align-items: center;
    gap: 0;
    font-size: 2.1881838074cqw;
    line-height: 1.2;
  }
  .c-group__map-description-type > li:not(:last-child) {
    margin-right: 1.3129102845cqw;
  }
  .c-group__map-description-type::before {
    content: "[";
  }
  .c-group__map-description-type::after {
    content: "]";
  }
  .c-group__suburbs {
    padding-inline: 5.0704225352cqw;
    padding-block: 4.3763676149cqw;
    border-inline: solid 2px var(--color-white);
  }
  .c-group__suburbs-title {
    margin-bottom: 2.8446389497cqw;
    font-size: 3.3802816901cqw;
  }
  .c-group__suburbs-list {
    grid-template-columns: 1fr;
    gap: 1.750547046cqw;
  }
  .c-group__suburbs-item {
    display: inline-flex;
    width: -moz-fit-content;
    width: fit-content;
    gap: 1.6901408451cqw;
  }
  .c-group__suburbs-item::before {
    width: 2.2535211268cqw;
    height: 2.6197183099cqw;
  }
  .c-group__suburbs-pin {
    width: 2.1881838074cqw;
  }
  .c-group__suburbs-text {
    font-size: 2.6258205689cqw;
  }
  .c-group__detail {
    flex-direction: column;
    padding-inline: 21px;
    padding-block: 23px;
    gap: 20px;
    border-width: 2px;
  }
  .c-group__detail-left {
    flex: 0 1 auto;
  }
  .c-group__detail-left img {
    width: 50%;
  }
  .c-group__detail-right {
    flex: 0 1 auto;
  }
  .c-group__detail-title {
    margin-bottom: calc(13px + var(--lending-trim));
  }
  .c-group__detail-text {
    margin-bottom: 0;
  }
}