/*index*/

/*てんぷら*/


/*メニュー*/

.menu-btn {
    position: fixed;
    top: 4vw;
    right: 3vw;
    display: flex;
    height: 8vw;
    width: 8vw;
    justify-content: center;
    align-items: center;
    z-index: 90;
    background: transparent;
}

.menu-btn .bar,
.menu-btn .bar:before,
.menu-btn .bar:after {
    content:" ";
    display: block;
    height: 0.7vw;
    width: 6vw;
    background: #7f6b94;
    position: absolute;
    transition: all 0.5s;
    z-index: 99;
    border-radius: 0.35vw;
}

.menu-btn span:before {
    bottom: 1.75vw;
}

.menu-btn span:after {
    top: 1.75vw;
}

#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}

#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    background-color: #fff;
    transform: rotate(45deg);
}

#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    background-color: #fff;
    transform: rotate(-45deg);
}

/*中身自体*/
.menu-content {
    height: 100%;
    position: fixed;
    overflow-y: scroll;
    width: calc(100% - 30vw);
    top: 0;
    left: 100%;
    z-index: 80;
    background: url("頑張った薄いにょろ.png");
    background-size: cover;
    background-color: #7f6b94;
    transition: all 1.5s;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.menu-content::-webkit-scrollbar{
    display: none;
}

.menu-content ul {
    padding: 35vw 0vw 0vw 0vw;
    border-bottom: none;
}

.menu-content ul li {
    list-style: none;
}

.menu-content ul li a {
    display: block;
    font-size: 7vw;
    width: 30vw;
    font: bold;
    box-sizing: border-box;
    color:#fff;
    text-decoration: none;
    padding: 3vw 0;
    letter-spacing: 0.5vw;
    margin: 0 0 0 50%;
    text-align: center;
}

.menu-content ul li a::before {
    content: "";
    width: 25vw;
    height: 4vw;
    transform: rotate(45deg);
    position: absolute;
    top: 7vw;
}

#menu-btn-check:checked ~ .menu-content {
    left: 30vw;/*メニューを画面内へ*/
    letter-spacing: 0.5vw;
}

#menu-btn-check {
    display: none;
}

.menu-tops {
    text-align: center;
    padding: 5vw;
    position: absolute;
}

.menu-top {
    width: 20vw;
    padding: 1.25vw;
}

.menu-icons {
    position: absolute;
    top: 70vw;
    padding-left: 12vw;
    padding-bottom: 5vw;
}

.menu-icon {
    width: 10vw;
    padding-bottom: 5vw;
}


/*文字たち*/

p {
    font-size: 3vw;
}

p .sub-kumo {
    font-size: 2vw;
    color: #fff;
}

h1 {
    font-size: 5vw;
}

h2 {
    font-size: 4vw;
}

h3 {
    font-size: 3.5vw;
}

a {
    color: #3a3a3a;
    text-decoration: none;
    font-size: 3vw;
}



/*ぶわ周り*/

.kumo_before {
    width: 100%;
    z-index: 1;
    margin-left: 0;
    margin-top: 0;
    position: absolute;
    top: 105lvh;
}

.kumo_after {
    width: 100%;
    z-index: 0;
    position: absolute;
        top: 105lvh;
        left: 0;
    opacity: 1;
}

.kumokumo {
    width: 100%;
    text-align: center;
}

/*色変更*/
.headerColorScroll {
    background: white;
    transition: 2s ease-out;
}




/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { 
    display: block !important;
}

.sp {
    display: none !important;
}
 
/*スマホ*/
@media only screen and (max-width: 750px) {
    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }

    .background::before {
        /*background-image: url("back_a_02.png");*/
        background: #a998b9;
        background-image: url("頑張った薄いにょろ.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        min-height:110lvh;
        position: fixed;
        z-index: -1;
    }
    .top_headerlogo {
        text-align: center;
        position: fixed;
        inset: 0;
        color: #fff;
        font-size: 2vw;
        padding: 0;
    }
    
    .logopng {
        width: 30vw;
        max-width: 22.5lvh;
        height: 30vw;
        max-height: 22.5lvh;
        padding: 0 2.5vw;
        filter: drop-shadow(0 0 0.25vw #fff);
    }
    

    .top_flyer {
        text-align: center;
        position: fixed;
        inset: 0;
        top: 42.5lvh;
        width: 100%;
        height: 32.5lvh;
        height: auto;
        display: flex;
    }
    
    .flyerssp {
        padding: 0.5vw;
        height: auto;
        width: 49vw;
        max-width: 285px;
        filter: drop-shadow(0 0 0.5vw 0 #A996BB);
    }

    .scroller {
        text-align: center;
        vertical-align: bottom;
        align-items: center;

    }

    .scroll{
        width: 100%;
        margin: 0 auto;
        text-align: center;
        position:fixed;
        top: 90lvh;
        color: #fff;
        font-size: 4vw;
        filter: drop-shadow(0.25vw 0.25vw 0.25vw #6d5a7e);
        animation: blinking 1s ease-in-out infinite alternate;
    }

    .tops_tops {
        width: 100%;
        height: 120vw;
        display: flex;
    }

    @keyframes blinking {
        0% {opacity: 0;}
        100% {opacity: 1;}
    }
}

body {
    margin: 0;
    color: #3a3a3a;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.background::before {
    content:"";
    display:block;
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    width:100%;
    height:110lvh;
    background-repeat: no-repeat;
    background-position: center center;
    /*background-image: url('back_a_02.png');*/
    background: #a998b9;
    background-image: url("頑張った薄いにょろ.png");
    background-size: cover;
   }





.topsen {
    font-size: 3lvh;
}

/*スマホ・タブレット*/


.fadeUp{
    animation-name:fadeUpAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:1;
}
    
@keyframes fadeUpAnime {
    from {
        opacity: 0;
        transform: translateY(15vw);
    }to {
        opacity: 3;
        transform: translateY(0);
    }
}













/*タブレット*/
@media only screen and (min-width: 751px) and (max-width: 960px) {
    
    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }

    .background::before {
        /*background-image: url("back_a_02.png");*/
        background: #a998b9;
        background-image: url("頑張った薄いにょろ.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        min-height:110lvh;
        position: fixed;
        z-index: -1;
    }

    .top_headerlogo {
        text-align: center;
        padding: 0;
        position: fixed;
        inset: 0;
        font-size: 2.5lvh;
        color: #fff;
    }

    .logopng {
        width: 20vw;
        max-width: 22.5lvh;
        height: 20vw;
        max-height: 22.5lvh;
        filter: drop-shadow(0 0 0.25vw #fff);
    }

    .top_flyer {
        text-align: center;
        position: fixed;
        inset: 0;
        top: 45lvh;
        width: auto;
        height: 32.5lvh;
        display: flex;
    }
    
    .flyerssp {
        height: 45lvh;
        width: auto;
        filter: drop-shadow(0 0 0.5vw #A996BB);
    }

    .scroller {
        text-align: center;
        vertical-align: bottom;
        align-items: center;

    }

    .scroll{
        width: 100%;
        margin: 0 auto;
        text-align: center;
        position:fixed;
        top: 92.5lvh;
        color: #fff;
        font-size: 2.5vw;
        animation: blinking 1s ease-in-out infinite alternate;
    }

    .tops_tops {
        width: 100%;
        height: 120vw;
        display: flex;
    }

    @keyframes blinking {
        0% {opacity: 0;}
        100% {opacity: 1;}
    }
}




/*pc*/
@media only screen and (min-width: 961px) {

    .menu-btn {
        position: fixed;
        top: 2vw;
        right: 3vw;
        display: flex;
        height: 8vw;
        width: 8vw;
        justify-content: center;
        align-items: center;
        z-index: 90;
        background: transparent;
    }

    .pcses {
        display: flex;
        width: 100%;
        height: 110lvh;
    }

    .top_headerlogo {
        text-align: center;
        padding: 0;
        height: 110lvh;
        width: auto;
        position: fixed;
        inset: 0;
        display: flex;
    }

    .sub-kumo {
        color: #fff;
        font-size: 2vw;
        padding: 0;
    }

    .logopng {
        height: 35lvh;
        filter: drop-shadow(0 0 0.25vw #fff);
    }

    .top_flyer_p {
        width: 30%;
        height: 110lvh;
        top: 20lvh;
        left: 0;
        display: flex;
        text-align: center;
        vertical-align: middle;
        justify-content: center;
        z-index: -0.75;
        position: fixed;
        margin: auto;
    }
    
    .top_flyer_c {
        width: 30%;
        height: 110lvh;
        top: 20lvh;
        right: 0;
        display: flex;
        text-align: center;
        vertical-align: middle;
        justify-content: center;
        z-index: -0.75;
        position: fixed;
        margin: auto;
    }
    
    .flyers {
        width: 25vw;
        filter: drop-shadow(0 0 0.5vw #A996BB);
    }

    .scroll{
        width: 100%;
        margin: 0 auto;
        text-align: center;
        position:fixed;
        top: 55vw;
        color: #fff;
        font-size: 2vw;
        animation: blinking 1s ease-in-out infinite alternate;
    }

    @keyframes blinking {
        0% {opacity: 0;}
        100% {opacity: 1;}
    }
}

.fadeUpTrigger{
    opacity: 0;
}



/*いろいろ*/

.whites {
    background: #fff;
    z-index: 10;
    position: absolute;
    top: calc(110lvh + 150vw);
    padding: 2.5vw 0;
}



.top_contents {
    /*background: url(back_02.PNG);
    background-size: cover;*/
    margin: 10vw;
    padding: 1.25vw;
    z-index: 0;
    box-shadow: inset 0 0 1vw 1vw #fff;
}

.top_title {
   text-align: center;
   border-bottom: #BAA7CC 0.25vw dotted;
}

ul {
    list-style: none;
    border-bottom: 0.25vw #BAA7CC dashed;
}

.newsaccess {
    text-align: center;
}

.top_sozo {
    text-align: center;
    margin: 5vw 0;
}

.sns_icons {
    text-align: center;
}

.icons {
    width: 10vw;
    margin: 2.5vw;
}

.top_contact {
    text-align: center;
    margin: 5vw;
}

.lefting {
    margin: 2.5vw;
}

.formurl {
    text-decoration: underline;
  }