@charset "UTF-8";
/**
 * レスポンシブのブレイクポイント設定
 */
/*
COLORS
================================================ */
:root {
  --pink: #F279A2;
  --blue: #1B6EB1;
  --sky-blue: #56ADF0;
  --orange: #ED794D;
  --green: #008B80;
  --yellow: #FFDC5A;
  --light-blue: #F2FAFF;
  --light-green: #E4E8E5;
  --light-grey: #F7F7F7;
  --placeholder: #9B9B9B;
  --grey: #ddd;
  --navy: #2E3180;
  --black: #333;
  --white: #fff;
  --gradation-orange: linear-gradient(180deg, #EA8863, #CC5223);
  --gradation-orange_hover: linear-gradient(180deg, #ea7b52, #cd4510);
  --gradation-blue: linear-gradient(180deg, #1C96CE, #1F67AF);
  --gradation-blue_hover: linear-gradient(180deg, #0b8fcc, #0154a7);
  --compare-pink: #FDF0F5;
  --compare-blue: #EDF7FF;
}

/*
フラット50
================================================ */
#flat-50 {
  /* ===== フラット50の特徴 ===== */
  /* ===== 下部タイトル ===== */
  /* ===== 取扱商品 ===== */
  /* ===== 商品の違い ===== */
}
@media (769px <= width) {
  #flat-50 {
    padding-bottom: 40px;
  }
}
@media (width < 769px) {
  #flat-50 {
    margin-inline: auto;
    padding-bottom: 10.667vw;
    width: 90%;
  }
}
#flat-50 .service-tit {
  text-align: center;
}
@media (769px <= width) {
  #flat-50 .service-tit {
    margin: 0 auto 20px auto;
  }
}
@media (width < 769px) {
  #flat-50 .service-tit {
    max-width: 90%;
    margin: 10.667vw auto 5%;
  }
}
@media (769px <= width) {
  #flat-50 .service-tit img {
    max-width: 287px;
  }
}
@media (width < 769px) {
  #flat-50 .service-tit img {
    max-width: 66.667vw;
  }
}
#flat-50 .service-tit .service-tit__text {
  color: var(--blue);
  font-weight: bold;
}
@media (769px <= width) {
  #flat-50 .service-tit .service-tit__text {
    margin-bottom: 20px;
    font-size: 2rem;
  }
}
@media (width < 769px) {
  #flat-50 .service-tit .service-tit__text {
    margin-bottom: 5.333vw;
    font-size: 5.333vw;
    line-height: 1.5;
  }
}
@media (769px <= width) {
  #flat-50 .lead {
    margin-bottom: 3em;
    text-align: center;
  }
}
@media (width < 769px) {
  #flat-50 .lead {
    text-align: left;
    margin: 5% 5% 3em;
  }
}
#flat-50 .note {
  text-align: left;
}
@media (769px <= width) {
  #flat-50 .note {
    margin-top: 10px;
    margin-bottom: 30px;
    font-size: 12px;
    line-height: 1.6;
  }
}
@media (width < 769px) {
  #flat-50 .note {
    margin: 4vw auto 8vw;
    font-size: 2.667vw;
    line-height: 1.7;
  }
}
#flat-50 .rate_box {
  margin: 20px auto;
}
@media (769px <= width) {
  #flat-50 .rate_box {
    width: 600px;
  }
}
#flat-50 .rate_box .l-type {
  display: flex;
  justify-content: center;
  margin-bottom: 1em;
}
@media (769px <= width) {
  #flat-50 .rate_box .l-type {
    gap: 120px;
  }
}
@media (width < 769px) {
  #flat-50 .rate_box .l-type {
    gap: 10.667vw;
  }
}
#flat-50 .rate_box .type {
  text-align: center;
}
@media (width < 769px) {
  #flat-50 .rate_box .type {
    font-size: 3.733vw;
  }
}
#flat-50 .rate_box .rate {
  color: var(--orange);
  line-height: 1;
  font-weight: 700;
  background: var(--orange);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (769px <= width) {
  #flat-50 .rate_box .rate {
    font-size: 2.5rem;
  }
  #flat-50 .rate_box .rate span {
    font-size: 6.5rem;
  }
}
@media (width < 769px) {
  #flat-50 .rate_box .rate span {
    font-size: 8.533vw;
  }
}
#flat-50 .rate_box .ttl__note {
  font-weight: normal;
  text-align: center;
}
@media (769px <= width) {
  #flat-50 .rate_box .ttl__note {
    margin-bottom: 18px;
    font-size: 1.4rem;
  }
}
@media (width < 769px) {
  #flat-50 .rate_box .ttl__note {
    margin-bottom: 2.667vw;
    font-size: 3.733vw;
  }
}
#flat-50 .rate_box .loan-period {
  max-width: 100%;
  margin: 0 auto;
  padding: 12px 20px 16px;
  border: 2px solid var(--blue);
  box-sizing: border-box;
  text-align: center;
}
#flat-50 .rate_box .loan-period__title {
  margin: 0 0 6px;
  color: var(--blue);
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 0.1em;
}
#flat-50 .rate_box .loan-period__row {
  display: inline-flex;
  align-items: baseline;
  gap: 16px;
  margin: 0;
}
#flat-50 .rate_box .loan-period__note {
  color: var(--black);
  font-size: 16px;
}
#flat-50 .rate_box .loan-period__range {
  color: #444444;
  font-weight: 700;
  font-size: 28px;
}
#flat-50 .features_wrap {
  display: grid;
  align-items: stretch;
}
@media (769px <= width) {
  #flat-50 .features_wrap {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin: 0 auto 50px;
    max-width: 900px;
  }
}
@media (width < 769px) {
  #flat-50 .features_wrap {
    grid-template-columns: 1fr;
    gap: 5.333vw;
    margin: 0 auto 10.667vw;
  }
}
#flat-50 .features_wrap div {
  margin: 0;
  width: auto;
  min-height: auto;
}
#flat-50 .features_wrap div:nth-child(1) img {
  max-width: 50%;
}
#flat-50 .features_wrap div:nth-child(2) img {
  max-width: 50%;
  margin: 5px auto;
}
#flat-50 .features_wrap div:nth-child(3) img {
  margin: 5px auto;
}
@media (width < 769px) {
  #flat-50 .service-sub-tit {
    margin: 13.333vw auto 8vw;
  }
}
#flat-50 .service-sub-tit span {
  color: var(--blue);
}
#flat-50 .handling-tit,
#flat-50 .compare-tit {
  font-weight: bold;
  text-align: center;
  margin: 0 0 1em;
}
@media (769px <= width) {
  #flat-50 .handling-tit,
#flat-50 .compare-tit {
    font-size: 2.4rem;
  }
}
@media (width < 769px) {
  #flat-50 .handling-tit,
#flat-50 .compare-tit {
    font-size: 5.333vw;
  }
}
@media (769px <= width) {
  #flat-50 .handling {
    margin: 70px auto;
    max-width: 800px;
  }
}
@media (width < 769px) {
  #flat-50 .handling {
    margin: 10.667vw auto;
  }
}
@media (769px <= width) {
  #flat-50 .compare-wrapper {
    max-width: 800px;
    margin: 0 auto 70px;
  }
}
@media (width < 769px) {
  #flat-50 .compare-wrapper {
    margin: 0 auto 10.667vw;
  }
}
#flat-50 .compare-header {
  display: grid;
  grid-template-columns: 1fr 1fr;
  text-align: center;
}
@media (769px <= width) {
  #flat-50 .compare-header__col {
    padding: 28px 20px;
  }
}
@media (width < 769px) {
  #flat-50 .compare-header__col {
    padding: 5.333vw;
  }
}
#flat-50 .compare-header__col--left {
  background: var(--light-grey);
}
#flat-50 .compare-header__col--right {
  background: var(--compare-blue);
}
#flat-50 .compare-product-name {
  display: block;
  margin-inline: auto;
}
@media (769px <= width) {
  #flat-50 .compare-product-name {
    width: 182px;
    margin-bottom: 10px;
  }
}
@media (width < 769px) {
  #flat-50 .compare-product-name {
    margin-bottom: 2.667vw;
  }
}
#flat-50 .compare-product-type--left,
#flat-50 .compare-product-type--right {
  font-weight: 600;
}
@media (769px <= width) {
  #flat-50 .compare-product-type--left,
#flat-50 .compare-product-type--right {
    font-size: 2.5rem;
  }
}
@media (width < 769px) {
  #flat-50 .compare-product-type--left,
#flat-50 .compare-product-type--right {
    font-size: 5.333vw;
  }
}
#flat-50 .compare-product-type--left {
  color: var(--pink);
}
#flat-50 .compare-product-type--right {
  color: var(--sky-blue);
}
#flat-50 .compare-section__label {
  background: var(--blue);
  color: var(--white);
  text-align: center;
  font-weight: 600;
}
@media (769px <= width) {
  #flat-50 .compare-section__label {
    padding: 10px 20px;
  }
}
@media (width < 769px) {
  #flat-50 .compare-section__label {
    padding: 2.667vw 5.333vw;
    font-size: 4vw;
  }
}
#flat-50 .compare-section__body {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
#flat-50 .section-col {
  line-height: 1.5;
}
@media (769px <= width) {
  #flat-50 .section-col {
    padding: 20px 16px 24px;
    font-size: 1.3rem;
  }
}
@media (width < 769px) {
  #flat-50 .section-col {
    padding: 5.333vw 3.733vw;
    font-size: 3.467vw;
  }
}
#flat-50 .section-col--left {
  background: var(--light-grey);
}
#flat-50 .section-col--right {
  background: var(--compare-blue);
}
#flat-50 .section-heading {
  font-weight: 600;
  text-align: center;
}
@media (769px <= width) {
  #flat-50 .section-heading {
    margin-bottom: 20px;
    font-size: 2rem;
  }
}
@media (width < 769px) {
  #flat-50 .section-heading {
    margin-bottom: 2.667vw;
    font-size: 4vw;
  }
}
@media (769px <= width) {
  #flat-50 .section-body-text {
    font-size: 1.3rem;
  }
}
@media (width < 769px) {
  #flat-50 .section-body-text {
    font-size: 1.3rem;
  }
}