@charset "UTF-8";
/* Only output numerical values
/* 数値のみ出力する
====================================== */
/* font $size
====================================== */
/* font family
====================================== */
/* Break point ブレイクポイント
====================================== */
/* max site width コンテンツ最大幅
====================================== */
/* colors 色管理
====================================== */
/* media query
====================================== */
/* font-size フォントサイズのrem表示用
====================================== */
/* Margin class in 5px steps
/* 余白調整用のクラス　5px刻みで20回処理を繰り返し
====================================== */
.mt0 {
  margin-top: 0px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.mt100 {
  margin-top: 100px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.com-txt-color-text {
  color: #23221F !important;
}

.com-bg-text {
  background-color: #23221F !important;
}

.com-txt-color-main {
  color: #0098DA !important;
}

.com-bg-main {
  background-color: #0098DA !important;
}

.com-txt-color-sub {
  color: #FF4A24 !important;
}

.com-bg-sub {
  background-color: #FF4A24 !important;
}

.com-txt-color-white {
  color: #fff !important;
}

.com-bg-white {
  background-color: #fff !important;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 15px;
}

body {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  line-height: 1.8;
  color: #23221F;
  font-size: 16px;
  font-size: 1.0666666667rem;
  font-weight: 500;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #23221F;
  line-height: 1.5;
  font-size: 28px;
  font-size: 1.8666666667rem;
  font-weight: 500;
}

p {
  margin: 0;
}
p + p {
  margin-top: 1em;
}

ul, dl, figure {
  margin: 0;
  padding: 0;
}

dt {
  font-weight: normal;
}

ul, li {
  list-style: none;
}

a {
  color: #23221F;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
a:before, a:after {
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
a:hover {
  color: #23221F;
  text-decoration: none;
}

em {
  font-style: normal;
  font-weight: normal;
  color: inherit;
}

input,
select,
textarea {
  outline: none;
  vertical-align: middle;
  font-size: 16px;
  font-size: 1.0666666667rem;
  background-color: #FFF;
}

input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image]),
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  border: 1px solid #D6D3D0;
  border-radius: 10px;
  height: 50px;
  padding: 17px 13px 13px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

input[type=radio] {
  position: relative;
  vertical-align: middle;
  -webkit-appearance: none;
  border: 1px solid #cccccc;
  background-position: 50% 50%;
  width: 18px;
  height: 18px;
  display: inline-block;
  border-radius: 50%;
  outline: none;
  margin: 0 5px 0 0;
}
input[type=radio]:checked {
  border-color: #0098DA;
  border-width: 2px;
}
input[type=radio]:checked:after {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: block;
  background-color: #0098DA;
  border-radius: 50%;
}
input[type=radio] label {
  display: inline-block;
}

input[type=checkbox] {
  margin: 0 5px 0 0;
  width: 18px;
  height: 18px;
  border: 1px solid #cccccc;
  vertical-align: middle;
  -webkit-appearance: none;
  display: inline-block;
  outline: none;
}
input[type=checkbox]:checked {
  position: relative;
}
input[type=checkbox]:checked:after {
  content: "";
  display: block;
  width: 10px;
  height: 18px;
  border: 4px solid #0098DA;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-top: none;
  border-left: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: -6px;
  left: 6px;
}
input[type=checkbox] label {
  display: inline-block;
}

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  width: 100%;
  font-size: 15px;
  font-size: 1rem;
  line-height: 2;
}

address {
  margin-bottom: 0;
}

/* uk-container
====================================== */
.uk-container-small {
  max-width: 375px;
}
.uk-container-large {
  max-width: 1160px;
}
.uk-container-expand {
  max-width: none;
}
@media (max-width: 959px) {
  .uk-container {
    padding-left: 24px;
    padding-right: 24px;
  }
}

/* Contact Form 7
====================================== */
.wpcf7 .ajax-loader {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
}

/* reCAPTCHA
====================================== */
.grecaptcha-badge {
  visibility: hidden;
}

/* #header
====================================== */
/* parts
--------------------------------- */
#header {
  background-color: #FFF;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}

.header-container {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 36px;
  padding-right: 10px;
}
@media (min-width: 640px) {
  .header-container {
    padding-right: 24px;
  }
}

#header-logo {
  margin-bottom: 0;
}
#header-logo img {
  width: 137px;
}
@media (min-width: 640px) {
  #header-logo img {
    width: 156.07px;
  }
}

/* gnav
====================================== */
#gnav {
  padding-top: 30px;
  padding-bottom: 30px;
}
@media (min-width: 640px) {
  #gnav {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
#gnav li + li {
  margin-left: 10px;
}
#gnav .btn {
  display: block;
  color: #FFF;
  text-align: center;
  height: 50px;
  border-radius: 7px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 9px;
  padding-bottom: 13px;
}
#gnav .documents {
  width: 142px;
  background-color: #0098DA;
}
#gnav .documents:hover {
  border: 1px solid #0098DA;
  background-color: #fff;
  color: #0098DA;
}
#gnav .estimate {
  width: 137px;
  background-color: #FF4A24;
}
#gnav .estimate:hover {
  border: 1px solid #FF4A24;
  background-color: #fff;
  color: #FF4A24;
}

.hamburger-menu {
  display: block;
}
.hamburger-menu span {
  display: block;
  width: 28px;
  height: 2px;
  background-color: #000;
}
.hamburger-menu span + span {
  margin-top: 7px;
}

/* #lnav
====================================== */
/* #footer
====================================== */
#footer {
  background-color: #26445A;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media (min-width: 480px) {
  #footer {
    padding-top: 69px;
    padding-bottom: 67px;
  }
}
#footer .uk-container {
  max-width: 918px;
}
#footer ul {
  -webkit-column-gap: 32px;
     -moz-column-gap: 32px;
          column-gap: 32px;
  row-gap: 21px;
}
#footer .btn {
  background-color: #FFF;
  border-radius: 10px;
  -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  width: 239px;
  line-height: 1.5;
}
@media (max-width: 479px) {
  #footer .btn {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 480px) {
  #footer .btn {
    font-size: 20px;
    width: 443px;
    height: 172px;
  }
}
#footer .btn.chatwork {
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  font-weight: 700;
}
@media (min-width: 480px) {
  #footer .btn.chatwork {
    -webkit-column-gap: 39px;
       -moz-column-gap: 39px;
            column-gap: 39px;
  }
}
@media (max-width: 479px) {
  #footer .btn.chatwork {
    height: 90px;
  }
}
#footer .btn.chatwork span {
  display: block;
  color: #4F4F4F;
  text-decoration: underline;
}
@media (max-width: 479px) {
  #footer .btn.chatwork img {
    width: 50px;
  }
}
#footer .btn.line {
  -webkit-column-gap: 22px;
     -moz-column-gap: 22px;
          column-gap: 22px;
}
@media (min-width: 480px) {
  #footer .btn.line {
    -webkit-column-gap: 62px;
       -moz-column-gap: 62px;
            column-gap: 62px;
  }
}
@media (max-width: 479px) {
  #footer .btn.line {
    height: 99.41px;
  }
}
#footer .btn.line .logo img {
  width: 65px;
}
@media (min-width: 480px) {
  #footer .btn.line .logo img {
    width: 113px;
  }
}
#footer .btn.line span {
  display: block;
  margin-top: 9px;
}
@media (min-width: 480px) {
  #footer .btn.line span {
    margin-top: 21px;
  }
}
@media (max-width: 479px) {
  #footer .btn.line .qr {
    width: 80px;
  }
}

/* parts
====================================== */
/* pagetop
-------------------------------------- */
.pagetop {
  font-size: 10px;
  font-size: 0.6666666667rem;
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 100;
}

.uk-offcanvas-bar {
  background: #fff;
  padding: 0;
}

.uk-nav .uk-nav-header {
  background-color: #26445A;
  padding: 0.5em 1em;
  border-bottom: 0;
  color: #FFF;
}
.uk-nav > li {
  border-bottom: 1px solid #DCDCDC;
}
.uk-nav > li a {
  padding: 0.5em 1em;
  color: #23221F;
}
.uk-nav > li a:hover {
  color: #0098DA;
}

#home-01 {
  background: linear-gradient(131.77deg, #CCEDFF 3.88%, #FFF0ED 78.78%), #FFFFFF;
  padding-top: 40px;
  padding-bottom: 60px;
}
@media (min-width: 768px) {
  #home-01 {
    padding-bottom: 40px;
  }
}
#home-01 .home-01-container {
  -webkit-column-gap: 33px;
     -moz-column-gap: 33px;
          column-gap: 33px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  row-gap: 13.84px;
}
@media (min-width: 960px) {
  #home-01 .home-01-container {
    -webkit-column-gap: 66.2px;
       -moz-column-gap: 66.2px;
            column-gap: 66.2px;
  }
}
@media (max-width: 767px) {
  #home-01 .home-01-container {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media (max-width: 639px) {
  #home-01 .tit-wrapper {
    padding-left: 0;
  }
}
@media (max-width: 959px) {
  #home-01 .tit-wrapper .logo {
    width: 156px;
  }
}
#home-01 .form-table-01 {
  max-width: 348px;
  padding: 16px 23.96px;
}
#home-01 h2 {
  font-size: 36px;
}
@media (min-width: 960px) {
  #home-01 h2 {
    font-size: 52px;
  }
}
#home-01 h2 span {
  color: #0098DA;
}

#home-02 {
  background-color: #FAF9F4;
  text-align: center;
  padding-top: 44px;
  padding-bottom: 32px;
  position: relative;
}
@media (min-width: 640px) {
  #home-02 {
    padding-top: 69px;
    padding-bottom: 51px;
  }
}
@media (max-width: 639px) {
  #home-02 figure {
    margin-top: -35px;
  }
}
#home-02::after {
  content: "";
  position: absolute;
  display: block;
  border-right: 17px solid transparent;
  border-left: 17px solid transparent;
  border-top: 18.68px solid #FAF9F4;
  bottom: -18px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 640px) {
  #home-02::after {
    border-right: 36px solid transparent;
    border-left: 36px solid transparent;
    border-top: 36.16px solid #FAF9F4;
    bottom: -36.13px;
  }
}

.home-02-tit {
  color: #0098DA;
  margin-bottom: 24px;
}
@media (min-width: 640px) {
  .home-02-tit {
    font-size: 38px;
    margin-bottom: 32px;
  }
}

#home-03 {
  background-color: #0098DA;
  color: #FFF;
  text-align: center;
  padding-top: 44px;
  padding-bottom: 32px;
}
@media (min-width: 640px) {
  #home-03 {
    padding-top: 68px;
    padding-bottom: 32px;
  }
}

#home-04 {
  background-color: #FAF9F4;
  padding-top: 40px;
  padding-bottom: 60px;
}
@media (min-width: 640px) {
  #home-04 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.home-04-container {
  padding-left: 24px;
  padding-right: 24px;
}

.home-04-block {
  margin-left: auto;
  margin-right: auto;
  background: #FFFFFF;
  max-width: 1105px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  -webkit-box-shadow: 0px 4px 8px 2px rgba(51, 51, 51, 0.24);
          box-shadow: 0px 4px 8px 2px rgba(51, 51, 51, 0.24);
  padding: 32px 16px;
}
@media (min-width: 640px) {
  .home-04-block {
    padding-top: 34px;
    padding-bottom: 33px;
  }
}

.home-04-tit {
  color: #0098DA;
  text-align: center;
  line-height: 1.4;
  font-size: 30px;
  margin-bottom: 0;
  margin-top: 68px;
}
@media (max-width: 639px) {
  .home-04-tit {
    font-weight: 700;
    font-size: 20px;
    margin-top: 32px;
  }
}

#home-05 {
  background-image: url(../img/top/05_01_s.png);
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 44px;
  padding-bottom: 60px;
  text-align: center;
  position: relative;
}
@media (min-width: 640px) {
  #home-05 {
    background-image: url(../img/top/05_01.png);
    padding-top: 96px;
    padding-bottom: 126px;
  }
}
#home-05::after {
  content: "";
  position: absolute;
  display: block;
  border-right: 17px solid transparent;
  border-left: 17px solid transparent;
  border-top: 18.68px solid #FFF;
  bottom: -18px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 640px) {
  #home-05::after {
    border-right: 36px solid transparent;
    border-left: 36px solid transparent;
    border-top: 36.16px solid #FFF;
    bottom: -36px;
  }
}
#home-05 .list wrapper {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
#home-05 ul {
  margin-top: 56px;
}
@media (min-width: 640px) {
  #home-05 ul {
    margin-top: 45px;
  }
}
#home-05 h3 {
  color: #0098DA;
  font-size: 20px;
}

#home-06 {
  background-color: #0098DA;
  color: #FFF;
  text-align: center;
  padding-top: 44px;
  padding-bottom: 60px;
}
@media (min-width: 640px) {
  #home-06 {
    padding-top: 68px;
    padding-bottom: 117px;
  }
}
@media (min-width: 640px) {
  #home-06 .com-tit-03 {
    margin-bottom: 32px;
  }
}

.home-06-list {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 32px;
}
@media (min-width: 640px) {
  .home-06-list {
    margin-top: 65px;
  }
}
.home-06-list li {
  background-color: #FFF;
  border-radius: 20px;
  -webkit-filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  padding: 24px 16px 50px;
}
@media (min-width: 640px) {
  .home-06-list li {
    padding: 40px 60px;
    font-size: 20px;
    height: 292px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 27.5px;
       -moz-column-gap: 27.5px;
            column-gap: 27.5px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 639px) {
  .home-06-list li {
    max-width: 327px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 960px) {
  .home-06-list li {
    -webkit-column-gap: 55px;
       -moz-column-gap: 55px;
            column-gap: 55px;
  }
}
.home-06-list li:not(:last-child) {
  margin-bottom: 57.68px;
  position: relative;
}
@media (min-width: 640px) {
  .home-06-list li:not(:last-child) {
    margin-bottom: 60px;
  }
}
.home-06-list li:not(:last-child)::after {
  position: absolute;
  content: "";
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-right: 17px solid transparent;
  border-left: 17px solid transparent;
  border-top: 18.68px solid #FFF;
  bottom: -18px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 35px;
}
@media (min-width: 640px) {
  .home-06-list li:not(:last-child)::after {
    border-right: 36px solid transparent;
    border-left: 36px solid transparent;
    border-top: 36.16px solid #FFF;
    bottom: -36px;
    width: 71px;
  }
}
.home-06-list li figure {
  width: 295px;
  height: 212px;
  background: linear-gradient(131.77deg, #CCEDFF 3.88%, #FFF0ED 78.78%), #FFFFFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 7px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (min-width: 640px) {
  .home-06-list li figure {
    width: 360px;
  }
}
@media (max-width: 639px) {
  .home-06-list li figure {
    margin-left: auto;
    margin-right: auto;
  }
}
.home-06-list li p {
  color: #000;
  line-height: 1.5;
}
.home-06-list h3 {
  color: #FF4A24;
  font-size: 20px;
  font-weight: 700;
}
@media (min-width: 640px) {
  .home-06-list h3 {
    font-size: 24px;
  }
}
@media (max-width: 639px) {
  .home-06-list h3 {
    margin-top: 24px;
  }
}

#home-07 {
  background-image: url(../img/top/05_01_s.png);
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 44px;
  padding-bottom: 60px;
  text-align: center;
}
@media (min-width: 640px) {
  #home-07 {
    background-image: url(../img/top/05_01.png);
    padding-top: 119px;
    padding-bottom: 152px;
  }
}
#home-07 h3 {
  margin-top: 0;
  line-height: 1.333;
  margin-bottom: 24px;
  font-weight: 700;
}
#home-07 h4 {
  background-color: #0098DA;
  color: #FFF;
  border-radius: 1000px;
  padding-top: 14px;
  padding-bottom: 16px;
  font-size: 20px;
  height: 60px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 32px;
}
@media (min-width: 640px) {
  #home-07 h4 {
    font-size: 24px;
    padding-top: 12px;
    padding-bottom: 14px;
    margin-bottom: 20px;
  }
}
#home-07 .home-07-container-02 h4 {
  margin-bottom: 32px;
}
@media (min-width: 640px) {
  #home-07 .home-07-container-02 h4 {
    margin-bottom: 45px;
  }
}
#home-07 .img-programming {
  width: 100%;
  overflow-x: scroll;
  margin-top: 60px;
}
@media (min-width: 640px) {
  #home-07 .img-programming {
    margin-top: 64px;
  }
}
#home-07 .img-programming img {
  max-width: none;
}

.home-07-container-01 {
  margin-top: 44px;
  margin-bottom: 60px;
}
@media (min-width: 640px) {
  .home-07-container-01 {
    margin-top: 73px;
    margin-bottom: 56px;
  }
}
.home-07-container-01 .list-wrapper {
  max-width: 513px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 60px;
}
@media (min-width: 640px) {
  .home-07-container-01 .list-wrapper {
    margin-top: 32px;
  }
}
@media (min-width: 960px) {
  .home-07-container-01 .list-wrapper {
    max-width: 786px;
  }
}

.home-07-list-01 {
  margin-left: -28px;
}
.home-07-list-01 li {
  padding-top: 79px;
  padding-left: 28px;
}
.home-07-list-01 li > div {
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.24);
          box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.24);
  border-radius: 20px;
  padding-top: 104px;
  position: relative;
  padding-bottom: 32px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 348px;
}
@media (min-width: 640px) {
  .home-07-list-01 li > div {
    padding-bottom: 23px;
    height: 257px;
  }
}
@media (max-width: 639px) {
  .home-07-list-01 li > div {
    margin-left: auto;
    margin-right: auto;
  }
}
.home-07-list-01 .uk-grid-margin {
  margin-top: 32px;
}
.home-07-list-01 h5 {
  font-size: 20px;
  margin-top: 0;
  margin-bottom: 20px;
}
@media (min-width: 640px) {
  .home-07-list-01 h5 {
    margin-bottom: 26px;
  }
}
.home-07-list-01 p {
  font-size: 12px;
  line-height: 1.666;
}
.home-07-list-01 figure {
  position: absolute;
  top: -79px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}
.home-07-list-01 figure.engineer_01 {
  top: -74px;
}
@media (min-width: 640px) {
  .home-07-list-01 figure.engineer_01 {
    top: -77px;
  }
}
.home-07-list-01 figure.engineer_02 {
  top: -77px;
}
.home-07-list-01 figure.engineer_03 {
  top: -75px;
}

@media (min-width: 640px) {
  .home-07-list-02 li > div {
    max-width: 240px;
  }
}
.home-07-list-02 p {
  color: #000;
}

#home-08 {
  background: linear-gradient(131.77deg, #CCEDFF 3.88%, #FFF0ED 78.78%), #FFFFFF;
  padding-top: 44px;
  padding-bottom: 60px;
  text-align: center;
}
@media (min-width: 640px) {
  #home-08 {
    padding-top: 96px;
    padding-bottom: 96px;
  }
}
#home-08 .com-tit-02 {
  margin-bottom: 44px;
}
@media (min-width: 960px) {
  #home-08 .com-tit-02 {
    margin-bottom: 4px;
  }
}
#home-08 .com-tit-04 {
  margin-top: 0;
  margin-bottom: 24px;
}
@media (min-width: 640px) {
  #home-08 .com-tit-04 {
    margin-bottom: 26px;
  }
}

.home-08-list {
  margin-left: -10px;
}
.home-08-list li {
  padding-left: 10px;
}
.home-08-list .uk-grid-margin {
  margin-top: 60px;
}
.home-08-list figure {
  margin-bottom: 24px;
}
@media (min-width: 640px) {
  .home-08-list figure.img_01 {
    margin-bottom: 57.54px;
  }
}
@media (min-width: 640px) {
  .home-08-list figure.img_02 {
    margin-bottom: 73px;
  }
}
.home-08-list figure.img_03 {
  margin-bottom: 19px;
}
@media (min-width: 640px) {
  .home-08-list figure.img_03 {
    margin-bottom: 51px;
  }
}

#home-09 {
  background-color: #FAF9F4;
  text-align: center;
  padding-top: 44px;
  padding-bottom: 60px;
}
@media (min-width: 640px) {
  #home-09 {
    padding-top: 144px;
    padding-bottom: 136px;
  }
}
#home-09 .uk-container + .uk-container {
  margin-top: 44px;
}
@media (min-width: 640px) {
  #home-09 .uk-container + .uk-container {
    margin-top: 134px;
  }
}

.home-09-tit {
  margin-bottom: 24px;
}
@media (min-width: 640px) {
  .home-09-tit {
    margin-bottom: 27px;
    font-size: 38px;
  }
}

.home-09-container {
  max-width: 982px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 44px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: linear-gradient(131.77deg, #CCEDFF 3.88%, #FFF0ED 78.78%), #FFFFFF;
  padding: 74px 16px 60px;
}
@media (min-width: 640px) {
  .home-09-container {
    padding: 67px 70px 70px;
    margin-top: 76px;
  }
}
.home-09-container .block-01 {
  background-color: #FAF9F4;
  position: relative;
  padding: 54px 30px 44px;
}
@media (min-width: 640px) {
  .home-09-container .block-01 {
    padding-top: 57px;
    padding-bottom: 45px;
  }
}
@media (min-width: 960px) {
  .home-09-container .block-01 {
    padding-left: 60px;
    padding-right: 60px;
  }
}
.home-09-container .block-01 h3 {
  font-size: 20px;
  font-weight: 700;
  border: 1px solid #0098DA;
  background-color: #FFF;
  border-radius: 1000px;
  width: 295px;
  height: 60px;
  color: #0098DA;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 13px;
  padding-bottom: 15px;
  position: absolute;
  top: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 640px) {
  .home-09-container .block-01 h3 {
    width: 322px;
  }
}
.home-09-container .block-01 figure {
  margin-top: 44px;
}
@media (min-width: 640px) {
  .home-09-container .block-01 figure {
    margin-top: 42px;
  }
}
.home-09-container .block-02 {
  background-color: #FFF;
  border: 4px solid #4CD9ED;
  -o-border-image: linear-gradient(171.88deg, #4CD9ED 1.28%, #46A5EC 54.36%, #437FEC 99.58%);
     border-image: linear-gradient(171.88deg, #4CD9ED 1.28%, #46A5EC 54.36%, #437FEC 99.58%);
  border-image-slice: 1;
  padding-top: 59px;
  padding-left: 12px;
  padding-right: 13px;
  padding-bottom: 35px;
  margin-top: 85px;
  position: relative;
}
@media (min-width: 640px) {
  .home-09-container .block-02 {
    padding-top: 66px;
    padding-left: 53px;
    padding-right: 62px;
    padding-bottom: 56.26px;
    margin-top: 78px;
  }
}
.home-09-container .block-02 h3 {
  font-size: 20px;
  color: #fff;
  background-color: #0098DA;
  font-weight: 700;
  border-radius: 1000px;
  width: 295px;
  height: 60px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 13px;
  padding-bottom: 15px;
  position: absolute;
  top: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 640px) {
  .home-09-container .block-02 h3 {
    width: 322px;
  }
}
.home-09-container .block-02 figure {
  margin-top: 26px;
}
@media (min-width: 640px) {
  .home-09-container .block-02 figure {
    margin-top: 35px;
  }
}
.home-09-container.bottom {
  padding-bottom: 73px;
}
.home-09-container.bottom .block-01 {
  background-color: #FFF;
  padding-bottom: 60px;
  padding-left: 11px;
  padding-right: 11px;
}
@media (max-width: 639px) {
  .home-09-container.bottom .block-01 {
    padding-top: 51px;
  }
}
@media (min-width: 640px) {
  .home-09-container.bottom .block-01 {
    padding-bottom: 87.2px;
    padding-left: 25px;
    padding-right: 26.72px;
  }
}
.home-09-container.bottom .block-01 figure {
  margin-top: 40px;
  overflow-x: scroll;
}
@media (min-width: 640px) {
  .home-09-container.bottom .block-01 figure {
    margin-top: 66.37px;
  }
}
.home-09-container.bottom .block-01 figure img {
  max-width: none;
  width: 790.28px;
}
.home-09-container.bottom .block-02 {
  padding-bottom: 43.44px;
  padding-left: 15px;
  padding-right: 16px;
}
@media (max-width: 639px) {
  .home-09-container.bottom .block-02 {
    padding-top: 60.15px;
    padding-bottom: 48px;
  }
}
.home-09-container.bottom .block-02 figure {
  margin-top: 44px;
}
@media (min-width: 640px) {
  .home-09-container.bottom .block-02 figure {
    margin-top: 26px;
  }
}
@media (max-width: 639px) {
  .home-09-container.bottom .block-02 figure img {
    width: 100%;
  }
}

#home-10 {
  background-image: url(../img/top/05_01_s.png);
  background-position: top center;
  background-repeat: no-repeat;
  padding-top: 44px;
  padding-bottom: 60px;
  text-align: center;
}
@media (min-width: 640px) {
  #home-10 {
    background-image: url(../img/top/05_01.png);
    padding-top: 96px;
    padding-bottom: 96px;
  }
}
#home-10 .list-wrapper {
  max-width: 327.23px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 44px;
}
@media (min-width: 640px) {
  #home-10 .list-wrapper {
    margin-top: 71px;
    max-width: 496.46px;
  }
}
@media (min-width: 768px) {
  #home-10 .list-wrapper {
    max-width: 657px;
  }
}
@media (min-width: 960px) {
  #home-10 .list-wrapper {
    max-width: 880px;
  }
}
@media (min-width: 1200px) {
  #home-10 .list-wrapper {
    max-width: 1107px;
  }
}

.home-10-tit {
  color: #333333;
}
@media (min-width: 640px) {
  .home-10-tit {
    font-weight: 700;
    font-size: 32px;
  }
}

.home-10-list {
  margin-left: -11.23px;
}
@media (min-width: 768px) {
  .home-10-list {
    margin-left: -16px;
  }
}
.home-10-list .uk-grid-margin {
  margin-top: 20px;
}
@media (min-width: 640px) {
  .home-10-list .uk-grid-margin {
    margin-top: 23px;
  }
}
.home-10-list li {
  padding-left: 11.23px;
}
@media (min-width: 768px) {
  .home-10-list li {
    padding-left: 16px;
  }
}
.home-10-list li div {
  background-color: #FFF;
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.24);
          box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.24);
  border-radius: 20px;
  width: 158px;
  height: 156px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 24.5px;
  padding-bottom: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 768px) {
  .home-10-list li div {
    width: 211px;
    height: 209px;
    padding-top: 34px;
    padding-bottom: 40px;
  }
}
.home-10-list li figcaption {
  font-weight: 700;
  color: #0098DA;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .home-10-list li figcaption {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .development img {
    width: 100.85px;
  }
}
.home-10-list li .development figcaption {
  margin-top: 26px;
}
@media (min-width: 768px) {
  .home-10-list li .development figcaption {
    margin-top: 25px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .ico img {
    width: 58.23px;
  }
}
.home-10-list li .ico figcaption {
  margin-top: 21.2px;
}
@media (min-width: 768px) {
  .home-10-list li .ico figcaption {
    margin-top: 18px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .nft img {
    width: 95.55px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .system img {
    width: 60.98px;
  }
}
.home-10-list li .system figcaption {
  margin-top: 20.61px;
}
@media (min-width: 768px) {
  .home-10-list li .system figcaption {
    margin-top: 18.62px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .sto img {
    width: 49px;
  }
}
.home-10-list li .sto figcaption {
  margin-top: 27px;
}
@media (min-width: 768px) {
  .home-10-list li .sto figcaption {
    margin-top: 29px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .movie img {
    width: 70px;
  }
}
.home-10-list li .movie figcaption {
  margin-top: 27px;
}
@media (min-width: 768px) {
  .home-10-list li .movie figcaption {
    margin-top: 26px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .defi img {
    width: 57px;
  }
}
.home-10-list li .defi figcaption {
  margin-top: 14px;
}
@media (min-width: 768px) {
  .home-10-list li .defi figcaption {
    margin-top: 23px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .app img {
    width: 61px;
  }
}
.home-10-list li .app figcaption {
  margin-top: 2px;
}
@media (min-width: 768px) {
  .home-10-list li .app figcaption {
    margin-top: 10px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .pos img {
    width: 78px;
  }
}
.home-10-list li .pos figcaption {
  margin-top: 25px;
}
@media (min-width: 768px) {
  .home-10-list li .pos figcaption {
    margin-top: 23px;
  }
}
@media (max-width: 767px) {
  .home-10-list li .point img {
    width: 48px;
  }
}
.home-10-list li .point figcaption {
  margin-top: 30px;
}

.home-10-text {
  margin-top: 44px;
  color: #FF4A24;
}
@media (min-width: 640px) {
  .home-10-text {
    margin-top: 52px;
    font-size: 20px;
    line-height: 1.5;
  }
}

#home-11 {
  text-align: center;
  padding-top: 44px;
  padding-bottom: 60px;
  background-color: #FAF9F4;
  position: relative;
}
@media (min-width: 640px) {
  #home-11 {
    padding-top: 144px;
    padding-bottom: 143px;
  }
}
@media (min-width: 768px) {
  #home-11::before {
    content: "";
    display: block;
    background-image: url(../img/top/11_01.png);
    width: 233.77px;
    height: 228.37px;
    position: absolute;
    top: 90px;
    right: 0;
  }
}
@media (min-width: 960px) {
  #home-11::before {
    right: 9%;
  }
}
@media (min-width: 1200px) {
  #home-11::before {
    right: 12%;
  }
}
@media (min-width: 640px) {
  #home-11 .com-tit-02 {
    margin-bottom: 32px;
  }
}
@media (min-width: 640px) {
  #home-11 p {
    line-height: 1.5;
    font-weight: 700;
  }
}
#home-11 .table-wrapper {
  margin-top: 44px;
  overflow-x: scroll;
}
@media (min-width: 640px) {
  #home-11 .table-wrapper {
    margin-top: 41px;
  }
}

.home-11-table {
  border-spacing: 0px;
  width: 100%;
  max-width: 1108px;
  min-width: 644px;
  margin-left: auto;
  margin-right: auto;
  color: #A7A9AC;
}
@media (min-width: 960px) {
  .home-11-table {
    font-size: 20px;
    line-height: 1.5;
  }
}
.home-11-table tr {
  height: 92px;
}
.home-11-table tr:first-child {
  font-size: 24px;
  color: #000;
}
.home-11-table tr:first-child th, .home-11-table tr:first-child td {
  padding: 0;
  vertical-align: bottom;
}
.home-11-table tr:first-child span {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #DADADA;
  display: block;
  height: 60px;
  padding-top: 9px;
  padding-bottom: 17px;
}
.home-11-table tr:first-child .labogy {
  color: #FFF;
}
.home-11-table tr:first-child .labogy span {
  background-color: #0098DA;
  height: 76px;
  padding-top: 16.25px;
  padding-bottom: 23.25px;
}
@media (min-width: 640px) {
  .home-11-table tr:first-child .labogy span {
    height: 75px;
  }
}
.home-11-table tr:first-child td:last-child {
  border-left: 1px solid #F7F9FF;
}
.home-11-table tr:nth-child(even) {
  background-color: #F8F7F6;
}
.home-11-table tr:nth-child(even) .labogy {
  background-color: #F1F3FB;
  color: #2E7AB1;
  border-left: 3px solid #0098DA;
  border-right: 3px solid #0098DA;
}
.home-11-table tr:nth-child(even) th, .home-11-table tr:nth-child(even) td {
  border-top: 1px solid #D6D3D0;
}
.home-11-table tr:nth-child(odd):not(:first-child) {
  background-color: #FFF;
}
.home-11-table tr:nth-child(odd):not(:first-child) .labogy {
  border-left: 3px solid #0098DA;
  border-right: 3px solid #0098DA;
}
.home-11-table tr:nth-child(odd):not(:first-child) th, .home-11-table tr:nth-child(odd):not(:first-child) td {
  border-top: 1px solid #D6D3D0;
}
.home-11-table tr:last-child .labogy {
  border-bottom: 3px solid #0098DA;
}
.home-11-table th {
  width: 160px;
  color: #000;
}
@media (min-width: 960px) {
  .home-11-table th {
    width: 238px;
  }
}
.home-11-table td {
  width: 160px;
}
@media (min-width: 960px) {
  .home-11-table td {
    width: 290px;
  }
}
.home-11-table td.labogy {
  color: #0098DA;
}
@media (max-width: 959px) {
  .home-11-table td.labogy {
    width: 161px;
  }
}
.home-11-table td:last-child {
  border-left: 1px solid #D6D3D0;
}

#home-12 {
  background: linear-gradient(131.77deg, #CCEDFF 3.88%, #FFF0ED 78.78%), #FFFFFF;
  padding-top: 44px;
  padding-bottom: 60px;
  text-align: center;
}
@media (min-width: 640px) {
  #home-12 {
    padding-top: 114px;
    padding-bottom: 144px;
  }
}
#home-12 .com-tit-02 {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  #home-12 .com-tit-02 {
    margin-bottom: 57px;
  }
}
@media (min-width: 768px) {
  #home-12 .sp-img {
    display: none;
  }
}
#home-12 .sp-img.top {
  text-align: right;
}
#home-12 .sp-img.top img {
  max-width: 28.5%;
}
#home-12 .sp-img.bottom {
  margin-top: 44px;
}
#home-12 .sp-img.bottom img {
  max-width: 34.5%;
}

.home-12-container {
  padding-left: 24px;
  padding-right: 24px;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.home-12-container .outer {
  position: relative;
}
.home-12-container .pc-img {
  display: none;
}
@media (min-width: 768px) {
  .home-12-container .pc-img {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 25%;
  }
}
@media (max-width: 1199px) {
  .home-12-container .pc-img {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media (min-width: 960px) {
  .home-12-container .pc-img {
    width: 34.3%;
  }
}
@media (min-width: 1200px) {
  .home-12-container .pc-img {
    top: 227px;
  }
}
.home-12-container .pc-img img {
  margin-left: auto;
  display: block;
}
.home-12-container .pc-img img:first-child {
  width: 42.2%;
}

.home-12-list {
  padding-left: 0;
  counter-reset: number 0;
}
.home-12-list li {
  background-color: #FFF;
  -webkit-box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.24);
          box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.24);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 20px;
  position: relative;
  padding: 32px 24px;
}
@media (max-width: 767px) {
  .home-12-list li {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .home-12-list li {
    text-align: left;
    margin-left: auto;
  }
}
.home-12-list li::before {
  display: block;
  width: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero) " ";
  position: absolute;
  color: #FFF;
  border-radius: 50%;
  background-color: #000;
  left: 50%;
  top: -26px;
  text-align: center;
  font-size: 20px;
  line-height: 1.5;
  padding-top: 9px;
  padding-bottom: 25px;
}
@media (max-width: 767px) {
  .home-12-list li::before {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media (min-width: 768px) {
  .home-12-list li::before {
    width: 90px;
    height: 90px;
    left: -39px;
    top: 38px;
    font-size: 38px;
    font-weight: 700;
    padding-top: 14px;
    padding-bottom: 45px;
  }
}
@media (max-width: 767px) {
  .home-12-list li + li {
    margin-top: 58px;
  }
}
@media (min-width: 768px) {
  .home-12-list li.contact {
    width: 77.3%;
    max-width: 851px;
    padding-left: 10%;
    padding-right: 2%;
  }
}
@media (min-width: 960px) {
  .home-12-list li.contact {
    padding-left: 7.3%;
  }
}
.home-12-list li.contact::before {
  background-color: #90CAF3;
}
@media (min-width: 768px) {
  .home-12-list li.contact::before {
    top: 24px;
    left: -29px;
  }
}
.home-12-list li.contact h3 {
  color: #559FD3;
}
@media (min-width: 768px) {
  .home-12-list li.first-meeting {
    width: 59%;
    min-width: 495px;
    max-width: 650px;
    margin-top: 31px;
    padding-left: 9.1%;
    padding-right: 10.4%;
  }
}
.home-12-list li.first-meeting::before {
  background-color: #559FD3;
}
@media (min-width: 768px) {
  .home-12-list li.first-meeting::before {
    top: 32px;
  }
}
.home-12-list li.first-meeting h3 {
  color: #2E7AB1;
}
@media (min-width: 768px) {
  .home-12-list li.estimate {
    margin-top: 32px;
    width: 59%;
    min-width: 495px;
    max-width: 650px;
    padding-left: 9.1%;
    padding-right: 8%;
  }
}
.home-12-list li.estimate::before {
  background-color: #0098DA;
}
.home-12-list li.estimate h3 {
  color: #376299;
}
@media (min-width: 768px) {
  .home-12-list li.second-meeting {
    margin-top: 55px;
    width: 59.4%;
    min-width: 500px;
    max-width: 654px;
    padding-left: 13%;
    padding-right: 4.3%;
  }
}
.home-12-list li.second-meeting::before {
  background-color: #376299;
}
@media (min-width: 768px) {
  .home-12-list li.second-meeting::before {
    left: -35px;
    top: 37px;
  }
}
.home-12-list li.second-meeting h3 {
  color: #063876;
}
@media (min-width: 768px) {
  .home-12-list li.contract {
    padding-top: 38px;
    padding-bottom: 45px;
    padding-left: 9.1%;
    padding-right: 10.5%;
    margin-top: 26px;
    width: 77.3%;
    max-width: 851px;
  }
}
.home-12-list li.contract::before {
  background-color: #063876;
}
@media (min-width: 768px) {
  .home-12-list li.contract::before {
    left: -28px;
  }
}
.home-12-list li.contract h3 {
  color: #033677;
}
@media (min-width: 768px) {
  .home-12-list li.contract .mark {
    margin-top: 10px;
  }
}
.home-12-list li h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 12px;
}
.home-12-list li .mark {
  color: #FFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 16px;
  padding-bottom: 16px;
  text-align: center;
  line-height: 1.33;
  font-weight: 700;
  max-width: 371px;
  height: 56px;
  background-color: #FF4A24;
  margin-top: 24px;
}
@media (min-width: 768px) {
  .home-12-list li .mark {
    font-size: 24px;
    height: 59px;
    padding-top: 12px;
    padding-bottom: 15px;
    margin-top: 15px;
  }
}
@media (max-width: 767px) {
  .home-12-list li .mark {
    margin-left: auto;
    margin-right: auto;
  }
}

#home-13 {
  background-color: #0098DA;
  padding-top: 44px;
  padding-bottom: 60px;
}
@media (min-width: 640px) {
  #home-13 {
    padding-top: 144px;
    padding-bottom: 144px;
  }
}
#home-13 .logo {
  margin-top: 33px;
}
@media (min-width: 640px) {
  #home-13 .logo {
    margin-top: 35px;
  }
}
#home-13 .logo img {
  width: 41.8%;
}
@media (min-width: 768px) {
  #home-13 .logo img {
    width: 284px;
  }
}
#home-13 .com-tit-03 {
  margin-bottom: 32px;
}
@media (min-width: 640px) {
  #home-13 .com-tit-03 {
    margin-bottom: 55px;
  }
}
#home-13 .outer {
  padding-left: 24px;
  padding-right: 24px;
}
@media (min-width: 640px) {
  #home-13 .outer {
    padding-left: 65.36px;
    padding-right: 65.36px;
  }
}

.home-13-container {
  background-color: #FFF;
  border-radius: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  padding: 32px 13.5px 82px;
  position: relative;
}
@media (min-width: 640px) {
  .home-13-container {
    padding: 100px 105px 41px;
  }
}
.home-13-container::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/top/13_01.png);
  width: 111.15px;
  height: 115.76px;
  position: absolute;
  bottom: 23.24px;
  right: 19.85px;
}
@media (min-width: 768px) {
  .home-13-container::after {
    width: 196.74px;
    height: 199.8px;
    bottom: 30.37px;
  }
}
@media (min-width: 1200px) {
  .home-13-container::after {
    width: 262.32px;
    height: 266.5px;
    bottom: 37.5px;
    right: -41.36px;
  }
}
.home-13-container dl {
  max-width: 690px;
  margin-left: auto;
  margin-right: auto;
}
.home-13-container dl div {
  border-bottom: 1px solid #D6D3D0;
  padding-bottom: 12px;
}
@media (min-width: 640px) {
  .home-13-container dl div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.home-13-container dl div + div {
  padding-top: 28px;
}
.home-13-container dl dt {
  font-size: 14px;
}
@media (min-width: 640px) {
  .home-13-container dl dt {
    width: 32.1%;
    font-size: 20px;
  }
}
@media (max-width: 639px) {
  .home-13-container dl dt {
    font-weight: 700;
    text-align: center;
  }
}
@media (min-width: 640px) {
  .home-13-container dl dd {
    width: 67.9%;
  }
}
@media (max-width: 639px) {
  .home-13-container dl dd {
    margin-top: 16px;
    text-align: center;
  }
}

#home-14 {
  padding-top: 44px;
  padding-bottom: 60px;
}
@media (min-width: 640px) {
  #home-14 {
    padding-top: 144px;
    padding-bottom: 120.25px;
  }
}

.home-14-tit {
  color: #1B224C;
  text-align: center;
  margin-bottom: 20px;
}
@media (min-width: 640px) {
  .home-14-tit {
    font-size: 38px;
    margin-bottom: 21px;
  }
}

.home-14-text {
  color: #0098DA;
  text-align: center;
}
@media (min-width: 640px) {
  .home-14-text {
    font-size: 24px;
    line-height: 1.5;
  }
}

.home-14-container {
  margin-top: 20px;
  max-width: 1008.88px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .home-14-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 82px;
    -webkit-column-gap: 53px;
       -moz-column-gap: 53px;
            column-gap: 53px;
  }
}
@media (min-width: 1200px) {
  .home-14-container {
    -webkit-column-gap: 83px;
       -moz-column-gap: 83px;
            column-gap: 83px;
  }
}
.home-14-container .left figure {
  text-align: center;
  margin-bottom: 12px;
}
@media (min-width: 768px) {
  .home-14-container .left figure {
    margin-bottom: 42px;
  }
}
.home-14-container .left figure img {
  -webkit-box-shadow: 0px 8px 16px 4px rgba(0, 0, 0, 0.24);
          box-shadow: 0px 8px 16px 4px rgba(0, 0, 0, 0.24);
}
@media (max-width: 767px) {
  .home-14-container .right {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .home-14-container .right {
    max-width: 517.88px;
    width: 51.3%;
  }
}
.home-14-container .form-table-01 .privacy-policy p {
  font-size: 12px;
  color: #1B224C;
}
@media (min-width: 640px) {
  .home-14-container .form-table-01 .privacy-policy p {
    font-size: 14px;
  }
}
@media (min-width: 768px) {
  .home-14-container .form-table-01 .privacy-policy p {
    text-align: left;
  }
}
@media (min-width: 768px) {
  .home-14-container .form-table-01 .privacy-policy .wpcf7-list-item label {
    color: #706D65;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
  }
}
.home-14-container .form-table-01 select[name=purpose] {
  border-color: #EEF1F2;
  color: #706D65;
}

/* section
====================================== */
/* parts
--------------------------------- */
/* title タイトル
--------------------------------- */
.com-tit-01 {
  color: #1B224C;
  font-size: 24px;
  text-align: center;
  margin-bottom: 19px;
}
@media (min-width: 640px) {
  .com-tit-01 {
    font-size: 38px;
    margin-bottom: 24px;
  }
}
@media (max-width: 479px) {
  .com-tit-01.small {
    font-size: 20px;
  }
}

.com-tit-02 {
  text-align: center;
  font-weight: 700;
  color: #0098DA;
  font-size: 28px;
  margin-bottom: 24px;
}
@media (min-width: 640px) {
  .com-tit-02 {
    font-size: 38px;
  }
}
.com-tit-02 span {
  display: block;
  line-height: 1;
  font-size: 16px;
  color: #FF4A24;
  margin-bottom: 12px;
}
@media (min-width: 640px) {
  .com-tit-02 span {
    margin-bottom: 13px;
  }
}

.com-tit-03 {
  text-align: center;
  color: #FFF;
  margin-bottom: 24px;
}
@media (min-width: 640px) {
  .com-tit-03 {
    font-size: 38px;
  }
}

.com-tit-04 {
  color: #0098DA;
  font-size: 20px;
}

/* panel パネル
--------------------------------- */
/* セクションやブロック間の隙間
--------------------------------- */
.com-mt-s {
  margin-top: 20px;
}
@media (min-width: 640px) {
  .com-mt-s {
    margin-top: 30px;
  }
}

.com-mt-m {
  margin-top: 40px;
}
@media (min-width: 640px) {
  .com-mt-m {
    margin-top: 60px;
  }
}

.com-mt-l {
  margin-top: 90px;
}
@media (min-width: 640px) {
  .com-mt-l {
    margin-top: 120px;
  }
}

.com-mt-1em {
  margin-top: 1em;
}

/* list style リストスタイル
--------------------------------- */
.com-list-01 li {
  margin-left: 1.2em;
}
.com-list-01 li::before {
  content: "・";
  display: inline-block;
  width: 1.2em;
  margin-left: -1.2em;
}
.com-list-01 li + li {
  margin-top: 0.4em;
}
.com-list-01.notice li::before {
  content: "※";
}
.com-list-01.circle li::before {
  content: "●";
}
.com-list-01.square li::before {
  content: "■";
}

.com-list-02 {
  counter-reset: item;
  list-style-type: none;
  padding-left: 0;
}
.com-list-02 li {
  margin-left: 1.8em;
}
.com-list-02 li + li {
  margin-top: 0.4em;
}
.com-list-02 li::before {
  counter-increment: item;
  content: counter(item) ".";
  display: inline-block;
  width: 1.5em;
  padding-right: 0.3em;
  margin-left: -1.8em;
  text-align: right;
}

/* text テキスト
--------------------------------- */
.com-text-01 {
  text-align: center;
  color: #23221F;
  line-height: 1.66;
}
@media (max-width: 639px) {
  .com-text-01 {
    font-size: 12px;
  }
}

/* font-size フォントサイズ
--------------------------------- */
.com-fz-10 {
  font-size: 10px;
  font-size: 0.6666666667rem;
}

.com-fz-11 {
  font-size: 11px;
  font-size: 0.7333333333rem;
}

.com-fz-12 {
  font-size: 12px;
  font-size: 0.8rem;
}

.com-fz-13 {
  font-size: 13px;
  font-size: 0.8666666667rem;
}

.com-fz-14 {
  font-size: 14px;
  font-size: 0.9333333333rem;
}

.com-fz-15 {
  font-size: 15px;
  font-size: 1rem;
}

.com-fz-16 {
  font-size: 16px;
  font-size: 1.0666666667rem;
}

.com-fz-17 {
  font-size: 17px;
  font-size: 1.1333333333rem;
}

.com-fz-18 {
  font-size: 18px;
  font-size: 1.2rem;
}

.com-fz-19 {
  font-size: 19px;
  font-size: 1.2666666667rem;
}

.com-fz-20 {
  font-size: 20px;
  font-size: 1.3333333333rem;
}

.com-fz-21 {
  font-size: 21px;
  font-size: 1.4rem;
}

.com-fz-22 {
  font-size: 22px;
  font-size: 1.4666666667rem;
}

.com-fz-23 {
  font-size: 23px;
  font-size: 1.5333333333rem;
}

.com-fz-24 {
  font-size: 24px;
  font-size: 1.6rem;
}

.com-fz-25 {
  font-size: 25px;
  font-size: 1.6666666667rem;
}

.com-fz-26 {
  font-size: 26px;
  font-size: 1.7333333333rem;
}

.com-fz-27 {
  font-size: 27px;
  font-size: 1.8rem;
}

.com-fz-28 {
  font-size: 28px;
  font-size: 1.8666666667rem;
}

.com-fz-29 {
  font-size: 29px;
  font-size: 1.9333333333rem;
}

.com-fz-30 {
  font-size: 30px;
  font-size: 2rem;
}

/* リンク
--------------------------------- */
.com-btn-01 {
  margin-left: auto;
  margin-right: auto;
  display: block;
  color: #FFF;
  background-color: #0098DA;
  width: 100%;
  height: 41.55px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 7px;
  padding-bottom: 14px;
  border-radius: 8px;
  text-align: center;
}
@media (min-width: 640px) {
  .com-btn-01 {
    width: 518px;
    height: 75px;
    padding-top: 22px;
    padding-bottom: 25px;
  }
}
.com-btn-01:hover {
  background-color: #FFF;
  border: 2px solid #0098DA;
  color: #0098DA;
}
.com-btn-01.orange {
  background-color: #FF4A24;
}
.com-btn-01.orange:hover {
  border: 2px solid #FF4A24;
  color: #FF4A24;
  background-color: #FFF;
}
@media (min-width: 640px) {
  .com-btn-01.large {
    width: 100%;
  }
}

#privacy-policy-01 {
  padding-top: 52px;
  padding-bottom: 61px;
}
@media (min-width: 640px) {
  #privacy-policy-01 {
    padding-top: 64px;
    padding-bottom: 116px;
  }
}

.privacy-policy-list {
  padding-left: 0;
  margin-top: 52px;
  margin-bottom: 48px;
  counter-reset: number 0;
}
@media (min-width: 640px) {
  .privacy-policy-list {
    margin-top: 100px;
    margin-bottom: 96px;
  }
}
.privacy-policy-list li + li {
  margin-top: 40px;
}
@media (min-width: 640px) {
  .privacy-policy-list li + li {
    margin-top: 90px;
  }
}
.privacy-policy-list h3 {
  font-weight: 700;
  color: #1B224C;
  font-size: 16px;
  line-height: 1.43;
  margin-bottom: 20px;
}
@media (min-width: 640px) {
  .privacy-policy-list h3 {
    font-size: 26px;
    margin-bottom: 27px;
  }
}
.privacy-policy-list h3::before {
  counter-increment: number 1;
  content: counter(number) "．";
}
.privacy-policy-list p {
  line-height: 1.5;
  font-size: 12px;
}
@media (min-width: 640px) {
  .privacy-policy-list p {
    font-size: 16px;
  }
}

#estimate-01 {
  padding-top: 52px;
  padding-bottom: 60px;
}
@media (min-width: 640px) {
  #estimate-01 {
    padding-top: 64px;
  }
}

.estimate-text-01 {
  font-size: 16px;
  text-align: center;
  color: #2E7AB1;
  margin-bottom: 53px;
}
@media (min-width: 640px) {
  .estimate-text-01 {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 102px;
  }
}

/* panel
--------------------------------- */
.contact-panel-01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 7px;
}
.contact-panel-01 .tel {
  width: 40px;
  line-height: 22px;
  margin-right: 0.9em;
  text-align: center;
  color: #0098DA;
  font-size: 12px;
  font-size: 0.8rem;
  font-weight: 700;
  border: #0098DA 1px solid;
}
@media (min-width: 640px) {
  .contact-panel-01 .tel {
    width: 52px;
    line-height: 28px;
    font-size: 14px;
    font-size: 0.9333333333rem;
  }
}
.contact-panel-01 .number {
  line-height: 1;
  font-size: 32px;
  font-size: 2.1333333333rem;
  font-weight: 500;
  color: #0098DA;
}
@media (min-width: 640px) {
  .contact-panel-01 .number {
    font-size: 43px;
    font-size: 2.8666666667rem;
  }
}
.contact-panel-01 .number a {
  color: #0098DA;
}

/* dl table
--------------------------------- */
.form-table-01 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #FFF;
}
.form-table-01 .tit {
  font-size: 24px;
  text-align: center;
  margin-bottom: 16px;
}
.form-table-01 .txt {
  font-size: 12px;
  line-height: 1.66;
  text-align: center;
  margin-bottom: 12px;
}
.form-table-01 .row.name {
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
.form-table-01 .row + .row {
  margin-top: 12px;
}
.form-table-01 span[data-name=department],
.form-table-01 span[data-name=position],
.form-table-01 span[data-name=purpose] {
  display: block;
  position: relative;
}
.form-table-01 span[data-name=department]::after,
.form-table-01 span[data-name=position]::after,
.form-table-01 span[data-name=purpose]::after {
  position: absolute;
  content: "";
  width: 13.13px;
  height: 7.5px;
  background-image: url(../img/common/ico-arrow.svg);
  right: 17.84px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.form-table-01 select {
  color: #706D65;
}
.form-table-01 select option:not(:first-child) {
  color: #000;
}
.form-table-01 select[name=purpose] {
  color: #B4B4B4;
}
.form-table-01 input {
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.form-table-01 .privacy-policy .wpcf7-list-item label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.form-table-01 .privacy-policy input[type=checkbox] {
  margin-right: 15px;
  width: 20px;
  height: 20px;
}
.form-table-01 .privacy-policy p {
  margin-top: 9px;
  font-size: 12px;
  text-align: center;
}
.form-table-01 .privacy-policy a {
  color: #0098DA;
  text-decoration: underline;
}
.form-table-01 .btn-submit {
  margin-top: 20px;
}
.form-table-01 .btn-submit input {
  width: 100%;
  display: block;
  color: #FFF;
  background-color: #0098DA;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 10px;
  padding-bottom: 11px;
  border-radius: 8px;
  text-align: center;
  border: none;
}
.form-table-01 .btn-submit input:hover {
  background-color: #FFF;
  border: 1px solid #0098DA;
  color: #0098DA;
}

.form-table-02 {
  max-width: 725px;
  margin-left: auto;
  margin-right: auto;
}
.form-table-02 dt {
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
.form-table-02 dt.required span {
  position: relative;
}
.form-table-02 dt.required span::after {
  content: "必須";
  color: #E01D5A;
  border: 1px solid #E01D5A;
  width: 37px;
  height: 21px;
  position: absolute;
  font-size: 12px;
  text-align: center;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 3px;
  padding-bottom: 10px;
  right: -53px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.form-table-02 dd {
  margin-top: 16px;
}
.form-table-02 dd + dt {
  margin-top: 24px;
}
.form-table-02 dd.name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 23.29px;
     -moz-column-gap: 23.29px;
          column-gap: 23.29px;
}
.form-table-02 dd .uk-flex {
  max-width: 358px;
}
.form-table-02 dd .uk-flex.large {
  max-width: 368px;
}
.form-table-02 .wpcf7-list-item + .wpcf7-list-item {
  margin-left: 1em;
}
.form-table-02 input[name=start-date] {
  color: #706D65;
  max-width: 328px !important;
}
.form-table-02 input[name=period],
.form-table-02 input[name=people] {
  max-width: 328px;
}
.form-table-02 input[type=radio] {
  margin-right: 8px;
}
.form-table-02 span[data-name=request],
.form-table-02 span[data-name=programming],
.form-table-02 span[data-name=department],
.form-table-02 span[data-name=position] {
  display: block;
  position: relative;
}
.form-table-02 span[data-name=request]::after,
.form-table-02 span[data-name=programming]::after,
.form-table-02 span[data-name=department]::after,
.form-table-02 span[data-name=position]::after {
  position: absolute;
  content: "";
  width: 13.13px;
  height: 7.5px;
  background-image: url(../img/common/ico-arrow.svg);
  right: 17.84px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.form-table-02 select {
  color: #706D65;
}
.form-table-02 select option:not(:first-child) {
  color: #000;
}
.form-table-02 .character {
  margin-left: 0.7em;
  white-space: nowrap;
}
.form-table-02 .detail p {
  margin-bottom: 24px;
}
.form-table-02 .detail textarea {
  height: 122px;
}
.form-table-02 .detail textarea::-webkit-input-placeholder {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #C1BDB7;
}
.form-table-02 .detail textarea::-moz-placeholder {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #C1BDB7;
}
.form-table-02 .detail textarea:-ms-input-placeholder {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #C1BDB7;
}
.form-table-02 .detail textarea::-ms-input-placeholder {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #C1BDB7;
}
.form-table-02 .detail textarea::placeholder {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #C1BDB7;
}
.form-table-02 .row {
  margin-top: 24px;
}
.form-table-02 .row p {
  color: #706D65;
}
.form-table-02 .privacy-policy {
  color: #1B224C;
  font-size: 12px;
  margin-top: 40px;
  text-align: center;
}
.form-table-02 .privacy-policy a {
  color: #2E7AB1;
  text-decoration: underline;
}
.form-table-02 .com-btn-01 {
  border: none;
  margin-top: 42px;
}
@media (min-width: 640px) {
  .form-table-02 .com-btn-01 {
    margin-top: 42px;
  }
}

.form-icon-required {
  display: inline-block;
  font-size: 11px;
  font-size: 0.7333333333rem;
  color: #fff;
  padding: 0.2em 0.8em;
  margin-right: 1em;
}

#estimate-thanks-01 {
  padding-top: 52px;
  padding-bottom: 17px;
}
@media (min-width: 640px) {
  #estimate-thanks-01 {
    padding-top: 64px;
    padding-bottom: 60px;
  }
}
#estimate-thanks-01 figure {
  margin-top: 37px;
  text-align: center;
}

#download-thanks-01 {
  padding-top: 52px;
  padding-bottom: 59.54px;
}
@media (min-width: 640px) {
  #download-thanks-01 {
    padding-top: 64px;
    padding-bottom: 134px;
  }
}
#download-thanks-01 figure {
  text-align: center;
  margin-top: 26px;
  margin-bottom: 24.27px;
}
@media (min-width: 640px) {
  #download-thanks-01 figure {
    margin-top: 56px;
    margin-bottom: 42px;
  }
}
#download-thanks-01 figure img {
  -webkit-box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.24);
          box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.24);
}
#download-thanks-01 h3 {
  color: #0098DA;
  font-size: 16px;
  text-align: center;
}
@media (min-width: 640px) {
  #download-thanks-01 h3 {
    font-size: 24px;
  }
}