@charset "UTF-8";
@media screen and (min-width: 751px) {
  .apartment2 .sp-display {
    display: none !important; } }
@media screen and (max-width: 750px) {
  .apartment2 .pc-display {
    display: none !important; } }

.apartment2 {
  overflow-x: initial;
  background: #059eff; }

@media (max-width: 750px) {
  .apartment2 {
    margin: 0; } }
.apartment2-title {
  text-align: center; }

.apartment2-readTxt {
  text-align: center;
  margin-block-start: 30px;
  font-size: 1.8rem;
  color: var(--clr-primary);
  font-weight: bold; }

.fc-yellow {
  color: #fef33c; }

.apartment2-btn {
  display: block;
  position: relative;
  padding: 12px;
  border-radius: 99em;
  background: #fff112;
  color: var(--clr-primary);
  font-size: 1.5rem;
  font-weight: var(--fw-eb);
  text-align: center;
  transition-duration: var(--t-duration); }
  .apartment2-btn::before {
    content: '';
    position: absolute;
    inset-block: 0;
    inset-inline-end: 15px;
    margin: auto;
    inline-size: 11px;
    aspect-ratio: 17/15;
    background: image-set(url("../img/syugo/arrow-r.png") 1x, url("../img/syugo/arrow-r@2x.png") 2x) no-repeat center center/contain;
    transition-duration: var(--t-duration); }
  .apartment2-btn:hover {
    background: #fff774;
    color: var(--clr-primary); }
    .apartment2-btn:hover::before {
      inset-inline-end: 5px; }

.apartment2-notesBox {
  color: #fff; }
  .apartment2-notesBox-btn {
    position: relative;
    display: flex;
    gap: 13px;
    justify-content: center;
    align-items: center;
    list-style: none;
    background-color: #0072c5;
    box-shadow: 0 4px 0 0 #0060a5;
    border-radius: 99em;
    height: 60px;
    text-align: center;
    font-size: 1.8rem;
    font-weight: var(--fw-b);
    cursor: pointer;
    list-style: none;
    letter-spacing: 0.03em;
    transition-duration: var(--t-duration); }
    .apartment2-notesBox-btn::-webkit-details-marker {
      display: none; }
    .apartment2-notesBox-btn .toggleBtn {
      position: relative;
      inline-size: 18px;
      aspect-ratio: 1/1;
      background: #fff;
      border-radius: 50%; }
      .apartment2-notesBox-btn .toggleBtn::before, .apartment2-notesBox-btn .toggleBtn::after {
        content: '';
        display: block;
        background-color: #0072c5;
        position: absolute;
        inset: 0;
        margin: auto;
        transition-duration: var(--t-duration); }
      .apartment2-notesBox-btn .toggleBtn::before {
        inline-size: 2px;
        block-size: 8px; }
      .apartment2-notesBox-btn .toggleBtn::after {
        inline-size: 8px;
        block-size: 2px; }
    .apartment2-notesBox-btn:hover {
      background-color: #1282d4; }
  .apartment2-notesBox-note {
    margin: 30px 0;
    padding: 0;
    border: none;
    font-size: 1.3rem;
    line-height: 1.9; }
    .apartment2-notesBox-note p {
      padding-left: 2em;
      text-indent: -2em; }
  .apartment2-notesBox[open] .toggleBtn::before {
    transform: rotate(90deg); }
  .apartment2-notesBox[open] .toggleBtn::after {
    display: none; }

@media (max-width: 750px) {
  .apartment2-notesBox-btn {
    gap: 10px;
    height: 38px;
    font-size: 1.2rem; }
    .apartment2-notesBox-btn .toggleBtn {
      inline-size: 12px; }
      .apartment2-notesBox-btn .toggleBtn::before {
        inline-size: 2px;
        block-size: 6px; }
      .apartment2-notesBox-btn .toggleBtn::after {
        inline-size: 6px;
        block-size: 2px; }
  .apartment2-notesBox-note {
    margin: 20px 0; } }
/* -----------------------------------------------
集合住宅LP
-------------------------------------------------- */
.apartment2 {
  --clr-primary: #002e8d;
  --clr-primary-deep: #24324f;
  --r-md: 16px;
  --t-duration: 0.5s;
  --fw-m: 500;
  --fw-sb: 600;
  --fw-b: 700;
  --fw-eb: 800;
  font-family: "M PLUS 1", sans-serif;
  font-optical-sizing: auto;
  font-weight: var(--fw-m);
  font-style: normal; }

.apartment2 li {
  list-style: none; }

/* アニメーション共通 */
.apartment2 .js-move,
.apartment2 .js-moveList > * {
  opacity: 0;
  transform: translate(0, 50px);
  transition: 1s; }

.apartment2 .js-move.is-animation,
.apartment2 .js-moveList > *.is-animation {
  transform: none;
  opacity: 1; }

.apartment2-target {
  padding-block: 2px 11px;
  text-align: center;
  background: var(--clr-primary);
  z-index: 1001;
  position: relative; }
  @media (max-width: 750px) {
    .apartment2-target {
      z-index: initial; } }
  .apartment2-target img {
    margin-block-start: -20px; }

@media (max-width: 750px) {
  .apartment2-target {
    padding-block: 10px; }
    .apartment2-target img {
      margin-block-start: 0; } }
.apartment2-top {
  position: relative; }

.apartment2-visual {
  position: relative;
  aspect-ratio: 1675 / 559;
  inline-size: 100%;
  text-align: center;
  background: linear-gradient(180deg, #f96899 0%, #f96899 43%, #059eff 43%, #059eff 100%); }
  .apartment2-visual-img {
    position: relative;
    z-index: 10; }
  .apartment2-visual img {
    inline-size: 100%;
    transition: 1s 1.0s; }
  .apartment2-visual::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    margin-inline: auto;
    inline-size: 100%;
    aspect-ratio: 1500 / 715;
    background: url("../img/syugo/mv_radiation.png") no-repeat top center/cover; }

@media (max-width: 750px) {
  .apartment2-visual {
    height: auto;
    background: linear-gradient(180deg, #f96899 0%, #f96899 36%, #059eff 36%, #059eff 100%); }
    .apartment2-visual::before {
      aspect-ratio: 26 / 49;
      background-image: url("../img/syugo/mv_radiation-sp.png"); } }
.apartment2-floatingNav {
  position: sticky;
  bottom: 0;
  left: 0;
  z-index: 1000;
  inline-size: 100%;
  background-color: var(--clr-primary);
  padding: 20px 0;
  transition-duration: var(--t-duration); }
  .apartment2-floatingNav ul {
    --gap: 20px;
    display: flex;
    transition: 1.0s 0s;
    gap: var(--gap);
    margin-inline: auto;
    max-width: 1080px;
    width: 80%;
    padding-inline: 20px 45px; }
    .apartment2-floatingNav ul li {
      position: relative;
      display: flex;
      align-items: center;
      text-align: center;
      border-radius: 99em;
      inline-size: calc((100% - var(--gap))/2);
      font-weight: var(--fw-eb); }
      .apartment2-floatingNav ul li a {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        padding: 20px 35px;
        font-size: 2.2rem;
        inline-size: 100%;
        font-weight: var(--fw-eb);
        letter-spacing: 0.05em;
        color: var(--clr-primary); }
        .apartment2-floatingNav ul li a::before {
          content: '';
          position: absolute;
          margin: auto;
          inset-inline-end: 18px;
          inline-size: 16px;
          aspect-ratio: 21/18;
          background: image-set(url("../img/syugo/nav_arrow.png") 1x, url("../img/syugo/nav_arrow@2x.png") 2x) no-repeat center center/contain;
          transition-duration: var(--t-duration); }
        .apartment2-floatingNav ul li a:hover {
          color: var(--clr-primary); }
  .apartment2-floatingNav-btn {
    background: linear-gradient(to bottom, #fff, #bce5ff 94%, #bce5ff 100%); }
    .apartment2-floatingNav-btn a {
      font-size: 2.6rem; }
      .apartment2-floatingNav-btn a::before {
        inset-block: 0;
        inset-inline-end: 30px;
        margin: auto;
        transform: rotate(-90deg); }
    .apartment2-floatingNav-btn:hover {
      background: linear-gradient(to bottom, #fff, #fff 100%); }
      .apartment2-floatingNav-btn:hover a::before {
        inset-block-start: -10px; }
  .apartment2-floatingNav-searchBtn {
    background: linear-gradient(to bottom, #fffbbc, #fef33c 45%, #ede00d); }
    .apartment2-floatingNav-searchBtn a {
      font-size: 2.4rem; }
      .apartment2-floatingNav-searchBtn a .apartment2-nav-min {
        font-size: 2rem; }
      .apartment2-floatingNav-searchBtn a::before {
        inset-block: 0;
        inset-inline-end: 22px;
        margin: auto;
        transform: rotate(0); }
    .apartment2-floatingNav-searchBtn:hover {
      background: linear-gradient(to bottom, #fffbbc, #fffbbc); }
      .apartment2-floatingNav-searchBtn:hover a::before {
        inset-inline-end: 12px; }
  .apartment2-floatingNav:not(.fixed) {
    position: relative;
    bottom: -110px;
    left: initial; }
    .apartment2-floatingNav:not(.fixed) .apartment2-nav-btn {
      box-shadow: none; }
    .apartment2-floatingNav:not(.fixed) .apartment2-nav-searchBtn a .apartment2-nav-min {
      font-size: 1.9rem; }

@media (max-width: 750px) {
  .apartment2-floatingNav {
    padding: 15px 0; }
    .apartment2-floatingNav ul {
      --gap: 10px;
      inline-size: 100%;
      padding-inline: 10px; }
      .apartment2-floatingNav ul li {
        border-radius: 10px; }
        .apartment2-floatingNav ul li a {
          padding: 10px 20px;
          font-size: 1.4rem; }
          .apartment2-floatingNav ul li a::before {
            inset-inline-end: 10px;
            inline-size: 10px; }
    .apartment2-floatingNav-btn a::before {
      inset-inline-end: 13px; }
    .apartment2-floatingNav-searchBtn a::before {
      inset-inline-end: 10px; } }
.apartment2-nav {
  margin-block-start: 35px;
  transition-duration: .5s; }
  .apartment2-nav ul {
    --gap: 20px;
    display: flex;
    transition: 1.0s 0s;
    gap: var(--gap);
    width: 1200px;
    margin-inline: auto;
    padding-inline: 30px; }
    .apartment2-nav ul li {
      position: relative;
      display: flex;
      align-items: center;
      text-align: center;
      border-radius: 99em;
      border: 4px solid var(--clr-primary);
      box-shadow: 0px 4px 0px 0px var(--clr-primary);
      inline-size: calc((100% - var(--gap))/2);
      font-weight: var(--fw-eb); }
      .apartment2-nav ul li a {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        padding: 22px 20px;
        inline-size: 100%;
        font-weight: var(--fw-eb);
        letter-spacing: 0.05em;
        color: var(--clr-primary); }
        .apartment2-nav ul li a::before {
          content: '';
          position: absolute;
          margin: auto;
          inline-size: 21px;
          aspect-ratio: 21/18;
          background: image-set(url("../img/syugo/nav_arrow.png") 1x, url("../img/syugo/nav_arrow@2x.png") 2x) no-repeat center center/contain;
          transition-duration: var(--t-duration); }
        .apartment2-nav ul li a:hover {
          color: var(--clr-primary); }
  .apartment2-nav-catch {
    position: absolute;
    inset-block-start: -25px;
    inset-inline: 0;
    margin-inline: auto;
    background-color: var(--clr-primary);
    border-radius: 99em;
    text-align: center;
    padding: 10px 25px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: var(--fw-b);
    line-height: 1;
    inline-size: fit-content;
    letter-spacing: 0.05em;
    transition-duration: var(--t-duration); }
    .apartment2-nav-catch::after {
      content: "";
      position: absolute;
      inset-block-end: -8px;
      inset-inline: 0;
      margin-inline: auto;
      background-color: var(--clr-primary);
      inline-size: 14px;
      block-size: 12px;
      clip-path: polygon(0 0, 100% 0, 50% 100%); }
  .apartment2-nav-btn {
    background: linear-gradient(to bottom, #fff, #bce5ff 94%, #bce5ff 100%); }
    .apartment2-nav-btn a {
      font-size: 2.6rem; }
      .apartment2-nav-btn a::before {
        inset-block: 0;
        inset-inline-end: 30px;
        margin: auto;
        transform: rotate(90deg); }
    .apartment2-nav-btn:hover {
      background: linear-gradient(to bottom, #fff, #fff 100%); }
      .apartment2-nav-btn:hover .apartment2-nav-catch {
        inset-block-start: -30px; }
      .apartment2-nav-btn:hover a::before {
        inset-block-start: 10px; }
  .apartment2-nav-searchBtn {
    background: linear-gradient(to bottom, #fffbbc, #fef33c 45%, #ede00d); }
    .apartment2-nav-searchBtn a {
      font-size: 2.4rem; }
      .apartment2-nav-searchBtn a .apartment2-nav-min {
        font-size: 2rem; }
      .apartment2-nav-searchBtn a::before {
        inset-block: 0;
        inset-inline-end: 22px;
        margin: auto;
        transform: rotate(0); }
    .apartment2-nav-searchBtn:hover {
      background: linear-gradient(to bottom, #fffbbc, #fffbbc); }
      .apartment2-nav-searchBtn:hover .apartment2-nav-catch {
        inset-block-start: -30px; }
      .apartment2-nav-searchBtn:hover a::before {
        inset-inline-end: 12px; }

@media (max-width: 750px) {
  .apartment2-nav {
    margin-block-start: 15px; }
    .apartment2-nav ul {
      --gap: 6px;
      inline-size: 100%;
      padding-inline: 17px; }
      .apartment2-nav ul li {
        border-width: 3px;
        box-shadow: 0px 3px 0px 0px var(--clr-primary); }
        .apartment2-nav ul li a {
          block-size: 100%;
          padding: 9px 20px;
          font-size: 1.4rem;
          line-height: 1.3; }
          .apartment2-nav ul li a::before {
            inline-size: 10px; }
    .apartment2-nav-catch {
      display: none; }
    .apartment2-nav-btn a::before {
      inset-inline-end: 13px; }
    .apartment2-nav-searchBtn a::before {
      inset-inline-end: 10px; }
    .apartment2-nav.fixed {
      padding: 15px 0; }
      .apartment2-nav.fixed ul {
        --gap: 10px;
        inline-size: 100%;
        padding-inline: 10px; }
        .apartment2-nav.fixed ul li {
          border: none;
          box-shadow: none;
          border-radius: 10px; }
          .apartment2-nav.fixed ul li a {
            padding: 10px 20px;
            font-size: 1.4rem; }
            .apartment2-nav.fixed ul li a::before {
              inset-inline-end: 10px;
              inline-size: 10px; } }
.apartment2-plan {
  position: relative;
  padding-block: 125px 60px;
  overflow: hidden; }
  .apartment2-plan #premium, .apartment2-plan #standard, .apartment2-plan #wireless {
    display: contents; }
  .apartment2-plan-features {
    margin-block-start: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    background-color: #0488e8;
    border-radius: var(--r-md);
    inline-size: 100%;
    padding: 34px;
    color: #fff;
    font-weight: var(--fw-b);
    font-size: 2.2rem;
    letter-spacing: 0.05em; }
    .apartment2-plan-features li {
      position: relative;
      padding-inline-start: 40px; }
      .apartment2-plan-features li::before {
        content: "";
        position: absolute;
        inset-block: 0;
        inset-inline-start: 0;
        margin: auto;
        width: 30px;
        aspect-ratio: 1/1;
        background: url("../img/syugo/icon_check.png") no-repeat center center/contain; }
  .apartment2-plan-flow {
    margin-block-start: 50px; }
    .apartment2-plan-flow img {
      inline-size: 100%; }
    .apartment2-plan-flow-result {
      display: none; }
  .apartment2-plan-best {
    display: flex;
    --gap: 41px;
    --num: 3;
    gap: var(--gap);
    margin-block-start: 13px; }
    .apartment2-plan-best-item {
      --border-w: 5px;
      position: relative;
      display: flex;
      flex-direction: column;
      background-color: #fff;
      border: var(--border-w) solid var(--clr-primary);
      border-radius: var(--r-md);
      inline-size: calc((100% - (var(--gap) * (var(--num) - 1))) / var(--num)); }
      .apartment2-plan-best-item-premium {
        --clr: #1548b0; }
      .apartment2-plan-best-item-standard {
        --clr: #006fe1; }
      .apartment2-plan-best-item-wireless {
        --clr: #19bac8; }
    .apartment2-plan-best-campaign {
      position: absolute;
      inset-block-start: -60px;
      inset-inline-end: -38px;
      z-index: 1; }
    .apartment2-plan-best-catch {
      position: relative;
      background-color: var(--clr);
      border-radius: calc(var(--r-md) - var(--border-w)) calc(var(--r-md) - var(--border-w)) 0 0;
      padding-block: 10px;
      inline-size: 100%;
      text-align: center;
      font-size: 1.6rem;
      font-weight: var(--fw-eb);
      color: #fff;
      line-height: 1; }
      .apartment2-plan-best-catch::after {
        content: "";
        position: absolute;
        inset-block-end: -9px;
        inset-inline: 0;
        margin-inline: auto;
        inline-size: 20px;
        block-size: 15px;
        background-color: var(--clr);
        clip-path: polygon(0 0, 100% 0, 50% 100%); }
    .apartment2-plan-best-inner {
      flex: auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 20px 32px 10px; }
    .apartment2-plan-best-title {
      position: relative;
      padding-block-end: 28px;
      inline-size: 100%;
      text-align: center;
      font-size: 1.9rem;
      font-weight: var(--fw-eb);
      color: var(--clr); }
      .apartment2-plan-best-title::after {
        --border-w: 4px;
        content: "";
        position: absolute;
        inset-block-end: 0;
        inset-inline: 0;
        margin-inline: auto;
        inline-size: 100%;
        block-size: var(--border-w);
        background-size: 10px var(--border-w);
        background-image: linear-gradient(to right, var(--clr) 6px, transparent 4px);
        background-repeat: repeat-x;
        background-position: left bottom; }
    .apartment2-plan-best-titleBig {
      display: block;
      font-size: 3.3rem;
      line-height: 1;
      margin-block-start: 0.25em;
      margin-inline: -1em; }
      .apartment2-plan-best-titleBig:where(.apartment2-plan-best-titleBig-wifi) {
        font-size: 2.7rem; }
    .apartment2-plan-best-speed {
      display: flex;
      justify-content: center;
      align-items: center;
      min-block-size: 120px;
      color: var(--clr-primary-deep);
      font-size: 1.4rem;
      font-weight: var(--fw-b); }
      .apartment2-plan-best-speed:has(.apartment2-plan-best-valueBox) p {
        align-items: center; }
      .apartment2-plan-best-speed p {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 15px;
        text-align: center; }
    .apartment2-plan-best-valueBox {
      text-align: left; }
    .apartment2-plan-best-value {
      display: block;
      position: relative;
      font-weight: var(--fw-eb);
      padding-block-end: 10px;
      line-height: 1;
      letter-spacing: 0.05em; }
    .apartment2-plan-best-number {
      font-size: 3.5rem; }
    .apartment2-plan-best-unit {
      font-size: 2.4rem; }
    .apartment2-plan-best-notes {
      position: absolute;
      inset-block-start: 4px;
      inset-inline-end: 0;
      font-size: 1.2rem;
      font-weight: var(--fw-b); }
    .apartment2-plan-best-tag {
      border: 1px solid var(--clr-primary-deep);
      padding: 6px 11px;
      line-height: 1;
      font-weight: var(--fw-b);
      letter-spacing: 0.05em; }
    .apartment2-plan-best-summary {
      position: relative;
      background-color: var(--clr);
      border-radius: 0 0 calc(var(--r-md) - var(--border-w)) calc(var(--r-md) - var(--border-w));
      padding: 27px 29px 31px; }
    .apartment2-plan-best-period {
      margin-inline: auto;
      display: block;
      width: fit-content; }
    .apartment2-plan-best-monthly {
      margin-block-start: 5px;
      margin-inline: auto;
      font-size: 2.4rem;
      font-weight: var(--fw-eb);
      color: #fff;
      width: fit-content;
      text-align: right;
      line-height: 1;
      letter-spacing: 0.07em; }
    .apartment2-plan-best-amount {
      margin-inline: 5px;
      font-size: 5.2rem;
      color: #fff112; }
    .apartment2-plan-best-included {
      font-size: 1.3rem; }
    .apartment2-plan-best .apartment2-btn {
      margin-block-start: 20px;
      padding: 10px;
      letter-spacing: 0.03em; }
  .apartment2-plan-faq {
    margin-block-start: 50px;
    background-color: #0488e8;
    border-radius: var(--r-md);
    padding-block: 40px;
    padding-inline: 38px;
    color: #fff;
    letter-spacing: 0.03em; }
    .apartment2-plan-faq-title {
      position: relative;
      padding-inline-start: 45px;
      font-size: 2.2rem;
      font-weight: var(--fw-b); }
      .apartment2-plan-faq-title::before {
        content: "";
        position: absolute;
        inset-inline-start: 0;
        inset-block: 0;
        margin-block: 0;
        margin-block: auto;
        inline-size: 32px;
        aspect-ratio: 1/1;
        background: url("../img/syugo/plan_icon_q.png") no-repeat center center/contain; }
    .apartment2-plan-faq-desc {
      margin-block-start: 15px;
      font-size: 1.7rem;
      font-weight: var(--fw-m); }
    .apartment2-plan-faq-note {
      margin-block-start: 15px;
      font-size: 1.3rem;
      font-weight: var(--fw-m); }
  .apartment2-plan .apartment2-notesBox {
    margin-block-start: 30px; }
  .apartment2-plan-btn {
    margin-block-start: 30px;
    margin-inline: auto;
    position: relative;
    display: block;
    inline-size: 600px;
    border: 4px solid var(--clr-primary);
    box-shadow: 0 4px 0 0 var(--clr-primary);
    border-radius: 99em;
    background-color: #fff;
    padding: 22px;
    font-size: 2.2rem;
    font-weight: var(--fw-eb);
    color: var(--clr-primary);
    text-align: center;
    letter-spacing: 0.03em;
    transition-duration: var(--t-duration); }
    .apartment2-plan-btn::before {
      content: "";
      position: absolute;
      inset-inline-end: 22px;
      inset-block: 0;
      margin: auto;
      inline-size: 17px;
      background: image-set(url("../img/syugo/arrow-r.png") 1x, url("../img/syugo/arrow-r@2x.png") 2x) no-repeat center center/contain;
      transition-duration: var(--t-duration); }
    .apartment2-plan-btn:hover {
      background-color: #ddefff;
      color: var(--clr-primary); }
      .apartment2-plan-btn:hover::before {
        inset-inline-end: 12px; }

@media (max-width: 750px) {
  .apartment2-plan {
    padding: 50px 20px 25px; }
    .apartment2-plan #premium, .apartment2-plan #standard, .apartment2-plan #wireless {
      padding-block-start: 60px;
      margin-block-start: -60px;
      display: block; }
    .apartment2-plan-features {
      margin-block-start: 10px;
      flex-direction: column;
      gap: 5px;
      padding: 15px;
      font-size: 1.3rem; }
      .apartment2-plan-features li {
        padding-inline-start: 25px; }
        .apartment2-plan-features li::before {
          width: 18px; }
    .apartment2-plan-flow {
      margin-block-start: 15px; }
      .apartment2-plan-flow-result {
        margin-block-start: 4px;
        display: flex;
        gap: 5px;
        justify-content: space-between; }
    .apartment2-plan-best {
      --num: 1;
      flex-direction: column; }
      .apartment2-plan-best-item {
        --border-w: 4px; }
      .apartment2-plan-best-campaign {
        inset-block-start: -45px;
        inset-inline-end: -22px;
        inline-size: 110px;
        aspect-ratio: 121/133; }
      .apartment2-plan-best-catch {
        font-size: 1.2rem;
        padding-block: 10px 12px; }
        .apartment2-plan-best-catch::after {
          inset-block-end: -8px;
          inline-size: 18px;
          block-size: 14px; }
      .apartment2-plan-best-inner {
        padding: 15px 38px 0; }
      .apartment2-plan-best-title {
        padding-block-end: 20px;
        font-size: 1.4rem; }
        .apartment2-plan-best-title::after {
          --border-w: 3px; }
      .apartment2-plan-best-titleBig {
        font-size: 2.4rem; }
      .apartment2-plan-best-speed {
        min-block-size: auto;
        font-size: 1rem; }
        .apartment2-plan-best-speed p {
          gap: 10px;
          padding-block: 10px; }
      .apartment2-plan-best-number {
        font-size: 3rem; }
      .apartment2-plan-best-unit {
        font-size: 2rem; }
      .apartment2-plan-best-notes {
        font-size: 1rem; }
      .apartment2-plan-best-tag {
        padding: 5px 8px; }
      .apartment2-plan-best-summary {
        padding: 18px 34px 23px; }
      .apartment2-plan-best-monthly {
        font-size: 1.8rem; }
      .apartment2-plan-best-amount {
        font-size: 4rem; }
      .apartment2-plan-best-included {
        font-size: 1rem; }
      .apartment2-plan-best .apartment2-btn {
        margin-block-start: 20px;
        font-size: 1.2rem; }
    .apartment2-plan-faq {
      --r-md: 12px;
      margin-block-start: 30px;
      padding-block: 20px;
      padding-inline: 23px; }
      .apartment2-plan-faq-title {
        padding-inline-start: 40px;
        font-size: 1.5rem; }
        .apartment2-plan-faq-title::before {
          inline-size: 30px; }
      .apartment2-plan-faq-desc {
        margin-block-start: 10px;
        font-size: 1.2rem; }
      .apartment2-plan-faq-note {
        margin-block-start: 10px;
        font-size: 1rem; }
    .apartment2-plan-btn {
      margin-block-start: 12px;
      inline-size: 100%;
      border-width: 3px;
      box-shadow: 0 3px 0 0 var(--clr-primary);
      padding: 13px;
      font-size: 1.4rem; }
      .apartment2-plan-btn::before {
        inline-size: 11px; } }
.apartment2-campaign {
  background: #059eff;
  padding-block: 60px 120px; }
  .apartment2-campaign .apartment2-title-min {
    display: block;
    text-align: center;
    margin-block-start: 15px;
    font-size: 2.4rem;
    color: var(--clr-primary);
    font-weight: var(--fw-eb);
    letter-spacing: 0.03em; }
  .apartment2-campaign-list {
    margin-block-start: 40px;
    padding-inline: 100px; }
  .apartment2-campaign-item {
    flex: 1;
    text-align: center;
    margin-inline: 25px;
    width: 300px; }
    .apartment2-campaign-item img {
      border: 3px solid #fff;
      max-inline-size: 100%;
      height: auto;
      aspect-ratio: 300/251;
      object-fit: cover; }
    .apartment2-campaign-item p {
      min-height: 105px;
      padding: 15px 0;
      text-align: left;
      font-size: 1.6rem;
      color: #fff;
      font-weight: var(--fw-m);
      letter-spacing: 0.03em; }
    .apartment2-campaign-item .apartment2-btn {
      padding: 8px;
      letter-spacing: 0.05em; }
    .apartment2-campaign-item:hover .apartment2-btn {
      background: #fff774;
      color: var(--clr-primary); }
      .apartment2-campaign-item:hover .apartment2-btn::before {
        inset-inline-end: 5px; }
  .apartment2-campaign .campaignSlick .slick-prev, .apartment2-campaign .campaignSlick .slick-next {
    bottom: 0;
    margin: auto;
    width: 50px;
    height: auto;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background-repeat: no-repeat;
    transition-duration: var(--t-duration); }
    .apartment2-campaign .campaignSlick .slick-prev:hover, .apartment2-campaign .campaignSlick .slick-next:hover {
      opacity: 0.8; }
  .apartment2-campaign .campaignSlick .slick-prev {
    left: 0;
    background-image: url("../img/syugo/campaign_arrow-prev.png"); }
  .apartment2-campaign .campaignSlick .slick-next {
    right: 0;
    background-image: url("../img/syugo/campaign_arrow-next.png"); }
  .apartment2-campaign .apartment2-notesBox {
    margin-block-start: 75px; }

@media (max-width: 750px) {
  .apartment2-campaign {
    padding-block: 25px 60px; }
    .apartment2-campaign .apartment2-title-min {
      margin-block-start: 10px;
      font-size: 1.3rem; }
    .apartment2-campaign-list {
      margin-block-start: 17px;
      gap: 20px;
      padding-inline: 0; }
    .apartment2-campaign-item {
      --size: 190px;
      width: var(--size);
      margin-inline: 10px; }
      .apartment2-campaign-item img {
        inline-size: 100%; }
      .apartment2-campaign-item p {
        inline-size: var(--size);
        min-height: 100px;
        white-space: initial;
        font-size: 1.2rem; }
      .apartment2-campaign-item .apartment2-btn {
        font-size: 1.2rem; }
        .apartment2-campaign-item .apartment2-btn::before {
          inline-size: 8px; }
    .apartment2-campaign .apartment2-notesBox {
      margin-block-start: 40px; } }
.apartment2-otoku {
  padding-block-start: 120px; }
  .apartment2-otoku-list {
    display: flex;
    justify-content: space-between; }
    .apartment2-otoku-list-item {
      inline-size: 50%; }
      .apartment2-otoku-list-item-sarani {
        padding-inline: 12px 60px; }
        .apartment2-otoku-list-item-sarani .apartment2-otoku-img {
          margin-block-start: 20px; }
      .apartment2-otoku-list-item-motto {
        border-inline-start: 4px solid #0994fa;
        padding-inline: 60px 12px; }
        .apartment2-otoku-list-item-motto .apartment2-otoku-img {
          margin-block-start: 30px; }
    .apartment2-otoku-list .apartment2-readTxt {
      margin-block-start: 15px;
      font-size: 1.9rem;
      font-weight: var(--fw-eb);
      line-height: 1.6;
      letter-spacing: 0.03em; }
  .apartment2-otoku-img {
    margin-inline: auto;
    text-align: center; }
  .apartment2-otoku-point {
    margin-inline: auto;
    margin-block-start: 20px;
    background: #0488e8;
    border-radius: var(--r-md);
    color: #fff;
    font-weight: var(--fw-eb);
    padding-block: 13px;
    padding-inline: 60px 50px;
    inline-size: fit-content;
    font-size: 1.6rem; }
    .apartment2-otoku-point li {
      position: relative;
      padding-inline-start: 25px; }
      .apartment2-otoku-point li:not(:first-child) {
        margin-block-start: 5px; }
      .apartment2-otoku-point li::before {
        content: "";
        position: absolute;
        inset-block: 0;
        inset-inline-start: 0;
        margin: auto;
        inline-size: 18px;
        aspect-ratio: 1/1;
        background: url("../img/syugo/icon_check.png") center center/contain; }
  .apartment2-otoku-fee {
    margin-block-start: 20px;
    color: #fff;
    text-align: center; }
    .apartment2-otoku-fee-txt {
      text-align: center;
      font-size: 1.7rem;
      font-weight: var(--fw-eb);
      line-height: 1.2;
      letter-spacing: 0.03em; }
      .apartment2-otoku-fee-txt strong {
        font-size: 2.6rem; }
      .apartment2-otoku-fee-txt span {
        font-size: 1.3rem; }
    .apartment2-otoku-fee-monthly {
      position: relative;
      margin-block-start: 5px;
      display: inline-block;
      border-block-end: 4px solid #fff;
      padding-block-end: 12px;
      font-weight: var(--fw-eb);
      font-size: 2.5rem;
      letter-spacing: 0.05em;
      line-height: 1; }
      .apartment2-otoku-fee-monthly-amount {
        position: relative;
        margin-inline-start: 10px;
        font-size: 2.8rem; }
        .apartment2-otoku-fee-monthly-amount sup {
          position: absolute;
          inset-block-start: -1em;
          inset-inline-end: 0.5em;
          font-size: 1.2rem;
          font-weight: var(--fw-sb); }
      .apartment2-otoku-fee-monthly strong {
        font-size: 5.5rem; }
      .apartment2-otoku-fee-monthly-min {
        font-size: 1.3rem; }
    .apartment2-otoku-fee-ribbon {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      block-size: 36px;
      color: #059eff;
      font-size: 1.7rem;
      font-weight: var(--fw-eb);
      inline-size: fit-content;
      padding: 5px 40px;
      margin-inline: auto;
      letter-spacing: 0.07em; }
      .apartment2-otoku-fee-ribbon:before, .apartment2-otoku-fee-ribbon:after {
        position: absolute;
        content: '';
        width: 0;
        height: 0;
        z-index: 1; }
      .apartment2-otoku-fee-ribbon:before {
        inset-block-start: 0;
        inset-inline-start: -8px;
        border-width: 18px 0px 18px 8px;
        border-color: #fff #fff #fff transparent;
        border-style: solid; }
      .apartment2-otoku-fee-ribbon:after {
        inset-block-start: 0;
        inset-inline-end: -8px;
        border-width: 18px 8px 18px 0px;
        border-color: #fff transparent #fff #fff;
        border-style: solid; }
    .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly {
      position: relative; }
      .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly-amount {
        position: relative; }
        .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly-amount sup {
          position: absolute;
          inset-block-start: -8px;
          inset-inline-end: 36px;
          font-size: 1.2rem;
          font-weight: var(--fw-sb); }
      .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly strong {
        font-size: 5.4rem; }
        .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly strong.fc-yellow {
          margin-inline-start: 5px;
          font-size: 4.3rem; }
      .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly-min {
        font-size: 1.3rem; }
    .apartment2-otoku-fee-sp .apartment2-otoku-fee-note {
      position: absolute;
      inset-block-start: 2px;
      inset-inline-end: -20px;
      font-size: 1.2rem;
      font-weight: var(--fw-sb); }

@media (max-width: 750px) {
  .apartment2-otoku {
    padding-block-start: 60px;
    padding-inline: 15px; }
    .apartment2-otoku-list {
      gap: 50px;
      flex-direction: column; }
      .apartment2-otoku-list-item {
        inline-size: 100%; }
        .apartment2-otoku-list-item .apartment2-readTxt {
          font-size: 1.3rem; }
        .apartment2-otoku-list-item-sarani {
          padding-inline: 0; }
          .apartment2-otoku-list-item-sarani .apartment2-otoku-img {
            margin-block-start: 25px;
            inline-size: 80%; }
            .apartment2-otoku-list-item-sarani .apartment2-otoku-img img {
              inline-size: 100%; }
        .apartment2-otoku-list-item-motto {
          border-block-start: 4px solid #0994fa;
          border-inline-start: none;
          padding-block-start: 50px;
          padding-inline: 0; }
          .apartment2-otoku-list-item-motto .apartment2-otoku-img {
            margin-block-start: 20px; }
    .apartment2-otoku-point {
      padding-inline: 30px 25px;
      font-size: 1.4rem; }
      .apartment2-otoku-point li:not(:first-child) {
        margin-block-start: 6px; }
      .apartment2-otoku-point li::before {
        inline-size: 16px; }
    .apartment2-otoku-fee-txt {
      font-size: 1.5rem; }
      .apartment2-otoku-fee-txt strong {
        font-size: 2.3rem; }
      .apartment2-otoku-fee-txt span {
        font-size: 1.1rem; }
    .apartment2-otoku-fee-monthly {
      padding-block-end: 12px;
      font-size: 2.2rem; }
      .apartment2-otoku-fee-monthly-amount {
        font-size: 2.4rem; }
        .apartment2-otoku-fee-monthly-amount sup {
          inset-inline-end: 0.2em; }
      .apartment2-otoku-fee-monthly strong {
        font-size: 4rem; }
      .apartment2-otoku-fee-monthly-min {
        font-size: 1.1rem; }
    .apartment2-otoku-fee-ribbon {
      block-size: 32px;
      font-size: 1.5rem;
      padding: 7px 30px; }
      .apartment2-otoku-fee-ribbon:before {
        border-width: 16px 0px 16px 8px; }
      .apartment2-otoku-fee-ribbon:after {
        border-width: 16px 8px 16px 0px; }
    .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly strong {
      font-size: 4rem; }
      .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly strong.fc-yellow {
        font-size: 3.3rem; }
    .apartment2-otoku-fee-sp .apartment2-otoku-fee-monthly-amount sup {
      inset-block-start: -5px;
      inset-inline-end: 28px;
      font-size: 1rem; } }
.apartment2-reason {
  border-block: 10px solid #fff;
  background: url("../img/syugo/reason_bg_top.png") no-repeat top center/contain, url("../img/syugo/reason_bg_bottom.png") repeat-x bottom center, #c5e8ff;
  padding-block: 100px 245px;
  overflow: hidden; }
  @media (min-width: 1920px) {
    .apartment2-reason {
      background-size: cover,auto;
      background-position: top -640px center, bottom center; } }
  .apartment2-reason .apartment2-readTxt {
    margin-block-start: 15px;
    font-size: 1.9rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
    font-weight: var(--fw-eb); }
  .apartment2-reason-list {
    --gap: 20px;
    --num: 2;
    margin-block-start: 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--gap); }
  .apartment2-reason-item {
    inline-size: calc((100% - (var(--gap) * (var(--num) - 1))) / var(--num));
    border: 5px solid var(--clr-primary);
    border-radius: var(--r-md);
    text-align: center;
    background-color: #fff; }
    .apartment2-reason-item-blue {
      --color: #059eff; }
    .apartment2-reason-item-pink {
      --color: #f974a1; }
  .apartment2-reason-title {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 3rem;
    background: var(--color);
    border-radius: 12px 12px 0 0;
    color: #fff;
    padding-block: 22px;
    text-wrap: balance; }
  .apartment2-reason-icon {
    margin-inline-end: 12px; }
  .apartment2-reason-content {
    padding-block: 15px 30px;
    padding-inline: 33px; }
  .apartment2-reason-catch {
    color: var(--color);
    font-size: 2.2rem;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.03em; }
  .apartment2-reason-text {
    margin-block-start: 15px;
    font-size: 1.5rem;
    font-weight: var(--fw-m);
    color: var(--clr-primary-deep);
    line-height: 1.7;
    letter-spacing: 0.03em; }

@media (max-width: 750px) {
  .apartment2-reason {
    padding: 60px 15px 80px;
    background-size: contain;
    border-width: 3px; }
    .apartment2-reason .apartment2-readTxt {
      font-size: 1.3rem; }
    .apartment2-reason-list {
      --gap: 10px;
      --num: 1;
      margin-block-start: 20px; }
    .apartment2-reason-item {
      text-align: center;
      display: block;
      border-width: 4px; }
      .apartment2-reason-item:nth-child(odd) {
        --color: #059eff; }
      .apartment2-reason-item:nth-child(even) {
        --color: #f974a1; }
    .apartment2-reason-title {
      padding: 10px;
      font-size: 2rem; }
    .apartment2-reason-icon {
      max-inline-size: 30px; }
    .apartment2-reason-content {
      padding: 15px; }
    .apartment2-reason-catch {
      font-size: 1.7rem; }
    .apartment2-reason-text {
      margin-block-start: 10px;
      font-size: 1.4rem; } }
.apartment2-himawariTv {
  margin-block-start: 120px;
  text-align: center; }
  .apartment2-himawariTv-title {
    position: relative;
    margin-inline: auto;
    inline-size: fit-content; }
    .apartment2-himawariTv-title::before {
      content: "";
      position: absolute;
      inset-block-start: -10px;
      inset-inline-start: -345px;
      inline-size: 245px;
      aspect-ratio: 49/36;
      background: image-set(url("../img/syugo/himawariTv_dec01.png") 1x, url("../img/syugo/himawariTv_dec01@2x.png") 2x) no-repeat center center/contain; }
    .apartment2-himawariTv-title::after {
      content: "";
      position: absolute;
      inset-block-start: -10px;
      inset-inline-end: -330px;
      inline-size: 267px;
      aspect-ratio: 267/179;
      background: image-set(url("../img/syugo/himawariTv_dec02.png") 1x, url("../img/syugo/himawariTv_dec02@2x.png") 2x) no-repeat center center/contain; }
  .apartment2-himawariTv-list {
    --gap: 50px;
    --num: 3;
    margin-block-start: 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-inline: 40px;
    gap: var(--gap); }
    .apartment2-himawariTv-list li {
      inline-size: calc((100% - (var(--gap) * (var(--num) - 1)))/var(--num));
      display: flex;
      flex-direction: column; }
    .apartment2-himawariTv-list figure {
      display: flex;
      align-items: center;
      justify-content: center;
      border: 6px solid #fff;
      border-radius: var(--r-md);
      overflow: hidden;
      aspect-ratio: 340 / 239;
      background-color: #edf6fc; }
      .apartment2-himawariTv-list figure img {
        inline-size: 100%; }
    .apartment2-himawariTv-list-title {
      margin-block-start: 10px;
      color: var(--clr-primary);
      font-size: 2.5rem;
      font-weight: var(--fw-eb);
      letter-spacing: 0.02em; }
    .apartment2-himawariTv-list-txt {
      margin-block: 10px 15px;
      color: var(--clr-primary-deep);
      font-size: 1.4rem;
      font-weight: var(--fw-m);
      line-height: 1.6;
      letter-spacing: 0.03em; }
    .apartment2-himawariTv-list-btn {
      margin-block-start: auto;
      position: relative;
      display: block;
      padding: 8px;
      border-radius: 99em;
      background: #fff;
      font-size: 1.5rem;
      font-weight: var(--fw-b);
      text-align: center;
      letter-spacing: 0.03em;
      transition-duration: var(--t-duration); }
      .apartment2-himawariTv-list-btn::before {
        content: '';
        position: absolute;
        inset-block: 0;
        inset-inline-end: 19px;
        margin: auto;
        inline-size: 11px;
        aspect-ratio: 17/15;
        background: image-set(url("../img/syugo/arrow-r.png") 1x, url("../img/syugo/arrow-r@2x.png") 2x) no-repeat center center/contain;
        transition-duration: var(--t-duration); }
      .apartment2-himawariTv-list-btn:hover {
        background: #ddefff;
        color: var(--clr-primary); }
        .apartment2-himawariTv-list-btn:hover::before {
          inset-inline-end: 9px; }

@media (max-width: 750px) {
  .apartment2-himawariTv {
    margin-block-start: 60px; }
    .apartment2-himawariTv-title::before, .apartment2-himawariTv-title::after {
      display: none; }
    .apartment2-himawariTv-list {
      --gap: 15px;
      --num: 2;
      margin-block-start: 20px;
      margin-inline: 0; }
      .apartment2-himawariTv-list figure {
        border-width: 4px; }
      .apartment2-himawariTv-list-txt {
        line-height: 1.5;
        padding: 0; }
      .apartment2-himawariTv-list-title {
        font-size: 1.9rem; }
      .apartment2-himawariTv-list-btn {
        font-size: 1.3rem; }
        .apartment2-himawariTv-list-btn::before {
          inset-inline-end: 12px;
          inline-size: 9px; } }
.apartment2-flow {
  padding-block: 105px 100px;
  background: #059eff;
  color: var(--clr-primary); }
  .apartment2-flow-list {
    --gap: 50px;
    --num: 5;
    margin-block-start: 40px;
    display: flex;
    justify-content: space-between;
    list-style: none;
    gap: var(--gap); }
    .apartment2-flow-list > li {
      flex: 1;
      position: relative;
      display: flex;
      flex-direction: column;
      inline-size: calc((100% - (var(--gap) * (var(--num) - 1))) / var(--num)); }
      .apartment2-flow-list > li:not(:first-child)::before {
        content: '';
        border-left: 18px solid var(--clr-primary);
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        position: absolute;
        inset-block-start: 90px;
        inset-inline-start: -30px; }
  .apartment2-flow-image {
    text-align: center; }
  .apartment2-flow-title {
    margin-block-start: 20px;
    margin-inline: auto;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    white-space: nowrap;
    letter-spacing: 0.03em; }
    .apartment2-flow-title-02 {
      margin-inline-start: -10px; }
  .apartment2-flow-text {
    margin-block: 10px;
    font-size: 1.4rem;
    line-height: 1.6;
    font-weight: var(--fw-m);
    padding-inline: 5px; }
  .apartment2-flow-btn {
    position: relative;
    margin-block-start: auto;
    display: block;
    position: relative;
    padding: 12px;
    border-radius: 99em;
    background: #fff;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
    transition-duration: var(--t-duration); }
    .apartment2-flow-btn::before {
      content: '';
      position: absolute;
      inset-block: 0;
      inset-inline-end: 16px;
      margin: auto;
      inline-size: 10px;
      aspect-ratio: 17/15;
      background: image-set(url("../img/syugo/arrow-r.png") 1x, url("../img/syugo/arrow-r@2x.png") 2x) no-repeat center center/contain;
      transition-duration: var(--t-duration); }
    .apartment2-flow-btn:hover {
      background: #ddefff;
      color: var(--clr-primary); }
      .apartment2-flow-btn:hover::before {
        inset-inline-end: 6px; }

@media (max-width: 750px) {
  .apartment2-flow {
    padding-block: 50px;
    padding-inline: 30px; }
    .apartment2-flow .apartment2-readTxt {
      font-size: 1.3rem; }
    .apartment2-flow-title {
      margin-block-start: 10px;
      font-size: 1.8rem; }
    .apartment2-flow-list {
      --gap: 70px;
      flex-direction: column;
      margin-block-start: 20px; }
      .apartment2-flow-list > li {
        --num: 1; }
        .apartment2-flow-list > li:not(:first-child)::before {
          border-left: none;
          border-top: none;
          border-bottom: none; }
        .apartment2-flow-list > li:not(:first-child)::before {
          border-top: 18px solid var(--clr-primary);
          border-left: 20px solid transparent;
          border-right: 20px solid transparent;
          border-bottom: none;
          inset-block-start: -40px;
          inset-inline-start: 50%;
          margin-inline-start: -20px; }
    .apartment2-flow-image img {
      width: 40%; }
    .apartment2-flow-title-02 {
      margin-inline-start: auto; }
    .apartment2-flow-text {
      margin-block: 10px 0; }
    .apartment2-flow-btn {
      margin-block-start: 15px; } }
.apartment2-contact {
  position: relative;
  background: #059eff;
  padding: 75px 0 140px; }
  .apartment2-contact::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    margin-inline: auto;
    inline-size: 1200px;
    block-size: 4px;
    background-color: #0994fa; }
  .apartment2-contact-block {
    --gap: 30px;
    margin-block-start: 45px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none;
    gap: var(--gap); }
    .apartment2-contact-block > li {
      border: 5px solid var(--clr-primary);
      border-radius: var(--r-md);
      padding: 30px;
      background: #fff;
      text-align: center; }
  .apartment2-contact-net, .apartment2-contact-tel {
    inline-size: calc((100% - var(--gap))/2); }
  .apartment2-contact-shop {
    inline-size: 100%; }
  .apartment2-contact-title {
    position: relative;
    padding-bottom: 22px;
    font-size: 3rem;
    font-weight: bold;
    color: var(--clr-primary);
    line-height: 1; }
    .apartment2-contact-title::after {
      --border-w: 4px;
      content: "";
      position: absolute;
      inset-block-end: 0;
      inset-inline: 0;
      inline-size: 100%;
      block-size: var(--border-w);
      background-size: 10px var(--border-w);
      background-image: linear-gradient(to right, var(--clr-primary) 6px, transparent 4px);
      background-repeat: repeat-x;
      background-position: left bottom; }
  .apartment2-contact-lead {
    margin: 25px 0 30px;
    font-size: 1.6rem;
    text-align: center;
    color: var(--clr-primary-deep); }
  .apartment2-contact-btn-list {
    --clm-gap: 13px;
    --row-gap: 15px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--row-gap) var(--clm-gap); }
  .apartment2-contact-btn, .apartment2-contact-btn2 {
    display: block;
    position: relative;
    border: 4px solid var(--clr-primary);
    box-shadow: 0 4px 0 0 var(--clr-primary);
    border-radius: var(--r-md);
    font-size: 2.6rem;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
    transition-duration: var(--t-duration); }
    .apartment2-contact-btn::before, .apartment2-contact-btn2::before {
      content: '';
      position: absolute;
      inset-block: 0;
      inset-inline-end: 17px;
      margin: auto;
      inline-size: 17px;
      aspect-ratio: 17/15;
      background: image-set(url("../img/syugo/arrow-r.png") 1x, url("../img/syugo/arrow-r@2x.png") 2x) no-repeat center center/contain;
      transition-duration: var(--t-duration); }
    .apartment2-contact-btn:hover, .apartment2-contact-btn2:hover {
      color: var(--clr-primary); }
  .apartment2-contact-btn {
    padding: 20px 20px 15px;
    background: linear-gradient(to bottom, #fffbbc, #fef33c 45%, #ede00d);
    inline-size: calc((100% - var(--clm-gap))/2); }
    .apartment2-contact-btn span {
      display: block;
      font-size: 1.5rem; }
    .apartment2-contact-btn:hover {
      background: linear-gradient(to bottom, #fffbbc, #fffbbc); }
      .apartment2-contact-btn:hover::before {
        inset-inline-end: 7px; }
  .apartment2-contact-btn2 {
    inline-size: 100%;
    padding: 25px 12px;
    background: linear-gradient(to bottom, #ffe7a5, #ffc31e 45%, #f2b100); }
    .apartment2-contact-btn2:hover {
      background: linear-gradient(to bottom, #ffe7a5, #ffe7a5); }
      .apartment2-contact-btn2:hover::before {
        inset-inline-end: 4px; }
  .apartment2-contact-tel-box {
    border-radius: var(--r-md);
    padding-inline: 30px;
    padding-block: 40px 45px;
    background: #edf7ff; }
    .apartment2-contact-tel-box dl {
      margin-block-start: 15px; }
      .apartment2-contact-tel-box dl > dt {
        display: inline-block;
        vertical-align: 1.9em;
        padding: 2px 15px;
        background: var(--clr-primary-deep);
        border-radius: 99em;
        color: #fff;
        font-size: 1.2rem;
        font-weight: var(--fw-sb); }
      .apartment2-contact-tel-box dl > dd {
        margin-inline-start: 5px;
        display: inline-block;
        font-size: 1.2rem;
        font-weight: var(--fw-m); }
  .apartment2-contact-tel-num {
    position: relative;
    padding-inline-start: 63px;
    color: var(--clr-primary);
    font-size: 5.2rem;
    font-weight: var(--fw-eb);
    line-height: 1; }
    .apartment2-contact-tel-num::after {
      content: "";
      position: absolute;
      inset-block: 0;
      inset-inline-start: 0;
      margin: auto;
      inline-size: 52px;
      aspect-ratio: 26/21;
      background: image-set(url("../img/syugo/icon_tel.png") 1x, url("../img/syugo/icon_tel@2x.png") 2x) no-repeat center center/contain; }
  .apartment2-contact-tel-time {
    font-size: 2rem; }
  .apartment2-contact-tel-note {
    display: block;
    font-size: 1.2rem; }
  .apartment2-contact-shop-list {
    --gap: 30px;
    --num: 4;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap); }
    .apartment2-contact-shop-list li {
      inline-size: calc((100% - (var(--gap) * (var(--num) - 1))) / var(--num)); }
      .apartment2-contact-shop-list li a {
        display: block; }
        .apartment2-contact-shop-list li a:hover span {
          text-decoration: underline;
          text-underline-offset: 8px; }
      .apartment2-contact-shop-list li figure {
        border-radius: var(--r-md);
        overflow: hidden; }
      .apartment2-contact-shop-list li span {
        position: relative;
        display: inline-block;
        padding-block: 15px;
        padding-inline-start: 24px;
        text-align: center;
        font-weight: bold;
        font-size: 2.1rem;
        color: var(--clr-primary-deep); }
        .apartment2-contact-shop-list li span::after {
          content: '';
          position: absolute;
          inset-block: 0;
          inset-inline-start: 0;
          margin: auto;
          inline-size: 17px;
          aspect-ratio: 17/15;
          background: image-set(url("../img/syugo/arrow-r.png") 1x, url("../img/syugo/arrow-r@2x.png") 2x) no-repeat center center/contain; }

@media (max-width: 750px) {
  .apartment2-contact {
    padding: 20px;
    padding: 50px 15px 70px; }
    .apartment2-contact::before {
      inline-size: calc(100% - 30px); }
    .apartment2-contact-block {
      margin-block-start: 30px;
      display: block; }
      .apartment2-contact-block > li {
        padding: 20px;
        margin: 0 0 20px 0; }
    .apartment2-contact-net, .apartment2-contact-tel {
      inline-size: 100%; }
    .apartment2-contact-btn, .apartment2-contact-btn2 {
      font-size: 1.8rem; }
      .apartment2-contact-btn span, .apartment2-contact-btn2 span {
        font-size: 1.2rem; }
      .apartment2-contact-btn::before, .apartment2-contact-btn2::before {
        inset-inline-end: 10px;
        inline-size: 11px; }
    .apartment2-contact-btn {
      padding: 15px 10px 10px; }
    .apartment2-contact-tel-num {
      padding-inline-start: 40px;
      font-size: 3rem; }
      .apartment2-contact-tel-num::after {
        inline-size: 30px; }
    .apartment2-contact-tel-box {
      padding: 15px 10px; }
      .apartment2-contact-tel-box dl {
        margin-block-start: 10px; }
      .apartment2-contact-tel-box dl > dt {
        font-size: 1rem; }
      .apartment2-contact-tel-box dl > dd {
        font-size: 1rem; }
    .apartment2-contact-tel-time {
      font-size: 1.6em;
      line-height: 1; }
    .apartment2-contact-title {
      font-size: 2.2rem; }
    .apartment2-contact-lead {
      margin: 15px 0;
      font-size: 1.4rem; }
    .apartment2-contact-shop-list {
      --num: 2;
      --gap: 15px; }
      .apartment2-contact-shop-list li span {
        padding-block: 7px;
        font-size: 1.6rem; }
        .apartment2-contact-shop-list li span::after {
          inline-size: 12px; } }
.newfooter-address {
  margin-top: 0; }

/*# sourceMappingURL=syugo_v2.css.map */
