h1 {
  text-align: center;
  color: #333;
  letter-spacing: .2em;
  font-size: 2.4em;
  font-weight: 800;
  margin-top: 30px;
  margin-bottom: 30px;
  line-height: 1.6;
}

h2 {
  text-align: left;
  color: #40aca7;
  letter-spacing: .2em;
  font-size: 2.0em;
  font-weight: 500;
  margin-top: 20px;
  margin-bottom: 40px;
  line-height: 1.6;
  padding: 0.5em;
  background: #ebf6f6;
  border-left: solid 5px #40aca7;/*左線（実線 太さ 色）*/
}

h3 {
text-align: center;
color: #40aca7;
letter-spacing: .2em;
font-size: 1.6em;
font-weight: 500;
margin-top: 20px;
margin-bottom: 40px;
line-height: 1.6;
}

h4 {
text-align: left;
letter-spacing: .2em;
font-size: 1.4em;
font-weight: 500;
margin-top: 20px;
margin-bottom: 20px;
line-height: 1.2;
color: #000;
}

p{
margin-bottom: 10px;
font-size: 16px;
}

.wrap {
    max-width: 960px;
    min-width: 0;
    padding: 0 5%;
    margin: 0 auto;
    position: relative;
}

a:link {
    color: #40aca7;
    text-decoration: none;
    transition: ease .1s all;
}

/*-------- 色指定 ---------*/
:root {
  --f-line:#205653;/*線の色*/
  --f-bg1:#40aca7;/*タイトル行の背景色*/
  --f-bg2:#ebf6f6;/*ストライプの背景色*/
}

.fem-table table{
color:var(--f-text);
text-align:center;
border:2px solid var(--f-line); 
background-color:white;
}

.fem-table table th{
border:1px dotted white;  
text-align:center;
}

.fem-table thead{
border-bottom:1px solid var(--f-line);
}

.fem-table table td{
border:1px dotted var(--f-line);  
text-align:left;
}

.fem-table thead{
color:white;
}

.fem-table th{
background-color:var(--f-bg1);
}

.fem-table tr:nth-child(even){
background-color:var(--f-bg2);
}