@charset 'utf-8';

.page-main__ttl:before {
  background: url(../img/main_ico.png) center / 100% no-repeat;
}

/******下層共通*******/
.block__ttl05 {
  width: 100%;
  font-size: 1.429rem;
  font-weight: bold;
  position: relative;
  padding: 0 0 10px 15px;
  color: #2252a2;
  border-bottom: 2px solid #587ab2;
  cursor: pointer;
}
.block__ttl05.block__ttl05--pen {
  cursor: default;
}
.block__ttl05::before {
  content: "";
  width: 1px;
  height: calc(100% - 15px);
  position: absolute;
  left: 0;
  top: 4px;
  margin: auto;
  padding-right: 4px;
  background: rgb(30, 58, 124);
  background: -moz-linear-gradient(
    top,
    rgba(30, 58, 124, 1) 50%,
    rgba(41, 137, 216, 1) 50%,
    rgba(88, 122, 178, 1) 50%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(30, 58, 124, 1) 50%,
    rgba(41, 137, 216, 1) 50%,
    rgba(88, 122, 178, 1) 50%
  );
  background: linear-gradient(
    to bottom,
    rgba(30, 58, 124, 1) 50%,
    rgba(41, 137, 216, 1) 50%,
    rgba(88, 122, 178, 1) 50%
  );
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e3a7c', endColorstr='#587ab2',GradientType=0 );
}
.block__ttl05 span {
  width: 30px;
  height: 30px;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  right: 10px;
  bottom: 0;
  display: block;
  margin: auto;
  border-radius: 50%;
  background-color: #5678b0;
}
.block__ttl05 span:before,
.block__ttl05 span:after {
  content: "";
  width: 12px;
  height: 2px;
  position: relative;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: inline-block;
  margin: auto;
  transition: 0.3s ease;
  background-color: #fff;
}
.block__ttl05 span:after {
  transform: rotate(90deg);
}
.block__ttl05.active span:after {
  transform: rotate(0);
}

.block__ttl-bold {
  font-size: 1.429rem;
  font-weight: bold;
}
.block__ttl--arrow::before {
  content: "▶︎";
  color: #2252a2;
  margin-right: 5px;
}
/*****ページ内共通*******/

.lcl-block__txt-link {
  display: block;
  text-decoration: underline;
  color: #2252a2;
}
.lcl-block__txt-link-n {
  display: block;
  color: #2252a2;
}
.lcl-indent--long {
  text-indent: -7rem;
  padding-left: 7rem;
}
.lcl-lead-link {
  font-size: 1.143rem;
  color: #2252a2;
  text-decoration: underline;
  padding-left: 20px;
}
.lcl-lead-link--pdf {
  display: inline-block;
}
.lcl-lead-link--pdf::before {
  content: "";
  width: 19px;
  height: 20px;
  display: inline-block;
  margin-right: 5px;
  background: url(../../../common/img/ico_pdf.svg) no-repeat center / cover;
  vertical-align: top;
}
.lcl-txt-block--right {
  text-align: right;
  margin-top: 40px;
}
.lcl-txt-block--img {
  width: 170px;
  margin-left: auto;
}
.lcl-toggle__box {
  padding: 20px 0 0;
  display: none;
}
.lcl-toggle__box.lcl-toggle__box--active {
  display: block;
}
/* ---------------------------------------------------------------- box ---- */

.lcl-lead-link-item {
  display: block;
  width: 100%;
  padding-left: 0;
  text-indent: -0.6em;
}
.lcl-lead-link i {
  padding-right: 5px;
}
.lcl-lead-link a {
  text-decoration: underline;
}
/* ---------------------------------------------------------------- box ---- */
.lcl-box01{
  margin-bottom: 80px;
}
.lcl-box01__img {
  width: 320px;
  margin-right: auto;
  margin-left: auto;
}
.lcl-box01__img.lcl-box01__img--ncd {
  width: 210px;
}
.lcl-box01__img img{
  width: 100%;
  height: auto;
}

/* ---------------------------------------------------------------- box ---- */
.lcl-box02 {
  padding: 30px 0 20px;
  margin-bottom: 20px;
}
/* ---------------------------------------------------------------- box ---- */
.lcl-box03 {
  padding: 80px 0 0;
}
.lcl-box03__img {
  width: 140px;
  margin-right: auto;
  margin-left: auto;
}
/* ---------------------------------------------------------------- box ---- */
.lcl-box04 {
  padding: 80px 0;
}
/* ---------------------------------------------------------------- box ---- */
.lcl-box07 {
}
.lcl-sbs {
  align-items: flex-start;
}
.lcl-sbs-txt {
  width: 460px;
}
.lcl-sbs-img {
  width: 180px;
  cursor: pointer;
}
.lcl-sbs-img--txt {
  text-align: center;
  color: #2c58a1;
  font-weight: 500;
  margin-top: 5px;
}
@media screen and (max-width: 767px) {
  #main {
    width: calc(100% - 30px);
    margin: 0 auto;
  }
  /******既存Classの上書き*******/
  .page-main__ttl {
    line-height: 1.3;
  }
  .page-ttl {
    margin-bottom: 20px;
  }
  .block__ttl {
    font-size: 1.4rem;
  }
  .block__ttl05 {
    padding: 5px 40px 5px 10px;
    font-size: 1.3rem;
  }
  .block__ttl05::before {
    content: "";
    height: calc(100% - 10px);
    position: absolute;
    top: 5px;
    left: 0;
    padding-right: 4px;
  }
  .block__ttl05 span {
    width: 20px;
    height: 20px;
    right: 10px;
  }
  .block__ttl05 span:before,
  .block__ttl05 span:after {
    content: "";
    width: 10px;
    height: 2px;
  }
  .lcl-txt-block--right {
    margin-top: 20px;
  }
  .lcl-txt-block--img {
    width: 170px;
  }
  .lcl-toggle__box {
    padding: 15px 0 0;
  }
  /* ---------------------------------------------------------------- box ---- */
  .lcl-lead-link {
    padding: 0 15px;
  }
  .lcl-lead-link-item {
    display: block;
  }
  .lcl-lead-link-item:not(last-child) {
    margin-bottom: 6px;
  }
  /* ---------------------------------------------------------------- box ---- */
  .lcl-box07 {
    margin-bottom: 50px;
  }
  .lcl-box01__img {
    width: 70%;
    margin-right: auto;
    margin-left: auto;
  }

  /* ---------------------------------------------------------------- box ---- */
  .lcl-box02 {
    padding: 30px 0 20px;
    margin-bottom: 20px;
  }
  /* ---------------------------------------------------------------- box ---- */
  .lcl-box03 {
    padding: 50px 0 0;
  }
  .lcl-box03__img {
    width: 140px;
    margin-right: auto;
    margin-left: auto;
  }
  /* ---------------------------------------------------------------- box ---- */
  .lcl-box04 {
    padding: 50px 0;
  }
  /* ---------------------------------------------------------------- box ---- */
  .lcl-box07.lcl-box07--mb {
    margin-bottom: 0;
  }
  .lcl-sbs {
    direction: block;
  }
  .lcl-sbs-txt {
    width: 100%;
  }
  .lcl-sbs-img {
    width: 180px;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    pointer-events: none;
  }
  .lcl-sbs-img--txt {
    display: none;
  }
}
