@charset "utf-8";


.event section {
    margin: 55px 0;
}
.event section > *:not(h1):not(h2) {
    padding-left: 10px;
}
.event h1 {
    position: relative; 
    margin-bottom: 40px;
    padding: 20px 0 10px;
    font-size: clamp(1.3rem, 5vw, 1.8rem);
    font-weight: 500;
    text-align: center;
}
.event h1::after {
    content: ""; 
    position: absolute; 
    bottom: 0; 
    left: 50%; 
    transform: translateX(-50%);
    width: 70px;
    height: 2px; 
    background-color: rgba(var(--color01), 1);
}
.event h2 {
    margin: 20px 0 10px;
    padding-bottom: 8px;
    border-bottom: 2px solid #dddddd;
    font-size: clamp(1.15rem, 4vw, 1.5rem);
    font-weight: 500;
    letter-spacing: 0.05em;
}
.event h3 {
    padding-left: 20px;
    background: url(img/icon.png) left 30% no-repeat;
    background-size: 16px 16px;
    font-size: clamp(1.05rem, 3.5vw, 1.2rem);
    font-weight: 500;
    line-height: 1.4;
}
.event p { 
    font-size: 0.95rem;
    line-height: 1.8;
}
.event h1 + p {
    padding-left: 10px;
}

.event strong {
    font-weight: bold;
}
.event .underline {
    text-decoration: underline double #333333;
    text-underline-offset: 3px;
}
.event ul {
    margin: 7px 0 15px 10px;
}
.event ul li {
    position: relative;
    margin-bottom: 15px;
    font-size: 0.95rem;
    line-height: 1.4;
}
.event ul li::before {
    content: "・";
    position: absolute;
    left: -0.8em;
    top: -0.25em;
    font-size: 1.5rem;
}
.event dl {
    margin-left: 0;
}
.event .shinsei_item {
    margin-bottom: 30px; 
}
.event dt {
    flex-shrink: 0;
    width: 6.5em;
    margin-bottom: 5px;
    font-size: 1rem;
    font-weight: 500;
    text-align-last: justify;
}
.event dd {
    padding-left: 15px;
    font-size: 0.95rem;
    line-height: 1.4;
}
.event dd ul {
    margin: 0;
}
.event dd ul > li {
    padding-left: 1em; 
}
.event dd ul > li::before {
    left: -0.3em;           
    top: -0.3em;
}
.event .contact_info {
    line-height: 1.3;
}
.event .contact_sub {
    margin-top: 20px; 
    line-height: 1.3;
}
.event .sub_box {
    margin: 35px 0 45px;
}
.event .dl_links {
    display: flex;
    flex-wrap: wrap;
    margin: 20px 0 20px 30px;
}
.event .shinsei_item .dl_links {
    margin: 10px 0 10px 25px;
}
.event .url_box {
    margin: 20px;
}
.event .contact_sub .url_box {
    margin: 7px 0 10px;
}
.event .dl_links span,
.event .url_box span {
    padding-right: 7px;
    font-weight: 600;
    font-size: 0.95rem;
}
.event .shinsei_item .dl_links span {
    width: 130px; 
    padding-right: 4px;
    text-align-last: justify;
}
.event .dl_links a,
.event .url_box a {
    font-weight: 600;
    color: #0066cc;
    text-decoration: underline;
    font-size: 0.95rem;
    word-break: break-all;
    overflow-wrap: anywhere;
}
.event .dl_links a:hover,
.event .url_box a:hover {
    text-decoration: none;
}
.event .dl_links a + a {
    margin-left: 15px;
}


@media screen and (min-width: 641px) {
    .event section { 
        margin: 60px 10px 90px; 
    }
    .event section > *:not(h1):not(h2) { 
        padding-left: 20px; 
    }
    .event h1::after { 
        width: 85px; 
    }
    .event h2 { 
        margin: 52px 0 20px; 
    }
    .event h3 { 
        padding-left: 22px;
    }
    .event p { 
        font-size: 1rem; 
    }
    .event h1 + p { 
        padding-left: 20px; 
    }
    .event ul { 
        margin: 7px 0 15px 15px; 
    }
    .event ul li { 
        font-size: 1rem; 
        line-height: 1.6; 
    }
    .event dl { 
        margin-left: 10px; 
    }
    .event .shinsei_item { 
        display: flex; 
        margin-bottom: 34px; 
    }
    .event dt { 
        font-size: 1.1rem; 
        margin-top: 4px;
    }
    .event dd { 
        padding-left: 35px; 
        font-size: 1rem; 
    }
    .event .contact_info {
        line-height: 1.6;
    }
    .event .dl_links {
        margin: 20px 0 20px 45px;
    }
    .event .contact_sub {
        margin-top: 25px;
    }
    .event .url_box {
        margin: 10px 0 10px 30px;
    }
    .event .dl_links span,
    .event .url_box span {
        padding-right: 15px;
        font-size: 1rem;
    }
    .event .shinsei_item .dl_links span {
        width: 140px;
        padding-right: 10px;
    }
    .event .dl_links a,
    .event .url_box a {
        font-size: 1rem;
    }
    .event .dl_links a + a{
        margin-left: 20px;
    }
}


@media screen and (min-width: 834px) {
    .event h1::after { 
        width: 100px; 
    }
    .event p { 
        font-size: 1.1rem; 
    }
    .event ul li { 
        font-size: 1.1rem; 
    }
    .event dt { 
        font-size: 1.2rem; 
    }
    .event dd { 
        font-size: 1.1rem; 
    }
    .event .shinsei_item .dl_links span {
        width: 160px;
        padding-right: 20px;
    }
    .event .dl_links a + a{
        margin-left: 30px;
    }
}