@charset "UTF-8";

.marumidashi { text-align: left; padding: 15px 5px; font-size: 2rem; font-weight: bold; color: #D24146;}
.midashi { padding: 15px 5px; margin: 30px auto;}

/* きらり光る文字 */
.flashtext {
  padding: 3px 0;
  margin: 0;
  font-size: 1.2rem;
  font-weight: bold;
  background-image: linear-gradient(70deg,
      #dc143c 45%,
      /* font color */
      #FFF 50%,
      #dc143c 55%
      /* font color */
    );
  background-size: 500% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  animation: shine 2s infinite;
}

.container{
  width: 100%;
  margin:  0px auto;
  padding: 0px auto;
}

.blank_border_w10 {
  padding: 0 10px;
  text-align: left;
  line-height: 1.6em;
}

.blank_border_w20 {
  padding: 0 20px;
  text-align: left;
  line-height: 1.6em;
}

.blank_border_h10 {
  padding: 10px auto;
  text-align: left;
}

.blank_border_h20 {
  padding: 20px auto;
  text-align: left;
}
















.contents {
  width: 90%;
  max-width: 90%;
  margin: 10% auto;
}

/* 本体 */
.scrollgeneric {
  line-height: 1px;
  font-size: 1px;
  position: absolute;
  top: 0;
  left: 0;
}

/* 縦スクロール範囲 */
.vscrollerbase {
  width: 10px;
  background-color: #fff;
}

/* 縦スクロールバー */
.vscrollerbar {
  width: 10px;
  background-color: #ccc;
  border-radius: 10px;
}

@keyframes shine {
  0% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}


.clearfix {
  float: none;
}

.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}

/* テスト */
#area-search {
  display: none;
}

/* ======================== */
/* 1-2.header   => ヘッダー */

/* 保育園HP */

#hoiku-kashiba {
  padding: 50px auto;
  text-align: center;
}

#hoiku-tawaramoto {
  padding: 50px auto;
  text-align: center;
}

#hoiku-kouryou {
  padding: 50px auto;
  text-align: center;
}

.hoiku_table {
  width: 80%;
  text-align: left;
  line-height: 2.7em;
  margin: 30px auto;
}

.hoiku_table_sp {
  width: 100%;
  margin-top: 30px;
  /* margin-left:30px; */
  margin-bottom: 10px;
  margin-left: auto;
  margin-right: auto;
}

.hoiku_table th,
.hoiku_table td {
  border: 1px solid #ccc;
  padding: 5px 16px;
}

.hoiku_table th {
  font-weight: normal;
  text-align: center;
  background-color: #FCECE8;
}

.hoiku_table_sp th,
.hoiku_table_sp td {
  border: 1px solid #ccc;
  padding: 5px 8px;
}

.hoiku_table_sp th {
  font-weight: normal;
  text-align: center;
  background-color: #FCECE8;
}

h2.midashi {
  position: relative;
  background: #FCECE8;
  box-shadow: 0px 0px 0px 5px #FCECE8;
  border: dashed 2px white;
  padding: 0.2em 0.5em;
  margin: 3em 1.2em;
  font-size: 1.4em;
  color: #660000;
  font-weight: bold;
  text-align: left;
}

h2.midashi::after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #a8d4ff;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}



.tab-group {
  display: flex;
  justify-content: center;
}

.tab {
  flex-grow: 1;
  padding: 5px;
  list-style: none;
  border: solid 1px #CCC;
  text-align: center;
  cursor: pointer;
  background: #FF9933;
  color: #fff;
}

.btn,
li.btn,
button.btn {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 1.2rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

/*その他と主な共通部分は省略*/
li.btn--yellow {
  color: #000;
  background-color: #fff100;
  border-bottom: 5px solid #ccc100;
}

li.btn--yellow:hover {
  margin-top: 3px;
  color: #000;
  background: #fff20a;
  border-bottom: 2px solid #ccc100;
}

/* .hoiku_naiyou h2 {
  position: relative;
  background: #FCECE8;
  box-shadow: 0px 0px 0px 5px #FCECE8;
  border: dashed 2px white;
  padding: 0.2em 0.5em;
  margin: 0.5em;
  font-size: 1.4em;
  color: #660000;
  font-weight: bold;
  text-align: left;
}

.hoiku_naiyou h2::after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #a8d4ff;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
} */

.hoiku_midashi_sub1 {
  color: #6594e0;
  padding-left: 30px;
  margin: 10px 30px;
  font-weight: bold;
  font-size: 1.2em;
  border-bottom: dashed 2px #6594e0;
  text-align: left;
  margin-left: 30px;
  margin-top: 30px;
}


.schedule_table {
  width: inherit;
  table-layout: fixed;
  text-align: left;
  line-height: 1.8em;
  margin-top: 50px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}

.schedule_table th,
.schedule_table td {
  border: 1px solid #ccc;
  padding: 5px 16px;
}

.schedule_table th {
  font-weight: normal;
  text-align: center;
  background-color: #FCECE8;
  width: 140px;
}

.schedule_table td {
  width: calc(100% - 210px);
}

.schedule_table_sp {
  width: 95%;
  margin-top: 50px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
  padding: auto;
}

.schedule_table_sp th,
.schedule_table_sp td {
  border: 1px solid #ccc;
  padding: 5px 8px;
}

.schedule_table_sp th {
  font-weight: normal;
  text-align: center;
  background-color: #FCECE8;
  width: 140px;
}

.schedule_table_sp td {
  width: calc(100% - 60px) !important;
}



.page_title {
  width: 100%;
  margin: -35px 0 0 0;
  height: 35px;
  font-size: 1.2em;
  background-color: #ffe2e8;
  position: relative;
  opacity: 0.8;
  padding: 0.5em 0;
}

.page_title h1>span {
  font-size: 0.8em;
}



.site-content h3 {
  position: relative;
  /*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;
  /*アイコン分のスペース*/
  line-height: 1.4;
  /*行高*/
  color: #ff6a6a;
  /*文字色*/
  border-top: dotted 1px gray;
  border-bottom: dotted 1px gray;
  background: #fffff4;
  margin-top: 50px;
  margin-bottom: 30px;
}

.site-content h3:before {
  font-family: "Font Awesome 5 Free";
  /*忘れずに*/
  content: "\f138";
  /*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;
  /*絶対位置*/
  font-size: 1em;
  /*サイズ*/
  left: 0.25em;
  /*アイコンの位置*/
  top: 0.5em;
  /*アイコンの位置*/
  color: #ff6a6a;
  /*アイコン色*/
}




























/* パンくず */

#breadcrumb {
  width: 1020px;
  height: 100%;
  margin: 0 auto;
  color: #000;
}

#breadcrumb ul {
  display: table;
  height: 100%;
  position: absolute;
  z-index: 1111;
}

#breadcrumb ul li {
  display: table-cell;
  vertical-align: middle;
}

#breadcrumb ul li:before {
  content: "　>\a0";
}

#breadcrumb ul li:first-child:before {
  content: "";
}


@media screen and (max-width: 640px) {

  .hoiku_table {
    width: 100%;
    display: block;
    margin: 0px 3%;
  }

  .hoiku_table .thead {
    width: 100%;
    display: block;
  }

  .hoiku_table tr {
    display: block;
    margin-bottom: 20px;
  }

  .hoiku_table tr:nth-child(1) {
    margin-top: 0px;
  }

  .hoiku_table th {
    width: 100%;
    display: block;
    margin-top: 30px;
  }




  .hoiku_table td {
    width: 100%;
    display: block;
  }

  .schedule_table {
    width: 100%;
    display: block;
    margin: 0px 3%;
  }

  .schedule_table .thead {
    display: block;
  }

  .schedule_table tr {
    display: block;
    margin-bottom: 20px;
  }

  .schedule_table th {
    width: 100%;
    display: block;
    margin-top: 30px;
  }

  .schedule_table th:nth-child(1) {
    margin-top: 0px;
  }

  .schedule_table td {
    width: 100%;
    display: block;
  }

  .tab-group {
    display: block;
  }

  .tab-group .tab {
    width: 80%;
  }

}
















/* ======================== */
/* 1-2.header   => ヘッダー */


/* ========================== */
/* 1-3.contents => コンテンツ */

.slider_box {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 9;
}

.container{
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.slider_button {
  display: none;
}

.top_message_container {
  background-size: cover;
  background-color: #F7F7F5;
  height: auto;
  margin: 0;
  padding: 0;
  width: 100%;
}

#top_slider {
  width: 100%;
  margin: 1px auto;
  z-index: 9;
}

#top_slider li {
  width: 100%;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

#top_slider li img {
  width: 100%;
  display: block;
  margin: 0px auto;
}

.top_message {
  margin: 20px auto;
}


/* Video サムネイル */
.video-thumbnail {
  border-radius: 10px;
  box-shadow: 0 0 8px gray;
  margin: 0px;
}

.video-overtext {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 9;
  background-color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  border-radius: 5px;
  padding: 5px auto;
  width: 85%;
}

.top_news {
  width: 96%;
  float: left;
  position: relative;
}

.top_news dt {
  font-weight: normal;
}

.top_news dd {
  margin: 1px 0 25px 0;
  font-size: 15px;
  color: #D24146;
  /* color: #ff6347; */
  text-decoration: none;
  border-bottom: 1px dotted #ccc;
  text-align: left;
  padding: 0 auto;
}

/* flexcroll */
.top_news .flexcroll {
  width: 96%;
  /* width: 468px; */
  height: auto;
  overflow: auto;
  position: relative;
  background-color: #fff;
  padding: 24px;
  border-radius: 7px;
  margin: 0 auto;
}

.sc-title1 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 4.2rem;
  text-align: center;
  margin: 80px auto 40px auto;
}

.sc-title1::before,
.sc-title1::after {
  content: '';
  width: 8px;
  height: 80px;
  background-color: #de3257;
}

.sc-title1::before {
  margin-right: 30px;
  transform: rotate(-35deg)
}

.sc-title1::after {
  margin-left: 30px;
  transform: rotate(35deg)
}

#feed dt,
#feed dd {
  display: block;
  float: left;
  font-size: 1.6rem;
  line-height: 2.2rem;
  margin: 0;
  padding: 5px;
}

#feed dt {
  width: 120px;
}

#feed dd {
  width: calc(100% - 120px);
}

#feed dd::after {
  float: none;
  clear: left;
}


.new_event {
  color: #fff;
  font-size: 1.6rem;
  line-height: 2.2rem;
  padding: 0 5px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  background: #b3d465;
  float: left;
  margin-right: 10px;
}


ul.cp_list {
  padding: 0.5em 0.5em;
  list-style: none;
  text-align: left;
}

ul.cp_list li {
  position: relative;
  padding: 0.5em 1em 1.5em 2.3em;
  margin-bottom: 5px;
  border-bottom: 1px solid rgba(255, 143, 0, 1);
}

ul.cp_list li:after,
ul.cp_list li:before {
  content: '';
  position: absolute;
  transform: rotate(45deg);
}

ul.cp_list li:before {
  top: 0.7em;
  left: 0.2em;
  width: 12px;
  height: 12px;
  border: 2px solid rgba(255, 143, 0, 1);
}

ul.cp_list li:after {
  top: 0.9em;
  left: 0.7em;
  width: 14px;
  height: 14px;
  background: rgba(255, 143, 0, 0.5);
  transform: rotate(60deg);
}


.box13 {
  padding: 1em;
  margin: 1em;
  color: #FFF;
  font-size: 1.1em;
  font-weight: bold;
  background: #6eb7ff;
  border-bottom: solid 6px #3f87ce;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
  border-radius: 9px;
}

.box13 p {
  margin: 0;
  padding: 0;
}


/* ============================ */
/* 1-6.banner   => バナーリンク */

.banner_area {
  max-width: 100%;
  margin: 5rem 5%;
  overflow-x: hidden;
  text-align: center;
}

.oubo_box {
  width: 100%;
  height: 100%;
  padding: 10px 30px;
  border: 2px solid #D24146;
  border-radius: 10px;
  text-align: left;
}

.oubo_box p {
  text-align: left;
  padding-left: 2rem;
  font-size: 2.4rem;
  line-height: 5em;
}
