body {
    padding: 0 0 0 0;
    margin: 0;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3",
        "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-weight: 500;
    font-family: "Noto Serif JP", serif;
    /* text-decoration: none; */

}

.footer {
    width: 100%;
    height: auto;
    background-color: rgb(68, 68, 68);
}

.footer-container {
    width: 100%;
    padding-left: 10%;
    padding-right: 10%;
    font-size: 2vw;
}

/*
.footer {
     height: 3em; 
    background-color: rgb(68, 68, 68);
}
*/


/*
footer {
    position: absolute;
    z-index: 5;
        margin-top: 5vw;
    width: 100%;
    font-size: 1.3em;
    bottom: 0;
}
*/

/*
.footer {
    padding: 15px 0 5px 0;
}
*/

/*
.foot {
     padding-top: 0.5em; 
    font-size: 1em;
    text-decoration: none;
    text-align: center;
    margin: 0 1vw;
    color: rgb(241, 241, 241);
    transition: 0.5s;
    line-height: 2;
}
*/

.copyright {
    /* padding-top: 0.5em; */
    font-size: 1em;
    text-decoration: none;
    text-align: center;
    margin: 0 1vw;
    color: rgb(241, 241, 241);
    transition: 0.5s;
    line-height: 2;
    margin-top: 10px;
}

/*
a.foot:hover {
    text-decoration: none;
    color: #e087b5;
}

div.footer {
    width: 100%;
}

.justify-content-center {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}
*/


/*hamburger*/
.hmenu {
    text-decoration: none;
}

/* table {
  padding-bottom: 2em;
} */
.hmenu tr {
    background-color: #3774ba;
}

.hmenu tr td {
    width: 5%;
    padding: 0.5vw 1vw;
    color: #c6d7ff;
}

.hmenu tr td a {
    color: #c6d7ff;
}

.hmenu tr td a:hover {
    color: #e087b5;
}

#h {
    color: rgb(255, 255, 255);
}

.humber {
    list-style-type: none;
    text-align: center;
    font-size: 1.5em;
}

#humb:visited {
    color: rgb(208, 233, 255);
}

.exhead {
    /* opacity: 0; */
    /* visibility: hidden; */
}

.menu-contents {
    /* position: absolute; */
    /* height: 3vw; */
    width: 100%;
    /* height: 100px; */
    background-color: #3774ba;
    /* 背景色の設定 */
    /* opacity: 0; */
    /* visibility: hidden; */
    display: none;
/*
    padding-left: 4.5vw;
    padding-right: 4.5vw;
*/
    padding-top: 2.5vw;
    transition: 0.5s;
    position: relative;
    z-index: 40;
    margin-top: 9.5vh;
    font-family: "Noto Serif JP", serif;
    text-decoration: none;
    font-size: 0.6em;
}

#nav-menu {
    position: absolute;
    /*    position: relative;*/
    width: 40px;
    height: 30px;
    /*     left: 93%; */
    /*     margin-left: 95; */
    right: 0;
    /*    right: 0;*/
    top: 4.5vh;
    float: right;
    margin-right: 2.8vw;
    /*    margin-left: 85;*/
    cursor: pointer;

}

nav div span {
    display: inline-block;
    width: 40px;
    height: 2px;
    background-color: #353535;
    position: absolute;
}

.hamburger-menu span:nth-of-type(2) {
    top: 14px;
}

.hamburger-menu span:nth-of-type(3) {
    bottom: 0;
}

.is-active {
    /* opacity: 1; */
    /* visibility: visible; */
    display: block;
    /* animation: show 1s linear 0s; */
    -webkit-animation-name: show;
    animation-name: show;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
}

@-webkit-keyframes show {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes show {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.activeTopBar {
    transform: rotate(45deg);
    top: 15px;
    transition: 0.5s;
    z-index: 45;
}

.activeBottomBar {
    transform: rotate(-45deg);
    top: 15px;
    transition: 0.5s;
    z-index: 45;
}

.remove-top {
    transform: rotate(0deg);
    top: 0;
    transition: 0.5s;
}

.remove-bottom {
    transform: rotate(0deg);
    top: 30px;
    transition: 0.5s;
}

#nav-menu .hamburger-menu {
    z-index: 112;
}

.menu-flex {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}

.hamburger-list {
    /* background-color: #3774ba; */
    display: inline-block;
    width: 22%;
    margin-bottom: 4.5vw;
    background-color: #3774ba;
    text-align: center;
    margin-right: 3%;
    text-decoration: none;
}

.hamburger-list a {
    margin-top: 20px;
    text-decoration: none;
}

.hamburger-list a:not(:first-child) {
    color: #c6d7ff;
    /* background-color: #3774ba; */
    display: block;
    /* font-size: 1.5em; */
    font-size: calc(0.4rem + 0.6vw);
    transition: 0.5s;
}

.hamburger-list a:not(:first-child):hover {
    color: #e087b5;
}

p.big-menu {
    /* font-size: 18px; */
    font-size: calc(0.3rem + 1vw);
    color: #ffffff;
    text-decoration: none;
}

a.big-menu {
    /* font-size: 18px; */
    font-size: calc(0.3rem + 1vw);
    color: #ffffff;
    transition: 0.5s;
    text-decoration: none;
}

a.big-menu:hover {
    color: #e087b5;
}

.justify-content-center {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}

/*上にもどるやつ*/
.back-scroll {
    position: fixed;
    z-index: 100;
    width: 60px;
    height: 60px;
    top: 85vh;
    right: 8vw;
}

.back-top {
    width: 60px;
    height: 60px;
    position: fixed;
    z-index: 20;
    display: none;
}

.nav-top {
    position: fixed;
    z-index: 20;
    margin-top: -40px;
    margin-left: 11px;
    animation: nav-name 1s ease infinite alternate;
    color: #284c9e;
}

.nav-top1 {
    width: 40px;
    height: 5px;
    position: fixed;
    z-index: 20;
    background-color: #284c9e;
    transform: rotate(45deg);
    margin-left: 26px;
    animation: nav 1s ease infinite alternate;
}

.nav-top2 {
    width: 40px;
    height: 5px;
    background-color: #284c9e;
    transform: rotate(-45deg);
    position: fixed;
    z-index: 20;
    animation: nav 1s ease infinite alternate;
}

@keyframes nav {
    0% {
        margin-top: -15px;
    }

    100% {
        margin-top: 0;
    }
}

@keyframes nav-name {
    0% {
        margin-top: -45px;
    }

    100% {
        margin-top: -30px;
    }
}

.container {
    position: relative;
    width: 100%;
}

