/*----- TOP告知エリア --------
--------------------------------------------------*/
.sail-area {
    text-align: center;
    margin: 0 calc(50% - 50vw) 50px;
    width: 100vw;
    background-color: rgba(0, 204, 233, 0.05);
    background-image: url(/memorial2019/wp-content/uploads/top/news/ksnsaill-bcarea.png);
    padding: 0 3rem 3rem;
}
.haikei-ksnsail {
    position: relative;
}
.haikei-img01, .haikei-img02 {
    position: absolute;
    width: auto;
    max-width: 100%; /* 必要に応じて調整 */
    height: auto;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.75s ease-in, transform 0.75s ease-in;
}

/* 左側画像（haikei-img01） */
.haikei-img01 {
    z-index: 1;
    bottom: 16%;
    left: 4%;
}
/* 右側画像（haikei-img02） */
.haikei-img02 {
    z-index: 2;
    top: 15%;
    right: 4.5%;
}
@media only screen and (max-width: 1400px) {
    .haikei-img01 {
        width: 25%;
        bottom: 5%;
        left: -5.75%;
    }
    .haikei-img02 {
        width: 20%;
        top: 7.5%;
        right: -10%;
    }
}
@media only screen and (max-width: 1000px) {
    .haikei-img01 {
        width: 45%;
        bottom: -3%;
        left: -20%;
    }
    .haikei-img02 {
        width: 25%;
        top: 10.5%;
        right: -14%;
    }
}
/* スクロールで表示されたときに付けるクラス */
.fade-in-visible {
    opacity: 1;
    transform: translateY(0);
}
.sail-area h1, .sail-area .youtube-container, .sail-area ul {
    z-index: 2;
    position: relative;
}
.sail-area h1 {
    color: #fff;
    font-size: 2em;
    background-color: #151c62;
    padding: 0.25em;
    width: 100vw;
    margin: 0 calc(50% - 50vw) 0.75em;
}
@media only screen and (max-width: 768px) {
    .sail-area h1 {
        font-size: 1.5em;
    }
}
@media only screen and (max-width: 485px) {
    .sail-area h1 {
        font-size: 1.25em;
    }
}
.sail-area .youtube-container {
    max-width: 1080px;
    aspect-ratio: 16 / 9; /* アスペクト比を明示（モダンブラウザ対応） */
    margin: 0 auto;
    border-radius: 10px;
    overflow: hidden;
}
@media only screen and (max-width: 1300px) {
    .sail-area .youtube-container {
        margin: 0 3rem;
    }
}
@media only screen and (max-width: 1000px) {
    .sail-area .youtube-container {
        margin: 0 auto;
    }
}
.sail-area .youtube-container iframe {
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    border-radius: 10px; /* Safari対応のため念のため再指定 */
    display: block;
}
.sail-area ul {
    margin-top: 1.5em
}
@media only screen and (max-width: 768px) {
    .sail-area ul {
        margin-top: 1.0em
    }
}
.sail-area li {
    margin-top: 1em
}