@charset "UTF-8";

#model-course {
  width: 100%;
  padding: 8rem 0;
}
@media only screen and (max-width: 768px) {
  #model-course {
    padding: 4rem 0;
  }
}

#model-course nav {
  width: 96%;
  max-width: 1200px;
  margin: 0 auto;
}
#model-course ul {
  display: flex;
  flex-flow: row wrap;
  gap: 2rem;
  justify-content: center;
}
#model-course ul li {
  width: calc((100% - 4rem) / 3);
}
@media only screen and (max-width: 768px) {
  #model-course ul li {
    width: 90%;
  }
}
#model-course ul li a {
  display: block;
  position: relative;
  aspect-ratio: 3/2;
  overflow: hidden;
}
#model-course ul li a figure {
  height: 100%;
}
#model-course ul li a figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: 0.5s;
}
#model-course ul li a h3 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1em 0.7em;
  color: #fff;
  line-height: 1.4;
  transition: 0.5s;
}
@media only screen and (max-width: 768px) {
  #model-course ul li a h3 {
    font-size: 1.6rem;
  }
}
#model-course ul li a:hover img {
  transform: scale(1.1);
}
#model-course ul li.osaka a:hover h3 {
  background-color: rgba(112, 9, 9, 0.5);
}
#model-course ul li.osaka h3 {
  background-color: rgba(112, 9, 9, 0.9);
}
#model-course ul li.kyoto a:hover h3 {
  background-color: rgba(101, 106, 79, 0.5);
}
#model-course ul li.kyoto h3 {
  background-color: rgba(101, 106, 79, 0.9);
}
#model-course ul li.commingsoon a {
  pointer-events: none;
}
#model-course ul li.commingsoon a figure {
  background-color: #f4f4f4;
}
#model-course ul li.commingsoon a h3 {
  color: #93845e;
  background-color: rgba(244, 244, 244, 0.9);
}
@media only screen and (max-width: 768px) {
  #model-course ul li.commingsoon {
    display: none;
  }
}
