@charset "UTF-8";

/*------------------------------------------------------------
  このファイルに定義されている内容はすべて編集可能です。
  header,footerに関してはできるだけ定義内容を遵守してください。
------------------------------------------------------------*/

html{
	overflow-x:auto;
	}

body{
	width:100%;
	overflow-x:hidden;
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo, sans-serif;
	}
	.pc_none{
		display: none;
	}
	@media screen and (max-width: 767px){
		.pc_none{
			display: block;
		}
	}
.end{
	  padding: 15px;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #d0111b;
    line-height: 1.4;
		border: 4px solid #d0111b;
		/*display:none;*/
}.
.active_timer{
	display:inline-block;
}
@media screen and (max-width: 767px) {
	.end{
		font-size: 18px;
	}
}
/* header
----------------------------------------------------*/
@media screen and (min-width: 768px){
#header{
	width: 100%;
	background-color: #fff;
	}
#header #head_link{
	width: 950px;
	margin:0 auto;
	padding: 19px 0 26px 0;
	}
#header #head_link img{
	width:342px;
	height:33px;
	}
.sp_ttl{
	display:none;
	}
}


@media screen and (max-width: 767px) {
#header {
	padding: 9px 10px 13px 10px;
	text-align: left;
	box-sizing:border-box;
	}
#header #head_link{
	line-height: 0;
	font-size: 0;
	}
#header #head_link img{
	width:195px;
	height:auto;
	}

}



/*Wrapper
----------------------------------------------------*/
@media screen and (min-width: 768px){
h2{
	font-weight:bold;
	font-size:130%;
	text-align:center;
	margin:10px 0 20px 0;
	line-height: 1.5;
	}
	
.area_list{
	width:80%;
	margin:0 auto;
	}

.area_ttl{
	display: flex;
	flex-wrap:wrap;
	margin:0 0 20px 0;
	}

.area_ttl li{
	margin:0 24px 10px 0;
	padding:2px 0;
	}

.area_ttl a:link{
	text-decoration:underline;
	color:#212121;
	}

.area_ttl a:visited{
	text-decoration:underline;
	color:#212121;
	}

.area_box{
	width:80%;
	margin:0 auto 40px auto;
	}

h3{
	font-size:130%;
	font-weight:bold;
	color:#212121;
	border-bottom:3px solid #666;
	padding:20px 0 5px 0;
	position: relative;
	}
	
h3:after{
	position: absolute;
	content: " ";
	display: block;
	border-bottom:3px solid #212121;
	bottom:-3px;
	width: 12%;
	}

.area_add{
	display: flex;
	justify-content: space-between;
}

.area_add li{
	padding:15px 5px;
	border-bottom:1px dashed #212121;
	width:45%;
	}

.area_add dt{
	font-size:100%;
	margin-bottom:10px;
	}

.txt_date{
	text-align:right;
	font-size:80%;
	width:90%;
	}

.mod-toTop{
	display:none;
	position:fixed;
	bottom:30px;
	right:15px;
	z-index: 110;
	}
	.txt_bottom{
		text-align: center;
		padding: 60px 0 20px;
	}
	.txt_bottom .link_txt{
		color:#004098;
		text-decoration: underline;
		line-height: 1.3;
		font-weight:bold;
		cursor: pointer;
		transition: 0.4s;
	  }
	  .txt_bottom .link_txt span{
		font-size: 18px;
	  }
	  .txt_bottom .link_txt:hover{
		  opacity: 0.7;
		 
	  }
}
@media screen and (max-width: 767px) {
h2{
	font-weight:bold;
	font-size:110%;
	margin:10px 5px 20px 5px;
	text-align: center;
	line-height:1.4;
	}

.area_list{
	width:95%;
	}
	
.area_ttl{
	display: flex;
	display:-webkit-flex;
	flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	margin:15px 0;
    -webkit-perspective: 500px;
	}

.area_ttl li{
	margin:0 0 10px 15px;
	padding:2px 0;
	}
	
.area_ttl a:link{
	text-decoration:underline;
	color:#212121;
	}

.area_ttl a:visited{
	text-decoration:underline;
	color:#212121;
	}

.area_box{
	width:95%;
	margin:0 auto 40px auto;
	}

h3{
	font-size:115%;
	font-weight:bold;
	color:#212121;
	border-bottom:3px solid #666;
	margin:20px 0 5px 0;
	padding:20px 0 5px 0;
	position: relative;
	box-sizing:border-box;
	}

h3:after{
	position: absolute;
	content: " ";
	display: block;
	border-bottom:3px solid #212121;
	bottom:-3px;
	width: 37%;
	}
.sp_ttl{
	margin:auto;
	width:95%;
}
.sp_ttl:after{
	position: absolute;
	content: "";
	display: block;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-bottom: solid 2px #666;
	border-right: solid 2px #666;
    transform: rotate(45deg);
	}

.sp_ttl.active:after{
	border-bottom: none;
	border-right: none;
	border-top: solid 2px #666;
	border-left: solid 2px #666;
    transform: rotate(45deg);

	}

.area_add{
	flex-direction: column;
	-webkit-flex-direction: column;
}

.area_add li{
	padding:15px 5px;
	border-bottom:1px dashed #212121;
	box-sizing:border-box;
	}

.area_add dt{
	font-size:100%;
	margin-bottom:10px;
	}

.area_add dd{
	font-size:90%;
	}

.mod-toTop{
    display:none;
    position:fixed;
    bottom:25px;
    right:5%;
    width:11%;
    z-index:999;
	}

.txt_date{
	text-align:right;
	font-size:70%;
	width:95%;
	}

.mod-toTop img{
	width:100%;
	}
	.txt_bottom .link_txt span{
        font-size: 1.4rem;
	  }
	  .txt_bottom{
		text-align: center;
		padding: 30px 0 10px;
	}
	.txt_bottom .link_txt{
		color:#004098;
		text-decoration: underline;
		line-height: 1.3;
		font-weight:bold;
		cursor: pointer;
	  }
	  .txt_bottom .link_txt span{
		font-size: 14px;
	  }

}


/*footer
----------------------------------------------------*/
/* ---------------------footer style -------------------------*/
@media screen and (min-width: 769px) {
	#gfooter {
		  position: relative;
		  z-index: 100;
		  text-align: center;
		  font-weight: normal;
		  background: #fff;
	  }
	  
	  #gfooter .inner {
		  max-width: 890px;
		  margin: 0 auto;
	  padding: 30px 0 20px;
	  letter-spacing: 0em;
	  }
	  
	  #gfooter .tpoint {
		  height: 28px;
		  margin-bottom: 20px;
	  }
	  
	  #gfooter ul {
		  font-size:0;
	  }
	  
	  #gfooter li {
		  display: inline-block;
		  font-size: 12px;
		  margin: 0 0 10px 10px;
		  padding: 0 10px 0 0;
		  border-right: 1px solid #d1d1d1;
	  }
	  
	  #gfooter li:first-child { margin-left: 0;}
	  #gfooter li:nth-of-type(4) { padding-right: 0; border-right: 0;}
	  #gfooter li:nth-of-type(5) { margin-left: 0; }
	  #gfooter li:last-child { padding-right: 0; border-right: 0; }
	  
	  #gfooter small {
		  display: block;
		  padding: 12px 0;
		  color: #fff;
		  font-size: 12px;
		  line-height: 1;
		  background: #000;
	  }
	  
	  #gfooter .inner a {
		  color: #1a1a1a;
		  text-decoration: none;
		  
		  -ms-transition:     opacity 400ms linear;
		  -webkit-transition: opacity 400ms linear;
		  -moz-transition:    opacity 400ms linear;
		  transition:         opacity 400ms linear;
	  }
	  
	  #gfooter .inner a:hover {
		  opacity: .7;
	  }
  }
  @media screen and (max-width: 768px) {
	#gfooter{
		  position: relative;
		  z-index: 90;
		  margin: 0;
		  text-align: center;
		  font-weight: normal;
		  background: #fff;
	  }
	  
	  #gfooter .inner{
		  width: auto;
		  margin: 0 auto;
	  padding: 30px 15px 15px;
	  letter-spacing: 0em;
	  }
	  
	  #gfooter .tpoint{
		  height: 20px;
		  margin-bottom: 30px;
	  }
	  
	  #gfooter ul{
		  font-size: 0;
	  }
	  
	  #gfooter li {
		  display: inline-block;
		  font-size: 12px;
		  margin: 0 0 10px 10px;
		  padding: 0 10px 0 0;
		  border-right: 1px solid #d1d1d1;
	  }
	  
	  #gfooter li:first-child{ margin-left: 0; }
	  /* #gfooter li:nth-of-type(4){ padding-right: 0; border-right: 0; }
	  #gfooter li:nth-of-type(5){ margin-left: 0; } */
	  #gfooter li:last-child{ padding-right: 0; border-right: 0; }
	  
	  #gfooter small{
		  display: block;
		  padding:12px 0; 
		  font-size: 12px;
		  color: #fff;
		  background: #000;
	  }
	  
	  #gfooter .inner a {
		  color: #1a1a1a;
		  text-decoration: none;
	  }
	}
	
	




