@charset "UTF-8";

/*----------------
intro
----------------*/

.subtit_txt_2{
    font-size: 1.6rem;
    font-weight:500;
    margin: 40px auto 16px auto;
    padding-bottom: 16px;
    text-align: center;
    border-bottom: solid 1px #333;
}

.subtit_txt_2_en{
    font-size: 1.6rem;
    font-weight:500;
    text-align: center;
}

@media (max-width: 767px) {

  .subtit_txt_2{
    font-size: 1.1rem;
    margin:16px auto 8px auto;
    padding-bottom: 8px;
  }

  .subtit_txt_2_en{
    font-size: 1.2rem;
}

}

/*----------------
comfortable
----------------*/

.subtit_box_2{
  line-height: 1.6;
  padding-bottom: .8rem;
  border-bottom:1px #222 solid;
  margin-bottom: 1.2rem;
}

.subtit_01{
  font-size: 1.8rem;
  font-weight:500;
}

.subtit_02{
  font-size: 1.2rem;
  font-weight:500;
  margin-bottom: 1.2rem;
}

.confo_box_B{
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  background-color: #f5f5f0;
  margin-bottom: 8rem;
}

.confo_txt_B{
  margin-left: 1.6rem;
  width: 44%; 
  padding: 0 4rem; 
}

.confo_img{
  width: 56%;
  flex-shrink: 0;/*文字量で画像のサイズが変わらないように*/
  object-fit: cover;/*画像が歪まないように*/
}

.confo_ex_txt{
  font-size: 1rem;
  line-height: 1.6;
}

.confo_box_A{
  display: flex;
  align-items: center;
  background-color: #f5f5f0;
  margin-bottom: 8rem;
}

.confo_txt_A{
  margin-right: 1.6rem;
  width: 44%;
  padding: 0 4rem; 
}

@media (max-width: 1280px) {/*タブレットで分岐*/

  .confo_box_A, .confo_box_B{
    margin-bottom: 4rem;
  }

  .subtit_02{
    line-height: 1.6;
  }

  .confo_img{
    width: 52%;
  }

  .confo_txt_A, .confo_txt_B{
    padding: 0 2rem;
    width: 48%;
  }

}

@media (max-width: 767px) {

  .confo_img{
    width: 100%;
  }

  .confo_txt_B{
    width: 100%;
    margin-left: 0;
    padding: 0 2rem;
  }

  .subtit_01{
    font-size: 1.2rem;
  }

  .subtit_box_2{
    padding-bottom: .4rem;
    margin-top: 1rem;
    text-align: center;
    margin-bottom: .8rem;
  }

  .subtit_02{
    font-size: 1rem;
    text-align: center;
    line-height: 1.4;
  }

  .confo_ex_txt{
    font-size: .8rem;
  }

  .confo_box_B{
    flex-direction: column-reverse;
    margin-bottom: 0;
    padding-bottom: 2rem;
  }

  .confo_box_A{
    flex-direction: column-reverse;
    padding-bottom: 2rem;
    margin-bottom: 0;
  }

  .confo_txt_A{
    width: 100%;
    margin-right: 0;
    padding: 0 2rem;
  }

}

/*----------------
contact
----------------*/

ul.contact_btn_2{
  display: flex;
  width: 72%;
  margin: 0 auto;
}

ul.contact_btn_2 li{
  margin-right: 2rem;
}

ul.contact_btn_2 li:last-child{
  margin-right: 0;
}

@media (max-width: 767px) {
  ul.contact_btn_2{
    flex-direction: column;
    width: 100%;
  }

  ul.contact_btn_2 li{
    margin-right: 0;
    margin-bottom: 1rem;
  }

  ul.contact_btn_2 li:last-child{
    margin-bottom: 0;
  }

}

/*----------------
search
----------------*/

.search{
  aspect-ratio: 16 / 9; /* 画像の縦横比を保つ */
  background-image: url(../images/search_bg.jpg); /* 画像パスを指定 */
  background-size: contain; /* 縦横比を保持したまま背景画像の全体が表示 */
  background-position: bottom; /* 下に配置 */
  padding-bottom: 4rem;
  background-repeat: no-repeat;/*画像が繰り返すのを防ぐ*/
}

.search_contents{
  /*width: 1280px;*/
  width: 64%;
  margin: 0 auto;
}

.subtit_search{
  display: block;
  width: 12%;
  text-align: center;
  margin: 0 auto;
  padding: 4rem 0 2rem 0;

}

ul.area_menu{
  display: flex;
  justify-content: space-between;
  text-align: center;
  /*font-size: 20px;*/
  font-size: 1.2rem;
  margin-bottom: 32px;
}

.area_contents{
  /*width: 1160px;*/
  width: 96%;
  margin: 0 auto 32px auto;
  background-color: #fff;
  padding: 40px; 
}

.area_contents_last{
  /*width: 1160px;*/
  width: 96%;
  margin: 0 auto 32px auto;
  background-color: #fff;
  padding: 40px; 
}

.area_name_box{
  /*width: 1160px;*/
  width: 96%;
  margin: 0 auto 24px auto;
}

.area_name{
  color: #fff;
  /*font-size: 20px;*/
  font-size: 1.2rem;
}

.area_img{
  width: 56%;
}

.area_box{
  display: flex;
  justify-content: space-between;
  align-items:center;
}

.area_date{
  width: 40%;
}

.area_catch{
  /*font-size: 20px;*/
  font-size: 1.2rem;
  line-height: 1.6;
  margin-bottom: 32px;
}

.area_link{
  text-align: right;
  margin-right: 5rem;
}

.area_link a{
  /*font-size:18px;*/
  font-size: 1.2rem;
  border-bottom: 1px solid #ccc;
  text-align: right;
  color: #222;
}

/*横浜　ここから*/

.menu_yokohama{
  width: 32%;
}

.menu_yokohama a{
  color: #fff;
  display: block;
  /*width: 100%;
  height: 100%;*/
  background-color: #1b2a4a;
  padding: 16px 0;
}

.yokohama_base{
  background-color:#1b2a4a;
  /*padding: 40px 40px 48px 40px;*/
  padding: 40px 40px 8px 40px;
}

.yokohama_address{
  background-color: #1b2a4a;
  color: #fff;
  /*font-size: 20px;*/
  font-size: 1.2rem;
  padding: 8px;
  display: inline-block;
  margin-bottom: 20px;
}

.yokohama_name{
  color: #1b2a4a;
  /*font-size: 26px;*/
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 16px;
}

/*横浜　ここまで*/

/*湘南　ここから*/
.menu_shonan{
  width: 32%;
}

.menu_shonan a{
  color: #fff;
  display: block;
  background-color: #1e51a4;
  padding: 16px 0;
}

.shonan_base{
  background-color:#1e51a4;
  /*padding: 40px 40px 48px 40px;*/
  padding: 40px 40px 8px 40px;
  margin-top: 32px;
}

.shonan_address{
  background-color: #1e51a4;
  color: #fff;
  /*font-size: 20px;*/
  font-size: 1.2rem;
  padding: 8px;
  display: inline-block;
  margin-bottom: 20px;
}

.shonan_name{
  color: #1e51a4;
  /*font-size: 26px;*/
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 16px;
}

/*湘南　ここまで*/

/*横須賀　ここから*/
.menu_yokosuka{
  width: 32%;
}

.menu_yokosuka a{
  color: #fff;
  display: block;
  background-color: #0d5257;
  padding: 16px 0;
}

.yokosuka_base{
  background-color:#0d5257;
  /*padding: 40px 40px 48px 40px;*/
  padding: 40px 40px 8px 40px;
  margin-top: 32px;
}

.yokosuka_address{
  background-color: #0d5257;
  color: #fff;
  /*font-size: 20px;*/
  font-size: 1.2rem;
  padding: 8px;
  display: inline-block;
  margin-bottom: 20px;
}

.yokosuka_name{
  color: #0d5257;
  /*font-size: 26px;*/
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 16px;
}
/*横須賀　ここまで*/

@media (max-width: 1280px) {/*タブレットで分岐*/
  .subtit_search{
      width: 24%;
  }

  .search_contents{
    width: 88%;
  }

  .area_link{
  margin-right: 0rem;
}

}

@media (max-width: 767px) {
  ul.area_menu{
     flex-direction: column;
  }

  ul.area_menu li{
    margin: 0 auto 16px auto;
    width: 88%;
  }

  ul.area_menu li:last-child{
    margin-bottom: 0;
  }

  .area_contents{
    padding: 16px 16px 24px 16px;
    width: 100%;
    /*margin-bottom: 0;*/
  }

  .area_contents_last{
    padding: 16px 16px 24px 16px;
    width: 100%;
    margin-bottom: 0;
  }

  .subtit_search{
    padding: 1.6rem 0 1rem 0;
    width: 32%;
  }

  .search_contents{
    width: 100%;
  }

  .area_box{
    flex-direction: column;
  }

  .menu_yokohama, .menu_shonan, .menu_yokosuka{
  width: 100%;
}

  .yokohama_base, .shonan_base, .yokosuka_base{
    padding: 24px;
}

.area_img {
  width:100%;
}

.area_date{
  width: 100%;
}

.yokohama_name, .shonan_name, .yokosuka_name{
  margin-top: 16px;
  font-size: 1.4rem;
  text-align: center;
}

.yokohama_address, .shonan_address, .yokosuka_address{
  font-size: 1rem;
  display: block;
  text-align: center;
}

.area_catch{
  font-size: 1rem;
  text-align: center;
}

.area_link{
  margin-right: 0rem;
}

.area_link a{
  font-size: 1rem;
}

}

/*----------------
footer
----------------*/

.collection_footer{
  /*width: 1280px;*/
  width: 64%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin:32px auto 48px auto;
  line-height: 1.6;

  align-items: stretch; /* ★コンテンツ間の線　縦の線を親要素の高さに合わせて伸縮させる */
}

.collection_footer_box{
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.6;

  align-items: stretch; /* ★コンテンツ間の線　縦の線を親要素の高さに合わせて伸縮させる */
}

.collection_footer_company{
  display: flex;
  justify-content: center;
  align-items: center;
}

.collection_footer_logo{
  /*display: inline-block;*/
  width: 24%;
  margin-right: 24px;
}

.collection_footer_LINE{
  width: 32%;
}

.collection_footer_name{
  /*font-size: 1.2rem;*/
  font-size: 1.6rem;
  font-weight: 500;
}

@media (max-width: 1280px) {/*タブレットで分岐*/

  .collection_footer_LINE{
    /*width: 64%;*/
    width: 56%;
    margin-left: 24px;
    }

    .collection_footer{
      width: 80%;
    }

  /*.collection_footer_box{
    justify-content: space-between;
    width: 88%;
  }*/

}

@media (max-width: 767px) {

  .collection_footer_box{
    flex-direction: column;
  }

  .collection_footer_company{
    flex-direction: column;
    line-height: 1;
  }

  .collection_footer{
    width: 80%;
  }

  .collection_footer_name{
    display: block;
    font-size: 1.2rem;
    text-align: center;
    margin:8px auto 0 auto;
  }

  .collection_footer_LINE{
    width: 100%;
    margin-top: 32px;
    margin-left: 0;
  }

  .collection_footer{
    margin: 24px auto;
  }

  .collection_footer_txt{
    font-size: .8rem;
  }

}