/* =========================================
repository
========================================= */

.area_repository{
  max-width:800px;
  margin:0 auto;
  padding-top:50px;

}


/* =========================================
レポジトリタイトル（概要）
========================================= */

.repository_intro_title{
  position:relative;

  margin:0 0 20px;
  padding-bottom:14px;

  font-size:3.4rem;
  font-weight:700;
  line-height:1.3;

  color:#003a70;
}

.repository_intro_title::after{
  content:"";

  position:absolute;
  left:0;
  bottom:0;

  width:100%; 
  height:4px;

  border-radius:999px;

  background:#005bac;
}

/* スマホ */
@media screen and (max-width:767px){
  .repository_intro_title{
    font-size:2.6rem;
    padding-bottom:12px;
  }

  .repository_intro_title::after{
    width:160px;
    height:3px;
  }
}

/* =========================================
block
========================================= */

.repository_block{
  margin-bottom:80px;
}

.repository_block .ttl_repository{
  position:relative;
  padding-left:16px;
}

.repository_block .ttl_repository::before{
  content:"";

  position:absolute;
  left:0;
  top:0.2em;

  width:6px;
  height:1.2em;

  background:#005bac;
  border-radius:4px;
}

.repository_lead{
  margin:0 0 18px;

  font-size:1.6rem;
  line-height:1.8;

  color:#222;
}
/* =========================================
title
========================================= */

.ttl_repository{
  position:relative;

  margin:0 0 20px;
  padding-bottom:12px;

  font-size:2.5rem;
  font-weight:700;
  line-height:1.4;

  color:#003a70;
}

.ttl_repository::after{
  content:"";

  position:absolute;
  left:0;
  bottom:0;

  width:100%;
  height:2px;

  background:#d7e3f0;
}


/* =========================================
list
========================================= */
.list_repository{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.list_repository li{
  flex:none;
}

.list_repository li a{
  position:relative;
  display:block;

  padding:24px 56px 24px 24px;

  background:#f8fbff;
  border:1px solid #c8d9ec;
  border-radius:12px;

  text-decoration:none;
  color:inherit;

  transition:background-color .2s ease,
             border-color .2s ease;
}

.list_repository li a:hover{
  background:#e8f2fc;
  border-color:#a9c4e1;
}

/* 矢印 */

.list_repository li a::after{
  content:'';
  position:absolute;
  right:20px;
  top:50%;

  width:10px;
  height:10px;

  border-top:2px solid #7b8794;
  border-right:2px solid #7b8794;

  transform:translateY(-50%) rotate(45deg);
}

.list_repository li a::before{
  right:28px;
}

.list_repository li a::after{
  right:20px;
}

.list_repository li a:hover::before,
.list_repository li a:hover::after{
  border-color:#005bac;
}

.repository_name{
  margin:0 0 10px;

  font-size:2rem;
  font-weight:700;
  line-height:1.4;

  color:#003a70;
}

.repository_note{
  margin:0;

  font-size:1.7rem;
  line-height:1.7;

  color:#5b6b7c;
}

/* =========================================
旧世代レポジトリ
========================================= */

.repository_old{
  margin-top:28px;
  padding-top:24px;

  border-top:1px solid #d7e3f0;
}

.ttl_repository_old{
  display:flex;
  align-items:center;

  margin:0 0 12px;

  font-size:1.8rem;
  font-weight:700;

  color:#4b5563;
}

.ttl_repository_old::before{
  content:"";

  width:4px;
  height:1.1em;

  margin-right:8px;

  border-radius:999px;
  background:#9aa8b8;
}

.list_repository_old{
  margin:0;
  padding:0;

  list-style:none;
}

.repository_old_note{
  margin:0 0 10px;
  font-size:1.6rem;
  color:#4b5563;
}

.list_repository_old li{
  margin-bottom:8px;
}

.list_repository_old li:last-child{
  margin-bottom:0;
}

.list_repository_old a{
  position:relative;

  display:inline-block;

  padding-left:14px;

  color:#4b5563;
  text-decoration:none;

  line-height:1.8;
}

.list_repository_old a::before{
  content:"›";

  position:absolute;
  left:0;

  color:#4b5563;
  font-weight:700;
}

.list_repository_old a:hover{
  color:#003a70;
  text-decoration:underline;
}