/* 詳しくは... */
.readmore {
display: block;
    clear: both;
    width: 100%;
    text-align: left;
    margin-top: 50px;
    padding: 0;
}

/* スライドショー */
.hero-slider {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: 50vh; 
    overflow: hidden;
    position: relative;
}

.swiper-slide {
    position: relative;
}

.swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.slide-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
    z-index: 10;
    padding: 0 20px;
}



/* イラスト */
.content-section {
    position: relative;
    padding: 80px 0;
    z-index: 1;
}

.illustration-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
}

.illust {
    position: absolute;
}

.item1 { top: 30%; right: 22%; width: 60px; }
.item2 { bottom: 0%; left: 10%; width: 120px; }
.item3 { bottom: 8%; right: 50%; width: 80px; }
.item4 { top: 35%; left: 20%; width: 60px; }
.item5 { top: 45%; left: 80%; width: 80px; }
.item6 { bottom: 0%; right: 20%; width: 120px; }
.item7 { bottom: 0%; right: 10%; width: 180px; }

.item8  { bottom: 10%;  right: 15%; width: 60px; transform: rotate(15deg); }
.item9  { bottom: 25%; left: 35%; width: 50px; transform: rotate(-20deg); }
.item10 { bottom: 10%; left: 10%; width: 100px; transform: rotate(90deg); }
.item11 { top: 25%; right: 40%; width: 55px; transform: rotate(20deg); }
.item12 { top: 35%; left: 75%; width: 120px; transform: rotate(10deg); }
.item13 { bottom: 10%; right: 40%; width: 80px; transform: rotate(20deg); }

/* スマホのイラスト */
@media (max-width: 768px) {
.item1 { top: 25%; right: 18%; width: 30px; }
.item2 { bottom: 5%; left: 5%; width: 70px; }
.item3 { bottom: 14%; right: 50%; width: 45px; }
.item4 { top: 35%; left: 10%; width: 40px; }
.item5 { bottom: 36%; right: 3%; width: 40px; }
.item6 { bottom: 2%; right: 30%; width: 80px; }
.item7 { bottom: 3%; right: 2%; width: 150px; }
	
.item8  { bottom: 5%;  right: 15%; width: 35px; transform: rotate(15deg); }
.item9  { top: 25%; left: 10%; width: 30px; transform: rotate(-20deg); }
.item10 { bottom: 5%; left: 10%; width: 65px; transform: rotate(90deg); }
.item11 { top: 25%; right: 8%; width: 35px; transform: rotate(20deg); }
.item12 { top: 60%; left: 75%; width: 65px; transform: rotate(10deg); }
.item13 { bottom: 5%; right: 40%; width: 50px; transform: rotate(20deg); }
}






/* 活動内容 */
.activity-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}

.activity-card {
    display: block;
	width: 100%;
    text-decoration: none;
    color: inherit;
    text-align: center;
}

.activity-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 12px;
    border: 1px solid var(--main-color);
    margin-bottom: 10px;
}

.activity-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.activity-name {
    font-weight: bold;
    font-size: 0.9rem;
    line-height: 1.4;
    margin: 0;
}



/* スマホ対応 */
@media (max-width: 768px) {
    .activity-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
}