@charset "UTF-8";


*:focus {
	/* outline: none; */
    outline: 2px solid #000000 !important;
}

a:focus {
    outline: 2px solid #000000 !important;
}

a:focus-visible {
    outline: 2px solid #000000 !important;
}

:root {
	--bg-fff: #fff;
	--bg-277a71: #277a71;
	--bg-f2f7f7: #f2f7f7;
	--bg-D8EDFF: #D8EDFF;
	--bg-FADEEB: #FADEEB;
	--bg-FFF5D5: #FFF5D5;
	--border-277a71: #277a71;
	--border-fff: #fff;
	--border-dfdfdf: #dfdfdf;
	--text-333: #333;
	--text-fff: #fff;
	--text-277a71: #277a71;
	--text-339989: #339989;
	--btn-bg-277a71: #277a71;
	--btn-bg-fff: #fff;
	--btn-text-fff: #fff;
	--btn-text-333: #333;
	--bg-image-main-visual-pc: url(/images/main-visual-bg-pc.jpg);
	--bg-image-main-visual-sp: url(/images/main-visual-bg-sp.jpg);
	--bg-image-calendar-pc: url(/images/calendar-section-bg-pc.jpg);
	--bg-image-calendar-sp: url(/images/calendar-section-bg-sp.jpg);
	--bg-subtitle-pc: url(/common/subpage-title-bg-pc.svg);
	--bg-subtitle-sp: url(/common/subpage-title-bg-sp.svg);
	--image-logo-pc: url(/common/logo-supernet-001-y.svg);
}

/* 黒背景モード */
body.bg-black {
	--bg-fff: #000;
	--bg-277a71: #000;
	--bg-f2f7f7: #000;
	--bg-D8EDFF: #000;
	--bg-FADEEB: #000;
	--bg-FFF5D5: #000;
	--border-277a71: #ffff00;
	--border-fff: #ffff00;
	--border-dfdfdf: #ffff00;
	--text-333: #ffff00;
	--text-fff: #ffff00;
	--text-277a71: #ffff00;
	--text-339989: #ffff00;
	--btn-bg-277a71: #ffff00;
	--btn-bg-fff: #ffff00;
	--btn-text-fff: #000;
	--btn-text-333: #000;
	--bg-image-main-visual-pc: none;
	--bg-image-main-visual-sp: none;
	--bg-image-calendar-pc: none;
	--bg-image-calendar-sp: none;
	--bg-subtitle-pc: none;
	--bg-subtitle-sp: none;
}

/* 青背景モード */
body.bg-blue {
	--bg-fff: #0000ff;
	--bg-277a71: #0000ff;
	--bg-f2f7f7: #0000ff;
	--bg-D8EDFF: #0000ff;
	--bg-FADEEB: #0000ff;
	--bg-FFF5D5: #0000ff;
	--border-277a71: #ffff00;
	--border-fff: #ffff00;
	--border-dfdfdf: #ffff00;
	--text-333: #ffff00;
	--text-fff: #ffff00;
	--text-277a71: #ffff00;
	--text-339989: #ffff00;
	--btn-bg-277a71: #ffff00;
	--btn-bg-fff: #ffff00;
	--btn-text-fff: #0000ff;
	--btn-text-333: #0000ff;
	--bg-image-main-visual-pc: none;
	--bg-image-main-visual-sp: none;
	--bg-image-calendar-pc: none;
	--bg-image-calendar-sp: none;
	--bg-subtitle-pc: none;
	--bg-subtitle-sp: none;
}

/* スクリーンリーダー対応 */
.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* 文字サイズ変更設定 */
.font-small {
	font-size: 80%;
}

.font-large {
	font-size: 120%;
}

body {
	font-size: 100%;
	background-color: var(--bg-fff);
	font-weight: 400;
	line-height: 1.75;
	color: var(--text-333);
	letter-spacing: 0.1em;
	font-family: 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}

.skip-link {
	position: absolute;
	top: -64px;
	left: 0;
	background: var(--bg-fff);
	color: var(--text-fff);
	padding: 8px 16px;
	z-index: 1000;
	transition: top 0.3s;
}

.skip-link:focus {
	top: 0;
}

a,
a:link,
a:visited,
a:hover,
a:active,
a:focus {
	color: var(--text-333);
	text-decoration: underline;
}

.btn-hover-bright a {
	transition: all 0.3s ease;
}

.btn-hover-bright a:hover {
	filter: brightness(1.2);
}

.btn-hover-expansion {
	transition: transform 0.3s ease, color 0.3s ease;
}

.btn-hover-expansion:hover {
	transform: scale(1.05);
}

/* メニュー展開時に背面をスクロール禁止 */
body.menu-open {
	overflow: hidden;
}

/* ヘッダー関連 */
header {
	position: sticky;
	top: 0;
	width: 100%;
	z-index: 100;
}

.top-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 30px;
	background-color: var(--bg-f2f7f7);
}

.logo {
	width: 400px;
}

.top-links {
	display: flex;
	gap: 24px;
	align-items: center;
	padding-left: 24px;
}

.top-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 160px;
	height: 48px;
	background-color: var(--bg-fff);
	border: 2px solid var(--border-277a71);
	border-radius: 50vh;
	font-family: "BIZ UDPGothic", sans-serif;
	font-size: 87.5%;
	font-weight: 700;
	line-height: 1.25;
	cursor: pointer;
	text-decoration: none;
}

.global-nav {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	background-color: var(--bg-f2f7f7);
	font-family: "BIZ UDPGothic", sans-serif;
	font-weight: 700;
	border-top: 2px solid var(--border-277a71);
	border-bottom: 2px solid var(--border-277a71);
}

.menu-group {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

a.nav-item {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;  
	gap: 8px;
	white-space: nowrap;
	line-height: 1.25;
	text-decoration: none;
}

.nav-item img {
	height: 40px;
}

img.nav-icon {
	height: 28px;
}

.divider {
	width: 1px;
	background-color: var(--border-277a71);
}

.spacer {
	width: 1px;
}

.button-group {
	display: flex;
}

.assistBtn-square,
.menuBtn-square {
	width: 96px;
	height: 80px;
	line-height: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 87.5%;
	font-weight: 400;
	cursor: pointer;
}

.assistBtn-square img,
.menuBtn-square img {
	height: 32px;
	margin-bottom: 8px;
}

.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(32, 122, 113, 0.4);
	z-index: 200;
	overflow-y: auto;
}

.overlay.show {
	display: block;
}

.panel {
	position: relative;
	background-color: var(--bg-277a71);
	color: var(--text-fff);
	padding: 3%;
	max-width: 960px;
	margin: 0 auto;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
	animation: fadeIn 0.2s ease-in;
}

.top-bar-sp-wrap {
	display: none;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.logo-sp {
	display: none;
}

@media (max-width: 895px) {
	.top-bar {
		display: none;
	}

	.global-nav {
		border-top: none;
	}

	.menu-group {
		display: none;
	}

	.assistBtn-square,
	.menuBtn-square {
		width: 72px;
		height: 64px;
		font-size: 81.25%;
	}

	.assistBtn-square img,
	.menuBtn-square img {
		height: 24px;
		margin-bottom: 6px;
	}

	.logo-sp {
		display: flex;
		align-items: center;
		padding: 0 3%;
		width: 100%;
	}

	.logo-sp img {
		width: 160px;
	}

	.top-bar-sp-wrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		list-style: none;
		padding: 0;
	}

	.top-bar-sp-wrap li {
		width: 50%;
		background-color: var(--bg-fff);
		border: 2px solid var(--border-277a71);
		border-top: none;
		border-right: none;
		border-left: none;
		position: relative;
	}

	.top-bar-sp-wrap li:nth-child(1) {
		border-right: 2px solid var(--border-277a71);
	}

	.top-bar-sp-wrap li a {
		display: flex;
		font-family: "BIZ UDPGothic", sans-serif;
		font-size: 87.5%;
		align-items: center;
		justify-content: space-between;
		padding-left: 3.2vw;
		min-height: 48px;
	}

	.top-bar-sp-wrap .btn-arrow {
		width: 15%;
		height: auto;
		padding-right: 3.0vw;
	}

	.panel {
		padding: 5%;
		max-width: 100%;
	}
}

.top-address {
	display: block;
	font-size: 93.75%;
	line-height: 1.25;
	text-align: right;
}

@media (max-width: 1023px) {
	.top-address {
		display: none;
	}
}

/* 展開メニュー関連 */
.assistPanel-wrap,
.menuPanel-wrap,
.memu-list-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.assistPanel-wrap p {
	font-size: 16px;
}

.menuPanel-wrap {
	padding-top: 2em;
	gap: 16px;
}

.assistPanel-wrap li {
	width: 48%;
	margin-bottom: 16px;
}

.assistPanel-wrap button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32%;
	height: 48px;
	font-size: 16px;
	color: #333;
	background-color: #fff;
	border-radius: 50vh;
	font-family: "BIZ UDPGothic", sans-serif;
	font-weight: 700;
	cursor: pointer;
	border: none;
}

.assistPanel-wrap button.assistPanel-black {
	background-color: #000;
	color: #ffff00;
}

.assistPanel-wrap button.assistPanel-blue {
	background-color: #0000ff;
	color: #ffff00;
}

.menuPanel-wrap li {
	width: 49%;
	position: relative;
	display: flex;
}

.menuPanel-wrap li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0.6vw;
	width: 1.2vw;
	background-color: #339989;
}

.menuPanel-wrap li a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding-left: 2.8vw;
	gap: 1.0vw;
	min-height: 48px;
	background-color: var(--bg-fff);
	flex: 1;
}

.menuPanel-wrap .btn-icon {
	width: 32px;
	flex-shrink: 0;
}

.menuPanel-wrap .btn-text {
	font-family: "BIZ UDPGothic", sans-serif;
	letter-spacing: 0.2em;
	font-weight: 700;
	flex-grow: 1;
	text-align: left;
	line-height: 1.5;
}

.menuPanel-wrap .btn-text span {
	color: var(--text-277a71);
}

.menuPanel-wrap .btn-arrow {
	width: 24px;
	height: auto;
	padding-right: 8px;
}

.dot-boder {
	border-bottom: 2px solid;
	border-image: repeating-linear-gradient(to right, var(--border-fff) 0 2px, transparent 2px 6px) 1;
}

.memu-list-wrap li {
	width: 30%;
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 12px;
}

.memu-list-wrap li a {
	display: inline-block;
	width: auto;
	align-self: flex-start;
	color: var(--text-fff);
	font-weight: 700;
}

.memu-list-wrap li .with-dash {
	position: relative;
	padding-left: 24px;
}

.memu-list-wrap li .with-dash::before {
	content: "－";
	position: absolute;
	left: 0;
	color: var(--text-fff);
}

.close-panel-btn{
	position:absolute;
	top:0.5em;
	right:0.5em;
	border: 0;
	background: none;
	text-align: center;
	color: #FFF;
	line-height: 1.0;
}

.close-panel-btn span{
	font-size: 1.5em;
	display: block;
}


@media (max-width: 895px) {

	.assistPanel-wrap li,
	.menuPanel-wrap li,
	.memu-list-wrap li {
		width: 100%;
	}

	.menuPanel-wrap li::before {
		bottom: 2.4vw;
		width: 3.2vw;
	}

	.menuPanel-wrap li a {
		padding-left: 5.2vw;
		gap: 2.4vw;
		min-height: 48px;
	}

	.menuPanel-wrap .btn-text {
		font-size: 87.5%;
	}

	.menuPanel-wrap .btn-arrow {
		width: 20px;
		height: auto;
		padding-right: 8px;
	}

}

/* コンテンツ関連 */
.split-flex-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.split-flex-wrap li {
	width: 49.9%;
	padding-bottom: 4%;
}

.event-flex-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.area-border-top {
	width: 100%;
	border-top: 2px solid var(--border-277a71);
}

.event-flex-wrap li {
	width: 30%;
	display: flex;
	flex-direction: column;
	margin: 0;
}

.event-btn-info {
	flex: 1;
}

.event-btn-info-img {
	width: 100%;
	aspect-ratio: 5 / 3;
	object-fit: cover;
	object-position: top;
	border-radius: 8px;
	margin-bottom: 16px;
}

.event-btn-info-title {
	margin-top: 8px;
}

.top-sub-title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 150%;
	font-family: "BIZ UDPGothic", sans-serif;
	letter-spacing: 0.2em;
	padding: 24px 5%;
	border-bottom: 2px solid;
	border-image: repeating-linear-gradient(to right, var(--border-277a71) 0 2px, transparent 2px 6px) 1;
}

.top-sub-title img {
	width: 56px;
	height: 34px;
}

.sub-title {
	font-size: 150%;
	font-family: "BIZ UDPGothic", sans-serif;
	letter-spacing: 0.2em;
	text-align: center;
	padding: 24px 5%;
	border-bottom: 2px solid;
	border-image: repeating-linear-gradient(to right, var(--border-277a71) 0 2px, transparent 2px 6px) 1;
}

.split-contents-wrap {
	width: 80%;
	margin: 48px auto;
}

.wide-contents-wrap {
	width: 90%;
	margin: 48px auto;
}

.normal-contents-wrap {
	max-width: calc(1000px + 10%);
	margin: 48px auto;
	padding: 0 5%;
	overflow-wrap: break-word;
	word-break: break-all;
}

.normal-contents-wrap p {
	margin: 16px 0;
}

.event-contents-wrap {
	background-image: url(/images/hoshichan-bg-002-pc.png);
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: 100%;
	padding-bottom: 136px;
}

.main-txt-b {
	font-weight: 700;
}

@media (max-width: 767px) {
	.split-flex-wrap li {
		width: 100%;
		padding-bottom: 48px;
	}

	.event-flex-wrap li {
		width: 100%;
		margin: 0 0 48px 0;
	}

	.event-flex-wrap li:last-child {
		margin: 0;
	}

	.split-contents-wrap {
		width: 90%;
		margin: 32px auto;
	}

	.wide-contents-wrap {
		margin: 32px auto;
	}

	.normal-contents-wrap {
		width: 90%;
		margin: 32px auto;
		padding: 0;
	}

	.event-contents-wrap {
		background-image: url(/images/hoshichan-bg-002-sp.png);
		padding-bottom: 120px;
	}
}

/* 共通ボタン */
.btn-wrap {
	text-align: center;
}

.event-btn-margin {
	padding: 2% 0 4% 0;
}

a.main-btn,
a.main-btn-dantai {
	font-family: "BIZ UDPGothic", sans-serif;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 360px;
	min-height: 48px;
	padding: 16px;
	color: var(--btn-text-fff);
	background-color: var(--btn-bg-277a71);
	border-radius: 50vh;
	font-weight: 400;
	line-height: 1.5;
	cursor: pointer;
	box-sizing: border-box;
	transition: all 0.3s ease;
	text-decoration: none;
}

@media (max-width: 767px) {
	.event-btn-margin {
		padding: 16px 0 48px 0;
	}

	.btn-wrap {
		width: 90%;
		margin: auto;
	}

	a.main-btn {
		min-width: 100%;
	}
}

@media (max-width: 414px) {
	a.main-btn-dantai {
		min-width: 100%;
	}
}

/* ニュースエリア */
.news-item {
	display: block;
	width: 100%;
	text-align: left;
	margin-bottom: 32px;
	border-bottom: 2px solid;
	border-image: repeating-linear-gradient(to right, var(--border-277a71) 0 2px, transparent 2px 6px) 1;
}

.news-date {
	display: inline-flex;
	align-items: center;
	padding: 6px 12px;
	background-color: var(--bg-f2f7f7);
	font-size: 87.5%;
	font-weight: 700;
	border-radius: 50vh;
	gap: 6px;
}

.news-date-icon {
	width: 16px;
	height: 16px;
}

.news-content {
	padding: 8px 0 24px;
}

/* ページトップへ戻る */
.pagetop {
	position: fixed;
	bottom: 24px;
	right: 32px;
	cursor: pointer;
	z-index: 10;
}

.pagetop img {
	width: 80px;
}

@media (max-width: 767px) {
	.pagetop {
		bottom: 32px;
		right: 16px;
	}

	.pagetop img {
		width: 64px;
	}
}

/* バナー一覧設定 */
.banner-btn-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	padding: 0;
}

.banner-btn-wrap li {
	width: 50%;
	background-color: var(--bg-fff);
	border: 2px solid var(--border-277a71);
	border-left: none;
	border-bottom: none;
	position: relative;
}

.banner-btn-wrap li:nth-child(even) {
	border-right: none;
}

.banner-btn-wrap li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 1.6vw;
	width: 1.8vw;
	background-color: #339989;
}

.banner-btn-wrap li:last-child::before {
	content: none;
}

.banner-btn-wrap li:nth-child(4)::before {
	background-color: #1877f2;
}

.banner-btn-wrap li:nth-child(5)::before {
	background: linear-gradient(45deg, #feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5);
}

.banner-btn-wrap li:nth-child(6)::before {
	background-color: #8f2c14;
}

.banner-btn-wrap li:nth-child(7)::before {
	background-color: #c5df79;
}

.banner-btn-wrap li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-left: 4.0vw;
	gap: 1.5vw;
	min-height: 10vw;
	text-decoration: none;
}

.banner-btn-wrap .banner-btn-title {
	font-weight: 700;
	text-align: left;
	text-decoration: underline;
}

.banner-btn-wrap .banner-btn-text {
	font-size: 87.5%;
	text-align: left;
}

.banner-btn-wrap .btn-arrow {
	width: 8%;
	height: auto;
	padding-right: 1.5vw;
}

@media (max-width: 767px) {
	.banner-btn-wrap li {
		width: 100%;
		border-right: none;
	}

	.banner-btn-wrap li::before {
		bottom: 4.0vw;
		width: 4.0vw;
		background-color: #339989;
	}

	.banner-btn-wrap li a {
		padding-left: 8.0vw;
		gap: 1.5vw;
		min-height: 16vw;
	}

	.banner-btn-wrap .banner-btn-title {
		font-size: 93.75%;
	}

	.banner-btn-wrap .btn-arrow {
		width: 6%;
		padding-right: 1.5vw;
	}
}

/* フッター関連 */
footer {
	color: var(--text-fff);
	background-color: var(--bg-277a71);
	padding: 48px 0 0 0;
}

.footer-wrap {
	width: 90%;
	margin: 0 auto;
	box-sizing: border-box;
}

.footer-split-flex-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.footer-split-flex-wrap li {
	width: 49.9%;
}

.footer-title-wrap {
	display: flex;
	align-items: center;
	gap: 16px;
}

.footer-title {
	font-size: 150%;
	line-height: 1.5;
	font-weight: 700;
}

.footer-title-wrap img {
	width: 80px;
}

footer .button-label span {
	font-size: 150%;
}

.email {
	overflow-wrap: break-word;
	word-break: break-word;
}

.footer-tell {
	margin-top: 24px;
	font-size: 87.5%;
}

.footer-tell-txt {
	font-size: 81.25%;
	margin-top: 16px;
}

.footer-sns-wrap {
	display: flex;
	align-items: center;
	gap: 16px;
}

.footer-sns-wrap img {
	width: 32px;
}

.footer-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
}

.footer-links li.large {
	width: 48.5%;
	margin-bottom: 16px;
	display: flex;
}

.footer-links li.large a {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--border-fff);
	color: var(--text-fff);
	min-height: 4vw;
	text-align: center;
	text-decoration: none;
}

.footer-links-txt-14p {
	font-size: 87.5%;
	letter-spacing: -0.1em;
}

.footer-links-txt-18p {
	font-size: 112.5%;
}

.footer-links li.small {
	width: 48.5%;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.footer-links li.small a {
	display: inline-block;
	width: auto;
	align-self: flex-start;
	color: var(--text-fff);
}

.footer-links li.small a span.underline {
	text-decoration: underline;
}

.footer-links li.small a.with-dash {
	position: relative;
	padding-left: 24px;
}

.footer-links li.small a.with-dash::before {
	content: "－";
	position: absolute;
	left: 0;
	color: var(--text-fff);
}

a.tell-btn {
	font-family: "BIZ UDPGothic", sans-serif;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	width: 100%;
	height: 48px;
	color: var(--btn-text-333);
	background-color: var(--btn-bg-fff);
	border-radius: 50vh;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	box-sizing: border-box;
	text-decoration: none;
}

.copyright {
	font-size: 87.5%;
	text-align: center;
	margin-top: 56px;
	padding: 20px;
	border-top: 2px solid;
	border-image: repeating-linear-gradient(to right, var(--border-fff) 0 2px, transparent 2px 6px) 1;
}

@media (max-width: 767px) {
	footer {
		padding: 40px 0 0 0;
	}

	.footer-split-flex-wrap li {
		width: 100%;
	}

	.footer-links li.large {
		width: 100%;
		margin-bottom: 16px;
	}

	.footer-links li.large a {
		min-height: 14.0vw;
	}

	.footer-links li.small {
		width: 100%;
	}

	.footer-title-wrap img {
		width: 64px;
	}

	.copyright {
		text-align: center;
	}

	.footer-sns-wrap img {
		width: 48px;
	}

	.footer-links {
		margin: 32px 0 0 0;
	}

	.footer-links li {
		width: 100%;
	}

	.copyright {
		text-align: left;
		margin-top: 32px;
		padding: 16px;
		line-height: 1.25;
	}
}

/* 下層ページ関連 */
.normal-contents-wrap img {
	max-width: 100%;
	height: auto;
}

.normal-contents-wrap ul,
.normal-contents-wrap ol {
	list-style-type: disc;
	list-style-position: inside;
}

.normal-contents-wrap dl,
.normal-contents-wrap ol,
.normal-contents-wrap ul {
	margin-bottom: 2.4rem;
	margin-left: 1.5rem;
}

.normal-contents-wrap hr {
	border-top: 1px solid var(--border-277a71);
}

.subpage-title-bg {
	background-color: var(--bg-277a71);
	background-image: var(--bg-subtitle-pc);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
}

.subpage-title-bg h2 {
	font-size: 200%;
	font-weight: 700;
	color: var(--text-fff);
	text-align: center;
	padding: 40px 5%;
}

.normal-contents-wrap h3 {
	font-size: 112.5%;
	font-weight: 700;
	position: relative;
	padding-left: 24px;
	margin: 8px 0;
}

.normal-contents-wrap h3::before {
    content: "■";
    color: var(--text-277a71);
    position: absolute;
    left: 0;
}

h4 {
	font-size: 112.5%;
	font-weight: 700;
	color: var(--text-277a71);
	margin: 16px 0 0 0;
}

h5 {
	margin-top: 20px;
}

.bunya-title {
	font-size: 150%;
	padding-bottom: 28px;
}

.breadcrumb {
	font-size: 87.5%;
	padding: 24px 5%;
}

.breadcrumb ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}

.breadcrumb li {
	display: flex;
	align-items: center;
}

.breadcrumb a {
	font-weight: 700;
}

.breadcrumb li+li::before {
	content: "＞";
	margin: 0 6px;
}

caption {
	display: none;
}


#search {
	text-align: center;
    margin-bottom: 40px;
}

#search input.fs-text {
    width: 70%;
    border: 1px solid var(--border-277a71);
    padding: 8px 16px;
    margin: 20px 0;
}

#search input.fs-btn {
font-family: "BIZ UDPGothic", sans-serif;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 160px;
    min-height: 48px;
    color: var(--btn-text-fff);
    background-color: var(--btn-bg-277a71);
    border-radius: 50vh;
    font-weight: 400;
    line-height: 1.5;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.3s ease;
    text-decoration: none;
    border: none;
    margin: 0 10px;
}

#pagination {
	width: 100%;
	margin: 30px auto;
	display: inline-block;
}

.pagination_prev,
.pagination_next,
.fs-paginate ul li {
	border-radius: 20px;
	padding: 3px 15px;
	background-color: var(--bg-fff);
	border: 2px solid var(--border-277a71);
	color: var(--text-333);
}

.pagination_prev {
	float: left;
}

.pagination_prev a {
	text-decoration: none;
}

.pagination_next {
	float: right;
}

.detail_search {
	text-align: center;
}

.detail_search a {
	font-family: "BIZ UDPGothic", sans-serif;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 360px;
	min-height: 48px;
	padding: 16px;
	color: var(--btn-text-fff);
	background-color: var(--btn-bg-277a71);
	border-radius: 50vh;
	font-weight: 400;
	line-height: 1.5;
	cursor: pointer;
	box-sizing: border-box;
	transition: all 0.3s ease;
	text-decoration: none;
}


form#myForm input#keyword {
    width: 70%;
    border: 1px solid var(--border-277a71);
    padding: 8px 16px;
    margin: 20px 0;
	background-color: var(--bg-fff);
	color: var(--text-333);
}

form#myForm input#check {
    vertical-align: top;
    margin: 7px 6px 7px 0;
}


form#myForm .actions {
	text-align: center;
    margin: 40px 0;
}

form#myForm button {
	font-family: "BIZ UDPGothic", sans-serif;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 160px;
	min-height: 48px;
	padding: 16px;
	color: var(--btn-text-fff);
	background-color: var(--btn-bg-277a71);
	border-radius: 50vh;
	font-weight: 400;
	line-height: 1.5;
	cursor: pointer;
	box-sizing: border-box;
	transition: all 0.3s ease;
	text-decoration: none;
	border: none;
	margin: 0 10px;
}

form#myForm button a {
    color: var(--btn-text-fff);
    text-decoration: none;
}

@media (max-width: 767px) {
	.detail_search a {
		min-width: 100%;
	}
}

.josei_search {
	margin: 30px 0 50px 0;
	display: inline-block;
}

.fs-paginate {
	width: 100%;
	margin-top: 30px;
	padding: 0;
	display: flex;
	justify-content: center;
}

.fs-paginate ul {
	list-style: none;
	margin: 0 20px;
	padding: 0;
	position: relative;
}

.fs-paginate ul li {
	float: left;
	margin: 5px;
}


img.icon {
	width: 90px;
	margin: 10px 4px 0 0;
	vertical-align: middle;
	display: inline-block;
}

.josei_search .bunyaicon {
	width: 90px;
	margin: 5px;
	float: left;
}


.normal-contents-wrap table.jyosei_calendar,
table.jyosei_calendar {
	display: table;
	width: 100%;
}

@media (max-width: 767px) {
.normal-contents-wrap table.jyosei_calendar,
table.jyosei_calendar {
	display: block;
}
}

.normal-contents-wrap table.jyosei_calendar,
.normal-contents-wrap table.jyosei_calendar tr,
.normal-contents-wrap table.jyosei_calendar td,
table.jyosei_calendar,
table.jyosei_calendar tr,
table.jyosei_calendar td {
	border: 1px solid var(--border-dfdfdf);
}

table.jyosei_calendar td {
	padding: 8px;
}

.normal-contents-wrap .jyosei_calendar_head,
.jyosei_calendar_head {
	font-weight: bold;
	font-size: 125%;
	text-align: center;
	margin-bottom: 20px;
}

.jyosei_calendar_head span {
    padding: 0 2em;	
}

.sat {
	background: var(--bg-D8EDFF);
}

.sun
 {
	background: var(--bg-FADEEB);
}

.now {
	background: var(--bg-FFF5D5);
}

.day {
	width: 70px;
	text-align: center;
}

.josei_search .bunyaicon {
	width: 90px;
	margin: 5px;
	float: left;
}


.jyosei_end_comment {
	margin-bottom: 20px;
	text-align: center;
	font-weight: bold;
}

.normal-contents-wrap .link_list li {
	font-size: 112.5%;
	font-weight: 700;
	padding: 0 0 24px 0;
}

.normal-contents-wrap .waku {
	margin-top: 24px;
	padding: 16px;
	border: 1px solid var(--border-277a71);
	color: var(--text-277a71);
}

.normal-contents-wrap table {
	display: block;
	width: 100%;
	overflow-x: visible;
	white-space: normal;
}

.normal-contents-wrap tbody {
	border-top: 1px solid var(--border-277a71);
	border-left: 1px solid var(--border-277a71);
}

.normal-contents-wrap table th {
	text-align: center;
	padding: 8px;
	border-right: 1px solid var(--border-277a71);
	border-bottom: 1px solid var(--border-277a71);
	background-color: var(--bg-277a71);
	color: var(--text-fff);
	font-weight: 700;
}

.normal-contents-wrap table.jyosei_calendar th {
	padding: 8px;
	border-right: none;
	border-bottom: none;
	background-color: var(--bg-fff);
	color: var(--text-333);
	font-weight: 400;
}

.normal-contents-wrap table td {
	padding: 8px;
	border-right: 1px solid var(--border-277a71);
	border-bottom: 1px solid var(--border-277a71);
}

.normal-contents-wrap table.sitemap_table {
	display: table;
	width: 100%;
	overflow-x: visible;
	white-space: normal;
}

.normal-contents-wrap table.sitemap_table th,
.normal-contents-wrap table.sitemap_table td {
	white-space: normal;
}

.normal-contents-wrap table.sitemap_table th {
	text-align: left;
	padding: 16px;
	background-color: var(--bg-fff);
	color: var(--text-333);
	border-right: none;
}

.normal-contents-wrap table.sitemap_table td {
	padding: 8px;
}

.normal-contents-wrap table.sitemap_table tbody tr td table.in tbody,
.normal-contents-wrap table.sitemap_table tbody tr td table.in tbody tr td.in,
.normal-contents-wrap table.sitemap_table tbody tr td table.ex tbody,
.normal-contents-wrap table.sitemap_table tbody tr td table.ex tbody tr td.ex {
	border: none;
}

.normal-contents-wrap form#searchForm table.form-table,
form#organization_search table.form-table,
form#entry-edit-form table.form-table,
form#event_search table.form-table,
table.form-table {
	display: table;
	width: 100%;
	overflow-x: visible;
	white-space: normal;
}

.normal-contents-wrap form#searchForm table.form-table tbody,
form#organization_search table.form-table tbody,
form#entry-edit-form table.form-table tbody,
form#event_search table.form-table tbody,
.wrap table.form-table tbody{
	border: none;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr#city,
form#organization_search table.form-table tbody tr#city {
	display: none;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr,
form#organization_search table.form-table tbody tr,
form#entry-edit-form table.form-table tbody tr,
form#event_search table.form-table tbody tr,
.wrap table.form-table tbody tr {
	border-top: 2px dotted var(--border-277a71);
}

.normal-contents-wrap form#searchForm table.form-table tbody tr th,
form#organization_search table.form-table tbody tr th,
form#entry-edit-form table.form-table tbody tr th,
form#event_search table.form-table tbody tr th,
.wrap table.form-table tbody tr th{
	width: 24%;
	padding: 24px 0;
	text-align: left;
	vertical-align: top;
	background-color: var(--bg-fff);
	color: var(--text-333);
	border-bottom: none;
	border-right: none;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr td,
form#organization_search table.form-table tbody tr td,
form#entry-edit-form table.form-table tbody tr td,
form#event_search table.form-table tbody tr td,
.wrap table.form-table tbody tr td{
	width: 72%;
	padding: 24px 0;
	border-bottom: none;
	border-right: none;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr td label,
form#organization_search table.form-table tbody tr td label,
form#entry-edit-form table.form-table tbody tr td label,
form#event_search table.form-table tbody tr td label {
	display: flex;
	align-items: center;
	gap: 6px;
	line-height: 1.6;
	margin-bottom: 8px;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr#city td label,
form#organization_search table.form-table tbody tr#city td label,
form#entry-edit-form table.form-table tbody tr#city td label,
form#event_search table.form-table tbody tr#city td label {
	display: inline-block;
	align-items: center;
	width: 31%;
	margin-right: 2%;
	margin-bottom: 16px;
	border: 1px solid var(--border-277a71);
	padding: 8px;
	box-sizing: border-box;
	vertical-align: middle;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr#city td label:nth-child(3n),
form#organization_search table.form-table tbody tr#city td label:nth-child(3n),
form#entry-edit-form table.form-table tbody tr#city td label:nth-child(3n),
form#event_search table.form-table tbody tr#city td label:nth-child(3n){
	margin-right: 0;
}

input[type="checkbox"],
input[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 16px;
	height: 16px;
	border: 1px solid var(--border-277a71);
	cursor: pointer;
	margin: 0;
	display: inline-block;
	position: relative;
	flex-shrink: 0;
}

input[type="checkbox"] {
	border-radius: 2px;
}

input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	left: 3px;
	top: 1px;
	width: 6px;
	height: 10px;
	border-right: 2px solid var(--border-277a71);
	border-bottom: 2px solid var(--border-277a71);
	transform: rotate(45deg);
}

input[type="radio"] {
	border-radius: 50%;
}

input[type="radio"]:checked::after {
	content: "";
	position: absolute;
	left: 4px;
	top: 4px;
	width: 6px;
	height: 6px;
	background-color: var(--border-277a71);
	border-radius: 50%;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr td input#keyword,
form#organization_search table.form-table tbody tr td input#keyword,
form#entry-edit-form table.form-table tbody tr td select,
form#entry-edit-form table.form-table tbody tr td textarea,
form#entry-edit-form table.form-table tbody tr td input:not([type="checkbox"]):not([type="file"]),
form#event_search table.form-table tbody tr td input#keyword {
	width: 100%;
	border: 1px solid var(--border-277a71);
	padding: 8px 16px;
}

form#entry-edit-form table.form-table tbody tr td input#zip,
form#entry-edit-form table.form-table tbody tr td input#refFile1Desc,
form#entry-edit-form table.form-table tbody tr td input#refFile2Desc,
form#entry-edit-form table.form-table tbody tr td input#refFile3Desc {
    width: auto;
    margin: 5px 0;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr#city td label input[type="checkbox"],
form#organization_search table.form-table tbody tr#city td label input[type="checkbox"],
form#entry-edit-form table.form-table tbody tr#city td label input[type="checkbox"],
form#event_search table.form-table tbody tr#city td label input[type="checkbox"] {
	vertical-align: middle;
	position: relative;
	top: -1px;
	margin-right: 6px;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr td .actions,
form#organization_search table.form-table tbody tr td .actions,
form#entry-edit-form table.form-table tbody tr td .actions,
form#event_search table.form-table tbody tr td .actions,
.wrap table.form-table tbody tr td .actions{
	text-align: center;
}

.wrap table.form-table tbody tr td button {
	font-family: "BIZ UDPGothic", sans-serif;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 136px;
	min-height: 28px;
	padding: 6px;
	color: var(--btn-text-fff);
	background-color: var(--btn-bg-277a71);
	border-radius: 50vh;
	font-weight: 400;
	line-height: 1.5;
	cursor: pointer;
	box-sizing: border-box;
	transition: all 0.3s ease;
	text-decoration: none;
	border: none;
	margin: 16px;
}

.normal-contents-wrap form#searchForm table.form-table tbody tr td button,
form#organization_search table.form-table tbody tr td button,
form#entry-edit-form table.form-table tbody tr td button,
form#event_search table.form-table tbody tr td button,
html body div.wrap main div.actions form button[type="submit"],
.wrap table.form-table tbody tr td button[type="submit"],
html body div.wrap div.card div a.button {
	font-family: "BIZ UDPGothic", sans-serif;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 160px;
	min-height: 32px;
	padding: 8px;
	color: var(--btn-text-fff);
	background-color: var(--btn-bg-277a71);
	border-radius: 50vh;
	font-weight: 400;
	line-height: 1.5;
	cursor: pointer;
	box-sizing: border-box;
	transition: all 0.3s ease;
	text-decoration: none;
	border: none;
	margin: 24px 24px 24px 0;
}

form#entry-edit-form table.form-table tbody tr td button#zipAutoBtn,
form#entry-edit-form table.form-table tbody tr td button#bylawsClearBtn,
form#entry-edit-form table.form-table tbody tr td button#activityClearBtn,
form#entry-edit-form table.form-table tbody tr td button#otherClearBtn {
    min-width: 110px;
    min-height: 38px;
    padding: 0 15px;
}

.required,
.error {
	color: #cc0000;
}

@media (max-width: 895px) {
	.subpage-title-bg {
		background-image: var(--bg-subtitle-sp);
	}

	.subpage-title-bg h2 {
		font-size: 150%;
		padding: 24px 5%;
	}

	.normal-contents-wrap table {
		overflow-x: auto;
		white-space: nowrap;
	}

	.normal-contents-wrap table.sitemap_table,
	.normal-contents-wrap table.sitemap_table tbody,
	.normal-contents-wrap table.sitemap_table tr,
	.normal-contents-wrap table.sitemap_table th,
	.normal-contents-wrap table.sitemap_table td,
	.normal-contents-wrap form#searchForm table.form-table tbody tr th,
	.normal-contents-wrap form#searchForm table.form-table tbody tr td,
	.normal-contents-wrap form#organization_search table.form-table tbody tr th,
	.normal-contents-wrap form#organization_search table.form-table tbody tr td,
	.normal-contents-wrap form#entry-edit-form table.form-table tbody tr th,
	.normal-contents-wrap form#entry-edit-form table.form-table tbody tr td,
	.normal-contents-wrap form#event_search table.form-table tbody tr th,
	.normal-contents-wrap form#event_search table.form-table tbody tr td,
	.wrap table.form-table tbody tr th,
	.wrap table.form-table tbody tr td
	 {
		display: block;
		width: 100%;
	}

	.normal-contents-wrap table.sitemap_table th {
		border-right: 1px solid var(--border-277a71);
		padding: 8px;
		border-bottom: none;
	}



	.normal-contents-wrap form#searchForm table.form-table tbody tr#city td label,
	form#organization_search table.form-table tbody tr#city td label,
	form#entry-edit-form table.form-table tbody tr#city td label,
	form#event_search table.form-table tbody tr#city td label {
		width: 46%;
		margin-right: 2%;
	}

	.normal-contents-wrap form#searchForm table.form-table tbody tr#city td label:nth-child(3n),
	form#organization_search table.form-table tbody tr#city td label:nth-child(3n),
	form#entry-edit-form table.form-table tbody tr#city td label:nth-child(3n),
	form#event_search table.form-table tbody tr#city td label:nth-child(3n) {
		margin-right: 2%;
	}
}


.results-list {
	max-width: calc(1000px + 10%);
	max-height: calc(80px * 5);
	overflow-y: auto;
    margin: 48px auto;
    padding: 0 5%;
    overflow-wrap: break-word;
    word-break: break-all;
}

.results-list .entry {
	margin-bottom: 20px;
}

.results-list .date {
	font-weight: bold;
	margin-bottom: 4px;
}

.results-list .date::before {
    content: "●";
    color: var(--text-277a71);
}

.results-list .dotted-line {
	border-bottom: 2px solid;
    border-image: repeating-linear-gradient(to right, var(--border-277a71) 0 2px, transparent 2px 6px) 1;
	margin-top: 4px;
	margin-bottom: 16px;
}

.results-list .circle {
	color: green;
	font-weight: bold;
	margin-right: 6px;
}

table.form-table textarea {
	width: 100%;
	border: 1px solid var(--border-277a71);
 	background-color: var(--bg-fff);
	color: var(--text-333);
	padding: 8px 16px;
}

table.form-table input[type="text"],
table.form-table input[type="tel"],
table.form-table input[type="email"] {
	width: auto;
	border: 1px solid var(--border-277a71);
	background-color: var(--bg-fff);
	color: var(--text-333);
	padding: 8px 16px;
}

@media (max-width: 767px) {
table.form-table input[type="text"],
table.form-table input[type="tel"],
table.form-table input[type="email"] {
	width: 100%;
}
}

table.form-table input[type="file"] {
	margin-bottom: 16px;
}

table.form-table svg.filter-icon {
	width: 16px;
}

table.form-table label {
	margin-right: 24px;
}

table.form-table select {
	width: 100%;
	white-space: normal;
	word-break: break-word;
	background-color: var(--bg-fff);
	color: var(--text-333);
}

body.archive.post-type-archive.post-type-archive-dantai h3,
body.archive.post-type-archive.post-type-archive-dantai div article p {
	margin-bottom: 32px;
}

form#event-entry-form table.form-table tbody tr td div.field-with-filter div.filter-bar,
form#entry-edit-form table.form-table tbody tr td div.zip-flex {
	display: flex;
 align-items: center;
 gap: 16px;
}

@media (max-width: 767px) {
form#event-entry-form table.form-table tbody tr td div.field-with-filter div.filter-bar,
form#entry-edit-form table.form-table tbody tr td div.zip-flex {
display: block;
}
}

h2.result_item_title {
	font-size: 125%;
	color: var(--text-277a71);
}

a[name] {
  scroll-margin-top: 220px;
}

@media (max-width: 767px) {
	a[name] {
  scroll-margin-top: 120px;
}
}

div.normal-contents-wrap div#results dl dd a,
div.normal-contents-wrap div#results dl.entry_list dt a,
div.main_contents div#results dl.entry_list dt a {
		font-size: 125%;
		font-weight: 700;
}

.wrap h1 {
	text-align: center;
	font-size: 125%;
	margin-bottom: 24px;
}

.select2-results__option--selectable {
	background-color: var(--bg-fff);
	color: var(--text-333);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	background-color: var(--bg-fff);
	line-height: 1.75;
	color: var(--text-333);
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
	color: var(--text-333);
}

.select2-container--default .select2-selection--single {
	background-color: var(--bg-fff);
	color: var(--text-333);
}

.assistBtn-square,
.menuBtn-square {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: var(--text-333);
}

a.btn-field-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 120px;
  padding: 8px;
  border: 2px solid var(--border-277a71);
  border-radius: 9999px;
  color: var(--text-277a71);
  font-weight: 700;
  text-decoration: none;
  line-height: 1;
  margin-bottom: 8px;
}

@media (max-width: 767px) {
a.btn-field-icon {
  min-width: 96px;
}
}