@charset "UTF-8";

.wrap {
  padding: 0 100px;
  box-sizing: border-box;
}

.subVisulal {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 70px 0 80px;
  color: #fff;
  box-sizing: border-box;
  background: url('/lib/img/common/bg_sub_visual.jpg') 50% 50% / cover no-repeat;
}

.subVisulal .small {
  margin-bottom: 10px;
  font-size: 25px;
}

.subVisulal .big {
  font-size: 41px;
  font-weight: 700;
}

.subVisulal .sub {
  margin-top: 20px;
  font-size: 11px;
}

.top_line {
  margin-bottom: 210px;
}

.top_line .sub_menu {
  width: 100%;
  padding: 16px 0;
  background: #c8cfd6;
  text-align: center;
}

.top_line .sub_menu a {
  margin: 0 30px;
  font-size: 16px;
  font-weight: 300;
  color: #8b8b8b;
}

.top_line .sub_menu a.on {
  font-size: 18px;
  font-weight: 700;
  color: #005cb7;
}

.top_line .sub_wrap {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

.top_line .breadcrumb {
  width: 100%;
  margin-top: 25px;
  font-size: 16px;
  font-weight: 300;
  color: #929292;
  text-align: right;
}

.paragraph {
  padding-bottom: 300px;
}

.paragraph h1 {
  margin-bottom: 50px;
  font-size: 50px;
  font-weight: 400;
  color: #313131;
  text-align: center;
}

.paragraph h1:after {
  content: '';
  display: block;
  width: 70px;
  height: 1px;
  margin: 25px auto 0;
  background: #313131;
}

.para_cont p {
  margin: 24px 0;
  font-size: 18px;
  color: #707070;
  line-height: 1.5;
}

.para_cont p:first-child {
  margin-top: 0;
}

.para_cont p:last-child {
  margin-bottom: 0;
}

.temp_mobile {
  display: none;
  max-width: 100%;
}

.temp_pc {
  display: block;
  max-width: 100%;
  padding: 0 100px;
  box-sizing: border-box;
}



@media screen and (max-width: 1023px) {
  .cont {
    background: none;
  }

  .wrap {
    padding: 0;
  }

  .subVisulal {
    height: auto;
    padding: 40px 20px;
  }

  .subVisulal .small {
    font-size: 20px;
  }

  .subVisulal .big {
    font-size: 30px;
    word-break: keep-all;
    text-align: center;
  }

  .subVisulal .sub {
    text-align: center;
  }

  .top_line {
    margin-bottom: 120px;
  }

  .top_line .sub_menu {
    overflow-x: auto;
  }

  .top_line .sub_wrap {
    justify-content: flex-start;
  }

  .top_line .sub_menu a {
    flex: 0 0 auto;
    margin: 0 3px;
    padding: 0 15px;
  }

  .top_line .breadcrumb {
    padding: 0 20px;
    box-sizing: border-box;
  }

  .paragraph h1 {
    margin: 30px 0 60px;
    font-size: 40px;
  }

  .temp_mobile {
    display: block;
  }

  .temp_pc {
    display: none;
  }


}