@charset "utf-8";
/* ヘッダータイトル*/
.head-title{
/*    font-size: 0.8em;*/
}

/* Comming soon ここから＠＠＠＠*/
.coming-soon-overlay {
  position: absolute; /* mainをrelativeにする */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.35); /* 半透明の黒背景 */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999; /* 最前面に表示 */
  pointer-events: all; /* 下の要素をクリック不可にする */
}

.coming-soon-text {
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

/* Comming soon ここまで＠＠＠＠*/

/* Comming soon のオーバーレイ上の隙間を出さないため */
main{
/*  position: relative;*/
}
/* Comming soon のオーバーレイ上の隙間を出さないため */


/* Comming soon より上に出すためだけの設定 */
.footer-main {
  z-index: 10001 !important; /* footerを前面に表示 */
}
/* Comming soon より上に出すためだけの設定 */

/* TOP画像 */
.top-img{
  text-align: center;
  margin-top: 20px;
}
.top-img img{
  width: 80%;
  max-width: 400px;
}
/* 四角いボタン風 */
.search-flex{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  margin-top: 20px;
}

.square-button{  
  border-radius: 15px;
  height: 70px;
  width: 30%;
  max-width: 200px;
  border: none;
  box-shadow: 0 0 0 1px #383838;
}
.square-button a {
  display: flex;
  padding-bottom: 5px;
  flex-direction: column; /* アイテムを縦に並べる */
  align-items: center;    /* 水平方向中央揃え */
  justify-content: center; /* 垂直方向中央揃え */
  text-decoration: none;
  color: #000;
  width: 100%;
  height: 100%;
}
.square-button i.bi-search {
  font-size: 2em;
/*  margin-bottom: 5px;*/
}
.square-button span {
  text-align: center;
  font-size: 0.7em;
  font-weight: bold;
}

/* メイン部 */
main{
  margin-bottom: 80px;
}
.section {
  padding-left: 16px;
  width: 70%;
  margin: 0 auto;
}


.section-title {
  font-weight: bold;
  font-size: 0.9em;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 5px;
  padding-right: 16px;
}
.section-title a {
  font-size: 0.8em;
  text-decoration: none;
  color: #007bff;
  font-weight: normal;
}
#records-list {
  display: flex;
  gap: 10px;
  padding-top: 10px;
}
#records-list img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}

/********************************
* カルーセル
**********************************/
#event-group-list-slider,
#event-person-list-slider,
#records-list-slider {
  overflow: visible; /* 途中まで見せたいので必要 */
}

#event-group-list-slider .slick-track,
#event-person-list-slider .slick-track,
#records-list-slider .slick-track{
/*  width: 38% !important;*/
  display: flex;
  flex-wrap: nowrap;  /* スライダーが横幅をはみ出さないように */
/*  max-width: 100%;*/
}
#event-group-list-slider .slick-track .slick-slide,
#event-person-list-slider .slick-track .slick-slide{  
  border: 1px solid #ddd;
  margin: 0px 3px;
/*  width: 100% !important;*/
}

#records-list-slider .slick-track .slick-slide{ 
  margin: 0px 1px; 
}
#event-group-list-slider .slick-list,
#event-person-list .slick-list,
#records-list .slick-list {
  overflow: hidden;
}

.event-slider-content{
  padding:0 !important;
}
.slider {
  width: 100%;
}
.slick-slide img {
  width: 100%;
}

/* コンテンツの幅制限（レスポンシブ対応） */
.event-content,
.records-content {
  max-width: 100%;
  overflow-x: hidden;
  margin-left: 10px;
}


/* 各イベントのカード */
.event-box {
  display: inline-block;
/*  width: 33.33vw !important;*//* ここで「1スライド」の幅を定義 */
/*  max-width: 250px;*/
}

.image-box, .event-box {
  font-size: 1em;
}

.image-box a, .event-box a {
  text-decoration: none;
  color: #000;
}
.event-box img {
  width: 100%;
  height: 45px !important;
  display: block;
}
/* 画像無し */
.event-box a .no-image{
  height: 45px !important;
  display: inline-block;
  text-align: center;
  background-color: #f0f0f0;
  height: auto; /* または固定値 */
  width: 100%;
  box-sizing: border-box;
  font-size: 1.5em;
  color: #555;  
}

/* イベントの枠 */
.event-info {
  font-size: 14px;
  display: flex;
  height: 60px;
}

/* イベントの日付 */
.event-date {
  text-align: center;
  color: #333;
  font-size: 0.8em;
  width: 30%;
  border-right: 1px solid #ddd;
}
/* イベントの詳細 */
.event-description {
  display: inline-block;
  margin-right: 10px;
  padding-left: 2px;
  color:#333;
  width: 70%;
  font-size: 0.7em;
}

/* みんなのプロフィール */
/* 画像あり*/
.records-image {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  object-fit: cover;
}
/* noImage*/
.no-image-circle {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background-color: #C6D0D6;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 25px;
  color: #627382;
}

/* 応募済みマーク */
.applied-mark {
  position: absolute;
  top: 5px;
/*  left: 5px;*/
  margin-left: 4px;
  font-size: 0.7em;
  color: green;
  background-color: lightgreen;
  padding: 2px 5px;
  border-radius: 3px;
}

@media screen and (max-width: 767px) {
  .event-box {
/*    width: 30vw !important;*/
  }
  .section {
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .event-box {
/*    width: 45vw !important;*/
  }
}
@media screen and (min-width: 1025px) {
  .event-box {
/*    width: 45vw !important;*/
  }
}



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