@charset "UTF-8";
/*=======================================
スマホのみ(768px未満)
=======================================*/
@media screen and (max-width: 767px) {
  #page_top {
      right: 0;
      bottom: 0;
      border-radius: 3px 0 0 0;
  }
  .carousel-indicators, .carousel-control-next, .carousel-control-prev {
    display: none;
  }
}

/*=======================================
スマホ＆タブレット(992px未満)
=======================================*/
@media screen and (max-width: 991px) {

/* 全体ブロック */
  article {
      margin: 0;
  }
  section, section.bg {
      padding: 3rem 0;
  }
  section#contact_check {
    padding: 8rem 0 0;
  }
  .row, .group {
      margin-bottom: 0;
  }
/*全体インライン*/
  .main_img_txt {
      padding: 0 2rem;
  }
  h1 {
      font-size: 4rem;
  }
  article .h2_wrap {
      margin: 0 0 2rem;
  }
  article h2 {
      font-size: 2.6rem;
      margin-top: 3rem;
  }
  article h2::after {
      bottom: -1.5rem;
  }
  article h3 {
      font-size: 2rem;
      font-weight: bold;
      line-height: 2.8rem;
      padding: 1.5rem 0 0;
      margin: 0 0 1rem;
  }
  h3.border_h {
      margin: 0 0 3rem;
  }
/*ヘッダー*/
  header .container{
    max-width: 1023px;
  }
  .navbar{
    height: auto;
  }
  a.navbar-brand {
    padding-left: 1rem;
  }
  .navbar .navbar-toggler {
    height: auto;
    padding-right: 1rem;
  }
  ul.navbar-nav.mr-auto {
      background: #f4f4f4;
  }
  .nav-item {
    height: auto;
    line-height: 2rem;
    padding: 1.5rem .5rem;
    border-bottom: .1rem solid #ddd;
    text-align: center;
    color: #404040;
    margin-right: 0;
  }
  .nav-item.active, .nav-item:hover {
    border-bottom: .1rem solid #ddd;
  }
  a.active{
  color: #fff;

  }
  .header_tel_pc{
    display: none;
  }
  .header_tel_sp {
      display: inline-block;
      width: 16rem;
      height: 8rem;
      display: inline-block;
      text-align: center;
      color: #7d947c;
      background: #fff;
      width: 50%;
      float: left;
  }
  .header_tel_sp::before {
      font-family: "Font Awesome 5 Free";
      content: "\f095";
      font-size: 2rem;
      line-height: 2rem;
      margin-top: 2rem;
      font-weight: 600;
      display: block;
  }
  .header_contact {
      width: 50%;
      float: right;
      background-color: #7d947c;
  }

  /* フッター */
  ul.footer-menu {
      margin: 1rem 0;
  }
  .google-maps {
      margin-bottom: 0;
  }
  footer .footer_group {
    padding-top: 1rem;
  }
  footer .footer-copyright {
    margin-top: 0;
    padding: 1rem .5rem;
    height: auto;
  }
  footer .copyright{
    float: none;
  }
  footer .designby{
    margin-top: .5rem;
    float: none;
  }
  footer h2 {
    font-size: 2rem;
  }
  footer address h2 i.fas{
    font-size: 2rem;
  }
  /* テーブル */
  table th, table td {
    padding: 1rem;
  }
  table.table-basic  th, table.table-basic  td {
      width: 100%;
      display: block;
      border-top: none;
  }
  table.table-basic  th{
    background-color: #f4f4f4;
  }
  table.table-basic tr:first-child th,
  table.contact tr:first-child th{
    border-top: solid 1px #d4d4d4;
  }
  .table-striped tbody tr:nth-of-type(even), .table-striped tbody tr:nth-of-type(odd){
      background-color: #fff;
  }
  .table-scroll-x {
      display: block;
      white-space: nowrap!important;
  }
  table.contact{
    border: none;
  }
  table.contact th,  table.contact td{
      width: 100%;
      display: block;
      padding: 1rem;
      border-top: none;
  }
  .submit_wrap .btn_submit {
      padding: 2rem 4rem;
  }
  .left-container {
		width: 100%;
		max-width: 500px;
    margin-bottom: 2rem;
    float: none;
  }
  .right-container {
		width: 100%;
		max-width: 500px;
    float: none;
	}
  .center-container {
		width: 100%;
		max-width: 500px;
  }


  /*=======================================
  追加
  =======================================*/
  a.navbar-brand img {
    width: 5rem;
  }
  .main_img_txt img {
      min-width: auto;
  }
  .h1_sub span {
      padding: .3rem .5rem .2rem;
      font-size: 1.4rem;
  }
  article h2.first_mt0 {
      margin-top: 0;
  }
  .col-md-6.txt {
      padding: 0 2rem;
  }
  .about_wrap p {
    text-align: left;
  }
  .col-md-6 div {
    margin-bottom: 2rem;
  }
  .main_img_txt img {
      filter: drop-shadow(0 0 3px rgba(0,0,0,1));
  }
  .about_wrap {
      margin: 3rem auto 0;
  }
  .circle-1 {
    border-radius: 30% 30% 30% 50%/30% 30% 50% 40%;
  }
  .btn_wrap {
      padding: 1rem 0 3rem;
  }
}
/*=======================================
タブレットのみ(992～1200px以上)
=======================================*/
@media screen and (min-width: 992px) and (max-width: 1199px) {
  .navbar .navbar-toggler {
      border-width: 0;
      outline: 0;
  }
  .header_tel_pc {
      display: none;
  }
.nav-item {
    margin-right: 1rem;
}
}
/*=======================================
PCのみ(992px以上)
=======================================*/
@media screen and (min-width: 992px) {
  .container-fluid{
    padding: 0;
  }
}
