@charset "utf-8";
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
img{
    width: 100%;
    vertical-align: bottom;
}
html{
    font-size: 62.5%;
}
.abril-fatface-regular {
    font-family: "Abril Fatface", serif;
    font-weight: 400;
    font-style: normal;
  }
  .kaisei-opti-regular {
    font-family: "Kaisei Opti", serif;
    font-weight: 400;
    font-style: normal;
  }
  
  


body{
    font-size: 16px;
}

/* header */
header{
    position: relative;
    width: 100vw;
}
.head-p{
    width: 100vw;

    text-align: center;
    font-size: 140px;  
    background: url(../img/coffee.jpg);
    background-clip: text;/*画像を切り抜く指定*/
    background-clip: text;/*画像の位置を決める　ベンダープレフィックスもいれておきます*/
    color: transparent;/*テキスト透過*/
    background-size: contain;
    background-position: center;/*画像の位置を決める*/
}
h1{
    background: #fff;
}
/* main */
/* container */
.container{
    height: 100vh;
    position: relative;
    top: 0;
    left: 0;
    background: url(../img/news2.jpg) no-repeat;
    background-size: cover;
}
/* background */
.drop-shadow{
    position: relative;
    filter: drop-shadow(0 0 10px white);
}
.drop-shadow::after{
    position: absolute;
    content: '';
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    box-shadow: inset 0 0 10px 8px white;
}
.grad {
    position: absolute;
    top: 290px;
    left: 0;
    z-index: 1;
    height: 100px;
    width: 100%;
    background: linear-gradient(#fff,#ffffffab, #ffffff00);
  }
  .grad2 {
    position: absolute;
    top: 1020px;
    z-index: 1;
    height: 80px;
    width: 100%;
    background: linear-gradient(#ffffff00,#ffffffab,#fff);

  }
/* text */
.text-box{
    width: 100vw;
    a{
        text-decoration: none;
        transition: all 0.3s ease 0s;
    }
    a:hover{
        cursor: pointer;
        transform: scale(1.2);
        color: rgb(163, 5, 5);
    }
}
.text-box dt{
    font-size: 200%;
}
.text-box dd{
    font-size: 100%;
}
.text-box .text1 a{
    position: absolute;
    width: 40%;
    top: 5%;
    left: 3%;
    z-index: 10;
    color: rgb(77, 49, 0);
    
}
.text-box .text2 a{
    position: absolute;
    width: 50%;
    top: 38%;
    left: 51%;
    z-index: 10;
    color: moccasin;
}
.text-box .text3 a{
    position: absolute;
    width: 43%;
    top: 65%;
    left: 3%;
    z-index: 10;
    color: rgb(77, 49, 0);
}
.click{
    position: relative;
    font-size: 18px;
    z-index: 10;
    opacity: 0; /* 初めは透明に設定 */
    transform: translateY(100%); /* 下からスライドするために位置を下に設定 */
    animation: fadeInFromBottom 3s infinite; /* フェードインアニメーションの設定 */
  }
  
  @keyframes fadeInFromBottom {
    to {
      opacity: 1; /* アニメーション終了時に完全に表示 */
      transform: translateY(0); /* アニメーション終了時の位置 */
    }
  }
.text1,.text2,.text3{
    margin: 100px 30px;
    dd{
        text-align: center;
    }
}
.bean-icon{
    width: 10%;
}

.under-line{
    width: 50%;
    border-bottom: 3px solid #000;
    text-align: center;
    margin: 0 auto;
    img{
        width: 15%;
    }
    dt{
        font-size: 180%;
    }
}
@media screen and (min-width: 767px){
    .text1,.text2,.text3{
        margin: 100px 30px;
        dd{
            text-align: center;
            margin: 0 100px;
        }
    }
}
footer{
    display: flex;
    justify-content: space-between;
    background: orangered;
}
.home{
    display: block;
    margin: 10px 20px;
    padding: 20px;
    text-decoration: none;
    border-radius: 5px;
    align-items: center;
    justify-content: center;
    color: #333333;
    background-color: rgb(255, 68, 0);
    border-radius: 3px;
    box-shadow: inset -5px -5px 10px 0px rgba(255, 255, 255, 0.5), inset 5px 5px 10px 0px rgba(0, 0, 0, 0.3);
  }
.next{
    display: block;
    margin: 10px 20px;
    padding: 20px;
    text-decoration: none;
    background: orangered;
    border-radius: 5px;
}