@charset "UTF-8";
/* CSS Document */


/* ページ内リンクの停止位置調整 */
.anchor_point {
  position: relative;
  top: -30px;
  visibility: hidden;
}

#pagetitle { width:100%; background:#f1f1f1; height:100px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end; }

#pagetitle .h1_txt { padding-bottom:10px; font-size:27px; font-weight:normal; }
#pagetitle .h1_txt a { padding-bottom:10px; font-size:27px; font-weight:normal; text-decoration:none; color:#000000; }

.h1_txt2 { font-size:18px; font-weight:normal; padding-left:15px; }

@media (max-width: 768px) { 
#pagetitle { width:100%; background:#f1f1f1; height:90px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end; }

#pagetitle .h1_txt { padding-bottom:10px; font-size:26px; font-weight:normal; }
#pagetitle .h1_txt a { padding-bottom:10px; font-size:26px; font-weight:normal; text-decoration:none; color:#000000; }
.h1_txt2 { font-size:16px; font-weight:normal; padding-left:15px; }
 }
@media (max-width: 576px) { 
#pagetitle { width:100%; background:#f1f1f1; height:80px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end; }

#pagetitle .h1_txt { padding-bottom:10px; font-size:26px; font-weight:normal; text-decoration:none; }
#pagetitle .h1_txt a { padding-bottom:10px; font-size:26px; font-weight:normal; color:#000000; }
.h1_txt2 { font-size:14px; font-weight:normal; padding-left:15px; }
 }
 
 .page_link {
  margin: 0;
  padding: 0;
  list-style: none;
}

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

.page_link a {
  position: relative;
  display: inline-block;
  padding-left: 16px;
  color: #107DB6;
  text-decoration: underline;
}

.page_link a::before {
  content: "›";
  position: absolute;
  left: 0;
  top: -4px;
  color: #29BCC8;
  font-size: 1.2em;
  font-weight: bold;
}

.page_link a:hover {
  color: #168c95;
  text-decoration: none;
}


.h2style { width:100%; background:#44c0c0; border-left:#348e8e solid 14px;  }
.h2style p { color:#FFFFFF; font-size:18px; padding:10px 0 10px 10px; }

.h3style { width:100%; background:url(../../images/h3icon.jpg) no-repeat left top ; background-position: 0px 4px ;  }
.h3style p { font-size:17px; padding:2px 0 0px 22px; font-weight: 600; letter-spacing: normal; }



/* olの数字表記を変える */
.maru_num {
  list-style: none;
  counter-reset: num;
  padding-left: 0;
}

.maru_num li {
  counter-increment: num;
  position: relative;
  padding-left: 3em;
}

.maru_num li::before {
  content: "（" counter(num) "）";
  position: absolute;
  left: 0;
}


/* table */


.tbl_01 { width: 100%; margin: 0 0 30px 0; }

.tbl_01 table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.tbl_01 th,
.tbl_01 td {
  border: 1px solid #bfbfbf;
  padding: 8px 15px;
  color: #000;
  line-height: 1.4;
}

.tbl_01 th {
  background: #d9d9d9;
  text-align: center;
  vertical-align: middle;
  font-size: 0.9em;
  font-weight: bold;
}

.tbl_01 td {
  background: #fff;
  font-size: 0.95em;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {

  .tbl_01 {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .tbl_01 table {
    width: 100%;
    min-width: 700px;
  }

}




.hr_01 { width:100%; border-bottom: solid #aaa 6px; border-top:0; border-left:0; border-right:0; margin:20px 0 20px 0; }

.hr_02 { width:100%; border-bottom: dashed #aaa 1px; border-top:0; border-left:0; border-right:0; margin:20px 0 20px 0; }

.hr_03 { width:100%; border-bottom: dashed #aaa 1px; border-top:0; border-left:0; border-right:0; margin:5px 0 20px 0; }



.lc_0 { letter-spacing: 0; }
.lc_1 { letter-spacing: 1px; }

.lh_130 { line-height: 130%; }
.lh_140 { line-height: 140%; }
.lh_150 { line-height: 150%; }
