main {
    /* font-family: "Noto Sans JP", sans-serif; */
    color: #333;
    font-size: 16px;
    line-height: 1.8;
    padding: 0px;
}

.marker-underline {
    background: linear-gradient(transparent 70%, #fbbf24 70%);
    display: inline;
    font-weight: 700;
}

.fade-in-up {
    animation: fadeInUp 0.8s ease-out forwards;
    opacity: 0;
    transform: translateY(20px);
}

@keyframes fadeInUp {
    to { opacity: 1; transform: translateY(0); }
}

.delay-100 { animation-delay: 0.1s; }

/* HP再現用のスタイル調整 */
.hp-nav-link {
    position: relative;
    display: inline-block;
    padding-bottom: 2px;
}
.hp-nav-link::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: 0;
    left: 50%;
    background-color: #003366;
    transition: all 0.3s ease;
    transform: translateX(-50%);
}
.hp-nav-link:hover::after {
    width: 100%;
}
