@charset "UTF-8" ;

* {
    margin: 0;
    padding: 0;
}

@font-face {
    font-family: 'Zen_Kurenaido';
    src: url(../font/Zen_Kurenaido/ZenKurenaido-Regular.ttf);
}

@font-face {
    font-family: 'Zen_Kaku_Gothic_New';
    src: url(../font/Zen_Kaku_Gothic_New/ZenKakuGothicNew-Regular.ttf);
}

@font-face {
    font-family: 'crayonfont';
    src: url(../font/crayonfont/crayon_1-1.ttf);
}

body {
    font-size: 1.2vw;
}


a {
    text-decoration: none;
}

/* ヘッダー */
header {
    position: relative;
    top: 0vw;
    left: 0vw;
    position: fixed;
    width: 100%;
    background-color: rgba(255, 255, 255, 1);
    filter: drop-shadow(0 2px 10px #333);

    z-index: 100;
}

.header-flexbox {
    display: flex;
    align-items: center;
    width: 97%;
    height: max(6vw,10vh);
    margin-left: auto;
}

/* バンド名 */
h1 { 
    width: 30%;
}

h1 a {
    display: block;
    text-align: center;
    font-size: 4vw;
    color: #434a85;

    font-family: 'crayonfont';
}
h1 a:hover {
    filter: brightness(120%) contrast(50%);
}

/* ナビ */
nav {
    width: 45%;
    margin-top: 3vw;
    margin-left: 12%;
}

nav ul {
    display: flex;
    justify-content: center;
    list-style-type: none;
}

nav ul li {
    margin: 0% 3%;
}

nav ul li a {
    position: relative;
    display: block;
    font-size: 1.5vw;
    color: #434a85;

    font-family: 'Zen_Kurenaido';
    transition: 0.5s;
}
nav ul li a::after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 97%;
    height: 100%;
}

nav ul li:hover a::after {
    border-top: 0.3vw dotted #434a85;
    transition: 0.3s;
}

/* SNS */
.sns-icon {
    width: 10%;
    margin-top: 3vw;

    font-size: 2vw;
}

.fa-brands {
    margin: 0% 4.5%;
}

.fa-brands:hover {
    filter: brightness(120%) contrast(50%);
    transition: 0.2s;
}

.fa-square-instagram {
    color: hwb(340 19% 12%);
}

.fa-square-x-twitter {
    color: rgb(58, 58, 58);
}

.fa-square-youtube {
    margin-right: 0;
    color: rgb(214, 45, 45);
}

/* メイン */
main {
    width: 100%;
}

/* 音声ボタン */
.movie-btn {
    position: absolute;
    top: 13%;
    left: 0;
    position: fixed;
    width: 10%;
    padding: 0.5%;

    z-index: 10;
}

.movie-btn button {
    display: block;
    position: relative;

    width: 6em;
    height: 4vw;
    margin: 8%;
    border: 0.2vw solid #fff;
    border-radius: 2vw;
    box-shadow: 0 2px 5px #333;
    font-size: 1.4vw;
    color: #fff;
    background-color: rgb(67, 74, 133, 0.5);
    cursor: pointer;

    font-family: 'Zen_Kaku_Gothic_New';
    transition: 0.3s;
}

.movie-btn button:hover {
    filter: contrast(50%);
    transition: 0.3s;
}

/* 動画 */
.movie {
    position: relative;
    height: 100vh;
}
.parallax {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    margin-top: 10vh;
    overflow: hidden;
    z-index: -1;
}
.movie .parallax video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;

    z-index: -1;
}

.section-area {
    width: 100%;
    padding: 5% 0;
    margin-bottom: 15%;
    background: radial-gradient(circle,rgba(255, 255, 255, 1) 0%, rgb(209, 212, 236) 100%);
}

/* ライブ情報 */
main .live {
    width: max(50%,400px);
    margin-left: auto;
    margin-right: auto;
}

h2 {
    margin-bottom: 3%;
    text-align: center;
    font-weight: normal;
    font-size: 3vw;
    color: #444;

    font-family: 'Zen_Kurenaido';
}

main .live ul {
    list-style-type: none;
} 

main .live ul li {
    line-height: 3.2vw;
    border-bottom: 0.1vw solid #434a85;
    font-size: 1.4vw;
    color: #444;

    font-family: 'Zen_Kaku_Gothic_New';
}

main .live ul li:first-child {
    border-top: 0.1vw solid #434a85;
}

main .live ul li p {
    margin-right: 4%;
}

main .live ul li time {
    margin-left: 8%;
    margin-right: 14%;
}
main .live ul li time span {
    font-size: 0.9vw;
}
main .live ul li time span:nth-of-type(1) {
    margin-right: 0.2em;
}

main .live a {
    margin-left: 84%;
    color: #444;

    font-family: 'Zen_Kaku_Gothic_New';
}
main .live a:hover {
    color: #888;
    transition: 0.3s;
}

/* ニュース情報 */
main .news {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
}

main .news ul {
    list-style-type: none;
} 

main .news ul li {
    line-height: 2.2vw;
    border-bottom: 0.1vw solid #434a85;
    color: #444;

    font-family: 'Zen_Kaku_Gothic_New';
}

main .news ul li:first-child {
    border-top: 0.1vw solid #434a85;
}

.news-li-flex {
    display: flex;
    align-items: center;
    width: 80%;
    margin: 0 auto;
}

.news-li-flex time {
    display: block;
    width: 22%;
}

.news-li-flex span {
    display: block;
    width: 8%;
    height: 1.5vw;
    line-height: 1.5vw;
    font-size: 0.8vw;
    text-align: center;
    color: #fff;
    background-color: #444;
}

main .news ul li p {
    width: 70%;
    margin: 0.5% 0 0.3em 30%;
    font-size: 1.4vw;
}

main .news a {
    margin-left: 86%;
    color: #444;

    font-family: 'Zen_Kaku_Gothic_New';
}

main .news a:hover {
    color: #888;
    transition: 0.3s;
}

/* フッター */
footer {
    padding: 2%;
    background-color: #2f303b;
}

.footer-flexbox {
    display: flex;
    align-items: center;
    width: 35%;
    height: 5vw;
    margin: 1vw auto 3vw auto;
}

footer .footer-flexbox .footer-sns-icon + a {
    /* CONTACT */
    width: 20%;
    text-align: center;
    font-size: 1.6vw;
    color: #fff;
    transition: 0.2s;

    font-family: 'Zen_Kurenaido';
}

footer .footer-flexbox .footer-sns-icon + a:hover {
    filter: contrast(50%);
    transition: 0.3s;
}

footer .footer-flexbox .footer-sns-icon {
    display: flex;
    align-items: center;
    width: 55%;
    height: 4vw;
    padding: 0 10%;
    margin-right: 5%;
    border-radius: 2vw;

    background-color: #fff;
}

footer .footer-flexbox .footer-sns-icon a {
    display: block;
    width: 100%;
    margin: 0 5%;
    text-align: center;
    font-size: 3vw;
}

footer .footer-flexbox .footer-sns-icon a i {
    display: block;
}

footer p {
    text-align: center;
    font-size: 1.1vw;
}

footer p small {
    color: #fff;
}

footer p small span {
    margin-left: 0.5em;
}