/* ============================================================
   CONFIG
   基準幅を変数で管理。px値 ÷ --base × 100vw で自動計算。
   PC基準: 1366px / SP基準: 375px
   ============================================================ */

:root {
  --base: 1366;
  --base-sp: 375;
}

/* ============================================================
   BASE
   ============================================================ */

p {
  color: #000;
  margin: 0;
}

p.is_white {
  color: #fff;
}

/* ============================================================
   UTILITY
   ============================================================ */

.u_pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .u_pc {
    display: none;
  }
}

.u_sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .u_sp {
    display: block;
  }
}

article {
  background-color: #fff !important;
}

p {
  color: #4a4a4a !important;
  margin: 0;
}

/* ============================================================
   コンテンツ
   ============================================================ */

.un_showcase_lead {
  font-family: "YuGothic", "Yu Gothic", sans-serif !important;
  resize: none !important;
  letter-spacing: 0.1em;
  line-height: 2.5;
  margin-bottom: calc(60 / var(--base) * 100vw);
}

.un_brand_btn a {
  background-color: #70c9f0;
  border: 2px solid #70c9f0;
  border-radius: calc(50 / var(--base) * 100vw);
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "YuGothic", "Yu Gothic", sans-serif;
  font-size: max(0px, min(calc(15 / var(--base) * 100vw), 15px));
  letter-spacing: 0.14em;
  padding: calc(13 / var(--base) * 100vw) calc(60 / var(--base) * 100vw)
    calc(16 / var(--base) * 100vw);
  text-decoration: none;
  transition:
    background-color 0.3s,
    color 0.3s;
     white-space: nowrap;
}



.un_brand_btn a:hover {
  background-color: #fff;
  color: #70c9f0;
}

.un_brand_btn {
  text-align: center;
}

.un_brand_btn a:after {
  display: none !important;
}

.bl_rectBtn a:visited {
  color: #fff !important;
}

.un_brand_btn a:visited {
  color: #fff !important;
}

.bl_rectBtn a {
  color: #fff !important;
}

.un_brand_btn a:hover {
  background-color: #fff !important;
  color: #70c9f0 !important;
}

.un_brand_btn.bl_rectBtn--baseWhite a:hover {
  border: 2px solid #70c9f0 !important;
}

@media screen and (max-width: 767px) {
  .un_showcase_lead {
    font-size: calc(14 / var(--base-sp) * 100vw);
    margin-bottom: calc(60 / var(--base-sp) * 100vw);
  }

  .un_brand_btn a {
    border-radius: calc(50 / var(--base-sp) * 100vw);
    font-size: max(0px, min(calc(14 / var(--base-sp) * 100vw), 14px));
    padding: calc(16 / var(--base-sp) * 100vw) calc(50 / var(--base-sp) * 100vw);
    width: 80vw;
    box-sizing: border-box;
    display: block;
  }
}
