@charset "UTF-8";
/*
# =================================================================
# トップページ
# =================================================================*/
#top .mv {
  background: #f5f5f5;
  position: relative;
  overflow: hidden;
}
#top .mv .bgImg {
  position: relative;
}
#top .mv .bgImg img {
  max-width: none;
  position: absolute;
  top: 0;
}
#top .mv .bgImg1 {
  margin: 0 0 7px 0;
  height: 130px;
}
#top .mv .bgImg1 img {
  width: 5848px;
  right: 0;
  animation: mvBgSlider1 60s linear infinite;
}
@keyframes mvBgSlider1 {
  100% {right: -2924px;}
}
#top .mv .bgImg2 {
  height: 146px;
  margin: 0 0 7px 0;
}
#top .mv .bgImg2 img {
  width: 5516px;
  left: 0;
  animation: mvBgSlider2 60s linear infinite;
}
@keyframes mvBgSlider2 {
  100% {left: -2758px;}
}
#top .mv .bgImg3 {
  height: 146px;
  margin: 0 0 7px 0;
}
#top .mv .bgImg3 img {
  width: 5848px;
  right: 0;
  animation: mvBgSlider3 60s linear infinite;
}
@keyframes mvBgSlider3 {
  100% {right: -2924px;}
}
#top .mv .bgImg4 {
  height: 124px;
}
#top .mv .bgImg4 img {
  width: 5520px;
  left: 0;
  animation: mvBgSlider4 60s linear infinite;
}
@keyframes mvBgSlider4 {
  100% {left: -2760px;}
}
#top .mv .bgImg5 {
  height: 124px;
}
#top .mv .bgImg5 img {
  width: 5520px;
  right: 0;
  animation: mvBgSlider5 60s linear infinite;
}
@keyframes mvBgSlider5 {
  100% {right: -2760px;}
}
#top .mv h2 {
  margin: 15px 0;
  padding: 0 5%;
}
#top .mv h2 img {
  margin: 0 auto;
  display: block;
}
#top .mv .txt {
  max-width: 1366px;
  width: 100%;
  margin: 0 auto;
  position: absolute;
  top: 130px;
  left: 0;
  right: 0;
}
#top .mv .txt img:nth-of-type(1) {
  display: block;
}
#top .mv .txt img:nth-of-type(2) {
  margin: -7px 0 0 auto;
  display: block;
}

#top .about {
  padding: 80px 0 150px 0;
  background: url(../img/aboutImg1.png) no-repeat right top 480px,
  url(../img/aboutImg2.png) no-repeat right bottom;
  border-top: 15px solid #00aeeb;
  overflow: hidden;
}
#top .about .sliderTxt {
  margin: 0 0 110px 0;
}
#top .about .inner {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}
#top .about .inner .ttl {
  margin: 0 0 80px 0;
}
#top .about .inner .ttl span {
  padding: 50px 0 0 0;
  font-size: 18px;
  font-weight: bold;
  color: #00aeeb;
  display: block;
  position: relative;
}
#top .about .inner .ttl span::before {
  content: '';
  width: 70px;
  height: 18px;
  background: url(../img/common/ttlImg1.png) no-repeat left top / 70px;
  position: absolute;
  top: 10px;
  left: 0;
}
#top .about .inner .mainTxt {
  margin: 0 0 80px 0;
}
#top .about .inner p {
  margin: 0 0 90px 0;
  font-weight: 700;
  color: #00aeeb;
  line-height: 2.4;
  letter-spacing: .06em;
}
#top .serviceSptool {
  height: 3300px;
  padding: 120px 0 40px 0;
  background: #00aeeb;
  position: relative;
}
#top .serviceSptool .inner {
  height: 100%;
  position: relative;
}
#top .serviceSptool .inner > .ttl {
  text-align: center;
}
#top .serviceSptool .inner > .ttl .bar::before {
	background: #fff;
}
#top .serviceSptool .inner > .ttl .bar h2 {
  color: #fff;
}
#top .serviceSptool .inner > .ttl span {
  padding: 50px 0 0 0;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  display: block;
  position: relative;
}
#top .serviceSptool .inner > .ttl span::before {
  content: '';
  width: 70px;
  height: 18px;
  margin: 0 auto;
  background: url(../img/common/ttlImg1.png) no-repeat left top / 70px;
  position: absolute;
  top: 10px;
  left: 0;
  right: 0;
}
#top .serviceSptool .inner .bgImg {
  padding: 0 0 40px 0;
  background: url(../img/serviceBg1.png) no-repeat left bottom / 380px;
  position: sticky;
  top: 0;
}
#top .serviceSptool .inner .boxPageSlide {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
  padding: 100px 0 0 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
}
#top .serviceSptool .inner .boxPageSlide .boxTxt {
  width: calc(100% - 580px);
  padding: 0 20px 0 0;
}
#top .serviceSptool .inner .boxPageSlide .boxTxt .ttl {
  margin: 0 0 40px 0;
}
#top .serviceSptool .inner .boxPageSlide .boxTxt .ttl .bar::before {
	background: #fff;
}
#top .serviceSptool .inner .boxPageSlide .boxTxt .ttl .bar h3 {
  font-size: 90px;
  color: #fff;
}
#top .serviceSptool .inner .boxPageSlide .boxTxt h4 span {
  width: 340px;
  margin: 0 0 35px 0;
  padding: 0 5px 5px 10px;
  background: #e95541;
  font-size: 36px;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  letter-spacing: .06em;
  display: inline-block;
  position: relative;
}
#top .serviceSptool .inner .boxPageSlide .boxTxt h5 {
  margin: 0 0 35px 0;
  font-size: 25px;
  font-weight: 700;
  color: #fff;
  line-height: 1.6;
}
#top .serviceSptool .inner .boxPageSlide .boxTxt p {
  max-width: 350px;
  width: 100%;
  margin: 0 0 35px 0;
  font-weight: 700;
  color: #fff;
  line-height: 2;
  letter-spacing: .02em;
}
#top .serviceSptool .inner .boxPageSlide .boxImg {
  width: 580px;
  height: 580px;
  position: relative;
}
#top .serviceSptool .inner .boxPageSlide .boxImg img {
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
#top .serviceSptool .inner .boxPageSlide .boxImg .barWrap {
  position: absolute;
  top: 605px;
  left: 0;
  right: 0;
  width: 270px;
  margin: 0 auto;
  z-index: 10;
  box-sizing: border-box;
}
#top .serviceSptool .inner .boxPageSlide .boxImg .barWrap .scrollBar {
  width: 100%;
  height: 3px;
  background: #fff;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
  display: block;
}
#top .serviceSptool .inner .boxPageSlide .boxImg .barWrap .scrollBar .current {
  width: 100%;
  height: 100%;
  background: #e95541;
  position: absolute;
  left: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .05s linear;
}
#top .serviceSptool .inner .boxPageSlide .boxImg .barWrap .number1 {
  font-family: "Rokkitt", serif;
  font-weight: 500;
  color: #fff;
  line-height: 1;
  position: absolute;
  top: -6px;
  left: -30px;
}
#top .serviceSptool .inner .boxPageSlide .boxImg .barWrap .maxNumber {
  font-family: "Rokkitt", serif;
  font-weight: 500;
  color: #fff;
  line-height: 1;
  position: absolute;
  top: -6px;
  right: -33px;
}
#top .serviceOriginal {
  height: 3300px;
  padding: 120px 0 40px 0;
  background: #f5f5f5;
  position: relative;
}
#top .serviceOriginal .inner {
  height: 100%;
  position: relative;
}
#top .serviceOriginal .inner .bgImg {
  padding: 0 0 40px 0;
  background: url(../img/serviceBg2.png) no-repeat right bottom / 430px;
  position: sticky;
  top: 0;
}
#top .serviceOriginal .inner .boxPageSlide {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
  padding: 100px 0 0 0;
  display: flex;
  flex-wrap: wrap;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt {
  width: calc(100% - 580px);
  padding: 0 0 0 100px;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt .ttl {
  margin: 0 0 40px 0;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt .ttl .bar::before {
	background: #00aeeb;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt .ttl .bar h3 {
  font-size: 90px;
  color: #00aeeb;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt h4 span {
  width: 328px;
  margin: 0 0 15px 0;
  padding: 0 5px 5px 5px;
  background: #e95541;
  font-size: 36px;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  letter-spacing: .06em;
  display: block;
  position: relative;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt h4 span:nth-of-type(2) {
  width: 240px;
  margin: 0 0 35px 0;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt h5 {
  margin: 0 0 35px 0;
  font-size: 25px;
  font-weight: 700;
  color: #00aeeb;
  line-height: 1.6;
}
#top .serviceOriginal .inner .boxPageSlide .boxTxt p {
  margin: 0 0 35px 0;
  font-weight: 700;
  color: #00aeeb;
  line-height: 2;
  letter-spacing: .02em;
}
#top .serviceOriginal .inner .boxPageSlide .boxImg {
  width: 580px;
  height: 580px;
  position: relative;
}
#top .serviceOriginal .inner .boxPageSlide .boxImg img {
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
#top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap {
  position: absolute;
  top: 605px;
  left: 0;
  right: 0;
  width: 270px;
  margin: 0 auto;
  z-index: 10;
  box-sizing: border-box;
}
#top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap .scrollBar {
  width: 100%;
  height: 3px;
  background: #00aeeb;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
  display: block;
}
#top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap .scrollBar .current {
  width: 100%;
  height: 100%;
  background: #e95541;
  position: absolute;
  left: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .05s linear;
}
#top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap .number2 {
  font-family: "Rokkitt", serif;
  font-weight: 500;
  color: #00aeeb;
  line-height: 1;
  position: absolute;
  top: -6px;
  left: -30px;
}
#top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap .maxNumber {
  font-family: "Rokkitt", serif;
  font-weight: 500;
  color: #00aeeb;
  line-height: 1;
  position: absolute;
  top: -6px;
  right: -33px;
}
#top .other {
  padding: 130px 0 140px 0;
  background: url(../img/otherBg1.jpg) no-repeat center top / cover;
  border-top: 15px solid #00aeeb;
}
#top .other .inner {
  max-width: 650px;
  width: 90%;
  margin: 0 auto;
}
#top .other .inner .ttl {
  margin: 0 0 45px 0;
  text-align: center;
}
#top .other .inner .ttl .bar::before {
  background: #e95541;
}
#top .other .inner .ttl .bar h2 {
  color: #e95541;
}
#top .other .inner .ttl span {
  padding: 5px 0 0 0;
  font-size: 18px;
  font-weight: bold;
  color: #00aeeb;
  text-align: center;
  letter-spacing: .1em;
  display: block;
}
#top .other .inner a {
  display: block;
  position: relative;
}
#top .other .inner a::after {
  content: '';
  width: 70px;
  height: 70px;
  background: url(../img/otherBtn1.svg) no-repeat left top / 70px;
  position: absolute;
  bottom: 15px;
  right: 15px;
  transition: .3s;
}
#top .other .inner a:hover::after {
  background: url(../img/otherBtn1_o.svg) no-repeat left top / 70px;
}
#top .recruit {
  padding: 130px 0 0 0;
  background: url(../img/recruitImg1.jpg) no-repeat left top / contain,
  url(../img/recruitImg2.jpg) no-repeat right top / contain,
  url(../img/recruitBg1.jpg) no-repeat center top / cover;
  border-top: 15px solid #00aeeb;
  overflow: hidden;
}
#top .recruit .inner {
  max-width: 765px;
  width: 90%;
  margin: 0 auto;
}
#top .recruit .inner .ttl {
  margin: 0 0 50px 0;
  text-align: center;
}
#top .recruit .inner .ttl span {
  padding: 50px 0 0 0;
  font-size: 18px;
  font-weight: bold;
  color: #00aeeb;
  letter-spacing: .1em;
  display: block;
  position: relative;
}
#top .recruit .inner .ttl span::before {
  content: '';
  width: 70px;
  height: 18px;
  margin: 0 auto;
  background: url(../img/common/ttlImg1.png) no-repeat left top / 70px;
  position: absolute;
  top: 10px;
  left: 0;
  right: 0;
}
#top .recruit .inner p {
  width: 40vw;
  margin: 0 auto 40px auto;
  font-weight: 700;
  color: #00aeeb;
  text-align: center;
  line-height: 2;
  letter-spacing: .02em;
}
#top .recruit .inner .btnViewmore {
  margin: 0 auto 100px auto;
}
#top .contact {
  padding: 100px 0 115px 0;
  background: #00aeeb;
}
#top .contact .inner {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}
#top .contact .inner > a {
  max-width: 520px;
  width: 100%;
  margin: 0 auto 25px auto;
  font-family: "Rokkitt", serif;
  font-size: 115px;
  font-weight: 500;
  color: #fff;
  line-height: 1;
  display: block;
  position: relative;
}
#top .contact .inner > a::after {
  content: '';
  width: 100px;
  height: 100px;
  background: url(../img/contactBtn1.svg) no-repeat left top / 100px;
  position: absolute;
  top: 0;
  right: 0;
  transition: .3s;
}
#top .contact .inner > a:hover::after {
  background: url(../img/contactBtn1_o.svg) no-repeat left top / 100px;
}
#top .contact .inner p {
  margin: 0 0 45px 0;
  font-weight: 700;
  color: #fff;
  text-align: center;
  letter-spacing: .02em;
}
#top .contact .inner .telInfo {
  text-align: center;
}
#top .contact .inner .telInfo > span {
  font-family: "Rokkitt", serif;
  font-size: 40px;
  color: #fff;
  font-weight: 500;
}
#top .contact .inner .telInfo > span a {
  color: #fff;
}
#top .contact .inner .telInfo > span:nth-of-type(1) {
  margin: 0 5px 0 0;
}
#top .contact .inner .telInfo > span:nth-of-type(3) {
  margin: 15px 0 0 0;
  display: block;
}
#top .contact .inner .telInfo > span span {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 20px;
  font-weight: 700;
}

/*
# =================================================================
# レスポンシブ要素
# =================================================================*/
/* 4K:2560px */
/* PC:1920px */

/* laptop NotePC L */
@media screen and (max-width: 1440px) {
}
@media screen and (max-width: 1240px) {
  /* トップページ */
  #top .about {
    background: url(../img/aboutImg1.png) no-repeat right -20px top 480px / 250px,
    url(../img/aboutImg2.png) no-repeat right bottom / 640px;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt {
    width: 50%;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt .ttl .bar h3 {
    font-size: 80px;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt h4 span {
    width: 270px;
    font-size: 28px;
  }
  #top .serviceSptool .inner .boxPageSlide .boxImg {
    width: 50%;
  }
  #top .serviceSptool .inner .boxPageSlide .boxImg .barWrap {
    width: 200px;
    top: 46vw;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt {
    width: 50%;
    padding: 0 0 0 50px;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt .ttl .bar h3 {
    font-size: 80px;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt h4 span {
    width: 250px;
    font-size: 28px;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt h4 span:nth-of-type(2) {
    width: 190px;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg {
    width: 50%;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap {
    width: 200px;
    top: 46vw;
  }
  #top .recruit {
    background: url(../img/recruitImg1.jpg) no-repeat left -80px top / contain,
    url(../img/recruitImg2.jpg) no-repeat right -80px top / contain,
    url(../img/recruitBg1.jpg) no-repeat center top / cover;
  }
}

/* laptop NotePC */
@media screen and (max-width: 1024px) {
  /* トップページ */
  #top .about {
    background: url(../img/aboutImg1.png) no-repeat right -20px top 480px / 250px,
    url(../img/aboutImg2.png) no-repeat right bottom / 500px;
  }
  #top .recruit {
    background: url(../img/recruitImg1.jpg) no-repeat left -150px top / contain,
    url(../img/recruitImg2.jpg) no-repeat right -150px top / contain,
    url(../img/recruitBg1.jpg) no-repeat center top / cover;
  }
}

/* tablet */
@media screen and (max-width: 768px) {
  /* トップページ */
  #top .mv .bgImg4 {
    margin: 0 0 7px 0;
  }
  #top .mv h2 {
    display: none;
  }
  #top .mv .txt {
    height: 313px;
    padding: 0 7%;
    background: #f5f5f5;
  }
  #top .mv .txt img {
    width: 320px;
    margin: 55px auto 0 auto;
  }
  #top .about {
    padding: 80px 0 170px 0;
    background: url(../img/aboutImg1.png) no-repeat right -20px top 320px / 180px,
    url(../img/aboutImg2.png) no-repeat right bottom / 300px;
  }
  #top .serviceSptool .inner .boxPageSlide {
    display: block;
  }
  #top .serviceSptool .inner .bgImg {
    background: url(../img/serviceBg1.png) no-repeat left bottom / 285px;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt {
    width: 100%;
    padding: 0;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt p {
    max-width: none;
  }
  #top .serviceSptool .inner .boxPageSlide .boxImg {
    width: 414px;
    height: 414px;
    margin: 0 auto 70px auto;
  }
  #top .serviceSptool .inner .boxPageSlide .boxImg .barWrap {
    width: 200px;
    top: 435px;
  }
  #top .serviceOriginal .inner .boxPageSlide {
    display: block;
  }
  #top .serviceOriginal .inner .bgImg {
    background: url(../img/serviceBg2.png) no-repeat right bottom / 360px;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt {
    width: 100%;
    padding: 0;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt p {
    max-width: none;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg {
    width: 414px;
    height: 414px;
    margin: 0 auto 70px auto;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap {
    width: 200px;
    top: 435px;
  }
  #top .recruit {
    padding: 70vw 0 0 0;
    background: url(../img/recruitImg1_sp.jpg) no-repeat center top / 100%,
    url(../img/recruitImg2_sp.jpg) no-repeat center bottom / 100%,
    url(../img/recruitBg1.jpg) no-repeat center top / cover;
  }
  #top .recruit .inner p {
    width: 100%;
  }
  #top .recruit .inner .btnViewmore {
    margin: 0 auto 55vw auto;
  }
  #top .contact .inner > a {
    max-width: 350px;
    font-size: 80px;
  }
  #top .contact .inner > a::after {
    width: 70px;
    height: 70px;
    background: url(../img/contactBtn1.svg) no-repeat left top / 70px;
  }
  #top .contact .inner > a:hover::after {
    background: url(../img/contactBtn1_o.svg) no-repeat left top / 70px;
  }
  #top .contact .inner p {
    line-height: 1.6;
  }
  #top .contact .inner .telInfo > span {
    margin: 0 0 15px 0;
    font-size: 30px;
    display: block;
  }
  #top .contact .inner .telInfo > span:nth-of-type(1) {
    margin: 0 0 15px 0;
  }
  #top .contact .inner .telInfo > span:nth-of-type(3) {
    margin: 0;
  }
  #top .contact .inner .telInfo > span span {
    font-size: 15px;
  }
}

/* mobile L */
@media screen and (max-width: 480px) {
  /* トップページ */
  #top .mv .bgImg1 {
    height: 120px;
  }
  #top .mv .bgImg1 img {
    width: 5398px;
  }
  @keyframes mvBgSlider1 {
    100% {right: -2698px;}
  }
  #top .mv .bgImg4 {
    height: 118px;
  }
  #top .mv .bgImg4 img {
    width: 5253px;
  }
  @keyframes mvBgSlider4 {
    100% {left: -2626px;}
  }
  #top .mv .txt {
    top: 120px;
  }
  #top .about {
    padding: 50px 0 170px 0;
    background: url(../img/aboutImg1.png) no-repeat right -10px top 160px / 100px,
    url(../img/aboutImg2.png) no-repeat right bottom / 300px;
    border-top: 10px solid #00aeeb;
  }
  #top .about .sliderTxt {
    margin: 0 0 25px 0;
  }
  #top .about .inner .ttl {
    margin: 0 0 40px 0;
  }
  #top .about .inner .ttl span {
    padding: 40px 0 0 0;
    font-size: 4.2vw;
    letter-spacing: .06em;
  }
  #top .about .inner .ttl span::before {
    width: 60px;
    height: 15px;
    background: url(../img/common/ttlImg1.png) no-repeat left top / 60px;
    top: 7px;
  }
  #top .about .inner .mainTxt {
    margin: 0 0 35px 0;
  }
  #top .about .inner p {
    margin: 0 0 30px 0;
    font-size: 4vw;
    text-align: justify;
    line-height: 2;
  }
  #top .serviceSptool {
    height: 2700px;
    padding: 50px 0;
  }
  #top .serviceSptool .inner > .ttl span {
    padding: 40px 0 0 0;
    font-size: 4.6vw;
  }
  #top .serviceSptool .inner > .ttl span::before {
    width: 60px;
    height: 15px;
    background: url(../img/common/ttlImg1.png) no-repeat left top / 60px;
    top: 7px;
  }
  #top .serviceSptool .inner .bgImg {
    background: url(../img/serviceBg1.png) no-repeat left bottom / 270px;
  }
  #top .serviceSptool .inner .boxPageSlide {
    padding: 35px 0 0 0;
  }
  #top .serviceSptool .inner .boxPageSlide .boxImg {
    width: 319px;
    height: 319px;
    margin: 0 auto 50px auto;
  }
  #top .serviceSptool .inner .boxPageSlide .boxImg .barWrap {
    top: 340px;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt .ttl {
    margin: 0 0 20px 0;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt .ttl .bar h3 {
    font-size: 13vw;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt h4 span {
    width: 70vw;
    margin: 0 0 25px 0;
    font-size: 7.4vw;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt h5 {
    margin: 0 0 25px 0;
    font-size: 5.8vw;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt p {
    margin: 0 0 25px 0;
    font-size: 3.8vw;
  }
  #top .serviceOriginal {
    height: 2700px;
    padding: 20px 0 0 0;
  }
  #top .serviceOriginal .inner .bgImg {
    background: url(../img/serviceBg2.png) no-repeat right bottom / 250px;
  }
  #top .serviceOriginal .inner .boxPageSlide {
    padding: 35px 0 0 0;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg {
    width: 319px;
    height: 319px;
    margin: 0 auto 50px auto;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap {
    top: 340px;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt .ttl {
    margin: 0 0 20px 0;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt .ttl .bar h3 {
    font-size: 13vw;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt h4 span {
    width: 69vw;
    font-size: 7.4vw;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt h4 span:nth-of-type(2) {
    width: 52vw;
    margin: 0 0 30px 0;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt h5 {
    margin: 0 0 25px 0;
    font-size: 5.8vw;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxTxt p {
    margin: 0 0 25px 0;
    font-size: 3.8vw;
  }
  #top .other {
    padding: 40px 0 50px 0;
    background: url(../img/otherBg1.jpg) no-repeat center top / 1200px;
    border-top: 10px solid #00aeeb;
  }
  #top .other .inner a::after {
    width: 35px;
    height: 35px;
    background: url(../img/otherBtn1.svg) no-repeat left top / 35px;
    bottom: 8px;
    right: 8px;
  }
  #top .other .inner a img {
    border-radius: 10px;
  }
  #top .recruit {
    padding: 73vw 0 0 0;
    background: url(../img/recruitImg1_sp.jpg) no-repeat center top / 100%,
    url(../img/recruitImg2_sp.jpg) no-repeat center bottom / 100%,
    url(../img/recruitBg1.jpg) no-repeat center top 50vw / 1300px;
    border-top: 10px solid #00aeeb;
  }
  #top .recruit .inner .ttl {
    margin: 0 0 30px 0;
  }
  #top .recruit .inner .ttl span {
    padding: 40px 0 0 0;
    font-size: 4.6vw;
  }
  #top .recruit .inner .ttl span::before {
    width: 60px;
    height: 15px;
    background: url(../img/common/ttlImg1.png) no-repeat left top / 60px;
    top: 7px;
  }
  #top .recruit .inner p {
    margin: 0 auto 30px auto;
    font-size: 3.8vw;
    text-align: left;
  }
  #top .contact {
    padding: 50px 0;
  }
  #top .contact .inner > a {
    margin: 0 auto 15px auto;
    font-size: 19vw;
  }
  #top .contact .inner > a::after {
    width: 60px;
    height: 60px;
    background: url(../img/contactBtn1.svg) no-repeat left top / 60px;
  }
  #top .contact .inner > a:hover::after {
    background: url(../img/contactBtn1_o.svg) no-repeat left top / 60px;
  }
  #top .contact .inner p {
    margin: 0 0 25px 0;
    font-size: 3.8vw;
  }
  #top .contact .inner .telInfo > span {
    margin: 0 0 10px 0;
    font-size: 6.6vw;
  }
  #top .contact .inner .telInfo > span:nth-of-type(1) {
    margin: 0 0 10px 0;
  }
  #top .contact .inner .telInfo > span span {
    font-size: 3.3vw;
  }
}

/* mobile M */
@media screen and (max-width: 375px) {
}
@media screen and (max-width: 374px) {
  /* トップページ */
  #top .serviceSptool .inner .boxPageSlide .boxImg {
    width: 280px;
    height: 280px;
  }
  #top .serviceSptool .inner .boxPageSlide .boxImg .barWrap {
    top: 300px;
  }
  #top .serviceSptool .inner .boxPageSlide .boxTxt h4 span {
    width: 72vw;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg {
    width: 280px;
    height: 280px;
  }
  #top .serviceOriginal .inner .boxPageSlide .boxImg .barWrap {
    top: 300px;
  }
}

/* mobile S */
@media screen and (max-width: 320px) {
}
