@charset "utf-8";
/* CSS Document */
/*========================
KEY VISUAL
========================*/
.key_visual {
  position: relative;
  margin-bottom: 50px;
}
.key_visual_inner {
position: absolute;
  left: 50%;
  top:calc(50% + 30px);
  transform: translate(-50%,-50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;width: 100%;}
.key_visual h2{
font-family: 'Noto Serif JP', serif;
font-weight: 900;
color:#A6FF00;
font-size: 3rem;}
.key_visual .logo_02 img {
  margin:0 auto 10px;
}
.key_visual .logo_02 p {
  font-size: 1.4rem;
  font-weight: 700
}
.key_visual_inner p{padding-bottom: 0!important}
.kv_img{max-width: 1920px; width: 100%;margin: 0 auto;}
@media all and (min-width: 768px) {
.key_visual_inner { top:calc(50% + 50px);}
}
@media all and (min-width: 1024px) {
.key_visual_inner { top:calc(50% + 50px);}
}
.head01_sub {margin-bottom: 25px;}
#column{max-width: 1280px;margin: 0 auto; padding: 0 10px;}
.masonry {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

.item {
  background-color: white;
  overflow: hidden;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 15px;
  width: calc(33.333% - 20px);
  margin-bottom: 20px;
}

.item img {
  width: 100%;
  height: auto;
}

.item .text {
  font-size: 18px;
  margin-top: 10px;text-align: left;color:#333;
}


@media (max-width: 768px) {
  .item {
    width: calc(50% - 20px);
  }
}

@media (max-width: 480px) {
  .item {
    width: 100%;
  }
}
.label{display:flex;align-items:center;justify-content:space-between;padding:10px;}
.label time{color:#333;font-size:90%}
.label .column_cat{border:1px solid #333;padding:0.25em;margin:0;color:#333;font-size:80%}