@charset "UTF-8";
@import "common.css";
@import "animation.css";

/* 汎用
------------------------------- */
.style-gothic {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif;
}

.style-mincho {
    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}



/* 共通部分
------------------------------- */
html {
    font-size: 100%;
}

body {

    line-height: 1.7;
    color: #432;
    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

a {
    text-decoration: none;
}

img {
    max-width: 100%;
}

.wrapper {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 4%;
}

/* 大きな背景画像 */
.big-bg {
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
}

/* 見出し */
.page-title {
    font-size: 5rem;
    font-family: 'Philosopher', serif;
    text-transform: uppercase;
    font-weight: normal;
}

.sub-title {
    font-size: 1.375rem;
    padding: 0 8px 8px;
    border-bottom: 2px #0bd solid;
    font-weight: normal;
}

/* ボタン */
.button {
    font-size: 1.375rem;
    background: #0bd;
    color: #fff;
    border-radius: 5px;
    padding: 18px 32px;
}

.button:hover {
    background: #0090aa;
}

/* iframe */
iframe {
    width: 100%;
}




/* HOME
------------------------------- */

#home .main-nav {
    display: flex;
    font-size: 1.25rem;
    text-transform: uppercase;
    /* margin-top: 204px; */
    list-style: none;
    flex-direction: column;
    align-items: flex-start;
    color: #fff;
    /* margin-right: 30px; */
    background: #ffffffe3;
    padding: 90px;
    /* position: relative;
    right: -100px;
    bottom: 150px; */
    opacity: 0;
    -webkit-animation: opacityAnimation 6s ease forwards !important;
    animation: opacityAnimation 6s ease forwards !important;
}

#home .main-nav li {
    margin-left: 8px;
    letter-spacing: .2em;
}

#home .main-nav a {
    color: #000;
}

#home .main-nav a:hover {
    color: #0bd;
}


#home {
    /* background-image: url(../images/main-bg.jpg); */
    /* background-color: #078247; */
    min-height: 100vh;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    /* すべて縦方向に表示 */

}

#home .page-title {
    text-transform: none;
}

.home-content {
    text-align: center;
    margin-top: 10%;
    display: flex;
    flex-direction: column;
    width: 100vw;
    justify-content: center;
    /* align-items: flex-start; */

}

.home-content {
    font-size: 1.125rem;
    margin: 10px 0 42px;
}

.home-content h1 {
    color: #000;
    letter-spacing: .3em;
    margin-left: 40px;
    margin-right: 100px;
    margin-top: 80px;
    font-size: 35px;
    text-align: left;
    align-self: flex-start;
}

.home-image {
    opacity: 0;
    -webkit-animation: opacityAnimation 4s ease forwards !important;
    animation: opacityAnimation 4s ease forwards !important;
    align-self: center;

}


h1 img {
    width: 30px;

}

nav {
    opacity: 0;
    align-self: flex-end;
    position: relative;
    -webkit-animation: anim-fade-up 2s ease forwards .5s;
    animation: anim-fade-up 2s ease forwards .5s;
    right: -40px;
}

@media screen and (max-width:770px) {

    #home {

        min-height: auto;
        -ms-writing-mode: inherit;
        writing-mode: inherit;

    }

    .home-content {
        /* font-size: 1.125rem; */
        /* margin: 10px 0 42px; */
    }

    .home-content {
        /* text-align: center; */
        margin: 0;
        display: block;
        /* flex-direction: column; */
        width: auto;
        /* justify-content: center; */
        /* align-items: flex-start; */
    }

    .home-content h1 {
        /* color: #000; */
        letter-spacing: .2em;
        /* margin-left: 40px;
        margin-right: 100px;
        margin-top: 80px; */
        margin: 0;
        font-size: 1.9rem;
        text-align: center;
        /* align-self: flex-start; */
        background: #fff;
        padding: 15px 0;
    }

    .home-image {
        margin-bottom: 20px;
    }

    nav {
        /* opacity: 0; */
        /* align-self: flex-end; */
        /* position: relative; */
        /* -webkit-animation: anim-fade-up 2s ease forwards .5s; */
        /* animation: anim-fade-up 2s ease forwards .5s; */
        /* right: -40px; */
        position: static;
    }



    #home .main-nav {
        display: flex;
        /* font-size: 1.25rem; */
        flex-direction: row;
        /* align-items: flex-start; */
        color: #fff;
        /* margin-right: 30px; */
        background: transparent;
        padding: 0;
        opacity: 0;
        -webkit-animation: opacityAnimation 6s ease forwards !important;
        animation: opacityAnimation 6s ease forwards !important;
        flex-wrap: wrap;
        justify-content: space-between;
        width: calc(100% - 20px);
        margin: 0 auto;
    }

    #home .main-nav li {
        margin-left: 0;
        letter-spacing: .1em;
        width: calc((100% - 10px) / 2);
        margin-bottom: 10px;
    }

    #home .main-nav a {
        color: #000;
        background: #ffffffe3;
        display: block;
        padding: 15px 10px;
        letter-spacing: 0;
        font-size: 1.2rem;
        text-align: left;
        position: relative;
        box-shadow: 0 0 2px #0944372e;
    }

    #home .main-nav a::after {
        font-family: "Font Awesome 5 Free";
        content: "\f054";
        font-weight: 900;
        padding-right: 0;
        color: #238447;
        position: absolute;
        right: 10px;
        font-size: 14px;
        top: 50%;
        transform: translateY(-50%);
    }
    .foot-area .inner{
        text-align: center;
    }




}


@media screen and (min-width:750px) {
    .home-content h1{
        margin-bottom: 30px;
    }
    #home .main-nav a{
        text-align: center;
    }
    .logo-area.foot-logo{
        text-align: center;
    }

}
@media screen and (min-width: 900px) {

  
    .logo-area.foot-logo {
      text-align: left;
    }
  }
