
/*==================================================
ページタイトル部分
===================================*/
.appear{
  background-color: #ffffff;
}
.page-title{
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0px;
  padding: 0px;
}
.page-title p{
  font-size: 40px;
  margin-bottom: 20px;
  margin: 5px;
}
.page-title h1{
  font-size: 12px;
  margin-bottom: 20px;
  margin: 0px;
  padding: 0;
  font-weight: normal;
  text-align: center;
}

@media screen and (max-width: 1024px) {/*--タブレット・モバイル用--*/
  .page-title{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0px;
    padding: 0px;
    margin-top: 10px;
    margin-bottom: 30px;
    padding-top: 10px;
  }
  .page-title p{
    font-size: 25px;
    margin-bottom: 10px;
    margin: 5px;
  }
  .page-title h1{
    font-size: 12px;
    margin-bottom: 20px;
    margin: 0px;
    padding: 0;
    font-weight: normal;
    text-align: center;
    width: 300px;
  }
}
/*==================================================
ページタイトル部分
===================================*/

/*==================================================
カテゴリーボタン部分
===================================*/
.btn-layout{
  width: 100vw;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
  margin-top: 40px;
}
.btn-active{
  background-color: #f5f4f2;
  
}
.btn-design{
  width: 200px;

}
.btn-design p{
  text-align: center;
  font-size: 14px;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 1024px) {/*--タブレット・モバイル用--*/
  .btn-layout{
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    margin-bottom: 10px;
  }
  .btn-active{
    background-color: #efeeea;
  }
  .b-color{
    background-color: #f6f6f6;
  }
  .btn-design{
    width: 80vw;
    margin: 0;
    padding: 0;
    margin-bottom: 5px;
  }
  .btn-design p{
    text-align: start;
    font-size: 14px;
    margin: 0;
    padding: 0;
    padding-left: 15px;
  }
  .bottom-space{
    margin-bottom: 30px;
  }
}
/*==================================================
カテゴリーボタン部分
===================================*/


.hosoku_text{
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 13px;
  color: #8d8d8d;
}
.under_line{
  border-bottom: solid #f2f2f2 2px;
}


/*==================================================
画像一覧　部分
===================================*/
ul.project-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style-type: none;
  padding: 0;
  margin-bottom: 90px;
}

.project-contents h6{
  font-size: 12px;
  margin-top: 12px;
  width: 100%;
  text-align: start;
  font-weight: bold;
  margin-bottom: 0;
}
.project-contents .read-more {
  font-size: 11px;
  text-align: start;
  margin-bottom: 0;
  color: rgb(126, 126, 126); /* 色はお好みで変更してください */
  cursor: pointer;
}

li.project-contents {
  flex: 0 1 calc(33.333% - 60px); /* 3 columns with 30px margin on each side */
  box-sizing: border-box;
  max-width: 354px;
  min-height:  250px;
  margin: 90px 70px 0 70px;
}

li.project-contents div {
  text-align: center;
}

li.project-contents img {
  width: 354px;
  height: 250px;
  object-fit: cover;
  /* 画像クリック制限を解除 */
  pointer-events: auto;
  -webkit-touch-callout: default;
  -webkit-user-select: auto;
  -moz-touch-callout: default;
  -moz-user-select: auto;
  user-select: auto;
}

@media screen and (max-width: 1024px) {/*--タブレット・モバイル用--*/
  ul.project-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    list-style-type: none;
    padding: 0;
    margin-bottom: 60px;
  }
  
  .project-contents h6{
    font-size: 15px;
    margin-top: 16px;
    margin-bottom: 0;
    width: 100%;
    text-align: start;
    margin-left: 16px;
    font-weight: bold;
  }
  .project-contents .read-more {
    font-size: 11px;
    text-align: start;
    margin-left: 16px;
    margin-bottom: 0;
    color: rgb(126, 126, 126); /* 色はお好みで変更してください */
    cursor: pointer;
  }
  
  li.project-contents {
    flex: 0 1 calc(33.333% - 60px); /* 3 columns with 30px margin on each side */
    box-sizing: border-box;
    max-width: none;
    min-height:  none;
    margin: 60px 0 0 0;
  }
  
  li.project-contents div {
    text-align: center;
  }
  
  li.project-contents img {
    width: 100vw;
    height: auto;
    aspect-ratio: 1 / 1; /* 画像のアスペクト比を16:9に固定 */
    object-fit: cover; /* 画像が親要素に収まるように調整 */
    /* 画像クリック制限を解除 */
    pointer-events: auto;
    -webkit-touch-callout: default;
    -webkit-user-select: auto;
    -moz-touch-callout: default;
    -moz-user-select: auto;
    user-select: auto;
  }

}



/* 画像を白くハイライトさせる */
li.project-contents div {
  position: relative;
}

li.project-contents img {
  transition: 0.3s ease-in-out;
}

li.project-contents div:hover img {
  opacity: 0.7;
}

li.project-contents div:hover::after {
  content: "READ MORE +";
  position: absolute;
  top: calc(50% - 14px);
  left: 50%;
  transform: translate(-50%, -50%);
  color: rgb(255, 255, 255);
  font-size: 14px; /* ここで文字のサイズを調整 */
  font-family: Arial, sans-serif; /* ここでフォントを指定 */
  pointer-events: none;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.8); /* ここでドロップシャドウを追加 */
}



/*==================================================
画像の拡大＋テキスト出現のギミック
===================================*/

