@charset "UTF-8";
/********************************************/
/*layout Base */
/********************************************/
/***************************/
/**Color */
/***************************/
.co_white {
  color: #fff;
}

/***************************/
/**bg */
/***************************/
.bg_primary {
  background: #95D1C2;
}

/********************************************/
/* ttl */
/********************************************/
.en_ttl {
  font-size: clamp(3.5rem, 6vw, 6rem);
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.en_ttl.ver_white {
  color: #fff;
}

.en_ttl.ver_center {
  text-align: center;
}

.border_ttl {
  position: relative;
  margin-bottom: 2em;
  padding-bottom: 1em;
  letter-spacing: 0.12em;
  line-height: 1.2;
  font-size: clamp(1.6rem, 3vw, 2.5rem);
  font-weight: 900;
}

.border_ttl:after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 50%;
  max-width: 103px;
  height: 1px;
  background: #231815;
}

.border_ttl.ver_fs20 {
  margin-bottom: 0.8em;
  font-size: clamp(1.6rem, 2.5vw, 2rem);
}

.border_ttl.ver_fs20:after {
  max-width: 60px;
}

.en_big_ttl {
  mix-blend-mode: multiply;
  line-height: 1.2;
  color: rgba(149, 209, 194, 0.5);
  font-size: clamp(9.8rem, 19vw, 22rem);
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 300;
  letter-spacing: 0.02em;
}

.ttl_fs20 {
  margin-bottom: 0.7em;
  line-height: 1.2;
  letter-spacing: 0.12em;
  font-size: clamp(1.6rem, 2.5vw, 2rem);
  font-weight: 900;
}

/********************************************/
/* btn */
/********************************************/
.border_btn a {
  position: relative;
  display: inline-block;
  width: auto;
  min-width: 420px;
  padding: 2.5em 1em;
  border: solid 2px #231815;
  border-radius: 11px;
  letter-spacing: 0.12em;
  color: #231815;
  text-align: center;
  font-weight: 700;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

@media (max-width: 768px) {
  .border_btn a {
    display: block;
    width: 100%;
    min-width: auto;
    font-size: 1.3rem;
  }
}

.border_btn a:after {
  position: absolute;
  top: calc(50% - 3px);
  right: 40px;
  content: "";
  width: 22px;
  height: 6px;
  background: url(../img/common/btn-arr.svg) no-repeat center/contain;
}

.border_btn a:hover {
  opacity: .7;
}

.border_btn.ver_white a {
  border: solid 2px #fff;
  color: #fff;
}

.border_btn.ver_white a:after {
  background: url(../img/common/btn-arr-white.svg) no-repeat center/contain;
}

.border_btn.ver_center {
  text-align: center;
}

/********************************************/
/* 追加 */
/********************************************/
.object_fit {
  position: relative;
}

.object_fit:after {
  content: "";
  display: block;
  padding-top: 100%;
}

.object_fit img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  /*IE対策*/
}

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