@import url("https://fonts.googleapis.com/css2?family=Spartan:wght@400;700&display=swap");

.hide {
	display: none;
}

html {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
	font-size: 62.5%;
	line-height: 1.8;
	height: 100%;
	word-break: break-word;
	color: #333;
	background-color: var(--color-base);
	-webkit-appearance: none;
	-webkit-tap-highlight-color: transparent;
}

body {
	font-size: 1.6rem;
	margin: 0;
}

*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

img {
	border: 0;
	margin: 0;
}

.figure,
figure {
	margin: 0;
	background-color: #FFF;
	padding: 10px;
	border-radius: 10px;
}

.figcaption,
figcaption {
	display: flex;
	justify-content: end;
	padding: 0.5rem 0.5rem 0;
}

p {
	margin: 0;
	padding: 0;
}


/* 見出し */
h1,
h2,
h3,
h4,
h5,
h6 {
	/* font-size: 1.6rem; */
	margin: 0;
	padding: 0;
}

#portal2023H1 h1 {
	display: flex;
	align-items: center;
	column-gap: 35px;
	padding: 35px 0 33px;
	width: 100%;
	letter-spacing: 3px;
	background-color: #007daf;
	color: #FFF;
}

#portal2023H1 h1::before,
#portal2023H1 h1::after {
	content: '';
	height: 1px;
	background-color: #FFF;
	flex-grow: 1;
}

#main_body h2 {
	background-color: #fdf3b6;
	border-left: solid 10px #ffc91a;
	padding: 5px 0 5px 20px;
	margin: 1rem 0 3rem;
}

#main_body h3 {
	display: flex;
	align-items: center;
	column-gap: 16px;
	padding: 5px 0px 5px 30px;
	width: 100%;
	background-color: #d6efbd;
	justify-content: flex-start;
	margin: 1rem 0 3rem;
	background-image: url(/img/portal2023/line02.png);
	background-repeat: no-repeat;
	background-position: left center;
}

#main_body h3::after {
	content: '';
	height: 5px;
	flex-grow: 1;
	background-image: url(/img/portal2023/line02.png);
	background-repeat: repeat-x;
}

#main_body .open-box h3::after {
	display: none;
}

#main_body h4 {
	border-bottom: solid 2px #f36952;
	margin: 1rem 0 3rem;
	background-image: url(/img/portal2023/bg_h4.png);
	background-repeat: no-repeat;
	background-size: 18px;
	background-position: left 4px top 4px;
	padding: 0 0 0 28px;
}

#main_body h5 {
	display: flex;
	align-items: center;
	column-gap: 16px;
	padding: 5px 0px 5px 27px;
	width: 100%;
	justify-content: flex-start;
	margin: 1rem 0 3rem;
	background-image: url(/img/portal2023/line01.png);
	background-repeat: no-repeat;
	background-position: left center;
	font-size: 1.5rem;
}

#main_body h5::after {
	content: '';
	height: 1px;
	background-color: #222;
	flex-grow: 1;
}

#main_body h6 {
	font-size: 1.5rem;
	margin: 1rem 0 3rem;
	padding: 0 0 0 10px;
}

#main_body p {
	margin-bottom: 3rem;
}

#main_body img {
	max-width: 100%;
	height: auto !important;
}

.link_l {
	margin: 1rem 1rem 2rem;
}

.detail_map,
.detail_movie {
	aspect-ratio: 16/9;
	width: 40%;
	margin: 1rem 0 3rem;
}

.detail_map iframe,
.detail_movie iframe {
	width: 100%;
	height: 100%;
}



/* ヘッダー */
.header2023 {
	background-color: #c8f8fd;
	overflow: hidden;
}

.logoImg {
	width: 330px;
	margin: 16px 0 16px 50px;
}

.logoImg img {
	width: 100%;
}


/* 本文　Container */
.site_detail {
	background-image: linear-gradient(180deg, rgba(202, 248, 252, 1) 30%, rgba(255, 255, 255, 1));
}

.mymainbackWrap {
	background-image: url(/img/portal2023/bg_bird01.png), url(/img/portal2023/bg_bird02.png);
	background-repeat: repeat-y;
	background-position: left -22px top 146px, right -43px top 56px;
	background-size: 220px auto, 298px auto;
}

#mymainback {
	background-color: #FFF;
	width: calc(100% - 100px);
	margin: 0 auto;
	border-radius: 16px;
	padding: 25px 0px;
	box-shadow: 1px 4px 10px -8px #a3a3a3;
}

#mymainback #main {
	padding: 0px 20px 0px 50px;
	background-image: url(/img/portal2023/bg_dot01.png);
	background-repeat: repeat-y;
	background-position: left 10px top;
	background-size: 10px;
}

#main_header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 30px;
}

.sns_button_wrap>div {
	display: inline;
	vertical-align: top;
}

.pdf_download {
	display: flex;
	column-gap: 20px;
}

.pdf_download .tenpu_txt {
	font-size: 1.4rem;
}

.detail_image_normal {
	margin: 1rem 0 3rem;
}

hr {
	margin: 1rem 0 3rem;
}


/* フッター */
.footer2023 {
	background-image: url(/img/portal2023/bg_top_footer.gif);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center top;
	padding-top: 18%;
	margin-top: 50px;
	display: flex;
	justify-content: space-around;
	align-items: center;
	column-gap: 50px;
	padding-left: 50px;
	padding-right: 50px;
}

.footer2023 .footerLogo {
	/* width: 300px; */
	flex: 0 0 300px;
}

.footer2023 .footerLogo img {
	width: 100%;
	height: auto;
}

.footer2023 .contactInfo {
	display: flex;
	column-gap: 20px;
	font-size: 1.4rem;
	flex-wrap: wrap;
	flex: 0 1 auto;
}

.footer2023C {
	display: flex;
	justify-content: center;
	font-size: 1.2rem;
	background-color: #000;
	color: #FFF;
	padding: 2px 0;
	margin-top: 30px;
}


/* ハンバーガーメニュー */
.humbergerBtn {
	top: 0;
}

/* 言語選択 */
.lang_support {
	position: absolute;
	top: 16px;
	right: 135px;
	z-index: 40;
}

.lang_support a#language_menu_open {
	display: block;
	background-color: #FFF;
	border: solid 2px #000;
	box-sizing: border-box;
	padding: 9px 20px 10px 53px;
	border-radius: 100px;
	background-image: url(/img/portal2023/i_lang.png);
	background-repeat: no-repeat;
	background-position: 10px center;
	background-size: 30px 30px;
	text-decoration: none;
	color: #222;
}

#language_menu_box {
	display: none;
	position: absolute;
	top: 100%;
	right: 0px;
	z-index: 100;
	background: #fff;
	-webkit-box-shadow: 0px 3px 10px -2px rgba(0, 0, 0, 0.5);
	box-shadow: 0px 3px 10px -2px rgba(0, 0, 0, 0.5);
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 320px;
	margin: 0px;
	padding: 0 15px;
	text-align: center;
}

#language_menu_box.open {
	display: block;
}

#language_menu_close {
	border: none;
	background: #e6e6e6;
	font-size: 1.4rem;
	margin: 15px 0 10px;
	padding: 4px 15px 3px;
	border-radius: 100px;
	cursor: pointer;
}

#language_menu_box ul {
	display: flex;
	flex-wrap: wrap;
	margin-top: 7px;
}

#language_menu_box ul li {
	flex: 0 0 42%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 0;
	column-gap: 10px;
}

#language_menu_box ul li:nth-child(2n+1) {
	flex: 0 0 58%;
}

#language_menu_box ul li a {
	display: block;
	padding: 10px 0;
}

#language_menu_box ul li.ch span {
	display: flex;
	flex-direction: column;
	row-gap: 9px;
}

#language_menu_box ul li.ch span a {
	padding: 0;
	row-gap: 10px;
}

#language_menu_box ul li::before {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	background-size: contain;
	border: solid 1px gainsboro;
	box-sizing: border-box;
	border-radius: 5px;
	background-repeat: no-repeat;
}

#language_menu_box ul li.ja::before {
	background-image: url(/img/portal2023/i_lang_jp.png);
}

#language_menu_box ul li.us::before {
	background-image: url(/img/portal2023/i_lang_us.png);
}

#language_menu_box ul li.ch::before {
	background-image: url(/img/portal2023/i_lang_ch.png);
}

#language_menu_box ul li.ko::before {
	background-image: url(/img/portal2023/i_lang_ko.png);
}

#language_menu_box ul li.de::before {
	background-image: url(/img/portal2023/i_lang_de.png);
}

#language_menu_box ul li.fr::before {
	background-image: url(/img/portal2023/i_lang_fr.png);
}

#language_menu_box ul li.it::before {
	background-image: url(/img/portal2023/i_lang_it.png);
}

#language_menu_box ul li.es::before {
	background-image: url(/img/portal2023/i_lang_es.png);
}

#language_menu_box ul li.pt::before {
	background-image: url(/img/portal2023/i_lang_pt.png);
}

#language_menu_box ul li.th::before {
	background-image: url(/img/portal2023/i_lang_th.png);
}

#language_menu_box ul li.po::before {
	background-image: url(/img/portal2023/i_lang_po.png);
}


/* 文字サイズ */
.accItemWrap {
	display: flex;
	align-items: center;
	column-gap: 30px;
	justify-content: center;
	padding: 12px 0 0 0;
}

.acc_item {
	display: flex;
	align-items: center;
	padding: 0;
	margin: 0;
}

.acc_item>span {
	margin-right: 10px;
}

.fontSize_box.acc_item {
	list-style: none;
	column-gap: 5px;
}

.btnA a {
	display: flex;
	background-color: #fdf3b6;
	text-decoration: none;
	color: #222;
	border-radius: 22px;
	height: 44px;
	justify-content: center;
	align-items: center;
	padding: 0 6px;
}

.btnA a#moji_large {
	background-color: #017daf;
	color: #FFF;
	font-weight: bold;
}


/* メニュー */
.menuWrap {
	display: flex;
	justify-content: center;
	padding-top: 14px;
	flex-wrap: wrap;
}

.menuWrap strong {
	margin-bottom: 24px;
	display: block;
}

.menuWrap .colLeft,
.menuWrap .colRight {
	flex: 0 0 41%;
}

.menuWrap .colLeft.oneCol {
	flex: 0 0 90%;
}


.menuWrap .colLeft ul {
	border-left: solid 1px #222;
	padding-left: 40px;
	display: flex;
	flex-wrap: wrap;
	row-gap: 24px;
}

.menuWrap .colLeft.oneCol ul {
	justify-content: space-between;
	row-gap: 14px;
}

.menuWrap .colLeft ul li {
	flex: 0 0 100%;
}

.menuWrap .colLeft.oneCol ul li {
	flex: 0 0 48%;
	display: flex;
}

.menuWrap .colRight a,
.menuWrap .colLeft ul li a {
	padding: 14px 19px;
	text-decoration: none;
	display: flex;
	align-items: center;
	column-gap: 11px;
	color: #222;
	background-color: #fdf3b6;
	justify-content: space-between;
}

.menuWrap .colLeft.oneCol ul li a {
	width: 100%;
}



.crBtn {
	border-left: solid 1px #222;
	padding-left: 40px;
	margin-bottom: 24px;
}

.crBtn:nth-last-child(1) {
	margin-bottom: 0;
}

.arrowK {
	position: relative;
	padding: 10px;
}

.arrowK::before {
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px #222;
	border-right: solid 2px #222;
	position: absolute;
	left: 0;
	top: 4px;
}

.arrowK.arrowKright::before {
	transform: rotate(45deg);
}


/* 検索 */
/** 外枠に色を付けて角丸にする */
.gsc-control-cse {
	margin: 0px !important;
	padding: 0px !important;
	border: 2px solid #017daf !important;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
}

/** 外枠内側のマージンを0にする */
.gsc-search-box {
	margin: 0px !important;
}

/** キーワード入力部分のボーダーを消し、角丸にする */
.gsc-input-box {
	border: none !important;
	border-radius: 30px !important;
	-webkit-border-radius: 30px !important;
	-moz-border-radius: 30px !important;
}

/** キーワード入力部分の左側に20ピクセル余白を入れる */
.gsib_a {
	padding-left: 20px !important;
}

/** 検索ボタンを無色透明にし、線を消す */
.gsc-search-button-v2 {
	margin: 0px !important;
	padding-top: 12px !important;
	padding-bottom: 13px !important;
	padding-right: 14px !important;
	padding-left: 14px !important;
	background-color: transparent !important;
	color: #4990c8 !important;
	border-top-style: none !important;
	border-right-style: none !important;
	border-bottom-style: none !important;
	border-left-style: none !important;
	cursor: pointer;
}

/** 検索ボタンのアイコンの色と大きさを設定 */
.gsc-search-button-v2 svg {
	fill: #017daf !important;
	width: 20px;
	height: 20px;
}

/** placeholderの色設定 */
input:placeholder-shown {
	color: #bababa;
}

/* Google Chrome, Safari, Opera 15+, Android, iOS */
input::-webkit-input-placeholder {
	color: #bababa;
}

/* Firefox 18- */
input:-moz-placeholder {
	color: #bababa;
	opacity: 1;
}

/* Firefox 19+ */
input::-moz-placeholder {
	color: #bababa;
	opacity: 1;
}

/* IE 10+ */
input:-ms-input-placeholder {
	color: #bababa !important;
}


/* テーブル */
#main_body table {
	border-color: #222;
	border-collapse: collapse;
	border-style: solid;
	margin: 0px 0px 1.5rem;
	max-width: 100%;
}

#main_body th {
	background: #fffdf0;
	border-color: #222;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 0.5rem;
}

#main_body td {
	border-color: #222;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 0.5rem;
}


/* テーブル内のpタグのマージンを0にする */
#main_body table p {
	margin: 0px 0px 1em;
}

#main_body table p:last-child {
	margin: 0px;
}

/* テーブル（borderを「0」に設定した場合は罫線を表示させない） */
#main_body table[border="0"],
#main_body table[border="0"] th,
#main_body table[border="0"] td {
	border-width: 0px;
}


/* 添付ファイル */
.detail_file {
	margin: 1em 0px;
}

div[class^="detail_"] a[href^="/uploaded/attachment/"]::before,
div[class^="file_"] a[href^="/uploaded/attachment/"]::before,
div[class^="detail_"] a[href^="/uploaded/life/"]::before,
div[class^="file_"] a[href^="/uploaded/life/"]::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_etc.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".pdf"]::before,
div[class^="detail_"] a[href$=".PDF"]::before,
div[class^="file_"] a[href$=".pdf"]::before,
div[class^="file_"] a[href$=".PDF"]::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_pdf.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".xls"]::before,
div[class^="detail_"] a[href$=".XLS"]::before,
div[class^="file_"] a[href$=".xls"]::before,
div[class^="file_"] a[href$=".XLS"]::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_xls.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".xlsx"]::before,
div[class^="detail_"] a[href$=".XLSX"]::before,
div[class^="file_"] a[href$=".xlsx"]::before,
div[class^="file_"] a[href$=".XLSX"]::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_xlsx.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".doc"]::before,
div[class^="detail_"] a[href$=".DOC"]::before,
div[class^="file_"] a[href$=".doc"]::before,
div[class^="file_"] a[href$=".DOC"]::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_doc.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

div[class^="detail_"] a[href$=".docx"]::before,
div[class^="detail_"] a[href$=".DOCX"]::before,
div[class^="file_"] a[href$=".docx"]::before,
div[class^="file_"] a[href$=".DOCX"]::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/img/common/file/icon_docx.png) no-repeat center center;
	background-size: contain;
	margin-right: 10px;
}

.file_pdf,
.file_pdf2,
.file_excel,
.file_word,
.file_etc {
	margin: 1rem 0px 3rem;
}


/* パンくず */
#pankuzu_wrap {
	padding: 11px 0 0;
	font-size: 1.4rem;
}

#pankuzu_wrap>div {
	width: calc(100% - 100px);
	margin: 0px auto 12px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.pankuzu {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.5em;
	flex-wrap: wrap;
}

.pankuzu .icon_current {
	display: none;
}

.pankuzu:first-child .icon_current {
	display: block;
	/* width: 5rem; */
	background: #222;
	border-radius: 5px;
	color: #fff;
	line-height: 2.2rem;
	text-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-right: 1rem;
	padding: 1px 0.85rem;
}

/* ページトップ */
#top_scroll {
	position: relative;
	z-index: 100;
	margin: 0;
	padding: 0;
}

#page-top1 {
	display: block;
	position: fixed;
	z-index: 9999;
	bottom: -150px;
	right: 5px;
	width: 30px;
	height: 60px;
	padding: 0;
	color: #222;
	text-align: center;
	text-decoration: none;
	transition: 1s;
	-webkit-transition: 1s;
}

#page-top1 img {
	width: 100%;
	height: auto;
}

/* 小メニュー */
.kijiListWrap {
	background-color: #fbf2c5;
	padding: 10px;
	border-radius: 20px;
	border: solid 1px #000;
}

.kijiListWrap2 {
	background-color: #FFF;
	padding: 20px;
	border-radius: 10px;
}

.listTitle h1 {
	display: none;
}

.kijiList h2 {
	font-size: 1.6rem;
	line-height: 1.5;
	border-left: solid 6px #ffc91a;
	padding-left: 12px;
	margin-bottom: 1rem;
}

.kijiList ul {
	margin: 0px;
	padding: 0px;
	display: flex;
	flex-wrap: wrap;
}

.kijiList ul li {
	width: 100%;
	display: table;
	margin: 0px 0px 7px;
	list-style: none;
	border-bottom: solid 1px gainsboro;
	padding-bottom: 5px;
}

.kijiList ul li>span {
	display: table-cell;
	vertical-align: top;
}

.kijiList ul li>span.article_date {
	width: 11em;
}

.linkWrap {
	background-color: #fffdf0;
	padding: 20px;
	margin-bottom: 40px;
	overflow: hidden;
}

#main_body .linkWrap h2 {
	margin: -20px -20px 20px;
	border: none;
	padding: 0;
}

#main_body .linkWrap h2 a {
	border-left: solid 10px #ffc91a;
	padding: 5px 30px 5px 20px;
	display: block;
	background-image: url(/img/portal2023/i_arrow.png);
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 10px auto;
}

#main_body .linkWrap p {
	margin-bottom: 20px;
}

#main_body .linkWrap p:last-child {
	margin-bottom: 0;
}

.thisPage {
	border: solid 5px #007daf;
	border-radius: 10px;
	margin-bottom: 50px;
	background-image: url(/img/portal2023-it/it_bg_this_page.gif);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: 140px;
	text-align: center;
}

#main_body .thisPageH2 {
	display: flex;
	flex-direction: column;
	width: calc(100% - 150px);
	margin: 20px 0 0 20px;
	align-items: flex-start;
}

#main_body .thisPageH2 h2 {
	border-left: none;
	margin: 0;
	background-image: url(/img/portal2023/h2_thispage.png);
	background-repeat: no-repeat;
	background-position: right center;
	padding: 0px 80px 0px 10px;
	background-size: contain;
}

#main_body .thisPageH2 p {
	padding: 10px;
	margin-bottom: 10px;
	text-align: left;
}


/* ハンバーガーメニュー　タイトルを消す */
.humberger__text::before {
	display: none !important;
}


/* メニュー　アーカイブ */
section.lastArea {
	display: flex;
	justify-content: center;
	padding-bottom: 300px;
}

.archivesBtn {
	background-color: #e9f8fe;
	padding: 23px 16px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	row-gap: 12px;
}

.menuWrap .archivesBtn {
	column-gap: 20px;
}

.archivesBtn h2 {
	display: flex;
	width: 100%;
	justify-content: center;
}

.menuWrap .archivesBtn h2 {
	width: auto;
}

.archivesBtn a {
	display: flex;
	background-color: #FFF;
	justify-content: center;
	text-decoration: none;
	color: #363636;
	border-radius: 100px;
	padding: 8px 16px 8px 24px;
	align-items: center;
	column-gap: 1.2rem;
	border: solid 2px #363636;
}


/* スマートフォン用 */
#sp_page_index_link_wrap {
	display: none;
}

#spm_wrap {
	display: none;
}

.sp_button {
	display: none;
}

/* スマホ */
@media screen and (max-width:670px) {
	body {
		font-size: 1.4rem;
	}

	#mymainback {
		width: calc(100% - 10px);
	}

	#mymainback #main {
		padding: 0px 10px 0px 16px;
		background-image: url(/img/portal2023/bg_dot01.png);
		background-repeat: repeat-y;
		background-position: left 5px top;
		background-size: 5px;
	}

	#main_body img {
		margin: 0 0 20px !important;
	}

	#main_body .open-box h3 {
		padding: 5px 30px 5px 10px;
		background-position: right 7px center;
	}

	.pdf_download {
		column-gap: 0;
		flex-wrap: wrap;
		row-gap: 1rem;
	}

	#main_body .pdf_download p {
		margin: 0;
	}

	/* ページトップ */
	#page-top1 {}

	/* フッター */
	.footer2023 {
		flex-wrap: wrap;
		row-gap: 20px;
		padding-top: 20%;
	}

	.footer2023 .footerLogo {
		width: 230px;
	}

	.footer2023 .contactInfo {
		flex-direction: column;
		align-items: center;
	}

	.footer2023 .contactInfo strong {
		font-size: 1.8rem;
		letter-spacing: 4px;
	}

	.footer2023 .contactInfo p {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.footer2023 .contactInfo p span {
		display: block;
	}

	.footer2023 .contactInfo p br {
		display: none;
	}


	/* 問い合わせ先 */
	#section_footer {
		font-size: 1.4rem;
	}

	/* パンくず */
	#pankuzu_wrap {
		font-size: 1.2rem;
	}

	#pankuzu_wrap>div {
		width: calc(100% - 20px);
	}

	/* 印刷ボタン */
	#main_header {
		flex-wrap: wrap;
		font-size: 1.4rem;
		margin-bottom: 10px;
	}

	.link_print {
		display: none;
	}

	#main_body .linkWrap {
		display: flex;
		flex-direction: column;
	}


	/* 大小メニュー内の画像 */
	#main_body .linkWrap p img {
		margin: 0 !important;
	}


	/* 見出し */
	#portal2023H1 h1 {
		font-size: 2rem;
		padding: 12px;
		column-gap: 3rem;
		line-height: 1.6;
	}

	#main_body h2 {
		font-size: 1.7rem;
		padding: 5px;
	}

	#main_body .linkWrap h2 a {
		padding: 5px 30px 5px 9px;
	}

	#main_body h3 {
		font-size: 1.7rem;
		margin: 1rem 0 2rem;
	}

	#main_body h4 {
		background-size: 12px;
		background-position: left 7px top 7px;
		padding: 0 0 2px 27px;
		margin: 1rem 0 2rem;
		font-size: 1.5rem;
	}

	#main_body h5 {
		margin: 1rem 0 2rem;
		background-size: 10px 1px;
		padding: 5px 0px 5px 16px;
	}


	#main_body h6 {
		padding: 0;
		margin: 1rem 0 2rem;
	}


	/* ロゴ */
	.logoImg {
		position: relative;
		left: 0;
		top: 0;
		width: 210px;
		padding: 10px;
		margin: 0;
	}

	.lang_support {
		top: 40px;
		left: 0;
		display: flex;
		justify-content: flex-end;
		right: 35px;
		pointer-events: none;
	}

	.lang_support a {
		pointer-events: all;
	}

	#language_menu_box {
		left: 5px;
		width: calc(100% + 25px);
	}

	.lang_support a#language_menu_open {
		padding: 4px 8px 4px 26px;
		background-position: 5px center;
		background-size: 18px 18px;
		font-size: 1.2rem;
		border-width: 1px;
	}

	/* このページについて */
	.thisPage {
		background-size: 50px;
	}

	#main_body .thisPageH2 {
		width: 100%;
		box-sizing: border-box;
		margin: 0;
		padding: 15px 5px;
	}

	#main_body .thisPage {
		overflow: hidden;
	}

	#main_body .thisPage p:last-child {
		margin-bottom: 0;
	}


	/* googlemap youtube */
	.detail_map,
	.detail_movie {
		width: 100%;
	}

	/* メニュー */
	.accItemWrap {
		column-gap: 0;
		flex-wrap: wrap;
		row-gap: 12px;
		justify-content: flex-start;
		padding-left: 15px;
		position: relative;
		left: 0;
		margin-right: 65px;
		/* margin-top: -50px; */
	}

	.acc_item>span {
		margin-right: 0;
	}

	.fontSize_box.acc_item {
		display: flex;
	}

	.search_box {
		width: 100%;
	}

	.acc_item {
		display: flex;
		flex-wrap: wrap;
		column-gap: 14px;
	}

	.btnA a {
		border-radius: 100px;
		height: auto;
		padding: 5px;
	}

	.menuWrap {
		padding: 15px;
		flex-wrap: wrap;
		margin-top: 2rem;
		border-top: solid 1px #ccc;
	}

	.menuWrap strong {
		margin-bottom: 10px;
	}

	.menuWrap .colLeft,
	.menuWrap .colRight {
		flex: 0 0 100%;
	}

	.menuWrap .colLeft ul {
		padding-left: 10px;
		row-gap: 10px;
		margin-bottom: 15px;
	}

	.crBtn {
		padding-left: 10px;
		margin-bottom: 10px;
	}

	.menuWrap .colRight a,
	.menuWrap .colLeft ul li a {
		padding: 7px 10px;
	}

	/* テーブル切り替え */
	#main_body .sp_table_wrap {
		overflow: auto;
	}

	#main_body div.sp_large_table {
		width: 1000px;
		overflow: visible;
	}

	.sp_button {
		display: block;
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 10px;
		border: 1px solid #dcdcdc;
		border-radius: 5px;
		background: -moz-linear-gradient(center top, #f9f9f9 5%, #e9e9e9 100%);
		background: -ms-linear-gradient(top, #f9f9f9 5%, #e9e9e9 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e9e9e9');
		background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #f9f9f9), color-stop(100%, #e9e9e9));
		background-color: #f9f9f9;
		color: #000000;
		text-shadow: 1px 1px 0px #ffffff;
		-webkit-box-shadow: inset 1px 1px 0px 0px #ffffff;
		box-shadow: inset 1px 1px 0px 0px #ffffff;
		text-decoration: none;
		text-align: center;
	}

	.sp_button:hover {
		background: -moz-linear-gradient(center top, #e9e9e9 5%, #f9f9f9 100%);
		background: -ms-linear-gradient(top, #e9e9e9 5%, #f9f9f9 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e9e9e9', endColorstr='#f9f9f9');
		background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #e9e9e9), color-stop(100%, #f9f9f9));
		background-color: #e9e9e9;
	}

	.sp_button:active {
		position: relative;
		top: 1px;
	}

	.gsc-result .gs-title {
		height: auto !important;
	}

	/* ページ内目次 */
	#sp_page_index_link_wrap {
		display: block;
		width: auto;
		margin: 10px 0px 20px;
	}

	#sp_page_index_link_toggle {
		width: 100%;
		height: auto;
		margin: 0px;
		padding: 10px;
		border: 1px solid #333;
		background: url(/img/sp/acc_open.png) no-repeat right 10px top 50% #eeeeee;
		background-size: 15px 15px;
		border-radius: 5px;
		text-align: center;
	}

	#sp_page_index_link_toggle.open {
		background-image: url(/img/sp/acc_close.png);
	}

	#sp_page_index_link_toggle:focus {
		outline: none;
	}

	ul#sp_page_index_link {
		padding: 0px;
		list-style: none;
		background-color: #FFF;
		border-radius: 8px;
	}

	ul#sp_page_index_link li {
		border-bottom: 1px solid #ccc;
	}

	ul#sp_page_index_link li:last-child {
		border: none;
	}

	ul#sp_page_index_link li a {
		display: block;
		background: url(/img/sp/arrow_r.png) no-repeat right 5px center;
		background-size: 8px auto;
		padding: 10px 10px 10px 3px;
		text-decoration: none;
	}

	ul#sp_page_index_link li a.sp_headtype_h2 {
		padding-left: 10px;
		line-height: 1.2;
		font-weight: bold;
	}

	ul#sp_page_index_link li a.sp_headtype_h3 {
		padding-left: 20px;
		line-height: 1.2;
		background-color: ghostwhite;
	}

	ul#sp_page_index_link li a.sp_headtype_h4 {
		padding-left: 30px;
		line-height: 1.2;
	}

	ul#sp_page_index_link li a.sp_headtype_h5 {
		padding-left: 40px;
		line-height: 1.2;
		background-color: ghostwhite;
	}

	ul#sp_page_index_link li a.sp_headtype_h6 {
		padding-left: 50px;
		line-height: 1.2;
	}

	/* レスポンシブアコーディオン用 */
	.acc_title_wrap {
		position: relative;
	}

	.acc_title {
		position: relative;
	}

	.acc_title>label {
		display: block;
		cursor: pointer;
		padding: 0px;
		width: 100%;
	}

	/* 記事一覧 */
	.kijiList ul li {
		display: flex;
		flex-wrap: wrap;
	}

	.kijiList ul li>span.article_date {
		width: 100%;
	}
}


/* 追記2023年5月31日 */
.faq-wrap {
	width: 100%;
	margin-bottom: 20px;
}

.faq-question {
	background-color: #fef4f4;
	padding: 15px 15px 15px 67px;
	cursor: pointer;
	z-index: 1;
	display: flex;
	align-items: center;
	background-image: url(/img/portal2023/icon_q.png);
	background-size: 40px;
	background-repeat: no-repeat;
	background-position: 10px center;
}

#main_body .faq-question h2 {
	margin: 0;
	background: none;
	border: none;
	padding: 0;
}

.faq-answer {
	display: none;
	margin-bottom: 1rem;
	padding: 20px 20px 20px 67px;
	background-image: url(/img/portal2023/icon_a.png);
	background-size: 40px;
	background-repeat: no-repeat;
	background-position: left 10px top 20px;
	min-height: 40px;
}

#main_body table.faq-wrap {
	width: 100%;
	border-color: gainsboro;
	border-spacing: 0;
}

/* スマホ */
@media screen and (max-width:670px) {
	.faq-answer {
		padding: 80px 5px 0px;
	}

	.menuWrap .colLeft.oneCol ul li {
		flex: 0 0 100%;
	}

	.menuWrap .archivesBtn h2 {
		font-size: 1.5rem;
	}
}