@charset "UTF-8";
.mainvisualWrapper {
  margin-top: 0 !important;
}
@media screen and (max-width: 768px) {
  .mainvisualWrapper {
    margin-top: 12.666666666666668vw;
  }
}
.mainvisualTitle {
  width: 583px;
  margin: 0 auto;
  padding-top: calc(205px - 25px);
}
@media screen and (max-width: 768px) {
  .mainvisualTitle {
    width: 80vw;
    padding-top: calc(50vh - 51px);
  }
}
.mainvisualLeadWrapper {
  background-image: url("/img/top/lead_bg.svg");
  background-repeat: no-repeat;
  background-size: cover;
  padding: 30px 0 100px;
  position: relative;
  margin-top: -120px;
  padding-bottom: 200px;
}
@media screen and (max-width: 768px) {
  .mainvisualLeadWrapper {
    background-size: 100%;
    padding-bottom: 12vw;
    margin-top: -8vw;
  }
}
.mainvisualValueWrapper {
  background-image: url("/img/top/value_bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  position: relative;
  padding: 8.784773060029282vw 0;
  margin-top: -7.320644216691069vw;
}
@media screen and (max-width: 1366px) {
  .mainvisualValueWrapper {
    padding: 120px 0;
    margin-top: -100px;
  }
}
@media screen and (max-width: 768px) {
  .mainvisualValueWrapper {
    background-size: 100%;
    padding-top: 20px;
    margin-top: -40px;
    padding-bottom: 40px;
  }
}
.mainvisualValueTitle {
  width: 79px;
  margin: 0 auto 50px;
}
@media screen and (max-width: 768px) {
  .mainvisualValueTitle {
    width: 10.533333333333333vw;
    margin-bottom: 20px;
  }
}
.mainvisualValueText {
  width: 1050px;
  margin: 0 auto 30px;
}
@media screen and (max-width: 768px) {
  .mainvisualValueText {
    width: 85.33333333333334vw;
  }
}
.mainvisualLeadText {
  width: 653px;
  margin: 0 auto 70px;
  padding-top: 160px;
}
@media screen and (max-width: 768px) {
  .mainvisualLeadText {
    padding-top: 6.666666666666667vw;
    width: 87.06666666666666vw;
    margin-bottom: 8vw;
  }
}
.mainvisualLeadSlick {
  width: 908px;
  margin: 0 auto 120px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .mainvisualLeadSlick {
    width: 73.33333333333333vw;
    margin-bottom: 5.333333333333334vw;
  }
}
.mainvisualLeadSlick:after {
  content: '';
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(rgba(22,135,197,0.9)), color-stop(15%, rgba(22,135,197,0)), color-stop(85%, rgba(22,135,197,0)), to(rgba(22,135,197,0.9)));
  background: linear-gradient(90deg, rgba(22,135,197,0.9) 0%, rgba(22,135,197,0) 15%, rgba(22,135,197,0) 85%, rgba(22,135,197,0.9) 100%);
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
.mainvisualLeadSlickItem {
  padding: 0 10px;
}
@media screen and (max-width: 768px) {
  .mainvisualLeadSlickItem {
    padding: 0 1.333333333333333vw;
  }
}
.mvleadArrowPrev,
.mvleadArrowNext {
  width: 24px;
  height: 24px;
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  position: absolute;
  top: 40%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-filter: drop-shadow(5px 6px 4px rgba(0,0,0,0.3));
          filter: drop-shadow(5px 6px 4px rgba(0,0,0,0.3));
}
.mvleadArrowPrev:hover,
.mvleadArrowNext:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .mvleadArrowPrev,
  .mvleadArrowNext {
    width: 5.333333333333334vw;
    height: 5.333333333333334vw;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  .mvleadArrowPrev:hover,
  .mvleadArrowNext:hover {
    opacity: 1;
  }
}
.mvleadArrowPrev {
  left: 0;
  margin-left: -45px;
}
@media screen and (max-width: 768px) {
  .mvleadArrowPrev {
    margin-left: -8vw;
  }
}
.mvleadArrowNext {
  right: 0;
  margin-right: -45px;
}
@media screen and (max-width: 768px) {
  .mvleadArrowNext {
    margin-right: -8vw;
  }
}
.newsWrapper {
  padding: 8.784773060029282vw 0 45px;
  margin-top: -8.784773060029282vw;
  position: relative;
  background: url("/img/top/news_bg.png");
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 1366px) {
  .newsWrapper {
    padding: 120px 0 45px;
    margin-top: -120px;
  }
}
@media screen and (max-width: 768px) {
  .newsWrapper {
    background-size: 100%;
    padding: 8vw 0 7.333333333333333vw;
    margin-top: -17.333333333333336vw;
  }
}
.newsTitle {
  width: 136px;
  margin: 0 auto 35px;
}
@media screen and (max-width: 768px) {
  .newsTitle {
    width: 23.333333333333332vw;
    margin-bottom: 4vw;
  }
}
.newsContainerShadow {
  position: relative;
}
.newsContainerShadow:after {
  content: '';
  width: 660px;
  height: 60px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 100px auto 0;
  background: -webkit-gradient(linear, left bottom, left top, from(#fff), to(rgba(255,255,255,0)));
  background: linear-gradient(bottom, #fff, rgba(255,255,255,0));
  z-index: 2;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .newsContainerShadow:after {
    width: 100%;
    height: 16vw;
    margin: 0 auto;
  }
}
.newsContainer {
  width: 740px;
  margin: 0 auto;
  height: 200px;
  padding: 0 40px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .newsContainer {
    width: 100%;
    height: 29.333333333333332vw;
    padding: 0 5.333333333333334vw;
  }
}
.newsItem {
  border-bottom: 1px solid #22bdff;
  color: #1f80a8;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.1em;
  padding: 0.75em 1em;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .newsItem {
    font-size: 2.933333333333333vw;
    padding: 0.25em;
  }
}
.newsDate {
  margin-right: 15px;
}
@media screen and (max-width: 768px) {
  .newsDate {
    margin-right: 1.333333333333333vw;
  }
}
.newsTag {
  color: #da5a24;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  padding: 0.25em 0.5em;
  border: 2px solid #da5a24;
  border-radius: 1em;
  margin-right: 40px;
}
@media screen and (max-width: 768px) {
  .newsTag {
    font-size: 2.666666666666667vw;
    border: 1px solid #da5a24;
    margin-right: 1.333333333333333vw;
  }
}
.newsText {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .newsText {
    width: 46.666666666666664vw;
  }
}
.pointWrapper {
  background: -webkit-gradient(linear, left top, left bottom, from(#5dbaeb), to(#c1e1ef));
  background: linear-gradient(#5dbaeb, #c1e1ef);
  position: relative;
  padding: 95px 0 175px;
}
@media screen and (max-width: 768px) {
  .pointWrapper {
    padding: 10.666666666666668vw 0 20vw;
  }
}
.pointContainer {
  position: relative;
  z-index: 1;
}
.pointTitle {
  width: 684px;
  margin: 0 auto 70px;
}
@media screen and (max-width: 768px) {
  .pointTitle {
    width: 91.2vw;
    margin-bottom: 8.666666666666668vw;
    margin-bottom: 10.666666666666668vw;
  }
}
.pointFrame {
  position: relative;
  width: 906px;
  margin: 0 auto 90px;
}
@media screen and (max-width: 768px) {
  .pointFrame {
    width: 85.33333333333334vw;
    margin-bottom: 8vw;
  }
}
.pointFrameTag {
  position: absolute;
  top: 0;
  left: 0;
  width: 125px;
  margin-left: -5px;
  margin-top: -23px;
}
@media screen and (max-width: 768px) {
  .pointFrameTag {
    width: 12vw;
    margin-left: -0.666666666666667vw;
    margin-top: -3.066666666666666vw;
  }
}
.pointFrameTitle {
  margin: 0 auto 60px;
  text-align: center;
}
.pointFrameTitle.first {
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .pointFrameTitle {
    margin-bottom: 30px;
  }
}
.pointFrameTitle img {
  width: auto;
  height: 36px;
}
@media screen and (max-width: 768px) {
  .pointFrameTitle img {
    height: 4.266666666666667vw;
  }
}
.pointFrameImage {
  margin: 20px auto 0;
}
.pointFrameImage.point01 {
  width: 759px;
}
@media screen and (max-width: 768px) {
  .pointFrameImage.point01 {
    width: 100%;
  }
}
.pointFrameImage.point02 {
  width: 822px;
}
@media screen and (max-width: 768px) {
  .pointFrameImage.point02 {
    width: 100%;
  }
}
.pointFrameImage.point03 {
  width: 764px;
}
@media screen and (max-width: 768px) {
  .pointFrameImage.point03 {
    width: 100%;
  }
}
.pointDownloadBtn {
  display: block;
  margin: 0 auto;
  width: 478px;
}
@media screen and (max-width: 768px) {
  .pointDownloadBtn {
    width: 63.733333333333334vw;
  }
}
.accessWrapper {
  position: relative;
  z-index: 2;
  background: #005f8e;
  margin-top: -80px;
}
@media screen and (max-width: 768px) {
  .accessWrapper {
    width: 100%;
    margin-top: -8vw;
  }
}
.accessTitle {
  width: 132px;
  margin: 0 auto 70px;
  padding-top: 115px;
}
@media screen and (max-width: 768px) {
  .accessTitle {
    width: 20vw;
    padding-top: 11.333333333333332vw;
    margin-bottom: 11.333333333333332vw;
  }
}
.accessMapContainer {
  width: 906px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .accessMapContainer {
    width: 89.33333333333333vw;
  }
}
.accessMapTabWrapper {
  width: 100%;
  border: 3px solid #fff;
  margin-bottom: 45px;
}
@media screen and (max-width: 768px) {
  .accessMapTabWrapper {
    margin-bottom: 6vw;
  }
}
.accessMapTab {
  width: 50%;
  padding: 10px 0 5px;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .accessMapTab {
    padding: 0.266666666666667vw 0;
  }
}
.accessMapTab.is-current {
  background: #fff;
}
.accessMapTabText {
  text-align: center;
}
.accessMapTabText svg {
  height: 17px;
  width: auto;
}
@media screen and (max-width: 768px) {
  .accessMapTabText svg {
    height: 2.266666666666667vw;
  }
}
.accessInfoArea {
  position: relative;
  height: 600px;
}
@media screen and (max-width: 768px) {
  .accessInfoArea {
    height: 75.2vw;
  }
}
.accessMapTabText .text {
  fill: #fff;
  stroke: #fff;
  opacity: 0.5;
}
.accessMapTab.is-current .accessMapTabText .text {
  fill: #1f80a8;
  stroke: #1f80a8;
  opacity: 1;
}
.accessMapArea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: none;
}
.accessMapArea.is-current {
  display: block;
}
.accessMap {
  width: 100%;
  height: auto;
  padding-bottom: 30.684326710816777%;
  position: relative;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .accessMap {
    padding-bottom: 41.492537313432834%;
    margin-bottom: 2.666666666666667vw;
  }
}
.accessMap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.accessAddress {
  color: #fff;
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0.16em;
  position: relative;
}
@media screen and (max-width: 768px) {
  .accessAddress {
    font-size: 2.933333333333333vw;
  }
}
.accessMark {
  width: 73px;
  position: absolute;
  top: 0;
  right: 0;
  visibility: hidden;
}
@media screen and (max-width: 768px) {
  .accessMark {
    width: 12.666666666666668vw;
  }
}
.newsContainer {
  scrollbar-width: thin;
  scrollbar-color: #22bdff #84dcf4;
}
.newsContainer::-webkit-scrollbar {
  width: 10px;
}
.newsContainer::-webkit-scrollbar-track {
  background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(50%), color-stop(#84dcf4), color-stop(50.5%), to(#fff));
  background: linear-gradient(to right, #fff, 50%, #84dcf4, 50.5%, #fff);
  width: 1px;
}
.newsContainer::-webkit-scrollbar-thumb {
  background: #22bdff;
  border-radius: 10px;
}
