.bgArea {
  background: url(../img/company/bg01.jpg) no-repeat center top/cover;
  padding: 0 0 100px;
}

.mvArea {
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(rgba(145, 255, 166, 0.74)), to(rgba(127, 202, 255, 0.74)));
  background: -webkit-linear-gradient(left, rgba(145, 255, 166, 0.74), rgba(127, 202, 255, 0.74));
  background: linear-gradient(to right, rgba(145, 255, 166, 0.74), rgba(127, 202, 255, 0.74));
}
@media (max-width: 767px) {
  .mvArea {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.mvArea .bgImg {
  position: relative;
  overflow: hidden;
}
.mvArea .bgImg .bg01 {
  width: 30%;
  height: 50%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  background: #aa8958;
  position: absolute;
  bottom: -35%;
  right: -18%;
}
.mvArea .txtArea {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 1280px) {
  .mvArea .txtArea {
    left: -2%;
  }
}
@media (max-width: 991px) {
  .mvArea .txtArea {
    left: -6%;
  }
}
@media (max-width: 767px) {
  .mvArea .txtArea {
    position: relative;
    height: 60vw;
    left: 0;
  }
}
.mvArea .txtArea h2 {
  width: 460px;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: absolute;
  top: 50%;
  left: -230px;
  margin-top: -230px;
  padding-right: 30px;
}
@media (max-width: 1280px) {
  .mvArea .txtArea h2 {
    padding-right: 10px;
  }
}
@media (max-width: 991px) {
  .mvArea .txtArea h2 {
    padding-right: 20px;
  }
}
@media (max-width: 767px) {
  .mvArea .txtArea h2 {
    width: 70%;
    left: -35%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    margin-top: 0;
    padding-right: 10px;
  }
}
.mvArea .txtArea h2::before {
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(30deg, #7fcaff 38%, #91ffa6 97%);
  background: linear-gradient(60deg, #7fcaff 38%, #91ffa6 97%);
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0.85;
}
@media (max-width: 991px) {
  .mvArea .txtArea h2::before {
    width: 80%;
    height: 80%;
    top: 10%;
    left: 10%;
  }
}
@media (max-width: 767px) {
  .mvArea .txtArea h2::before {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }
}
.mvArea .txtArea h2::after {
  content: "";
  width: 80%;
  height: 80%;
  background: #729ab5;
  opacity: 0.66;
  mix-blend-mode: multiply;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  top: 10%;
  left: 10%;
  z-index: 2;
}
@media (max-width: 991px) {
  .mvArea .txtArea h2::after {
    width: 70%;
    height: 70%;
    top: 15%;
    left: 15%;
  }
}
@media (max-width: 767px) {
  .mvArea .txtArea h2::after {
    width: 80%;
    height: 80%;
    top: 10%;
    left: 10%;
  }
}
.mvArea .txtArea h2 span {
  display: inline-block;
  position: relative;
  z-index: 3;
  color: #fff;
  font-size: 50px;
  font-family: "EB Garamond", serif;
  font-weight: normal;
}
@media (max-width: 991px) {
  .mvArea .txtArea h2 span {
    font-size: 40px;
  }
}
@media (max-width: 767px) {
  .mvArea .txtArea h2 span {
    font-size: 8vw;
  }
}

.cc01 {
  font-size: 29px;
  color: #002662;
  line-height: 1.7em;
  margin-bottom: 30px;
}
@media (max-width: 991px) {
  .cc01 {
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  .cc01 {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
.cc01.mt {
  margin-top: 100px;
}
@media (max-width: 767px) {
  .cc01.mt {
    margin-top: 50px;
  }
}
.cc01 small {
  display: block;
  font-size: 14px;
  line-height: 1.5em;
}
@media (max-width: 767px) {
  .cc01 small {
    font-size: 12px;
  }
}

.txt01 {
  font-size: 14px;
  line-height: 2.5em;
  color: #002662;
}
@media (max-width: 991px) {
  .txt01 {
    font-size: 13px;
  }
}
@media (max-width: 767px) {
  .txt01 {
    font-size: 12px;
  }
}
.txt01.mb {
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .txt01.mb {
    margin-bottom: 30px;
  }
}

.introArea {
  padding: 100px 0 200px;
}
@media (max-width: 767px) {
  .introArea {
    padding: 50px 0 100px;
  }
}
.introArea .logo {
  width: 100%;
  text-align: center;
  margin: 0 auto 40px;
}
@media (max-width: 767px) {
  .introArea .logo {
    margin-bottom: 20px;
  }
}
.introArea p {
  color: #002662;
  text-align: center;
}
.introArea p.introTxt01 {
  font-size: 24px;
  line-height: 2.4em;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .introArea p.introTxt01 {
    font-size: 18px;
    margin-bottom: 20px;
  }
}

.contents {
  background: rgba(255, 255, 255, 0.8);
  padding: 70px 0;
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .contents {
    padding: 30px 0;
    margin-bottom: 30px;
  }
}
.contents.jrArea .logo {
  width: 100%;
  max-width: 237px;
}
.contents.tokyuArea .conBox {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media (max-width: 767px) {
  .contents.tokyuArea .conBox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.contents.tokyuArea .conBox .txtArea {
  padding: 0 6% 0 2%;
}
@media (max-width: 767px) {
  .contents.tokyuArea .conBox .txtArea {
    padding: 0;
  }
}
.contents .conBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 767px) {
  .contents .conBox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 20px;
  }
}
.contents .conBox .txtArea {
  width: 47.5213675214%;
  padding: 0 0 0 8%;
}
@media (max-width: 767px) {
  .contents .conBox .txtArea {
    width: 100%;
    padding: 0;
  }
}
.contents .conBox .txtArea .logo {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .contents .conBox .txtArea .logo {
    margin-bottom: 20px;
  }
}
.contents .conBox .imgArea {
  width: 47.5213675214%;
}
@media (max-width: 767px) {
  .contents .conBox .imgArea {
    width: 100%;
  }
}
.contents .conBox .imgArea figure figcaption {
  color: #002662;
}

.imgBox {
  position: relative;
}
.imgBox a {
  display: block;
  position: absolute;
  text-indent: -1000px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.5);
  opacity: 0;
  width: 33%;
  height: 17.5%;
  -webkit-transition: opacity 0.4s ease 0s;
  transition: opacity 0.4s ease 0s;
}
@media (max-width: 767px) {
  .imgBox a {
    width: 58%;
    height: 6.5%;
  }
}
@media (min-width: 992px) {
  .imgBox a:hover {
    opacity: 1;
  }
}
.imgBox a.biare {
  bottom: 12%;
  left: 12%;
}
@media (max-width: 767px) {
  .imgBox a.biare {
    bottom: auto;
    top: 34%;
    left: 21%;
  }
}
.imgBox a.branz {
  bottom: 12%;
  right: 10.2%;
}
@media (max-width: 767px) {
  .imgBox a.branz {
    bottom: 7%;
    right: auto;
    left: 21%;
  }
}