@charset "utf-8";
/* ----------------------------------
  override
---------------------------------- */
.l-header
{
  background-color: #ffffff;
}

.mv-wrap_bg
{
  transition: ease .4s opacity;
}

.catch
{
  padding-bottom: 150px;
}
@media screen and (max-width: 768px)
{
  .catch
  {
    padding-bottom: 150px;
  }
}

/* ----------------------------------
  .cont-banner
---------------------------------- */
.cont-banner
{
  position: relative;
  z-index: 3;
  padding-inline: 20px;
  background-color: #ffffff;
}
@media screen and (max-width: 768px)
{
  .cont-banner
  {
    padding-inline: 20px;
  }
}



.cont-banner_inner
{
  max-width: 980px;
  margin-inline: auto;
  padding-block: 90px 100px;
}
@media screen and (max-width: 768px)
{
  .cont-banner_inner
  {
    max-width: 480px;
    padding-block: 60px 65px;
  }
}



.cont-banner_item
{
  border: 1px solid #d0d0d0;
  background-color: #ffffff;
}
.cont-banner_item.-history
{
  border-color: #f0f0f0;
  background-color: #f0f0f0;
}
.cont-banner_item:nth-child(n+2)
{
  margin-top: 20px;
}
@media screen and (max-width: 768px)
{
  .cont-banner_item:nth-child(n+2)
  {
    margin-top: 15px;
  }
}



.cont-banner_item-inner
{
  display: flex;
  gap: 10px;
  align-items: center;
  opacity: 1;
  position: relative;
  padding-inline: 50px;
  transition: ease .4s opacity;
}
@media screen and (max-width: 768px)
{
  .cont-banner_item-inner
  {
    gap: 5px;
    padding: 20px 10px;
  }
  .cont-banner_item-inner:where(.-lineup *)
  {
    padding-block: 30px 10px;
  }
}


.cont-banner_item-image
{
  width: 50%;
  max-width: 360px;
}
@media screen and (max-width: 1023px)
{
  .cont-banner_item-image
  {
    width: 35%;
  }
}

@media screen and (max-width: 768px)
{
  .cont-banner_item-image
  {
    width: 50%;
    max-width: 160px;
    margin-left: -10px;
  }
}


.cont-banner_item-main
{
  flex: 1;
  padding-block: 20px;
}
@media screen and (max-width: 768px)
{
  .cont-banner_item-main
  {
    padding-block: 10px;
  }
}


.cont-banner_item-lead
{
}
.cont-banner_item-title
{
}


.cont-banner_item-title:where(.-history *)
{
  font-weight: 500;
  font-size: 2.4rem;
}
.cont-banner_item-lead:where(.-history *)
{
  margin-top: 5px;
  font-size: 1.6rem;
}
.cont-banner_item-lead:where(.-history *) span
{
  display: inline-block;
}

@media screen and (max-width: 768px)
{
  .cont-banner_item-title:where(.-history *)
  {
    font-size: 1.4rem;
  }
  .cont-banner_item-lead:where(.-history *)
  {
    margin-top: 5px;
    font-size: 1.2rem;
  }
  .cont-banner_item-lead:where(.-history *) span
  {
    display: inline;
  }
}



.cont-banner_item-title:where(.-lineup *)
{
  margin-top: 10px;
  font-size: 4.0rem;
}
.cont-banner_item-title:where(.-lineup *) img
{
  width: 200px;
  margin-top: -.2em;
  margin-left: 15px;
  vertical-align: middle;
}
.cont-banner_item-lead:where(.-lineup *)
{
  font-size: 2.0rem;
}
@media screen and (max-width: 768px)
{
  .cont-banner_item-title:where(.-lineup *)
  {
    margin-top: 10px;
    font-size: 2.6rem;
  }
  .cont-banner_item-title:where(.-lineup *) img
  {
    display: block;
    width: 140px;
    margin-top: 0;
    margin-left: 0;
  }
  .cont-banner_item-lead:where(.-lineup *)
  {
    position: absolute;
    top: 12px;
    left: 0;
    width: 100%;
    font-size: 1.4rem;
    text-align: center;
  }
}



.cont-banner_item-more
{
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 220px;
  margin-top: 30px;
  padding: 15px 20px;
  border: 1px solid #000000;
  border-radius: 13px;
  color: #000000;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  /* transition: ease .4s ; 
  transition-property: background , color, border;*/
}
.cont-banner_item-more:where(a:hover *)
{
  border-color: #005eb8;
  background-color: #005eb8;
  color: #ffffff;
}
@media screen and (max-width: 768px)
{
  .cont-banner_item-more
  {
    display: none;
  }
}