@charset "UTF-8";
* {
  font-family: 'Roboto', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
  /* font-family: 'Roboto','Noto Sans JP', sans-serif; */
}

a:hover img {
  opacity: .7;
}

.uk-navbar-container:not(.uk-navbar-transparent) {
  background: rgba(255, 255, 255, 0.85);
}

.uk-button-primary, a.uk-button-primary {
  background-color: #00a07a;
}

.uk-button-primary:focus, .uk-button-primary:hover {
  background-color: #00825a;
}

.uk-link, a,
.uk-navbar-toggle {
  color: #00a07a;
}

.uk-link-toggle:focus .uk-link, .uk-link-toggle:hover .uk-link, .uk-link:hover, a:hover,
.uk-navbar-toggle:hover {
  color: #00825a;
}

.uk-navbar-nav > li > a {
  color: #000;
}

.uk-offcanvas-bar {
  color: #000;
  background: #ffffff;
}

.uk-offcanvas-bar a {
  color: #00a07a !important;
}

.uk-offcanvas-bar .uk-close {
  color: #666666;
}

.uk-offcanvas-bar .uk-close:hover {
  color: #cccccc;
}

.uk-button-default, .uk-button-default.uk-active, .uk-button-default:active {
  background-color: #ffffff;
}

.uk-button {
  font-size: initial;
}

.uk-grid-divider > :not(.uk-first-column)::before {
  border-left: 1px dotted #333333;
}

.uk-logo img {
  width: 300px;
  height: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

@media (max-width: 960px) {
  .uk-logo img {
    width: 259px;
  }
}

.uk-logo.is-active img {
  width: 259px;
}

@media (max-width: 640px) {
  .uk-navbar-right {
    min-width: 130px;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

.c-toggle-menu {
  margin: 0 20px;
}

.c-sns {
  text-align: center;
}

.c-sns img {
  margin: 0 7px;
}

.uk-offcanvas-bar .c-sns {
  margin-top: 2em;
}

.c-contact {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
}

.c-contact a {
  font-size: .875rem;
  color: #ffffff;
  background-color: #00a07a;
  border-radius: 50%;
  width: 120px;
  height: 120px;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.c-contact a svg {
  margin-bottom: 3px;
}

.c-contact a:hover {
  text-decoration: none;
  background-color: #00825a;
}

.c-contact.is-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.c-contact.is-active a {
  width: 50px;
  height: 50px;
}

.c-contact.is-active a .uk-icon {
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.c-contact.is-active a .txt {
  display: none;
}

@media (max-width: 960px) {
  .c-contact {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .c-contact a {
    width: 50px;
    height: 50px;
  }
  .c-contact a .uk-icon {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  .c-contact a .txt {
    display: none;
  }
}

.subMenu.is-active {
  display: none;
}

.uk-offcanvas-bar nav {
  margin-top: 10px;
  margin-bottom: 30px;
}

@media (max-width: 640px) {
  .uk-offcanvas-bar nav {
    margin-top: 40px;
  }
}

/*footer*/
#c-pageTop {
  display: none;
  position: fixed;
  right: 20px;
  bottom: 20px;
  cursor: pointer;
  z-index: 1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #ffffff;
  background-color: rgba(61, 57, 57, 0.75);
  border-radius: 50%;
  width: 70px;
  height: 70px;
}

@media (max-width: 640px) {
  #c-pageTop {
    width: 50px;
    height: 50px;
  }
}

#c-pageTop svg {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1.75);
          transform: translate(-50%, -50%) scale(1.75);
}

.c-ground {
  background-color: #f3f1d8;
  padding: 45px 0;
  margin-top: 60px;
}

.c-ground .uk-container {
  max-width: 800px;
  position: relative;
}

.c-ground .uk-container::before {
  position: absolute;
  display: block;
  content: url(/assets/img/common/obj_ground.png);
  top: -200px;
  left: -18%;
}

@media (max-width: 960px) {
  .c-ground .uk-container::before {
    -webkit-transform-origin: top left;
            transform-origin: top left;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
    top: -170px;
    left: -13%;
  }
}

@media (max-width: 640px) {
  .c-ground .uk-container::before {
    -webkit-transform: scale(0.4);
            transform: scale(0.4);
    top: -140px;
    left: -3%;
  }
}

@media (max-width: 640px) {
  .c-ground .uk-container {
    text-align: center;
  }
  .c-ground .uk-container .uk-grid-divider .uk-width-1-1:nth-of-type(2) {
    margin-top: 20px;
  }
  .c-ground .uk-container .uk-grid-divider .uk-width-1-1:nth-of-type(2)::before {
    border: none;
  }
  .c-ground .uk-container .uk-grid-divider .uk-width-1-1:nth-of-type(2) .uk-button-large {
    padding: 10px 5px;
  }
  .c-ground .uk-container .c-logo {
    display: inline-block;
    max-width: 80%;
    margin-left: -1.5rem;
  }
  .c-ground .uk-container .c-logo img {
    width: 259px;
    height: 38px;
  }
}

.c-ground p {
  margin: .75rem 0 0;
}

.c-ground .uk-button-primary {
  font-size: 1.25rem;
  padding: 20px 40px;
  margin-bottom: 15px;
}

@media (max-width: 640px) {
  .c-ground .uk-button-primary {
    font-size: 1rem;
  }
}

.c-address {
  text-align: right;
}

@media (max-width: 840px) {
  .c-address {
    text-align: center;
  }
}

.c-tel {
  text-align: center;
  color: #00a07a;
}

.c-tel a {
  font-size: 1.87rem;
  line-height: 1.1;
  font-weight: bold;
  color: #000;
}

.c-tel span {
  vertical-align: bottom;
}

@media (min-width: 640px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

.c-page-title {
  text-align: center;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 960px) {
  .c-page-title {
    margin-top: 10px;
  }
}

.c-page-title + .uk-section {
  padding-top: 40px;
}

.c-page-title h1 {
  font-size: 2.125rem;
  font-weight: 500;
  position: relative;
  z-index: 1;
}

@media (max-width: 960px) {
  .c-page-title h1 {
    font-size: 2rem;
  }
}

@media (max-width: 640px) {
  .c-page-title h1 {
    font-size: 1.5rem;
  }
}

.c-page-title::before {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 343px;
  height: 171px;
  background: url(/assets/img/top/obj01.png) no-repeat right top;
  background-size: contain;
}

.c-page-title::after {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 178px;
  height: 157px;
  background: url(/assets/img/top/obj02.png) no-repeat;
  background-size: contain;
}

@media (max-width: 960px) {
  .c-page-title::before {
    max-width: 274px;
    height: 134px;
  }
  .c-page-title::after {
    max-width: 138px;
    height: 134px;
  }
}

@media (max-width: 640px) {
  .c-page-title {
    padding: 20px 15px;
  }
  .c-page-title::before {
    max-width: 40%;
    height: 80px;
  }
  .c-page-title + .uk-section {
    padding-top: 20px;
  }
  .c-page-title::after {
    max-width: 17%;
    height: 75px;
  }
}

.c-hd-h2 {
  color: #00a07a;
  font-size: 1.625rem;
  font-weight: 500;
  text-align: center;
  margin-bottom: 40px;
}

.c-hd-h2::after {
  content: "";
  display: block;
  margin: 20px auto 0;
  width: 30px;
  height: 3px;
  background: #00a07a;
}

@media (max-width: 640px) {
  .c-hd-h2 {
    font-size: 1.25rem;
    margin-bottom: 20px;
  }
}

.c-hd-h3 {
  font-size: 1.25rem;
  font-weight: 500;
  color: #00a07a;
}

.c-hd-h3:before {
  content: url(/assets/img/common/icon_hd03.svg);
  width: 30px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.c-hd-h4 {
  font-size: 1rem;
  font-weight: 500;
  color: #00a07a;
}

.c-content-wrapper {
  background-color: rgba(0, 160, 122, 0.25);
  border-radius: 15px;
  padding: 10px;
}

.c-content-wrapper .c-inner {
  background-color: #fff;
  border-radius: 7px;
  padding: 50px 50px;
}

@media (max-width: 640px) {
  .c-content-wrapper .c-inner {
    padding: 20px 10px;
  }
}

iframe {
  max-width: 100%;
}

.c-legal {
  font-size: 0.875rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 10px auto 0;
  max-width: 800px;
  border: solid 1px #CCC;
  padding: 10px;
}

@media (max-width: 768px) {
  .c-legal {
    margin: 10px 10px 0;
  }
}

.c-legal > div {
  padding: 0 15px;
}

@media (max-width: 830px) {
  .c-legal > div {
    padding: 0;
  }
}

.c-legal .c-legal-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border-left: solid 1px #CCC;
}

@media (max-width: 830px) {
  .c-legal .c-legal-inner {
    width: 100%;
    border-left: none;
    border-top: solid 1px #CCC;
    padding: 5px 0 0 0;
    margin-left: 0;
  }
}

.c-legal .c-legal-inner div {
  margin: 0 10px;
}

.uk-button {
  line-height: 1.2;
  padding: 15px 30px 15px 20px;
}

@media (max-width: 640px) {
  .uk-button {
    padding: 10px 20px 10px 10px;
  }
}

.uk-button.c-btn01:hover {
  background: rgba(255, 255, 255, 0.85);
}

button.uk-button,
input.uk-button {
  padding: 15px 30px;
}

@media (max-width: 640px) {
  button.uk-button,
  input.uk-button {
    padding: 10px 20px;
  }
}

.uk-table.c-table-number td {
  text-align: right;
}

.uk-table.c-table tr {
  border-top: solid 1px rgba(0, 160, 122, 0.4) !important;
  border-bottom: solid 1px rgba(0, 160, 122, 0.4) !important;
}

.uk-table td {
  border-left: solid 1px rgba(0, 160, 122, 0.4);
}

.uk-table thead th {
  text-align: center;
  border-left: solid 1px rgba(0, 160, 122, 0.4);
  vertical-align: middle;
}

.uk-table thead th:first-child {
  border-left: none;
}

.uk-table th {
  color: #00a07a;
}

.c-btn01 {
  border: solid 2px #00a07a;
  color: #00a07a;
}

a.disable {
  pointer-events: none;
  opacity: 0.5;
}

/*list*/
.c-indent-list {
  padding-left: 0;
}

.c-indent-list.c-i1_5em li {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.c-indent-list.c-i2em li {
  text-indent: -2em;
  padding-left: 2em;
}

.c-indent-list li {
  list-style: none;
  text-indent: -1em;
  padding-left: 1em;
}

.c-faq-list dt {
  font-weight: 500;
  color: #00a07a;
  font-size: 1.125rem;
  margin-bottom: .5rem;
  padding-left: 2rem;
  position: relative;
}

.c-faq-list dt span {
  font-weight: bold;
  color: #E3659C;
  display: inline-block;
  position: absolute;
  left: 0;
}

.c-faq-list dd {
  margin: 0 0 2rem 2rem;
}

.c-spend-list li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin-bottom: 1rem;
}

.c-spend-list li img {
  margin-right: 20px;
}

#gallery ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0;
}

#gallery ul li {
  width: 25%;
  list-style: none;
}

@media (max-width: 640px) {
  #gallery ul li {
    width: 50%;
  }
}

#gallery ul li a {
  display: block;
  border: none;
}

.c-relation-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0;
}

.c-relation-list li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  width: 50%;
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media (max-width: 640px) {
  .c-relation-list li {
    width: 100%;
  }
}

.c-relation-list li a {
  border-radius: 5px;
  border: solid 1px #ccc;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 1.5em 1em;
  position: relative;
}

@media (max-width: 640px) {
  .c-relation-list li a {
    padding: 1em 1em;
  }
}

.c-relation-list li a:hover {
  border-color: #00a07a;
}

.c-relation-list li a span {
  font-weight: 500;
  font-size: 1.125rem;
  margin-right: 1rem;
}

.c-relation-list li a .uk-icon {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transform: translate(35%, -50%);
          transform: translate(35%, -50%);
}

#c-mailform {
  max-width: 800px;
  margin: 0 auto 1.5rem;
}

@media (max-width: 768px) {
  #c-mailform {
    max-width: 95%;
  }
}

#c-mailform .c-label {
  color: #00a07a;
}

#c-mailform .c-label.c-required::after {
  content: "必須";
  display: inline-block;
  color: #ffffff;
  background: #E3659C;
  font-size: .875rem;
  border-radius: 3px;
  padding: 0 5px;
  margin-left: .5rem;
}

.c-contact-table.uk-table th {
  white-space: nowrap;
}

.c-contact-table.uk-table td {
  border-left: none;
  width: 100%;
}

.c-group-box{
  background: rgba(238, 205, 57, .3);
  border-radius: 5px;
  overflow: hidden;
  margin-top: 2.5rem;
}
.c-group-box.pink{
  background: rgba(237, 164, 155, .3);
}
.c-group-box.blue{
  background: rgba(129, 198, 220, .3);
}
.c-group-box.green{
  background: rgba(155, 223, 139, .3);
}
.c-group-box-inner{
  padding: .5rem 1.5rem 1.5rem;
}
.c-group-box h2{
  font-size: 1.25rem;
  font-weight: bold;
  background: rgba(238, 205, 57, 1);
  padding: .75rem 1rem;
}
.c-group-box.pink h2{
  background: rgba(237, 164, 155, 1);
}
.c-group-box.blue h2{
  background: rgba(129, 198, 220, 1);
}
.c-group-box.green h2{
  background: rgba(155, 223, 139, 1);
}
.c-group-box a{
  display: inline-block;
}
.c-box{
  padding: 1rem 1.5rem;
  border-radius: 5px;
}
.c-box.white{
  background:rgba(255, 255, 255, 0.75)
}