@charset "utf-8";

.header {
  background-color:rgb(255, 255, 255);
}

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

.title {
  height: calc(100vh - 110px);
  background-image: url(../images/shop/bg-main.jpg);
  background-repeat: no-repeat;
  background-size:contain;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #f8f8f8;
}

.title-text {
  text-align: center;
  color: #f8f8f8;
  text-shadow: 3px 3px  5px #131212;
}

.title h1 {
  font-family: 'Yuji Syuku', serif;
  font-size: 40px;
  font-weight: bold;
  margin-top: 80px;
}

.title h2 {
  font-family: 'Yuji Syuku', serif;
  font-size: 22px;
}

.title p{
  font-size: 20px;
  line-height: 1.5;
}

.lead p {
  font-size: 20px;
  text-align: center;
  margin-top: 30px;
  margin-bottom: 30px;
  line-height: 1.5;
}

.highlighter {
  background: linear-gradient(transparent 90%,#804318 10%);
}

.link-button-area-top {
  margin-top: 0px;
  text-align: justify;
  justify-content:center;
}

.link-button-top {
  display: block;
  font-size: 18px;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 280px;
	margin: auto;
	padding:0.8rem 1rem;
	font-weight: bold;
	border: 2px solid #5f5f5f;
	background: #d9d9d9;
	color: #000000;
	border-radius: 5px;
	transition: 0.5s;
	animation: move_d 2s infinite;
	box-shadow: 0px 5px 0 rgb(57, 57, 56);
	position: relative;
}

@keyframes move_d {
  0% {box-shadow:0px 5px 0 rgb(57, 57, 56); top: 0px;}
  10% {box-shadow:0 0 0 rgb(57, 57, 56); top: 5px;}
  20% {box-shadow:0px 5px 0 rgb(57, 57, 56); top: 0px;}
  30% {box-shadow:0 0 0 rgb(57, 57, 56); top: 5px;}
  40% {box-shadow:0px 5px 0 rgb(57, 57, 56); top: 0px;}
}
.link-button-top:hover {
color: #303030;
background: #fff;
border: 2px solid #5f5f5f;
}

.shop-contents {
  max-width: 100%;
}

.contents-list {
  display : grid;
  grid-template-columns: repeat(2, auto);
  column-gap: 5px;
  row-gap: 5px;
}

.contents-list a {
  display: block;
  transition-duration: 0.3s;
}

.contents-list a:hover {
  transform: scale(1.02);
}

.footer-logo {
  margin-top: 50px;
}

@media (max-width: 800px) {

  body {
    background-color:#ffffff
  }

  .title {
    max-height: 100%;
    background-image: url(../images/shop/bg-main-mobile.jpg);
    display: flex;
    background-size: cover;
  }
  
  .title-text {
    margin-bottom: 100px;
    text-align: center;
    color: #f8f8f8;
    text-shadow: 3px 3px  5px #131212;
  }

  .title-text h1{
    font-size: 28px;
  }

  .title-text p {
    font-size: 18px;
    margin-top: 15px;
  }

  .lead p {
    font-size: 17px;
    text-align: left;
    margin-top: 40px;
    margin-bottom: 30px;
    padding-left: 20px;
    padding-right: 20px;
    line-height: 1.5;
  }

  .shop-contents {
    max-width: 100%;
  }

  .contents-list {
    display : flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 0;
  }

  .contents-list a {
    display: block;
    transition-duration: 0.3s;
  }
  
  .contents-list a:hover {
    transform: scale(1.02);
  }

  .footer {
    margin-top: 50px;
  }
}