@charset "utf-8";
/* 記事本文 */
@import url("/ssi/css/detail.css");

/* ==================================================
PC
================================================== */

/* var() 関数 */
:root {

	/* コンテンツ幅 */
	--content-width: 1100px;
	/* sidebar1の幅 */
	--sidebar1-width: 300px;
	/* sidebar2の幅 */
	--sidebar2-width: 300px;

	/* フォントサイズ / 行間 / 文字間 */
	--fontsize-main-base: 62.5%;
	--fontsize-main: 1.6rem;
	--lineheight-main: 1.5;
	--letterspacing-main: 0em;
	/* 一段階小さいフォントサイズ（一覧をみるボタンなど） */
	--fontsize-main-small: 1.5rem;
	/* 本文（ #main ） */
	--fontsize-detail: 1.8rem;
	--lineheight-detail: 1.75;
	--letterspacing-detail: 0.05em;
	/* 本文の一段階小さいフォントサイズ（日付など） */
	--fontsize-detail-small: 1.6rem;
	/* 見出し */
	--lineheight-detail-midashi: 1.5;
	--letterspacing-detail-midashi: 0.05em;

	/* フォントファミリー */
	--fontfamily-normal: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Arial, 'BIZ UDPGothic', Meiryo, メイリオ, Osaka, sans-serif;
	/* 見出し / 太字 */
	--fontfamily-bold: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Arial, 'BIZ UDPGothic', Meiryo, メイリオ, Osaka, sans-serif;

	/* 色 */
	--bgColor-skyblue: #c7ebff;
	--bgColor-h1Blue: #63c8e4;
	--bgColor-h1Blue10: #eff9fc;
	--bgColor-h2Green: #d0e5a4;
	--bgColor-h2Green20: #f6faed;
	--bgColor-ground: #fcfcf4;
	--bgColor-h3Yellow:#ffe5ae;
	/* ストライプ背景（トップページ共通） */
	--bgStripe_h1: #63c8e4 url(/img/sites/kids/bg_stripe_10.png) center top / 30px 30px;
	--bgStripe_h2: #d0e5a4 url(/img/sites/kids/bg_stripe_15.png) center top / 30px 30px;
	--bgStripe_h3: #ffe5ae url(/img/sites/kids/bg_stripe_15.png) center top / 30px 30px;
	--themeColor1: #3ebcdf url(/img/sites/kids/bg_stripe_10.png) center top / 30px 30px;
	--themeColor2: #8dc21f url(/img/sites/kids/bg_stripe_10.png) center top / 30px 30px;
	--themeColor3: #fdb61c url(/img/sites/kids/bg_stripe_15.png) center top / 30px 30px;
	--themeColor4: #e40059 url(/img/sites/kids/bg_stripe_10.png) center top / 30px 30px;
	--themeColor5: #9b449b url(/img/sites/kids/bg_stripe_05.png) center top / 30px 30px;
	--themeColor6: #0065b3 url(/img/sites/kids/bg_stripe_05.png) center bottom / 30px 30px;
	--themeColor7: #158436 url(/img/sites/kids/bg_stripe_05.png) center bottom / 30px 30px;

}
/* var() 関数 ここまで */


/* ========== レイアウト ========== */

/* 全体 */
html {
	font-size: var(--fontsize-main-base, 62.5%);
	scroll-behavior: smooth;
	height: 100%;
}

body {
	margin: 0;
	padding: 0;
	border: 0;
	height: 100%;
}
body > .site_kids {
	width: 100%;
	height: 100%;
}
#container {
	width: auto;
	height: auto;
	min-height: 100%;
	margin: 0;
	padding: 0;
	min-width: var(--content-width, 1100px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

/* ヘッダ */
#header {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
}

/* フッタ */
#footer {
	clear: both;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
}

/* メイン */
#mymainback_bg {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
}
#mymainback {
	clear: both;
	float: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	width: var(--content-width, 1100px);
	height: auto;
	margin: 0 auto;
	padding: 0;
}

#main {
	float: none;
	-webkit-box-ordinal-group: 12;
	    -ms-flex-order: 11;
	        order: 11;
	width: 100%;
	margin: 0;
	padding: 0;
}

#main_a {
	margin: 0;
	padding: 0;
}

#main_body {
	margin: 0;
	padding: 0;
}

/* サイド */
#sidebar1 {
	float: none;
	-webkit-box-ordinal-group: 11;
	    -ms-flex-order: 10;
	        order: 10;
	width: var(--sidebar1-width, 300px);
	margin: 0;
	padding: 0;
}

.tpl_side1 #main {
	width: calc(100% - var(--sidebar1-width, 300px));
}
.tpl_side1 #main_a {
	padding-left: 40px;
}

.tpl_side1 hr.hide {
	display: none;
}

/* ========== 基本設定 ========== */

/* フォント */
body,
button,
input[type="button"],
input[type="submit"],
input[type="text"],
textarea,
select {
	font-family: var(--fontfamily-normal, sans-serif);
	font-size: var(--fontsize-main, 1.6rem);
	line-height: var(--lineheight-main, 1.5);
	letter-spacing: var(--letterspacing-main, 0em);
	overflow-wrap: break-word;
}

#main {
	font-size: var(--fontsize-detail, 1.8rem);
	line-height: var(--lineheight-detail, 1.75);
	letter-spacing: var(--letterspacing-detail, 0.05em);
}

h1, h2, h3, h4, h5, h6, strong,
.subsite_menu_ttl,
.site_name {
	font-family: var(--fontfamily-bold, sans-serif);
	line-height: var(--lineheight-detail-midashi, 1.5);
	letter-spacing: var(--letterspacing-detail-midashi, 0.1em);
	font-weight: bold;
}

/* JavaScript挿入箇所のフォントファミリー（webフォント使用時） */
/*
#pankuzu_wrap, #footstep_wrap, #keep_page, #count_down_area,
#important_noticest_area, #important_noticest_area h2,
#osusume_contents_area, #osusume_contents_area h2,
#recommend_tag, #recommend_tag h2,
#ai_recommend_tag, #ai_recommend_tag h2 {
	font-family: Arial, 'BIZ UDPGothic', Meiryo, メイリオ, Osaka, sans-serif;
}
*/

em {
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Arial, 'BIZ UDPGothic', Osaka, 'MS PGothic', sans-serif;
}

.mincho {
	font-family: 'Hiragino Mincho Pro', 'HiraMinProN-W3', 'ヒラギノ明朝 Pro W3', Century, 'BIZ UDPMincho', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', serif;
}

/* 文字色 */
body {
	color: #333;
}

/* リンク */
a:link {
	color: #333;
	text-decoration: underline;
}
a:visited {
	color: #333;
	text-decoration: underline;
}
a:active {
	color: #000;
	text-decoration: none;
}
a:hover, a:focus {
	color: #000;
	text-decoration: none;
}

a img {
	border: none;
	-webkit-transition: opacity 0.5s;
	-o-transition: opacity 0.5s;
	transition: opacity 0.5s;
}
a:hover img, a:focus img {
	opacity: 0.75;
}

/* レスポンシブアコーディオン用 */
input[id*="acc_ttl_label"] {
	display: none;
}
.acc_icon {
	display: none;
}

/* レスポンシブアコーディオン用（class付与） */
.acc_title.accordion {
	pointer-events: none;
}
.acc_title.accordion:focus {
	outline: none;
}
.acc_title.accordion a {
	pointer-events: auto;
}

/* ========== ヘッダ ========== */

/* スマートフォン用 */
#spm_wrap {
	display: none;
}

/* ヘッダ */
#header2 {
	background:
		url("/img/sites/kids/he_cloud_pc.png"),
		linear-gradient(to bottom, var(--bgColor-skyblue) 0%, var(--bgColor-skyblue) 70%, #fff 100%);
	background-position:
		calc(50% - 52px) center,
		center top;
	background-repeat: no-repeat;
	min-height: 200px;
}
#header2_box {
	width: var(--content-width, 1100px);
	margin: 0 auto;
	padding: 0;
	position: relative;
}

#he_left {
	width: 409px;
	position: absolute;
	top: 10px;
	left: 0;
	z-index: 1;
}
#he_left #logo {
	margin: 0;
	padding: 0;
}
#he_left #logo a {
	display: block;
	position: relative;
}
#he_left #logo a::before {
	content: '';
	width: 105px;
	height: auto;
	aspect-ratio: 105 / 66;
	background: url("/img/sites/kids/he_bird.png") no-repeat center center / contain;
	position: absolute;
	top: 0;
	right: -66px;
}
#he_left #logo img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

#he_right {
	margin-left: 470px;
	text-align: right;
}

/* ヘッダメニュー */
.header_nav > div {
	padding: 30px 0;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.header_nav [class^="h_"] {
	display: inline-block;
	vertical-align: top;
	margin: 0;
	padding: 0;
	text-align: left;
}

/* アクセシビリティ機能 */
.h_support {
	font-size: var(--fontsize-main-small);
	line-height: 1;
}
.h_support ruby {
	ruby-align: center;
}
.h_support rt {
	font-size: 1rem;
	white-space: nowrap;
	margin: 0 0 1px;
}

#support_menu_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 30px;
}

dl#moji_size,
dl#haikei_color {
	margin: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
dl#moji_size dt,
dl#haikei_color dt {
	display: inline-block;
	vertical-align: middle;
	font-weight: normal;
	margin: 0 9px 0 0;
	padding: 0;
}
dl#moji_size dd,
dl#haikei_color dd {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 6px;
	padding: 0;
}
dl#moji_size dd a,
dl#haikei_color dd a {
	display: block;
	background: #fff;
	border: 1px solid rgb(204, 204, 204);
	border-radius: 3px;
	color: #333;
	text-decoration: none;
	padding: calc(5px + 1rem) 5px 5px;
	text-decoration: none;
	outline: 3px solid rgb(0 0 0 / 0);
	-webkit-transition: outline .2s ease-out;
	-o-transition: outline .2s ease-out;
	transition: outline .2s ease-out;
}
dl#moji_size dd a:hover,
dl#moji_size dd a:focus,
dl#haikei_color dd a:hover,
dl#haikei_color dd a:focus {
	text-decoration: underline;
	outline-color: rgba(0 0 0 / .2);
}
dl#haikei_color dd a {
	padding: calc(5px + 1rem) 14px 5px;
}
.font_size_limit_max dl#moji_size dd a#moji_large {
	background: #f6f6f6;
	color: #666;
}

dl#haikei_color dd a#haikei_white {
	border-color: #ccc;
	background: #fff !important;
	color: #333 !important;
}
dl#haikei_color dd a#haikei_black {
	border-color: #000;
	background: #000 !important;
	color: #fff !important;
}
dl#haikei_color dd a#haikei_blue {
	border-color: #00f;
	background: #00f !important;
	color: #ff0 !important;
}

/* 検索 */

/* キーワード検索 */

/* ページID検索 */

/* グローバルメニュー */
#top_search {
	display: none;
}
.gnav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* サブサイト共通ヘッダ */

/* メニューへのリンク（スマートフォン用） */


/* ========== フッタ ========== */

/* フッタ */
#author_info {
	background: var(--bgColor-ground);
	padding: 60px 20px;
	min-height: 100%;
}
#author_info_box {
	width: var(--content-width, 1100px);
	margin: 0 auto;
	padding: 0;
	display: grid;
	grid-template-columns: auto 1fr 250px;
	grid-template-rows: repeat(2, auto);
	grid-column-gap: 20px;
	grid-row-gap: 36px;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: end;
	-ms-flex-line-pack: center;
	    align-content: center;
}
#author_box  { grid-area: 1 / 1 / 2 / 2; }
.footer_navi { grid-area: 1 / 2 / 2 / 3; }
.footer_home { grid-area: 1 / 3 / 2 / 4; }
#copyright   { grid-area: 2 / 1 / 3 / 4; }

/* 管理者情報 */
#author_box {
	margin: 0;
	padding: 0;
	font-size: var(--fontsize-main);
	letter-spacing: .02em;
	line-height: var(--lineheight-detail);
}
#author_box p {
	margin: 0;
}
#author_box p .part {
	display: inline-block;
}
#author_box [class^="f_"] {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-line-pack: start;
	    align-content: flex-start;
	gap: 0 .75em;
}
#author_box p.f_author {
	margin-bottom: .5rem;
	font-size: 2.2rem;
	font-weight: bold;
}

/* フッタメニュー */
.footer_navi {
	padding: 0 0 .25em;
}
.footer_navi ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	gap: 20px;
}
.footer_navi ul li {
	display: block;
	margin: 0;
	padding: 0;
}
.footer_navi ul li a {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border-radius: 25px;
	display: inline-block;
	padding: 16px 40px 16px;
	font-size: 1.2rem;
	line-height: var(--lineheight-main);
	text-decoration: none;
	position: relative;
	-webkit-transition: background-color .2s ease-out;
	-o-transition: background-color .2s ease-out;
	transition: background-color .2s ease-out;
}
.footer_navi ul li.f_link_mail a {
	background: url("/img/sites/kids/ft_mail.png") #fff7b7 no-repeat left 30px center;
	padding-left: 64px;
	min-width: 250px;
}
.footer_navi ul li.f_link_access a {
	background: url("/img/sites/kids/ft_access.png") #fff7b7 no-repeat left 30px center;
	padding-left: 59px;
	min-width: 160px;
}
.footer_navi ul li a::after {
	content: '';
	background: url("/img/sites/kids/arrow_navy.png") no-repeat center center / contain;
	width: 7px;
	height: 10px;
	position: absolute;
	right: 30px;
	top: calc(50% - 5px);
	opacity: 1;
	-webkit-transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
	transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
	-o-transition: transform .2s ease-out, opacity .2s ease-out;
	transition: transform .2s ease-out, opacity .2s ease-out;
	transition: transform .2s ease-out, opacity .2s ease-out, -webkit-transform .2s ease-out;
}
.footer_navi ul li a:hover,
.footer_navi ul li a:focus {
	background-color: #fff;
}
.footer_navi ul li a:hover::after,
.footer_navi ul li a:focus::after {
	-webkit-transform: translateX(100%);
	    -ms-transform: translateX(100%);
	        transform: translateX(100%);
	opacity: 0;
}

/* 市川市へのリンク */
.footer_home a {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	border: 1px solid #5fc5f5;
	background: #fff;
	width: 250px;
	height: 84px;
	margin: 0 auto;
	padding: 20px 20px 24px;
	-webkit-transition: background-color .2s ease-out;
	-o-transition: background-color .2s ease-out;
	transition: background-color .2s ease-out;
}
.footer_home a:hover,
.footer_home a:focus {
	background-color: rgb(95 197 245 / .2);
}

/* コピーライト */
#copyright {
	margin: 0;
	padding: 0;
}
#copyright p {
	margin: 0;
	font-size: 1.2rem;
	letter-spacing: 0;
	text-align: center;
}

/* ページトップボタン */
#btn_pagetop {
	display: block;
	width: 121px;
	position: fixed;
	right: 10px;
	bottom: -100px;
	z-index: 101;
	-webkit-transition: bottom .5s ease-in-out;
	-o-transition: bottom .5s ease-in-out;
	transition: bottom .5s ease-in-out;
}
#btn_pagetop.fixed {
	bottom: 10px;
}
#btn_pagetop a {
	display: block;
}
#btn_pagetop img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
/* 揺れ */
@-webkit-keyframes pagetopShake {
	0%   { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
	30%  { -webkit-transform: rotate(5deg); transform: rotate(5deg); }
	60%  { -webkit-transform: rotate(-4deg); transform: rotate(-4deg); }
	100% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
}
@keyframes pagetopShake {
	0%   { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
	30%  { -webkit-transform: rotate(5deg); transform: rotate(5deg); }
	60%  { -webkit-transform: rotate(-4deg); transform: rotate(-4deg); }
	100% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
}
#btn_pagetop.shake {
	-webkit-animation: pagetopShake .5s ease-out .15s;
	        animation: pagetopShake .5s ease-out .15s;
}

/* サブサイト共通フッタ */

/* ========== パンくず / 足あと ========== */

/* パンくず・足あと */
#footstep_wrap {
	display: none !important;
}

/* ========== 見出し / 表 ========== */

/* 見出し */
#main_header {
	margin-bottom: 30px;
}
#main_header h1 {
	margin: 0;
	padding: 26px 30px;
	background: var(--bgStripe_h1);
	border-radius: 10px;
	font-size: 3.2rem;
	position: relative;
}
#main_header h1::before {
	content: '';
	display: block;
	border: 2px solid #fff;
	border-radius: 10px;
	position: absolute;
	top: 8px;
	bottom: 8px;
	left: 8px;
	right: 8px;
	pointer-events: none;
}

#main_body :where(h2,h3,h4,h5,h6) {
	clear: both;
	margin: 3rem 0 2rem;
	letter-spacing: var(--letterspacing-detail-midashi);
	line-height: var(--lineheight-detail-midashi);
	position: relative;
}

#main_body h2 {
	padding: 21px 30px 20px;
	background: var(--bgStripe_h2);
	border-radius: 10px;
	font-size: 2.6rem;
}
#main_body h3 {
	padding: 17px 30px;
	background: var(--bgStripe_h3);
	border-radius: 10px;
	font-size: 2.4rem;
}
#main_body h4 {
	padding: 14px 30px 13px;
	background: #fff;
	border: 2px solid var(--bgColor-h1Blue);
	border-radius: 10px;
	font-size: 2.2rem;
}
#main_body h5 {
	padding: 10px 30px;
	background: #fff;
	border: none;
	border-bottom: 1px solid var(--bgColor-h1Blue);
	font-size: 2.0rem;
}
#main_body h6 {
	padding: 7px 30px 6px;
	background: #fff;
	font-size: 1.8rem;
}
#main_body h6::before {
	content: '';
	display: block;
	background: var(--bgColor-h1Blue);
	border-radius: 50%;
	width: 10px;
	height: 10px;
	position: absolute;
	left: 12px;
	top: calc(7px + .75em - 5px);
}

/* テーブル */
#main_body table {
	border-color: #333;
	border-collapse: collapse;
	border-style: solid;
	border-width: 2px; /* CMSver5以降は管理画面で枠線の太さを変更することができない（機能が削除された）ためCSSで指定 */
	margin: 0 0 1em;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#main_body th {
	background: #e0f4fa;
	color: #333;
	border-color: #333;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 0.5em;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#main_body td {
	background: #fff;
	border-color: #333;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 0.5em;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
/* テーブル内のpタグのマージンを0にする */
#main_body table p {
	margin: 0 0 1em;
}
#main_body table p:last-child {
	margin: 0;
}

/* ========== メイン ========== */

/* メイン */
#mymainback {
	padding-top: 30px;
	padding-bottom: 60px;
}

#main_body div[class*="detail_"] {
	display: block;
}

/* コンテンツヘッダ */
#content_header {
	margin: 0 0 20px;
	text-align: right;
	font-size: var(--fontsize-main-small, 1.5rem);
}
#content_header > span {
	display: inline-block;
	margin-left: 2em;
}

/* コンテンツフッタ */
#content_footer {
	clear: both;
}

/* 印刷 */
#print_mode_link,
#print_mode_link_large {
	display: inline-block;
	background: url("/img/sites/kids/ico_print.png") no-repeat left center transparent;
	padding-left: 20px;
}

/* SDGsアイコン */

/* カレンダー登録 */
#calendar_button_google,
#calendar_button_yahoo {
	display: inline-block;
	vertical-align: top;
	margin: 40px 30px 0 0;
}
#calendar_button_google a,
#calendar_button_yahoo a {
	display: inline-block;
	font-size: var(--fontsize-main-small, 1.5rem);
	line-height: 2rem;
	padding: 5px 0 5px 35px;
	background: url("/img/sites/kids/ico_calendar.png") no-repeat left center transparent;
}

/* SNSボタン */
.sns_button_wrap {
	margin-top: 40px;
	line-height: 1;
}
.sns_button_wrap > div {
	display: inline-block;
	vertical-align: top;
}

/* PDF・WMPリンク */
.pdf_download,
.wmplayer_download {
	clear: both;
	margin: 40px 0 0;
	width: 100%;
	display: table;
}
.pdf_download .pdf_img,
.wmplayer_download .wmplayer_img {
	display: table-cell;
	vertical-align: middle;
	width: 158px;
	margin: 0;
	padding: 0;
}
.wmplayer_download .wmplayer_img {
	width: 88px;
}
.pdf_download .pdf_img img,
.wmplayer_download .wmplayer_img img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

.tenpu_txt {
	display: table-cell;
	vertical-align: middle;
	margin: 0;
	padding: 2px 0 2px 10px;
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0em;
}

/* 評価エリア */
#hyouka_area_box {
	clear: both;
	margin: 40px 0 0;
	padding: 30px;
	background: #f6f6f6;
	border-radius: 10px;
}

#hyouka_area_box h2,
#main_body #hyouka_area_box h2 {
	margin: 0 0 15px;
	padding: 0;
	border: none;
	border-radius: 0;
	background: none;
	color: inherit;
	font-size: 2rem;
}
#main_body #hyouka_area_box h2::before,
#main_body #hyouka_area_box h2::after {
	display: none;
}
#main_body #hyouka_area_box hr.cf {
	margin: 0;
}

#hyouka_area_box .hyouka_box_detail {
	border-bottom: 1px solid #ddd;
	margin-bottom: 15px;
	padding-bottom: 15px;
	font-size: var(--fontsize-main-small, 1.5rem);
}
#hyouka_area_box .hyouka_box_detail:last-child {
	border-bottom: none;
	margin-bottom: 0;
}
#hyouka_area_box .hyouka_box_detail fieldset {
	border: none;
	margin: 0;
	padding: 0;
}
#hyouka_area_box .hyouka_box_detail fieldset legend {
	margin: 0 0 5px;
	padding: 0;
	width: 100%;
}
#hyouka_area_box .hyouka_box_detail fieldset span {
	display: inline-block;
	vertical-align: top;
	margin: 0 4em 0 0;
}
#hyouka_area_box .hyouka_box_detail fieldset span:first-of-type {
	min-width: 11em;
}
#hyouka_area_box .hyouka_box_detail fieldset span input {
	margin: 3px 4px 5px 5px;
	vertical-align: middle;
}
#hyouka_area_submit {
	margin-top: 10px;
}
#hyouka_area_submit input {
	display: inline-block;
	border: 1px solid transparent;
	border-radius: 20px;
	background: #fff;
	color: #333;
	margin: 0;
	padding: 10px;
	font-size: var(--fontsize-main-small, 1.5rem);
	line-height: 1.8rem;
	text-decoration: none;
	text-align: center;
	width: 260px;
	max-width: 90%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#hyouka_area_submit input:hover,
#hyouka_area_submit input:focus {
	text-decoration: underline;
}

/* お問い合わせ先 */
#section_footer {
	clear: both;
	margin: 40px 0 0;
	padding: 30px;
	background: #e0f4fa;
	border-radius: 10px;
}

#section_footer h2,
#main_body #section_footer h2 {
	margin: 0 0 15px;
	padding: 0;
	border: none;
	border-radius: 0;
	background: none;
	color: inherit;
	font-size: 2rem;
}
#main_body #section_footer h2::before,
#main_body #section_footer h2::after {
	display: none;
}
#main_body #section_footer hr.cf {
	margin: 0;
}

#section_footer_detail span {
	display: inline-block;
	vertical-align: top;
	margin-right: 1em;
}
#section_footer_detail span[class*="sf_name"] {
	margin-bottom: 10px;
}

/* おすすめコンテンツ */

/* ========== サイド ========== */

/* サイドバー */
#sidebar1 > div {
	margin-bottom: 20px;
}
#sidebar1 > div:last-child,
#sidebar1 > div:empty {
	margin-bottom: 0 !important;
}

#sidebar1 img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

/* 自由編集項目 */
.free_box {
	display: flow-root;
}
.free_box p {
	margin: 0 0 1em;
}
.free_box p:last-child {
	margin-bottom: 0;
}
.free_box img {
	max-width: 100%;
	height: auto !important;
	vertical-align: top;
}

/* 重要なお知らせ */

/* カウントダウン */

/* レコメンド・AIレコメンド */
#sidebar_recommend,
#sidebar_ai_recommend {
	background: var(--bgColor-h2Green20);
	border-radius: 10px;
}

#recommend_title,
#ai_recommend_title {
	background: var(--bgStripe_h2);
	border-radius: 10px 10px 0 0;
	text-align: center;
	padding: 10px 5px;
}
#recommend_title h2,
#ai_recommend_title h2 {
	display: inline-block;
	margin: 0;
	padding: 5px 0 5px 40px;
	color: inherit;
	font-size: 1.6rem;
	text-align: left;
	line-height: 1.5;
}
#recommend_title h2 {
	background: url("/img/sites/kids/ico_recommend.png") no-repeat left center transparent;
}
#ai_recommend_title h2 {
	background: url("/img/sites/kids/ico_ai_recommend.png") no-repeat left center transparent;
	color: inherit;
}
#recommend_title h2 > span,
#ai_recommend_title h2 > span {
	display: block;
}

#sidebar_recommend ul,
#sidebar_ai_recommend ul {
	margin: 0;
	padding: 20px 20px 20px 40px;
}
#sidebar_recommend ul li,
#sidebar_ai_recommend ul li {
	margin: 0 0 10px;
}

/* 関連リンク */
#kanren_link h2 {
	background: var(--bgStripe_h2);
	border-radius: 10px 10px 0 0;
	margin: 0;
	padding: 15px 20px;
	font-size: 2rem;
	text-align: center;
}
#kanren_link_list {
	background: var(--bgColor-h2Green20);
	border-radius: 0 0 10px 10px;
}
#kanren_link ul {
	margin: 0;
	padding: 20px 20px 20px 40px;
}
#kanren_link ul li {
	margin: 0 0 10px;
}
#kanren_link ul li:last-child {
	margin-bottom: 0;
}

/* 「見つからないときは」「よくある質問」バナー */
.common_banner_link ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.common_banner_link *[class*="common_banner_"] {
	margin-bottom: 15px;
}
.common_banner_link *[class*="common_banner_"]:last-child {
	margin-bottom: 0;
}
.common_banner_link a {
	display: block;
	background: var(--bgStripe_h3);
	border-radius: 10px;
	color: #333;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 20px 5px;
	text-align: center;
}
.common_banner_link a > span {
	display: inline-block;
	padding: 5px 0 5px 40px;
}
.common_banner_link .common_banner_mitsukaranai a > span {
	background: url("/img/sites/kids/ico_mitsukaranai.png") no-repeat left center transparent;
	color: inherit;
}
.common_banner_link .common_banner_faq a > span {
	background: url("/img/sites/kids/ico_faq.png") no-repeat left center transparent;
	color: inherit;
}
.common_banner_link a:hover,
.common_banner_link a:focus,
.common_banner_link a:hover span,
.common_banner_link a:focus span {
	text-decoration: underline;
}

/* サブサイト大小メニュー */
.subsite_menu {
	background: var(--bgColor-h1Blue10);
	border-radius: 10px;
	overflow: hidden;
	margin: 0 0 20px;
	font-size: var(--fontsize-main);
}
.subsite_menu:last-child {
	margin-bottom: 0;
}

.subsite_menu_ttl {
	background: var(--bgStripe_h1);
	border-radius: 10px 10px 0 0;
	margin: 0;
	padding: 18px 20px;
	font-size: var(--fontsize-detail);
	text-align: left;
}
.subsite_menu_ttl a {
	color: inherit;
}
.subsite_menu:not(:has(.subsite_menu_list)) .subsite_menu_ttl {
	border-radius: 10px;
}

.subsite_menu_list ul {
	margin: 0;
	padding: 20px 20px 20px 40px;
}
.subsite_menu_list ul li {
	margin: 0 0 10px;
}
.subsite_menu_list ul li:last-child {
	margin-bottom: 0;
}

.subsite_menu_list div.link_ichiran {
	margin: 0;
	padding: 0 20px 20px;
	text-align: center;
}
.subsite_menu_list div.link_ichiran a {
	display: block;
	background: #fff;
	border-radius: 20px;
	padding: calc(3px + 0.8rem) 5px 5px;
}

/* サブサイト大小メニュー（開閉） */
.subsite_menu summary:only-child {
	display: block;
	list-style-type: none;
	pointer-events: none;
	cursor: auto;
}
.subsite_menu summary:only-child::-webkit-details-marker {
	display: none;
}
.subsite_menu summary:only-child a {
	pointer-events: auto;
}
/* サブサイト大小メニュー（開閉）（PCは開閉しない） */
@media screen and (min-width: 1081px) {
	.subsite_menu summary {
		display: block;
		list-style-type: none;
		pointer-events: none;
		cursor: auto;
	}
	.subsite_menu summary::-webkit-details-marker {
		display: none;
	}
	.subsite_menu summary a {
		pointer-events: auto;
	}
}
/* サブサイト大小メニュー（開閉）（PCは開閉しない） ここまで */


/* ========== リスト ========== */

/* リスト（一覧） */
.info_list ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.info_list ul li {
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid var(--bgColor-h1Blue);
}
.tpl_site_list_2 .info_list ul li a {
	display: block;
	margin: -10px 0;
	padding: 35px 20px;
	line-height: 1.5;
}

/* リスト（日付） */
.info_list.info_list_date ul li {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.info_list.info_list_date ul li > span {
	display: table-cell;
	vertical-align: top;
}
.info_list.info_list_date ul li > span.article_date {
	width: calc(11em + 10px);
	font-size: var(--fontsize-detail-small, 1.6rem);
	padding-top: .1rem;
}

/* リスト（担当課） */
.article_section:has(span:empty) {
	display: none;
}

/* リスト（サムネイル） */
.list_pack {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 20px 0;
}

.list_pack .article_txt {
	display: table-cell;
	vertical-align: middle;
}
.list_pack .article_txt .article_date {
	display: block;
}
.list_pack .article_txt .article_title {
	display: block;
}

.list_pack .article_img {
	display: table-cell;
	vertical-align: top;
	width: 200px;
	padding-right: 20px;
}
.list_pack .article_img span {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 200 / 150;
	overflow: hidden;
	background: #e0f4fa;
}
.list_pack .article_img span:empty {
	background: url(/img/sites/kids/noimage.png) #e0f4fa no-repeat center center;
}
.list_pack .article_img span img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: center;
	   object-position: center;
}

/* ========== Googleカスタム検索結果 ========== */

/* googleカスタム検索結果 */
#main_body #cse_search_result table,
#main_body #cse_search_result table td,
#main_body .gsc-control-cse table,
#main_body .gsc-control-cse table td {
	border: none;
	margin: 0;
}
.gsc-results .gsc-cursor-box .gsc-cursor-page {
	display: inline-block !important;
	vertical-align: top;
	margin: 0 0 5px;
	padding: 10px 15px;
	border: 1px solid #ccc !important;
	background: #fff !important;
	color: #06c !important;
	font-size: 1.6rem;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
	background: #f5f5f5 !important;
	color: #333 !important;
}


/* ==================================================
	PC ここまで
================================================== */


/* ==================================================
	閲覧補助 / 印刷ページ
================================================== */

/* ========== 背景色変更 ========== */

/* 共通 */
.color_change .footer_navi ul li a {
	outline: 1px solid rgb(255 255 255 / .5);
}
.color_change .footer_navi ul li.f_link_mail a {
	background-image: url(/img/sites/kids/ft_mail_w.png);
}
.color_change .footer_navi ul li.f_link_access a {
	background-image: url(/img/sites/kids/ft_access_w.png);
}
.color_change .footer_navi ul li a::after,
.color_change .footer_home a img {
	-webkit-filter: grayscale(1) brightness(3);
	        filter: grayscale(1) brightness(3);
}

.color_change .common_banner_link a,
.color_change .common_banner_link .common_banner_mitsukaranai a > span,
.color_change .common_banner_link .common_banner_faq a > span {
	background-image: none;
}
.color_change .subsite_menu {
	outline: 1px solid rgb(255 255 255 / .5);
	outline-offset: -1px;
}
.color_change #hyouka_area_box,
.color_change #section_footer {
	outline: 1px solid rgb(255 255 255 / .5);
}
.color_change .list_pack .article_img span:empty {
	background-color: rgb(255 255 255 / .5) !important;
}

.color_change #sidebar_recommend,
.color_change #sidebar_ai_recommend,
.color_change #kanren_link,
.color_change .common_banner_link a {
	outline: 1px solid rgb(255 255 255 / .5);
}


/* ========== 文字サイズ変更 ========== */

/* リスト（日付 / 文字拡大時） */
.font_size_changed .info_list.info_list_date ul li,
.font_size_changed .info_list.info_list_date ul li > span {
	display: block;
}
.font_size_changed .info_list.info_list_date ul li > span.article_date {
	width: auto;
	padding-top: 0;
}
/* メインエリア */
.font_size_changed #recommend_title h2 > span,
.font_size_changed #ai_recommend_title h2 > span {
	display: inline;
}
.font_size_changed #hyouka_area_box .hyouka_box_detail fieldset span:first-of-type {
	min-width: auto;
}
/* フッタ */
.font_size_changed #author_info_box {
	grid-template-columns: auto 1fr;
	grid-template-rows: repeat(3, auto);
	grid-column-gap: 20px;
	grid-row-gap: 20px;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.font_size_changed #author_box  { grid-area: 1 / 1 / 3 / 2; }
.font_size_changed .footer_navi { grid-area: 1 / 2 / 2 / 3; }
.font_size_changed .footer_home { grid-area: 2 / 2 / 3 / 3; }
.font_size_changed #copyright   { grid-area: 3 / 1 / 4 / 3; }


/* ==================================================
閲覧補助 / 印刷ページ ここまで
================================================== */


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1100px) {

	/* var() 関数 */
	:root {
		--content-width: auto;
		/* フォントサイズ */
		--fontsize-main: 1.6rem;
		/* 一段階小さいフォントサイズ（一覧をみるボタンなど） */
		--fontsize-main-small: 1.4rem;
		/* 本文（ #main ） */
		--fontsize-detail: 1.8rem;
		/* 本文の一段階小さいフォントサイズ（日付など） */
		--fontsize-detail-small: 1.6rem;

		/* #mymainbackの左右余白 */
		--mymainback-margin-side: 20px;
	}
	@media screen and (max-width: 370px) {
		:root {
			/* 本文（ #main ） */
			--fontsize-detail: 1.4rem;
			/* 本文の一段階小さいフォントサイズ（日付など） */
			--fontsize-detail-small: 1.3rem;
			/* #mymainbackの左右余白 */
			--mymainback-margin-side: 10px;
		}
	}
	/* var() 関数 ここまで */

	/* ========== レイアウト ========== */

	/* 全体 */
	body {
		min-width: 320px;
		margin: 0;
		padding: 0;
		-webkit-text-size-adjust: none;
		   -moz-text-size-adjust: none;
		    -ms-text-size-adjust: none;
		        text-size-adjust: none;
	}

	#container {
		float: none;
		width: 100%;
		min-width: 320px;
	}

	/* ヘッダ */
	#header {
		z-index: 100;
	}

	/* フッタ */
	#footer {
		clear: both;
		width: auto;
		height: auto;
		margin: 0;
		padding: 0;
		position: relative;
		z-index: 0;
	}

	/* メイン */
	#mymainback {
		clear: both;
		float: none;
		width: auto;
		margin: 0;
		padding: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-ms-flex-wrap: nowrap;
		    flex-wrap: nowrap;
	}

	#main,
	.tpl_side1 #main {
		-webkit-box-ordinal-group: 11;
		-ms-flex-order: 10;
		order: 10;
		clear: both;
		float: none;
		width: auto;
		margin: 0;
		padding: 0;
	}
	#main_a,
	.tpl_side1 #main_a {
		margin: 0;
		padding: 0;
	}

	/* サイド */
	#sidebar1 {
		-webkit-box-ordinal-group: 12;
		-ms-flex-order: 11;
		order: 11;
		clear: both;
		float: none;
		width: auto;
		margin: 0;
		padding: 0;
	}

	#sidebar1 > div {
		margin-bottom: 40px;
	}

	/* パンくずをフッタ上に表示 */
	#mymainback_bg {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-ms-flex-wrap: nowrap;
		    flex-wrap: nowrap;
	}
	#mymainback_bg > * {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}

	/* ========== 基本設定 ========== */

	/* フォント */
	body,
	button,
	input[type="button"],
	input[type="submit"],
	input[type="text"],
	textarea,
	select {
		font-size: var(--fontsize-main, 1.4rem);
	}

	#main {
		font-size: var(--fontsize-detail, 1.5rem);
	}

	/* レスポンシブアコーディオン用 */
	input[id*="acc_ttl_label"] + *,
	input[id*="acc_ttl_label"] + .acc_title + * {
		display: none;
	}
	input[id*="acc_ttl_label"] + .acc_title,
	input[id*="acc_ttl_label"]:checked + *,
	input[id*="acc_ttl_label"]:checked + .acc_title + * {
		display: block;
	}

	label[for*="acc_ttl_label"] {
		display: block;
		cursor: pointer;
		background: url("/img/sp/acc_open.png") no-repeat right 20px top 50% transparent;
		background-size: 15px 15px;
		padding-right: 40px;
	}
	.acc_open label[for*="acc_ttl_label"] {
		background-image: url("/img/sp/acc_close.png");
	}

	.color_change label[for*="acc_ttl_label"] {
		background-image: url("/img/sp/acc_open_white.png");
	}
	.color_change .acc_open label[for*="acc_ttl_label"] {
		background-image: url("/img/sp/acc_close_white.png");
	}

	.no_acc_title label[for*="acc_ttl_label"] {
		background: none !important;
		padding-right: 0;
	}

	/* レスポンシブアコーディオン用（class付与） */
	.acc_title.accordion {
		pointer-events: auto;
	}
	.acc_title.accordion:focus {
		outline: auto;
	}

	.acc_title.accordion + * {
		display: none;
	}
	.acc_title.accordion.acc_open + * {
		display: block;
	}

	.acc_title.accordion .accordion_icon {
		display: block;
		cursor: pointer;
		background: url("/img/sp/acc_open.png") no-repeat right 20px top 50% transparent;
		background-size: 15px 15px;
		padding-right: 40px;
	}
	.acc_title.accordion.acc_open .accordion_icon {
		background-image: url("/img/sp/acc_close.png");
	}

	.color_change .acc_title.accordion .accordion_icon {
		background-image: url("/img/sp/acc_open_white.png");
	}
	.color_change .acc_title.accordion.acc_open .accordion_icon {
		background-image: url("/img/sp/acc_close_white.png");
	}


	/* ==================== ヘッダ ==================== */

	/* ヘッダ */
	#header {
		position: relative;
	}
	#header2 {
		min-height: auto;
		background: url(/img/sites/kids/he_cloud_pc.png), linear-gradient(to bottom, var(--bgColor-skyblue) 0%, var(--bgColor-skyblue) 75%, #fff 100%);
		background-position: calc(50% - 52px) center, center top;
		background-repeat: no-repeat;
		background-size: auto 100%;
	}
	#header2_box {
		width: auto;
		margin: 0;
		padding: 0;
	}

	#he_left {
		position: static;
		margin: 0 auto;
		padding: 10px;
		width: calc(409px / 3 * 2);
	}
	#he_left #logo a::before {
		width: calc(105px / 3 * 2);
		right: 0;
		transform: translateX(60%);
	}

	#he_right {
		margin-left: 0;
		text-align: left;
	}

	/* ========== ボトムナビゲーション ========== */
	#spm_wrap {
		display: grid;
		grid-template-columns: 106fr 65fr;
		grid-template-rows: 1fr;
		grid-column-gap: 0px;
		grid-row-gap: 0px;
		position: fixed;
		left: 50%;
		bottom: 15px;
		z-index: 999;
		width: calc(100% - 40px);
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
		max-height: 100vh;
		max-width: 450px;
		-webkit-filter:
			drop-shadow(0 4px 4px rgb(70 70 70 / .25))
			drop-shadow(0 4px 4px rgb(70 70 70 / .25))
			drop-shadow(0 4px 4px rgb(70 70 70 / .25));
		        filter:
			drop-shadow(0 4px 4px rgb(70 70 70 / .25))
			drop-shadow(0 4px 4px rgb(70 70 70 / .25))
			drop-shadow(0 4px 4px rgb(70 70 70 / .25));
	}
	#spm_wrap .opn { display: inline-block; }
	#spm_wrap .cls { display: none; }

	#spm_wrap button {
		display: block;
		width: 100%;
		height: 50px;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		margin: 0;
		padding: 0;
		background: url(/img/sites/kids/bg_stripe_30.png) #ffe11a center bottom / 30px 30px;
		color: #36190f;
		border: 2px solid #36190f;
		text-align: center;
		overflow: hidden;
	}
	#spm_wrap button img {
		max-width: 100%;
	}

	#spm_wrap #btn_spm_support {
		border-radius: 25px 0 0 25px;
		border-right: 1px solid #36190f;
	}
	#spm_wrap #btn_spm_menu {
		border-radius: 0 25px 25px 0;
		border-left: 1px solid #36190f;
	}
	#btn_spm_menu img {
		vertical-align: bottom;
	}

	/* とじるボタン */
	.spm_support_open #spm_wrap #btn_spm_support,
	.spm_menu_open #spm_wrap #btn_spm_menu {
		background: #36190f;
		color: #fff;
	}
	.spm_support_open #spm_wrap #btn_spm_support .opn,
	.spm_menu_open #spm_wrap #btn_spm_menu .opn {
		display: none;
	}
	.spm_support_open #spm_wrap #btn_spm_support .cls,
	.spm_menu_open #spm_wrap #btn_spm_menu .cls {
		display: inline-block;
		vertical-align: middle;
	}

	/* ========== 閲覧補助（展開） ========== */
	.header_nav {
		display: none;
		background: #ffe11a;
		border-radius: 30px 30px 0 0;
		color: #36190f;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		padding-bottom: 65px;
	}
	.spm_support_open .header_nav {
		display: block;
	}

	/* ヘッダメニュー */
	.header_nav > div {
		padding: 20px 20px 30px;
		justify-content: center;
	}
	.header_nav [class^="h_"] {
		display: block;
		margin: 10px 0 0;
	}

	/* アクセシビリティ機能 */
	.h_support {
		font-size: 2rem;
	}
	.h_support rt {
		font-size: 1.2rem;
		margin: 0 0 2px;
	}
	#support_menu_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		position: static;
		background: none;
		border: none;
		-webkit-box-shadow: none;
		        box-shadow: none;
		margin: 0;
		padding: 0;
		width: auto;
		min-width: auto;
	}
	dl#moji_size,
	dl#haikei_color {
		margin: 10px 20px 10px;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	dl#moji_size dt,
	dl#haikei_color dt {
		width: 100%;
		margin: 0 0 .5em;
		text-align: center;
	}
	dl#moji_size dd,
	dl#haikei_color dd {
		margin: 0;
	}
	dl#moji_size dd + dd,
	dl#haikei_color dd + dd {
		margin-left: 1.5rem;
	}
	dl#moji_size dd a,
	dl#haikei_color dd a {
		box-sizing: border-box;
		text-align: center;
		padding: calc(9px + 1.4rem + 2px) 5px 9px;
	}
	dl#moji_size dd a {
		width: 15rem;
	}
	dl#haikei_color dd a {
		width: 9.5rem;
	}

	/* ========== グローバルメニュー（展開） ========== */

	/* グローバルメニュー */
	#top_search {
		display: none;
		position: fixed;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		z-index: 998;
		width: 100%;
		max-height: 100vh;
		background: var(--bgColor-skyblue);
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		margin: 0;
		padding: 60px 20px 90px;
		overflow-y: auto;
		-ms-scroll-chaining: none;
		    overscroll-behavior: none;
	}
	.spm_menu_open #top_search {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	#top_search .gnav {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
	}
	#top_search .gnav ul {
		width: 100%;
		display: block;
		padding: 0;
	}
	#top_search .gnav ul li {
		display: block;
		margin: 20px;
	}
	#top_search .gnav ul li a {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: nowrap;
		    flex-wrap: nowrap;
		-ms-flex-line-pack: start;
		    align-content: flex-start;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		outline: 2px solid #fff;
		outline-offset: -10px;
		border-radius: 40px;
		height: 80px;
		max-width: 500px;
		margin: 0 auto;
		padding: 15px 20px;
		text-align: center;
	}
	#top_search .gnav ul li a img { vertical-align: middle; }

	/* メニュー色分け */
	#top_search .menu1 a { background: var(--themeColor1); }
	#top_search .menu2 a { background: var(--themeColor2); }
	#top_search .menu3 a { background: var(--themeColor3); }
	#top_search .menu4 a { background: var(--themeColor4); color: #fff; }
	#top_search .menu5 a { background: var(--themeColor5); color: #fff; }

	/* キャラクター */
	#top_search .gnav ul li a::before {
		content: '';
		display: inline-block;
		vertical-align: middle;
		margin-right: 16px;
	}
	#top_search .menu1 a::before {
		width: 41px;
		height: 50px;
		background-image: url(/img/sites/kids/spm_ico_1.png);
	}
	#top_search .menu2 a::before {
		width: 29px;
		height: 50px;
		background-image: url(/img/sites/kids/spm_ico_2.png);
	}
	#top_search .menu3 a::before {
		width: 42px;
		height: 44px;
		background-image: url(/img/sites/kids/spm_ico_3.png);
	}
	#top_search .menu4 a::before {
		width: 39px;
		height: 46px;
		background-image: url(/img/sites/kids/spm_ico_4.png);
	}
	#top_search .menu5 a::before {
		width: 41px;
		height: 46px;
		background-image: url(/img/sites/kids/spm_ico_5.png);
	}

	/* サブサイト共通ヘッダ */

	/* メニューへのリンク */

	/* ========== フッタ ========== */

	/* フッタ */
	#author_info {
		padding: 60px 20px 100px;
	}
	#author_info_box {
		display: block;
		width: auto;
		margin: 0;
		padding: 0;
	}
	#author_box {
		margin: 0 0 35px;
	}
	.footer_navi {
		padding: 0;
		margin: 35px 0;
		text-align: center;
	}
	.footer_navi ul li {
		width: 100%;
		max-width: 350px;
	}
	@media screen and (min-width: 760px) {
		.footer_navi ul li {
			width: 350px;
		}
	}
	.footer_navi ul li a {
		display: block;
		width: auto;
		text-align: left;
	}
	.footer_home {
		margin: 40px 0;
	}

	/* ページトップ（フローティング表示） */
	#btn_pagetop {
		width: 85px;
	}
	#btn_pagetop.fixed {
		bottom: 80px;
	}
	@media screen and (min-width: 650px) {
		#btn_pagetop.fixed {
			bottom: 20px;
		}
	}
	.spm_menu_open #btn_pagetop,
	.spm_support_open #btn_pagetop {
		opacity: 0;
		pointer-events: none;
	}

	/* サブサイト共通フッタ */

	/* ========== パンくず / 足あと ========== */

	/* パンくず・足あと */

	/* ========== 見出し ========== */

	/* 見出し */
	#main_header h1 {
		margin: 0;
		padding: 17px 20px;
		font-size: 2.4rem;
	}
	#main_header h1::before {
		border-radius: 7px;
		top: 6px;
		bottom: 6px;
		left: 6px;
		right: 6px;
	}

	#main_body h2 {
		padding: 15px 20px;
		font-size: 2rem;
	}

	#main_body h3 {
		padding: 11px 20px;
		font-size: 1.9rem;
	}

	#main_body h4 {
		padding: 7px 20px;
		font-size: 1.8rem;
	}

	#main_body h5 {
		padding: 5px 20px;
		font-size: 1.7rem;
	}

	#main_body h6 {
		padding: 3px 20px;
		font-size: 1.6rem;
	}
	#main_body h6::before {
		left: 2px;
		top: calc(3px + .75em - 5px);
	}

	/* ========== メイン ========== */

	/* メイン */
	#mymainback {
		margin: 15px var(--mymainback-margin-side, 15px) 40px;
	}

	/* コンテンツヘッダ */
	#content_header {
		font-size: var(--fontsize-main-small, 1.3rem);
	}
	#content_header > span {
		margin-left: 1em;
	}

	/* コンテンツフッタ */
	#content_footer {}

	/* 印刷 */
	#content_header > span.link_print,
	#print_mode_link,
	#print_mode_link_large {
		display: none !important;
	}

	/* SDGsアイコン */

	/* カレンダー登録 */
	#calendar_button_google,
	#calendar_button_yahoo {
		margin: var(--content-margin-narrow, 20px) 20px 0 0;
	}
	#calendar_button_google a,
	#calendar_button_yahoo a {
		font-size: var(--fontsize-main-small, 1.3rem);
	}

	/* SNSボタン */
	.sns_button_wrap {}

	/* PDF・WMPリンク */
	.pdf_download,
	.wmplayer_download {
		display: block;
		width: auto;
	}
	.pdf_download .pdf_img,
	.wmplayer_download .wmplayer_img {
		display: block;
	}
	.tenpu_txt {
		display: block;
		padding: 10px 0 0;
		font-size: 1.2rem;
		line-height: 1.5;
	}

	/* 評価エリア */
	#hyouka_area_box {
		padding: 30px 20px;
	}
	#hyouka_area_box h2,
	#main_body #hyouka_area_box h2 {
		font-size: 1.8rem;
		letter-spacing: 0em;
	}
	@media screen and (max-width: 370px) {
		#hyouka_area_box h2,
		#main_body #hyouka_area_box h2 {
			font-size: 1.6rem;
		}
	}
	#hyouka_area_box .hyouka_box_detail {
		font-size: var(--fontsize-main-small, 1.3rem);
	}
	#hyouka_area_box .hyouka_box_detail fieldset span {
		margin-right: 2em;
	}
	#hyouka_area_box .hyouka_box_detail fieldset span:first-of-type {
		min-width: auto;
	}

	#hyouka_area_submit {
		margin: 10px 10px 0;
	}
	#hyouka_area_submit input {
		display: block;
		width: 100%;
		max-width: 100%;
		font-size: var(--fontsize-main-small, 1.3rem);
	}

	/* お問い合わせ先 */
	#section_footer {
		padding: 30px 20px;
	}
	#section_footer h2,
	#main_body #section_footer h2 {
		font-size: 1.8rem;
		letter-spacing: 0em;
	}
	@media screen and (max-width: 370px) {
		#section_footer h2,
		#main_body #section_footer h2 {
			font-size: 1.6rem;
		}
	}

	/* おすすめコンテンツ */

	/* ========== サイド ========== */

	/* サイドバー */
	#sidebar1 {
		margin-top: 40px;
	}

	/* 重要なお知らせ */

	/* カウントダウン */

	/* レコメンド・AIレコメンド */
	@media screen and (max-width: 370px) {
		#recommend_title h2,
		#ai_recommend_title h2 {
			font-size: 1.4rem;
		}
	}

	#sidebar_recommend ul li a,
	#sidebar_ai_recommend ul li a {
		display: block;
	}

	/* 関連リンク */
	#kanren_link h2 {
		font-size: 1.8rem;
	}
	#kanren_link ul {
		padding: 10px 20px 10px 40px;
	}
	#kanren_link ul li a {
		display: block;
	}

	/* 「見つからないときは」「よくある質問」バナー */
	.common_banner_link {}

	/* サブサイト大小メニュー */
	.subsite_menu {}

	.subsite_menu_ttl {
		font-size: 1.6rem;
		text-align: left;
	}

	.subsite_menu_list ul {
		margin: 0;
		padding: 20px 20px 30px;
		list-style: none;
	}
	.subsite_menu_list ul li {
		margin: 0;
		padding: 15px 0;
		border-bottom: 1px solid var(--list-bordercolor, #cccccc);
	}

	.subsite_menu_list div.link_ichiran {
		margin: 0;
		padding: 0 30px 30px;
	}

	/* サブサイト大小メニュー（開閉） */
	.subsite_menu summary {
		display: list-item;
		pointer-events: auto;
		cursor: pointer;
	}
	.subsite_menu summary a {
		pointer-events: auto;
	}

	.subsite_menu summary:only-child {
		display: block;
		list-style-type: none;
		pointer-events: none;
		cursor: auto;
	}
	.subsite_menu summary:only-child::-webkit-details-marker {
		display: none;
	}
	.subsite_menu summary:only-child a {
		pointer-events: auto;
	}

	/* サブサイト大小メニュー（開閉） ＋－ */
	.subsite_menu summary {
		display: block;
		list-style-type: none;
	}
	.subsite_menu summary::-webkit-details-marker {
		display: none;
	}
	.subsite_menu summary .tti_icon {
		margin: -18px -20px; /* .subsite_menu_ttl の padding の値をマイナスにして指定する */
		padding: 18px 20px;  /* .subsite_menu_ttl の  padding と同じ値を指定する */
		padding-right: 40px;
		display: block;
		background: url("/img/sp/acc_open.png") no-repeat right 20px top 50%;
		background-size: 15px 15px;
	}
	.subsite_menu details[open] summary .tti_icon {
		background-image: url("/img/sp/acc_close.png");
	}

	.subsite_menu summary:only-child .tti_icon,
	.subsite_menu details[open] summary:only-child .tti_icon {
		background: none !important;
	}

	.color_change .subsite_menu summary .tti_icon {
		background-image: url("/img/sp/acc_open_white.png");
	}
	.color_change .subsite_menu details[open] summary .tti_icon {
		background-image: url("/img/sp/acc_close_white.png");
	}

	/* ========== リスト ========== */

	/* リスト（一覧） */
	.info_list ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.info_list ul li {
		margin: 0;
		padding: 15px 20px;
		border-bottom: 1px solid #cccccc;
	}
	.info_list ul li a {
		display: block;
		background: url("/img/sp/arrow_r.png") no-repeat right center transparent;
		background-size: 8px auto;
		padding-right: 15px;
	}

	/* リスト（日付） */
	.info_list.info_list_date ul li {
		display: block;
		width: auto;
	}
	.info_list.info_list_date ul li > span {
		display: block;
	}
	.info_list.info_list_date ul li > span.article_date {
		width: auto;
		padding-top: 0;
	}

	/* リスト（担当課） */
	.article_section {
		display: block;
		text-align: right;
	}
	.article_section a {
		display: inline !important;
		background: none !important;
		padding-right: 0 !important;
		text-decoration: underline !important;
	}

	/* リスト（サムネイル） */
	.list_pack {
		padding-top: 0;
		padding-bottom: 0;
	}
	.list_pack .article_img {
		width: 120px;
	}
	.list_pack .article_img span:empty {
		background-size: 45px auto;
	}
	@media screen and (max-width: 370px) {
		.list_pack .article_img {
			width: 100px;
		}
	}

	/* ========== 背景色変更 ========== */

	/* 共通 */
	.color_change .spm_support_open .header_nav {
		outline: 5px solid rgb(255 255 255 / .5);
		outline-offset: -5px;
	}
	.color_change #spm_wrap button {
		background-image: none;
	}
	.color_change #spm_wrap .opn {
		filter: brightness(100);
		background-image: none;
	}
	.color_change #top_search .gnav ul li a {
		background-image: none;
		outline-color: rgb(255 255 255 / .2);
	}

	/* 黒 */
	.color_black #top_search .gnav ul li a {
		background-color: #333 !important;
	}
	/* 青 */
	.color_blue #top_search .gnav ul li a {
		background-color: #00a !important;
	}

}
/* ==================================================
スマートフォン ここまで
================================================== */