body {
  padding-top: 5rem;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #333;
}

/* =========================================================
A
========================================================= */
a {
  outline: none;
  -webkit-transition: 0.2s linear all;
  -moz-transition: 0.2s linear all;
  -o-transition: 0.2s linear all;
  transition: 0.2s linear all;
  color: #1fa3b0;
}

a:focus {
  outline: none;
}

.image-43 {
  position: relative;
  overflow: hidden;
}
.image-43:before {
  padding-top: 133%;
  display: block;
  content: "";
}
.image-43 img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  object-fit: cover !important;
}

@media (max-width: 576px) {
  .image-43:before {
    padding-top: 75%;
  }
}
@media (max-width: 576px) {
  .table-sp-vertical tbody > tr > td {
    width: 100%;
    display: block;
  }
}
.header-type-block, article.single-news h1,
article.simple h1, article.single .post-body h2,
article.page .post-body h2 {
  background-color: #91aec0;
  color: #FFF;
  padding: 0.5rem;
  font-size: 1.2rem;
  margin: 2.25rem 0 2rem;
}

.header-type-border-y, article.single-news .post-body h2,
article.simple .post-body h2, article.single .post-body h3,
article.page .post-body h3 {
  border: #1fa3b0 solid 1px;
  border-left: none;
  border-right: none;
  color: #1fa3b0;
  font-size: 1.2rem;
  font-weight: bold;
  margin: 2.25rem 0 2rem;
  padding: 1rem 0;
}

.header-type-little-big, article.single-news .post-body h3,
article.simple .post-body h3, article.single .post-body h4,
article.page .post-body h4 {
  font-size: 1.2rem;
  margin: 2.25rem 0 2rem;
  font-weight: bold;
}

.btn {
  border-radius: 0;
  padding: 0.55rem 0.75rem;
}

.btn-primary {
  background-color: #1fa3b0 !important;
  border-color: #1fa3b0 !important;
}

#header.top {
  padding-bottom: 2rem;
}
#header.top .navbar {
  padding: 2rem 1rem;
}
#header.top .navbar-brand img {
  height: 50px;
  margin-top: -1rem;
  -webkit-transition: 0.2s linear all;
  -moz-transition: 0.2s linear all;
  -o-transition: 0.2s linear all;
  transition: 0.2s linear all;
}

#header .navbar {
  background-color: #FFF !important;
}
#header .navbar-brand {
  position: relative;
  content: "";
}
#header .navbar-brand img {
  height: 60px;
  max-height: 100%;
  width: auto;
  top: -0.3125rem;
  -webkit-transition: 0.2s linear all;
  -moz-transition: 0.2s linear all;
  -o-transition: 0.2s linear all;
  transition: 0.2s linear all;
}
#header .navbar-brand:hover {
  opacity: 0.6;
}
#header .navbar-nav {
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  -ms-flex-direction: row !important;
  flex-direction: row !important;
}
#header .navbar-nav li a {
  display: block;
  padding: 0.5rem 0.5rem;
  color: #333;
}
#header .navbar-nav li a:hover {
  text-decoration: none;
  opacity: 0.8;
}

#footer {
  background-color: #ddd;
}
#footer .footer-contents {
  padding: 3rem 0;
}
#footer .copyright {
  text-align: center;
  padding: 2rem 0;
  border-top: 2px #FFF solid;
  position: relative;
}
#footer .info .name {
  font-weight: bold;
}
#footer .info table.c-onsultation-time {
  margin-top: 1rem;
  width: 100%;
  text-align: center;
}
#footer .info table.c-onsultation-time thead th:first-child,
#footer .info table.c-onsultation-time tbody td:first-child {
  text-align: left;
}
#footer .info .closed-day {
  text-align: right;
  margin-bottom: 1rem;
}
#footer .contact .title {
  font-weight: bold;
  text-align: center;
}
#footer .contact p {
  font-size: 0.9rem;
}
#footer .contact a.btn {
  display: block;
  margin: 1rem;
}
#footer .widget_nav_menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#footer .widget_nav_menu ul li a {
  display: block;
  color: #333;
  padding: 0.5rem 1rem;
  position: relative;
  font-size: 0.9rem;
}
#footer .widget_nav_menu ul li a:hover {
  text-decoration: none;
  opacity: 0.8;
}
.sns ul {
  list-style: none;
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
}
.sns li {
  padding: 0.5rem;
}
.sns a:hover {
  opacity: 0.6;
}
.sns img {
  max-width: 50px;
  height: auto;
}

#breadcrumb {
  border-top: 1px solid #eee;
  padding: 0.5rem 0;
  font-size: 0.8rem;
}
#breadcrumb ol.breadcrumb {
  background-color: transparent;
  padding: 0;
  margin: 0;
}
#breadcrumb ol.breadcrumb a {
  color: #777;
}
#breadcrumb ol.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  color: #999;
  content: ">";
}

.article-header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #f6f8f9;
  position: relative;
  margin-bottom: 2rem;
  height: 390px;
  overflow: hidden;
}
.article-header .title-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 2;
  background-color: #1fa3b0;
  color: #FFF;
  width: 130px;
  height: 130px;
}
.article-header .title-box h1 {
  margin: 0;
  padding: 0;
  font-size: 0.8rem;
}
.article-header img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  object-fit: cover;
}

@media (max-width: 576px) {
  .article-header {
    height: 30vh;
  }
}
article.post .post-body p {
  padding: 0;
  margin: 0 0 2rem;
  letter-spacing: 0.05em;
  line-height: 1.8em;
}
article.post .post-body img {
  max-width: 100%;
  height: auto;
}

article.single .post-body h2,
article.page .post-body h2 {
  text-align: center;
}
article.single .post-body h3,
article.page .post-body h3 {
  text-align: center;
}
article.single-news h1,
article.simple h1 {
  margin-top: 0;
}
ul.news {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul.news li {
  margin-bottom: 2rem;
}
ul.news li a {
  color: #333;
}
ul.news li a .date {
  margin-bottom: 0.5rem;
}
ul.news li a:hover {
  text-decoration: none;
}
ul.news li a:hover .title {
  text-decoration: underline;
}

.posts a.post {
  display: block;
  margin-bottom: 1rem;
  background-color: #FFF;
  color: #333;
  position: relative;
}
.posts a.post:hover {
  text-decoration: none;
  transform: translateY(-3px);
  box-shadow: 0px 3px 18px 3px rgba(0, 0, 0, 0.08);
}
.posts a.post .thumbnail-container {
  position: relative;
  overflow: hidden;
}
.posts a.post .thumbnail-container:before {
  padding-top: 52.3%;
  display: block;
  content: "";
}
.posts a.post .thumbnail-container img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  object-fit: cover;
}
.posts a.post .title {
  padding: 0.5rem;
  font-size: 1rem;
  overflow: hidden;
  text-overflow: ellipsis;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin-bottom: 0;
  background-color: rgba(255, 255, 255, 0.6);
}
.posts a.post .category {
  display: none;
}

.type-2 .posts.row {
  margin: 0 0.5rem 0 !important;
}
.type-2 .posts.row > div {
  padding: 0 0.5rem !important;
}
.type-2 .posts a.post {
  margin-bottom: 1rem;
}
.type-2 .posts a.post .title {
  background-color: #1fb571 !important;
  color: #FFF !important;
  right: 20% !important;
  text-align: left !important;
}
.type-2 .thumbnail-container:before {
  padding-top: 75% !important;
}

.sitemap .post-body > ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.sitemap .post-body > ul p {
  padding: 0;
  margin: 0;
}
.sitemap .post-body > ul > li {
  padding: 0;
  margin: 0;
  margin-bottom: 2rem;
}
.sitemap .post-body > ul > li > a {
  background-color: #f8f8f8;
  display: block;
  border: #888 1px solid;
  color: #333;
  font-size: 1.1rem;
  padding: 0.5rem 2rem;
  font-weight: bold;
}
.sitemap .post-body > ul > li > a:hover {
  background-color: #eee;
  text-decoration: none;
}
.sitemap .post-body > ul > li > ul {
  margin-top: 1rem;
  padding-left: 0.5rem;
}
.sitemap .post-body > ul > li > ul li {
  list-style: none;
  position: relative;
}
.sitemap .post-body > ul > li > ul li:before {
  display: block;
  content: "";
  border-bottom: #888 1px dashed;
  position: absolute;
  z-index: 1;
  height: 1px;
  left: 0;
  right: 0;
  top: 1rem;
}
.sitemap .post-body > ul > li > ul li ul {
  width: 100%;
}
.sitemap .post-body > ul > li > ul li > a {
  padding: 0.25rem;
  display: inline-block;
  color: #333;
  position: relative;
  z-index: 2;
  background-color: #FFF;
  padding-right: 2rem;
}

.post-body table > tbody > tr > th {
  white-space: nowrap;
}

.post-body > ol {
  padding-left: 1rem;
}

.post-body .table-th-25 th {
  width: 25%;
}

@media (max-width: 576px) {
  .post-body .table-sp th, .post-body .table-sp td {
    display: block;
    width: 100% !important;
    text-align: left !important;
    border: none !important;
  }

  .post-body .table-sp.table-bordered {
    border: none !important;
  }
}
.top-news-container {
  padding: 2rem 0;
}
.top-news-container + br {
  display: none;
}

.top-bottom-items .row {
  margin: 0;
}
.top-bottom-items .row > div {
  padding: 0;
}
.top-bottom-items a.top-bottom-item {
  position: relative;
  display: block;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.top-bottom-items a.top-bottom-item .title-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 2;
  background-color: #91aec0;
  color: #FFF;
  width: 100px;
  height: 100px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.top-bottom-items a.top-bottom-item:after {
  padding-top: 48%;
  display: block;
  content: "";
}
.top-bottom-items a.top-bottom-item img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  object-fit: cover;
}
.top-bottom-items a.top-bottom-item:hover {
  text-decoration: none;
  opacity: 0.8;
}
.top-bottom-items + p {
  display: none;
}

.top-posts-container {
  padding: 2rem 0;
}
.top-posts-container .row {
  margin: 0;
  padding: 0;
}
.top-posts-container .row > div {
  padding: 0;
}
.top-posts-container .posts .post {
  margin: 0;
}
.top-posts-container .posts .post .title {
  text-align: center;
}

.top-middle-items {
  background-color: #ddd;
  padding: 2rem 0;
}
.top-middle-items + p {
  display: none;
}
.top-middle-items .top-middle-item .thumbnail-container {
  overflow: hidden;
  position: relative;
}
.top-middle-items .top-middle-item .thumbnail-container:before {
  padding-top: 52.3%;
  display: block;
  content: "";
}
.top-middle-items .top-middle-item .thumbnail-container img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  object-fit: cover;
}
.top-middle-items .top-middle-item .title {
  text-align: center;
  margin: 2rem 0;
}
.top-middle-items .top-middle-item .title a {
  text-decoration: underline;
  font-weight: bold;
}
.top-middle-items .top-middle-item p {
  letter-spacing: 0.05em;
  line-height: 1.8em;
}

.first-view-container .item {
  position: relative;
  min-height: 75vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  align-items: normal;
  padding: 0 2rem;
}
.first-view-container .item .image-container {
  z-index: -1;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.first-view-container .item .image-container img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  object-fit: cover;
}
.first-view-container .item .catch-copy {
  color: #1fa3b0;
  color: #1fb571;
  font-size: 2.8rem;
  font-size: 13px;
  font-size: 3.4666666667vw;
  padding-bottom: 4rem;
  text-shadow: 3px 3px 1px rgba(0, 0, 0, 0.15);
  line-height: 1.5;
}
.first-view-container .item .catch-copy h1 {
  margin: 0;
  padding: 0;
  font-size: 100%;
}
.first-view-container .item .subtext {
  color: #1fa3b0;
}

@media (max-width: 576px) {
  .first-view-container .item {
    min-height: 30vh;
    padding: 0 1rem;
    overflow: hidden;
  }
  .first-view-container .item .catch-copy {
    font-size: 14px;
    font-size: 3.7333333333vw;
    line-height: 1.8;
    padding-bottom: 0;
  }
  .first-view-container .item .catch-copy h1 {
    line-height: 1.8;
  }
  .first-view-container .item .image-container {
    right: -3rem;
  }
}
.campaign-container {
  background-color: #1fb571;
  padding: 2rem 0;
}
.campaign-container + br {
  display: none;
}
.campaign-container .items {
  margin-bottom: 2rem;
}
.campaign-container .items .item {
  position: relative;
  display: block;
  overflow: hidden;
}
.campaign-container .items .item:hover {
  opacity: 0.6;
}
.campaign-container .items .item:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.campaign-container .items .item img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  object-fit: cover;
}
.campaign-container .items .item .title {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  text-align: center;
  padding: 0.5rem;
  background-color: rgba(255, 255, 255, 0.6);
  font-weight: bold;
}

.slick-dots {
  position: absolute;
  bottom: -30px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li.slick-active button {
  background-color: #999 !important;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 10px;
  height: 10px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  background-color: #555;
  border-radius: 50%;
}

ol .steps {
	margin: 0;
	padding: 2rem 0 0;	
}

.steps li {
	margin: 0;
	padding: 0;
}


#cc-body {
  padding-top: 0;
}

#cc-body div > article > h1 {
  display: none;
}

.cc-block {
  width: 800px;
  max-width: 100%;
  margin: 0 auto;
}


table.cc-tbl tr td:nth-of-type(2){
  text-align:left;
}
table.cc-tbl tr td:nth-of-type(3){
  text-align:left;
}






/*# sourceMappingURL=main.css.map */
