@charset "UTF-8";
/*------------------
googleフォント読み込み
-------------------*/
@import url("https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&s zdisplay=swap");
/*------------------
googleフォント指定
-------------------*/
body#top main section#top-mv .inner h1 {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 56px;
  line-height: 70px;
}
body#top main section#news .inner .container h2 span.en {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 60px;
}
body#top main section#news .inner .container h2 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px;
}
body#top main section#news .inner dl.c-flex dt {
  font-family: "Barlow", serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 40px;
}
body#top main section#news .inner dl.c-flex dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 40px;
}
body#top main h3 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 70px;
  line-height: 81px;
}
body#top main h3 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 38px;
}
body#top main p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#top main section#aboutus .inner .btn a p.title {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 35px;
  line-height: 80px;
}
body#top main section#service .inner .text-container p.readmore a,
body#top main section#case .inner .text-container p.readmore a {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 81px;
}
body#top main section#career .inner .text-container a dl dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 37px;
}
body#top main section#career .inner .text-container a dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 26px;
}
body#top main section#btn-section .inner .c-flex__sb a dl dt,
body#top main section#btn-section .inner .people a dl dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 37px;
}
body#top main section#btn-section .inner .c-flex__sb a dl dd,
body#top main section#btn-section .inner .people a dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 26px;
}
body#top main section#contact .inner p.btn a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 21px;
  line-height: 79px;
}

@media screen and (max-width: 767px) {
  body#top main section#top-mv .inner h1 {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 39px;
    line-height: 49px;
  }
  body#top main section#news .inner .container h2 span.en {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 42px;
  }
  body#top main section#news .inner .container h2 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 11px;
    line-height: 17px;
  }
  body#top main section#news .inner dl.c-flex dt {
    font-family: "Barlow", serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 28px;
  }
  body#top main section#news .inner dl.c-flex dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 28px;
  }
  body#top main h3 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 49px;
    line-height: 57px;
  }
  body#top main h3 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 56px;
  }
  body#top main p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#top main section#aboutus .inner .btn a p.title {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 25px;
    line-height: 56px;
  }
  body#top main section#service .inner .text-container p.readmore a,
  body#top main section#case .inner .text-container p.readmore a {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 57px;
  }
  body#top main section#career .inner .text-container a dl dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
  }
  body#top main section#career .inner .text-container a dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
  }
  body#top main section#btn-section .inner .c-flex__sb a dl dt,
  body#top main section#btn-section .inner .people a dl dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
  }
  body#top main section#btn-section .inner .c-flex__sb a dl dd,
  body#top main section#btn-section .inner .people a dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
  }
  body#top main section#contact .inner p.btn a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 55px;
  }
}
/*-----------
header/footer
-----------*/
body main {
  /*-----------------
      header
  ------------------*/
  /*-----------------
  footer
  ------------------*/
}
body main header .inner .c-flex__sb div p.contact-btn a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 17px;
  line-height: 42px;
}
body main #menu nav.c-flex__sb ul.index-btn li a dl dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 43px;
  line-height: 64px;
}
body main #menu nav.c-flex__sb ul.index-btn li a dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 30px;
}
body main #menu nav.c-flex__sb ul.career-btn li a dl dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 43px;
  line-height: 64px;
}
body main #menu nav.c-flex__sb ul.career-btn li a dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 30px;
}
body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 30px;
}
body main #menu .link ul.c-flex__sb li a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 31px;
}
body main footer .inner .container a dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 22px;
  line-height: 30px;
}
body main footer .inner .container a dl dd {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 26px;
}
body main footer .inner .link p a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 31px;
}
body main footer .inner p.pagetop a {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 81px;
}
body main footer p.copy {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: 42px;
}

@media screen and (max-width: 767px) {
  body main {
    /*-----------------
        header
    ------------------*/
    /*-----------------
    footer
    ------------------*/
  }
  body main header .inner .c-flex__sb div p.contact-btn a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 12px;
    line-height: 29px;
  }
  body main #menu nav.c-flex__sb ul.index-btn li a dl dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 30px;
    line-height: 45px;
  }
  body main #menu nav.c-flex__sb ul.index-btn li a dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 21px;
  }
  body main #menu nav.c-flex__sb ul.career-btn li a dl dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 30px;
    line-height: 45px;
  }
  body main #menu nav.c-flex__sb ul.career-btn li a dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 21px;
  }
  body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 21px;
  }
  body main #menu .link ul.c-flex__sb li a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 11px;
    line-height: 22px;
  }
  body main footer .inner .container a dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 15px;
    line-height: 21px;
  }
  body main footer .inner .container a dl dd {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
  }
  body main footer .inner .link p a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 10px;
    line-height: 22px;
  }
  body main footer .inner p.pagetop a {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 57px;
  }
  body main footer p.copy {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 9px;
    line-height: 29px;
  }
}
body#company main h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 80px;
}
body#company main section#greeting .inner .text-container p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#company main section#greeting .inner dl.img-container dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 27px;
}
body#company main section#greeting .inner dl.img-container dd span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 23px;
  line-height: 35px;
}
body#company main section#philosophy .inner strong {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 56px;
  line-height: 77px;
}
body#company
  main
  section#philosophy
  .inner
  .philosophy-container
  dl.c-flex__sb
  dt {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 36px;
  line-height: 77px;
}
body#company
  main
  section#philosophy
  .inner
  .philosophy-container
  dl.c-flex__sb
  dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 36px;
}
body#company main section#overview .inner .container dl.c-flex__sb dt,
body#company main section#history .inner .container dl.c-flex__sb dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#company main section#overview .inner .container dl.c-flex__sb dd,
body#company main section#history .inner .container dl.c-flex__sb dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 30px;
}
body#company main section#iso .inner .container h3 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 38px;
  display: flex;
  align-items: center;
  gap: 20px;
}

body#company main section#iso .inner .container p.pmark {
  margin: 0;
  display: inline-block;
  vertical-align: middle;
}

body#company main section#iso .inner .container p.pmark img {
  max-height: 38px;
  width: auto;
}

body#company main section#iso .inner .container dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#company main section#iso .inner .container dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 30px;
}
body#company main section#iso .inner .container h4 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 23px;
  line-height: 30px;
}
body#company main section#iso .inner .container p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 36px;
}

@media screen and (max-width: 767px) {
  body#company main h2 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 56px;
  }
  body#company main section#greeting .inner .text-container p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#company main section#greeting .inner dl.img-container dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 19px;
  }
  body#company main section#greeting .inner dl.img-container dd span {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 25px;
  }
  body#company main section#philosophy .inner strong {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 39px;
    line-height: 54px;
  }
  body#company
    main
    section#philosophy
    .inner
    .philosophy-container
    dl.c-flex__sb
    dt {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 25px;
    line-height: 54px;
  }
  body#company
    main
    section#philosophy
    .inner
    .philosophy-container
    dl.c-flex__sb
    dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 25px;
  }
  body#company main section#overview .inner .container dl.c-flex__sb dt,
  body#company main section#history .inner .container dl.c-flex__sb dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#company main section#overview .inner .container dl.c-flex__sb dd,
  body#company main section#history .inner .container dl.c-flex__sb dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 21px;
  }
  body#company main section#iso .inner .container h3 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 21px;
  }
  body#company main section#iso .inner .container dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#company main section#iso .inner .container dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 21px;
  }
  body#company main section#iso .inner .container h4 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 21px;
  }
  body#company main section#iso .inner .container p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 25px;
  }
}
body#contactus main section#contact-about .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 70px;
  line-height: 81px;
}
body#contactus main section#contact-about .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 37px;
}
body#contactus main section#contact-about .inner h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 80px;
}
body#contactus main section#contact-about .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#contactus main section#contact-about .inner .container ul li.tel dl dt,
body#contactus main section#contact-about .inner .container ul li.mail dl dt {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 30px;
  line-height: 37px;
}
body#contactus main section#contact-about .inner .container ul li.tel dl dd,
body#contactus main section#contact-about .inner .container ul li.mail dl dd {
  font-family: "Barlow", serif;
  font-weight: 600;
  font-size: 35px;
  line-height: 52px;
}
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul
  li.tel
  dl
  dd
  small,
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul
  li.mail
  dl
  dd
  small {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 27px;
}
body#contactus main section#form .inner h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 80px;
}
body#contactus main section#form .inner form .form-container .c-flex.top label {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  label
  span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 30px;
}
body#contactus main section#form .inner form .form-container .c-flex__sb label {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  label
  span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 30px;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  input.form-inner {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  textarea {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#contactus main section#form .inner button.send,
#confirmBtn {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 21px;
  line-height: 79px;
}

@media screen and (max-width: 767px) {
  body#contactus main section#contact-about .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 49px;
    line-height: 57px;
  }
  body#contactus main section#contact-about .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 26px;
  }
  body#contactus main section#contact-about .inner h2 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 56px;
  }
  body#contactus main section#contact-about .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#contactus main section#contact-about .inner .container ul li.tel dl dt,
  body#contactus main section#contact-about .inner .container ul li.mail dl dt {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 21px;
    line-height: 26px;
  }
  body#contactus main section#contact-about .inner .container ul li.tel dl dd,
  body#contactus main section#contact-about .inner .container ul li.mail dl dd {
    font-family: "Barlow", serif;
    font-weight: 600;
    font-size: 25px;
    line-height: 36px;
  }
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul
    li.tel
    dl
    dd
    small,
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul
    li.mail
    dl
    dd
    small {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 19px;
  }
  body#contactus main section#form .inner h2 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 56px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    label {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    label
    span {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 11px;
    line-height: 21px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    label {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    label
    span {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 11px;
    line-height: 21px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    input.form-inner {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    textarea {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#contactus main section#form .inner button.send,
  #confirmBtn {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 55px;
  }
}
/*-----------------
recruit_index
-----------------*/
body#recruit-index main section#mv h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 70px;
  line-height: 70px;
}
body#recruit-index main section#mv h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 38px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  dl
  dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 38px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  dl
  dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 25px;
}
body#recruit-index main section#btn-section .inner .people a.textbtn dl dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 38px;
}
body#recruit-index main section#btn-section .inner .people a.textbtn dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 25px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl
  dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 38px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl
  dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 25px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  recruit_index
  -----------------*/
  body#recruit-index main section#mv h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 42px;
    line-height: 28px;
  }
  body#recruit-index main section#mv h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 27px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.company-work
    a
    dl
    dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.company-work
    a
    dl
    dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
  }
  body#recruit-index main section#btn-section .inner .people a.textbtn dl dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
  }
  body#recruit-index main section#btn-section .inner .people a.textbtn dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a
    dl
    dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a
    dl
    dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
  }
}
/*-----------------
jobdescription
-----------------*/
body#jobdescription main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 38px;
}
body#jobdescription main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 80px;
}
body#jobdescription main h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 80px;
}
body#jobdescription main section#personality .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 45px;
}
body#jobdescription
  main
  section#personality
  .inner
  .container
  .c-flex__sb
  ul
  li {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 47px;
}
body#jobdescription main section#newgraduate .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#jobdescription main section#halfway .inner h3 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 30px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 33px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dd
  span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 15px;
  line-height: 25px;
}
body#jobdescription main section#halfway .inner .btn {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 60px;
}
body#jobdescription main section#halfway .inner .btn-inner dl.container dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
}
body#jobdescription main section#halfway .inner .btn-inner dl.container dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 32px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container
  dd
  span.block {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 15px;
  line-height: 25px;
}
body#jobdescription main section#student-message .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 45px;
}
body#jobdescription main section#student-message .inner ul li {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 50px;
}
body#jobdescription main section#student-message .inner p.entry a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 21px;
  line-height: 80px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  jobdescription
  -----------------*/
  body#jobdescription main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
  }
  body#jobdescription main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 35px;
    line-height: 56px;
  }
  body#jobdescription main h2 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 56px;
  }
  body#jobdescription main section#personality .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 31px;
  }
  body#jobdescription
    main
    section#personality
    .inner
    .container
    .c-flex__sb
    ul
    li {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 33px;
  }
  body#jobdescription main section#newgraduate .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#jobdescription main section#halfway .inner h3 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 21px;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .container
    dl.c-flex__sb.requir
    dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .container
    dl.c-flex__sb.requir
    dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 23px;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .container
    dl.c-flex__sb.requir
    dd
    span {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 11px;
    line-height: 18px;
  }
  body#jobdescription main section#halfway .inner .btn {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 42px;
  }
  body#jobdescription main section#halfway .inner .btn-inner dl.container dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
  }
  body#jobdescription main section#halfway .inner .btn-inner dl.container dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 22px;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .btn-inner
    dl.container
    dd
    span.block {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 11px;
    line-height: 18px;
  }
  body#jobdescription main section#student-message .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 31px;
  }
  body#jobdescription main section#student-message .inner ul li {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 35px;
  }
  body#jobdescription main section#student-message .inner p.entry a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 56px;
  }
}
/*--------------------
about
--------------------*/
body#about main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 38px;
}
body#about main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 80px;
}
body#about main section#intro .inner h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 80px;
}
body#about main section#intro .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#about main section.strong .inner .c-flex dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 64px;
}
body#about main section.strong .inner .c-flex dl dd {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 70px;
}
body#about main section.strong .inner .c-flex h3 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 38px;
  line-height: 62px;
}
body#about main section.strong .inner .c-flex h3.two {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 38px;
  line-height: 110px;
}
body#about main section.strong .inner .c-flex__sb .text-container p.circle {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 19px;
  line-height: 34px;
}
body#about main section.strong .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#about main section#number .inner h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 80px;
}
body#about main section#number .inner p.circle {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 35px;
  line-height: 80px;
}
body#about main section#number .inner .c-flex__sb .box dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 62px;
}
body#about main section#number .inner .c-flex__sb .box dl dd.big {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 68px;
}
body#about main section#number .inner .c-flex__sb .box dl dd.big strong {
  font-family: "Barlow", serif;
  font-weight: 700;
  font-size: 65px;
  line-height: 77px;
}
body#about main section#number .inner .c-flex__sb .box dl dd.big div span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 25px;
}
body#about main section#number .inner .c-flex__sb .box dl dd.small {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 62px;
}

@media screen and (max-width: 767px) {
  /*--------------------
  about
  --------------------*/
  body#about main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
  }
  body#about main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 35px;
    line-height: 56px;
  }
  body#about main section#intro .inner h2 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 56px;
  }
  body#about main section#intro .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#about main section.strong .inner .c-flex dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 45px;
  }
  body#about main section.strong .inner .c-flex dl dd {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 35px;
    line-height: 49px;
  }
  body#about main section.strong .inner .c-flex h3 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 27px;
    line-height: 43px;
  }
  body#about main section.strong .inner .c-flex h3.two {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 27px;
    line-height: 39px;
  }
  body#about main section.strong .inner .c-flex__sb .text-container p.circle {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 13px;
    line-height: 24px;
  }
  body#about main section.strong .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#about main section#number .inner h2 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 31px;
    line-height: 56px;
  }
  body#about main section#number .inner p.circle {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 25px;
    line-height: 56px;
  }
  body#about main section#number .inner .c-flex__sb .box dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 43px;
  }
  body#about main section#number .inner .c-flex__sb .box dl dd.big {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 48px;
  }
  body#about main section#number .inner .c-flex__sb .box dl dd.big strong {
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 46px;
    line-height: 54px;
  }
  body#about main section#number .inner .c-flex__sb .box dl dd.big div span {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 18px;
  }
  body#about main section#number .inner .c-flex__sb .box dl dd.small {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 43px;
  }
}
/*-----------------
welfare
-----------------*/
body#welfare main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 80px;
}
body#welfare main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 25px;
}
body#welfare main section#welfare-about .inner dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 35px;
  line-height: 80px;
}
body#welfare main section#welfare-about .inner dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 45px;
}
body#welfare main section#welfare-about .inner .box p.pickup {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 81px;
}
body#welfare main section#welfare-about .inner .box dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 35px;
  line-height: 80px;
}
body#welfare main section#welfare-about .inner .box dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 40px;
}
body#welfare main section#welfare-about .inner .box dl dd.small {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 45px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  welfare
  -----------------*/
  body#welfare main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 35px;
    line-height: 56px;
  }
  body#welfare main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 18px;
  }
  body#welfare main section#welfare-about .inner dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 25px;
    line-height: 56px;
  }
  body#welfare main section#welfare-about .inner dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 31px;
  }
  body#welfare main section#welfare-about .inner .box p.pickup {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 57px;
  }
  body#welfare main section#welfare-about .inner .box dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 25px;
    line-height: 56px;
  }
  body#welfare main section#welfare-about .inner .box dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 28px;
  }
  body#welfare main section#welfare-about .inner .box dl dd.small {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 11px;
    line-height: 21px;
  }
}
/*-----------------
life
-----------------*/
body#life main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 80px;
}
body#life main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 25px;
}
body#life main section#environment .inner .c-flex__sb .box dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 26px;
  line-height: 62px;
}
body#life main section#environment .inner .c-flex__sb .box dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 30px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  life
  -----------------*/
  body#life main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 35px;
    line-height: 56px;
  }
  body#life main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 18px;
  }
  body#life main section#environment .inner .c-flex__sb .box dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 43px;
  }
  body#life main section#environment .inner .c-flex__sb .box dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 21px;
  }
}
/*-----------------
solution
-----------------*/
body#solution main section#mv h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 80px;
}
body#solution main section#mv h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 25px;
}
body#solution main section#intro .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#solution main section.workin .inner .c-flex__sb dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 35px;
  line-height: 62px;
}
body#solution main section.workin .inner .c-flex__sb dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#solution main section.workin .inner ul li {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 19px;
  line-height: 50px;
}
body#solution main section.workin .inner ul li span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 19px;
  line-height: 50px;
}
body#solution main section.workin .inner ul li.twoline {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 19px;
  line-height: 19px;
}
body#solution main section.workin .inner ul li.twoline span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 19px;
  line-height: 28px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  solution
  -----------------*/
  body#solution main section#mv h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 35px;
    line-height: 56px;
  }
  body#solution main section#mv h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 18px;
  }
  body#solution main section#intro .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#solution main section.workin .inner .c-flex__sb dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 25px;
    line-height: 43px;
  }
  body#solution main section.workin .inner .c-flex__sb dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#solution main section.workin .inner ul li {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 13px;
    line-height: 25px;
  }
  body#solution main section.workin .inner ul li span {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 25px;
  }
  body#solution main section.workin .inner ul li.twoline {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 13px;
    line-height: 25px;
  }
  body#solution main section.workin .inner ul li.twoline span {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 25px;
  }
}
/*-----------------
interview_index
-----------------*/
body#interview-index main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 38px;
}
body#interview-index main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 80px;
}
body#interview-index main section#interview_list .inner a dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 27px;
}
body#interview-index main section#interview_list .inner a dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 27px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  interview-index
  -----------------*/
  body#interview-index main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px;
  }
  body#interview-index main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 35px;
    line-height: 53px;
  }
  body#interview-index main section#interview_list .inner a dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 21px;
  }
  body#interview-index main section#interview_list .inner a dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 21px;
  }
}
/*-----------------
interview 共通
-----------------*/
body.interview main section#intro .inner dl.c-flex dt {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 25px;
}
body.interview main section#intro .inner dl.c-flex dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 25px;
}
body.interview main section#intro .inner dl.c-flex dd span {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 28px;
  line-height: 25px;
}
body.interview main section#intro .inner h1 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 52px;
}
body.interview main section#intro .inner p.position {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 32px;
}
body.interview main section#chance .inner .container dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 22px;
  line-height: 32px;
}
body.interview main section#chance .inner .container dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 37px;
}
body.interview main section#work .inner h2,
body.interview main section#team .inner h2,
body.interview main section#challenge .inner h2 {
  font-family: "Barlow", serif;
  font-weight: 700;
  font-size: 45px;
  line-height: 81px;
}
body.interview main section#work .inner .c-flex__sb .text-container p.circle,
body.interview main section#team .inner .c-flex__sb .text-container p.circle,
body.interview
  main
  section#challenge
  .inner
  .c-flex__sb
  .text-container
  p.circle {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 80px;
}
body.interview main section#work .inner .c-flex__sb .text-container dl dt,
body.interview main section#team .inner .c-flex__sb .text-container dl dt,
body.interview
  main
  section#challenge
  .inner
  .c-flex__sb
  .text-container
  dl
  dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 60px;
}
body.interview main section#work .inner .c-flex__sb .text-container dl dd,
body.interview main section#team .inner .c-flex__sb .text-container dl dd,
body.interview
  main
  section#challenge
  .inner
  .c-flex__sb
  .text-container
  dl
  dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 37px;
}
body.interview main section#work .inner p.circle,
body.interview main section#team .inner p.circle,
body.interview main section#challenge .inner p.circle {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 80px;
}
body.interview main section#work .inner dl dt,
body.interview main section#team .inner dl dt,
body.interview main section#challenge .inner dl dt {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 60px;
}
body.interview main section#work .inner dl dd,
body.interview main section#team .inner dl dd,
body.interview main section#challenge .inner dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 37px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  h2 {
  font-family: "Barlow", serif;
  font-weight: 700;
  font-size: 45px;
  line-height: 81px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  dl.c-flex__sb
  dt {
  font-family: "Barlow", serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 30px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  dl.c-flex__sb
  dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 28px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .message-container
  h2 {
  font-family: "Barlow", serif;
  font-weight: 700;
  font-size: 45px;
  line-height: 81px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .message-container
  p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 37px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  interview 共通
  -----------------*/
  body.interview main section#intro .inner dl.c-flex dt {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 18px;
  }
  body.interview main section#intro .inner dl.c-flex dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 18px;
  }
  body.interview main section#intro .inner dl.c-flex dd span {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 18px;
  }
  body.interview main section#intro .inner h1 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 22px;
    line-height: 36px;
  }
  body.interview main section#intro .inner p.position {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 22px;
  }
  body.interview main section#chance .inner .container dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 15px;
    line-height: 22px;
  }
  body.interview main section#chance .inner .container dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 26px;
  }
  body.interview main section#work .inner h2,
  body.interview main section#team .inner h2,
  body.interview main section#challenge .inner h2 {
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 31px;
    line-height: 57px;
  }
  body.interview main section#work .inner .c-flex__sb .text-container p.circle,
  body.interview main section#team .inner .c-flex__sb .text-container p.circle,
  body.interview
    main
    section#challenge
    .inner
    .c-flex__sb
    .text-container
    p.circle {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 56px;
  }
  body.interview main section#work .inner .c-flex__sb .text-container dl dt,
  body.interview main section#team .inner .c-flex__sb .text-container dl dt,
  body.interview
    main
    section#challenge
    .inner
    .c-flex__sb
    .text-container
    dl
    dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 22px;
    line-height: 42px;
  }
  body.interview main section#work .inner .c-flex__sb .text-container dl dd,
  body.interview main section#team .inner .c-flex__sb .text-container dl dd,
  body.interview
    main
    section#challenge
    .inner
    .c-flex__sb
    .text-container
    dl
    dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 26px;
  }
  body.interview main section#work .inner p.circle,
  body.interview main section#team .inner p.circle,
  body.interview main section#challenge .inner p.circle {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 56px;
  }
  body.interview main section#work .inner dl dt,
  body.interview main section#team .inner dl dt,
  body.interview main section#challenge .inner dl dt {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 22px;
    line-height: 42px;
  }
  body.interview main section#work .inner dl dd,
  body.interview main section#team .inner dl dd,
  body.interview main section#challenge .inner dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 26px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    h2 {
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 31px;
    line-height: 57px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    dl.c-flex__sb
    dt {
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 21px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    dl.c-flex__sb
    dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 20px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .message-container
    h2 {
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 31px;
    line-height: 57px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .message-container
    p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 26px;
  }
}
/*--------------------
casestudy
--------------------*/
body#casestudy main section#mv h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 70px;
  line-height: 81px;
}
body#casestudy main section#mv h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 80px;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 70px;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt span {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 35px;
  line-height: 70px;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 70px;
}
body#casestudy main section.case-sec .inner h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 60px;
}
body#casestudy main section.case-sec .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#casestudy main section.case-sec .inner p.circle {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 80px;
}
body#casestudy main section.case-sec .inner .c-flex__sb.flow p.flow-about {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 80px;
}

@media screen and (max-width: 767px) {
  /*--------------------
  casestudy
  --------------------*/
  body#casestudy main section#mv h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 49px;
    line-height: 57px;
  }
  body#casestudy main section#mv h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 56px;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 49px;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt span {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 25px;
    line-height: 49px;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 49px;
  }
  body#casestudy main section.case-sec .inner h2 {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 42px;
  }
  body#casestudy main section.case-sec .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#casestudy main section.case-sec .inner p.circle {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 56px;
  }
  body#casestudy main section.case-sec .inner .c-flex__sb.flow p.flow-about {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 56px;
  }
}
/*-----------------
service
-----------------*/
body#service main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 70px;
  line-height: 81px;
}
body#service main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 80px;
}
body#service main section#intro .inner h2 {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 56px;
  line-height: 70px;
}
body#service main section#intro .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 36px;
}
body#service
  main
  section.service-in
  .inner
  .c-flex__sb
  .text-container
  dl
  dt
  span.ttl-en {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 25px;
}
body#service
  main
  section.service-in
  .inner
  .c-flex__sb
  .text-container
  dl
  dt
  span.ttl-jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 80px;
}
body#service main section.service-in .inner .c-flex__sb .text-container dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 42px;
}
body#service
  main
  section.service-in
  .inner
  .c-flex__sb
  .text-container
  p.btn
  a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 21px;
  line-height: 80px;
}

@media screen and (max-width: 767px) {
  /*-----------------
  service
  -----------------*/
  body#service main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 49px;
    line-height: 57px;
  }
  body#service main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 56px;
  }
  body#service main section#intro .inner h2 {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 39px;
    line-height: 49px;
  }
  body#service main section#intro .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 25px;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    dl
    dt
    span.ttl-en {
    font-family: "Barlow", serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 49px;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    dl
    dt
    span.ttl-jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 28px;
    line-height: 56px;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    dl
    dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 29px;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    p.btn
    a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 56px;
  }
}
body#top main section#mv .inner h1 span.en,
body#company main section#mv .inner h1 span.en,
body#contact main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 70px;
  line-height: 81px;
}
body#top main section#mv .inner h1 span.jp,
body#company main section#mv .inner h1 span.jp,
body#contact main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 38px;
}

@media screen and (max-width: 767px) {
  body#top main section#mv .inner h1 span.en,
  body#company main section#mv .inner h1 span.en,
  body#contact main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 49px;
    line-height: 57px;
  }
  body#top main section#mv .inner h1 span.jp,
  body#company main section#mv .inner h1 span.jp,
  body#contact main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 27px;
  }
}
body#news main section#mv .inner h1 span.en {
  font-family: "Barlow", serif;
  font-weight: 400;
  font-size: 70px;
  line-height: 81px;
}
body#news main section#mv .inner h1 span.jp {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 25px;
  line-height: 80px;
}
body#news main section#list .inner dl dt {
  font-family: "Barlow", serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 35px;
}
body#news main section#list .inner dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 35px;
}

body#news-detail main section#news-in .inner dl dt {
  font-family: "Barlow", serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 35px;
}
body#news-detail main section#news-in .inner dl dd {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 30px;
  line-height: 55px;
}
body#news-detail main section#news-in .inner p.text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 36px;
}
body#news-detail main section#news-in .inner p.link a {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 36px;
}
body#news-detail main section#news-in .inner a.list-back {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 80px;
}

@media screen and (max-width: 767px) {
  body#news main section#mv .inner h1 span.en {
    font-family: "Barlow", serif;
    font-weight: 400;
    font-size: 49px;
    line-height: 57px;
  }
  body#news main section#mv .inner h1 span.jp {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 56px;
  }
  body#news main section#list .inner dl dt {
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 25px;
  }
  body#news main section#list .inner dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 25px;
  }
  body#news-detail main section#news-in .inner dl dt {
    font-family: "Barlow", serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 25px;
  }
  body#news-detail main section#news-in .inner dl dd {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 21px;
    line-height: 39px;
  }
  body#news-detail main section#news-in .inner p.text {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 25px;
  }
  body#news-detail main section#news-in .inner p.link a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 25px;
  }
  body#news-detail main section#news-in .inner a.list-back {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 56px;
  }
}
/*--------------
共通で使うもの
---------------*/
body main header {
  width: 100%;
  margin: 0 auto;
  height: 100px;
  position: fixed;
  background-color: #fff;
  z-index: 999;
}
body main header .inner .c-flex__sb {
  padding-top: 25px;
  width: 100%;
}
body main header .inner .c-flex__sb p.logo {
  padding-left: 50px;
  width: 163px;
}
body main header .inner .c-flex__sb p.logo img {
  width: 100%;
}
body main header .inner .c-flex__sb div {
  width: 270px;
}
body main header .inner .c-flex__sb div p.contact-btn {
  width: 59.2592592593%;
}
body main header .inner .c-flex__sb div p.contact-btn a {
  width: 100%;
  display: block;
  background-color: #0050c8;
  color: #fff;
  text-align: center;
  text-decoration: none;
  border-radius: 50px;
}
body main header .inner .c-flex__sb div p.contact-btn a:hover {
  opacity: 0.8;
}
body main header .inner .c-flex__sb div p.menu-btn {
  width: 15.5555555556%;
  padding: 0 50px 0 15px;
  background-image: url(../img/header/menu-btn.svg);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 42px;
  cursor: pointer;
}
body main header .inner .c-flex__sb div p.menu-btn.show {
  background-image: url(../img/header/open.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 42px;
}
body main header .inner .navBg {
  width: 100vw;
  height: 100vh;
  background: none;
  z-index: 0;
  position: absolute;
  top: 100px;
  left: 0;
  display: none;
}
body main header .inner .navBg.show {
  display: block;
  z-index: 0;
}

@media screen and (max-width: 767px) {
  body main header {
    width: 100%;
    margin: 0 auto;
    height: 70px;
    position: fixed;
  }
  body main header .inner .c-flex__sb {
    padding-top: 15px;
    width: 100%;
  }
  body main header .inner .c-flex__sb p.logo {
    padding-left: 25px;
    width: 30%;
  }
  body main header .inner .c-flex__sb p.logo img {
    width: 100%;
  }
  body main header .inner .c-flex__sb div {
    width: 50%;
  }
  body main header .inner .c-flex__sb div p.contact-btn {
    width: 60%;
    padding-top: 5px;
    padding-right: 10px;
  }
  body main header .inner .c-flex__sb div p.contact-btn a {
    width: 100%;
  }
  body main header .inner .c-flex__sb div p.menu-btn {
    width: 30%;
    margin: 0 10px 0 10px;
    padding: 0;
    background-image: url(../img/header/menu-btn.svg);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 38px;
    margin: 0;
  }
  body main header .inner .c-flex__sb div p.menu-btn.show {
    background-image: url(../img/header/open.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 38px;
  }
  body main header .inner .navBg {
    width: 100vw;
    height: 100vh;
    background: none;
    position: absolute;
    top: 70px;
    display: none;
    left: 0;
    z-index: 999;
  }
  body main header .inner .navBg.show {
    display: block;
  }
}
body main footer {
  background-color: #ddecff;
  padding-top: 65px;
}
body main footer .inner {
  max-width: 930px;
  width: 95%;
  margin: 0 auto;
  position: relative;
}
body main footer .inner .container.c-flex__sb {
  width: 100%;
}
body main footer .inner .container.c-flex__sb p.logo {
  width: 26.3440860215%;
}
body main footer .inner .container.c-flex__sb p.logo a {
  width: 100%;
}
body main footer .inner .container.c-flex__sb .c-flex__sb.foot-menuin {
  width: 52.688172043%;
  margin: 0 auto;
  flex-wrap: wrap;
  padding-bottom: 100px;
}
body main footer .inner .container.c-flex__sb .c-flex__sb.foot-menuin a {
  position: relative;
  display: block;
  text-decoration: none;
  margin-bottom: 25px;
  width: 50%;
}
body main footer .inner .container.c-flex__sb .c-flex__sb.foot-menuin a dl dt {
  color: #14327d;
}
body
  main
  footer
  .inner
  .container.c-flex__sb
  .c-flex__sb.foot-menuin
  a
  dl
  dt
  span {
  color: #1e7fff;
  padding-right: 5px;
}
body main footer .inner .container.c-flex__sb .c-flex__sb.foot-menuin a dl dd {
  color: #1e7fff;
  padding-left: 15px;
}
body
  main
  footer
  .inner
  .container.c-flex__sb
  .c-flex__sb.foot-menuin
  a.on.pt01::after {
  position: absolute;
  left: 0;
  content: "";
  width: 110px;
  height: 2px;
  background: #14327d;
  bottom: -10px;
  transform: scale(0, 1);
  transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s; /*変形の時間*/
}
body
  main
  footer
  .inner
  .container.c-flex__sb
  .c-flex__sb.foot-menuin
  a.on.pt01:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
  transform-origin: left top; /*左から右に向かう*/
}
body
  main
  footer
  .inner
  .container.c-flex__sb
  .c-flex__sb.foot-menuin
  a.on.pt02::after {
  position: absolute;
  left: 0;
  content: "";
  width: 150px;
  height: 2px;
  background: #14327d;
  bottom: -10px;
  transform: scale(0, 1);
  transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s; /*変形の時間*/
}
body
  main
  footer
  .inner
  .container.c-flex__sb
  .c-flex__sb.foot-menuin
  a.on.pt02:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
  transform-origin: left top; /*左から右に向かう*/
}
.policy-link {
  text-decoration: none;
  color: #14327d;
  background-image: url(../img/footer/blank.svg);
  background-repeat: no-repeat;
  background-size: 14px;
  background-position: 100%;
  padding-right: 18px;
}
.policy-link:hover {
  text-decoration: underline;
}
body main footer .inner .link.c-flex__sb {
  width: 100%;
  padding-bottom: 30px;
  margin: 0 auto;
}
body main footer .inner .link.c-flex__sb .empty {
  width: 26.3440860215%;
}
body main footer .inner .link.c-flex__sb .container.c-flex__sb {
  border-top: solid 1px #14327d;
  width: 52.688172043%;
  margin: 0 auto;
}
body main footer .inner .link.c-flex__sb .container.c-flex__sb a {
  text-decoration: none;
  color: #14327d;
  background-image: url(../img/footer/blank.svg);
  background-repeat: no-repeat;
  background-size: 14px;
  background-position: 100%;
  padding-right: 18px;
}
body main footer .inner .link.c-flex__sb .container.c-flex__sb a:hover {
  text-decoration: underline;
}
body main footer .inner p.pagetop {
  position: absolute;
  bottom: 30px;
  right: 3%;
  position: fixed;
}
body main footer .inner p.pagetop a {
  writing-mode: vertical-rl;
  text-decoration: none;
  color: #14327d;
  background-image: url(../img/footer/page-top.svg);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 42px;
  padding-top: 50px;
}
body main footer .inner p.pagetop a:hover {
  opacity: 0.8;
}
body main footer .inner p.iso {
  position: absolute;
  width: 13.9784946237%;
  bottom: 20px;
  left: 0px;
}
body main footer p.copy {
  max-width: 1100px;
  width: 95%;
  margin: 0 auto;
  color: #14327d;
  text-align: end;
}

@media screen and (max-width: 767px) {
  body main footer {
    padding-top: 30px;
  }
  body main footer .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    position: relative;
  }
  body main footer .inner .container.c-flex__sb {
    width: 100%;
    margin: 0 auto;
  }
  body main footer .inner .container.c-flex__sb p.logo {
    width: 27.7777777778%;
  }
  body main footer .inner .container.c-flex__sb p.logo a {
    width: 100%;
  }
  body main footer .inner .container.c-flex__sb .c-flex__sb.foot-menuin {
    width: 72.2222222222%;
    padding-bottom: 30px;
    padding-left: 20px;
  }
  body main footer .inner .container.c-flex__sb .c-flex__sb.foot-menuin a {
    width: 46.1538461538%;
    padding-bottom: 12px;
  }
  body
    main
    footer
    .inner
    .container.c-flex__sb
    .c-flex__sb.foot-menuin
    a
    dl
    dd {
    padding-left: 12px;
  }
  body
    main
    footer
    .inner
    .container.c-flex__sb
    .c-flex__sb.foot-menuin
    a.on.pt01::after {
    position: absolute;
    left: 0;
    content: "";
    width: 80px;
    height: 2px;
    background: #14327d;
    bottom: -10px;
    transform: scale(0, 1);
    transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
    transition: transform 0.3s; /*変形の時間*/
  }
  body
    main
    footer
    .inner
    .container.c-flex__sb
    .c-flex__sb.foot-menuin
    a.on.pt01:hover::after {
    transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
    transform-origin: left top; /*左から右に向かう*/
  }
  body
    main
    footer
    .inner
    .container.c-flex__sb
    .c-flex__sb.foot-menuin
    a.on.pt02::after {
    position: absolute;
    left: 0;
    content: "";
    width: 100px;
    height: 2px;
    background: #14327d;
    bottom: -10px;
    transform: scale(0, 1);
    transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
    transition: transform 0.3s; /*変形の時間*/
  }
  body
    main
    footer
    .inner
    .container.c-flex__sb
    .c-flex__sb.foot-menuin
    a.on.pt02:hover::after {
    transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
    transform-origin: left top; /*左から右に向かう*/
  }
  body main footer .inner .link.c-flex__sb {
    width: 100%;
    padding-bottom: 15px;
    margin: 0 auto;
  }
  body main footer .inner .link.c-flex__sb .empty {
    width: 33.3333333333%;
  }
  body main footer .inner .link.c-flex__sb .container.c-flex__sb {
    width: 66.6666666667%;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  body main footer .inner .link.c-flex__sb .container.c-flex__sb a {
    width: 50%;
    background-image: url(../img/footer/blank.svg);
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: 100%;
    padding-right: 14px;
  }
  body main footer .inner p.pagetop {
    position: absolute;
    bottom: 30px;
    right: 10px;
    position: fixed;
  }
  body main footer .inner p.pagetop a {
    writing-mode: vertical-rl;
    text-decoration: none;
    color: #14327d;
    background-image: url(../img/footer/page-top.svg);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 35px;
    padding-top: 40px;
  }
  body main footer .inner p.pagetop a:hover {
    opacity: 0.8;
  }
  body main footer .inner p.iso {
    position: absolute;
    width: 22.2222222222%;
    bottom: 20px;
    left: 0px;
  }
  body main footer p.copy {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
}
body main #menu {
  position: fixed;
  top: 100px;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #d2e5ff;
  opacity: 0.97;
  padding-top: 10px;
  height: 560px;
  z-index: 999;
  display: none;
}
body main #menu nav.c-flex__sb {
  max-width: 515px;
  width: 95%;
  margin: 0 auto;
}
body main #menu nav.c-flex__sb ul.index-btn {
  width: 56.3106796117%;
}
body main #menu nav.c-flex__sb ul.index-btn li a {
  position: relative;
  text-decoration: none;
}
body main #menu nav.c-flex__sb ul.index-btn li a dl {
  margin-bottom: 75px;
}
body main #menu nav.c-flex__sb ul.index-btn li a dl dt {
  color: #14327d;
}
body main #menu nav.c-flex__sb ul.index-btn li a dl dd {
  color: #1e7fff;
}
body main #menu nav.c-flex__sb ul.index-btn li a.on.one::after {
  position: absolute;
  left: 0;
  content: "";
  width: 170px;
  height: 2px;
  background: #14327d;
  top: 100px;
  transform: scale(0, 1);
  transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s; /*変形の時間*/
}
body main #menu nav.c-flex__sb ul.index-btn li a.on:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
  transform-origin: left top; /*左から右に向かう*/
}
body main #menu nav.c-flex__sb ul.index-btn li a.on.two::after {
  position: absolute;
  left: 0;
  content: "";
  width: 220px;
  height: 2px;
  background: #14327d;
  top: 100px;
  transform: scale(0, 1);
  transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s; /*変形の時間*/
}
body main #menu nav.c-flex__sb ul.index-btn li a.on.two:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
  transform-origin: left top; /*左から右に向かう*/
}
body main #menu nav.c-flex__sb ul.index-btn li a.on.three::after {
  position: absolute;
  left: 0;
  content: "";
  width: 210px;
  height: 2px;
  background: #14327d;
  top: 100px;
  transform: scale(0, 1);
  transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s; /*変形の時間*/
}
body main #menu nav.c-flex__sb ul.index-btn li a.on.three:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
  transform-origin: left top; /*左から右に向かう*/
}
body main #menu nav.c-flex__sb ul.career-btn {
  width: 32.3529411765%;
}
body main #menu nav.c-flex__sb ul.career-btn li a {
  position: relative;
  text-decoration: none;
  display: block;
}
body main #menu nav.c-flex__sb ul.career-btn li a dl dt {
  color: #14327d;
}
body main #menu nav.c-flex__sb ul.career-btn li a dl dd {
  color: #1e7fff;
}
body main #menu nav.c-flex__sb ul.career-btn li a.on.one::after {
  position: absolute;
  left: 0;
  content: "";
  width: 130px;
  height: 2px;
  background: #14327d;
  bottom: -10px;
  transform: scale(0, 1);
  transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s; /*変形の時間*/
}
body main #menu nav.c-flex__sb ul.career-btn li a.on.one:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
  transform-origin: left top; /*左から右に向かう*/
}
body main #menu nav.c-flex__sb ul.career-btn li a.on.two::after {
  position: absolute;
  left: 0;
  content: "";
  width: 100px;
  height: 2px;
  background: #14327d;
  bottom: -10px;
  transform: scale(0, 1);
  transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
  transition: transform 0.3s; /*変形の時間*/
}
body main #menu nav.c-flex__sb ul.career-btn li a.on.two:hover::after {
  transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
  transform-origin: left top; /*左から右に向かう*/
}
body main #menu nav.c-flex__sb ul.career-btn li ul.careerin {
  margin: 15px 0 45px 0;
}
body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li a {
  color: #14327d;
}
body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li a span {
  color: #1e7fff;
  padding-right: 10px;
}
body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li a:hover {
  text-decoration: underline;
}
body main #menu .link {
  max-width: 685px;
  width: 95%;
  margin: 0 auto;
  position: relative;
}
body main #menu .link ul.c-flex__sb {
  border-top: solid 1px #14327d;
  width: 75.1824817518%;
  margin: 0 auto;
  margin: left;
}
body main #menu .link ul.c-flex__sb li a {
  text-decoration: none;
  color: #14327d;
  background-image: url(../img/header/blank.png);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 14px;
  padding-right: 18px;
}
body main #menu .link ul.c-flex__sb li a:hover {
  text-decoration: underline;
}
body main #menu .link p {
  position: absolute;
  width: 18.9781021898%;
  right: -80px;
  bottom: 0;
}
body main #menu .link p a {
  width: 100%;
}
body main #menu .link p a img {
  width: 100%;
}
body main #menu.show {
  display: block;
}

@media screen and (max-width: 767px) {
  body main #menu {
    position: fixed;
    top: 70px;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    opacity: 0.97;
    padding: 45px 0;
    height: 63%;
  }
  body main #menu nav.c-flex__sb {
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
    padding-bottom: 20px;
  }
  body main #menu nav.c-flex__sb ul.index-btn {
    width: 62.5%;
  }
  body main #menu nav.c-flex__sb ul.index-btn li a {
    position: relative;
  }
  body main #menu nav.c-flex__sb ul.index-btn li a dl {
    margin-bottom: 20px;
  }
  body main #menu nav.c-flex__sb ul.index-btn li a.on.one::after {
    position: absolute;
    left: 0;
    content: "";
    width: 120px;
    height: 2px;
    background: #14327d;
    top: 100%;
    transform: scale(0, 1);
    transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
    transition: transform 0.3s; /*変形の時間*/
  }
  body main #menu nav.c-flex__sb ul.index-btn li a.on:hover::after {
    transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
    transform-origin: left top; /*左から右に向かう*/
  }
  body main #menu nav.c-flex__sb ul.index-btn li a.on.two::after {
    position: absolute;
    left: 0;
    content: "";
    width: 150px;
    height: 2px;
    background: #14327d;
    top: 100%;
    transform: scale(0, 1);
    transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
    transition: transform 0.3s; /*変形の時間*/
  }
  body main #menu nav.c-flex__sb ul.index-btn li a.on.two:hover::after {
    transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
    transform-origin: left top; /*左から右に向かう*/
  }
  body main #menu nav.c-flex__sb ul.index-btn li a.on.three::after {
    position: absolute;
    left: 0;
    content: "";
    width: 150px;
    height: 2px;
    background: #14327d;
    top: 100%;
    transform: scale(0, 1);
    transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
    transition: transform 0.3s; /*変形の時間*/
  }
  body main #menu nav.c-flex__sb ul.index-btn li a.on.three:hover::after {
    transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
    transform-origin: left top; /*左から右に向かう*/
  }
  body main #menu nav.c-flex__sb ul.career-btn {
    width: 37.5%;
  }
  body main #menu nav.c-flex__sb ul.career-btn li a.nav_menu_li dl {
    padding-bottom: 20px;
  }
  body main #menu nav.c-flex__sb ul.career-btn li a.on.one::after {
    position: absolute;
    left: 0;
    content: "";
    width: 90px;
    height: 2px;
    background: #14327d;
    bottom: 10px;
    transform: scale(0, 1);
    transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
    transition: transform 0.3s; /*変形の時間*/
  }
  body main #menu nav.c-flex__sb ul.career-btn li a.on.one:hover::after {
    transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
    transform-origin: left top; /*左から右に向かう*/
  }
  body main #menu nav.c-flex__sb ul.career-btn li a.on.two::after {
    position: absolute;
    left: 0;
    content: "";
    width: 70px;
    height: 2px;
    background: #14327d;
    bottom: 10px;
    transform: scale(0, 1);
    transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
    transition: transform 0.3s; /*変形の時間*/
  }
  body main #menu nav.c-flex__sb ul.career-btn li a.on.two:hover::after {
    transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
    transform-origin: left top; /*左から右に向かう*/
  }
  body main #menu nav.c-flex__sb ul.career-btn li ul.careerin {
    margin: 5px 0 10px 0;
  }
  body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li {
    padding-bottom: 10px;
  }
  body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li a {
    position: relative;
  }
  body main #menu nav.c-flex__sb ul.career-btn li ul.careerin li a span {
    padding-right: 10px;
  }
  body main #menu .link {
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
    position: relative;
  }
  body main #menu .link ul.c-flex__sb {
    width: 100%;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  body main #menu .link ul.c-flex__sb li {
    width: 43.75%;
  }
  body main #menu .link ul.c-flex__sb li a {
    background-image: url(../img/header/blank.png);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 14px;
    padding-right: 18px;
  }
  body main #menu .link p {
    position: absolute;
    width: 25%;
    left: 0px;
    bottom: 80px;
  }
  body main #menu .link p a {
    width: 100%;
  }
  body main #menu .link p a img {
    width: 100%;
  }
}
body#company main section#mv,
body#service main section#mv,
body#casestudy main section#mv,
body#news main section#mv {
  padding-top: 100px;
  height: 460px;
}
body#company main section#mv .inner,
body#service main section#mv .inner,
body#casestudy main section#mv .inner,
body#news main section#mv .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  position: relative;
}
body#company main section#mv .inner h1,
body#service main section#mv .inner h1,
body#casestudy main section#mv .inner h1,
body#news main section#mv .inner h1 {
  color: #fff;
  position: absolute;
  padding-top: 280px;
}
body#company main section#mv .inner h1 span.jp,
body#service main section#mv .inner h1 span.jp,
body#casestudy main section#mv .inner h1 span.jp,
body#news main section#mv .inner h1 span.jp {
  display: block;
  padding-bottom: 50px;
}

body#jobdescription main section#mv,
body#solution main section#mv,
body#life main section#mv,
body#welfare main section#mv,
body#about main section#mv,
body#interview-index main section#mv {
  height: 385px;
  padding-top: 200px;
}
body#jobdescription main section#mv .inner,
body#solution main section#mv .inner,
body#life main section#mv .inner,
body#welfare main section#mv .inner,
body#about main section#mv .inner,
body#interview-index main section#mv .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  position: relative;
}
body#jobdescription main section#mv .inner h1,
body#solution main section#mv .inner h1,
body#life main section#mv .inner h1,
body#welfare main section#mv .inner h1,
body#about main section#mv .inner h1,
body#interview-index main section#mv .inner h1 {
  color: #fff;
  position: absolute;
  padding-top: 210px;
}
body#jobdescription main section#mv .inner h1 span,
body#solution main section#mv .inner h1 span,
body#life main section#mv .inner h1 span,
body#welfare main section#mv .inner h1 span,
body#about main section#mv .inner h1 span,
body#interview-index main section#mv .inner h1 span {
  display: block;
}

body#recruit-index main section#mv {
  background-image: url("../img/recruit/index/mv.webp");
  background-size: 1160px;
  background-position: center center;
  background-repeat: no-repeat;
  height: 820px;
}
body#recruit-index main section#mv .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#recruit-index main section#mv .inner h1 {
  color: #fff;
  padding-top: 510px;
  margin-bottom: 90px;
}
body#recruit-index main section#mv .inner h1 span.en {
  padding-bottom: 15px;
  display: block;
}
body#recruit-index main section#mv .inner h1 span.jp {
  display: block;
}

body#jobdescription {
  background-image: url("../img/recruit/jobdescription/mv.webp");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#solution {
  background-image: url("../img/recruit/solution/mv.webp");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#life {
  background-image: url("../img/recruit/life/mv.webp");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#welfare {
  background-image: url("../img/recruit/welfare/mv.webp");
  background-size: cover;
  background-position: bottom center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#about {
  background-image: url("../img/recruit/about/mv.webp");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#company {
  background-image: url("../img/company/mv.webp");
  background-size: cover;
  background-position: bottom center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#service {
  background-image: url("../img/service/mv.webp");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#news {
  background-image: url("../img/news/mv.webp");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#casestudy {
  background-image: url("../img/casestudy/mv.webp");
  background-size: cover;
  background-position: bottom center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

body#interview-index {
  background-image: url("../img/recruit/jobdescription/mv.webp");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}

@media screen and (max-width: 767px) {
  body#about::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/recruit/about/mv.webp);
    background-size: cover;
  }
  body#interview-index main section#mv {
    padding-top: 85px;
    height: 245px;
  }
  body#interview-index main section#mv .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    position: relative;
  }
  body#interview-index main section#mv .inner h1 {
    position: absolute;
    padding-top: 150px;
  }
  body#interview-index main section#mv .inner h1 span.jp {
    display: block;
  }
  body#interview-index::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/recruit/jobdescription/mv.webp);
    background-size: cover;
  }
  body#recruit-index main section#mv {
    background-image: url("../img/recruit/index/mv.webp");
    background-size: 90%;
    background-position: 50% 100%;
    background-repeat: no-repeat;
    height: 280px;
  }
  body#recruit-index main section#mv .inner {
    max-width: 1060px;
    width: 95%;
    margin: 0 auto;
  }
  body#recruit-index main section#mv .inner h1 {
    padding-top: 190px;
    margin-bottom: 10px;
    padding-left: 30px;
  }
  body#recruit-index main section#mv .inner h1 span.en {
    padding-bottom: 15px;
  }
  body#jobdescription,
  body#casestudy,
  body#solution,
  body#life,
  body#welfare,
  body#about,
  body#service,
  body#interview-index,
  body#company,
  body#news {
    background-image: none;
  }
  body#jobdescription main section#mv,
  body#casestudy main section#mv,
  body#solution main section#mv,
  body#life main section#mv,
  body#welfare main section#mv,
  body#about main section#mv,
  body#service main section#mv,
  body#interview-index main section#mv,
  body#company main section#mv,
  body#news main section#mv {
    padding-top: 100px;
    height: 250px;
  }
  body#jobdescription main section#mv .inner,
  body#casestudy main section#mv .inner,
  body#solution main section#mv .inner,
  body#life main section#mv .inner,
  body#welfare main section#mv .inner,
  body#about main section#mv .inner,
  body#service main section#mv .inner,
  body#interview-index main section#mv .inner,
  body#company main section#mv .inner,
  body#news main section#mv .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    position: relative;
  }
  body#jobdescription main section#mv .inner h1,
  body#casestudy main section#mv .inner h1,
  body#solution main section#mv .inner h1,
  body#life main section#mv .inner h1,
  body#welfare main section#mv .inner h1,
  body#about main section#mv .inner h1,
  body#service main section#mv .inner h1,
  body#interview-index main section#mv .inner h1,
  body#company main section#mv .inner h1,
  body#news main section#mv .inner h1 {
    position: absolute;
    padding-top: 130px;
  }
  body#jobdescription main section#mv .inner h1 span.jp,
  body#casestudy main section#mv .inner h1 span.jp,
  body#solution main section#mv .inner h1 span.jp,
  body#life main section#mv .inner h1 span.jp,
  body#welfare main section#mv .inner h1 span.jp,
  body#about main section#mv .inner h1 span.jp,
  body#service main section#mv .inner h1 span.jp,
  body#interview-index main section#mv .inner h1 span.jp,
  body#company main section#mv .inner h1 span.jp,
  body#news main section#mv .inner h1 span.jp {
    display: block;
  }
  body#jobdescription::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/recruit/jobdescription/mv.webp);
    background-size: cover;
  }
  body#news::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: bottom right;
    background-image: url(../img/news/mv.webp);
    background-size: cover;
  }
  body#solution::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/recruit/solution/mv.webp);
    background-size: cover;
  }
  body#life::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: top center;
    background-image: url(../img/recruit/life/mv.webp);
    background-size: cover;
  }
  body#welfare::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: center left;
    background-image: url(../img/recruit/welfare/mv.webp);
    background-size: cover;
  }
  body#service::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/service/mv.webp);
    background-size: cover;
  }
  body#casestudy::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 55%;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/casestudy/mv.webp);
    background-size: cover;
  }
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
body#top .scroll-infinity__wrap {
  position: fixed;
  z-index: -1;
  display: flex;
  overflow: hidden;
  margin-top: 100px;
}
body#top .scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0 10px 0 0;
}
body#top .scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
body#top .scroll-infinity__item {
  width: 100vw;
}
body#top .scroll-infinity__item > img {
  width: 100%;
}
body#top main section#top-mv {
  height: 800px;
}
body#top main section#top-mv .inner {
  position: relative;
}
body#top main section#top-mv .inner h1 {
  color: #fff;
  position: absolute;
  top: 285px;
  left: 6.5%;
}
body#top main section#news {
  background-color: #f4f9ff;
  padding: 40px 0;
}
body#top main section#news .inner.c-flex {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  align-items: start;
}
body#top main section#news .inner.c-flex .container {
  width: 13.2075471698%;
  padding-right: 40px;
  border-right: solid 1px #14327d;
}
body#top main section#news .inner.c-flex .container a {
  text-decoration: none;
}
body#top main section#news .inner.c-flex .container a h2 {
  color: #14327d;
}
body#top main section#news .inner.c-flex .container a h2 span.jp {
  display: block;
  margin: 0 auto;
  padding: 0 0 10px 15px;
}
body#top main section#news .inner.c-flex .container a p.arrow {
  width: 30%;
  padding-left: 30px;
}
body#top main section#news .inner.c-flex dl.c-flex {
  width: 86.7924528302%;
  flex-wrap: wrap;
  align-items: stretch;
}
body#top main section#news .inner.c-flex dl.c-flex dt {
  width: 10.8695652174%;
  padding-left: 30px;
  color: #1e7fff;
  gap: 0px;
}
body#top main section#news .inner.c-flex dl.c-flex dd {
  width: 82.6086956522%;
  padding-left: 25px;
  color: #14327d;
  gap: 0px;
  text-decoration: underline;
}
body#top main section#news .inner.c-flex dl.c-flex dd a {
  color: #14327d;
}
body#top main h3 span.en {
  color: #14327d;
}
body#top main h3 span.jp {
  color: #1e7fff;
  display: block;
}
body#top main p.text {
  color: #14327d;
}
body#top main section#aboutus {
  background-color: #fff;
  margin-bottom: 300px;
}
body#top main section#aboutus .inner {
  padding-top: 90px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#top main section#aboutus .inner h3 span.jp {
  display: block;
  padding-bottom: 45px;
}
body#top main section#aboutus .inner p.text {
  padding-bottom: 80px;
}
body#top main section#aboutus .inner .btn {
  width: 100%;
  padding-bottom: 100px;
}
body#top main section#aboutus .inner .btn a {
  display: block;
  width: 30.1886792453%;
  text-decoration: none;
  color: #14327d;
}
body#top main section#aboutus .inner .btn a p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#top main section#aboutus .inner .btn a p.img img {
  transition: 0.5s all;
}
body#top main section#aboutus .inner .btn a p.img img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#top main section#aboutus .inner .btn a p.title {
  padding-left: 25px;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 95%;
  background-repeat: no-repeat;
  background-size: 42px;
}
body#top main section#aboutus .inner .btn a:hover {
  opacity: 0.8;
}
body#top main p.readmore {
  width: 37.0833333333%;
}
body#top main p.readmore a {
  width: 100%;
  color: #14327d;
  display: block;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 42px;
  text-decoration: underline;
}
body#top main p.readmore a:hover {
  opacity: 0.8;
}
body#top main section#service {
  background-color: #f4f9ff;
}
body#top main section#service .inner.c-flex__sb {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  padding: 120px 0;
}
body#top main section#service .inner.c-flex__sb .text-container {
  width: 45.2830188679%;
}
body#top main section#service .inner.c-flex__sb .text-container h3 span.jp {
  padding-bottom: 40px;
}
body#top main section#service .inner.c-flex__sb .text-container p.text {
  padding-bottom: 65px;
}
body#top main section#service .inner.c-flex__sb p.img {
  width: 46.2264150943%;
}
body#top main section#case {
  background-color: #fff;
  margin-bottom: 300px;
}
body#top main section#case .inner.c-flex__sb {
  padding: 120px 0;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  flex-direction: row-reverse;
}
body#top main section#case .inner.c-flex__sb .text-container {
  width: 45.2830188679%;
}
body#top main section#case .inner.c-flex__sb .text-container h3 span.jp {
  padding-bottom: 40px;
}
body#top main section#case .inner.c-flex__sb .text-container p.text {
  padding-bottom: 65px;
}
body#top main section#case .inner.c-flex__sb p.img {
  width: 46.2264150943%;
}
body#top main section#career {
  background-color: #f4f9ff;
  padding-top: 120px;
}
body#top main section#career .inner.c-flex__sb {
  border-bottom: solid 1px #d2e5ff;
  padding-bottom: 60px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  flex-direction: row-reverse;
}
body#top main section#career .inner.c-flex__sb .text-container {
  width: 47.1698113208%;
}
body#top main section#career .inner.c-flex__sb .text-container h3 span.jp {
  padding-bottom: 40px;
}
body#top main section#career .inner.c-flex__sb .text-container p.text {
  padding-bottom: 65px;
}
body#top main section#career .inner.c-flex__sb .text-container a {
  width: 46.9387755102%;
  display: block;
  text-decoration: none;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 42px;
}
body#top main section#career .inner.c-flex__sb .text-container a dl {
  width: 75.2173913043%;
}
body#top main section#career .inner.c-flex__sb .text-container a dl dt {
  color: #14327d;
  border-bottom: solid 1px #14327d;
}
body#top main section#career .inner.c-flex__sb .text-container a dl dd {
  color: #1e7fff;
}
body#top main section#career .inner.c-flex__sb .text-container a:hover {
  opacity: 0.8;
}
body#top main section#career .inner.c-flex__sb p.img {
  width: 46.2264150943%;
}
body#top main section#btn-section {
  background-color: #f4f9ff;
  padding-top: 60px;
  margin-bottom: 300px;
}
body#top main section#btn-section .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#top main section#btn-section .inner .c-flex__sb.company-work {
  width: 100%;
  padding-bottom: 50px;
}
body#top main section#btn-section .inner .c-flex__sb.company-work a {
  display: block;
  width: 48.1132075472%;
  text-decoration: none;
}
body#top main section#btn-section .inner .c-flex__sb.company-work a p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#top main section#btn-section .inner .c-flex__sb.company-work a p.img img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
  border-radius: 30px;
}
body#top main section#btn-section .inner .c-flex__sb.company-work a dl {
  width: 45.0980392157%;
  background-image: url(../img/common/link-arrow.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 42px;
  margin-left: 25px;
  margin-top: 25px;
}
body#top main section#btn-section .inner .c-flex__sb.company-work a dl dt {
  color: #14327d;
  border-bottom: solid 1px #14327d;
  width: 75.2173913043%;
}
body#top main section#btn-section .inner .c-flex__sb.company-work a dl dd {
  color: #1e7fff;
}
body#top main section#btn-section .inner .c-flex__sb.company-work a:hover {
  opacity: 0.8;
}
body#top main section#btn-section .inner .people {
  width: 100%;
}
body#top main section#btn-section .inner .people .c-flex__sb {
  width: 100%;
  flex-wrap: wrap;
}
body#top main section#btn-section .inner .people .c-flex__sb a {
  width: 49.0566037736%;
  padding-bottom: 15px;
}
body#top main section#btn-section .inner .people .c-flex__sb a p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#top main section#btn-section .inner .people .c-flex__sb a p.img img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#top main section#btn-section .inner .people .c-flex__sb a p.img img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#top main section#btn-section .inner .people .c-flex__sb a.none {
  display: none;
}
body#top main section#btn-section .inner .people .c-flex__sb a:hover {
  opacity: 0.8;
}
body#top main section#btn-section .inner .people a.textbtn {
  display: block;
  width: 100%;
  text-decoration: none;
  margin-bottom: 48px;
}
body#top main section#btn-section .inner .people a.textbtn dl {
  width: 21.6981132075%;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 42px;
  margin-left: 25px;
}
body#top main section#btn-section .inner .people a.textbtn dl dt {
  color: #14327d;
  border-bottom: solid 1px #14327d;
  width: 75.2173913043%;
}
body#top main section#btn-section .inner .people a.textbtn dl dd {
  color: #1e7fff;
}
body#top main section#btn-section .inner .people a.textbtn:hover {
  opacity: 0.8;
}
body#top main section#btn-section .inner .c-flex__sb.life-welfare-description {
  padding-bottom: 125px;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a {
  display: block;
  width: 30.1886792453%;
  text-decoration: none;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  p.img
  img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl {
  width: 71.875%;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 42px;
  margin-left: 25px;
  margin-top: 25px;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl
  dt {
  color: #14327d;
  border-bottom: solid 1px #14327d;
  width: 80%;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl
  dd {
  color: #1e7fff;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on
  p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on
  p.img
  img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on:hover {
  opacity: 0.8;
}
body#top
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a:hover {
  opacity: 0.8;
}
body#top main section#contact {
  background-color: #fff;
  padding: 110px 0 160px 0;
}
body#top main section#contact .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#top main section#contact .inner h3 span.jp {
  padding-bottom: 30px;
}
body#top main section#contact .inner p.text {
  padding-bottom: 40px;
}
body#top main section#contact .inner p.btn {
  width: 39.6226415094%;
}
body#top main section#contact .inner p.btn a {
  width: 100%;
  text-decoration: none;
  color: #fff;
  background-color: #0050c8;
  display: block;
  text-align: center;
  border-radius: 50px;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 95%;
  background-repeat: no-repeat;
  background-size: 42px;
}
body#top main section#contact .inner p.btn a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  body#top .scroll-infinity__wrap {
    margin-top: 70px;
  }
  body#top .scroll-infinity__list {
    padding: 0 5px 0 0;
  }
  body#top .scroll-infinity__list--left {
    animation: infinity-scroll-left 40s infinite linear 0.5s both;
  }
  body#top .scroll-infinity__item {
    width: 100vw;
  }
  body#top .scroll-infinity__item > img {
    width: 180%;
  }
  body#top main section#top-mv {
    height: 400px;
  }
  body#top main section#top-mv .inner {
    position: relative;
  }
  body#top main section#top-mv .inner h1 {
    color: #fff;
    position: absolute;
    top: 200px;
    left: 6.5%;
  }
  body#top main section#news {
    padding: 20px 0;
  }
  body#top main section#news .inner.c-flex {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#top main section#news .inner.c-flex .container {
    width: 22.2222222222%;
    padding-right: 20px;
  }
  body#top main section#news .inner.c-flex .container a h2 span.jp {
    padding: 0 0 5px 7px;
  }
  body#top main section#news .inner.c-flex .container a p.arrow {
    width: 50%;
    padding-left: 10px;
  }
  body#top main section#news .inner.c-flex dl.c-flex {
    width: 77.7777777778%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#top main section#news .inner.c-flex dl.c-flex dt {
    width: 100%;
    padding-left: 15px;
  }
  body#top main section#news .inner.c-flex dl.c-flex dd {
    width: 100%;
    padding-left: 12px;
  }
  body#top main section#aboutus {
    margin-bottom: 150px;
  }
  body#top main section#aboutus .inner {
    padding-top: 45px;
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
  }
  body#top main section#aboutus .inner h3 span.jp {
    padding-bottom: 25px;
  }
  body#top main section#aboutus .inner p.text {
    padding-bottom: 40px;
  }
  body#top main section#aboutus .inner .btn.c-flex__sb {
    width: 88.8888888889%;
    margin: 0 auto;
    padding-bottom: 50px;
    flex-direction: column;
  }
  body#top main section#aboutus .inner .btn.c-flex__sb a {
    padding-bottom: 20px;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
  body#top main section#aboutus .inner .btn.c-flex__sb a p.title {
    padding-left: 25px;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 95%;
    background-repeat: no-repeat;
    background-size: 35px;
  }
  body#top main section#service .inner.c-flex__sb {
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
    padding: 60px 0;
    flex-direction: column;
  }
  body#top main section#service .inner.c-flex__sb .text-container {
    width: 100%;
    margin: 0 auto;
  }
  body#top main section#service .inner.c-flex__sb .text-container h3 span.jp {
    padding-bottom: 20px;
  }
  body#top main section#service .inner.c-flex__sb .text-container p.text {
    padding-bottom: 35px;
  }
  body#top main section#service .inner.c-flex__sb .text-container p.readmore {
    width: 100%;
    padding-bottom: 20px;
  }
  body#top main section#service .inner.c-flex__sb .text-container p.readmore a {
    width: 50%;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
  }
  body#top main section#service .inner.c-flex__sb p.img {
    width: 87.5%;
    margin: 0 auto;
  }
  body#top main section#case {
    margin-bottom: 150px;
  }
  body#top main section#case .inner.c-flex__sb {
    padding: 60px 0;
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#top main section#case .inner.c-flex__sb .text-container {
    width: 100%;
    margin: 0 auto;
  }
  body#top main section#case .inner.c-flex__sb .text-container h3 span.jp {
    padding-bottom: 20px;
  }
  body#top main section#case .inner.c-flex__sb .text-container p.text {
    padding-bottom: 35px;
  }
  body#top main section#case .inner.c-flex__sb .text-container p.readmore {
    width: 100%;
    padding-bottom: 20px;
  }
  body#top main section#case .inner.c-flex__sb .text-container p.readmore a {
    width: 50%;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
  }
  body#top main section#case .inner.c-flex__sb p.img {
    width: 83.3333333333%;
    margin: 0 auto;
  }
  body#top main section#career {
    padding-top: 60px;
  }
  body#top main section#career .inner.c-flex__sb {
    padding-bottom: 50px;
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#top main section#career .inner.c-flex__sb .text-container {
    width: 100%;
    margin: 0 auto;
  }
  body#top main section#career .inner.c-flex__sb .text-container h3 span.jp {
    padding-bottom: 20px;
  }
  body#top main section#career .inner.c-flex__sb .text-container p.text {
    padding-bottom: 30px;
  }
  body#top main section#career .inner.c-flex__sb .text-container a {
    width: 75%;
    display: block;
    text-decoration: none;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 80% center;
    background-repeat: no-repeat;
    background-size: 35px;
  }
  body#top main section#career .inner.c-flex__sb .text-container a dl {
    width: 80%;
    margin-bottom: 20px;
  }
  body#top main section#career .inner.c-flex__sb .text-container a dl dt {
    width: 72.9166666667%;
  }
  body#top main section#career .inner.c-flex__sb p.img {
    width: 87.5%;
    margin: 0 auto;
  }
  body#top main section#btn-section {
    padding-top: 30px;
    margin-bottom: 150px;
  }
  body#top main section#btn-section .inner {
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
  }
  body#top main section#btn-section .inner .c-flex__sb.company-work {
    width: 100%;
    flex-direction: column;
    padding-bottom: 25px;
    margin: 0 auto;
  }
  body#top main section#btn-section .inner .c-flex__sb.company-work a {
    width: 93.75%;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  body#top main section#btn-section .inner .c-flex__sb.company-work a dl {
    width: 60%;
    margin: 0 auto;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
    margin-left: 0px;
    margin-top: 5px;
    padding-bottom: 10px;
  }
  body#top main section#btn-section .inner .c-flex__sb.company-work a dl dt {
    width: 72.9166666667%;
  }
  body#top main section#btn-section .inner .people {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 10px;
  }
  body#top main section#btn-section .inner .people .c-flex__sb {
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#top main section#btn-section .inner .people .c-flex__sb a {
    width: 93.75%;
    margin: 0 auto;
    padding-bottom: 0;
  }
  body#top main section#btn-section .inner .people .c-flex__sb a img {
    padding-bottom: 5px;
  }
  body#top main section#btn-section .inner .people a.textbtn {
    width: 93.75%;
    margin: 0 auto;
    margin-bottom: 12px;
  }
  body#top main section#btn-section .inner .people a.textbtn dl {
    width: 60%;
    margin: 0 auto;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
    margin-left: 0px;
    margin-top: 5px;
    padding-bottom: 10px;
  }
  body#top main section#btn-section .inner .people a.textbtn dl dt {
    width: 72.9166666667%;
  }
  body#top
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description {
    padding-bottom: 60px;
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#top
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a {
    width: 93.75%;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  body#top
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a
    dl {
    width: 64%;
    margin: 0 auto;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
    margin-left: 0px;
    margin-top: 5px;
    padding-bottom: 10px;
  }
  body#top
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a
    dl
    dt {
    width: 72.9166666667%;
  }
  body#top main section#contact {
    padding: 55px 0 80px 0;
  }
  body#top main section#contact .inner {
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
  }
  body#top main section#contact .inner h3 span.jp {
    padding-bottom: 15px;
  }
  body#top main section#contact .inner p.text {
    padding-bottom: 20px;
  }
  body#top main section#contact .inner p.btn {
    width: 87.5%;
  }
  body#top main section#contact .inner p.btn a {
    width: 100%;
    border-radius: 50px;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 95%;
    background-repeat: no-repeat;
    background-size: 35px;
  }
}
body#company {
  background-image: url("../img/company/mv.webp");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100vh;
}
body#company main section#greeting {
  background-color: #fff;
  padding-top: 100px;
  margin-bottom: 300px;
}
body#company main section#greeting .inner.c-flex__sb {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#company main section#greeting .inner.c-flex__sb .text-container {
  width: 47.4528301887%;
}
body#company main section#greeting .inner.c-flex__sb .text-container h2 {
  color: #14327d;
  padding-bottom: 50px;
}
body#company main section#greeting .inner.c-flex__sb .text-container p.text {
  color: #14327d;
  padding-bottom: 135px;
}
body#company
  main
  section#greeting
  .inner.c-flex__sb
  .text-container
  p.text
  span {
  display: block;
  padding-bottom: 25px;
}
body#company main section#greeting .inner.c-flex__sb dl.img-container {
  width: 46.2264150943%;
}
body#company main section#greeting .inner.c-flex__sb dl.img-container dt {
  padding-top: 140px;
}
body#company main section#greeting .inner.c-flex__sb dl.img-container dd {
  padding-top: 20px;
  text-align: end;
  color: #14327d;
}
body#company main section#greeting .inner.c-flex__sb dl.img-container dd span {
  padding-left: 15px;
}
body#company main section#philosophy {
  background-color: #f4f9ff;
  margin-bottom: 300px;
}
body#company main section#philosophy .inner {
  padding: 75px 0 115px 0;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#company main section#philosophy .inner h2 {
  color: #14327d;
  padding-bottom: 10px;
}
body#company main section#philosophy .inner strong {
  display: block;
  color: #1e7fff;
  padding-bottom: 40px;
}
body#company
  main
  section#philosophy
  .inner
  .philosophy-container
  dl.c-flex__sb {
  padding: 35px 0;
  background-color: #fff;
  margin-bottom: 5px;
  border-radius: 20px;
  width: 100%;
}
body#company
  main
  section#philosophy
  .inner
  .philosophy-container
  dl.c-flex__sb
  dt {
  width: 20.2830188679%;
  padding-left: 35px;
  color: #14327d;
}
body#company
  main
  section#philosophy
  .inner
  .philosophy-container
  dl.c-flex__sb
  dt.vertical {
  padding-top: 15px;
}
body#company
  main
  section#philosophy
  .inner
  .philosophy-container
  dl.c-flex__sb
  dd {
  width: 75.9433962264%;
  color: #14327d;
}
body#company
  main
  section#philosophy
  .inner
  .philosophy-container
  dl.c-flex__sb
  dd
  span {
  color: #1e7fff;
}
body#company main section#overview,
body#company main section#history {
  background-color: #fff;
  margin-bottom: 300px;
}
body#company main section#overview .inner,
body#company main section#history .inner {
  padding-top: 75px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#company main section#overview .inner h2,
body#company main section#history .inner h2 {
  color: #14327d;
}
body#company main section#overview .inner .container,
body#company main section#history .inner .container {
  padding-left: 155px;
  width: 85.3773584906%;
}
body#company main section#overview .inner .container dl.c-flex__sb,
body#company main section#history .inner .container dl.c-flex__sb {
  flex-wrap: wrap;
  width: 100%;
}
body#company main section#overview .inner .container dl.c-flex__sb dt,
body#company main section#history .inner .container dl.c-flex__sb dt {
  padding: 35px 0;
  width: 17.679558011%;
  border-bottom: solid 1px #d2e5ff;
  color: #14327d;
}
body#company main section#overview .inner .container dl.c-flex__sb dd,
body#company main section#history .inner .container dl.c-flex__sb dd {
  color: #14327d;
  padding: 35px 0;
  width: 82.320441989%;
  border-bottom: solid 1px #d2e5ff;
}
body#company main section#overview .inner .container dl.c-flex__sb dd iframe,
body#company main section#history .inner .container dl.c-flex__sb dd iframe {
  margin-top: 30px;
  width: 100%;
  border-radius: 20px;
  height: 430px;
}
body#company main section#overview .inner .container dl.c-flex__sb dt.last,
body#company main section#history .inner .container dl.c-flex__sb dt.last {
  border: none;
}
body#company main section#overview .inner .container dl.c-flex__sb dd.last,
body#company main section#history .inner .container dl.c-flex__sb dd.last {
  border: none;
}
body#company main section#overview .inner {
  padding-bottom: 60px;
}
body#company main section#history .inner {
  padding-bottom: 120px;
}
body#company main section#iso {
  z-index: -20;
  background-color: #fff;
}
body#company main section#iso .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  padding: 30px 0 70px 0;
}

body#company main section#iso .inner h2 {
  color: #14327d;
  padding-top: 30px;
  padding-bottom: 50px;
}

body#company main section#iso .inner h2.p {
  color: #14327d;
  padding-top: 30px;
  padding-bottom: 100px;
}

@media screen and (max-width: 767px) {
  body#company main section#iso .inner h2.p {
    padding-bottom: 80px;
  }
}

body#company main section#iso .inner .container {
  position: relative;
  padding-left: 155px;
  width: 85.3773584906%;
}
body#company main section#iso .inner .container h3 {
  color: #14327d;
  padding-bottom: 40px;
  border-bottom: solid 1px #d2e5ff;
}
body#company main section#iso .inner .container h3.one {
  padding-top: 20px;
  background-image: url(../img/company/mark01.png);
  background-repeat: no-repeat;
  background-position: 100%;
  background-size: 88px;
}
body#company main section#iso .inner .container h3.two {
  padding-top: 20px;
  background-image: url(../img/company/mark02.png);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: 88px;
}
body#company main section#iso .inner .container dl.c-flex__sb {
  padding-bottom: 45px;
  flex-wrap: wrap;
  width: 100%;
}
body#company main section#iso .inner .container dl.c-flex__sb dt {
  padding: 35px 0;
  width: 17.679558011%;
  border-bottom: solid 1px #d2e5ff;
  color: #14327d;
}
body#company main section#iso .inner .container dl.c-flex__sb dd {
  color: #14327d;
  padding: 35px 0;
  width: 82.320441989%;
  border-bottom: solid 1px #d2e5ff;
}
body#company main section#iso .inner .container dl.c-flex__sb dd iframe {
  margin-top: 30px;
  width: 100%;
  border-radius: 20px;
}
body#company main section#iso .inner .container dl.c-flex__sb dt.last {
  border: none;
}
body#company main section#iso .inner .container dl.c-flex__sb dd.last {
  border: none;
}
body#company main section#iso .inner .container dl.c-flex__sb.second {
  padding-bottom: 20px;
}
body#company main section#iso .inner .container h4 {
  color: #14327d;
  padding-bottom: 20px;
  border-bottom: solid 1px #d2e5ff;
  margin-bottom: 30px;
}
body#company main section#iso .inner .container p.text {
  color: #14327d;
}
body#company main section#iso .inner .container p.eruboshi {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 13.2596685083%;
  padding-left: 45px;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  body#company main section#greeting {
    padding-top: 50px;
    margin-bottom: 150px;
  }
  body#company main section#greeting .inner.c-flex__sb {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#company main section#greeting .inner.c-flex__sb .text-container {
    width: 100%;
  }
  body#company main section#greeting .inner.c-flex__sb .text-container h2 {
    padding-bottom: 25px;
  }
  body#company main section#greeting .inner.c-flex__sb .text-container p.text {
    padding-bottom: 20px;
  }
  body#company
    main
    section#greeting
    .inner.c-flex__sb
    .text-container
    p.text
    span {
    display: block;
    padding-bottom: 12px;
  }
  body#company main section#greeting .inner.c-flex__sb dl.img-container {
    width: 77.7777777778%;
    margin: 0 auto;
  }
  body#company main section#greeting .inner.c-flex__sb dl.img-container dt {
    padding-top: 20px;
  }
  body#company main section#greeting .inner.c-flex__sb dl.img-container dd {
    padding: 10px 0 50px 0;
  }
  body#company
    main
    section#greeting
    .inner.c-flex__sb
    dl.img-container
    dd
    span {
    padding-left: 7px;
  }
  body#company main section#philosophy {
    margin-bottom: 150px;
  }
  body#company main section#philosophy .inner {
    padding: 35px 0 55px 0;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#company main section#philosophy .inner h2 {
    padding-bottom: 5px;
  }
  body#company main section#philosophy .inner strong {
    padding-bottom: 20px;
  }
  body#company main section#philosophy .inner .philosophy-container {
    width: 100%;
    margin: 0 auto;
  }
  body#company
    main
    section#philosophy
    .inner
    .philosophy-container
    dl.c-flex__sb {
    flex-direction: column;
    padding: 15px 0;
    margin-bottom: 10px;
    border-radius: 10px;
    width: 100%;
  }
  body#company
    main
    section#philosophy
    .inner
    .philosophy-container
    dl.c-flex__sb
    dt {
    width: 88.8888888889%;
    margin: 0 auto;
    padding-left: 0px;
    text-align: center;
  }
  body#company
    main
    section#philosophy
    .inner
    .philosophy-container
    dl.c-flex__sb
    dt.vertical {
    padding-top: 0px;
  }
  body#company
    main
    section#philosophy
    .inner
    .philosophy-container
    dl.c-flex__sb
    dd {
    width: 88.8888888889%;
    margin: 0 auto;
  }
  body#company main section#overview,
  body#company main section#history {
    margin-bottom: 150px;
  }
  body#company main section#overview .inner,
  body#company main section#history .inner {
    padding-top: 35px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#company main section#overview .inner .container,
  body#company main section#history .inner .container {
    padding-left: 0px;
    width: 100%;
    margin: 0 auto;
  }
  body#company main section#overview .inner .container dl.c-flex__sb,
  body#company main section#history .inner .container dl.c-flex__sb {
    flex-wrap: wrap;
    width: 100%;
  }
  body#company main section#overview .inner .container dl.c-flex__sb dt,
  body#company main section#history .inner .container dl.c-flex__sb dt {
    padding: 20px 0;
    width: 22.2222222222%;
  }
  body#company main section#overview .inner .container dl.c-flex__sb dd,
  body#company main section#history .inner .container dl.c-flex__sb dd {
    padding: 20px 0;
    width: 77.7777777778%;
  }
  body#company main section#overview .inner .container dl.c-flex__sb dd iframe,
  body#company main section#history .inner .container dl.c-flex__sb dd iframe {
    margin-top: 30px;
    width: 100%;
    border-radius: 20px;
    height: 200px;
  }
  body#company main section#overview .inner {
    padding-bottom: 30px;
  }
  body#company main section#history .inner {
    padding-bottom: 60px;
  }
  body#company main section#iso .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    padding: 40px 0 70px 0;
  }

  body#company main section#iso .inner h2 {
    padding-bottom: 0px;
  }

  body#company main section#iso .inner .container {
    padding-left: 0px;
    width: 100%;
  }
  body#company main section#iso .inner .container h3 {
    padding-bottom: 20px;
  }
  body#company main section#iso .inner .container h3.one {
    padding-top: 10px;
    background-image: url(../img/company/mark01.png);
    background-repeat: no-repeat;
    background-position: 100% 10%;
    background-size: 60px;
    padding-bottom: 10px;
  }
  body#company main section#iso .inner .container h3.two {
    padding-top: 10px;
    background-image: url(../img/company/mark02.png);
    background-repeat: no-repeat;
    background-position: 100% 65%;
    background-size: 60px;
    margin-bottom: 0px;
    padding-bottom: 10px;
  }
  
  body#company main section#iso .inner .container dl.c-flex__sb {
    padding-bottom: 25px;
    flex-wrap: wrap;
    width: 100%;
  }
  body#company main section#iso .inner .container dl.c-flex__sb dt {
    padding: 15px 0;
    width: 30%;
  }
  body#company main section#iso .inner .container dl.c-flex__sb dd {
    padding: 15px 0;
    width: 70%;
  }
  body#company main section#iso .inner .container dl.c-flex__sb.second {
    padding-bottom: 25px;
  }
  body#company main section#iso .inner .container h4 {
    padding-bottom: 10px;
    margin-bottom: 15px;
  }
  body#company main section#iso .inner .container p.text {
    width: 72.2222222222%;
  }
  body#company main section#iso .inner .container p.eruboshi {
    width: 22.2222222222%;
    padding-left: 20px;
    position: absolute;
    bottom: 50px;
    right: 0;
  }
  body#company::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../img/company/mv.webp);
    background-size: cover;
  }
}
body#contactus main section#contact-about .inner {
  padding-top: 200px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  margin-bottom: 95px;
}
body#contactus main section#contact-about .inner h1 span.en {
  color: #14327d;
}
body#contactus main section#contact-about .inner h1 span.jp {
  color: #1e7fff;
  display: block;
  padding-bottom: 110px;
}
body#contactus main section#contact-about .inner h2 {
  color: #14327d;
  padding-bottom: 35px;
}
body#contactus main section#contact-about .inner p.text {
  color: #14327d;
  padding-bottom: 35px;
}
body#contactus main section#contact-about .inner .container {
  width: 100%;
  margin: 0 auto;
}
body#contactus main section#contact-about .inner .container ul.c-flex__sb {
  width: 98.1132075472%;
  padding: 10px;
  margin: 0 auto;
  background-color: #f4f9ff;
}
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.tel,
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.mail {
  width: 48.5849056604%;
  margin: 0 auto;
  padding-bottom: 35px;
}
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.tel
  dl
  dt,
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.mail
  dl
  dt {
  color: #fff;
  background-color: #1e7fff;
  text-align: center;
  margin-bottom: 20px;
}
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.tel
  dl
  dd,
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.mail
  dl
  dd {
  text-align: center;
  color: #14327d;
}
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.tel
  dl
  dd
  small,
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.mail
  dl
  dd
  small {
  display: block;
}
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.tel {
  border-right: solid 1px #14327d;
  padding-right: 10px;
}
body#contactus
  main
  section#contact-about
  .inner
  .container
  ul.c-flex__sb
  li.mail
  dl
  dt {
  margin-bottom: 40px;
}
body#contactus main section#form {
  background-color: #f4f9ff;
}
body#contactus main section#form .inner {
  padding-top: 70px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#contactus main section#form .inner h2 {
  color: #14327d;
  padding-bottom: 80px;
}
body#contactus main section#form .inner form {
  width: 100%;
  padding-bottom: 55px;
}
body#contactus main section#form .inner form .form-container {
  border-top: solid 1px #d2e5ff;
  width: 100%;
}
body#contactus main section#form .inner form .form-container .c-flex__sb {
  padding: 20px 0;
  border-bottom: solid 1px #d2e5ff;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  label.title {
  width: 31.1320754717%;
  color: #14327d;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  label.title
  span {
  color: #1e7fff;
}
body#contactus main section#form .inner form .form-container .c-flex__sb div {
  width: 100%;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  input.form-inner {
  width: 100%;
  border: solid 1px #d2e5ff;
  height: 40px;
  padding-left: 10px;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  input::-moz-placeholder {
  color: #d0d6e5;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  input::placeholder {
  color: #d0d6e5;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex__sb
  textarea {
  width: 100%;
  border: solid 1px #d2e5ff;
  height: 230px;
  padding: 10px;
}
body#contactus main section#form .inner form .form-container .c-flex.top {
  padding: 20px 0 5px 0;
  border-bottom: solid 1px #d2e5ff;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  label.title {
  width: 23.5849056604%;
  color: #14327d;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  label.title
  span {
  color: #1e7fff;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  .button {
  width: 68.8679245283%;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  .button
  label.form-inner {
  color: #14327d;
  width: 100%;
  display: block;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  .button
  label.form-inner
  input {
  margin-bottom: 10px;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  .button
  label.form-inner
  input[type="radio"] {
  position: relative;
  width: 40px;
  height: 40px;
  border: 1px solid #d2e5ff;
  border-radius: 50%;
  background-color: #fff;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
body#contactus
  main
  section#form
  .inner
  form
  .form-container
  .c-flex.top
  .button
  label.form-inner
  input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #000;
  content: "";
}
body#contactus main section#form .inner button.send {
  display: block;
  width: 39.6226415094%;
  color: #fff;
  background-color: #0050c8;
  border: none;
  margin: 0 auto;
  margin-top: 55px;
  border-radius: 50px;
  background-image: url(../img/common/link-arrow.svg);
  background-repeat: no-repeat;
  background-size: 42px;
  background-position: 95%;
}
body#contactus main section#form .inner button.send:hover,
#confirmBtn:hover,
.btn-submit:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  body#contactus main section#contact-about .inner {
    padding-top: 70px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    margin-bottom: 45px;
  }
  body#contactus main section#contact-about .inner h1 span.jp {
    padding-bottom: 55px;
  }
  body#contactus main section#contact-about .inner h2 {
    padding-bottom: 15px;
  }
  body#contactus main section#contact-about .inner p.text {
    padding-bottom: 15px;
  }
  body#contactus main section#contact-about .inner .container {
    width: 100%;
    margin: 0 auto;
  }
  body#contactus main section#contact-about .inner .container ul.c-flex__sb {
    flex-direction: column;
    width: 100%;
    padding: 0px;
    margin: 0 auto;
  }
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul.c-flex__sb
    li.tel,
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul.c-flex__sb
    li.mail {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 15px;
  }
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul.c-flex__sb
    li.tel
    dl
    dt,
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul.c-flex__sb
    li.mail
    dl
    dt {
    margin-bottom: 10px;
  }
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul.c-flex__sb
    li.tel {
    border: none;
    padding-right: 0px;
  }
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul.c-flex__sb
    li.mail
    dl
    dt {
    margin-bottom: 20px;
  }
  body#contactus
    main
    section#contact-about
    .inner
    .container
    ul.c-flex__sb
    li.mail
    dl
    dd {
    padding-bottom: 20px;
  }
  body#contactus main section#form .inner {
    padding-top: 35px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#contactus main section#form .inner h2 {
    padding-bottom: 40px;
  }
  body#contactus main section#form .inner form {
    width: 100%;
    padding-bottom: 25px;
  }
  body#contactus main section#form .inner form .form-container {
    width: 100%;
    margin: 0 auto;
  }
  body#contactus main section#form .inner form .form-container .c-flex__sb {
    padding: 10px 0;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    label.title {
    width: 33.3333333333%;
    color: #14327d;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    label.title
    span {
    color: #1e7fff;
  }
  body#contactus main section#form .inner form .form-container .c-flex__sb div {
    width: 100%;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    input.form-inner {
    width: 66.6666666667%;
    border: solid 1px #d2e5ff;
    height: 25px;
    padding-left: 5px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    input.form-inner.intext {
    padding-left: 5px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    input::-moz-placeholder {
    color: #d0d6e5;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    input::placeholder {
    color: #d0d6e5;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex__sb
    textarea {
    width: 66.6666666667%;
    border: solid 1px #d2e5ff;
    height: 115px;
    padding: 5px;
  }
  body#contactus main section#form .inner form .form-container .c-flex.top {
    padding: 20px 0 5px 0;
    border-bottom: solid 1px #d2e5ff;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    label.title {
    width: 33.3333333333%;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    .button {
    width: 66.6666666667%;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    .button
    label.form-inner {
    width: 100%;
    display: block;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    .button
    label.form-inner
    input {
    margin-bottom: 5px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    .button
    label.form-inner
    input[type="radio"] {
    position: relative;
    width: 20px;
    height: 20px;
  }
  body#contactus
    main
    section#form
    .inner
    form
    .form-container
    .c-flex.top
    .button
    label.form-inner
    input[type="radio"]:checked:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
  }
  body#contactus main section#form .inner button.send,
  #confirmBtn {
    width: 55.5555555556%;
    margin: 0 auto;
    margin-top: 25px;
    background-image: url(../img/common/link-arrow.svg);
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: 95%;
  }
}
/*-----------------
recruit_index
-----------------*/
body#recruit-index main section#btn-section {
  background-color: #fff;
}
body#recruit-index main section#btn-section .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#recruit-index main section#btn-section .inner .c-flex__sb.company-work {
  width: 100%;
  padding-bottom: 50px;
}
body#recruit-index main section#btn-section .inner .c-flex__sb.company-work a {
  display: block;
  width: 48.1132075472%;
  text-decoration: none;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  p.img
  img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  dl {
  width: 45.0980392157%;
  background-image: url(../img/common/link-arrow.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 42px;
  margin-left: 25px;
  margin-top: 25px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  dl
  dt {
  color: #14327d;
  border-bottom: solid 1px #14327d;
  width: 75.2173913043%;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a
  dl
  dd {
  color: #1e7fff;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.company-work
  a:hover {
  opacity: 0.8;
}
body#recruit-index main section#btn-section .inner .people {
  width: 100%;
}
body#recruit-index main section#btn-section .inner .people .c-flex__sb {
  width: 100%;
  flex-wrap: wrap;
}
body#recruit-index main section#btn-section .inner .people .c-flex__sb a {
  width: 49.0566037736%;
  padding-bottom: 15px;
}
body#recruit-index main section#btn-section .inner .people .c-flex__sb a p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .people
  .c-flex__sb
  a
  p.img
  img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .people
  .c-flex__sb
  a
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#recruit-index main section#btn-section .inner .people .c-flex__sb a:hover {
  opacity: 0.8;
}
body#recruit-index main section#btn-section .inner .people a.textbtn {
  display: block;
  width: 100%;
  text-decoration: none;
  margin-bottom: 48px;
}
body#recruit-index main section#btn-section .inner .people a.textbtn dl {
  width: 21.6981132075%;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 42px;
  margin-left: 25px;
}
body#recruit-index main section#btn-section .inner .people a.textbtn dl dt {
  color: #14327d;
  border-bottom: solid 1px #14327d;
  width: 75.2173913043%;
}
body#recruit-index main section#btn-section .inner .people a.textbtn dl dd {
  color: #1e7fff;
}
body#recruit-index main section#btn-section .inner .people a.textbtn:hover {
  opacity: 0.8;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description {
  padding-bottom: 225px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a {
  display: block;
  width: 30.1886792453%;
  text-decoration: none;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  p.img
  img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl {
  width: 71.875%;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 42px;
  margin-left: 25px;
  margin-top: 25px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl
  dt {
  color: #14327d;
  border-bottom: solid 1px #14327d;
  width: 80%;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a
  dl
  dd {
  color: #1e7fff;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on
  p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on
  p.img
  img {
  transition: 0.5s all;
  border-radius: 30px;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a.on:hover {
  opacity: 0.8;
}
body#recruit-index
  main
  section#btn-section
  .inner
  .c-flex__sb.life-welfare-description
  a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  /*-----------------
  recruit_index
  -----------------*/
  body#recruit-index main section#btn-section .inner {
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
    padding-top: 60px;
  }
  body#recruit-index main section#btn-section .inner .c-flex__sb.company-work {
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 25px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.company-work
    a {
    width: 93.75%;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.company-work
    a
    dl {
    width: 64%;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
    margin-left: 10px;
    margin-top: 5px;
    padding-bottom: 10px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.company-work
    a
    dl
    dt {
    width: 72.9166666667%;
  }
  body#recruit-index main section#btn-section .inner .people {
    width: 100%;
    margin: 0 auto;
  }
  body#recruit-index main section#btn-section .inner .people .c-flex__sb {
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
  }
  body#recruit-index main section#btn-section .inner .people .c-flex__sb a {
    width: 93.75%;
    margin: 0 auto;
    padding-bottom: 7px;
  }
  body#recruit-index main section#btn-section .inner .people a.sp-none {
    display: none;
  }
  body#recruit-index main section#btn-section .inner .people a.textbtn {
    width: 93.75%;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  body#recruit-index main section#btn-section .inner .people a.textbtn dl {
    width: 64%;
    margin: 0 auto;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
    margin-left: 0px;
    margin-top: 5px;
    padding-bottom: 10px;
  }
  body#recruit-index main section#btn-section .inner .people a.textbtn dl dt {
    width: 72.9166666667%;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description {
    padding-bottom: 60px;
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a {
    width: 93.75%;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a
    dl {
    width: 64%;
    margin: 0 auto;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 35px;
    margin-left: 0px;
    margin-top: 5px;
    padding-bottom: 10px;
  }
  body#recruit-index
    main
    section#btn-section
    .inner
    .c-flex__sb.life-welfare-description
    a
    dl
    dt {
    width: 72.9166666667%;
  }
}
/*------------------
募集要項 jobdescription
-------------------*/
body#jobdescription main section#personality {
  background-color: #fff;
  padding: 110px 0 150px 0;
  margin-bottom: 300px;
}
body#jobdescription main section#personality .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#jobdescription main section#personality .inner h2 {
  color: #14327d;
  padding-bottom: 25px;
}
body#jobdescription main section#personality .inner p.text {
  color: #14327d;
  padding-bottom: 95px;
}
body#jobdescription main section#personality .inner .container {
  background-color: #ddecff;
  border-radius: 40px;
  padding: 30px 0 25px 0;
  width: 100%;
}
body#jobdescription main section#personality .inner .container .c-flex__sb {
  width: 92.4528301887%;
  margin: 0 auto;
}
body#jobdescription main section#personality .inner .container .c-flex__sb ul {
  padding-top: 20px;
  width: 53.3673469388%;
}
body#jobdescription
  main
  section#personality
  .inner
  .container
  .c-flex__sb
  ul
  li {
  color: #14327d;
}
body#jobdescription
  main
  section#personality
  .inner
  .container
  .c-flex__sb
  ul
  li
  span {
  color: #1e7fff;
}
body#jobdescription
  main
  section#personality
  .inner
  .container
  .c-flex__sb
  p.img {
  width: 41.8367346939%;
}
body#jobdescription main section#newgraduate {
  background-color: #f4f9ff;
  padding: 80px 0 140px 0;
}
body#jobdescription main section#newgraduate .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#jobdescription main section#newgraduate .inner h2 {
  color: #14327d;
  padding-bottom: 60px;
}
body#jobdescription main section#newgraduate .inner .container {
  width: 100%;
  padding-left: 155px;
}
body#jobdescription main section#newgraduate .inner .container p.text {
  padding-bottom: 25px;
  color: #14327d;
}
body#jobdescription main section#newgraduate .inner .container p.banner {
  width: 70.7547169811%;
}
body#jobdescription
  main
  section#newgraduate
  .inner
  .container
  p.banner
  a:hover {
  opacity: 0.8;
}
body#jobdescription main section#halfway {
  background-color: #f4f9ff;
}
body#jobdescription main section#halfway .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  padding-bottom: 130px;
}
body#jobdescription main section#halfway .inner h2 {
  color: #14327d;
  padding-bottom: 60px;
}
body#jobdescription main section#halfway .inner h3 {
  color: #1e7fff;
  width: 85.3773584906%;
  margin: 0 auto;
  border-bottom: 1px solid #14327d;
  padding-bottom: 10px;
  margin-bottom: 25px;
}
body#jobdescription main section#halfway .inner .container {
  width: 85.3773584906%;
  margin: 0 auto;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir {
  color: #14327d;
  flex-wrap: wrap;
  width: 100%;
  padding-bottom: 60px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dt {
  width: 25.4143646409%;
  padding: 35px 0 45px 0;
  border-bottom: solid 1px #d2e5ff;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dd {
  width: 74.5856353591%;
  padding: 35px 0 45px 0;
  border-bottom: solid 1px #d2e5ff;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dd
  span {
  display: block;
}
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dt.last,
body#jobdescription
  main
  section#halfway
  .inner
  .container
  dl.c-flex__sb.requir
  dd.last {
  border: none;
}
body#jobdescription main section#halfway .inner .btn {
  width: 83.4905660377%;
  margin: 0 auto;
  background-color: #1e7fff;
  color: #fff;
  padding-left: 20px;
  background-image: url(../img/recruit/jobdescription/plus.svg);
  background-size: 20px;
  background-position: 98%;
  background-repeat: no-repeat;
  margin-bottom: 10px;
  cursor: pointer;
}
body#jobdescription main section#halfway .inner .btn.open {
  background-image: url(../img/recruit/jobdescription/minus.svg);
  background-size: 20px;
  background-position: 98%;
  background-repeat: no-repeat;
  margin-bottom: 10px;
}
body#jobdescription main section#halfway .inner .btn-inner {
  width: 85.3773584906%;
  margin: 0 auto;
  color: #14327d;
  display: none;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb {
  flex-wrap: wrap;
  width: 100%;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dt {
  width: 24.861878453%;
  padding: 40px 0;
  border-top: solid 1px #d2e5ff;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd {
  display: block;
  width: 74.5856353591%;
  padding: 40px 0;
  border-top: solid 1px #d2e5ff;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd
  span {
  color: #1e7fff;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd
  span.indent {
  width: 1.3259668508%;
  text-indent: -16px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd
  div.indent {
  width: 97.6296296296%;
  text-indent: -16px;
  padding-left: 16px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd
  div.pa-b {
  padding-bottom: 25px;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd
  span.block {
  display: block;
  color: #14327d;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd
  span.block-b {
  display: block;
}
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dt.border-none,
body#jobdescription
  main
  section#halfway
  .inner
  .btn-inner
  dl.container.c-flex__sb
  dd.border-none {
  border: none;
}
body#jobdescription main section#student-message {
  background-color: #fff;
}
body#jobdescription main section#student-message .inner {
  padding: 70px 0 120px 0;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#jobdescription main section#student-message .inner h2 {
  color: #14327d;
}
body#jobdescription main section#student-message .inner p.text {
  color: #14327d;
  padding-bottom: 60px;
  border-bottom: solid 1px #bbd9ff;
}
body#jobdescription main section#student-message .inner ul {
  padding: 35px 0;
  border-bottom: solid 1px #bbd9ff;
  margin-bottom: 70px;
}
body#jobdescription main section#student-message .inner ul li {
  color: #14327d;
}
body#jobdescription main section#student-message .inner ul li span {
  color: #1e7fff;
}
body#jobdescription main section#student-message .inner p.entry {
  width: 39.6226415094%;
}
body#jobdescription main section#student-message .inner p.entry a {
  width: 100%;
  text-decoration: none;
  color: #fff;
  background-color: #0050c8;
  text-align: center;
  display: block;
  border-radius: 50px;
  background-image: url(../img/common/link-arrow.svg);
  background-repeat: no-repeat;
  background-size: 42px;
  background-position: 95%;
}
body#jobdescription main section#student-message .inner p.entry a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  /*-----------------
  jobdescription
  -----------------*/
  body#jobdescription main section#personality {
    padding: 55px 0 75px 0;
    margin-bottom: 150px;
  }
  body#jobdescription main section#personality .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#jobdescription main section#personality .inner h2 {
    padding-bottom: 15px;
  }
  body#jobdescription main section#personality .inner p.text {
    padding-bottom: 45px;
  }
  body#jobdescription main section#personality .inner .container {
    border-radius: 20px;
    padding: 15px 0 12px 0;
    width: 100%;
  }
  body#jobdescription main section#personality .inner .container .c-flex__sb {
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
  }
  body#jobdescription
    main
    section#personality
    .inner
    .container
    .c-flex__sb
    ul {
    padding: 10px 0 30px 0;
    width: 83.3333333333%;
    margin: 0 auto;
  }
  body#jobdescription
    main
    section#personality
    .inner
    .container
    .c-flex__sb
    ul
    li {
    text-indent: -15px;
    padding-left: 15px;
  }
  body#jobdescription
    main
    section#personality
    .inner
    .container
    .c-flex__sb
    p.img {
    width: 83.3333333333%;
    margin: 0 auto;
  }
  body#jobdescription main section#newgraduate {
    padding: 40px 0 70px 0;
  }
  body#jobdescription main section#newgraduate .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#jobdescription main section#newgraduate .inner h2 {
    padding-bottom: 30px;
  }
  body#jobdescription main section#newgraduate .inner .container {
    width: 100%;
    padding-left: 0px;
  }
  body#jobdescription main section#newgraduate .inner .container p.text {
    padding-bottom: 12px;
  }
  body#jobdescription main section#newgraduate .inner .container p.banner {
    width: 88.8888888889%;
    margin: 0 auto;
  }
  body#jobdescription main section#halfway {
    margin-bottom: 150px;
  }
  body#jobdescription main section#halfway .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    padding-bottom: 65px;
  }
  body#jobdescription main section#halfway .inner h2 {
    padding-bottom: 30px;
  }
  body#jobdescription main section#halfway .inner h3 {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 5px;
    margin-bottom: 12px;
  }
  body#jobdescription main section#halfway .inner .container {
    width: 100%;
    margin: 0 auto;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .container
    dl.c-flex__sb.requir {
    width: 100%;
    padding-bottom: 30px;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .container
    dl.c-flex__sb.requir
    dt {
    width: 27.7777777778%;
    padding: 15px 0 20px 0;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .container
    dl.c-flex__sb.requir
    dd {
    width: 72.2222222222%;
    padding: 15px 0 20px 0;
  }
  body#jobdescription main section#halfway .inner .btn {
    width: 96.6666666667%;
    margin: 0 auto;
    padding-left: 10px;
    background-image: url(../img/recruit/jobdescription/plus.svg);
    background-size: 15px;
    background-position: 98%;
    background-repeat: no-repeat;
    margin-bottom: 10px;
  }
  body#jobdescription main section#halfway .inner .btn.open {
    background-image: url(../img/recruit/jobdescription/minus.svg);
    background-size: 15px;
    background-position: 98%;
    background-repeat: no-repeat;
    margin-bottom: 10px;
  }
  body#jobdescription main section#halfway .inner .btn-inner {
    width: 100%;
    margin: 0 auto;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .btn-inner
    dl.container.c-flex__sb {
    width: 100%;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .btn-inner
    dl.container.c-flex__sb
    dt {
    width: 33.3333333333%;
    padding: 20px 0;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .btn-inner
    dl.container.c-flex__sb
    dd {
    width: 64.4444444444%;
    padding: 20px 0;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .btn-inner
    dl.container.c-flex__sb
    dd
    div.indent {
    width: 100%;
    text-indent: -12px;
    padding-left: 12px;
  }
  body#jobdescription
    main
    section#halfway
    .inner
    .btn-inner
    dl.container.c-flex__sb
    dd
    div.pa-b {
    padding-bottom: 15px;
  }
  body#jobdescription main section#student-message .inner {
    padding: 35px 0 60px 0;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#jobdescription main section#student-message .inner p.text {
    padding-bottom: 30px;
  }
  body#jobdescription main section#student-message .inner ul {
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
    margin-bottom: 35px;
  }
  body#jobdescription main section#student-message .inner ul li {
    text-indent: -18px;
    padding-left: 18px;
  }
  body#jobdescription main section#student-message .inner p.entry {
    width: 72.2222222222%;
  }
  body#jobdescription main section#student-message .inner p.entry a {
    width: 100%;
    background-image: url(../img/common/link-arrow.svg);
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: 96%;
  }
}
/*-----------------
about
-----------------*/
body#about main section#intro {
  background-color: #fff;
}
body#about main section#intro .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#about main section#intro .inner h2 {
  color: #14327d;
  padding: 110px 0 40px 0;
}
body#about main section#intro .inner p.text {
  color: #14327d;
  padding-bottom: 150px;
}
body#about main section.strong {
  background-color: #f4f9ff;
}
body#about main section.strong .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#about main section.strong .inner .c-flex {
  width: 40.0943396226%;
}
body#about main section.strong .inner .c-flex dl {
  width: 21.1764705882%;
}
body#about main section.strong .inner .c-flex dl dt {
  color: #1e7fff;
}
body#about main section.strong .inner .c-flex dl dd {
  color: #14327d;
}
body#about main section.strong .inner .c-flex h3 {
  border-left: solid 1px #14327d;
  margin-top: 5px;
  width: 78.8235294118%;
  padding-left: 35px;
  margin-bottom: 60px;
  color: #1e7fff;
}
body#about main section.strong .inner .c-flex__sb {
  width: 100%;
}
body#about main section.strong .inner .c-flex__sb p.img {
  width: 46.2264150943%;
}
body#about main section.strong .inner .c-flex__sb .text-container {
  width: 47.1698113208%;
}
body#about main section.strong .inner .c-flex__sb .text-container p.circle {
  width: 94%;
  padding: 35px 0 35px 30px;
  color: #14327d;
  border-bottom: solid 1px #b8c1d8;
  position: relative;
}
body#about
  main
  section.strong
  .inner
  .c-flex__sb
  .text-container
  p.circle::before {
  content: "";
  display: block;
  position: absolute;
  top: 45%;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #1e7fff;
  border-radius: 50%;
}
body#about
  main
  section.strong
  .inner
  .c-flex__sb
  .text-container
  p.circle:nth-child(1) {
  padding: 0 0 25px 30px;
}
body#about
  main
  section.strong
  .inner
  .c-flex__sb
  .text-container
  p.circle:nth-child(1)::before {
  content: "";
  display: block;
  position: absolute;
  top: 35%;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #1e7fff;
  border-radius: 50%;
}
body#about main section#strong01 {
  padding-top: 60px;
}
body#about main section#strong01 .inner .c-flex__sb {
  flex-direction: row-reverse;
  padding-bottom: 35px;
}
body#about main section#strong01 .inner p.text {
  padding-bottom: 90px;
  color: #14327d;
}
body#about main section#strong02 .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#about main section#strong02 .inner .c-flex {
  width: 47.1698113208%;
  margin-right: 0;
  margin-left: auto;
}
body#about main section#strong02 .inner .c-flex dl {
  width: 18%;
  margin-top: -15px;
}
body#about main section#strong02 .inner .c-flex h3.two {
  width: 82%;
  border: none;
  border-left: solid 1px #14327d;
  margin-top: 0px;
  padding-left: 35px;
  padding: 0px 0 0 35px;
}
body#about main section#strong02 .inner .c-flex__sb {
  width: 100%;
  padding-bottom: 140px;
}
body#about main section#strong03 {
  margin-bottom: 300px;
}
body#about main section#strong03 .inner h3 {
  padding: 30px 0 30px 35px;
}
body#about main section#strong03 .inner .c-flex__sb {
  flex-direction: row-reverse;
  padding-bottom: 125px;
}
body#about main section#strong03 .inner .c-flex__sb .text-container {
  padding-top: 30px;
}
body#about main section#number {
  background-color: #fff;
}
body#about main section#number .inner {
  padding-bottom: 135px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#about main section#number .inner h2 {
  padding-top: 110px;
  padding-bottom: 50px;
  color: #14327d;
}
body#about main section#number .inner p.circle {
  color: #14327d;
  position: relative;
  padding-left: 20px;
  padding-bottom: 55px;
  border-bottom: solid 1px #14327d;
}
body#about main section#number .inner p.circle::before {
  content: "";
  display: block;
  position: absolute;
  top: 30%;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #1e7fff;
  border-radius: 50%;
}
body#about main section#number .inner .c-flex__sb {
  width: 100%;
  flex-wrap: wrap;
  border-bottom: solid 1px #14327d;
}
body#about main section#number .inner .c-flex__sb .box {
  width: 49.5283018868%;
  text-align: center;
  position: relative;
}
body#about main section#number .inner .c-flex__sb .box dl.none {
  border: none;
}
body#about main section#number .inner .c-flex__sb .box dl {
  width: 99.0476190476%;
  margin: 0 auto;
  border-bottom: solid 1px #b8c1d8;
  height: 250px;
}
body#about main section#number .inner .c-flex__sb .box dl dt {
  color: #14327d;
  padding-bottom: 30px;
}
body#about main section#number .inner .c-flex__sb .box dl dd.big {
  color: #14327d;
  padding-bottom: 0px;
}
body#about main section#number .inner .c-flex__sb .box dl dd.big strong {
  color: #1e7fff;
}
body#about main section#number .inner .c-flex__sb .box dl dd.img {
  width: 23.5294117647%;
  margin: 0 auto;
}
body#about main section#number .inner .c-flex__sb .box dl dd.small {
  color: #14327d;
}
body#about main section#number .inner .c-flex__sb .box dl.imgin {
  width: 97.1428571429%;
  margin: 0 auto;
  position: relative;
}
body#about main section#number .inner .c-flex__sb .box dl.imgin dt {
  padding: 0;
}
body#about main section#number .inner .c-flex__sb .box dl.imgin dd.ing {
  width: 23.5294117647%;
}
body#about
  main
  section#number
  .inner
  .c-flex__sb
  .box
  dl.imgin
  dd.big.c-flex__sb {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: absolute;
  top: 50px;
  left: 0px;
  border: none;
}
body#about
  main
  section#number
  .inner
  .c-flex__sb
  .box
  dl.imgin
  dd.big.c-flex__sb
  div {
  width: 44.1176470588%;
  text-align: center;
}
body#about
  main
  section#number
  .inner
  .c-flex__sb
  .box
  dl.imgin
  dd.big.c-flex__sb
  div
  span {
  display: block;
  margin: 0 auto;
  text-align: center;
}
body#about
  main
  section#number
  .inner
  .c-flex__sb
  .box
  dl.imgin
  dd.big.c-flex__sb
  div
  strong {
  text-align: center;
}
body#about main section#number .inner .c-flex__sb .box.border::after {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  right: -5px;
  width: 0.5px;
  height: 220px;
  background-color: #b8c1d8;
}
body#about main section#number .inner .c-flex__sb.top {
  margin-bottom: 90px;
}

@media screen and (max-width: 767px) {
  body#about main section#intro .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#about main section#intro .inner h2 {
    padding: 55px 0 20px 0;
  }
  body#about main section#intro .inner p.text {
    padding-bottom: 75px;
  }
  body#about main section.strong .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#about main section.strong .inner .c-flex {
    width: 100%;
    margin: 0 auto;
  }
  body#about main section.strong .inner .c-flex dl {
    width: 16.6666666667%;
    margin: 0 auto;
  }
  body#about main section.strong .inner .c-flex h3 {
    width: 72.2222222222%;
    margin: 0 auto;
    padding-left: 15px;
    margin-bottom: 30px;
  }
  body#about main section.strong .inner .c-flex__sb {
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#about main section.strong .inner .c-flex__sb p.img {
    width: 88.8888888889%;
    margin: 0 auto;
    padding-bottom: 20px;
  }
  body#about main section.strong .inner .c-flex__sb .text-container {
    width: 94.4444444444%;
  }
  body#about main section.strong .inner .c-flex__sb .text-container p.circle {
    width: 100%;
    margin: 0 auto;
    padding: 15px 0 15px 15px;
    position: relative;
  }
  body#about
    main
    section.strong
    .inner
    .c-flex__sb
    .text-container
    p.circle::before {
    content: "";
    display: block;
    position: absolute;
    top: 45%;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
  }
  body#about
    main
    section.strong
    .inner
    .c-flex__sb
    .text-container
    p.circle:nth-child(1) {
    padding: 0 0 10px 15px;
  }
  body#about
    main
    section.strong
    .inner
    .c-flex__sb
    .text-container
    p.circle:nth-child(1)::before {
    content: "";
    display: block;
    position: absolute;
    top: 35%;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
  }
  body#about main section#strong01 {
    padding-top: 30px;
  }
  body#about main section#strong01 .inner .c-flex__sb {
    flex-direction: column;
    padding-bottom: 15px;
  }
  body#about main section#strong01 .inner p.text {
    padding-bottom: 45px;
  }
  body#about main section#strong02 .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#about main section#strong02 .inner .c-flex {
    width: 100%;
    margin: 0 auto;
  }
  body#about main section#strong02 .inner .c-flex dl {
    width: 16.6666666667%;
    margin: 0 auto;
    margin-top: -10px;
  }
  body#about main section#strong02 .inner .c-flex h3.two {
    width: 72.2222222222%;
    margin: 0 auto;
    padding-left: 15px;
    padding: 0px 0 0 15px;
    margin-bottom: 20px;
  }
  body#about main section#strong02 .inner .c-flex__sb {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 70px;
  }
  body#about main section#strong03 {
    margin-bottom: 150px;
  }
  body#about main section#strong03 .inner .c-flex dl {
    margin-top: -10px;
  }
  body#about main section#strong03 .inner h3 {
    padding: 15px 0 15px 15px;
  }
  body#about main section#strong03 .inner .c-flex__sb {
    flex-direction: column;
    padding-bottom: 60px;
  }
  body#about main section#strong03 .inner .c-flex__sb .text-container {
    padding-top: 15px;
  }
  body#about main section#number .inner {
    padding-bottom: 65px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#about main section#number .inner h2 {
    padding-top: 50px;
    padding-bottom: 25px;
  }
  body#about main section#number .inner p.circle {
    position: relative;
    padding-left: 20px;
    padding-bottom: 25px;
  }
  body#about main section#number .inner p.circle::before {
    content: "";
    display: block;
    position: absolute;
    top: 30%;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
  }
  body#about main section#number .inner .c-flex__sb {
    width: 100%;
    flex-direction: column;
  }
  body#about main section#number .inner .c-flex__sb .box {
    width: 100%;
    margin: 0 auto;
    position: relative;
  }
  body#about main section#number .inner .c-flex__sb .box dl.none {
    border-bottom: solid 1px #b8c1d8;
  }
  body#about main section#number .inner .c-flex__sb .box dl {
    height: 200px;
    padding-top: 20px;
    width: 100%;
    margin: 0 auto;
  }
  body#about main section#number .inner .c-flex__sb .box dl dt {
    padding-bottom: 15px;
  }
  body#about main section#number .inner .c-flex__sb .box dl dd.img {
    width: 27.7777777778%;
    margin: 0 auto;
  }
  body#about main section#number .inner .c-flex__sb .box dl.imgin {
    width: 100%;
    margin: 0 auto;
    position: relative;
  }
  body#about main section#number .inner .c-flex__sb .box dl.imgin dt {
    padding: 0;
  }
  body#about
    main
    section#number
    .inner
    .c-flex__sb
    .box
    dl.imgin
    dd.big.c-flex__sb {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    position: absolute;
    top: 50px;
    left: 0px;
    flex-direction: row;
  }
  body#about
    main
    section#number
    .inner
    .c-flex__sb
    .box
    dl.imgin
    dd.big.c-flex__sb
    div {
    width: 25%;
    margin: 0 auto;
  }
  body#about main section#number .inner .c-flex__sb .box.border::after {
    content: none;
  }
  body#about main section#number .inner .c-flex__sb.top {
    margin-bottom: 45px;
  }
}
/*------------------------
solution
-----------------------*/
body#solution main section#intro {
  background-color: #fff;
}
body#solution main section#intro .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#solution main section#intro .inner p.text {
  color: #14327d;
  padding: 50px 0 150px 0;
}
body#solution main section.workin {
  background-color: #f4f9ff;
}
body#solution main section.workin .inner {
  padding-top: 120px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#solution main section.workin .inner .c-flex__sb {
  width: 100%;
  margin: 0 auto;
  margin-bottom: 35px;
}
body#solution main section.workin .inner .c-flex__sb dl {
  padding-top: 100px;
  width: 46.8867924528%;
}
body#solution main section.workin .inner .c-flex__sb dl dt {
  color: #1e7fff;
  border-bottom: solid 1px #14327d;
}
body#solution main section.workin .inner .c-flex__sb dl dd {
  color: #14327d;
}
body#solution main section.workin .inner .c-flex__sb p.img {
  width: 46.2264150943%;
}
body#solution main section.workin .inner ul {
  width: 100%;
  margin: 0 auto;
}
body#solution main section.workin .inner ul li {
  width: 98.5849056604%;
  margin: 0 auto;
  padding-left: 25px;
  color: #14327d;
  position: relative;
  border-bottom: solid 1px #b8c1d8;
}
body#solution main section.workin .inner ul li::before {
  position: absolute;
  content: "";
  display: block;
  top: 45%;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #1e7fff;
}
body#solution main section.workin .inner ul li.twoline {
  padding: 15px 0 15px 25px;
}
body#solution main section#engineer .inner {
  padding-bottom: 220px;
}

@media screen and (max-width: 767px) {
  body#solution main section#intro .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#solution main section#intro .inner p.text {
    padding: 25px 0 75px 0;
  }
  body#solution main section.workin .inner {
    padding-top: 30px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#solution main section.workin .inner .c-flex__sb {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 15px;
    flex-direction: column;
  }
  body#solution main section.workin .inner .c-flex__sb dl {
    padding-top: 50px;
    width: 100%;
    margin: 0 auto;
  }
  body#solution main section.workin .inner .c-flex__sb dl dt {
    margin-bottom: 20px;
  }
  body#solution main section.workin .inner .c-flex__sb dl dd {
    margin-bottom: 20px;
  }
  body#solution main section.workin .inner .c-flex__sb p.img {
    width: 88.8888888889%;
    margin: 0 auto;
  }
  body#solution main section.workin .inner ul {
    width: 100%;
  }
  body#solution main section.workin .inner ul li {
    width: 94.4444444444%;
    position: relative;
    padding: 15px 0 15px 15px;
  }
  body#solution main section.workin .inner ul li::before {
    position: absolute;
    content: "";
    display: block;
    top: 45%;
    left: 0;
    width: 8px;
    height: 8px;
  }
  body#solution main section.workin .inner ul li.twoline {
    padding: 15px 0 15px 15px;
  }
  body#solution main section#engineer .inner {
    padding-bottom: 110px;
  }
}
/*------------------------
life
-------------------------*/
body#life main section#environment {
  background-color: #fff;
  padding-top: 145px;
}
body#life main section#environment .inner {
  max-width: 1040px;
  width: 95%;
  margin: 0 auto;
  padding-bottom: 140px;
}
body#life main section#environment .inner .c-flex__sb {
  width: 100%;
  margin: 0 auto;
  flex-wrap: wrap;
}
body#life main section#environment .inner .c-flex__sb .box {
  width: 47.1153846154%;
}
body#life main section#environment .inner .c-flex__sb .box p.img {
  padding-bottom: 10px;
}
body#life main section#environment .inner .c-flex__sb .box dl {
  padding-left: 10px;
}
body#life main section#environment .inner .c-flex__sb .box dl dt {
  color: #1e7fff;
}
body#life main section#environment .inner .c-flex__sb .box dl dt span {
  color: #14327d;
}
body#life main section#environment .inner .c-flex__sb .box dl dd {
  color: #14327d;
  padding-bottom: 70px;
}

@media screen and (max-width: 767px) {
  /*------------------------
  life
  -------------------------*/
  body#life main section#environment {
    padding-top: 70px;
  }
  body#life main section#environment .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    padding-bottom: 70px;
  }
  body#life main section#environment .inner .c-flex__sb {
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#life main section#environment .inner .c-flex__sb .box {
    width: 88.8888888889%;
    margin: 0 auto;
  }
  body#life main section#environment .inner .c-flex__sb .box p.img {
    padding-bottom: 10px;
  }
  body#life main section#environment .inner .c-flex__sb .box dl {
    padding-left: 5px;
    padding-bottom: 20px;
  }
  body#life main section#environment .inner .c-flex__sb .box dl dd {
    padding-bottom: 35px;
  }
}
/*------------------------
welfare
-----------------------*/
body#welfare main section#welfare-about {
  background-color: #fff;
  padding: 120px 0 130px 0;
}
body#welfare main section#welfare-about .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#welfare main section#welfare-about .inner dl {
  width: 97.1698113208%;
  margin: 0 auto;
}
body#welfare main section#welfare-about .inner dl dt {
  color: #14327d;
  position: relative;
  padding-left: 20px;
}
body#welfare main section#welfare-about .inner dl dt::before {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #1e7fff;
}
body#welfare main section#welfare-about .inner dl dd {
  color: #14327d;
}
body#welfare main section#welfare-about .inner dl.top {
  padding-bottom: 100px;
  border-bottom: solid 1px #14327d;
}
body#welfare main section#welfare-about .inner dl.bottom {
  padding: 50px 0 60px 0;
  border-bottom: solid 1px #14327d;
}
body#welfare main section#welfare-about .inner dl.bottom.two {
  border-bottom: none;
}
body#welfare main section#welfare-about .inner .box {
  width: 98.1132075472%;
  margin-right: auto;
  margin-left: 0;
  background-color: #ddecff;
  padding: 20px 0 35px 0;
  border-radius: 30px;
}
body#welfare main section#welfare-about .inner .box .c-flex__sb {
  width: 93.75%;
  margin: 0 auto;
}
body#welfare main section#welfare-about .inner .box .c-flex__sb p.pickup {
  width: 9.2307692308%;
  color: #1e7fff;
}
body#welfare main section#welfare-about .inner .box .c-flex__sb dl {
  width: 85.641025641%;
}
body#welfare main section#welfare-about .inner .box .c-flex__sb dl dt {
  padding-left: 0px;
}
body#welfare main section#welfare-about .inner .box .c-flex__sb dl dt::before {
  display: none;
}

@media screen and (max-width: 767px) {
  /*------------------------
  welfare
  -----------------------*/
  body#welfare main section#welfare-about {
    padding: 60px 0 65px 0;
  }
  body#welfare main section#welfare-about .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#welfare main section#welfare-about .inner dl {
    width: 100%;
    margin: 0 auto;
  }
  body#welfare main section#welfare-about .inner dl dt {
    position: relative;
    padding-left: 15px;
  }
  body#welfare main section#welfare-about .inner dl dt::before {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    left: 0;
    width: 8px;
    height: 8px;
  }
  body#welfare main section#welfare-about .inner dl.top {
    padding-bottom: 50px;
  }
  body#welfare main section#welfare-about .inner dl.bottom {
    padding: 25px 0 30px 0;
  }
  body#welfare main section#welfare-about .inner .box {
    width: 100%;
    margin-right: auto;
    padding: 10px 0 15px 0;
  }
  body#welfare main section#welfare-about .inner .box .c-flex__sb {
    width: 88.8888888889%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#welfare main section#welfare-about .inner .box .c-flex__sb p.pickup {
    width: 100%;
    margin: 0 auto;
  }
  body#welfare main section#welfare-about .inner .box .c-flex__sb dl {
    width: 100%;
    margin: 0 auto;
    margin-top: -20px;
  }
  body#welfare main section#welfare-about .inner .box .c-flex__sb dl dd.small {
    padding: 20px 0;
  }
}
/*-----------------
interview_index
-----------------*/
body#interview-index main section#interview_list {
  background-color: #fff;
  padding-top: 145px;
}
body#interview-index main section#interview_list .inner.c-flex__sb {
  padding-bottom: 230px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  flex-wrap: wrap;
}
body#interview-index main section#interview_list .inner.c-flex__sb a {
  display: block;
  width: 48.1132075472%;
  text-decoration: none;
}
body#interview-index main section#interview_list .inner.c-flex__sb a p.img {
  overflow: hidden;
  border-radius: 30px;
}
body#interview-index main section#interview_list .inner.c-flex__sb a p.img img {
  transition: 0.5s all;
}
body#interview-index
  main
  section#interview_list
  .inner.c-flex__sb
  a
  p.img
  img:hover {
  transform: scale(1.1, 1.1);
  transition: 0.5s all;
}
body#interview-index main section#interview_list .inner.c-flex__sb a dl {
  width: 60.7843137255%;
  color: #1e7fff;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 42px;
  margin: 20px 0 35px 25px;
}
body#interview-index main section#interview_list .inner.c-flex__sb a dl dt {
  width: 81.6129032258%;
  border-bottom: solid 1px #0050c8;
}
body#interview-index main section#interview_list .inner.c-flex__sb a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  /*-----------------
  interview_index
  -----------------*/
  body#interview-index main section#interview_list {
    padding-top: 70px;
  }
  body#interview-index main section#interview_list .inner.c-flex__sb {
    padding-bottom: 60px;
    max-width: 80%;
    width: 95%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#interview-index main section#interview_list .inner.c-flex__sb a {
    width: 93.75%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
  body#interview-index main section#interview_list .inner.c-flex__sb a dl {
    width: 80%;
    margin: 0 auto;
    color: #1e7fff;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 80%;
    background-repeat: no-repeat;
    background-size: 35px;
    margin: 10px 0 15px 10px;
  }
  body#interview-index main section#interview_list .inner.c-flex__sb a dl dt {
    width: 58.3333333333%;
  }
}
/*-----------------
interview 各mv
-----------------*/
body#interview01 {
  background-image: url(../img/recruit/interview/01/mv.webp);
  background-repeat: no-repeat;
  background-size: 94%;
  background-position: center right;
  height: 850px;
}
body#interview01 main section#mv {
  height: 750px;
}

body#interview02 {
  background-image: url(../img/recruit/interview/02/mv.webp);
  background-repeat: no-repeat;
  background-size: 94%;
  background-position: center right;
  height: 850px;
}
body#interview02 main section#mv {
  height: 750px;
}

body#interview03 {
  background-image: url(../img/recruit/interview/03/mv.webp);
  background-repeat: no-repeat;
  background-size: 94%;
  background-position: center right;
  height: 850px;
}
body#interview03 main section#mv {
  height: 750px;
}

/*-----------------
interview 共通
-----------------*/
body.interview main section#intro .inner {
  max-width: 1130px;
  width: 95%;
  margin: 0 auto;
}
body.interview main section#intro .inner dl.c-flex {
  padding: 120px 0 30px 0;
}
body.interview main section#intro .inner dl.c-flex dt {
  border-right: solid 1px #14327d;
  padding-right: 15px;
  color: #14327d;
}
body.interview main section#intro .inner dl.c-flex dd {
  color: #1e7fff;
  padding-left: 15px;
}
body.interview main section#intro .inner dl.c-flex dd span {
  color: #14327d;
}
body.interview main section#intro .inner h1 {
  padding-bottom: 25px;
  color: #14327d;
}
body.interview main section#intro .inner p.position {
  color: #14327d;
  padding-bottom: 25px;
}
body.interview main section#chance {
  background-color: #f4f9ff;
  padding-top: 50px;
  padding-bottom: 80px;
}
body.interview main section#chance .inner {
  max-width: 1130px;
  width: 95%;
  margin: 0 auto;
}
body.interview main section#chance .inner .container {
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  padding: 30px 0;
}
body.interview main section#chance .inner .container dl.c-flex__sb {
  width: 90.2654867257%;
  margin: 0 auto;
}
body.interview main section#chance .inner .container dl.c-flex__sb dt {
  width: 15.1960784314%;
  color: #1e7fff;
}
body.interview main section#chance .inner .container dl.c-flex__sb dd {
  width: 80.8823529412%;
  color: #14327d;
}
body.interview main section#work,
body.interview main section#team,
body.interview main section#challenge {
  background-color: #f4f9ff;
  padding-bottom: 100px;
}
body.interview main section#work .inner,
body.interview main section#work .inner,
body.interview main section#work .inner,
body.interview main section#team .inner,
body.interview main section#challenge .inner {
  max-width: 1130px;
  width: 95%;
  margin: 0 auto;
}
body.interview main section#work .inner h2,
body.interview main section#team .inner h2,
body.interview main section#challenge .inner h2 {
  width: 100%;
  margin: 0 auto;
  position: relative;
  color: #1e7fff;
}
body.interview main section#work .inner h2::after,
body.interview main section#team .inner h2::after,
body.interview main section#challenge .inner h2::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 0;
  width: 84.0707964602%;
  height: 1px;
  background-color: #14327d;
}
body.interview main section#work .inner p.circle,
body.interview main section#team .inner p.circle,
body.interview main section#challenge .inner p.circle {
  width: 100%;
  margin: 0 auto;
  color: #14327d;
  position: relative;
  padding-left: 20px;
}
body.interview main section#work .inner p.circle::before,
body.interview main section#team .inner p.circle::before,
body.interview main section#challenge .inner p.circle::before {
  position: absolute;
  content: "";
  display: block;
  top: 48%;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #1e7fff;
}
body.interview main section#work .inner .c-flex__sb,
body.interview main section#team .inner .c-flex__sb,
body.interview main section#challenge .inner .c-flex__sb {
  width: 100%;
  margin: 0 auto;
}
body.interview main section#work .inner .c-flex__sb .text-container,
body.interview main section#team .inner .c-flex__sb .text-container,
body.interview main section#challenge .inner .c-flex__sb .text-container {
  width: 49.5575221239%;
  padding-bottom: 120px;
}
body.interview main section#work .inner .c-flex__sb .text-container dl,
body.interview main section#team .inner .c-flex__sb .text-container dl,
body.interview main section#challenge .inner .c-flex__sb .text-container dl {
  color: #14327d;
}
body.interview main section#work .inner .c-flex__sb .text-container dl dt,
body.interview main section#team .inner .c-flex__sb .text-container dl dt,
body.interview main section#challenge .inner .c-flex__sb .text-container dl dt {
  padding-bottom: 25px;
}
body.interview main section#work .inner .c-flex__sb p.img,
body.interview main section#team .inner .c-flex__sb p.img,
body.interview main section#challenge .inner .c-flex__sb p.img {
  padding-top: 30px;
  width: 46.017699115%;
}
body.interview main section#work .inner dl.flex-none,
body.interview main section#team .inner dl.flex-none,
body.interview main section#challenge .inner dl.flex-none {
  width: 100%;
  margin: 0 auto;
  color: #14327d;
}
body.interview main section#work .inner dl.flex-none dt,
body.interview main section#team .inner dl.flex-none dt,
body.interview main section#challenge .inner dl.flex-none dt {
  padding-bottom: 50px;
}
body.interview main section#team {
  background-color: #fff;
  padding-top: 50px;
}
body.interview main section#team .inner .c-flex__sb {
  flex-direction: row-reverse;
}
body.interview main section#challenge {
  padding-top: 50px;
}
body.interview main section#challenge .inner h2 {
  width: 100%;
  margin: 0 auto;
  position: relative;
  color: #1e7fff;
}
body.interview main section#challenge .inner h2::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 0;
  width: 72.5663716814%;
  height: 1px;
  background-color: #14327d;
}
body.interview main section#schedule-message .inner.c-flex__sb {
  padding: 50px 0 145px 0;
  padding-bottom: 145px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body.interview main section#schedule-message .inner.c-flex__sb .sche-container {
  width: 47.1698113208%;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  h2 {
  color: #1e7fff;
  position: relative;
  margin-bottom: 25px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  h2::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 0;
  width: 45.8%;
  height: 1px;
  background-color: #14327d;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  dl.c-flex__sb {
  flex-wrap: wrap;
  width: 100%;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  dl.c-flex__sb
  dt {
  padding: 20px 0;
  width: 14%;
  color: #1e7fff;
  border-bottom: solid 1px #d0d6e5;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .sche-container
  dl.c-flex__sb
  dd {
  width: 86%;
  color: #14327d;
  padding: 20px 0;
  border-bottom: solid 1px #d0d6e5;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .message-container {
  width: 47.1698113208%;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .message-container
  h2 {
  color: #1e7fff;
  position: relative;
  margin-bottom: 40px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .message-container
  h2::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 0;
  width: 43.8%;
  height: 1px;
  background-color: #14327d;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .message-container
  p.img {
  padding-bottom: 45px;
}
body.interview
  main
  section#schedule-message
  .inner.c-flex__sb
  .message-container
  p.text {
  color: #14327d;
}

@media screen and (max-width: 767px) {
  /*-----------------
  interview 各mv
  -----------------*/
  body#interview01 {
    background-image: url(../img/recruit/interview/01/mv.webp);
    background-repeat: no-repeat;
    background-size: 94%;
    background-position: center right;
    height: 300px;
  }
  body#interview01 main section#mv {
    height: 260px;
  }
  body#interview02 {
    background-image: url(../img/recruit/interview/02/mv.webp);
    background-repeat: no-repeat;
    background-size: 94%;
    background-position: center right;
    height: 300px;
  }
  body#interview02 main section#mv {
    height: 260px;
  }
  body#interview03 {
    background-image: url(../img/recruit/interview/03/mv.webp);
    background-repeat: no-repeat;
    background-size: 94%;
    background-position: center right;
    height: 300px;
  }
  body#interview03 main section#mv {
    height: 260px;
  }
  /*-----------------
  interview 共通
  -----------------*/
  body.interview main section#intro .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body.interview main section#intro .inner dl.c-flex {
    padding: 20px 0 15px 0;
  }
  body.interview main section#intro .inner dl.c-flex dt {
    padding-right: 7px;
  }
  body.interview main section#intro .inner dl.c-flex dd {
    padding-left: 7px;
  }
  body.interview main section#intro .inner h1 {
    padding-bottom: 12px;
  }
  body.interview main section#intro .inner p.position {
    padding-bottom: 12px;
  }
  body.interview main section#chance {
    padding-top: 25px;
    padding-bottom: 40px;
  }
  body.interview main section#chance .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body.interview main section#chance .inner .container {
    width: 100%;
    margin: 0 auto;
    padding: 15px 0;
  }
  body.interview main section#chance .inner .container dl.c-flex__sb {
    flex-direction: column;
    width: 88.8888888889%;
    margin: 0 auto;
  }
  body.interview main section#chance .inner .container dl.c-flex__sb dt {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 15px;
  }
  body.interview main section#chance .inner .container dl.c-flex__sb dd {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 15px;
  }
  body.interview main section#work,
  body.interview main section#team,
  body.interview main section#challenge {
    padding-bottom: 50px;
  }
  body.interview main section#work .inner,
  body.interview main section#team .inner,
  body.interview main section#challenge .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body.interview main section#work .inner h2,
  body.interview main section#team .inner h2,
  body.interview main section#challenge .inner h2 {
    width: 100%;
    margin: 0 auto;
    position: relative;
  }
  body.interview main section#work .inner h2::after,
  body.interview main section#team .inner h2::after,
  body.interview main section#challenge .inner h2::after {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    right: 0;
    width: 65%;
    height: 1px;
  }
  body.interview main section#work .inner p.circle,
  body.interview main section#team .inner p.circle,
  body.interview main section#challenge .inner p.circle {
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding-left: 15px;
  }
  body.interview main section#work .inner p.circle::before,
  body.interview main section#team .inner p.circle::before,
  body.interview main section#challenge .inner p.circle::before {
    position: absolute;
    content: "";
    display: block;
    top: 45%;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #1e7fff;
  }
  body.interview main section#work .inner .c-flex__sb,
  body.interview main section#team .inner .c-flex__sb,
  body.interview main section#challenge .inner .c-flex__sb {
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
  }
  body.interview main section#work .inner .c-flex__sb .text-container,
  body.interview main section#team .inner .c-flex__sb .text-container,
  body.interview main section#challenge .inner .c-flex__sb .text-container {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 20px;
  }
  body.interview main section#work .inner .c-flex__sb p.img,
  body.interview main section#team .inner .c-flex__sb p.img,
  body.interview main section#challenge .inner .c-flex__sb p.img {
    padding-top: 0px;
    padding-bottom: 20px;
    width: 77.7777777778%;
    margin: 0 auto;
  }
  body.interview main section#work .inner dl.flex-none,
  body.interview main section#team .inner dl.flex-none,
  body.interview main section#challenge .inner dl.flex-none {
    width: 100%;
    margin: 0 auto;
  }
  body.interview main section#work .inner dl.flex-none dt,
  body.interview main section#team .inner dl.flex-none dt,
  body.interview main section#challenge .inner dl.flex-none dt {
    padding-bottom: 25px;
  }
  body.interview main section#team {
    padding-top: 25px;
  }
  body.interview main section#team .inner .c-flex__sb {
    flex-direction: column;
  }
  body.interview main section#challenge {
    padding-top: 50px;
  }
  body.interview main section#challenge .inner h2 {
    width: 100%;
    margin: 0 auto;
    position: relative;
  }
  body.interview main section#challenge .inner h2::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    width: 40%;
    height: 1px;
  }
  body.interview main section#schedule-message .inner.c-flex__sb {
    padding: 25px 0 70px 0;
    padding-bottom: 70px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    flex-direction: column;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 20px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    h2 {
    position: relative;
    margin-bottom: 25px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    h2::after {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    right: 0;
    width: 47%;
    height: 1px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    dl.c-flex__sb {
    width: 100%;
    margin: 0 auto;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    dl.c-flex__sb
    dt {
    padding: 10px 0;
    width: 22.2222222222%;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .sche-container
    dl.c-flex__sb
    dd {
    width: 77.7777777778%;
    padding: 10px 0;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .message-container {
    width: 100%;
    margin: 0 auto;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .message-container
    h2 {
    position: relative;
    margin-bottom: 20px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .message-container
    h2::after {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    right: 0;
    width: 52%;
    height: 1px;
  }
  body.interview
    main
    section#schedule-message
    .inner.c-flex__sb
    .message-container
    p.img {
    padding-bottom: 20px;
    width: 88.8888888889%;
    margin: 0 auto;
  }
}
body#casestudy main section.case-sec {
  padding-top: 100px;
}
body#casestudy main section.case-sec .inner {
  padding-bottom: 140px;
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl {
  width: 100%;
  margin: 0 auto;
  border-bottom: solid 1px #14327d;
  margin-bottom: 40px;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt {
  width: 68.3962264151%;
  position: relative;
  color: #1e7fff;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt span {
  padding-left: 15px;
  color: #14327d;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt::after {
  position: absolute;
  content: "";
  display: block;
  top: 35%;
  right: 0;
  width: 1px;
  height: 25px;
  background-color: #14327d;
}
body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dd {
  width: 31.1320754717%;
  text-align: center;
  color: #1e7fff;
}
body#casestudy main section.case-sec .inner h2 {
  color: #1e7fff;
  padding-bottom: 30px;
}
body#casestudy main section.case-sec .inner p.text {
  color: #14327d;
  padding-bottom: 30px;
}
body#casestudy main section.case-sec .inner p.circle {
  color: #14327d;
  position: relative;
  padding-left: 15px;
}
body#casestudy main section.case-sec .inner p.circle::before {
  position: absolute;
  content: "";
  display: block;
  top: 45%;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #1e7fff;
}
body#casestudy main section.case-sec .inner .c-flex__sb.flow {
  flex-wrap: wrap;
  width: 100%;
}
body#casestudy main section.case-sec .inner .c-flex__sb.flow p.flow-about {
  width: 21.9811320755%;
  border-radius: 50px;
  background-color: #0050c8;
  color: #fff;
  text-align: center;
  margin-bottom: 15px;
}
body#casestudy
  main
  section.case-sec
  .inner
  .c-flex__sb.flow
  p.flow-about.hidden {
  visibility: hidden;
}
body#casestudy main section.case-sec .inner .c-flex__sb.flow span {
  width: 1.4150943396%;
  padding-top: 30px;
}
body#casestudy main section.case-sec .inner .c-flex__sb.flow span.hidden {
  visibility: hidden;
}
body#casestudy main section#case01,
body#casestudy main section#case02,
body#casestudy main section#case03 {
  margin-bottom: 300px;
}
body#casestudy main section#case01,
body#casestudy main section#case03 {
  background-color: #fff;
}
body#casestudy main section#case02,
body#casestudy main section#case04 {
  background-color: #f4f9ff;
}

@media screen and (max-width: 767px) {
  body#casestudy main section.case-sec {
    padding-top: 50px;
  }
  body#casestudy main section.case-sec .inner {
    padding-bottom: 10px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt {
    width: 40.5555555556%;
    position: relative;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt span {
    padding-left: 5px;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dt::after {
    position: absolute;
    content: "";
    display: block;
    top: 25%;
    right: 0;
    width: 1px;
    height: 25px;
  }
  body#casestudy main section.case-sec .inner dl.c-flex__sb.ttl dd {
    width: 58.8888888889%;
  }
  body#casestudy main section.case-sec .inner h2 {
    padding-bottom: 15px;
  }
  body#casestudy main section.case-sec .inner p.text {
    padding-bottom: 15px;
  }
  body#casestudy main section.case-sec .inner p.circle {
    position: relative;
    padding-left: 15px;
  }
  body#casestudy main section.case-sec .inner p.circle::before {
    position: absolute;
    content: "";
    display: block;
    top: 45%;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
  }
  body#casestudy main section.case-sec .inner .c-flex__sb.flow {
    width: 100%;
    margin: auto;
    flex-direction: column;
  }
  body#casestudy main section.case-sec .inner .c-flex__sb.flow p.flow-about {
    width: 77.7777777778%;
    margin: 0 auto;
    margin-bottom: 30px;
    position: relative;
  }
  body#casestudy
    main
    section.case-sec
    .inner
    .c-flex__sb.flow
    p.flow-about::after {
    position: absolute;
    content: "";
    display: block;
    bottom: -45%;
    left: 50%;
    width: 12px;
    height: 20px;
    background-image: url("../img/casestudy/flow_underarrow.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
  }
  body#casestudy
    main
    section.case-sec
    .inner
    .c-flex__sb.flow
    p.flow-about.last::after {
    content: none;
  }
  body#casestudy main section.case-sec .inner .c-flex__sb.flow span {
    display: none;
  }
  body#casestudy main section#case01,
  body#casestudy main section#case02,
  body#casestudy main section#case03 {
    margin-bottom: 150px;
  }
}
body#service main section#intro {
  padding-top: 90px;
  background-color: #fff;
}
body#service main section#intro .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
}
body#service main section#intro .inner h2 {
  color: #1e7fff;
  padding-bottom: 40px;
}
body#service main section#intro .inner p.text {
  padding-bottom: 120px;
  color: #14327d;
}
body#service main section.service-in .inner {
  max-width: 1060px;
  width: 95%;
  margin: 0 auto;
  padding-bottom: 135px;
}
body#service main section.service-in .inner .c-flex__sb {
  width: 100%;
  margin: 0 auto;
}
body#service main section.service-in .inner .c-flex__sb .text-container {
  width: 47.4528301887%;
}
body#service
  main
  section.service-in
  .inner
  .c-flex__sb
  .text-container
  dl
  dt
  span.ttl-en {
  color: #1e7fff;
  display: block;
}
body#service
  main
  section.service-in
  .inner
  .c-flex__sb
  .text-container
  dl
  dt
  span.ttl-jp {
  color: #14327d;
  display: block;
  padding-bottom: 15px;
}
body#service main section.service-in .inner .c-flex__sb .text-container dl dd {
  color: #14327d;
  padding-bottom: 70px;
}
body#service main section.service-in .inner .c-flex__sb .text-container p.btn {
  width: 83.4990059642%;
}
body#service
  main
  section.service-in
  .inner
  .c-flex__sb
  .text-container
  p.btn
  a {
  width: 100%;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  border-radius: 50px;
  background-color: #0050c8;
  background-image: url(../img/common/link-arrow.svg);
  background-position: 95%;
  background-size: 42px;
  background-repeat: no-repeat;
}
body#service
  main
  section.service-in
  .inner
  .c-flex__sb
  .text-container
  p.btn
  a:hover {
  opacity: 0.8;
}
body#service main section.service-in .inner .c-flex__sb p.img {
  width: 46.2264150943%;
}
body#service main section#consulting,
body#service main section#develop {
  margin-bottom: 300px;
}
body#service main section#develop {
  background-color: #f4f9ff;
  padding-top: 150px;
}
body#service main section#quality {
  padding-top: 150px;
}
body#service main section#consulting,
body#service main section#quality {
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  body#service main section#intro {
    padding-top: 45px;
  }
  body#service main section#intro .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#service main section#intro .inner h2 {
    padding-bottom: 20px;
  }
  body#service main section#intro .inner p.text {
    padding-bottom: 60px;
  }
  body#service main section.service-in .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    padding-bottom: 65px;
  }
  body#service main section.service-in .inner .c-flex__sb {
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
  }
  body#service main section.service-in .inner .c-flex__sb .text-container {
    width: 100%;
    margin: 0 auto;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    dl
    dt
    span.ttl-jp {
    padding-bottom: 7px;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    dl
    dd {
    padding-bottom: 35px;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    p.btn {
    margin-bottom: 30px;
    width: 77.7777777778%;
  }
  body#service
    main
    section.service-in
    .inner
    .c-flex__sb
    .text-container
    p.btn
    a {
    width: 100%;
    background-image: url(../img/common/link-arrow.svg);
    background-position: 95%;
    background-size: 35px;
    background-repeat: no-repeat;
  }
  body#service main section.service-in .inner .c-flex__sb p.img {
    width: 88.8888888889%;
    margin: 0 auto;
  }
  body#service main section#consulting,
  body#service main section#develop {
    margin-bottom: 150px;
  }
  body#service main section#develop {
    padding-top: 75px;
  }
  body#service main section#quality {
    padding-top: 75px;
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}

body {
  padding: 0;
  margin: 0;
}

br.brsp {
  display: none;
}

br.brpc {
  display: block;
}

.c-flex__sb {
  display: flex;
  justify-content: space-between;
}

.c-flex__sa {
  display: flex;
  justify-content: space-around;
}

.c-flex {
  display: flex;
}

@media screen and (max-width: 767px) {
  br.brsp {
    display: block;
  }
  br.brpc {
    display: none;
  }
  html {
    scroll-padding-top: 70px;
  }
}
body#news main section#list {
  background-color: #fff;
}
body#news main section#list .inner {
  max-width: 850px;
  width: 95%;
  margin: 0 auto;
  padding: 85px 0 125px 0;
}
body#news main section#list .inner dl {
  width: 100%;
  border-bottom: solid 1px #d2e5ff;
  margin-bottom: 35px;
}
body#news main section#list .inner dl dt {
  color: #1e7fff;
}
body#news main section#list .inner dl dd {
  padding-bottom: 15px;
  color: #14327d;
}
body#news main section#list .inner dl dd a {
  text-decoration: none;
  color: #14327d;
}

body#news-detail main section#news-in .inner {
  padding-top: 170px;
  max-width: 850px;
  width: 95%;
  margin: 0 auto;
}
body#news-detail main section#news-in .inner dl {
  width: 100%;
  margin: 0 auto;
  border-bottom: solid 1px #14327d;
  margin-bottom: 35px;
}
body#news-detail main section#news-in .inner dl dt {
  color: #1e7fff;
}
body#news-detail main section#news-in .inner dl dd {
  color: #14327d;
  padding-bottom: 15px;
}
body#news-detail main section#news-in .inner p.text {
  color: #14327d;
  padding-bottom: 30px;
}
body#news-detail main section#news-in .inner p.img {
  width: 25.8823529412%;
  margin: 0 auto;
  padding-bottom: 45px;
}
body#news-detail main section#news-in .inner p.link {
  padding-bottom: 120px;
}
body#news-detail main section#news-in .inner p.link a {
  color: #1e7fff;
}
body#news-detail main section#news-in .inner a.list-back {
  width: 49.4117647059%;
  display: block;
  text-align: center;
  text-decoration: none;
  color: #fff;
  border-radius: 50px;
  margin: 0 auto;
  margin-bottom: 185px;
  background: #0050c8 url(../img/common/link-arrow.svg) no-repeat;
  background-position: 95%;
  background-size: 42px;
}
body#news-detail main section#news-in .inner a.list-back:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  body#news main section#list .inner {
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
    padding: 40px 0 60px 0;
  }
  body#news main section#list .inner dl {
    width: 100%;
    margin-bottom: 15px;
  }
  body#news main section#list .inner dl dd {
    padding-bottom: 7px;
  }
  body#news-detail main section#news-in .inner {
    padding-top: 85px;
    max-width: 90%;
    width: 95%;
    margin: 0 auto;
  }
  body#news-detail main section#news-in .inner dl {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 15px;
  }
  body#news-detail main section#news-in .inner dl dd {
    padding-bottom: 7px;
  }
  body#news-detail main section#news-in .inner p.text {
    padding-bottom: 15px;
  }
  body#news-detail main section#news-in .inner p.img {
    width: 44.4444444444%;
    margin: 0 auto;
    padding-bottom: 20px;
  }
  body#news-detail main section#news-in .inner p.link {
    padding-bottom: 60px;
  }
  body#news-detail main section#news-in .inner a.list-back {
    width: 77.7777777778%;
    margin: 0 auto;
    margin-bottom: 90px;
    background: #0050c8 url(../img/common/link-arrow.svg) no-repeat;
    background-position: 95%;
    background-size: 35px;
  }
}
/*------------------------------
 reset
------------------------------*/
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

article,
aside,
details,
figcaption,
figure,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  outline: none;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

img {
  width: 100%;
  height: auto;
}

span.ib {
  display: inline-block;
} /*# sourceMappingURL=styles.css.map */

#confirmBtn {
  display: block;
  width: 39.6226415094%;
  color: #fff;
  background-color: #0050c8;
  border: none;
  margin: 0 auto;
  border-radius: 50px;
  background-image: url(../img/common/link-arrow.svg);
  background-repeat: no-repeat;
  background-size: 42px;
  background-position: 95%;
  cursor: pointer;
}
.btn-submit {
  display: block;
  width: 200px;
  color: #fff;
  background-color: #0050c8;
  border: none;
  background-repeat: no-repeat;
  background-size: 42px;
  background-position: 95%;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
}
.btn-submit:hover {
  opacity: 0.8;
}
.btn-cancel {
  color: #14327d;
  width: 200px;
  background-color: #f4f9ff;
  background-position: 95%;
}
.btn-cancel:hover {
  background-color: #ddecff;
}

.popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
}

.popup-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  padding: 30px;
  border-radius: 8px;
  width: 90%;
  max-width: 600px;
  max-height: 80vh;
  overflow-y: auto;
}

.popup h3 {
  font-size: 20px;
  margin-bottom: 20px;
  text-align: center;
}

.popup-body dl {
  display: flex;
  margin-bottom: 15px;
  line-height: 1.6;
}

.popup-body dt {
  width: 160px;
  font-weight: bold;
}

.popup-body dd {
  flex: 1;
}

.popup-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
  margin-top: 30px;
}

.popup-buttons button {
  padding: 10px 40px;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .popup-body dl {
    flex-direction: column;
  }

  .popup-body dt {
    width: 100%;
    margin-bottom: 5px;
  }
  .btn-submit,
  .btn-cancel {
    width: 100%;
  }
}
