.Bredcrumb {
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  padding: 0.5em 0px; }
  .Bredcrumb .pankuzu {
    margin: auto;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 5px; }

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0; }

h4 {
  position: relative;
  padding-left: 16px; }
  h4:after {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: calc(100% - 2px);
    background-color: #46c4db;
    content: "";
    width: 6px; }

#LowPage #btn {
  padding: 5em 0 5em; }
  #LowPage #btn .btn_box a {
    display: block;
    position: relative;
    color: #fff;
    width: 20%;
    margin: auto;
    text-align: center;
    position: relative; }
    #LowPage #btn .btn_box a:before {
      position: absolute;
      top: 60%;
      left: 35px;
      transform: translateY(-50%);
      width: 0px;
      height: 0px;
      border: 0.4em solid transparent;
      content: "";
      border-top: 0.4em solid #fff; }
    #LowPage #btn .btn_box a .button {
      padding: 5px;
      border-radius: 30px; }
    #LowPage #btn .btn_box a .btn_pink {
      background: #faa2a0; }
    #LowPage #btn .btn_box a .btn_green {
      background: #2dcfb2; }
    #LowPage #btn .btn_box a .btn_blue {
      background: #00a4d7; }
    #LowPage #btn .btn_box a .btn_orange {
      background: #ff9e19; }
    @media screen and (max-width: 640px) {
      #LowPage #btn .btn_box a {
        width: 80%;
        margin: 0 auto 20px; } }
  @media screen and (max-width: 640px) {
    #LowPage #btn .btn_box {
      display: block; } }
#LowPage .mainWrapper .BackPh {
  background-size: cover;
  background-position: center;
  height: 20vh;
  width: 100%;
  position: absolute;
  z-index: -1;
  animation: fadein 3s forwards; }
#LowPage .mainWrapper .main {
  min-height: 20vh;
  margin: auto;
  position: relative; }
  #LowPage .mainWrapper .main .copy {
    font-size: 2.4rem;
    position: absolute;
    text-align: center;
    color: #fff;
    width: 100%;
    line-height: 1.8;
    top: 56%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%); }
    #LowPage .mainWrapper .main .copy h1 {
      border-left: none;
      margin-bottom: 0.9em;
      position: relative;
      text-align: center;
      border-bottom: 0;
      text-shadow: 0px 0px 6.66px rgba(0, 0, 0, 0.8);
      background-color: unset;
      padding: 0;
      color: #fff; }

#company .BackPh {
  background-image: url(../img/company/blank_wipe.jpg); }
#company #gaiyou table {
  border-spacing: 0;
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd; }
  #company #gaiyou table th,
  #company #gaiyou table td {
    padding: 20px 15px;
    border-bottom: 1px solid #ddd;
    vertical-align: top;
    line-height: 1.7; }
  #company #gaiyou table th {
    font-weight: bold;
    width: 30%;
    background-color: #f7faf9;
    border-right: 1px solid #ddd; }
#company #jigyousyo .jigyousyo_box {
  border-bottom: 1px solid #ddd;
  padding: 30px 20px; }
  #company #jigyousyo .jigyousyo_box .name {
    background: linear-gradient(90deg, #46c4db, #5dd5ab);
    color: #fff;
    padding: 3px 10px;
    letter-spacing: 0.2em;
    line-height: 5rem; }
    @media screen and (max-width: 640px) {
      #company #jigyousyo .jigyousyo_box .name {
        line-height: 0rem; } }
#company #enkaku {
  padding: 5em 0 15em; }
  #company #enkaku table {
    border: 1px solid #ddd; }
    #company #enkaku table th {
      font-weight: bold !important;
      width: 30%;
      background-color: #f7faf9;
      border-bottom: 1px solid #ddd;
      border-right: 1px solid #ddd; }
    #company #enkaku table td {
      border-bottom: 1px solid #ddd;
      padding: 8px 20px; }
    @media screen and (max-width: 640px) {
      #company #enkaku table .month {
        width: 15%; }
      #company #enkaku table .day {
        width: 15%; } }

#service .BackPh {
  background-image: url(../img/service/main_bg.jpg); }
#service .service_box {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: auto; }
  #service .service_box .service_box-left {
    position: absolute;
    top: 0;
    width: 39%;
    margin-bottom: 0;
    padding: 40px 0 0;
    z-index: 10;
    margin-left: 6%; }
    @media screen and (max-width: 640px) {
      #service .service_box .service_box-left {
        width: 100%;
        margin-left: 0%; } }
  #service .service_box .service_box-right {
    width: calc(100% - 48% + 36px);
    margin: 0 0px 0 42%;
    padding: 92px 0 0; }
    @media screen and (max-width: 640px) {
      #service .service_box .service_box-right {
        width: 100%;
        margin: 0;
        padding: 400px 0 0; } }
    #service .service_box .service_box-right .service_box-list {
      margin-bottom: 0;
      padding: 10% 8% 0% 14%;
      background: #f7faf9; }
      @media screen and (max-width: 640px) {
        #service .service_box .service_box-right .service_box-list {
          padding: 8%;
          position: relative; } }
      #service .service_box .service_box-right .service_box-list .ttl {
        color: #008ca7; }
      #service .service_box .service_box-right .service_box-list .arrow {
        background: linear-gradient(90deg, #46c4db, #5dd5ab);
        color: #fff;
        display: inline-block;
        padding: 0 50px;
        border-radius: 30px;
        position: relative; }
        @media screen and (max-width: 640px) {
          #service .service_box .service_box-right .service_box-list .arrow {
            position: absolute;
            right: 8%;
            bottom: 12%; } }
        #service .service_box .service_box-right .service_box-list .arrow:before {
          content: '';
          position: absolute;
          top: calc(50% - 3.5px);
          right: 28px;
          display: block;
          width: 7px;
          height: 7px;
          border-top: solid 1px;
          border-right: solid 1px;
          transform: rotate(45deg);
          transition: all .2s ease-out; }
      #service .service_box .service_box-right .service_box-list p {
        color: #000; }
#service #aisatsu {
  background: #fbf9f3; }
  @media screen and (max-width: 1280px) {
    #service #aisatsu {
      padding: 5em 0 8em !important; } }
  #service #aisatsu .aisatsu_box {
    align-items: center; }
    @media screen and (max-width: 640px) {
      #service #aisatsu .aisatsu_box {
        display: block; } }
    #service #aisatsu .aisatsu_box .button {
      background: linear-gradient(90deg, #e997b5, #e9a486);
      border-radius: 30px;
      color: #fff;
      padding: 7px;
      text-align: center;
      font-weight: bold; }
      #service #aisatsu .aisatsu_box .button a {
        color: #fff;
        display: block; }
    #service #aisatsu .aisatsu_box .arrow {
      position: relative; }
      #service #aisatsu .aisatsu_box .arrow:before {
        content: '';
        position: absolute;
        top: calc(50% - 3.5px);
        right: 30px;
        display: block;
        width: 7px;
        height: 7px;
        border-top: solid 2px;
        border-right: solid 2px;
        transform: rotate(45deg); }
    @media screen and (max-width: 640px) {
      #service #aisatsu .aisatsu_box figure {
        width: 100%;
        margin-bottom: 20px; } }
    @media screen and (max-width: 640px) {
      #service #aisatsu .aisatsu_box .aisatsu_read {
        width: 100%; } }
  #service #aisatsu .aisatsu_img {
    position: relative; }
    @media screen and (max-width: 640px) {
      #service #aisatsu .aisatsu_img {
        width: 100%;
        margin-right: 0px !important;
        margin-bottom: 20px; } }
  #service #aisatsu .cap {
    background-color: rgba(0, 0, 0, 0.6);
    color: #fff;
    position: absolute;
    width: 100%;
    bottom: .1%;
    padding: 5px 5px 5px 20px; }

#cleaning .BackPh {
  background-image: url(../img/service/main_bg.jpg); }
#cleaning #aisatsu {
  background-image: url(../img/top/jigyou.jpg);
  background-size: cover;
  background-position: center; }
  #cleaning #aisatsu .aisatsu_box {
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 30px; }
    #cleaning #aisatsu .aisatsu_box ul {
      min-width: 360px;
      margin: auto;
      text-align: left;
      display: inline-block; }
      #cleaning #aisatsu .aisatsu_box ul li {
        margin-bottom: 10px; }
#cleaning .photo_box {
  width: 80%;
  margin: auto;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between; }
  #cleaning .photo_box figure {
    height: 16vw;
    max-height: 240px;
    margin: .5%;
    overflow: hidden; }
    #cleaning .photo_box figure:first-of-type {
      width: 39%; }
    #cleaning .photo_box figure:nth-child(2) {
      width: 59%; }
    #cleaning .photo_box figure:nth-child(3) {
      width: 59%; }
    #cleaning .photo_box figure:nth-child(4) {
      width: 39%; }
#cleaning .clean {
  width: 80%;
  margin: auto; }
  #cleaning .clean .clean_kind {
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between; }
    #cleaning .clean .clean_kind figure {
      width: 25%;
      background: rgba(200, 200, 200, 0.1); }
      @media screen and (max-width: 640px) {
        #cleaning .clean .clean_kind figure {
          width: 100%; } }
    #cleaning .clean .clean_kind p {
      width: 75%;
      background: rgba(200, 200, 200, 0.1);
      padding: 30px 38px;
      /*font-weight: bold;*/
      border-radius: 0 0 30px; }
      @media screen and (max-width: 640px) {
        #cleaning .clean .clean_kind p {
          width: 100%; } }
  #cleaning .clean .clean_kind2 {
    display: flex;
    flex-direction: row-reverse;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between; }
    #cleaning .clean .clean_kind2 figure {
      width: 25%;
      background: rgba(200, 200, 200, 0.1); }
      @media screen and (max-width: 640px) {
        #cleaning .clean .clean_kind2 figure {
          width: 100%; } }
    #cleaning .clean .clean_kind2 p {
      width: 75%;
      background: rgba(200, 200, 200, 0.1);
      padding: 30px 38px;
      /*font-weight: bold;*/
      border-radius: 0 0 0 30px; }
      @media screen and (max-width: 640px) {
        #cleaning .clean .clean_kind2 p {
          width: 100%; } }
#cleaning #kentei {
  background-color: #fdfcf7; }
#cleaning #Event .List {
  margin-bottom: .8em; }
  #cleaning #Event .List span {
    background: #c8f54a;
    background: linear-gradient(225deg, #c8f54a 0%, #0ecc8a 100%);
    color: #fff;
    font-weight: bold;
    padding: 8px 30px; }
#cleaning #Event .abilin {
  width: 68%;
  min-width: 670px;
  text-align: justify; }
  @media screen and (max-width: 640px) {
    #cleaning #Event .abilin {
      width: 100%;
      min-width: auto; } }
#cleaning #flow_chart {
  padding: 7em 0 13em;
  background-image: url(../img/top/bg_topics.jpg);
  background-size: cover; }
  #cleaning #flow_chart .Inner .flow_box {
    background-color: #fff;
    padding: 50px;
    box-shadow: 10px 10px 40px -20px #00001a; }
  #cleaning #flow_chart .flow_chart li {
    display: flex;
    padding-bottom: 50px;
    position: relative;
    z-index: 10; }
    #cleaning #flow_chart .flow_chart li:before {
      content: "";
      display: block;
      width: 1px;
      height: 100%;
      position: absolute;
      background-color: #a79c9c;
      left: 60px; }
    #cleaning #flow_chart .flow_chart li:nth-child(2) .num {
      background: #0FD8B5; }
    #cleaning #flow_chart .flow_chart li:nth-child(3) .num {
      background: #0ecc8a; }
    #cleaning #flow_chart .flow_chart li:last-child:before {
      width: 0; }
    #cleaning #flow_chart .flow_chart li .text {
      flex: 1;
      padding-left: 40px; }
  #cleaning #flow_chart .flow_chart .num:nth-child(1) {
    position: relative;
    z-index: 10;
    display: flex;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    justify-content: center;
    align-content: center;
    align-items: center;
    font-size: 3rem;
    font-weight: 700;
    background: #46c4db;
    color: #fff; }
#cleaning #photo_box .novelty_box {
  width: 80%;
  margin: auto;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between; }
  @media screen and (max-width: 640px) {
    #cleaning #photo_box .novelty_box .novelty_box_inner {
      width: 50% !important; } }
  #cleaning #photo_box .novelty_box .box1 {
    margin: .5%;
    overflow: hidden; }
    #cleaning #photo_box .novelty_box .box1 img {
      object-fit: cover;
      height: 500px; }
  #cleaning #photo_box .novelty_box .box2,
  #cleaning #photo_box .novelty_box .box3 {
    width: 100%;
    margin: .5%;
    overflow: hidden; }
    #cleaning #photo_box .novelty_box .box2 img,
    #cleaning #photo_box .novelty_box .box3 img {
      object-fit: cover;
      height: 248px; }
  #cleaning #photo_box .novelty_box .box3 {
    display: inline-block; }

.checkmark {
  padding-left: 42px;
  position: relative; }

.checkmark:before {
  content: "";
  display: block;
  position: absolute;
  width: 30px;
  height: 30px;
  border-radius: 28px;
  background: #0ecc8a;
  left: 0;
  top: -5px; }

.checkmark:after {
  content: "";
  display: block;
  position: absolute;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  width: 10px;
  height: 6px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  left: 9px;
  top: 4px; }

#photo_box {
  background: white;
  background: linear-gradient(180deg, white 0%, #fbfbfb 100%); }

.Ti_gurade {
  display: block;
  font-size: 1.6em;
  margin-block-start: 0.67em;
  margin-block-end: 2em;
  /*font-weight: bold;*/
  position: relative; }
  .Ti_gurade:after {
    content: "";
    display: block;
    width: 80px;
    height: 6px;
    position: absolute;
    bottom: -24px;
    left: 0;
    background: linear-gradient(90deg, #0ecc8a, #c8f54a); }

#app {
  width: 100%;
  background-image: url(/img/service/cleaning/bg_bubble.png);
  background-repeat: repeat;
  /*background-size: contain;*/
  background-position: center; }

.BgGraduate {
  background: linear-gradient(90deg, #f4ffe8, #e5f9ff);
  padding: 60px; }

.BgGraduate2 {
  background: linear-gradient(90deg, #ddfaff, #f4ffe8);
  padding: 60px; }

a.CTA .arrow.green {
  background: #2dcfb2; }
a.CTA .arrow {
  padding: 5px;
  border-radius: 30px;
  display: block;
  position: relative;
  color: #fff;
  width: 50%;
  margin: auto;
  text-align: center; }
  @media screen and (max-width: 640px) {
    a.CTA .arrow {
      color: #fff;
      width: 90%;
      font-size: 1em; } }
  a.CTA .arrow:after {
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-weight: 900;
    color: #fff;
    margin-right: 0.3em;
    position: absolute;
    top: 6px;
    right: 20px;
    font-size: 1em; }

#purpose .BackPh {
  background-image: url(../img/purpose/main_bg.jpg); }
#purpose #aisatsu {
  background-image: url(../img/purpose/aisatsu.jpg);
  background-size: cover;
  background-position: center; }
  #purpose #aisatsu .aisatsu_box {
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 30px; }
#purpose .Philosophy {
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center; }
  #purpose .Philosophy .PhilosophyBox {
    padding: 40px;
    background: linear-gradient(90deg, #ddfaff, #f4ffe8);
    margin-bottom: 20px;
    margin-left: 1.5%;
    margin-right: 1.5%;
    width: 30%; }
    @media screen and (max-width: 1115px) {
      #purpose .Philosophy .PhilosophyBox {
        width: 47%; } }
    @media screen and (max-width: 640px) {
      #purpose .Philosophy .PhilosophyBox {
        width: 97%; } }
    #purpose .Philosophy .PhilosophyBox h3 {
      font-size: 1.4em;
      margin-bottom: 10px;
      background-color: #fff;
      display: inline-block;
      padding: 8px 14px;
      color: #0fd8b1; }
    #purpose .Philosophy .PhilosophyBox p {
      text-align: justify;
      line-height: 1.7;
      font-size: .9em; }
#purpose #Promise {
  padding: 7em 0 13em;
  background-image: url(../img/top/bg_topics.jpg);
  background-size: cover; }
  #purpose #Promise h2 span {
    font-size: 1.5em; }
  #purpose #Promise .Inner .PromiseBox {
    background-color: #fff;
    padding: 50px;
    box-shadow: 10px 10px 40px -20px #00001a;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between; }
    #purpose #Promise .Inner .PromiseBox dl {
      display: flex;
      -webkit-flex-wrap: nowrap;
      flex-wrap: nowrap;
      -webkit-justify-content: start;
      justify-content: flex-start;
      width: 48%;
      align-items: center;
      margin-bottom: 20px; }
      @media screen and (max-width: 640px) {
        #purpose #Promise .Inner .PromiseBox dl {
          width: 100%; } }
      #purpose #Promise .Inner .PromiseBox dl dt {
        font-size: 2em;
        width: 1.5em;
        line-height: 1.5em;
        text-align: center;
        background: #43C4DC;
        color: #fff; }
      #purpose #Promise .Inner .PromiseBox dl dd {
        font-size: 1.4em;
        margin-left: .3em; }
        @media screen and (max-width: 640px) {
          #purpose #Promise .Inner .PromiseBox dl dd {
            font-size: 1.3em; } }

#privacy .BackPh {
  background-image: url(../img/purpose/main_bg.jpg); }
#privacy .policy {
  background: linear-gradient(-90deg, #0fd8b1, #46c4db);
  padding: 5px; }
  #privacy .policy__box {
    width: 100%;
    height: 100%;
    background: #fff;
    padding: 50px; }
    #privacy .policy__box ol {
      counter-reset: my-counter;
      list-style: none;
      padding: 0;
      margin: 0; }
      #privacy .policy__box ol li {
        font-size: 16px;
        line-height: 1.5;
        padding-left: 30px;
        position: relative;
        margin-bottom: 30px; }
        #privacy .policy__box ol li:before {
          content: counter(my-counter);
          counter-increment: my-counter;
          background-color: #46c4db;
          border: 1px solid;
          border-radius: 50%;
          box-sizing: border-box;
          display: flex;
          justify-content: center;
          align-items: center;
          height: 22px;
          width: 22px;
          color: #ffffff;
          font-size: 85%;
          line-height: 1;
          position: absolute;
          top: 0;
          left: 0; }
        #privacy .policy__box ol li:last-of-type {
          margin-bottom: 0; }
#privacy .prominent {
  font-size: .85em;
  line-height: 1.6;
  text-align: right;
  margin-bottom: 100px; }
@media screen and (max-width: 1280px) {
  #privacy section:last-child {
    padding-bottom: 8em !important; } }

#Sitemap section {
  padding: 5em 0 15em !important; }
#Sitemap .BackPh {
  background-image: url(../img/purpose/main_bg.jpg); }
#Sitemap .Sitemapbox {
  width: 70%;
  min-width: 630px;
  border-top: 1px solid #ddd;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 640px) {
    #Sitemap .Sitemapbox {
      width: 100%;
      min-width: 100%; } }
  #Sitemap .Sitemapbox .Block {
    width: 100%;
    border-bottom: 1px dashed #ddd; }
    #Sitemap .Sitemapbox .Block:last-of-type {
      border-bottom: 1px solid #ddd; }
    #Sitemap .Sitemapbox .Block ul {
      padding: 20px; }
      #Sitemap .Sitemapbox .Block ul li {
        position: relative;
        padding-left: 25px; }
        #Sitemap .Sitemapbox .Block ul li:before {
          content: "";
          position: absolute;
          top: .52em;
          left: 0;
          width: 0;
          height: 0;
          border-width: 7px;
          border-style: solid;
          border-color: transparent transparent transparent #46c4db; }
        #Sitemap .Sitemapbox .Block ul li a {
          color: #000; }
      #Sitemap .Sitemapbox .Block ul.Sub {
        margin-left: 5em;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap; }
        #Sitemap .Sitemapbox .Block ul.Sub li {
          width: 50%; }
          @media screen and (max-width: 640px) {
            #Sitemap .Sitemapbox .Block ul.Sub li.sp100 {
              width: 100% !important; } }

#Contact section {
  padding-bottom: 15em; }
#Contact .BackPh {
  background-image: url(../img/purpose/main_bg.jpg); }
#Contact .Contactbox {
  width: 80%;
  min-width: 630px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media screen and (max-width: 640px) {
    #Contact .Contactbox {
      min-width: 570px;
      display: block; } }
  #Contact .Contactbox .Address,
  #Contact .Contactbox .Mail {
    width: 48%;
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 40px 20px 20px;
    position: relative;
    text-align: center;
    background: white;
    background: linear-gradient(180deg, white 0%, #f6f6f6 100%);
    word-break: break-all; }
    @media screen and (max-width: 640px) {
      #Contact .Contactbox .Address,
      #Contact .Contactbox .Mail {
        width: 100%; } }
    #Contact .Contactbox .Address .icon,
    #Contact .Contactbox .Mail .icon {
      position: absolute;
      top: -40px;
      margin: auto;
      left: 0;
      right: 0;
      width: 70px; }
  @media screen and (max-width: 640px) {
    #Contact .Contactbox .Address {
      margin-bottom: 50px; } }
#Contact .attention {
  background: linear-gradient(-90deg, #0fd8b1, #46c4db);
  padding: 5px;
  width: 85%;
  margin: auto; }
  @media screen and (max-width: 640px) {
    #Contact .attention {
      width: 100%; } }
  #Contact .attention .attention_box {
    width: 100%;
    height: 100%;
    background: #fff;
    padding: 50px; }
    #Contact .attention .attention_box ul li {
      position: relative;
      padding-left: 19px; }
      #Contact .attention .attention_box ul li:before {
        content: "";
        position: absolute;
        top: .8em;
        left: 0;
        width: 10px;
        height: 10px;
        background-color: #46c4db;
        border-radius: 50%; }
    #Contact .attention .attention_box .line {
      color: #000;
      border-bottom: solid 1px #000;
      padding-bottom: 3px; }
    #Contact .attention .attention_box .partnerline {
      color: #000;
      border-bottom: solid 1px #000;
      word-break: break-all; }
    #Contact .attention .attention_box .ttl {
      color: #165292; }
