/* トップMV
--------------------------- */
.top-mv{
  position: relative;
  width: 100%;
  height: auto;
  background-color: #004a9f;
  overflow: hidden;
}
.top-mv img{
  width: 100%;
  object-fit: cover;
  object-position: center;
}
.top-mv-text{
  white-space: nowrap;
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.top-mv-text p{
  margin: 0;
  text-align: center;
  letter-spacing: 0.15em;
  font-size: clamp(24px,4.5vw,55px);
  font-weight: bold;
  color: #fff;
  text-shadow:
     3px 3px 3px #004a9f, -3px -3px 3px #004a9f,
    -3px 3px 3px #004a9f,  3px -3px 3px #004a9f,
     3px 0px 3px #004a9f, -3px  0px 3px #004a9f,
     0px 3px 3px #004a9f,  0px -3px 3px #004a9f;
}
@media (max-width: 768px){
  .top-mv img{
    height: 400px;
    vertical-align: bottom;
  }
}

/* MAIN MENU
--------------------------- */
#menu_wrap{
  height: 280px;
}
#menu_inner{
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 767px) {
  #menu_wrap{
    display: block;
    box-sizing: border-box;
    padding: 10px 0;
    width: 100%;
    height: auto;
    background-color: #4198d2;
  }

  ul#menu_inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    position: relative;
    top:0;
    left:0;
    margin: 0;
    padding: 0;
    transform: unset;
    list-style-type:none;
  }
  #menu_inner li{
    display: block;
    margin: 0;
    padding: 10px;
    width: 33%;
  }
  #menu_inner li a{
    display: block;
    margin: 0;
    padding: 0;
  }
  #menu_inner li img{
    vertical-align: top;
    width: 100%;
  }
}

/* 共通
--------------------------- */
@media (min-width: 768px){
  .ContentBody {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

/* 活動内容
--------------------------- */
#pb_activity .CB_ {
  padding: 0 0 20px;
}
#pb_activity .ImageBox_ {
  margin-bottom: 20px;
}
#pb_activity .TextBox_ {
  padding: 0 20px;
}

/* イベント案内、訪問診療
--------------------------- */
#info.ContentArea,
#home_care.ContentArea{
  border-top: none;
  padding: 0;
}
#info .ContentBody,
#home_care .ContentBody{
  padding: 0;
  overflow: hidden;
}
/* PC */
@media (min-width: 768px){
  #info{
    background: linear-gradient(90deg, #4198d2 0%, #4198d2 50%, #eafbff 50%, #eafbff 100%);
  }
  #home_care{
    background: linear-gradient(90deg, #fff 0%, #fff 50%, #4198d2 50%, #4198d2 100%);
  }
  #info .ContentBody,
  #home_care .ContentBody{
    display: flex;
  }
  #home_care .ContentBody{
    flex-direction: row-reverse;
  }
}

/* 見出し領域 */
.flex-inner-lt{
  box-sizing: border-box;
  padding:  100px 0;
  width: 300px;
  background-color: #4198d2;
}
/* SP */
@media (max-width: 768px){
  .flex-inner-lt{
    padding: 20px 0;
    width: 100%;
  }
}

/* 見出し */
#info .HdgStyleE_,
#home_care .HdgStyleE_{
  margin-bottom: 0;
}
#info .HdgStyleE_ h1,
#home_care .HdgStyleE_ h1{
  font-size: clamp(26px,3.6vw,40px);
  white-space: nowrap;
  color: #fff;
}
#info .HdgStyleE_ h1 span,
#home_care .HdgStyleE_ h1 span{
  color: #fff;
}

/* コンテンツ領域 */
.flex-inner-rt{
  box-sizing: border-box;
  padding:  100px 10px 100px 30px;
  width: 800px;
  background-color: #eafbff;
}
#home_care .flex-inner-rt{
  padding:  100px 30px 100px 10px;
  background-color: #fff;
}
/* SP */
@media (max-width: 768px){
  .flex-inner-rt{
    padding: 20px 10px;
    width: 100%;
  }
  #home_care .flex-inner-rt{
    padding: 20px 10px;
  }
}

/* 訪問診療テキスト */
/* PC */
@media (min-width: 768px){
  #home_care .TextBox_ {
    margin: 0 auto;
    width: 600px;
  }
}

/* INFORMATION
--------------------------- */
ul#information_list {
  margin: 0 auto 30px;
  padding: 0;
  width: 740px;
  list-style-type: none;
}
#information_list li {
  clear: both;
  box-sizing: border-box;
  margin-bottom: 10px;
  border-radius: 10px;
  padding: 15px;
  background-color: #fff;
  overflow: hidden;
}
#information_list span {
  display: inline-block;
  padding: 5px 0;
}
#information_list .Date {
  width: 120px;
  font-weight: bold;
}
#information_list .Category{
  width: 120px;
  border-radius: 50vw;
  background-color: #efde85;
  text-align: center;
  font-size: 14px;
  color: #000;
}
#information_list .Title {
  float: right;
  display: block;
  width: 580px;
}
/* -- SMP -- */
@media screen and (max-width: 767px) {
  ul#information_list {
    width: 100%;
  }
  #information_list li {
    padding: 15px 10px;
  }
  #information_list .Category{
    padding: 2px 0;
    width: 110px;
    font-size: 11px;
  }
  #information_list .Title {
    display: block;
    margin-top: 5px;
    width: 100%;
  }
}

