@charset "UTF-8";
/* CSS Document */

@media only screen and (min-width: 1200px){
	.inner{
		width: 1024px;
		padding-bottom: 120px;
	}
	section h2{
		padding: 50px 0 20px;
	}
	.txt h2{
		padding: 0 0 20px !important;
	}



}




@media only screen and (min-width: 800px){
	body{
		font-size:14px;
		background-color: #FFFFFF;

	}

  a#menu{
		display:none;
	}

	.panel{
		display:block !important;
	}



	/* SEC02
	-----------------*/

	.box{
	position: absolute;
	top: 5%;
	left: 10px;
	margin: 0 auto;
}


	/* SEC03
	-----------------*/

	.boxGraph{
	position: relative;
	top: 5vh;
	left: 10px;
	margin: 0 auto;
}


	/* SEC05
	-----------------*/
	#footer{
		padding: 30px 10px 70px 0;
		background-color: #4A9250;
		color: #FFFFFF;
	}

	/*sub---------------------------------------------------------------------------------------------------------------------------*/
	.boxSub{
		position: relative;
}



}

@media only screen and (min-width: 641px){
	.col2 li{
		width: 40%;
		padding: 0 3%;
		vertical-align: top;
	}

	#map iframe{
		width: 96% !important;
		left: 2%;
	}

}

@media only screen and (max-width: 820px){

	html{
		margin: 0 auto;
	}

	.slider{
		width: 80%;
	}



	section h2{
		padding: 45px 0 20px;
	}

	#slogan h1{
		font-size: 31px;
	}

	#slogan h2{
		font-size: 16px;
	}


	#contents{
		width: 85%;
		height: 30vh;
		margin-bottom: 0px;
	}

	.gif{
		display: none;
	}

	.box{
		width: 100%;
	}


	.box h2{
		padding:0;
		position: absolute;
		top: -40px;
		font-size: 2.5rem;
		font-weight: 900;
	}

	.top-left{
		width: 200px;
		height: 50px;
		top: 10px;
		font-size: 1rem;
	}

	.top-left::before {
		transform: skewX(-30deg);/*平行四辺形の角度*/
		content: "";
		position: absolute;
		top: -20px;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: -1;
		background: #000000;
		margin: 15px auto;
	}


	.contentsLeft{
		width: 200px;
		position: absolute;
		top: 7vh;
		left: 70vw;
	}

	.contentsLeft p{
		vertical-align:text-bottom;
	}

	.col3 li{
		margin: 0 auto;
		display: block;
		max-width: 288px;
	}

	.slick-dots button {
		color: transparent;
		outline: none;
		width:9px;/*ドットボタンのサイズ*/
		height:12px;/*ドットボタンのサイズ*/
		display:block;
		border-radius:50%;
		background:#ccc;/*ドットボタンの色*/
		border:none;
}


	.box{
		width: 100%;
	}


	.box h2{
		padding:0;
		position: absolute;
		top: 10px;
		font-size: 2.5rem;
		font-weight: 900;
	}


	.back{

	}


	.boxGraph{
		width: 95%;
	}


	.boxGraph h2{
		position: absolute;
		top: -30px;
		left: 5px;
		margin: 0 auto;
		font-size: 2.5rem;
		font-weight: 900;

	}

	.tbl-r05{
		text-align: center;
		width: 90%;;
		height: auto;
		position: absolute;
		top: 22%;
	}


	th{
		padding: 1px;
		font-size: 50%;
	}

	th span {
		display: inline-block;
	}

	.ht{
		white-space: nowrap;
	}

	.button019{
		position: absolute;
		top:80%;
		padding: 10px 0px;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}

	#graph{
		margin-bottom: 0px;
		background-image: none;
	}

	.boxGraph p{
		position: relative;
		top: 40%;
		left: 49%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		padding: 60px 40px 0px ;
		margin: 0 auto;
	}


	.login{
		padding-bottom: 3%;
	}



	#footer{
		color: #FFFFFF;
		background-color: #4A9250;
		padding-top: 50px;
	}

	#access{
		position: relative;
		top:0px;
	}

/*Sub--------------------------------------------------------------------------------------------------------------------------------------------------------*/
	.tbl-r06{
		text-align: center;
		width: 80%;;
		height: auto;
		margin-bottom: 20px;
	}

	.htSub{
		white-space: nowrap;
	}

	.googleCalendar iframe {
		width: 80%;
		height: 450px;
	}
	.button020{
		position: relative;
		top:75%;
		padding: 1% 0px 3%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}


	.boxSub{
		width: 95%;
	}


	.boxSub h2{
		position:relative;
		top: 30px;
		left: -30%;
		margin: 0 auto;
		font-size: 2.5rem;
		font-weight: 900;

	}

	.boxSub p{
		width: 70%;
		padding: 40px 0px 5px;
		margin: 0 auto;
	}


}




@media only screen and (max-width:420px){

	#main img{

	}

	#contents{
		width: 85%;
		height: 50%;
		margin-bottom: 0px;
	}

	.contentsLeft{
		left: 40vw;
	}

	.box{
		width: 100%;
	}


	.box h2{
		padding:0;
		position: absolute;
		top: -30px;
		font-size: 2.5rem;
		font-weight: 900;
	}


	.back{
		margin-bottom: 70%;
	}


	.boxGraph{
		width: 100%;
		position: relative;
		top: 65px;
		left: 0px;
	}


	.boxGraph h2{
		position: absolute;
		top: -60px;;
		left: 0px;
		margin: 0 auto;
		font-size: 2.5rem;
		font-weight: 900;

	}

	.tbl-r05{
		width: 90%;;
		height: auto;
		position: relative;
		top: 30%;
		margin-bottom: 5%;
		padding-top: 4vh;
	}


	th{
		padding: 1px;
		font-size: 50%;
	}

	th span {
		display: inline-block;
	}

	.ht{
		white-space: nowrap;
	}

	.button019{
		width: 79%;
		position: relative;
		top:100%;
		padding: 10px 0px;
		margin-bottom: 5vh;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
}

	.button019 a{
		width: 100%;
		left: -10%;
	}

	.boxGraph p{
		position: relative;
		top: 10%;
		left: 35%;
		width: 70%;
		padding: 40px 10px ;
		font-size: 0.8rem;
		margin: 5% auto;
	}

	#access{
		position: relative;
		top: 0px;
		padding-top: 40px;
		font-size: 12px;
	}


	.sub{
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center center;
	}




	nav h1{
		display: block;
		color: #FFFFFF;
		text-align: center;
		margin-bottom: 5%;
	}

	#mainSub h1{
		display: block;
		margin-top: 0%;
		font-size: 1.1rem;
		color: #FFFFFF;
		background-color: #4A9250;
		padding: 5% 3% 5% 5%;
		width: 100%;
		font-weight:lighter;
		border-top-right-radius: 20px;
		border-bottom-right-radius: 20px;
	}


	#mainSub{
		background-color:rgba(255,255,255,0.7);
		padding-bottom: 5%

	}

	#login{
		position: relative;
		right: 6%;
		margin: 80px auto;
	}


	.allContents h1{
		display: block;
    margin-top: 0%;
    font-size: 1.1rem;
    color: #FFFFFF;
    background-color: #4A9250;
    padding: 5% 3% 5% 5%;
    width: 92%;
    font-weight: lighter;
}
	}




	#footer{
		padding-top: 50px;
		color: #FFFFFF;
		background-color: #4A9250;
	}


	/*Sub-----------------------------------------------------------------------------------------------------------------------------------------*/

	.googleCalendar iframe {
		width: 80%;
		height: 200px;
}

	.tbl-r06{
		width: 80%;;
		height: auto;
		margin-bottom: 5%;
	}

	.htSub{
		white-space: nowrap;
	}

	.backSub{

	}

	.button020{
		position: relative;
		top:100%;
		padding: 10px 0px;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
}

	.button020 a{
		width: 70%;
		left: -10%;
	}

	.boxSub{
		width: 100%;
		margin: 0 auto;
	}


	.boxSub h2{
		position: relative;
		top: 10px;
		left: -25%;
		margin: 0 auto;
		font-size: 2rem;
		font-weight: 900;

	}

	.boxSub p{
		margin: 5% auto;
		width: 70%;
		font-size: 0.4rem;
		padding: 3% 3% 2% 3%;
	}


	}



@media only screen and (max-width:390px){


	.button019{
		width: 70%;
		position: relative;
		top:105%;
		padding: 10px 0px;
		margin-bottom: 5vh;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}

	#access{
		margin-top: 40px;

	}

	.button020{
		position: relative;
		top:105%;
		padding: 10px 0px;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}

	.button020 a:after{
		content: "";
		position: absolute;
		top: 43%;
		bottom: 0;
		right: 20%;
		font-size: 90%;
		display: flex;
		justify-content: center;
		align-items: center;
		transition: right 0.3s;
		width: 6px;
		height: 6px;
		border-top: solid 2px currentColor;
		border-right: solid 2px currentColor;
		transform: translateY(-50%) rotate(45deg);
	}

	.boxSub h2 {
		position: relative;
		top: 5px;
		left: -20%;
	}


	.boxSub p {
		width: 65%;
		font-size: 0.5rem;
		padding: 3%;
	}

    }



@media only screen and (max-width: 1199px){
	section h2{
		padding: 30px 0 10px 0;
	}

	.vMid{
		padding: 0 20px;
	}

}
