@charset "UTF-8";
/*臨時非表示対応*/
/*トップページ*/
.top-sec04 .bt {
  display: none;
}
/*フッター系*/
.ft-linkG, .ftInner .flex.main {
  display: none;
}
/* -----------------------

         header

----------------------- */
header {
  padding: 2rem 3vw 3rem;
}
header h1 {
  padding-top: 2rem;
}
header .right-Area {
  flex-direction: column;
}
header .right-Area > .flex {
  align-items: baseline;
  justify-content: flex-end;
  margin-bottom: 25px;
}
header p.tel {
  margin-right: 15px;
  font-size: 2.8rem;
}
header p.tel img {
  position: relative;
  top: -8px;
  margin-right: 5px;
}
header p.reception {
  font-size: 1.2rem;
}
header nav {
  position: relative;
}
header ul li a {
  position: relative;
}
header ul li a:hover {
  color: #3e3a39;
}
header ul li:not(:last-child) a::after {
  display: inline-block;
  padding: 0 20px;
  content: "/";
}
header ul li.active a {
  cursor: pointer;
}
header .logo {
  padding-top: 2rem;
}
/* サブメニュー */
nav ul li ul.sub-menu {
  position: absolute;
  top: 35px;
  left: 0;
  z-index: 9999;
  flex-direction: column;
  width: 80%;
  padding: 20px 20px 0;
  visibility: hidden;
  background: #fff;
  opacity: 0;
  -webkit-transition: 0.5s ease;
  transition: 0.5s ease;
}
nav ul li.active:hover ul.sub-menu {
  top: 40px;
  z-index: 9999;
  display: block;
  visibility: visible;
  opacity: 0.9;
}
nav ul li:first-child ul.sub-menu li {
  width: auto;
  margin-right: 12%;
  margin-bottom: 20px;
}
nav ul li:nth-child(3) ul.sub-menu li {
  width: auto;
  margin-right: 14%;
  margin-bottom: 20px;
}
nav ul li ul.sub-menu li a::after {
  display: none;
}
nav ul li ul.sub-menu .flex {
  flex-wrap: wrap;
}
nav ul li ul.sub-menu li a::before {
  position: relative;
  top: 3px;
  display: inline-block;
  width: 6px;
  height: 1.1em;
  margin-right: 10px;
  content: "";
  background: linear-gradient(28.75deg, rgba(143, 195, 31, 1) 0%, rgba(243, 152, 0, 1) 100%);
  transform: skewX(-28.75deg);
}
nav ul li:nth-of-type(1) ul.sub-menu .flex li:nth-of-type(1) a::before {
  background: #eeb033;
}
nav ul li:nth-of-type(1) ul.sub-menu .flex li:nth-of-type(2) a::before {
  background: #002855;
}
nav ul li:nth-of-type(3) ul.sub-menu .flex li:nth-of-type(1) a::before {
  background: #eeb033;
}
nav ul li:nth-of-type(3) ul.sub-menu .flex li:nth-of-type(2) a::before {
  background: #002855;
}
nav ul li:nth-of-type(3) ul.sub-menu .flex li:nth-of-type(3) a::before {
  background: #ecd356;
}
nav ul li:nth-of-type(3) ul.sub-menu .flex li:nth-of-type(4) a::before {
  background: #00a0e9;
}
nav ul li:nth-of-type(3) ul.sub-menu .flex li:nth-of-type(5) a::before {
  background: #a50082;
}
/* -----------------------

        TOP

----------------------- */
.mv {
  position: relative;
  width: 100%;
  height: 854px;
  margin-bottom: 150px;
  background: url("../img/top/top-mv.webp") no-repeat right top;
  background-size: contain;
}
.mv h2, .under-mv h1 {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding: 25px 140px 25px 5vw;
  margin-top: 70px;
  margin-left: 0;
  font-size: 13.6rem;
  font-weight: 500 !important;
  line-height: 1.2;
}
.mv h2::before, .under-mv h1::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  padding-left: 5rem;
  display: block;
  width: 100%;
  height: 100%;
  clip-path: polygon(0 0, 100% 0, 71.25% 100%, 0% 100%);
  content: "";
  background: rgba(255, 255, 255, 0.8);
}
.mv h2 span {
  position: absolute;
  right: 220px;
  bottom: 8rem;
  display: block;
  font-size: 2.6rem;
  line-height: 1.4;
}
.mv h2 span:last-child {
  right: 196px;
  bottom: 46px;
  font-size: 2rem;
}
.mv p.catch, .under-mv p.sub {
  position: relative;
  z-index: 1;
  width: 43%;
  padding: 30px 120px 30px 5vw;
  margin-top: 28px;
  margin-left: 0vw;
  font-size: 2.0rem;
}
.mv p.catch::before, .under-mv p.sub::before {
  position: absolute;
  top: 0;
  left: 0;
  padding-left: 0rem;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  clip-path: polygon(0 0, 100% 0, 84.5% 100%, 0% 100%);
  content: "";
  background: rgba(255, 255, 255, 0.8);
}
.mv .skew {
  top: 120px;
  right: 135px;
}
.top-sec01 {
  position: relative;
  margin-bottom: 180px;
}
p.contentTXT {
  margin-top: 122px;
  font-size: 2rem;
}
.top-sec01 .skew {
  top: -235px;
  left: 15%;
  z-index: -1;
}
.top-sec02 {
  position: relative;
  margin-bottom: 160px;
}
.service .contentsWrap {
  margin-top: 70px;
}
.service .contentsWrap ul {
  flex-wrap: wrap;
  margin-bottom: 120px;
}
.service .contentsWrap ul li {
  width: calc((100% - 6%) / 3);
  margin-right: 3%;
  margin-bottom: 30px;
  text-align: left;
}
.service .contentsWrap ul li:nth-child(3n) {
  margin-right: 0;
}
.top-sec02 .contentsWrap ul li p.number, .dayservice-switch .service .contentsWrap ul li p.number {
  display: inline-block;
  font-size: 4.2rem;
  color: transparent;
  background: linear-gradient(to right, rgba(188, 213, 153, 1) 0%, rgba(94, 174, 194, 1) 100%);
  -webkit-background-clip: text;
}
.top-sec02 .contentsWrap ul li:nth-child(odd) p.number, .facility-information .service .contentsWrap ul li p.number {
  display: inline-block;
  font-size: 4.2rem;
  color: transparent;
  background: linear-gradient(to right, rgba(143, 195, 31, 1) 0%, rgba(243, 152, 0, 1) 100%);
  -webkit-background-clip: text;
}
.top-sec02 h3 span {
  font-size: 1.6rem;
}
.service .contentsWrap ul li h3 {
  font-size: 3.2rem;
  line-height: 1.1;
  /*padding-top: 15px;*/
}
.service .contentsWrap ul li figure {
  margin: 15px 0 25px;
}
.service .contentsWrap ul li figure + p {
  min-height: 4.5vw;
  text-align: justify;
}
.service .contentsWrap ul li p.bt {
  margin-top: 30px;
  text-align: center;
}
.service .contentsWrap ul li p.bt a {
  display: inline-block;
  padding: 8px 6.5%;
  font-size: 2rem;
  color: #fff;
  background: linear-gradient(to right, rgba(188, 213, 153, 1) 0%, rgba(94, 174, 194, 1) 100%);
}
.service .contentsWrap ul li:nth-child(odd) p.bt a {
  background: linear-gradient(to right, rgba(143, 195, 31, 1) 0%, rgba(243, 152, 0, 1) 100%);
}
.top-sec03 {
  position: relative;
  margin-bottom: 320px;
}
.top-sec03 .textG {
  position: absolute;
  top: 0;
  left: calc((100% - 1280px) / 2);
  z-index: 2;
  width: 38%;
  line-height: 1.8;
}
.top-sec03 .textG p {
  font-size: 1.8rem;
}
.top-sec03 .textG p:last-child {
  margin-top: 70px;
}
.top-sec03 .textG p:last-child span {
  margin-left: 1rem;
  font-size: 3.2rem;
}
.top-sec03 > .flex-e {
  flex-direction: column;
  align-items: flex-end;
}
.top-sec03 h2.secTTL::before, .top-sec03 h2.secTTL::after {
  display: none;
}
.top-sec03 .skew {
  top: 55px;
  left: 32%;
}
.top-sec03 > .flex-e figure:nth-child(1) {
  margin-bottom: 60px;
}
.top-sec04, section.staff {
  margin-bottom: 180px;
}
.top-sec04 .contentsWrap {
  margin-top: 70px;
  text-align: left;
}
.top-sec04 .contentsWrap .box {
  width: 48%;
}
.top-sec04 .contentsWrap .box h3 {
  margin: 25px 0;
  font-size: 2.8rem;
  letter-spacing: 0.15rem;
}
.top-sec04 .contentsWrap .box p.bt {
  margin-top: 25px;
  text-align: left;
}
.top-sec04 .contentsWrap .box p.bt a {
  display: inline-block;
  padding: 9px 6.5%;
  font-size: 2rem;
  color: #fff;
}
.name_sche {
  font-size: clamp(1.4rem, 1.303rem + 0.259vw, 1.8rem) !important;
  line-height: 1.3;
  position: relative;
/*  margin-top: 0rem !important;*/
}
.sns img {
  width: 4rem;
  margin-right: 1rem;
}
.contents-list-Wrap {
  margin-top: 60px;
}
.contents-list-Wrap ul {
  flex-wrap: wrap;
}
.contents-list-Wrap ul li {
  width: calc((100% - 6%) / 3);
  margin-right: 3%;
  margin-bottom: 60px;
  text-align: left;
}
.contents-list-Wrap ul li:nth-child(3n) {
  margin-right: 0;
}
.contents-list-Wrap ul li figure {
  height: 227px;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 68% 100%, 0% 100%);
}
.contents-list-Wrap ul li figure img {
  width: 100%;
  height: 227px;
  object-fit: cover;
}
.contents-list-Wrap ul li p {
  position: relative;
  display: inline-block;
  margin-top: 10px;
  font-size: 2.4rem;
}
.top .contents-list-Wrap ul li p::after {
  position: absolute;
  bottom: 2px;
  left: 0rem;
  z-index: -1;
  display: block;
  width: 100%;
  height: 15px;
  content: "";
  background: rgba(250, 238, 0, 0.4);
}
.top .contents-list-Wrap ul li.blue p::after, .contents-list-Wrap.column2 li.blue h3::after {
  background: rgba(0, 104, 183, 0.4);
}
.top .contents-list-Wrap ul li.cyan p::after, .contents-list-Wrap.column2 li.cyan h3::after {
  background: rgba(0, 160, 233, 0.4);
}
.top .contents-list-Wrap ul li.red p::after, .contents-list-Wrap.column2 li.red h3::after {
  background: rgba(230, 0, 18, 0.4);
}
.top .contents-list-Wrap ul li.magenta p::after, .contents-list-Wrap.column2 li.magenta h3::after {
  background: rgba(165, 0, 130, 0.4);
}
.top .contents-list-Wrap ul li.green p::after, .contents-list-Wrap.column2 li.green h3::after {
  background: rgba(143, 195, 31, 0.4);
}
.contents-staff-Wrap {
  margin-top: 70px;
}
.contents-staff-Wrap ul {
  flex-wrap: wrap;
}
.contents-staff-Wrap ul li {
  position: relative;
  width: calc((100% - 6%) / 3);
  margin-right: 3%;
  margin-bottom: 160px;
  text-align: left;
}
.contents-staff-Wrap ul li:nth-child(3n) {
  margin-right: 0;
}
.contents-staff-Wrap ul li:nth-child(1) {
  height: 387px;
  background: url("../img/top/staff01-bg.png") no-repeat center top;
  background-size: contain;
}
.contents-staff-Wrap ul li:nth-child(2) {
  height: 387px;
  background: url("../img/top/staff01-bg.png") no-repeat center top;
  background-size: contain;
}
.contents-staff-Wrap ul li:nth-child(3) {
  height: 387px;
  background: url("../img/top/staff01-bg.png") no-repeat center top;
  background-size: contain;
}
.contents-staff-Wrap ul li:nth-child(4) {
  height: 387px;
  background: url("../img/top/staff01-bg.png") no-repeat center top;
  background-size: contain;
}
.contents-staff-Wrap ul li:nth-child(5) {
  height: 387px;
  background: url("../img/top/staff01-bg.png") no-repeat center top;
  background-size: contain;
}
.contents-staff-Wrap ul li:nth-child(6) {
  height: 387px;
  background: url("../img/top/staff01-bg.png") no-repeat center top;
  background-size: contain;
}
.btnshine {
  /* キラッと光る基点とするためrelativeを指定 */
  position: relative;
  overflow-x: clip;
}
/* キラッと光る */
.btnshine::before {
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  content: '';
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  transform: skewX(-28.75deg);
}
.btnshine:hover::before {
  animation: shine 1.5s;
}
@keyframes shine {
  100% {
    left: 125%;
  }
}
.contents-staff-Wrap ul li div {
  position: absolute;
  bottom: 25px;
  left: 0;
  flex-direction: column;
  align-items: flex-start;
}
.contents-staff-Wrap ul li div p {
  display: inline-block;
  padding: 2px 15px;
  background: #fff;
  font-size: 2.0rem;
}
.contents-staff-Wrap ul li div p.name {
  padding: 5px 25px;
  margin-top: 15px;
  font-size: 3.2rem;
}
.contents-staff-Wrap ul li figure {
  position: absolute;
  right: 0;
  bottom: -75px;
  cursor: pointer;
  transition: ease-in-out 0.3s;
}
.contents-staff-Wrap ul li figure:hover {
  right: 5px;
  transition: ease-in-out 0.3s;
}
.staff .sns {
  margin-top: 180px;
}
.staff .sns .flexL {
  width: 30%;
  margin-right: 6%;
  text-align: left;
}
.staff .sns .flexR {
  width: 64%;
}
.staff .sns .flexL .secTTL::before {
  text-align: left;
}
.staff .sns .flexL .secTTL::before, .staff .sns .flexL .secTTL::after {
  display: none;
}
.staff .sns .flexL p {
  text-align: left;
}
.staff .sns .flexR figure a {
  display: block;
}
.staff .sns .flexR figure:first-child {
  margin-right: 6%;
}
.sns figure {
  text-align: left;
  margin-top: 2rem;
  display: flex;
  align-items: center;
}
/* -----------------------

        footer

----------------------- */
footer > p {
  height: 100px;
  margin-bottom: 60px;
  font-size: 2.6rem;
  line-height: 100px;
  text-align: center;
  letter-spacing: 0.3rem;
}
footer .ftInner .flexL p.tel {
  font-size: 5.5rem;
}
footer .ftInner .flexL address {
  margin: 5px 0;
  font-size: 1.8rem;
}
footer .ft-linkG {
  flex-direction: column;
}
footer .ft-linkG p a {
  display: block;
  width: 432px;
  padding: 10px 0;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
footer .ft-linkG p.mailform {
  margin-bottom: 15px;
  color: #fff;
  background: #5eaac2;
}
footer .ft-linkG p.recruitment {
  color: #fff;
  background: #bcd599;
}
footer .ft-linkG p.recruitment img {
  position: relative;
  top: -5px;
  margin-right: 10px;
}
footer .ftInner ul.main {
  margin-top: 70px;
}
footer .ftInner ul.sub {
  margin-top: 20px;
  margin-left: 1em;
}
footer .ftInner .col {
  width: 25%;
}
footer .ftInner ul.main li.privacy {
  margin-top: 68px;
}
footer .ftInner .col li a {
  position: relative;
  font-size: 1.8rem;
}
footer .ftInner .col li a::before {
  position: relative;
  top: 3px;
  display: inline-block;
  width: 10px;
  height: 1.1em;
  margin-right: 14px;
  content: "";
  background: linear-gradient(28.75deg, rgba(188, 213, 153, 1) 0%, rgba(94, 174, 194, 1) 100%);
  transform: skewX(-28.75deg);
}
footer .ftInner .col li.bg-o a::before {
  background: linear-gradient(28.75deg, rgba(143, 195, 31, 1) 0%, rgba(243, 152, 0, 1) 100%);
}
footer .ftInner ul.sub li {
  line-height: 2;
}
footer .ftInner ul.sub li a {
  position: relative;
  font-size: 1.6rem;
  text-decoration: underline;
}
footer .ftInner ul.sub li:nth-of-type(1) a::before {
  background: #eeb033;
}
footer .ftInner ul.sub li:nth-of-type(2) a::before {
  background: #002855;
}
footer .ftInner ul.sub li:nth-of-type(3) a::before {
  background: #ecd356;
}
footer .ftInner ul.sub li:nth-of-type(4) a::before {
  background: #00a0e9;
}
footer .ftInner ul.sub li:nth-of-type(5) a::before {
  background: #a50082;
}
footer p.copy {
  margin: 85px 0 25px;
  text-align: center;
}
footer p.copy small {
  letter-spacing: 0.3rem;
}
/* -----------------------

    下層ページCommon

----------------------- */
.under-mv {
  position: relative;
  width: 100%;
  height: 520px;
  margin-bottom: 180px;
  background: url("../img/staff-recruitment/mv.png") no-repeat right top;
  background-size: contain;
}
.under-mv .skew {
  top: 115px;
  right: 25px;
  height: 567px;
  transform: skewX(-28.75deg);
}
.under-mv h1 {
  padding: 25px 220px 25px 0;
  margin-top: 90px;
  margin-left: 8%;
  font-size: 8.8rem;
}
.under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 70.25% 100%, 0% 100%);
}
.under-mv p.sub {
  position: relative;
  z-index: 1;
  display: inline-block;
  width: auto;
  padding: 15px 84px 15px 8%;
  margin-top: 20px;
  margin-left: 2%;
  font-size: 2rem;
  letter-spacing: 0.35rem;
}
.under-mv p.sub::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  clip-path: polygon(0 0, 100% 0, 90.25% 100%, 0% 100%);
  content: "";
  background: rgba(255, 255, 255, 0.8);
}
.under-mv p.sub span {
  position: relative;
}
.under-mv p.sub span::before {
  position: absolute;
  top: 1px;
  left: -25px;
  display: inline-block;
  width: 3px;
  height: 30px;
  content: "";
  background: #3e3a39;
  transform: skewX(-28.75deg);
}
.under-mv p.sub span::after {
  position: absolute;
  top: 1px;
  right: -20px;
  display: inline-block;
  width: 3px;
  height: 30px;
  content: "";
  background: #3e3a39;
  transform: skewX(-28.75deg);
}
.under-sec01 {
  position: relative;
}
.under-sec01 .skew {
  top: -110px;
  left: 15%;
  z-index: -1;
  width: 350px;
  height: 1040px;
  opacity: 0.2;
}
/* -----------------------

    スタッフ・求人情報

----------------------- */
.staff-recruitment .under-sec01.staff {
  position: relative;
  margin-bottom: 20px;
}
.staff-recruitment .under-sec02 {
  margin-bottom: 180px;
}
.staff-recruitment dl, .company dl {
  flex-wrap: wrap;
  width: 90%;
  margin: 70px auto 160px;
}
.staff-recruitment dl dt, .staff-recruitment dl dd, .company dl dt, .company dl dd {
  padding: 50px 0 20px;
  padding-left: 2em;
  font-size: 1.8rem;
  text-align: left;
  border-bottom: solid 1px;
}
.staff-recruitment dl dt, .company dl dt {
  width: 23.5%;
  margin-right: 3.5%;
  font-weight: 700;
}
.staff-recruitment dl dd, .company dl dd {
  width: 73%;
  font-weight: 400;
  line-height: 1.8;
}
.mac.webkit .company .staff-recruitment dl dt, .company dl dt {
  font-weight: 400;
}
.staff-recruitment dl dd .gmap-link {
  display: inline-block;
}
.staff dl dd .gmap-link a {
  display: block;
  height: 25px;
  padding: 0 20px;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 25px;
  color: #fff;
  text-align: center;
  background: #5eaac2;
}
/* -----------------------

        会社情報

----------------------- */
.company .under-mv {
  position: relative;
  width: 100%;
  height: 520px;
  margin-bottom: 180px;
  background: url("../img/company/mv.png") no-repeat right top;
  background-size: contain;
}
.company .under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 75.25% 100%, 0% 100%);
}
.company .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 81.25% 100%, 0% 100%);
}
.company .under-sec02, .company .under-sec04 {
  margin-bottom: 180px;
}
.company .under-sec02 .ttl-IMG {
  margin: 100px auto 120px;
}
.company .under-sec02 .ttl-IMG + p {
  font-size: 2rem;
}
.company .under-sec03 {
  margin-bottom: 160px;
}
.company .under-sec03 .secTTL::before {
  left: -80px;
}
.company .under-sec03 .secTTL::after {
  right: -115px;
}
.company .under-sec03 .facility-list {
  width: 88%;
  margin: 70px auto 0;
}
.company .under-sec03 .facility-list p.ft-500 {
  margin-left: 2em;
  font-size: 2.2rem;
  text-align: justify;
  text-indent: -2em;
  letter-spacing: 0.2rem;
}
.company .under-sec04 h2 {
  margin-bottom: 10px;
  font-size: 6rem;
  letter-spacing: 0.4rem;
}
.company .under-sec04 h2 + p {
  margin-bottom: 70px;
  font-size: 2.6rem;
}
.company .top-sec03 .textG {
  width: 70rem;
}
.company .top-sec03 {
  margin-bottom: 450px;
}
/* -----------------------

    スタッフ紹介

----------------------- */
.staff-introduction .under-mv {
  position: relative;
  width: 100%;
  height: 520px;
  margin-bottom: 180px;
  background: url("../img/staff-introduction/mv.png") no-repeat right top;
  background-size: contain;
}
.staff-introduction .under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 75.25% 100%, 0% 100%);
}
.staff-introduction .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 81.25% 100%, 0% 100%);
}
.staff-introduction .under-mv .gradation-o-bg {
  background: linear-gradient(28.75deg, rgba(143, 195, 31, 1) 0%, rgba(243, 152, 0, 1) 100%);
}
.contents-staff-introduction-Wrap {
  margin: 70px 0 180px;
}
.contents-staff-introduction-Wrap .flexL, .contents-staff-introduction-Wrap .flexR {
  width: 48%;
}
.contents-staff-introduction-Wrap .flexL figure {
  text-align: right;
  cursor: pointer;
}
.contents-staff-introduction-Wrap .flexL figure img {
  transition: ease-in-out 0.3s;
  transform: translateX(0);
}
.contents-staff-introduction-Wrap .flexL figure:hover img {
  transition: ease-in-out 0.3s;
  transform: translateX(-3%);
}
.contents-staff-introduction-Wrap .staff01 {
  height: 592px;
  background: url("../img/top/staff01-bg.png") no-repeat center top;
  background-size: contain;
}
.contents-staff-introduction-Wrap .flexR {
  padding-top: 45px;
  text-align: left;
}
.contents-staff-introduction-Wrap .flexR p {
  font-size: 2.4rem;
}
.contents-staff-introduction-Wrap .flexR p.cat {
  display: inline-block;
  padding: 2px 25px;
  margin: 40px 0 20px;
  font-size: 2.5rem;
  color: #fff;
  background: #eeb033;
}
.contents-staff-introduction-Wrap .flexR p.name {
  font-size: 5.4rem;
  padding: 5px 0 30px;
}
.contents-staff-introduction-Wrap .flexR p.join {
  margin: 30px 0 75px;
  font-size: 2.2rem;
}
.contents-staff-introduction-Wrap .flexR p.message {
  font-size: 2.6rem;
  letter-spacing: 0.3rem;
}
.dtail-content {
  position: relative;
  margin-bottom: 100px;
}
.dtail-content:nth-child(2n) .flex {
  justify-content: flex-end;
}
.dtail-content .text-Area {
  position: absolute;
  top: 0;
  right: calc((100% - 1280px) / 2);
  width: 30vw;
}
.dtail-content:nth-child(2n) .text-Area {
  left: calc((100% - 1280px) / 2);
}
.dtail-content h3 {
  padding-bottom: 5px;
  margin-bottom: 40px;
  font-size: 2.4rem;
  text-align: justify;
  border-bottom: solid 1px;
}
.dtail-content p {
  font-size: 1.8rem;
  line-height: 2;
  text-align: justify;
}
.dtail-content p.txt-top {
  margin-bottom: 40px;
  font-size: 3.6rem;
  line-height: 1.6;
  letter-spacing: 0.3rem;
}
.staff-introduction .under-mv {
  display: none;
}
.staff-introduction .under-sec01 {
  padding-top: 100px;
}
/* -----------------------

  　　　　施設情報

----------------------- */
.institution-info .under-mv {
  position: relative;
  width: 100%;
  height: 520px;
  margin-bottom: 180px;
  background: url("../img/institution-info/mv.png") no-repeat right top;
  background-size: contain;
}
.institution-info .under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 75.25% 100%, 0% 100%);
}
.institution-info .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 86.25% 100%, 0% 100%);
}
.aboutContents-Wrap {
  position: relative;
}
.aboutContents {
  margin-top: 70px;
}
.aboutContents-Wrap p {
  position: absolute;
  top: 0;
  left: calc((100% - 1240px) / 2);
  width: 30.8%;
  font-size: 2.2rem;
  text-align: justify;
}
.institution-info .under-sec01 {
  margin-bottom: 180px;
}
.facility-Wrap {
  position: relative;
  margin-top: 70px;
}
.institution-info .under-sec02 {
  margin-bottom: 110px;
}
.institution-info .under-sec02 .secTTL::before {
  left: -95px;
}
.institution-info .under-sec02 .secTTL::after {
  right: -130px;
}
.institution-info .under-sec02 .facility-Wrap {
  position: relative;
  align-items: flex-start;
}
.institution-info .under-sec02 .facility-Wrap .text-G {
  position: relative;
  top: 0;
  right: calc((100% - 1240px) / 2);
  flex-direction: column;
  order: 2;
  width: 48.7%;
  max-width: 600px;
  height: 100%;
  padding: 40px 50px;
  font-weight: 500;
  text-align: left;
  background: rgba(255, 255, 255, 0.9);
}
.institution-info .under-sec02 .facility-Wrap:nth-child(3) .text-G, .institution-info .under-sec02 .facility-Wrap:nth-child(5) .text-G, .institution-info .under-sec02 .facility-Wrap:nth-child(7) .text-G, .institution-info .under-sec02 .facility-Wrap:nth-child(9) .text-G {
  left: calc((100% - 1240px) / 2);
  order: 1;
}
.institution-info .under-sec02 .facility-Wrap:nth-child(3) figure, .institution-info .under-sec02 .facility-Wrap:nth-child(5) figure, .institution-info .under-sec02 .facility-Wrap:nth-child(7) figure, .institution-info .under-sec02 .facility-Wrap:nth-child(9) figure {
  order: 2;
}
.institution-info .under-sec02 .text-G h3 {
  font-size: 3.6rem;
}
.institution-info .under-sec02 .text-G p {
  text-align: justify;
}
.institution-info .under-sec02 .text-G p.cat {
  margin: 10px 0 25px;
}
.institution-info .under-sec02 .text-G p.cat span {
  padding: 3px 15px;
  font-size: 1.3rem;
  color: #fff;
  background: #f39800;
}
.institution-info .under-sec02 .facility-Wrap:nth-child(3) .text-G p.cat span, .institution-info .under-sec02 .facility-Wrap:nth-child(5) .text-G p.cat span, .institution-info .under-sec02 .facility-Wrap:nth-child(7) .text-G p.cat span, .institution-info .under-sec02 .facility-Wrap:nth-child(9) .text-G p.cat span {
  background: #002855;
}
.institution-info .under-sec02 .text-G p.cat span:not(:last-child) {
  margin-right: 10px;
}
.institution-info .under-sec02 .text-G h4 {
  margin-top: 30px;
  font-size: 1.8rem;
}
.institution-info .under-sec02 .text-G address {
  margin: 5px 0 10px;
}
.institution-info .under-sec02 .text-G p.gmap {
  display: inline-block;
}
.institution-info .under-sec02 .text-G p.gmap a {
  display: inline-block;
  padding: 5px 25px;
  font-size: 1.2rem;
  color: #fff;
  background: #5eaac2;
}
.institution-info .under-sec02 .text-G dl {
  flex-wrap: wrap;
  margin: 20px 0 40px;
}
.institution-info .under-sec02 .text-G dt, .institution-info .under-sec02 .text-G dd {
  font-size: 1.6rem;
  font-weight: 500;
}
.institution-info .under-sec02 .text-G dt {
  width: 21%;
  max-width: 9rem;
}
.institution-info .under-sec02 .text-G dd {
  width: 79%;
}
.institution-info .under-sec02 .text-G p.sendBT a {
  display: inline-block;
  padding: 15px 10%;
  font-size: 1.8rem;
  color: #fff;
  background: linear-gradient(to right, rgba(236, 211, 86, 1) 0%, rgba(238, 176, 51, 1) 100%);
}
.institution-info .under-sec02 .facility-Wrap:nth-child(3) .text-G p.sendBT a {
  background: linear-gradient(to right, rgba(188, 213, 153, 1) 0%, rgba(94, 174, 194, 1) 100%);
}
.contents-list-Wrap.column2 {
  position: relative;
  margin-top: 100px;
}
.contents-list-Wrap.column2 li {
  width: 47.6%;
  margin-right: 4.8%;
  margin-bottom: 70px;
  text-align: left;
}
.contents-list-Wrap.column2 li:nth-child(3n) {
  margin-right: 4%;
}
.contents-list-Wrap.column2 li:nth-child(2n) {
  margin-right: 0;
}
.contents-list-Wrap.column2 li figure {
  height: 346px;
}
.contents-list-Wrap.column2 li figure img {
  width: 100%;
  height: 346px;
  object-fit: cover;
}
.contents-list-Wrap.column2 li h3 {
  position: relative;
  display: inline-block;
  margin-top: 20px;
  font-size: 3.6rem;
}
.contents-list-Wrap.column2 li h3::after {
  position: absolute;
  bottom: 10px;
  left: 1.5rem;
  z-index: -1;
  display: block;
  width: 100%;
  height: 20px;
  content: "";
  background: rgba(250, 238, 0, 0.4);
}
.contents-list-Wrap.column2 li p {
  margin: 30px 0 40px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: justify;
}
.contents-list-Wrap.column2 li p::after {
  display: none;
}
.contents-list-Wrap.column2 li p.cat {
  padding: 3px 15px;
  margin: 5px 0 0;
  font-size: 1.3rem;
  background: #faee00;
}
.contents-list-Wrap.column2 li.blue p.cat {
  color: #fff;
  background: #0068b7;
}
.contents-list-Wrap.column2 li.cyan p.cat {
  color: #fff;
  background: #00a0e9;
}
.contents-list-Wrap.column2 li.red p.cat {
  color: #fff;
  background: #e60012;
}
.contents-list-Wrap.column2 li.magenta p.cat {
  color: #fff;
  background: #a50082;
}
.contents-list-Wrap.column2 li.green p.cat {
  color: #fff;
  background: #8fc31f;
}
.contents-list-Wrap.column2 li h4 {
  font-size: 1.8rem;
}
.contents-list-Wrap.column2 li address {
  margin: 0 0 10px;
  font-weight: 700;
}
.contents-list-Wrap.column2 li p.gmap {
  display: inline-block;
  margin: 0;
}
.contents-list-Wrap.column2 li p.gmap a {
  display: inline-block;
  padding: 5px 25px;
  font-size: 1.2rem;
  color: #fff;
  background: #5eaac2;
}
.contents-list-Wrap.column2 li p:last-of-type {
  margin: 20px 0 0;
}
.contents-list-Wrap.column2 .skew.type1 {
  top: -215px;
  right: -55px;
  z-index: -2;
  width: 355px;
  height: 1041px;
}
.contents-list-Wrap.column2 .skew.type2 {
  top: 460px;
  left: -55px;
  z-index: -2;
  width: 355px;
  height: 1041px;
}
.institution-info .contents-list-Wrap {
  margin-top: 12rem;
}
.institution-info .under-sec02 .institution-small .text-G h3 {
  font-size: 2.4rem;
  margin-top: 1rem;
  margin-bottom: -1rem;
}
.institution-info .under-sec02 .institution-small .text-G h4 {
  margin-top: -1rem;
  font-size: 2rem;
}
.institution-info .under-sec02 .institution-small .text-G address {
  font-size: 1.6rem;
  margin: 0;
}
.institution-info .under-sec02 .institution-small .text-G dt {
  width: 25%;
}
.institution-info .under-sec02 .institution-small .text-G dd {
  width: 75%;
}
.institution-info .under-sec02 .institution-small .text-G p.cat span {
  background: #0068b7;
}
.institution-info .under-sec02 .institution-small .text-G h5 {
  font-size: 1.4rem;
}
/* -----------------------

  サンケア訪問マッサージ

----------------------- */
.facility-information .under-mv {
  position: relative;
  width: 100%;
  /*  height: 750px;*/
  height: 854px;
  margin-bottom: 394px;
  /*  margin-bottom: 180px;*/
  background: no-repeat right top;
  background-size: contain;
}
.facility-information .under-mv .skew {
  top: 115px;
  right: 160px;
  height: 1038px;
  transform: skewX(-28.75deg);
}
.facility-information .under-mv h1 {
  padding: 25px 245px 25px 0;
}
.facility-information .under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 73.25% 100%, 0% 100%);
}
.facility-information .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 92.25% 100%, 0% 100%);
}
.facility-information .under-mv p.sub span.font::before, .facility-information .under-mv p.sub span.font::after {
  display: none;
}
.facility-information .under-mv p.sub span::before {
  top: -3px;
}
.facility-information .under-mv p.sub span::after {
  top: -3px;
}
.facility-information .about {
  height: 678px;
  margin: 180px 0 180px;
  background: url("../img/facility-information/about.png") no-repeat right top;
  background-size: contain;
}
.facility-information .about p.sub {
  font-size: 2rem;
  letter-spacing: 0.5rem;
}
.facility-information .about h2 {
  font-size: 4.4rem;
}
.facility-information .about h2 + p {
  width: 29vw;
  margin-top: 50px;
  font-size: 2.6rem;
  text-align: justify;
}
.facility-information .under-sec03 {
  margin-bottom: 180px;
}
.recommendation {
  padding: 80px 0 35px;
  background: url("../img/facility-information/recommendation-BG.png") no-repeat right top;
  background-size: cover;
}
.recommendation * {
  color: #fff;
  text-align: center;
}
.recommendation h2 {
  position: relative;
  display: inline-block;
  font-size: 3.8rem;
  letter-spacing: 0.3rem;
}
.recommendation h2::before {
  position: absolute;
  bottom: 30px;
  left: -165px;
  display: block;
  width: 150px;
  height: 3px;
  content: "";
  background: #fff;
}
.recommendation h2::after {
  position: absolute;
  right: -163px;
  bottom: 30px;
  display: block;
  width: 150px;
  height: 3px;
  content: "";
  background: #fff;
}
.recommendation h2 span {
  font-size: 2.8rem;
}
.facility-information .recommendation ul li {
  padding: 40px 0;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  border: solid 2px;
}
.mac.webkit .facility-information .recommendation ul li {
  font-weight: 400;
}
.use {
  padding: 55px 0 65px;
}
.use-flex {
  display: flex;
  flex-direction: column;
  gap: 3vw;
  align-items: center;
}
.use h2 {
  font-size: 3.4rem;
}
.use h3 {
  display: inline-block;
  padding: 10px 25px;
  margin: 30px 0 45px;
  font-size: 2.6rem;
  background: #fff;
}
.use .col {
  padding-right: 1%;
  margin-right: 3%;
}
.use .col:nth-child(3) {
  padding-right: 1%;
  margin-right: 0;
}
.use ul {
  text-align: center;
}
.use ul li {
  margin-left: 1em;
  font-weight: 700;
  line-height: 1.8;
  color: #fff;
  text-align: left;
  text-indent: -1em;
}
.modal-inner {
  justify-content: center;
}
.use-bt {
  padding: 8px 6.5%;
  font-size: 2rem;
  color: #fff;
  background: linear-gradient(to right, rgba(188, 213, 153, 1) 0%, rgba(94, 174, 194, 1) 100%);
}
.use-bt:hover {
  filter: brightness(105%);
  opacity: 0.9;
}
.introductionWrap {
  margin: 70px 0 180px;
  text-align: left;
}
.introductionWrap .flex {
  margin-bottom: 80px;
}
.introductionWrap .flexL {
  width: 30%;
  padding: 30px;
  margin-right: 6%;
  background: linear-gradient(to right, rgba(236, 211, 86, 0.25) 0%, rgba(238, 176, 51, 0.3) 100%);
}
.introductionWrap .flexL ul {
  margin-top: 20px;
}
.introductionWrap .flexL ul li {
  font-size: 1.8rem;
  line-height: 1.8;
}
.introductionWrap .flexR {
  width: 64%;
}
.introductionWrap .flexR dt {
  display: inline-block;
  padding: 2px 20px;
  color: #fff;
  background: #5eaac2;
}
.introductionWrap .flexR dd {
  margin: 10px 0 45px;
  font-size: 2.6rem;
}
.introductionWrap .flexR .cat2 {
  display: inline-block;
  padding: 2px 15px;
  font-size: 2.4rem;
}
.introductionWrap .flexR h3 {
  margin: 10px 0 30px;
  font-size: 2.8rem;
  text-align: justify;
}
.introductionWrap .flexR p {
  font-size: 2rem;
  text-align: justify;
}
.introductionWrap .flexR p.detailContents {
  margin-top: 40px;
  font-size: 1.8rem;
}
.facility-information .under-sec05 {
  padding: 140px 0 125px;
  background: linear-gradient(to right, rgba(236, 211, 86, 0.25) 0%, rgba(238, 176, 51, 0.3) 100%);
}
.facility-information .under-sec05 .box {
  width: 74.2%;
  padding: 50px 0;
  margin: 70px auto 15px;
  background: #fff;
}
.facility-information .under-sec05 .box h3 {
  margin-bottom: 30px;
  font-size: 3.6rem;
}
.facility-information .under-sec05 .box p {
  font-size: 2.2rem;
}
.facility-information .under-sec05 .box p span {
  font-size: 90%;
}
.facility-information .under-sec05 .box dl {
  flex-wrap: wrap;
  align-items: center;
  width: 70%;
  margin: 0 auto 40px;
}
.facility-information .under-sec05 .box dl dt, .facility-information .under-sec05 .box dl dd {
  margin-bottom: 15px;
}
.facility-information .under-sec05 .box dl dt {
  width: 35%;
  text-align: right;
}
.facility-information .under-sec05 .box dl dd {
  width: 65%;
  line-height: 1.4;
  text-align: left;
  padding-left: 2rem;
}
.facility-information .under-sec05 .box dl dd span.large {
  font-size: 3.8rem;
}
.facility-information .under-sec05 .box dl dd span.small {
  padding-left: 5px;
  font-size: 70%;
}
.facility-information .under-sec05 .box dl .ten_burden {
  font-size: 140%;
  margin-bottom: 4rem;
}
.facility-information .under-sec05 .box dl dd.ten_burden span.large {
  font-size: 6rem;
}
.facility-information .under-sec06 {
  padding: 150px 0;
}
.facility-information .under-sec06 h3:nth-of-type(1) {
  margin-top: 70px;
}
.facility-information .under-sec06 h3 {
  width: 74.2%;
  padding-bottom: 5px;
  margin: 35px auto 25px;
  font-size: 3.6rem;
  border-bottom: solid 3px;
}
.facility-information .under-sec06 dl {
  display: flex;
  flex-wrap: wrap;
  width: 74.2%;
  margin: 0 auto;
}
.facility-information .under-sec06 dt {
  width: 100%;
  margin-top: 15px;
  font-size: 2.6rem;
}
.facility-information .under-sec06 dt::before {
  position: relative;
  top: 3px;
  display: inline-block;
  width: 10px;
  height: 1.1em;
  margin-right: 14px;
  content: "";
  background: #002855;
  transform: skewX(-28.75deg);
}
.facility-information .under-sec06 dt:nth-of-type(2)::before {
  background: #ecd356;
}
.facility-information .under-sec06 dt:nth-of-type(3)::before {
  background: #00a0e9;
}
.facility-information .under-sec06 dt:nth-of-type(4)::before {
  background: #a50082;
}
.facility-information .under-sec06 dd {
  width: 100%;
  font-size: 1.6rem;
}
.facility-information .under-sec06 dd:nth-of-type(1) {
  display: none;
}
.facility-information .faq {
  margin-bottom: 145px;
}
.facility-information .faqBox {
  padding: 10px 4%;
  margin: 0 0 40px;
  background: #eeb033;
}
.facility-information .faqBox:nth-of-type(1) {
  margin-top: 70px;
}
.facility-information .faqBox .flex {
  align-items: center;
}
.facility-information .faqBox dt {
  padding-bottom: 5px;
  font-size: 4.2rem;
  color: #fff;
  text-align: left;
}
.facility-information .faqBox dt span.content {
  padding: 0 1em;
  margin-left: 25px;
  font-size: 2rem;
  border-bottom: solid 1px;
}
.facility-information .faqBox dt span.mark {
  margin-left: auto;
  font-size: 4.2rem;
  cursor: pointer;
}
.facility-information .faqBox dt span.mark.close {
  transform: rotate(45deg);
}
.facility-information .faqBox dd {
  display: none;
  padding: 60px 35px;
  margin-bottom: 40px;
  font-size: 4.2rem;
  text-align: justify;
  background: #fff;
}
.facility-information .faqBox dd span.content {
  margin-left: 35px;
  font-size: 1.6rem;
}
.faq .accordion-area li:nth-of-type(1) {
  margin-top: 70px;
}
.faq .accordion-area li {
  padding: 2px 4%;
  margin: 0 0 40px;
  background: #eeb033;
  cursor: pointer;
}
.faq .title {
  position: relative;
  margin-bottom: 5px;
  font-size: 2rem;
  color: #fff;
  text-align: left;
  transition: all 0.5s ease;
}
.faq .title span {
  font-size: 4.2rem;
}
.faq .title span.content {
  position: relative;
  top: -10px;
  padding: 0 1em 10px;
  margin-left: 25px;
  font-size: 2rem;
  border-bottom: solid 1px;
}
.faq .title::before, .title::after {
  position: absolute;
  width: 25px;
  height: 4px;
  content: '';
  background-color: #fff;
}
.faq .title::before {
  top: 48%;
  right: 0;
  transform: rotate(0deg);
}
.faq .title::after {
  top: 48%;
  right: 0;
  transform: rotate(90deg);
}
.faq .title.close::before {
  transform: rotate(45deg);
}
.faq .title.close::after {
  transform: rotate(-45deg);
}
.faq .box {
  display: none;
  padding: 60px 35px;
  margin-bottom: 40px;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: justify;
  background: #fff;
}
.faq .box .flex {
  align-items: flex-start;
}
.faq .box .flex > span:nth-of-type(1) {
  position: relative;
  top: -25px;
  font-size: 4.2rem;
}
.faq .box span.content {
  margin-left: 35px;
  font-size: 1.6rem;
  line-height: 1.8;
}
.area-flex {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: center;
}
.area-img {
  flex-basis: 24vw;
}
.area-txt {
  flex-basis: 45vw;
  text-align: left;
}
/* -----------------------

  デイサービス　スイッチ

----------------------- */
.dayservice-switch .under-mv {
  position: relative;
  width: 100%;
  height: 854px;
  margin-bottom: 394px;
  background: url("../img/dayservice-switch/mv.png") no-repeat right top;
  background-size: contain;
}
.dayservice-switch .under-mv .skew {
  top: 115px;
  right: 160px;
  height: 1038px;
  transform: skewX(-28.75deg);
}
.dayservice-switch .under-mv h1 {
  padding: 0 245px 50px 6rem;
  margin-left: 9%;
  margin-top: 125px;
  line-height: 1.1;
}
.dayservice-switch .under-mv h1 span {
  font-size: 4rem;
  margin-left: -3rem;
}
.dayservice-switch .under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 72.25% 100%, 0% 100%);
}
.dayservice-switch .under-mv p.sub {
  letter-spacing: 0.15rem;
  padding: 25px 100px 25px 2%;
  margin-top: 35px;
  margin-left: 9%;
}
.dayservice-switch .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 79.25% 100%, 0% 100%);
}
.dayservice-switch .under-mv p.sub span.large {
  font-size: 2.2rem;
  display: block;
  margin-bottom: 1rem;
}
.dayservice-switch .under-mv p.sub span.font::before, .dayservice-switch .under-mv p.sub span.font::after {
  display: none;
}
.dayservice-switch .under-mv p.sub span::before {
  display: none;
}
.dayservice-switch .under-mv p.sub span::after {
  display: none;
}
.dayservice-switch .about {
  height: 678px;
  margin-bottom: 180px;
  background: url("../img/dayservice-switch/about.png") no-repeat right top;
  background-size: contain;
}
.dayservice-switch .about p.sub {
  font-size: 2rem;
  letter-spacing: 0.5rem;
}
.dayservice-switch .about h2 {
  font-size: 4.4rem;
}
.dayservice-switch .about h2 + p {
  width: 30vw;
  margin-top: 50px;
  font-size: 2.6rem;
  text-align: justify;
  letter-spacing: 0.05em;
}
.dayservice-switch .under-sec03 {
  margin-bottom: 180px;
}
.recommendation {
  padding: 80px 0 35px;
  background: url("../img/facility-information/recommendation-BG.png") no-repeat right top;
  background-size: cover;
}
.recommendation * {
  color: #fff;
  text-align: center;
}
.recommendation h2 {
  position: relative;
  display: inline-block;
  font-size: 3.8rem;
  letter-spacing: 0.3rem;
  line-height: 1.2;
}
.recommendation h2::before {
  position: absolute;
  bottom: 30px;
  left: -165px;
  display: block;
  width: 150px;
  height: 3px;
  content: "";
  background: #fff;
}
.recommendation h2::after {
  position: absolute;
  right: -163px;
  bottom: 30px;
  display: block;
  width: 150px;
  height: 3px;
  content: "";
  background: #fff;
}
.recommendation h2 span {
  font-size: 2.8rem;
}
.recommendation h2 span.small {
  font-size: 70%;
  display: block;
}
.dayservice-switch .recommendation ul li {
  padding: 40px 0;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  border: solid 2px;
}
.mac.webkit .dayservice-switch .recommendation ul li {
  font-weight: 400;
}
.use {
  padding: 55px 0 65px;
}
.use-flex {
  display: flex;
  flex-direction: column;
  gap: 3vw;
  align-items: center;
}
.use h2 {
  font-size: 3.4rem;
}
.use h3 {
  display: inline-block;
  padding: 10px 25px;
  margin: 30px 0 45px;
  font-size: 2.6rem;
  background: #fff;
}
.dayservice-switch .use .flex {
  width: 70%;
  margin: 0 auto 2.5rem;
}
.dayservice-switch .use .col {
  padding-right: 0;
  margin-right: 18%;
  flex-grow: 1;
}
.dayservice-switch .use .col:last-child {
  margin-right: 0;
}
.modal-inner {
  justify-content: center;
}
.use-bt {
  padding: 8px 6.5%;
  font-size: 2rem;
  color: #fff;
  background: linear-gradient(to right, rgba(188, 213, 153, 1) 0%, rgba(94, 174, 194, 1) 100%);
}
.use-bt:hover {
  filter: brightness(105%);
  opacity: 0.9;
}
.introductionWrap {
  margin: 70px 0 180px;
  text-align: left;
}
.introductionWrap .flex {
  margin-bottom: 80px;
}
.introductionWrap .flexL {
  width: 30%;
  padding: 30px;
  margin-right: 6%;
  background: linear-gradient(to right, rgba(236, 211, 86, 0.25) 0%, rgba(238, 176, 51, 0.3) 100%);
}
.introductionWrap .flexL ul {
  margin-top: 20px;
}
.introductionWrap .flexL ul li {
  font-size: 1.8rem;
  line-height: 1.8;
}
.introductionWrap .flexR {
  width: 64%;
}
.introductionWrap .flexR dt {
  display: inline-block;
  padding: 2px 20px;
  color: #fff;
  background: #5eaac2;
}
.introductionWrap .flexR dd {
  margin: 10px 0 45px;
  font-size: 2.6rem;
}
.introductionWrap .flexR .cat2 {
  display: inline-block;
  padding: 2px 15px;
  font-size: 2.4rem;
}
.introductionWrap .flexR h3 {
  margin: 10px 0 30px;
  font-size: 2.8rem;
  text-align: justify;
}
.introductionWrap .flexR p {
  font-size: 2rem;
  text-align: justify;
}
.introductionWrap .flexR p.detailContents {
  margin-top: 40px;
  font-size: 1.8rem;
}
.dayservice-switch .under-sec07 {
  padding: 140px 0 125px;
  background: linear-gradient(to right, rgba(235, 242, 224, 1) 0%, rgba(207, 229, 237, 1) 100%);
}
.dayservice-switch .under-sec05 .box {
  width: 74.2%;
  padding: 50px 0;
  margin: 70px auto 15px;
  background: #fff;
}
.dayservice-switch .under-sec05 .box h3 {
  margin-bottom: 30px;
  font-size: 3.6rem;
}
.dayservice-switch .under-sec05 .box p {
  font-size: 2.2rem;
}
.dayservice-switch .under-sec05 .box p span {
  font-size: 90%;
}
.dayservice-switch .under-sec05 .box dl {
  flex-wrap: wrap;
  align-items: center;
  width: 70%;
  margin: 0 auto 40px;
}
.dayservice-switch .under-sec05 .box dl dt, .dayservice-switch .under-sec05 .box dl dd {
  margin-bottom: 15px;
}
.dayservice-switch .under-sec05 .box dl dt {
  width: 35%;
  text-align: right;
}
.dayservice-switch .under-sec05 .box dl dd {
  width: 65%;
  line-height: 1.4;
  text-align: left;
  padding-left: 2rem;
}
.dayservice-switch .under-sec05 .box dl dd span.large {
  font-size: 3.8rem;
}
.dayservice-switch .under-sec05 .box dl dd span.small {
  padding-left: 5px;
  font-size: 70%;
}
.dayservice-switch .under-sec05 .box dl .ten_burden {
  font-size: 140%;
  margin-bottom: 4rem;
}
.dayservice-switch .under-sec05 .box dl dd.ten_burden span.large {
  font-size: 6.8rem;
}
.dayservice-switch .under-sec06 {
  padding: 150px 0;
}
.dayservice-switch .under-sec06 h3:nth-of-type(1) {
  margin-top: 70px;
}
.dayservice-switch .under-sec06 h3 {
  width: 74.2%;
  padding-bottom: 5px;
  margin: 35px auto 25px;
  font-size: 3.6rem;
  border-bottom: solid 3px;
}
.dayservice-switch .under-sec06 dl {
  display: flex;
  flex-wrap: wrap;
  width: 74.2%;
  margin: 0 auto;
}
.dayservice-switch .under-sec06 dt {
  width: 100%;
  margin-top: 15px;
  font-size: 2.6rem;
}
.dayservice-switch .under-sec06 dt::before {
  position: relative;
  top: 3px;
  display: inline-block;
  width: 10px;
  height: 1.1em;
  margin-right: 14px;
  content: "";
  background: #002855;
  transform: skewX(-28.75deg);
}
.dayservice-switch .under-sec06 dt:nth-of-type(2)::before {
  background: #ecd356;
}
.dayservice-switch .under-sec06 dt:nth-of-type(3)::before {
  background: #00a0e9;
}
.dayservice-switch .under-sec06 dt:nth-of-type(4)::before {
  background: #a50082;
}
.dayservice-switch .under-sec06 dd {
  width: 100%;
  font-size: 1.6rem;
}
.dayservice-switch .under-sec06 dd:nth-of-type(1) {
  display: none;
}
.dayservice-switch .faq {
  margin: 110px 0 145px;
}
.dayservice-switch .faqBox {
  padding: 10px 4%;
  margin: 0 0 40px;
  background: #eeb033;
}
.dayservice-switch .faqBox:nth-of-type(1) {
  margin-top: 70px;
}
.dayservice-switch .faqBox .flex {
  align-items: center;
}
.dayservice-switch .faqBox dt {
  padding-bottom: 5px;
  font-size: 4.2rem;
  color: #fff;
  text-align: left;
}
.dayservice-switch .faqBox dt span.content {
  padding: 0 1em;
  margin-left: 25px;
  font-size: 2rem;
  border-bottom: solid 1px;
}
.dayservice-switch .faqBox dt span.mark {
  margin-left: auto;
  font-size: 4.2rem;
  cursor: pointer;
}
.dayservice-switch .faqBox dt span.mark.close {
  transform: rotate(45deg);
}
.dayservice-switch .faqBox dd {
  display: none;
  padding: 60px 35px;
  margin-bottom: 40px;
  font-size: 4.2rem;
  text-align: justify;
  background: #fff;
}
.dayservice-switch .faqBox dd span.content {
  margin-left: 35px;
  font-size: 1.6rem;
}
.dayservice-switch .faq .accordion-area li {
  padding: 2px 4%;
  margin: 0 0 40px;
  background: #5eaac2;
}
.dayservice-switch .faq .accordion-area li:nth-of-type(1) {
  margin-top: 70px;
}
.area-flex {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: center;
}
.area-img {
  flex-basis: 24vw;
}
.area-txt {
  flex-basis: 45vw;
  text-align: left;
}
.flowContents {
  margin-top: 70px;
}
.flowContents .flexL {
  width: 66%;
  margin-right: 45px;
}
.flowContents .fleR {
  width: 33%;
}
.flowContents .flexL h3, .flowContents .flexL p {
  text-align: justify;
}
.flowContents .box {
  margin-bottom: 10px;
}
.flowContents .box .flexL {
  padding: 40px;
}
.flowContents .box:nth-of-type(1) .flexL, .flowContents .box:nth-of-type(2) .flexL, .flowContents .box:nth-of-type(3) .flexL {
  background: linear-gradient(to right, rgba(188, 213, 153, 0.2) 0%, rgba(94, 174, 194, 0.2) 100%);
}
.flowContents .box:nth-of-type(4) .flexL, .flowContents .box:nth-of-type(5) .flexL, .flowContents .box:nth-of-type(6) .flexL, .flowContents .box:nth-of-type(7) .flexL {
  background: linear-gradient(to right, rgba(143, 195, 31, 0.2) 0%, rgba(243, 152, 0, 0.2) 100%);
}
.flowContents .box .flexL h3 {
  font-size: 2.6rem;
}
.flowContents .box .flexL p {
  font-size: 2rem;
}
.flowContents .box + .arrow {
  margin-bottom: 10px;
  text-align: left;
  padding-left: 8rem;
}
.dayservice-switch .under-sec05 figure {
  margin-top: 70px;
}
.usage-fee-Contents {
  background: #fff;
  width: 920px;
  padding: 45px 110px;
  margin: 70px auto 0;
}
.usage-fee-Contents p:first-of-type {
  font-size: 1.6rem;
}
.usage-fee-Contents .box {
  background: #ecebeb;
  padding: 20px 0;
}
.usage-fee-Contents .box:first-of-type {
  margin-top: 35px;
}
.usage-fee-Contents .box:last-of-type {
  margin-bottom: 30px;
}
.usage-fee-Contents .box:nth-child(odd) {
  background: #fff;
}
.usage-fee-Contents .box h3 {
  font-size: 2.2rem;
}
.usage-fee-Contents .box p {
  font-size: 1.4rem;
}
.usage-fee-Contents .box p span {
  font-size: 3rem;
}
.usage-fee-Contents .box p span.sla {
  font-size: 1.4rem;
}
.usage-fee-Contents .box p span span {
  font-size: 1.8rem;
}
.usage-fee-Contents p.attention {
  font-size: 1.4rem;
  text-align: left;
}
/*slider*/
.slick-prev:before, .slick-next:before, .slick-dots li button:before, .slick-dots li.slick-active button:before {
  display: none;
}
.slider {
  width: 80%;
  margin: 70px auto 0;
}
.block {
  margin: 100px auto 0;
}
.slick-list {
  overflow: visible;
}
.slider img {
  transform: scale(0.7);
  transition: 0.8s;
  display: inline;
}
.slider .slick-center img {
  transform: scale(1);
  opacity: 1;
}
.slick-dotted.slick-slider {
  margin-bottom: 5rem;
}
.slick-dots {
  bottom: -5.5rem;
}
.slick-dots li {
  width: 15px;
  height: 15px;
}
.slick-dots li button {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  color: #d8d8d7;
  background: #d8d8d7;
}
.slick-dots li.slick-active button {
  color: #5eaac2;
  background: #5eaac2;
}
.slick-prev, .slick-next {
  width: 7rem;
  height: 7rem;
  border-radius: 50%;
}
.slick-prev {
  background: url("../img/dayservice-switch/slider/arrow-prev.png") no-repeat center center;
  background-size: cover;
  left: -10.5rem;
  z-index: 3;
}
.slick-next {
  background: url("../img/dayservice-switch/slider/arrow-next.png") no-repeat center center;
  background-size: cover;
  right: -10.5rem;
  z-index: 3;
}
.slick-prev:hover, .slick-next:hover {
  width: 7rem;
  height: 7rem;
  opacity: 0.8;
  border-radius: 50%;
}
.slick-prev:hover {
  background: url("../img/dayservice-switch/slider/arrow-prev.png") no-repeat center center;
  background-size: cover;
}
.slick-next:hover {
  background: url("../img/dayservice-switch/slider/arrow-next.png") no-repeat center center;
  background-size: cover;
}
@keyframes open {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.dayservice-switch .access {
  padding: 150px 0 160px;
  background: #dfeef3;
}
.dayservice-switch .access .flexL {
  width: 50%;
  margin-right: 60px;
}
.dayservice-switch .access .flexL p.subTTL {
  font-size: 2rem;
}
.dayservice-switch .access .flexL h2 {
  font-size: 4.4rem;
}
.dayservice-switch .access .flexL h2::before, .dayservice-switch .access .flexL h2::after {
  display: none;
}
.dayservice-switch .access .flexL address {
  margin: 20px 0 10px;
  font-size: 2.4rem;
}
.dayservice-switch .access .flexL p.tel {
  font-size: 2.4rem;
  margin-bottom: 45px;
}
.dayservice-switch .access .flexR {
  width: 50%;
}
.dayservice-switch .access .flexR .gmap {
  height: 62.3rem;
}
.dayservice-switch .access .flexR iframe {
  height: 100%;
}
/* -----------------------

       お問い合わせ

----------------------- */
.inquiry .under-mv, .inquiry_confirmation .under-mv, .inquiry-thanks .under-mv {
  position: relative;
  width: 100%;
  height: 520px;
  margin-bottom: 180px;
  background: url("../img/inquiry/mv.png") no-repeat right top;
  background-size: contain;
}
.inquiry .under-mv h1::before {
  clip-path: polygon(0 0, 99% 0, 79.25% 100%, 0% 100%);
}
.inquiry .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 81.25% 100%, 0% 100%);
}
.radioG.flex {
  width: 70%;
  margin: 70px auto 0;
  position: relative;
  z-index: 100;
}
.radioG.flex input {
  border: none;
}
.radioG.flex label {
  width: 50%;
  padding: 25px 0;
  font-size: 3.4rem;
  line-height: 1;
  position: relative;
  cursor: pointer;
}
.radioG.flex label.contact {
  background: #5eaac2;
  color: #fff;
}
.radioG.flex label.recruitment {
  background: #fcefd6;
}
.radioG.flex input ::checked + label.recruitment {
  background: #eeb033;
}
.radioG.flex label span {
  font-size: 2rem;
  letter-spacing: 0.2rem;
}
.contact.radioG.flex label.contact.checked::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -2.5rem;
  left: 50%;
  transform: translateX(-50%);
  background: url("../img/inquiry/arrow-c.png") no-repeat center center;
  background-size: cover;
  width: 8rem;
  height: 6.9rem;
  z-index: -1;
}
.contact.radioG.flex label.recruitment.checked::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -2.5rem;
  left: 50%;
  transform: translateX(-50%);
  background: url("../img/inquiry/arrow-o.png") no-repeat center center;
  background-size: cover;
  width: 8rem;
  height: 6.9rem;
  z-index: -1;
}
/* お問い合わせフォーム */
.contact_Inner {
  width: 70%;
  margin: 50px auto 180px;
  text-align: center;
}
.contact_Inner h2 {
  padding-bottom: 10px;
  margin-bottom: 40px;
  font-size: 3.2rem;
  font-weight: 400;
  text-align: left;
  border-bottom: solid 2px;
}
.contact_Inner h2 img {
  position: relative;
  top: 4px;
  margin-right: 10px;
}
.contact_Inner .contact_mail h2 img {
  position: relative;
  top: 2px;
  margin-right: 10px;
}
.contact_Inner p {
  font-size: 2rem;
}
.contact_Inner p.tel {
  margin-bottom: 15px;
  font-size: 5.5rem;
  font-weight: 500;
  letter-spacing: 0.8rem;
}
.contact_Inner .contact_tel {
  margin-bottom: 80px;
}
.contact_Inner p.tel + p {
  margin-bottom: 35px;
  font-size: 3rem;
  font-weight: 400;
}
.form {
  margin-bottom: 65px;
}
.form table {
  width: 100%;
}
.form table tr, .form table th, .form table td {
  display: block;
  width: 100%;
}
.form table th, .form table td {
  font-size: 1.6rem;
  font-weight: 400;
  text-align: left;
}
.form table th {
  padding-bottom: 15px;
  font-size: 1.6rem;
  font-weight: 700;
  border-bottom: solid 1px;
}
.form table th .required {
  padding: 3px 6px;
  margin-left: 10px;
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  background: #eeb033;
}
.form table td {
  padding: 20px 0 45px;
  font-weight: 400;
}
.form table td.flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.form table td.flex.born {
  justify-content: flex-start;
}
.form table td.flex.born select {
  width: 80%;
}
.form table td.flex.born div:first-child {
  margin-right: 0;
}
.form table td.flex.born p {
  padding: 0 20px;
}
.form table td.flex div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 50%;
}
.form table td.flex div:first-child {
  margin-right: 40px;
}
.form table td span {
  display: inline-block;
  width: 3em;
  margin: 0 10px;
}
.form table td.postal_code .pc {
  display: inline-block;
}
.form table td.postal_code span {
  display: inline-block;
  width: auto;
  margin-left: 20px;
}
.form table td.postal_code span a {
  display: block;
  width: auto;
  color: #5eaac2;
  text-decoration: underline;
}
.form table td.flex div input {
  width: 96%;
}
.form table tr:nth-child(5) td input + p {
  margin-top: 5px;
}
.form table td input, .form table td select, .form table td textarea {
  width: 100%;
  padding: 15px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.05rem;
  background: #e4e4e4;
  border: none;
}
.form table td input {
  height: 6.5rem;
  line-height: 6.5rem;
  padding: 0 20px;
}
.form table td textarea {
  height: 135px;
}
.form table td input.sizeS {
  width: 25%;
}
.form table td input.sizeM {
  width: 35%;
}
.form table td input.sizeL {
  width: 47.5%;
}
.radio-recruitment-Area .form table td.flex.born div {
  width: 28%;
}
.form table td select {
  width: 25%;
  height: 60px;
  margin: 20px 0;
  color: #3e3a39;
  background: url("../img/common/arrow.png") no-repeat right 10px center #e4e4e4;
  background-size: 7%;
}
/*.form table tr:nth-child(1) td select {
  width: 47.5%;
  margin: 0;
  background: url("../img/common/arrow.png") no-repeat right 15px center #e4e4e4;
  background-size: 4%;
}*/
.form table td.postal_code .pc {
  display: none;
}
.form p.form_submit {
  margin: 65px 0;
  text-align: center;
}
/* チェックボックス */
.checkbox01 {
  position: relative;
  box-sizing: border-box;
  display: inline-block;
  width: auto;
  padding: 5px 30px;
  font-size: 1.6rem;
  font-weight: 400;
  cursor: pointer;
}
.checkbox02 {
  position: relative;
  box-sizing: border-box;
  display: inline-block;
  width: auto;
  padding: 5px 30px;
  font-size: 1.8rem;
  font-weight: 400;
  cursor: pointer;
}
.checkbox01::before, .checkbox02::before {
  position: absolute;
  top: 50%;
  left: 5px;
  display: block;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  content: '';
  background: #fff;
  border: 1px solid #231815;
}
.checkbox01::after, .checkbox02::after {
  position: absolute;
  top: 50%;
  left: 12px;
  display: block;
  width: 7px;
  height: 16px;
  margin-top: -12px;
  content: '';
  border-right: 3px solid #eeb033;
  border-bottom: 3px solid #eeb033;
  opacity: 0;
  transform: rotate(45deg);
}
input[type=checkbox] {
  opacity: 0;
  position: relative;
  right: -2.2rem;
}
input[type=checkbox]:checked + .checkbox01::after, input[type=checkbox]:checked + .checkbox02::after {
  opacity: 1;
}
.checkbox01 a {
  text-decoration: underline;
}
/*ラジオボタン*/
.form table td input.radio-input {
  opacity: 0;
  position: absolute;
  z-index: -1;
  top: 4em;
  width: 20%;
}
.radio-input + label {
  padding-left: 25px;
  position: relative;
  margin-right: 20px;
  font-size: 1.8rem;
  cursor: pointer;
}
.radio-input + label:hover {
  opacity: 0.8;
}
.radio-input + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 50%;
}
.radio-input:checked + label {
  color: #232323;
  font-size: 1.8rem;
  opacity: 0.8;
}
.radio-input:checked + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #232323;
  border-radius: 50%;
}
.form input[type="submit"] {
  display: inline-block;
  padding: 18px 5%;
  font-size: 2.2rem;
  color: #fff;
  text-align: center;
  letter-spacing: 0.15rem;
}
.form input[type="submit"]:hover {
  opacity: 0.8;
}
.form p {
  font-size: 1.6rem;
  font-weight: 400;
}
.contact-tel p.tel {
  margin-top: 70px;
  font-size: 6.6rem;
}
.contact-tel p.tel + p {
  margin-top: 10px;
  font-size: 2.2rem;
  letter-spacing: 0.25rem;
}
.contact-tel {
  margin-bottom: 180px;
}
/*確認*/
input[type="button"] {
  background: linear-gradient(to right, rgba(188, 213, 153, 1) 0%, rgba(94, 174, 194, 1) 100%);
}
/* contact-完了 */
.inquiry-thanks h2.Completion-message {
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  border: none;
}
.inquiry-thanks h2.Completion-message + p {
  margin-bottom: 30px;
  font-size: 1.8rem;
  font-weight: 400;
}
/* -----------------------

      採用フォーム

----------------------- */
.inquiry.recruitment .under-mv h1::before {
  clip-path: polygon(0 0, 90% 0, 79.25% 100%, 0% 100%);
}
.inquiry.recruitment .under-mv p.sub {
  padding: 15px 93px 15px 8%;
}
.inquiry.recruitment .under-mv p.sub::before {
  clip-path: polygon(0 0, 91% 0, 81.25% 100%, 0% 100%);
}
/*.recruitment .under-mv {
  position: relative;
  width: 100%;
  height: 520px;
  margin-bottom: 180px;
  background: url("../img/recruitment/mv.png") no-repeat right top;
  background-size: contain;
}
.recruitment .under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 79.25% 100%, 0% 100%);
}
.recruitment .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 85.25% 100%, 0% 100%);
}
.contact_Inner.radio-recruitment-Area {
  display: none;
}*/
/* -----------------------

     プライバシーポリシー

----------------------- */
.privacy .under-mv {
  position: relative;
  width: 100%;
  height: 520px;
  margin-bottom: 180px;
  background: url("../img/privacy/mv.png") no-repeat right top;
  background-size: contain;
}
.privacy .under-mv h1::before {
  clip-path: polygon(0 0, 92% 0, 83.25% 100%, 0% 100%);
}
.inquiry .under-mv p.sub::before {
  clip-path: polygon(0 0, 100% 0, 81.25% 100%, 0% 100%);
}
/* アニメーション要素のスタイル */
.fadeInUp {
  visibility: visible !important;
  -webkit-animation-name: fadeinup;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1.2s;
  -ms-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
}
.fadeInUp-under {
  visibility: visible !important;
  -webkit-animation-name: fadeinup-under;
  animation-name: fadeInUp-under;
  -webkit-animation-duration: 1.2s;
  -ms-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
}
@keyframes fadeInUp {
  0% {
    margin-top: 100px;
    opacity: 0;
  }
  100% {
    margin-top: 0;
    opacity: 0.6;
  }
}
@keyframes fadeInUp-under {
  0% {
    margin-top: 100px;
    opacity: 0;
  }
  100% {
    margin-top: 0;
    opacity: 0.2;
  }
}
/* -----------------------

  テキストアニメーション

----------------------- */
.cls-1, .cls-2 {
  fill: none;
  stroke: #000;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.cls-1 {
  stroke-width: 5px;
}
.cls-2 {
  stroke-width: 4px;
}