@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%;
    background: radial-gradient(circle,rgba(255, 255, 255, 1) 0%, rgb(209, 212, 236) 100%);
}

/* セクション */
main section {
    padding-top: 5%;
    padding-bottom: 20vh;
}

main section h2 {
    width: 5em;
    height: 1.6em;
    line-height: 1.4em;
    margin: 10% auto 0% auto;
    text-align: center;
    font-size: 3vw;
    font-weight: normal;
    color: #fff;
    font-family: 'Zen_Kurenaido';

    background-color: #272727;
}

main section .form-p {
    width: 45%;
    margin-top: 2%;
    margin-left: auto;
    margin-right: auto;
    padding: 1%;
    border: 0.1vw solid #2f303b;
    font-size: 1.2vw;
    color: #272727;

    font-family: 'Zen_Kaku_Gothic_New';
}

main section .form-p p:nth-child(2) {
    margin-bottom: 1em;
}

main section .form-p + p {
    width: 45%;
    margin-left: auto;
    margin-right: auto;
    padding: 5% 0% 1% 0%;
    font-size: 1vw;
    color: rgb(216, 43, 43);
    font-family: 'Zen_Kaku_Gothic_New';
}

/* フォーム */
form {
    width: 45%;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.2vw;
    color: #272727;

    font-family: 'Zen_Kaku_Gothic_New';
}

.form-flexbox {
    display: flex;
    border-bottom: 0.1vw solid #a9acc2;
}

.leftbox {
    width: 30%;
    line-height: 3;
}

.leftbox span {
    font-size: 1vw;
    color: rgb(216, 43, 43);
}

.rightbox {
    width: 70%;
    line-height: 2.7;
}

.rightbox input {
    width: 97%;
    padding-left: 2%;
    line-height: 2.2;
    border: 0.1vw solid #414779;
}

.select-rightbox {
    width: 97%;
    padding-left: 2%;
    line-height: 2.2;
    border: 0.1vw solid #414779;
}

select {
    padding: 3%;
    margin: 3% 0%;
    border: 0.1vw solid #414779;
    color: #272727;

    font-family: 'Zen_Kaku_Gothic_New';
}

textarea {
    width: 93%;
    height: 16em;
    margin-top: 3%;
    padding: 3%;
    border: 0.1vw solid #414779;
}

.send {
    display: block;
    width: 20%;
    height: 3em;
    margin-top: 10%;
    margin-left: auto;
    margin-right: auto;
    border: 0.1vw solid #414779;
    border-radius: 1vw;
    font-size: 1.2vw;
    color: #fff;

    background-color: #414779;
    transition: 0.5s;
}

.send:hover {
    color: #fff;
    background-color: #5e6496;
    cursor: pointer;
    transition: 0.5s;
}

/* フッター */
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;
}