@charset "utf-8";
/* CSS Document */

/* 20260126企画課田中追加　class指定・注釈用 */
.notes {
	font-style: italic;
	font-size:0.8em;
	background-color: #fffdce;
	padding: 10px;
}
/* //20260126企画課田中追加　class指定・注釈用 */

/* 20260126企画課田中追加　画像横並び用 */
.image-row {
    display: flex;
    justify-content: center; /* 中央揃え */
    gap: 10px; /* 画像間の隙間 */
}
.image-container {
    width: 100%;
}
.image-container img {
    width: 100%;
    text-align: center;
    height: auto;
    display: block;
    margin: 0 auto;
}
.image-container p {
    padding: 2px 0 10px 0;
    font-size: 14px;
}
/* //20260126企画課田中追加　画像横並び用 */

/* 20260126企画課田中追加　右寄せエリア */
/* pc */
@media screen and (min-width: 801px), print {

.phtArea-right {
	float:right;
	margin-left:20px;
	}
	.phtArea-right > div {
		width:300px;
		}
.phtArea-right p {
	text-align:center;
	margin-top:10px;
	}
.phtArea-right p + p {
	margin-top:5px;
	}
	.phtArea-right p a {
		display:block;
		padding:5px 0;
		border:1px solid #adadba;
		transition:500ms;
		font-weight:bold;
		}
		.phtArea-right p a:hover {
			background-color:#000036;
			color:#fff;
			}
}
/* sp */
@media only screen and (max-width: 800px) {

.phtArea-right {
	text-align:center;
	margin-bottom:20px;
	}
.phtArea-right p {
	text-align:center;
	margin-top:10px;
	}
.phtArea-right p + p {
	margin-top:5px;
	}
	.phtArea-right p a {
		display:block;
		padding:5px 0;
		border:1px solid #adadba;
		transition:500ms;
		font-weight:bold;
		}
		.phtArea-right p a:hover {
			background-color:#000036;
			color:#fff;
			}
}
/* //20260126企画課田中追加　右寄せエリア */
/* 20260126企画課田中追加　左寄せエリア */
/* pc */
@media screen and (min-width: 801px), print {

.phtArea-left {
	float:left;
	margin-right:20px;
	}
	.phtArea-left > div {
		width:300px;
		}
.phtArea-left p {
	text-align:center;
	margin-top:10px;
	}
.phtArea-left p + p {
	margin-top:5px;
	}
	.phtArea-left p a {
		display:block;
		padding:5px 0;
		border:1px solid #adadba;
		transition:500ms;
		font-weight:bold;
		}
		.phtArea-left p a:hover {
			background-color:#000036;
			color:#fff;
			}
}
/* sp */
@media only screen and (max-width: 800px) {

.phtArea-left {
	text-align:center;
	margin-bottom:20px;
	}
.phtArea-left p {
	text-align:center;
	margin-top:10px;
	}
.phtArea-left p + p {
	margin-top:5px;
	}
	.phtArea-left p a {
		display:block;
		padding:5px 0;
		border:1px solid #adadba;
		transition:500ms;
		font-weight:bold;
		}
		.phtArea-left p a:hover {
			background-color:#000036;
			color:#fff;
			}
}
/* //20260126企画課田中追加　左寄せエリア */


@media all and (-ms-high-contrast: none){
.about ul li a div span {
	line-height:42px !important;
	}
}

#outline .main{
	background-image:url(../img/mainimg01.png);
	}
#passage .main{
	background-image:url(../img/mainimg02.jpg);
	}
footer {
	margin-top: 0;
}	


/* pc */
@media screen and (min-width: 801px), print {




	.passage_year {
		width:28%;
		}
	.sec02 tr td:first-child {
		width: 20%;
		}

.about {
	margin-top:110px;
	}
	.about ul {
		}
		.about ul li {
			float:left;
			width:50%;
			height:180px;
			}
			.about ul li a {
				display:block;
				width:100%;
				height:100%;
				position:relative;
				overflow:hidden;
				}
			.about ul li a.on {
				pointer-events:none;
				}
			.about ul li a:after {
				content:"";
				position:absolute;
				top:0;
				left:0;
				height:100%;
				width:100%;
				background-repeat:no-repeat;
				background-size:cover;
				background-position:center;
				transition:500ms;
				}
			.about ul li:nth-of-type(1) a:after {
				background-image:url(../../img/about_pht01.jpg);
				}
			.about ul li:nth-of-type(2) a:after {
				background-image:url(../../img/about_pht02.jpg);
				}
				.about ul li a:hover::after ,
				.about ul li a.on::after {
					transform: scale(1.05);
					}
				.about ul li a.on::before {
					background-color:rgba(0,0,54,0.2);
					content:"";
					position:absolute;
					top:0;
					left:0;
					z-index:1;
					width:100%;
					height:100%;
					}
				.about ul li a div {
					color:#000036;
					position:absolute;
					top:0;
					bottom:0;
					left:0;
					right:0;
					width:220px;
					height:38px;
					margin:auto;
					background:#fff;
					font-size:16px;
					font-weight:bold;
					text-align:center;
					z-index:1;
					transition:500ms;
					}
				.about ul li a:hover div ,
				.about ul li a.on div {
					background:#000036;
					color:#fff;
					}
					.about ul li a div span {
						line-height:38px;
						}

#passage .sec02 table th {
	width:20%;
	}
#passage .sec02 table td:nth-of-type(1) {
	width:32%;
	}
#passage .sec02 table td {
	}
#passage .sec03 table th {
	text-align:left;
	width:20%;
	}


}


/* sp */
@media only screen and (max-width: 800px) {


footer {
	margin-top: 0;
}	




	.passage_year {
		width:24%;
		}



.about {
	margin-top:40px;
	}
	.about ul {
		}
		.about ul li {
			}
			.about ul li a {
				display: block;
				width: 100%;
				height: 100%;
				position: relative;
				padding: 20% 0;
				overflow: hidden;
				}
			.about ul li a.on {
				pointer-events:none;
				}
			.about ul li a:after {
				content:"";
				position:absolute;
				top:0;
				left:0;
				height:100%;
				width:100%;
				background-repeat:no-repeat;
				background-size:cover;
				background-position:center;
				transition:500ms;
				}
			.about ul li:nth-of-type(1) a:after {
				background-image:url(../../img/about_pht01.jpg);
				}
			.about ul li:nth-of-type(2) a:after {
				background-image:url(../../img/about_pht02.jpg);
				}
				.about ul li a:hover::after ,
				.about ul li a.on::after {
					transform: scale(1.05);
					}
				.about ul li a.on::before {
					background-color:rgba(0,0,54,0.25);
					content:"";
					position:absolute;
					top:0;
					left:0;
					z-index:1;
					width:100%;
					height:100%;
					}
				.about ul li a div {
					color: #000036;
					width: 220px;
					height: 38px;
					margin: auto;
					background: #fff;
					font-size: 16px;
					font-weight: bold;
					text-align: center;
					position: relative;
					z-index: 1;
					}
				.about ul li a:hover div ,
				.about ul li a.on div {
					background:#000036;
					color:#fff;
					}
					.about ul li a div span {
						line-height:38px;
						}


.sec02 .table td:last-child {
	width:24%;
}

#passage .sec02 table th {
	}
#passage .sec03 table th {
	text-align:left;
	}
}



