@charset "UTF-8";
/* Scss Document */
/* Scss Document */
/*naga add*/
/* 下からフェードイン(初期値) */
.js-fadeUp, .js-fadeUpSlow {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateY(30px);
  /* 下に30pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 下からフェードイン(スクロールした後) */
.js-fadeUp.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: 0s;
  /*開始を遅らせる */
}

.js-fadeUpSlow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/* 左からフェードイン(初期値) */
.js-fadeIn, .js-fadeInSlow {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateX(-100px);
  /* 左に100pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 左からフェードイン(スクロールした後) */
.js-fadeIn.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: 0s;
  /* 開始を遅らせる */
}

.js-fadeInSlow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/*ゆらゆら*/
.js-swing.is-inview {
  animation: swing 2.5s;
}

@keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  to {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}
/*跳ねる*/
.js-bounce.is-inview {
  animation: bounce 2.5s;
  transform-origin: center bottom;
}

@keyframes bounce {
  0%,
  20%,
  53%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
    transform: translate3d(0, -30px, 0) scaleY(1.1);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
    transform: translate3d(0, -15px, 0) scaleY(1.05);
  }
  80% {
    -webkit-transform: translateZ(0) scaleY(0.95);
    transform: translateZ(0) scaleY(0.95);
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}
/* 用紙サイズの指定（A4） */
@page {
  margin: 8mm;
  size: 210mm 297mm;
  /* A4縦 */
}
@media print {
  /* 全体設定 */
  body {
    -webkit-print-color-adjust: exact;
    /* 印刷時でも背景色や背景画像を表示 */
    width: 1400px;
    /* 印刷時の全ページ幅を統一 */
    zoom: 0.8;
    /* なるべく多くのブラウザで切れないようにするため */
    /*no animation*/
  }
  body header {
    position: absolute !important;
    max-width: 1400px;
    width: 1400px !important;
  }
  body .header--flex {
    width: 1400px !important;
  }
  body .btnBox {
    display: none;
  }
  body #btn_pagetop {
    display: none;
  }
  body .js-fadeUp,
  body .js-fadeIn,
  body .js-fadeUpSlow,
  body .js-fadeInSlow {
    opacity: 1;
  }
  body .js-fadeIn,
  body .js-fadeInSlow {
    transform: translateX(0);
  }
  body .js-fadeUp,
  body .js-fadeUpSlow {
    transform: translateY(0);
  }
  body .js-fadeUp.is-view,
  body .js-fadeIn.is-view,
  body .js-fadeUpSlow.is-view,
  body .js-fadeInSlow.is-view {
    animation-name: none;
  }

  /*top recruit button*/
  .btnBox__rct {
    display: none;
  }
}
.mv {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0 40px;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 1720px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .mv {
    padding: 0 15px;
  }
}
.mv__bg {
  width: 100%;
  height: 200px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-image: url("../img/inhome/tmv.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top right;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
}
@media screen and (max-width: 1279px) {
  .mv__bg {
    background-color: rgba(255, 255, 255, 0.6);
    background-blend-mode: overlay;
  }
}
@media screen and (max-width: 767px) {
  .mv__bg {
    height: 130px;
    padding-left: 15px;
    padding-right: 15px;
  }
}
.mv__cc {
  font: 500 32px/1.5 "Zen Kaku Gothic New", sans-serif;
  color: #59a529;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media screen and (max-width: 767px) {
  .mv__cc {
    font-size: 24px;
  }
}
.mv__cc br {
  display: none;
}
@media screen and (max-width: 767px) {
  .mv__cc br {
    display: block;
  }
}

.hl--large {
  font: 500 32px/1.5 "Zen Kaku Gothic New", sans-serif;
  color: #1d1d1d;
  position: relative;
  display: block;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media screen and (max-width: 767px) {
  .hl--large {
    font: 500 24px/1.5 "Zen Kaku Gothic New", sans-serif;
  }
}
.hl--large span {
  display: inline-block;
  position: relative;
  padding-bottom: 6px;
}
@media screen and (max-width: 767px) {
  .hl--large span {
    padding-top: 8px;
  }
}
.hl--large span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 6px;
  width: 100%;
  background-image: repeating-linear-gradient(-45deg, transparent 0, transparent 4px, #59a529 4px, #59a529 6px);
  background-size: auto 6px;
  background-repeat: repeat-x;
  transition: width 1s ease;
}

.hl--large.icon {
  position: relative;
  /*add*/
  padding-top: 90px;
  padding-bottom: 15px;
}
.hl--large.icon::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/inhome/big-icon_car.png");
  background-size: 150px;
  background-repeat: no-repeat;
  background-position: bottom left 25%;
}
@media screen and (max-width: 1279px) {
  .hl--large.icon::before {
    background-position: bottom left 8%;
  }
}
@media screen and (max-width: 767px) {
  .hl--large.icon::before {
    background-position: bottom left 10%;
  }
}

@media screen and (max-width: 767px) {
  .secVisit .hl--large.icon:before {
    background-color: rgba(255, 255, 255, 0.8);
    background-blend-mode: overlay;
  }
}

.secDay .hl--large.icon:before {
  background-image: url("../img/inhome/big-icon_wheelchair.png");
  background-size: 122px;
  background-repeat: no-repeat;
  background-position: bottom left 27%;
}
@media screen and (max-width: 1279px) {
  .secDay .hl--large.icon:before {
    background-position: bottom left 12%;
  }
}
@media screen and (max-width: 767px) {
  .secDay .hl--large.icon:before {
    background-position: bottom left 10%;
    background-image: url("../img/inhome/big-icon_wheelchair_clear.png");
  }
}

.secSupport .hl--large.icon:before {
  content: none;
}

.hl--mediumNormal {
  font: 500 24px/1.5 "Zen Kaku Gothic New", sans-serif;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 10px 15px 45px;
  color: #1d1d1d;
  position: relative;
  border-bottom: 1px solid #59a529;
  margin-bottom: 30px;
}
@media screen and (max-width: 479px) {
  .hl--mediumNormal {
    font-size: 20px;
    padding: 10px 5px 10px 45px;
  }
}
.hl--mediumNormal:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/common/icon_midashi.png");
  background-size: 24px;
  background-repeat: no-repeat;
  background-position: top 22px left 10px;
}
@media screen and (max-width: 767px) {
  .hl--mediumNormal:before {
    background-size: 20px;
    background-position: top 24px left 16px;
  }
}
@media screen and (max-width: 479px) {
  .hl--mediumNormal:before {
    background-position: top 16px left 10px;
  }
}

.tocWrap {
  position: relative;
  top: -10px;
}
@media screen and (max-width: 1279px) {
  .tocWrap {
    top: 10px;
  }
}

.toc {
  width: 90%;
  height: auto;
  margin: 0 auto;
  padding: 10px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  /*max-width: 1720px;*/
  max-width: 1600px;
  border-radius: 5px;
  box-shadow: 0px 3px 3.7px 0.3px rgba(90, 90, 90, 0.1);
  background-color: #fff;
}
@media screen and (max-width: 1279px) {
  .toc {
    box-shadow: none;
  }
}
@media screen and (min-width: 1441px) {
  .toc {
    max-width: 1476px;
  }
}
.toc__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 479px) {
  .toc__list {
    gap: 10px 5px;
  }
}
.toc__item {
  flex: 0 0 220px;
}
@media screen and (max-width: 767px) {
  .toc__item {
    flex: 0 0 200px;
  }
}
@media screen and (max-width: 479px) {
  .toc__item {
    flex: 1 1 auto;
  }
}
.toc__item--anchor {
  display: flex;
  justify-content: space-between;
  align-items: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 20px;
  width: 100%;
  height: 60px;
  border-radius: 5px;
  font: 500 20px/1.5 "Zen Kaku Gothic New", sans-serif;
  color: #1d1d1d !important;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 1279px) {
  .toc__item--anchor {
    height: 50px;
    box-shadow: 0px 3px 3.7px 0.3px rgba(90, 90, 90, 0.1);
  }
}
@media screen and (max-width: 767px) {
  .toc__item--anchor {
    font-size: 18px;
  }
}
@media screen and (max-width: 479px) {
  .toc__item--anchor {
    height: 36px;
    font-size: 16px;
    padding: 0 10px;
  }
}
.toc__item--anchor span {
  display: inline-block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 479px) {
  .toc__item--anchor span br {
    display: none;
  }
}
.toc__item--anchor svg {
  flex: 0 0 24px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.toc__item--anchor:hover {
  text-decoration: none;
}
@media (hover: hover) {
  .toc__item--anchor:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: alpha(opacity=70);
    transform: scale(0.95);
  }
}
.toc__item:nth-of-type(2n+1) .toc__item--anchor {
  background-image: repeating-linear-gradient(135deg, #e7f6b2, #e7f6b2 2px, #ffffff 2px, #ffffff 4px);
}
.toc__item:nth-of-type(2n) .toc__item--anchor {
  background-image: repeating-linear-gradient(135deg, #cde4be, #cde4be 2px, #ffffff 2px, #ffffff 4px);
}
.toc__item:nth-of-type(1) .toc__item--anchor, .toc__item:nth-of-type(2) .toc__item--anchor, .toc__item:nth-of-type(3) .toc__item--anchor {
  font-size: 18px;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .toc__item:nth-of-type(1) .toc__item--anchor, .toc__item:nth-of-type(2) .toc__item--anchor, .toc__item:nth-of-type(3) .toc__item--anchor {
    font-size: 16px;
  }
}
.toc__item:nth-of-type(4) .toc__item--anchor {
  font-size: 17px;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .toc__item:nth-of-type(4) .toc__item--anchor {
    font-size: 15px;
  }
}

.secIntro {
  background-image: url("../img/inhome/bg_inhome.png");
  background-size: 600px;
  background-repeat: no-repeat;
  background-position: top 30px right 20px;
  max-width: 1920px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 1279px) {
  .secIntro {
    background-color: rgba(255, 255, 255, 0.4);
    background-blend-mode: overlay;
  }
}
.secIntro__inner {
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 100px;
  /*max-width: 1720px;*/
  max-width: 1600px;
}
@media screen and (max-width: 1279px) {
  .secIntro__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 767px) {
  .secIntro__inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.secIntro__inner:nth-of-type(2) {
  margin-top: 100px;
}
.secIntro__flex {
  margin-top: 60px;
  display: flex;
  column-gap: 60px;
}
@media screen and (max-width: 1279px) {
  .secIntro__flex {
    column-gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .secIntro__flex {
    flex-direction: column;
    row-gap: 40px;
  }
}
.secIntro__flex--left {
  flex: 1 1 auto;
}
.secIntro__flex--right {
  flex: 0 0 254px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .secIntro__flex--right {
    flex-basis: auto;
  }
}
.secIntro__flex--right img {
  height: auto;
  max-width: 100%;
}
.secIntro__paragraph {
  font: 500 18px/2 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
}
@media screen and (max-width: 767px) {
  .secIntro__paragraph {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (max-width: 479px) {
  .secIntro__paragraph {
    font-size: 16px;
  }
}

.secReha__inner {
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 100px;
  /*  max-width: 1720px;*/
  max-width: 1600px;
}
@media screen and (max-width: 1279px) {
  .secReha__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 767px) {
  .secReha__inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.secReha__inner:nth-of-type(2) {
  margin-top: 100px;
}
.secReha__flex {
  display: flex;
  column-gap: 60px;
}
@media screen and (max-width: 1279px) {
  .secReha__flex {
    column-gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .secReha__flex {
    flex-direction: column;
    row-gap: 40px;
  }
}
.secReha__flex--left {
  flex: 1 1 auto;
}
.secReha__flex--right {
  flex: 0 0 254px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .secReha__flex--right {
    flex-basis: auto;
  }
}
.secReha__flex--right img {
  height: auto;
  max-width: 100%;
}
.secReha .hl--large.icon + .secReha__paragraph {
  margin-top: 60px;
}
.secReha__paragraph {
  font: 500 18px/2 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
}
@media screen and (max-width: 767px) {
  .secReha__paragraph {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (max-width: 479px) {
  .secReha__paragraph {
    font-size: 16px;
  }
}
.secReha__wrap {
  margin-top: 60px;
}
.secReha__wrap table {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-collapse: collapse;
  border: 1px solid #59a529;
}
@media screen and (max-width: 767px) {
  .secReha__wrap table {
    margin-top: 30px;
  }
}
.secReha__wrap table tr td {
  font: 500 18px/2 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  vertical-align: baseline;
  border: 1px solid #59a529;
  background-color: #fff;
  padding: 15px 20px;
}
@media screen and (max-width: 767px) {
  .secReha__wrap table tr td {
    font-size: 16px;
    line-height: 1.8;
    padding: 10px 15px;
  }
}
@media screen and (max-width: 479px) {
  .secReha__wrap table tr td {
    padding: 10px;
  }
}
.secReha__wrap table tr td:first-of-type {
  width: 20%;
  font: 500 20px/2 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  background-color: #e4f6d9;
}
@media screen and (max-width: 1279px) {
  .secReha__wrap table tr td:first-of-type {
    width: 27%;
  }
}
@media screen and (max-width: 767px) {
  .secReha__wrap table tr td:first-of-type {
    font-size: 18px;
  }
}
@media screen and (max-width: 479px) {
  .secReha__wrap table tr td:first-of-type {
    font-size: 16px;
    width: 25%;
  }
}

/*セクションの背景と余白*/
.secReha.secDay {
  margin-top: 100px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 20px;
  padding-bottom: 150px;
  background-color: #fef8f8;
}

.secReha.secSupport {
  padding-bottom: 50px;
}
