@charset "utf-8";

/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
   * メイン
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
/* -------------------------------------------------------------------------------------------------
   * セクショニング
/* ---------------------------------------------------------------------------------------------- */

#main {}

#main-contents {}

#main-contents div.body {
  max-width: 1080px;
  padding:0 20px;
  margin: 0 auto;
  overflow: hidden;
}

#main-contents .column ~ .column {
  margin-top: 40px;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:1100px) {

 #main-contents div.body {
   max-width: 100%;
   padding:0 20px;
   margin: 0 auto;
   overflow: hidden;
   }
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {

#main-contents > .section {
  padding-top: 30px;
  padding-bottom: 30px;
}

#main-contents div.body {
  max-width: 100%;
  padding:0 20px;
  margin: 0 auto;
  overflow: hidden;
}

#main-contents .column ~ .column {
  margin-top: 20px;
}

}

/* ****************************************************************************************************
   * ビジュアル
**************************************************************************************************** */
/* ----------------------------------------------------------------------------------------------------
   * ボディ
/* ------------------------------------------------------------------------------------------------- */

body.page-nanami
.visual {
  background: url("../../_images/service/nanami/visual.png") no-repeat;
  background-size: cover;
  background-position: bottom;
}
body.page-hacchi
.visual {
  background: url("../../_images/service/hacchi/visual.png") no-repeat;
  background-size: cover;
  background-position: bottom;
}
body.page-hacchinext
.visual {
  background: url("../../_images/service/hacchinext/visual.png") no-repeat;
  background-size: cover;
  background-position: bottom;
}
body.page-homecare
.visual {
  background: url("../../_images/service/homecare/visual.png") no-repeat;
  background-size: cover;
  background-position: bottom;
}
body.page-visitingcare
.visual {
  background: url("../../_images/service/visitingcare/visual.png") no-repeat;
  background-size: cover;
  background-position: bottom;
}

/* ****************************************************************************************************
   * サービス
**************************************************************************************************** */
/* ----------------------------------------------------------------------------------------------------
   * 共通
/* ------------------------------------------------------------------------------------------------- */

.service {
  position: relative;
  padding-top: 120px;
  padding-bottom: 150px;
}

/* ----------------------------------------------------------------------------------------------------
   * タイトル
/* ------------------------------------------------------------------------------------------------- */

.service .title-1 {
  color: var(--c-orange);
  font-size: 3.4rem;
  font-family: "Kiwi Maru", serif;
  font-weight: 400;
  font-style: normal;
  text-align: center;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {
  /*ブラウザの幅が736px以下の時*/
  .service .title-1 {
    color: var(--c-orange);
    font-size: 2.4rem;
    font-family: "Kiwi Maru", serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1.4;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * リード文
/* ------------------------------------------------------------------------------------------------- */

#lead {}

#lead .layout-2 {
  align-items: center;
}

#lead .layout-2 .title-1 {
  color: var(--c-pink);
  text-align: left;
} 
.page-hacchi #lead .layout-2 .title-1,
.page-hacchinext #lead .layout-2 .title-1{
  color: var(--c-orange);
  text-align: left;
} 
#lead .layout-2 .icon {
  width: 25%;
  text-align: center;
}

#lead .layout-2 .detail {
  width: 75%;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:960px) {
  /*ブラウザの幅が736px以下の時*/
  #lead .layout-2 .title-1 {
    text-align: center;
  } 
  #lead .layout-2 .icon {
    width: 100%;
  }
  #lead .layout-2 .detail {
    width: 100%;
    margin-top: 1em;
  }
}


/* ----------------------------------------------------------------------------------------------------
   * 内容
/* ------------------------------------------------------------------------------------------------- */

#service {
  position: relative;
  background: #f8f2eb;
  padding-top: 70px;
  padding-bottom: 120px;
}
.service .title-area {
  text-align: center;
}
.service .title-area .title {}



.service .item-list {
  margin-top: 70px;
}

.service .item ~ .item {
  margin-top: 90px;
}

.service .item.layout-2 {
  justify-content: flex-end;
}
.service .item.layout-2.row {
  flex-direction: row-reverse;
}

.service .item.layout-2 .content {
  max-width: 300px;
}
.service .item.layout-2 .content .title-1 {
  color: var(--c-pink);
  font-size: 3.4rem;
  border-bottom: 2px solid var(--c-pink);
  line-height: 1.4;
  text-align: left;
  padding-bottom: 0.5em;
}
.page-hacchi .service .item.layout-2 .content .title-1,
.page-hacchinext .service .item.layout-2 .content .title-1 {
  color: var(--c-orange);
  border-bottom: 2px solid var(--c-orange);
}
.page-hacchinext .service .item.layout-2 .content .title-1 {
  line-height: 1.0;
}

.service .item.layout-2.row .content .title-1 {
  padding-left: 30px;
}
.service .item.layout-2 .content .text {
  max-width: 270px;
  margin-right: 30px;
}
.service .item.layout-2.row .content .text {
  max-width: 270px;
  margin-right: 0;
  margin-left: 30px;
}

.service .item.layout-2 .images {
  width: 71%;
  display: flex;
}
.service .item.layout-2 .images > * {
  width: 50%;
}
.service .item.layout-2 .images img {
  display: block;
}
.service .item.layout-2 .images img ~ img {}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:1100px) {
  /*ブラウザの幅が736px以下の時*/
  .service .title-area {
    text-align: center;
  }
  .service .title-area .title img {
    width: 177px;
  }
  
  .service .item-list {
    margin-top: 40px;
  }
  .service .item ~ .item {
    margin-top: 40px;
  }
  .service .item.layout-2 {
    justify-content: space-between;
  }
  
  .service .item.layout-2 .content {
    max-width: 100%;
    width: 100%;
  }
  .service .item.layout-2 .content .title-1 {
    font-size: 2.4rem;
  }
  .service .item.layout-2.row .content .title-1 {
    padding-left: 0;
  }
  .service .item.layout-2 .content .text {
    max-width: 100%;
    margin-right: 0;
  }
  .service .item.layout-2.row .content .text {
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
  
  .service .item.layout-2 .images {
    width: 100%;
    display: flex;
    margin-top: 1em;
  }
}


/* ----------------------------------------------------------------------------------------------------
   * 充実の設備
/* ------------------------------------------------------------------------------------------------- */

#facility {
  position: relative;
  padding-top: 80px;
  padding-bottom: 120px;
}

#facility ul {
  margin-top: 80px;
}
#facility ul ~ ul {
  margin-top: 55px;
}

#facility ul.list-01 {
  justify-content: flex-start;
}
.page-hacchinext
#facility ul.list-01 {
  justify-content: center;
}
#facility ul.list-02 {
  justify-content: flex-end;
}

#facility ul li ~ li {
  margin-left: 50px;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:1100px) {
  /*ブラウザの幅が736px以下の時*/
  #facility .title img {
    width: 250px;
  }
  
  #facility ul {
    margin-top: 40px;
  }
  #facility ul ~ ul {
    margin-top: 30px;
  }
  #facility ul li ~ li {
    margin-left: 50px;
    margin-top: 30px;
  } 
}
/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:960px) {
  /*ブラウザの幅が736px以下の時*/
  
  #facility ul {
    display: flex;
    margin-top: 40px;
  }
  #facility ul ~ ul {
    margin-top: 30px;
  }
  #facility ul > * {
    width: 48%;
  }
  #facility ul.list-01,
  #facility ul.list-02 {
    justify-content: space-between;
  }
  #facility ul li ~ li {
    margin-left: 0;
    margin-top: 0;
  } 
}


/* ----------------------------------------------------------------------------------------------------
   * 1日の流れ
/* ------------------------------------------------------------------------------------------------- */

#flow {
  position: relative;
  background: #f8f2eb;
  padding-top: 70px;
  padding-bottom: 100px;
}

#flow ul {
  margin-top: 50px;
  justify-content: flex-start;
}
#flow ul:nth-child(n+4) {
  margin-top: 30px;
}

#flow ul li {
  padding: 0;
}
#flow ul li ~ li {
  margin-left: 50px;
}
#flow ul li:nth-child(3n+1) {
  margin-left: 0;
}


#flow ul li:nth-child(1) {}
#flow ul li:nth-child(2) {
  margin-top: 30px;
}
#flow ul li:nth-child(3) {
  margin-top: 60px;
}
#flow ul li:nth-child(4) {
  margin-top: 30px;
}

#flow ul li:nth-child(5) {
  margin-top: 60px;
}
#flow ul li:nth-child(6) {
  margin-top: 90px;
}


#flow ul.list-02 {}
#flow ul.list-02 li {
  margin: 0;
}
#flow ul.list-02 li ~ li {
  margin-top: 30px;
}


#flow ul li .caption {}
#flow ul li .caption span {
  font-size: 2.6rem;
  font-family: "Kiwi Maru", serif;
  color: var(--c-green);
  display: block;
}
.page-hacchinext
#flow ul li .caption span {
  line-height: 1.4;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:1100px) {
  /*ブラウザの幅が736px以下の時*/
  #flow .title-area .title img {
    width: 198px;
  }
  #flow ul li ~ li {
    margin-left: 40px;
  }
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:960px) {
  /*ブラウザの幅が736px以下の時*/
  #flow ul {
    margin-top: 20px;
    justify-content: flex-start;
  }
  #flow ul:nth-child(n+4) {
    margin-top: 30px;
  }
  
  #flow .layout-flex-3 > * {
    width: 100%;
  }
  #flow ul li .images img {
    width: 100%;
  }
  #flow ul li ~ li {
    margin-left: 0;
    margin-top: 30px;
  }
  
  #flow ul li:nth-child(1) {}
  #flow ul li:nth-child(2) {
    margin-top: 30px;
  }
  #flow ul li:nth-child(3) {
    margin-top: 30px;
  }
  #flow ul li:nth-child(4) {
    margin-top: 30px;
  }
  #flow ul li:nth-child(5) {
    margin-top: 30px;
  }
  #flow ul li:nth-child(6) {
    margin-top: 30px;
  }
  
  #flow ul li .caption span {
    font-size: 2.0rem;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * ご利用料金
/* ------------------------------------------------------------------------------------------------- */

#price {
  position: relative;
  padding-bottom: 120px;
}

.page-visitingcare
#price .layout-flex-2 {
  align-items: flex-start;
  margin-top: 80px;
}
.page-visitingcare
#price .layout-flex-2 > * {
  margin: 0;
}


#price section {}

#price .col-1 {
  margin-top: 80px;
}
#price .col-2 {
  margin-top: 60px;
}

#price .title-1 {
  text-align: left;
  font-weight: 600;
  color: var(--c-pink);
}
.page-hacchi #price .title-1,
.page-hacchinext #price .title-1 {
  color: var(--c-orange);
}

#price .list.column {
  margin-top: 1em;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {
  /*ブラウザの幅が736px以下の時*/
  .page-visitingcare
  #price .layout-flex-2 {
    align-items: flex-start;
    margin-top: 40px;
  }
  #price .title-area .title img {
    width: 198px;
  }
  #price .col-1 {
    margin-top: 40px;
  }
  #price .col-2 {
    margin-top: 40px;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * テーブル
/* ------------------------------------------------------------------------------------------------- */

#price table.data-1 {
  font-size: 2.2rem;
  font-weight: bold;
}

#price table.data-1 th[scope="row"] {
  background: #f5a6b3;
  color: #fff;
  text-align: center;
  padding: 0.2em 1em;
}
.page-hacchi #price table.data-1 th[scope="row"],
.page-hacchinext #price table.data-1 th[scope="row"] {
  background: #f6b757;
}
#price table.data-1 th[scope="col"] {
  background: #fce3e7;
  text-align: center;
  padding: 0.2em 1em;
}
.page-hacchi #price table.data-1 th[scope="col"],
.page-hacchinext #price table.data-1 th[scope="col"] {
  background: #fef8dc;
}
.page-visitingcare #price table.data-1 th[scope="col"] {
  background: #dcf0b8;
}

#price table.data-1 th.title {
  background: var(--c-pink);
  color: #fff;
  text-align: left;
  padding: 0.2em 1em;
}
.page-hacchi #price table.data-1 th.title,
.page-hacchinext #price table.data-1 th.title {
  background: var(--c-orange);
}
.page-visitingcare
#price table.data-1 th.title {
  background: #8ed01d;
  text-align: center;
}

#price table.data-1 td {
  text-align: center;
  padding: 0.2em 1em;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {
  /*ブラウザの幅が736px以下の時*/
  #price table.data-1 {
    font-size: 1.4rem;
    font-weight: bold;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * リスト
/* ------------------------------------------------------------------------------------------------- */

#price ul.style {
  margin-top: 60px;
}
#price ul.style li {
  position: relative;
  padding-left: 1.55em;
}
#price ul.style li::before {
  content: "※";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 1px;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {
  /*ブラウザの幅が736px以下の時*/
  #price ul.style {
    margin-top: 30px;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * ご利用者様の声
/* ------------------------------------------------------------------------------------------------- */

#voice {
  position: relative;
  background: #fef9dc;
  padding-top: 90px;
  padding-bottom: 120px;
  margin-bottom: 100px;
}
.page-homecare
#voice {
  margin-bottom: 0;
}
.page-hacchi #voice,
.page-hacchinext #voice {
  background: #fcecec;
}

#voice .layout-flex-2 {
  margin-top: 80px;
}

#voice .layout-flex-2 > * {
  width: 47%;
}
#voice .layout-flex-2 > :nth-child(n+3) {
  margin-top: 60px;
}
#voice .layout-flex-2 li {
  background: #fff;
  border-radius: 20px;
  padding: 50px;
}

#voice .layout-flex-2 li .title {
  color: #f29200;
  font-size: 3.4rem;
  font-family: "Kiwi Maru", serif;
  border-bottom: 2px solid #f29200;
}
.page-hacchi #voice .layout-flex-2 li .title,
.page-hacchinext #voice .layout-flex-2 li .title {
  color: var(--c-pink);
  border-bottom: 2px solid var(--c-pink);
}
.page-homecare #voice .layout-flex-2 li .title {
  color: #8ed01d;
  border-bottom: 2px solid #8ed01d;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {
  /*ブラウザの幅が736px以下の時*/
  #voice {
    margin-bottom: 50px;
  }
  #voice .title-area .title img {
    width: 250px;
  }
  #voice .layout-flex-2 {
    margin-top: 40px;
  }
  #voice .layout-flex-2 > * {
    width: 100%;
  }
  #voice .layout-flex-2 > * ~ * {
    margin-top: 20px;
  }
  #voice .layout-flex-2 > :nth-child(n+3) {
    margin-top: 20px;
  }
  #voice .layout-flex-2 li {
    padding: 20px;
  }
  
  #voice .layout-flex-2 li .title {
    font-size: 2.4rem;
  }
}

.page-visitingcare
#voice {
  padding-bottom: 100px;
  margin-bottom: 0;
}
#voice .voice-list {
  margin-top: 80px;
}
#voice .voice-list li {
  background: #fff;
  border-radius: 20px;
  padding: 50px;
}
#voice .voice-list li ~ li {
  margin-top: 50px;
}
#voice .voice-list li .title {
  color: #f29200;
  font-size: 3.4rem;
  font-family: "Kiwi Maru", serif;
  border-bottom: 2px solid #f29200;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {
  /*ブラウザの幅が736px以下の時*/
  .page-visitingcare
  #voice {
    padding-bottom: 50px;
    margin-bottom: 0;
  }
  #voice .voice-list {
    margin-top: 40px;
  }
  #voice .voice-list li {
    padding: 20px;
  }
  #voice .voice-list li ~ li {
    margin-top: 20px;
  }
  #voice .voice-list li .title {
    font-size: 2.4rem;
  }
}

/* ****************************************************************************************************
   * 居宅介護支援事業
**************************************************************************************************** */
/* ----------------------------------------------------------------------------------------------------
   * リード文
/* ------------------------------------------------------------------------------------------------- */

#lead {}

#lead .icon.layout-flex-2 {
  justify-content: center;
  align-items: baseline;
  margin-top: 40px;
}
#lead .icon.layout-flex-2 > * {
  width: auto;
}
#lead .icon.layout-flex-2 img:nth-child(1) {
  width: 217px;
}
#lead .icon.layout-flex-2 img:nth-child(2) {
  width: 215px;
}
#lead .icon.layout-flex-2 img {
  margin: 0 2em;
  display: block;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:960px) {
  /*ブラウザの幅が736px以下の時*/
  #lead .icon.layout-flex-2 {
    margin-top: 20px;
  }
  #lead .icon.layout-flex-2 img:nth-child(1) {
    width: 108px;
  }
  #lead .icon.layout-flex-2 img:nth-child(2) {
    width: 107px;
  }
  #lead .icon.layout-flex-2 img {
    margin: 0 1em;
    display: block;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * サービス
/* ------------------------------------------------------------------------------------------------- */

.page-homecare .service .title-1,
.page-visitingcare .service .title-1 {
  text-align: left;
  color: var(--c-pink);
}
#service .layout-flex-3 {
  margin-top: 80px;
}
#service .layout-flex-3 li {
  background: #fff;
  border-radius: 20px;
  padding: 30px;
}
#service .layout-flex-3 li .title {
  text-align: center;
  color: var(--c-orange);
  font-size: 3.4rem;
  font-family: "Kiwi Maru", serif;
  line-height: 1.4;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:960px) {
  /*ブラウザの幅が736px以下の時*/
  #service .layout-flex-3 {
    margin-top: 40px;
  }
  #service .layout-flex-3 > * {
    width: 100%;
  }
  #service .layout-flex-3 li ~ li {
    margin-top: 30px;
  }
  #service .layout-flex-3 li {
    padding: 20px;
  }
  #service .layout-flex-3 li .title {
    font-size: 2.4rem;
    line-height: 1.4;
  }
}

/**訪問介護事業**/
#service .layout-flex-2 {
  margin-top: 80px;
}
#service .layout-flex-2 li {
  background: #fff;
  border-radius: 20px;
  padding: 30px;
}
#service .layout-flex-2 li .title {
  text-align: center;
  color: var(--c-orange);
  font-size: 3.4rem;
  font-family: "Kiwi Maru", serif;
  line-height: 1.4;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:960px) {
  /*ブラウザの幅が736px以下の時*/
  #service .layout-flex-2 {
    margin-top: 40px;
  }
  #service .layout-flex-2 > * {
    width: 100%;
  }
  #service .layout-flex-2 li ~ li {
    margin-top: 30px;
  }
  #service .layout-flex-2 li {
    padding: 20px;
  }
  #service .layout-flex-2 li .title {
    font-size: 2.4rem;
    line-height: 1.4;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * 画像ギャラリー
/* ------------------------------------------------------------------------------------------------- */

#service .gallery {
  max-width: 800px;
  margin: 70px auto 0;
}
#service .gallery .images.layout-2 {
  justify-content: flex-start;
}
#service .gallery .images ~ .images {
  margin-top: 20px;
}
#service .gallery .images.layout-2 img ~ img {
  margin-left: 20px;
}


#service .gallery .images:nth-child(1) img:nth-child(1) {
  width: 61%;
}
#service .gallery .images:nth-child(1) img:nth-child(2) {
  width: 36%;
}
#service .gallery .images:nth-child(2) img:nth-child(1) {
  width: 36%;
}
#service .gallery .images:nth-child(2) img:nth-child(2) {
  width: 61%;
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:800px) {
  /*ブラウザの幅が736px以下の時*/
  #service .gallery .images ~ .images {
    margin-top: 10px;
  }
  #service .gallery .images.layout-2 img ~ img {
    margin-left: 10px;
  }
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:736px) {
  /*ブラウザの幅が736px以下の時*/
  #service .gallery .images.layout-2 img ~ img {
    margin-left: 0;
  }
}

/* ----------------------------------------------------------------------------------------------------
   * 介護サービスご利用の流れ
/* ------------------------------------------------------------------------------------------------- */

#bnr {
  position: relative;
  padding-top: 100px;
  padding-bottom: 100px;
}

#bnr .images a:hover {
  opacity: 0.7;
}
#bnr .images {
  margin-bottom: 100px;
}

#bnr .box {
  border-radius: 20px;
  background: #f07e91;
  padding: 30px;
  text-align: center;
  max-width: 530px;
  margin: 0 auto;
}
#bnr .box .title {
  font-size: 3.0rem;
  font-family: "Kiwi Maru", serif;
  color: #fef8dc;
  line-height: 1.4;
}
#bnr .box .text {
  font-family: "Kiwi Maru", serif;
  color: #fef8dc;
}

#bnr .box .link-btn {
  margin-top: 20px;
}
#bnr .box .link-btn .btn {
  background: #fef8dc;
  color: var(--c-pink);
}

/* :::::::: ブレイクポイント :::::::: */

@media screen and (max-width:960px) {
  /*ブラウザの幅が736px以下の時*/
  #bnr .images {
    margin-bottom: 20px;
  }
  #bnr .box {
    padding: 20px;
  }
  #bnr .box .title {
    font-size: 2.2rem;
    line-height: 1.4;
  }
}