@charset "UTF-8";

.header_nav_title.company::after {
  width: 100%;
}

.crm--header {
  background-color: #fff;
}

/* mv
====================================== */
.kv {
  position: relative;
  margin-top: 100px;
}
.kv_wrap {
  width: calc(100% - 60px);
  max-width: 1600px;
  position: absolute;
  top: 32%;
  left: 50%;
  transform: translateX(-50%);
}
.kv_title {
  font-family: "EB Garamond", serif;
  font-size: 48px;
  letter-spacing: 0.1em;
  line-height: 1;
  color: #fff;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3),
    0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3),
    0px 0px 10px rgba(0, 0, 0, 0.3);
}
.kv_text {
  font-size: 24px;
  letter-spacing: 0.05em;
  margin-top: 10px;
  color: #fff;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3),
    0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3),
    0px 0px 10px rgba(0, 0, 0, 0.3);
}

@media only screen and (max-width: 768px) {
  .kv {
    margin-top: 73px;
  }
  .kv_wrap {
    width: calc(100% - 40px);
    top: 40%;
  }
  .kv_title {
    font-family: "EB Garamond", serif;
    font-size: 22px;
  }
  .kv_text {
    font-size: 16px;
    margin-top: 10px;
  }
}

/* contents_area
=========================== */
.contents_area {
  position: relative;
  padding-top: 100px;
  padding-bottom: 100px;
  border-top: 3px solid #213495;
  overflow: hidden;
}
.contents_area .inner {
  max-width: 1000px;
}
.contents_top {
  margin-bottom: 90px;
}
.main_title {
  max-width: 600px;
  margin-inline: auto;
  margin-bottom: 40px;
}
.main_lead {
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.05em;
  line-height: 1.7;
  margin-bottom: 80px;
}
.contents_logo {
  max-width: 298px;
  margin-inline: auto;
}
.head-border {
  display: flex;
  align-items: center;
  font-size: 40px;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #213495;
}
.head-border:before,
.head-border:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #213495;
}
.head-border:before {
  margin-right: 30px;
}
.head-border:after {
  margin-left: 30px;
}
.contents_item + .contents_item {
  margin-top: 70px;
}
.contents_item_list {
  margin-top: 38px;
}
.contents_item_list dl {
  display: flex;
  column-gap: 30px;
}
.contents_item_list dt {
  flex-shrink: 0;
  width: 126px;
  padding: 3px 3px;
  box-sizing: border-box;
  font-size: 18px;
  text-align: center;
}
.contents_item_list dt span {
  display: block;
  padding: 3px 3px;
  font-size: 18px;
  border: 1px solid #dedede;
}
.contents_item_list dd {
  padding-top: 3px;
  font-size: 17px;
  line-height: 1.7;
}
.bottom_img {
  width: calc(100% - 40px);
  margin-inline: auto;
  max-width: 1000px;
  margin-top: 110px;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  .contents_area {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .contents_top {
    margin-bottom: 50px;
  }
  .main_title {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .main_lead {
    font-size: 14px;
    margin-bottom: 30px;
  }
  .contents_logo {
    width: 60%;
  }
  .head-border {
    font-size: 20px;
  }
  .head-border:before {
    margin-right: 14px;
  }
  .head-border:after {
    margin-left: 14px;
  }
  .contents_item + .contents_item {
    margin-top: 30px;
  }
  .contents_item_list {
    margin-top: 20px;
  }
  .contents_item_list dl {
    align-items: flex-start;
    column-gap: 16px;
  }
  .contents_item_list dt {
    width: 80px;
  }
  .contents_item_list dt span {
    padding: 3px 3px;
    font-size: 14px;
  }
  .contents_item_list dd {
    font-size: 12px;
  }
  .bottom_img {
    margin-top: 60px;
  }
}
