/*------------------------------------------------------------------
text-primary	bg-primary	#007bff
text-secondary	bg-secondary	#6c757d
text-success	bg-success	#28a745
text-danger	bg-danger	#dc3545
text-warning	bg-warning	#ffc107
text-info	bg-info	#17a2b8
text-light	bg-light	#f8f9fa
text-dark	bg-dark	#343a40
text-muted	-	#6c757d
text-white	bg-white	#fff



-------------------------------------------------------------------*/

/*----------------------------------------*/

/* Template default CSS
/*----------------------------------------*/

html,
body {
	height: 100%;
	font-family: "DM Sans", sans-serif;
	-webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	color: #111111;
	font-weight: 400;
	font-family: "DM Sans", sans-serif;
}

h1 {
	font-size: 70px;
}

h2 {
	font-size: 36px;
}

h3 {
	font-size: 30px;
}

h4 {
	font-size: 24px;
}

h5 {
	font-size: 18px;
}

h6 {
	font-size: 16px;
}

p {
	font-size: 16px;
	font-family: "DM Sans", sans-serif;
	color: #6E7580;
	font-weight: 400;
	line-height: 26px;
	margin: 0 0 15px 0;
}

img {
	max-width: 100%;
}

input:focus,
select:focus,
button:focus,
textarea:focus {
	outline: none;
}

a:hover,
a:focus {
	text-decoration: none;
	outline: none;
/*	color: #ffffff;	*/
}

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










/*---------------------
  naviバーカスタマイズ
-----------------------*/

.dropdown:hover>.dropdown-menu {
  display: block;
}


/*
.navbar-light .navbar-toggler {
    border-color: rgba(0,0,0,0);
}
*/


.nav-item a{
	color: #111111;
}


.navbar-text a{
	color: #111111;
}


.navbar .navbar-toggler span {
	color: #111111;
}

/* 右寄せ実験中  */
.navbar-collapse {
/*
text-align: right;
*/
/*
bootstrap.min
⇒flex-grow: 1 →0
*/
}

.navbar-collapse span {
	padding-left: 20px;
	text-align: right;
}

.navbar-collapse span a {
	font-size: 20px;
}



@media (max-width: 751px) {
.navbar-collapse span {
	padding-left: 0px;
	text-align: left;
	}
}


@media (min-width: 751px) {
  a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  }
}


/*---------------------
  jumbotron
-----------------------*/


.jumbotron {
	background:url("../img/hero-6.jpg") center no-repeat;
	background-size: cover;
	}


/*---------------------
  jumbotron 帯
-----------------------*/


.main__info__line {
	background-color:#28a745;
	padding: 10px 20px 10px; /* [上]　[左右]　[下] */
	text-align: center;
	font-size: 22px;
	color: #ffffff;
	font-weight: 600;
}



/*---------------------
  サブタイトル 
-----------------------*/

.sub_title {
	background-color:#ffffff;
	padding: 100px 20px 0px;
	text-align: center;
}


.sub_title h4 {
	font-size: 25px;
	color: #00000;
	margin-bottom: 10px;
	display:inline;
}


.sub_title h4-2 {
	font-size: 25px;
	color: #28a745;
	margin-bottom: 10px;
	display:inline;
}


.sub_title h5 {
	font-size: 18px;
	color: #00000;
	margin-bottom: 10px;
	display:inline;
}



/*---------------------
  concept コンセプト
-----------------------*/


.main__concept .catchphrase {
	text-align: center;

}


.main__concept h3 {
	font-size: 30px;
	font-weight: 700; 
	color: #28a745;
	margin-bottom: 10px;
	display:inline;

}

.main__concept__txt {
	font-size: 16px;
	text-align: left;
}



.main__concept_img {/*親div*/
  position: relative;/*相対配置*/
  }

.main__concept_img p {
  position: absolute;/*絶対配置*/
  top: 50%;
  left: 40%;
  -ms-transform: translate(-60%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-35%,-45%);
  margin:0;
  padding:0;
  color: white;
  font-weight: bold;
  font-size: 19px;
  text-align: center;
  }

.main__concept_img img {
  width: 100%;
  }








/*---------------------
  Service サービス
-----------------------*/



.main__service txt_deco {
	color: #dc3545;
/*	font-weight: bold;	*/
}



.main__service__txt {
	font-size: 16px;
	text-align: left;
}


.main__service__details ul {
	padding-left: 20px;
}



/*---------------------
  how to use 利用方法
-----------------------*/



.main__how__top {
	position: relative;
	padding: 0.5rem 2rem;
	border-radius: 50px;
	background: #28a745;
	text-align: center;
}

.main__how__top h4 {
	font-size: 25px;
	color: #ffffff;
	margin-bottom: 10px;
	display:inline;
}



.main__how__top h4-2 {
	font-size: 25px;
	color: #ffffff;
	margin-bottom: 10px;
	display:inline;
}


.main__how__top h5 {
	font-size: 18px;
	color: #ffffff;
	margin-bottom: 10px;
	display:inline;
}




.card-text txt_deco {
	color: #dc3545;
	font-weight: bold;
}



/*---------------------
  Flow ご利用までの流れ new
-----------------------*/


.flow .box {
  margin-bottom: 10px;
  overflow: hidden;
  text-align: center;
  border-radius: 1px;
  background: #fff;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
}

.flow .box .box-img {
  position: relative;
  overflow: hidden;
}


.flow .box .box-info {
  padding: 20px 20px;
  background-color: #f5f5f5;
  /* background: rgba(221, 232, 255, 1);	*/
  height:100%;
}

.flow .box .box-info h4 {
  font-weight: 700;
  margin-bottom: 15px;
  font-size: 18px;
  color: #493c3e;
}

.flow .box .box-info span {
  display: block;
  font-size: 13px;
  font-weight: 400;
  color: #aaaaaa;
}

.flow .box .box-info p {
  font-size: 15px;
  line-height: 26px;
  text-align: left;
}


.flow .box .box-tel a {
  color: #111111;
  font-size: 22px;
}






@media (max-width: 767px) {
  .flow .box {
    margin-bottom: 20px;
  }
}




/*---------------------
  Area 訪問エリア
-----------------------*/

.area .area_map {
	text-align: center;
}


.area .area_map img {
	width: 50%;
}

.area .area_map h6-1 {
	color: #00000;
}

.area .area_map  h6-2 {
	font-size: 15px;
}


@media (max-width: 767px) {
  .area .area_map img {
	width: 100%;
	}
}


/*---------------------
  Time サービス提供時間
-----------------------*/

.main__time {
	text-align: center;

}

.main__time h5 {
	font-size: 18px;
	color: #00000;
	margin-bottom: 10px;
	display:inline;
}

.main__time h6 {
	color: #dc3545;
}



/*---------------------
  Price 利用料金
-----------------------*/

.main__price {
	text-align: center;
}


.main__price h6-1 {
	color: #dc3545;
}


.main__price h6-2 {
	color: #17a2b8;
}


.justify {
  display: flex;
  justify-content: space-between;
}






/*---------------------
  アクセス
-----------------------*/

/*
.main__access__top {
	background-color:#ffffff;
	padding: 40px 20px 40px;
	text-align: center;

}



.main__access__top h4 {
	font-size: 25px;
	color: #00000;
	margin-bottom: 10px;
	display:inline;
}


.main__access__top h4-2 {
	font-size: 25px;
	color: #28a745;
	margin-bottom: 10px;
	display:inline;
}


.main__access__top h5 {
	font-size: 18px;
	color: #00000;
	margin-bottom: 10px;
	display:inline;
}


*/

























/*---------------------
  Footer
-----------------------*/

.footer {
	background: #263246;
	padding-top: 70px;
}

.footer2 {
	background: #fffde6;
/*	padding-top: 70px;	*/

}



.footer2 .footer__about a {
	color: #111111;;


}



.justify {
  display: flex;
  justify-content: space-between;
}



.footer__about {
	margin-bottom: 30px;
	padding:80px 0px 0px 0px;
}

.footer__about_logo {
	margin-bottom: 30px;
	padding:80px 0px 0px 0px;
}




.footer__list {
	margin-bottom: 30px;
/*	padding:80px 0px 0px 0px;	*/
	padding:200px 0px 0px 0px;
}

.footer__list ul li {
	list-style: none;
}

.footer__list ul li a {
	font-size: 16px;
	color: #333333;
	line-height: 30px;
	text-decoration: none;
}


.footer__list a:hover {
	text-decoration: underline;
}



.footer__copyright {
	overflow: hidden;
	padding: 15px 0;
}

.footer__copyright__text p {
	font-size: 14px;
	color: #6e7580;
	margin-bottom: 0;
}

.footer__copyright__text i {
	color: #a11f1f;
}

.footer__copyright__text a {
	color: #5768AD;
}


@media (max-width: 751px) {
.footer__about {
	margin-bottom: 0px;
	padding:0px 0px 0px 0px;
	}
.footer__about_logo {
	margin-bottom: 0px;
	padding:50px 0px 0px 0px;
	}
}






/*---------------------
  上に戻る
-----------------------*/

#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  background: #28a745;
  opacity: 0.5;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #ffffff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -12px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}



/*---------------------
  アンカーリンクずれ解消
-----------------------*/

a.aa-link{
   display: block;
/*   margin-top:-100px;	*/
/*   padding-top:100px;	*/
   margin-top:-	5rem;
   padding-top:5rem;

}




/*--------------------------------- Responsive Media Quaries -----------------------------*/

@media only screen and (min-width: 1200px) {
	.container {
		max-width: 1170px;
	}
}

/* Medium Device = 1200px */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.hero__sliders.owl-carousel .owl-nav button {
		left: 5px;
	}
	.hero__sliders.owl-carousel .owl-nav button.owl-next {
		right: 5px;
	}
	.team__slider.owl-carousel .owl-nav button {
		left: -5px;
	}
	.team__slider.owl-carousel .owl-nav button.owl-next {
		right: -5px;
	}
	.counter__item {
		margin-right: 50px;
	}
	.header__top__widget .primary-btn {
		display: none;
	}
	.header__top__widget ul {
		margin-right: 0;
	}
	.header__top__widget {
		padding: 44px 0 35px;
	}
}

/* Tablet Device = 768px */

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.header__menu ul li {
		margin-right: 18px;
	}
	.header__top__widget ul {
		display: none;
	}
	.hero__sliders.owl-carousel .owl-nav button {
		left: 5px;
	}
	.hero__sliders.owl-carousel .owl-nav button.owl-next {
		right: 5px;
	}
	.about__pic {
		margin-bottom: 30px;
	}
	.team__item__pic {
		position: relative;
		right: 0;
		margin-bottom: 20px;
		margin-top: -80px;
	}
	.team__item {
		padding: 30px 35px 40px;
	}
	.team__slider.owl-carousel .owl-nav {
		text-align: center;
		padding-top: 50px;
	}
	.team__slider.owl-carousel .owl-nav button {
		position: relative;
		left: 0;
		top: 0;
	}
	.team__slider.owl-carousel .owl-nav button.owl-next {
		right: -10px;
	}
	.classes__filter {
		padding: 25px 50px 30px;
	}
	.classes__filter form .class__filter__select {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
		float: none;
	}
	.classes__filter form .class__filter__btn {
		position: relative;
		right: 0;
		bottom: 0;
		text-align: center;
	}
	.blog__sidebar {
		margin-top: 50px;
	}
	.counter__item {
		margin-right: 50px;
	}
}

/* Wide Mobile = 480px */

@media only screen and (max-width: 767px) {
	.appointment__text {
		padding: 60px 30px;
	}
	.hero__sliders.owl-carousel .owl-nav button {
		position: relative;
		left: 15px;
		bottom: 120px;
	}
	.hero__sliders.owl-carousel .owl-nav button.owl-next {
		right: -25px;
	}
	.home__about__pic__item {
		width: 100%;
		margin-right: 0;
	}
	.about .p-0 {
		padding: 0 15px !important;
	}
	.about__pic {
		margin-bottom: 30px;
	}
	.team__item__pic {
		position: relative;
		right: 0;
		margin-bottom: 20px;
		margin-top: -100px;
	}
	.team__item {
		padding: 30px 35px 40px;
	}
	.team__slider.owl-carousel .owl-nav {
		text-align: center;
		padding-top: 50px;
	}
	.team__slider.owl-carousel .owl-nav button {
		position: relative;
		left: 0;
		top: 0;
	}
	.team__slider.owl-carousel .owl-nav button.owl-next {
		right: -10px;
	}
	.classes__filter {
		padding: 25px 50px 30px;
	}
	.classes__filter form .class__filter__select {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
		float: none;
	}
	.classes__filter form .class__filter__btn {
		position: relative;
		right: 0;
		bottom: 0;
		text-align: center;
	}
	.blog__sidebar {
		margin-top: 50px;
	}
	.blog__previous__btn,
	.blog__next__btn {
		margin-bottom: 20px;
	}
	.header__top__widget {
		display: none;
	}
	.header__nav {
		display: none;
	}
	.hero {
		margin-top: 0;
	}
	.header__top .container {
		position: relative;
	}
	.offcanvas-menu-overlay {
		position: fixed;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		background: rgba(0, 0, 0, 0.5);
		z-index: 98;
		visibility: hidden;
		-webkit-transition: all, 0.5s;
		-moz-transition: all, 0.5s;
		-ms-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
	}
	.offcanvas-menu-overlay.active {
		visibility: visible;
	}
	.canvas__open {
		font-size: 20px;
		color: #263246;
		height: 30px;
		width: 30px;
		line-height: 30px;
		text-align: center;
		border: 1px solid #263246;
		cursor: pointer;
		position: absolute;
		right: 15px;
		top: 35px;
		display: block;
	}
	.offcanvas-menu {
		position: fixed;
		width: 300px;
		height: 100%;
		left: -300px;
		background: #ffffff;
		z-index: 99;
		overflow-y: auto;
		padding: 50px 30px 30px 30px;
		opacity: 0;
		display: block;
		-webkit-transition: all, 0.5s;
		-moz-transition: all, 0.5s;
		-ms-transition: all, 0.5s;
		-o-transition: all, 0.5s;
		transition: all, 0.5s;
	}
	.offcanvas-menu.show-offcanvas-menu {
		left: 0;
		opacity: 1;
	}
	.offcanvas__logo {
		margin-bottom: 30px;
	}
	.offcanvas__logo a {
		display: inline-block;
	}
	.offcanvas__widget {
		margin-bottom: 30px;
	}
	.offcanvas__widget ul {
		margin-bottom: 20px;
	}
	.offcanvas__widget ul li {
		font-size: 16px;
		color: #263246;
		text-transform: uppercase;
		list-style: none;
		display: inline-block;
		line-height: 36px;
	}
	.offcanvas__widget .primary-btn {
		display: inline-block;
	}
	.offcanvas__social a {
		display: inline-block;
		font-size: 16px;
		color: #263246;
		margin-right: 10px;
	}
	.offcanvas__social a:last-child {
		margin-right: 0;
	}
	.slicknav_menu {
		background: transparent;
		padding: 0;
		margin-bottom: 30px;
	}
	.slicknav_btn {
		display: none;
	}
	.slicknav_nav {
		background: transparent;
		display: block !important;
	}
	.slicknav_nav .slicknav_row:hover {
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		background: transparent;
		color: #263246;
	}
	.slicknav_nav a:hover {
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		background: transparent;
		color: #263246;
	}
	.slicknav_nav .slicknav_row,
	.slicknav_nav a {
		padding: 10px 0;
		margin: 0;
		color: #263246;
		font-size: 16px;
		border-bottom: 1px solid #e1e1e1;
	}
	.header__menu {
		display: none;
	}
	.header__social {
		display: none;
	}
	.hero__items {
		height: auto;
	}
	.hero__text {
		padding: 120px 0 170px;
	}
	.breadcrumb-option,
	.blog-hero {
		margin-top: 0;
	}
	.footer__copyright__text {
		text-align: center;
		margin-bottom: 10px;
	}
	.footer__copyright__social {
		text-align: center;
	}
	.home__about__pic {
		margin-right: 0;
		padding-right: 0;
	}
	.blog__details__tags__share p {
		float: none;
	}
	.blog__details__tags__share .blog__details__share {
		float: none;
	}
	.over-hid {
		overflow: hidden;
	}
}

/* Small Device = 320px */

@media only screen and (max-width: 479px) {
	.hero__text h2 {
		font-size: 40px;
		line-height: normal;
	}
	.hero__sliders.owl-carousel .owl-nav button {
		bottom: 80px;
	}
	.chooseus__item {
		width: 100%;
		margin-bottom: 60px;
	}
	.appointment .section-title h2 {
		font-size: 35px;
	}
	.counter__item {
		display: block;
		margin-right: 0;
	}
	.counter__text {
		padding: 95px 30px 20px 50px;
	}
	.blog__details__author__pic {
		float: none;
		margin-right: 0;
		margin-bottom: 30px;
	}
	.map .map-inside {
		-webkit-transform: translateX(-150px);
		-ms-transform: translateX(-150px);
		transform: translateX(-150px);
	}
	.map .map-inside .inside-widget {
		width: 300px;
	}
	.blog__sidebar {
		padding-right: 0;
	}
	.faq__accordion .card .card-heading a {
		font-size: 16px;
	}
}




