@charset "UTF-8";

/* ================================================================

サービス内容(service.php)

==================================================================*/
#service{
  overflow:hidden!important;
  width:100%;
}


/* 家事代行トップ
================================================================*/
#keeping .service-top{
  padding: 0 40px;
  display:flex;
  flex-wrap:wrap;
	justify-content: flex-end;
  position:relative;
}

@media screen and (max-width: 1439px){
  #keeping {
    padding-bottom:0;
  }
}

@media screen and (max-width: 1199px){
  #keeping .service-top{
    padding: 0 30px;
    width:90%!important;
  }
}

@media screen and (max-width: 743px){
  #keeping .service-top{
    padding: 0;
    width:90%!important;
  }
}


/* タイトル */
.service-ttl{
  font-size:34px;
  font-weight:800;
  letter-spacing: 7px;
  text-align: center;
  display:block;
}

.service-ttl span{
  color:#ffb6c1;
  border-bottom:solid 8px #ffb6c1;
  font-weight:800;
  font-size:24px;
  padding-bottom:18px;
  display:inline-block;
  vertical-align: bottom;
  position:relative;
  top:10px;
  width:auto;
  margin-right:30px;
  letter-spacing: 2px;
}

#keeping .service-top p{
  text-align: right;
  margin-top:40px;
  font-size:17px;
  font-weight:700;
  letter-spacing: 3px;
  line-height:25px;
  margin-bottom:20px;
}

#keeping .service-top .illust{
  width:380px;
  position:absolute;
  bottom:0;
  left:40px; /* padding */
}

#keeping .service-top .img-box{
  width:calc(100% - 290px);
  background-color:gray;
  border-radius:15px;
  height:230px;
  margin:0;
  overflow:hidden;
  margin-bottom:30px;
}

#keeping .service-top .img-box img{
  width:100%;
  height:100%;
  object-fit:cover;
}


@media screen and (max-width: 1199px){
  .service-ttl{
    font-size:28px;
    letter-spacing: 5px;
  }

  .service-ttl span{
    border-bottom:solid 6px #ffb6c1;
    font-size:22px;
    padding-bottom:10px;
    position:relative;
    top:10px;
    margin-right:20px;
  }

  #keeping .service-top p{
    margin-top:25px;
    font-size:15px;
    font-weight:700;
    letter-spacing: 2px;
    line-height:22px;
    margin-bottom:20px;
  }

  #keeping .service-top .illust{
    width:330px;
    position:absolute;
    bottom:0;
    left:20px; /* padding */
  }

  #keeping .service-top .img-box{
    width:calc(100% - 250px);
    height:200px;
    margin-bottom:30px;
  }
}


@media screen and (max-width: 743px){
  .service-ttl{
    font-size:22px;
    letter-spacing: 3px;
  }

  .service-ttl span{
    border-bottom:none;
    font-size:18px;
    padding-bottom:13px;
    position:relative;
    top:-15px;
    margin-right:0;
    display:block;
    width:100%;
    text-align: center;
  }

  .service-ttl span::after{
    content:'';
    display:block;
    width:90px;
    height:5px;
    background-color:#ffb6c1;
    position:absolute;
    bottom:0;
    right:0;
    left:0;
    margin :auto;
  }

  #cleaning .service-ttl span::after{
    background-color:#87cefa;
    width:170px;
  }

  #keeping .service-top p{
    margin-top:15px;
    font-size:14px;
    letter-spacing: 2px;
    line-height:20px;
    margin-bottom:20px;
    text-align: center;
  }

  #keeping .service-top .illust{
    width:260px;
    position:absolute;
    bottom:0;
    left:0px; /* padding */
  }

  #keeping .service-top .img-box{
    width:calc(100% - 30px);
    height:180px;
    margin-bottom:120px;
  }
}

/* 家事代行メイン
================================================================*/
#keeping .service-main{
  background-color:#f2efdf;
  padding:90px 0 60px 0;
}

#keeping .service-main .service-wrap{
  position:relative;
  text-align: center;
}

@media screen and (max-width: 743px){
  #keeping .service-main .service-wrap{
    position:relative;
    text-align: left;
  }
}

/* タイトル・テキスト */
#keeping .service-wrap h2{
  text-align: center;
  font-size:28px;
  letter-spacing: 6px;
  font-weight:800;
  margin-bottom:30px;
  padding-top:10px;
}

#service .section-ttl{
  font-size:60px;
}

#keeping .service-wrap .section-ttl{
  position:absolute;
  top:-35px;
  text-align: center;
}

#keeping .service-wrap p{
  text-align: center;
  margin:20px 0 30px 0;
  font-weight:600;
  line-height:28px;
}

@media screen and (max-width: 1199px){
  #keeping .service-wrap h2{
    letter-spacing: 3px;
    margin-bottom:15px;
    padding-top:5px;
    font-size: 22px;
  }

  #service .section-ttl{
    font-size: 45px;
    line-height: 45px;
  }

  #keeping .service-wrap .section-ttl{
    position:absolute;
    top:-35px;
    text-align: center;
  }

  #keeping .service-wrap p{
    font-size:14px;
    margin:15px 0 20px 0;
    line-height:24px;
  }
}

@media screen and (max-width: 743px){
  #keeping .service-wrap{
    width:90%!important;
  }

  #keeping .service-wrap h2{
    letter-spacing: 2px;
    margin-bottom:15px;
    padding-top:0px;
    font-size: 20px;
  }

  #service .section-ttl{
    font-size: 32px;
    line-height: 32px;
  }

  #keeping .service-wrap .section-ttl{
    position:absolute;
    top:-30px;
    text-align: center;
  }

  #keeping .service-wrap p{
    font-size:13px;
    margin:15px 0 20px 0;
    line-height:24px;
    text-align: justify;
    letter-spacing: 0;
  }

}

/* リスト */
#keeping .service-wrap ul{
  display:flex;
  flex-wrap:wrap;
}

#keeping .service-wrap ul li{
  width:calc((100% - 25px)/6);
  margin-right:5px;
  background-color:#fff;
  border-radius:10px;
  overflow:hidden;
}

#keeping .service-wrap ul li:last-of-type{
  margin-right:0;
}

#keeping .service-wrap ul .img-box{
  width:100%;
  height:200px;
  background-color:gray;
}

#keeping .service-wrap ul .img-box img{
  width:100%;
  height:100%;
  object-fit:cover;
}

#keeping .service-wrap ul span{
  display:block;
  text-align: center;
  margin:20px 0;
  font-weight:600;
  line-height:28px;
  font-size:15px;
}

@media screen and (max-width: 1439px){
  #keeping .service-wrap ul .img-box{
    width:100%;
    height:140px;
  }
}

@media screen and (max-width: 1199px){
  #keeping .service-wrap ul{
    margin-top:20px;
  }

  #keeping .service-wrap ul li{
    width:calc((100% - 25px)/6);
    margin-right:5px;
  }

  #keeping .service-wrap ul .img-box{
    height:110px;
  }

  #keeping .service-wrap ul span{
    margin:15px 0;
    line-height:20px;
    font-size:13.5px;
  }
}

@media screen and (max-width: 743px){
  #keeping .service-wrap ul{
    margin-top:20px;
  }

  #keeping .service-wrap ul li{
    width:calc((100% - 15px)/3);
    margin-right:5px;
    border-radius: 8px;
    margin-bottom:10px;
  }

  #keeping .service-wrap ul li:nth-of-type(3n){
    margin-right:0;
  }

  #keeping .service-wrap ul .img-box{
    height:110px;
  }

  #keeping .service-wrap ul span{
    margin:10px 0;
    line-height:20px;
    font-size:13px;
  }
}

/* リンク */
#service .link-btn{
  margin-top:30px;
  color:#fff;
  background-color:#E55C7B;
  padding:30px 90px;
  border-radius:10px;
}

@media screen and (max-width: 1439px){
  #service .link-btn{
    margin-top:10px;
    padding:30px 100px;
  }
}

@media screen and (max-width: 1199px){
  #service .link-btn{
    padding: 23px 55px;
    font-size: 13.5px;
  }
}

@media screen and (max-width: 743px){
  #service .link-btn{
    margin-bottom:20px;
  }
}

/* お客様の声 */
#keeping .service-wrap .voice{
  position:absolute;
  right:0;
  bottom:-60px; /* padding */
  width:210px;
  text-align: right;
  padding-bottom:50px;
}

#keeping .service-wrap .voice img{
  width:160px;
  position:absolute;
  bottom:0;
  left:0;
}

#keeping .service-wrap .voice a{
  background-color:#fff;
  width:125px;
  height:125px;
  display:inline-block;
  border-radius:100px;
  text-align: center;
  color:#45945b;
  font-weight:600;
  padding-top:48px;
  font-size:15px;
  position:relative;
}

#keeping .service-wrap .voice a span{
  letter-spacing: 0;
  border-bottom:solid 2px #000;
  font-weight:600;
  font-size:12px;
  position:absolute;
  bottom:32px;
  right:18px;
  width:auto;
  line-height:18px;
  transform:rotate(-10deg);
}

@media screen and (max-width: 1199px){
  #keeping .service-wrap .voice{
    bottom:-60px; /* padding */
    width:200px;
    text-align: right;
    padding-bottom:40px;
  }

  #keeping .service-wrap .voice img{
    width:140px;
  }

  #keeping .service-wrap .voice a{
    width:110px;
    height:110px;
    padding-top:38px;
    font-size:14px;
  }

  #keeping .service-wrap .voice a span{
    font-size:12px;
    bottom:28px;
    right:18px;
    line-height:18px;
  }
}

@media screen and (max-width: 743px){
  #keeping .service-wrap .voice{
    bottom:-60px; /* padding */
    width:170px;
    padding-bottom:40px;
    right:0;
  }

  #keeping .service-wrap .voice img{
    width:120px;
  }

  #keeping .service-wrap .voice a{
    width:100px;
    height:100px;
    padding-top:35px;
    font-size:13px;
  }

  #keeping .service-wrap .voice a span{
    font-size:12px;
    bottom:23px;
    right:18px;
    line-height:18px;
    border-bottom: solid 2px #fff;
  }
}



/* ハウスクリーニング
================================================================*/
#cleaning{
  text-align: center;
}

#cleaning .clean-wrap{
  background-color:#f2efdf;
  margin:60px auto 30px auto;
  border-radius:20px;
  padding:70px 50px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-wrap:wrap;
  justify-content: flex-start;
}

#cleaning .clean-wrap .section-ttl{
  position:absolute;
  top:-20px;
  right:0;
  display:inline-block;
  width:auto;
}

#cleaning .clean-wrap strong{
  color:#87cefa;
  background-color:#fff;
  font-weight:800;
  font-size:34px;
  letter-spacing:5px;
  padding:15px 20px 18px 20px;
  display:inline-block;
  width:auto;
  margin:0;
}

#cleaning .clean-wrap strong + p,
#cleaning .clean-wrap + p{
  margin:15px 0 20px 0 ;
  font-weight:600;
  line-height:28px;
}

#cleaning .clean-wrap + p{
  text-align: center;
}

@media screen and (max-width: 1439px){
  #cleaning .clean-wrap{
    margin:60px auto 30px auto;
    padding:70px 50px 50px 50px;
  }

  #cleaning .clean-wrap .section-ttl{
    top:0px;
  }

  #cleaning .clean-wrap + p{
    font-size:15px;
  }
}

@media screen and (max-width: 1199px){
  #cleaning .clean-wrap{
    margin:60px auto 30px auto;
    padding:60px 30px 40px 30px;
  }

  #cleaning .clean-wrap strong{
    font-size:28px;
    letter-spacing:4px;
    padding:15px 20px 18px 20px;
  }

  #cleaning .clean-wrap strong + p,
  #cleaning .clean-wrap + p{
    margin:15px 0 20px 0 ;
    line-height:24px;
    font-size:14px;
  }

  #cleaning .clean-wrap + p{
    text-align: center;
    font-size:14px;
  }
}

@media screen and (max-width: 1199px){
  #cleaning .clean-wrap{
    margin:20px auto;
    padding:50px 20px 20px 20px;
    width:100%;
    border-radius:0;
  }

  #cleaning .clean-wrap strong{
    font-size:20px;
    letter-spacing:2px;
    padding:13px 15px 15px 15px;
  }

  #cleaning .clean-wrap strong + p,
  #cleaning .clean-wrap + p{
    margin:15px auto 20px auto ;
    line-height:22px;
    font-size:14px;
  }

  #cleaning .clean-wrap strong + p br,
  #cleaning .clean-wrap + p br{
    display:none;
  }

  #cleaning .clean-wrap + p{
    width:90%;
    text-align: justify;
    font-size:14px;
  }
}


#cleaning .service-ttl span{
  color:#87cefa;
  border-bottom:solid 8px #87cefa;
}

@media screen and (max-width: 1199px){
  #cleaning .service-ttl span{
    border-bottom:solid 6px #87cefa;
  }
}

@media screen and (max-width: 743px){
  #cleaning .service-ttl span{
    border-bottom:none;
  }
}

/* カード */
#cleaning .clean-wrap .clean-box{
  width:calc((100% - 20px)/3);
  margin-right:10px;
  background-color:#fff;
  margin-bottom:15px;
  border-radius:10px;
  overflow:hidden;
}

#cleaning .clean-wrap .clean-box:nth-of-type(3n){
  margin-right:0;
}

#cleaning .clean-wrap .clean-box:nth-of-type(4),
#cleaning .clean-wrap .clean-box:nth-of-type(5),
#cleaning .clean-wrap .clean-box:nth-of-type(6){
  margin-bottom:0;
}

#cleaning .clean-box .img-box{
  width:100%;
  height:160px;
  background-color:gray;
}

#cleaning .clean-box .img-box img{
  width:100%;
  height:100%;
  object-fit:cover;
}

#cleaning .clean-box p{
  width:90%;
  padding: 15px 0 20px 0;
  font-size:14px;
  line-height:20px;
}

#cleaning .clean-box p span{
  display:block;
  margin-bottom:10px;
  font-weight:600;
  font-size:17px;
}


#cleaning .clean-box p span i{
  color:#87cefa;
  transform:rotate(45deg);
  font-size:18px;
  margin-right:6px;
}

@media screen and (max-width: 1439px){
  #cleaning .clean-box .img-box{
    width:100%;
    height:130px;
  }

  #cleaning .clean-box p{
    padding: 15px 0 20px 0;
    font-size:13px;
    line-height:18px;
  }

  #cleaning .clean-box p span{
    margin-bottom:5px;
    font-size:15px;
  }

  #cleaning .clean-box p span i{
    font-size:16px;
    margin-right:5px;
  }
}

@media screen and (max-width: 1199px){
  #cleaning .clean-box .img-box{
    width:100%;
    height:120px;
  }

  #cleaning .clean-box p{
    padding: 10px 0 15px 0;
    font-size:12px;
    line-height:16px;
  }

  #cleaning .clean-box p span{
    margin-bottom:3px;
    font-size:14px;
  }

  #cleaning .clean-box p span i{
    font-size:15px;
    margin-right:5px;
  }
}

@media screen and (max-width: 743px){
  #cleaning .clean-wrap .clean-box{
    width:calc((100% - 10px)/2);
    margin-right:10px;
    margin-bottom:15px!important;
  }

  #cleaning .clean-wrap .clean-box:nth-of-type(3n){
    margin-right:10px;
  }

  #cleaning .clean-wrap .clean-box:nth-of-type(2n){
    margin-right:0;
  }

  #cleaning .clean-box .img-box{
    width:100%;
    height:100px;
  }

  #cleaning .clean-box p{
    padding: 10px 0;
    font-size:12px;
    line-height:16px;
    letter-spacing: 0;
  }

  #cleaning .clean-box p span{
    margin-bottom:3px;
    font-size:13px;
  }

  #cleaning .clean-box p span i{
    font-size:14px;
    margin-right:5px;
  }
}

/* リンク */
#cleaning .link-btn{
  color:#fff;
  background-color:#48a9e6!important;
}


/* その他
================================================================*/
#other{
  background-color:#f2efdf;
  text-align: center;
  margin-bottom:250px;
}

#other .section-ttl{
  text-align: center;
  margin-top:-30px;
}

#other .other-wrap{
  background-color:#fff;
  border-radius:20px;
  position:relative;
  margin:60px auto 50px auto;
  padding-bottom:10px;
  max-width: 800px;
}

#other .other-wrap .other-box{
  display:flex;
  flex-wrap:wrap;
	align-items: center;
  width:calc(100% + 30px);
}

#other .other-wrap .other-box:nth-of-type(1){
  position:relative;
  top:-30px;
  left:-30px;
}

#other .other-wrap .other-box:nth-of-type(2){
  margin-top:-50px;
  position:relative;
  bottom:-40px;
  left:0;
}

#other .other-box .img-box{
  width:calc(50% - 40px);
  height:250px;
  background-color:gray;
  border-radius:20px;
  overflow:hidden;
  margin-right:40px;
}

#other .other-box:nth-of-type(2) .img-box{
  margin-right:0;
  margin-left:40px;
}

#other .other-box .img-box img{
  width:100%;
  height:100%;
  object-fit:cover;
}

#other .other-box .other-txt{
  width:50%;
  text-align: left;
}

#other .other-box:nth-of-type(1) .other-txt{
  margin-top:30px;
}

#other .other-box:nth-of-type(2) .other-txt{
  margin-top:-50px;
}

#other .other-box .other-txt .service-ttl{
  text-align: left;
}

#other .other-box .other-txt .service-ttl span{
  margin-right:0;
}

#other .other-box .other-txt p{
  margin-top:20px;
  font-weight:600;
  line-height:28px;
  font-size:15px;
}

#other .other-box:nth-of-type(2) .other-txt{
  order:-1;
  text-align: right;
}

#other .other-box:nth-of-type(2) .other-txt .service-ttl,
#other .other-box:nth-of-type(2) .other-txt p{
  text-align: right;
}

#other .service-ttl span{
  color:#ee82ee;
  border-bottom:solid 8px #ee82ee!important;
}

@media screen and (max-width: 1199px){
  #other .service-ttl span{
    border-bottom:solid 6px #ee82ee!important;
  }
}

/* リンク */
#other .link-btn{
  background-color:#ed71bc!important;
  color:#fff;
}


@media screen and (max-width: 1199px){
  #other{
    margin-bottom:250px;
  }

  #other .section-ttl{
    text-align: center;
    margin-top:-30px;
  }

  #other .other-wrap{
    margin:60px auto 50px auto;
    padding-bottom:10px;
  }

  #other .other-wrap .other-box:nth-of-type(1){
    position:relative;
    top:-30px;
    left:-30px;
  }

  #other .other-wrap .other-box:nth-of-type(2){
    margin-top:-50px;
    position:relative;
    bottom:-40px;
    left:0;
  }

  #other .other-box .img-box{
    width:calc(50% - 40px);
    height:220px;
    border-radius:15px;
    overflow:hidden;
    margin-right:30px;
  }

  #other .other-box:nth-of-type(2) .img-box{
    margin-right:0;
    margin-left:30px;
  }

  #other .other-box:nth-of-type(1) .other-txt{
    margin-top:30px;
  }

  #other .other-box:nth-of-type(2) .other-txt{
    margin-top:-50px;
  }

  #other .service-ttl span {
    border-bottom: solid 5px #45945b;
    font-size: 20px;
    padding-bottom: 10px;
    position: relative;
    top: 10px;
    margin-right:0;
  }

  #other .other-box .other-txt p{
    margin-top:20px;
    font-weight:600;
    line-height:22px;
    font-size:14px;
  }
}

@media screen and (max-width: 743px){
  #other{
    margin-bottom:100px;
  }

  #other .section-ttl{
    text-align: center;
    margin-top:-30px;
  }

  #other .other-wrap{
    margin:60px auto 50px auto;
    padding-bottom:10px;
    width:100%!important;
    border-radius:0;
  }

  #other .other-wrap .other-box:nth-of-type(1){
    position:relative;
    top:-30px;
    left:0px;
  }

  #other .other-wrap .other-box:nth-of-type(2){
    margin-top:-70px;
    position:relative;
    bottom:-40px;
    left:0;
  }

  #other .other-wrap .other-box{
    width:90%;
  }

  #other .other-box .img-box{
    width:140px;
    height:200px;
    border-radius:10px;
    overflow:hidden;
    margin-right:10px;
  }

  #other .other-box:nth-of-type(2) .img-box{
    margin-right:0;
    margin-left:10px;
  }

  #other .other-box .other-txt{
    width:calc(100% - 150px);
  }

  #other .other-box:nth-of-type(1) .other-txt{
    margin-top:30px;
  }

  #other .other-box:nth-of-type(2) .other-txt{
    margin-top:-50px;
  }

  #other .service-ttl span {
    border-bottom: solid 4px #45945b;
    font-size: 16px;
    padding-bottom: 6px;
    position: relative;
    top: 10px;
    margin-right:0;
    letter-spacing: 0.05em;
    display:inline-block;
    width:auto;
  }

  #other .service-ttl span:after{
    display:none;
  }

  #other .other-box .other-txt p{
    margin-top:20px;
    font-weight:500;
    line-height:18px;
    font-size:13px;
    text-align: justify!important;
    letter-spacing:0.05em;
  }

  #other .other-box .other-txt p br{
    display:none;
  }
}
































/**/
