@charset "UTF-8";
body {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.7;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 800;
  line-height: 1.7;
}

hr.star-light,
hr.star-dark {
  max-width: 15rem;
  padding: 0;
  text-align: center;
  border: none;
  border-top: solid 0.25rem;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  margin-left: auto;
  margin-right: auto;
}

hr.star-light:after,
hr.star-dark:after {
  position: relative;
  top: -0.8em;
  display: inline-block;
  padding: 0 0.25em;
  content: "\f005";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 2em;
}

hr.star-light {
  border-color: #fff;
}

hr.star-light:after {
  color: #fff;
  background-color: #1d9bd0;
}

hr.star-dark {
  border-color: #8f5e4f;
}

hr.star-dark:after {
  color: #8f5e4f;
  background-color: white;
}

section {
  padding: 2rem 0;
}
section h2 {
  font-size: 2.25rem;
  line-height: 2rem;
}
@media (min-width: 992px) {
  section h2 {
    font-size: 3rem;
    line-height: 2.5rem;
  }
}

.btn-xl {
  padding: 1rem 1.75rem;
  font-size: 1.25rem;
}

.btn-social {
  width: 3.25rem;
  height: 3.25rem;
  font-size: 1.25rem;
  line-height: 2rem;
}

.scroll-to-top {
  z-index: 2000;
  right: 1rem;
  bottom: 1rem;
  display: none;
}
.scroll-to-top a {
  width: 3.5rem;
  height: 3.5rem;
  background-color: rgba(33, 37, 41, 0.5);
  line-height: 3.1rem;
}

#mainNav {
  padding-top: 1rem;
  padding-bottom: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 800;
  line-height: 1.7;
}
#mainNav .navbar-brand {
  color: #212529;
}
#mainNav .navbar-nav li.nav-item a.nav-link {
  color: #212529;
}
#mainNav .navbar-nav li.nav-item a.nav-link:hover {
  color: #1d9bd0;
}
#mainNav .navbar-nav li.nav-item a.nav-link:active, #mainNav .navbar-nav li.nav-item a.nav-link:focus {
  color: #212529;
}
#mainNav .navbar-nav li.nav-item a.nav-link.active {
  color: #1d9bd0;
}
#mainNav .navbar-toggler {
  font-size: 80%;
  padding: 0.8rem;
}

@media (min-width: 992px) {
  #mainNav {
    padding-top: 1rem;
    padding-bottom: 0;
    -webkit-transition: padding-top 0.3s, padding-bottom 0.3s;
    transition: padding-top 0.3s, padding-bottom 0.3s;
  }
  #mainNav .navbar-brand {
    font-size: 2em;
    -webkit-transition: font-size 0.3s;
    transition: font-size 0.3s;
  }
  #mainNav .navbar-nav {
    margin-top: 0;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link.active {
    color: #212529;
    background: #1d9bd0;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link.active:active, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:focus, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover {
    color: #212529;
    background: #1d9bd0;
  }
  #mainNav.navbar-shrink {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  #mainNav.navbar-shrink .navbar-brand {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .nav-item {
    border-bottom: 1px solid #dee2e6;
  }
}
.navtoggle {
  color: #1d9bd0;
  display: block;
  position: absolute;
  right: 0.75rem;
  top: 1.5rem;
  z-index: 301;
}

header.masthead {
  padding-top: calc(6rem + 72px);
  padding-bottom: 6rem;
}
header.masthead h1 {
  font-size: 3rem;
  line-height: 3rem;
}
header.masthead h2 {
  font-size: 1.3rem;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.7;
}

@media (min-width: 992px) {
  header.masthead {
    padding-top: calc(6rem + 106px);
    padding-bottom: 6rem;
  }
  header.masthead h1 {
    font-size: 4.75em;
    line-height: 4rem;
  }
  header.masthead h2 {
    font-size: 1.75em;
  }
}
.footer {
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-color: #8f5e4f;
  color: #fff;
}

.copyright {
  background-color: #1d9bd0;
}

.fotter_a a {
  color: #fff !important;
}

.fotter_a a:hover {
  color: #e6e6e6 !important;
}

a {
  color: #1d9bd0;
}
a:focus, a:hover, a:active {
  color: #177aa3;
}

.btn {
  border-width: 2px;
}

.bg-primary {
  background-color: #1d9bd0 !important;
}

.bg-secondary {
  background-color: #8f5e4f !important;
}

.text-primary {
  color: #1d9bd0 !important;
}

.text-secondary {
  color: #8f5e4f !important;
}

.btn-primary {
  background-color: #1d9bd0;
  border-color: #1d9bd0;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #177aa3;
  border-color: #177aa3;
}

.btn-secondary {
  background-color: #8f5e4f;
  border-color: #8f5e4f;
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
  background-color: #6e483d;
  border-color: #6e483d;
}

.bg-gray-100 {
  background-color: #f2f5ff !important;
}

.bg-gray-200 {
  background-color: #e9ecef !important;
}

.bg-gray-300 {
  background-color: #dee2e6 !important;
}

.bg-green {
  color: #fff !important;
  background-color: #339964 !important;
}

.bg-blue {
  color: #fff !important;
  background-color: #3472a5 !important;
}

.text-red {
  color: #c43939 !important;
}

.text-orange {
  color: #f17423 !important;
}

.text-green {
  color: #339964 !important;
}

.text-blue {
  color: #3472a5 !important;
}

.btn-red {
  color: #fff !important;
  background-color: #c43939;
  border-color: #c43939;
}
.btn-red:hover, .btn-red:focus, .btn-red:active {
  background-color: #9c2e2e;
  border-color: #9c2e2e;
}

.btn-orange {
  color: #fff !important;
  background-color: #f17423;
  border-color: #f17423;
}
.btn-orange:hover, .btn-orange:focus, .btn-orange:active {
  background-color: #d45b0d;
  border-color: #d45b0d;
}

.btn-green {
  color: #fff !important;
  background-color: #339964;
  border-color: #339964;
}
.btn-green:hover, .btn-green:focus, .btn-green:active {
  background-color: #26734b;
  border-color: #26734b;
}

.btn-blue {
  color: #fff !important;
  background-color: #3472a5;
  border-color: #3472a5;
}
.btn-blue:hover, .btn-blue:focus, .btn-blue:active {
  background-color: #28577e;
  border-color: #28577e;
}

.bg-beige-2 {
  background-color: #c6aca4 !important;
}

.bg-beige {
  background-color: #e7dbd7 !important;
}

.text-beige {
  color: #e7dbd7 !important;
}

.text-beige a {
  color: #e7dbd7 !important;
}

.btn-beige-2 {
  background-color: #c6aca4;
  border-color: #c6aca4;
}
.btn-beige-2:hover, .btn-beige-2:focus, .btn-beige-2:active {
  background-color: #b28f85;
  border-color: #b28f85;
}

/* 基本メニュー サイズ・価格 フェード設定 1 */
.fade {
  opacity: 0; /* ←初期値を変更。透明に。*/
  -webkit-animation: 2s fadeIn forwards;
          animation: 2s fadeIn forwards; /* ←追加 */
}

/* 基本メニュー サイズ・価格 フェード設定 2 */
@-webkit-keyframes fadeIn { /*animetion-nameで設定した値を書く*/
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn { /*animetion-nameで設定した値を書く*/
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* メニュー 設定 tableサイズ固定 */
table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

tr {
  border-bottom: 1px solid #333333;
}

/* サイト全体 table th 設定 */
th {
  white-space: nowrap;
  padding: 0.75em;
  padding-right: 2em;
}

td {
  padding: 0.75em;
  word-break: keep-all;
  overflow-wrap: break-word;
  　word-wrap: break-word;
}

.title {
  background-color: #1d9bd0;
  color: #fff;
  text-align: center;
  padding: 0.75em;
}

/* ハンバーガーメニューアイコン用*/
#big {
  font-size: 1.3rem;
  border: none;
  z-index: 100;
}

ul, li {
  margin: 0;
  padding: 0;
}

/* 下から */
.fade_up_1 {
  -webkit-animation-name: fadeUpAnime;
          animation-name: fadeUpAnime;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes fadeUpAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.fade_up {
  /* 最初は非表示 */
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity 1s, visibility 1s, -webkit-transform 1s;
  transition: opacity 1s, visibility 1s, -webkit-transform 1s;
  transition: opacity 1s, visibility 1s, transform 1s;
  transition: opacity 1s, visibility 1s, transform 1s, -webkit-transform 1s;
}

/* フェードイン時に入るクラス */
.is-fadein {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

html {
  scroll-behavior: smooth;
}