@charset "utf-8";
/* CSS Document */
body{
	font-family: "Hiragino Maru Gothic W4 JIS2004", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
	padding-top: 2rem;
}

.navbar{
	border-top: 3px solid #2c3e50;
	box-shadow: rgb(113 135 164 / 12%) 0px 0px 5px 2px;
	background: #e6f2e0;
}
.nav-item{
	font-size: 15px;
	color: #333;
}
.pc-only{
	display: none;
}
@media (min-width: 768px) {
  .navbar-brand{
	padding-right: 40px;
}
	.sm-only{
		display: none;
	}
	.pc-only{
		display: inline;
	}
}

.mini{
	font-size: 0.8em;
	color: #2c3e50;
}
.bg01{
	padding: 80px 0 60px;
	background: rgba(255,255,255,1);
}
.bg02{
	padding: 80px 0 60px;
	background: rgba(0,0,0,0.05);
}
h1{
	font-weight: bold;
	margin-bottom: 0;
	padding-bottom: 15px;
}

h2{
	color: #2c3e50;
	font-size: 22px;
	padding: 0.5rem;
	margin: 10px auto 50px;
    position: relative;
	text-align: center;
	font-weight: bold;
}
h2:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 2px;
  content: '';
  border-radius: 3px;
  background: #34495e;
}
h3{
	font-size: 18px;
	padding: 12px 10px;
	margin: 30px 0 20px 0;
	font-weight: bold;
}
#gyomu h3{
	text-align: center;
	margin-top: 15px;
	padding: 0;
}
.bg01 h3{
	background: rgba(0,0,0,0.05);
}
.bg02 h3{
	background: #FFFFFF;
}
h3.h3green{
  background: #34495e;
	color: #FFFFFF;
}
.tenpo h3.h3redgreen{
	background: linear-gradient(90deg, red 0%, red 50%, green 50%, green 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
	color: #FFFFFF;
	text-align: center
}
.tenpo h3.h3red{
	background: red;
	color: #FFFFFF;
	text-align: center;
}
h4{
	font-size: 17px;
	font-weight: bold;
	padding: 2px 8px 2px 12px;
	border-left: solid 3px #34495e;
	margin: 25px 0 25px;
}
.tenpo h4{
	font-size: 20px;
	border: none;
	color: #34495e;
	padding: 10px;
	text-align: center;
	margin: 60px 0 25px;
}
main ul li{
	margin-bottom: 12px;
}
table.table{
	background: #FFF;
}
/*
table.table tr:nth-child(2n){
	background: #ffffc8;
}
*/
table.table th{
	vertical-align: middle;
	padding: 20px 10px;
	font-size: 15px;
	background: #666;
	color: #FFF;
	text-align: center;
	min-width: 70px;
}
table.table td{
	padding: 20px 10px;
	vertical-align: middle;
}
.tenpo table.table th,.tenpo table.table td{
	width: 33.333333%;
	font-size: 15px;
	text-align: center;
	vertical-align: middle;
}
.box{
	border: 2px solid #333;
	margin: 30px auto 40px;
	padding: 1rem 1rem 0.5rem;
}
a img:hover{
	opacity: 0.75;
}
footer{
	background: #34495e;
	padding: 50px 0px 30px;
	color: #FFFFFF;
}
aside .copy{
	background: #2c3e50;
	color: #FFF;
	padding: 8px;
}