/*=============================================
 * Service
 *=============================================*/
#service__available {
   padding: 150px 0;
}

#service__available .box {
   max-width: 1080px;
   margin: 0 auto;
   padding-top: 145px;
}

#service__available ul li {
   background: url("../img/service/icon-check.png") no-repeat top left/27px auto;
   padding-left: 45px;
}

#service__available ul li:not(:last-child) {
   padding-bottom: 20px;
}

#service__available .note {
   font-weight: 500;
   font-size: 18px;
   padding-left: 45px;
}

@media screen and (max-width: 767px) {
   #service__available {
      padding: 80px 0;
   }

   #service__available .box {
      padding-top: 30px;
   }

   #service__available ul li {
      background-size: 18px auto;
      padding-left: 30px;
   }

   #service__available .note {
      font-size: 14px;
      padding-left: 30px;
   }
}

#service__procedure {
   padding: 150px 0 250px;
   position: relative;
}

#service__procedure:before {
   content: '';
   width: 100%;
   height: 90%;
   background-color: #dce7ea;
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#service__procedure:after {
   content: '';
   width: 100%;
   height: 50%;
   background-color: #dce7ea;
   position: absolute;
   bottom: -6px;
   left: 0;
}

#service__procedure .wrap {
   z-index: 1;
}

#service__procedure .box {
   padding-top: 145px;
}

#service__procedure .box ul {
   display: flex;
}

#service__procedure .box ul li {
   width: 297px;
}

#service__procedure .box ul li+li {
   margin-left: -47px;
}

#service__procedure .box ul+ul {
   justify-content: flex-end;
   padding-top: 25px;
}

#service__procedure .box .ul1 li+li {
   margin-left: -3.5%;
}

#service__procedure .button {
   text-align: center;
   padding-top: 150px;
}

#service__procedure .button a {
   max-width: 690px;
}

#service__procedure .tel {
   font-weight: 500;
   font-size: 30px;
   line-height: 60px;
   letter-spacing: 0;
   padding-top: 135px;
}

#service__procedure .tel .ttl {
   display: inline-block;
   font-size: 35px;
   border-bottom: 1px solid;
   margin-bottom: 20px;
}

#service__procedure .tel a {
   display: inline-block;
   vertical-align: bottom;
   background: url("../img/service/icon-tel.png") no-repeat center left/60px auto;
   font-weight: 500;
   font-size: 70px;
   line-height: 70px;
   padding-left: 95px;
}

#service__procedure .tel .h-25 {
   font-weight: 500;
   padding-top: 10px;
}

@media screen and (max-width: 1200px) {
   #service__procedure .box ul li {
      width: 257px;
   }

   #service__procedure .box ul li+li {
      margin-left: -37px;
   }
}

@media screen and (max-width: 1023px) {
   #service__procedure .box ul li {
      width: 197px;
   }

   #service__procedure .box ul li+li {
      margin-left: -27px;
   }
}

@media screen and (max-width: 767px) {
   #service__procedure {
      padding: 80px 0;
   }

   #service__procedure:before {
      height: 97%;
   }

   #service__procedure .box {
      display: grid;
      grid-template-columns: 1fr;
      padding-top: 50px;
   }

   #service__procedure .box ul {
      display: contents;
   }

   #service__procedure .box ul+ul {
      padding-top: 0;
   }

   #service__procedure .box ul li {
      width: auto;
   }

   #service__procedure .box ul li+li {
      margin-left: 0;
   }

   #service__procedure .button {
      padding-top: 50px;
   }

   #service__procedure .tel {
      font-size: 18px;
      line-height: 36px;
      padding-top: 50px;
   }

   #service__procedure .tel .ttl {
      font-size: 20px;
      margin-bottom: 10px;
   }

   #service__procedure .tel a {
      font-size: 40px;
      line-height: 40px;
      background-size: 30px auto;
      padding-left: 40px;
   }
}

/*=============================================
 * Service / daycare
 *=============================================*/
#daycare__sec1 {
   font-weight: 500;
   font-size: 18px;
   line-height: 32px;
   padding: 120px 0 150px;
}

#daycare__sec1 .box-1 {
   margin-top: 100px;
   position: relative;
}

#daycare__sec1 .box-1 .icon {
   width: 204px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#daycare__sec1 .box-1 .txt {
   font-weight: 400;
   padding-top: 30px;
}

#daycare__sec1 .box-2 {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 50px;
   padding-top: 60px;
}

#daycare__sec1 .box-2 .col {
   background-color: #fff;
   padding: 30px 40px 40px;
}

#daycare__sec1 .box-2 h3 {
   border-bottom: 1px solid;
   margin: 0 -20px;
   padding-bottom: 5px;
}

#daycare__sec1 .box-2 figure {
   padding-top: 30px;
}

#daycare__sec1 .box-2 .txt {
   color: #4b4b4b;
   padding-top: 20px;
}

#daycare__sec1 .box-3 {
   padding-top: 120px;
}

#daycare__sec1 .box-3 dl {
   line-height: 1.5;
}

#daycare__sec1 .box-3 dl+dl {
   padding-top: 50px;
}

#daycare__sec1 .box-3 dl dt {
   font-size: 30px;
}

#daycare__sec1 .box-3 dl dd {
   font-size: 35px;
   padding-top: 10px;
}

#daycare__sec1 .box-3 .note {
   padding-top: 10px;
}

@media screen and (max-width: 1200px) {
   #daycare__sec1 .box-1 .icon {
      position: static;
      margin: 0 auto;
      padding-bottom: 20px;
   }
}

@media screen and (max-width: 1023px) {
   #daycare__sec1 .box-2 {
      grid-template-columns: 1fr;
   }

   #daycare__sec1 .box-2 .col {
      padding: 40px;
   }

   #daycare__sec1 .box-2 h3 {
      margin: 0;
   }
}

@media screen and (max-width: 767px) {
   #daycare__sec1 {
      font-size: 14px;
      line-height: 22px;
      padding: 80px 0;
   }

   #daycare__sec1 .box-1 {
      margin-top: 40px;
   }

   #daycare__sec1 .box-1 .icon {
      width: 102px;
      padding-bottom: 10px;
   }

   #daycare__sec1 .box-1 .txt {
      padding-top: 20px;
   }

   #daycare__sec1 .box-2 {
      gap: 20px;
      padding-top: 40px;
   }

   #daycare__sec1 .box-2 .col {
      padding: 30px 20px;
   }

   #daycare__sec1 .box-3 {
      padding-top: 40px;
   }

   #daycare__sec1 .box-3 dl+dl {
      padding-top: 30px;
   }

   #daycare__sec1 .box-3 dl dt {
      font-size: 18px;
   }

   #daycare__sec1 .box-3 dl dd {
      font-size: 24px;
   }
}

#daycare__sec2 {
   color: #fff;
   position: relative;
   padding: 150px 0;
}

#daycare__sec2:before {
   content: '';
   width: 100%;
   height: 100%;
   background-image: linear-gradient(25deg, #006496, #82aebc);
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#daycare__sec2 .box-1 {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 60px 50px;
   padding-top: 145px;
}

#daycare__sec2 .box-1 .col {
   background-color: #fff;
   padding: 30px 40px 40px;
}

#daycare__sec2 .box-1 h3 span {
   display: inline-block;
   border-bottom: 1px solid;
   padding-bottom: 5px;
}

#daycare__sec2 .box-1 h4 {
   font-weight: 400;
   padding-top: 20px;
}

#daycare__sec2 .box-1 figure {
   padding-top: 20px;
}

#daycare__sec2 .box-1 .txt {
   font-weight: 500;
   font-size: 18px;
   line-height: 32px;
   color: #4b4b4b;
   padding-top: 20px;
}

#daycare__sec2 .box-2 {
   margin-top: 100px;
   position: relative;
}

#daycare__sec2 .box-2 .icon {
   width: 124px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#daycare__sec2 .box-2 h3 {
   padding-top: 20px;
}

#daycare__sec2 .box-2 .txt {
   max-width: 990px;
   font-weight: 400;
   margin: 0 auto;
   padding-top: 30px;
}

#daycare__sec2 .list-btn {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 100px;
   padding-top: 130px;
}

@media screen and (max-width: 1200px) {
   #daycare__sec2 .box-2 .icon {
      position: static;
      margin: 0 auto;
   }
}

@media screen and (max-width: 1023px) {
   #daycare__sec2 .box-1 {
      grid-template-columns: 1fr;
   }

   #daycare__sec2 .list-btn {
      grid-template-columns: 1fr;
      gap: 30px;
   }
}

@media screen and (max-width: 767px) {
   #daycare__sec2 {
      padding: 80px 0;
   }

   #daycare__sec2 .box-1 {
      gap: 20px;
      padding-top: 50px;
   }

   #daycare__sec2 .box-1 .col {
      padding: 30px 20px;
   }

   #daycare__sec2 .box-1 .txt {
      font-size: 14px;
      line-height: 22px;
   }

   #daycare__sec2 .box-2 {
      margin-top: 50px;
   }

   #daycare__sec2 .box-2 .icon {
      width: 62px;
   }

   #daycare__sec2 .box-2 h3 {
      padding-top: 10px;
   }

   #daycare__sec2 .box-2 .txt {
      padding-top: 20px;
   }

   #daycare__sec2 .list-btn {
      grid-template-columns: 1fr;
      gap: 20px;
      padding-top: 50px;
   }
}

#daycare__sec3 {
   padding: 150px 0;
  position: relative;
}

#daycare__sec3:before {
   content: '';
   width: 100%;
   height: 100%;
   background-color: #dce7ea;
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#daycare__sec3 .box {
   margin-top: 130px;
   position: relative;
}

#daycare__sec3 .box .icon {
   width: 124px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#daycare__sec3 .box .txt {
   font-weight: 400;
   padding-top: 30px;
}

#daycare__sec3 .box .photo {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 50px;
   padding-top: 150px;
}

@media screen and (max-width: 1200px) {
   #daycare__sec3 .box .icon {
      position: static;
      margin: 0 auto;
      padding-bottom: 20px;
   }
}

@media screen and (max-width: 767px) {
   #daycare__sec3 {
      padding: 80px 0;
   }

   #daycare__sec3 .box {
      margin-top: 50px;
   }

   #daycare__sec3 .box .icon {
      width: 62px;
      padding-bottom: 10px;
   }

   #daycare__sec3 .box h3 {
      font-size: 20px;
   }

   #daycare__sec3 .box .txt {
      padding-top: 20px;
   }

   #daycare__sec3 .box .photo {
      grid-template-columns: 1fr;
      gap: 20px;
      padding-top: 40px;
   }
}

#daycare__sec4 {
   position: relative;
   padding: 120px 0 150px;
}

#daycare__sec4:before {
   content: '';
   width: 100%;
   height: 100%;
   background-image: linear-gradient(25deg, #006496, #82aebc);
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#daycare__sec4 .box-1 {
   padding-top: 170px;
   font-weight: 500;
}

#daycare__sec4 .box-1 dl {
   display: grid;
   grid-template-columns: 300px 1fr;
   background-color: #fff;
   padding: 28px 20px 27px 100px;
   position: relative;
}

#daycare__sec4 .box-1 dl:not(:last-child) {
   margin-bottom: 25px;
}

#daycare__sec4 .box-1 dl:not(:last-child):before {
   content: '';
   width: 0;
   height: 25px;
   border-left: 3px solid #fff;
   position: absolute;
   top: 100%;
   left: 57px;
}

#daycare__sec4 .box-1 dl dt {
   color: #006496;
}

#daycare__sec4 .box-1 dl dd .h-25 {
   font-weight: 500;
}

#daycare__sec4 .box-1 dl dd .cl-orange {
   color: #f7931e;
}

#daycare__sec4 .box-2 {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 70px;
   padding-top: 130px;
}

#daycare__sec4 .box-2 h3 {
   font-weight: 400;
   padding-bottom: 40px;
}

@media screen and (max-width: 1023px) {
   #daycare__sec4 .box-1 dl {
      grid-template-columns: 220px 1fr;
      padding-left: 40px;
   }

   #daycare__sec4 .box-1 dl:not(:last-child):before {
      left: 17px;
   }

   #daycare__sec4 .box-2 {
      gap: 30px;
   }
}

@media screen and (max-width: 767px) {
   #daycare__sec4 {
      padding: 80px 0;
   }

   #daycare__sec4 .box-1 {
      padding-top: 50px;
   }

   #daycare__sec4 .box-1 dl {
      grid-template-columns: 1fr;
      gap: 10px;
      padding: 15px 10px 10px 30px;
   }

   #daycare__sec4 .box-1 dl:not(:last-child):before {
      left: 13px;
   }

   #daycare__sec4 .box-2 {
      grid-template-columns: 1fr;
      padding-top: 50px;
   }

   #daycare__sec4 .box-2 h3 {
      padding-bottom: 20px;
   }
}

#daycare__sec5 {
   padding: 120px 0 150px;
   position: relative;
}

#daycare__sec5:before {
   content: '';
   width: 100%;
   height: 100%;
   background-image: linear-gradient(25deg, #006496, #82aebc);
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#daycare__sec5 .table {
   width: 100%;
   padding-top: 145px;
}

#daycare__sec5 .table .cl-orange {
   color: #f7931e;
}

#daycare__sec5 .table table {
   min-width: 1300px;
   table-layout: fixed;
}

#daycare__sec5 .table th,
#daycare__sec5 .table td {
   height: 40px;
   font-weight: 500;
   line-height: 28px;
   text-align: center;
   vertical-align: middle;
   border: 1px solid #006496;
   padding: 20px 0;
}

#daycare__sec5 .table th {
   background-color: #eafafc;
   color: #006496;
}

#daycare__sec5 .table td {
   background-color: #fff;
}

#daycare__sec5 .table td small {
   font-size: 18px;
}

#daycare__sec5 .table thead th:first-child {
   width: 12%;
}

#daycare__sec5 .table thead th+th {
   width: 29%;
   background-color: #006496;
   color: #fff;
   border-right: 0;
   border-left: 1px solid #fff;
}

#daycare__sec5 .table tbody tr:last-child th,
#daycare__sec5 .table tbody tr:last-child td {
   vertical-align: top;
}

#daycare__sec5 .table tbody tr:last-child td ul {
   text-align: left;
   padding: 0 20px 20px;
}

#daycare__sec5 .table tbody tr:last-child td ul li {
   text-indent: -27px;
   padding-left: 27px;
}

#daycare__sec5 .table tbody tr:last-child td ul li:not(:last-child) {
   padding-bottom: 15px;
}

@media screen and (max-width: 767px) {
   #daycare__sec5 {
      padding: 80px 0;
   }

   #daycare__sec5 .table {
      width: auto;
      margin: 0 0;
      font-size: 12px;
      padding-top: 50px;
   }

   #daycare__sec5 .table table {
      min-width: 700px;
   }

   #daycare__sec5 .table table th,
   #daycare__sec5 .table table td {
      padding: 10px 5px;
   }

   #daycare__sec5 .table table td small {
      font-size: 12px;
   }
}

/*=============================================
 * Service / stay
 *=============================================*/
#stay__sec1 {
   font-weight: 500;
   font-size: 18px;
   line-height: 32px;
   padding: 120px 0 150px;
}

#stay__sec1 .box-1 {
   margin-top: 100px;
   position: relative;
}

#stay__sec1 .box-1 .icon {
   width: 204px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#stay__sec1 .box-1 .txt {
   font-weight: 400;
   padding-top: 30px;
}

#stay__sec1 .box-2 {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 60px 50px;
   padding-top: 145px;
}

#stay__sec1 .box-2 .col {
   background-color: #fff;
   padding: 30px 35px 40px;
}

#stay__sec1 .box-2 h3 span {
   display: inline-block;
   border-bottom: 1px solid;
   padding-bottom: 5px;
}

#stay__sec1 .box-2 h4 {
   font-weight: 400;
   padding-top: 20px;
}

#stay__sec1 .box-2 figure {
   padding-top: 20px;
}

#stay__sec1 .box-2 .txt {
   color: #4b4b4b;
   padding-top: 20px;
}

#stay__sec1 .box-3 {
   margin-top: 100px;
   position: relative;
}

#stay__sec1 .box-3 .icon {
   width: 124px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#stay__sec1 .box-3 h3 {
   padding-top: 20px;
}

#stay__sec1 .box-3 .txt {
   max-width: 990px;
   font-weight: 400;
   margin: 0 auto;
   padding-top: 30px;
}

#stay__sec1 .list-btn {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 100px;
   padding-top: 130px;
}

#stay__sec1 .box-4 {
   padding-top: 220px;
}

#stay__sec1 .box-4 dl {
   display: grid;
   grid-template-columns: 300px 1fr;
   background-color: #fff;
   padding: 28px 20px 27px 100px;
   position: relative;
   font-weight: 500;
}

#stay__sec1 .box-4 dl:not(:last-child) {
   margin-bottom: 25px;
}

#stay__sec1 .box-4 dl:not(:last-child):before {
   content: '';
   width: 0;
   height: 25px;
   border-left: 3px solid #fff;
   position: absolute;
   top: 100%;
   left: 57px;
}

#stay__sec1 .box-4 dl dt {
   color: #006496;
}

#stay__sec1 .box-4 .img {
   width: 373px;
   position: absolute;
   top: 50%;
   right: 50px;
   transform: translateY(-50%);
   z-index: 1;
}

#stay__sec1 .box-4 .photo {
   display: none;
}

#stay__sec1 .box-5 {
   padding-top: 220px;
}

#stay__sec1 .box-5 .in {
   display: flex;
   align-items: flex-start;
   gap: 48px;
}

#stay__sec1 .box-5 table,
#stay__sec1 .box-5 .photo {
   width: 50%;
}

#stay__sec1 .box-5 table th,
#stay__sec1 .box-5 table td {
   height: 90px;
   vertical-align: middle;
   font-weight: 500;
}

#stay__sec1 .box-5 table th {
   background-color: #eafafc;
   color: #006496;
   width: 45%;
}

#stay__sec1 .box-5 table td {
   background-color: #fff;
   border-left: 1px solid #006496;
   width: 55%;
   padding-left: 60px;
}

#stay__sec1 .box-5 table tr:not(:last-child) th,
#stay__sec1 .box-5 table tr:not(:last-child) td {
   border-bottom: 1px solid #006496;
}

#stay__sec1 .box-5 .photo {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 48px;
}

#stay__sec1 .box-5 .note {
   font-weight: 500;
   font-size: 20px;
   padding-top: 20px;
}

@media screen and (max-width: 1200px) {

   #stay__sec1 .box-1 .icon,
   #stay__sec1 .box-3 .icon {
      position: static;
      margin: 0 auto;
      padding-bottom: 20px;
   }

   #stay__sec1 .box-4 dl {
      grid-template-columns: 150px 1fr;
   }

   #stay__sec1 .box-4 .img {
      right: 30px;
   }

   #stay__sec1 .box-5 table td {
      padding-left: 20px;
   }
}

@media screen and (max-width: 1023px) {
   #stay__sec1 .box-2 {
      grid-template-columns: 1fr;
   }

   #stay__sec1 .list-btn {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   #stay__sec1 .box-4 .img {
      display: none;
   }

   #stay__sec1 .box-4 .photo {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 48px;
      padding-top: 48px;
   }

   #stay__sec1 .box-5 .in {
      flex-direction: column-reverse;
   }

   #stay__sec1 .box-5 table,
   #stay__sec1 .box-5 .photo {
      width: 100%;
   }

   #stay__sec1 .box-5 table td {
      padding-left: 60px;
   }
}

@media screen and (max-width: 767px) {
   #stay__sec1 {
      font-size: 15px;
      padding: 80px 0;
   }

   #stay__sec1 .box-1 {
      margin-top: 40px;
   }

   #stay__sec1 .box-1 .icon {
      width: 102px;
      padding-bottom: 10px;
   }

   #stay__sec1 .box-1 .txt {
      padding-top: 20px;
   }

   #stay__sec1 .box-2 {
      gap: 20px;
      padding-top: 50px;
   }

   #stay__sec1 .box-2 .col {
      padding: 30px 20px;
   }

   #stay__sec1 .box-3 {
      margin-top: 50px;
   }

   #stay__sec1 .box-3 .icon {
      width: 62px;
   }

   #stay__sec1 .box-3 h3 {
      padding-top: 10px;
   }

   #stay__sec1 .box-3 .txt {
      padding-top: 20px;
   }

   #stay__sec1 .list-btn {
      padding-top: 50px;
   }

   #stay__sec1 .box-4,
   #stay__sec1 .box-5 {
      padding-top: 80px;
   }

   #stay__sec1 .box-4 dl {
      grid-template-columns: 1fr;
      gap: 10px;
      padding: 15px 10px 10px 30px;
   }

   #stay__sec1 .box-4 dl:not(:last-child):before {
      left: 13px;
   }

   #stay__sec1 .box-4 .photo {
      gap: 10px;
      padding-top: 20px;
   }

   #stay__sec1 .box-5 .in {
      gap: 20px;
   }

   #stay__sec1 .box-5 table {
      font-size: 17px;
   }

   #stay__sec1 .box-5 table th,
   #stay__sec1 .box-5 table td {
      height: 60px;
   }

   #stay__sec1 .box-5 table th {
      width: 40%;
   }

   #stay__sec1 .box-5 table td {
      width: 60%;
      padding: 0 10px;
   }

   #stay__sec1 .box-5 .photo {
      gap: 20px;
   }
   #stay__sec1 .box-5 .note {
      font-size: 14px;
      line-height: 24px;
      padding-top: 15px;
   }
}

#stay__sec2 {
   color: #fff;
   padding: 150px 0;
   position: relative;
}

#stay__sec2:before {
   content: '';
   width: 100%;
   height: 100%;
   background-image: linear-gradient(25deg, #006496, #82aebc);
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#stay__sec2 .box {
   margin-top: 130px;
   position: relative;
}

#stay__sec2 .box .icon {
   width: 124px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#stay__sec2 .box .txt {
   font-weight: 400;
   padding-top: 30px;
}

#stay__sec2 .box .photo {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 50px;
   padding-top: 150px;
}

@media screen and (max-width: 1200px) {
   #stay__sec2 .box .icon {
      position: static;
      margin: 0 auto;
      padding-bottom: 20px;
   }
}

@media screen and (max-width: 767px) {
   #stay__sec2 {
      padding: 80px 0;
   }

   #stay__sec2 .box {
      margin-top: 30px;
   }

   #stay__sec2 .box .icon {
      width: 62px;
   }

   #stay__sec2 .box .photo {
      grid-template-columns: 1fr;
      gap: 20px;
      padding-top: 30px;
   }
}

#stay__sec3 {
   font-weight: 500;
   font-size: 18px;
   line-height: 32px;
   position: relative;
   padding: 150px 0;
}

#stay__sec3:before {
   content: '';
   width: 100%;
   height: 100%;
   background-color: #dce7ea;
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#stay__sec3 .box {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 60px 50px;
   padding-top: 145px;
}

#stay__sec3 .box .col {
   display: flex;
   flex-direction: column;
   background-color: #fff;
   padding: 30px 40px 40px;
}

#stay__sec3 .box h3 span {
   display: inline-block;
   border-bottom: 1px solid;
}

#stay__sec3 .box figure {
   padding-top: 30px;
}

#stay__sec3 .box .txt {
   color: #4b4b4b;
   padding-top: 30px;
   flex: 1 0 0;
}

#stay__sec3 .box .btn {
   padding-top: 45px;
}

#stay__sec3 .box .btn li+li {
   padding-top: 25px;
}

#stay__sec3 .box .btn a {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   max-width: 420px;
   height: 60px;
   color: #fff;
   background-color: #00c5dc;
   margin: 0 auto;
}

#stay__sec3 .box .btn a:before {
   content: '';
   width: 26px;
   height: 31px;
   background: url("../img/service/icon-doc.png") no-repeat center top/cover;
}

@media screen and (max-width: 1023px) {
   #stay__sec3 .box {
      grid-template-columns: 1fr;
   }
}

@media screen and (max-width: 767px) {
   #stay__sec3 {
      font-size: 16px;
      padding: 80px 0;
   }

   #stay__sec3 .box {
      gap: 20px;
      padding-top: 30px;
   }

   #stay__sec3 .box .col {
      padding: 30px 20px;
   }

   #stay__sec3 .box .txt,
   #stay__sec3 .box .btn {
      padding-top: 20px;
   }

   #stay__sec3 .box .btn li+li {
      padding-top: 10px;
   }

   #stay__sec3 .box .btn a {
      font-size: 15px;
   }

   #stay__sec3 .box .btn a:before {
      width: 20px;
      height: 25px;
   }
}

/*=============================================
 * Service / visit
 *=============================================*/
#visit__sec1 {
   font-weight: 500;
   font-size: 18px;
   line-height: 32px;
   padding: 120px 0 150px;
}

#visit__sec1 .box-1 {
   margin-top: 100px;
   position: relative;
}

#visit__sec1 .box-1 .icon {
   width: 124px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#visit__sec1 .box-1 h3 {
   padding-top: 20px;
}

#visit__sec1 .box-1 .txt {
   font-weight: 400;
   padding-top: 30px;
}

#visit__sec1 .box-2 {
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   gap: 60px 50px;
   padding-top: 145px;
}

#visit__sec1 .box-2 .col {
   width: calc(50% - 25px);
   background-color: #fff;
   padding: 30px 40px 40px;
   box-sizing: border-box;
}

#visit__sec1 .box-2 h3 span {
   display: inline-block;
   border-bottom: 1px solid;
   padding-bottom: 5px;
}

#visit__sec1 .box-2 h4 {
   font-weight: 400;
   padding-top: 20px;
}

#visit__sec1 .box-2 figure {
   padding-top: 20px;
}

#visit__sec1 .box-2 .txt {
   color: #4b4b4b;
   padding-top: 20px;
}

#visit__sec1 .box-3 {
   margin-top: 100px;
   position: relative;
}

#visit__sec1 .box-3 .icon {
   width: 124px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#visit__sec1 .box-3 h3 {
   padding-top: 20px;
}

#visit__sec1 .box-3 .txt {
   max-width: 990px;
   font-weight: 400;
   margin: 0 auto;
   padding-top: 30px;
}

#visit__sec1 .list-btn {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 100px;
   padding-top: 130px;
}

@media screen and (max-width: 1200px) {

   #visit__sec1 .box-1 .icon,
   #visit__sec1 .box-3 .icon {
      position: static;
      margin: 0 auto;
      padding-bottom: 20px;
   }
}

@media screen and (max-width: 1023px) {
   #visit__sec1 .box-2 .col {
      width: 100%;
   }

   #visit__sec1 .list-btn {
      grid-template-columns: 1fr;
      gap: 30px;
   }
}

@media screen and (max-width: 767px) {
   #visit__sec1 {
      font-size: 15px;
      padding: 80px 0;
   }

   #visit__sec1 .box-1 {
      margin-top: 40px;
   }

   #visit__sec1 .box-1 .icon {
      width: 64px;
      padding-bottom: 10px;
   }

   #visit__sec1 .box-1 h3 {
      padding-top: 0;
   }

   #visit__sec1 .box-1 .txt {
      padding-top: 20px;
   }

   #visit__sec1 .box-2 {
      gap: 20px;
      padding-top: 50px;
   }

   #visit__sec1 .box-2 .col {
      padding: 30px 20px;
   }

   #visit__sec1 .box-3 {
      margin-top: 50px;
   }

   #visit__sec1 .box-3 .icon {
      width: 62px;
   }

   #visit__sec1 .box-3 h3 {
      padding-top: 10px;
   }

   #visit__sec1 .box-3 .txt {
      padding-top: 20px;
   }

   #visit__sec1 .list-btn {
      padding-top: 50px;
   }
}

#visit__sec2 {
   color: #fff;
   position: relative;
   padding: 150px 0;
}

#visit__sec2:before {
   content: '';
   width: 100%;
   height: 100%;
   background-image: linear-gradient(25deg, #006496, #82aebc);
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#visit__sec2 .box {
   margin-top: 130px;
   position: relative;
}

#visit__sec2 .box .icon {
   width: 124px;
   position: absolute;
   top: 0;
   left: calc(50% + 435px);
}

#visit__sec2 .box .txt {
   font-weight: 400;
   padding-top: 30px;
}

#visit__sec2 .box .photo {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 50px;
   padding-top: 150px;
}

@media screen and (max-width: 1200px) {
   #visit__sec2 .box .icon {
      position: static;
      margin: 0 auto;
      padding-bottom: 20px;
   }
}

@media screen and (max-width: 767px) {
   #visit__sec2 {
      padding: 80px 0;
   }

   #visit__sec2 .box {
      margin-top: 50px;
   }

   #visit__sec2 .box .icon {
      width: 62px;
      padding-bottom: 10px;
   }

   #visit__sec2 .box h3 {
      font-size: 20px;
   }

   #visit__sec2 .box .txt {
      padding-top: 20px;
   }

   #visit__sec2 .box .photo {
      grid-template-columns: 1fr;
      gap: 20px;
      padding-top: 40px;
   }
  
}

.visit__sec3 {
   position: relative;
}

.visit__sec3:before {
   content: '';
   width: 100%;
   height: 100%;
   background: #dce7ea;
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#service__voice {
   padding: 150px 0 250px;
   border-bottom: 1px solid #000;
}

#service__voice h3 {
   padding-top: 120px;
}

#service__voice .box {
   padding-top: 120px;
}

#service__voice .box .item:not(:last-child) {
   padding-bottom: 150px;
}

#service__voice .box .txt-staff {
   display: flex;
   align-items: flex-end;
   flex-wrap: wrap;
   gap: 42px;
}

#service__voice .box .txt-staff dt {
   width: 61px;
}

#service__voice .box .txt-staff dd {
   width: max-content;
   max-width: calc(100% - 103px);
   background-color: #006496;
   color: #fff;
   font-weight: 500;
   padding: 30px;
   position: relative;
   box-sizing: border-box;
}

#service__voice .box .txt-staff dd:before {
   content: '';
   width: 32px;
   height: 21px;
   background: url("../img/service/visit/voice-arrow-1.png") no-repeat center top/100% auto;
   position: absolute;
   bottom: 30px;
   right: 100%;
}

#service__voice .box .txt-family {
   display: flex;
   flex-direction: row-reverse;
   align-items: flex-end;
   flex-wrap: wrap;
   gap: 42px;
   margin-top: 50px;
}

#service__voice .box .txt-family dt {
   width: 61px;
}

#service__voice .box .txt-family dd {
   width: calc(100% - 103px);
   max-width: 1000px;
   background-color: #fff;
   border: 3px solid #006496;
   color: #006496;
   font-weight: 500;
   line-height: 42px;
   padding: 30px;
   position: relative;
   box-sizing: border-box;
}

#service__voice .box .txt-family dd:before {
   content: '';
   width: 35px;
   height: 23px;
   background: url("../img/service/visit/voice-arrow-2.png") no-repeat center top/100% auto;
   position: absolute;
   bottom: 30px;
   left: 100%;
}

@media screen and (max-width: 767px) {
   #service__voice {
      padding: 80px 0;
   }

   #service__voice h3 {
      padding-top: 50px;
   }

   #service__voice .box {
      padding-top: 50px;
   }

   #service__voice .box .item:not(:last-child) {
      padding-bottom: 50px;
   }

   #service__voice .box .txt-staff {
      flex-direction: column;
      flex-wrap: nowrap;
      align-items: center;
   }

   #service__voice .box .txt-staff dd {
      width: 100%;
      max-width: inherit;
      padding: 20px;
      font-size: 20px;
   }

   #service__voice .box .txt-staff dd:before {
      bottom: 100%;
      left: 50%;
      transform: translateX(-50%) rotate(90deg);
   }

   #service__voice .box .txt-family {
      flex-direction: column;
      flex-wrap: nowrap;
      align-items: center;
      margin-top: 20px;
   }

   #service__voice .box .txt-family dd {
      width: 100%;
      max-width: inherit;
      font-size: 18px;
      line-height: 32px;
      padding: 20px;
   }

   #service__voice .box .txt-family dd:before {
      bottom: 102%;
      left: 50%;
      transform: translateX(-50%) rotate(-90deg);
   }
}

/*=============================================
 * Service / application
 *=============================================*/
#application__sec1 {
   position: relative;
}

#application__sec1:before {
   content: '';
   background-color: #dce7ea;
   width: 100%;
   height: 120%;
   position: absolute;
   bottom: 0;
   left: 0;
   transform: skewY(-5deg);
}

#application__sec1 .box ul {
   line-height: 32px;
   padding-top: 30px;
}

#application__sec1 .box ul li {
   display: flex;
   flex-direction: column;
   justify-content: center;
   min-height: 72px;
   background-color: #fff;
   padding: 0 25px;
   position: relative;
}

#application__sec1 .box ul li:not(:last-child) {
   margin-bottom: 20px;
}

#application__sec1 .box ul li:not(:last-child):after {
   content: '';
   width: 0;
   height: 0;
   border-width: 12px 22px 0 22px;
   border-color: #fff transparent;
   border-style: solid;
   position: absolute;
   top: 100%;
   left: calc(50% - 22px);
}

#application__sec1 .box .txt {
   max-width: max-content;
   margin: 0 auto;
   padding-top: 50px;
}

@media screen and (max-width: 1200px) {
   #application__sec1 .box ul li {
      padding: 10px 20px;
   }
}

@media screen and (max-width: 767px) {
   #application__sec1 .box ul {
      line-height: 24px;
   }

   #application__sec1 .box ul li {
      padding: 10px 20px;
   }

   #application__sec1 .box .txt {
      padding-top: 20px;
   }
}

#application__sec2 {
   border-bottom: 1px solid #000;
}

#application__sec2 .box .txt {
   line-height: 36px;
}

#application__sec2 .box .txt p:not(:last-child) {
   padding-bottom: 30px;
}

#application__sec2 .box .txt .h-18 {
   display: inline-block;
   line-height: 26px;
}

#application__sec2 .js-scrollable table {
   width: 1300px;
}

#application__sec2 .js-scrollable table th,
#application__sec2 .js-scrollable table td {
   height: 76px;
   vertical-align: middle;
   border: 1px solid #006496;
   font-weight: 500;
   line-height: 28px;
   padding: 0 30px;
}

#application__sec2 .js-scrollable table th a:hover,
#application__sec2 .js-scrollable table td a:hover {
   text-decoration: underline;
}

#application__sec2 .js-scrollable table thead th {
   background-color: #006496;
   color: #fff;
}

#application__sec2 .js-scrollable table thead th:first-child {
   background-color: #eafafc;
   color: #006496;
}

#application__sec2 .js-scrollable table thead th:not(:last-child) {
   border-right-color: #fff;
}

#application__sec2 .js-scrollable table tbody th {
   background-color: #eafafc;
}

@media screen and (max-width: 767px) {
   #application__sec2 .desc {
      text-align: justify;
   }

   #application__sec2 .box .txt {
      line-height: 28px;
   }

   #application__sec2 .box .txt p:not(:last-child) {
      padding-bottom: 20px;
   }

   #application__sec2 .js-scrollable table {
      width: 100%;
   }

   #application__sec2 .js-scrollable table th,
   #application__sec2 .js-scrollable table td {
      height: 50px;
      font-size: 12px;
      line-height: 20px;
      padding: 0;
   }

   #application__sec2 .js-scrollable table td {
      padding: 0 10px;
   }
}

/* 共通 */

.top-sec {
  padding-top: 120px;
}
.bottom-sec {
  padding-bottom: 150px;
}
.blue-section,
.white-section {
  position: relative;
  padding: 150px 0;
}
.blue-section:before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: linear-gradient(25deg, #006496, #82aebc);
  position: absolute;
  top: 0;
  left: 0;
  transform: skewY(-5deg);
}
.white-section:before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  transform: skewY(-5deg);
}
.btn-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px;
}
.btn a,
button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  max-width: 420px;
  height: 60px;
  color: #fff;
  background-color: #00c5dc;
  margin: 0 auto;
}
button {
  padding: 0 40px;
}
.table {
  width: 100%;
  padding-top: 145px;
  padding-bottom: 135px;
  position: relative;
  z-index: 2;
}

.table table {
  width: 100%;
}

.table th,
.table td {
  font-weight: 500;
  line-height: 28px;
  text-align: left;
  vertical-align: middle;
  border: 1px solid #006496;
  padding: 30px 20px;
}

.table th {
  background-color: #eafafc;
  color: #006496;
  text-align: center;
}

.table td {
  background-color: #fff;
  color: #4b4b4b;
}

.table td ul {
  text-align: left;
  padding: 0;
}

.table td ul li {
  text-indent: -27px;
  padding-left: 27px;
}

.table td ul li:not(:last-child) {
  padding-bottom: 15px;
}

.table thead th:first-child {
  width: 12%;
}

.table thead th + th {
  width: 29%;
  background-color: #006496;
  color: #fff;
  border-right: 0;
  border-left: 1px solid #fff;
}

.aki .table th,
.aki .table td {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .table {
    overflow-x: scroll;
  }
}

.index {
  position: relative;
  padding: 180px 0 250px;
}
.index .box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 115px 95px;
}

.index .box .col {
  position: relative;
}

.index .box h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: calc(100% - 145px);
  min-height: 106px;
  font-weight: 900;
  font-size: 25px;
  line-height: 35px;
  overflow: hidden;
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.index .box h3:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 10px;
  background-color: #fff;
  transform: skewX(-10deg);
  z-index: -1;
}

.index .box h3 small {
  font-size: 22px;
}

.index .box .btn {
  width: 155px;
  font-size: 18px;
  line-height: 23px;
  letter-spacing: 0.1em;
  text-align: center;
  position: absolute;
  bottom: 0;
  right: 0;
}

.index .box .btn span {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 106px;
  color: #fff;
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.index .box .btn span:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 10px;
  background-color: #006496;
  transform: skewX(-10deg);
  z-index: -1;
}

.index .box .btn span:after {
  content: "";
  width: 84px;
  height: 13px;
  background: url("../img/common/btn-arrow-wh.png") no-repeat center/100% auto;
  display: block;
  margin: 5px auto 0;
}

.index .box .col > a {
  display: block;
}

.index .box .col > a:hover {
  transform: translate(5px, 5px);
}


.meal{
  padding: 150px 0;
}
.event-meal .flexbox{
  display: flex;
  gap: 20px;
}


@media screen and (max-width: 767px) {
  .meal{
    padding: 80px 0;
  }
  .event-meal .flexbox{
    flex-direction: column;
  }
  .event-meal .flexbox div{
    width: 100%;
  }
}
/*アイセル追記260317ここから*/

#daycare__sec6 {
   /*color: #fff;*/
   position: relative;
   padding: 150px 0;
}

#daycare__sec6:before {
   content: '';
   width: 100%;
   height: 100%;
   background:#dce7ea;
   position: absolute;
   top: 0;
   left: 0;
   transform: skewY(-5deg);
}

#daycare__sec6 .box-1 {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 60px 50px;
   padding-top: 115px;
}

#daycare__sec6 .box-1 .col {
   background-color: #fff;
   padding: 30px 40px 40px;
}

#daycare__sec6 .box-1 h3 span {
   display: inline-block;
   border-bottom: 1px solid;
   padding-bottom: 5px;
}

#daycare__sec6 .box-1 h4 {
   font-weight: 400;
   padding-top: 20px;
}

#daycare__sec6 .box-1 figure {
   padding-top: 20px;
}

#daycare__sec6 .box-1 .txt {
   font-weight: 500;
   font-size: 18px;
   line-height: 32px;
   color: #4b4b4b;
   padding-top: 20px;
}

#daycare__sec6 .box-2 {
   margin-top: 100px;
   position: relative;
}

#daycare__sec6 .box-2 h3 {
   padding-top: 20px;
}

#daycare__sec6 .box-2 .txt {
   max-width: 990px;
   font-weight: 400;
   margin: 0 auto;
   padding-top: 30px;
}

#daycare__sec6 .list-btn {
   padding-top: 50px;
  width: 50%;
  max-width: 800px;
  margin: 0 auto;
}
#daycare__sec6 table{
  width: 100%;
  margin-top: 20px;
}
#daycare__sec6 table tr{

}
#daycare__sec6  table th,
#daycare__sec6 table td{
  box-sizing: border-box;
  padding: 5px;
  border: 1px solid #dce7ea;
  color: #4b4b4b;
}
#daycare__sec6 table th{
  width: 200px;
  background: #006496;
  color: #fff;
}
#daycare__sec6 table td{
    text-align: left;
  background: #fff;
}

@media screen and (max-width: 1200px) {
   #daycare__sec6 .box-2 .icon {
      position: static;
      margin: 0 auto;
   }
}

@media screen and (max-width: 1023px) {
   #daycare__sec6 .box-1 {
      grid-template-columns: 1fr;
   }

   #daycare__sec6 .list-btn {
      width: 100%;
   }
}

@media screen and (max-width: 767px) {
   #daycare__sec6 {
      padding: 80px 0;
   }

   #daycare__sec6 .box-1 {
      gap: 20px;
      padding-top: 50px;
   }

   #daycare__sec6 .box-1 .col {
      padding: 30px 20px;
   }

   #daycare__sec6 .box-1 .txt {
      font-size: 14px;
      line-height: 22px;
   }

   #daycare__sec6 .box-2 {
      margin-top: 50px;
   }

   #daycare__sec6 .box-2 .icon {
      width: 62px;
   }

   #daycare__sec6 .box-2 h3 {
      padding-top: 10px;
   }

   #daycare__sec6 .box-2 .txt {
      padding-top: 20px;
   }

   #daycare__sec6 .list-btn {
      grid-template-columns: 1fr;
      gap: 20px;
      padding-top: 50px;
   }
  #daycare__sec6  table th,
#daycare__sec6 table td{
  display: block;
  width: 100%;
  text-align: center;
  }

}
#daycare__sec7 {
   font-weight: 500;
   font-size: 18px;
   line-height: 32px;
   padding: 120px 0 150px;
}
#daycare__sec1 .box-3 h3 {
   border-bottom: 1px solid;
   margin: 60px auto;
   padding-bottom: 5px;
}

#daycare__sec1 .box-3 h4 {
  background: #006496;
  color: #fff;
  box-sizing: border-box;
  padding: 10px 20px;
  margin: 30px auto 20px;
  display: inline-block;
  font-size: 23px;
  border-radius: 10px;
}
#daycare__sec1 .box-3 table{
  width: 100%;
  margin: 20px auto;
  max-width: 500px;
}
#daycare__sec1 .box-3 table tr{

}
#daycare__sec1 .box-3  table th,
#daycare__sec1 .box-3 table td{
  box-sizing: border-box;
  padding: 5px 10px;
  border: 1px solid #dce7ea;
  color: #4b4b4b;
}
#daycare__sec1 .box-3 table th{
  width: 200px;
  background: #006496;
  color: #fff;
}
#daycare__sec1 .box-3 table td{
    text-align: left;
  background: #fff;
}
#daycare__sec1 .box-3 ul{
font-size: 20px;
  text-align: left;
  max-width: 500px;
  padding: 10px 20px;
  box-sizing: border-box;
  border: 1px solid #006496;
  border-radius: 30px;
  margin: 0 auto;
}
#daycare__sec1 .box-3 ul li{
  position: relative;
  padding-left: 25px;
  line-height: 1.3;
  margin: 10px 0;
}
#daycare__sec1 .box-3 ul li:before{
  font-family: "Font Awesome 5 Free";
  content: '\f0da';
  font-weight: 900;
  position: absolute;
  left: 0;

}
#daycare__sec7 .photo {
   padding-top: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
#daycare__sec7 .photo figure {
  width: calc(100% / 3 - 15px);
  margin: 15px;
}
#daycare__sec7 .photo figure img{
  width: 100%;
}

#daycare__sec7 h3 {
   border-bottom: 1px solid;
   margin: 20px auto;
   padding-bottom: 5px;
}

#daycare__sec7 h4 {
  background: #006496;
  color: #fff;
  box-sizing: border-box;
  padding: 10px 20px;
  margin: 30px auto 20px;
  display: inline-block;
  font-size: 23px;
  border-radius: 10px;
}
#daycare__sec7 table{
  width: 100%;
  margin: 20px auto;
  max-width: 800px;
}
#daycare__sec7 table tr{

}
#daycare__sec7  table th,
#daycare__sec7 table td{
  box-sizing: border-box;
  padding: 5px;
  border: 1px solid #dce7ea;
  color: #4b4b4b;
}
#daycare__sec7 table th{
  width: 200px;
  background: #006496;
  color: #fff;
}
#daycare__sec7 table td{
    text-align: left;
  background: #fff;
}
#daycare__sec7 ul{
font-size: 20px;
  text-align: left;
  max-width: 800px;
  padding: 20px 30px;
  box-sizing: border-box;
  border: 1px solid #fff;
  border-radius: 30px;
  margin: 0 auto;
}
#daycare__sec7 ul li{
  position: relative;
  padding-left: 25px;
  line-height: 1.3;
  margin: 10px 0;
}
#daycare__sec7 ul li:before{
  font-family: "Font Awesome 5 Free";
  content: '\f0da';
  font-weight: 900;
  position: absolute;
  left: 0;

}

@media screen and (max-width: 1200px) {
}

@media screen and (max-width: 1023px) {
   #daycare__sec7 h3 {
      margin: 0;
   }
}

@media screen and (max-width: 767px) {
   #daycare__sec7 {
      font-size: 14px;
      line-height: 22px;
      padding: 80px 0;
   }
    #daycare__sec7  table th,
#daycare__sec7 table td{
  display: block;
  width: 100%;
  text-align: center;
  }
  

}

/*アイセル追記260317ここまで*/
