@charset "utf-8";
/*------------------------------------------------------------
	profile
------------------------------------------------------------*/
.pageTitle {
	background-image: url(../img/profile/main_bg.jpg);
}
#main .content {
	max-width: 124rem;
}
#main h3 {
	margin-bottom: 4.6rem;
}
#main .profile .subBox {
	margin: 0 auto;
	max-width: 63rem;
}
#main .profile .subBox p {
	margin-bottom: 2.8rem;
	color: #191f09;
	font-size: 3rem;
	line-height: 1.77;
	text-align: center;
}
/*#main .profile .subBox .time {
	margin-bottom: 5rem;
	padding: 0.6rem 1rem;
	color: #fff;
	line-height: 1.3;
	background-color: #131d36;
}*/
#main .profile .slider {
	margin: 0 1.4rem 5rem;
}
#main .profile .slider .slideUl li {
	aspect-ratio: 602/802;
}
#main .profile .slider img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#main .profile .buttonUl {
	margin-top: 2.2rem;
	display: flex;
	flex-wrap: wrap;
	gap: 2.8rem;
}
#main .profile .buttonUl li {
	width: calc((100% - 5.6rem)/3);
	cursor: pointer;
	transform: .3s;
	aspect-ratio: 182/242;
}
#main .profile .buttonUl li.on {
	opacity: 0.7;
}
#main .profile .infoList li {
	display: block; /* 縦に並べるために block に変更 */
	font-size: 3rem;
	border: 0.1rem solid #131d36;
	background-color: #fff;
}
#main .profile .infoList li:not(:last-child) {
	margin-bottom: 2rem;
}
#main .profile .infoList p {
	margin-bottom: 0;
	padding-top: 0.5rem;
	color: #000;
	display: block; /* ここも block に変更して要素を縦に配置 */
}
#main .profile .infoList .ttl {
	margin-bottom: 1rem; /* 上下の余白を追加 */
	min-height: 7.7rem;
	width: 100%; /* 幅を 100% にして横幅いっぱいに広げる */
	color: #fff;
	text-align: center;
	justify-content: center;
	background-color: #131d36;
}
#main .profile .infoList .txt {
	flex: none; /* フレックスを無効にする */
	width: 100%; /* テキストの幅も 100% にする */
	text-align: left;
	color: #000;
}
#main .profile .infoList .time {
	flex: none; /* フレックスを無効にする */
	width: 100%; /* テキストの幅も 100% にする */
	text-align: center;
	color: #fff;
	line-height: 1.3;
	background-color: #131d36;
}
#main .profile {
	margin-bottom: 10rem;
}
#main .schedule {
	margin-bottom: 9rem;
}
#main .schedule table {
	width: 100%;
	border-collapse: collapse;
}
#main .schedule th,
#main .schedule td {
	width: calc((100%/7));
	padding: 1.9rem 0.5rem 1.8rem;
	color: #191f09;
	font-size: 2.2rem;
	text-align: center;
	vertical-align: middle;
	border: 0.1rem solid #191f09;
}
#main .schedule th {
	font-weight: normal;
	background-color: #fffede;
}
#main .schedule .thStyle01 {
	background-color: #7ecef4;
}
#main .schedule .thStyle02 {
	color: #cb0000;
	background-color: #feaaaa;
}
#main {
	margin-bottom: 14rem;
}

#main .profile .headLine01 {
	margin-top: -30.8rem;

}

@media (hover: hover) and (min-width: 897px) {
	#main .buttonUl li:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {

	#main .profile .headLine01 {
		margin-top: -80px;
	}
	#main h3 {
		margin-bottom: 3rem;
	}
	#main .profile .subBox p {
		font-size: 2rem;
	}
	/*#main .profile .subBox .time {
		margin-bottom: 4rem;
	}*/
	#main .profile .buttonUl {
		gap: 2rem;
	}
	#main .profile .buttonUl li {
		width: calc((100% - 4rem)/3);
	}
	#main .profile .infoList li {
		font-size: 1.6rem; /* スクリーンが小さい場合のフォントサイズ調整 */
	}

	#main .profile .infoList .ttl {
		min-height: 4rem; /* スクリーンが小さい場合の高さ調整 */
		width: 100%; /* 幅を100%にしてレスポンシブ対応 */
		margin-bottom: 1rem;
	}

	#main .profile .infoList .txt {
		font-size: 1.6rem; /* テキストのフォントサイズも調整 */
	}

	#main .profile .infoList .time {
		font-size: 1.6rem; /* テキストのフォントサイズも調整 */
	}

	#main .profile {
		margin-bottom: 8rem;
	}
	#main .schedule {
		margin-bottom: 8rem;
	}
	#main .schedule .tabBox {
		margin-right: -2rem;
		overflow-x: auto;
	}
	#main .schedule .tabBox table {
		width: 85.6rem;
	}
	#main .schedule th,
	#main .schedule td {
		font-size: 1.6rem;
		padding: 1.1rem 0.5rem 1rem;
	}
	#main {
		margin-bottom: 10rem;
	}
}

.diary_pan {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
    align-items: flex-start;
    padding: 1em;
    margin: 1em auto;
}

.diary_img_pan {
	width: 40%;
    min-width: 40%;
    max-width: 40%;
    padding-right: 1em;
}

.diary_content_pan {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
/*	overflow: auto;*/
}
.diary_title {
	font-size: 1.8rem;
    font-weight: bold;
    margin: .5rem 0;
}
.diary_date {
	font-size: 1.4rem;
    color: #555;
    margin-bottom: 1rem;
}
.diary_comment {
	font-size: 1.6rem;
	margin-top: 1rem;
}
.diary_more {
    margin-top: 20px;
	width: 100%;
}
.diary_more a {
	float: right;
	cursor: pointer;
	text-decoration: none;
    color: #007BFF;
    font-weight: bold;
}

.diary_content_pan pre {
	width: 100%;
    overflow-x: auto;
    white-space: pre-wrap;
	font-size: 1.6rem;
	margin-top: 1rem;
}