@charset "UTF-8";
/*======================================
	事業紹介
======================================*/
#businessList h2 {
  width: 100%;
  background: rgba(227, 243, 251, 0.8);
  color: #006bb4;
  letter-spacing: .2em;
  font-weight: bold;
}
#businessList h2 figure {
  position: relative;
  overflow: hidden;
}
#businessList h2 figure img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  /*IE対策*/
}
@media screen and (min-width: 751px) {
  #businessList h2 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
  #businessList h2 span {
    font-size: 24px;
    padding-left: 45px;
  }
  #businessList h2 figure {
    width: 190px;
    height: 125px;
  }
  #businessList h2 figure::after {
    position: absolute;
    content: "";
    background: rgba(227, 243, 251, 0.8);
    width: 25px;
    height: 100%;
    left: 0;
    top: 0;
  }
}
@media screen and (max-width: 750px) {
  #businessList h2 {
    margin-bottom: 30px;
    text-align: center;
  }
  #businessList h2 span {
    font-size: 1.4rem;
    padding: 20px;
    display: block;
  }
  #businessList h2 figure {
    width: 100%;
    height: 0;
    padding-bottom: 65.67%;
  }
}
#businessList p {
  line-height: 1.75;
  letter-spacing: .1em;
  text-align: justify;
  text-justify: inter-ideograph;
  text-justify: inter-character;
}
#businessList .recruitBtn .btn {
  width: 100%;
}
#businessList .recruitBtn .btn a {
  background: #009189;
  border: solid 1px #0d357c;
  color: #fff;
  text-align: left;
}
#businessList .recruitBtn .btn a::before {
  background-image: url("../../add_img/recruit/arrow_right_white.svg");
}
#businessList .recruitBtn .btn a::after {
  position: absolute;
  content: "一覧を見る";
}
#businessList .recruitBtn .btn a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (min-width: 751px) {
  #businessList .recruitBtn {
    margin-top: 80px;
  }
  #businessList .recruitBtn .btn a {
    padding-right: 0;
    padding-left: 8%;
    font-size: 18px;
  }
  #businessList .recruitBtn .btn a::after {
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 8%;
    font-size: 18px;
  }
}
@media screen and (max-width: 750px) {
  #businessList .recruitBtn {
    margin-top: 60px;
  }
  #businessList .recruitBtn .btn a {
    padding: 4.8vw 0 11vw 0;
    text-align: center;
  }
  #businessList .recruitBtn .btn a::before {
    top: auto;
    bottom: 6vw;
    right: 30%;
  }
  #businessList .recruitBtn .btn a::after {
    bottom: 5vw;
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
#businessList .back > a {
  color: #0d357c;
  letter-spacing: .2em;
  position: relative;
  -moz-transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
  -o-transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
  -webkit-transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71);
  -webkit-transition-delay: 0s;
  transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
}
#businessList .back > a::before {
  position: absolute;
  content: "";
  top: 50%;
  background-image: url("../../add_img/recruit/arrow_right_blue.svg");
  width: 2rem;
  height: 0.3rem;
  -moz-transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
  -o-transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
  -webkit-transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71);
  -webkit-transition-delay: 0s;
  transition: all 0.3s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
  -moz-transform: translateX(-50%) scale(-1, 1);
  -ms-transform: translateX(-50%) scale(-1, 1);
  -webkit-transform: translateX(-50%) scale(-1, 1);
  transform: translateX(-50%) scale(-1, 1);
}
#businessList .back > a:hover::before {
  left: 0.875rem;
}
#businessList .back ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
}
#businessList .back ul li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: column wrap;
  flex-flow: column wrap;
  -webkit-justify-content: center;
  justify-content: center;
}
#businessList .back ul li a {
  color: #006bb4;
  line-height: 1.3;
  text-align: center;
  -moz-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  -webkit-transition: all, 0.3s;
  transition: all, 0.3s;
}
#businessList .back ul li a figure {
  width: 32px;
  height: 30px;
  overflow: hidden;
  margin: 0 auto 5px;
  position: relative;
}
#businessList .back ul li a figure img {
  object-fit: contain;
  font-family: 'object-fit: contain;';
  /*IE対策*/
}
#businessList .back ul li a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (min-width: 751px) {
  #businessList .back {
    margin-top: 80px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
  #businessList .back > a {
    display: block;
    font-size: 18px;
    padding-left: 60px;
  }
  #businessList .back > a::before {
    left: 1.25rem;
  }
  #businessList .back ul {
    width: 70%;
  }
  #businessList .back ul li {
    border-right: solid 1px #ccc;
    width: 14%;
    height: 70px;
  }
  #businessList .back ul li:first-child {
    border-left: solid 1px #ccc;
  }
  #businessList .back ul li a {
    font-size: 10px;
  }
}
@media screen and (max-width: 1160px) {
  #businessList .back > a {
    display: block;
    font-size: 1.8rem;
    padding-left: 4rem;
  }
}
@media screen and (max-width: 750px) {
  #businessList .back {
    text-align: center;
    margin-top: 60px;
  }
  #businessList .back > a {
    display: inline-block;
    margin: 0 auto 40px;
    font-size: 1.4rem;
    padding-left: 60px;
  }
  #businessList .back > a::before {
    left: 2.5rem;
  }
  #businessList .back ul {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 100%;
  }
  #businessList .back ul li {
    width: 32%;
    height: 30vw;
    margin-bottom: 2vw;
    background: #eceded;
  }
  #businessList .back ul li a {
    display: block;
  }
}

/* 事業紹介 TOP
---------------------*/
.businessList {
  margin-top: 120px;
}
@media screen and (max-width: 750px) {
  .businessList {
    margin-top: 60px;
  }
}
.businessList .container > p {
  margin-bottom: 70px;
}
@media screen and (max-width: 750px) {
  .businessList .container > p {
    margin-bottom: 30px;
  }
}
.businessList .container ul li {
  position: relative;
}
.businessList .container ul li figure {
  position: relative;
  overflow: hidden;
}
.businessList .container ul li figure img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  /*IE対策*/
}
.businessList .container ul li .btn_blue {
  position: absolute;
}
.businessList .container ul li .btn_blue h3 {
  font-weight: 500;
  color: #000;
}
.businessList .container ul li .btn_blue h3 span {
  display: block;
  text-transform: uppercase;
  font-weight: bold;
  color: #3496c9;
}
.businessList .container ul li .btn_blue a {
  text-align: center;
  padding-right: 0;
}
.businessList .container ul li .btn_blue a::before {
  top: auto;
  left: 50%;
  right: auto;
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}
.businessList .container ul li .btn_blue a:hover::before {
  left: calc(50% + .375rem);
}
.businessList .container ul li:nth-child(4) .btn_blue h3 span, .businessList .container ul li:nth-child(7) .btn_blue h3 span {
  color: #3496c9;
}
.businessList .container ul li:nth-child(2) .btn_blue h3 span, .businessList .container ul li:nth-child(5) .btn_blue h3 span {
  color: #14a69b;
}
.businessList .container ul li:nth-child(3n) .btn_blue h3 span {
  color: #659e34;
}
@media screen and (min-width: 751px) {
  .businessList .container ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
  }
  .businessList .container ul li {
    width: 48%;
  }
  .businessList .container ul li figure {
    width: 100%;
    height: 280px;
    margin-bottom: 60px;
  }
  .businessList .container ul li .btn_blue {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    background: rgba(255, 255, 255, 0.8);
    left: 2%;
    top: 240px;
    width: 96%;
    height: 80px;
  }
  .businessList .container ul li .btn_blue h3 {
    padding-top: 10px;
    padding-left: 20px;
    font-size: 24px;
  }
  .businessList .container ul li .btn_blue h3 span {
    font-size: 18px;
    margin-top: 10px;
  }
  .businessList .container ul li a {
    width: 23%;
    font-size: 15px;
  }
  .businessList .container ul li a::before {
    bottom: 20px;
  }
  .businessList .container ul li:first-child {
    width: 100%;
  }
  .businessList .container ul li:first-child .btn_blue {
    width: 44%;
  }
  .businessList .container ul li:not(:nth-last-child(-n+2)) {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 750px) {
  .businessList .container ul li {
    width: 100%;
  }
  .businessList .container ul li figure {
    width: 50%;
    height: 0;
    padding-bottom: 29.16%;
    margin-bottom: 45px;
  }
  .businessList .container ul li .btn_blue {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    right: 0;
    top: 0;
    width: 73.8%;
  }
  .businessList .container ul li .btn_blue h3 {
    background: rgba(255, 255, 255, 0.8);
    display: block;
    width: 100%;
    padding: 10px;
    font-size: 1.4rem;
    text-align: left;
  }
  .businessList .container ul li .btn_blue h3 span {
    font-size: 1rem;
    margin-top: 5px;
  }
  .businessList .container ul li a {
    width: 44.4%;
    height: 70px;
    font-size: 1rem;
  }
  .businessList .container ul li a::before {
    bottom: 20px;
  }
  .businessList .container ul li:first-child figure {
    width: 100%;
    padding-bottom: 35.82%;
    margin-bottom: 65px;
  }
  .businessList .container ul li:first-child .btn_blue {
    width: 100%;
    display: block;
    top: calc(35.82% - 16px);
  }
  .businessList .container ul li:first-child .btn_blue h3 {
    width: 73.8%;
  }
  .businessList .container ul li:first-child .btn_blue a {
    width: 20%;
    height: 40px;
    font-size: .7rem;
    position: absolute;
    right: 0;
    top: calc(35.82% + 16px);
    padding-top: 2vw;
  }
  .businessList .container ul li:first-child .btn_blue a::before {
    bottom: 10px;
  }
  .businessList .container ul li:not(:last-child) {
    margin-bottom: 50px;
  }
}

/* 指定管理
---------------------*/
@media screen and (min-width: 751px) {
  .facility {
    margin-top: 80px;
  }
}
@media screen and (max-width: 750px) {
  .facility {
    margin-top: 15px;
  }
}
.facility .map h3 {
  font-weight: bold;
  color: #006bb4;
  line-height: 1.75;
}
@media screen and (min-width: 751px) {
  .facility .map {
    background: url("../../add_img/corporate/business/japanesemap-10015.png") no-repeat left top;
    -moz-background-size: 67% auto;
    -o-background-size: 67% auto;
    -webkit-background-size: 67% auto;
    background-size: 67% auto;
    margin-top: 40px;
    padding-top: 25px;
    padding-bottom: 100px;
    border-bottom: solid 1px #000;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .facility .map > div h3 {
    font-size: 24px;
    letter-spacing: .2em;
  }
  .facility .map > div:first-child {
    width: 38%;
  }
  .facility .map > div:first-child h3 {
    margin-bottom: 30px;
  }
  .facility .map > div:last-child {
    width: 48%;
    margin-top: 70px;
  }
  .facility .map > div:last-child h3 {
    text-align: center;
    margin-bottom: 50px;
  }
  .facility .map > div:last-child .blue_box {
    width: 100%;
    background: rgba(227, 243, 251, 0.8);
    padding: 20px;
  }
  .facility .map > div:last-child .blue_box:not(:last-child) {
    margin-bottom: 25px;
  }
  .facility .map > div:last-child .blue_box h5 {
    background: #006bb4;
    color: #fff;
    display: inline-block;
    margin-bottom: 20px;
    margin-left: -40px;
    padding: 0 20px;
    height: 40px;
    line-height: 40px;
    position: relative;
    font-size: 18px;
    letter-spacing: .2em;
  }
  .facility .map > div:last-child .blue_box h5::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 0 0 5px;
    border-color: transparent transparent transparent #006bb4;
    top: 0;
    right: -5px;
  }
  .facility .map > div:last-child .blue_box h5 span {
    position: relative;
    z-index: 2;
  }
  .facility .map > div:last-child .blue_box .flex_box {
    width: 100%;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .facility .map > div:last-child .blue_box .flex_box ul:last-child {
    width: 45%;
  }
  .facility .map > div:last-child .blue_box .flex_box ul li {
    font-size: 14px;
  }
  .facility .map > div:last-child .blue_box .flex_box ul li:not(:last-child) {
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 750px) {
  .facility .map div:last-child {
    display: none;
  }
  .facility .map div h3 {
    font-size: 1.4rem;
    margin-bottom: 30px;
  }
}

.tabs .tab_list .tab {
  letter-spacing: .2em;
  display: block;
  text-align: center;
  color: #fff;
  font-weight: bold;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  cursor: pointer;
  position: relative;
}
.tabs .tab_list .tab::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  -moz-transform: scaleY(1.15) perspective(1.4em) rotateX(2deg);
  -ms-transform: scaleY(1.15) perspective(1.4em) rotateX(2deg);
  -webkit-transform: scaleY(1.15) perspective(1.4em) rotateX(2deg);
  transform: scaleY(1.15) perspective(1.4em) rotateX(2deg);
  transform-origin: bottom left;
  left: 0;
  top: 0;
  background: #006bb4;
  z-index: -1;
}
.tabs .tab_list .tab.select {
  color: #006bb4;
}
.tabs .tab_list .tab.select::before {
  border-top: solid 1px #006bb4;
  border-left: solid 1px #006bb4;
  border-right: solid 1px #006bb4;
  background: #fff;
}
.tabs .tab_list.bottom .tab::before {
  -moz-transform: scaleY(1.15) perspective(1.8em) rotateX(-2deg);
  -ms-transform: scaleY(1.15) perspective(1.8em) rotateX(-2deg);
  -webkit-transform: scaleY(1.15) perspective(1.8em) rotateX(-2deg);
  transform: scaleY(1.15) perspective(1.8em) rotateX(-2deg);
  transform-origin: top left;
}
.tabs .tab_list.bottom .tab.select::before {
  border-bottom: solid 1px #006bb4;
  border-top: none;
}
.tabs .contents {
  position: relative;
}
.tabs .contents::before, .tabs .contents::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background: #006bb4;
  left: 0;
  z-index: -3;
}
.tabs .contents::before {
  top: -1px;
}
.tabs .contents::after {
  bottom: -1px;
}
.tabs .contents .tab_content {
  width: 100%;
  height: 0;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  overflow: hidden;
  -moz-transition: all 0.2s ease-out 0.1s;
  -o-transition: all 0.2s ease-out 0.1s;
  -webkit-transition: all 0.2s ease-out;
  -webkit-transition-delay: 0.1s;
  transition: all 0.2s ease-out 0.1s;
}
.tabs .contents .tab_content.is_show {
  height: auto;
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  position: relative;
}
.tabs .contents .tab_content.is_show::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #fff;
  z-index: -2;
}
.tabs .contents .tab_content h4 {
  color: #006bb4;
  font-weight: bold;
  letter-spacing: .2em;
  text-align: center;
  position: relative;
}
.tabs .contents .tab_content h4::after {
  position: absolute;
  content: "";
  width: 100%;
  background: #c8ebeb;
  z-index: -1;
  left: 0;
}
.tabs .contents .tab_content ul li .left_side h6 {
  background: #006bb4;
  color: #fff;
}
.tabs .contents .tab_content ul li .left_side .image {
  display: inline-block;
  position: relative;
}
.tabs .contents .tab_content ul li .left_side .image::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: #e4e5e5;
}
.tabs .contents .tab_content ul li .left_side .image figure {
  position: relative;
  overflow: hidden;
}
.tabs .contents .tab_content ul li .left_side .image figure img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  /*IE対策*/
}
.tabs .contents .tab_content ul li .right_side p {
  line-height: 2;
}
.tabs .contents .tab_content ul li .right_side .btn_blue {
  width: 100%;
}
.tabs .contents .tab_content ul li .right_side .btn_blue a {
  background: transparent;
  text-align: left;
  position: relative;
}
.tabs .contents .tab_content ul li .right_side .btn_blue a:not(:last-child) {
  margin-bottom: 15px;
}
.tabs .contents .tab_content ul li .right_side .btn_blue a::before {
  top: auto;
  bottom: 10px;
}
.tabs .contents .tab_content ul li .right_side .btn_blue a::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  -moz-transform: scaleY(1.15) perspective(3.6em) rotateX(2deg);
  -ms-transform: scaleY(1.15) perspective(3.6em) rotateX(2deg);
  -webkit-transform: scaleY(1.15) perspective(3.6em) rotateX(2deg);
  transform: scaleY(1.15) perspective(3.6em) rotateX(2deg);
  transform-origin: bottom left;
  left: 0;
  top: 0;
  background: #006bb4;
  z-index: -1;
}
@media screen and (min-width: 751px) {
  .tabs {
    margin-top: 60px;
  }
  .tabs .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .tabs .tab_list .tab {
    width: 24%;
    height: 50px;
    line-height: 50px;
  }
  .tabs .contents .tab_content.is_show {
    padding: 75px 0;
  }
  .tabs .contents .tab_content h4 {
    font-size: 21px;
    margin-bottom: 90px;
  }
  .tabs .contents .tab_content h4::after {
    height: 20px;
    bottom: -15px;
  }
  .tabs .contents .tab_content ul li {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .tabs .contents .tab_content ul li:not(:last-child) {
    margin-bottom: 50px;
  }
  .tabs .contents .tab_content ul li .left_side {
    width: 50%;
  }
  .tabs .contents .tab_content ul li .left_side h6 {
    display: inline-block;
    font-size: 21px;
    padding: 10px 10px 25px 10px;
  }
  .tabs .contents .tab_content ul li .left_side small {
    font-size: 14px;
    margin-left: .5em;
  }
  .tabs .contents .tab_content ul li .left_side .image {
    margin-left: 30px;
    margin-top: -15px;
  }
  .tabs .contents .tab_content ul li .left_side .image::before {
    right: -15px;
    bottom: -15px;
  }
  .tabs .contents .tab_content ul li .left_side .image figure {
    width: 450px;
    height: 300px;
  }
  .tabs .contents .tab_content ul li .right_side {
    width: 47.5%;
    margin-top: 50px;
  }
  .tabs .contents .tab_content ul li .right_side p {
    margin-bottom: 50px;
  }
  .tabs .contents .tab_content ul li .right_side .btn_blue a {
    height: 35px;
    line-height: 30px;
    font-size: 14px;
    padding: 0 0 0 2em;
  }
}
@media screen and (max-width: 750px) {
  .tabs {
    margin-top: 30px;
  }
  .tabs .tab_list {
    padding-top: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch;
  }
  .tabs .tab_list .tab {
    display: inline-block;
    width: 50%;
    height: 40px;
    line-height: 40px;
    font-size: 80%;
  }
  .tabs .tab_list .tab:nth-child(odd) {
    width: 35%;
    height: 42px;
    line-height: 42px;
  }
  .tabs .tab_list .tab:nth-child(odd)::before {
    -moz-transform: scaleY(1.15) perspective(1em) rotateX(2deg);
    -ms-transform: scaleY(1.15) perspective(1em) rotateX(2deg);
    -webkit-transform: scaleY(1.15) perspective(1em) rotateX(2deg);
    transform: scaleY(1.15) perspective(1em) rotateX(2deg);
  }
  .tabs .tab_list.bottom {
    padding-top: 0;
    padding-bottom: 10px;
  }
  .tabs .tab_list.bottom .tab:nth-child(odd)::before {
    -moz-transform: scaleY(1.15) perspective(1em) rotateX(-2deg);
    -ms-transform: scaleY(1.15) perspective(1em) rotateX(-2deg);
    -webkit-transform: scaleY(1.15) perspective(1em) rotateX(-2deg);
    transform: scaleY(1.15) perspective(1em) rotateX(-2deg);
  }
  .tabs .contents .tab_content.is_show {
    padding: 30px 0;
  }
  .tabs .contents .tab_content h4 {
    font-size: 1.2rem;
    margin-bottom: 50px;
  }
  .tabs .contents .tab_content h4::after {
    height: 15px;
    bottom: -10px;
  }
  .tabs .contents .tab_content ul li {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .tabs .contents .tab_content ul li:not(:last-child) {
    margin-bottom: 60px;
  }
  .tabs .contents .tab_content ul li .left_side {
    width: 100%;
    position: relative;
    text-align: center;
  }
  .tabs .contents .tab_content ul li .left_side h6 {
    text-align: left;
    font-size: 1.2rem;
    padding: 10px 10px 30px 10px;
    margin-bottom: 20px;
  }
  .tabs .contents .tab_content ul li .left_side small {
    position: absolute;
    margin-left: .5em;
    right: 5px;
    top: 30px;
    color: #fff;
  }
  .tabs .contents .tab_content ul li .left_side .image {
    width: 90%;
    margin: 0 auto 20px;
  }
  .tabs .contents .tab_content ul li .left_side .image::before {
    right: -10px;
    bottom: -10px;
  }
  .tabs .contents .tab_content ul li .left_side .image figure {
    width: 100%;
    height: 0;
    padding-bottom: 66.6%;
  }
  .tabs .contents .tab_content ul li .right_side {
    width: 100%;
  }
  .tabs .contents .tab_content ul li .right_side p {
    margin-bottom: 30px;
  }
  .tabs .contents .tab_content ul li .right_side .btn_blue a {
    font-size: 90%;
    height: 45px;
    line-height: 40px;
    text-align: left;
    padding: 0 0 0 1em;
  }
}

/* 事業紹介下層ページ
---------------------*/
@media screen and (min-width: 751px) {
  .service_detail {
    margin-top: 80px;
  }
}
@media screen and (max-width: 750px) {
  .service_detail {
    margin-top: 15px;
  }
}
@media screen and (min-width: 751px) {
  .service_detail .introduction {
    padding: 90px 0;
    margin-top: 120px;
    position: relative;
  }
  .service_detail .introduction::before {
    position: absolute;
    content: "";
    width: 47%;
    height: 540px;
    background: rgba(0, 107, 180, 0.1);
    top: 0;
    -moz-transform: skewX(10deg);
    -ms-transform: skewX(10deg);
    -webkit-transform: skewX(10deg);
    transform: skewX(10deg);
    left: -10%;
    z-index: -1;
  }
}
@media screen and (max-width: 750px) {
  .service_detail .introduction {
    padding-bottom: 40px;
  }
}
.service_detail .introduction .flex_box figure {
  height: 0;
  position: relative;
  overflow: hidden;
}
.service_detail .introduction .flex_box figure img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  /*IE対策*/
}
.service_detail .introduction .flex_box div h3 {
  color: #006bb4;
  font-weight: bold;
  line-height: 1.75;
}
@media screen and (min-width: 751px) {
  .service_detail .introduction .flex_box {
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .service_detail .introduction .flex_box:nth-child(even) {
    margin-top: 145px;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .service_detail .introduction .flex_box figure {
    width: 48%;
    padding-bottom: 36%;
  }
  .service_detail .introduction .flex_box div {
    width: 48%;
  }
  .service_detail .introduction .flex_box div h3 {
    font-size: 24px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 750px) {
  .service_detail .introduction .flex_box {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-top: 30px;
  }
  .service_detail .introduction .flex_box:first-child {
    position: relative;
  }
  .service_detail .introduction .flex_box:first-child::before {
    position: absolute;
    content: "";
    width: 57%;
    height: 250px;
    background: rgba(0, 107, 180, 0.1);
    bottom: 50px;
    -moz-transform: skewX(10deg);
    -ms-transform: skewX(10deg);
    -webkit-transform: skewX(10deg);
    transform: skewX(10deg);
    left: -20%;
    z-index: -1;
  }
  .service_detail .introduction .flex_box figure {
    width: 100%;
    padding-bottom: 74.6%;
    margin-top: 60px;
  }
  .service_detail .introduction .flex_box div {
    width: 100%;
  }
  .service_detail .introduction .flex_box div h3 {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
}

.service_point {
  position: relative;
}
.service_point h4 {
  position: absolute;
  display: inline-block;
  background: #0d357c;
  color: #fff;
  letter-spacing: .1em;
  text-align: center;
  font-weight: bold;
  left: 50%;
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  top: 0;
}
.service_point .point {
  border: solid 2px #0d357c;
}
.service_point .point .flex_box figure {
  height: 0;
  position: relative;
  overflow: hidden;
}
.service_point .point .flex_box figure img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  /*IE対策*/
}
.service_point .point .flex_box .layer {
  position: relative;
}
.service_point .point .flex_box .layer figure {
  position: absolute;
  width: 57%;
  padding-bottom: 42.85%;
}
.service_point .point .flex_box .layer figure:first-child {
  left: 0;
  top: 0;
}
.service_point .point .flex_box .layer figure:nth-child(2) {
  right: 0;
  bottom: 0;
  z-index: 2;
}
@media screen and (min-width: 751px) {
  .service_point {
    padding-top: 25px;
  }
  .service_point h4 {
    height: 50px;
    line-height: 50px;
    font-size: 21px;
    padding: 0 20px;
  }
  .service_point .point {
    padding: 40px;
  }
  .service_point .point .flex_box {
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .service_point .point .flex_box figure {
    width: 48%;
    padding-bottom: 32%;
  }
  .service_point .point .flex_box p {
    width: 45%;
  }
  .service_point .point .flex_box:last-child {
    margin-top: 40px;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .service_point .point .flex_box:last-child .layer {
    width: 48%;
    padding-bottom: 32%;
  }
}
@media screen and (max-width: 750px) {
  .service_point {
    padding-top: 15px;
  }
  .service_point h4 {
    height: 30px;
    line-height: 30px;
    padding: 0 20px;
  }
  .service_point .point {
    padding: 20px 10px 10px;
  }
  .service_point .point .flex_box {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .service_point .point .flex_box figure {
    width: 100%;
    padding-bottom: 66.66%;
    margin-top: 20px;
  }
  .service_point .point .flex_box p {
    width: 100%;
  }
  .service_point .point .flex_box:last-child p {
    margin-top: 20px;
  }
  .service_point .point .flex_box:last-child .layer {
    width: 100%;
    padding-bottom: 66.66%;
  }
}

/* 個人情報保護方針 */
.mt02 {
  margin-top: 2rem !important;
}
.privacy .privacy_detail {
  line-height: 1.75;
  letter-spacing: .1em;
}
.privacy .privacy_detail .privacy_title {
  line-height: 1.6;
  height: 125px;
}
.privacy .privacy_detail .container h2 {
  margin-bottom: 3rem;
}
.privacy .privacy_detail .container h2 figure {
  opacity: 0;
}
.privacy .privacy_detail .container .fwb {
  font-weight: bold;
  margin-top: 1rem;
}
.privacy .privacy_detail .container .fwb + .privacy_txt {
  margin-top: .5rem;
}
#businessList.privacy .privacy_detail .container .tar {
  margin-top: 1rem;
  text-align: right;
}
.privacy .privacy_detail .container .privacy_txt {
  margin-top: 1rem;
}
.privacy .privacy_detail .container .privacy_list01 {
  margin-top: 1rem;
  counter-reset: number 0;
}
.privacy .privacy_detail .container .privacy_list01.fwb_list > li {
  margin-top: 1rem;
}
.privacy .privacy_detail .container .privacy_list01.fwb_list > li span , 
.privacy .privacy_detail .container .privacy_list01.fwb_list > li::before {
  font-weight: bold;
}
/*
.privacy .privacy_detail .container .privacy_list01 > li {
  padding-left: 1.4rem;
  text-indent: -1.4rem;
}
.privacy .privacy_detail .container .privacy_list01 > li::before {
  counter-increment: number 1; 
  content: counter(number) ". ";
}
.privacy .privacy_detail .container .privacy_list01 .privacy_list01 {
  margin-top: 0;
}
.privacy .privacy_detail .container .privacy_list02 > li {
  padding-left: 1rem;
  text-indent: -1rem;
}
.privacy .privacy_detail .container .privacy_list02 > li::before {
  content: "・";
}
.privacy .privacy_detail .container .privacy_list03 > li {
	padding-left: 3.4rem;
  text-indent: -3.4rem;
}
.privacy .privacy_detail .container .privacy_list04 > li {
  padding-left: 2rem;
  text-indent: -2rem;
}
*/
.privacy .privacy_detail .privacy_contact {
  border: 2px solid #006bb4;
  margin: 2rem auto 0;
  padding: 1.5rem 3rem;
  width: 85%;
}
.privacy .privacy_detail .privacy_contact h3 {
  font-weight: bold;
  font-size: 1.1rem;
  text-align: center;
  margin-bottom: 1rem;
  line-height: 1.4;
}
.privacy .privacy_detail .privacy_contact .first {
  margin-right: 2rem;
}
@media screen and (max-width: 750px) {
  .privacy .privacy_detail:nth-of-type(2) {
    margin-top: 30px;
  }
  .privacy .privacy_detail .container h2 figure {
    display: none;
  }
  #businessList h2 span {
    padding: 20px 10px;
  }
  .fv.privacy h1 span {
    font-size: 1.4rem;
    right: 15%;
  }
  .privacy .privacy_detail .privacy_contact {
    padding: 1.5rem;
    width: 100%;
  }
  .privacy .privacy_detail .privacy_contact h3 {
    font-size: 1rem;
  }
  .privacy .privacy_detail .privacy_title {
    line-height: 1.6;
    height: auto;
  }
}

.privacy .privacy_detail .container .privacy_list02,
.privacy .privacy_detail .container .privacy_list03,
.privacy .privacy_detail .container .privacy_list04,
.privacy .privacy_detail .container .privacy_list05{
  counter-reset: number 0;
}
.privacy .privacy_detail .container .privacy_list02.kana,
.privacy .privacy_detail .container .privacy_list03.kana,
.privacy .privacy_detail .container .privacy_list04.kana,
.privacy .privacy_detail .container .privacy_list05.kana{
  counter-reset: kana;
}
.privacy .privacy_detail .container .privacy_list02.lola,
.privacy .privacy_detail .container .privacy_list03.lola,
.privacy .privacy_detail .container .privacy_list04.lola,
.privacy .privacy_detail .container .privacy_list05.lola{
  counter-reset: lola;
}
.privacy .privacy_detail .container .privacy_list02 > li,
.privacy .privacy_detail .container .privacy_list03 > li,
.privacy .privacy_detail .container .privacy_list04 > li,
.privacy .privacy_detail .container .privacy_list05 > li{
	text-indent:0;
}

.privacy .privacy_detail .privacy_wrapper .container li.lt-int {
  padding-left: 1.4rem;
  text-indent: -1.4rem;
}
.privacy .privacy_detail .container .privacy_list01 > li.lt-int::before {
  counter-increment: number 1; 
  content: counter(number) ". ";
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-dot {
  padding-left: 1rem;
  text-indent: -1rem;
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-dot::before {
  content: "・" !important;
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-par-int {
  padding-left: 3rem;
  text-indent: -3rem;
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-par-int::before {
  counter-increment: number 1; 
  content: "（"counter(number) "）";
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-lgt-int {
  padding-left: 3rem;
  text-indent: -3rem;
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-lgt-int::before {
  counter-increment: number 1; 
  content: "〈"counter(number) "〉";
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-katakana {
  padding-left: 2rem;
  text-indent: -2rem;
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-katakana::before {
  counter-increment: kana 1; 
	content: counter(kana, katakana)"）";
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-lower-latin {
  padding-left: 2rem;
  text-indent: -2rem;
}
.privacy .privacy_detail .privacy_wrapper .container li.lt-lower-latin::before {
  counter-increment: lola 1; 
	content: counter(lola, lower-latin)"）";
}
/*
.privacy .privacy_detail .container .privacy_list05{
}
*/