@charset "UTF-8";
/*//////////////////////////////////////////////////

	トップページcss

//////////////////////////////////////////////////*/
/* Scss Document */
/* Scss Document */
.section__ttl {
  margin-bottom: 40px; }

.mainslider img {
  width: 100%;
  max-height: 80vh;
  object-fit: cover; }
.mainslider .swiper-pagination {
  box-sizing: border-box;
  padding-right: 2%;
  text-align: right; }
  .mainslider .swiper-pagination span {
    background: transparent;
    border: 1px solid #fff; }
  .mainslider .swiper-pagination .swiper-pagination-bullet-active {
    background: #fff; }

.service .contets__outer {
  padding: 10.5% 0 16%; }
.service .service__list .service__list-item {
  overflow: hidden;
  width: 100%;
  padding-bottom: 10px; }
  .service .service__list .service__list-item + .service__list-item {
    margin-top: 30px; }
  .service .service__list .service__list-item .thumbnail {
    position: relative;
    z-index: -1; }
    .service .service__list .service__list-item .thumbnail:before {
      content: '';
      display: block;
      padding-top: 50%; }
    .service .service__list .service__list-item .thumbnail img {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      transform: translate(-50%, -50%); }
  .service .service__list .service__list-item .outer {
    box-sizing: border-box;
    margin: -30px 5% 0;
    padding: 25px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 1px 0 4px rgba(0, 0, 0, 0.3); }
  .service .service__list .service__list-item .ttl {
    margin-bottom: 10px; }
    .service .service__list .service__list-item .ttl h3 {
      text-align: left;
      color: #004480; }
  .service .service__list .service__list-item .body {
    margin-bottom: 30px; }
.service .btn__wrap {
  margin: revert; }
  .service .btn__wrap .btn {
    font-size: 1.5rem; }

.message .contets__outer {
  padding: 13.33% 0;
  background: url("/img/home/bg_message_sp.png") left center/auto 100% no-repeat; }
.message__ttl {
  margin-bottom: 40px;
  font-size: 2.0rem;
  color: #004480; }
.message__item {
  max-width: 787px;
  margin: 0 auto; }
  .message__item .message__content + .message__content {
    margin-top: 30px; }
.message__content {
  box-sizing: border-box;
  border: 1px solid #0058AC;
  padding: 29px 18px 24px;
  background: #fff; }
  .message__content .ttl {
    position: relative;
    margin-bottom: 31px;
    font-size: 1.8rem;
    line-height: 1;
    color: #004480; }
    .message__content .ttl:before {
      position: absolute;
      content: '';
      bottom: -11px;
      left: 50%;
      width: 43px;
      height: 1px;
      -moz-transform: translateX(-50%);
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translate(-50%);
      background-color: #0058AC; }
  .message__content .subttl {
    margin-bottom: 10px;
    text-align: center;
    font-size: 1.6rem;
    line-height: 1; }
  .message__content .txt {
    font-size: 1.5rem;
    text-align: center;
    line-height: 1.7;
    letter-spacing: 0; }

.company {
  background: url("/img/home/bg_company.jpg") center/cover no-repeat; }
  .company .section__ttl {
    color: #000; }
  .company .company__wrap {
    box-sizing: border-box;
    max-width: 830px;
    margin: 0 auto;
    padding: 40px 20px;
    background: #fff;
    border-radius: 26px; }
  .company .comment {
    margin-bottom: 20px;
    white-space: nowrap; }
    .company .comment p {
      font-size: 1.7rem;
      color: #004480;
      text-align: center; }
  .company .btn__wrap {
    margin-top: 30px;
    margin-bottom: 0; }
    .company .btn__wrap .btn {
      font-size: 1.5rem; }

.infomation .info__list .info__list-item .date {
  color: #0058AC; }
.infomation .btn__wrap {
  margin-bottom: 0; }
  .infomation .btn__wrap .btn {
    width: calc(100% - 50px); }

.banner .banner__list .banner__list-item {
  text-align: center; }
  .banner .banner__list .banner__list-item img {
    width: 100%;
    max-width: 40vw; }
.banner .banner__list .banner-l {
  flex: 1 1 100%;
  margin-top: 40px; }
  .banner .banner__list .banner-l img {
    max-width: 100%; }

.mobile .banner .banner__list .banner__list-item:nth-child(1) {
  flex: 1 1 100%;
  margin-bottom: 18px; }
.mobile .banner .banner__list .banner__list-item:nth-child(2) {
  flex: 1 1 50%;
  text-align: left; }
.mobile .banner .banner__list .banner__list-item:nth-child(3) {
  flex: 1 1 50%;
  text-align: right; }

/*------------------------------
		769px以上
------------------------------*/
@media screen and (min-width: 769px) {
  .service .service__list .service__list-item {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between; }
    .service .service__list .service__list-item + .service__list-item {
      margin-top: 30px; }
    .service .service__list .service__list-item .thumbnail {
      flex: 0 0 30%; }
    .service .service__list .service__list-item .outer {
      display: flex;
      flex-flow: column wrap;
      flex: 0 0 70%;
      box-sizing: border-box;
      margin: 0;
      border-radius: 0;
      box-shadow: none; }

  .message__ttl {
    text-align: center;
    font-size: 2.5rem; }
  .message__content .ttl {
    font-size: 2.0rem; }

  .company .company__wrap {
    padding: 40px; }
  .company .comment {
    margin-bottom: 30px; }
    .company .comment p {
      font-size: 2.2rem; }
  .company .body {
    margin-bottom: 42px; }

  .banner .banner__list .banner__list-item:not(.banner-l) {
    flex: 0 1 32%;
    width: 32%;
    max-width: 32%; }
  .banner .banner__list .banner-l {
    margin-top: 60px; } }
/*------------------------------
		961px以上
------------------------------*/
@media screen and (min-width: 961px) {
  .service .contets__outer {
    padding: 6.03% 0 3.1%; }
  .service .service__list .service__list-item {
    flex-flow: column nowrap;
    flex: 0 0 calc(100% / 3); }
    .service .service__list .service__list-item + .service__list-item {
      margin-top: 0; }
    .service .service__list .service__list-item .thumbnail:before {
      padding-top: 65%; }
    .service .service__list .service__list-item .outer {
      flex: 0 1 calc(50% + 46px);
      width: 90%;
      max-width: 400px;
      margin: -46px auto 0;
      border-radius: 10px;
      box-shadow: 1px 0 4px rgba(0, 0, 0, 0.3); }
    .service .service__list .service__list-item .ttl h3 {
      font-size: 1.8rem;
      line-height: 5.6rem; }
      .service .service__list .service__list-item .ttl h3.line2 {
        line-height: 2.8rem; }
    .service .service__list .service__list-item .btn__wrap {
      margin-top: auto; }
  .service .btn__wrap .btn {
    font-size: 1.4rem; }

  .message .contets__outer {
    padding: 8.05% 0% 11.93% 0%;
    background: url("/img/home/bg_message_pc.png") right center/cover no-repeat; }
  .message .inner {
    max-width: 1480px;
    padding: 0% 1.69% 0% 1.69%; }
  .message__ttl {
    text-align: center;
    margin-bottom: 80px;
    font-size: 3.0rem; }
    .message__ttl .sp-tab {
      display: none; }
  .message__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .message__item .message__content {
      flex: 0 1 calc((100% - 40px) / 2);
      width: calc((100% - 40px) / 2);
      max-width: calc((100% - 40px) / 2); }
      .message__item .message__content + .message__content {
        margin-top: 0px; }
  .message__content {
    padding: 48px 18px 41px; }
    .message__content .ttl {
      margin-bottom: 37px;
      font-size: 2.2rem; }
      .message__content .ttl:before {
        bottom: -15px;
        width: 43px; }

  .company .company__wrap {
    padding: 60px 40px; }
  .company .section__ttl {
    margin-bottom: 40px; }
  .company .comment p {
    font-size: 2.8rem; }
  .company .body {
    margin-bottom: 50px; }

  .banner .banner__list .banner-l {
    margin-top: 95px; } }
/*------------------------------
		1181px以上
------------------------------*/
@media screen and (min-width: 1181px) {
  .service .service__list .service__list-item .ttl h3 {
    font-size: 2.4rem;
    line-height: 7.2rem; }
    .service .service__list .service__list-item .ttl h3.line2 {
      line-height: 3.6rem; }

  .message__ttl {
    font-size: 3.5rem;
    margin-bottom: 113px; }
  .message__item .message__content {
    flex: 0 1 calc((100% - 85px) / 2);
    width: calc((100% - 85px) / 2);
    max-width: calc((100% - 85px) / 2); }
  .message__content .ttl {
    font-size: 2.4rem; } }

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