.header_test {
  background-color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100px;z
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-right: 137px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  height: 150px;
}

.header {
  background-color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100px;z
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-right: 137px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

.header_logo {
  display: inline-block;
  left: 24px;
  position: absolute;
  top: 18px;
}

.header_logo img {
  width: 300px;
}

.header_email {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #262626;
  color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 1.2rem;
  font-weight: 700;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  text-align: center;
  text-decoration: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  width: 100px;
}

.header_email img {
  margin-bottom: 8px;
  width: 35px;
}

.header_email span {
  display: block;
}

.header_email:hover {
  opacity: .75;
}

.header_search {
  position: absolute;
  right: 136px;
  top: 13px;
  text-decoration: none;
  z-index: 3;
}

.header_search_input {
  border: 1px solid #D5D5D5;
  color: #262626;
  font-size: 1.4rem;
  height: 14px;
  outline: 0;
  padding-bottom: 18px;
  padding-top: 18px;
  -webkit-transform-origin: top right;
          transform-origin: top right;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transition: padding .15s, width .15s, margin .15s, -webkit-transform .15s;
  transition: padding .15s, width .15s, margin .15s, -webkit-transform .15s;
  transition: padding .15s, transform .15s, width .15s, margin .15s;
  transition: padding .15s, transform .15s, width .15s, margin .15s, -webkit-transform .15s;
  width: 0;
}

.header_search_input::-webkit-input-placeholder {
  opacity: 1;
  color: #999;
}

.header_search_input:-ms-input-placeholder {
  opacity: 1;
  color: #999;
}

.header_search_input::-ms-input-placeholder {
  opacity: 1;
  color: #999;
}

.header_search_input::placeholder {
  opacity: 1;
  color: #999;
}

.header_search_input::-webkit-input-placeholder {
  color: #999;
}

.header_search_input:-moz-placeholder {
  color: #999;
}

.header_search_input::-moz-placeholder {
  color: #999;
}

.header_search_input:-ms-input-placeholder {
  color: #999;
}

.header_search_input::-ms-input-placeholder {
  color: #999;
}

.header_search_btn {
  background-color: transparent;
  border-width: 0;
  padding: 0;
  width: 20px;
}

.header_search_txt {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: transparent;
  border-width: 0;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  color: #262626;
  font-size: 1.2rem;
  letter-spacing: 1px;
  font-weight: 700;
  margin-left: 5px;
  padding: 0;
  -webkit-transition: color .15s, margin-left .15s;
  transition: color .15s, margin-left .15s;
}

.header_search_form {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.header_nav{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 700;
  margin: inherit;
  width: auto;
}

.header_nav_box {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.header_nav_top {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  list-style: none;
  margin-bottom: 18px;
  padding-right: 92px;
  -webkit-transition: padding-right .15s;
  transition: padding-right .15s;
}

.header_nav_top > li {
  position: relative;
}

.header_nav_top > li > a {
  color: #262626;
  font-size: 1.2rem;
  position: relative;
  padding-left: 17px;
  padding-right: 17px;
  text-decoration: none;
}

.header_nav_top > li > a::after {
  background-color: #262626;
  content: "";
  display: inline-block;
  height: 12px;
  left: 0;
  position: absolute;
  top: 4px;
  width: 1px;
}

.header_nav_bottom {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  list-style: none;
}

.header_nav_bottom > li {
  position: relative;
}

.header_nav_bottom .header_nav_item {
  color: #262626;
  cursor: pointer;
  display: inline-block;
  font-size: 1.5rem;
  text-decoration: none;
  padding: 0 19px 18px 17px;
  position: relative;
}

.header_nav_bottom .header_nav_item::after {
  background-color: #262626;
  content: "";
  display: inline-block;
  height: 15px;
  left: 0;
  position: absolute;
  top: 5px;
  width: 1px;
}circle_vision03

.header_nav_expand {
  display: none;
}

.header_nav_mega {
  background-color: rgba(0, 0, 0, 0.5);
  font-weight: 700;
  height: 100vh;
  left: 0;
  position: fixed;
  pointer-events: none;
  text-align: center;
  visibility: hidden;
  top: 100px;
  width: 100%;
  z-index: 999;
}

.header_nav_wrap {
  -webkit-box-shadow: 0 3px 6px -3px rgba(0, 0, 0, 0.5);
          box-shadow: 0 3px 6px -3px rgba(0, 0, 0, 0.5);
  background-color: #fff;
  padding-top: 36px;
  pointer-events: visible;
}

.header_nav_inner {
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  width: 96%;
  max-height: calc(100vh - 100px);
  overflow: scroll;
  padding-bottom: 56px;
  scrollbar-width: none;
}

.header_nav_inner::-webkit-scrollbar {
  display: none;
}

.header_nav_head {
  color: #262626;
  display: inline-block;b35
  font-size: 2.4rem;
  margin-bottom: 30px;
  position: relative;
  text-decoration: none;
}

.header_nav_head span {
  display: block;
  font-size: 1.6rem;
  font-weight: 400;
  font-family: "Oswald", sans-serif !important;
  margin-top: 7px;
}

.header_nav_head em {
  color: #C83051;
  font-style: normal;
}

.header_nav_head::before, .header_nav_head::after {
  background-color: #000;
  display: inline-block;
  content: "";
  height: 1px;
  position: absolute;
  right: -52px;
  -webkit-transition: top .15s, -webkit-transform .15s;
  transition: top .15s, -webkit-transform .15s;
  transition: top .15s, transform .15s;
  transition: top .15s, transform .15s, -webkit-transform .15s;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 16px;
  width: 10px;
}

.header_nav_head::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 23px;
}

.header_nav_readmore {
  color: #262626;
  font-size: 1.4rem;
  padding-right: 37px;
  right: 0;
  position: absolute;
  top: 8px;
  text-decoration: none;
}

.header_nav_readmore::before, .header_nav_readmore::after {
  background-color: #000;
  display: inline-block;
  content: "";
  height: 1px;
  position: absolute;
  right: 14px;
  -webkit-transition: top .15s, -webkit-transform .15s;
  transition: top .15s, -webkit-transform .15s;
  transition: top .15s, transform .15s;
  transition: top .15s, transform .15s, -webkit-transform .15s;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 8px;
  width: 8px;
}

.header_nav_readmore::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 13px;
}

.header_nav_sub {
  list-style: none;
  text-align-last: left;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 1fr;
  grid-column-gap: 35px;
}

.header_nav_sub li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  border-bottom: 1px solid #E7E7E7;
  padding-top: 14px;
  padding-bottom: 15px;
  width: 100%;
  text-align: left;
  min-height: 78px;
}

.header_nav_sub a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 100%;
  height: 100%;
  padding-right: 30px;
  text-decoration: none;
  color: #262626;
  font-size: 1.6rem;
  text-align: left;
}

.header_nav_sub a::before, .header_nav_sub a::after {
  background-color: #000;
  display: inline-block;
  content: "";
  height: 1px;
  position: absolute;
  right: 14px;
  -webkit-transition: top .15s, -webkit-transform .15s;
  transition: top .15s, -webkit-transform .15s;
  transition: top .15s, transform .15s;
  transition: top .15s, transform .15s, -webkit-transform .15s;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: calc(50% - 5px);
  width: 8px;
}

.header_nav_sub a::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 50%;
}

.header_nav.search .header_nav_top {
  padding-right: 380px;
}

.header_nav.search .header_search_input {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  margin-left: 18px;
  padding-left: 20px;
  padding-right: 20px;
  width: 300px;
}

.header_nav.search .header_search_txt {
  margin-left: 17px;
  padding-top: 2px;
}

.header_btn {
  display: none;
}

@media only screen and (min-width: 1025px) {
  .header_logo {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .header_logo:hover {
    opacity: .75;
  }
  .header_email {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .header_email:hover {
    opacity: .75;
  }
  .header_nav a {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .header_nav a:hover {
    color: #219DF5;
  }
  .header_nav_mega {
    opacity: 0;
    -webkit-transition: opacity 1s, visibility 0s;
    transition: opacity 1s, visibility 0s;
    transition-delay: 0.5s, 0s;
    visibility: hidden;
    z-index: 1000;
  }
  .header_nav_bottom {
    z-index: 1;
  }
  .header_nav_bottom .header_nav_item {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .header_nav_bottom .header_nav_item:hover {
    color: #219DF5;
  }
  .header_nav_bottom > li::before {
    background-color: #262626;
    bottom: -2px;
    content: "";
    height: 2px;
    left: 0;
    opacity: 0;
    position: absolute;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    width: 100%;
    z-index: 1001;
  }
  .header_nav_bottom > li:hover::before {
    opacity: 1;
  }
  .header_nav_bottom > li:hover .header_nav_item {
    color: #219DF5;
  }
  .header_nav_bottom > li:hover .header_nav_mega {
    opacity: 1;
    visibility: visible;
  }
  .header_nav_top {
    z-index: 2;
  }
  .header_nav_top > li::before {
    background-color: #262626;
    bottom: -5px;
    content: "";
    height: 2px;
    left: 0;
    opacity: 0;
    position: absolute;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    width: 100%;
    z-index: 1000;
  }
  .header_nav_top > li:hover::before {
    opacity: 1;
  }
  .header_nav_top > li:hover > a {
    color: #219DF5;
  }
  .header_search_txt:hover {
    color: #219DF5;
  }
  .header_readmore {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .header_readmore:hover {
    color: #219DF5;
    cursor: pointer;
  }
}

@media only screen and (max-width: 1200px) {
  .header {
    padding-right: 120px;
  }
  .header_search {
    right: 120px;
  }
  .header_nav_bottom .header_nav_item {
    font-size: 1.4rem;
    padding-left: 13px;
    padding-right: 13px;
  }
  .header_nav_bottom .header_nav_item::after {
    height: 14px;
  }
  .header_nav_top > li > a {
    padding-left: 13px;
    padding-right: 13px;
  }
  .header_nav_sub a {
    font-size: 1.4rem;
  }
  .header_nav.search .header_nav_top {
    padding-right: 245px;
  }
  .header_nav.search .header_search_input {
    font-size: 1.1rem;
    margin-left: 10px;
    padding-left: 10px;
    padding-right: 10px;
    width: 180px;
  }
  .header_nav.search .header_search_txt {
    margin-left: 5px;
  }
}

@media only screen and (max-width: 1024px) {
  .header {
    height: 61px;
  }
  .header_logo {
    left: 11px;
    top: 10px;
    z-index: 10000;
  }
  .header_logo img {
    width: 200px;
  }
  .header_logo.sticky {
    position: fixed;
  }
  .header_search {
    background-color: #F4F4F4;
    position: relative;
    right: 0;
    top: 0;
    width: 100%;
  }
  .header_search_btn {
    display: none;
  }
  .header_search_form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 22px;
    padding-top: 28px;
  }
  .header_search_input {
    background-color: #fff;
    border-width: 0;
    font-size: 1.6rem;
    height: 44px;
    margin-bottom: 16px;
    padding: 10px 15px;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    width: calc(100% - 65px);
  }
  .header_search_txt {
    background: transparent url(/images/svg/icon_search01.svg) no-repeat 0 1px/15px;
    border-width: 0;
    color: #0070C0;
    font-size: 1.5rem;
    margin-left: auto;
    margin-right: auto;
    outline: 0;
    padding-left: 20px;
  }
  .header_email {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    font-size: 0.7rem;
    height: 62px;
    padding: 0 0 9px;
    width: 61px;
    z-index: 1000;
  }
  .header_email img {
    margin-bottom: 7px;
    width: 21px;
  }
  .header_email span {
    display: none;
  }
  .header_nav {
    display: block;
    height: 100vh;
    left: 0;
    max-height: calc(100vh - 61px);
    opacity: 0;
    overflow-y: auto;
    position: fixed;
    top: 61px;
    -webkit-transition: opacity .15s, visibility .15s;
    transition: opacity .15s, visibility .15s;
    visibility: hidden;
    width: 100%;
    background-color: #FFF;
    z-index: 999;
  }
  .header_nav_box {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    width: 100%;
  }
  .header_nav_top {
    background-color: #F4F4F4;
    display: block;
    padding-right: 0;
    width: 100%;
  }
  .header_nav_top > li > a {
    border-bottom: 1px solid #d5d5d5;
    display: inline-block;
    font-weight: 700;
    font-size: 1.6rem;
    padding: 20px 50px 23px 24px;
    width: 100%;
  }
  .header_nav_top > li > a::after {
    display: none;
  }
  .header_nav_bottom {
    background-color: #262626;
    display: block;
    width: 100%;
  }
  .header_nav_bottom > li {
    margin-left: 0;
  }
  .header_nav_bottom > li::after {
    display: block;
  }
  .header_nav_bottom .header_nav_item {
    border-bottom: 1px solid #fff;
    color: #fff;
    display: inline-block;
    font-size: 1.6rem;
    padding: 24px 50px 27px 24px;
    position: relative;
    width: 100%;
  }
  .header_nav_top {
    padding-right: 0;
  }
  .header_nav_wrap {
    background-color: transparent;
    padding: 0;
  }
  .header_nav_mega {
    background-color: #3A3A3A;
    max-height: 0;
    height: auto;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    padding-bottom: 0;
    padding-top: 0;
    position: relative;
    top: 0;
    text-align: left;
    -webkit-transition: opacity 0.15s, visibility 0.15s, max-height 0.15s cubic-bezier(0, 1, 0, 1);
    transition: opacity 0.15s, visibility 0.15s, max-height 0.15s cubic-bezier(0, 1, 0, 1);
  }
  .header_nav_mega::before {
    display: none;
  }
  .header_nav_inner {
    width: 100%;
    padding-bottom: 0;
  }
  .header_nav_head, .header_nav_readmore {
    display: none;
  }
  .header_nav_sub {
    display: block;
    text-align-last: left;
  }
  .header_nav_sub::after {
    display: none;
  }
  .header_nav_sub li {
    min-height: auto;
    border-bottom-width: 0;
    display: block;
    padding-top: 0;
    padding-bottom: 0;
    width: 100%;
  }
  .header_nav_sub a {
    background: url(/images/svg/icon_arrow_08.svg) no-repeat right 33px center/7px;
    border-bottom: 1px solid #fff;
    color: #fff;
    font-size: 1.4rem;
    padding-right: 0;
    padding: 20px 50px 22px 25px;
  }
  .header_nav_sub a::before, .header_nav_sub a::after {
    display: none;
  }
  .header_nav_expand {
    display: inline-block;
    height: 27px;
    position: absolute;
    right: 23px;
    top: 22px;
    width: 27px;
  }
  .header_nav_expand::before, .header_nav_expand::after {
    background-color: #fff;
    display: inline-block;
    content: "";
    height: 1px;
    left: 5px;
    position: absolute;
    -webkit-transition: top .15s, -webkit-transform .15s;
    transition: top .15s, -webkit-transform .15s;
    transition: top .15s, transform .15s;
    transition: top .15s, transform .15s, -webkit-transform .15s;
    top: 12px;
    width: 17px;
  }
  .header_nav_expand::after {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .header_nav_expand.expand::after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .header_nav_expand.expand + .header_nav_mega {
    max-height: 3000px;
    opacity: 1;
    -webkit-transition: max-height .15s ease-in-out;
    transition: max-height .15s ease-in-out;
    visibility: visible;
  }
  .header_nav.show {
    opacity: 1;
    visibility: visible;
  }
  .header_btn {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    height: 40px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    right: 71px;
    top: 14px;
    text-align: center;
    -webkit-transition: top .15s, right .15s;
    transition: top .15s, right .15s;
    width: 42px;
    z-index: 1000;
  }
  .header_btn span {
    display: inline-block;
    font-weight: 700;
    font-size: 0.8rem;
    width: 100%;
  }
  .header_btn span::after {
    background-color: #262626;
    border-radius: 5px;
    display: inline-block;
    content: "";
    height: 2px;
    left: 10px;
    position: absolute;
    -webkit-transition: opacity .15s;
    transition: opacity .15s;
    top: 11px;
    width: 22px;
  }
  .header_btn::before, .header_btn::after {
    background-color: #262626;
    border-radius: 5px;
    display: inline-block;
    content: "";
    height: 2px;
    left: 10px;
    position: absolute;
    -webkit-transition: top .15s, -webkit-transform .15s;
    transition: top .15s, -webkit-transform .15s;
    transition: top .15s, transform .15s;
    transition: top .15s, transform .15s, -webkit-transform .15s;
    top: 3px;
    width: 22px;
  }
  .header_btn::after {
    top: 19px;
  }
  .header_btn.active span::after {
    opacity: 0;
  }
  .header_btn.active::before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    top: 11px;
  }
  .header_btn.active::after {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    top: 11px;
  }
}

@media only screen and (max-width: 374px) {
  .header_logo {
    top: 12px;
  }
  .header_logo img {
    width: 175px;
  }
  .header_btn {
    right: 75px;
  }
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  overflow-x: hidden;
  font-size: 10px;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  font-family: "Noto Sans JP", sans-serif !important;
}

body {
  color: #262626;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: "Noto Sans JP", sans-serif;
  padding-top: 100px;
  -webkit-font-feature-settings: 'palt';
          font-feature-settings: 'palt';
  letter-spacing: 0.08rem;
}

@media only screen and (max-width: 1024px) {
  body {
    padding-top: 61px;
  }
}

.contents-bg {
  background-color: #F4F4F4;
  padding-bottom: 60px;
  padding-top: 60px;
  width: 100% !important;
}

.inner, .inner-1130, .inner-article {
  max-width: 1350px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.inner.mw1130, .mw1130.inner-1130, .mw1130.inner-article {
  max-width: 1130px;
}

.inner-1130 {
  max-width: 1130px;
}

.inner-article {
  background-color: #fff;
  max-width: 1100px;
  margin-bottom: 40px;
  padding: 50px 80px;
}

.inner-article:last-child {
  margin-bottom: 0;
}

.inner.inner_white, .inner_white.inner-1130, .inner_white.inner-article {
  max-width: 1100px;
  margin-bottom: 50px;
  padding: 40px 80px 50px;
  background-color: #FFF;
}

@media only screen and (max-width: 799px) {
  .inner.inner_white, .inner_white.inner-1130, .inner_white.inner-article {
    max-width: 100%;
    padding: 35px 15px 50px;
  }
}

.col_2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.col_2 > * {
  width: calc((100% - 60px) / 2);
  margin-bottom: 30px;
}

@media only screen and (min-width: 799.1px) {
  .col_2 > *:nth-last-child(-n+1):nth-child(2n), .col_2 > *:nth-last-child(-n+2):nth-child(2n+1) {
    margin-bottom: 0;
  }
}

.col_2::after {
  content: '';
  width: calc((100% - 60px) / 2);
}

@media only screen and (max-width: 1200px) {
  .inner-article {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media only screen and (max-width: 799px) {
  .contents-bg {
    background-color: #fff;
    padding-bottom: 0;
    padding-top: 0;
  }
  .inner-article {
    border-bottom: 1px solid #d5f5d5;
    padding: 30px 17px 50px;
  }
  .col_2 > * {
    width: 100%;
    margin-bottom: 10px;
  }
  .col_2 > *:last-child {
    margin-bottom: 0px;
  }
}

.footer .inner, .footer .inner-1130, .footer .inner-article {
  max-width: 1320px;
  padding: 50px 0 0 0;
}

.footer_inner {
  max-width: 1150px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  width: inherit;
}

.footer_nav {
  padding-bottom: 56px;
}

.footer_nav ul {
  list-style: none;
}

.footer_nav_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.footer_nav_col:first-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.footer_nav_col:last-child {
  border-left: 1px solid #D5D5D5;
  margin-left: 27px;
  padding-left: 27px;
  width: 250px;
}

.footer_nav_col:last-child .footer_nav_list {
  margin-bottom: 20px;
  padding-left: 0;
}

.footer_nav_col:last-child .footer_nav_list:last-child {
  margin-bottom: 0;
  margin-top: 77px;
}

.footer_nav_col:last-child .footer_nav_head {
  margin-bottom: 27px;
}

.footer_nav_head {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 23px;
  padding-left: 22px;
  position: relative;
}

.footer_nav_head a {
  color: #262626;
  text-decoration: none;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

@media only screen and (min-width: 799.1px) {
  .footer_nav_head a:hover {
    color: #219DF5;
    text-decoration: underline;
  }
}

.footer_nav_head::before {
  background-color: #262626;
  content: "";
  display: inline-block;
  height: 1px;
  left: 0;
  position: absolute;
  top: 15px;
  width: 17px;
}

.footer_nav_ttl {
  font-weight: 700;
  margin-bottom: 11px;
  position: relative;
}

.footer_nav_ttl a {
  color: #262626;
  font-size: 1.6rem;
  text-decoration: none;
}

.footer_nav_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.footer_nav_group > li {
  width: 260px;
}

.footer_nav_group > li:first-child {
  width: 280px;
}

.footer_nav_list {
  padding-left: 8px;
}

.footer_nav_link {
  margin-bottom: 5px;
}

.footer_nav_link a {
  color: #262626;
  display: inline-block;
  font-size: 1.3rem;
  line-height: 1.5;
  text-decoration: none;
}

.footer_nav_link a strong {
  font-size: 1.6rem;
}

.footer_nav_link a em {
  font-size: 1.8rem;
  font-weight: 400;
  font-style: normal;
  font-family: "Oswald", sans-serif !important;
}

.footer_nav_accor {
  margin-bottom: 39px;
  position: relative;
}

.footer_nav_accor:last-child {
  margin-bottom: 0;
}

.footer_nav_input {
  font-size: 0;
  height: 0;
  line-height: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 0;
}

.footer_association {
  padding-bottom: 49px;
}

.footer_association_row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.footer_association_col {
  margin-right: 15px;
}

.footer_association_col:last-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-right: 0;
}

.footer_association_link {
  display: inline-block;
}

.footer_association_link img {
  max-width: 100%;
}

.footer_association_txt {
  color: #262626;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.2rem;
  line-height: 1.3;
}

.footer_association_txt a {
  color: #0070C0;
  text-decoration: none;
}

.footer_bottom {
  background-color: #204068;
  color: #fff;
  padding-bottom: 48px;
  padding-top: 41px;
}

.footer_bottom_ttl {
  color: #fff;
  font-weight: 700;
  font-size: 1.6rem;
  margin-bottom: 7px;
}

.footer_bottom_address {
  font-size: 1.4rem;
  margin-bottom: 46px;
}

.footer_bottom_copy {
  font-size: 1.2rem;
}

@media only screen and (min-width: 1025px) {
  .footer_nav_link a {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .footer_nav_link a:hover {
    color: #219DF5;
    text-decoration: underline;
  }
  .footer_nav_ttl a {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .footer_nav_ttl a:hover {
    color: #219DF5;
    text-decoration: underline;
  }
  .footer_association_txt a {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .footer_association_txt a:hover {
    color: #219DF5;
    text-decoration: underline;
  }
  .footer_association_link {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .footer_association_link:hover {
    opacity: 0.7;
  }
}

@media only screen and (max-width: 1200px) {
  .footer_nav_row {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer_nav_col:last-child {
    border-left-width: 0;
    margin-left: 0;
    margin-top: 30px;
    padding-left: 0;
    width: 100%;
  }
  .footer_nav_col:last-child .footer_nav_head br {
    display: none;
  }
  .footer_nav_col:last-child .footer_nav_head span {
    display: inline-block;
  }
  .footer_nav_col:last-child .footer_nav_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer_nav_col:last-child .footer_nav_list::after {
    content: "";
    width: calc((100% - 60px) / 3);
  }
  .footer_nav_col:last-child .footer_nav_link {
    width: calc((100% - 60px) / 3);
  }
  .footer_nav_group > li {
    width: calc((100% - 60px) / 3);
  }
  .footer_nav_group > li:first-child {
    width: calc((100% - 60px) / 3);
  }
}

@media only screen and (max-width: 992px) {
  .footer_association_col:last-child {
    margin-top: 15px;
    max-width: 600px;
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
    width: 100%;
  }
}

@media only screen and (max-width: 799px) {
  .footer {
    padding-top: 0;
  }
  .footer .inner, .footer .inner-1130, .footer .inner-article {
    padding-top: 0;
    border-top: 0;
  }
  .footer_nav {
    padding-bottom: 30px;
  }
  .footer_nav_row {
    display: block;
  }
  .footer_nav_col:last-child {
    margin-top: 0;
  }
  .footer_nav_col:last-child .footer_nav_head {
    margin-bottom: 0;
  }
  .footer_nav_col:last-child .footer_nav_list {
    display: block;
    margin-bottom: 0;
  }
  .footer_nav_col:last-child .footer_nav_list::after {
    display: none;
  }
  .footer_nav_col:last-child .footer_nav_list.pcDisplay {
    display: none;
  }
  .footer_nav_col:last-child .footer_nav_link {
    width: 100%;
  }
  .footer_nav_head {
    background-color: #294C77;
    color: #fff;
    font-size: 1.5rem;
    padding: 17px 37px 20px;
    margin: 0 -15px;
  }
  .footer_nav_head a {
    color: #fff;
  }
  .footer_nav_head::before {
    background-color: #fff;
    left: 19px;
    top: 28px;
    width: 13px;
  }
  .footer_nav_ttl {
    border-bottom: 1px solid #707070;
    margin: 0 -15px;
    padding: 17px 50px 18px 16px;
    position: relative;
  }
  .footer_nav_ttl a {
    font-size: 1.3rem;
  }
  .footer_nav_ttl label {
    display: block;
    height: 34px;
    position: absolute;
    right: 22px;
    top: 10px;
    width: 34px;
  }
  .footer_nav_ttl label::before, .footer_nav_ttl label::after {
    background-color: #2E5586;
    content: "";
    height: 1px;
    position: absolute;
    right: 9px;
    top: 17px;
    -webkit-transition: -webkit-transform .15s;
    transition: -webkit-transform .15s;
    transition: transform .15s;
    transition: transform .15s, -webkit-transform .15s;
    width: 15px;
  }
  .footer_nav_ttl label::after {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .footer_nav_list {
    margin: 0 -15px;
    padding-left: 0;
  }
  .footer_nav_link {
    margin-bottom: 0;
  }
  .footer_nav_link a {
    border-bottom: 1px solid #707070;
    display: block;
    font-size: 1.3rem;
    padding: 12px 15px 12px 43px;
  }
  .footer_nav_group {
    display: block;
  }
  .footer_nav_group > li {
    width: 100%;
  }
  .footer_nav_group > li:first-child {
    width: 100%;
  }
  .footer_nav_accor {
    margin-bottom: 0;
  }
  .footer_nav_accor ul {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: border-color 0.15s, max-height 0.15s cubic-bezier(0, 1, 0, 1);
    transition: border-color 0.15s, max-height 0.15s cubic-bezier(0, 1, 0, 1);
  }
  .footer_nav_input:checked ~ ul {
    max-height: 3000px;
    -webkit-transition: max-height .15s ease-in-out;
    transition: max-height .15s ease-in-out;
  }
  .footer_nav_input:checked ~ .footer_nav_ttl label::before, .footer_nav_input:checked ~ .footer_nav_ttl label::after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .footer_association {
    padding-bottom: 38px;
  }
  .footer_association_row {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .footer_association_col {
    margin: 18px 10px 0;
    max-width: calc((100% - 16px) / 2);
  }
  .footer_association_col:first-child {
    margin: 0;
    max-width: 100%;
    text-align: center;
    width: 100%;
  }
  .footer_association_col:first-child .footer_association_link img {
    width: 76px;
  }
  .footer_association_col:last-child {
    margin: 18px 0 0;
    max-width: 100%;
  }
  .footer_association_txt {
    font-size: 1.1rem;
    line-height: 1.6;
    margin-top: 0;
  }
  .footer_bottom {
    padding-bottom: 33px;
    padding-top: 33px;
  }
  .footer_bottom_inner {
    padding-left: 25px;
    padding-right: 25px;
  }
  .footer_bottom_ttl {
    font-size: 1.5rem;
    margin-bottom: 17px;
  }
  .footer_bottom_address {
    font-size: 1.3rem;
    margin-bottom: 78px;
  }
  .footer_bottom_copy {
    font-size: 1rem;
  }
}

@media only screen and (max-width: 540px) {
  .footer_association_row {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer_association_col {
    margin: 18px 0 0;
    width: calc((100% - 16px) / 2);
  }
  .footer_association_link {
    width: 100%;
  }
  .footer_association_link img {
    width: 100%;
  }
}

.btn_common01 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 290px;
  padding: 12px 10px;
  border-radius: 6px;
  background-color: #0070C0;
  color: #FFF;
  text-decoration: none !important;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
}

.btn_common01 .box_top {
  border-bottom: 1px solid #FFF;
}

.btn_common01 .box_top.tel {
  pointer-events: none;
  text-decoration: none;
}

.btn_common01 .txt_top {
  display: inline-block;
  min-height: 45px;
  padding: 2px 8px 8px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
  text-decoration: none;
}

.btn_common01 .txt_top.phone {
  position: relative;
  padding-left: 50px;
  font-family: "Oswald", sans-serif !important;
  font-size: 3.3rem;
  font-weight: 500;
  line-height: 1;
  -webkit-transform: skew(-8deg);
          transform: skew(-8deg);
}

.btn_common01 .txt_top.phone::before {
  position: absolute;
  content: '';
  left: 2px;
  top: 0;
  width: 34px;
  height: 34px;
  background: url("/images/svg/icon_call.svg") no-repeat 0 50%;
  background-size: 34px auto;
  -webkit-transform: skew(8deg);
          transform: skew(8deg);
}

.btn_common01 .txt_bot {
  position: relative;
  padding: 7px 40px 1px 43px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
  text-decoration: none;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  letter-spacing: 0.2rem;
}

.btn_common01 .txt_bot::before {
  position: absolute;
  content: '';
  left: 4px;
  top: 11px;
  width: 28px;
  height: 22px;
  background: url("/images/svg/icon_mail.svg") no-repeat 0 50%;
  background-size: 28px auto;
}

.btn_common01 .txt_bot::after {
  position: absolute;
  content: '';
  right: 0;
  top: 10px;
  width: 26px;
  height: 26px;
  background: url("/images/svg/icon_arrow_01.svg") no-repeat 0 50%;
  background-size: 26px 26px;
}

.btn_common01.custom {
  background-color: #FF0000;
  padding: 0;
}

.btn_common01.custom .box_top {
  padding: 12px 10px 0 10px;
}

.btn_common01.custom .txt_bot {
  margin-left: 10px;
  margin-right: 10px;
  padding-bottom: 13px;
  letter-spacing: 0;
}

.btn_common01.custom .txt_bot::after {
  background-image: url("/images/svg/icon_arrow_03.svg");
}

.btn_common01:hover {
  color: #FFF;
}

@media only screen and (min-width: 1025px) {
  .btn_common01 a:hover {
    opacity: 0.7;
  }
  .btn_common01 a.txt_bot:hover {
    opacity: 0.7;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common01 {
    max-width: 325px;
    width: 100%;
    padding: 7px 15px;
  }
  .btn_common01 .box_top.tel {
    pointer-events: all;
  }
  .btn_common01 .txt_top {
    min-height: 38px;
    text-align: center;
  }
  .btn_common01 .txt_top.phone {
    padding-left: 40px;
    padding-bottom: 7px;
  }
  .btn_common01 .txt_top.phone::before {
    left: 0px;
    top: 0;
    width: 32px;
    height: 32px;
    background-size: 32px auto;
  }
  .btn_common01 .txt_bot::after {
    right: 5px;
  }
  .btn_common01 .txt_bot::before {
    left: 0px;
  }
  .btn_common01.custom .box_top {
    padding: 7px 15px 0 15px;
  }
  .btn_common01.custom .txt_bot {
    margin-left: 15px;
    margin-right: 15px;
    padding-bottom: 11px;
    letter-spacing: 0.2;
  }
  .btn_common01.custom .txt_bot::after {
    background-image: url("/images/svg/icon_arrow_03.svg");
  }
}

@media only screen and (max-width: 374px) {
  .btn_common01 .txt_top {
    font-size: 1.7rem;
  }
  .btn_common01 .txt_bot {
    padding-bottom: 5px;
    font-size: 1.6rem;
  }
  .btn_common01.custom .txt_bot {
    padding-left: 40px;
    letter-spacing: 0;
  }
}

@media only screen and (min-width: 1025px) {
  a.btn_common01:hover {
    opacity: 0.7;
  }
}

.btn_service {
  max-width: 250px;
  margin: 0 auto 40px;
}

@media only screen and (max-width: 799px) {
  .btn_service {
    max-width: 260px;
    margin: 0 auto 50px;
  }
}

.btn_common02 {
  background: url(/images/svg/icon_arrow_05.svg) no-repeat right 20px center/8px;
  position: relative;
  display: block;
  max-width: 250px;
  padding: 19px 25px;
  color: #262626;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  -webkit-transition: color .1s;
  transition: color .1s;
}

.btn_common02::before, .btn_common02::after {
  background-color: #262626;
  content: '';
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color .1s;
  transition: background-color .1s;
  width: 100%;
}

.btn_common02::before {
  -webkit-transform-origin: top left;
          transform-origin: top left;
  top: 0;
}

.btn_common02::after {
  -webkit-transform-origin: top right;
          transform-origin: top right;
  bottom: 0;
}

@-webkit-keyframes arrow-move {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@keyframes arrow-move {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@media only screen and (min-width: 1025px) {
  .btn_common02:hover {
    background-image: url(/images/svg/icon_arrow_10.svg);
    text-decoration: none;
    color: #219DF5;
  }
  .btn_common02:hover::after {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .btn_common02:hover::before {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common02 {
    background-position: right 15px center;
    max-width: 260px;
    padding: 25px 40px;
    font-size: 1.6rem;
  }
}

.btn_service_list {
  max-width: 460px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.btn_service_list li {
  width: calc((100% - 20px) / 2);
}

.btn_service_list li a {
  display: block;
  position: relative;
  padding: 15px 32px;
  border-radius: 4px;
  background-color: #F4F4F4;
  color: #262626;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn_service_list li a::before {
  position: absolute;
  content: '';
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-45%);
          transform: translateY(-45%);
  width: 8px;
  height: 13px;
  background-image: url("/images/svg/icon_arrow_05.svg");
  background-size: 8px auto;
}

.btn_service_list li a:hover {
  color: #262626;
  opacity: .7;
  text-decoration: none;
}

@media only screen and (max-width: 799px) {
  .btn_service_list {
    max-width: 260px;
  }
  .btn_service_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  .btn_service_list li:last-child {
    margin-bottom: 0;
  }
  .btn_service_list li a {
    padding: 20px 32px;
    font-size: 1.5rem;
  }
}

.btn_engineer {
  text-align: right;
}

.btn_engineer a {
  width: 226px;
  display: inline-block;
  position: relative;
  padding: 15px 32px;
  border-radius: 4px;
  background-color: #F4F4F4;
  color: #0070C0;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn_engineer a::before {
  position: absolute;
  content: '';
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-45%);
          transform: translateY(-45%);
  width: 8px;
  height: 13px;
  background-image: url("/images/svg/icon_arrow_04.svg");
  background-size: 8px auto;
}

@media only screen and (min-width: 799.1px) {
  .btn_engineer a:hover {
    color: #219DF5;
    opacity: .7;
    text-decoration: none;
  }
}

@media only screen and (max-width: 799px) {
  .btn_engineer {
    text-align: center;
  }
  .btn_engineer01 {
    margin: 40px 0 50px;
  }
}

.btn_common_list {
  max-width: 440px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.btn_common_list li {
  width: calc((100% - 40px) / 2);
}

.btn_common_list li a {
  background: url(/images/svg/icon_arrow_04.svg) no-repeat right 12px center/8px;
  display: block;
  position: relative;
  padding: 18px 25px;
  background-color: #FFF;
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: color .1s;
  transition: color .1s;
}

.btn_common_list li a::before, .btn_common_list li a::after {
  background-color: #0272BD;
  content: '';
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color .1s;
  transition: background-color .1s;
  width: 100%;
}

.btn_common_list li a::before {
  -webkit-transform-origin: top left;
          transform-origin: top left;
  top: 0;
}

.btn_common_list li a::after {
  -webkit-transform-origin: top right;
          transform-origin: top right;
  bottom: 0;
}

@keyframes arrow-move {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@media only screen and (min-width: 799.1px) {
  .btn_common_list li a:hover {
    background-image: url(/images/svg/icon_arrow_10.svg);
    color: #219DF5;
    text-decoration: none;
  }
  .btn_common_list li a:hover::after {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .btn_common_list li a:hover::before {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
}

.btn_common_list01 {
  max-width: 200px;
  width: 200px;
}

.btn_common_list01 li {
  width: 100%;
}

@media only screen and (max-width: 799px) {
  .btn_common_list {
    max-width: 260px;
  }
  .btn_common_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  .btn_common_list li:last-child {
    margin-bottom: 0;
  }
  .btn_common_list li a {
    background-position: right 15px center;
    padding: 20px 25px;
    font-size: 1.5rem;
  }
  .btn_common_list01 {
    max-width: 260px;
    width: 260px;
  }
}

.btn_common03 {
  display: inline-block;
  padding: 11px 45px 11px 15px;
  font-size: 1.4rem;
  font-weight: bold;
  color: #0070C0;
  text-decoration: none;
  background-image: url("/images/svg/icon_arrow_04.svg");
  background-color: #FFF;
  background-repeat: no-repeat;
  background-position-x: calc(100% - 20px);
  background-position-y: calc(50% + 1px);
  border-radius: 4px;
  -webkit-transition: 0.3s background-color, 0.3s color;
  transition: 0.3s background-color, 0.3s color;
}

@media only screen and (min-width: 1025px) {
  .btn_common03:hover {
    background-color: #219DF5;
    background-image: url("/images/svg/icon_arrow_08.svg");
    color: #FFF;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common03 {
    padding: 11px 30px 11px 30px;
    background-position-x: calc(100% - 10px);
    font-size: 1.5rem;
    text-align: center;
  }
}

.btn_common04 {
  border: 2px solid #EEF5FB;
  display: block;
  padding: 18px 40px 18px 28px;
  border-radius: 4px;
  color: #0070C0;
  text-decoration: none;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.44;
  background: #EEF5FB url("/images/svg/icon_arrow_09.svg") no-repeat right 30px top 50%;
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s;
}

@media only screen and (min-width: 799.1px) {
  .btn_common04:hover {
    border-color: #219DF5;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common04 {
    border-width: 0;
    padding: 18px 40px 18px 18px;
    font-size: 1.5rem;
  }
}

.btn_common05 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 290px;
  padding: 12px 10px;
  border-radius: 6px;
  background-color: #002C58;
  color: #FFF;
  text-decoration: none !important;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
}

.btn_common05 .box_top {
  border-bottom: 1px solid #FFF;
}

.btn_common05 .txt_top {
  display: inline-block;
  min-height: 45px;
  padding: 2px 8px 8px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
  text-decoration: none;
}

.btn_common05 .txt_bot {
  position: relative;
  padding: 10px 10px;
  font-size: 1.3rem;
  font-weight: normal;
  color: #FFF;
  text-align: justify !important;
  text-decoration: none;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  letter-spacing: 0.2rem;
}

.btn_common05:hover {
  color: #FFF;
}

@media only screen and (min-width: 1025px) {
  .btn_common05 a:hover {
    opacity: 0.7;
  }
  
.btn_common05 a.txt_bot:hover {
    opacity: 0.7;
  }
}

@media only screen and (min-width: 1025px) {
  a.btn_common05:hover {
    opacity: 0.7;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common05 {
    width: 100%;
    padding: 3px 15px 5px;
    margin-top: 7px;
  }
  .btn_common05 .txt_top {
    min-height: 38px;
    text-align: center;
    padding: 0 10px 10px 10px;
  }
  .btn_common05 .txt_bot::after {
    right: 5px;
  }
  .btn_common05 .txt_bot::before {
    left: 0px;
  }
  .btn_common05 .box_top {
    padding: 7px 15px 0 15px;
  }
  .btn_common05 .txt_bot {
    margin-left: 15px;
    margin-right: 15px;
    padding-bottom: 11px;
    letter-spacing: 0.2;
  }
}

@media only screen and (max-width: 374px) {
  .btn_common05 .txt_top {
    font-size: 1.7rem;
  }
  .btn_common05 .txt_bot {
    padding-bottom: 5px;
    font-size: 1.6rem;
  }
  .btn_common05 .custom .txt_bot {
    padding-left: 40px;
    letter-spacing: 0;
  }
}

.btn_common06 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 290px;
  padding: 6px 10px;
  border-radius: 6px;
  background-color: #00857F;
  color: #FFF;
  text-decoration: none !important;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
}

.btn_common06 .box_top {
  border-bottom: 1px solid #FFF;
}

.btn_common06 .txt_top {
  display: inline-block;
  min-height: 45px;
  padding: 2px 8px 6px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
  text-decoration: none;
}

.btn_common06 .txt_bot {
  position: relative;
  padding: 8px 10px 7px;
  font-size: 1.3rem;
  font-weight: normal;
  color: #FFF;
  text-align: justify !important;
  text-decoration: none;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  letter-spacing: 0.2rem;
}

.btn_common06:hover {
  color: #FFF;
}

@media only screen and (min-width: 1025px) {
  .btn_common06 a:hover {
    opacity: 0.7;
  }
  
.btn_common06 a.txt_bot:hover {
    opacity: 0.7;
  }
}

@media only screen and (min-width: 1025px) {
  a.btn_common06:hover {
    opacity: 0.7;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common06 {
    width: 100%;
    padding: 3px 15px 5px;
    margin-top: 7px;
  }
  .btn_common06 .txt_top {
    min-height: 38px;
    text-align: center;
    padding: 0 10px 10px 10px;
  }
  .btn_common06 .txt_bot::after {
    right: 5px;
  }
  .btn_common06 .txt_bot::before {
    left: 0px;
  }
  .btn_common06 .box_top {
    padding: 7px 15px 0 15px;
  }
  .btn_common06 .txt_bot {
    margin-left: 15px;
    margin-right: 15px;
    padding-bottom: 11px;
    letter-spacing: 0.2;
  }
}

@media only screen and (max-width: 374px) {
  .btn_common06 .txt_top {
    font-size: 1.7rem;
  }
  .btn_common06 .txt_bot {
    padding-bottom: 5px;
    font-size: 1.6rem;
  }
  .btn_common06 .custom .txt_bot {
    padding-left: 40px;
    letter-spacing: 0;
  }
}

.breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.breadcrumb li {
  list-style-type: none;
}

.breadcrumb span,
.breadcrumb a {
  font-size: 1.4rem;
  color: #FFF;
}

.breadcrumb a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  padding-right: 10px;
  margin-right: 10px;
  text-decoration: none;
}

.breadcrumb a::after {
  position: absolute;
  content: '';
  width: 4px;
  height: 7px;
  right: -3px;
  top: 50%;
  background: url("/images/svg/icon_arrow_06.svg") no-repeat right 0 top 50%;
  background-size: 4px auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.breadcrumb span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.breadcrumb.sp {
  display: none;
}

@media only screen and (max-width: 799px) {
  .breadcrumb {
    overflow-x: auto;
  }
  .breadcrumb.sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 13px 15px 15px 15px;
    border-top: 1px solid #D5D5D5;
  }
  .breadcrumb.sp li {
    word-break: keep-all;
    white-space: nowrap;
  }
  .breadcrumb span,
  .breadcrumb a {
    font-size: 1rem;
    color: #222;
    word-break: keep-all;
  }
  .breadcrumb a::after {
    background-image: url("/images/svg/icon_arrow_05.svg");
  }
}

.table_style01 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_style01 thead th {
  background-color: #F4F4F4;
  padding: 13px 20px;
  color: #262626;
}

.table_style01 th,
.table_style01 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: left;
}

.table_style01 th {
  width: 35%;
  font-weight: 700;
  color: #204068;
}

.table_style01 td {
  width: 100%;
}

.table_style01 .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
}

.table_style01 .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .table_style01 {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style01 thead {
    display: none;
  }
  .table_style01 tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style01 tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style01 th,
  .table_style01 td {
    width: 100%;
    border: 0;
    padding: 0;
  }
  .table_style01 th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style01 td {
    font-size: 1.6rem;
  }
}

.date_caption {
  padding-bottom: 30px;
  font-size: 1.4rem;
  text-align: right;
}

.date_caption_L {
  padding-bottom: 30px;
  font-size: 1.4rem;
  text-align: left;
}

.date_caption_L02 {
  font-size: 1.2rem;
  text-align: left;
  font-weight: normal;
  line-height: normal;
  color: #333333;
}

.date_caption_c {
  padding-bottom: 30px;
  font-size: 1.4rem;
  text-align: center !important;
}
.table_style02 {
  margin-bottom: 0;
}

.table_style02 th,
.table_style02 td {
  padding: 19px 20px;
  vertical-align: top;
}

.table_style02 th {
  width: 25.5%;
}

.table_style02 td {
  width: auto;
}

.table_style02 td span {
  display: inline-block;
  width: calc(100% - 50px);
  vertical-align: top;
}

.table_style02 td .link_txt {
  width: 50px;
  display: inline-block;
  vertical-align: top;
  padding-left: 15px;
  color: #0070C0;
  text-align: right;
  text-decoration: none;
}

.table_style02 td .link_txt:hover {
  color: #219DF5;
  text-decoration: underline;
}

.table_style02 td .link_txt01 {
  width: auto;
  padding-left: 0;
}

@media only screen and (max-width: 799px) {
  .table_style02 th,
  .table_style02 td {
    width: 100%;
    border: 0;
    padding: 0;
  }
  .table_style02 th {
    margin-bottom: 10px;
  }
  .table_style02 td .link_txt01 {
    text-decoration: underline;
  }
  .table_style02 td .link_map {
    display: block;
    width: 100%;
    padding: 10px 0 0 0;
    text-align: left;
    text-decoration: underline;
  }
}

.modal_table {
  width: 100%;
  font-size: 1.4rem;
}

.modal_table th {
  width: 110px;
  padding: 1px 10px;
  font-weight: normal;
  text-align: left;
  vertical-align: top;
}

.modal_table td {
  padding: 1px 10px 1px 0;
}

@media only screen and (max-width: 799px) {
  .modal_table th {
    width: 90px;
    padding: 1px 10px 1px 0;
  }
}

.spDisplay,
.spDisplayInline {
  display: none;
}

.pb0 {
  padding-bottom: 0 !important;
}

@media only screen and (max-width: 799px) {
  .pcDisplay {
    display: none;
  }
  .spDisplayInline {
    display: inline-block;
  }
  .spDisplay {
    display: block;
  }
}

.txt_common {
  margin-bottom: 32px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.txt_common_alighn_right {
  text-align: right;
}

.txt_common_align_center {
  text-align: center;
  margin-bottom: 32px;
  line-height: 1.6;
}
}

@media only screen and (max-width: 799px) {
  .txt_common {
    margin-bottom: 10px;
  }
}

.txt_common01 {
  margin-bottom: 15px;
  font-size: 1.4rem;
  line-height: 1.6;
}

@media only screen and (max-width: 799px) {
  .txt_common01 {
    margin-bottom: 10px;
  }
}

.txt_common02 {
  margin-bottom: 20px;
}

@media only screen and (max-width: 799px) {
  .txt_common02 {
    margin-bottom: 10px;
  }
}

@media only screen and (max-width: 799px) {
  .txt_common03 {
    margin-bottom: 30px;
  }
}

.txt_common04 {
  margin-bottom: 80px;
}

@media only screen and (max-width: 799px) {
  .txt_common04 {
    margin-bottom: 30px;
  }
}

.img_common {
  margin: 0 auto 40px;
}

.img_common img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

@media only screen and (max-width: 799px) {
  .img_common.sp_mw320 {
    max-width: 320px;
  }
}

.section_top {
  padding: 70px 0;
}

@media only screen and (max-width: 799px) {
  .section_top {
    padding: 50px 0 75px;
  }
  .section_top.sp_pb0 {
    padding-bottom: 0;
  }
}

.section_blue {
  padding: 55px 0;
  background-color: #EEF5FB;
}

@media only screen and (max-width: 799px) {
  .section_blue {
    margin: 0 -15px;
  }
}

.ir_navi_block {
  padding: 15px 20px;
  background-color: #F4F4F4;
}

@media only screen and (max-width: 799px) {
  .ir_navi_block {
    margin-bottom: 50px;
  }
}

.group_media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: -70px;
  margin-bottom: 30px;
  padding: 85px 15px 80px;
  background-color: #F4F4F4;
}

.group_media .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 570px;
  width: 100%;
  margin: 0 auto;
}

.group_media .item {
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
}

.group_media .item img {
  display: block;
  width: 100%;
}

@media only screen and (min-width: 1025px) {
  .group_media .item:hover {
    opacity: 0.7;
  }
}

@media only screen and (max-width: 799px) {
  .group_media {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 0;
    padding: 70px 15px 70px;
  }
  .group_media .item {
    width: calc(50% - 5px);
  }
}

.area_warning {
  margin-bottom: 50px;
  padding: 20px 30px 25px;
  border: 1px solid #C83353;
  background-color: #FFEFEF;
  font-size: 1.6rem;
}

.area_warning .ttl {
  margin-bottom: 20px;
  font-weight: 700;
  color: #C83051;
}

.area_warning .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  line-height: 1.6;
}

.area_warning .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .area_warning {
    padding: 25px 20px 25px;
  }
  .area_warning .ttl {
    margin-bottom: 15px;
    font-size: 1.5rem;
  }
  .area_warning .list li {
    font-size: 1.4rem;
    line-height: 1.7;
  }
}

.area_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 60px 0 40px;
  background-color: #EEF5FB;
}

.area_block .item {
  position: relative;
  width: 20%;
  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;
  padding: 0 5px 45px 5px;
  text-decoration: none;
}

.area_block .item::after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 50%;
  width: 36px;
  height: 36px;
  background: url("/images/svg/icon_arrow_07.svg") no-repeat 50% 50%;
  background-size: 36px auto;
  -webkit-box-shadow: 0 3px 6px rgba(209, 227, 242, 0.5);
          box-shadow: 0 3px 6px rgba(209, 227, 242, 0.5);
  border-radius: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.area_block .icon {
  margin-bottom: 15px;
}

.area_block .icon img {
  display: block;
  height: 100%;
}

.area_block .ttl {
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  -webkit-transition: 0.2s color;
  transition: 0.2s color;
}

@media only screen and (min-width: 1025px) {
  .area_block .item:hover .ttl {
    color: #219DF5;
  }
}

@media only screen and (max-width: 1200px) {
  .area_block .item {
    width: 25%;
  }
}

@media only screen and (max-width: 799px) {
  .area_block {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 55px 0 20px;
  }
  .area_block .item {
    width: 50%;
    margin-bottom: 50px;
    padding: 0 5px 55px 5px;
  }
  .area_block .item::after {
    width: 33px;
    height: 33px;
  }
  .area_block .ttl {
    font-size: 1.4rem;
  }
  .area_block .ttl .sp_size {
    font-size: 1.2rem;
  }
  .area_block .icon {
    height: 77px;
    margin-bottom: 10px;
  }
}

.area_block01 {
  margin-bottom: 50px;
  padding: 70px 50px 45px 50px;
  background-color: #EEF5FB;
}

.area_block01 .txt_common {
  max-width: 840px;
}

.area_block01 .image {
  max-width: 840px;
  padding: 50px 20px 50px;
  background-color: #FFF;
}

.area_block01 .image img {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 520px;
}

@media only screen and (max-width: 799px) {
  .area_block01 {
    margin-left: -15px;
    margin-right: -15px;
    padding: 39px 30px 30px 30px;
  }
  .area_block01 .txt_common {
    margin-bottom: 25px;
  }
  .area_block01 .image {
    padding: 30px 12px 30px;
  }
  .area_block01 .table_style01 tr {
    padding: 15px;
  }
}

.area_block02 {
  margin-bottom: 40px;
  padding: 17px 30px;
  background-color: #F4F4F4;
  border-radius: 4px;
}

.area_block02.custom {
  margin-bottom: 60px;
  padding: 30px 30px 45px 30px;
}

.area_block02 .img_01 {
  display: block;
}

.area_block02 .img_01 img {
  display: block;
  margin: 0 auto;
  max-width: 700px;
}

.area_block02 .txt_min {
  margin-bottom: 20px;
  line-height: 1.5;
  font-size: 1.2rem;
}

.area_block02 .box01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 15px;
  padding: 20px 20px;
  background-color: #FFF;
}

.area_block02 .list_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  padding-right: 30px;
}

.area_block02 .list_img li {
  margin: 0 8px;
  list-style-type: none;
}

.area_block02 .list_img img {
  display: block;
  width: 100%;
}

.area_block02 .table_style01 thead {
  background-color: #DEEBF7;
}

.area_block02 .table_style01 thead th {
  padding-left: 30px;
  padding-right: 30px;
  background-color: #DEEBF7;
}

.area_block02 .table_style01 tbody th,
.area_block02 .table_style01 tbody td {
  padding: 17px 30px;
}

.area_block02 .table_style01 th {
  width: 36%;
}

@media only screen and (max-width: 799px) {
  .area_block02 {
    margin-bottom: 35px;
    padding: 15px 15px;
  }
  .area_block02.custom {
    margin-bottom: 50px;
    padding: 20px 10px 30px 12px;
    border-radius: 0;
  }
  .area_block02 .box01 {
    margin-bottom: 0;
    padding: 20px 10px 5px 10px;
  }
  .area_block02 .img_01 img {
    width: 100%;
    max-width: auto;
  }
  .area_block02 .txt_min {
    margin-bottom: 10px;
    font-size: 1.4rem;
  }
  .area_block02 .list_img {
    margin-bottom: 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-right: 0;
  }
  .area_block02 .list_img li {
    width: calc(50% - 8px);
    margin: 0 4px 8px 4px;
  }
  .area_block02 .btn_common03 {
    width: 100%;
  }
  .area_block02 .table_style01 thead {
    display: block;
  }
  .area_block02 .table_style01 thead tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 15px;
    border-bottom: 0;
  }
  .area_block02 .table_style01 thead th {
    width: 100%;
    margin: 0 0 10px 0;
    padding: 0;
  }
  .area_block02 .table_style01 thead th:last-child {
    margin-bottom: 0;
  }
  .area_block02 .table_style01 tbody th,
  .area_block02 .table_style01 tbody td {
    padding: 0;
  }
  .area_block02 .table_style01 tr {
    padding: 15px;
  }
  .area_block02 .table_style01 th {
    width: 100%;
  }
}

.area_general {
  margin-bottom: 30px;
  padding: 40px 40px;
  background-color: #F4F4F4;
}

.area_general .box_inner {
  padding: 15px 30px;
  background-color: #FFF;
}

@media only screen and (max-width: 799px) {
  .area_general {
    margin: 0 -15px 50px -15px;
    padding: 20px 20px;
  }
  .area_general .box_inner {
    padding: 15px 20px;
  }
}

.scroll_down {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: hidden;
  width: 1px;
  height: 58px;
}

.scroll_down::after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background-color: #0272BD;
  -webkit-animation: animations_scroll_move 2s cubic-bezier(1, 0, 0, 1) infinite;
          animation: animations_scroll_move 2s cubic-bezier(1, 0, 0, 1) infinite;
  content: '';
}

.group_btn01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
}

.group_btn01 .col {
  margin-right: 12px;
}

@media only screen and (max-width: 799px) {
  .group_btn01 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 10px;
  }
  .group_btn01 .box_top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
  .group_btn01 .col {
    width: calc(50% - 10px);
    margin-bottom: 10px;
  }
  .group_btn01 .col:last-child {
    margin-right: 0;
  }
  .group_btn01 .col .btn_common01 {
    max-width: 100%;
  }
}

@media only screen and (max-width: 799px) {
  .group_btn01 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 10px;
  }
  .group_btn01 .col {
    width: 100%;
    margin-right: 0;
  }
}

.group_btn02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  padding: 10px 25px 30px;
  background-color: #FFF;
}

@media only screen and (max-width: 1024px) {
  .group_btn02 .btn_common01 {
    max-width: 100%;
    width: 100%;
  }
}

@media only screen and (max-width: 799px) {
  .group_btn02 {
    padding-bottom: 100px;
  }
}

.text_style, .text_style-red, .text_style-blue {
  margin-bottom: 10px;
  font-size: 1.3rem;
  font-weight: 700;
}

.text_style-red {
  color: #EA0D19;
}

.text_style-blue {
  color: #0070C0;
}

@media only screen and (max-width: 799px) {
  .text_style, .text_style-red, .text_style-blue {
    margin-bottom: 5px;
    font-size: 1.2rem;
  }
}

.text_style-blue02 {
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: 700;
}

.headline1, .headline1_top {
  margin-bottom: 30px;
  text-align: center;
}

.headline1_top {
  position: relative;
  margin-top: -55px;
}

.headline1 .ttl, .headline1_top .ttl {
  display: block;
  font-size: 2.4rem;
  font-weight: 700;
}

.headline1 .sub, .headline1_top .sub {
  display: block;
  padding-top: 5px;
  font-family: "Oswald", sans-serif !important;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 1px;
}

.headline1.custom, .custom.headline1_top {
  margin-bottom: -30px;
}

.headline1 .scroll_down, .headline1_top .scroll_down {
  margin-top: 25px;
}

.headline1.headline_news, .headline_news.headline1_top {
  margin-top: -75px;
}

.headline1.headline_intro, .headline_intro.headline1_top {
  margin-top: -60px;
}

@media only screen and (max-width: 799px) {
  .headline1_top {
    margin-top: 0;
  }
  .headline1 .ttl, .headline1_top .ttl {
    font-size: 2rem;
  }
  .headline1.headline_news, .headline_news.headline1_top {
    margin-top: -70px;
    margin-bottom: 10px;
  }
  .headline1.headline_intro, .headline_intro.headline1_top {
    margin: -60px 0 30px;
  }
  .headline1.custom, .custom.headline1_top {
    margin-top: 0;
    margin-bottom: -15px;
  }
  .headline1.custom .scroll_down, .custom.headline1_top .scroll_down {
    height: 30px;
  }
  .headline1 .scroll_down, .headline1_top .scroll_down {
    margin-top: 20px;
  }
}

.headline2 {
  margin-bottom: 65px;
  font-size: 3.4rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

@media only screen and (max-width: 799px) {
  .headline2 {
    margin-bottom: 55px;
    font-size: 2.4rem;
  }
}

.headline3 {
  position: relative;
  z-index: 1;
  margin-bottom: 30px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
}

.headline3::after {
  position: absolute;
  z-index: -1;
  content: '';
  height: 1px;
  left: 0;
  right: 0;
  top: 50%;
  background-color: #262626;
}

.headline3 span {
  display: inline-block;
  padding-right: 10px;
  background-color: #FFF;
}

@media only screen and (max-width: 799px) {
  .headline3 {
    margin-bottom: 27px;
    padding-bottom: 24px;
    font-size: 2rem;
  }
  .headline3 span {
    display: block;
    padding-right: 0;
  }
  .headline3::after {
    width: 40px;
    top: auto;
    bottom: 0;
    -webkit-transform: none;
            transform: none;
  }
}

.headline4 {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 18px 30px;
  background-color: #FFF;
}

.headline4 .ttl {
  display: inline-block;
  margin-bottom: 15px;
  font-size: 4.8rem;
  line-height: 1.2;
  font-weight: 900;
}

.headline4 .ttl_sub {
  display: inline-block;
  position: relative;
  bottom: -2px;
  margin-left: 20px;
  margin-top: 5px;
  font-size: 2rem;
}

.headline4 .sub {
  font-family: "Oswald", sans-serif !important;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: 1.4px;
}

@media only screen and (max-width: 799px) {
  .headline4 {
    padding: 10px 15px;
  }
  .headline4 .ttl {
    margin-bottom: 7px;
    font-size: 2.4rem;
  }
  .headline4 .ttl_sub {
    display: block;
    position: static;
    margin-left: 0;
    font-size: 1.2rem;
  }
  .headline4 .sub {
    font-size: 1.3rem;
    letter-spacing: 0.8px;
  }
}

.headline5 {
  position: relative;
  margin-top: 50px;
  margin-bottom: 50px;
  padding: 9px 0 9px 30px;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}

.headline5::before {
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  width: 6px;
  height: 100%;
  background-color: #C83051;
}

@media only screen and (max-width: 799px) {
  .headline5 {
    margin-bottom: 30px;
    padding: 7px 0 7px 22px;
    font-size: 1.7rem;
  }
  .headline5::before {
    width: 4px;
  }
}

.headline6 {
  position: relative;
  margin-bottom: 10px;
  padding-left: 30px;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.5;
}

.headline6::before {
  position: absolute;
  content: '';
  left: 0;
  top: 15px;
  width: 20px;
  height: 3px;
  background-color: #C83051;
}

@media only screen and (max-width: 799px) {
  .headline6 {
    padding-left: 20px;
    font-size: 1.6rem;
  }
  .headline6::before {
    top: 10px;
    width: 12px;
    height: 2px;
  }
  .headline6.style01 {
    padding: 7px 0 7px 20px;
    font-size: 1.7rem;
  }
  .headline6.style01::before {
    top: 0;
    width: 4px;
    height: 100%;
  }
}

.services_list {
  max-width: 1100px;
  margin: 0 auto 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.services_list::after {
  content: "";
  width: calc((100% - 110px) / 3);
}

.services_list li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: calc((100% - 110px) / 3);
  margin-bottom: 35px;
}

.services_list li::after {
  position: absolute;
  content: '';
  right: 0;
  bottom: 0;
  left: 5px;
  height: 1px;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  width: calc(100% - 5px);
  background-color: #717171;
}

.services_list li .services_title {
  margin-bottom: 10px;
  font-size: 1.8rem;
  font-weight: bold;
}

.services_list li .services_title a {
  display: block;
  padding-left: 28px;
  color: #0070C0;
  position: relative;
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s;
}

.services_list li .services_title a::before {
  background: url("/images/svg/icon_arrow_04.svg") no-repeat 0 0/8px;
  content: "";
  height: 13px;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) translateX(0);
          transform: translateY(-50%) translateX(0);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  width: 8px;
}

.services_list li .services_title a span {
  font-size: 1.6rem;
  letter-spacing: -1px;
}

.services_list li .services_txt {
  height: 100%;
  margin-left: 4px;
  padding: 0 10px 25px 24px;
  color: #262626;
  font-size: 1.6rem;
  position: relative;
}

.services_list li .services_txt::before {
  background-color: #717171;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  -webkit-transform-origin: center top 0;
          transform-origin: center top 0;
  top: 0;
  width: 1px;
}

@media only screen and (min-width: 1025px) {
  .services_list li:hover {
    cursor: pointer;
  }
  .services_list li:hover .services_title a {
    color: #219DF5;
  }
  .services_list li:hover .services_title a::before {
    -webkit-transform: translateY(-50%) translateX(10px);
            transform: translateY(-50%) translateX(10px);
  }
  .services_list li:hover .services_txt::before {
    -webkit-animation: arrow-line-down .5s;
            animation: arrow-line-down .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .services_list li:hover::after {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-line-right .5s;
            animation: arrow-line-right .5s;
    -webkit-animation-delay: .5s;
            animation-delay: .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  @-webkit-keyframes arrow-line-down {
    from {
      -webkit-transform: scaleY(0);
              transform: scaleY(0);
    }
    to {
      -webkit-transform: scaleY(1);
              transform: scaleY(1);
    }
  }
  @keyframes arrow-line-down {
    from {
      -webkit-transform: scaleY(0);
              transform: scaleY(0);
    }
    to {
      -webkit-transform: scaleY(1);
              transform: scaleY(1);
    }
  }
  @-webkit-keyframes arrow-line-right {
    from {
      -webkit-transform: scaleX(0);
              transform: scaleX(0);
    }
    to {
      -webkit-transform: scaleX(1);
              transform: scaleX(1);
    }
  }
  @keyframes arrow-line-right {
    from {
      -webkit-transform: scaleX(0);
              transform: scaleX(0);
    }
    to {
      -webkit-transform: scaleX(1);
              transform: scaleX(1);
    }
  }
}

@media only screen and (max-width: 1200px) {
  .services_list::after {
    content: "";
    width: calc((100% - 80px) / 3);
  }
  .services_list li {
    width: calc((100% - 80px) / 3);
  }
}

@media only screen and (max-width: 799px) {
  .services_list::after {
    content: "";
    width: 100%;
  }
  .services_list li {
    width: 100%;
    margin-bottom: 30px;
  }
  .services_list li .services_title a {
    padding-left: 25px;
  }
  .services_list li .services_txt {
    font-size: 1.5rem;
    min-height: auto;
    padding: 0 10px 25px 25px;
  }
}

.news_list {
  max-width: 930px;
  margin: 0 auto 50px;
  padding: 0 15px;
  list-style: none;
}

.news_list li {
  border-bottom: 1px solid #BDD7ED;
}

.news_list li a {
  position: relative;
  display: block;
  padding: 20px 50px 20px 20px;
  color: #0070C0;
  text-decoration: none;
}

@media only screen and (min-width: 799.1px) {
  .news_list li a:hover {
    color: #219DF5;
    text-decoration: none;
  }
  .news_list li a:hover .news_txt02 {
    text-decoration: none;
  }
}

.news_list li a::before {
  position: absolute;
  content: '';
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px;
  height: 13px;
  background-image: url("/images/svg/icon_arrow_05.svg");
  background-size: 8px auto;
}

.news_list li a .news_txt01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 3px;
  color: #262626;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
}

.news_list li a .news_txt01 .date_txt {
  padding-right: 30px;
  font-family: "Oswald", sans-serif !important;
  font-weight: 400;
  letter-spacing: 1px;
}

.news_list li a .news_txt02 {
  font-size: 1.8rem;
  font-weight: 700;
}

.news_list_ir li a .news_txt01 {
  margin-bottom: 5px;
}

.news_list_ir li a .news_txt02 span {
  margin-left: 15px;
  font-family: "Oswald", sans-serif !important;
  font-size: 1.2rem;
  line-height: 1;
}

.news_list_ir li a .news_txt02 span em {
  margin-right: 9px;
  padding: 1px 10px 2px;
  background-color: #EE3D23;
  color: #FFF;
  font-style: normal;
}

@media only screen and (max-width: 799px) {
  .news_list {
    max-width: 100%;
    padding: 0 24px;
  }
  .news_list li a {
    padding: 20px 30px 20px 0;
  }
  .news_list li a::before {
    right: 0;
  }
  .news_list li a .news_txt01 {
    margin-bottom: 3px;
  }
  .news_list li a .news_txt01 .date_txt {
    padding-right: 10px;
  }
  .news_list li a .news_txt02 {
    font-size: 1.6rem;
  }
  .news_list_ir li a .news_txt02 span {
    display: block;
    margin: 10px 0 0 0;
    font-size: 1.1rem;
  }
}

.event_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  margin-bottom: 10px;
  list-style: none;
}

.event_list::after {
  content: "";
  width: calc((100% - 80px) / 3);
}

.event_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc((100% - 80px) / 3);
  margin-bottom: 40px;
}

.event_list li a {
  display: block;
  width: 100%;
  padding: 38px 40px 36px;
  border-radius: 4px;
  border: 2px solid #FFF;
  -webkit-box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
          box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
  color: #262626;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.event_list li a .event_txt {
  min-height: 133px;
  margin-bottom: 20px;
  font-size: 1.2rem;
  font-weight: 700;
}

.event_list li a .event_txt em {
  display: block;
  padding-top: 4px;
  font-style: normal;
  color: #C83051;
}

.event_list li a .event_txt em.event_txt_note {
  color: #262626;
  font-weight: normal;
}

.event_list li a .event_txt span {
  display: block;
  padding-top: 4px;
  font-size: 1.8rem;
}

.event_list li a .date_time_txt {
  padding-bottom: 10px;
  font-size: 1.6rem;
}

.event_list li a .date_time_txt span {
  display: block;
  position: relative;
  font-size: 1.3rem;
  font-weight: bold;
}

.event_list li a .date_time_txt span::before {
  position: absolute;
  content: '';
  left: 0;
  top: 50%;
  width: 100%;
  height: 1px;
  background-color: #262626;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
}

.event_list li a .date_time_txt span em {
  display: inline-block;
  position: relative;
  padding-right: 10px;
  background-color: #FFF;
  font-style: normal;
  z-index: 2;
}

.event_list li a .webinar_txt {
  margin-bottom: -5px;
}

.event_list li a .webinar_txt span {
  display: inline-block;
  min-width: 105px;
  margin-bottom: 5px;
  padding: 4px 10px;
  background-color: #262626;
  color: #FFF;
  font-size: 1.2rem;
  font-weight: bold;
}

.event_list li a .webinar_txt span.mr5 {
  margin-right: 5px;
}

@media only screen and (min-width: 799.1px) {
  .event_list li a:hover {
    border: 2px solid #219DF5;
    text-decoration: none;
  }
  .event_list li a:hover .event_txt span {
    color: #219DF5;
  }
}

@media only screen and (max-width: 992px) {
  .event_list::after {
    width: calc((100% - 60px) / 3);
  }
  .event_list li {
    width: calc((100% - 60px) / 3);
  }
  .event_list li a {
    padding: 30px;
  }
}

@media only screen and (max-width: 799px) {
  .event_list {
    margin-bottom: 50px;
  }
  .event_list::after {
    width: 100%;
  }
  .event_list li {
    width: 100%;
    margin-bottom: 20px;
  }
  .event_list li:last-child {
    margin-bottom: 0;
  }
  .event_list li a {
    padding: 32px;
  }
  .event_list li a .event_txt {
    min-height: auto;
    margin-bottom: 0;
    padding-bottom: 30px;
  }
  .event_list li a .event_txt span {
    font-size: 1.6rem;
  }
  .event_list li a .date_time_txt {
    padding-bottom: 5px;
    font-size: 1.6rem;
  }
  .event_list li a .date_time_txt span {
    font-size: 1.4rem;
  }
  .event_list li a .webinar_txt span {
    min-width: 85px;
  }
}

.company_data_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  max-width: 920px;
  margin: 50px auto 40px;
  list-style: none;
}

.company_data_list::after {
  content: "";
  width: calc((100% - 20px) / 3);
}

.company_data_list li {
  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;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  width: calc((100% - 20px) / 3);
  height: 250px;
  margin-bottom: 10px;
  padding: 27px 20px;
  border-radius: 4px;
  color: #FFF;
  font-size: 1.3rem;
  font-weight: bold;
}

.company_data_list li .company_data_txt01 {
  width: 100%;
  display: block;
  font-size: 1.8rem;
  text-align: center;
}

.company_data_list li .company_data_txt01 span {
  display: block;
  padding-top: 5px;
  font-size: 1.3rem;
}

.company_data_list li .company_data_txt01 em {
  display: block;
  font-style: normal;
  font-size: 1.6rem;
}

.company_data_list li .company_data_txt02 {
  width: 100%;
  display: block;
  font-size: 1.8rem;
  text-align: center;
}

.company_data_list li .company_data_txt02 span {
  display: block;
  padding-bottom: 15px;
  font-family: "Oswald", sans-serif !important;
  font-size: 5.6rem;
  line-height: 1;
}

.company_data_list li.bg_blue01 {
  background-color: #178ce0;
}

.company_data_list li.bg_blue02 {
  background-color: #0F84D8;
}

.company_data_list li.bg_blue03 {
  background-color: #097BCC;
}

.company_data_list li.bg_blue04 {
  background-color: #0070C0;
}

.company_data_list li.bg_blue05 {
  background-color: #0268B2;
}

.company_data_list li.bg_blue06 {
  background-color: #0262A7;
}

@media only screen and (max-width: 799px) {
  .company_data_list {
    max-width: 100%;
    margin: 40px auto 25px;
  }
  .company_data_list::after {
    width: calc((100% - 10px) / 2);
  }
  .company_data_list li {
    width: calc((100% - 10px) / 2);
    height: auto;
    padding: 25px 10px;
    font-size: 1rem;
  }
  .company_data_list li .company_data_txt01 {
    font-size: 1.5rem;
  }
  .company_data_list li .company_data_txt01 span {
    font-size: 1rem;
  }
  .company_data_list li .company_data_txt01 em {
    font-size: 1.3rem;
  }
  .company_data_list li .company_data_txt02 {
    font-size: 1.5rem;
  }
  .company_data_list li .company_data_txt02 span {
    padding-bottom: 10px;
    font-size: 4.8rem;
  }
}

@media only screen and (max-width: 375px) {
  .company_data_list li {
    padding: 20px 10px;
  }
  .company_data_list li .company_data_txt01 {
    font-size: 1.4rem;
  }
  .company_data_list li .company_data_txt01 em {
    font-size: 1.2rem;
  }
  .company_data_list li .company_data_txt02 {
    font-size: 1.5rem;
  }
  .company_data_list li .company_data_txt02 span {
    padding-bottom: 10px;
    font-size: 4.6rem;
  }
}

.company_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  max-width: 1100px;
  margin: 0 auto 70px;
  padding-top: 50px;
  border-top: 1px solid #D5D5D5;
  list-style: none;
}

.company_menu_list::after {
  content: "";
  width: calc((100% - 68px) / 3);
}

.company_menu_list li {
  width: calc((100% - 68px) / 3);
  margin-bottom: 34px;
}

.company_menu_list li a {
  border: 2px solid #EEF5FB;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 136px;
  padding: 18px 38px 18px 28px;
  border-radius: 4px;
  background-color: #EEF5FB;
  color: #0070C0;
  font-size: 1.8rem;
  font-weight: bold;
  text-decoration: none;
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s;
}

.company_menu_list li a::after {
  position: absolute;
  content: '';
  right: 30px;
  top: 50%;
  width: 8px;
  height: 13px;
  background: url("/images/svg/icon_arrow_05.svg") no-repeat 0 50%;
  background-size: 8px auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.company_menu_list li a span {
  display: block;
  padding-top: 5px;
  font-family: "Oswald", sans-serif !important;
  font-size: 1.5rem;
  letter-spacing: 1px;
}

.company_menu_list01 {
  margin: 0 auto 46px;
  padding-top: 80px;
  border-top: none;
}

@media only screen and (min-width: 1025px) {
  .company_menu_list li a:hover {
    border-color: #219DF5;
    text-decoration: none;
  }
}

@media only screen and (max-width: 799px) {
  .company_menu_list {
    max-width: 100%;
    margin-bottom: 65px;
    padding-top: 35px;
  }
  .company_menu_list::after {
    width: 100%;
  }
  .company_menu_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  .company_menu_list li:last-child {
    margin-bottom: 0;
  }
  .company_menu_list li a {
    border-width: 0;
    min-height: 95px;
    padding: 20px 30px 20px 20px;
    font-size: 1.6rem;
  }
  .company_menu_list li a::after {
    right: 20px;
  }
  .company_menu_list li a span {
    font-size: 1.2rem;
  }
  .company_menu_list01 {
    margin-bottom: 50px;
    padding-top: 50px;
  }
}

.consult_list {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  max-width: 940px;
  margin: 15px auto 5px;
  padding: 15px 30px 5px;
  border-radius: 4px;
  background-color: #F4F4F4;
}

.consult_list::after {
  content: "";
  width: calc((100% - 40px) / 3);
}

.consult_list li {
  width: calc((100% - 40px) / 3);
  padding-bottom: 12px;
  font-size: 1.6rem;
  font-weight: normal;
}

@media only screen and (max-width: 799px) {
  .consult_list {
    max-width: 100%;
    margin: 25px auto 10px;
    padding: 15px;
  }
  .consult_list::after {
    width: 100%;
  }
  .consult_list li {
    width: 100%;
    padding-bottom: 10px;
    letter-spacing: 0;
  }
  .consult_list li:last-child {
    padding-bottom: 0;
  }
}

.company_navi_list, .ir_navi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.company_navi_list li, .ir_navi li {
  width: calc(100% / 8);
  padding: 0 10px;
  border-left: 1px solid #696969;
  text-align: center;
}

.company_navi_list li:last-child, .ir_navi li:last-child {
  border-right: 1px solid #696969;
}

.company_navi_list li a, .ir_navi li a {
  position: relative;
  display: inline-block;
  color: #262626;
  font-size: 1.5rem;
  font-weight: bold;
  text-decoration: none;
}

.company_navi_list li a::before, .ir_navi li a::before {
  position: absolute;
  content: "";
  background-color: #262626;
  bottom: -5px;
  height: 2px;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  width: 100%;
  z-index: 1000;
}

.company_navi_list li a.active::before, .ir_navi li a.active::before {
  opacity: 1;
}

@media only screen and (min-width: 799.1px) {
  .company_navi_list li:hover a::before, .ir_navi li:hover a::before {
    opacity: 1;
  }
}

@media only screen and (max-width: 1200px) {
  .company_navi_list li, .ir_navi li {
    padding: 0 5px;
  }
  .company_navi_list li a, .ir_navi li a {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 992px) {
  .company_navi_list li, .ir_navi li {
    width: calc(100% / 4);
    margin-bottom: 10px;
  }
  .company_navi_list li:nth-child(4), .ir_navi li:nth-child(4) {
    border-right: 1px solid #696969;
  }
}

@media only screen and (max-width: 799px) {
  .company_navi_list, .ir_navi {
    margin-bottom: -25px;
  }
  .company_navi_list li, .ir_navi li {
    width: calc(100% / 2);
    margin-bottom: 25px;
  }
  .company_navi_list li:nth-child(2n), .ir_navi li:nth-child(2n) {
    border-right: 1px solid #696969;
  }
}

.ir_navi_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
  background-color: #FFF;
  padding: 15px 0;
}

.ir_navi_list li {
  width: calc(100% / 5);
  padding: 0 10px;
  border-right: 1px solid #D5D5D5;
  text-align: center;
}

.ir_navi_list li:last-child {
  border-right: none;
}

.ir_navi_list li a {
  position: relative;
  display: inline-block;
  color: #0070C0;
  font-size: 1.5rem;
  font-weight: bold;
  text-decoration: none;
}

.ir_navi_list li a::before {
  position: absolute;
  content: "";
  background-color: #262626;
  bottom: -5px;
  height: 2px;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  width: 100%;
  z-index: 1000;
}

@media only screen and (min-width: 799.1px) {
  .ir_navi_list li a:hover {
    color: #219DF5;
  }
  .ir_navi_list li a:hover::before {
    opacity: 1;
  }
}

@media only screen and (max-width: 799px) {
  .ir_navi_list {
    padding-bottom: 20px;
    padding-top: 20px;
  }
  .ir_navi_list li {
    width: calc(100% / 2);
    margin-bottom: 25px;
    text-align: center;
  }
  .ir_navi_list li:last-child {
    margin-bottom: 0;
  }
  .ir_navi_list li:nth-child(2n) {
    border-right: none;
  }
  .ir_navi_list li a {
    font-size: 1.4rem;
  }
}

.list_general {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 100px;
  padding-top: 80px;
  border-bottom: 1px solid #D5D5D5;
}

.list_general .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: calc(100% / 3);
  height: 350px;
  overflow: hidden;
  padding-bottom: 27px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  text-decoration: none;
  position: relative;
}

.list_general .item::after {
  background-color: rgba(0, 0, 0, 0.4);
  content: "";
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  width: 100%;
  z-index: 1;
}

.list_general .item::before {
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  width: 100%;
  z-index: 0;
}

.list_general .item01::before {
  background: url("/images/common/bg_highline_01.jpg");
}

.list_general .item02::before {
  background: url("/images/common/bg_highline_02.jpg");
}

.list_general .item03::before {
  background: url("/images/common/bg_highline_03.jpg");
}

.list_general .ttl {
  display: block;
  margin-bottom: 10px;
  color: #FFF;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
  position: relative;
  z-index: 2;
}

.list_general .txt {
  position: relative;
  display: block;
  color: #FFF;
  font-size: 1.4rem;
  font-family: "Oswald", sans-serif !important;
  font-weight: 500;
  letter-spacing: 1px;
  z-index: 2;
}

.list_general .txt::after {
  position: absolute;
  content: '';
  height: 30px;
  width: 1px;
  left: 50%;
  bottom: -45px;
  background-color: #FFF;
}

@media only screen and (min-width: 1025px) {
  .list_general .item:hover::after {
    opacity: 1;
  }
  .list_general .item:hover::before {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
}

@media only screen and (max-width: 799px) {
  .list_general {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 0;
    padding-top: 0;
    border-bottom: 0;
  }
  .list_general .item {
    width: 100%;
    height: 190px;
  }
  .list_general .ttl {
    font-size: 1.8rem;
  }
  .list_general .txt {
    font-size: 1.2rem;
  }
}

.list_general01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  margin: 0 -15px 80px;
}

.list_general01 a {
  border: 2px solid #EEF5FB;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: calc((100% / 3) - 30px);
  margin: 0 15px 35px 15px;
  padding: 6px 30px;
  text-decoration: none;
  background-color: #EEF5FB;
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s;
}

.list_general01 .ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 115px;
  padding: 20px 20px 20px 0;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  color: #0070C0;
  background: url("/images/svg/icon_arrow_05.svg") no-repeat 100% 50%;
  background-size: 7px auto;
}

.list_general01 .txt {
  padding-bottom: 40px;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #262626;
}

@media only screen and (min-width: 1025px) {
  .list_general01 a:hover {
    border-color: #219DF5;
  }
}

@media only screen and (max-width: 799px) {
  .list_general01 {
    margin: 0 0 70px 0;
  }
  .list_general01 a {
    width: 100%;
    margin: 0 0 20px 0;
    padding: 26px 20px;
  }
  .list_general01 a:last-child {
    margin-bottom: 0;
  }
  .list_general01 .ttl {
    min-height: auto;
    margin-bottom: 20px;
    padding: 0 20px 0 0;
    font-size: 1.6rem;
  }
  .list_general01 .txt {
    padding-bottom: 0;
    font-size: 1.4rem;
  }
}

.list_general02 li {
  position: relative;
  padding: 12px 55px 15px 20px;
  border-bottom: 1px solid #D5D5D5;
  list-style-type: none;
}

.list_general02 li::after {
  position: absolute;
  content: '';
  right: 25px;
  top: 50%;
  width: 8px;
  height: 17px;
  background: url("/images/svg/icon_arrow_09.svg") no-repeat 50% 50%;
  background-size: 8px auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.list_general02 li:last-child {
  border-bottom: 0;
}

.list_general02 .top {
  display: block;
  margin-bottom: 3px;
}

.list_general02 .text_date {
  font-size: 1.4rem;
  font-family: "Oswald", sans-serif !important;
  font-weight: 500;
}

.list_general02 .text_sub {
  margin-left: 30px;
  font-size: 1.3rem;
  font-weight: 700;
}

.list_general02 .ttl {
  display: inline-block;
  font-weight: 700;
  font-size: 1.6rem;
  color: #0070C0;
  text-decoration: none;
  line-height: 1.5;
}

.list_general02 .ttl a {
  display: inline;
  color: #0070C0;
  text-decoration: none;
}

.list_general02 span.ttl,
.list_general02 p.ttl {
  text-decoration: none !important;
}

.list_general02 .pdf::after {
  display: inline-block;
  position: relative;
  top: 3px;
  width: 40px;
  height: 20px;
  margin-left: 10px;
  background: url("/images/svg/icon_pdf.svg") no-repeat 50% 50%;
  background-size: 40px auto;
  content: '';
}

.list_general02 .note {
  display: block;
  margin-top: 5px;
  font-size: 1.4rem;
}

.list_general02 sup {
  font-family: initial;
}

@media only screen and (min-width: 1025px) {
  .list_general02 .ttl:hover {
    text-decoration: underline;
  }
  .list_general02 .ttl a:hover {
    text-decoration: underline;
  }
}

@media only screen and (max-width: 799px) {
  .list_general02 li {
    padding: 15px 30px 13px 0;
  }
  .list_general02 li::after {
    right: 10px;
    background-size: 7px auto;
  }
  .list_general02 .top {
    margin-bottom: 6px;
  }
  .list_general02 .text_date {
    font-size: 1.4rem;
  }
  .list_general02 .text_sub {
    margin-left: 5px;
    font-size: 1.4rem;
  }
  .list_general02 .ttl {
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .list_general02 .pdf::after {
    width: 36px;
    height: 17px;
    background-size: 36px auto;
  }
}

.faq_item {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #D5D5D5;
}

.faq_ques, .faq_ans {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  font-weight: bold;
  color: #262626;
  margin-bottom: 20px;
}

.faq_ques > span, .faq_ans > span {
  font-family: "Oswald", sans-serif !important;
  width: 40px;
  min-width: 40px;
  margin-right: 20px;
  height: 40px;
  background-color: #262626;
  border-radius: 50%;
  font-size: 1.8rem;
  color: #FFF;
  font-weight: 500;
  text-align: center;
  padding-top: 6px;
}

.faq_ques .txt a, .faq_ans .txt a {
  color: #0070C0;
  display: inline-block;
  text-decoration: none;
}

@media only screen and (min-width: 799.1px) {
  .faq_ques .txt a:hover, .faq_ans .txt a:hover {
    text-decoration: underline;
  }
}

.faq_ans {
  font-weight: normal;
  margin-bottom: 0;
}

.faq_ans > span {
  background-color: #0070C0;
}

@media only screen and (max-width: 799px) {
  .faq_ques, .faq_ans {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
  .faq_ques > span, .faq_ans > span {
    width: 24px;
    min-width: 24px;
    margin-right: 10px;
    height: 24px;
    font-size: 1rem;
    padding-top: 3px;
  }
  .faq_ques .txt a, .faq_ans .txt a {
    text-decoration: underline;
  }
  .faq_ans {
    font-size: 1.3rem;
    margin-bottom: 0;
  }
}

.ir_navi {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

@media only screen and (min-width: 799.1px) {
  .ir_navi li {
    padding: 0 48px;
    margin-bottom: 30px;
    width: auto;
  }
}

.ir_navi .has_sub {
  position: relative;
  color: #262626;
  font-size: 1.5rem;
  font-weight: bold;
}

.ir_navi .has_sub:hover p {
  color: #219DF5;
  cursor: pointer;
}

.ir_navi .has_sub:hover .nav_sub {
  opacity: 1;
  visibility: visible;
}

.ir_navi .nav_sub {
  padding: 10px 20px;
  background-color: #FFF;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  left: 10px;
  top: 110%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  min-width: 240px;
  z-index: 1001;
  -webkit-box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.06);
          box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.06);
}

.ir_navi .nav_sub a {
  color: #0070C0;
  font-weight: normal;
  text-align: left;
}

.ir_navi .nav_sub a::before {
  content: none;
}

@media only screen and (max-width: 799px) {
  .ir_navi .has_sub {
    font-size: 1.35rem !important;
  }
  .ir_navi .has_sub p {
    padding-top: 5px;
  }
  .ir_navi .nav_sub {
    padding: 0;
  }
  .ir_navi .nav_sub a {
    padding: 10px;
  }
  .ir_navi .nav_sub a:not(:last-child) {
    border-bottom: 1px solid #D5D5D5;
  }
}

.section_recruit_info {
  margin: 50px 0px 80px;
  text-align: center;
}

.section_recruit_info .btn_common_list {
  min-width: 250px;
  margin-bottom: 15px;
}

.section_recruit_info .txt {
  font-size: 1.4rem;
}

.section_media {
  padding-top: 70px;
}

.section_media .btn_common02 {
  margin: 0 auto;
}

.media_lst {
  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;
  list-style-type: none;
  margin: 0 -15px;
}

.media_lst > * {
  width: calc(100% / 3);
  padding: 0px 15px;
}

.media_box {
  margin: 0 auto 60px;
}

.media_box .img {
  line-height: 0;
  margin-bottom: 15px;
}

.media_box .img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.media_box .ttl {
  display: inline-block;
  font-size: 1.8rem;
  color: #0070C0;
  line-height: 1.5;
  margin-bottom: 10px;
  font-weight: bold;
  text-decoration: none;
}

@media only screen and (min-width: 799.1px) {
  .media_box .ttl:hover {
    text-decoration: underline;
  }
}

.media_box .txt01 {
  font-size: 1.4rem;
  color: #0070C0;
  line-height: 1.5;
  margin-bottom: 10px;
  font-weight: bold;
}

.media_box .txt02 {
  font-size: 1.4rem;
  line-height: 1.5;
}

.list_event.event_end li::after {
  content: none;
}

.list_event li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.list_event .time {
  font-size: 1.5rem;
  font-weight: bold;
  color: #000;
  margin-right: 30px;
  min-width: 230px;
}

.list_event .tag {
  font-size: 1.2rem;
  font-weight: bold;
  color: #FFF;
  background-color: #262626;
  padding: 4px 5px;
  text-align: center;
  margin-right: 30px;
  min-width: 105px;
}

.list_event .detail {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.list_event .link_red {
  font-size: 1.2rem;
  color: #C83051;
}

.list_event .link_blue {
  color: #0070C0;
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
  margin-bottom: 5px;
}

.list_event a {
  text-decoration: none;
}

@media only screen and (min-width: 799.1px) {
  .list_event a:hover {
    text-decoration: underline;
  }
  .list_event a.link_blue:hover {
    color: #219DF5;
  }
}

.list_event .note {
  font-size: 1.2rem;
  font-weight: normal;
}

@media only screen and (max-width: 992px) {
  .list_event li {
    padding-left: 0;
    padding-right: 40px;
  }
  .list_event .time {
    font-size: 1.4rem;
    min-width: 210px;
    margin-right: 15px;
  }
  .list_event .tag {
    margin-right: 15px;
  }
  .list_event .detail {
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 799px) {
  .section_recruit_info {
    margin: 30px 0px 65px;
  }
  .section_media {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .media_lst {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0;
  }
  .media_lst > * {
    width: 100%;
  }
  .media_box {
    margin-bottom: 50px;
  }
  .media_box .ttl {
    font-size: 1.4rem;
  }
  .media_box .txt01 {
    font-size: 1.1rem;
  }
  .media_box .txt02 {
    font-size: 1.2rem;
  }
  .list_event.event_end li {
    padding-right: 0;
  }
  .list_event li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 10px 30px 10px 0px;
  }
  .list_event .time,
  .list_event .link_red {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
  .list_event .tag {
    margin-bottom: 10px;
  }
  .list_event .detail {
    font-size: 1.6rem;
  }
}

.list_banner li {
  display: block;
  margin-bottom: 10px;
  list-style-type: none;
}

.list_banner li:last-child {
  margin-bottom: 0;
}

.section_gray {
  padding: 40px 15px 80px;
  background-color: #F4F4F4;
}

.section_gray01 {
  padding: 40px 15px 60px;
}

.video_block {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  height: 0;
  padding-bottom: 42%;
}

.video_block iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.organize_block {
  margin-bottom: 15px;
  border: 1px solid #D5D5D5;
}

.organize_block .box_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 20px 30px 30px;
  border-bottom: 1px solid #D5D5D5;
}

.organize_block .box_item:last-child {
  border-bottom: none;
}

.organize_block .box_item_inner {
  width: calc(100% - 170px);
}

.organize_block .box_item_fullwidth {
  width: 100%;
}

.organize_block .box_item_txt01 {
  padding-bottom: 17px;
  font-size: 1.6rem;
  color: #C83051;
}

.organize_block .box_item_txt02 {
  padding-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.6;
}

.organize_block .box_item .box_image {
  width: 170px;
  text-align: center;
}

.consult_block {
  margin-bottom: 40px;
}

@media only screen and (max-width: 799px) {
  .section_gray {
    padding: 45px 15px 80px;
  }
  .section_gray01 {
    padding: 0 0 60px;
  }
  .video_block {
    padding-bottom: 56%;
  }
  .organize_block {
    margin-bottom: 15px;
    border: 1px solid #D5D5D5;
  }
  .organize_block .box_item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: 20px 15px 30px;
  }
  .organize_block .box_item_inner {
    width: 100%;
  }
  .organize_block .box_item_txt01 {
    padding-bottom: 15px;
    font-size: 1.3rem;
  }
  .organize_block .box_item_txt02 {
    padding-bottom: 20px;
  }
  .organize_block .box_item .box_image {
    width: auto;
    margin-bottom: 30px;
    text-align: center;
  }
  .organize_block .box_item .box_image img {
    width: auto;
    height: 55px;
  }
}

@-webkit-keyframes animations_scroll_move {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  35% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  35.1% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  70%,
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

@keyframes animations_scroll_move {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  35% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  35.1% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  70%,
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

#keyv {
  position: relative;
  padding: 120px 0 160px;
  background: url("/images/home/img_keyv.jpg") no-repeat 50% 50%;
  background-size: cover;
}

#keyv::after {
  position: absolute;
  content: '';
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 60px;
  background: url("/images/common/bg_gradient.png") repeat-x 50% 100%;
}

#keyv .innerKeyv {
  max-width: 1370px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 25px;
  padding-right: 25px;
}

#keyv .ttl {
  display: block;
  overflow: hidden;
  margin-bottom: 15px;
  font-size: 6rem;
  font-weight: 900;
  line-height: 1.2;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
}

#keyv .ttl:first-child {
  margin-bottom: 0;
}

#keyv .ttl span {
  display: block;
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
}

#keyv .ttl.show,
#keyv .ttl.show span {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media only screen and (max-width: 850px) {
  #keyv .ttl {
    font-size: 5.5rem;
  }
}

#keyv .txt_keyv {
  margin-bottom: 16px;
}

#keyv .txt_keyv .pc_block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

#keyv .txt_keyv .sp_block {
  display: none;
}

#keyv .txt_keyv .item {
  display: inline-block;
  overflow: hidden;
  position: relative;
  padding: 1px 0 3px 5px;
  margin-bottom: 5px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.2;
  color: #FFF;
}

#keyv .txt_keyv .item:last-child {
  margin-bottom: 0;
}

#keyv .txt_keyv .item::after {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  background-color: #262626;
  -webkit-transform: translate(-101%, 0);
          transform: translate(-101%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  content: '';
}

#keyv .txt_keyv .item .item_01 {
  position: relative;
  z-index: 2;
  display: block;
  overflow: hidden;
  -webkit-transform: translate(-101%, 0);
          transform: translate(-101%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
}

#keyv .txt_keyv .item .item_01 span {
  display: block;
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.25s;
}

#keyv .txt_keyv .item .item_02 {
  position: relative;
  z-index: 2;
}

#keyv .txt_keyv .item.show::after {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

#keyv .txt_keyv .item.show .item_01 {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

#keyv .txt_keyv .item.show .item_01 .item_02 {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media only screen and (max-width: 1024px) {
  #keyv .ttl {
    font-size: 6.6vw;
  }
}

@media only screen and (max-width: 799px) {
  #keyv {
    padding: 50px 0 60px;
    background-image: url("/images/home/img_keyv_sp.jpg");
    background-size: contain;
    background-position: 100% 0;
  }
  #keyv::after {
    display: none;
  }
  #keyv .ttl {
    margin-bottom: 13px;
    line-height: 1.3;
  }
  #keyv .txt_keyv {
    margin-bottom: 50px;
  }
  #keyv .txt_keyv .pc_block {
    display: none;
  }
  #keyv .txt_keyv .sp_block {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
  #keyv .txt_keyv .item {
    margin-bottom: 2px;
    padding: 1px 5px 2px 3px;
    font-size: 4.8vw;
    font-weight: 700;
    line-height: 1.3;
  }
}

/* BBSec test */
.banner_keyv0 {
  display: inline-block;
  max-width: 290px;
  width: auto;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  cursor: pointer;
}

.banner_keyv0 img {
  display: block;
  width: 100%;
}

@media only screen and (min-width: 1025px) {
  .banner_keyv0:hover {
    opacity: 0.8;
  }
}

@media only screen and (max-width: 799px) {
  .banner_keyv0 {
    max-width: 100%;
    width: 100%;
  }
}

@media only screen and (max-width: 375px) {
  .banner_keyv0 {
    max-width: 340px;
    width: calc(100% + 16px);
    margin-left: -8px;
    margin-right: -8px;
  }
}

/* End BBSec test */


.banner_keyv {
  display: inline-block;
  max-width: 500px;
  width: 100%;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  cursor: pointer;
}

.banner_keyv img {
  aspect-ratio: 452/98;
  display: block;
  width: 100%;
}

@media only screen and (min-width: 1025px) {
  .banner_keyv:hover {
    opacity: 0.8;
  }
}

@media only screen and (max-width: 799px) {
  .banner_keyv {
    max-width: 100%;
    width: 100%;
  }
}

@media only screen and (max-width: 375px) {
  .banner_keyv {
    max-width: 340px;
    width: calc(100% + 16px);
    margin-left: -8px;
    margin-right: -8px;
  }
}

.keyv02 .img_keyv {
  height: 280px;
  position: relative;
}

.keyv02 .img_keyv::after {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.25)));
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.25) 100%);
  bottom: 0;
  content: "";
  display: inline-block;
  height: 50%;
  left: 0;
  position: absolute;
  width: 100%;
}

.keyv02 .img_keyv img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media only screen and (max-width: 799px) {
  .keyv02 .img_keyv {
    height: 140px;
  }
}

.box_titlekeyv {
  position: relative;
  max-width: 1190px;
  width: 100%;
  margin: -95px auto 25px;
  padding: 0 15px;
}

.box_titlekeyv .box_breadcrumb {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  left: 32px;
  height: 45px;
}

.box_titlekeyv .headline4 {
  margin-top: 45px;
}

@media only screen and (max-width: 799px) {
  .box_titlekeyv {
    margin: -70px auto 20px;
  }
  .box_titlekeyv .box_breadcrumb {
    display: none;
  }
}

.keyv03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: inherit;
  -webkit-box-direction: inherit;
      -ms-flex-direction: inherit;
          flex-direction: inherit;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #FFF;
  padding-top: 50px;
  padding-bottom: 40px;
}

.keyv03 .box_titlekeyv {
  max-width: 1130px;
  margin: 0 auto;
}

.keyv03 .box_titlekeyv .box_breadcrumb {
  left: 15px;
}

.keyv03 .box_titlekeyv .box_breadcrumb .breadcrumb span,
.keyv03 .box_titlekeyv .box_breadcrumb .breadcrumb a {
  color: #262626;
}

.keyv03 .box_titlekeyv .box_breadcrumb .breadcrumb a {
  color: #0070C0;
}

.keyv03 .box_titlekeyv .box_breadcrumb .breadcrumb a:hover {
  color: #219DF5;
  text-decoration: underline;
}

.keyv03 .box_titlekeyv .box_breadcrumb .breadcrumb a::after {
  background: url("/images/svg/icon_arrow_05.svg") no-repeat right 0 top 50%;
  background-size: 4px auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.keyv03 .box_titlekeyv .headline4 {
  padding: 18px 0;
}

@media only screen and (max-width: 799px) {
  .keyv03 {
    height: auto;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #D3D3D3;
    border-bottom: 1px solid #D3D3D3;
  }
  .keyv03 .box_titlekeyv .headline4 {
    margin-top: 0;
    padding: 10px 0;
  }
}

.block {
  display: block !important;
}

.inline_block {
  display: inline-block !important;
}

.flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.inline_flex {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

.right {
  text-align: right !important;
}

.left {
  text-align: left !important;
}

.center {
  text-align: center !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mb40sp0 {
    margin-bottom: 40px !important;
  }
  
.mb45sp0 {
    margin-bottom: 45px !important;
  }
 
.mb40sp25 {
  margin-bottom: 40px !important;
}

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

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

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

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

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

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

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

.mb80sp60 {
  margin-bottom: 80px !important;
}
.mb85sp0 {
  margin-bottom: 85px !important;
  }
  
.mb90sp0 {
  margin-bottom: 90px !important;
}

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

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

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

.mb120sp45 {
  margin-bottom: 120px !important;
}

.mb130sp30 {
  margin-bottom: 130px !important;
}

.mb140sp30 {
  margin-bottom: 140px !important;
}

.mb150sp30 {
  margin-bottom: 150px !important;
}

.mb150sp100 {
  margin-bottom: 150px !important;
}

.mb220sp10 {
  margin-bottom: 220px !important;
}

.mb206sp10 {
  margin-bottom: 206px !important;
}
.mb260sp0 {
  margin-bottom: 260px !important;
}


.pt0 {
  padding-top: 0 !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}
.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt60sp50 {
  padding-top: 60px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

@media only screen and (max-width: 799px) {
  .sp0 {
    margin-bottom: 0 !important;
  }
  .mb15sp0 {
    margin-bottom: 0 !important;
  }
  .mb15sp10 {
    margin-bottom: 10px !important;
  }
  .mb15sp20 {
    margin-bottom: 20px !important;
  }
  .mb20sp35 {
    margin-bottom: 35px !important;
  }
  .mb25sp0 {
  margin-bottom: 25px !important;
  }
  .mb30sp0 {
  margin-bottom: 0px !important;
  }
  .mb30sp20 {
    margin-bottom: 20px !important;
  }
  .mb30sp25 {
    margin-bottom: 25px !important;
  }
  .mb35sp30 {
    margin-bottom: 30px !important;
  }
  .mb30sp50 {
    margin-bottom: 50px !important;
  }
  .mb40sp0 {
    margin-bottom: 0px !important;
  }
  .mb40sp25 {
    margin-bottom: 25px !important;
  }
  .mb50sp0 {
  margin-bottom: 0px !important;
  }
  .mb50sp40 {
    margin-bottom: 40px !important;
  }
  .mb55sp0 {
  margin-bottom: 0px !important;
  }
  .mb60sp0 {
    margin-bottom: 0px !important;
  }
  .mb65sp50 {
    margin-bottom: 50px !important;
  }
  .mb70sp50 {
    margin-bottom: 50px !important;
  }
  .mb75sp50 {
    margin-bottom: 50px !important;
  }
  .mb80sp60 {
    margin-bottom: 60px !important;
  }
  .mb80sp40 {
    margin-bottom: 40px !important;
  }
  .mb85sp0 {
  margin-bottom: 0px !important;
  }
  .mb86sp0 {
  margin-bottom: 0px !important;
  }
  .mb90sp0 {
  margin-bottom: 0px !important;
  }
  .mb95sp50 {
    margin-bottom: 50px !important;
  }
  .mb100sp30 {
  margin-bottom: 30px !important;
  }
  .mb100sp0 {
    margin-bottom: 0 !important;
  }
  .mb120sp45 {
    margin-bottom: 45px !important;
  }
  .mb130sp30 {
  margin-bottom: 30px !important;
  }
  .mb140sp30 {
  margin-bottom: 30px !important;
  }
  .mb150sp30 {
  margin-bottom: 30px !important;
  }
  .mb150sp100 {
  margin-bottom: 100px !important;
  }
  .mb206sp10 {
  margin-bottom: 10px !important;
  }
  .mb220sp10 {
  margin-bottom: 10px !important;
  }
  .sp_mb60 {
    margin-bottom: 60px !important;
  }
  .sp_p0 {
    padding: 0 !important;
  }
  .sp_pb55 {
    padding-bottom: 55px !important;
  }
  .pt60sp50 {
    padding-top: 50px !important;
  }
}

.emailbox {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #0070C0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 83px;
  padding: 49px 30px 90px;
  position: relative;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  text-decoration: none;
  text-align: center;
}

.emailbox::after {
  background-color: #fff;
  bottom: 48px;
  content: "";
  display: inline-block;
  height: 30px;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  right: 0;
  width: 1px;
}

.emailbox_icon {
  margin-bottom: 26px;
  width: 35px;
}

.emailbox_txt {
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.2;
  letter-spacing: 0.08rem;
}

.emailbox_txt em {
  display: block;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 700;
  margin-top: 7px;
}

@media only screen and (min-width: 1025px) {
  .emailbox:hover {
    background-color: #219DF5;
    text-decoration: none;
  }
}

@media only screen and (max-width: 799px) {
  .emailbox {
    margin-top: 50px;
    padding: 23px 30px 54px;
  }
  .emailbox::after {
    bottom: 20px;
    height: 23px;
  }
  .emailbox_icon {
    margin-bottom: 19px;
    width: 25px;
  }
  .emailbox_txt {
    font-size: 1.7rem;
  }
  .emailbox_txt em {
    font-size: 1.1rem;
    margin-top: 9px;
  }
}

.flow {
  border: 1px solid #d5d5d5;
}

.flow_item {
  border-bottom: 1px solid #d5d5d5;
}

.flow_item:last-child {
  border-bottom-width: 0;
}

.flow_item.expand .flow_ttl {
  background-color: #EEF5FB;
  color: #204068;
  padding-bottom: 11px;
}

.flow_content {
  background-color: #EEF5FB;
  padding-bottom: 16px;
  padding-left: 87px;
}

.flow_ttl {
  color: #262626;
  display: block;
  font-size: 1.6rem;
  padding: 12px 15px 17px 87px;
  position: relative;
  -webkit-transition: background-color 0.3s, color 0.3s, padding-bottom 0.15s;
  transition: background-color 0.3s, color 0.3s, padding-bottom 0.15s;
}

.flow_ttl span {
  color: currentColor;
  left: 31px;
  position: absolute;
  font-size: 1.6rem;
  font-family: "Oswald", sans-serif !important;
  top: 13px;
}

.flow_list {
  list-style: none;
}

.flow_list li {
  color: #262626;
  font-size: 1.5rem;
  line-height: 1.4;
  position: relative;
}

.flow_bottom {
  color: #FF9900;
  font-size: 2.4rem;
  line-height: 1.583;
  padding-top: 34px;
  position: relative;
  text-align: center;
}

.flow_bottom::before {
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 20px solid #FF9900;
  content: "";
  display: inline-block;
  height: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: 0;
  width: 0;
}

@media only screen and (max-width: 799px) {
  .flow.expand .flow_ttl {
    padding-bottom: 13px;
  }
  .flow.expand .flow_content {
    padding-bottom: 21px;
  }
  .flow_content {
    padding-left: 53px;
  }
  .flow_ttl {
    font-size: 1.3rem;
    padding: 15px 10px 14px 53px;
  }
  .flow_ttl span {
    left: 23px;
    font-size: 1.3rem;
    top: 16px;
  }
  .flow_list li {
    font-size: 1.3rem;
    line-height: 1.55;
  }
  .flow_bottom {
    font-size: 1.7rem;
    padding-top: 37px;
  }
}

.step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 52px;
}

.step::after {
  content: "";
  width: calc((100% - 90px) / 3);
}

.step_item {
  -webkit-box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
          box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
  border-radius: 4px;
  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-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 74px 20px 20px;
  position: relative;
  width: calc((100% - 90px) / 3);
}

.step_item::before {
  border-bottom: 30px solid transparent;
  border-top: 30px solid transparent;
  border-left: 20px solid #FF9900;
  bottom: 50%;
  content: "";
  display: inline-block;
  height: 0;
  right: -20px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0;
}

.step_item:last-child::before {
  display: none;
}

.step_head {
  background-color: #204068;
  border-radius: 100vw;
  color: #fff;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 700;
  left: 50%;
  line-height: 1;
  padding: 5px 19px;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 30px;
}

.step_head2 {
  background-color: #204068;
  border-radius: 100vw;
  color: #fff;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 700;
  left: 50%;
  line-height: 1.5em;
  padding: 5px 30px;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 15px;
  text-align: center;
}

.step_box {
  background-color: #EEF5FB;
  border-radius: 3px;
  padding: 10px;
}

.step_ttl {
  background-color: #D9E9F7;
  border-radius: 3px;
  color: #204068;
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4375;
  margin-top: 5px;
  padding: 8px 10px;
  text-align: center;
}

.step_ttl:first-child {
  margin-top: 0;
}

.step_txt {
  background-color: #D9E9F7;
  border-radius: 3px;
  color: #262626;
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 5px;
  padding: 6px 10px;
  text-align: center;
}

.step_txt:first-child {
  margin-top: 0;
}

.step_list {
  list-style: none;
  margin-bottom: 35px;
  padding-left: 7px;
}

.step_list li {
  color: #262626;
  font-size: 1.4rem;
  line-height: 1.55;
  position: relative;
}

@media only screen and (max-width: 799px) {
  .step {
    display: block;
    margin-bottom: 49px;
    margin-top: 25px;
  }
  .step::after {
    display: none;
  }
  .step_item {
    max-width: 100%;
    margin: 0 auto 35px;
    padding: 74px 20px 20px;
    width: 100%;
  }
  .step_item::before {
    border-bottom-width: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #FF9900;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    right: 0;
    bottom: -20px;
    -webkit-transform: inherit;
            transform: inherit;
  }
  .step_head {
    font-size: 1.6rem;
    padding: 7px 24px;
    top: 27px;
  }
  .step_head2 {
    font-size: 1.6rem;
    padding: 7px 24px;
    top: 27px;
  }
  .step_box {
    border-radius: 3px;
    padding: 10px;
  }
  .step_ttl {
    padding: 8px 10px;
  }
  .step_txt {
    font-size: 1.2rem;
    padding: 10px;
  }
  .step_list {
    margin-bottom: 22px;
    padding-left: 2px;
  }
  .step_list li {
    line-height: 1.571;
  }
  
}

.document, .document-case {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.document_item {
  background-color: #EEF5FB;
  border-radius: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
  padding: 30px;
  width: calc(50% - 20px);
}

.document_item:first-child, .document_item:nth-child(2) {
  margin-top: 0;
}

.document_avatar {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 140px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 30px;
  width: 140px;
}

.document_avatar img {
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 100%;
  max-width: 100%;
  border-radius: 5px;
}

.document_content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.document_ttl {
  display: block;
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 6px;
  text-decoration: none;
}

.document_txt {
  color: #262626;
  display: block;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 12px;
}

.document_btn {
  background: #0070C0 url(/images/svg/icon_arrow_08.svg) no-repeat right 22px center/9px;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 15px 50px 18px 40px;
  text-decoration: none;
}

.document_nav, .document_nav-bottom {
  background-color: #F4F4F4;
  margin-bottom: 60px;
  margin-top: 53px;
  padding: 20px;
}

.document_nav_row {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.document_nav_col {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 16px 40px;
  position: relative;
}

.document_nav_col:not(:first-child)::before {
  background-color: #d5d5d5;
  content: "";
  display: inline-block;
  height: 50px;
  left: -6px;
  position: absolute;
  top: 11px;
  width: 1px;
}

.document_nav_item {
  color: #0070C0;
  display: inline-block;
  font-weight: 700;
  font-size: 1.5rem;
  text-align: center;
  text-decoration: none;
}

.document_nav_item.current {
  color: #262626;
}

.document_nav-bottom {
  background-color: transparent;
  margin-bottom: -8px;
  padding: 0;
}

.document_nav-bottom .document_nav_row {
  background-color: transparent;
}

.document_nav-bottom .document_nav_col {
  padding: 0 50px;
}

.document_nav-bottom .document_nav_col.spDisplay {
  display: none;
}

.document_nav-bottom .document_nav_col:not(:first-child)::before {
  background-color: #696969;
  height: 45px;
  left: inherit;
  right: 0;
  top: 14px;
}

.document_nav-bottom .document_nav_col:first-child::before {
  background-color: #696969;
  content: "";
  display: inline-block;
  height: 45px;
  right: 0;
  position: absolute;
  top: 14px;
  width: 1px;
}

.document_nav-bottom .document_nav_col:first-child::after {
  background-color: #696969;
  content: "";
  display: inline-block;
  height: 45px;
  left: 0;
  position: absolute;
  top: 14px;
  width: 1px;
}

.document_nav-bottom .document_nav_item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #262626;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 77px;
  position: relative;
}

.document_nav-bottom .document_nav_item::before {
  background-color: #262626;
  content: "";
  bottom: 0;
  left: 0;
  height: 2px;
  opacity: 0;
  position: absolute;
  width: 100%;
}

.document_nav-bottom .document_nav_item.current::before {
  opacity: 1;
}

.document_note {
  color: #262626;
  font-size: 1.4rem;
  line-height: 1.4;
  margin-bottom: 24px;
  padding-right: 30px;
}

.document_note strong {
  font-size: 1.6rem;
  line-height: 1.6;
}

.document_note:last-child {
  margin-bottom: 0;
}

.document_note_ttl {
  color: #262626;
  font-size: 1.8rem;
  line-height: 1.8;
  margin-bottom: 24px;
  text-align: left;
}

.document-case .document_item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 38px;
  margin-top: 4px;
  padding: 21px 26px 20px 23px;
  width: 100%;
}

.document-case .document_item:last-child {
  margin-bottom: 0;
}

.document-case .document_avatar {
  height: 200px;
  margin-right: 37px;
  width: 300px;
}

.document-case .document_btn {
  padding-left: 36px;
  padding-right: 56px;
}

@media only screen and (min-width: 1025px) {
  .document_btn {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .document_btn:hover {
    opacity: .7;
    text-decoration: none;
  }
  .document_ttl {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .document_ttl:hover {
    color: #219DF5;
    text-decoration: none;
  }
  .document_nav_item {
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .document_nav_item:hover {
    color: #000;
    text-decoration: none;
  }
  .document_nav-bottom .document_nav_item::before {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .document_nav-bottom .document_nav_item:hover::before {
    opacity: 1;
  }
  .document-case .document_avatar {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .document-case .document_avatar:hover {
    opacity: .7;
    text-decoration: none;
  }
}

@media only screen and (max-width: 1200px) {
  .document_item {
    margin-top: 20px;
    padding: 15px;
    width: calc(50% - 10px);
  }
  .document_avatar {
    margin-right: 15px;
  }
  .document_nav_col {
    padding-left: 30px;
    padding-right: 30px;
  }
  .document_nav-bottom .document_nav_col {
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media only screen and (max-width: 1100px) {
  .document_nav-bottom .document_nav_col {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media only screen and (max-width: 992px) {
  .document_nav, .document_nav-bottom {
    padding: 10px;
  }
  .document_nav_col {
    padding-left: 19px;
    padding-right: 19px;
  }
  .document_nav_col:not(:first-child)::before {
    height: 40px;
    top: 18px;
  }
  .document_nav_item {
    font-size: 1.4rem;
  }
  .document_nav-bottom .document_nav_col {
    padding-left: 18px;
    padding-right: 18px;
  }
  .document_nav-bottom .document_nav_col:not(:first-child)::before {
    height: 40px;
    top: 18px;
  }
  .document_note {
    padding-right: 15px;
  }
  .document-case .document_item {
    padding: 15px;
  }
  .document-case .document_avatar {
    height: 150px;
    margin-right: 15px;
    width: 230px;
  }
}

@media only screen and (max-width: 799px) {
  .document_item {
    margin-top: 13px;
    padding: 23px 20px;
    width: 100%;
  }
  .document_item:nth-child(2) {
    margin-top: 13px;
  }
  .document_avatar {
    height: 105px;
    margin-right: 20px;
    width: 105px;
  }
  .document_ttl {
    line-height: 1.5;
    margin-bottom: 4px;
    margin-top: -5px;
  }
  .document_txt {
    margin-bottom: 12px;
  }
  .document_btn {
    background-position: right 22px center;
    padding: 13px 65px 15px 45px;
  }
  .document_nav, .document_nav-bottom {
    margin-bottom: 52px;
    padding: 15px;
  }
  .document_nav_row {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 20px;
    padding-top: 20px;
  }
  .document_nav_row::after {
    content: "";
    width: 50%;
  }
  .document_nav_col {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 5px;
    width: 50%;
  }
  .document_nav_col:not(:first-child)::before {
    display: none;
  }
  .document_nav_col:nth-child(2n)::after {
    background-color: #d5d5d5;
    content: "";
    display: inline-block;
    height: 20px;
    left: -6px;
    position: absolute;
    top: 15px;
    width: 1px;
  }
  .document_nav-bottom {
    background-color: #fff;
    margin-top: 23px;
  }
  .document_nav-bottom .document_nav_col {
    padding: 0 8px;
  }
  .document_nav-bottom .document_nav_col.spDisplay {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .document_nav-bottom .document_nav_col:not(:first-child)::before {
    background-color: #d5d5d5;
    height: 20px;
    top: 30px;
  }
  .document_nav-bottom .document_nav_col:first-child::before, .document_nav-bottom .document_nav_col:first-child::after {
    background-color: #d5d5d5;
    height: 20px;
    top: 30px;
  }
  .document_nav-bottom .document_nav_col:nth-child(2n)::after {
    display: none;
  }
  .document_nav-bottom .document_nav_col::before, .document_nav-bottom .document_nav_col::after {
    background-color: #d5d5d5;
    content: "";
    display: inline-block;
    height: 20px;
    position: absolute;
    top: 30px;
    width: 1px;
  }
  .document_nav-bottom .document_nav_col::after {
    left: 0;
  }
  .document_nav-bottom .document_nav_item {
    padding-bottom: 5px;
    padding-top: 5px;
  }
  .document_note {
    margin-bottom: 15px;
    padding-right: 0;
    text-align: left;
  }
  .document-case {
    padding-top: 64px;
  }
  .document-case .document_item {
    display: block;
    padding: 20px 30px 25px;
    text-align: center;
  }
  .document-case .document_avatar {
    height: 100px;
    margin: 0 auto 15px;
    width: 150px;
  }
  .document-case .document_btn {
    background-position: right 20px center;
    background-size: 7px;
    padding: 13px 50px;
  }
  .document-case .document_content {
    margin-bottom: 20px;
  }
}

.modal_content {
  width: 100vw;
  height: 100vh;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.5)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5));
  position: fixed;
  z-index: 999999;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}

.modal_content.show {
  visibility: visible;
  opacity: 1;
}

.modal_content .wrapper_scroll {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 50px 15px 0;
}

.modal_content .wrapper_scroll::after {
  content: '';
  display: block;
  padding-bottom: 50px;
}

.modal_content .wrapper_scroll .modal_inner {
  position: relative;
  top: 15%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  height: auto;
  margin: 20px auto;
  overflow: hidden;
  max-width: 900px;
  width: auto;
  background-color: #FFF;
  padding: 60px 100px;
}

.modal_content .wrapper_scroll .close {
  position: absolute;
  right: 30px;
  top: 30px;
}

.modal_content .wrapper_scroll .close img {
  height: 18px;
  width: 18px;
  cursor: pointer;
}

.modal_content .wrapper_scroll .modal_image {
  width: 150px;
  margin-right: 40px;
}

.modal_content .wrapper_scroll .modal_block {
  width: calc(100% - 190px);
}

.modal_content .wrapper_scroll .modal_block .modal_title {
  margin-bottom: 15px;
  padding: 0 0 15px 10px;
  border-bottom: 1px solid #D5D5D5;
  font-size: 3.2rem;
  font-weight: bold;
}

.modal_content .wrapper_scroll .modal_block .modal_title span {
  display: block;
  font-size: 1.6rem;
}

.modal_content .wrapper_scroll .modal_block .modal_title em {
  display: block;
  padding-top: 8px;
  font-style: normal;
  font-size: 1.4rem;
  font-weight: normal;
}

@media only screen and (max-width: 992px) {
  .modal_content .wrapper_scroll .modal_inner {
    width: calc(100% - 60px);
    max-width: 100%;
  }
}

@media only screen and (max-width: 799px) {
  .modal_content .wrapper_scroll .modal_inner {
    top: 5%;
    width: 100%;
    padding: 30px 25px;
  }
  .modal_content .wrapper_scroll .modal_image {
    width: 150px;
    margin: 0 auto 35px;
  }
  .modal_content .wrapper_scroll .modal_block {
    width: 100%;
  }
  .modal_content .wrapper_scroll .modal_block .modal_title {
    margin-bottom: 10px;
    padding: 0 0 10px 5px;
    font-size: 2.2rem;
  }
  .modal_content .wrapper_scroll .modal_block .modal_title em {
    padding-top: 5px;
  }
}

.logo {
  border-top: 1px solid #D5D5D5;
  margin-top: 60px;
  padding-top: 60px;
}

.logo_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
}

.logo_col {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
  text-align: center;
  width: 25%;
}

.logo_col:first-child, .logo_col:nth-child(2), .logo_col:nth-child(3), .logo_col:nth-child(4) {
  margin-top: 0;
}

.logo_col img {
  max-width: 160px;
}

@media only screen and (max-width: 799px) {
  .logo {
    margin-top: 49px;
    padding-top: 40px;
  }
  .logo_col {
    margin-top: 20px;
    width: calc(100% / 3);
  }
  .logo_col:nth-child(4) {
    margin-top: 20px;
  }
  .logo_col img {
    max-width: 83px;
  }
}

#sidemenu_news,
#sidemenu_vulnerability-diagnosis,
#sidemenu_evaluation_consulting,
#footer_servicemap,
#sidemenu_mss,
#sidemenu_incident,
#sidemenu_training_information,
#sidemenu_report,
#sidemenu_service,
#sidemenu_inquiry,
#sidemenu_ir,
#sidemenu_recruit,
#sidemenu_english,
#sidemenu_event,
#sidemenu_info-security,
#sidemenu_company {
  top: 100px;
}

#sidemenu_news #leftside,
#sidemenu_vulnerability-diagnosis #leftside,
#sidemenu_evaluation_consulting #leftside,
#footer_servicemap #leftside,
#sidemenu_mss #leftside,
#sidemenu_incident #leftside,
#sidemenu_training_information #leftside,
#sidemenu_report #leftside,
#sidemenu_service #leftside,
#sidemenu_inquiry #leftside,
#sidemenu_ir #leftside,
#sidemenu_recruit #leftside,
#sidemenu_english #leftside,
#sidemenu_event #leftside,
#sidemenu_info-security #leftside,
#sidemenu_company #leftside {
  float: inherit;
}

#main {
  z-index: 1;
  position: relative;
}

#contents .recruit .button_list li {
  width: 162px;
}

@media only screen and (max-width: 799px) {
  #sidemenu_news,
  #sidemenu_vulnerability-diagnosis,
  #sidemenu_evaluation_consulting,
  #footer_servicemap,
  #sidemenu_mss,
  #sidemenu_incident,
  #sidemenu_training_information,
  #sidemenu_report,
  #sidemenu_service,
  #sidemenu_inquiry,
  #sidemenu_ir,
  #sidemenu_recruit,
  #sidemenu_english,
  #sidemenu_event,
  #sidemenu_info-security,
  #sidemenu_company {
    position: relative;
    top: 0;
  }
  #contents .recruit .button_list li {
    width: 100%;
  }
  #contents .recruit .button_list li a {
    background-size: 5px 8px;
  }
}

.governance_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  max-width: 1100px;
  margin: 0 auto 70px;
  padding-top: 50px;
  border-top: 1px solid #D5D5D5;
  list-style: none;
}

.governance_menu_list::after {
  content: "";
  width: calc((100% - 68px) / 3);
}

.governance_menu_list li {
  width: calc((100% - 68px) / 3);
  margin-bottom: 34px;
}

.governance_menu_list li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 80px;
  padding: 18px 38px 18px 25px;
  border-radius: 4px;
  background-color: #F4F4F4;
  color: #0070C0;
  font-size: 1.4rem;
  font-weight: bold;
  text-decoration: none;
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s;
}

.governance_menu_list li a::after {
  position: absolute;
  content: '';
  right: 30px;
  top: 50%;
  width: 8px;
  height: 13px;
  background: url("/images/svg/icon_arrow_04.svg") no-repeat 0 50%;
  background-size: 8px auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.governance_menu_list li a span {
  display: block;
  padding-top: 5px;
  font-family: "Oswald", sans-serif !important;
  font-size: 1.5rem;
  letter-spacing: 1px;
}

.governance_menu_list01 {
  margin: 0 auto 46px;
  padding-top: 80px;
  border-top: none;
}

@media only screen and (min-width: 1025px) {
  .governance_menu_list li a:hover {
    color: #219DF5;
    opacity: .7;
    text-decoration: none;
  }
}

@media only screen and (max-width: 799px) {
  .governance_menu_list {
    max-width: 100%;
    margin-bottom: 65px;
    padding-top: 35px;
  }
  .governance_menu_list::after {
    width: 100%;
  }
  .governance_menu_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  .governance_menu_list li:last-child {
    margin-bottom: 0;
  }
  .governance_menu_list li a {
    border-width: 0;
    min-height: 95px;
    padding: 20px 30px 20px 20px;
    font-size: 1.6rem;
  }
  .governance_menu_list li a::after {
    right: 20px;
  }
  .governance_menu_list li a span {
    font-size: 1.2rem;
  }
  .governance_menu_list01 {
    margin-bottom: 50px;
    padding-top: 50px;
  }
}



/* BBSec */
#page_top{
  width: 60px;
  height: 60px;
  position: fixed;
  right: 23px;
  bottom: 23px;
  z-index:40;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
#page_top:hover {
    opacity: .75;
  }
  


@media screen and (max-width: 767px) {
	#page_top {
		width: 48px;
		height: 48px;
	}
	#page_top img {
		width: 48px;
		height: 48px;
	}
}

.list_item {
  margin-left: 25px;
}

.list_item02 {
  margin-left: 25px;
}
.list_item02 li{
  font-weight: bold;
  font-size: 1.1em;
}


.businessImg {
	margin: 30px auto;
	text-align: center;
}

@media (max-width: 568px) {
	.businessImg img{
		width:100%;
	}
}

.btn_case {
  max-width: 799px;
  margin: 0 auto 40px;
}

@media only screen and (max-width: 799px) {
  .btn_case2 {
    max-width: 260px;
    margin: 0 auto 50px;
  }
}

.btn_case_user {
  background: url(/images/svg/icon_arrow_05.svg) no-repeat right 5px center/8px;
  position: relative;
  display: block;
  max-width: 930px;
  padding: 19px 25px;
  color: #262626;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  -webkit-transition: color .1s;
  transition: color .1s;
}

.btn_case_user::before, .btn_case_user::after {
  background-color: #262626;
  content: '';
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color .1s;
  transition: background-color .1s;
  width: 100%;
}

.btn_case_user::before {
  -webkit-transform-origin: top left;
          transform-origin: top left;
  top: 0;
}

.btn_case_user::after {
  -webkit-transform-origin: top right;
          transform-origin: top right;
  bottom: 0;
}

@media only screen and (min-width: 1025px) {
  .btn_case_user:hover {
    background-image: url(/images/svg/icon_arrow_10.svg);
    text-decoration: none;
    color: #219DF5;
  }
  .btn_case_user:hover::after {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .btn_case_user:hover::before {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common_user {
    background-position: right 15px center;
    max-width: 260px;
    padding: 25px 40px;
    font-size: 1.2rem;
  }
}

.button_map {
	padding-top: 10px;
}
.button_map a {
	background: url(../../img/company/bg_btn.gif) no-repeat left top;
	display: block;
	color: #fff;
	font-size: 11px;
	text-decoration: none;
	padding: 2px 16px 2px;
}
.button_map a:hover {
	font-weight: bold;
}

.image_vision {
	text-align: center;
	margin-bottom: 30px;
	border: solid 3px #0070C0;
	border-radius: 10px;
}

.image_vision img {
	padding: 10px 0 10px;
	text-align: center;
	width: 100%;
}

.image_service01 {
	text-align: center;
	margin-bottom: 30px;
}

.image_service01 img {
	text-align: center;
	width: 100%;
	max-width: 100%;
}

@media only screen and (max-width: 799px) {
  .image_service01 img {
    padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 100%;
	}
}

.image_service02 {
	text-align: center;
	margin-bottom: 30px;
}

.image_service02 img {
	padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 50%;
	background-color: #fff;
}

@media only screen and (max-width: 799px) {
  .image_service02 img {
    padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 100%;
	}
}

.image_service03 {
	text-align: center;
	margin-bottom: 30px;
}

.image_service03 img {
	padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 75%;
}

@media only screen and (max-width: 799px) {
  .image_service03 img {
    padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 100%;
	}
}

.image_service04 {
	text-align: left;
	margin-bottom: 30px;
}

.image_service04 img {
	padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 50%;
	background-color: #fff;
}

@media only screen and (max-width: 799px) {
  .image_service04 img {
    padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 100%;
	}
}

.image_service05 {
	text-align: left;
	margin-bottom: 30px;
}

.image_service05 img {
	padding: 10px 0 10px;
	text-align: left;
	width: 100%;
	max-width: 30%;
	background-color: #fff;
}

@media only screen and (max-width: 799px) {
  .image_service05 img {
    padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 100%;
	}
}

.image_service06 {
	text-align: center;
	margin-bottom: 30px;
}

.image_service06 img {
	padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 30%;
	background-color: #fff;
}

@media only screen and (max-width: 799px) {
  .image_service06 img {
    padding: 10px 0 10px;
	text-align: center;
	width: 100%;
	max-width: 100%;
	}
}

.ir_top li {
  max-width: 930px;
  margin: 0 auto 20px;
  padding: 20px 15px 0 15px;
  list-style: none;
  font-weight: 700;
  font-size: 1.4rem;
}

.ir_top li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 3px;
  color: #262626;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
}

.ir_top li a {
  position: relative;
  display: block;
  padding: 0 50px 0 5px;
  margin-top: -4px;
  color: #0070C0;
  text-decoration: none;
}

@media only screen and (min-width: 799.1px) {
  .ir_top li a:hover {
    color: #219DF5;
    text-decoration: none;
  }
}

.ir_top li a::before {
  position: absolute;
  content: '';
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px;
  height: 13px;
  background-image: url("/images/svg/icon_arrow_05.svg");
  background-size: 8px auto;
}

.ir_news li {
  max-width: 930px;
  margin: 0 auto 20px;
  padding: 20px 0 0 15px;
  list-style: none;
  font-weight: 700;
  font-size: 1.4rem;
}

.ir_news li a {
  position: relative;
  display: block;
  padding: 0 0 0 5px;
  margin-top: -4px;
  color: #0070C0;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 3px;
  font-size: 1.6rem;
  font-weight: 700;
  text-decoration: none;
}

@media only screen and (min-width: 799.1px) {
  .ir_news li a:hover {
    color: #219DF5;
    text-decoration: none;
  }
}

.ir_news a::before {
  position: absolute;
  content: '';
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px;
  height: 13px;
}

.ir_news02 li {
  max-width: 930px;
  margin: 0 auto 20px;
  padding: 20px 15px 0 15px;
  list-style: none;
  font-weight: 700;
  font-size: 1.6rem;
}

.ir_news02 li a{
  padding-left: 20px;
}

@media only screen and (max-width: 799.1px) {
  .ir_news02 li a {
    padding-left: 0;
  }
}

.telework_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  max-width: 1100px;
  margin: 0 auto 70px;
  padding-top: 50px;
  border-top: none;
  list-style: none;
}

.telework_menu_list::after {
  content: "";
  width: calc((100% - 68px) / 4);
}

.telework_menu_list li {
  width: calc((100% - 68px) / 4);
  margin-bottom: 34px;
}

.telework_menu_list li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 80px;
  padding: 18px 38px 18px 25px;
  border-radius: 4px;
  background-color: #ffffff;
  color: #0070C0;
  font-size: 1.4rem;
  font-weight: bold;
  text-decoration: none;
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s;
}

.telework_menu_list li a::after {
  position: absolute;
  content: '';
  right: 30px;
  top: 50%;
  width: 8px;
  height: 13px;
  background: url("/images/svg/icon_arrow_04.svg") no-repeat 0 50%;
  background-size: 8px auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.telework_menu_list li a span {
  display: block;
  padding-top: 5px;
  font-family: "Oswald", sans-serif !important;
  font-size: 1.5rem;
  letter-spacing: 1px;
}

.telework_menu_list01 {
  margin: 0 auto 46px;
  padding-top: 80px;
  border-top: none;
}

@media only screen and (min-width: 1025px) {
  .telework_menu_list li a:hover {
    color: #219DF5;
    opacity: .7;
    text-decoration: none;
  }
}

@media only screen and (max-width: 799px) {
  .telework_menu_list {
    max-width: 100%;
    margin-bottom: 65px;
    padding-top: 35px;
  }
  .telework_menu_list::after {
    width: 100%;
  }
  .telework_menu_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  .telework_menu_list li:last-child {
    margin-bottom: 0;
  }
  .telework_menu_list li a {
    border-width: 0;
    min-height: 95px;
    padding: 20px 30px 20px 20px;
    font-size: 1.6rem;
  }
  .telework_menu_list li a::after {
    right: 20px;
  }
  .telework_menu_list li a span {
    font-size: 1.2rem;
  }
  .telework_menu_list01 {
    margin-bottom: 50px;
    padding-top: 50px;
  }
}

.telework_service_btn {
	text-align: center;
	margin: 30px 0 50px 0;
	}

.box_text2 {
	margin-top: 20px;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom: 0;
	font-size: 14px;
}

.table_style21 {
	border:none;
	width: 100%;
}
.table_style21 th {
	padding:10px;
	background: #BDD7EE;
	font-size:16px;
		font-weight: bold;
	border:1px solid ##F4F4F4;
	text-align:center;
	vertical-align:middle;
}
.table_style21 td {
	padding:10px 5px;
	font-size:13px;
	border:1px solid #F4F4F4;
	vertical-align:top;
	width: 20%;
	height:120px ;
}

.table_style21 td .date {
	font-size:20px;
	font-weight: bold;
}

/*CC課追加_曜日*/
.table_style21_week {
	border:1px 1px 0 1px solid #F4F4F4;
	width: 100%;
}

.table_style21_week td {
	background: #DEEBF7;
	border:1px solid #F4F4F4;
	vertical-align:top;
	width: 20%;
	height:100% ;
}

.table_style21_week p {
	padding: 5px;
	font-size:14px;
	font-weight: bold;
	border:1px solid ##F4F4F4;
	text-align:center;
	vertical-align:middle;
}
/*End_CC課追加_曜日*/

.calender_month {
font-size: 24px;
text-align: center;
padding-bottom: 20px;
}

.calender_month {
font-size: 24px;
text-align: center;
padding-bottom: 20px;
}

.box_text2 {
	margin:0 0px;
	font-size:14px;
}

.table_style21 td.back-l_gray {
	background: #F4F4F4;
}

.table_style21 td.back-attention {
	background: #0070C0;
}

.table_style21 td.back-attention a {
	color: #fff;
  font-weight: bold;
	text-decoration:none;
}

.table_style21 td.back-attention a :hover {
	text-decoration: underline;
}
.table_style21 td.back-attention .date {
	color: #fff;
  font-weight: bold;
}

.table_style21 td.back-attention02 {
	background: #FFF;
  color: #333;
  font-weight: bold;
	text-decoration:none;
}

.table_style21 td.back-attention02 a {
	color: #333;
  font-weight: bold;
	text-decoration:none;
}

.table_style21 td.back-attention02 a :hover {
	text-decoration: underline;
}
.table_style21 td.back-attention02 .date {
	color: #333;
  font-weight: bold;
}
.table_style21 td.back-attention02 span {
	color: #C83051;
  font-weight: bold;
  font-size:14px;
}

.table_style21_hr {
  border: solid #F4F4F4;
  padding: 10px 0;
}

.case_sub-title{
color: #0070C0;
font-size:18px;
}
.message_image img {
  width:100%;
  margin: 0 auto 20px;
}

#message_keyv {
  position: relative;
  padding: 200px 0 200px;
  background: url("/images/company/img_message01.jpg") no-repeat;
  background-size: cover;
}

@media only screen and (max-width: 799.1px) {
  #message_keyv {
    display: none;
  }
}

@media only screen and (min-width: 799.1px) {
  #message_innerKeyv_sp {
    display: none;
  }
}

#message_keyv .message_innerKeyv {
  max-width: 930px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

#message_keyv p {
  font-size: 30px;
  font-weight: bold;
  padding-left:50px;
  font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "Roboto Slab" , Garamond , "Times New Roman" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , "Sawarabi Mincho" , serif !important; 
}

#message_innerKeyv_sp p {
  font-size: 20px;
  font-weight: bold;
}

.message_spacer50 {
  margin-top: 50px;
}

.table_style03 {
  width: 100%;
  table-layout: fixed;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}
.table_style03 td{
  padding: 13px 20px;
}

.table_style03 thead th {
  background-color: #F4F4F4;
  padding: 13px 20px;
  color: #262626;
}

.table_style03 th,
.table_style03 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: left;
}

.table_style03 th {
  width: 35%;
  font-weight: 700;
  color: #204068;
}

.table_style03 td {
  width: 100%;
}

.table_style04 {
  width: 100%;
  table-layout: auto;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}
.table_style04 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: left;
  vertical-align: top;
}

.table_style04 thead th {
  background-color: #F4F4F4;
  padding: 13px 20px;
  color: #262626;
  text-align: left;
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
}

.table_style04 .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  font-weight: normal;
}

.table_style04 .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .table_style04 {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style04 thead {
    display: none;
  }
  .table_style04 tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style04 tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style04 th,
  .table_style04 td {
    width: 100%;
    border: 0;
    padding: 0;
  }
  .table_style04 th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style04 td {
    font-size: 1.6rem;
  }
}

.table_style05 {
  width: 100%;
  table-layout: auto;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}
.table_style05 td{
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: center;
}

.table_style05 thead th {
  background-color: #F4F4F4;
  padding: 13px 20px;
  color: #262626;
  text-align: center;
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
}

.table_style05 .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  font-weight: normal;
}

.table_style05 .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

.caption01 {
 font-size: 0.8em;
}

.caption01 td {
 vertical-align: top;
 padding: 2px 10px;
}

@media only screen and (max-width: 799.1px) {
  #table_pc {
    display: none;
  }
}

@media only screen and (min-width: 799.1px) {
  #table_sp {
    display: none;
  }
}

.table_style06 td{
  vertical-align: top;
  padding: 5px;
}
.font_blue {
 color: #0070C0;
 font-weight: bold;
}

.table_style07 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_style07 thead th {
  background-color: #EEF5FB;
  padding: 13px 20px;
  color: #262626;
  font-size: 1.8rem;
}

.table_style07 th,
.table_style07 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: left;
}

.table_style07 th {
  width: 14%;
  font-weight: 700;
  color: #204068;
}

.table_style07 td {
  width: 100%;
}

.table_style07 .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
}

.table_style07 .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .table_style07 {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style07 thead {
    display: none;
  }
  .table_style07 tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style07 tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style07 th,
  .table_style07 td {
    width: 100%;
    border: 0;
    padding: 0 10px 0 10px;
  }
  .table_style07 th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style07 td {
    font-size: 1.6rem;
  }
}

.table_style08 {
  width: 100%;
  border-collapse: separate;
  background-color: none;
  font-size: 1.6rem;
}

.table_style08 th{
  border: none;
  padding-top: 0;
  text-align: left;
}

.table_style08 td {
  width: 30%;
  border: none;
  padding: 0;
  text-align: left;
}

.table_style08 th {
  width: 40%;
  font-weight: 400;
  color: #333333;
  vertical-align: top;
}

@media only screen and (max-width: 799px) {
  .table_style08 {
    font-size: 1.5rem;
  }
  .table_style08 tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border: none;
    padding: 5px 0;
  }
  .table_style08 tr:first-child {
    border: none;
  }
  .table_style08 th {
    font-size: 1.6rem;
    width: 100%;
    border: 0;
    padding: 0 0 20px 0;
  }
  .table_style08 td {
    font-size: 1.6rem;
    width: 100%;
    border: 0;
    padding: 0;
  }
}

.table_style09 {
  width: 100%;
  border-collapse: separate;
  background-color: none;
  font-size: 1.5rem;
}

.table_style09 td {
  width: 20%;
  border: none;
  padding: 0;
  text-align: left;
  vertical-align: top;
}

@media only screen and (max-width: 799px) {
  .table_style09 {
    font-size: 1.5rem;
  }
  .table_style09 tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border: none;
    padding: 5px 0;
  }
  .table_style09 tr:first-child {
    border: none;
  }
  .table_style09 th {
    font-size: 1.6rem;
    width: 100%;
    border: 0;
    padding: 0 0 20px 0;
  }
  .table_style09 td {
    font-size: 1.6rem;
    width: 100%;
    border: 0;
    padding: 0;
  }
}

.table_style10 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_style10  thead th {
  width: 14%;
  background-color: #EEF5FB;
  padding: 13px 20px;
  color: #262626;
  font-size: 1.6rem;
}
.table_style10  thead td {
  background-color: #EEF5FB;
  padding: 13px 20px;
  color: #262626;
  font-size: 1.6rem;
}

.table_style10  th,
.table_style10  td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: left;
}

.table_style10  th {
  width: 14%;
  font-weight: 700;
  color: #204068;
}

.table_style10  td {
  width: auto;
}

@media only screen and (max-width: 799px) {
  .table_style10  {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style10  thead {
    display: none;
  }
  .table_style10  tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style10  tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style10  th,
  .table_style10  td {
    width: 100%;
    border: 0;
    padding: 0 10px 0 10px;
  }
  .table_style10  th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style10  td {
    font-size: 1.4rem;
  }
}

.table_style11 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}
.table_style11 thead th {
  width: 10px;
  background-color: #EEF5FB;
  padding: 10px 15px;
  color: #262626;
  font-size: 1.6rem;
}

.table_style11 th,
.table_style11 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 20px 15px;
  text-align: left;
}

.table_style11 th {
  width: 10%;
  font-weight: 700;
  color: #204068;
}

@media only screen and (min-width: 799px) {
  .table_style11_sp {
  	display: none;
  }
}

@media only screen and (max-width: 799px) {
  .table_style11  {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style11  tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style11  tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style11  th,
  .table_style11  td {
    width: 100%;
    border: 0;
    padding: 0 10px 0 10px;
  }
  .table_style11  th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style11  td {
    font-size: 1.6rem;
  }
  .table_style11_pc {
  	display: none;
  }
}

.table_style12 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}
.table_style12 thead th {
  width: 200px;
  background-color: #EEF5FB;
  padding: 10px 15px;
  color: #262626;
  font-size: 1.6rem;
}

.table_style12 th,
.table_style12 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 20px 15px;
  text-align: left;
}

.table_style12 th {
  font-weight: 700;
  color: #204068;
}


@media only screen and (max-width: 799px) {
  .table_style12  {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style12  thead {
    display: none;
  }
  .table_style12  tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style12  tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style12  th,
  .table_style12  td {
    width: 100%;
    border: 0;
    padding: 0 10px 0 10px;
  }
  .table_style12  th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style12  td {
    font-size: 1.6rem;
  }
}

.table_style13 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_style13 thead th {
  background-color: #EEF5FB;
  padding: 13px 20px;
  color: #262626;
}

.table_style13 th,
.table_style13 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 25px 20px;
  text-align: left;
}

.table_style13 th {
  width: 23%;
  font-weight: 700;
  color: #204068;
}

.table_style13 td {
  width: 100%;
}

.table_style13 .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
}

.table_style13 .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .table_style13 {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style13 thead {
    display: none;
  }
  .table_style13 tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style13 tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style13 th,
  .table_style13 td {
    width: 100%;
    border: 0;
    padding: 0 10px 0 10px;
  }
  .table_style13 th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style13 td {
    font-size: 1.6rem;
  }
}

.table_style14 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}
.table_style14 thead th {
  width: 200px;
  background-color: #EEF5FB;
  padding: 10px 15px;
  color: #262626;
  font-size: 1.6rem;
}

.table_style14 th,
.table_style14 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 20px 15px;
  text-align: center;
}

.table_style14 th {
  font-weight: 700;
  color: #204068;
}


@media only screen and (max-width: 799px) {
  .table_style14  {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style14  thead {
    display: none;
  }
  .table_style14  tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style14  tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style14  th,
  .table_style14  td {
    width: 100%;
    border: 0;
    padding: 0 10px 0 10px;
  }
  .table_style14  th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style14  td {
    font-size: 1.6rem;
  }
}

.table_style_preminary_survey {
  background: #0070C0;
}

.table_style_preminary_survey th {
  text-align: center;
  color: #fff;
}

.table_style_preminary_survey02 {
  width: 50%;
  margin: auto;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_style_preminary_survey02 th {
  width: 100%;
  border: none;
  padding: 20px 0;
  margin-bottom: 8px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #333333;
}

@media only screen and (max-width: 799px) {
  .table_style_preminary_survey02 {
    width: 100%;
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
}

.table_style_pic01 {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border-collapse: collapse;
  background-color: none;
  font-size: 1.6rem;
}
.table_style_pic01 td {
  border: none;
  margin-left: auto;
  margin-right: auto;
  padding: 15px;
  vertical-align: top;
  text-align: center;
}

.table_style_akita tr{
  width: 100%;
  border: none;
  vertical-align: top;
}

.table_style_akita .num{
  padding-right: 15px;
}

.corp_act {
 margin-bottom: 10px;
}

.corporate_activities_img img{
    width: 100%;
    max-width: 100px;
}

@media only screen and (max-width: 799.1px) {
  .pc_only {
    display: none;
  }
}

.area_block03 {
  padding: 15px 50px;
  background-color: #EEF5FB;
}

.area_block03 .txt_common {
  max-width: 840px;
}

.area_block03 .image {
  max-width: 840px;
  padding: 50px 20px 50px;
  background-color: #FFF;
}

.area_block03 .image img {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 520px;
}

@media only screen and (max-width: 799px) {
  .area_block03 {
    margin-left: -15px;
    margin-right: -15px;
    padding: 39px 30px 30px 30px;
  }
  .area_block03 .txt_common {
    margin-bottom: 25px;
  }
  .area_block03 .image {
    padding: 30px 12px 30px;
  }
  .area_block03 .table_style01 tr {
    padding: 15px;
  }
}

.area_block03 .ttl {
  margin-bottom: 20px;
  font-weight: 700;
  color: #C83051;
}

.area_block03 .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  line-height: 1.6;
}

.area_block03 .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .area_block03 {
    padding: 25px 20px 25px;
  }
  .area_block03 .ttl {
    margin-bottom: 15px;
    font-size: 1.5rem;
  }
  .area_block03 .list li {
    font-size: 1.4rem;
    line-height: 1.7;
  }
}


.step02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 52px;
}

.step02::after {
  content: "";
  width: calc((100% - 90px) / 3);
}

.step_item02 {
  -webkit-box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
          box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
  border-radius: 4px;
  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-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 30px;
  padding: 74px 20px 20px;
  position: relative;
  width: calc((100% - 90px) / 3);
}

.step_item02::before {
  border-bottom: 30px solid transparent;
  border-top: 30px solid transparent;
  border-left: 20px solid #FF9900;
  bottom: 50%;
  content: "";
  display: inline-block;
  height: 0;
  right: -20px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0;
}

.step_item02:last-child::before {
  display: none;
}

.step_head02 {
  background-color: #204068;
  border-radius: 100vw;
  color: #fff;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 700;
  left: 50%;
  line-height: 1;
  padding: 5px 19px;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 30px;
}

.step_box02 {
  background-color: #EEF5FB;
  border-radius: 3px;
  padding: 10px;
}

.step_ttl02 {
  background-color: #D9E9F7;
  border-radius: 3px;
  color: #204068;
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4375;
  margin-top: 5px;
  padding: 8px 10px;
  text-align: center;
}

.step_ttl02:first-child {
  margin-top: 0;
}

.step_txt02 {
  background-color: #D9E9F7;
  border-radius: 3px;
  color: #262626;
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 5px;
  padding: 6px 10px;
  text-align: center;
}

.step_txt02:first-child {
  margin-top: 0;
}

.step_list02 {
  list-style: none;
  margin-bottom: 35px;
  padding-left: 7px;
}

.step_list02 li {
  color: #262626;
  font-size: 1.4rem;
  line-height: 1.55;
  position: relative;
}

@media only screen and (max-width: 799px) {
  .step02 {
    display: block;
    margin-bottom: 49px;
    margin-top: 25px;
  }
  .step02::after {
    display: none;
  }
  .step_item02 {
    max-width: 100%;
    margin: 0 auto 35px;
    padding: 74px 20px 20px;
    width: 100%;
  }
  .step_item02::before {
    border-bottom-width: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #FF9900;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    right: 0;
    bottom: -20px;
    -webkit-transform: inherit;
            transform: inherit;
  }
  .step_head02 {
    font-size: 1.6rem;
    padding: 7px 24px;
    top: 27px;
  }
  .step_box02 {
    border-radius: 3px;
    padding: 10px;
  }
  .step_ttl02 {
    padding: 8px 10px;
  }
  .step_txt02 {
    font-size: 1.2rem;
    padding: 10px;
  }
  .step_list02 {
    margin-bottom: 22px;
    padding-left: 2px;
  }
  .step_list02 li {
    line-height: 1.571;
  }
}

.list01 li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  line-height: 1.6;
}
.list01 li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

.list02 {
  padding-top: 15px;
}
.list02 li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  line-height: 1.6;
  font-weight: bold;
  font-size: 1.2em;
}
.list02 li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .list02 li {
    font-size: 1.6rem;
  }
}

.text_red {
 color: #C83051;
}

.text_red02 {
 color: #EA0D19;
}

.text_blue {
 color: #0070C0 ;
}

.text_white {
 color: #fff ;
}

.service_op01 {
 color: #C83051;
 padding-top: 10px;
}

.btn_service_list02 {
  max-width: 799px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.btn_service_list02 li {
  width: calc((100% - 20px) / 3);
}

.btn_service_list02 li a {
  display: block;
  position: relative;
  padding: 15px 32px;
  border-radius: 4px;
  background-color: #F4F4F4;
  color: #262626;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn_service_list02 li a::before {
  position: absolute;
  content: '';
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-45%);
          transform: translateY(-45%);
  width: 8px;
  height: 13px;
  background-image: url("/images/svg/icon_arrow_05.svg");
  background-size: 8px auto;
}

.btn_service_list02 li a:hover {
  color: #262626;
  opacity: .7;
  text-decoration: none;
}

@media only screen and (max-width: 799px) {
  .btn_service_list02 {
    max-width: 260px;
  }
  .btn_service_list02 li {
    width: 100%;
    margin-bottom: 15px;
  }
  .btn_service_list02 li:last-child {
    margin-bottom: 0;
  }
  .btn_service_list02 li a {
    padding: 20px 32px;
    font-size: 1.5rem;
  }
}

.btn_service_list03 {
  max-width: 799px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.btn_service_list03 li {
  width: calc((100% - 20px) / 3);
}

.btn_service_list03 li a {
  display: block;
  position: relative;
  padding: 15px 32px;
  border-radius: 4px;
  background-color: #F4F4F4;
  color: #0070C0;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn_service_list03 li a::before {
  position: absolute;
  content: '';
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-45%);
          transform: translateY(-45%);
  width: 8px;
  height: 13px;
  background-image: url("/images/svg/icon_arrow_04.svg");
  background-size: 8px auto;
}

.btn_service_list03 li a:hover {
  color: #219DF5;
  opacity: .7;
  text-decoration: none;
}

@media only screen and (max-width: 799px) {
  .btn_service_list03 {
    max-width: 260px;
  }
  .btn_service_list03 li {
    width: 100%;
    margin-bottom: 15px;
  }
  .btn_service_list03 li:last-child {
    margin-bottom: 0;
  }
  .btn_service_list03 li a {
    padding: 20px 32px;
    font-size: 1.5rem;
  }
}

.date_caption_L03 {
  font-size: 1.2rem;
  text-align: left;
  font-weight: normal;
  line-height: normal;
  padding-top: 7px;
  color: #333333;
}

.area_column {
  padding: 20px 30px 25px;
  border: none;
  background-color: #ffffff;
  font-size: 1.6rem;
}

.area_column .ttl {
  margin-bottom: 20px;
  font-weight: 700;
  color: #0070C0;
}

.area_column .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  line-height: 1.6;
}

.area_column .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .area_column {
    padding: 25px 20px 25px;
  }
  .area_column .ttl {
    margin-bottom: 15px;
    font-size: 1.5rem;
  }
  .area_column .list li {
    font-size: 1.4rem;
    line-height: 1.7;
  }
}

.area_block03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 60px 0 40px;
  background-color: #EEF5FB;
}

.area_block03 .item {
  position: relative;
  width: 30%;
  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;
  padding: 0 15px 45px 15px;
  text-decoration: none;
}

.area_block03 .item::after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 50%;
  width: 36px;
  height: 36px;
  background: url("/images/svg/icon_arrow_07.svg") no-repeat 50% 50%;
  background-size: 36px auto;
  -webkit-box-shadow: 0 3px 6px rgba(209, 227, 242, 0.5);
          box-shadow: 0 3px 6px rgba(209, 227, 242, 0.5);
  border-radius: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.area_block03 .icon {
  margin-bottom: 15px;
}

.area_block03 .icon img {
  display: block;
  height: 100%;
}

.area_block03 .ttl {
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  -webkit-transition: 0.2s color;
  transition: 0.2s color;
}

@media only screen and (min-width: 1025px) {
  .area_block03 .item:hover .ttl {
    color: #219DF5;
  }
}

@media only screen and (max-width: 1200px) {
  .area_block03 .item {
    width: 25%;
  }
}

@media only screen and (max-width: 799px) {
  .area_block03 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 55px 0 20px;
    margin-left: auto;
    margin-right: auto;
  }
  .area_block03 .item {
    width: 50%;
    margin-bottom: 50px;
    padding: 0 5px 55px 5px;
  }
  .area_block03 .item::after {
    width: 33px;
    height: 33px;
  }
  .area_block03 .ttl {
    font-size: 1.4rem;
  }
  .area_block03 .ttl .sp_size {
    font-size: 1.2rem;
  }
  .area_block03 .icon {
    height: 77px;
    margin-bottom: 10px;
  }
}


.area_block04 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 60px 0 40px;
  background-color: #EEF5FB;
}

.area_block04 .item {
  position: relative;
  width: 32%;
  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;
  padding: 0 15px 0 15px;
  text-decoration: none;
}

.area_block04 .icon {
  margin-bottom: 15px;
}

.area_block04 .icon img {
  display: block;
  height: 100%;
}

.area_block04 .ttl {
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}



@media only screen and (max-width: 1200px) {
  .area_block04 .item {
    width: 25%;
  }
}

@media only screen and (max-width: 799px) {
  .area_block04 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 55px 0 20px;
  }
  .area_block04 .item {
    width: 90%;
    margin-bottom: 15px;
    padding: 0 5px 15px 5px;
  }
  .area_block04 .item::after {
    width: 33px;
    height: 33px;
  }
  .area_block04 .ttl {
    font-size: 1.6rem;
  }
  .area_block04 .ttl .sp_size {
    font-size: 1.6rem;
  }
  .area_block04 .icon {
    height: 60px;
    margin-bottom: 10px;
  }
}

.area_block05 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 30px 0 15px;
  background-color: #EEF5FB;
}

.area_block05 .item {
  position: relative;
  width: 45%;
  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;
  padding: 0 30px 0 30px;
  text-decoration: none;
}

.area_block05 .icon {
  margin-bottom: 15px;
}

.area_block05 .icon img {
  display: block;
  height: 100%;
}

.area_block05 .ttl {
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}

}

@media only screen and (max-width: 1200px) {
  .area_block05 .item {
    width: 25%;
  }
}

@media only screen and (max-width: 799px) {
  .area_block05 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 15px 0 10px;
  }
  .area_block05 .item {
    width: 90%;
    margin-bottom: 15px;
    padding: 0 5px 15px 5px;
  }
  .area_block05 .item::after {
    width: 33px;
    height: 33px;
  }
  .area_block05 .ttl {
    font-size: 1.6rem;
  }
  .area_block05 .ttl .sp_size {
    font-size: 1.6rem;
  }
  .area_block05 .icon {
    height: 60px;
    margin-bottom: 10px;
  }
}

.area_block06 {
  margin-bottom: 40px;
  padding: 17px 30px;
  background-color: #EEF5FB;
  border-radius: 4px;
}


.btn_common_list02 {
  max-width: 300px;
  margin: 30px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.btn_common_list02 li {
  width: calc((100% - 40px) / 1);
}

.btn_common_list02 li a {
  background: url(/images/svg/icon_arrow_04.svg) no-repeat right 12px center/8px;
  display: block;
  position: relative;
  padding: 18px 25px;
  background-color: #FFF;
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: color .1s;
  transition: color .1s;
}

.btn_common_list02 li a::before, .btn_common_list02 li a::after {
  background-color: #0272BD;
  content: '';
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color .1s;
  transition: background-color .1s;
  width: 100%;
}

.btn_common_list02 li a::before {
  -webkit-transform-origin: top left;
          transform-origin: top left;
  top: 0;
}

.btn_common_list02 li a::after {
  -webkit-transform-origin: top right;
          transform-origin: top right;
  bottom: 0;
}

@keyframes arrow-move {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@media only screen and (min-width: 799.1px) {
  .btn_common_list02 li a:hover {
    background-image: url(/images/svg/icon_arrow_10.svg);
    color: #219DF5;
    text-decoration: none;
  }
  .btn_common_list02 li a:hover::after {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .btn_common_list02 li a:hover::before {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
}


.flow02 {
  border: 1px solid #d5d5d5;
}

.flow02_item {
  border-bottom: 1px solid #d5d5d5;
}

.flow02_item:last-child {
  border-bottom-width: 0;
}

.flow02_item.expand .flow02_ttl {
  background-color: #EEF5FB;
  color: #204068;
  padding-bottom: 11px;
}

.flow02_content {
  background-color: #EEF5FB;
  padding-bottom: 16px;
  padding-left: 87px;
}

.flow02_ttl {
  color: #262626;
  display: block;
  font-size: 1.6rem;
  padding: 12px 15px 17px 87px;
  position: relative;
  -webkit-transition: background-color 0.3s, color 0.3s, padding-bottom 0.15s;
  transition: background-color 0.3s, color 0.3s, padding-bottom 0.15s;
}

.flow02_ttl span {
  color: currentColor;
  left: 31px;
  position: absolute;
  font-size: 1.6rem;
  font-family: "Oswald", sans-serif !important;
  top: 13px;
  padding-right: 700px;
}

.flow02_list {
  list-style: none;
}

.flow02_list li {
  color: #262626;
  font-size: 1.5rem;
  line-height: 1.4;
  position: relative;
}

.flow02_bottom {
  color: #FF9900;
  font-size: 2.4rem;
  line-height: 1.583;
  padding-top: 34px;
  position: relative;
  text-align: center;
}

.flow02_bottom::before {
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 20px solid #FF9900;
  content: "";
  display: inline-block;
  height: 0;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: 0;
  width: 0;
}

@media only screen and (max-width: 799px) {
  .flow02.expand .flow02_ttl {
    padding-bottom: 13px;
  }
  .flow02.expand .flow02_content {
    padding-bottom: 21px;
  }
  .flow02_content {
    padding-left: 53px;
  }
  .flow02_ttl {
    font-size: 1.3rem;
    padding: 15px 10px 14px 53px;
  }
  .flow02_ttl span {
    left: 23px;
    font-size: 1.3rem;
    top: 16px;
  }
  .flow02_list li {
    font-size: 1.3rem;
    line-height: 1.55;
  }
  .flow02_bottom {
    font-size: 1.7rem;
    padding-top: 37px;
  }
}

.step2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 52px;
}

.step2::after {
  content: "";
  width: calc((100% - 90px) / 3);
}

.step2_item {
  -webkit-box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
          box-shadow: 0 2px 6px rgba(8, 15, 20, 0.12);
  border-radius: 4px;
  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-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15px 20px 15px;
  position: relative;
  width: calc((100% - 90px) / 3);
  background-color: #EEF5FB;
}

.step2_item:last-child::before {
  display: none;
}

.step2_head {
  border-radius: 100vw;
  color: #0070C0;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 5px 15px;
}

.step2_box {
  background-color: #FFFFFF;
  border-radius: 3px;
  padding: 10px;
}

.step2_ttl {
  background-color: #FFFFFF;
  border-radius: 3px;
  border-bottom: 3px;
  color: #000000;
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4375;
  margin-top: 5px;
  padding: 8px 10px;
  text-align: left;
}

.step2_ttl:first-child {
  margin-top: 0;
}

.step2_txt {
  background-color: #D9E9F7;
  border-radius: 3px;
  color: #262626;
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 5px;
  padding: 6px 10px;
  text-align: center;
}

.step2_txt:first-child {
  margin-top: 0;
}

.step2_list {
  list-style: none;
  margin-bottom: 35px;
  padding-left: 7px;
}

.step2_list li {
  color: #262626;
  font-size: 1.4rem;
  line-height: 1.55;
  position: relative;
}

@media only screen and (max-width: 799px) {
  .step2 {
    display: block;
    margin-bottom: 49px;
    margin-top: 25px;
  }
  .step2::after {
    display: none;
  }
  .step2_item {
    max-width: 100%;
    margin: 0 auto 35px;
    padding: 20px 20px 20px;
    width: 100%;
  }
  .step2_item::before {
    border-bottom-width: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #FF9900;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    right: 0;
    bottom: -20px;
    -webkit-transform: inherit;
            transform: inherit;
  }
  .step2_head {
    font-size: 1.6rem;
    padding: 7px 15px;
    top: 15px;
  }
  .step2_box {
    border-radius: 3px;
    padding: 10px;
  }
  .step2_ttl {
    padding: 8px 10px;
  }
  .step2_txt {
    font-size: 1.2rem;
    padding: 10px;
  }
  .step2_list {
    margin-bottom: 22px;
    padding-left: 2px;
  }
  .step2_list li {
    line-height: 1.571;
  }
}

#web_nw, #webapp, #zerotrust, #cnd, #ceh, #case, #ccse {
	padding-top: 50px;
	margin-top: -50px;
}

#trapmail, #minasecure, #doc, #adv {
	padding-top: 100px;
	margin-top: -100px;
}

.btn_common_list03 {
  max-width: 798px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.btn_common_list03 li {
  width: calc((100% - 90px) / 3);
}

.btn_common_list03 li a {
  background: url(/images/svg/icon_arrow_04.svg) no-repeat right 12px center/8px;
  display: block;
  position: relative;
  padding: 18px 25px;
  background-color: #FFF;
  color: #0070C0;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-transition: color .1s;
  transition: color .1s;
}

.btn_common_list03 li a::before, .btn_common_list03 li a::after {
  background-color: #0272BD;
  content: '';
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color .1s;
  transition: background-color .1s;
  width: 100%;
}

.btn_common_list03 li a::before {
  -webkit-transform-origin: top left;
          transform-origin: top left;
  top: 0;
}

.btn_common_list03 li a::after {
  -webkit-transform-origin: top right;
          transform-origin: top right;
  bottom: 0;
}

@keyframes arrow-move {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@media only screen and (min-width: 799.1px) {
  .btn_common_list03 li a:hover {
    background-image: url(/images/svg/icon_arrow_10.svg);
    color: #219DF5;
    text-decoration: none;
  }
  .btn_common_list03 li a:hover::after {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .btn_common_list03 li a:hover::before {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common_list03 {
    max-width: 260px;
  }
  .btn_common_list03 li {
    width: 100%;
    margin-bottom: 15px;
  }
  .btn_common_list03 li:last-child {
    margin-bottom: 0;
  }
  .btn_common_list03 li a {
    background-position: right 15px center;
    padding: 20px 25px;
    font-size: 1.5rem;
  }
}

.interview_txt p{
 text-align: justify !important;
}

@media only screen and (min-width: 799.1px) {
.interview_pic img{
 float:right; margin: 0 0 15px 15px;
 }
.interview_pic02 img {
 float:right; margin: 0 0 15px 15px;
 }
.interview_pic03 img {
 width: 500px;
 margin: 0 0 15px 0;
 }
 .interview_pic04 img {
 float:right; margin: 0 0 15px 15px;
 }
}
 
@media only screen and (max-width: 799.1px) {
.interview_pic img{
  width: 100%;
  }
}

@media only screen and (min-width: 799.1px) {
.interview_pic_L img{
 float:left; margin: 0 15px 15px 0;
 }
.interview_pic_L02 img{
 float:left; margin: 0 15px 15px 0;
 }
}
 
@media only screen and (max-width: 799.1px) {
.interview_pic_L img{
  width: 100%;
  }
.interview_pic02 img {
 width: 100%;
 }
.interview_pic03 img {
 width: 100%;
 }
 .interview_pic04 img {
 width: 50%;
 }
 .interview_pic_L02 img{
 width: 50%;
 }
}

/* テキストリンク hover */
@media only screen and (min-width: 799.1px) {
  .inner-article a:hover {
    text-decoration: none;
  }
}

/* 事例紹介 リスト */
@media only screen and (max-width: 799px) {
.case_list {
  text-align: left;
}
}

/* table調整
--------------------------------------------------*/
@media only screen and (max-width: 799.1px) {
  #table_pc {
    display: none;
  }
}

@media only screen and (min-width: 799.1px) {
  #table_sp {
    display: none;
  }
}

.txtL { text-align: left !important;}
.txtC { text-align: center !important;}
.txtR { text-align: right !important;}
.floatL { float: left;}
.floatR { float: right;}
.imgL { float:left; margin:0 15px 15px 0;}
.imgR { float:right; margin:0 0 15px 15px;}

.spacer10 {
 margin-top: 10px;
 }
.spacer20 {
 margin-top: 20px;
 }
.spacer30 {
  margin-top: 30px;
 }
.spacer40 {
 margin-top: 40px;
 }
.spacer50 {
 margin-top: 50px;
 }
.spacer60 {
 margin-top: 60px;
 }
.spacer70 {
 margin-top: 70px;
 }
.spacer80 {
 margin-top: 80px;
 }
.spacer90 {
 margin-top: 90px;
 }
.spacer100 {
 margin-top: 100px;
 }

/* searchページ */
.main_search {
    width: 100%;
    margin: 100px auto 50px;
    justify-content: center;
	position: relative;	
}

.main_inner {
	max-width: 1200px;
	margin: 0 auto;
}

@media only screen and (max-width: 799.1px) {
  .main_search .main_inner {
    margin-left: 10px;
    margin-right: 10px;
  }
}

/* プレスリリース・事例紹介追加 */
.newsrelease_hd img {
 vertical-align: middle; 
}
.basicTbl01 {
  width: 100%;
  margin: 0 0 24px;
}
.basicTbl01 table {
	width: 100%;
	border-collapse: separate;
    	border-spacing: 0;
	border-top: 1px solid #D4D4D4;
	border-left: 1px solid #D4D4D4;
}
.basicTbl01 table thead th,
.basicTbl01 table tbody th,
.basicTbl01 table tbody td {
  padding: 16px;
	border-bottom: 1px solid #D4D4D4;
	border-right: 1px solid #D4D4D4;
}
.basicTbl01 table thead th {
	background-color: #F4F4F4;
	text-align: center;
}
.basicTbl01 table tbody th {
	background-color: #F4F4F4;
	text-align: left;
	font-weight: normal;
}
.basicTbl01 table tbody td {
  padding: 8px;
	background-color: #FFFFFF;
	text-align: left;
}
.basicTbl01 table .tm { padding: 6px 7px 5px 7px; }
.basicTbl01 {
  width: 100%;
}
.basicTbl01 table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}
.basicTbl01 table .bg01 { background-color: #FFFCF4; }

.sec p:not(:last-child) {margin: 0 0 24px;}
.section {
  margin: 0 0 25px;
  padding: 0;
}


.headline4.press .ttl {
	margin-bottom: 8px;
	font-size: 3.8rem;
}
.headline4.press .sub {
	font-size: 3.0rem;
	font-weight: 900;
	font-family: 'Noto Sans JP', sans-serif !important;
}
table th ,
table td {box-sizing: content-box;}
.liDot01 {
	list-style: disc;
	padding-left: 20px;
}
.liDot01 li:not(:last-child) {margin: 0 0 8px;}
.leadtxt {margin: 0 0 32px;}
.pressContact dl:not(:last-child) {margin: 0 0 16px;}
.ttlMod02 {
	position: relative;
	margin-bottom: 20px;
	padding-left: 30px;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.5;
}
.ttlMod02::before {
  position: absolute;
  content: '';
  left: 0;
  top: 15px;
  width: 20px;
  height: 3px;
  background-color: #C83051;
}
.ttlMod01 {
  position: relative;
  margin-top: 50px;
  margin-bottom: 30px;
  padding: 9px 0 9px 30px;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}
.ttlMod01::before {
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  width: 6px;
  height: 100%;
  background-color: #C83051;
}
.modSet {
	display: flex;
	gap: 16px;
}
.modSet .msL,
.modSet .msR {flex: 1;}

@media only screen and (max-width: 799px){
  .headline4.press .ttl {font-size: 2.4rem;}
  .headline4.press .sub {font-size: 1.8rem;}
}

/*CC課追加*/
.basicTbl02 {
  width: 100%;
  margin: 0 0 24px;
}
.basicTbl02 table {
	width: 100%;
	border-collapse: separate;
    	border-spacing: 0;
	border-top: 1px solid #D4D4D4;
	border-left: 1px solid #D4D4D4;
}
.basicTbl02 table thead th,
.basicTbl02 table tbody th,
.basicTbl02 table tbody td {
  padding: 16px;
	border-bottom: 1px solid #D4D4D4;
	border-right: 1px solid #D4D4D4;
}
.basicTbl02 table thead th {
	background-color: #F4F4F4;
	text-align: center;
}
.basicTbl02 table tbody th {
	background-color: #FFFFFF;
	text-align: left;
	font-weight: bold;
}
.basicTbl02 table tbody td {
  padding: 8px;
	background-color: #FFFFFF;
	text-align: left;
}
.basicTbl02 table .tm { padding: 6px 7px 5px 7px; }
.basicTbl02 {
  width: 100%;
}
.basicTbl02 table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}
.basicTbl02 table .bg01 { background-color: #FFFCF4; }

@media screen and (max-width: 799.1px) {
  .last td:last-child {
    border-bottom: solid 1px #D4D4D4;
    max-width: 100%;
  }
  .basicTbl02 {
    width: 100%;
  }
  .basicTbl02 th,
  .basicTbl02 td {
　　border-bottom: none;
    display: block;
    max-width: 100%;
  }
}

.trwidth20sp37 {
 width: 20%;
}

.trwidth15sp37 {
 width: 15%;
}

.per10 {
 width: 10%;
 }
  
.per15 {
 width: 15%;
 }
 
.per20 {
 width: 20%;
 }
 
.per25 {
 width: 25%;
 }
 
.per30 {
 width: 30%;
 }
 
.per35 {
 width: 35%;
 }
 
.per40 {
 width: 40%;
 }
 
.per45 {
 width: 45%;
 }

.per50 {
 width: 50%;
 }
 
.per55 {
 width: 55%;
 }
 
.per60 {
 width: 60%;
 }
 
.wAuto {
 width: auto;
 }
	
@media screen and (max-width: 799.1px) {
  .trwidth20sp37 {
    width: 37%;
  }
  .trwidth15sp37 {
    width: 37%;
  }
}


.step3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 10px auto;
}

.step3::after {
  content: "";
  width: calc((100% - 90px) / 3);
}

.step3_item {
  background-color: #fff;
  border-radius: 4px;
  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-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0;
  position: relative;
  width: calc((100% - 90px) / 3);
}

.step3_item h4{
  text-align: center;
  padding: 20px;
}

.step3_item::before {
  border-bottom: 20px solid transparent;
  border-top: 20px solid transparent;
  border-left: 20px solid #FF9900;
  bottom:-15%;
  content: "";
  display: inline-block;
  height: 0;
  right: -20px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0;
}

.step3_item:last-child::before {
  display: none;
}

@media only screen and (max-width: 799px) {
  .step3 {
    display: block;
    margin-bottom: 49px;
    margin-top: 25px;
  }
  .step3::after {
    display: none;
  }
  .step3_item {
    max-width: 100%;
    margin: 0 auto 35px;
    padding: 0 20px;
    width: 100%;
  }
  .step3_item::before {
    border-bottom-width: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #FF9900;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    right: 0;
    bottom: -20px;
    -webkit-transform: inherit;
            transform: inherit;
  }
}

.justify {
	text-align: justify !important;
	}

.box_image02 {
  width: 50%;
}

.table_item01 {
	font-size: 2.4rem;
	font-weight: bold;
}

/* プレスリリース エンドース */
.tb_none {
  border: none !important;
}
.img_w {
  width: 130px; height: auto;
}
.area_column_radius {
border-radius: 10px;
border: 1px solid #D5D5D5;
padding: 20px 20px 0 20px;
}
@media only screen and (max-width: 799px) {
 .img_w {
   width: 180px;
   height: auto;
   margin: auto;
  }
}

  	
/* セキュリティプロテクション */
.cp_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  max-width: 1025px;
  margin: 50px auto 40px;
  list-style: none;
}

.cp_list::after {
  content: "";
  width: calc((100% - 20px) / 2);
}

.cp_list li {
  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;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  width: calc((100% - 20px) / 2);
  margin-bottom: 10px;
  padding: 20px 20px;
  border-radius: 4px;
  color: #FFF;
  font-size: 1.3rem;
  font-weight: bold;
}

.cp_list li .cp_txt01 {
  width: 100%;
  display: block;
  font-size: 1.8rem;
  text-align: center;
}

.cp_txt01 span {
  font-size: 1.1rem;
  font-weight: normal;
  vertical-align: top;
}

.cp_list li.bg_blue {
  background-color: #178ce0;
}

@media only screen and (max-width: 799px) {
  .cp_list {
    max-width: 100%;
    margin: 40px auto 25px;
  }
  .cp_list::after {
    width: calc((100% - 10px) / 2);
  }
  .cp_list li {
    width: calc((100% - 10px) / 2);
    height: auto;
    padding: 25px 10px;
    font-size: 1rem;
  }
  .cp_list li .cp_txt01 {
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 375px) {
  .sp_list li {
    padding: 20px 10px;
  }
  .sp_list li .sp_txt01 {
    font-size: 1.4rem;
  }
}

/* vision */
.circle_vision01 {
	display: inline-block;
	width: 160px;
	height: 160px;
	border-radius: 50%;
	background: #0070C0;
	font-size: 1.2em;
	margin-bottom: 20px;
	font-weight: 700;
	text-align:center;
	vertical-align: middle;
	line-height: 1.4;
	color: #fff;
	padding-top: 50px;
}

@media only screen and (max-width: 799px) {
.circle_vision01 {
	font-size: 1em;
	width: 130px;
	height: 130px;
	padding-top: 40px;
  }
}
  
.circle_vision02 {
	display: inline-block;
	width: 140px;
	height: 140px;
	border-radius: 50%;
	background: #0070C0;
	font-size: 2.2em;
	margin-bottom: 30px;
	font-weight: 700;
	text-align:center;
	vertical-align: middle;
	line-height: 0.8;
	color: #fff;
	padding-top: 40px;
  }
.circle_vision02 small{
	font-size: 0.6em;
  }
.circle_vision02 span{
	font-size: 0.5em;
	font-weight: normal;
	color: #333333 !important;
	text-decoration:none;
	margin-top:3em;
	margin-bottom: 0.8em;
	display: inline-block;
  }
  
.circle_vision03 {
	display: inline-block;
	width: 90px;
	height: 90px;
	border-radius: 50%;
	background: #fff;
	border: solid 0.5px #0070C0;
	font-size: 1.4em;
	margin-top: 85px;
	font-weight: 700;
	text-align:center;
	vertical-align: middle;
	line-height: 0.8;
	color: #0070C0;
	padding-top: 5px;
  }
.circle_vision03 span{
	font-size: 0.6em;
	font-weight: normal;
	text-decoration:underline;
	text-underline-offset:0.2em;
	margin-bottom: 0.8em;
	display: inline-block;
  }
.circle_vision03 small{
	font-size: 0.7em;
  }
}
  
.headline_vision {
  position: relative;
  z-index: 1;
  margin-bottom: 30px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}
.headline_vision::after {
  position: absolute;
  z-index: -1;
  content: '';
  height: 1px;
  left: 0;
  right: 0;
  top: 50%;
  background-color: #262626;
}
.headline_vision span {
  display: inline-block;
  padding-right: 10px;
  background-color: #FFF;
}

.headline_vision_column {
  margin-bottom: 30px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (max-width: 799px) {
.headline_vision {
    margin-bottom: 27px;
    padding-bottom: 24px;
    font-size: 1.6rem;
  }
.headline_vision span {
    display: block;
    padding-right: 0;
  }
.headline_vision::after {
    width: 40px;
    top: auto;
    bottom: 0;
    -webkit-transform: none;
            transform: none;
  }
.headline_vision_column {
  margin-bottom: 30px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  }
}

.image_service img {
	padding: 10px 0 10px;
	text-align: center;
	width: 100%;
}

.image_service_vision01 {
	text-align: center;
}
.image_service_vision01 img {
	padding: 10px 0 0 0;
	width: 100%;
	max-width: 60%;
}

@media only screen and (max-width: 799px) {
.image_service_vision01 {
	text-align: center;
  }
.image_service_vision01 img {
    padding: 10px 0 0 0;
	width: 100%;
	max-width: 40%;
  }
}

.image_service_vision02 {
	text-align: center;
}
.image_service_vision02 img {
	padding: 10px 0 0 0;
	width: 100%;
	max-width: 75%;
}

@media only screen and (max-width: 799px) {
.image_service_vision02 {
	text-align: center;
  }
.image_service_vision02 img {
    padding: 10px 0 0 0;
	width: 100%;
	max-width: 50%;
  }
}

.image_service_vision03 {
	text-align: center;
}
.image_service_vision03 img {
	padding: 10px 0 0 0;
	width: 100%;
}

@media only screen and (max-width: 799px) {
.image_service_vision03 {
	text-align: center;
  }
.image_service_vision03 img {
    padding: 10px 0 0 0;
	width: 100%;
  }
}
.services_list_vision li .services_title_vision a {
  display: block;
  padding-left: 28px;
  color: #0070C0;
  position: relative;
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s;
  }

.icon_vision_L{
 float:left;
 margin: 0 20px 50px 20px;
 width: 100%;
 max-width: 15%;
 }
 
@media only screen and (max-width: 799px) {
.icon_vision_L{
 max-width: 45%;
 margin: 0 15px 10px 0;
 }
}

.text_style-blue_vision {
  color: #0070C0;
  font-size: 2rem;
  font-weight: 700;
}

@media only screen and (max-width: 799px) {
.text_style-blue_vision {
    margin-bottom: 5px;
    font-size: 1.6rem;
  }
}

.border_vision {
 border: solid 3px #F4F4F4;
}

.table_style_vision {
  table-layout: fixed;
  width: 100%;
  max-width: auto;
  margin: 0 auto;
  background-color: #fff;
  border: solid 0.5px #BDD7EE;
}
.table_style_vision th {
 font-size: 1.3em;
 text-align: center;
 padding: 15px 15px 15px 15px;
}
.table_style_vision td {
 padding: 0 15px 15px 15px;
 vertical-align: top;
}

@media only screen and (max-width: 799px) {
.table_style_vision {
        display: block;
  }
}

.table_style_vision01 {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_style_vision01 thead th {
  background-color: #F4F4F4;
  padding: 13px 20px;
  color: #262626;
}

.table_style_vision01 th,
.table_style_vision01 td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: left;
}

.table_style_vision01 th {
  width: 35%;
  font-weight: 700;
  font-size: 1.8rem;
  color: #262626;
}

.table_style_vision01 td {
  width: 100%;
}

.table_style_vision01 .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
}

.table_style_vision01 .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .table_style_vision01 {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style_vision01 thead {
    display: none;
  }
  .table_style_vision01 tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 10px;
  }
  .table_style_vision01 tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style_vision01 th,
  .table_style_vision01 td {
    width: 100%;
    border: 0;
    padding: 0;
  }
  .table_style_vision01 th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style_vision01 td {
    font-size: 1.6rem;
  }
}

.table_ttl {
 font-weight: 700;
 text-align: center;
 font-size: 1.1em;
}

.text_red_vision {
  font-size: 1.8rem;
  font-weight: 700;
  color: #D3001F;
}

@media only screen and (max-width: 799px) {
.text_red_vision {
  font-size: 1.6rem;
  }
}

.area_warning_vision {
  margin-bottom: 100px;
  padding: 20px 30px 25px;
  border: none;
  background-color: #FFEFEF;
  font-size: 1.6rem;
}

.list_ol_vision {
  padding-left: 22px;
}

.container_vision {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: auto;
  margin: auto;
  vertical-align: top;
}

.container_vision a {
  color: #262626;
  text-decoration: none;
}

@media screen and (max-width: 799px) {
  .container_vision {
    width: 100%;
    max-width: auto;
  }
}

.item_vision01 {
  background: #fff;
  width: calc((100% - 70px) / 3);
  max-width: auto;
  margin: auto;
  padding: 15px;
}

@media screen and (max-width: 799px) {
  .item_vision01 {
    width: 100%;
    max-width: auto;
    margin: 0 auto;
    margin-bottom: 10px;
    text-align: center;
  }
}

.item_vision02 {
  background: #fff;
  width: calc((100% - 70px) / 3);
  max-width: auto;
  margin: auto;
  padding: 15px;
}

@media screen and (max-width: 1126px) {
  .item_vision02 {
    width: 100%;
    max-width: auto;
    margin: 0 auto;
    margin-bottom: 10px;
    text-align: center;
  }
}

@media screen and (max-width: 799px) {
  .item_vision02 p {
    width: 100%;
    max-width: auto;
    margin: 0 auto;
    margin-bottom: 10px;
    text-align: left;
    text-align: center;
  }
}

.txt_vision {
  vertical-align: top;
}

.ttl_vision_num {
  text-align: center;
  font-size: 2.4rem;
  color: #0070C0;
  padding-bottom: 5px;
  vertical-align: top;
}

@media screen and (max-width: 799px) {
  .ttl_vision_num {
  font-size: 2rem;
  color: solid 3px #0070C0;
  padding-bottom: 5px;
  }
}
@media screen and (max-width: 799px) {
  .ttl_vision_num {
  font-size: 2rem;
  color: solid 3px #0070C0;
  padding-bottom: 5px;
  }
}

.ttl_vision {
  text-align: center;
  font-size: 2rem;
}

@media screen and (max-width: 799px) {
  .ttl_vision {
  font-size: 1.6rem;
  }
}

.ttl_action {
  text-align: center;
  font-size: 1.8rem;
}

@media screen and (max-width: 799px) {
  .ttl_action {
  font-size: 1.6rem;
  }
}

.ttl_link_vision {
  text-decoration: none;
  color: #262626;
}

.document_btn_vision {
  max-width: 275px;
  margin: 0 auto 40px;
}

.ttl_vision_top {
  background: linear-gradient(transparent 70%, #E1EDF7 70%);
}

.btn_common_vision {
  background: url(/images/svg/icon_arrow_05.svg) no-repeat right 20px center/8px;
  position: relative;
  display: block;
  max-width: 275px;
  padding: 19px 25px;
  color: #262626;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  -webkit-transition: color .1s;
  transition: color .1s;
}

.btn_common_vision::before, .btn_common_vision::after {
  background-color: #262626;
  content: '';
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color .1s;
  transition: background-color .1s;
  width: 100%;
}

.btn_common_vision::before {
  -webkit-transform-origin: top left;
          transform-origin: top left;
  top: 0;
}

.btn_common_vision::after {
  -webkit-transform-origin: top right;
          transform-origin: top right;
  bottom: 0;
}

@-webkit-keyframes arrow-move {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@keyframes arrow-move {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@media only screen and (min-width: 1025px) {
  .btn_common_vision:hover {
    background-image: url(/images/svg/icon_arrow_10.svg);
    text-decoration: none;
    color: #219DF5;
  }
  .btn_common_vision:hover::after {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .btn_common_vision:hover::before {
    background-color: #219DF5;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-move .5s;
            animation: arrow-move .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common_vision {
    background-position: right 15px center;
    max-width: 275px;
    padding: 15px 30px;
    font-size: 1.4rem;
  }
}

.opacity {
    opacity: 0.5;
  } 

.arrow_action {
    margin: 35px auto 0;
    width: 100%;
    max-width: 15%;
  }
  
@media only screen and (max-width: 799px) {
.arrow_action {
    width: 100%;
    max-width: 10%;
  }
}

.area_column_vision {
  padding: 20px 30px 25px;
  background-color: #ffffff;
  font-size: 1.6rem;
  border: solid 1px #0071C5;
  border-radius: 10px;
}

.area_column_vision .ttl {
  margin-bottom: 20px;
  font-weight: 700;
  color: #0070C0;
}

.area_column_vision .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  line-height: 1.6;
}

.area_column_vision .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .area_column_vision {
    padding: 25px 20px 25px;
  }
  .area_column_vision .ttl {
    margin-bottom: 15px;
    font-size: 1.5rem;
  }
  .area_column_vision .list li {
    font-size: 1.4rem;
    line-height: 1.7;
  }
}

/* メリット（2列） */
.merit_data_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  max-width: 920px;
  margin: 50px auto 40px;
  list-style: none;
}

.merit_data_list::after {
  content: "";
  width: calc((100% - 20px) / 3);
}

.merit_data_list li {
  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;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  width: calc((100% - 20px) / 3);
  height: 250px;
  margin-bottom: 10px;
  padding: 27px 20px;
  border-radius: 4px;
  color: #FFF;
  font-size: 1.3rem;
  font-weight: bold;
}

.merit_data_list li .company_data_txt01 {
  width: 100%;
  display: block;
  font-size: 1.8rem;
  text-align: center;
}

.merit_data_list li .company_data_txt01 span {
  display: block;
  padding-top: 5px;
  font-size: 1.3rem;
}

.merit_data_list li .company_data_txt01 em {
  display: block;
  font-style: normal;
  font-size: 1.6rem;
}

.merit_data_list li .company_data_txt02 {
  width: 100%;
  display: block;
  font-size: 1.8rem;
  text-align: center;
}

.merit_data_list li .company_data_txt02 span {
  display: block;
  padding-bottom: 15px;
  font-family: "Oswald", sans-serif !important;
  font-size: 5.6rem;
  line-height: 1;
}

.merit_data_list li.bg_blue01 {
  background-color: #178ce0;
}

.merit_data_list li.bg_blue02 {
  background-color: #0F84D8;
}

.merit_data_list li.bg_blue03 {
  background-color: #097BCC;
}

.merit_data_list li.bg_blue04 {
  background-color: #0070C0;
}

.merit_data_list li.bg_blue05 {
  background-color: #0268B2;
}

.merit_data_list li.bg_blue06 {
  background-color: #0262A7;
}

@media only screen and (max-width: 799px) {
  .merit_data_list {
    max-width: 100%;
    margin: 40px auto 25px;
  }
  .merit_data_list::after {
    width: calc((100% - 10px) / 2);
  }
  .merit_data_list li {
    width: calc((100% - 10px) / 2);
    height: auto;
    padding: 25px 10px;
    font-size: 1rem;
  }
  .merit_data_list li .company_data_txt01 {
    font-size: 1.5rem;
  }
  .merit_data_list li .company_data_txt01 span {
    font-size: 1rem;
  }
  .merit_data_list li .company_data_txt01 em {
    font-size: 1.3rem;
  }
  .merit_data_list li .company_data_txt02 {
    font-size: 1.5rem;
  }
  .merit_data_list li .company_data_txt02 span {
    padding-bottom: 10px;
    font-size: 4.8rem;
  }
}

@media only screen and (max-width: 375px) {
  .merit_data_list li {
    padding: 20px 10px;
  }
  .merit_data_list li .company_data_txt01 {
    font-size: 1.4rem;
  }
  .merit_data_list li .company_data_txt01 em {
    font-size: 1.2rem;
  }
  .merit_data_list li .company_data_txt02 {
    font-size: 1.5rem;
  }
  .merit_data_list li .company_data_txt02 span {
    padding-bottom: 10px;
    font-size: 4.6rem;
  }
}

/* サービスラインアップ 中タイトル */
.service_mid {
  font-size: 1.8rem;
}
@media only screen and (max-width: 799px) {
.service_mid {
  font-size: 1.6rem;
  }
}

/* リスト ol 太字 */
.list-ol01 {
  padding-top: 15px;
}
.list-ol01 li {
  position: relative;
  padding-left: 15px;
  margin-left: 20px;
  line-height: 1.6;
  font-weight: bold;
  font-size: 1.1em;
}

@media only screen and (max-width: 799px) {
  .list-ol01 li {
    font-size: 1.6rem;
  }
}

/* フォントサイズ */
.font_normal_06 {
	font-weight: normal;
	font-size: 0.6em;
  }
  
.font_normal_07 {
	font-weight: normal;
	font-size: 0.7em;
  }

.font_normal_08 {
	font-weight: normal;
	font-size: 0.8em;
  }

.font_normal_09 {
	font-weight: normal;
	font-size: 0.9em;
  }

.font_large_11 {
	font-size: 1.1em;
  }
  
.font_large_12 {
	font-size: 1.2em;
  }

.font_large_13 {
	font-size: 1.3em;
  }
      
.font_large_14 {
	font-size: 1.4em;
  }
  

.font_large_15 {
	font-size: 1.5em;
  }

.font_large_16 {
	font-size: 1.6em;
  }

.font_large_18 {
	font-size: 1.8em;
  }

.font_large_20 {
	font-size: 2em;
  }

.text_blue {
 color: #0070C0;
}

.headline_esg {
  position: relative;
  margin-top: 50px;
  margin-bottom: 50px;
  padding: 0 0 5px 30px;
  font-weight: 700;
  font-size: 2.4rem;
    line-height: 1.1;
}

.headline_esg::before {
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  width: 6px;
  height: 100%;
  background-color: #C83051;
}

@media only screen and (max-width: 799px) {
  .headline_esg {
    margin-bottom: 30px;
    padding: 0 0 0 22px;
    font-size: 1.7rem;
  }
  .headline_esg::before {
    width: 4px;
  }
}

/* コメント欄 */
.area_comment {
  padding: 15px 30px;
  border-radius: 8px;
  border: 1px solid #333;
}

/* 表組 width col */
.table_style_col {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_style_col thead th {
  background-color: #F4F4F4;
  padding: 13px 20px;
  color: #262626;
}

.table_style_col th,
.table_style_col td {
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 20px;
  text-align: left;
}

.table_style_col th {
  font-weight: 700;
  color: #204068;
}

.table_style_col .list li {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
}

.table_style_col .list li::before {
  position: absolute;
  top: 10px;
  left: 5px;
  width: 3px;
  height: 3px;
  background-color: #262626;
  border-radius: 5px;
  content: '';
}

@media only screen and (max-width: 799px) {
  .table_style_col {
    margin-bottom: 30px;
    font-size: 1.5rem;
  }
  .table_style_col thead {
    display: none;
  }
  .table_style_col tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-bottom: 1px solid #D5D5D5;
    padding: 15px 0;
  }
  .table_style_col tr:first-child {
    border-top: 1px solid #D5D5D5;
  }
  .table_style_col th,
  .table_style_col td {
    width: 100%;
    border: 0;
    padding: 0;
  }
  .table_style_col th {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .table_style_col td {
    font-size: 1.6rem;
  }
}

/* ドキュメントボタン 小*/
.document_btn_small {
  background: #0070C0 url(/images/svg/icon_arrow_08.svg) no-repeat right 7px center/7px;
  border-radius: 4px;
  color: #fff !important;
  font-size: 1.3rem;
  font-weight: 400;
  padding: 3px 20px 5px 10px;
  margin: 0 0 0 auto;
  text-decoration: none;
}

.table_btn_right {
  width: 100%;
  border-collapse: collapse;
  background-color: #FFF;
}

.table_btn_right th,
.table_btn_right td {
  border: none;
  text-align: left;
}

.table_btn_right th {
  width: 70%;
  font-weight: 700;
}

.table_btn_right td {
  width: 100%;
}

/* 決算説明レポート */
#contents_ir-rpt{
  display: flex;
  box-sizing: border-box;
}
#main_ir-rpt{
  box-sizing: border-box;
  flex: 1;
}
#sub_ir-rpt {
  box-sizing: border-box;
  width: 350px;
  background: #FFF;
  margin: 60px 0 120px -75px;
  border-left: 1px solid #d3d3d3;
  z-index: 1;
}

.box_ir-rpt{
  position: sticky;
  top: 100px;
  width: 100%;
  height: 80vh;

/* 縦方向のスクロールバーを表示 */
  overflow-y: auto;
  padding-left:15px;
}

.box_ir-rpt p a{
  text-decoration: none;
  color: #333;
}
.list_item_ir-rpt {
  margin-left: 25px;
}
.list_item_ir-rpt li a{
  text-decoration: none;
  color: #333;
}
.mousehover_ir-rpt{
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
.mousehover_ir-rpt:hover {
    text-decoration: none;
    color: #0071C5;
  }
.image_ir-rpt img {
	padding: 0;
	text-align: center;
	width: 100%;
	border: 1px solid #d3d3d3;
}


/* サイバープロテクション動画 */
.vid_contents {
	width: 100%;
	text-align: center;
	margin: auto;
}
.vid_main {
	width: 100%;
	max-width: auto;
	border: solid 3px #F5F5F5;
}

/* サイバープロテクション */
.s10{
    padding: 50px 0 70px 0;
    background-color: #FFF;
    display: flex;
    justify-content: center;
    gap: 36.5px;
}
.s10_col{
    width: 310px;
    height: 100%;
    background-color: #EEF5FB;
    border-radius: 21px;
    padding: 40px 23px 16px 23px;
    cursor: pointer;
    text_decoration: none !important;
}
.s10_col_t{
    font-size: 20px;
    color: #042984;
    font-weight: 600;
    text-align: center;
    margin-bottom: 30px;
}
.s10_col img{
    height: 101px;
    margin: 0 auto;
    display: block;
}
.s10_col_sub{
    font-size: 15px;
    line-height: 26px;
    margin-top: 30px;
    color: #024CB4;
    font-weight: 500;
}
.s10_col_sub_center{
    font-size: 15px;
    line-height: 26px;
    margin-top: 30px;
    color: #024CB4;
    font-weight: 500;
    text-align: center;
    text-decoration: none !important;;
}

/* 監査・コンサルサービスリスト */
.services_list_eva-con {
  max-width: 1100px;
  margin: 0 auto 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  list-style: none;
}

.services_list_eva-con li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 35px;
}

.services_list_eva-con li::after {
  position: absolute;
  content: '';
  right: 0;
  bottom: 0;
  left: 5px;
  height: 1px;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  width: calc(100% - 5px);
  background-color: #717171;
}

.services_list_eva-con li .services_title {
  margin-bottom: 10px;
  font-size: 1.8rem;
  font-weight: bold;
}

.services_list_eva-con li .services_title a {
  display: block;
  padding-left: 28px;
  color: #0070C0;
  position: relative;
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s;
}

.services_list_eva-con li .services_title a::before {
  background: url("/images/svg/icon_arrow_04.svg") no-repeat 0 0/8px;
  content: "";
  height: 13px;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) translateX(0);
          transform: translateY(-50%) translateX(0);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  width: 8px;
}

.services_list_eva-con li .services_title a span {
  font-size: 1.6rem;
  letter-spacing: -1px;
}

.services_list_eva-con li .services_txt {
  height: 100%;
  margin-left: 4px;
  padding: 0 10px 25px 24px;
  color: #262626;
  font-size: 1.6rem;
  position: relative;
}

.services_list_eva-con li .services_txt::before {
  background-color: #717171;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  -webkit-transform-origin: center top 0;
          transform-origin: center top 0;
  top: 0;
  width: 1px;
}

@media only screen and (min-width: 1025px) {
  .services_list_eva-con li:hover {
    cursor: pointer;
  }
  .services_list_eva-con li:hover .services_title a {
    color: #219DF5;
  }
  .services_list_eva-con li:hover .services_title a::before {
    -webkit-transform: translateY(-50%) translateX(10px);
            transform: translateY(-50%) translateX(10px);
  }
  .services_list_eva-con li:hover .services_txt::before {
    -webkit-animation: arrow-line-down .5s;
            animation: arrow-line-down .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  .services_list_eva-con li:hover::after {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-animation: arrow-line-right .5s;
            animation: arrow-line-right .5s;
    -webkit-animation-delay: .5s;
            animation-delay: .5s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
  }
  @-webkit-keyframes arrow-line-down {
    from {
      -webkit-transform: scaleY(0);
              transform: scaleY(0);
    }
    to {
      -webkit-transform: scaleY(1);
              transform: scaleY(1);
    }
  }
  @keyframes arrow-line-down {
    from {
      -webkit-transform: scaleY(0);
              transform: scaleY(0);
    }
    to {
      -webkit-transform: scaleY(1);
              transform: scaleY(1);
    }
  }
  @-webkit-keyframes arrow-line-right {
    from {
      -webkit-transform: scaleX(0);
              transform: scaleX(0);
    }
    to {
      -webkit-transform: scaleX(1);
              transform: scaleX(1);
    }
  }
  @keyframes arrow-line-right {
    from {
      -webkit-transform: scaleX(0);
              transform: scaleX(0);
    }
    to {
      -webkit-transform: scaleX(1);
              transform: scaleX(1);
    }
  }
}

@media only screen and (max-width: 1200px) {
  .services_list_eva-con::after {
    content: "";
    width: calc((100% - 80px) / 3);
  }
  .services_list_eva-con li {
    width: calc((100% - 80px) / 3);
  }
}

@media only screen and (max-width: 799px) {
  .services_list_eva-con::after {
    content: "";
    width: 100%;
  }
  .services_list_eva-con li {
    width: 100%;
    margin-bottom: 30px;
  }
  .services_list_eva-con li .services_title a {
    padding-left: 25px;
  }
  .services_list_eva-con li .services_txt {
    font-size: 1.5rem;
    min-height: auto;
    padding: 0 10px 25px 25px;
  }
}

.container_eva-con {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: auto;
  margin: auto;
}

@media screen and (max-width: 799px) {
  .container_eva-con {
    width: 100%;
    max-width: auto;
  }
}

.item_eva-con {
  background: #fff;
  width: calc((100% - 70px) / 3);
  max-width: auto;
}

@media screen and (max-width: 799px) {
  .item_eva-con {
    width: 100%;
    max-width: auto;
    margin: 0 auto;
    margin-bottom: 10px;
  }
}

/* インシデント平時 */
.table_inc_pt {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  font-size: 1.6rem;
}

.table_inc_pt th {
  padding: 7px 10px;
  text-align: left;
  font-weight: 400;
  color: #fff;
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  background-color: #156CA7;
}

.table_inc_pt td {
  borde: none;
  padding: 7px 10px;
  text-align: left;
  font-weight: normal;
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
}

.table_inc_pt_plan {
  width: 100%;
  margin-bottom: 50px;
  border-collapse: collapse;
  border-top: 1px solid #D5D5D5;
  border-bottom: 1px solid #D5D5D5;
  background-color: #FFF;
  font-size: 1.6rem;
}

.table_inc_pt_plan th,
.table_inc_pt_plan td {
  borde: none;
  padding: 7px 10px;
  text-align: left;
  font-weight: 700;
}

.table_inc_pt_plan th {
  color: #204068;
}


.area_block_inc_pt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 60px 0 40px;
  background-color: #EEF5FB;
}

.area_block_inc_pt .item {
  position: relative;
  width: 32%;
  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;
  padding: 0 15px 0 15px;
  margin: 0 35px 0 35px;
  text-decoration: none;
}

.area_block_inc_pt .icon {
  margin-bottom: 15px;
}

.area_block_inc_pt .icon img {
  display: block;
  height: 100%;
}

.area_block_inc_pt .ttl {
  color: #0070C0;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
}

@media only screen and (max-width: 1200px) {
  .area_block_inc_pt .item {
    width: 25%;
  }
}

@media only screen and (max-width: 799px) {
  .area_block_inc_pt {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 55px 0 20px;
  }
  .area_block_inc_pt .item {
    width: 90%;
    margin-bottom: 15px;
    padding: 0 5px 15px 5px;
  }
  .area_block_inc_pt .item::after {
    width: 33px;
    height: 33px;
  }
  .area_block_inc_pt .ttl {
    font-size: 1.6rem;
  }
  .area_block_inc_pt .ttl .sp_size {
    font-size: 1.6rem;
  }
  .area_block_inc_pt .icon {
    height: 60px;
    margin-bottom: 10px;
  }
}

.container_inc_pt_top {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: auto;
}

@media screen and (max-width: 799px) {
  .container_inc_pt_top {
    width: 100%;
    max-width: auto;
  }
}

.item_inc_pt_top_L {
  background: none;
  width: calc(55%);
  max-width: auto;
}

.item_inc_pt_top_R {
  background: none;
  width: calc(45%);
  max-width: auto;
}

@media screen and (max-width: 799px) {
  .item_inc_pt_top_L .item_inc_pt_top_R {
    width: 100%;
    max-width: auto;
    margin: 0 auto;
    margin-bottom: 10px;
  }
}

.container_inc_pt {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: auto;
}

@media screen and (max-width: 799px) {
  .container_inc_pt {
    width: 100%;
    max-width: auto;
  }
}

.item_inc_pt {
  background: #fff;
  width: calc((100% - 70px) / 2);
  max-width: auto;
}

@media screen and (max-width: 799px) {
  .item_inc_pt {
    width: 100%;
    max-width: auto;
    margin: 0 auto;
    margin-bottom: 10px;
  }
}

.item_inc_pt_plan {
  background: #fff;
  width: calc((100% - 70px) / 2);
  max-width: auto;
}

@media screen and (max-width: 799px) {
  .item_inc_pt_plan {
    width: 100%;
    max-width: auto;
    margin: 0 auto;
    margin-bottom: 10px;
  }
}

.circle_inc_pt {
	display: inline-block;
	width: 240px;
	height: 240px;
	border-radius: 50%;
	background: #fff;
	font-size: 2.8em;
	margin: -20px 0 0 150px;
	font-weight: 700;
	text-align:center;
	color: #0070C0;
	opacity: 0.9;
	padding-top: 85px;
}

.btn_common_inc_pt {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 290px;
  padding: 12px 10px;
  border-radius: 6px;
  background-color: #0070C0;
  color: #FFF;
  text-decoration: none !important;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
}

.btn_common_inc_pt .box_top {
  border-bottom: 1px solid #FFF;
  text-decoration: none;
}

.btn_common_inc_pt .box_top.tel {
  pointer-events: none;
  text-decoration: none;
}

.btn_common_inc_pt .txt_top {
  display: inline-block;
  min-height: 45px;
  padding: 2px 8px 8px;
  font-size: 2rem;
  font-weight: 700;
  color: #FFF;
  text-decoration: none;
}

.btn_common_inc_pt .txt_bot {
  position: relative;
  padding: 7px 40px 1px 43px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
  text-decoration: none;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  letter-spacing: 0.2rem;
}

.btn_common_inc_pt .txt_bot::before {
  position: absolute;
  content: '';
  left: 4px;
  top: 11px;
  width: 28px;
  height: 22px;
  background: url("/images/svg/icon_mail.svg") no-repeat 0 50%;
  background-size: 28px auto;
}

.btn_common_inc_pt .txt_bot::after {
  position: absolute;
  content: '';
  right: 0;
  top: 10px;
  width: 26px;
  height: 26px;
  background: url("/images/svg/icon_arrow_01.svg") no-repeat 0 50%;
  background-size: 26px 26px;
}

.btn_common_inc_pt:hover {
  color: #FFF;
}

@media only screen and (min-width: 1025px) {
  .btn_common_inc_pt a:hover {
    opacity: 0.7;
  }
  .btn_common_inc_pt a.txt_bot:hover {
    opacity: 0.7;
  }
}

@media only screen and (max-width: 799px) {
  .btn_common_inc_pt {
    max-width: auto;
    width: 100%;
    padding: 7px 15px;
  }
  .btn_common_inc_pt _inc_pt.txt_bot::after {
    right: 5px;
  }
  .btn_common_inc_pt .txt_bot::before {
    left: 0px;
  }

@media only screen and (max-width: 374px) {
  .btn_common_inc_pt .txt_top {
    font-size: 1.7rem;
  }
  .btn_common_inc_pt .txt_bot {
    padding-bottom: 5px;
    font-size: 1.6rem;
  }
  .btn_common_inc_pt.custom .txt_bot {
    padding-left: 40px;
    letter-spacing: 0;
  }
}

@media only screen and (min-width: 1025px) {
  a.btn_common_inc_pt:hover {
    opacity: 0.7;
  }
}

.inc_pt_subttl {
 background-color: #fff;
 color: #0070C0;
 padding-left: 5px;
 margin-top: 5px;
}

.txt_red_opa {
 background-color: #fff !important;
 opacity: 0.9 !important;
 color: #EA0D19 !important;
 font-size: 1.3rem !important;
 font-weight: 700 !important;
 margin-bottom: 10px !important;
}

.txt_blue_opa {
 background-color: #fff !important;
 opacity: 0.9 !important;
 color: #0070C0 !important;
 font-size: 1.3rem !important;
 font-weight: 700 !important;
 margin-bottom: 10px !important;
}


/* マウスホバー */
.mousehover{
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
.mousehover:hover {
    opacity: .75;
  }

/* 点滅 */
.box1{
  width: 50px;
  height: 50px;
  background: #fff;

  animation: flash 1s ease infinite;
}
@keyframes flash {
  0%,100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}



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