@charset "UTF-8";

.message-wrap {
	width: 100%;
	margin: 80px auto 0;
}

@media (max-width: 767px) {
	.message-wrap {
	margin: 48px auto 0;
}
}

/* 概要 */
.summary-wrap {
	width: 90%;
	margin: 56px auto;
	background-color: var(--bg-fff8e1);
	border-top-left-radius: 3.2vw;
	border-bottom-left-radius: 3.2vw;
	border-bottom-right-radius: 3.2vw;
}

.overview-image {
	border-top: 1px solid var(--border-666);
}

.summary {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 24px;
	padding: 3%;
}

.summary-logo {
	height: 4.0vw;
	width: auto;
}

.summary-txt p {
	font-size: 112.5%;
	text-align: justify;
}

.summary-divider {
	width: 1px;
	height: 96px;
	background-color: var(--border-666);
}

.summary-btn {
	transition: filter 0.2s ease;
}

.summary-btn img {
	height: 80px;
	width: auto;
}

@media (max-width: 767px) {
	.summary-wrap {
		margin: 56px auto 40px;
		border-top-left-radius: 8vw;
		border-bottom-left-radius: 8vw;
		border-bottom-right-radius: 8vw;
	}

	.summary {
		flex-direction: column;
		padding: 10% 5%;
	}

	.summary-logo {
		height: 5.6rem;
		width: 100%;
	}

	.summary-divider {
		width: 100%;
		height: 0.1rem;
	}

	.summary-btn img {
		height: auto;
		width: 100%;
	}

}

/* 会員数 */
.member-stats {
	background-color: var(--bg-494632);
	color: var(--text-fff);
	width: 100%;
}

.member-stats-wrap {
	max-width: 1080px;
	margin: 0 auto;
	padding: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
}

.member-stats-title {
	font-size: 150%;
	font-weight: bold;
	display: block;
}

.member-stats-bar-pc {
	font-size: 150%;
	margin: 0 48px;
}

.member-stats-list {
	display: flex;
	gap: 48px;
	flex-wrap: wrap;
}

.member-stats-list span {
	font-size: 87.5%;
}

.member-stats-list strong {
	font-size: 150%;
	font-weight: bold;
	position: relative;
	top: 2px;
}

@media screen and (max-width: 900px) {
	.member-stats-wrap {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.member-stats-bar-pc {
		display: none;
	}

	.member-stats-bar-sp {
		display: block;
		width: 100%;
		border-top: 1px solid var(--border-fff);
		margin: 8px 0;
	}

	.member-stats-list {
		display: grid;
		grid-template-columns: repeat(2, auto);
		gap: 0 16px;
		justify-content: center;
	}
}

/* ニュースエリア */
.news-area {
	display: flex;
	flex-direction: row;
	gap: 2.5%;
}

.news-left,
.news-right {
	flex: 1;
	padding: 40px 5% 64px;
	box-sizing: border-box;
}

.news-left {
	margin-right: 0;
	background-color: var(--bg-fff);
	border-top-right-radius: 4.8vw;
	border-bottom-right-radius: 4.8vw;
}

.news-right {
	margin-left: 0;
	background-color: var(--bg-fff);
	border-top-left-radius: 4.8vw;
	border-bottom-left-radius: 4.8vw;
}

.news-item {
	display: block;
	margin-top: 24px;
	width: 100%;
	text-align: left;
}

.news-date {
	font-size: 87.5%;
	font-weight: bold;
	margin-bottom: 4px;
}

.news-date .news-dot {
	color: #fdd000;
	margin-right: 4px;
}

.news-content {
	margin-bottom: 8px;
	text-decoration: underline;
}

@media (max-width: 767px) {
	.news-area {
		flex-direction: column;
	}

	.news-left {
		padding: 32px 5% 32px 8%;
	}

	.news-right {
		padding: 32px 8% 32px 5%;
	}

	.news-left {
		margin-right: 3%;
		margin-bottom: 48px;
		border-top-right-radius: 8.0vw;
		border-bottom-right-radius: 8.0vw;
	}

	.news-right {
		margin-left: 3%;
		border-top-left-radius: 8.0vw;
		border-bottom-left-radius: 8.0vw;
	}

}

/* タブ切り替え */
.tab-container {
	width: 100%;
}

.tab-buttons {
	display: flex;
	width: 60%;
	gap: 16px;
	margin: 0 auto;
}

.tab-btn {
	flex: 1;
	padding: 16px;
	background-color: #fff;
	color: #494632;
	font-size: 125%;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	border: none;
	border-top-left-radius: 0.8vw;
	border-top-right-radius: 0.8vw;
	outline: none;
}

.tab-btn.active {
	background-color: #fbc92c;
}

.tab-btn .tab-dot {
	color: #fbc92c;
}

.tab-btn.active .tab-dot {
	color: #fff;
}

.tab-content {
	width: 100%;
	background-color: var(--bg-fbc92c);
	padding: 5%;
}

.tab-panel {
	display: none;
}

.tab-panel.active {
	display: block;
}

.tab-btn-info-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 24px;
	background-color: var(--bg-fbc92c);
}

.tab-btn-info-wrap li {
	width: calc((100% - 48px) / 3);
	display: flex;
	flex-direction: column;
	padding: 24px;
	background-color: var(--bg-fff);
	border-radius: 1.6vw;
}

a.tab-btn-info {
	margin-bottom: 24px;
}

.tab-btn-info img {
	width: 100%;
	aspect-ratio: 3.6 / 2.4;
	object-fit: cover;
	object-position: top;
	border-radius: 1.2vw;
	transition: transform 0.3s ease, color 0.3s ease;
}

.tab-btn-info img:hover {
	transform: scale(1.05);
}

.tab-btn-info-status-open,
.tab-btn-info-status-anytime {
	width: 120px;
	display: inline-block;
	text-align: center;
	margin-top: 16px;
	background-color: var(--bg-ffe5df);
	border-radius: 50vh;
	font-weight: 700;
	color: var(--text-status);
}

.tab-btn-info-status-anytime {
	background-color: var(--bg-eaf3f4);
}

.tab-btn-info-status-open:hover,
.tab-btn-info-status-anytime:hover {
	color: #494632;
}

.tab-btn-info-title {
	margin-top: 16px;
	text-align: justify;
	text-decoration: underline;
}

@media screen and (max-width: 767px) {
	.tab-buttons {
		width: 90%;
		gap: 16px;
	}

	.tab-btn {
		border-top-left-radius: 1.6vw;
		border-top-right-radius: 1.6vw;
	}

	.tab-content {
		padding: 10% 5%;
	}

	.tab-btn-info-wrap {
		gap: 24px;
	}

	.tab-btn-info-wrap li {
		width: 100%;
	}

	.tab-btn-info {
		border-radius: 3.2vw;
	}

	.tab-btn-info img {
		border-radius: 2.4vw;
	}

}

/* タブ切り替え無し */
.non-tab {
	width: 30%;
	padding: 16px;
	margin: 0 auto;
	background-color: var(--bg-fbc92c);
	border-top-left-radius: 0.8vw;
	border-top-right-radius: 0.8vw;
	color: var(--text-494632);
	font-size: 125%;
	font-weight: 700;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.non-tab {
		width: 50%;
		border-top-left-radius: 1.6vw;
		border-top-right-radius: 1.6vw;
	}

}

/* メインビジュアルスライダー */
.slider-wrapper {
	position: relative;
	width: 100%;
	height: 480px;
	overflow: visible;
	background-color: #fff;
}

.slider-container {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.slider-track {
	display: flex;
	position: relative;
	left: 0;
}

.slider-track img {
	width: auto;
	height: 480px;
	flex-shrink: 0;
}

.slider-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	background: linear-gradient(to right,
			rgba(255, 255, 255, 1) 0%,
			/* 左端 */
			rgba(255, 255, 255, 0) 50%,
			/* 中央 */
			rgba(255, 255, 255, 0) 100%
			/* 右端 */
		);
}

.slider-overlay a {
	pointer-events: auto;
	cursor: pointer;
}

.catchcopy {
	position: absolute;
	top: 48px;
	left: 5%;
	max-width: 660px;
	z-index: 3;
}

/* ここから */
.line-btn {
	max-width: 336px;
/*	
	position: absolute;
	top: 260px;
	left: 5%;
	z-index: 3;
*/
}

.slider-overlay .lineBtn{
	position: relative;
	top: 260px;
	left: 5%;
	z-index: 3;
	max-width: 336px;
	display: block;
}
/* ここまで 2026.01.21 */

.slider-control {
	position: absolute;
	bottom: -24px;
	right: 5%;
	width: 108px;
	height: 48px;
	border-radius: 8px;
	background-color: var(--btn-bg-494632);
	color: var(--btn-text-fff);
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	z-index: 3;
	cursor: pointer;
}

.mainvisual-sp {
	display: none;
}

@media screen and (max-width: 767px) {
	.slider-wrapper {
		height: 192px;
	}

	.slider-track img {
		height: 192px;
	}

	.mainvisual-sp {
		display: block;
		background-image: url(/boranet/images/mainvisual-bg-sp.jpg);
		background-repeat: no-repeat;
		background-position: bottom;
		background-size: 100%;
		padding: 10% 5%;
	}
}