@charset "UTF-8";
/* CSS Document */

/* ボタン */
.btn001 {
  max-width: 300px;
  height: 80px;
  background: #777777;
  margin: 0 auto;
  display: flex;
  margin-top: 60px;
}
.btn001_left {
  color: #ffffff;
  width: 68%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  letter-spacing: 0.09em;
}
.btn001_right {
  border-left: 1px solid #ddd;
  width: 32%;
}
.btn001_right a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
  font-family: yu-mincho-pr6, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 10px;
  color: #fff;
  text-align: center;
}
.btn001_right a > span {
}
.btn001_right a > span::before {
  width: 40px;
  height: 10px;
  content: "";
  display: block;
  overflow: hidden;
  background-position: center top;
  background-repeat: no-repeat;
  background-image: url(../img/top/arrow01.svg);
  transition: all 0.3s cubic-bezier(0.78, 0.1, 0, 1) 0.1s;
  margin-bottom: 0.5em;
}
.btn001_right a:hover {
  background-color: #334455;
}

/* mainArea */
.main_bg {
  background-image: url("../img/top/main_img.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.mainArea {
  background: linear-gradient(153deg, rgba(0, 151, 141, 0) 50%, rgba(128, 217, 218, 0.2) 50%) no-repeat 100% 100% / 73%
    76%;
  background-position: bottom right;
  overflow: hidden;
}
.mainArea .inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 20px;
  min-height: 100vh;
}
.mainArea .inner .m_txtArea {
  max-width: 1200px;
  margin: 0 auto;
}
.mainArea .inner .m_txtArea .m_txt {
  padding-top: 39vh;
  text-align: center;
}
.mainArea .inner .m_txtArea .m_txt .txt .ttl {
  font-size: 22px;
  color: #7fd8d8;
  line-height: 1.3;
  font-weight: 400;
  font-family: yu-mincho-pr6, sans-serif;
  font-style: normal;
  letter-spacing: 0.08em;
  text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
      /* text-shadow: #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px, #fff -1px -1px 2px; */
}
.mainArea .inner .m_txtArea .m_txt .txt h2 {
  font-size: 76px;
  font-weight: 700;
  padding-top: 30px;
  color: #7fd8d9;
  line-height: 1;
  letter-spacing: 0.08em;
  text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.75517px 0.958851px 0px, rgb(255, 255, 255) 1.0806px 1.68294px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.81859px 0px, rgb(255, 255, 255) -1.60229px 1.19694px 0px, rgb(255, 255, 255) -1.97998px 0.28224px 0px, rgb(255, 255, 255) -1.87291px -0.701566px 0px, rgb(255, 255, 255) -1.30729px -1.5136px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.91785px 0px, rgb(255, 255, 255) 1.41734px -1.41108px 0px, rgb(255, 255, 255) 1.92034px -0.558831px 0px;
}
.mainArea .inner .m_txtArea .m_txt .txt .h2_txt {
  padding-top: 30px;
  font-weight: 700;
  font-size: 15px;
  font-family: yu-mincho-pr6, sans-serif;
  font-style: normal;
  line-height: 1;
  color: #000;
  letter-spacing: 0.08em;
}
.mainArea .inner .m_txtArea .m_txt .txt .h2_txt span {
  font-size: 32px;
  text-shadow: none;
}

/* 共通 */
.h2Area {
  text-align: center;
}
.h2Area h2 {
  font-size: 22px;
  color: #000;
  line-height: 1;
  letter-spacing: 0.08em;
}
.h2Area .ttl {
  font-size: 28px;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.08em;
  padding-bottom: 10px;
}

.btnArea .btn {
  border-left: 1px solid #ddd;
}
.btnArea .btn a {
  position: relative;
  display: flex;
  width: 100px;
  font-family: yu-mincho-pr6, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 10px;
  color: #fff;
  text-align: center;
}
.btnArea .btn a > span {
}
.btnArea .btn a > span::before {
  width: 40px;
  height: 10px;
  content: "";
  display: block;
  overflow: hidden;
  background-position: center top;
  background-repeat: no-repeat;
  background-image: url(../img/top/arrow01.svg);
  transition: all 0.3s cubic-bezier(0.78, 0.1, 0, 1) 0.1s;
  margin-bottom: 0.5em;
}
.btnArea .btn a:hover {
  background-color: #334455;
}

/* typeArea */
.typeArea {
  width: 100%;
  position: relative;
}
.typeArea::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border-style: solid;
  border-color: #ffffff transparent transparent transparent;
  border-width: 355px 850px 0 0;
  z-index: -1;
}
.typeArea .inner {
  padding: 40px 20px;
  text-align: center;
}
.typeArea .inner .type_bg {
  max-width: 1000px;
  margin: -75px auto 0;

  background-color: #80d9da;
  border: 1px solid #fff;
  filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.3));
}
.typeArea .inner .type_bg .type {
  padding: 6.521739%; /* 60px/920 */
  background: linear-gradient(153deg, rgba(0, 151, 141, 0) 50%, rgba(225, 225, 225, 0.4) 50%) no-repeat 100% 100% / 80%
    50%;
}
.typeArea .inner .type_bg .type ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.typeArea .inner .type_bg .type ul li {
  width: 23%;
  margin: 0 3%;
  border-radius: 50%;
  background-color: #fff;
  font-family: yu-mincho-pr6, sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #7fd8d8;
  line-height: 1.2;
  position: relative;
}
.typeArea .inner .type_bg .type ul li:nth-child(n + 4) {
  margin-top: 150px;
}
.typeArea .inner .type_bg .type ul li > span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  display: block;
  width: 100%;
  font-size: 19px;
}

.swpArea {
    margin-top: 40px;
}

/* // MARK: maxW1500px */
@media screen and (max-width: 1500px) {
  .serviceArea .inner {
    margin-right: 120px;
    padding-left: 120px;
  }
  .mainArea .kireijpArea {
    padding: 25px 0 25px 50px;
  }
  .worksArea .inner .swiper-container {
    /* margin-right: 130px;
    margin-left: 130px; */
    min-width: 1280px;
  }
  .swpArea {
    margin-right: 120px;
    margin-left: 120px;
    overflow: hidden;
  }
}

/* // MARK: maxW1280px */
@media screen and (max-width: 1280px) {
  .typeArea .inner .type_bg .type ul li > span {
    font-size: calc(33px - 17 * ((1280px - 85vw) / (1280 - 550)));
  }
}
.typeArea .inner .type_bg .type ul li::before {
  content: "";
  display: block;
  padding-bottom: 100%;
}
.typeArea .inner .type_bg .type .h2Area {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  margin-top: -60px;
}
.typeArea .inner .type_bg .type .btnArea {
  width: 300px;
  height: 80px;
  margin: 35px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  background-color: #777;
  border: 1px solid #fff;
}
.typeArea .inner .type_bg .type .btnArea .service {
  font-size: 20px;
  color: #fff;
  letter-spacing: 0.09em;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.typeArea .inner .type_bg .type .btnArea .btn a {
  background-color: #777;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.typeArea .inner .type_bg .type .btnArea .btn a:hover {
  background-color: #0e215c;
}
.typeArea .inner .type_bg .type .btnArea .btn a:after {
  top: 25px;
}

/* serviceArea */
.serviceArea .inner {
  margin-top: 80px;
}
.serviceArea .inner .h2Area {
  text-align: center;
}
.serviceArea .inner .h2Area h2 {
  font-size: 36px;
  color: #0085b2;
  line-height: 1;
  letter-spacing: 0.08em;
}
.serviceArea .inner .h2Area .h2txt {
  font-size: 16px;
  line-height: 1;
  color: #000;
  padding-top: 15px;
  font-family: yu-mincho-pr6, sans-serif;
  font-weight: 700;
  font-style: normal;
}

/*20201001ここまで*/

/* aboutArea */
.aboutArea .inner {
  padding: 70px 20px;
  text-align: center;
}
.aboutArea .inner .h2Area {
  position: relative;
}
.aboutArea .inner .h2Area:after {
  content: "";
  position: absolute;
  bottom: -50px;
  left: 50%;
  transform: translateX(-50%);
  width: 1000px;
  height: 1px;
  background-color: #ccc;
}
.aboutArea .inner .h2Area h2:after {
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
}
.aboutArea .inner h3 {
  font-size: 28px;
  color: #000;
  font-weight: bold;
  line-height: 1.2;
  padding: 100px 0 40px;
}
.aboutArea .inner .txt {
  font-family: yu-mincho-pr6, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 17px;
  padding-bottom: 20px;
}
.aboutArea .inner .btnArea {
  width: 300px;
  margin: 20px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  align-items: center;
  background-color: #334455;
}
.aboutArea .inner .btnArea .service {
  font-size: 20px;
  color: #fff;
  letter-spacing: 0.09em;
  padding-left: 75px;
}
.aboutArea .inner .btnArea .btn a {
  background-color: #334455;
  width: 80px;
  height: 80px;
  padding-top: 40px;
}
.aboutArea .inner .btnArea .btn a:hover {
  background-color: #73d5d7;
}
.aboutArea .inner .btnArea .btn a:after {
  top: 25px;
}

/* serviceArea */

.serviceArea {
}
.serviceArea .inner {
}
.serviceArea .inner .h2Area {
  margin-bottom: 60px;
}
.serviceArea .inner .h2Area h2 {
}
.serviceArea .inner .h2Area .h2txt {
}
.serviceArea .inner ul {
  display: flex;
  justify-content: center;
}
.serviceArea .inner ul li {
  width: 480px;
}
.serviceArea .inner ul li:first-child {
  margin-right: 110px;
}
.serviceArea .inner ul .imgArea {
  position: relative;
}
.serviceArea .inner ul .imgArea .number {
  font-size: 96px;
  font-family: yu-mincho-pr6, sans-serif;
  font-weight: 200;
  color: #7fd8d9;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
  text-shadow: rgb(255, 255, 255) 4px 0px 0px, rgb(255, 255, 255) 3.87565px 0.989616px 0px,
    rgb(255, 255, 255) 3.51033px 1.9177px 0px, rgb(255, 255, 255) 2.92676px 2.72656px 0px,
    rgb(255, 255, 255) 2.16121px 3.36588px 0px, rgb(255, 255, 255) 1.26129px 3.79594px 0px,
    rgb(255, 255, 255) 0.282949px 3.98998px 0px, rgb(255, 255, 255) -0.712984px 3.93594px 0px,
    rgb(255, 255, 255) -1.66459px 3.63719px 0px, rgb(255, 255, 255) -2.51269px 3.11229px 0px,
    rgb(255, 255, 255) -3.20457px 2.39389px 0px, rgb(255, 255, 255) -3.69721px 1.52664px 0px,
    rgb(255, 255, 255) -3.95997px 0.56448px 0px, rgb(255, 255, 255) -3.97652px -0.432781px 0px,
    rgb(255, 255, 255) -3.74583px -1.40313px 0px, rgb(255, 255, 255) -3.28224px -2.28625px 0px,
    rgb(255, 255, 255) -2.61457px -3.02721px 0px, rgb(255, 255, 255) -1.78435px -3.57996px 0px,
    rgb(255, 255, 255) -0.843183px -3.91012px 0px, rgb(255, 255, 255) 0.150409px -3.99717px 0px,
    rgb(255, 255, 255) 1.13465px -3.8357px 0px, rgb(255, 255, 255) 2.04834px -3.43574px 0px,
    rgb(255, 255, 255) 2.83468px -2.82216px 0px, rgb(255, 255, 255) 3.44477px -2.03312px 0px,
    rgb(255, 255, 255) 3.84068px -1.11766px 0px, rgb(255, 255, 255) 3.9978px -0.132717px 0px;
}
.serviceArea .inner ul .imgArea .img {
  text-align: right;
}
.serviceArea .inner ul .imgArea img {
}
.serviceArea .inner ul h3 {
  color: #7fd8d9;
  font-size: 21px;
}
.serviceArea .inner ul .txt {
  font-size: 16px;
  margin-top: 0.5em;
  font-weight: 300;
}
.serviceArea .inner ul .btn02 {
  margin-top: 2em;
}
.serviceArea .inner ul .btn02 a {
  font-size: 15px;
  color: #868686;
}
.serviceArea .inner ul .btn02 a:hover {
  color: #7fd8d9;
}
.serviceArea .inner ul .btn02 a:hover {
}
.serviceArea .inner ul .btn02 a:active {
}
.serviceArea .inner ul .btn02 a:focus {
}
.serviceArea .inner .btnArea {
  width: 300px;
  height: 80px;
  background: #777777;
  margin: 0 auto;
  display: flex;
  margin-top: 60px;
}
.serviceArea .inner .btnArea .service {
  color: #ffffff;
  width: 220px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  letter-spacing: 0.09em;
}
.serviceArea .inner .btnArea .btn {
}
.serviceArea .inner .btnArea a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.serviceArea .inner .btnArea a:hover {
}
.serviceArea .inner .btnArea a:active {
}
.serviceArea .inner .btnArea a:focus {
}

/* worksArea */

.worksArea {
  padding: 90px 0;
  background: url("../img/top/works_bg.jpg") no-repeat;
  background-size: cover;
  margin-top: 60px;
}
.worksArea .inner {
}
.worksArea .inner .h2Area {
}
.worksArea .inner .h2Area h2 {
  font-size: 36px;
  color: #0085b2;
  letter-spacing: 0.08em;
  line-height: 1;
}
.worksArea .inner .h2Area .h2txt {
  font-size: 16px;
  line-height: 1;
  color: #000;
  padding-top: 15px;
  font-family: yu-mincho-pr6, sans-serif;
  font-weight: 700;
  font-style: normal;
}
.worksArea .inner .swiper-container {
  width: 100%;
  height: 100%;
}
.worksArea .inner .swiper-container .swiper-wrapper {
}
.worksArea .inner .swiper-container .swiper-slide {
}
.worksArea .inner .swiper-container .swiper-slide a {
}
.worksArea .inner .swiper-container .swiper-slide a:hover {
}
.worksArea .inner .swiper-container .swiper-slide a:active {
}
.worksArea .inner .swiper-container .swiper-slide a:focus {
}
.worksArea .inner .swiper-container .swiper-slide img {
}
.worksArea .inner .btnArea {
  width: 300px;
  height: 80px;
  background: #777777;
  margin: 0 auto;
  display: flex;
  margin-top: 60px;
}
.worksArea .inner .btnArea .service {
  color: #ffffff;
  width: 220px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  letter-spacing: 0.09em;
}
.worksArea .inner .btnArea .btn {
}
.worksArea .inner .btnArea a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.worksArea .inner .btnArea a:hover {
}
.worksArea .inner .btnArea a:active {
}
.worksArea .inner .btnArea a:focus {
}
.worksArea .inner .btnArea a span {
}

/* // MARK: maxW1200px */
@media screen and (max-width: 1200px) {
  .desc02 .content .inner .flowArea .h2Area {
    padding-top: 95px;
  }
  .desc02 .content .inner .flowArea .txt {
    padding-top: 30px;
  }
}

/* // MARK: maxW1100px */
@media screen and (max-width: 1100px) {
  .desc01 {
    background: linear-gradient(90deg, #006550 60%, rgba(0, 151, 141, 0) 50%) no-repeat 50% 0% / 100% 60%;
  }
  .desc02 .content .inner .flowArea .txt {
    min-height: 98px;
  }
  .desc02 .serviceArea .inner ul li h4 {
    font-size: 17px;
  }
  .desc02 .content .inner {
    padding: 50px 20px 55px;
  }
}

/* // MARK: maxW1000px */
@media screen and (max-width: 1000px) {
  .mainArea .kireijpArea {
    width: 600px;
    padding: 25px 0 25px 25px;
  }
  .mainArea .kireijpArea h2 {
    font-size: 20px;
  }
  .mainArea .kireijpArea .kireitxt .jp {
    font-size: 14px;
    padding: 0 10px;
  }
  .mainArea .kireijpArea .kireitxt .kirei {
    font-size: 23px;
  }
}

/* // MARK: maxW910px */
@media screen and (max-width: 910px) {
  .desc01:before {
    display: none;
  }
  .desc01 {
    background: linear-gradient(90deg, #006550 50%, rgba(0, 151, 141, 0) 50%) no-repeat 50% 0% / 100% 60%;
  }
  .desc01 .aboutArea .inner .right {
    padding: 200px 0 0 50px;
  }
  .desc02 .serviceArea .inner ul li h4 {
    font-size: 15px;
  }
  .desc02 .content .inner .flowArea {
    width: 30%;
    margin: 0 2%;
  }
}

/* // MARK: maxW897px */
@media screen and (max-width: 897px) and (orientation: landscape) {
  .mainArea .inner .m_ttl p {
    margin: 0 auto;
    width: 30%;
    text-align: center;
  }
}

/* // MARK: maxW800px */
@media screen and (max-width: 800px) {
  .mainArea .inner .m_txtArea .desc {
    text-align: left;
    font-size: 20px;
  }
}

/* // MARK: maxW767px */
@media screen and (max-width: 767px) {
  /* ボタン */
  .btn001 {
    max-width: 80%;
  }
  .btn001_left {
    font-size: 17px;
  }
  .btn001_right {
  }
  .btn001_right a {
  }
  .btn001_right a > span {
  }
  .btn001_right a > span::before {
  }
  .btn001_right a:hover {
  }
  /* ボタン　ここまで */

  .main_bg {
    background-position: left calc(-160px + 17 * ((767px - 100vw) / (767 - 320))) center;
    background-size: cover;
  }
  .mainArea .inner {
    width: 100%;
    min-height: 100vh;
    padding: 0 3vw;
  }
  .mainArea .inner .m_txtArea .m_txt {
    padding-top: 31vh;
  }
  .mainArea .inner .m_txtArea .m_txt .txt .ttl {
    font-size: 16px;
  }
  .mainArea .inner .m_txtArea .m_txt .txt h2 {
    font-size: 40px;
  }
  .mainArea .inner .m_txtArea .m_txt .txt .h2_txt {
    padding-top: 28px;
    max-width: 290px;
    margin: 0 auto;
    font-size: 16px;
  }
  .mainArea .inner .m_txtArea .m_txt .txt .h2_txt span {
    font-size: 19px;
    margin-top: 3px;
    margin-left: 0.5em;
  }
  .mainArea .inner .m_txtArea .desc {
    font-size: 15px;
  }
  .mainArea .kireijpArea {
    padding: 25px 0 25px 5vw;
  }

  /* 共通 */
  .h2Area h2 {
    font-size: 23px;
  }
  .h2Area h2:after {
    top: 5px;
    right: -60px;
  }

  /* newsArea */
  .newsArea .inner .news dl {
    display: block;
    padding: 20px 5vw;
  }
  .newsArea .inner .news dl dt {
    width: 100%;
    text-align: left;
    padding-bottom: 5px;
  }
  .newsArea .inner .news dl dd {
    width: 100%;
    text-align: left;
  }
  .newsArea .inner .news dl dd p {
    line-height: 1.3;
  }

  .h2Area .ttl {
    font-size: 22px;
  }

  /* aboutArea */
  .aboutArea .inner {
    padding: 20px 5vw;
  }
  .aboutArea .inner .h2Area h2:after {
    top: 35px;
  }
  .aboutArea .inner h3 {
    font-size: 17px;
    padding: 75px 0 25px;
  }
  .aboutArea .inner .txt {
    font-size: 15px;
    padding-bottom: 15px;
  }

  /* serviceArea */
  .serviceArea {
    padding-right: 8vw;
    padding-left: 8vw;
  }
  .serviceArea .inner {
    padding-left: 0;
    margin-top: 30px;
  }
  .serviceArea .inner .h2Area {
    margin-bottom: 50px;
  }
  .serviceArea .inner .h2Area h2 {
    font-size: 27px;
  }
  .serviceArea .inner .h2Area .h2txt {
    font-size: 16px;
    padding-top: 10px;
  }
  .serviceArea .inner ul {
    flex-wrap: wrap;
  }
  .serviceArea .inner ul li {
  }
  .serviceArea .inner ul li:first-child {
    margin-right: 0;
  }
  .serviceArea .inner ul li:not(:first-child) {
    margin-top: 80px;
  }
  .serviceArea .inner ul .imgArea {
  }
  .serviceArea .inner ul .imgArea .number {
    font-size: 85px;
  }
  .serviceArea .inner ul .imgArea .img {
    display: flex;
    justify-content: center;
  }
  .serviceArea .inner ul .imgArea img {
  }
  .serviceArea .inner ul h3 {
    margin-top: 1.6em;
    text-align: center;
    font-size: 18px;
  }
  .serviceArea .inner ul .txt {
    font-size: 15px;
  }
  .serviceArea .inner ul .btn02 {
  }
  .serviceArea .inner ul .btn02 a {
  }
  .serviceArea .inner ul .btn02 a:hover {
  }
  .serviceArea .inner ul .btn02 a:active {
  }
  .serviceArea .inner ul .btn02 a:focus {
  }
  .serviceArea .inner .btnArea {
    max-width: 480px;
    width: 100%;
    margin-top: 90px;
  }
  .serviceArea .inner .btnArea .service {
    width: 100%;
  }
  .serviceArea .inner .btnArea .btn {
  }
  .serviceArea .inner .btnArea a {
    width: 100px;
  }
  .serviceArea .inner .btnArea a:hover {
  }
  .serviceArea .inner .btnArea a:active {
  }
  .serviceArea .inner .btnArea a:focus {
  }
  .serviceArea .inner .btnArea a span {
  }

  .worksArea {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .worksArea .inner {
    padding-right: 8vw;
    padding-left: 8vw;
  }
  .worksArea .inner .h2Area {
  }
  .worksArea .inner .h2Area h2 {
    font-size: 27px;
  }
  .worksArea .inner .h2Area .h2txt {
    padding-top: 10px;
  }
  .worksArea .inner .swpArea {
    margin-right: 0;
    margin-left: 0;
  }
  .worksArea .inner .swpArea .swiper-container {
  }
  .worksArea .inner .swpArea .swiper-wrapper {
  }
  .worksArea .inner .swpArea .swiper-wrapper .swiper-slide {
  }
  .worksArea .inner .swpArea .swiper-wrapper a {
  }
  .worksArea .inner .swpArea .swiper-wrapper a:hover {
  }
  .worksArea .inner .swpArea .swiper-wrapper a:active {
  }
  .worksArea .inner .swpArea .swiper-wrapper a:focus {
  }
  .worksArea .inner .swpArea .swiper-wrapper a img {
  }
  .worksArea .inner .btn001 {
  }
  .worksArea .inner .btn001 .btn001_left {
  }
  .worksArea .inner .btn001 .btn001_right {
  }
  .worksArea .inner .btn001 a {
  }
  .worksArea .inner .btn001 a:hover {
  }
  .worksArea .inner .btn001 a:active {
  }
  .worksArea .inner .btn001 a:focus {
  }
  .worksArea .inner .btn001 a span {
  }

}

/* // MARK: maxW600px */
@media screen and (max-width: 600px) {
  .mainArea .inner .m_txtArea .m_txt .txt .ttl {
		font-size: 3.5vw;
  }
  .mainArea .inner .m_txtArea .m_txt .txt h2 {
  }
  .mainArea .inner .m_txtArea .desc {
    font-size: 11px;
    padding-top: 20px;
  }
  .mainArea .kireijpArea {
    width: 100%;
  }
  .mainArea .kireijpArea .kireitxt {
    align-items: center;
  }
  .mainArea .kireijpArea h2 {
    display: block;
  }
  .mainArea .kireijpArea .kireitxt .jp {
    font-size: 14px;
    padding: 0 0;
    margin-top: 5px;
    display: block;
  }
  .mainArea .kireijpArea h2 {
    font-size: 26px;
  }
  .mainArea .kireijpArea .kireitxt .kirei {
    font-size: 22px;
  }

  /* typeArea */
  .typeArea {
  }
  .typeArea .inner {
  }
  .typeArea .inner .type_bg {
  }
  .typeArea .inner .type_bg .type {
    padding-right: 5%;
    padding-left: 5%;
  }
  .typeArea .inner .type_bg .type .h2Area {
    position: relative;
    margin-top: 0;
    padding-top: 40px;
    padding-bottom: 40px;
    top: inherit;
    left: inherit;
    transform: inherit;
  }
  .h2Area .ttl {
    font-size: 19px;
  }
  .typeArea .inner .type_bg .h2Area h2 {
  }
  .typeArea .inner .type_bg .type ul {
    justify-content: space-between;
  }
  .typeArea .inner .type_bg .type ul li {
    width: 47%;
    margin: 0;
  }
  .typeArea .inner .type_bg .type ul li:nth-child(odd) {
  }
  .typeArea .inner .type_bg .type ul li:nth-child(n + 4) {
    margin-top: 0;
  }
  .typeArea .inner .type_bg .type ul li:nth-child(n + 3) {
    margin-top: 20px;
  }
  .typeArea .inner .type_bg .type ul li > span {
    font-size: calc(18px - 7 * ((600px - 100vw) / (600 - 320)));
  }
  .typeArea .inner .type_bg ul span {
  }
  .typeArea .inner .type_bg ul span br {
  }
  .typeArea .inner .type_bg .type .btnArea {
    width: 100%;
    height: 80px;
  }
  .typeArea .inner .type_bg .btnArea .service {
  }
  .typeArea .inner .type_bg .btnArea .btn {
  }
  .typeArea .inner .type_bg .type .btnArea .btn a {
    width: 100px;
  }
  .typeArea .inner .type_bg .btnArea a:hover {
  }
  .typeArea .inner .type_bg .btnArea a:active {
  }
  .typeArea .inner .type_bg .btnArea a:focus {
  }
  .typeArea .inner .type_bg .btnArea a span {
  }

  /* serviceArea */
  .serviceArea {
  }
  .serviceArea .inner {
    padding-left: 0;
  }
  .serviceArea .inner .h2Area {
  }
  .serviceArea .inner .h2Area h2 {
  }
  .serviceArea .inner .h2Area .h2txt {
  }
  .serviceArea .inner ul {
  }
  .serviceArea .inner ul li {
  }
  .serviceArea .inner ul .imgArea {
  }
  .serviceArea .inner ul .imgArea .number {
  }
  .serviceArea .inner ul .imgArea .img {
  }
  .serviceArea .inner ul .imgArea img {
  }
  .serviceArea .inner ul h3 {
  }
  .serviceArea .inner ul .txt {
  }
  .serviceArea .inner ul .btn02 {
  }
  .serviceArea .inner ul .btn02 a {
  }
  .serviceArea .inner ul .btn02 a:hover {
  }
  .serviceArea .inner ul .btn02 a:active {
  }
  .serviceArea .inner ul .btn02 a:focus {
  }
  .serviceArea .inner .btnArea {
  }
  .serviceArea .inner .btnArea .service {
  }
  .serviceArea .inner .btnArea .btn {
  }
  .serviceArea .inner .btnArea a {
  }
  .serviceArea .inner .btnArea a:hover {
  }
  .serviceArea .inner .btnArea a:active {
  }
  .serviceArea .inner .btnArea a:focus {
  }
  .serviceArea .inner .btnArea a span {
  }
}
/* // MARK: maxW500px */
@media screen and (max-width: 500px) {
  .btn001 {
    max-width: 100%;
  }
	  .mainArea .inner .m_txtArea .m_txt .txt .h2_txt {
    text-shadow: rgb(255 255 255) 3px 0px 0px, rgb(255 255 255) 2.83487px 0.981584px 0px, rgb(255 255 255) 2.35766px 1.85511px 0px, rgb(255 255 255) 1.62091px 2.52441px 0px, rgb(255 255 255) 0.705713px 2.91581px 0px, rgb(255 255 255) -0.287171px 2.98622px 0px, rgb(255 255 255) -1.24844px 2.72789px 0px, rgb(255 255 255) -2.07227px 2.16926px 0px, rgb(255 255 255) -2.66798px 1.37182px 0px, rgb(255 255 255) -2.96998px 0.42336px 0px, rgb(255 255 255) -2.94502px -0.571704px 0px, rgb(255 255 255) -2.59586px -1.50383px 0px, rgb(255 255 255) -1.96093px -2.27041px 0px, rgb(255 255 255) -1.11013px -2.78704px 0px, rgb(255 255 255) -0.137119px -2.99686px 0px, rgb(255 255 255) 0.850987px -2.87677px 0px, rgb(255 255 255) 1.74541px -2.43999px 0px, rgb(255 255 255) 2.44769px -1.73459px 0px, rgb(255 255 255) 2.88051px -0.838247px 0px;
  }
	  .mainArea .inner .m_txtArea .m_txt .txt .h2_txt span {
    text-shadow: rgb(255 255 255) 3px 0px 0px, rgb(255 255 255) 2.83487px 0.981584px 0px, rgb(255 255 255) 2.35766px 1.85511px 0px, rgb(255 255 255) 1.62091px 2.52441px 0px, rgb(255 255 255) 0.705713px 2.91581px 0px, rgb(255 255 255) -0.287171px 2.98622px 0px, rgb(255 255 255) -1.24844px 2.72789px 0px, rgb(255 255 255) -2.07227px 2.16926px 0px, rgb(255 255 255) -2.66798px 1.37182px 0px, rgb(255 255 255) -2.96998px 0.42336px 0px, rgb(255 255 255) -2.94502px -0.571704px 0px, rgb(255 255 255) -2.59586px -1.50383px 0px, rgb(255 255 255) -1.96093px -2.27041px 0px, rgb(255 255 255) -1.11013px -2.78704px 0px, rgb(255 255 255) -0.137119px -2.99686px 0px, rgb(255 255 255) 0.850987px -2.87677px 0px, rgb(255 255 255) 1.74541px -2.43999px 0px, rgb(255 255 255) 2.44769px -1.73459px 0px, rgb(255 255 255) 2.88051px -0.838247px 0px;
  }

}
/* // MARK: maxW340px */
@media screen and (max-width: 340px) {
  .mainArea .kireijpArea {
    padding: 25px 0 25px 10px;
  }
}
