/* ----------------------------------------
基本調整
---------------------------------------- */
.c-article p {margin:100px 0 0;}

/* ----------------------------------------
table
---------------------------------------- */
.c-article table {
  width: 100%;
  font-size:1.6rem;
  line-height: 1.75;
  margin:40px 0 120px;}

.c-article table th,table td {
  padding:20px 40px;
  border: 1px solid #e5ebeb;
  border-collapse: collapse;}

.c-article table th {
  width:250px;
  background: #f2f6f6;
  text-align: left;
  vertical-align: top;
}


/* ----------------------------------------
table内コンテンツ調整
---------------------------------------- */
.c-article table ol {
  font-size:1.6rem;
  line-height: 1.75;
  margin:0 0 0 20px;
  list-style-type: decimal;
}
.c-article table ol li {margin-bottom:5px;}
.c-article table dl {
  display: flex;
  flex-wrap: wrap;
}

.c-article table dl dt {width:3em;}
.c-article table dl dd {width:calc(100% - 3em);}



/* ----------------------------------------
地図ボタン
---------------------------------------- */
.c-article .add {position: relative;}

a.map {color:#008b56;}

.map {
  position: absolute;
  top:40px;
  right:40px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 0 30px;
  padding: 0 6px 0 0;
  width: 100px;
  height: 30px;
  border: 1px solid #008b56;
  border-radius: 40px;
  color: #008b56;
  font-size: 1.6rem;
  font-weight: bold;
  text-decoration: none;
  transition: background-color 0.2s, border 0.2s, color 0.2s;
}

.map.hover {
  background-color: #008b56;
  border-color: #fff;
  color: #fff;
}

.map::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20%;
  width: 8px;
  height: 8px;
  border-top: 2px solid #008b56;
  border-right: 2px solid #008b56;
  transform: rotate(45deg) translateY(-50%);
  transition: border-top 0.5s ease, border-right 0.5s ease;
}

.map.hover::after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
