@charset "UTF-8";
/*　*/
.site_ttl {
  position: absolute;
  margin: 0;
  padding: 0;
  border: 0;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}

/* ===== MV ===== */
.mv_sec {
  padding-top: 1.5rem;
}
@media print, screen and (min-width: 768px) {
  .mv_sec {
    padding-top: 2rem;
  }
}
.mv_ttl {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}
.mv_more01 {
  margin: 1.5rem 2rem 0 0;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: right;
}
@media print, screen and (min-width: 768px) {
  .mv_more01 {
    font-size: 2.8rem;
  }
}
@media print, screen and (min-width: 768px) {
  .mv_more01 > li {
    display: inline-block;
  }
}
@media only screen and (max-width: 767px) {
  .mv_more01 > li:not(:last-child) {
    margin-bottom: 1rem;
  }
}
@media print, screen and (min-width: 768px) {
  .mv_more01 > li:not(:last-child) {
    margin-right: 2em;
  }
}

/* ===== news ===== */
.news_sec {
  margin-top: 3rem;
}
@media print, screen and (min-width: 768px) {
  .news_sec {
    margin-top: 5rem;
  }
}
@media only screen and (max-width: 767px) {
  .news_box01 {
    margin: 0 -2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .news_box01 {
    border-radius: 1.5rem;
    text-align: center;
  }
}
@media print, screen and (min-width: 768px) {
  .news_box01_outer01 {
    display: flex;
    margin-left: auto;
    width: 104rem;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  .news_box01_inner01 {
    margin-bottom: 1.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .news_box01_inner01 {
    width: 18rem;
  }
}
@media print, screen and (min-width: 768px) {
  .news_box01_inner02 {
    flex: 1;
  }
}
.news_ttl01 {
  font-size: 1.8rem;
}
@media print, screen and (min-width: 768px) {
  .news_ttl01 {
    margin-bottom: 0;
    font-size: 2.2rem;
    line-height: 1.8;
  }
}
.news_body01 {
  word-break: break-all;
  word-wrap: break-word;
}
.news_body01 h3 {
  margin-top: 3rem;
  margin-bottom: 2rem;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .news_body01 h3 {
    margin-top: 5rem;
    margin-bottom: 3.5rem;
    font-size: 4rem;
  }
}
.news_body01 h3:first-child {
  margin-top: 0;
}
.news_body01 h4 {
  margin: 3rem 0 1rem 1.2em;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .news_body01 h4 {
    margin-top: 5rem;
    margin-bottom: 1.5rem;
    font-size: 3rem;
  }
}
.news_body01 h4::before {
  display: inline-block;
  margin-left: -1.2em;
  width: 1.2em;
  content: "■";
}
.news_body01 h5 {
  position: relative;
  margin-top: 3rem;
  margin-bottom: 1rem;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .news_body01 h5 {
    margin-top: 5rem;
    margin-bottom: 1.5rem;
    font-size: 2.4rem;
  }
}
.news_body01 h3 + h3,
.news_body01 h3 + h4,
.news_body01 h3 + h5,
.news_body01 h4 + h4,
.news_body01 h4 + h5,
.news_body01 h5 + h5 {
  margin-top: 0;
}
.news_body01 p:not(:last-child),
.news_body01 ul:not(:last-child),
.news_body01 ol:not(:last-child) {
  margin-bottom: 1.5rem;
}
@media print, screen and (min-width: 768px) {
  .news_body01 p:not(:last-child),
  .news_body01 ul:not(:last-child),
  .news_body01 ol:not(:last-child) {
    margin-bottom: 3rem;
  }
}
.news_body01 ul > li {
  margin-left: 1.2em;
}
.news_body01 ul > li::before {
  display: inline-block;
  margin-left: -1.2em;
  width: 1.2em;
  content: "・";
}
.news_body01 ol {
  counter-reset: ol-cnt;
}
.news_body01 ol > li {
  margin-left: 1.7em;
  counter-increment: ol-cnt;
}
.news_body01 ol > li::before {
  display: inline-block;
  margin-left: -1.7em;
  width: 1.7em;
  content: "(" counter(ol-cnt) ")";
}
.news_body01 a {
  color: #D71518;
  text-decoration: underline;
}
@media (hover: hover) {
  .news_body01 a:hover {
    opacity: 0.7;
    text-decoration: none;
  }
}
.d-ie .news_body01 a:hover {
  opacity: 0.7;
  text-decoration: none;
}

/* ===== office ===== */
.office_sec {
  margin-top: 7rem;
}
@media print, screen and (min-width: 768px) {
  .office_sec {
    margin-top: 12rem;
  }
}
@media print, screen and (min-width: 768px) {
  .office_sec .m-sec01_container {
    width: calc(100vw - 10rem);
  }
}
@media print, screen and (min-width: 768px) {
  .office_box01 {
    display: flex;
  }
}
@media only screen and (max-width: 767px) {
  .office_box01_inner01 {
    margin-bottom: 2.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .office_box01_inner01 {
    margin-right: calc(50 / 1440 * 100%);
    width: calc(470 / 1440 * 100%);
  }
}
@media print, screen and (min-width: 768px) {
  .office_box01_inner02 {
    flex: 1;
  }
}
.office_list01 > li {
  width: calc(100% - 1rem);
}
@media print, screen and (min-width: 768px) {
  .office_list01 > li {
    width: calc(50% - 3rem - 0.1px);
  }
}