@charset "UTF-8";
header { position: sticky; /*固定する*/ position: -webkit-sticky; /*Safari用ベンダープレフィックス*/ top: 0; /*ブラウザの上からの距離はゼロ*/ z-index: 9999; }

.act01 th { width: 30%; text-align: center; }

.h1set { margin-top: 0; font-size: 1rem; text-align: center; color: #f5f8fc; background-color: #4b96dd; }

table.table01 { width: 100%; border-right: #3EB1C6 solid 1px; border-collapse: collapse; }

table.table01 thead th { background: #3EB1C6; color: #FFF; padding: 10px 15px; border-right: #FFF solid 1px; border-bottom: #FFF solid 1px; }

table.table01 thead th:last-child { border-right: #3EB1C6 solid 1px; }

table.table01 tbody th { background: #3EB1C6; color: #FFF; padding: 10px 15px; border-bottom: #FFF solid 1px; vertical-align: top; }

table.table01 tbody tr:last-child th { border-bottom: #3EB1C6 solid 1px; }

table.table01 tbody td { background: #FFF; padding: 10px 15px; border-left: #3EB1C6 solid 1px; border-bottom: #3EB1C6 solid 1px; vertical-align: top; }

table.table02 { width: 100%; border-right: #3EB1C6 solid 1px; border-collapse: collapse; }

table.table02 thead th { background: #3EB1C6; color: #FFF; padding: 10px 15px; border-right: #FFF solid 1px; border-bottom: #FFF solid 1px; }

table.table02 thead th:last-child { border-right: #3EB1C6 solid 1px; }

table.table02 tbody th { background: #3EB1C6; color: #FFF; padding: 10px 15px; border-bottom: #FFF solid 1px; vertical-align: top; }

table.table02 tbody tr:last-child th { border-bottom: #3EB1C6 solid 1px; }

table.table02 tbody td { background: #FFF; padding: 10px 15px; border-left: #3EB1C6 solid 1px; border-bottom: #3EB1C6 solid 1px; vertical-align: top; }

table.table03 { width: 100%; border-right: #3EB1C6 solid 1px; border-collapse: collapse; }

table.table03 thead th { background: #3EB1C6; color: #FFF; padding: 10px 15px; border-right: #FFF solid 1px; border-bottom: #FFF solid 1px; }

table.table03 thead th:last-child { border-right: #3EB1C6 solid 1px; }

table.table03 tbody th { background: #3EB1C6; color: #FFF; padding: 10px 15px; border-bottom: #FFF solid 1px; vertical-align: top; }

table.table03 tbody tr:last-child th { border-bottom: #3EB1C6 solid 1px; }

table.table03 tbody td { background: #FFF; padding: 10px 15px; border-left: #3EB1C6 solid 1px; border-bottom: #3EB1C6 solid 1px; vertical-align: top; }

@media screen and (max-width: 640px) { table.table01 tbody th { display: block; }
  table.table01 tbody td { display: block; }
  table.table01 tbody td::before { content: attr(label); float: left; clear: both; font-weight: bold; }
  table.table01 tbody td p { padding-left: 6em; }
  table.table02 tbody th { display: block; }
  table.table02 tbody td { display: block; }
  table.table02 tbody td::before { content: attr(label); float: left; clear: both; font-weight: bold; }
  table.table01 tbody td p { padding-left: 6em; } }
@media only screen and (max-width: 640px) { .act01 { margin: 0 -10px; }
  .act01 th, .act01 td { width: 100%; display: block; border-top: none; }
  .act01 tr:first-child th { border-top: 1px solid #ddd; } }
tel { pointer-events: none; }

.card { display: block; margin-bottom: 20px; line-height: 1.42857143; background-color: #fff; border-radius: 2px; box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); transition: box-shadow .25s; }

.banner { display: block; margin-bottom: 20px; line-height: 1.42857143; background-color: #fff; border-radius: 2px; box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); transition: box-shadow .25s; }

.card:hover { box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }

.img-card { width: 100%; height: 200px; border-top-left-radius: 2px; border-top-right-radius: 2px; display: block; overflow: hidden; }

.img-banner { width: 100%; height: 200px; border-top-left-radius: 2px; border-top-right-radius: 2px; display: block; overflow: hidden; }

.img-card img { width: 100%; height: 200px; object-fit: cover; transition: all .25s ease; }

.img-banner img { width: 100%; height: 100%; object-fit: fill; transition: all .25s ease; }

.card-content { padding: 15px; text-align: left; }

.card-title { margin-top: 0px; font-weight: 700; font-size: 1.5rem; }

.card-title a { color: #000; text-decoration: none !important; }

.card-read-more { border-top: 1px solid #D4D4D4; }

.card-read-more a { text-decoration: none !important; padding: 10px; font-weight: 600; text-transform: uppercase; }

#page-top { position: fixed; bottom: 20px; right: 20px; font-size: 5rem; }

#page-top a { text-decoration: none; color: #33ccff; width: 100px; padding: 30px 0; text-align: center; display: block; border-radius: 5px; }

#page-top a:hover { text-decoration: none; }
