@charset "UTF-8";

/* ====================================================================
    スマホ用
=====================================================================*/

html{
    height: 100%;
    width: 100%;
}

body{
    width: 100%;
    height: 100%;
    position: relative;
    font-family: 'Dawning of a New Day', cursive;
    font-family: 'Noto Sans JP', sans-serif;
    font-family: 'Poppins', sans-serif;
    overflow: hidden;
}

a{ /* メニュー */
    text-decoration:none; 
    font-size: 3vw;
    line-height: 3em;
}

/* メニューリスト */

.hide {
    position: absolute;
    text-align: center;
    right: 8.5vw;
    top: 24vw;   
    opacity: 0;
    }   
    
.hide ul li a{
    color: rgb(107, 107, 107);
}

.show { /* メニューリスト_js切り替え */
    opacity: 1;
    }

.menu{ /* ハンバーガーマーク */
	height:10vw;
	width:10vw;
	position: absolute;
    top: 10vw;
    right: 10vw;
}

.click_mb{ /* クリックミー_モバイル用 */
    position: absolute;
    width: 30vw;
    top: 50vw;
    left: 15vw;
    rotate: 4deg;
}

.click_pc{/* クリックミー_PC用 */
    display: none;
}

h3{
    position: absolute;
    font-size: 2vw;
    line-height: 2.5vw;
    top:22vw ;
    left: 12vw;
    transform: rotate(7deg);
}

h1{ /* Hamano Design */
    width: 60vw;
    margin: 0 auto;
    text-align: center;
}

.tytle{ /* hamano designタイトル */
    position: absolute;
    width: 100%;
    top: 160vw;
    font-size: 7vw;
    justify-content: center;
}

.rapper{ /*幅調整 */
    width: 90vw;
    margin: 0 auto;
    text-align: center; 
}

main{
    position: absolute;
    top: 180vw;
    width: 100vw;
    margin: 0 auto;
}

.cap{
    width: 80%;
    margin: 0 auto;
}

p{
    text-align: center;
    font-size: 2vw;
    line-height: 4vw;
}


.line img{
    position: absolute;
    width: 15%;
    top: 50vw;
    left: 70vw;
    rotate: 4deg;
}

/* ====================================================================
    くまのアニメーション
=====================================================================*/

.ani { /* アニメーション（クマ）の大きさ */
    width: 90%;
    left: 1vw;
    height: 90vw;
    margin: auto;
    position: relative;
    top: 60vw;
}

.bb {
    position: absolute;
    width: 40%;
    /* height: 50%; */
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

/* ============================ あたま ======================== */

.bh{
    position: absolute;
    width: 70%;
    top: 10%;
    left: 50%;
    /* transform: translateX(-50%) rotate(15deg); */
    transition-timing-function: ease-in-out;
    animation:bh 2s infinite;
    transform-origin: bottom;
}

@keyframes bh {
    0% {
        transform: translateX(-50%) rotate(5deg);
    }

    50% {
        transform: translateX(-50%) rotate(-5deg);
    }

    100% {
        transform: translateX(-50%) rotate(5deg);
    }
}

/* ============================ 右手 ======================== */

.bra{
    position: absolute;
    width: 40%;
    top: 54%;
    left: 3%;
    transform-origin: right;
    transition-timing-function: ease-in-out;
    animation:bra 2s infinite;
    transition-delay: 2s
}

@keyframes bra {
    0% {
        transform: translateY(20%) translateX(10%) rotate(60deg);
    }

    50% {
        transform: translateY(-20%) translateX(-10%)  rotate(-60deg);
    }

    100% {
        transform: translateY(20%) translateX(10%)  rotate(60deg);
    }
}

/* ============================ 左手 ======================== */

.bla{
    position: absolute;
    width: 30%;
    top: 66%;
    right:12%;
    transform-origin: left;
    transition-timing-function: ease-in-out;
    animation:bla 2s infinite;
}

@keyframes bla {
    0% {
        transform: rotate(5deg);
    }

    50% {
        transform: rotate(-5deg);
    }

    100% {
        transform: rotate(5deg);
    }
}

/* ============================= 目 ========================= */

.be{
    position: absolute;
    width: 28.5%;
    top: 29.5%;
    right: 35.8%;
    transform-origin: bottom;
    transition-timing-function: ease-in-out;
    animation:be 2s infinite;
}

@keyframes be {
    0% {
        transform: translateX(9%) translateY(12%) rotate(4deg);
    }

    50% {
        transform: translateX(-11%) translateY(-12%) rotate(-5deg);
    }

    100% {
        transform: translateX(9%) translateY(12%) rotate(4deg);
    }
}
.be img{
    display: block;
}

/* ============================ 左耳 ======================== */

.bre{
    position: absolute;
    width: 10%;
    top: 10%;
    right: 20%;
    transform-origin: bottom;
    transition-timing-function: ease-in-out;
    animation:bre 2s infinite;
}

@keyframes bre {
    0% {
        transform: translateX(60%) translateY(35%) ;
    }

    50% {
        transform: translateX(-60%) translateY(-35%) ;
    }

    100% {
        transform: translateX(60%) translateY(35%) ;
    }
}

/* ============================ 右耳 ======================== */

.ble{
    position: absolute;
    width: 10%;
    top: 10%;
    left: 20%;
    transform-origin: bottom;
    transition-timing-function: ease-in-out;
    animation:ble 2s infinite;
}

@keyframes ble {
    0% {
        transform: translateX(70%) translateY(-40%) ;
    }

    50% {
        transform: translateX(-70%) translateY(40%) ;
    }

    100% {
        transform: translateX(70%) translateY(-40%) ;
    }
}

/* ============================= 口 ======================== */

.bm{
    position: absolute;
    width: 8%;
    top: 37.5%;
    left: 46%;
    transform-origin: bottom;
    transition-timing-function: ease-in-out;
    animation:bm 2s infinite;
}

@keyframes bm {
    0% {
        transform: translateX(25%) translateY(10%) rotate(10deg);
    }

    50% {
        transform: translateX(-25%) translateY(-10%) rotate(-10deg);
    }

    100% {
        transform: translateX(25%) translateY(10%) rotate(10deg);
    }
}

.bm img{
    display: block;
}

/* ============================ 子グマ ======================= */

.cbb{
    z-index: -1;
    position: absolute;
    width: 19%;
    top: 76.5%;
    left: 25%;
    transform-origin: bottom;
    transition-timing-function: ease-in-out;
    animation:cbb 2s infinite;
}

@keyframes cbb {
    0% {
        transform: translateY(0%) translateX(-20%) rotate(-25deg);
    }

    50% {
        transform: translateY(0%) translateX(10%)  rotate(25deg);
    }

    100% {
        transform: translateY(0%) translateX(-20%)  rotate(-25deg);
    }
}

/* ====================================================================
    雪のアニメーション
=====================================================================*/

.snow_show1{ /*雪の色*/
    color: snow;  /*雪の大きさ*/
    font-size: 10px; /*初期位置*/
    position: fixed;
    top: -5%;
    text-shadow: /*雪を適当な幅で降らせる*/
    5vw   -100px 2px,
    10vw  -400px 3px,
    20vw  -500px 4px,
    30vw  -580px 1px,
    39vw  -250px 2px,
    42vw  -340px 5px,
    56vw  -150px 2px,
    63vw  -180px 0,
    78vw  -220px 4px,
    86vw  -320px 9px,
    94vw  -170px 7px;
    animation: roll 5s linear infinite;  /*雪アニメーション1*/
  }
    
  .snow_show2 {animation: anim 8s linear infinite;} /*2つめの雪アニメーション*/
  
  @keyframes roll {
      0% {transform:rotate(0deg);}
     90% {opacity:1;}
     100% {transform:rotate(20deg);top:100%;opacity:0;}
  }

  @keyframes anim {
    100% {color:transparent;top:150%;}
  }

  .snow_none{
    display: none;
  }

  .drone{
    position: absolute;
    top: 10vw;
    left: 20vw;
    width: 10vw;
    fill:#60B99A;
    animation: 3.5s Roll ease-in-out infinite;
    }
    
    .drone span{
    display:block;
    animation: FloatHorizontal 7.0s ease-in-out infinite alternate;
    }
    
    .drone img{
    animation: FloatVertical 6.0s ease-in-out infinite alternate;
    }
    
    @keyframes Roll {
    0% { transform: rotateZ(15deg) scale(0.9); }
    50% { transform: rotateZ(-15deg) scale(1.0); }
    100% { transform: rotateZ(15deg) scale(0.9); }
    }
    
    @keyframes FloatHorizontal {
    0% { transform:translate3d(5vw,0,0); }
    50% { transform:translate3d(-5vw,0,0); }
    100% { transform:translate3d(5vw,0,0); }
    }
    
    @keyframes FloatVertical {
    0% { transform:translate3d(0,5vw,0); }
    50% { transform:translate3d(0,-5vw,0); }
    100% { transform:translate3d(0,5vw,0); }
    }

    .drone:active{
        @keyframes FloatVertical {
            0% { transform:translate3d(0,5vw,0); }
            50% { transform:translate3d(0,-5vw,0); }
            100% { transform:translate3d(0,*15vw,0); }
    }
        
}

footer{
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 6pt;
    margin-top: 80%;
}

/* ====================================================================
    pc用 画面幅641px以上
=====================================================================*/

@media screen and (min-width: 641px){

    /* メニューリスト */

    body{
        height: 100vw;
    }

    a{
        text-decoration:none; 
        font-size: 1vw;
        line-height: 3em;
    }

    .hide {
        right: 4.5vw;
        top: 11vw;   
    }

    .menu{ /* ハンバーガーマーク */
        height:5vw;
        width:5vw;
        top: 5vw;
        right: 5vw;
    }

    .tytle{ /* hamano designタイトル */
        top: 44vw;
        font-size: 3vw;
    }

    main{        
        top: 52vw;
    }

    p{
        font-size: 0.8vw;
        line-height: 2.5vw;
        color: rgb(108, 108, 108);
    }

    .ani { /* アニメーション（クマ）の大きさ */
        top: 7vw;
        width: 35%;
        height: 35%;
    }
    .click_mb{
        display: none;
    }

    .click_pc{
        display: block;
        position: absolute;
        width: 10vw;
        top: 25vw;
        left: 20vw;
    }

    .drone{
        top: 10vw;
        left: 20vw;
        width: 5vw;
    } 

    footer{
        margin-top: 15%;
    }

    .line img{
        position: absolute;
        width: 7%;
        top: 23vw;
        left: 75vw;
        rotate: 4deg;
    }

}   

/* ====================================================================
    pc用 画面幅800px以上
=====================================================================*/

@media screen and (min-width: 800px){
    /* メニューリスト */

    .hide {
        right: 5vw; 
    }
}

/* ====================================================================
    pc用 画面幅1000px以上
=====================================================================*/

@media screen and (min-width: 800px){
    /* メニューリスト */

    .hide {
        right: 5.5vw;  
    }
}

























/* h1 {

    transform-origin:right;
    animation:sample 2s linear infinite;
    }
    
    
    @keyframes sample {
          from {
    
          transform:translate(-100%) scale(1);
    }
    
          50% {
    
          transform:translate(15%) scale(1);
    }
    
          65% {
    
          transform:translate(15%) scale(0.6,1.2);
    }
    
          80% {
    
          transform:translate(15%) scale(1);
    }
    
          to {
    
          transform:translate(15%) scaleX(1);
    }
    
          }
     */
    

