@charset "utf-8";

/*
Theme Name: アドダス
Author: アドダス
Author URI: https://addas.jp
Description: Bootstrap5@Webpack
*/

/*　H-02style  ================================================================================= */

body {
	font-family: YakuHanJP, "Zen Kaku Gothic Antique",'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	padding-top: 0!important;
}

.rubik {
  font-family: "Rubik", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

a {
    color: #555555;
}

a:hover {
    color: #3fa037;
}

.text-dark {
	color: #555;
}

.bg-dark {
	background-color: #555!important;
}

/* .cls-1 {
    fill: #555555!important;
}
 */
.lh-03 {line-height: 0.3;}
.lh-04 {line-height: 0.4;}
.lh-05 {line-height: 0.5;}
.lh-06 {line-height: 0.6;}
.lh-07 {line-height: 0.7;}
.lh-08 {line-height: 0.8;}
.lh-09 {line-height: 0.9;}
.lh-10 {line-height: 1;}
.lh-11 {line-height: 1.1;}
.lh-12 {line-height: 1.2;}
.lh-13 {line-height: 1.3;}
.lh-14 {line-height: 1.4;}
.lh-15 {line-height: 1.5;}
.lh-16 {line-height: 1.6;}
.lh-17 {line-height: 1.7;}
.lh-18 {line-height: 1.8;}
.lh-19 {line-height: 1.9;}
.lh-20 {line-height: 2.0;}
.lh-21 {line-height: 2.1;}
.lh-22 {line-height: 2.2;}
.lh-23 {line-height: 2.3;}
.lh-24 {line-height: 2.4;}
.lh-25 {line-height: 2.5;}
.lh-26 {line-height: 2.6;}
.lh-27 {line-height: 2.7;}
.lh-28 {line-height: 2.8;}
.lh-29 {line-height: 2.9;}
.lh-30 {line-height: 3.0;}

.ls-1 {letter-spacing: 1px;}
.ls-2 {letter-spacing: 2px;}
.ls-3 {letter-spacing: 3px;}
.ls-4 {letter-spacing: 4px;}
.ls-5 {letter-spacing: 5px;}
.ls-6 {letter-spacing: 6px;}
.ls-7 {letter-spacing: 7px;}
.ls-8 {letter-spacing: 8px;}
.ls-9 {letter-spacing: 9px;}
.ls-10 {letter-spacing: 10px;}

/* =============  角丸 ============ */
.rounded05 {border-radius:5px}
.rounded10 {border-radius:10px}
.rounded15 {border-radius:15px}
.rounded20 {border-radius:20px}
.rounded25 {border-radius:25px}
.rounded30 {border-radius:30px}
.rounded35 {border-radius:35px}
.rounded40 {border-radius:40px}
.rounded45 {border-radius:45px}
.rounded50 {border-radius:50px}

/* =============  上だけ角丸 ============ */
.rounded05-up {border-radius:5px 5px 0 0}
.rounded10-up {border-radius:10px 10px 0 0}
.rounded15-up {border-radius:15px 15px 0 0}
.rounded20-up {border-radius:20px 20px 0 0}
.rounded25-up {border-radius:25px 25px 0 0}
.rounded30-up {border-radius:30px 30px 0 0}
.rounded35-up {border-radius:35px 35px 0 0}
.rounded40-up {border-radius:40px 40px 0 0}
.rounded45-up {border-radius:45px 45px 0 0}
.rounded50-up {border-radius:50px 50px 0 0}

/* =============  下だけ角丸 ============ */
.rounded05-down {border-radius: 0 0 5px 5px}
.rounded10-down {border-radius: 0 0 10px 10px}
.rounded15-down {border-radius: 0 0 15px 15px}
.rounded20-down {border-radius: 0 0 20px 20px}
.rounded25-down {border-radius: 0 0 25px 25px}
.rounded30-down {border-radius: 0 0 30px 30px}
.rounded35-down {border-radius: 0 0 35px 35px}
.rounded40-down {border-radius: 0 0 40px 40px}
.rounded45-down {border-radius: 0 0 45px 45px}
.rounded50-down {border-radius: 0 0 50px 50px}

/* =============  左だけ角丸 ============ */
.rounded05-left {border-radius:5px 0 0 5px}
.rounded10-left {border-radius:10px 0 0 10px}
.rounded15-left {border-radius:15px 0 0 15px}
.rounded20-left {border-radius:20px 0 0 20px}
.rounded25-left {border-radius:25px 0 0 25px}
.rounded30-left {border-radius:30px 0 0 30px}
.rounded35-left {border-radius:35px 0 0 35px}
.rounded40-left {border-radius:40px 0 0 40px}
.rounded45-left {border-radius:45px 0 0 45px}
.rounded50-left {border-radius:50px 0 0 50px}

/* =============  右だけ角丸 ============ */
.rounded05-right {border-radius:0 0 5px 5px}
.rounded10-right {border-radius:0 0 10px 10px}
.rounded15-right {border-radius:0 0 15px 15px}
.rounded20-right {border-radius:0 0 20px 20px}
.rounded25-right {border-radius:0 0 25px 25px}
.rounded30-right {border-radius:0 0 30px 30px}
.rounded35-right {border-radius:0 0 35px 35px}
.rounded40-right {border-radius:0 0 40px 40px}
.rounded45-right {border-radius:0 0 45px 45px}
.rounded50-right {border-radius:0 0 50px 50px}


.btnshine {
	position: relative;
	width: 80%;
	display:inline-block;
    background: #3fa037;
    border-radius: 40px;
    color: #fff;
    padding: 15px 20px;
    text-decoration: none;
    outline: none;
    overflow: hidden;
}
@media (min-width: 992px) {
	.btnshine {
		max-width: 400px;
		padding: 20px;
	}
}

.btnshine:hover {
	color: #fff;
}

/*キラッと光る*/
.btnshine::before {
	content: '';
	position: absolute;
	top: 0;
	left: -75%;
    width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.8) 100%);
	transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
.btnshine:hover::before {
	animation: shine 1s;
}

@keyframes shine {
	100% {
		left: 150%;
	}
}


.btnshine2 {
	position: relative;
	width: 80%;
	display:inline-block;
    background: #3fa037;
    border-radius: 40px;
    color: #fff;
    padding: 15px 20px;
    text-decoration: none;
    outline: none;
    overflow: hidden;
}
@media (min-width: 992px) {
	.btnshine2 {
		width: 100%;
		padding: 20px;
	}
}

.btnshine2:hover {
	color: #fff;
}

/*キラッと光る*/
.btnshine2::before {
	content: '';
	position: absolute;
	top: 0;
	left: -75%;
    width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.8) 100%);
	transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
.btnshine2:hover::before {
	animation: shine 1s;
}

@keyframes shine {
	100% {
		left: 150%;
	}
}



.btnshine3 {
	position: relative;
	width: 60%;
	display:inline-block;
    background: #3fa037;
    border-radius: 40px;
    color: #fff;
    padding: 15px 20px;
    text-decoration: none;
    outline: none;
    overflow: hidden;
    margin-left: auto;
}
@media (min-width: 500px) {
	.btnshine3 {
		width: 40%;
	}
}
@media (min-width: 1200px) {
	.btnshine3 {
		width: 100%;
	}
}

.btnshine3:hover {
	color: #fff;
}

/*キラッと光る*/
.btnshine3::before {
	content: '';
	position: absolute;
	top: 0;
	left: -75%;
    width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.8) 100%);
	transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
.btnshine3:hover::before {
	animation: shine 1s;
}

@keyframes shine {
	100% {
		left: 150%;
	}
}


/* ====================================================

       　               色（ポジ)　

==================================================== */

/* ============= 背景色 ============= */
.bg-base {
	background-color: #fff;
}

/* ============= 文字の色 ============ */
/*　ヘッダーの文字の色　*/
#area-header #menu-global .menu-item .nav-link {
    color: #555;
}

/*　文章の色　*/
p {
	color: #555;	
}

.text-green {
	color: #3fa037;	
}
.bg-green {
	background-color: #3fa037;		
}

.bg-basegreen {
	background-color: #e7f5ef;
}
.bg-basegreen02 {
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 50%, rgba(231,245,239,1) 50%);
}

.b5-basegreen {
	border: 10px solid #e7f5ef;
}

.text-yellowgreen {
	color: #aac600;	
}
.bg-yellowgreen {
	background-color: #aac600;		
}

.bb-yellow {
	text-decoration: underline 3px #439938;
    text-underline-offset: .3em;
}

.p-waku {
	padding: 3%;
}
/* ============ 見出しの色 ============ */
h1,h2,h3,h4,h5 {
	color: #000;
}

/* ============ ボタンの色 ============ */
/*　ボタンの中の文字の色　*/
.link-btn1 span {
    color: #fff!important;
}

/*　ボタンの中の文字の色(ホバー時の色)　*/
.link-btn1:hover span{
  	color: #000!important;
}

/*　ボタンの中の背景の色　*/
.link-btn1 {
	background-color: #000!important;
}

/*　ボタンの中の背景の色(ホバー時の色)　*/
.link-btn1:before {
	background-color: #fff!important;
  	border: 2px solid #000!important;
}


/* ====================================================

       　               色（ネガ)　
       
==================================================== */

/* ========== 背景色(ネガ) =========== */
.bg-nbase {
	background-color: #000;
}

/* ============= 文字の色 ============ */
/*　ヘッダーの文字の色(ネガ)　*/
#area-header.nega #menu-global .menu-item .nav-link {
    color: #fff;
}
/*　文章の文字の色(ネガ)　*/
.nega p {
	color: #fff;	
}

/* ========= 見出しの色(ネガ) ========== */
/*　見出しの色(白色の文字)　*/
.nega h1,.nega h2,.nega h3,.nega h4,.nega h5 {
	color: #fff;
}

/* ========== ボタンの色(ネガ) ========== */
.link-btn1n span {
    color: #000!important;
}

/*　ボタンの中の文字の色(ホバー時の色)(ネガ)　*/
.link-btn1n:hover span{
  	color: #fff!important;
}

/*　ボタンの中の背景の色(ネガ)　*/
.link-btn1n {
	background-color: #fff!important;
}
.link-btn1n:before {
	background-color: #000!important;
  	border: 2px solid #fff!important;
}


/*　ヘッダーお問い合わせボタンの背景の色　*/
.h-01 #area-header #menu-global .btn-contact {
	background-color: #000!important;
}

/*　ヘッダーお問い合わせボタンの文字の色　*/
.h-01 #area-header #menu-global .btn-contact.menu-item a.nav-link {
	color: #fff!important;
}

a.tel-link {
	color: #000!important;
}

a.tel-link a {
	color: #000!important;
}

.nega a.tel-link {
	color: #fff!important;
}

.nega a.tel-link a {
	color: #fff!important;
}

/*  ページナビ  */
.pagination .page-link.active, .active>.page-link {
    background-color: #000;
    border-color: #000;
}
.pagination .page-link {
    border: 1px solid #000;
    color: #000;
}
.pagination .page-link.current {
	color: #fff;
}

/*　文字調整　*/
h2.h2 {
	font-size: clamp(1.5rem, 1.35rem + 0.75vw, 2.25rem);
	letter-spacing: clamp(0.15rem, 0.08rem + 0.35vw, 0.5rem);
	line-height: clamp(2.188rem, 2rem + 0.94vw, 3.125rem);
}

.midashieigo {
	font-family: "Rubik", sans-serif;
	font-size: clamp(1rem, 0.955rem + 0.23vw, 1.125rem);
}


h4 {
	font-size: calc(1.275rem + 0.3vw);
	line-height: 2rem;
}

.indent-1 {
	padding-left:1em;
	text-indent:-1em;
}

.indent-2 {
	padding-left: 2em;
    text-indent: -.7em;
}

h1,h2,h3,h4,h5,p {
	word-break: break-all;
}


/* 幅 */
/*60px-150px*/
.py-haba01 {
	padding-top: clamp(3.75rem, 2.679rem + 5.36vw, 9.375rem);
	padding-bottom: clamp(3.75rem, 2.679rem + 5.36vw, 9.375rem);
}
.pt-haba01 {
	padding-top: clamp(3.75rem, 2.679rem + 5.36vw, 9.375rem);
}
.pb-haba01 {
	padding-bottom: clamp(3.75rem, 2.679rem + 5.36vw, 9.375rem);
}

/*30px-75px*/
.py-haba02 {
	padding-top: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
	padding-bottom: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
}
.pt-haba02 {
	padding-top: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
}
.pb-haba02 {
	padding-bottom: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
}

.my-haba02 {
	margin-top: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
	margin-bottom: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
}
.mt-haba02 {
	margin-top: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
}
.mb-haba02 {
	margin-bottom: clamp(1.875rem, 1.313rem + 2.81vw, 4.688rem);
}

/*90px-180px*/
.py-haba03 {
	padding-top: clamp(5.625rem, 4.5rem + 5.63vw, 11.25rem);
	padding-bottom: clamp(5.625rem, 4.5rem + 5.63vw, 11.25rem);
}
.pt-haba03 {
	padding-top: clamp(5.625rem, 4.5rem + 5.63vw, 11.25rem);
}
.pb-haba03 {
	padding-bottom: clamp(5.625rem, 4.5rem + 5.63vw, 11.25rem);
}

.mt-haba01 {
	margin-top: clamp(3.75rem, 2.679rem + 5.36vw, 9.375rem);
}

.mt-30-90 {
	margin-top: clamp(1.875rem, 1.125rem + 3.75vw, 5.625rem);
}

.py-haba02 {
    padding-top: clamp(1.87rem, 1.3395rem + 2.68vw, 4.8675rem);
    padding-bottom: clamp(1.87rem, 1.3395rem + 2.68vw, 4.8675rem);
}

.py-haba03 {
	padding-top: clamp(6.25rem, 4.375rem + 9.38vw, 15.625rem);
	padding-bottom: clamp(6.25rem, 4.375rem + 9.38vw, 15.625rem);
}
.pt-haba03 {
	padding-top: clamp(6.25rem, 4.375rem + 9.38vw, 15.625rem);
}
.pb-haba03 {
	padding-bottom: clamp(6.25rem, 4.375rem + 9.38vw, 15.625rem);
}


/* ヘッダーロゴ設定 */
.h-02 .header-logo {
	width: 200px;
}
@media (min-width: 768px) {
	.h-02 .header-logo {
		width: 260px;
	}
}
@media (min-width: 992px) {
	.h-02 .header-logo {
		width: 400px;
	}
}
.h-02 #area-header .navbar-brand {
    margin-right: 20px;
    width: auto;
}

/* ヘッダーナビ　ホバー処理 */
.h-02 #area-header #menu-global .menu-item:hover {
    background-color: #fff;
}
.h-02 #area-header #menu-global .btn-contact.menu-item:hover a.nav-link {
    color: #000;
}
.h-02 #area-header #menu-global .btn-contact.menu-item:hover {
    background-color: #fff;
}
.h-02 #area-header #header-sub li:hover a {
	background-color: #fff;
	color: #000;
}

/* ヘッダーナビ設定 */
.h-02 #area-header #menu-global .menu-item .nav-link a {
	color: #000;
}
.h-02 #area-header #menu-global .menu-item {
    background-color: transparent;
}

.h-02 #area-header #menu-global .menu-item:last-child .nav-link:hover {
	background-color: #fff;
	color: #000;
}

.h-02 #area-header #menu-global {
	margin-top: 60px;
	padding: 6%;
}
@media (min-width: 768px) {
	.h-02 #area-header #menu-global {
		margin-top: 70px;
	}
}
@media (min-width:992px) {
	.h-02 #area-header #menu-global {
		padding: 0;
	}
}

.h-02 #area-header #menu-global .menu-item {
	margin-top: 10px;
}

.h-02 #area-header #menu-global .menu-item:last-child:hover {
	background-color: transparent;
}

@media (min-width: 992px) {
	.h-02 #area-header #menu-global .menu-item:last-child .nav-link {
	    padding-left: 20px;
	    padding-right: 20px;
	    padding-top: 8px;
	    padding-bottom: 8px;
	}
	.h-02 #area-header #menu-global .menu-item {
		margin-top: 0px;
	}
}

.h-02 #area-header.navbar {
	padding: 16px;
}
@media (min-width: 992px) {
	.h-02 #area-header.navbar {
		padding: 24px;
	}
}

.h-02 #area-header #menu-global .dropdown-menu li:last-child {
	padding: 0;
}

.h-02 #area-header #menu-global .dropdown-menu li:last-child a.nav-link {
	color: #000;
	padding: 15px 10px!important;
}

.h-02 #area-header #menu-global .dropdown-menu li:last-child a.nav-link:hover {
	color: #fff;
	background-color: #000;
}

/*　ハンバーガーメニューボタン　*/
@media (max-width: 576px) {
	.h-02 #area-header .hamburger {
		position: absolute;
	    right: 0;
	    z-index: 100;
	}
}
@media (max-width: 992px) {
	.h-02 #area-header .hamburger {
	    right: 5px;
	}
}
@media (max-width: 992px) {
	.h-02 #area-header .globalMenuSp {
	  	position: fixed;
		z-index: -1;
		top: 0;
		left: 0;
		background-image: url(img/spmenuhaikei.jpg);
		background-size: cover;
    	background-position: bottom left;
		width: 100%;
		transform: translateX(100%);
		height: 100vh;
	}

	.h-02 #area-header .globalMenuSp ul {
	  margin: 0 auto;
	  padding: 0;
	  width: 100%;
	}

	.h-02 #area-header .globalMenuSp ul li {
	  list-style-type: none;
	  padding: 0;
	  width: 100%;
	}
	.h-02 #area-header .globalMenuSp ul li:first-child {
		padding-top: 0px;
	}
	.h-02 #area-header .globalMenuSp ul li:last-child {
	  padding-bottom: 0;
	}
	.h-02 #area-header .globalMenuSp ul li:hover{
	  background :#ddd;
	}

	.h-02 #area-header .globalMenuSp ul li a {
	  display: block;
	  color: #fff;
	  padding: 1.5em 0;
	  text-decoration :none;
	}

	.h-02 #area-header .globalMenuSp.active {
	  opacity: 100;
	  display: block;
	   transform: translateY(0%);
	}

	.h-02 #area-header .globalMenuSp .btn-english a {
		display: inline-block;
		margin-top: 25px;
		padding: 15px 30px;
		background-color: #fff;
	}
}

.h-02 #area-header #menu-global li:hover .dropdown-menu {
	display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.h-02 #area-header .openbtn{
	position: relative;
	cursor: pointer;
    width: 50px;
    height:50px;
	border-radius: 5px;
}

.h-02 #area-header .openbtn .openbtn-area{
    transition: all .4s;
}

.h-02 #area-header .openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background: #000;
  	width: 45%;
}

.h-02 #area-header .openbtn span:nth-of-type(1) {
	top:15px;	
}

.h-02 #area-header .openbtn span:nth-of-type(2) {
	top:23px;
}

.h-02 #area-header .openbtn span:nth-of-type(3) {
	top:31px;
}

.h-02 #area-header .openbtn.active .openbtn-area{
	transform: rotateY(-360deg);
}

.h-02 #area-header .openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-135deg);
    width: 30%;
}

.h-02 #area-header .openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.h-02 #area-header .openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(135deg);
    width: 30%;
}

.h-02 #area-header {
	padding: 16px;
}
.h-02 #area-header #header-sub {
	 display: flex;
	 justify-content: right;
	 margin: 12px 0px 8px 12px;
}
@media (min-width: 992px) {
	.h-02 #area-header #navbarNav {
		margin: 8px 0px 12px 12px;
	}
}
.h-02 #area-header #header-sub li {
	list-style: none;
	margin-right: 10px;
}
.h-02 #area-header #header-sub li:last-child {
	margin-right: 0px;
}
.h-02 #area-header #header-sub li a  {
	font-size: 14px;
	background-color: #000;
	color: #fff;
	border-radius: 15px;
	padding-left: 24px;
	padding-right: 24px;
	padding-top: 5px;
	padding-bottom: 5px;
}

.h-02 #area-header #menu-global .menu-item.btn-contact {
	display: inline-block;
	background-color: #000;
}
.h-02 #area-header #menu-global .menu-item.btn-contact a {
	color: #fff;
}
@media (max-width: 992px) {
	.h-02 #area-header #menu-global .menu-item.btn-contact {
		background-color: #000;
	}
	.h-02 #area-header #menu-global .menu-item.btn-contact a {
		padding-top: 15px;
	    padding-bottom: 15px;
	}

	.h-02 #area-header .header_btn01 a,.h-02 #area-header .header_btn02 a {
		display: inline-block;
	    float: left;
	    width: 32%;
	    background-color: #000;
	    color: #fff!important;
	    border-radius: 15px;
	    margin-right: 2%;
	    padding-top: 10px!important;
	    padding-bottom: 10px!important;
	}
	.h-02 #area-header .header_btn03 a {
		display: inline-block;
	    float: left;
	    width: 32%;
	    background-color: #000;
	    color: #fff!important;
	    border-radius: 15px;
	    padding-top: 10px!important;
	    padding-bottom: 10px!important;
	}
}

.h-02 #area-header #navbarNav ul li.dropdown::before {
    content: '';
    position: absolute;
    right: -1%;
    top: 12px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #000000;
    border-right: 2px solid #000000;
    transform: rotate(135deg);
}
@media (min-width: 1200px) {
	.h-02 #area-header #navbarNav ul li.dropdown::before {
	    right: 5%;
	}
}

.h-02 #area-header #navbarNav li.dropdown ul{
	position: absolute;
	left:0;
	top:62px;
	z-index: 4;
	background:#28BFE7;
	width:180px;
	visibility: hidden;
	opacity: 0;
	transition: all .3s;
}

.h-02 #area-header #navbarNav ul ul li.dropdown::before{
	content:'';
	position: absolute;
	left:6px;
	top:17px;
	width:6px;
	height:6px;
    border-top: 2px solid #fff;
    border-right:2px solid #fff;
    transform: rotate(45deg);
}

.h-02 #area-header #navbarNav li.dropdown ul{
    left: 0;
    top: 36px;
    z-index: 4;
    background: #fff;
    width: 120%;
    visibility: hidden;
    opacity: 0;
    transition: all .3s;
    border-radius: 0;
    width: 150%;
}

.h-02 #area-header #navbarNav li.dropdown ul li {
	width: 100%;
}

.h-02 #area-header #navbarNav li.dropdown:hover > ul,
.h-02 #area-header #navbarNav li.dropdown ul li:hover > ul,
.h-02 #area-header #navbarNav li.dropdown:active > ul,
.h-02 #area-header #navbarNav li.dropdown ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

.h-02 #area-header #navbarNav li.dropdown ul li a{
	color: #fff;
	border-bottom: solid 2px #eeeeee;
}

.h-02 #area-header #navbarNav li.dropdown ul li:last-child a{
	border-bottom:none;
}

.h-02 #area-header #navbarNav li.dropdown ul li a:hover,
.h-02 #area-header #navbarNav li.dropdown ul li a:active{
	background: #000;
}


@media screen and (max-width:992px) {
	.h-02 #area-header #navbarNav{
		padding: 0;
	}
	
	.h-02 #area-header #navbarNav ul{
		display: block;
	}
	
	.h-02 #area-header #navbarNav li.dropdown ul,
	.h-02 #area-header #navbarNav li.dropdown ul ul{
	  	position: relative;
		left:0;
		top:0;
		width:95%;
		visibility:visible;
		opacity:1;
		display: none;
		transition:none;
	}

	.h-02 #area-header #navbarNav ul li.dropdown::before{
		right:20px;
		top: 22px !important;
	}

	.h-02 #area-header #navbarNav ul ul li.dropdown::before{
	    transform: rotate(135deg);
		left:20px;
	}
	    
	.h-02 #area-header #navbarNav ul li.dropdown.active::before{
	    transform: rotate(-45deg);
	}
}

@media (min-width: 992px) {
	.h-02 #area-header #menu-global li:hover .dropdown-menu li a {
	   	background-image: none!important;
	}
}

.h-02 #area-header #menu-global li:hover .dropdown-menu {
	padding: 15px;
}

.h-02 #area-header #menu-global li:hover .dropdown-menu li a {
	color: #000;
	display: block;
	padding: 15px 10px;
	width:  100%;
}

.h-02 #area-header #menu-global li .dropdown-menu li a:hover {
	color: #fff!important;
}

@media (max-width: 992px) {
	.h-02 #area-header #navbarNav ul li.dropdown::before {
	    right: 20px;
	    top: 30px!important;
	}

	.h-02 #area-header #menu-global .menu-item:hover {
	    background-color: transparent;
	}

	.h-02 #area-header #menu-global li:hover .dropdown-menu {
	    padding: 10px;
	}

	.h-02 #area-header #menu-global li .dropdown-menu > li {
		margin-top: 0;
	}
}

/*スマホナビ調整*/
@media (max-width: 992px) {
	.h-02 #area-header #menu-global li .dropdown-menu {
		display: block!important;
	}

	.h-02 #area-header #navbarNav li.dropdown ul {
		background: transparent;
		border: 0;
	}

	.h-02 #area-header #menu-global li .dropdown-menu li a {
		text-align: left;
		padding: 0.3rem 0!important;
		font-size: 12px;
	}

	.h-02 #area-header .globalMenuSp ul li a {
	    padding: 1.2em 0;
	    text-align: left;
	}

	.h-02 #area-header #navbarNav ul li.dropdown::before {
	    display: none;
	}

	.h-02 #area-header #menu-global .btn-contact {
	    display: block;
	    width: 100%;
	    margin: 20px auto 20px 0;
	    padding-left: 10px;
	    padding-right: 10px;
	}

	.h-02 #area-header #menu-global {
	    margin-top: 60px;
	}

	.h-02 #area-header #menu-global {
		padding: 0 20px 20px 20px;
	}

	.h-02 #area-header #navbarNav li.dropdown ul li a{
		color: #000;
		border-bottom: 0;
	}

	.h-02 #area-header #menu-global .dropdown-menu li:last-child a.nav-link {
		padding: 0px!important;
	}

	.h-02 #area-header #navbarNav li.dropdown ul li a:hover, .h-02 #area-header #navbarNav li.dropdown ul li a:active {
	    background: transparent;
	}

	.h-02 #area-header #menu-global li .dropdown-menu li a:hover {
	    color: #000!important;
	}

	.h-02 #area-header #menu-global li:hover .dropdown-menu {
	    padding: 0px;
	}

	.h-02 #area-header #menu-global .dropdown-menu li:last-child a.nav-link:hover {
		background-color: transparent;
	}
}

.tel-btn {
	background-color: #3fa037;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    vertical-align: top;
    padding: 0;
    width: 40px;
    height: 40px;
    margin-right: 15px;
    border-radius: 50%;
    font-size: 16px;
}

.tel-btn:hover {
	color: #fff;
	background-color: #aac600;
	transition-duration: .3s;
}

@media (min-width: 576px) {
	.tel-btn {
		position: absolute;
    	right: 70px;
    	top: 20px;
	}
}

.webapo {
	position: fixed;
	top: 45%;
	right: 0%;
	height: 100px;
	z-index: 99;
}

.lineapo {
	position: fixed;
	top: 60%;
	right: 0%;
	height: 100px;
	z-index: 99;	
}

.webapo:hover,.lineapo:hover {
  opacity: 0.7!important;
}

/* =================================================================================　H-02style  */


/*　FB-02style  ================================================================================= */

.fb-02 .grade {
	background: rgb(238,238,238);
	background: linear-gradient(0deg, rgba(238,238,238,1) 0%, rgba(238,238,238,1) 50%, rgba(255,255,255,0) 50%);
}

.fb-02 .link-btn1n .fb-tel {
  color: #000;
  font-family: 'Oswald', sans-serif;
  font-size: 24px;
  line-height: 1rem;
}
.fb-02 .link-btn1n:hover .fb-tel {
  color: #fff;
}

.fb-02 .link-btn1n {
   text-align: center;
   display: block;
   padding-top: 20px;
   padding-bottom: 20px;
   padding-left: 20px;
   padding-right: 20px;
   width: 100%;
   display: inline-block;
   position: relative;
   overflow: hidden;
   text-align: center;
   transition: ease .2s;
}

.fb-02 .link-btn1n span {
  position: relative;
  z-index: 3;
}

.fb-02 .link-btn1n:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}

.fb-02 .link-btn1n:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}

/* =================================================================================　FB-02style  */


/*　F-04style  ================================================================================= */

.f-04 .footer-logo {
	max-width: 400px;
	margin-left: 40px;
	margin-right: 40px;
}

.f-04 .footer-nav ul li a {
	color: #000;
}

.f-04 .jusitify-content-space-between {
	justify-content: space-between;
}

.f-04 #footerNav ul {
	display: flex;
	align-items: center;
	flex-direction: column;
}

@media (min-width: 992px) {
	.f-04 #footerNav ul {
		display: flex;
	    list-style: none;
	    flex-direction: row;
	    flex-wrap: wrap;
	    align-items: center;
	    justify-content: flex-end;
	}
}

@media (min-width: 992px) {
	#area-footer.f-04 .nav-link {
	    padding-left: 2em;
	    padding-right: 0;
	    padding-top: 0;
	    padding-bottom: 2em;
	}

	.f-04 .bb-1-ccc {
		border-bottom: 1px solid #ccc;
	}
}

.f-04 .oswald {
	font-family: 'Oswald', sans-serif;
}

.f-04 .tel p {
	font-size: 26px;
	letter-spacing: 0.1rem;
	line-height: normal;
}
@media (min-width: 992px) {
	.f-04 .tel p {
		font-size: 30px;
	}

	.eigyoujikan {
		letter-spacing: 0.15rem;
	}
}


.f-04 .link-btn1 {
   text-align: center;
   line-height: normal;
   display: block;
   padding-top: 15px;
   padding-bottom: 15px;
   padding-left: 15px;
   padding-right: 15px;
   width: 100%;
   display: inline-block;
   position: relative;
   overflow: hidden;
   text-align: center;
   transition: ease .2s;
   width: 235px;
}
@media (min-width: 992px) {
	.f-04 .link-btn1 {
		width: 250px;
	}
}

.f-04 .link-btn1 span {
  position: relative;
  z-index: 3;
}

.f-04 .link-btn1:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}

.f-04 .link-btn1:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}

/* =================================================================================　F-04style  */


/*　S-02style  ================================================================================= */

.slider {
  max-width: 500px;
  width: 80%;
}
.slick-img img {
  height: auto;
  width: 100%;
}

.slick-list {
  position: relative;
}

.slick-next.slick-arrow {
  position: absolute;
  top: 50%;
  right: 1%;
  z-index: 10;
  width: 35px;
  -webkit-transform: translate(0%,0%);
    -moz-transform: translate(0%,0%);
    -ms-transform: translate(0%,0%);
    -o-transform: translate(0%,0%);
    transform: translate(0%,0%);
}
.slick-prev.slick-arrow {
  position: absolute;
  top: 50%;
  left: 1%;
  z-index: 10;
  width: 35px;
  -webkit-transform: translate(0%,0%);
    -moz-transform: translate(0%,0%);
    -ms-transform: translate(0%,0%);
    -o-transform: translate(0%,0%);
    transform: translate(0%,0%);
}

@media (min-width: 992px) {
	.slick-next.slick-arrow,
	.slick-prev.slick-arrow {
		width: 50px;
	}
}

.s-02 .slide-dots {
	display: none;
}

.slick-list .slick-slide {
  padding-right: 2px;
}

.slick02 img {
  width: 100%;
}

.slick02 div {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: calc(100vh - 72px);
  margin: 0;
  border-radius: 250px 250px 0 0;
}
@media (min-width: 992px) {
	.slick02 div {
	  	height: calc(100vh - 139px);
	 }
}
@media (min-width: 768px) {
	.slick02 {
	  	margin-right: 100px;
	 }
}

.slick02 div.img01 {
  background-image: url(img/mv01.jpg);
}
.slick02 div.img02 {
  background-image: url(img/mv02.jpg);
}
.slick02 div.img03 {
  background-image: url(img/mv03.jpg);
}

@media (min-width: 768px) {
  .slick02 div.img01 {
    background-image: url(img/mv01.jpg);
  }
  .slick02 div.img02 {
    background-image: url(img/mv02.jpg);
  }
  .slick02 div.img03 {
    background-image: url(img/mv03.jpg);
  }
}

.slick02 .slick-dots {
  display: none!important;
}

.s-02 {
  position: relative;
}

.s-02 .text-box {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10;
}
.s-02 h1 {
  font-family: 'Oswald', sans-serif;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.2;
  padding: 0 50px;
  text-align: center;
  color: #fff;
}
@media (min-width: 992px) {
  .s-02 h1 {
    font-size: 70px;
  }
}

.slide-arrow.slick-next.slick-arrow {
  z-index: 11;
}

.overlay::after {
  	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	background: rgb(26 74 33 / 15%);
	border-radius: 250px 250px 0 0;
	mix-blend-mode: multiply;
}

.rogomark {
	position: absolute;
	width: 200px;
	top: 60%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 10;
}
@media (min-width: 992px) {
	.rogomark {
		width: 300px;
	}
}

/* =================================================================================　S-02style  */


/*　N-01style  ================================================================================= */

.n-01 .list-news .item-date {
  color: #999;
}

.n-01 .list-news .item-title {
  display: block;
  padding-top: 10px;
  padding-right: 20px;
  overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
@media (min-width: 768px) {
  .n-01 .list-news .item-title {
    display: inline-block;
    padding-top: 0;
    margin-left: 20px;
  }
}

.n-01 .item-arw img {
  width: 20px;
    position: absolute!important;
    right: 0;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.n-01 .list-news {
    border-top: 0px;
    border-bottom: 0px;
}

.n-01 .list-news li {
  border-bottom: 2px solid #eee;
}
@media (min-width: 768px) {
  .n-01 .list-news li+li {
      border-top: 0px;
  }
}

.n-01 .list-news .item-new {
  width: 40px;
    position: absolute!important;
    top: 50%;
    left: 15px;
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}

@media (max-width: 576px) {
  .n-01 .list-news .catname {
    min-width: 134px;
    display: inline-block!important;
    margin-top: 10px;
    margin-right: 35px!important;
  }
}

.n-01 .link-btn1 {
   background-color: #000;
   color: #fff;
   text-align: center;
   display: block;
   padding-top: 20px;
   padding-bottom: 20px;
   padding-left: 20px;
   padding-right: 20px;
   width: 100%;
   display: inline-block;
   position: relative;
   overflow: hidden;
   text-align: center;
   transition: ease .2s;
}
@media (min-width: 768px) {
  .n-01 .link-btn1 {
    width: 50%;
  }
}

.n-01 .link-btn1 span {
  position: relative;
  z-index: 3;
  color:#fff;
}

.n-01 .link-btn1:hover span{
  color: #000;
}

.n-01 .link-btn1:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background:#fff;
  width: 100%;
  height: 100%;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}

.n-01 .link-btn1:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}

.top-haba {
	margin-left: 15px;
	margin-right: 15px;
}
@media (min-width: 768px) {
	.top-haba {
		margin-left: 30px;
		margin-right: 100px;
	}
}

@media (min-width: 768px) {
	.top-haba2 {
		margin-right: 100px;
	}
}

.newsimg {
	background-image: url(img/newsimg.jpg);
	background-size: cover;
	background-position: center center;
	border-radius: 20px;
	min-height: 400px;
}

/* =================================================================================　N-01style  */


.t-03 {
	width: 100%;
	line-height: 1.5;
	background-color: #fff;
}

.t-03 tr td:nth-child(1) {
	background-color: #fff;
}

.t-03 tr th:nth-child(1) {
	width: 10%;
}

.t-03 tr th:nth-child(2),
.t-03 tr th:nth-child(3) {
	width: 45%;
}

.t-03 th {
	text-align: center;
	background: #fff;
	border: solid 1px #000;
	color: #3f3f3f;
	padding: 10px;
}
.t-03 td {
	text-align: center;
	border: solid 1px #3f3f3f;
	padding: 10px;
}

.t-03 tr td:nth-child(1) {
	color: #3f3f3f;
}
.t-03 tr td:nth-child(2) {
	color: #a4be1d;
}
.t-03 tr td:nth-child(3) {
	color: #a4be1d;
}

@media (min-width: 992px) {
	.t-03 tr th:nth-child(1),
	.t-03 tr th:nth-child(2),
	.t-03 tr th:nth-child(3) {
		width: 100%;
	}

  .t-03 tr {
    display: block;
    float: left;
  }
  .t-03 tr td, 
  .t-03 tr th {
    border-left: none;
    display: block;
    height: 50px;
  }
  .t-03 thead {
    display: block;
    float: left;
    width: 30%;
  }
  .t-03 thead tr {
    width: 100%;
  }
  .t-03 tbody {
    display: block;
    float: left;
    width: 70%;
  }
  .t-03 tbody tr {
    width: 14.2857%;
  }
  .t-03 tr td + td {
    border-left: none;
  }
  .t-03 tbody td:last-child {
    border-bottom: solid 1px #000;
  }

  .t-03 thead tr th {
  	border-bottom: 1px solid #fff;
  }
  .t-03 thead tr th:last-child {
  	border-bottom: 0px;
  }

  .t-03 tr td:nth-child(1) {
  	color: #3f3f3f;
  }
  .t-03 tr td:nth-child(2) {
  	color: #a4be1d;
  }
  .t-03 tr td:nth-child(3) {
  	color: #a4be1d;
  }

  .t-03 thead tr th:nth-child(3) {
  	border-bottom: solid 1px #3f3f3f;
  }

  .t-03 tbody tr td:nth-child(1),
  .t-03 tbody tr td:nth-child(2) {
  	border-bottom: 0;
  }

  .t-03 tbody tr.last td {
  	border-right: 0;
  }
}

@media (max-width: 992px) {
	.t-03 thead tr th {
		border-right: 1px solid #fff;
	}
	.t-03 thead tr th:last-child {
		border-right: 0;
	}

	.t-03 thead tr th {
		border-right: solid 1px #3f3f3f!important;
	}
}

.rounded20-2000 {
	border-radius: 20px;
}
@media (min-width: 992px) {
	.rounded20-2000 {
		border-radius: 0 20px 20px 0;
	}
}

.rounded20-20002 {
	border-radius: 20px 20px 0 0;
}
@media (min-width: 992px) {
	.rounded20-20002 {
		border-radius: 0 20px 0 0;
	}
}

.aboutimg {
	background-image: url(img/aboutimg.jpg);
	background-size: cover;
	background-position: center center;
	border-radius: 20px;
	min-height: 400px;
}

.informationimg {
	background-image: url(img/informationimg.jpg);
	background-size: cover;
	background-position: center center;
	border-radius: 20px;
	min-height: 400px;
}
@media (min-width: 992px) {
	.informationimg {
		min-height: 500px;
	}
}

.doctorprofileimg {
	background-image: url(img/doctorprofileimg.jpg);
	background-size: cover;
	background-position: center center;
	border-radius: 20px;
	min-height: 400px;	
}

.futabadentalkanban {
	background-image: url(img/futabadentalrogo.jpg);
	background-size: cover;
	background-position: center center;
	min-height: 230px;
	border-radius: 0 20px 0 0;
}
@media (min-width: 576px) {
	.futabadentalkanban {
		min-height: 400px;
	}
}
@media (min-width: 992px) {
	.futabadentalkanban {
		border-radius: 0;
		min-height: 515px;
	}
}

.webapo2 {
	width: 150px;
}

.bg-footer {
	background-image: url(img/bg-footer.jpg);
	background-size: cover;
	background-position: center center;	
}

#toPageTop a {
    display: block;
    width: 45px;
    height: 45px;
    font-size: 25px;
    background-color: #3fa037;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px 0 0 10px;
}
@media (min-width: 768px) {
	#toPageTop a {
	    width: 77px;
	    height: 77px;
	}
}

#toPageTop {
    position: fixed;
    bottom: 5rem;
    right: 0;
    z-index: 9998;
}

/*　P-03style  ================================================================================= */
.l-page-title.p-03 .bg-pagetitle_img {
    min-height: clamp(20rem, 14.31rem + 45.49vw, 40.5rem);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    border-radius: 250px 250px 0 0;
}

.l-page-title.p-03 {
    position: relative;
}

.l-page-title.p-03 h1 {
    font-size: clamp(1.25rem, 0.8rem + 2vw, 3rem);
}

.top-haba3 {
	margin-left: 15px;
	margin-right: 15px;
}
@media (min-width: 768px) {
	.top-haba3 {
		margin-left: 100px;
		margin-right: 100px;
	}
}
@media (min-width: 1500px) {
	.top-haba3 {
		margin-left: 10%;
		margin-right: 10%;
	}
}

.archive .top-haba3,
.single .top-haba3,
#privacy .top-haba3 {
	margin-left: 0px;
	margin-right: 15px;
}
@media (min-width: 768px) {
	.archive .top-haba3,.single .top-haba3,#privacy .top-haba3 {
		margin-left: 0px;
		margin-right: 100px;
	}
}
@media (min-width: 1500px) {
	.archive .top-haba3,.single .top-haba3,#privacy .top-haba3 {
		margin-left: 0px;
		margin-right: 10%;
	}
}

#privacy .breadcrumb {
	margin-left: 15px;
}
@media (min-width: 768px) {
	#privacy .breadcrumb {
		margin-left: 100px;
		margin-right: 100px;
	}
}
@media (min-width: 1500px) {
	#privacy .breadcrumb {
		margin-left: 10%;
		margin-right: 10%;
	}
}

.top-haba4 {
	margin-left: 15px;
	margin-right: 15px;
}
@media (min-width: 768px) {
	.top-haba4 {
		margin-left: 100px;
		margin-right: 100px;
	}
}
@media (min-width: 1500px) {
	.top-haba4  {
		margin-left: 10%;
		margin-right: 10%;
	}
}

.archive .l-page-title.p-03 .bg-pagetitle_img2 {
    border-radius: 0 20px 20px 0;
}
.single .l-page-title.p-03 .bg-pagetitle_img2 {
    border-radius: 0 20px 20px 0;
}

#privacy .l-page-title.p-03 .bg-pagetitle_img2 {
    border-radius: 0 20px 20px 0;
}


#staff .l-page-title.p-03 .bg-pagetitle_img {
    min-height: clamp(20rem, 14.31rem + 45.49vw, 40.5rem);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    border-radius: 250px 250px 0 0;
}
@media (max-width: 992px) {
	#staff .l-page-title.p-03 .bg-pagetitle_img {
		background-position: 75%;
	}
}

#feature .l-page-title.p-03 .bg-pagetitle_img {
    min-height: clamp(20rem, 14.31rem + 45.49vw, 40.5rem);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    border-radius: 250px 250px 0 0;
}

.l-page-title.p-03 .bg-pagetitle_img2 {
    min-height: clamp(15rem, 15rem + 25vw, 30rem);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    border-radius: 20px;
}

.l-page-title .img-wrap {
	position: relative;
}

.l-page-title.p-03 h2 span {
	position: absolute;
	width: 100%;
	color: #fff;
	padding: 10px 20px;
	border-radius: 10px;
  	top: 50%;
  	left: 50%;
  	-webkit-transform: translate(-50%, -50%);
  	-moz-transform: translate(-50%, -50%);
  	transform: translate(-50%, -50%);
  	z-index: 10;
}

#privacy .l-page-title.p-03 h1 {
	position: absolute;
	width: 100%;
	color: #fff;
	padding: 10px 20px;
	border-radius: 10px;
  	top: 50%;
  	left: 50%;
  	-webkit-transform: translate(-50%, -50%);
  	-moz-transform: translate(-50%, -50%);
  	transform: translate(-50%, -50%);
  	z-index: 10;
}

#privacy .l-page-title.p-03 h1 span {
	color:  #fff!important;
}

/* =================================================================================　P-03style  */

h3.h3 {
    /*border-bottom: 1px solid #a4be1d;*/
    padding-bottom: calc(10px + 21px);
    position: relative;
}

h3.h3::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 8px;
	background-image: repeating-linear-gradient(-45deg, #b4a983 0px, #b4a983 1px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%);
	background-size: 8px 8px;
}

.futaba-map {
	height: 500px;
}
@media (min-width: 992px) {
	.futaba-map {
		height: 100%;
	}
}

.about_icon {
	height: 60px;
}

.breadcrumb a {
	color: #3fa037;
	font-size: 12px;
}
@media (min-width: 992px) {
	.breadcrumb a {
		font-size: 15px;
	}
}
.pankuzu_arrow {
	padding: 0 10px;
}

.yuji-syuku-regular {
  font-family: "Yuji Syuku", serif;
  font-weight: 400;
  font-style: normal;
}

.bb-profile {
	border-top: 1px solid #ccc;
}

.test__container {
  padding-top: 30px;
  padding-bottom: 30px;
}

.test-slick {
    width: 100%;
    margin: 15px auto;
   /* @include breakpoint(500px) {
        margin: 5% auto;
    }*/
}


.test-slick__item {
    margin-right: 5px;
    margin-left: 5px;
}

.test-slick__item img {
    height: auto;
    width: 100%;
}

.test-slick2 {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    /*@include breakpoint(500px) {
        margin: 5% auto;
    }*/
}

.test-slick2__item {
    margin-right: 5px;
    margin-left: 5px;
}

.test-slick2__item img {
    height: auto;
    width: 100%;
}

.slick-prev:before, .slick-next:before {
    color: #000066;
}

.naikanslide {
	
	margin:  0 auto;
}

.naikanslide .test-slick div {
	aspect-ratio: 6 / 4;
}
@media (min-width: 1200px) {
	.naikanslide .test-slick div {
		aspect-ratio: 16 / 8;
	}
}
@media (min-width: 1500px) {
	.naikanslide .test-slick div {
		aspect-ratio: 16 / 7;
	}
}

.facilities11 {
	background-image: url(img/facilities11.jpg);
	background-size: cover;
	background-position: center center;
}
.facilities11-2 {
	background-image: url(img/facilities11-2.jpg);
	background-size: cover;
	background-position: center center;
}
.facilities12 {
	background-image: url(img/facilities12.jpg);
	background-size: cover;
	background-position: center center;
}
.facilities13 {
	background-image: url(img/facilities13.jpg);
	background-size: cover;
	background-position: center center;
}
.facilities14 {
	background-image: url(img/facilities14.jpg);
	background-size: cover;
	background-position: center center;
}
.facilities15 {
	background-image: url(img/facilities15.jpg);
	background-size: cover;
	background-position: center center;
}

/*.slick-next.slick-arrow {
	display: none!important;
}
.slick-prev.slick-arrow {
	display: none!important;
}*/

.slick02 .cls-1 {
    fill: #fff;
}
.slick02 .cls-2 {
    fill: #3fa037;
}

.info_aicon {
	width: 80px;
}
@media (min-width: 992px) {
	.info_aicon {
		width: 100px;
	}
}

.bb-dashed-ccc {
	border-bottom: 1px dashed #ccc;
}

.facilities09 {
	background-image: url(img/facilities09.jpg);
	background-size: cover;
	background-position: center center;
	min-height: 500px;
	border-radius: 10px;
}

.facilities16 {
	background-image: url(img/about03.jpg);
	background-size: cover;
	background-position: center center;
	min-height: 500px;
	border-radius: 10px;
}



/*メニューをページ下部に固定*/
#sp-fixed-menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
/*    opacity: 0.9; */
   z-index: 99;
}
@media (min-width: 768px) {
	#sp-fixed-menu {
		display: none;
	}
}

/*メニューを横並びにする*/
#sp-fixed-menu ul{
   display: flex;
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
}

#sp-fixed-menu li{
   justify-content: center;
   align-items: center;
   width: 33.33%;
   padding:0;
   margin:0;
   font-size: 16px;
   font-weight: bold;
   border-right: 1px solid #fff;
}

/*左側メニューを緑色に*/
#sp-fixed-menu li:first-child a{
   background: #a4be1d;
	border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
	/*text-shadow: #2a3200 1px 0 20px;*/
}

#sp-fixed-menu li:nth-child(2) a{
   background: #439938;
}

#sp-fixed-menu li:last-child a{
   background: #2c7d21;
}

/*ボタンを調整*/
#sp-fixed-menu li a{
   color: #fff;
   text-align: center;
   display:block;
   width: 100%;
	 padding: 15px 0;
    line-height: 1.8;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
	/*text-shadow: #0c1c0a 1px 0 20px;*/
}

.btnshinefooter {
	position: relative;
	display:inline-block;
    background: #3fa037;
    color: #fff;
    padding: 15px 20px;
    text-decoration: none;
    outline: none;
    overflow: hidden;
}

.btnshinefooter:hover {
	color: #fff;
}

/*キラッと光る*/
.btnshinefooter::before {
	content: '';
	position: absolute;
	top: 0;
	left: -75%;
    width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.8) 100%);
	transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
.btnshinefooter:hover::before {
	animation: shine 1s;
}

@keyframes shine {
	100% {
		left: 150%;
	}
}


.loop_wrap{
	display: flex;
	overflow: hidden;
}
.loop_wrap img:first-child {
	animation: loop 50s linear -25s infinite;
}
.loop_wrap img:last-child {
	animation: loop2 50s linear infinite;
}
@keyframes loop {
	0% {
		transform: translateX(100%);
	}
	to {
		transform: translateX(-100%);
	}
}
@keyframes loop2 {
	0% {
		transform: translateX(0);
	}
	to {
		transform: translateX(-200%);
	}
}

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: 1px dashed #5555;
    opacity: 1;
}

.fa-ul .cat-item a {
    color: #555!important;
}

.fa-caret-right:before {
    color: #a4be1d!important;
}

.background-tenpo {
	background-image: url(img/gaikan.jpg);
    /*background-attachment: fixed;*/
    background-size: cover;
    background-repeat: no-repeat;
    background-position: bottom center;
    border-radius: 10px;
    aspect-ratio: 16 / 10;
}


/*　RR-03style  ================================================================================= */

.RR-03 .loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
}

.RR-03 .loading.is-active {
  opacity: 0;
  visibility: hidden;
}

.RR-03 .loading-animation {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
}

.RR-03 .loading-animation.is-active {
  opacity: 1;
  visibility: visible;
}

.RR-03 #splash {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background:#fff;
  text-align:center;
  color:#fff;
}

.RR-03 #splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.RR-03 .logo_svg {
  width: 300px;
}
@media (min-width: 768px) {
  .RR-03 .logo_svg {
    width: 500px;
  }
}


/***************************************************
 * Generated by SVG Artista on 5/10/2024, 11:10:28 AM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

@-webkit-keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

@keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

.svg-elem-1 {
  -webkit-animation: animate-svg-fill-1 0.01s ease 0.05s both;
          animation: animate-svg-fill-1 0.01s ease 0.05s both;
}

@-webkit-keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

@keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

.svg-elem-2 {
  -webkit-animation: animate-svg-fill-2 0.01s ease 0.1s both;
          animation: animate-svg-fill-2 0.01s ease 0.1s both;
}

@-webkit-keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

@keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

.svg-elem-3 {
  -webkit-animation: animate-svg-fill-3 0.01s ease 0.15000000000000002s both;
          animation: animate-svg-fill-3 0.01s ease 0.15000000000000002s both;
}

@-webkit-keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

@keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

.svg-elem-4 {
  -webkit-animation: animate-svg-fill-4 0.01s ease 0.2s both;
          animation: animate-svg-fill-4 0.01s ease 0.2s both;
}

@-webkit-keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

@keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

.svg-elem-5 {
  -webkit-animation: animate-svg-fill-5 0.01s ease 0.25s both;
          animation: animate-svg-fill-5 0.01s ease 0.25s both;
}

@-webkit-keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

@keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

.svg-elem-6 {
  -webkit-animation: animate-svg-fill-6 0.01s ease 0.3s both;
          animation: animate-svg-fill-6 0.01s ease 0.3s both;
}

@-webkit-keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

@keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(63, 160, 55);
  }
}

.svg-elem-7 {
  -webkit-animation: animate-svg-fill-7 0.01s ease 0.35000000000000003s both;
          animation: animate-svg-fill-7 0.01s ease 0.35000000000000003s both;
}

@-webkit-keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-8 {
  -webkit-animation: animate-svg-fill-8 0.01s ease 0.4s both;
          animation: animate-svg-fill-8 0.01s ease 0.4s both;
}

@-webkit-keyframes animate-svg-fill-9 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-9 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-9 {
  -webkit-animation: animate-svg-fill-9 0.01s ease 0.45s both;
          animation: animate-svg-fill-9 0.01s ease 0.45s both;
}

@-webkit-keyframes animate-svg-fill-10 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-10 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-10 {
  -webkit-animation: animate-svg-fill-10 0.01s ease 0.5s both;
          animation: animate-svg-fill-10 0.01s ease 0.5s both;
}

@-webkit-keyframes animate-svg-fill-11 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-11 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-11 {
  -webkit-animation: animate-svg-fill-11 0.01s ease 0.55s both;
          animation: animate-svg-fill-11 0.01s ease 0.55s both;
}

@-webkit-keyframes animate-svg-fill-12 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-12 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-12 {
  -webkit-animation: animate-svg-fill-12 0.01s ease 0.6000000000000001s both;
          animation: animate-svg-fill-12 0.01s ease 0.6000000000000001s both;
}

@-webkit-keyframes animate-svg-fill-13 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-13 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-13 {
  -webkit-animation: animate-svg-fill-13 0.01s ease 0.6500000000000001s both;
          animation: animate-svg-fill-13 0.01s ease 0.6500000000000001s both;
}

@-webkit-keyframes animate-svg-fill-14 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-14 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-14 {
  -webkit-animation: animate-svg-fill-14 0.01s ease 0.7000000000000001s both;
          animation: animate-svg-fill-14 0.01s ease 0.7000000000000001s both;
}

@-webkit-keyframes animate-svg-fill-15 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-15 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-15 {
  -webkit-animation: animate-svg-fill-15 0.01s ease 0.7500000000000001s both;
          animation: animate-svg-fill-15 0.01s ease 0.7500000000000001s both;
}

@-webkit-keyframes animate-svg-fill-16 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-16 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-16 {
  -webkit-animation: animate-svg-fill-16 0.01s ease 0.8s both;
          animation: animate-svg-fill-16 0.01s ease 0.8s both;
}

@-webkit-keyframes animate-svg-fill-17 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-17 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-17 {
  -webkit-animation: animate-svg-fill-17 0.01s ease 0.8500000000000001s both;
          animation: animate-svg-fill-17 0.01s ease 0.8500000000000001s both;
}

@-webkit-keyframes animate-svg-fill-18 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-18 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-18 {
  -webkit-animation: animate-svg-fill-18 0.01s ease 0.9000000000000001s both;
          animation: animate-svg-fill-18 0.01s ease 0.9000000000000001s both;
}

@-webkit-keyframes animate-svg-fill-19 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-19 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-19 {
  -webkit-animation: animate-svg-fill-19 0.01s ease 0.9500000000000001s both;
          animation: animate-svg-fill-19 0.01s ease 0.9500000000000001s both;
}

@-webkit-keyframes animate-svg-fill-20 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-20 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-20 {
  -webkit-animation: animate-svg-fill-20 0.01s ease 1s both;
          animation: animate-svg-fill-20 0.01s ease 1s both;
}

@-webkit-keyframes animate-svg-fill-21 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-21 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-21 {
  -webkit-animation: animate-svg-fill-21 0.01s ease 1.05s both;
          animation: animate-svg-fill-21 0.01s ease 1.05s both;
}

@-webkit-keyframes animate-svg-fill-22 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-22 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-22 {
  -webkit-animation: animate-svg-fill-22 0.01s ease 1.1s both;
          animation: animate-svg-fill-22 0.01s ease 1.1s both;
}

@-webkit-keyframes animate-svg-fill-23 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-23 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-23 {
  -webkit-animation: animate-svg-fill-23 0.01s ease 1.1500000000000001s both;
          animation: animate-svg-fill-23 0.01s ease 1.1500000000000001s both;
}

@-webkit-keyframes animate-svg-fill-24 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-24 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-24 {
  -webkit-animation: animate-svg-fill-24 0.01s ease 1.2000000000000002s both;
          animation: animate-svg-fill-24 0.01s ease 1.2000000000000002s both;
}

@-webkit-keyframes animate-svg-fill-25 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-25 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-25 {
  -webkit-animation: animate-svg-fill-25 0.01s ease 1.2500000000000002s both;
          animation: animate-svg-fill-25 0.01s ease 1.2500000000000002s both;
}

@-webkit-keyframes animate-svg-fill-26 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-26 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-26 {
  -webkit-animation: animate-svg-fill-26 0.01s ease 1.3s both;
          animation: animate-svg-fill-26 0.01s ease 1.3s both;
}

@-webkit-keyframes animate-svg-fill-27 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

@keyframes animate-svg-fill-27 {
  0% {
    fill: transparent;
  }

  100% {
    fill: rgb(170, 198, 0);
  }
}

.svg-elem-27 {
  -webkit-animation: animate-svg-fill-27 0.01s ease 1.35s both;
          animation: animate-svg-fill-27 0.01s ease 1.35s both;
}


/* =================================================================================　RR-03style  */