@charset "UTF-8";

/* 共通部分
================================ */
html {
  font-size: 100%;
}
body {
  font-family: 'Josefin Sans', "Yu Gothic Medium", "遊ゴシック Medium", YuGothic, "遊ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif;
  color:#000;
  font-weight: 200;/**/
}
a {
  text-decoration: none;
}
img {
  max-width: 100%;
}
.wrapper {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 4%; /*スマホ向け余白*/
}
footer {
  text-align: right;
}

/* ヘッダー
================================ */
.page-header {
  display: flex;
  justify-content: space-between;
}
.main-nav {
  display: flex;
  font-size: 1.25rem;
  margin-top: 34px;
  list-style: none;
}
.main-nav li {
  margin-left: 36px;
}
.logo {
  margin-top: 20px;
}

/* 下線aタグ
================================ */
.a-border {
  display: inline-block;
  position: relative;
  overflow: hidden;
  color: #000;
  text-decoration: none;
}
.a-border:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(148, 148, 148);
  transform: translate(-100%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  content: "";
}
.a-border:hover:after {
  transform: translate(0, 0);
}

/* HOME
================================ */
.home-content {
  text-align: center;
  margin-top: 10%;
}
.page-title {
  margin: 0 auto;
  font-size: 3rem;
}
/* タイトル消す -----------------*/
.hide-it {
  -moz-animation: cssAnimation 0s ease-in 2.5s forwards;
  /* Firefox */
  -webkit-animation: cssAnimation 0s ease-in 2.5s forwards;
  /* Safari and Chrome */
  -o-animation: cssAnimation 0s ease-in 2.5s forwards;
  /* Opera */
  animation: cssAnimation 0s ease-in 2.5s forwards;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
@keyframes cssAnimation {
  to {
      width:0;
      height:0;
      opacity:0.1;
  }
}
@-webkit-keyframes cssAnimation {
  to {
      width:0;
      height:0;
      opacity:0.1;
  }
}
/* バックグランド画像 -----------------*/
.big-bg {
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
#home {
   background-image: url(../images/main-bg.jpg);
   min-height: 100vh;
}

/* artist
================================ */
#artist {
  background-image: url(../images/artist.jpg);
  height: 200px;
  margin-bottom: 40px;
}
#artist .page-title {
  text-align: center;
  font-size: 2rem;
  margin-top: 70px;
  font-weight: 200; /**/
}
.artist-contents {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
.artist-title {
  margin-bottom: 15px;
}
.artist-title span {
  font-size: 1.1rem;
  font-weight: lighter;
}
.artist-description {
  font-size: 1.2rem;
}
.artist-grid {
  display: grid;
  gap: 26px;
  grid-template-columns: repeat(4, 1fr);
}
.artist-grid {
  margin-top: 20px;
}
.artist-works-title {
  text-align: center;
  font-size: 1.35rem;
  margin-top: 30px;
  margin-bottom: 30px;
}
.artist-works-title .under {
  border-bottom: solid 1px grey;
}


/* アーティスト内容 -----------------*/
article {
  width: 74%;
}
article img {
  margin-bottom: 20px;
}
.artist-item {
  width: 100%;
  height: 100%;
}



/* Works
================================ */
#works {
  background-image: url(../images/fe5.jpeg);
  height: 200px;
  margin-bottom: 40px;
}
#works .page-title {
  text-align: center;
  font-size: 2rem;
  margin-top: 70px;
  font-weight: 200;
}
.grid {
  display: grid;
  gap: 26px;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 3%;
  margin-bottom: 70px;
}
.item {
  margin-right: 40px;
  margin-bottom: 40px;
}
.item .cd {
  box-shadow: 3px 5px 8px -2px rgba(0, 0, 0, 0.3);
}
.grid .item p span {
  color: #464646;
}
.music-icon {
  background-color: rgb(243, 243, 243);
  margin-top: 6px;
  padding-bottom: 5px;
  text-align: center;
  border-top: 1px solid #bbb;
}
.music-icon a {
  color: #000;
}
.music-icon a:hover {
  opacity: 0.5;  
}
.music-icon ul {
  display: flex;
  list-style: none;
  justify-content: center;
}
.music-icon li {
  width: 10%;
  margin-top: 10px;
  margin-right: 10px;
  margin-bottom: 5px;
}
.music-icon li a:hover {
  opacity: 0.5;
}
.works-detail {
  margin-top: 5px;
}

/* Contact
================================ */
#contact {
  background-image: url(../images/red.jpg);
  height: 200px;
  margin-bottom: 40px;
}
.contact-contents {
  margin-top: 10%;
  text-align: center;
  height: 500px;
}
.contact-contents p {
display: flex;
justify-content: center;
align-items: center;
font-size: 1.3rem;
}
#contact .page-title {
  text-align: center;
  font-size: 2rem;
  margin-top: 70px;
  font-weight: 200;
  color: #fff;
}
.sp-only {
  display: none;
}

/* サイド部分 -----------------*/
aside {
  width: 22%;
}
.sub-title {
  font-size: 1.25rem;
  margin-bottom: 2px;
}
.embed-tunecore1 {
  margin-bottom: 50px;
}



/* ================================
レスポンシブ
================================ */
@media (max-width: 600px) {
  .page-title {
    font-size: 2.5rem;
    font-weight: 200;
  }
  /* header */
  .main-nav {
    font-size: 1rem;
    margin-top: 10px;
  }
  .main-nav li {
    margin: 0 20px;
  }
  .home-content {
    margin-top: 20px;
  }
  .page-header {
    flex-direction: column;
    align-items: center;
  }
  /* artist */
  .artist-contents {
    flex-direction: column;
  }
  article,
  aside {
    width: 100%;
    margin-top: 2px;
  }
  #artist {
    height: 100px;
  }
  #artist .page-title {
    margin-top: 5px;
  }
  .artist-description {
    font-size: 1.2rem;
  }
  .sub-title {
    font-family: Arial, "Yu Gothic Medium", "遊ゴシック Medium", YuGothic, "遊ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif;
  }
 .artist-grid {
    display: grid;
    gap: 26px;
    grid-template-columns: repeat(4, 1fr);
  }
  .artist-works-title {
    margin-top: 15px;
  }
   
  /* works */
  .grid {
    display: grid;
    gap: 26px;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 3%;
    margin-bottom: 70px;
  }
  #works {
    height: 100px;
  }
  #works .page-title {
    margin-top: 5px;
  }
  .music-icon li {
    width: 19%;
  }
  .item {
    margin-bottom: 20px;
  }

  /* contact */
  #contact {
    height: 100px;
  }
  .contact-contents {
    margin-top: 100px;
  }
  #contact .page-title {
    margin-top: 5px;
    color: #000;
  }
  .sp-only {
    display: block;
  }

}