@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
}


@font-face{
    src: url(../font/Train_One/TrainOne-Regular.ttf);
    font-family: Train_One;
}

@font-face {
    src: url(../font/Noto_Sans_JP\,Train_One/);
    font-family: Noto_Sans_JP;
}

@font-face {
    src: url(../font/M_PLUS_Rounded_1c/);
    font-family: M_PLUS_Rounded_1c;
}





header {
    width: 100%;
    height: 10vh;
    display: flex;
    background-color: rgba(245,245,245,0.7);
    position: fixed;
    align-items: center;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10; 
    padding-top: 1vw;   
    padding-bottom: 1vw;
}

h1 {
    width: 30%;   
    margin-left: 4%;
    
    
}

h1 a {   
    text-decoration: none; 
    font-size: 0.8vw;
}





h1 .logo img {
    display: block;
    width: 90%;
    
}





h2 {
    text-align: center;
    margin-top: 25vw;
    font-size: 2.5vw;
    background-color: #dad6d6;
    padding: 2vw;
}

.ulflex {
    display: flex;
    list-style: none;
    margin-top: 1vw;
    margin-left: 5vw;
}

.ulflex li {
    font-size: 2vw;
    color: #101010;
}

.ulflex li a {
    text-decoration: none;
    color: #101010;
    font-size: 2vw;
    border-bottom:1px dotted #808080;
    transition: 1s;
}

.ulflex li a:hover {
    color: #808080;
    border-bottom:none;
    transition: 1s;
}

.poli {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

h3 {
    width: 50%;
    margin-top: 3vw;
    font-size: 3vw;
    color: #101010;
    border-bottom: 1px dotted #808080;
}

p {
    font-size: 3.3vw;
    color: #101010;
    margin-top: 1vw;
}

ol {
    margin-top: 1vw;
    margin-left: 3vw;
    font-size: 3vw;
    color: #101010;
}




footer {
    width: 70%;
    margin-left: auto;
    margin-right: auto;  
    margin-top: 10vw; 
}



footer .footerflex .footer-l {
    width: 60%;
}



.f-logo {
    border-bottom: 1px dotted #808080;
    width: 50%;

}

.f-logo a {
    display: block;
}

.f-logo a img {
    width: 80%;
}
    

footer .footerflex .footer-l h3 a:hover {
    color: #101010;
    transition: 1s;
}

address {
    font-size: 2.3vw;
    color: #808080;
    margin-top: 1vw;
}


footer .footerflex .footer-r ul {
    list-style-type: none;
}

footer .footerflex .footer-r ul li {
    width: 100%;
    margin-top: 2vw;
    margin-left: 10vw;
}

footer .footerflex .footer-r ul li a {
    display: block;
    text-decoration: none;
    font-size: 2.3vw;
    color: #808080;
    transition: 1s;
}

footer .footerflex .footer-r ul li a:hover {
    color: #101010;
    transition: 1s;
}


.copyright {
    text-align: center;
    font-size: 2vw;
    color: #808080;
    padding-bottom: 5vw;
}

