@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
}


body {
    background-color: rgb(255, 248, 209);
}

.return {
    position: fixed;
    background-color: blue;
    right: 1vw;
    top: 1vw;
    border-radius: 3vw;
    border: 0.3vw solid white;
}

.return a {
    display: block;
    text-decoration: none;
}

.return a p {
    font-family: "M PLUS Rounded 1c", sans-serif;
    width: 10vw;
    line-height: 4vw;
    text-align: center;
    font-size: 2vw;
    font-weight: 600;
    color: white;
}


.minigeme-main1 h2 {
    margin-top: 5vw;
    text-align: center;
    font-size: 3vw;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 800;
    margin-bottom: 2%;
    color: orangered;
}

.minigeme-main1 p {
    white-space: pre-wrap;
    text-align: center;
    font-size: 1.5vw;
    font-family: "M PLUS Rounded 1c", sans-serif;
    margin-bottom: 2%;
}




/* ミニゲーム */

.mori {
    background-image: url(../images/mori.jpg);
    width: 70%;
    height: 39vw;
    background-repeat: no-repeat;
    background-size: contain;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    border-radius: 3vw;
    margin-bottom: 5%;
}

.sigemi {
    position: relative;
    width: 20%;
    height: 10vw;
    background-image: url(../images/baran.png);
    background-size: cover;
    animation: sigemianime 2s step-start infinite;
    transform-origin: center bottom;
}

@keyframes sigemianime {
    0% , 100% {transform: skewX(0deg);}
    25% {transform: skewX(4deg);}
    50% {transform: skewX(0deg);} 
    75% {transform: skewX(-4deg);}
    /* 左 */
}

.kitune-sigemi {
    left: 2vw;
    width: 15%;
    height: 10vw;
    bottom: 0vw;
    position: absolute;

    transition: 0.6s;

}

.kitune-sigemi:hover {
    background-image: url(../images/animal_fox_kitsune.png);
    width: 20%;
    height: 15vw;
    background-size: contain;
    background-repeat: no-repeat;
    bottom: -1vw;

    transition: 0.8s;
    animation: none;
    
}

.tanuki-sigemi {
    left: 2vw;
    width: 25%;
    height: 10vw;
    left: 14vw;
    bottom: 2vw;
    position: absolute;
    transition: 0.6s;
}

.tanuki-sigemi:hover {
    background-image: url(../images/animal_tanuki.png);
    width: 20%;
    height: 15vw;
    background-size: contain;
    background-repeat: no-repeat;
    bottom: -1vw;
    left: 16vw;

    transition: 0.8s;
    animation: none;
}

.shika-sigemi {
    left: 2vw;
    width: 20%;
    height: 10vw;
    left: 34vw;
    bottom: 0.5vw;
    position: absolute;
    transition: 0.6s;
}

.shika-sigemi:hover {
    background-image: url(../images/animal_deer.png);
    width: 20%;
    height: 20vw;
    background-size: contain;
    background-repeat: no-repeat;

    transition: 0.8s;
    animation: none;
}

.kuma-sigemi {
    width: 18%;
    height: 10vw;
    left: 34vw;
    bottom: 2vw;
    left: 52vw;
    position: absolute;

    transition: 0.6s;
}

.kuma-sigemi:hover {
    background-image: url(../images/animal_kowai_kuma.png);
    width: 30%;
    height: 40vw;
    background-size: contain;
    background-repeat: no-repeat;
    bottom: -15vw;
    left: 48vw;

    transition: 0.3s;
    animation: none;
}

.tori-sigemi {
    background-color: transparent;
    opacity: 0;
    width: 8vw;
    height: 7vw;
    left: 13vw;
    bottom: 23vw;
    position: absolute;
}

.tori-sigemi:hover {
    background-image: url(../images/bird_shimaenaga.png);
    opacity: 1;
    background-size: contain;
    background-repeat: no-repeat;
    transition: 1s;
}



.minigeme-text1 {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 600;
    line-height: ;
}

.minigeme-main1-a p {
    font-size: 1.2vw;
    white-space: pre-wrap;
}

details summary{
    list-style-type: none;
}

details h3 {
    text-align: center;
    font-size: 1.5vw;
    font-family: "M PLUS Rounded 1c", sans-serif;;
    color: orangered;
    background-color: rgb(255, 255, 136);
    border-radius: 2vw 2vw 0vw 0vw;
    
}

details p {
    display: block;
    text-align: center;
    font-size: 1px;
    line-height: 2vw;
    background-color: rgb(255, 255, 136);
    border-radius: 0vw 0vw 2vw 2vw;
}

.minigeme-main1-a-text {
    font-size: 0.5vw;
}

.minigeme-main1-a {
    display: flex;
    width: 100%;
    margin-bottom: 10%;
}

.kitune-a {
    width: 18%;
    margin-left: 1%;
    margin-right: 2%;
    
}

.kitune-silhouette {
    background-image: url(../images/fox_silhouette.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transition: 1s;
}

details[open] .kitune-silhouette {
    background-image: url(../images/animal_fox_kitsune.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transform: translateY(-1vw);
    transition: 1s;
}


.tanuki-a {
    width: 18%;
    margin-right: 2%;
}

.tanuki-silhouette {
    background-image: url(../images/tanuki_silhouette.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transition: 1s;
}

details[open] .tanuki-silhouette {
    background-image: url(../images/animal_tanuki.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transform: translateY(-0.5vw);
    transition: 1s;
}

.shika-a {
    width: 18%;
    margin-right: 2%;
}

.shika-silhouette {
    background-image: url(../images/shika_silhouette.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transition: 1s;
}

details[open] .shika-silhouette {
    background-image: url(../images/animal_deer.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transform: translateY(-1vw);
    transition: 1s;
}


.kuma-a {
    width: 18%;
    margin-right: 2%;
}

.kuma-silhouette {
    background-image: url(../images/kuma_silhouette.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transition: 1s;
}

details[open] .kuma-silhouette {
    background-image: url(../images/animal_kowai_kuma.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transform: translateY(-1vw);
    transition: 1s;
}


.tori-a {
    width: 18%;
    margin-right: 1%;
}

.tori-silhouette {
    background-image: url(../images/tori_silhouette.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transition: 1s;
}

details[open] .tori-silhouette {
    background-image: url(../images/bird_shimaenaga.png);
    width: 50%;
    height: 10vw;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    transform: translateY(-0.5vw);
    transition: 1s;
}


.footer1 {
    display: flex;
    padding: 5% 10%;
    background-color: rgb(218, 241, 218);
}

.footer1-parent-box1,
.footer1-parent-box2,
.footer1-parent-box3
{
    width: 30%;
}

.footer1-parent-box1 {
    margin-left: 10%;
    margin-right: 5%;
}

.footer1-parent-box3 {
    margin-right: auto;
    margin-left: 5%;
}

.footer1-children-box1 {
    font-size: 1.2vw;
    font-weight: 500;
    margin-bottom: 5%;
    color: green;
    
}

.footer1-children-box2 {
    font-size: 0.8vw;
    font-weight: 400;
    margin-bottom: 2%;
}

.footer1-children-box2 a {
    display: block;
    text-decoration: none;
    color: #303030;
    width: fit-content;
    border-bottom: 0.1vw solid transparent;
}

.footer1-children-box2 a:hover {
    color: #808080;
    border-bottom: 0.1vw solid #808080;
}



.footer2 {
    padding: 3% 1%;
    background-color: green;
}

.footer2-title h4 {
    text-align: center;
    font-size: 2.5vw;
    color: white;
}

.footer2-title p {
    text-align: center;
    margin-bottom: 2%;
    font-size: 1vw;
    color: white;
}

.sns-link {
    display: flex;
    width: 20.5vw;
    margin-left: auto;
    margin-right: auto;
}

.sns-link a {
    text-decoration: none;
    color: white;
}

.sns-x , .sns-facebook , .sns-instagram , .sns-youtube
{
    width: 4vw;
    text-align: center;
}

.sns-x-icon , .sns-facebook-icon , .sns-instagram-icon , .sns-youtube-icon
{
    width: 100%;
    height: 4vw;
}

.sns-x-icon {
    background-image: url(../images/x_icon.png);
    background-size: cover;
}

.sns-facebook-icon {
    background-image: url(../images/Facebook_icon.png);
    background-size: cover;
}

.sns-instagram-icon {
    background-image: url(../images/instagram_icon.png);
    background-size: cover;
}

.sns-youtube-icon {
    background-image: url(../images/youtube_icon.png);
    background-size: cover;
}

.sns-x , .sns-facebook , .sns-instagram  {
    margin-right: 1.5vw;
}

.sns-x-text , .sns-facebook-text , .sns-instagram-text , .sns-youtube-text
{
    line-height: 2vw;
    font-size: 0.8vw;
    text-align: center;
}

.sns-link a:hover {
    filter: brightness(80%);
}


.footer2-main {
    width: 80vw;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-top: 3%;
}

.footer2-name {
    font-size: 1.2vw;
    color: white;
    font-weight: 700;
    margin-bottom: 2%;
}

.footer2-address {
    font-size: 0.8vw;
    color: white;
    font-weight: 300;
    margin-bottom: 1%;
}

.footer2-name-link1 {
    font-size: 0.8vw;
    color: white;
    font-weight: 300;
    margin-bottom: 2%;
}

.footer2-name-link-mail {
    display: flex;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    border-bottom: 0.1vw solid transparent;
}

.footer2-name-link1 img {
    display: block;
    width: 1.2vw;
    height: 1.2vw;
}

.footer2-name-link1 a {
    display: block;
    display: flex;
    text-decoration: none;
    color: white;
}

.footer2-name-link1 a p {
    margin-left: 0.5em;
}

.footer2-name-link-parent {
    display: flex;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

.footer2-name-link2 a {
    display: block;
    text-decoration: none;
    white-space: pre-wrap;
    color: white;
    font-size: 0.8vw;
    border-bottom: 0.1vw solid transparent;
}

.footer2-name-link2:nth-of-type(2) {
    border-left: 0.1vw solid white;
    border-right: 0.1vw solid white;
}

.footer2-name-link-mail:hover {
    border-bottom: 0.1vw solid white;
    width: fit-content;
    transition: 0.8s;
}

.footer2-name-link2:hover {
    border-bottom: 0.1vw solid white;
    width: fit-content;
    transition: 0.8s;
}