@charset "UTF-8";
/* レイアウト */
.l-container {
	position: relative;
	overflow-x: hidden;
}
@media (max-width: 1000px) {}
.l-inner {
	max-width: 1000px;
	margin-inline: auto;
	padding-inline: 15px;
}
.l-inner._wide {
	max-width: 1400px;
}
@media not all and (max-width: 768px) {
	.l-inner {
		box-sizing: content-box;
	}
}
.l-padding {
	padding-block: 80px;
}
@media (max-width: 768px) {
	.l-padding {
		padding-block: 40px;
	}
}
/*=====

ヘッダー　フッター

=====*/
.g-header {
	display: none;
}
@media (max-width: 768px) {
	/*== ナビゲーション ==*/
	.g-header {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 100;
		height: 52px;
		background: linear-gradient(#005f85 0%, #003144 100%);
		box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1);
	}
	.g-header .header-logo {
		width: 60px;
		height: auto;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 100;
	}
}
.is-page-top .g-header {
	background: none;
	box-shadow: none;
}
.is-page-top .header-logo {
	display: none;
}
.is-page-top #menu .header-logo {
	display: block;
}
.g-header .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	-moz-column-gap: 20px;
	column-gap: 20px 0;
	padding: 10px;
}
/*　スマホナビ */
.g-header .sp-navi {
	display: flex;
	justify-content: flex-end;
	font-size: 18px;
}
.g-header .sp-navi__item {
	position: relative;
}
.g-header .sp-navi__item:not(:last-child) {
	border-bottom: 1px solid rgba(0, 95, 133, 0.5);
}
.g-header .sp-navi__item a {
	display: flex;
	align-items: center;
	padding: 19px 0px;
	color: #ffffff;
}
.g-header .sp-navi__item a:before {
	content: "";
	background: url("../img/icon_arrow_circle_spnav.png") no-repeat left top;
	background-size: cover;
	display: block;
	width: 16px;
	height: 16px;
	margin-inline-end: 10px;
}
/* スマホメニューボタン */
.g-header .menu-button {
	position: absolute;
	right: 20px;
	top: 0;
	width: 52px;
	height: 52px;
	z-index: 6000;
	background: linear-gradient(#003144 0%, #005f85 100%);
}
.g-header .menu-button::before, .g-header .menu-button::after, .g-header .menu-button__border {
	content: "";
	display: block;
	width: 26px;
	height: 2px;
	position: absolute;
	inset: -10px 0 0;
	margin: auto;
	background-color: #ffffff;
	transition: transform var(--sec-fast);
}
.g-header .menu-button__border {
	visibility: var(--g-header-menu-button-border-visibility, visible);
}
.g-header .menu-button::before {
	transform: translate(0, -8px);
}
.g-header .menu-button::after {
	transform: translate(0, 8px);
}
.g-header .menu-button.is-open {
	--g-header-menu-button-border-visibility: hidden;
}
.g-header .menu-button.is-open::before {
	transform: translate(0, 0) rotate(45deg);
	background-color: #ffffff;
}
.g-header .menu-button.is-open::after {
	transform: translate(0, 0) rotate(-45deg);
	background-color: #ffffff;
}
.g-header .menu-button__text {
	position: absolute;
	bottom: 6px;
	left: 0;
	width: 100%;
	font-size: 0.5rem;
	line-height: 1;
	text-align: center;
	color: #ffffff;
	font-weight: 500;
}
.g-header .menu-button__text._close {
	display: none;
}
.g-header .menu-button.is-open .menu-button__text._open {
	display: none;
}
.g-header .menu-button.is-open .menu-button__text._close {
	display: block;
	color: #ffffff;
}
@media not all and (max-width: 768px) {
	.g-header .menu-button {
		display: none;
	}
	.global-navi__sp {
		display: none !important;
	}
}
/* スマホメニュー展開時 */
.global-navi__sp {
	position: fixed;
	z-index: 4990;
	inset: 0 0 0 0;
	background-color: #003144;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.5s, visibility 0.5s;
	/*border-radius: 80px 0 0 80px;*/
}
.global-navi__sp.is-open {
	opacity: 1;
	visibility: visible;
}
.global-navi__sp .wrapper {
	padding-top: 80px;
	height: 100%;
	overflow-y: auto;
}
.global-navi__sp .inner {}
.global-navi__sp .sp-navi__area1 {
	justify-content: center;
	color: #ffffff;
	padding: 5px 60px 60px 60px;
}
.global-navi__sp .sp-navi {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	row-gap: 5px;
	line-height: 1.4375;
}
/* SNS ボタン */
.global-navi__sp .sp-navi__area2 {
	justify-content: center;
	padding: 5px 60px 60px 60px;
}
.global-navi__sp .sp-navi__area2 .sp-sns__wrap {
	background:
		url("../img/bg_sp_sns.png");
	padding: 25px 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	font-size: 12px;
}
.global-navi__sp .sp-navi__area2 .sp-sns__wrap ul {
	display: flex;
	gap: 12px;
}
.global-navi__sp .sp-navi__area2 .sp-sns__wrap a {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.global-navi__sp .sp-navi__area2 .sp-sns__wrap img {
	width: 30px;
	height: auto;
}
/*フッター*/
.g-footer {
	position: relative;
	background: url("../img/bg_main.png") repeat center top;
	color: #ffffff;
}
.g-footer a {
	color: #000;
}
/*お問い合わせタイトル*/
.g-footer .c-contact__title-container {
	padding-block: 13px 48px;
	background: url("../img/bg_contact_title.png") no-repeat center bottom;
	background-size: cover;
}
@media (max-width: 768px) {}
/* お問合せ先 */
.g-footer .c-contact__wrap {
	position: relative;
}
.g-footer .c-contact__wrap .l-inner {
	justify-content: space-around;
	gap: 40px;
	display: flex;
	margin-block: 73px 40px;
}
.g-footer .c-contact__box {
	width: 40%;
	max-width: 400px;
	border-radius: 8px;
	background: rgba(0, 49, 68, 0.6);
	border: 1px solid #8e8e8e;
	padding: 40px;
}
.contact-ttl {
	font-weight: 500;
	font-size: 24px;
	color: #fff;
	text-align: center;
	margin-bottom: 16px;
}
.contact-tel {
	margin-block: 16px;
	text-align: center;
}
.contact-tel a {
	display: flex;
	align-items: center;
	gap: 8px;
	justify-content: center;
	border-radius: 27px;
	background: #eee;
	border: 1px solid #707070;
	font-family: Roboto;
	font-size: 32px;
	letter-spacing: 0.03em;
	color: #005f85;
	padding: 2px 22px 0;
}
.contact-tel a:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 28px;
	background: url("../img/icon_tel.png") no-repeat left top;
	background-size: cover;
}
.contact-time {
	margin-block: 16px;
	font-size: 15px;
}
.contact-address {
	font-size: 15px;
}
@media (max-width: 768px) {
	.g-footer .c-contact__wrap .l-inner {
		gap: 40px;
		flex-direction: column;
		margin-block: 73px 0px;
	}
	.g-footer .c-contact__box {
		width: auto;
		max-width: inherit;
		padding: 20px;
	}
}
/* TOPへ戻るボタン */
.g-footer .pagetop {
	pointer-events: none;
	position: fixed;
	z-index: 50;
	bottom: 65px;
	right: 5%;
}
body.is-footer-visible .g-footer .pagetop {
	position: absolute;
	bottom: calc(100% + 5px);
}
.g-footer .pagetop__button {
	pointer-events: auto;
	opacity: 0;
	visibility: hidden;
	display: block;
	height: 85px;
	width: 85px;
	background: url("../img/page_top.png") no-repeat left top;
	background-size: cover;
	font-size: 0px;
}
body:not(.is-page-top) .g-footer .pagetop__button {
	opacity: 1;
	visibility: visible;
}
.g-footer .pagetop__button:focus:focus-visible {}
.g-footer .pagetop__button:hover {
	background: url("../img/page_top-hover.png") no-repeat left top;
	background-size: cover;
}
/* コピーライト */
.g-footer .copyright-wrap {
	position: relative;
	padding-block: 20px;
	text-align: center;
}
.g-footer .copyright {
	font-size: 12px;
	color: #eee;
}
@media (max-width: 768px) {
	.g-footer .copyright-wrap {
		padding-block: 60px 20px;
	}
}
/* ====
共通パーツ類

=== */
/*== タイトル類 ==*/
/*縦書き時*/
.vertical-ttl {
	writing-mode: vertical-rl;
	letter-spacing: 0.2em;
}
/*==見出しスタイル1==*/
.c-ttl01__wrap {
	display: flex;
	margin-block: 20px;
	justify-content: flex-start;
	flex-direction: column;
}
.c-ttl01__wrap.__center {
	justify-content: center;
}
.c-ttl01__main {
	font-family: "Noto Serif JP";
	font-weight: 600;
	font-size: 24px;
	text-align: left;
	color: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
}
.c-ttl01__main:before {
	content: "";
	background: url("../img/icon_nankai.png") no-repeat left top;
	display: block;
	width: 32px;
	height: 32px;
	background-size: cover;
	flex-shrink: 0;
}
.c-ttl01__sub {
	font-family: "Noto Sans JP";
	font-size: 20px;
	text-align: center;
	color: #005f85;
	margin-top: 10px;
}
@media (max-width: 768px) {
	.c-ttl01__wrap {
		justify-content: center;
	}
	.c-ttl01__main {
		font-weight: bold;
		font-size: 16px;
	}
	.c-ttl01__sub {
		font-size: 16px;
	}
}
/*==見出しスタイル2==*/
.c-ttl02__wrap {
	margin-block: 20px;
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
}
.c-ttl02__main {
	font-family: "Noto Serif JP";
	font-weight: bold;
	font-size: 24px;
	text-align: left;
	color: #000;
	/*	letter-spacing: 0.2em;*/
	display: flex;
	align-items: center;
	/*justify-content: center;*/
	gap: 12px;
}
.c-ttl02__main:before {
	content: "";
	background: url("../img/icon_reiwa.png") no-repeat left top;
	display: block;
	width: 36px;
	height: 28px;
	background-size: cover;
	flex-shrink: 0;
}
@media (max-width: 768px) {
	.c-ttl02__wrap {
		justify-content: center;
	}
	.c-ttl02__main {
		font-weight: bold;
		font-size: 16px;
	}
	.c-ttl02__sub {
		font-size: 16px;
	}
}
/*==見出しスタイル3==*/
.c-ttl03 {
	font-weight: 500;
	font-size: 18px;
	color: #005f85;
	padding-block: 4px;
	border-bottom: 1px dashed #005f85;
	margin-block: 14px 10px;
}
.c-ttl03:first-child {
	margin-top: 0;
}
/*==テーブル==*/
.c-table01 {
	border-collapse: separate;
	border-spacing: 12px 0;
}
.c-table01 th {
	border-bottom: 1px solid #005F85;
	padding: 11px 0;
}
.c-table01 td {
	border-bottom: 1px solid #BCBCBC;
	padding: 11px 0;
}
.c-table01 td ul {
	margin-top: 8px;
}
.c-table01 td li {
	font-size: 15px;
}
@media (max-width: 768px) {
	.c-table01 {
		font-size: 15px;
	}
	.c-table01 th {
		padding: 11px 0;
		width: 24%;
	}
	.c-table01 td {
		padding: 11px 0;
		vertical-align: middle;
	}
	.c-table01 td li {
		font-size: 13px;
	}
}
/*== PDFボタン ==*/
.c-button__wrap {
	margin-block: 10px 0;
	display: flex;
	gap: 15px;
}
.c-button {
	/*	display: inline-block;*/
}
.c-button a {
	padding: 7px 18px;
	border-radius: 24px;
	background: #fff;
	border: 1px solid #ddd;
	display: inline-flex;
	align-items: center;
	color: #005F85;
	gap: 5px;
}
.c-button a:after {
	content: "";
	background: url("../img/icon_pdf.png") no-repeat left top;
	width: 28px;
	height: 32px;
	background-size: cover;
}
.c-button a:hover {
	text-decoration: none;
	opacity: 0.6;
}
@media (max-width: 768px) {
	.c-button__wrap {
		flex-direction: column;
		gap: 10px;
	}
	.c-button a {
		font-size: 15px;
	}
}
/*== 赤字テキスト ==*/
.c-text-red {
	color: #9B1846;
	font-weight: 500;
}
/*== 外部テキストリンク ==*/
.c-text-link a {
	text-decoration: underline;
	font-size: 16px;
	color: #005f85;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
.c-text-link a:hover {
	text-decoration: none;
}
.c-text-link a:after {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background: url("../img/icon_exlink.png") no-repeat left top;
	background-size: cover;
}
/*== ひし形リスト ==*/
.c-list01 {
	margin-block: 10px;
}
.c-list01 li {
	display: flex;
	align-items: first baseline;
	gap: 4px;
	margin-block: 3px;
}
.c-list01 li:before {
	content: "";
	background: url("../img/icon_reiwa_li.png") no-repeat left top;
	display: block;
	width: 16px;
	height: 16px;
	transform: translateY(2px);
	background-size: cover;
	flex-shrink: 0;
}
/* ==スマホ改行== */
.br_sp {
	display: none;
}
@media (max-width: 768px) {
	.br_sp {
		display: block;
	}
}
/* ====

メインビジュアル

=== */
.q-top__mainvisual {
	background: url("../img/bg_mv_nankai.png") no-repeat center bottom #ffffff;
	background-size: cover;
	position: relative;
	min-height: 630px;
}
.q-top__mainvisual .mv {
	position: relative;
}
.q-top__mainvisual .mv .mv-txt {
	display: block;
	width: 70%;
}
.q-top__mainvisual .mv .mv-btn {
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translateX(50%);
}
.mv-btn a {
	display: block;
}
@media (max-width: 1280px) {
	.q-top__mainvisual .mv .mv-btn {
		transform: translateX(20%);
	}
}
@media (max-width: 1100px) {
	.q-top__mainvisual {
		min-height: 460px;
	}
	.q-top__mainvisual .mv .mv-txt img {
		width: 100%;
	}
	.q-top__mainvisual .mv .mv-btn {
		transform: translateX(-20px);
		width: 18%;
	}
}
@media (max-width: 768px) {
	.q-top__mainvisual {
		background: url("../img/bg_mv_nankai_sp.png") no-repeat center bottom 20px #ffffff;
		padding-bottom: 20px;
		min-height: inherit;
	}
	.q-top__mainvisual .mv {
		position: inherit;
		padding-bottom: 30px;
	}
	.q-top__mainvisual .mv .mv-txt {
		width: auto;
	}
	.q-top__mainvisual .mv .mv-btn {
		position: absolute;
		left: 0;
		bottom: 0;
		transform: translateX(10px);
		width: auto;
	}
	.q-top__mainvisual .mv .mv-btn img {
		width: 25%;
		min-width: 100px;
		height: auto;
	}
}
/* ====

メインビジュアル下　ページ内ナビゲーション

=== */
.q-top__navigation {
	padding-block: 10px 25px;
	width: 100%;
	background: #ffffff;
}
.q-top__navigation .c-container {
	position: relative;
}
.q-top__navigation--pagenav {
	z-index: 9999;
}
.q-top__navigation .pagenav-logo {
	visibility: hidden;
	width: 132px;
	height: 100%;
}
@media (max-width: 1260px) {
	.q-top__navigation .pagenav-logo {
		visibility: hidden;
		width: 120px;
		height: 100%;
	}
	@media (max-width: 1090px) {
		.q-top__navigation .pagenav-logo {
			visibility: hidden;
			width: 110px;
			height: 100%;
		}
	}
}
@media (max-width: 980px) {
	.q-top__navigation .pagenav-logo {
		visibility: hidden;
		width: 80px;
		height: 100%;
	}
}
@media (max-width: 767px) {
	.q-top__navigation {
		display: none;
	}
	/*	.q-top__navigation--pagenav {
		display: none;
	}*/
}
/*--------固定化されたときのCSS-----------*/
.q-top__navigation[data-sticky='true'] {
	height: 132px;
	position: fixed;
	top: 0;
	filter: drop-shadow(0px 2px 10px rgba(0, 0, 0, 0.1));
	z-index: 1000;
}
.q-top__navigation[data-sticky='true'] .pagenav-logo {
	visibility: visible;
	position: absolute;
	left: 0;
	top: 0;
}
.q-top__navigation--pagenav ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px 24px;
}
.q-top__navigation--pagenav li {
	border-bottom: 1px solid rgba(0, 95, 133, 0.3);
}
.q-top__navigation--pagenav li a {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	color: #005f85;
	padding: 8px;
}
.q-top__navigation--pagenav li a:hover {
	text-decoration: none;
}
.q-top__navigation--pagenav li a:before {
	content: "";
	display: block;
	background: url("../img/icon_arrow_circle.png") no-repeat left top;
	background-size: cover;
	width: 16px;
	height: 16px;
}
.q-top__navigation--pagenav li a:hover {
	opacity: 0.7;
}
@media (max-width: 1260px) {
	.q-top__navigation[data-sticky='true'] {
		height: 120px;
		padding-left: 140px;
	}
}
@media (max-width: 1090px) {
	.q-top__navigation[data-sticky='true'] {
		height: 110px;
	}
	.q-top__navigation--pagenav li a {
		font-size: 12px;
		gap: 6px;
		padding: 5px;
	}
}
@media (max-width: 980px) {
	.q-top__navigation--pagenav ul {
		gap: 3px 10px;
	}
	.q-top__navigation[data-sticky='true'] {
		height: 80px;
		padding-left: 100px;
	}
	.q-top__navigation--pagenav li a {
		font-size: 10px;
	}
}
/* ====

令和土佐藩

=== */
.q-top__reiwa {
	width: 100%;
	background: url("../img/mv_reiwa_subtitle_en.png") no-repeat left 62px, url("../img/bg_reiwa_mv.png") repeat left bottom;
}
.q-top__reiwa:before {
	content: "";
	display: block;
	height: 62px;
	width: 100%;
	background: #ffffff;
}
.q-top__reiwa .main-txt {
	margin-top: -42px;
	display: block;
}
@media (max-width: 1000px) {
	.q-top__reiwa {
		width: 100%;
		background: #ffffff;
	}
	.q-top__reiwa:before {
		content: "";
		display: none;
	}
	.q-top__reiwa .l-inner {
		padding-inline: 0;
	}
	.q-top__reiwa .main-txt {
		margin-top: 0px;
	}
}
/* ====

お知らせ

=== */
.q-top__news .l-inner {
	display: grid;
	grid-template-columns: 90px 1fr;
}
.q-top__news--list-wrap {
	margin-top: 68px;
}
.q-top__news--list-box {
	background: #fff;
	margin-bottom: 4px;
}
.q-top__news--list-head {
	padding: 20px 46px 20px 20px;
	display: flex;
	position: relative;
}
.q-top__news--list-head:after {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: url("../img/icon_plus.png") no-repeat left top;
	background-size: cover;
	position: absolute;
	right: 20px;
	top: 24px;
}
.q-top__news--list-head.open:after {
	content: "";
	background: url("../img/icon_minus.png") no-repeat left top;
	background-size: cover;
}
.q-top__news--list-head:hover {
	cursor: pointer;
}
.q-top__news--list-head .news-date {
	width: 100px;
	flex-shrink: 0;
	color: #005f85;
}
.q-top__news--list-body {
	padding: 0px 46px 20px 120px;
}
@media (max-width: 768px) {
	.q-top__news .l-inner {
		display: block;
	}
	.q-top__news--list-wrap {
		margin-top: 0px;
	}
	.q-top__news--list-head {
		padding: 20px 46px 20px 20px;
		display: flex;
		gap: 5px;
		flex-direction: column;
	}
	.q-top__news--list-body {
		padding: 0px 46px 20px 20px;
	}
}
/* ====

展示会概要

=== */
.q-top__overview .l-inner {
	display: grid;
	grid-template-columns: 90px 1fr;
}
.q-top__overview--table-wrap {
	margin-top: 68px;
}
@media (max-width: 768px) {
	.q-top__overview .l-inner {
		display: block;
	}
	.q-top__overview--table-wrap {
		margin-top: 0px;
	}
}
/* ====

南海太郎朝尊とは

=== */
.q-top__about {
	position: relative;
}
.q-top__about:before {
	content: "";
	display: block;
	width: calc(50vw + 375px);
	height: calc(100% - 40px);
	background: url("../img/bg_main.png") repeat left top;
	border-radius: 200px 0 0 0;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
.q-top__about .l-inner {
	display: grid;
	grid-template-columns: 1fr 300px;
	gap: 92px;
	color: #fff;
	z-index: 10;
	position: relative;
}
.q-top__about .c-ttl01__wrap {
	margin-top: 0;
}
.q-top__about .c-ttl01__main {
	justify-content: flex-start;
	font-size: 32px;
	letter-spacing: 0;
	color: #fff;
}
.q-top__about .c-ttl01__sub {
	font-family: "Noto Serif JP";
	font-weight: 500;
	font-size: 16px;
	color: #fff;
	margin-left: 48px;
	text-align: left;
}
.q-top__about--text {}
.q-top__about--photo {
	margin-bottom: -80px;
	display: block;
}
@media (max-width: 1200px) {
	.q-top__about .l-inner {
		gap: 52px;
		padding-left: 80px;
		position: relative;
	}
}
@media (max-width: 840px) {
	.q-top__about .l-inner {
		grid-template-columns: 1fr 240px;
		gap: 32px;
		padding-left: 60px;
		font-size: 13px;
	}
	@media (max-width: 768px) {
		.q-top__about {
			margin-bottom: 80px;
		}
		.q-top__about:before {
			content: "";
			display: block;
			width: 100%;
			height: calc(100% - 40px);
			background: url("../img/bg_main.png") repeat left top;
			border-radius: 160px 0 160px 0;
			position: absolute;
			left: 0;
			top: 0;
			z-index: 1;
		}
		.q-top__about .l-inner {
			display: block;
			padding-left: 15px;
		}
		.q-top__about .c-ttl01__main {
			justify-content: center;
			font-size: 20px;
		}
		.q-top__about .c-ttl01__sub {
			font-family: "Noto Serif JP";
			font-size: 12px;
			margin-left: 0px;
			text-align: center;
		}
		.q-top__about--text {
			margin-block: 40px 20px;
			font-size: 15px;
		}
		.q-top__about--photo {
			width: 58.667%;
		}
	}
}
/* ====

展示内容

=== */
.q-top__exhibition--wrap {
	background: url("../img/exhibition_subtitle.png") no-repeat left top, url("../img/bg_nankai_tenji.png") repeat left top;
	border-radius: 0 400px 0 400px;
	padding: 100px 130px;
	color: #ffffff;
	margin-top: 50px;
}
.q-top__exhibition--text {}
.q-top__exhibition--title-wrap {
	display: flex;
	align-items: center;
	background: linear-gradient(to right, rgba(0, 95, 133, 0.8) 0%, rgba(0, 49, 68, 0.8) 100%);
	padding: 20px;
	gap: 54px;
	font-family: "Noto Serif JP";
	margin-block: 0 40px;
}
.q-top__exhibition--title-number {
	font-weight: 500;
	font-size: 24px;
	display: flex;
	align-items: center;
	gap: 4px;
	position: relative;
	z-index: 10;
}
.q-top__exhibition--title-number span {
	font-family: Roboto;
	font-weight: normal;
	font-size: 36px;
	color: #faee00;
}
.q-top__exhibition--title-number:after {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	background: #003144;
	transform: rotate(-45deg) translate(-40.5%, -50%);
	position: absolute;
	left: 100%;
	top: 0;
	z-index: -1;
}
.q-top__exhibition--title {}
.q-top__exhibition--title-main {
	font-weight: 500;
	font-size: 28px;
}
.q-top__exhibition--title-sub {
	font-weight: normal;
	font-size: 18px;
	display: flex;
	align-items: center;
	gap: 5px;
}
.q-top__exhibition--title-sub:before {
	content: "";
	display: block;
	width: 40px;
	height: 1px;
	background: #ffffff;
	transform: translateY(2px);
}
@media (max-width: 768px) {
	.q-top__exhibition--wrap {
		background: url("../img/bg_nankai_tenji.png") repeat left top;
		padding: 60px 0 30px;
		font-size: 15px;
		border-radius: 0 0 0 200px;
	}
	.q-top__exhibition--title-wrap {
		margin-left: -20px;
		gap: 30px;
	}
	.q-top__exhibition--title-number {
		font-size: 16px;
		white-space: nowrap;
		gap: 4px;
	}
	.q-top__exhibition--title-number span {
		font-size: 24px;
	}
	.q-top__exhibition--title-number:after {
		content: "";
		display: block;
		width: 40px;
		height: 40px;
		transform: rotate(-45deg) translate(-40.5%, -50%);
	}
	.q-top__exhibition--title-main {
		font-size: 20px;
	}
	.q-top__exhibition--title-sub {
		font-size: 14px;
	}
	.q-top__exhibition--title-sub:before {
		content: "";
		display: block;
		width: 25px;
		height: 1px;
		background: #ffffff;
		transform: translateY(2px);
	}
}
/*=展示1=*/
.q-top__exhibition--box.__no01 .q-top__exhibition--inner {
	max-width: 750px;
	margin: 0 auto 60px;
}
.q-top__exhibition--box.__no01 .q-top__exhibition--photo {
	display: block;
	margin-block: 40px;
}
/*=展示2から4=*/
.q-top__exhibition--box.__no02-04 .q-top__exhibition--inner {
	display: flex;
	align-items: center;
	margin-bottom: 60px;
}
.q-top__exhibition--box.__no02-04 .q-top__exhibition--text {
	width: 50%;
	padding-right: 30px;
}
.q-top__exhibition--box.__no02-04 .q-top__exhibition--photo {
	width: 50%;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}
@media (max-width: 768px) {
	.q-top__exhibition--box.__no02-04 .q-top__exhibition--inner {
		flex-direction: column;
		gap: 24px;
	}
	.q-top__exhibition--box.__no02-04 .q-top__exhibition--text {
		width: auto;
		padding-right: 0px;
	}
	.q-top__exhibition--box.__no02-04 .q-top__exhibition--photo {
		width: auto;
		display: flex;
		gap: 20px;
		flex-wrap: wrap;
		justify-content: center;
	}
}
/* ====

刀剣乱舞ONLINEコラボ

=== */
.q-top__toukenranbu:after {
	content: "";
	display: block;
	width: 100%;
	padding-top: 20%;
	background: url("../img/bg_touken_foot.png") no-repeat center bottom;
	background-size: cover;
}
.q-top__toukenranbu.l-padding {
	padding-bottom: 0;
}
.q-top__toukenranbu .l-inner {
	position: relative;
	z-index: 10;
}
.q-top__toukenranbu--main-title {
	margin-bottom: 50px;
}
.q-top__toukenranbu--wrap {
	background: url("../img/bg_toukenranbu.png") repeat left top;
	max-width: 1200px;
	margin: 60px auto 140px;
	padding: 100px 80px 80px;
	position: relative;
}
.q-top__toukenranbu--title-wrap {
	max-width: 800px;
	padding: 18px;
	background: #fff;
	border: 2px solid #dab680;
	font-weight: 500;
	font-size: 24px;
	text-align: center;
	margin-top: -100px;
	margin-inline: auto;
	transform: translateY(-50%);
}
/*==パネル展示==*/
.q-top__toukenranbu--wrap.__panel {
	position: relative;
}
.q-top__toukenranbu--wrap.__panel .q-top__toukenranbu--text {
	margin-inline: auto;
	max-width: 800px;
	margin-bottom: 60px;
}
.q-top__toukenranbu--area.__no01-03 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.q-top__toukenranbu--area.__no01-03 {
	margin-block: 32px 60px;
	position: relative;
}
.q-top__toukenranbu--area-title {
	display: grid;
	grid-template-columns: 60px 1fr;
	color: #ffffff;
	background: #362C00;
	font-weight: 500;
	font-size: 24px;
	gap: 20px;
	/*align-items: center;*/
}
.q-top__toukenranbu--area-title .__number {
	background: #FAEE00;
	color: #362C00;
	font-family: Roboto;
	font-size: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	width: 60px;
}
.q-top__toukenranbu--area-title .__area-name {
	align-self: center;
}
.q-top__toukenranbu--area.__no01-03 .q-top__toukenranbu--area-item {
	background: #ffffff;
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
}
.q-top__toukenranbu--area.__no01-03 .character-wrap {
	padding: 0px 20px 20px;
	display: flex;
	flex-direction: column;
	align-content: space-between;
}
.q-top__toukenranbu--area.__no01-03 .character-name {
	font-weight: 500;
	font-size: 18px;
	padding: 12px;
}
.q-top__toukenranbu--area.__no01-03 .character-image {
	margin-top: auto;
}
.q-top__toukenranbu .__small-text {
	display: block;
	font-size: 10px;
}
.q-top__toukenranbu .character-name .character-style {
	color: #fff;
	display: inline-block;
	padding: 2px 5px 4px;
	background: #9B1846;
	line-height: 1;
	margin-left: 10px;
}
.q-top__toukenranbu .character-name .character-style.__no02 {
	background: #005F85;
}
.q-top__toukenranbu .character-name .character-style.__no03 {
	background: #619033;
}
.q-top__toukenranbu .character-name .character-note {
	font-size: 14px;
}
.q-top__toukenranbu .q-top__toukenranbu--photo {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
}
@media (max-width: 1200px) {
	.q-top__toukenranbu--wrap {
		padding: 100px 40px 80px;
	}
}
@media (max-width: 768px) {
	.q-top__toukenranbu:after {
		content: "";
		padding-top: 20%;
		background: url("../img/bg_touken_foot_sp.png") no-repeat center bottom;
		background-size: cover;
	}
	.q-top__toukenranbu .c-ttl01__wrap {
		margin-bottom: 100px;
		margin-inline: -15px;
	}
	.q-top__toukenranbu--wrap {
		margin: 60px auto 110px;
		padding: 80px 0 80px;
	}
	.q-top__toukenranbu--title-wrap {
		padding: 12px;
		font-weight: 500;
		font-size: 20px;
		margin-top: -80px;
		margin-inline: 15px;
	}
	.q-top__toukenranbu--area.__no01-03 {
		grid-template-columns: repeat(1, 1fr);
		gap: 20px;
		position: relative;
	}
	.q-top__toukenranbu--area-title {
		grid-template-columns: 48px 1fr;
		font-size: 20px;
		gap: 16px;
	}
	.q-top__toukenranbu--area-title .__number {
		background: #FAEE00;
		color: #362C00;
		font-family: Roboto;
		font-size: 32px;
		height: 48px;
		width: 48px;
	}
	.q-top__toukenranbu--area.__no01-03 .character-wrap {
		padding: 0px 10px 20px;
	}
	.q-top__toukenranbu .q-top__toukenranbu--photo {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 15px 8px;
		font-size: 12px;
	}
}
/*==スタンプラリー==*/
.q-top__toukenranbu--wrap.__stamp-rally .l-inner {
	max-width: 800px;
}
.q-top__toukenranbu--wrap.__stamp-rally .q-top__toukenranbu--text {
	margin-bottom: 40px;
}
.q-top__toukenranbu--wrap.__stamp-rally .q-top__toukenranbu--text p {
	margin-bottom: 20px;
}
.q-top__toukenranbu--wrap.__stamp-rally .q-top__toukenranbu--map {}
/*==オリジナルグッズ販売==*/
.q-top__toukenranbu--wrap.__goods {
	/*	margin-bottom: 0;*/
	position: relative;
}
.q-top__toukenranbu--wrap.__goods .l-inner {
	max-width: 800px;
}
.q-top__toukenranbu--wrap.__goods .q-top__toukenranbu--image {}
@media (max-width: 768px) {
	.q-top__toukenranbu--wrap.__goods {
		/*margin-bottom: 60px;*/
	}
}
/*==特別企画==*/
.q-top__toukenranbu--wrap.__special {
	margin-bottom: 0;
	position: relative;
}
.q-top__toukenranbu--wrap.__special .l-inner {}
.q-top__toukenranbu--wrap.__special .q-top__toukenranbu--inner {
	background: #ffffff;
	padding: 40px;
	display: flex;
	column-gap: 30px;
	align-items: center;
}
@media (max-width: 768px) {
	.q-top__toukenranbu--wrap.__special .q-top__toukenranbu--inner {
		padding: 20px;
		display: flex;
		row-gap: 30px;
		flex-direction: column;
	}
}
/*== 「刀剣乱舞ONLINE」について ==*/
.q-top__toukenranbu--about-box {
	max-width: 800px;
	margin: 60px auto 0;
}
.q-top__toukenranbu--about-title {
	background: #dab680;
	font-weight: 500;
	font-size: 18px;
	padding: 5px 10px;
	display: table;
	margin-bottom: 20px;
}
.q-top__toukenranbu--about-inner {
	display: flex;
	justify-content: space-between;
	gap: 30px;
}
.q-top__toukenranbu--about-link {
	margin-block: 20px;
}
.q-top__toukenranbu--about-logo {text-align: center;}

.q-top__toukenranbu--about-logo img {
	width: 100px;

}
@media (max-width: 768px) {
	.q-top__toukenranbu--about-inner {
		flex-direction: column;
		
	}
	.q-top__toukenranbu--about-logo img {
		width: 160px;
		margin-inline: auto;
	}
}
/*== 紅葉配置 ==*/
.q-top__toukenranbu--wrap.__panel:before {
	content: "";
	background: url("../img/bg_touken_momiji01.png");
	width: 164px;
	height: 223px;
	background-size: cover;
	display: block;
	position: absolute;
	top: 60px;
	left: -40px;
}
.q-top__toukenranbu--wrap.__panel:after {
	content: "";
	background: url("../img/bg_touken_momiji05.png");
	width: 179px;
	height: 194px;
	background-size: cover;
	display: block;
	position: absolute;
	bottom: -120px;
	right: -10px;
}
.q-top__toukenranbu--wrap.__panel .q-top__toukenranbu--box:after {
	content: "";
	background: url("../img/bg_touken_momiji02.png");
	width: 110px;
	height: 111px;
	background-size: cover;
	display: block;
	position: absolute;
	top: 60px;
	right: -140px;
}
.q-top__toukenranbu--wrap.__panel .q-top__toukenranbu--box:before {
	content: "";
	background: url("../img/bg_touken_momiji04.png");
	width: 131px;
	height: 170px;
	background-size: cover;
	display: block;
	position: absolute;
	top: 76%;
	left: -140px;
}
.q-top__toukenranbu--area.__no01-03:after {
	content: "";
	background: url("../img/bg_touken_momiji03.png");
	width: 117px;
	height: 117px;
	background-size: cover;
	display: block;
	position: absolute;
	bottom: 70px;
	right: -140px;
}
.q-top__toukenranbu--wrap.__stamp-rally:after {
	content: "";
	background: url("../img/bg_touken_momiji06.png");
	width: 174px;
	height: 176px;
	background-size: cover;
	display: block;
	position: absolute;
	bottom: -30px;
	left: -20px;
}
.q-top__toukenranbu--wrap.__goods:after {
	content: "";
	background: url("../img/bg_touken_momiji07.png");
	width: 206px;
	height: 326px;
	background-size: cover;
	display: block;
	position: absolute;
	bottom: -60px;
	right: -40px;
}
@media (max-width: 768px) {
	.q-top__toukenranbu--wrap.__panel .q-top__toukenranbu--box:after {
		content: "";
		top: 100px;
		right: -40px;
	}
	.q-top__toukenranbu--wrap.__stamp-rally:after {
		content: "";
		background: url("../img/bg_touken_momiji06.png");
		width: 93px;
		height: 94px;
		background-size: cover;
		display: block;
		position: absolute;
		bottom: -30px;
		left: 0px;
	}
	.q-top__toukenranbu--wrap.__goods:after {
		content: "";
		background: url("../img/bg_touken_momiji07.png");
		width: 112px;
		height: 177px;
		background-size: cover;
		display: block;
		position: absolute;
		bottom: -60px;
		right: -20px;
	}
}
/* ====

関連企画

=== */
.q-top__related {
	background: #ffffff;
	/*overflow-x: hidden;*/
}
/*==メイン部分==*/
.q-top__related .q-top__related--wrap.__main {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 120px;
	margin-top: -20%;
	padding-top: 80px;
	max-width: 1200px;
}
.q-top__related--details-wrap {
	align-self: flex-end;
}
.q-top__related--details {
	padding: 80px 20px 80px 100px;
	position: relative;
}
.q-top__related--details:before {
	content: "";
	width: calc(50vw + 380px);
	height: 100%;
	display: block;
	background: url("../img/bg_reiwa_contents.png") repeat left top;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
.q-top__related--details .detail-inner {
	position: relative;
	z-index: 10;
}
.q-top__related--details .detail-inner {
	position: relative;
	z-index: 10;
}
.q-top__related--details .detail-inner .details-title {
	font-family: "Noto Serif JP";
	font-weight: 500;
	font-size: 36px;
	color: #9b1846;
	margin-bottom: 40px;
}
.q-top__related--details .detail-inner .sp-sns__wrap {
	margin-block: 30px;
}
.q-top__related--details .detail-inner .sp-sns__wrap ul {
	display: flex;
	gap: 12px;
	margin-block: 20px;
	justify-content: flex-end;
}
.q-top__related--details .detail-inner .sp-sns__wrap a {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 13px;
}
.q-top__related--details .detail-inner .sp-sns__wrap img {
	width: 40px;
	height: auto;
}
.q-top__related--details .detail-inner .sp-sns__wrap a:hover {
	opacity: 0.8;
}
@media (max-width: 768px) {
	.q-top__related .q-top__related--wrap.__main {
		display: grid;
		grid-template-columns: 100px 1fr;
		gap: 10px;
		margin-top: -20%;
		padding-top: 80px;
	}
	.q-top__related .q-top__related--wrap.__main .c-ttl01__wrap {
		justify-content: flex-start;
		margin-top: -80px;
	}
	.q-top__related--details {
		padding: 40px 20px 40px 20px;
		position: relative;
	}
	.q-top__related--details:before {
		content: "";
		width: calc(100% + 15px);
		height: 100%;
		display: block;
		background: url("../img/bg_reiwa_contents.png") repeat left top;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 1;
	}
	.q-top__related--details .detail-inner .details-title {
		font-size: 24px;
		margin-bottom: 20px;
	}
	.q-top__related--details .detail-inner .sp-sns__wrap ul {
		display: flex;
		gap: 12px;
		margin-block: 20px 0;
		justify-content: center;
	}
}
/*==イベント概要==*/
.q-top__related .q-top__related--wrap.__overview {
	display: grid;
	grid-template-columns: 90px 1fr;
	margin-top: 80px;
	position: relative;
}
@media (max-width: 768px) {
	.q-top__related .q-top__related--wrap.__overview {
		grid-template-columns: 1fr;
	}
}
/*==令和土佐藩周遊マップ==*/
.q-top__related .q-top__related--wrap.__map {
	margin-block: 300px 100px;
	position: relative;
	z-index: 10;
}
.q-top__related .q-top__related--wrap.__map:before {
	content: "";
	width: calc(50vw + 300px);
	height: 400px;
	display: block;
	background: url("../img/bg_reiwa_contents.png") repeat left top;
	position: absolute;
	left: 0;
	top: -100px;
	z-index: -1;
}
@media (max-width: 768px) {
	.q-top__related .q-top__related--wrap.__map {
		margin-block: 100px 50px;
		position: relative;
		z-index: 10;
	}
	.q-top__related .q-top__related--wrap.__map:before {
		content: "";
		width: 70%;
		height: 200px;
		display: block;
		background: url("../img/bg_reiwa_contents.png") repeat left top;
		position: absolute;
		left: 0;
		top: -50px;
		z-index: -1;
	}
}

/*==令和土佐藩周遊マップ＆資料解説シート==*/
.q-top__related--map-wrap {
	margin-block:10px;
}

/*==主な展示リスト==*/
.q-top__related .q-top__related--wrap.__list {
	margin-block: 80px;
	position: relative;
}
.q-top__related .q-top__related--wrap.__list .l-inner {
	position: relative;
	z-index: 10;
}
.q-top__related .q-top__related--wrap.__list .c-button__wrap {
	margin-block: 40px;
}
@media (max-width: 768px) {
	.q-top__related .q-top__related--wrap.__list {
		margin-block: 40px;
	}
	.q-top__related .q-top__related--wrap.__list .c-button__wrap {
		align-items: center;
	}
}
/*==「令和土佐藩」の各施設ごとの展示概要==*/
.q-top__related .q-top__related--wrap.__facility {
	position: relative;
	z-index: 10;
	margin-top: 200px;
}
.q-top__related .q-top__related--wrap.__facility:before {
	content: "";
	width: calc(50vw + 600px);
	height: 500px;
	display: block;
	background: url("../img/bg_reiwa_contents.png") repeat left top;
	position: absolute;
	right: 0;
	top: -100px;
	z-index: -1;
}
@media (max-width: 768px) {
	.q-top__related .q-top__related--wrap.__facility {
		margin-top: 100px;
	}
	.q-top__related .q-top__related--wrap.__facility:before {
		content: "";
		width: 100%;
		height: 300px;
		display: block;
		background: url("../img/bg_reiwa_contents.png") repeat left top;
		position: absolute;
		right: 0;
		top: -50px;
		z-index: -1;
	}
}
.q-top__related--facility-wrap {
	gap: 40px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	position: relative;
}
.q-top__related--facility-item {
	background: #f7f7f7;
}
.q-top__related--facility-title {
	display: grid;
	grid-template-columns: 60px 1fr;
	gap: 20px;
	background: #003144;
}
.q-top__related--facility-title .__number {
	background: #9B1846;
	color: #FFFFFF;
	font-family: Roboto;
	font-size: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	width: 60px;
}
.q-top__related--facility-title .__facility-name {
	align-self: center;
	color: #FFFFFF;
	font-weight: 500;
	font-size: 24px;
	padding: 8px 16px 8px 0;
	line-height: 1.35;
	margin-top: -3px;
}
.q-top__related--facility-title .__small-text {
	font-size: 18px;
}
.q-top__related--facility-contents {
	background: #f7f7f7;
	padding: 24px;
}
.q-top__related--facility-contents .c-text-red {
	font-size: 18px;
	font-weight: 500;
}
.q-top__related--facility-contents .official-site {
	margin-top: 20px;
}
@media (max-width: 768px) {
	.q-top__related--facility-wrap {
		gap: 32px;
		grid-template-columns: repeat(1, 1fr);
	}
	.q-top__related--facility-title {
		grid-template-columns: 48px 1fr;
		gap: 16px;
	}
	.q-top__related--facility-title .__number {
		font-size: 32px;
		height: 48px;
		width: 48px;
	}
	.q-top__related--facility-title .__facility-name {
		font-size: 20px;
	}
	.q-top__related--facility-title .__small-text {
		font-size: 12px;
		line-height: 1;
	}
	.q-top__related--facility-contents .date-note {
		display: block;
	}
}
/*== 柄配置 ==*/
.q-top__related--wrap.__overview:before {
	content: "";
	background: url("../img/bg_reiwa_pattern01.png");
	width: 436px;
	height: 436px;
	background-size: cover;
	display: block;
	position: absolute;
	top: -30px;
	right: -400px;
}
.q-top__related--wrap.__list:after {
	content: "";
	background: url("../img/bg_reiwa_pattern02.png");
	width: 257px;
	height: 334px;
	background-size: cover;
	display: block;
	position: absolute;
	top: -120px;
	left: -10px;
	z-index: 1;
}
.q-top__related--wrap.__facility:after {
	content: "";
	background: url("../img/bg_reiwa_pattern03.png");
	width: 403px;
	height: 470px;
	background-size: cover;
	display: block;
	position: absolute;
	top: 20%;
	right: -170px;
	z-index: -1;
}
.q-top__related--facility-wrap:before {
	content: "";
	background: url("../img/bg_reiwa_pattern04.png");
	width: 381px;
	height: 444px;
	background-size: cover;
	display: block;
	position: absolute;
	top: 60%;
	left: -400px;
}
.q-top__related--facility-wrap:after {
	content: "";
	background: url("../img/bg_reiwa_pattern05.png");
	width: 234px;
	height: 318px;
	background-size: cover;
	display: block;
	position: absolute;
	bottom: -100px;
	right: -300px;
}
@media (max-width: 768px) {
	.q-top__related--wrap.__overview:before {
		content: "";
		width: 218px;
		height: 218px;
		background-size: cover;
		display: block;
		position: absolute;
		top: -30px;
		right: -100px;
	}
	.q-top__related--wrap.__list:after {
		content: "";
		width: 129px;
		height: 167px;
		background-size: cover;
		display: block;
		position: absolute;
		top: 80px;
		left: -50px;
	}
	.q-top__related--wrap.__facility:after {
		content: "";
		display: none;
	}
}