@charset "UTF-8";
* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

*, h1, h2, h3, h4, h5, p {
  padding: 0;
  margin: 0;
}

html {
  font-size: 10px;
  overflow-y: scroll;
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  html {
    overflow-x: hidden;
    width: 100%;
  }
}

body {
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  body {
    width: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  body {
    overflow-x: hidden;
    width: 100%;
  }
}

a {
  text-decoration: none;
}

ul, li {
  list-style: none;
}

*:focus {
  outline: none;
}

img {
  vertical-align: bottom;
  border: 0px;
  width: 100%;
  height: 100%;
}

section {
  position: relative;
}

.pc-none {
  display: none;
}
@media screen and (min-width: 1501px) {
  .pc-none {
    display: none;
  }
}
@media screen and (min-width: 1281px) and (max-width: 1500px) {
  .pc-none {
    display: none;
  }
}
@media screen and (min-width: 961px) and (max-width: 1280px) {
  .pc-none {
    display: none;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .pc-none {
    display: block;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .pc-none {
    display: block;
  }
}
@media screen and (max-width: 375px) {
  .pc-none {
    display: block;
  }
}

.sp-none {
  display: block;
}
@media screen and (min-width: 1501px) {
  .sp-none {
    display: block;
  }
}
@media screen and (min-width: 1281px) and (max-width: 1500px) {
  .sp-none {
    display: block;
  }
}
@media screen and (min-width: 961px) and (max-width: 1280px) {
  .sp-none {
    display: block;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .sp-none {
    display: none;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .sp-none {
    display: none;
  }
}
@media screen and (max-width: 375px) {
  .sp-none {
    display: none;
  }
}

/****************************************
		1. General Setting
*****************************************/
html, body, div, span, applet, object, iframe, strong,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, legend, caption,
tbody, tfoot, thead, table, label, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  list-style: none;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

html {
  background-color: #fff;
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  html {
    width: 99%;
    margin: 0 auto;
  }
}

body {
  font-family: "Noto Sans JP", "Inconsolata", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "ms pgothic", "osaka", sans-serif;
  font-size: 14px;
  color: #000;
}

img {
  vertical-align: text-bottom;
}

iframe {
  width: 100% !important;
}

.clear {
  clear: both;
  line-height: 0;
}

.catch_br {
  display: none;
}
@media screen and (min-width: 1501px) {
  .catch_br {
    display: none;
  }
}
@media screen and (min-width: 1281px) and (max-width: 1500px) {
  .catch_br {
    display: none;
  }
}
@media screen and (min-width: 961px) and (max-width: 1280px) {
  .catch_br {
    display: none;
  }
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .catch_br {
    display: block;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .catch_br {
    display: block;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .catch_br {
    display: block;
  }
}
@media screen and (max-width: 375px) {
  .catch_br {
    display: block;
  }
}

/****************************************
costomize_propety
*****************************************/
@media screen and (min-width: 431px) and (max-width: 695px) {
  main {
    top: 0;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  main {
    top: 0;
  }
}
@media screen and (max-width: 375px) {
  main {
    top: 0;
  }
}

.prdct-slider {
  margin: 140px 0;
}
.prdct-slider .slick-list:after {
  content: "";
  position: absolute;
  border-bottom: 1px solid #ccc;
  bottom: -140px;
  left: 0px;
  width: 80vw;
  height: 5px;
}
@media screen and (min-width: 1501px) {
  .prdct-slider .slick-list:after {
    width: calc(1500px - 13vw);
  }
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .prdct-slider .slick-list:after {
    display: none;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .prdct-slider .slick-list:after {
    display: none;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .prdct-slider .slick-list:after {
    display: none;
  }
}
@media screen and (max-width: 375px) {
  .prdct-slider .slick-list:after {
    display: none;
  }
}
.prdct-slider .slick-list .slick-slide {
  opacity: 0.65;
  margin: 0 35px;
}
.prdct-slider .slick-list .slick-current {
  opacity: 1;
  -webkit-transform: scale(1.35);
          transform: scale(1.35);
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .prdct-slider .slick-list .slick-current {
    -webkit-transform: scale(1.65);
            transform: scale(1.65);
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .prdct-slider .slick-list .slick-current {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .prdct-slider .slick-list .slick-current {
    -webkit-transform: scale(1.6);
            transform: scale(1.6);
  }
}
@media screen and (max-width: 375px) {
  .prdct-slider .slick-list .slick-current {
    -webkit-transform: scale(1.6);
            transform: scale(1.6);
  }
}

.second_view {
  width: 90%;
  margin: 70px auto 0;
}
.second_view h2 {
  background-color: #000;
  padding: 10px 36px 18px;
  color: #fff;
  font-weight: bold;
  font-size: 46px;
  letter-spacing: 2.5px;
  margin: 0 0 20px 0;
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .second_view h2 {
    text-align: center;
    font-size: 7vw;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .second_view h2 {
    text-align: center;
    font-size: 6.3vw;
  }
}
@media screen and (max-width: 375px) {
  .second_view h2 {
    text-align: center;
    font-size: 6.3vw;
  }
}
.second_view h2 .big {
  font-size: 56px;
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .second_view h2 .big {
    font-size: 19.5vw;
    letter-spacing: 10px;
    text-align: center;
    margin: 0 2%;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .second_view h2 .big {
    font-size: 18vw;
    letter-spacing: 10px;
    text-align: center;
  }
}
@media screen and (max-width: 375px) {
  .second_view h2 .big {
    font-size: 18vw;
    letter-spacing: 10px;
    text-align: center;
  }
}
.second_view h2 .small {
  font-size: 30px;
  position: relative;
  top: -3px;
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .second_view h2 .small {
    top: -1px;
    font-size: 4.5vw;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .second_view h2 .small {
    top: -1px;
    font-size: 4.5vw;
  }
}
@media screen and (max-width: 375px) {
  .second_view h2 .small {
    top: -1px;
    font-size: 4.5vw;
  }
}
.second_view .text-box {
  margin: 26px 0 0 0;
}
.second_view .four-box {
  margin: 70px 0 0 0;
}
.second_view .four-box .box {
  display: inline-block;
  width: 48.75%;
  margin: 0 2% 80px 0;
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .second_view .four-box .box {
    display: block;
    width: 100%;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .second_view .four-box .box {
    display: block;
    width: 100%;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .second_view .four-box .box {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 375px) {
  .second_view .four-box .box {
    display: block;
    width: 100%;
  }
}
.second_view .four-box .box p {
  font-size: 22px;
  font-weight: 600;
  margin: 8px 0 0 9px;
}
.second_view .four-box .box:nth-child(2) {
  margin: 0 0 80px 0;
}

h3 {
  margin: 50px 0 0 0;
  font-size: 55px;
  letter-spacing: 6px;
  text-align: center;
}
h3 rt {
  font-size: 35px;
}

.service {
  margin: 200px 0 0 0;
}
.service .img-link {
  position: relative;
  margin: 120px 0 0 0;
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .service .img-link {
    display: block;
    width: 100%;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .service .img-link {
    display: block;
    width: 100%;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .service .img-link {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 375px) {
  .service .img-link {
    display: block;
    width: 100%;
  }
}
.service .img-link .rehamo_link {
  position: absolute;
  border-radius: 0;
  border: 0;
  font-size: 25px;
  font-weight: 500;
  top: 85%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .service .img-link .rehamo_link {
    display: block;
    width: 100%;
    font-size: 4.9vw;
    margin: 0 auto;
    left: 58%;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .service .img-link .rehamo_link {
    display: block;
    width: 100%;
    font-size: 4.9vw;
    margin: 0 auto;
    left: 58%;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .service .img-link .rehamo_link {
    display: block;
    width: 100%;
    font-size: 4.9vw;
    margin: 0 auto;
    left: 58%;
  }
}
@media screen and (max-width: 375px) {
  .service .img-link .rehamo_link {
    display: block;
    width: 100%;
    font-size: 4.9vw;
    margin: 0 auto;
    left: 58%;
  }
}
.service .img-link .rehamo_link:after {
  position: absolute;
  content: "";
  background-color: #000;
  width: 85%;
  height: 1.5px;
  bottom: 30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .service .img-link .rehamo_link:after {
    width: 80%;
    height: 1.5px;
    bottom: -38px;
    left: 42.5%;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .service .img-link .rehamo_link:after {
    width: 80%;
    height: 1.5px;
    bottom: -38px;
    left: 42.5%;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .service .img-link .rehamo_link:after {
    width: 80%;
    height: 1.5px;
    bottom: -38px;
    left: 42.5%;
  }
}
@media screen and (max-width: 375px) {
  .service .img-link .rehamo_link:after {
    width: 80%;
    height: 1.5px;
    bottom: -38px;
    left: 42.5%;
  }
}
.service .img-link .rehamo_link a {
  display: inline-block;
  padding: 35px 4vw 35px 4vw;
  background-color: #fff;
  color: #000;
  -webkit-box-shadow: 2px 2px 2px rgba(33, 33, 33, 0.35);
          box-shadow: 2px 2px 2px rgba(33, 33, 33, 0.35);
  opacity: 0.96;
  -webkit-appearance: none;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}
.service .img-link .rehamo_link a:hover {
  cursor: pointer;
  color: #000;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
          box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}
.service .img-link .rehamo_link span:after {
  content: "";
  display: inline-block;
  width: 28px;
  height: 28px;
  background-image: url("../img/button-arrow.png");
  background-position: center;
  background-size: contain;
  position: relative;
  top: 5px;
  margin: 0 0 0 7px;
}

.company {
  margin: 140px 0 0 0;
}
.company .company_box {
  position: relative;
  display: block;
  background-image: url(../img/company_bg.jpg);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
  min-height: 700px;
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .company .company_box {
    margin: 0 0 100px 0;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .company .company_box {
    margin: 0 0 100px 0;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .company .company_box {
    margin: 0 0 100px 0;
  }
}
@media screen and (max-width: 375px) {
  .company .company_box {
    margin: 0 0 100px 0;
  }
}
.company .right {
  display: block;
  background-color: rgba(255, 255, 255, 0.95);
  width: 64%;
  position: absolute;
  right: 0;
  padding: 50px 0 180px 50px;
  bottom: 0px;
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .company .right {
    width: 100%;
    padding: 0 30px 50px 30px;
    background-color: rgba(255, 255, 255, 0.85);
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .company .right {
    width: 100%;
    padding: 0 30px 50px 30px;
    background-color: rgba(255, 255, 255, 0.85);
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .company .right {
    width: 100%;
    padding: 0 30px 50px 30px;
    background-color: rgba(255, 255, 255, 0.85);
  }
}
@media screen and (max-width: 375px) {
  .company .right {
    width: 100%;
    padding: 0 30px 50px 30px;
    background-color: rgba(255, 255, 255, 0.85);
  }
}
.company .right h4 {
  font-size: 3vw;
  margin: 0 0 34px 0;
}
@media screen and (min-width: 1501px) {
  .company .right h4 {
    font-size: 54px;
  }
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .company .right h4 {
    font-size: 9vw;
    padding: 40px 0 0 0;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .company .right h4 {
    font-size: 9vw;
    padding: 40px 0 0 0;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .company .right h4 {
    font-size: 9vw;
    padding: 40px 0 0 0;
  }
}
@media screen and (max-width: 375px) {
  .company .right h4 {
    font-size: 9vw;
    padding: 40px 0 0 0;
  }
}
.company .right .conserva {
  font-size: 19px;
  margin: 0 0 30px 0;
}
.company .right .company_link {
  position: absolute;
  border-radius: 0;
  border: 0;
  font-size: 25px;
  font-weight: 500;
  opacity: 0.95;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: #000;
  color: #fff;
  width: 65%;
  margin: 70px 0 0 0;
}
@media screen and (min-width: 696px) and (max-width: 960px) {
  .company .right .company_link {
    width: 90%;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .company .right .company_link {
    width: 90%;
  }
}
@media screen and (max-width: 375px) {
  .company .right .company_link {
    width: 90%;
    margin: 50px 0 0 0;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .company .right .company_link {
    width: 90%;
    margin: 50px 0 0 0;
  }
}
.company .right .company_link:after {
  position: absolute;
  content: "";
  background-color: #fff;
  width: 75%;
  height: 1.5px;
  bottom: 30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.company .right .company_link a {
  display: block;
  position: relative;
  padding: 35px 4vw 35px 10vw;
  background-color: #000;
  color: #fff;
  -webkit-box-shadow: 2px 2px 2px rgba(33, 33, 33, 0.35);
          box-shadow: 2px 2px 2px rgba(33, 33, 33, 0.35);
  opacity: 0.96;
  -webkit-box-shadow: 2px 2px 2px rgba(33, 33, 33, 0.25);
          box-shadow: 2px 2px 2px rgba(33, 33, 33, 0.25);
  text-align: center;
  -webkit-appearance: none;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}
@media screen and (min-width: 1501px) {
  .company .right .company_link a {
    padding: 35px 4vw 35px 174px;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .company .right .company_link a {
    position: relative;
    padding: 35px 0 35px 1px;
    text-align: center;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .company .right .company_link a {
    position: relative;
    padding: 35px 0 35px 1px;
    text-align: center;
  }
}
@media screen and (max-width: 375px) {
  .company .right .company_link a {
    position: relative;
    padding: 35px 0 35px 1px;
    text-align: center;
  }
}
.company .right .company_link a:hover {
  cursor: pointer;
  color: #fff;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
          box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}
.company .right .company_link span {
  position: relative;
  left: -40px;
}
.company .right .company_link span:after {
  content: "";
  display: inline-block;
  width: 28px;
  height: 28px;
  background-image: url("../img/button-arrow.png");
  background-position: center;
  background-size: contain;
  position: relative;
  top: 5px;
  margin: 0 0 0 7px;
}
@media screen and (max-width: 375px) {
  .company .right .company_link span {
    left: 0px;
  }
}
@media screen and (min-width: 376px) and (max-width: 430px) {
  .company .right .company_link span {
    left: 0px;
  }
}
@media screen and (min-width: 431px) and (max-width: 695px) {
  .company .right .company_link span {
    left: 0px;
  }
}
/*# sourceMappingURL=top.css.map */