@charset "utf-8";
/*全体の設定
---------------------------------------------------------------------------*/
body {
	color: #333;	/*全体の文字色*/
	/*background: url(../common/bg.jpg);	/*背景画像の読み込み（古いブラウザだとこの壁紙のみが出ます）*/
	/*background: url(../common/bg_tsubaki.png) no-repeat center -100px fixed, url(../common/bg.jpg);	/*背景画像(楓＋壁紙)の読み込み*/
	margin: 0px;
	padding: 0px;
	font-family: 'M PLUS Rounded 1c', sans-serif , 'Font Awesome 5 Free';
}
h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure{
	margin: 0px;
	padding: 0px;
}
ul{
	list-style-type: none;
}
.list-disc {
  list-style: disc;
  margin: 40px 20px;
  padding-bottom: 20px;
}
.list-disc li {
  margin-bottom: 20px;
}
img {
  border: none;
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  text-align: center;
}
input,textarea,select {
	font-size: 1em;
}
form {
	margin: 0px;
}
table {
	border-collapse:collapse;
	font-size: 100%;
	border-spacing: 0;
}
iframe {
	width: 100%;
}
.jumbotron {
  border-radius: 0;
}
.fade-in01 {
  animation: fadeIn 0.2s ease 0.3s 1 normal;
}
@keyframes fadeIn { /*animetion-nameで設定した値を書く*/

  0% {opacity: 0} /*アニメーション開始時は不透明度0%*/

  100% {opacity: 1} /*アニメーション終了時は不透明度100%*/

}
/*.modal-content {
  width: auto !important;
}
.modal-lg, .modal-xl {
  max-width:1200px;
}*/
/*文字（全般）設定
---------------------------------------------------------------------------*/
.container ol {
  padding-left: 34px;
}
.text-center-sp-left {
  text-align: center;
}
/*コンテンツタイトル--------*/
#contents-ti {
  color: #5D991D;
  line-height: 200%;
  text-align: center;
  padding: 10px;
  background-color: #F2EFBD;
  border-bottom: solid 4px #7DB03E;
}
#contents-ti h2 {
  font-size: 1.8em;
}
#contents-ti h2:before,h2:after {
  position: relative;
  top: 0;
  left: 0;
  margin-right: 20px;
  margin-left: 20px;
  content: '';/*何も入れない*/
  display: inline-block;
  width: 50px;
  height: 42px;
  background-image: url("../common/h2_a.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
/*項目タイトル--------*/
h3 {
  color: #529400;
  line-height: 200%;
  font-size: 1.4em;
  margin-top: 10px;
  margin-bottom: 10px;
}
h3:before {
  position: relative;
  top: 0;
  left: 0;
  margin-right: 4px;
  content: '';/*何も入れない*/
  display: inline-block;
  width: 44px;
  height:38px;
  background-image: url("../common/h2_a.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
h3 a {
  color: #529400;
}
h3 a:hover {
  color: #FF880E;
}
h4 {
  font-size: 1.2em;
}
/*------------------------------ font --------------------------------*/
.font-em08 {
	font-size: 0.8em;
}
.font-em12 {
	font-size: 1.2em;
}
.font-em14 {
	font-size:1.4em;
}
.font-em15 {
	font-size:1.5em;
}
.font-em22 {
	font-size:2.2em;
}
.font-grn {
  color: #006837;
}
a:hover {
  text-decoration: none;
}
a[href*="tel:"] { /*電話番号のタップ　スマホのみ*/
  pointer-events: none;
  text-decoration: none;
  color:#000 !important;
}
.tel {
    font-size: 1.4em;
  }
#font_tel { font-size: 2em;
}
#font_tel a { color: #CF0;
    text-decoration: none;
    -webkit-transition: 0.8s;
    -moz-transition: 0.8s;
    -o-transition: 0.8s;
    -ms-transition: 0.8s;
    transition: 0.8s;
}
.round-m {
  border-radius: 10px;
}
/*#font_tel a:hover {
	color: #3ba90a; animation:
}*/
.add a {
  color: #d49fc2;
  pointer-events: none;
}
a[href$=".pdf"]::after {
  padding-left: 10px;
  display: inline-block;
  content: url("../common/ico_pdf.png");
  vertical-align: middle;
  margin-top: 4px;
}

a[href$=".xlsx"]::after {
  padding-left: 10px;
  display: inline-block;
  content: url("../common/ico_excel.png");
  vertical-align: middle;
  margin-top: 4px;
}
a[href$=".docx"]::after {
  padding-left: 10px;
  display: inline-block;
  content: url("../common/ico_word.png");
  vertical-align: middle;
  margin-top: 4px;
}

/*tableの設定
---------------------------------------------------------------------------*/
.tbA {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  font-weight: normal;
}
.tbA tr {
  border-bottom: solid 1px #eee;
}
#n02 .tdA01 {
  text-align: right;
}

/*boxの設定
---------------------------------------------------------------------------*/
.boxB {
	box-sizing: border-box;
	width: 76%;
	border: solid #aaa 1px;
	padding: 3%;
	margin: 5%
}
.boxA {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.boxA .boxA-title {
    font-size: 1.2em;
    background: #E05735;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.boxA p {
    padding: 15px 20px;
    margin: 0;
}
.boxA ul {
    list-style-type: disc;
    padding-left: 2.2em;
}
.boxC {
  box-sizing: border-box;
  border: solid 2px #7db03e;
  border-radius: 10px;
	width: 100%;
	padding: 20px 40px;
	margin: 10px;
}
.box-red {
    padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: bold;
    color: #C60000;
    background: #FFF;
    border: solid 3px #C60000;
    border-radius: 10px;
}
.box-red p {
  font-size: 1.2em;
    margin: 0; 
    padding: 0;
}
.box-ble {
    padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: bold;
    color: #0088EE;
    background: #FFF;
    border: solid 3px #0088EE;
    border-radius: 10px;
}
.box-ble p {
  font-size: 1.2em;
    margin: 0; 
    padding: 0;
}
.box-ble ol {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
  /*background: #f5faff;*/
}
.box-ble ol li {
  position: relative;
  padding-left: 30px;
  line-height: 1.5em;
  padding: 1em 0.5em 1em 30px;
    font-size: calc(0.8rem + 0.4vw);
  font-weight: normal;

}
.box-ble ol li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*以下数字のデザイン変える*/
  display:inline-block;
  background: #0088EE;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
/*  font-size: 15px;*/
  font-size: calc(0.8rem + 0.4vw);
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
/*ボタン
---------------------------------------------------------------------------*/
.btn-border {
  display: inline-block;
  width: 80%;
  text-align: center;
  border: 2px solid #9ec34b;
  font-size: 1.2em;
  color: #9ec34b;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 4px;
  transition: .4s;
  margin-left: auto;
  margin-right: auto;
}
.btn-border:hover {
  background-color: #9ec34b;
  border-color: #cbe585;
  color: #FFF;
}

#shinseiA a  {
  cursor: pointer;
  clear: both;
  width: 80%;
  border-radius: 8px;
  padding: 20px 60px;
  display: inline-block;
  text-align: center;
  margin: 0 20px;
  transition: all 0.8s, color 0.3s 0.3s;
  background: #9ACC5F;
  color: #333;
}
#shinseiA a:hover {
  color:#fff;
}

.btn_a a  {
  cursor: pointer;
  clear: both;
  width: 80%;
  border-radius: 8px;
  padding: 20px 60px;
  display: inline-block;
  text-align: center;
  margin: 20px 0;
  transition: all 0.8s, color 0.3s 0.3s;
  background: #9ACC5F;
  color: #333;
}
.btn_a a:hover {
  color:#fff;
}
.btn-BB {
  margin-left: auto;
  margin-right: auto;
}
.btn-BB:hover{
  box-shadow: 0 0 0 10px #9ACC5F inset, 0 0 0 150px rgba(0,0,0,0.5) inset;
}

.btn-flat-border {
  display: inline-block;
  padding: 1em 2em;
  text-decoration: none;
  color: #5d991d;
  border: solid 2px #7db03e;
  border-radius: 3px;
  transition: .4s;
}
.btn-flat-border:hover {
  background: #7db03e;
  color: white;
}
#activ .btn-flat-border {
  display: inline-block;
  padding: 1em 2em;
  text-decoration: none;
  color: #5d991d;
  border: solid 2px #7db03e;
  border-radius: 3px;
  transition: .4s;
  background-color: #fff;
}
#activ .btn-flat-border:hover {
  background: #7db03e;
  color: white;
}

.btn-flat-border80 {
  letter-spacing: 0.6em;
  display: block;
  padding: 20px 10vw;
  margin-left: 10vw;
  margin-top: 20px;
  width: 60vw;
  text-align: center;
  text-decoration: none;
  color: #5d991d;
  background-color: #fff;
  border: solid 2px #7db03e;
  border-radius: 6px;
  transition: .4s;
}
.btn-flat-border80:hover {
  background: #7db03e;
  color: white;
}
.btn-flat-s {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #5d991d;
  border: solid 2px #7db03e;
  border-radius: 6px;
  transition: .4s;
}
.btn-flat-s:hover {
  background: #7db03e;
  color: white;
}

/*ヘッダー（サイト名ロゴが入ったブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	/*height: 80px;	/*ヘッダーの高さ*/
	/*width: 100%;*/
	max-width: 1200px;
	position: relative;
	z-index: 10;
}

#kusaobi {
  clear: both;
  position: relative;
  background-image: url("../common/kusa_a.png");
  height: 82px;
  margin-top: -6px;
}
#top-ti {
  display: none;
}
#page-ti {
  display: block;
  position: relative;
  text-align: center;
  height: 150px;
  width: 100%;
  background-color: #fff;
  border-bottom: solid 2px #DAE000;
  padding: 0;  
  background-image: url("../common/kusa_a.png");
  background-repeat: repeat-x;
  background-position: top;
}
#page-ti img{
  height: 68px;
  margin-top: 68px;
  z-index: 1;

        max-width: 100%;
        display: block;
        margin: 0 auto;
}
#page-logo {
  /*position: absolute;
  top: 40px;
  left: auto;*/
  height: 30px;
  z-index: 1;
}
#page-kusaobi {
  clear: both;
  position: relative;
 
  height: 68px;
  z-index: 10;
}

/*上部のメインメニュー
---------------------------------------------------------------------------*/
/*メニューブロック全体の設定*/
nav#menubar ul {
	height: 60px;	/*高さ*/
}
/*メニュー１個ごとの設定*/
nav#menubar ul li {
/*
	float: left;
	width: 12.5%;
*/
/*  width: calc(100vw/8);*/
}
/*
nav#menubar ul li {
  float: left;
  width: calc(1440px/9);
}
@media (min-width:768px) and (max-width:1440px){
  nav#menubar ul li {
    float: left;
    width: calc(100vw/9);
  }
}

nav#menubar ul li a {
	height: 50px;
	padding-top: 12px;
	line-height: 1.4;
	text-decoration: none;
	display: block;
  font-size: clamp(0.6rem, calc(0.6rem + 0.325vw), 1rem);
  color: white;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-align: center;
	transition: 0.8s;
}
nav#menubar ul li a:hover,
nav#menubar ul li.current a {
	color: #FAFF28;	
	border-bottom: 2px solid #FAFF28;
}
nav#menubar ul li a span {
	font-size: 10px;
	display: block;
	font-weight: normal;
}
*/
/*#FDFF87;	*/
/*--- パンくずリスト ---*/
.breadcrumb {
  margin: 0;
  padding: 0;
  list-style: none;
  position: absolute;
  top: 128px;
  right: 10px;
  background: none;
}

.breadcrumb li {
  display: inline;
  list-style: none;
  font-size: 0.8em;
  color: #999;
}

.breadcrumb li:after {
  font-family: "Font Awesome 5 Free";
  content: '\f0da';
  padding: 0 0.8em;
  color: silver;
  font-weight: 900;
}

.breadcrumb li:last-child:after {
  content: '';
}

.breadcrumb li a {
  text-decoration: none;
  color: #666;
}
.breadcrumb li a:hover {
  color: #007bff;
  text-decoration: none;
}

.breadcrumb li:first-child a:before { 
  font-family: "Font Awesome 5 Free";
  content: '\f015';
  font-weight: normal;
  color: #71A803;
  font-weight: 900;
  margin-right: 6px;
}

/*コンテナー（コンテンツを囲むブロック）
---------------------------------------------------------------------------*/
#hp_container {
	max-width: 1200px;
	margin: 0px auto;
}

/*メインコンテンツ
---------------------------------------------------------------------------*/
#main {
	/*float: left;	
	width: 100%;	
	padding-bottom: 30px;*/
}
/*mainコンテンツのh2タグの設定*/
#main h2 {
	width: 100%;
	clear: both;
	font-size: 100%;
	color: #000;
	padding: 7px 15px;
  background-color: beige;
}
#new h2 {
	width: 100%;
	clear: both;
	font-size: 1.2em;
	color: #000;
	padding: 18px 15px;
	margin-bottom: 10px;
  background-color: #e0c935;
}
#main h3 {
	clear: both;
	font-size: 100%;
	padding: 4px 15px;
}
/*mainコンテンツの段落タグ設定*/
#main p {
	padding: 0.5em 15px 1em;
	line-height: 240%;
}

/*menu.html内のメニュー案内の各ブロック
---------------------------------------------------------------------------*/
/*ボックスの設定*/
#main section.list {
	margin-bottom: 15px;	/*ボックス間のスペース*/
	padding: 20px;			/*ボックス内の余白*/
	border-radius: 10px;	/*角丸のサイズ*/
	background: #FFF;		/*背景色（古いブラウザだとここの色のみが出ます）*/
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#e5e5e5));	/*グラデーション*/
	background: -webkit-linear-gradient(#FFF, #e5e5e5);	/*同上*/
	background: linear-gradient(#FFF, #e5e5e5);			/*同上*/
	position: relative;
	overflow: hidden;
	color: #333;	/*文字色*/
}
/*ボックス内の段落タグ設定*/
#main section.list p {
	padding: 0px;
	margin-left: 34%;	/*左の写真とのバランスをとって設定*/
}
/*ボックス内の写真設定*/
#main section.list figure img {
	float: left;		/*画像を左へ回り込み*/
	background: #FFF;	/*画像の背景色。ここでは枠線と画像の間の色になります。*/
	padding: 5px;		/*余白。ここに上の行で設定した背景色が出ます。*/
	width: 30%;			/*写真の幅*/
	height: auto;		/*写真の高さ*/
	border: 1px solid #ccc;	/*線の幅、線種、色*/
}
/*ボックス内のh4タグ設定*/
#main section.list h4 {
	font-size: 100%;
	color: #3ba90a;		/*文字色*/
	margin-left: 34%;	/*左の写真とのバランスをとって設定*/
	border-bottom: 1px solid #3ba90a;	/*下側の線の幅、線種、色*/
	margin-bottom: 0.5em;
}

/*画像ギャラリー
---------------------------------------------------------------------------*/
.gallery img {
	margin:4px 1px ;
}

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	text-align: center;
  position: relative;
  bottom: 0px;
  /*height: 300px;*/
  /*background-color: #7CA803;*/
  background: #7CA803;	/*背景色（古いブラウザだとここの色のみが出ます）*/
	background: -webkit-gradient(linear, left top, left bottom, from(#7CA803), to(#fff));
	background: -webkit-linear-gradient(#7CA803, #fff);
	background: linear-gradient(#7CA803, #fff);
  padding-top: 0;
	margin-top: 180px;
}

footer #copy  {
  line-height: 100%;
  background-color: #4478e3;
  margin: 0px 0px 0px 0px;
  padding-top: 10px;
  padding-bottom: 10px;
  color: #fff;
  text-align:center;
}
#foot_img_top {
  background-image: url("../common/footer_kusa.png");
  background-repeat: repeat-x;
  height: 94px;
  width: 100%;
}
#copy p {
  position: absolute;
  bottom: 0;
}

/*foot ウエイブ -------------------*/
svg {
  width:100%;
}
.wave {
  animation: wave 3s linear;
  animation-iteration-count:infinite;
  fill: #4478e3;
}

.gooeff {
    filter: url(#goo);
}
#wave2 {
  animation-duration:5s;
  animation-direction: reverse;
  opacity: .6;
}
#wave3 {
  animation-duration: 7s;
  opacity:.3;
}
@keyframes wave {
  from {
    transform:translate(0);}
  to {transform: translateX(-100%);}
}
/*@keyframes ball {
  to {transform: translateY(20%);}
}*/

/*foot メニュー -------------------*/
nav-f ul{
  margin: 0 auto;
  padding: 0;
  text-align: left;
  line-height: 200%;
}
nav-f ul li{
  display: inline-block;
  position: relative;
  padding-left: 22px;
  margin-left: 10px;
  margin-right: 20px;
}
nav-f ul li a::after,
nav-f ul li a::before {
  display: block;
  content: " ";
  position: absolute;
}
nav-f ul li a::before { /*overからもどる時*/
  top: 20%;
  left: 0;
  width: 18px;
  height: 18px;
  background-color: #DAE000;
  border-radius: 100%;
  transition: 0.8s;
}
nav-f ul li a.current::before,
nav-f ul li a:hover:before{
background-color: #486328;
}
nav-f ul li a::after {
z-index: 12;
top: 40%;
left: 5px;
width: 5px;
height: 5px;
border-right: 1px solid #fff;
border-bottom: 1px solid #fff;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
  transition: 0.8s;
}
nav-f ul li a{
text-decoration: none;
color:#fff;
display: inline-block;
width: 100%;
  transition: 0.8s;
}
nav-f ul li a.current{
  color:#555;
}
nav-f ul li a:hover{
  text-decoration: none;
color:#486328;
}
/*サブメニュー*/
nav-g ul{
  margin: 0 auto;
  padding: 0;
  text-align: left;
  line-height: 200%;
}
nav-g ul li{
  display: inline-block;
  position: relative;
  padding-left: 22px;
  margin-left: 10px;
  margin-right: 20px;
  font-size: 0.8em;
}
nav-g ul li a::after,
nav-g ul li a::before {
  display: block;
  content: " ";
  position: absolute;
}
nav-g ul li a::before { /*overからもどる時*/
  top: 24%;
  left: 0;
  width: 16px;
  height: 16px;
  background-color: #aaa;
  border-radius: 100%;
  transition: 0.8s;
}
nav-g ul li a.current::before,
nav-g ul li a:hover:before{
background-color: #486328;
}
nav-g ul li a::after {
z-index: 12;
top: 40%;
left: 5px;
width: 5px;
height: 5px;
border-right: 1px solid #fff;
border-bottom: 1px solid #fff;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
  transition: 0.8s;
}
nav-g ul li a{
text-decoration: none;
color:#fff;
display: inline-block;
width: 100%;
  transition: 0.8s;
}
nav-g ul li a.current{
  color:#555;
}
nav-g ul li a:hover{
  text-decoration: none;
color:#486328;
}

.sns_ti {
  width: 100%;
  border-bottom: solid 2px #DAE000;
  color: #006837;
  font-weight: 800;
}
.card-body2 {
  margin-top: 30px;
}
.card-body3 {
  margin-top: 30px;
  color: #000!important;
}
.box-ad {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 30px 16px 50px;
  border: solid 4px #DAE000;
  border-radius: 10px;
  background-color: white;
}
.box-ad .box-title {
    position: absolute;
    display: inline-block;
    top: -20px;
    left: 20px;
    padding: 8px 12px;
    line-height: 1;
    font-size: 19px;
    background: #DAE000;
    color: #006837;
    font-weight: bold;
}
.box-ad p {
  font-size: 0.9em;
  margin: 0;
  padding: 0;
  color: #006837;
}
.box-ad2 img  {
  height: auto;
  width: 120px;
  margin-right: auto;
  margin-left: auto;
}
.box-ad2 {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  height: 230px;
  min-width: 0;
  word-wrap: break-word;
  background-clip: border-box;
}
.box-ad2 a {
  width: 100%;
  transition: background-color 1s linear;
  border-radius: 20px;
  padding: 8px;
}
.box-ad2 a:hover {
  display: block;
  background-color: #EEF5DA;
  text-decoration: none;
  transition: background-color 0.1s linear;
}
.box-ad3 p {
  font-size: 0.9em;
  margin: 0;
  padding: 0;
  color: #000;
}
/*テーブル１----------------------------------------*/
.ta1 {
	width: 100%;
}
.ta1, .ta1 td, .ta1 th{
	border: 1px solid #CCC;	/*テーブルの枠線の幅、線種、色*/
	line-height: 2;
}
/*テーブル内の右側*/
.ta1 td{
	padding: 10px;
}
/*テーブル内の左側*/
.ta1 th{
	width: 180px;	/*幅*/
	padding: 10px;
	text-align: center;
	background: #111;	/*背景色*/
}
/*テーブル１行目に入った見出し部分*/
.ta1 th.tamidashi{
	width: auto;
	text-align: left;
	color: #FFF;	/*文字色*/
	background: #333;	/*背景色（古いブラウザだとここの色のみが出ます）*/
	background: -webkit-gradient(linear, left top, left bottom, from(#4b4b4b), to(#333));	/*グラデーション*/
	background: -webkit-linear-gradient(#4b4b4b, #333);	/*同上*/
	background: linear-gradient(#4b4b4b, #333);			/*同上*/
}

/*　ページトップ　スクローラー　----------------------------------*/
#pageTop {
	background: rgba(80, 80, 80, 0.5);
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	display: none;
	color: #fff;
    position: fixed;
    bottom: 50px;
    right: 20px;
    width: 100px;
    height: 80px;
    line-height: 80px;
    font-size: 13px;
	border-radius: 8px;
	z-index:101;
    transition: background-color 0.3s linear 0.1s;
}
#pagetop {
	clear: both;
}
#pagetop a {
	color: #FFF;
}
#pagetop a:hover {
	/*border: 1px solid #FFF;*/
	color: #34471D;
  background-color: #DAE000;
	opacity:0.8;
}

/*その他 ---------------------------------------*/
.look {
	background: #333;
}
.mb15,
.mb1em {
	margin-bottom: 15px;
}
.clear {
	clear: both;
}
ul.disc {
	padding: 0em 25px 1em;
	list-style: disc;
}
.color1 {
	color: #3ba90a;
}
.newicon {
	background: #F00;
	color: #FFF;
	font-size: 10px;
	padding: 0px 5px;
	border-radius: 2px;
	margin-left: 5px;
}

/*トップページ
-----------------------------------------------------------------------------------------------------------------------------------*/
/*トップページのヘッド背景ビデオとメニュー*/
.video-container {
  position: relative;
}
.video-logo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
}
video {
  width: 100%;
  background: url("../index_images/video_image.jpg") no-repeat;
  background-size: cover;
  max-height: 800px;
  object-fit: cover;
  z-index: -1;
  margin: 0;
  padding: 0;
}
.pattern {
  width: 100%;
  height: 57vw;
  max-height: 800px;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  object-fit: cover;
  background: rgba(0,0,0,0.40);		/*背景色（古いブラウザだとここの色のみが出ます）*/
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF　0.5), to(#000　0.5));	
	background: -webkit-linear-gradient(#FFF　0.5, #000　0.5);
	background: linear-gradient(#FFF　0.5, #000　0.5);
}
#bb::before{
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.8);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
  z-index: 5;
}

.videologo {
	position: absolute;
  text-align: center;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
  object-fit: cover;
  /*z-index: 2;*/
}
.videologo h1 img {
  /*width: 50%;*/
  max-height: 12vw;
	margin: 0;
	}
.videologo p {
	color: #fff;
	font-weight: 100;
}
/*--- ヘッドコピー ---*/
#headcopy p{
  line-height: 220%;
}
/*--- 流し舟 (TOP)  ---*/
#dogrun_top {
  margin-top: 80px;
  margin-bottom: 100px;
}
/*--- 流し舟 (TOP)  ---*/
#nagashibune_top {
  margin-top: 80px;
  margin-bottom: 100px;
}
/*--- シェアサイクル (TOP)  ---*/
#sc_top {
margin-top: 80px;
margin-bottom: 100px;
}
/*--- イベント(TOP)  ---*/
#nevent_top {
  margin-top: 80px;
  margin-bottom: 100px;
}
/*--- お知らせ枠 (TOP)  ---*/
#konjyaku_top_info {
  margin-top: 80px;
  margin-bottom: 100px;
}
ul li .marusuu  {
  list-style: none;
  padding-left: 1.3em;
  text-indent: -1.3em;
}
/*--- 今昔写真集 (TOP)  ---*/
#konjyaku_top {
  margin-top: 80px;
  margin-bottom: 100px;
}
/*--- ライブカメラ(TOP) ---*/
#live_c {
  margin-top: 60px;
}
/*------------------------- 大切なお知らせ(TOP)  -------------------------*/
#news_daiji {
  margin-top: 60px; 
  padding-top: 20px;
  padding-bottom: 20px;
}
.box_imp {
  margin: 0 auto 2em; /* 外側の余白（上下と中央配置） */
  border: 1px solid #d60000;
  border-radius: 0 0 20px 20px;
  background-color: #FEF0F0;
  border-style: none solid solid;
  border-width: 2px;
}
.box_imp_ti {
  background-color: #d60000;
  color: #fff;
  padding: .5em 1em;
  text-align: center;
  font-weight: bold;
  font-size: 1.4em;
  border-radius: 19px 19px 0 0;
  border-bottom: 2px dashed #fff;
}
.box_imp .box-content {
    padding: 10px;
}
.box_imp p {
    margin: 0;
}
/*------------------------- お知らせ(TOP)  -------------------------*/
#news {
  padding-top: 20px;
  padding-bottom: 20px;
/*  background-color: #F4FEE6;*/
}
#news h3 {
  color: #fff;
  font-size: 1em;
  padding: 0;
  margin: 0;
  line-height: 150%;
}
#news h3:before {
  position: relative;
  top: 0;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 44px;
  height:38px;
  background-image: url("../common/h2_wht.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#news h3:after {
  position: relative;
  top: 0;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 44px;
  height:38px;
  background-image: url("../common/h2_wht.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}

.box_news {
  margin: 0 auto 2em; /* 外側の余白（上下と中央配置） */
  border: 1px solid #62b300;
  border-radius: 0 0 20px 20px;
  background-color: #f2ffd6;
  border-style: none solid solid;
  border-width: 2px;  
  height: auto;
  padding: 40px 0 60px;
  background: url("../common/kusa_a.png") repeat-x top, url("../common/kusa_bottom.png") repeat-x bottom, #F4FEE6;
}
.box_news_ti {
  background-color: #62b300;
  color: #fff;
  padding: .5em 1em;
  text-align: center;
  font-weight: bold;
  font-size: 1.4em;
  border-radius: 19px 19px 0 0;
  border-bottom: 2px dashed #fff;
}
.box_news .box-content_news {
  padding: 28px 8px;
}


.listdate {
  font-size: 0.8em;
}
ul.ruled {
    list-style: none outside none;
    padding-left: 0;
    margin-top: 0;
    margin-left: 0;
}
.ruled li {
    border-bottom: 1px dotted #0088cc;
    min-height: 1.6em;
    padding: 0.3em 0;
}
.listlinl {
  font-size: 1.4em;
}
.listlinl a {
  font-size: 1.4em;
}
.listlinl a:hover {
  text-decoration: underline;
}
/*.listlink a:visited {
  color: #007bff;
}*/
.text-ind {
  padding-left: 2em;
}

/*---アクティビティ（TOP）---*/
#activ {
  width: 100%;
  height: auto;
  padding: 2vw;
  background-image: url("../common/bg_green.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  clear: both;
}
#activ figcaption {
  font-size: 1.4em;
  text-align: center;
  margin-top: 10px;
}
#activ p {
  color: #251212;
}
#activ img {
  width: 100%;
  height: 100%;
}
#recommend {
  width: 100%;
}
#map {
  width: 100%;
  clear: both;
}
#map iframe {
  display: block;
  height: 700px;
}

/*-------------- gmap（TOP) --------------*/
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 10px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
/*width: 100%;*/
height: 100%;
}
#gak {
    padding: 20px;
    background-image: url(../common/bg_washi_a.jpg);
}

/*イベント
-----------------------------------------------------------------------------------------------------------------------------------*/
#event table {
  width: 100%;
  margin: 20px auto;
}
#event th ,table td {
  padding: 0.75em
}
#event tr {
  border-bottom: dotted 1px #aaa;
}
.container .tbl-r05 tr {
}
.container .tbl-r05 tr {
}
#event .td01:before {
  position: relative;
  top: 4px;
  left: 0;
  content: url("../common/ico_event.png");
  margin-right: 10px;
}
.tbl-r05 th {
  background: #EAFFD1;
}

/*公園のご案内 about
-----------------------------------------------------------------------------------------------------------------------------------*/
#top_img  {
  position: relative;
  padding: 0;
  background-image: url("../pages/about_images/img_about_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#top_img span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#top_img01  {
  position: relative;
  padding: 0;
  background-image: url("../pages/about_images/01img_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#top_img01 span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#top_img02 span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#top_img02  {
  position: relative;
  padding: 0;
  background-image: url("../pages/about_images/02img_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#top_img02 span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#top_img03  {
  position: relative;
  padding: 0;
  background-image: url("../pages/about_images/03img_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#top_img03 span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#top_img04  {
  position: relative;
  padding: 0;
  background-image: url("../pages/about_images/04img_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#top_img04 span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#top_img05  {
  position: relative;
  padding: 0;
  background-image: url("../pages/about_images/05img_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#top_img05 span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#promo-v {
  padding-top: 20px;
padding-bottom: 100px;
background-color: #F4FEE6;
}

#about table {
  width: 100%;
  margin: 20px auto;
}
#about  th ,table td {
  padding: 0.75em
}
#about tr {
  border-bottom: dotted 1px #aaa;
}
#about .td01:before {
  position: relative;
  top: 2px;
  left: 0;
  content: url("../common/ico_event.png");
  margin-right: 0px;
}
#attention ul {
  margin-left: 18px;
  line-height: 200%;
}
#attention li {
  padding-left: 10px;
  margin-left: 20px;
  list-style: disc;
}
#about .tbl-r05 th tr {
  border-bottom: none;
}
#link_list {
  margin-top: 100px;
}
/*ボタン-マーブル*/
.btn-m,
a.btn-m,
button.btn-m {
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  border-radius: 0.5rem;
}
a.btn-malformation {
  font-size: 1rem;
  margin: 1em 0;
  padding: 2.6rem 0rem;
  color: #008559;
  border-radius: 100% 40% / 80px 100%;
  transition:all 0.8s;
  width: 100%;
}
a.btn-malformation:hover {
  color: #fff;
  border-radius: 60% 80% / 100% 80%;
  transition:all 0.8s;
}

.btn-malformation--pastelA {
  background: #fca1a1;
  background: -webkit-linear-gradient(-45deg, #fca1a1 40%, #fcfc5d 100%);
  background: -webkit-linear-gradient(315deg, #fca1a1 40%, #fcfc5d 100%);
  background: linear-gradient(135deg, #fca1a1 40%, #fcfc5d 100%);
  -webkit-box-shadow: 20px 10px 0 #fefeb3;
  box-shadow: 20px 10px 0 #fefeb3;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fca1a1', endColorstr='#fcfc5d', GradientType=1);
}
.btn-malformation--pastelB {
  background: #60cf71;
  background: -webkit-linear-gradient(-45deg, #60cf71 40%, #fcfc5d 100%);
  background: -webkit-linear-gradient(315deg, #60cf71 40%, #fcfc5d 100%);
  background: linear-gradient(135deg, #60cf71 40%, #fcfc5d 100%);
  -webkit-box-shadow: 20px 10px 0 #fefeb3;
  box-shadow: 20px 10px 0 #fefeb3;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#60cf71', endColorstr='#fcfc5d', GradientType=1);
}
.btn-malformation--pastelC {
  background: #88dffc;
  background: -webkit-linear-gradient(-45deg, #88dffc 40%, #fcfc5d 100%);
  background: -webkit-linear-gradient(315deg, #88dffc 40%, #fcfc5d 100%);
  background: linear-gradient(135deg, #88dffc 40%, #fcfc5d 100%);
  -webkit-box-shadow: 20px 10px 0 #fefeb3;
  box-shadow: 20px 10px 0 #fefeb3;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#88dffc', endColorstr='#fcfc5d', GradientType=1);
}
.btn-malformation--pastelD {
  background: #a6a1fc;
  background: -webkit-linear-gradient(-45deg, #a6a1fc 40%, #fcfc5d 100%);
  background: -webkit-linear-gradient(315deg, #a6a1fc 40%, #fcfc5d 100%);
  background: linear-gradient(135deg, #a6a1fc 40%, #fcfc5d 100%);
  -webkit-box-shadow: 30px 10px 0 #fefeb3;
  box-shadow: 20px 10px 0 #fefeb3;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6a1fc', endColorstr='#fcfc5d', GradientType=1);
}
.btn-malformation--pastelE {
  background: #eba1fc;
  background: -webkit-linear-gradient(-45deg, #eba1fc 40%, #fcfc5d 100%);
  background: -webkit-linear-gradient(315deg, #eba1fc 40%, #fcfc5d 100%);
  background: linear-gradient(135deg, #eba1fc 40%, #fcfc5d 100%);
  -webkit-box-shadow: 20px 10px 0 #fefeb3;
  box-shadow: 20px 10px 0 #fefeb3;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eba1fc', endColorstr='#fcfc5d', GradientType=1);
}
.btn-malformation--pastelF {
  background: #eba1fc;
  background: -webkit-linear-gradient(-45deg, #b3d2fc 40%, #fc8deb 100%);
  background: -webkit-linear-gradient(315deg, #b3d2fc 40%, #fc8deb 100%);
  background: linear-gradient(135deg, #b3d2fc 40%, #fc8deb 100%);
  -webkit-box-shadow: 20px 10px 0 #fefeb3;
  box-shadow: 20px 10px 0 #fefeb3;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eba1fc', endColorstr='#fcfc5d', GradientType=1);
}
.mbtA {
  text-align: right;
}
#syoukai {
  margin-top: 80px !important;
}
#about_koukai {
  margin: 100px 0;
}
#about_koukai h5 {
  margin: 10px 4px 4px;
  font-size: 1em;
  font-weight: normal;
  border-bottom: 2px solid #000;
}
/*01中央園地
--------------------------------------------------------------------------------------------------------------------------------------------------------------*/
#dogrun-chu {
  margin-top: 130px !important;
  margin-bottom: 130px !important;
}
/*北園地*/
.btn-dog a {
  color: #fff;
}
.btn-dog:hover {
  background-color:#80D859;
}
.btn-dog {
    width:350px;
    height:50px;
    border-radius:5px;
    color:#FFF;
    font-weight:bold;
    background-color:#7db03e;
    transition:all 0.5s;
    position:relative;
}
.btn-dog:before {
    border-radius:5px;
    content:url("../common/btn_dog.png");
    position:absolute;
    top:17px;
    left:-10%;
    transition:all 0.8s;
}
.btn-dog:hover:before {
    left:110%;
}
/*06ドッグラン
--------------------------------------------------------------------------------------------------------------------------------------------------------------*/
#contents-ti_dog {
  color: #5D991D;
  line-height: 200%;
  text-align: center;
  padding: 10px;
  background-color: #F2EFBD;
  border-bottom: solid 4px #7DB03E;
}
#contents-ti_dog h2 {
  font-size: 1.8em;
}
#contents-ti_dog h2:before,#contents-ti_dog h2:after {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 20px;
  margin-left: 20px;
  content: '';/*何も入れない*/
  display: inline-block;
  width: 50px;
  height: 42px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#dogimage {
  background-image: url("../pages/about_images/img_dogrun_lg.jpg")
}
.dog_info_ti {
  font-size: 1.5em!important;
  font-weight: bold;
  text-decoration: underline;
}
#dogrun_time p {
  font-size: calc(0.8rem + 0.4vw);
}
.tbl-r06 th {
  background: #EAFFD1;
  padding: 10px;
  border: 1px solid #7db03e;
}
.tbl-r06 td {
  border: 1px solid #7db03e;
}

#dogrun_time {
  margin: 100px 0;
}
#dogrun_time h3 {
  color: #529400;
  font-size: 1.4em;
  margin: 20px 0 10px;
}
#dogrun_time h3:before {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 28px;
  height:28px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#dogrun_ryoukin {
  margin: 100px 0;
}
#dogrun_ryoukin h3 {
  color: #529400;
  font-size: 1.4em;
  margin: 20px 0 10px;
}
#dogrun_ryoukin h3:before {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 28px;
  height:28px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#dogrun_touroku {
  margin: 100px 0;
}
#dogrun_touroku h3 {
  color: #529400;
  font-size: 1.4em;
  margin: 20px 0 10px;
}
#dogrun_touroku h3:before {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 28px;
  height:28px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#dogrun_touroku ol {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
}
#dogrun_touroku ol li {
  position: relative;
  padding-left: 30px;
  line-height: 1.5em;
  padding: 0.5em 0.5em 0.5em 30px;
}

#dogrun_touroku ol li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*以下数字のデザイン変える*/
  display:inline-block;
  background: #96CC68;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#dogrun_moushikomi {
  margin: 100px 0;
}
#dogrun_moushikomi h3 {
  color: #529400;
  font-size: 1.4em;
  margin: 20px 0 10px;
}
#dogrun_moushikomi h3:before {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 28px;
  height:28px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#dogrun_kijyun {
  margin: 100px 0;
}
#dogrun_kijyun h3 {
  color: #529400;
  font-size: 1.4em;
  margin: 20px 0 10px;
}
#dogrun_kijyun h3:before {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 28px;
  height:28px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#dogrun_kiyaku {
  margin: 100px 0;
}
#dogrun_kiyaku h3 {
  color: #529400;
  font-size: 1.4em;
  margin: 20px 0 10px;
}
#dogrun_kiyaku h3:before {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 28px;
  height:28px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
#dogrun_kihon {
  margin: 100px 0;
}
#dogrun_kihon h3 {
  color: #529400;
  font-size: 1.4em;
  margin: 20px 0 10px;
}
#dogrun_kihon h3:before {
  position: relative;
  top: -4px;
  left: 0;
  margin-right: 4px;
  content: '';
  display: inline-block;
  width: 28px;
  height:28px;
  background-image: url("../common/h4_dog.png");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
/*流し舟
---------------------------------------------------------------------------------------------------------------------------------*/
#ntop_img  {
  position: relative;
  padding: 0;
  background-image: url("../pages/boat_images/n_img_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#n00 {
  margin-top: 80px;
}
#n00 p {
  font-size: 1.4em;
  line-height: 240%;
}
#n01 {
  margin-top: 80px;
}
#n02 {
  margin-top: 100px;
}
#n03 {
  margin-top: 40px;
}
.box-d {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 40px 16px;
  border-radius: 10px;
  background-color: #7ca803;
}
.box-d .box-title {
  color: #fff;
  padding: 8px 0px;
  margin-bottom: 10px;
  line-height: 1;
  font-size: 1.8em;
  font-weight: bold;
  text-align: center;
}
.box-d img  {
  margin-right: auto;
  margin-left: auto;
  text-align:  center;
}
.card-text-d {
  margin: 0; 
  padding: 0;
  color: #fff;
  text-align: center;
}

.text-attention {
  font-size: 1.4em;
  color: #CC0000;
}
#n04 {
  margin-top: 100px;
}
#n05 {
  padding: 40px 0;
  background-color: #EAFFD1;
}
#n06 {
  margin-top: 140px;
}
/*画像ギャラリー
---------------------------------------------------------------------------------------------------------------------------------*/
#gallery_bt {
  margin-top: 80px;
}
#gtop_img  {
  position: relative;
  padding: 0;
  background-image: url("../pages/gallery_images/g00img_head.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#gtop_img span {
 position: absolute;
  font-size: 0.8em;
  bottom: 4px;
  right: 8px;
}
#gtop_img_vr {
  position: relative;
  padding: 0;
  background-image: url("../pages/gallery_images/vr_image.jpg") ;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 60vh;
}
#gallery_sakura {
    margin-top: 100px;
}
#gallery_vr {
  margin-top: 100px;
}
#panorama {
  width: 800px;
  height: 400px;
}

/*アクセス
---------------------------------------------------------------------------*/
#access table {
  width: 100%;
  margin: 20px auto;
}
#access th, table td {
  padding: 0.75em
}
#access tr {
  border-bottom: dotted 1px #aaa;
}

/* お問い合わせページ
-------------------------------------------------------------------------------------------*/
#contact-form {
	margin-bottom: 0;
	margin-top: 10px;
}

#contact-form input,
#contact-form textarea {
  border: none;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
  border-radius: 10 px;
  -webkit-box-shadow: none;
	-moz-box-shadow: none;
	background: #f7f5e8;
  color: #333;
  font-size: 18px;
  height: auto;
  padding: 15px;
	margin: 4px;
  resize: none;
}
#contact-form input {
  width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#contact-form textarea {
  width: 100%;
	resize: vertical;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#contact-form .submit {
  background: #71A803;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  width: 50vw;
  max-width: 670px;
  height: 60px;
	margin-top: 30px;
	-webkit-transition: background 0.3s linear 0s, color 0.3s linear 0s;	
	   -moz-transition: background 0.3s linear 0s, color 0.3s linear 0s;
		 -o-transition: background 0.3s linear 0s, color 0.3s linear 0s;
		    transition: background 0.3s linear 0s, color 0.3s linear 0s;
}
#contact-form .submit2 {
  background: #999;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  width: 25vw;
  max-width: 278px;
  height: 60px;
	margin-top: 30px;  
	-webkit-transition: background 0.3s linear 0s, color 0.3s linear 0s;	
	   -moz-transition: background 0.3s linear 0s, color 0.3s linear 0s;
		 -o-transition: background 0.3s linear 0s, color 0.3s linear 0s;
		    transition: background 0.3s linear 0s, color 0.3s linear 0s;
}
#contact-form .submit:hover {
    background: #006837;
    color: #FFFFFF;
}
#contact-form .submit2:hover {
    background: #C40000;
    color: #FFFFFF;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
  color: #006837;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #006837;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #006837;
}

.contact-details h3 {
	color: #6a6a6a;
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 30px;
	line-height: 1em;
    text-transform: uppercase;
}

.contact-details ul {
	margin: 0;
	padding: 0;
	list-style: none;	
}

.contact-details ul li {
	margin: 0 0 20px;
	line-height: 28px;
	padding: 0;	
}

#response {
	margin-top: 20px;
	color: #FFFFFF;
}

.button-er {
  background: #71A803;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 18px;
  font-weight: 400;
  padding: 16px 40px;
  text-align: center;
  vertical-align: middle;
  width: auto;
	margin-top: 30px;  
	-webkit-transition: background 0.3s linear 0s, color 0.3s linear 0s;	
	   -moz-transition: background 0.3s linear 0s, color 0.3s linear 0s;
		 -o-transition: background 0.3s linear 0s, color 0.3s linear 0s;
		    transition: background 0.3s linear 0s, color 0.3s linear 0s;
}

/* --------------------------------- お問合せ　--------------------------------*/
/*inputボタンの設定 ------------------------------------*/
/*input[type="submit"],
input[type="button"],
input[type="reset"] {
	width: 250px;
	padding: 10px;
  margin-top: 40px;
	margin-bottom: 20px;
	border-radius: 30px;
	background: #71A803; 
	font-size: 16px;
	letter-spacing: 0.1em;
	border: 1px solid #999;
  transition: 0.3s;
}
/*ボタンのマウスオン時の設定*/
/*input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover {
	background: #006837;
  transition: 0.3s;
}*/

table.formTable{
	width: 90%;
	margin: 0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border: 1px solid #aaa;
	padding: 10px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}
p.error_messe{
	margin:5px 0;
	color:red;
}
#c02 ol {
	padding: 20px;
}
#c02 ol li {
	padding: 6px;
}
#c02 ul {
	padding-left: 30px;
	list-style-type: disc;
}

/* ここからタブレット用（481px～768px）環境の設定 
-----------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*@media (max-width:767px){*/
@media (min-width:481px) and (max-width:768px){
  
  .btn-flat-border80 {
    letter-spacing: 0.2em;
  }
/*全体の設定(タブレット) ---------------------------------------*/
  .img_none {
    display: none;
  }

/*コンテナー（HPを囲むブロック）(タブレット)------------------------------*/
/*#hp_container {
	width: auto;
	margin: 0px 20px;
}*/

/*ヘッダー（サイト名ロゴが入ったブロック）--------------------------------*/
/*h1タグの設定(タブレット)*/
/*header h1 {
	width: 63%;
	top: 8px;
}

/*メインメニュー(タブレット) ---------------------------------------*/
/*メニューブロック全体の設定-------*/
  #top-head {
    background-color: #34471D !important;
  }
  #top-ti {
    display: block;
    position: relative;
    top: 0;
    text-align: center;
    height: 120px;
    width: 100%;
    background-color: #fff;
    border-bottom: solid 2px #DAE000;
    padding: 0;  
    background-image: url("../common/kusa_a.png");
    background-size: 50% auto;
    background-repeat: repeat-x;
  }
  #top-ti img {
    height: 108px;
    padding-top: 40px;
    z-index: 1;
    max-width: 100%;
    display: block;
    margin: 0 auto;
  }

  #logo-m img {
    max-height:  46px;
  }
  nav#menubar ul {
	height: auto;
	overflow: hidden;
	padding-left: 0;
	border-bottom: none;
}
/*メニュー１個ごとの設定(タブレット）------------------------------------*/
/*
nav#menubar ul li {
	width: 50%;
  height: 48px;
  padding-top: 0;
	border-bottom: 1px solid #aaa;
  border-top: 1px solid #aaa;
	border-right:  1px solid #aaa;
	border-left: 1px solid #aaa;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;  
  }
nav#menubar ul li:nth-child(odd) {
	border-left: none;
}
  nav#menubar ul li a {
    padding-top: 6px;
  }
nav#menubar ul li a:hover,
nav#menubar ul li.current a {
}
  nav#menubar ul li a:hover,
nav#menubar ul li.current a {
	color: #529400;
	border-bottom: 6px solid #E0E41E;
}
*/

/*フットメニュー(タブレット）------------------------------------*/
    nav-f ul li {
    text-align: center;
    font-size: 1em;
    margin-top: 10px;
    margin-right: 6px;
    margin-left: 6px
  }
/*フッター(タブレット）------------------------------------*/
  .box-ad2 {
    margin-bottom: 10px;
  }
  .box-ad p {
    font-size: 0.8em !important; 
  }

/*main,subコンテンツ(タブレット) ----------------------------------*/
#main, #sub {
	float: none;
	width: auto;
}

/*その他(タブレット) ----------------------------------*/
/*<body class="s-n">指定の場合にsubブロックを表示させない設定*/
body.s-n #sub {
	display: none;
}

.gallery {
	text-align: center
}
/*トップページ(タブレット)
---------------------------------------------------------------------------*/
/*#top_text_box p {
	line-height: 2;
}*/

/*ビデオ(タブレット) 
---------------------------------------------------------------------------*/
  video {
    top: 60px;
    margin-top: 240px;
  }
  .videologo {
/*    width: 20%;*/
     top: 65%;
  }
  .pattern {
    height: 90%;
    margin-top:60px;
  }
  #activ figure {
    margin-bottom: 2vh;
  }
  #map iframe {
    display: block;
    height: 600px;
  }

/* aboutページ(タブレット)
---------------------------------------------------------------------------*/
  #top_img {
    width: 100%;
    max-height: 40vh;
  }
  #top_img01 {
    width: 100%;
    max-height: 40vh;
  }
  #top_img02 {
    width: 100%;
    max-height: 40vh;
  }
  #top_img03 {
    width: 100%;
    max-height: 40vh;
  }
  #top_img04 {
    width: 100%;
    max-height: 40vh;
  }
  #top_img05 {
    width: 100%;
    max-height: 40vh;
  }
  
  #n00 p {
  font-size: 1.2em;
  line-height: 200%;
  }
}

/* ここからスマートフォン用（480px以下）環境の設定 
-------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media (max-width : 480px){

/*全体の設定（スマホ）
---------------------------------------------------------------------------*/
  .container ol {
    padding-left: 22px;
  }
  h3 {
    font-size: 1.2em;
    margin-bottom: 
  px;}
  h3:before {
    width: 38px;
    height: 32px;
  }
  #shinseiA a {
    padding: 20px 8px;
    width: 90%;
  }
  a[href$=".pdf"]::before {
  padding-right: 4px;
  }
  a[href$=".xlsx"]::before {
  padding-right: 4px;
  }
  a[href$=".docx"]::before {
  padding-right: 4px;
  }
  
  .text-center-sp-left {
  text-align: left;
}
  .text-sp-center {
    text-align: center
  }
  /*boxの設定（スマホ）
---------------------------------------------------------------------------*/
.boxC {
	padding: 20px 4px;
}  
  .box-ble ol li:before{
    top: 28px;
   padding-right: 0;
    padding-left: 0;
  }
  .box-ble ol {
    padding: 0;
  }
  /*ボタンの設定（スマホ）
---------------------------------------------------------------------------*/
  .btn-flat-border80 {
letter-spacing: 0.2em;
display: block;
padding: 20px 0;
margin-left: 2vw;
margin-top: 20px;
width: 90vw;
}
  .btn_a a  {
    width: 98%;
  }
  
/*ボタン　電話番号　スマホのみリンク作動（スマホ） 
---------------------------------------------------------------------------*/
  .tel {
    font-size: 1em;
  }
  a[href*="tel:"] { 
    pointer-events: auto;
		/*font-size: 1.6em;*/
		color:#09F !important;
    }
.add a {
  color: #09F !important;
  pointer-events: auto;
  text-decoration: underline;
}
.add a:hover {
  color: #F90 !important;
}
  .btn-border {
    font-size: 1em;
    width: 100%;
    padding: 14px 8px;
  }

/*コンテナー（HPを囲むブロック）（スマホ） -------------*/
  #hp_container {
    margin: 0 10px;
  }

/*ヘッダー（サイト名ロゴが入ったブロック）（スマホ） -------------*/
/*ヘッダーブロック*/
header {
	height: auto;
}
/*h1タグの設定*/
  header h1 {
    display: none;
    /*width: 65%;*/
  }
/*ロゴ画像の設定（スマホ） -------------*/
  #top-ti {
    display: none;
  }
  #page-ti {
    display: none;
  }
  #contents-ti h2 {
    font-size: 1.4em;
    line-height: 150%;
    margin-top: 60px;
  }
  #contents-ti h2:before,h2:after {
    margin-right: 4px;
    margin-left: 4px;
    width: 30px;
    height: 25px;
    content: 50%;
  }
  .breadcrumb  {
    display: none;
  }

/*上部のメインメニュー（スマホ）----------------------------------*/
/*メニューブロック全体の設定*/
nav#menubar ul {
	height: auto;
	overflow: hidden;
	padding-left: 0;
	border-bottom: none;
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
}

/*main,subコンテンツ（スマホ）----------------------------------*/
#main, #sub {
	float: none;
	width: auto;
}

/*mainコンテンツ（スマホ）--------------------------------------*/
/*mainコンテンツの段落タグ設定*/
#main p {
	padding: 0.5em 5px 1em;
}

/*menu.html内のメニュー案内の各ブロック（スマホ）--------------------*/
/*ボックス内の段落タグとh4タグ設定*/
#main section.list p,
#main section.list h4 {
	margin-left: 0;
}
/*ボックス内の写真設定*/
#main section.list figure img {
	float: none;
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	margin-bottom: 10px;
}
    
/*footer（スマホ）--------------------------------------------*/
  footer {
    margin-top: 80px;
  }
  footer #copy {
    font-size: 0.8em;
    line-height: 150%;
    padding-top: 10px;
    padding-bottom: 14px;
    margin-top: -1px;
  }
  nav-f ul {
    text-align: center;
  }
  nav-f ul li {
    text-align: center;
    font-size: 1em;
    margin-top: 20px;
    margin-right: 10px;
    margin-left: 10px
  }
  nav-g ul {
    text-align: center;
    margin-top: 20px;
  }
  nav-g ul li {
    font-size: 1em;
    text-align: center;
    margin-left: 6px;
    margin-right: 8px;
  }

/*トップページ内「更新情報・お知らせ」ブロック（スマホ）
---------------------------------------------------------------------------*/
#new {
    padding: 0 16px;
    padding-bottom: 20px;
	}

#new h2 {
	padding: 18px;
}
section#new h2.open {
	background: url(../common/btn_minus.png) no-repeat right center;
	background: url(../common/btn_minus.png) no-repeat right center;	
	background: url(../common/btn_minus.png) no-repeat right center;
	background-color: #f0e7aa;
	margin-bottom: 0;
}
section#new h2.close {
	background: url(../common/btn_plus.png) no-repeat right center;
	background: url(../common/btn_plus.png) no-repeat right center;
	background: url(../common/btn_plus.png) no-repeat right center;
	background-color: #f0e7aa;
	margin-bottom: 100px;
    border-bottom: solid 2px #e0c935;
}
/*ブロック全体の設定*/
#new dl {
	height: 780px;
	margin-bottom: 40px;
}
/*日付設定*/
#new dt {
	float: none;
	width: auto;
}
/*記事設定*/
#new dd {
	padding-left: 0;
}

/*テーブル１（スマホ）
---------------------------------------------------------------------------*/
  .ta1 {
    width: 100%;
  }
  /*テーブル内の右側*/
  .ta1 td{
    width: auto;
    padding: 2px;
  }
  /*テーブル内の左側の見出し部分*/
  .ta1 th{
    width: 100px;
    padding: 2px;
  }
  
  #activ .btn-flat-border {
    padding: 1em 1.2em;
  }

/*その他（スマホ）
---------------------------------------------------------------------------*/
/*<body class="s-n">指定の場合にsubブロックを表示させない設定*/
body.s-n #sub {
	display: none;
}

.boxB {
	box-sizing: border-box;
	width: 96%;
	border: solid #aaa 1px;
	padding: 5%;
	margin: 2%
}

/*トップページ（スマホ）
---------------------------------------------------------------------------*/
/*トップページの背景ビデオ（スマホ）*/
  .videologo {
    width: 40%;
    top: 55%;
  }
  .videologo p {
    font-size: 1.2em;
  }
  .videologo h1 img {
    display: none;
  }
  video {
    margin-top: 60px;
  }
  .pattern {
    display: none;
  }
  #kusaobi{
    height: 10vw;
    background-size: 100% auto;
  }
  .pattern {
    height: 100%;
    top: -60px;
  }
  
  #activ {
    background-position: center;
    padding: 50px 30px;
}
  .box-ad {
    font-size: 1.4em;
    width: 92%;
    margin: 0 auto;
  }
  .box-ad2 {
    margin-bottom: 40px;
  }
  .card-body2 {
    margin-top: 2px;
  }
.img_none {
	display: none;
}
.ggmap {
	margin: 14px;
}
  #map iframe {
    display: block;
    height: 400px;
  }

.sig {
	visibility: hidden;
}
.sig2 {
	visibility: visible;
}

#new iframe {
	height: 400px;
    margin-top: 30px;
}
  #tenki {
    display: none;
  }
  /*--- ライブカメラ(スマホ) ---*/
#live_c {
  margin-top: 80px;
}
  
/* イベント(スマホ)
---------------------------------------------------------------------------*/  
  .tbl-r05 .thead {
    display: none;
  }
  .tbl-r05 tr {
    width: 100%;
  }
  .tbl-r05 td {
    display: block;
    text-align: right;
    width: 100%;
    background-color: #EAFFD1;
  }
  .tbl-r05 td:first-child {
    background: #5D991D;
    color: #fff;
    font-weight: bold;
    text-align: center;
    border-radius: 20px 20px 0px 0px;
  }
  .tbl-r05 td:before {
    content: attr(data-label);
    float: left;
    color: #086E00;
    font-weight: bold;
    font-size: 0.8em;
    margin-right: 2px;
  }
  .radius-bottom {
    border-radius: 0px 0px 20px 20px;
    margin-bottom: 20px;
  }
  #event table {
    margin: 20px 6px;
  }
  #event tr {
    border-bottom: none;
  }
  #event .td01:before{
    float: inherit;
  }  

/* aboutページ(スマホ)
---------------------------------------------------------------------------*/
#ads {
	padding: 20px;
}
a.btn-malformation {
  font-size: 1.2em;
  padding: 2em 0.8em;
  margin: 0.8em 0;
}
  .btn-m, a.btn-m, button.btn-m {
    font-weight: 900;
    letter-spacing: 0;
  }
/* 大事なお知らせ(スマホ)
---------------------------------------------------------------------------*/
  #news_daiji {
  margin-top: 0; 
}
/*お知らせ(スマホ) 
---------------------------------------------------------------------------*/
#news {
  padding-top: 0;
}
  
/* 09ドッグラン(スマホ)
---------------------------------------------------------------------------*/
  #nagashibune_top {
    margin-top: 20px;
    margin-bottom: 50px;
  }
    #contents-ti_dog h2 {
    font-size: 1.4em;
    line-height: 150%;
    margin-top: 60px;
  }
  #contents-ti_dog h2:before,h2:after {
    margin-right: 4px;
    margin-left: 4px;
    width: 30px;
    height: 25px;
    content: 50%;
  }
  .tbl-r06 .thead {
    display: none;
  }
  .tbl-r06 tr {
    width: 100%;
  }
  .tbl-r06 td {
    display: block;
/*    text-align: right;*/
    width: 100%;
    background-color: #EAFFD1;
    border: none;
    border-bottom: 1px solid #7db03e;
    border-right: 1px solid #7db03e;
    border-left: 1px solid #7db03e;
  }
  .tbl-r06 td:first-child {
    background: #5D991D;
    color: #fff;
    font-weight: bold;
    text-align: center;
    border-radius: 20px 20px 0px 0px;
  }
  .tbl-r06 td:before {
    display: block;
    content: attr(data-label);
/*    float: left;*/
    font-weight: bold;
    font-size: 0.8em;
    margin-right: 10px;
    text-align: left;
  }
  #top_img {
    width: 100%;
    max-height: 30vh;
  }
  #top_img01 {
    width: 100%;
    max-height: 30vh;
  }
  #top_img02 {
    width: 100%;
    max-height: 30vh;
  }
  #top_img03 {
    width: 100%;
    max-height: 30vh;
  }
  #top_img04 {
    width: 100%;
    max-height: 30vh;
  }
  #top_img05 {
    width: 100%;
    max-height: 20vh;
  }
/*流し舟（スマホ）
---------------------------------------------------------------------------*/
  #ntop_img {
width: 100%;
max-height: 30vh;
}
  #n_map{
    width: 90%;
}
  #n02 {
margin-top: 50px;
}
  #n06 {
  margin-top: 70px;
}
  
/*画像ギャラリー（スマホ）
---------------------------------------------------------------------------*/
  #panorama {
  width: 100%;
  height: 50vh;
}
/*06ドッグラン（スマホ）
--------------------------------------------------------------------------------------------------------------------------------------------------------------*/
  .dog_info_ti {
  font-size: 1.2em!important;
}
/*
  #dogrun_touroku ol li {
text-align-last: left;
}
  #dogrun_touroku ol li:before{
  text-align: center!important;

}
*/

/*お問い合わせ（スマホ）
---------------------------------------------------------------------------*/

#contact-form input {
    width: 100% !important;
}
#contact-form textarea {
	width: 100%;
}
    #contact-form .submit {
    width: 100%;
    margin-top: 4px;
  }
  #contact-form .submit2 {
    width: 100%;
    margin-top: 0;
    margin-bottom: 0;
  }
.yoyaku h3 {
	letter-spacing:normal !important;
	font-size: 1.2em !important;
}
#contact-form {
	margin-top: 20px;
}
#g01 .ti_bg_s {
	display: none;
}
#c02 ol {
	font-size: 0.8em;
}
#c02 ol li {
	padding: 2px;
}
#c02 ol {
padding: 0 0 0 20px;
}

}
/*------------------------------------------------- /スマートフォン用（480px以下）環境の設定ここまで ----------------------------------------------*/


/* =====================
	タブレット向け
======================= */
@media screen and (min-width: 480px) and (max-width: 959px) {

.pageTop {
	width:100%;
}
.pageTop a {
	left:-68px;
	margin-left:100%;
}
}

/* =====================
	スマホ向け
======================= */
@media screen and (max-width: 479px) {

  .pageTop {
    width:100%;
  }
  .pageTop a {
    left:-68px;
    margin-left:100%;
  }
  .non-sp {
  display: none;
  }
}

@media screen and (min-width: 768px){
.br-sp {
  display: none; 
  }

}


.Form-CheckItem {
  margin-top: 24px;
}
@media screen and (max-width: 480px) {
  .Form-CheckItem {
    margin-top: 18px;
  }
}
.Form-CheckItem-Label {
  margin-top: 20px;
  position: relative;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.Form-CheckItem-Label-Input {
  display: none;
}
.Form-CheckItem-Label-SquareIcon {
  border: 1px solid #7db03e;
  display: block;
  flex: none;
  width: 24px;
  height: 24px;
  background: #fff;
}
.Form-CheckItem-Label-Text {
  padding-left: 8px;
  font-size: 24px;
}

@media screen and (max-width: 480px) {
  .Form-CheckItem-Label-SquareIcon {
    width: 15px;
    height: 15px;
  }
  .Form-CheckItem-Label-Text {
    padding-left: 6px;
    font-size: 4.2vw;
    font-weight: bold;
  }
  .text-attention {
    font-size: 4.2vw;
    font-weight: bold;
  }
}
.Form-Btn {
  letter-spacing: 0.6em;
  text-align: center;
  border-radius: 6px;
  border: solid 2px #7db03e;
  margin-top: 32px;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 10vw;
  width: 60vw;
  display: block;
  background: #fff;
  color: #5d991d;
  font-weight: bold;
  font-size: 20px;
  opacity: 0.5;
  pointer-events: none;
  transition: all 0.2s;
}
.Form-Btn:hover {
  background: #7db03e;
  color: white;
}
@media screen and (max-width: 480px) {
  .Form-Btn {
    letter-spacing: 0.2em;
    display: block;
    margin-top: 24px;
    padding: 20px 0;
    width: 90vw;
  }
}
.Form-Btn.isActive {
  opacity: 1;
  pointer-events: inherit;
}
.Form-CheckItem-Label-Input:checked + *:before {
  content: "";
  display: block;
  width: 18px;
  height: 2px;
  background: #5bc8ac;
  transform-origin: bottom left;
  transform: rotateZ(90deg);
}
.Form-CheckItem-Label-Input:checked + *:after {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background: #5bc8ac;
  transform-origin: bottom left;
  transform: rotateZ(0deg);
}
.Form-CheckItem-Label-Input:checked + * {
  width: 0;
  height: 0;
  transform: translate(8px, 8px) rotateZ(-135deg) scale(1.5);
}
@media screen and (max-width: 480px) {
  .Form-CheckItem-Label-Input:checked + * {
    transform: translate(5px, 7px) rotateZ(-135deg) scale(1.5);
  }
}
