@charset "utf-8";

/*---------------------------------------------------------------
		ページ共通
--------------------------------------------------------------- */
body {
	background-color: #89c997;
	font-family: "Century Gothic","arial","メイリオ","YuGothic";
}

/** リンク　ベース **/
a {
	text-decoration: none;
}
a:link {
	color: #fff;
}
a:visited {
	color: #fff;
}
a:hover {
	background-color: #89c997;
	color: #fff;
}
a:active {
	color: #fff;
}

/** pとかhrとか **/
p {
	margin: 20px 60px  ;
	padding: 0;
	color: #000;
	line-height:115%;
	text-indent: 0em;
}


ul, ol, li {
	list-style-type: none;
	margin: 0;
	padding: 0;
	text-decoration: none;
}

img {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border: none;
}

section {
	width: 100%;
	height: 100%;
	margin: 0 auto 20px;
	padding: 0;
	border: none;
}

/** 見出し装飾 **/

h1 {
	margin: 0;
	padding: 0;
	line-height: 0;

}

h2 {
	margin: 20px 15px;
  padding: 0.4em 0.5em;/*文字の上下 左右の余白*/
	border-left: solid 5px #004d25;/*左線*/
  border-bottom: solid 3px #d7d7d7;/*下線*/
  background: #f4f4f4;/*背景色*/
	color: #494949;/*文字色*/
	font-size: 22px;

}

h3 {
	margin: 15px 40px;
	padding: 3px 30px;
  color: #fff;
  border-radius: 100vh;
  background-image: -webkit-gradient(linear, right top, left top, from(#a3d6cc), to(#006a6c));
  background-image: -webkit-linear-gradient(right, #a3d6cc 0%, #006a6c 100%);
  background-image: linear-gradient(to left, #a3d6cc 0%, #006a6c 100%);

}



h4 {
	margin: 20px 60px;
	padding: 3px 10px;
	color: #006a6c;
	border-bottom: dashed 2px #006a6c;
	line-height: 110%;
	font-size: 15px;
}
h5 {
	margin: 10px 55px;
	padding: 0;
	line-height: 100%;
	font-size: 15px;
}
h6 {
	margin: 0;
	padding: 0;
	line-height: 100%;
}

/* ▼表全体の装飾 */

table {
	width: 80%;
	margin: 0 auto;
	border: 2px solid #004d25;  /* 表の罫線(=セルの枠線) */
	font-size: 15px;
	text-align: center;
  border-collapse: collapse;
}
table th {
  width: 22%;
	padding: 10px;
  border: 1px solid #004d25;
  box-sizing: border-box;
	background:  #89c997;
	font-weight: bold;
	font-size: 16px;
	text-align: center;
  vertical-align: middle;
}
table td {
	padding: 5px;
  border: 1px solid #004d25;
  box-sizing: border-box;
  background: #fff;
	text-align: center;
  vertical-align: middle;
}

@media all and (max-width: 700px) {
  table th, table td {
    display: block;
    width: 100%;
    border-bottom: none;
  }
  table tr:last-child td:last-child {
    border-bottom: 1px solid #ccc;
  }
}

/*---------------------------------------------------------------
		id
--------------------------------------------------------------- */
#header {
	display: table;
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	table-layout: fixed;
}

#nav {
	margin: 0;
	padding:10px;
	background: #2e8b57;
	font-weight: bold;
	font-size: 16px;
}
	#nav ul {
		margin: 0;
		padding:0;
		text-align: center;
	}
	#nav li {
		display: -moz-inline-box;
		display: inline-block;
		*display: inline;
		*zoom: 1;
		padding: 0 10px;
		}

#footer {
	display: table;
	text-align: center;
	table-layout: fixed;
}


#aisatsu, #overview, #program, #regist,
#sankasha, #happyo, #contact, #footer {
			margin: 10px auto;
			padding:10px;
				}

#aisatsu p {
	margin: 10px 80px;
	padding: 0;
	line-height:115%;
	text-indent: 1em;
}


#regist ul {
	margin: 0;
	padding:0;
	text-align: center;
}
#regist li {
	display: -moz-inline-box;
	display: inline-block;
	*display: inline;
	*zoom: 1;
		margin: 10px;
	padding: 0 10px;
}
#regist a:link {
	color: #000;
	/* font-weight: bold; */
}

#regist a:visited {
	color: #000;
}
#regist a:hover {
	color: #000;
}
#regist a:active {
	color: #000;
}


#happyo a:link {
	color: #004d25;
	font-weight: bold;
}
#happyo a:visited {
	color:  #004d25;
}
#happyo a:hover {
	color:  #004d25;
}
#happyo a:active {
	color: #004d25;
}


#contact p {
	margin: 5px 60px;
	padding: 0;
	line-height:115%;
	text-indent: 1em;
}

#contact p {
	margin: 5px 60px;
	padding: 0;
	line-height:115%;
	text-indent: 1em;
}
#contact a:link {
	color: #000;
}


/*---------------------------------------------------------------
		class
--------------------------------------------------------------- */
.box {
	display: table;
	margin: 40px auto;
	text-align: center;
}

.box2 {
	display: table;
	margin: -23px 20px;
	overflow: hidden;
}

.wbic {
	margin: 0 5px;
	line-height: -3px;
}

span{
  display: block;
	margin: 0 80px;
  text-align: right;
}

.regi {
	display: table;
	margin: 10px auto;
	text-align: left;
}

.regi p {
		 margin-left: 1rem;
		 text-indent: -1rem;
	 }


 .bunchu {
	 	display: inline-block;
	 	position: relative;
	   width: 250px;
	   height: 40px;
	 	padding: 10px;
	 	border-radius: 10px;
	   border: none;
	   box-shadow: 0 5px #004d25;
	 	background: #2e8b57;
	   color: #fff;
	   transition: all 0.3s ease;
	   outline: none;
	   cursor: pointer;
	 }
	 .btn:hover {
	 	background-color: #004d25;
	   box-shadow: 0 3px #004d25;
	   top: 1px;
	 }
	 .btn:active {
	   box-shadow: 0 0 #2e8b57;
	   top: 5px;
	 }


	#sankasha table {
	 	width: 60%;
	 	margin: 0 auto;
	 	border: 2px solid #004d25;  /* 表の罫線(=セルの枠線) */
	 	font-size: 15px;
	 	text-align: center;
	   border-collapse: collapse;
	 }
	#sankasha table th {
	   width: 22%;
	 	padding: 5px;
	   border: 1px solid #004d25;
	   box-sizing: border-box;
	 	background:  #89c997;
	 	font-weight: bold;
	 	font-size: 16px;
	 	text-align: center;
	   vertical-align: middle;
	 }
	#sankasha table td {
	 	padding: 5px;
	   border: 1px solid #004d25;
	   box-sizing: border-box;
	   background: #fff;
	 	text-align: center;
	   vertical-align: middle;
	 }

  @media screen and (max-width: 640px) {
 .midashi{
    display:none;
  }

 	#sankasha  table td {
    display: block;
    width: 100%;
    border-bottom:none;
  }
  #sankasha table td:first-child{
    background: #89c997;
    font-weight:bold;
  }
  #sankasha table td:before{
    content: attr(data-label);
		background: #89c997;
    font-size: .7rem;
    font-weight:bold;
    display: block;
  }
  #sankasha tr:last-child{
    border-bottom: solid 1px #ccc;
  }
}


/*---------------------------------------------------------------
		ボタン
--------------------------------------------------------------- */

.floating {
	position: fixed;
	right: 8px;
	bottom: 8px;
	display: none;
}
.floating a {
	display: block;
	color: #fff;
	background: #000;
	padding: 9px;
	text-decoration: none;
	opacity: 0.6;
}
.floating a:hover {
	opacity: 1;
}

.btn {
	display: inline-block;
	position: relative;
  width: 250px;
  height: 40px;
	padding: 10px;
	border-radius: 10px;
  border: none;
  box-shadow: 0 5px #004d25;
	background: #2e8b57;
  color: #fff;
  transition: all 0.3s ease;
  outline: none;
  cursor: pointer;
}
.btn:hover {
	background-color: #004d25;
  box-shadow: 0 3px #004d25;
  top: 1px;
}
.btn:active {
  box-shadow: 0 0 #2e8b57;
  top: 5px;
}

.btn2 {
	display: inline-block;
	position: relative;
  width: 250px;
  height: 65px;
	padding: 10px;
	border-radius: 10px;
  border: none;
  box-shadow: 0 5px #008b8b;
	background: #20b2aa;
  color: #fff;
  transition: all 0.3s ease;
  outline: none;
  cursor: pointer;
}
.btn2:hover {
	background-color: #2f4f4f;
  box-shadow: 0 3px #008b8b;
  top: 1px;
}
.btn2:active {
  box-shadow: 0 0 #008b8b;
  top: 5px;
}
