@charset "utf-8";
#zone_middle_floor{
  min-height: auto;
}
.s_top_p{
  padding: 0 1em;
  margin-top: 2em;
  text-align: center;
}
@media(max-width:768px){
.s_top_p{
  text-align: left;
}
}
#s_news_area{
  padding-top: 2em;
  border-top: 2px solid #EBF2FA ;
  max-width: 1100px;
  margin: 0 auto;
  margin-top: 2em;
}
#s_news_area h3{
  max-width: 1070px;
  margin: 0 auto;
  margin-bottom: 10px;
  padding: 0 10px;
  font-weight: 400;
  font-size:clamp(1.375rem, 1.221rem + 0.77vw, 1.75rem) ;
}
/*新着動画の一覧*/
#s_news_area ul {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
/*新着動画１件分*/
#s_news_area ul li {
  background: #fff;
  transition: .4s;
}
/* #s_news_area ul li:hover {
  background: #F3F3F3;
} */
/*新着動画*/
#s_news_area ul li {
  padding: 1em;
  display: block;
  font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
  line-height: 1.6;
  text-decoration: none;
  color: #333 !important;
  position: relative;
}
#s_news_area ul li:hover{
  opacity: 1;
}
#s_news_area ul li p{
  font-weight: 500;
  margin-top: 5px;
  margin-bottom: 3px;
    overflow: hidden;
    max-height: 4.4rem;
    -webkit-line-clamp: 2;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
}
/* 視聴期間終了の時 */
#s_news_area .post_preview{
  position: relative;
}
#s_news_area .post_preview > span {
  display: none;
}
#s_news_area .post_preview.not_show > span {
  display: inline-block;
  margin: auto;
  border-radius: 20px;
  background-color: #ccc;
  color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50% , -50%);
  z-index: 1;
  line-height: 1.4;
  width: max-content;
  padding: 3px 14px;
  font-size: clamp(0.75rem, 0.699rem + 0.26vw, 0.875rem);
}
#s_news_area .post_preview.not_show img {
  opacity: 0.5;
  display: block;
}
/*タグと日付をタテに*/
#s_news_area ul li > div {
  font-size: .9em;
  display: flex;
  flex-direction: column;
}
#s_news_area ul li img {
  border-radius: 4px;
  border: 1px solid #C1CDD8;
  object-fit: contain;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
/*タグと日付をblockに*/
#s_news_area ul li div span.date {
  display: block;
}
/*タグの設定*/
#s_news_area ul li div span.tag {
  font-size: .85em;
  padding: 0 .5em;
  border-radius: 4px;
  margin-right: 5px;
  display: inline-block;
  font-weight: 500;
}
/*タグ　シリーズ名*/
#s_news_area ul li div span.tag.tag_series{
  color: #725AC3;
  background: #efedf9;
  border: 1px solid #efedf9;
  -webkit-line-clamp: 1;
  display: box;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  white-space: normal;
  width: fit-content;
  margin-right: 0;
  margin-bottom: 3px;
}
/*タグ 分類１*/
#s_news_area ul li div span.tag.c_1{
  background-color: #0863C6;
  border: 1px solid #0863C6;
  color: #fff;
}
/*タグ 分類２*/
#s_news_area ul li div span.tag.c_2{
  background-color: #fff;
  border: 1px solid #004EA2;
  color: #004EA2;
}
@media (max-width: 1024px) {
  #s_news_area ul {
    max-width: 100% !important;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  #s_news_area ul li p{
    max-height: 5rem;
    -webkit-line-clamp: 3;
  }
}
#s_news_area ul li:hover{
  opacity: 1;
}
  /*ボタンエリア*/
.l_overview_wrap {
  position: relative;
  z-index: 1;
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  padding-top: 4em;
  justify-content: center;
}
.l_overview {
  max-width: 1060px;
  width: 50%;
  margin: 0 auto;
  text-align: center;
}
.l_overview p {
  text-align: center;
  margin-bottom: 0;
}
.l_overview a {
  /*ボタンの形状*/
  display: inline-block;
  color: #fff !important;
  padding: 12px 30px;
  font-size:clamp(1.125rem, 1.074rem + 0.26vw, 1.25rem);
  font-weight: 600;
  border-radius: 100px;
  text-decoration: none;
  min-width: 320px;
  max-width: max-content;
  width: 100%;
	margin-top: 1em;
  margin-bottom: 2em;
  height: auto;
  line-height: 1.4;
  /*背景の色と形状*/ 
  background: #004EA2;
  /*アニメーションの指定*/
  transition: all 0.3s ease-out;
}
/*hoverした際の、背景の場所とテキスト色の変更*/
.l_overview a:hover {
  color: #fff;
}

@media (max-width: 1100px) {
	.l_overview {
		padding: 0 15px;
  }
  .l_overview:first-of-type{
    order: 1;
  }
  .l_overview:nth-of-type(2){
    order: 0;
  }
}
@media (max-width: 768px){
	.l_overview {
    width: 100%;
  }
  .l_overview a {
    min-width: auto;
    width: 90%;
    max-width: 350px;
  }
}
/*==================================================
スライダーのためのcss
===================================*/
.slider_wrap{
  margin: 0 auto;
  margin-top:0.5em;
  margin-bottom: 1em;
  border-radius: 20px;
  width: 98%;
  height: 100vh; /*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
  max-height: 450px;
}
#slider {
  position: relative;
  z-index: -1;
  top: 0;
  margin: 0 auto;
  margin-top:0.5em;
  margin-bottom: 1em;
  border-radius: 20px;
  width: 100%;
  height: 100vh ; /*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
  max-height: 450px;
}
@media (max-width: 768px) {
  .slider_wrap{
    width: 95%;
  }
  .slider_wrap,
  #slider {
    height: 50vh!important;
  }
}

/* top_info (一時的なお知らせ) */
.top_info_wrap{
  max-width: 90%;
  box-sizing: border-box;
  margin: 0 auto;
  margin-top: 2em;
}
.top_info_wrap p{
  margin-bottom: 0;
  padding: 0 10px;
}
.top_info_box{
  border: 1px solid #004EA2;
  border-radius: 4px;
}
.top_info_box ul{
  padding: 2em;
}
.top_info_box ul li:not(:last-child){
  margin-bottom: 1em;
}
.top_info_box ul li a{
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 10px 1.5em;
  background-color: #ebf2fa;
  color: #0863C6;
  text-decoration: none;
  border-radius: 5px;
  font-weight: 600;
}
.top_info_box ul li a:hover{
  color: #0863C6;
}
/*お知らせ　misc/news.shtml読み込み内容*/
dl.dl_news {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

dl.dl_news>div {
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 5px 5px 6px rgba(0, 0, 0, 0.1);
  display: flex;
  margin-bottom: 1em;
  padding: 1em;
  gap: 10px;
}

dl.dl_news dd,
dl.dl_news dt {
  padding-left: .5em;
}

.date {
  font-size: .9em;
  color: #9f9f9f;
}

.tag_oshirase {
  font-size: .8em;
  color: #146DCE;
}

.tag_new {
  font-size: .8em;
  color: #F19C47;
}

.tag_event {
  font-size: .8em;
  color: #D12339;
}

@media (max-width : 768px) {
  dl.dl_news>div {
    display: block;
  }
}