@charset "UTF-8";
body.body main {
  overflow: hidden;
}
body.body.business-category-page .common-business-title {
  position: relative;
  text-align: center;
}
body.body.business-category-page .common-business-title .jp, body.body.business-category-page .common-business-title .en {
  display: block;
}
body.body.business-category-page .common-business-title .jp {
  font-weight: bold;
  font-size: 1.4375rem;
  letter-spacing: 0.2em;
  color: #1e277e;
}
body.body.business-category-page .common-business-title .en {
  font-family: "Roboto Slab", serif;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  color: #afafaf;
  font-weight: normal;
  margin-top: 0.3333333333em;
  display: block;
}
body.body.business-category-page .common-business-title.in-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  text-align: left;
}
body.body.business-category-page .common-business-title.in-icon .icon {
  display: block;
  margin-right: 12px;
}
body.body.business-category-page .common-business-title.in-icon .title-text .en {
  text-align: left;
}
body.body.business-category-page .common-business-title2 {
  border-bottom: 1px solid #1e277e;
  padding-bottom: 2vh;
  text-align: center;
}
body.body.business-category-page .common-business-title2.left {
  text-align: left;
}
body.body.business-category-page .common-business-title2 .jp, body.body.business-category-page .common-business-title2 .en {
  display: inline-block;
  line-height: 1.5em;
}
body.body.business-category-page .common-business-title2 .jp {
  font-weight: 500;
  font-size: 1.375rem;
  letter-spacing: 0.2em;
  color: #1e277e;
  margin-right: 10px;
}
body.body.business-category-page .common-business-title2 .en {
  font-family: "Roboto Slab", serif;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  color: #afafaf;
  font-weight: normal;
}
body.body.business-category-page .common-business-bg-title {
  background: #00afec;
  color: #fff;
  padding: 5px 8px;
  line-height: 1.5;
}
body.body.business-category-page .common-business-bg-title .jp {
  font-weight: bold;
  font-size: 1.4375rem;
  letter-spacing: 0.2em;
}
body.body.business-category-page .common-business-bg-title .en {
  font-weight: normal;
  font-size: 0.9375rem;
  display: inline-block;
  font-family: "Roboto Slab", serif;
  letter-spacing: 0.1em;
}
body.body.business-category-page .common-business-links-wrap {
  margin-top: 16.6666666667vh;
  overflow: hidden;
}
body.body.business-category-page .common-business-links-wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 4.4444444444vh;
}
body.body.business-category-page .common-business-links-wrap ul li {
  width: 194px;
  max-width: 25%;
}
body.body.business-category-page .common-business-links-wrap ul li + li {
  border-left: 1px solid #d7d7d7;
}
body.body.business-category-page .common-business-links-wrap ul li.blank {
  width: 100%;
  margin: 0;
  border: none;
  max-width: 100%;
  margin-top: 6.1111111111vh;
}
body.body.business-category-page .common-business-links-wrap ul li.blank + li {
  border-left: none;
}
body.body.business-category-page .common-business-links-wrap ul li a {
  display: block;
  padding-bottom: 1.4444444444vh;
}
body.body.business-category-page .common-business-links-wrap ul li a .icon {
  height: 103px;
  position: relative;
}
body.body.business-category-page .common-business-links-wrap ul li a .icon img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body.body.business-category-page .common-business-links-wrap ul li a .icon img:nth-of-type(2) {
  opacity: 0;
}
body.body.business-category-page .common-business-links-wrap ul li a .text {
  text-align: center;
  font-size: 1rem;
  letter-spacing: 0.1em;
  margin-top: 1px;
}
body.body.business-category-page .common-business-links-wrap ul li a:hover .icon img {
  opacity: 0;
}
body.body.business-category-page .common-business-links-wrap ul li a:hover .icon img:nth-of-type(2) {
  opacity: 1;
}
body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(1) a .icon {
  -webkit-transform: translate(0, -10px);
          transform: translate(0, -10px);
}
body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(3) a .icon {
  -webkit-transform: translate(0, -10px);
          transform: translate(0, -10px);
}
body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(4) a .icon, body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(6) a .icon, body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(7) a .icon, body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(8) a .icon {
  -webkit-transform: translate(0, -10px);
          transform: translate(0, -10px);
}
body.body.business-category-page .common-business-catch {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 0.2em;
  color: #00afec;
}
body.body.business-category-page .common-business-catch2 {
  font-size: 1.375rem;
  text-align: center;
  color: #00afec;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1.5909090909em;
}
body.body.home-category-page .common-business-title {
  position: relative;
  text-align: center;
}
body.body.home-category-page .common-business-title .jp, body.body.home-category-page .common-business-title .en {
  display: block;
}
body.body.home-category-page .common-business-title .jp {
  font-weight: bold;
  font-size: 1.4375rem;
  letter-spacing: 0.2em;
  color: #1e277e;
}
body.body.home-category-page .common-business-title .en {
  font-family: "Roboto Slab", serif;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  color: #afafaf;
  font-weight: normal;
  margin-top: 0.3333333333em;
  display: block;
}
body.body.home-category-page .common-business-title.in-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  text-align: left;
}
body.body.home-category-page .common-business-title.in-icon .icon {
  display: block;
  margin-right: 12px;
}
body.body.home-category-page .common-business-title.in-icon .title-text .en {
  text-align: left;
}
body.body.home-category-page .common-business-title2 {
  border-bottom: 1px solid #1e277e;
  padding-bottom: 2vh;
  text-align: center;
}
body.body.home-category-page .common-business-title2.left {
  text-align: left;
}
body.body.home-category-page .common-business-title2 .jp, body.body.home-category-page .common-business-title2 .en {
  display: inline-block;
  line-height: 1.5em;
}
body.body.home-category-page .common-business-title2 .jp {
  font-weight: 500;
  font-size: 1.375rem;
  letter-spacing: 0.2em;
  color: #1e277e;
  margin-right: 10px;
}
body.body.home-category-page .common-business-title2 .en {
  font-family: "Roboto Slab", serif;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  color: #afafaf;
  font-weight: normal;
}
body.body.home-category-page .common-business-bg-title {
  background: #00afec;
  color: #fff;
  padding: 5px 8px;
  line-height: 1.5;
}
body.body.home-category-page .common-business-bg-title .jp {
  font-weight: bold;
  font-size: 1.4375rem;
  letter-spacing: 0.2em;
}
body.body.home-category-page .common-business-bg-title .en {
  font-weight: normal;
  font-size: 0.9375rem;
  display: inline-block;
  font-family: "Roboto Slab", serif;
  letter-spacing: 0.1em;
}
body.body.home-category-page .common-business-links-wrap {
  margin-top: 16.6666666667vh;
  overflow: hidden;
}
body.body.home-category-page .common-business-links-wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 4.4444444444vh;
}
body.body.home-category-page .common-business-links-wrap ul li {
  width: 194px;
  max-width: 25%;
}
body.body.home-category-page .common-business-links-wrap ul li + li {
  border-left: 1px solid #d7d7d7;
}
body.body.home-category-page .common-business-links-wrap ul li.blank {
  width: 100%;
  margin: 0;
  border: none;
  max-width: 100%;
  margin-top: 6.1111111111vh;
}
body.body.home-category-page .common-business-links-wrap ul li.blank + li {
  border-left: none;
}
body.body.home-category-page .common-business-links-wrap ul li a {
  display: block;
  padding-bottom: 1.4444444444vh;
}
body.body.home-category-page .common-business-links-wrap ul li a .icon {
  height: 103px;
  position: relative;
}
body.body.home-category-page .common-business-links-wrap ul li a .icon img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body.body.home-category-page .common-business-links-wrap ul li a .icon img:nth-of-type(2) {
  opacity: 0;
}
body.body.home-category-page .common-business-links-wrap ul li a .text {
  text-align: center;
  font-size: 1rem;
  letter-spacing: 0.1em;
  margin-top: 1px;
}
body.body.home-category-page .common-business-links-wrap ul li a:hover .icon img {
  opacity: 0;
}
body.body.home-category-page .common-business-links-wrap ul li a:hover .icon img:nth-of-type(2) {
  opacity: 1;
}
body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(1) a .icon {
  -webkit-transform: translate(0, -10px);
          transform: translate(0, -10px);
}
body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(3) a .icon {
  -webkit-transform: translate(0, -10px);
          transform: translate(0, -10px);
}
body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(4) a .icon, body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(6) a .icon, body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(7) a .icon, body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(8) a .icon {
  -webkit-transform: translate(0, -10px);
          transform: translate(0, -10px);
}
body.body.home-category-page .common-business-catch {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 0.2em;
  color: #00afec;
}
body.body.home-category-page .common-business-catch2 {
  font-size: 1.375rem;
  text-align: center;
  color: #00afec;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1.5909090909em;
}

@media (max-width: 768px) {
  body.body.business-category-page .common-business-title .jp {
    font-size: 1.0625rem;
  }
  body.body.business-category-page .common-business-title .en {
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
  }
  body.body.business-category-page .common-business-title2 {
    text-align: left;
  }
  body.body.business-category-page .common-business-title2 .jp {
    font-size: 1.0625rem;
  }
  body.body.business-category-page .common-business-title2 .en {
    font-size: 0.8125rem;
    display: block;
  }
  body.body.business-category-page .common-business-bg-title .jp {
    font-size: 1.0625rem;
  }
  body.body.business-category-page .common-business-bg-title .en {
    font-size: 0.8125rem;
    display: block;
  }
  body.body.business-category-page .common-business-links-wrap {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  body.body.business-category-page .common-business-links-wrap ul li {
    width: 50%;
    max-width: 50%;
    border: none !important;
    margin-top: 8px;
    padding-top: 8px;
  }
  body.body.business-category-page .common-business-links-wrap ul li a .text {
    letter-spacing: 0;
  }
  body.body.business-category-page .common-business-links-wrap ul li.sp-border {
    border-left: 1px solid #d7d7d7 !important;
  }
  body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(n+3) {
    border-top: 1px solid #d7d7d7 !important;
    position: relative;
  }
  body.body.business-category-page .common-business-links-wrap ul li:nth-of-type(n+3):before {
    content: "";
    display: block;
    height: 8px;
    background: #fff;
    width: calc(100% + 1px);
    position: absolute;
    top: 0;
    left: -1px;
  }
  body.body.business-category-page .common-business-catch {
    font-size: 1.375rem;
  }
  body.body.business-category-page .common-text {
    font-size: 0.875rem;
  }
  body.body.home-category-page .common-business-title .jp {
    font-size: 1.0625rem;
  }
  body.body.home-category-page .common-business-title .en {
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
  }
  body.body.home-category-page .common-business-title2 {
    text-align: left;
  }
  body.body.home-category-page .common-business-title2 .jp {
    font-size: 1.0625rem;
  }
  body.body.home-category-page .common-business-title2 .en {
    font-size: 0.8125rem;
    display: block;
  }
  body.body.home-category-page .common-business-bg-title .jp {
    font-size: 1.0625rem;
  }
  body.body.home-category-page .common-business-bg-title .en {
    font-size: 0.8125rem;
    display: block;
  }
  body.body.home-category-page .common-business-links-wrap {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  body.body.home-category-page .common-business-links-wrap ul li {
    width: 50%;
    max-width: 50%;
    border: none !important;
    margin-top: 8px;
    padding-top: 8px;
  }
  body.body.home-category-page .common-business-links-wrap ul li a .text {
    letter-spacing: 0;
  }
  body.body.home-category-page .common-business-links-wrap ul li.sp-border {
    border-left: 1px solid #d7d7d7 !important;
  }
  body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(n+3) {
    border-top: 1px solid #d7d7d7 !important;
    position: relative;
  }
  body.body.home-category-page .common-business-links-wrap ul li:nth-of-type(n+3):before {
    content: "";
    display: block;
    height: 8px;
    background: #fff;
    width: calc(100% + 1px);
    position: absolute;
    top: 0;
    left: -1px;
  }
  body.body.home-category-page .common-business-catch {
    font-size: 1.375rem;
  }
}
body.body .vision-page {
  overflow: hidden;
}
body.body .vision-page .blue-title {
  padding: 0.2173913043em 0.4347826087em;
  color: #fff;
  background: #00afec;
  font-weight: bold;
  line-height: 1.347826087em;
  letter-spacing: 0.2em;
  font-size: 1.4375rem;
}
body.body .vision-page .blue-title small {
  font-weight: normal;
  font-size: 0.9375rem;
  letter-spacing: 0.1;
  font-family: "Roboto Slab", serif;
}
body.body .vision-page .line-title {
  font-weight: 500;
  color: #1e277e;
  font-size: 1.375rem;
  line-height: 1.5;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #1e277e;
  padding-bottom: 0.8181818182em;
}
body.body .vision-page .top-box {
  margin-top: 6.5555555556vh;
}
body.body .vision-page .top-box .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
}
body.body .vision-page .top-box .inner:after {
  content: "";
  display: block;
  padding-top: 39.2857142857%;
  width: 42.8571428571%;
}
body.body .vision-page .top-box .inner .text-box {
  width: 490px;
  max-width: 35%;
  margin-right: 96px;
}
@media (max-width: 1400px) {
  body.body .vision-page .top-box .inner .text-box {
    margin-right: 6.8571428571%;
  }
}
body.body .vision-page .top-box .inner .text-box .title-box .gas {
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.2em;
  color: #00afec;
}
body.body .vision-page .top-box .inner .text-box .title-box .common-title2 {
  margin-top: 3px;
}
body.body .vision-page .top-box .inner .text-box .title-box .catch {
  margin-top: 4.4444444444vh;
  line-height: 1.5;
  border-bottom: 1px solid #1e277e;
  padding-bottom: 1.4444444444vh;
}
body.body .vision-page .top-box .inner .text-box .title-box .catch .main {
  font-weight: bold;
  font-size: 1.4375rem;
  letter-spacing: 0.02em;
  display: block;
  color: #1e277e;
}
body.body .vision-page .top-box .inner .text-box .title-box .catch .sub {
  font-family: "Roboto Slab", serif;
  color: #808080;
  letter-spacing: 0.1em;
  font-size: 0.9375rem;
  font-weight: normal;
}
body.body .vision-page .top-box .inner .text-box .image {
  width: 42.8571428571%;
  position: absolute;
  top: 0;
  right: 0;
}
body.body .vision-page .top-box .inner .text-box .image img {
  display: block;
  width: 100%;
}
body.body .vision-page .top-box .inner .text-box .text-inner {
  margin-top: 1.3333333333vh;
}
body.body .vision-page .top-box .inner .text-box .text-inner .common-business-catch2 {
  text-align: left;
}
body.body .vision-page .top-box .inner .text-box .text-inner .common-text {
  margin-top: 1.6666666667vh;
}
body.body .vision-page .top-box .inner .text-box .text-inner .common-nav {
  margin-top: 2.4444444444vh;
  max-width: 100%;
  width: 394px;
}
body.body .vision-page .top-box .inner .text-box .text-inner .common-nav .pc-nav ul {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body.body .vision-page .top-box .inner .text-box .text-inner .common-nav .pc-nav ul li {
  min-width: 0;
  width: 46.4467005076%;
  margin-left: 0;
  margin-right: 0;
}
body.body .vision-page .top-box .inner .text-box .text-inner .common-nav .pc-nav ul li.big {
  width: 100%;
}
body.body .vision-page .features-area {
  margin-top: 5.5555555556vh;
  position: relative;
}
body.body .vision-page .features-area:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -2;
  background: #e0f5fd;
  width: 100vw;
  left: calc(50% - 277px);
  height: 75.6218905473%;
  top: 19.0476190476%;
}
@media (max-width: 1400px) {
  body.body .vision-page .features-area:after {
    width: 69.8571428571%;
    left: auto;
    right: 0;
  }
}
body.body .vision-page .features-area .features-top-box .inner {
  width: 980px;
  max-width: 80%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body.body .vision-page .features-area .features-top-box .inner .chara-box {
  width: 50%;
}
body.body .vision-page .features-area .features-top-box .inner .chara-box img {
  display: block;
  width: 100%;
}
body.body .vision-page .features-area .features-top-box .inner .text-box {
  width: 42.3469387755%;
  -ms-flex-item-align: end;
      align-self: flex-end;
}
body.body .vision-page .features-area .features-top-box .inner .text-box .line-title {
  margin-top: 5.5555555556vh;
}
body.body .vision-page .features-area .features-top-box .inner .text-box .common-text {
  margin-top: 3.8888888889vh;
}
body.body .vision-page .features-area .contents2-box {
  margin-top: 6.6666666667vh;
}
body.body .vision-page .features-area .contents2-box .inner {
  width: 980px;
  max-width: 80%;
  margin: 0 auto;
}
body.body .vision-page .features-area .contents2-box .inner ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 3.8888888889vh;
}
body.body .vision-page .features-area .contents2-box .inner ol li {
  width: 21.4285714286%;
}
body.body .vision-page .features-area .contents2-box .inner ol li .image {
  text-align: center;
}
body.body .vision-page .features-area .contents2-box .inner ol li .image img {
  max-width: 100%;
}
body.body .vision-page .features-area .contents2-box .inner ol li .point {
  text-align: center;
  margin-top: 1.1111111111vh;
  font-family: "Roboto Slab", serif;
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  color: #1e277e;
}
body.body .vision-page .features-area .contents2-box .inner ol li .point .nth {
  font-size: 1.75em;
}
body.body .vision-page .features-area .contents2-box .inner ol li .mini-title {
  color: #1e277e;
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-left: 1.05em;
  text-indent: -1.05em;
  margin-top: 2vh;
}
body.body .vision-page .features-area .contents2-box .inner ol li .mini-title:before {
  content: "■";
  color: #00afec;
}
body.body .vision-page .features-area .contents2-box .inner ol li .common-text {
  margin-top: 1.7777777778vh;
}
body.body .vision-page .features-area .contents3-box {
  margin-top: 8.8888888889vh;
}
body.body .vision-page .features-area .contents3-box .inner {
  width: 980px;
  max-width: 80%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}
body.body .vision-page .features-area .contents3-box .inner:after {
  content: "";
  display: block;
  padding-top: 40.9183673469%;
}
body.body .vision-page .features-area .contents3-box .inner .text-box {
  width: 43.3673469388%;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .image {
  position: absolute;
  width: 50.1020408163%;
  right: 0;
  top: 0;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .image img {
  width: 100%;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner {
  margin-top: 4.2222222222vh;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl dt {
  color: #1e277e;
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-left: 1.05em;
  text-indent: -1.05em;
  margin-top: 2vh;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl dt .circle {
  text-indent: 0;
  display: inline-block;
  color: #fff;
  position: relative;
  font-size: 0.6875rem;
  text-align: center;
  width: 1.2727272727em;
  margin-right: 3px;
  -webkit-transform: translate(0, -1px);
          transform: translate(0, -1px);
  font-weight: bold;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl dt .circle:before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 0.1818181818em;
  background: #1e277e;
  z-index: -1;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 1.2727272727em;
  height: 1.2727272727em;
  border-radius: 50%;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl dt:before {
  content: "■";
  color: #00afec;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl dd {
  margin-top: 2.2222222222vh;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl dd .blue {
  color: #1e277e;
}
body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl + dl {
  margin-top: 4.2222222222vh;
}
body.body .vision-page .access-area {
  margin-top: 13.6666666667vh;
  position: relative;
}
body.body .vision-page .access-area:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -2;
  background: #f0f5f5;
  width: 100vw;
  right: calc(50% - 277px);
  height: 78.6912751678%;
  top: 13.8422818792%;
}
@media (max-width: 1400px) {
  body.body .vision-page .access-area:after {
    width: 67%;
    left: 0;
    right: auto;
  }
}
body.body .vision-page .access-area .inner {
  width: 980px;
  max-width: 80%;
  margin: 0 auto;
}
body.body .vision-page .access-area .inner .double-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body.body .vision-page .access-area .inner .double-box .left-box {
  width: 42.3469387755%;
}
body.body .vision-page .access-area .inner .double-box .left-box .contents1 {
  margin-top: 4.4444444444vh;
}
body.body .vision-page .access-area .inner .double-box .left-box .contents1 dl {
  margin-top: 3.8888888889vh;
}
body.body .vision-page .access-area .inner .double-box .left-box .contents1 dl dt {
  color: #1e277e;
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-left: 1.05em;
  text-indent: -1.05em;
  margin-top: 2vh;
}
body.body .vision-page .access-area .inner .double-box .left-box .contents1 dl dt:before {
  content: "■";
  color: #00afec;
}
body.body .vision-page .access-area .inner .double-box .left-box .contents1 dl dd {
  margin-top: 1.6666666667vh;
}
body.body .vision-page .access-area .inner .double-box .left-box .contents1 dl dd .light-blue {
  color: #00afec;
}
body.body .vision-page .access-area .inner .double-box .right-box {
  width: 50%;
}
body.body .vision-page .access-area .inner .double-box .right-box .chara img {
  width: 100%;
}
body.body .vision-page .access-area .inner .double-box .right-box .contents2 {
  margin-top: 5.5555555556vh;
}
body.body .vision-page .access-area .inner .double-box .right-box .contents2 .map {
  margin-top: 3.8888888889vh;
}
body.body .vision-page .access-area .inner .double-box .right-box .contents2 .map img {
  width: 100%;
}
body.body .vision-page .access-area .inner .bottom-box {
  margin-top: 3.6666666667vh;
}
body.body .vision-page .access-area .inner .bottom-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body.body .vision-page .access-area .inner .bottom-box ul li {
  width: 30.612244898%;
}
body.body .vision-page .access-area .inner .bottom-box ul li .title {
  color: #1e277e;
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-left: 1.05em;
  text-indent: -1.05em;
  margin-top: 2vh;
}
body.body .vision-page .access-area .inner .bottom-box ul li .title:before {
  content: "■";
  color: #00afec;
}
body.body .vision-page .access-area .inner .bottom-box ul li .image {
  margin-top: 1.4444444444vh;
}
body.body .vision-page .access-area .inner .bottom-box ul li .image img {
  width: 100%;
}
body.body .vision-page .cycle-area {
  margin-top: 11.6666666667vh;
  position: relative;
}
body.body .vision-page .cycle-area .cycle-top-box .inner {
  width: 980px;
  margin: 0 auto;
  max-width: 80%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
body.body .vision-page .cycle-area .cycle-top-box .inner:before {
  content: "";
  display: block;
  padding-top: 40.8163265306%;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box {
  width: 42.3469387755%;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 48.9795918367%;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .image img {
  width: 100%;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box {
  margin-top: 6.1111111111vh;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box dl dt {
  color: #1e277e;
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-left: 1.05em;
  text-indent: -1.05em;
  margin-top: 2vh;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box dl dt:before {
  content: "■";
  color: #00afec;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box dl dd {
  margin-top: 1.2222222222vh;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box dl dd .light-blue {
  color: #00afec;
}
body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box dl + dl {
  margin-top: 3.3333333333vh;
}
body.body .vision-page .cycle-area .table-box {
  margin-top: 7.3333333333vh;
}
body.body .vision-page .cycle-area .table-box .inner {
  width: 980px;
  max-width: 80%;
  margin: 0 auto;
}
body.body .vision-page .cycle-area .table-box .inner .table {
  margin-top: 4.4444444444vh;
}
body.body .vision-page .cycle-area .table-box .inner .table img {
  width: 100%;
}
body.body .vision-page .bottom-link-area {
  margin-top: 11.6666666667vh;
}
body.body .vision-page .bottom-link-area .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body.body .vision-page .bottom-link-area .inner a {
  display: block;
  position: relative;
  width: 546px;
  max-width: 80%;
}
body.body .vision-page .bottom-link-area .inner a .on-image {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
body.body .vision-page .bottom-link-area .inner a:hover .on-image {
  opacity: 1;
}

@media (max-width: 768px) {
  body.body .vision-page .blue-title {
    font-size: 1.0625rem;
  }
  body.body .vision-page .blue-title small {
    font-size: 0.8125rem;
  }
  body.body .vision-page .top-box .inner {
    max-width: none;
    display: block;
  }
  body.body .vision-page .top-box .inner:after {
    display: none;
  }
  body.body .vision-page .top-box .inner .text-box {
    width: 100%;
    max-width: 100%;
    margin: 0;
  }
  body.body .vision-page .top-box .inner .text-box .title-box {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  body.body .vision-page .top-box .inner .text-box .title-box .catch {
    margin-top: 47px;
  }
  body.body .vision-page .top-box .inner .text-box .title-box .catch .main {
    font-size: 1.0625rem;
    font-weight: 500;
  }
  body.body .vision-page .top-box .inner .text-box .title-box .catch .sub {
    font-size: 0.8125rem;
  }
  body.body .vision-page .top-box .inner .text-box .image {
    width: 80%;
    margin: 27px auto 0;
    position: static;
  }
  body.body .vision-page .top-box .inner .text-box .text-inner {
    width: 80%;
    margin: 22px auto 0;
  }
  body.body .vision-page .features-area {
    margin-top: 55px;
  }
  body.body .vision-page .features-area:after {
    width: 68.75%;
    height: 89.8580121704%;
    top: 5.6795131846%;
  }
  body.body .vision-page .features-area .features-top-box .inner {
    display: block;
  }
  body.body .vision-page .features-area .features-top-box .inner .chara-box {
    width: 100%;
  }
  body.body .vision-page .features-area .features-top-box .inner .text-box {
    width: 100%;
    margin-top: 32px;
  }
  body.body .vision-page .features-area .features-top-box .inner .text-box .line-title {
    margin-top: 20px;
  }
  body.body .vision-page .features-area .features-top-box .inner .text-box .common-text {
    margin-top: 15px;
  }
  body.body .vision-page .features-area .contents2-box {
    margin-top: 38px;
  }
  body.body .vision-page .features-area .contents2-box .inner ol {
    display: block;
    margin-top: 20px;
  }
  body.body .vision-page .features-area .contents2-box .inner ol li {
    width: 100%;
  }
  body.body .vision-page .features-area .contents2-box .inner ol li image img {
    width: 150px;
  }
  body.body .vision-page .features-area .contents2-box .inner ol li + li {
    margin-top: 35px;
  }
  body.body .vision-page .features-area .contents3-box {
    margin-top: 45px;
  }
  body.body .vision-page .features-area .contents3-box .inner {
    display: block;
  }
  body.body .vision-page .features-area .contents3-box .inner:after {
    display: none;
  }
  body.body .vision-page .features-area .contents3-box .inner .text-box {
    width: 100%;
  }
  body.body .vision-page .features-area .contents3-box .inner .text-box .image {
    position: static;
    width: 100%;
    margin-top: 35px;
  }
  body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner {
    margin-top: 50px;
  }
  body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl dd {
    margin-top: 16px;
  }
  body.body .vision-page .features-area .contents3-box .inner .text-box .text-inner dl + dl {
    margin-top: 38px;
  }
  body.body .vision-page .access-area {
    margin-top: 247px;
    padding-top: 125px;
    position: relative;
  }
  body.body .vision-page .access-area:after {
    width: 100vw;
    height: 78.6912751678%;
    top: 13.8422818792%;
  }
  body.body .vision-page .access-area .inner .double-box {
    display: block;
  }
  body.body .vision-page .access-area .inner .double-box .left-box {
    width: 100%;
  }
  body.body .vision-page .access-area .inner .double-box .left-box .contents1 {
    margin-top: 33px;
  }
  body.body .vision-page .access-area .inner .double-box .left-box .contents1 dl {
    margin-top: 27px;
  }
  body.body .vision-page .access-area .inner .double-box .left-box .contents1 dl dd {
    margin-top: 13px;
  }
  body.body .vision-page .access-area .inner .double-box .right-box {
    width: 100%;
  }
  body.body .vision-page .access-area .inner .double-box .right-box .chara {
    position: absolute;
    width: 320px;
    max-width: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    top: -174px;
  }
  body.body .vision-page .access-area .inner .double-box .right-box .contents2 {
    margin-top: 41px;
  }
  body.body .vision-page .access-area .inner .double-box .right-box .contents2 .map {
    margin-top: 27px;
  }
  body.body .vision-page .access-area .inner .bottom-box {
    width: 93.75%;
    margin: 35px auto 0;
  }
  body.body .vision-page .access-area .inner .bottom-box ul {
    display: block;
  }
  body.body .vision-page .access-area .inner .bottom-box ul li {
    width: 100%;
  }
  body.body .vision-page .cycle-area {
    margin-top: 83px;
  }
  body.body .vision-page .cycle-area .cycle-top-box .inner {
    display: block;
  }
  body.body .vision-page .cycle-area .cycle-top-box .inner:before {
    display: none;
  }
  body.body .vision-page .cycle-area .cycle-top-box .inner .text-box {
    width: 100%;
  }
  body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .image {
    position: static;
    width: 100%;
    margin-top: 27px;
  }
  body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box {
    margin-top: 38px;
  }
  body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box dl dd {
    margin-top: 11px;
  }
  body.body .vision-page .cycle-area .cycle-top-box .inner .text-box .dl-box dl + dl {
    margin-top: 30px;
  }
  body.body .vision-page .cycle-area .table-box {
    margin-top: 70px;
  }
  body.body .vision-page .cycle-area .table-box .inner .table {
    margin-top: 17px;
  }
  body.body .vision-page .bottom-link-area {
    margin-top: 85px;
  }
}