@charset "utf-8";
/* 記事本文 */
@import url("/ssi/css/detail.css");

/* ==================================================
PC
================================================== */

/* var() 関数 */
:root {

	/* コンテンツ幅 */
	--content-width: 1080px;
	/* 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.1em;
	/* 影 */
	--grey-box: 0px 0px 5px #ddd;

	/* フォントファミリー */
	--fontfamily-normal:'UD新丸ゴ Pr6N L', 'UD Shin Maru Go Pr6N L', 'UD新丸ゴ Pr6N', 'UD Shin Maru Go Pr6N', 'BIZ UDPGothic', 'Hiragino Maru Gothic ProN', 'ヒラギノ丸ゴ ProN W4', Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, sans-serif;
	--fontfamily-bold:	'UD新丸ゴ Pr6N B', 'UD Shin Maru Go Pr6N Bold', 'UD新丸ゴ Pr6N', 'UD Shin Maru Go Pr6N', 'BIZ UDPGothic', 'Hiragino Maru Gothic ProN', 'ヒラギノ丸ゴ ProN W4', Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, sans-serif;
	/*--fontfamily-marugo-regular: 'UD新丸ゴ Pr6N R', 'UD Shin Maru Go Pr6N Regular', 'UD新丸ゴ Pr6N', 'UD Shin Maru Go Pr6N', 'BIZ UDPGothic', 'Hiragino Maru Gothic ProN', 'ヒラギノ丸ゴ ProN W4', Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, sans-serif;*/


}
/* var() 関数 ここまで */


/* ========== レイアウト ========== */

/* 全体 */
html {
	scroll-behavior: smooth;
}

body {
	margin: 0px;
	padding: 0px;
	border: 0px;
}

#container {
	width: auto;
	height: auto;
	margin: 0px;
	padding: 0px;
	min-width: var(--content-width, 1080px);
	color: #806237;
	background: #fffaee;
}
/*
:where(#header :is(ul, ol), #footer :is(ul, ol)) {
	list-style: none;
	padding: 0;
	margin: 0;
}
*/

/* ヘッダ */
#header {
	width: auto;
	height: auto;
	margin: 0px;
	padding: 0px;
}

/* フッタ */
#footer {
	clear: both;
	width: auto;
	height: auto;
	margin: 0px;
	padding: 0px;
	background: #674f2c;
	color: #674f2c;
}

/* メイン */
#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, 1080px);
	height: auto;
	margin: 0px auto;
	padding: 0px;
}

#main {
	float: none;
	-webkit-box-ordinal-group: 12;
		-ms-flex-order: 11;
			order: 11;
	width: 100%;
	margin: 0px;
	padding: 0px;
}

#main_a {
	margin: 0px;
	padding: 0px;
}

#main_body {
	margin: 0px;
	padding: 0px;
	box-shadow: var(--grey-box);
}

/* サイド */
#sidebar1 {
	float: none;
	-webkit-box-ordinal-group: 11;
		-ms-flex-order: 10;
			order: 10;
	width: var(--sidebar1-width, 300px);
	margin: 0px;
	padding: 0px;
}

#sidebar2 {
	float: none;
	-webkit-box-ordinal-group: 13;
		-ms-flex-order: 12;
			order: 12;
	width: var(--sidebar2-width, 300px);
	margin: 0px;
	padding: 0px;
}

.tpl_side1 #main {
	width: calc(100% - var(--sidebar1-width, 300px));
}
.tpl_side1 #main_a {
	padding-left: 40px;
}

.tpl_side2 #main {
	width: calc(100% - var(--sidebar2-width, 300px));
}
.tpl_side2 #main_a {
	padding-right: 40px;
}

.tpl_side1.tpl_side2 #main {
	width: calc(100% - var(--sidebar1-width, 300px) - var(--sidebar2-width, 300px));
}
.tpl_side1.tpl_side2 #main_a {
	padding-left: 40px;
	padding-right: 40px;
}
.tpl_side1 hr.hide,
.tpl_side2 hr.hide {
	display: none;
}


/* スマートフォン用 */
#spm_wrap {
}
/* for sp */
.sp_main_menu {
	display: none;
}

/* ヘッダ */
#header {}



#header2 {}


#header2_box {
	width: var(--content-width, 1080px);
	margin: 0px auto;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	min-height: 70px;
	padding-block: 30px;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
}

#he_left {
}

#he_left #logo {
	margin: 0px;
}
#he_left #logo h1,
#he_left #logo p {
	margin: 0px;
}
#he_left #logo a {
	display: block;
}
#he_left #logo img {
	max-width: 100%;
	height: auto;
	display: block;
}

#he_right {
	display: flex;
	gap: 16px;
	justify-content: flex-end;
	align-items: center;
	flex: 0 1 740px;
	padding-top: 15px;
}

/* ---Google検索（基本設定）--- */
.search_ttl {}

.search_ipt {
	display: flex;
	gap: 0;
	background: #ffffff;
	border: 1px solid #ccc0a9;
	border-radius: 5px;
}
.tmp_query {
	border: 0;
	box-sizing: border-box;
}
.cse_submit {
	color: #333333;
	background: url(/img/sites/kosodate/icon_srch.png) center no-repeat #ffffff;
	background-size: 20px 20px;
	border: 0;
	text-indent: -9999em;
	overflow: hidden;
}

/* Google検索（ヘッダー） */
#header_search_keyword {
	display: flex;
	align-items: center;
	column-gap: 10px;
	flex-wrap: wrap;
}

#top_search_keyword .like_ttl_srch span,
#header_search_keyword .like_ttl_srch span {
	color: #806237;
}
#header_search_keyword .like_ttl_srch span {
	font-size: 1.4rem;
}
#top_search_keyword .like_ttl_srch span {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 10px;
	display: block;
}
#header_search_keyword form.gsc-search-box {
	margin: 0px;
	width: 250px;
	height: 3.6rem;
	font-size: 1.2rem;
	line-height: 1.2;
	border-radius: 5px 0px 0px 5px;
}
#top_search_keyword form.gsc-search-box {
	margin: 0px;
	width: 450px;
	height: 4.8rem;
	font-size: 1.4rem;
	line-height: 1.2;
	border-radius: 5px 0px 0px 5px;
}
#header_search_keyword table.gsc-input {
	position: relative;
	height: 3.6rem;
}
#top_search_keyword table.gsc-input {
	position: relative;
	height: 4.8rem;
}
#header_search_keyword .gsc-control-cse,
#top_search_keyword .gsc-control-cse {
	padding: 0;
}
#header_search_keyword .gsc-control-cse,
#header_search_keyword .gsc-control-cse .gsc-table-result,
#top_search_keyword .gsc-control-cse,
#top_search_keyword .gsc-control-cse .gsc-table-result {
	font-size: 1.4rem;
	line-height: 1.3;
}
#header-cse-search-box .cse_submit {
	width: 4rem;
	max-width: 40%;
	padding: 0;
	height: 3.6rem;
	border-radius: 0px 5px 5px 0px;
}
#header_search_keyword .gsib_a,
#top_search_keyword .gsib_a {
	position: relative;
	padding: 3px;
	border: 1px solid #ccc0a9;
	border-radius: 5px 0px 0px 5px;
	border-right: 0;
}
#header_search_keyword .gsib_a::before,
#top_search_keyword .gsib_a::before {
	content: none !important;
}
#header_search_keyword .gsc-input .gsc-input-box,
#top_search_keyword .gsc-input .gsc-input-box {
	border: 0;
}
#header_search_keyword .gsc-search-button {
	display: block !important;
	width: 50px;
	height: 3.6rem;
	background: url(/img/sites/kosodate/icon_srch.png) no-repeat center #fff;
	background-size: 22px auto;
	border-radius: 0px 5px 5px 0px;
	border-color: #ccc0a9;
	border-left-width: 0px;
	margin: 0;
}
#top_search_keyword .gsc-search-button {
	display: block !important;
	width: 50px;
	height: 4.8rem;
	background: url(/img/sites/kosodate/icon_srch.png) no-repeat center #fff;
	background-size: 22px auto;
	border-radius: 0px 5px 5px 0px;
	border-color: #ccc0a9;
	border-left-width: 0px;
	margin: 0;
}
#header_search_keyword .gsc-search-button svg,
#top_search_keyword .gsc-search-button svg {
	display: none !important;
}
#header_search_keyword .gsib_b,
#top_search_keyword .gsib_b {
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
	height: auto;
}
#header_search_keyword .gsst_a,
#top_search_keyword .gsst_a {
	padding: 0px;
}
#header_search_keyword .gsst_a .gscb_a,
#top_search_keyword .gsst_a .gscb_a {
	color: #333;
	padding: 0;
	margin: 0;
	width: 20px;
	height: 20px;
}

/* Google検索（展開） */
#mega_search {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 1080px;
	width: 100%;
	gap: 20px 60px;
	padding: 40px 0;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
}

#cse-search-box .search_ttl {
	font-size: 2.0rem;
	font-family: var(--fontfamily-bold);
	font-weight: bold;
	line-height: 1;
	margin-bottom: 12px;
	display: block;
}

/* キーワード検索 */
#top_search_keyword,
#top_search_page_id {
	text-align: left;
	background: #ffffff;
	padding: 20px 30px;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
	border-radius: 15px;
	box-shadow: var(--grey-box);
}
#cse-search-box .search_ipt {
	width: 450px;
	max-width: 100%;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
	background: #ffffff;
	border: 1px solid #ccc0a9;
	border-radius: 10px;
}
#cse-search-box .tmp_query {
	width: 410px;
	max-width: 100%;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
	height: 4.8rem;
	font-size: 1.6rem;
	line-height: 1.2;
	border-radius: 10px 0px 0px 10px;
}
#cse-search-box .cse_submit {
	width: 4rem;
	max-width: 40%;
	padding: 0;
	height: 4.8rem;
	border-radius: 0px 10px 10px 0px;
}

.cse_filetype {
	margin-top: 15px;
}
.cse_filetype fieldset {
	border: none;
	margin: 0px;
	padding: 0px;
}
.cse_filetype fieldset legend {
	display: none;
	margin: 0px;
	padding: 0px;
}
.cse_filetype fieldset span {
	font-size: 1.6rem;
	display: inline-block;
	vertical-align: middle;
}
.cse_filetype fieldset span input {
	margin: 3px 4px 5px 5px;
	vertical-align: middle;
}

/* ページID検索 */
#top_search_page_id {

}

#open_page_id_box .search_ttl {
	font-size: 2.0rem;
	font-family: var(--fontfamily-bold);
	font-weight: bold;
	line-height: 1;
	margin-bottom: 12px;
	display: block;
}

#open_page_id_box .search_ipt {
	display: flex;
	gap: 0;
	border: 1px solid #ccc0a9;
	border-radius: 10px;
	width: 450px;
	max-width: 100%;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
	background: #ffffff;
}
#open_page_id {
	width: 410px;
	max-width: 100%;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
	height: 4.8rem;
	font-size: 1.6rem;
	line-height: 1.2;
	border: 0;
	border-radius: 10px 0px 0px 10px;
}
#open_page_id_submit {
	background-size: 11px 14px;
	width: 4rem;
	max-width: 40%;
	padding: 0;
	height: 4.8rem;
	display: inline-block;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #333333;
	background: url(/img/sites/kosodate/icon_srch.png) center no-repeat #ffffff;
	background-size: 20px 20px;
	border: 0;
	text-indent: -9999em;
	overflow: hidden;
	border-radius: 0px 10px 10px 0px;
}

#open_page_id_message {
	margin-top: 15px;
}
#open_page_id_message:empty {
	display: none;
}
.open_page_id_about {
	font-size: 1.5rem;
}
#top_search_page_id .open_page_id_about a {
	text-decoration: none;
	padding-left: 20px;
	background: url(/img/sites/kosodate/icon_arr_circle.png) no-repeat left center / 15px 15px;
}

/* 共通メニュー */
.common_menu_list {
	display: flex;
	align-items: center;
	justify-content: flex-end;
		flex-direction: row-reverse;
	gap: 15px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.common_menu_list > li {
	position: relative;
	list-style: none;
}
.common_menu_list > li#common_menu_list_search {
	display: none;
}
.common_menu_list > li > a,
.common_menu_list > li > button {
	display: block;
	padding: 10px 13px 8px;
	padding-left: 35px;
	color: #674f2c;
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-position: left 10px center;
	background-color: #fec494;
	font-size: 1.4rem;
	text-decoration: none;
	cursor: pointer;
	border-radius: 5px;
	border: 1px solid transparent;
	transition: border-color 0.3s ease;
}
.common_menu_list > li.link_yasumi > a {
	background-image: url(/img/sites/kosodate/icon_yasumi.png);
}
.common_menu_list > li#common_menu_list_main_menu > button {
	background-image: url(/img/sites/kosodate/icon_menu.png);
}

@media (hover: hover) {
	.common_menu_list > li > a:hover,
	.common_menu_list > li > button:hover {
		border-color: #806237;
	}
}

/*
.color_black .common_menu_list [id^="c_btn_"] {
	background-color: #333333 !important;
}
.color_blue .common_menu_list [id^="c_btn_"] {
	background-color: #0000aa !important
}
*/
/* 閉じるボタン */
#mega_menu .btn_close {
	background: url(/img/sites/kosodate/icon_close_btn.png) no-repeat center left 10px #ffc494;
	border: 1px solid transparent;
	border-radius: 10px;
	display: block;
	line-height: 1;
	padding: 15px 35px 15px 65px;
	margin: 30px auto 0;
	text-align: center;
	transition: border-color 0.4s ease;
}
#mega_menu .btn_close:hover {
	border-color: #806237;
}

/* もしもの時に */
#safety_menu {
	display: none;
	box-shadow: 0 0 10px rgba(0, 0, 0, .2);
	background: white;
	position: absolute;
	right: 0;
	top: calc(1.4rem + 30px);
	width: 24rem;
	padding: 5px 10px 12px;
	z-index: 10;
}

.open_menu_safety #safety_menu {
	display: block;
}


.safety_menu_list {
	padding: 0;
}

.safety_menu_list li {
	list-style: none;
	border-bottom: 1px solid var(--sd-border);
}

.safety_menu_list a {
	color: var(--text-color) !important;
	font-size: 1.5rem;
	display: grid;
	align-items: center;
	grid-template-columns: 25px auto;
	gap: 15px;
	padding: 10px;
	text-decoration: none !important;
}

.safety_menu_list a:hover,
.safety_menu_list a:focus {
	text-decoration: underline !important;
}

.safety_menu_list a::before {
	content: '';
	display: inline-block;
	aspect-ratio: 1/1;
	width: 25px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.safety_menu_list #safety_icon_firstaid a::before {
	background-image: url(/img/sodegaura/safety-icon-firstaid.png);
}

.safety_menu_list #safety_icon_medical a::before {
	background-image: url(/img/sodegaura/safety-icon-medical.png);
}

.safety_menu_list #safety_icon_holiday-doctor a::before {
	background-image: url(/img/sodegaura/safety-icon-holiday-doctor.png);
}

.safety_menu_list #safety_icon_disaster a::before {
	background-image: url(/img/sodegaura/safety-icon-disaster.png);
}

.safety_menu_list #safety_icon_hazard a::before {
	background-image: url(/img/sodegaura/safety-icon-hazard.png);
}

.safety_menu_list #safety_icon_shelter a::before {
	background-image: url(/img/sodegaura/safety-icon-shelter.png);
}

.safety_menu_list #safety_icon_safe-mail a::before {
	background-image: url(/img/sodegaura/safety-icon-safe-mail.png);
}

.safety_menu_list #safety_icon_broadcast a::before {
	background-image: url(/img/sodegaura/safety-icon-broadcast.png);
}

.safety_menu_list #safety_icon_weather a::before {
	background-image: url(/img/sodegaura/safety-icon-weather.png);
}

/* メガメニュー */
#mega_menu {
	transform: translateY(-100%);
	visibility: hidden;
	background: #fffaee;
	position: fixed;
top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	/*
	width: 100%;
	height: 100vh;
	height: 100dvh;
	*/
	transition: transform 0.3s, visibility 0.3s;
	z-index: 99;
	overflow-y: auto;
	overscroll-behavior: none;
	padding: 0 0 40px;
}

.menu_open #mega_menu {
	transform: translateY(0);
	visibility: visible;
}

#mega_menu_box {
	width: var(--content-width, 1080px);
	margin: 0px auto;
}

#mega_support {
	display: flex;
	justify-content: space-between;
	padding: 40px 0 30px;
	border-bottom: 2px solid #ccc0a9;
}
#mega_support a {
	text-decoration: none;
}
#mega_support a:hover {
	text-decoration: underline;
}
.h_lang a {
	background: white;
	border: 1px solid #ccc0a9;
	border-radius: 10px;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4rem;
	line-height: 1;
	min-width: 300px;
	min-height: 50px;
	padding: 14px;
	text-align: center;
}

.h_lang a::before {
	content: '';
	display: inline-block;
	background: url(/img/sites/kosodate/icon_global.png) center no-repeat;
	aspect-ratio: 1/1;
	width: 20px;
	vertical-align: middle;
	margin-right: 10px;
}


/* アクセシビリティ機能 */
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;
	min-width: 5em;
	font-size: 1.5rem;
	line-height: 1;
	margin: 0px 15px 0px 0px;
}
dl#haikei_color dt {
	min-width: 4em;
}
dl#moji_size dd,
dl#haikei_color dd {
	margin: 0;
}
dl#moji_size dd a,
dl#haikei_color dd a {
	background: #ffffff;
	border: 1px solid #ccc0a9;
	box-sizing: border-box;
	display: grid;
	place-items: center;
	padding: 14px;
	font-size: 1.4rem;
	line-height: 1;
	min-height: 50px;
	text-align: center;
}

dl#moji_size dd {
	min-width: 100px;
}
dl#moji_size dd a#moji_default {
	border-radius: 10px 0px 0px 10px;
}
dl#moji_size dd a#moji_large {
	border-radius: 0px 10px 10px 0px;
	border-left: none;
}
.font_size_limit_max dl#moji_size dd a#moji_large {
	background: #e7e7e7;
	color: #666666;
}
dl#haikei_color dd {
	min-width: 88px;
}
dl#haikei_color dd a#haikei_white {
	border-radius: 10px 0px 0px 10px;
	background: #ffffff !important;
	color: #333333 !important;
}
dl#haikei_color dd a#haikei_black {
	border-color: #000000;
	background: #000000 !important;
	color: #ffffff !important;
}
dl#haikei_color dd a#haikei_blue {
	border-color: #0000ff;
	background: #0000ff !important;
	color: #ffff00 !important;
	border-radius: 0px 10px 10px 0px;
}



/* 注目ワード */
#mega_trend_word {
	grid-column: 1 / 3;
	font-size: 1.8rem;
}

.trend_word_box p {
	margin: 0px;
	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;
	gap: 20px;
}

.trend_word_box p a {
	display: inline-block;
	vertical-align: top;
	margin: 0px;
	padding: 10px 20px;
	border: 1px solid transparent;
	background: white;
	color: var(--text-color);
	text-decoration: none;
	cursor: pointer;
	border-radius: 9999px;
	line-height: 1;
}

.trend_word_box p a:hover,
.trend_word_box p a:focus {
	text-decoration: underline;
}



/* グローバルナビ（メガメニュー） */
#mega_navi {
	border-top: 1px solid var(--sd-border);
	padding: 40px 0;
	--sd-active: #badcba;
}

#mega_navi_global {

}

#mega_navi_global .search_life3 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: min-content;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--sd-border);
	border-left: 1px solid var(--sd-border);
}

#mega_navi_global .search_life3 > li {
	display: contents;
}

#mega_navi_global .search_life3 > li > a {
	background-color: white;
	background-repeat: no-repeat;
	background-position: right 30px center;
	background-size: 15px auto;
	border-right: 1px solid var(--sd-border);
	border-bottom: 1px solid var(--sd-border);
	box-sizing: border-box;
	color: var(--text-color);
	cursor: pointer;
	font-size: 1.8rem;
	display: flex;
	align-items: center;
	padding: 8px 45px 8px 20px;
	min-height: 70px;
	text-decoration: none;
	position: relative;
	line-height: 1.2;
}

#mega_navi_global .search_life3 > li:has(.search_life2) > a {
	background-image: url(/img/sp/acc_open.png);
}

#mega_navi_global .search_life3 > li.is_active > a {
	background-image: url(/img/sp/acc_close.png);
}

#mega_navi_global .search_life3 > li.is_active > a::before {
	display: block;
	content: '';
	border-bottom: 12px solid var(--sd-active);
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	position: absolute;
	left: 50%;
	bottom: -1px;
	transform: translateX(-50%);
	z-index: 1;
}

#mega_navi_global .search_life3 > li > a:hover,
#mega_navi_global .search_life3 > li > a:focus {
	text-decoration: underline;
}

#mega_navi_global .search_life2 {
	display: none;
	box-sizing: border-box;
	grid-column: 1 / 5;
	flex-wrap: wrap;
	gap: 20px 56px;
	padding: 30px 30px;
	margin: 0;
	background: var(--sd-brand-light);
	border: 4px solid var(--sd-active);
	list-style: none;
}

#mega_navi_global .search_life3 > li.is_active > .search_life2 {
	display: flex;
}

#mega_navi_global .search_life2 > li a {
	background: url(/img/sodegaura/icon_link.png) left center / 10px auto no-repeat;
	color: var(--text-color);
	display: block;
	font-size: 1.6rem;
	padding: 0 0 0 20px;
	text-decoration: none;
}

#mega_navi_global .search_life2 > li a:hover,
#mega_navi_global .search_life2 > li a:focus {
	text-decoration: underline;
}

#mega_navi_global .search_life3 > li:nth-child(-n+4) > a {
	grid-row: 1;
}

#mega_navi_global .search_life3 > li:nth-child(-n+4) > .search_life2 {
	grid-row: 2;
}

#mega_navi_global .search_life3 > li:nth-child(n+5):nth-child(-n+8) > a {
	grid-row: 3;
}

#mega_navi_global .search_life3 > li:nth-child(n+5):nth-child(-n+8) > .search_life2 {
	grid-row: 4;
}

/* サブメニュー */
#mega_navi_sub {
	margin-top: 40px;
}

#mega_navi_sub .subnav {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: min-content;
	gap: 0 40px;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

#mega_navi_sub .subnav > li {
	display: contents;
}

#mega_navi_sub .subnav > li > a,
#mega_navi_sub .subnav > li > button {
	background-color: white;
	background-repeat: no-repeat;
	background-position: right 30px center;
	background-size: 15px auto;
	border: 1px solid var(--sd-border);
	box-sizing: border-box;
	color: var(--text-color);
	cursor: pointer;
	font-size: 1.8rem;
	display: flex;
	align-items: center;
	padding: 8px 20px;
	min-height: 70px;
	text-decoration: none;
	position: relative;
	line-height: 1.2;
	width: 100%;
}

#mega_navi_sub .subnav > li:has(ul) > a,
#mega_navi_sub .subnav > li:has(ul) > button {
	background-image: url(/img/sp/acc_open.png);
	padding: 8px 45px 8px 20px;
}

#mega_navi_sub .subnav > li.is_active > a,
#mega_navi_sub .subnav > li.is_active > button {
	background-image: url(/img/sp/acc_close.png);
}

#mega_navi_sub .subnav > li.is_active > button::before {
	display: block;
	content: '';
	border-bottom: 12px solid var(--sd-active);
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	position: absolute;
	left: 50%;
	bottom: -1px;
	transform: translateX(-50%);
	z-index: 1;
}

#mega_navi_sub .subnav > li > a:hover,
#mega_navi_sub .subnav > li > a:focus,
#mega_navi_sub .subnav > li > button:hover,
#mega_navi_sub .subnav > li > button:focus {
	text-decoration: underline;
}

#mega_navi_sub .subnav > li > ul {
	display: none;
	box-sizing: border-box;
	grid-column: 1 / 4;
	flex-wrap: wrap;
	gap: 20px 56px;
	padding: 30px 30px;
	margin: 0;
	background: var(--sd-brand-light);
	border: 4px solid var(--sd-active);
	list-style: none;
}

#mega_navi_sub .subnav > li.is_active > ul {
	display: flex;
}

#mega_navi_sub .subnav > li.is_active > ul > li a {
	background: url(/img/sodegaura/icon_link.png) left center / 10px auto no-repeat;
	color: var(--text-color);
	display: block;
	font-size: 1.6rem;
	padding: 0 0 0 20px;
	text-decoration: none;
}

#mega_navi_sub .subnav > li.is_active > ul > li a:hover,
#mega_navi_sub .subnav > li.is_active > ul > li a:focus {
	text-decoration: underline;
}

#mega_navi_sub .subnav > li:nth-child(-n+3) > button,
#mega_navi_sub .subnav > li:nth-child(-n+3) > a {
	grid-row: 1;
}
#mega_navi_sub .subnav > li:nth-child(-n+3) > ul {
	grid-row: 2;
}

#mega_navi_sub .subnav > li:nth-child(n+4):nth-child(-n+6) > button,
#mega_navi_sub .subnav > li:nth-child(n+4):nth-child(-n+6) > a {
	grid-row: 3;
}
#mega_navi_sub .subnav > li:nth-child(n+4):nth-child(-n+6) > ul {
	grid-row: 4;
}

/* グローバルナビ（ヘッダー） */
#top_search {
	border-top: 1px solid var(--sd-bg);
	border-bottom: 1px solid var(--sd-bg);
	font-family: var(--fontfamily-bold);
}

#top_search .gnav ul {
	width: var(--content-width, 1080px);
	margin: 0px auto;
	padding: 20px 0px;
	list-style: none;
	display: flex;
	justify-content: space-between;
}
#top_search .gnav ul li {
	border-right: 1px solid var(--sd-border);
	list-style: none;
	flex-grow: 1;
	text-align: center;
}
#top_search .gnav ul li:first-child {
	border-left: 1px solid var(--sd-border);
}
#top_search .gnav ul li a {
	color: var(--text-color);
	text-decoration: none;
	display: block;
	line-height: 1.25;
	padding: 0 8px;
}
#top_search .gnav ul li a:hover,
#top_search .gnav ul li a:focus {
	text-decoration: underline;
}

#top_search ul.search_life2 {
	display: none;
}

/* グローバルナビ（動的メニュー） */
#context_category02,
#context_category01 {
	display: none;
}

/* ===== フッタ ===== */

/* フッタ */
#footer {
	background: #ffc494;
	color: #674f2c;
}

#author_info_box {
	width: var(--content-width, 1080px);
	margin: 0px auto;
	padding: 0px 0px 45px;
	position: relative;
	display: grid;
	grid-template-columns: 250px auto;
	gap: 20px 40px;
}
#author_box p {
	margin: 0px 0px 8px;
}
#author_box a.home_link {
	display: inline-block;
	padding: 3px 3px 3px 30px;
	background: url(/img/sites/kosodate/icon_arr_circle.png) no-repeat left center;
	text-decoration: none;
}
#author_box a.home_link:hover {
	text-decoration: underline;
}


/* コピーライト */
#copyright {
	border-top: 1px solid #806237;
	margin: 0px;
	padding: 25px 15px;
	text-align: center;
}
#copyright p {
	font-size: 1.2rem;
	letter-spacing: 0.1em;
	margin: 0px;
}

/* ページトップ */
#btn_pagetop {
	position: relative;
	top: -30px;
	text-align: right;
	max-width: 1080px;
	margin: 0 auto;
}
#btn_pagetop a {
	display: inline-block;
}
/* 戻る・ページトップ */
#back_or_pagetop {
	width: var(--content-width, 1080px);
	margin: 0px auto;
	text-align: right;
	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: end;
		-ms-flex-align: end;
			align-items: flex-end;
}
#back_or_pagetop > div {
	display: inline-block;
	vertical-align: bottom;
	margin-left: 10px;
}
#back_or_pagetop > div a {
	display: block;
	background: #e6e6e6;
	color: #333333;
	font-size: var(--fontsize-main-small, 1.5rem);
	line-height: 2rem;
	text-align: center;
	padding: 10px 20px;
	width: 10em;
}

/* ========== 基本設定 ========== */

/* フォント */
html {
	font-size: var(--fontsize-main-base, 62.5%);
}

body,
button,
input,
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,
.kakuka_info_ttl,
.life_cat_list_ttl,
.subsite_menu_ttl,
.site_name,
#main_body table.tbl_ques caption,
#main_body table#mail_form_tbl caption {
	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フォント使用時） */
input,
textarea,
select,
#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: 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: var(--text-color, #333333);
}

/* リンク */
a:link {
	color: #806237;
	text-decoration: underline;
}

a:visited {
	color: #806237;
	text-decoration: underline;
}

a:active {
	color: #674f2c;
	text-decoration: none;
}

a:hover,
a:focus {
	color: #674f2c;
	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;
}

/* ===== 2 ヘッダ / フッタ ===== */

/* 「 parts-header-footer 」 参照 */

/* ===== 3 パンくず / 足あと ===== */

/* パンくず・足あと */
#pankuzu_wrap {
	background: #ffebdb;
	padding: 20px 0px 10px;
	font-size: var(--fontsize-main-small, 1.5rem);
}

#pankuzu_wrap > div {
	width: var(--content-width, 1080px);
	margin: 0px auto 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.pankuzu,
#footstep {
	position: relative;
	padding-left: 6rem;
}

.pankuzu .icon_current {
	display: none;
}

.pankuzu:first-child .icon_current,
#footstep_ttl {
	display: flex;
	width: 5rem;
	height: auto;
	min-height: 2rem;
	border: 1px solid #ccc0a9;
	border-radius: 0;
	background:#fff;
	color: #806237;
	font-size: 1.3rem;
	line-height: 1.6rem;
	padding: 0.4rem 0px;
	text-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	left: 0px;
	justify-content: center;
	align-items: center;
	pointer-events: none;
}

#clear_footstep {
	width: 24px;
	height: 24px;
	border-radius: 100%;
	border: 2px solid #ffffff;
	background: url("/img/common/icon_clear.png") no-repeat center center #333333;
	background-size: 10px 10px;
	color: #ffffff;
}

/* ===== 4 メイン ===== */

/* メイン */
#mymainback {
	padding-top: 30px;
	padding-bottom: 90px;
}

/* 見出し */
#main_header {
	margin-bottom: var(--content-margin-narrow, 30px);
}

#main_header h1 {
	margin: 0px;
	padding: 20px 0px 30px;
	font-size: 3.2rem;
	text-align: center;
	color: #806237;
	background: url(/img/sites/kosodate/bg_line.png) no-repeat center bottom;
}

#main_body :where(h2, h3, h4, h5, h6),
.kakuka_info_ttl,
.life_cat_list_ttl {
	clear: both;
	margin: 1em 0px;
}

.life_cat_list_ttl {
	margin: 0px;
}

#main_body .toc_link_wrap {
	display: block;
	background: #ffffff;
}
.toc_link_wrap {
	border: 1px solid #cccccc;
	border-radius: 15px;
}
.toc_link_wrap summary::marker {
	color: #333333;
}
#main_body {
	padding: 30px;
	background: #ffffff;
	border-radius: 20px;
}
#main_body h2 {
	padding: 21px 30px 20px;
  	background: #ffebdb;
  	font-size: 2.6rem;
  	border-bottom: 1px solid #ccc0a9;
  	border-radius: 20px 20px 0px 0px;
}

#main_body h3 {
	padding: 15px 0;
	font-size: 2.4rem;
	position: relative;
	border-bottom: 3px solid #ccc0a9;
	border-radius: 3px;
}

#main_body h3::before {
	content: "";
	position: absolute;
	bottom: -3px;
	left: 0px;
	width: 150px;
	height: 0px;
	border-bottom: 3px solid #ffc494;
	border-radius: 3px 0px 0px 3px;
}

#main_body h4 {
	padding: 14px 0 12px;
	border-bottom: 2px solid #ccc0a9;
	font-size: 2.2rem;
}

#main_body h5 {
	padding: 7px 12px 6px;
	font-size: 2.0rem;
	position: relative;
}
#main_body h5:before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0px;
	width: 4px;
	height: 60%;
	background: #ffc494;
	border-radius: 3px;
}
#main_body h6 {
	padding: 3px 12px 2px;
	font-size: 1.8rem;
	position: relative;
}
#main_body h6:before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0px;
	width: 4px;
	height: 60%;
	background: #ccc0a9;
	border-radius: 3px;
}
/* テーブル */
#main_body table {
	border-color: var(--table-bordercolor, #333333);
	border-collapse: collapse;
	border-style: solid;
	border-width: 2px;
	/* CMSver5以降は管理画面で枠線の太さを変更することができない（機能が削除された）ためCSSで指定 */
	margin: 0px 0px 1em;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#main_body th {
	background: var(--table-th-background, #f6f6f6);
	color: var(--table-th-color, #333333);
	border-color: var(--table-bordercolor, #333333);
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 0.5em;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#main_body td {
	border-color: var(--table-bordercolor, #333333);
	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: 0px 0px 1em;
}

#main_body table p:last-child {
	margin: 0px;
}


/* ========== メイン ========== */

/* メイン */
#mymainback {
	padding-top: 30px;
	padding-bottom: 60px;
}

/* コンテンツヘッダ */
#content_header {
	margin: 0px 0px 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/common/icon_print.png") no-repeat left center transparent;
	padding-left: 20px;
}
#view_print_mode #main_body {
	padding: 20px;
}

/* SDGsアイコン */
.d-flex.f-wrap-wrap,
.sdgs-icons {
	margin: 0px 0px 20px;
	text-align: left;
}
.d-flex.f-wrap-wrap > *,
.sdgs-icons > * {
	display: inline-block;
	vertical-align: top;
	margin: 0px 5px 5px 0px;
	width: 100px;
}

.d-flex.f-wrap-wrap img,
.sdgs-icons img {
	width: 100px;
	height: auto;
	vertical-align: top;
}
.d-flex.f-wrap-wrap > * img,
.sdgs-icons > * img {
	display: block;
	margin: 0px;
	width: 100%;
	height: auto;
}

/* カレンダー登録 */
#calendar_button_google,
#calendar_button_yahoo {
	display: inline-block;
	vertical-align: top;
	margin: 40px 30px 0px 0px;
}
#calendar_button_google a,
#calendar_button_yahoo a {
	display: inline-block;
	font-size: var(--fontsize-main-small, 1.5rem);
	line-height: 2rem;
	padding: 5px 0px 5px 35px;
	background: url("/img/common/icon_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 0px 0px;
	width: 100%;
	display: table;
}
.pdf_download .pdf_img,
.wmplayer_download .wmplayer_img {
	display: table-cell;
	vertical-align: middle;
	width: 158px;
	margin: 0px;
	padding: 0px;
}
.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: 0px;
	padding: 2px 0px 2px 10px;
	font-size: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0em;
}

/* 評価エリア */
#hyouka_area_box {
	clear: both;
	margin: 40px 0px 0px;
	padding: 30px;
	background: #f6f6f6;
}

#hyouka_area_box h2,
#main_body #hyouka_area_box h2 {
	margin: 0px 0px 15px;
	padding: 0px;
	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: 0px;
}

#hyouka_area_box .hyouka_box_detail {
	border-bottom: 1px solid #dddddd;
	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: 0px;
}
#hyouka_area_box .hyouka_box_detail fieldset {
	border: none;
	margin: 0px;
	padding: 0px;
}
#hyouka_area_box .hyouka_box_detail fieldset legend {
	margin: 0px 0px 5px;
	padding: 0px;
	width: 100%;
}
#hyouka_area_box .hyouka_box_detail fieldset span {
	display: inline-block;
	vertical-align: top;
	margin: 0px 4em 0px 0px;
}
#hyouka_area_box .hyouka_box_detail fieldset span:first-of-type {
	min-width: 11em;
}
.font_size_changed #hyouka_area_box .hyouka_box_detail fieldset span:first-of-type {
	min-width: auto;
}
#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: 0;
	background: #ffffff;
	color: #333333;
	margin: 0px;
	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 0px 0px;
	border-radius: 30px;
	border: 2px solid #ccc0a9;
}

#section_footer h2,
#main_body #section_footer h2 {
	margin: 0px 0px 15px;
	padding: 20px 30px;
	border: none;
	border-radius: 27px 27px 0px 0px;
	background: #ebddc3;
	color: #674f2c;
	font-size: 2rem;
}
#main_body #section_footer h2::before,
#main_body #section_footer h2::after {
	display: none;
}
#main_body #section_footer hr.cf {
	margin: 0px;
}
#section_footer_detail {
	padding: 10px 30px 30px;
}
#section_footer_detail span {
	display: inline-block;
	vertical-align: top;
	margin-right: 1em;
}
#section_footer_detail span[class*="sf_name"] {
	margin-bottom: 10px;
}

/* おすすめコンテンツ */
#osusume_contents_area {
	clear: both;
}
#osusume_contents_area .second_osusume {
	margin: 40px 0px 0px;
	padding: 30px;
	background: #f6f6f6;
}
#osusume_contents_area .second_osusume h2,
#osusume_contents_area .second_osusume_ttl {
	margin: 0px 0px 20px;
	padding: 0px 0px 0px 25px;
	background: url("/img/common/icon_osusume.png") no-repeat left center transparent;
	color: inherit;
	font-size: 2rem;
}
#osusume_contents_area .second_osusume ul {
	margin: 0px;
	padding: 0px 10px;
	list-style: none;
	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;
	gap: 30px;
}
#osusume_contents_area .second_osusume ul li {
	width: 200px;
}
#osusume_contents_area .second_osusume ul li div > span {
	display: block;
}
#osusume_contents_area .second_osusume ul li div > span.osusume_img {
	margin-bottom: 10px;
}
#osusume_contents_area .second_osusume ul li div > span.osusume_img img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

/* ========== サイド ========== */

/* サイドバー */
#sidebar1 > div,
#sidebar2 > div {
	margin-bottom: 20px;
}
#sidebar1 > div:last-child,
#sidebar2 > div:last-child,
#sidebar1 > div:empty,
#sidebar2 > div:empty {
	margin-bottom: 0px !important;
}

#sidebar1 img,
#sidebar2 img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

/* 自由編集項目 */
.free_box {
	display: flow-root;
}
.free_box p {
	margin: 0px 0px 1em;
}
.free_box p:last-child {
	margin-bottom: 0px;
}
.free_box img {
	max-width: 100%;
	height: auto !important;
	vertical-align: top;
}

/* 重要なお知らせ */
#important_noticest_area .second_important {
	background: #fdf2f2;
	padding: 30px 20px;
}
#important_noticest_area .second_important a {
	color: #cc0000;
}

#important_noticest_area .second_important h2,
#important_noticest_area .second_important_ttl {
	margin: 0px 0px 15px;
	padding: 0px;
	color: #cc0000;
	font-size: 2rem;
	text-align: center;
}

#important_noticest_area .second_important ul {
	margin: 0px 0px 15px;
	padding: 0px;
	list-style: none;
}
#important_noticest_area .second_important ul li:last-child {
	margin-bottom: 0px;
}
#important_noticest_area .second_important ul li > span {
	display: block;
}
#important_noticest_area .second_important ul li > span.article_date {
	font-size: var(--fontsize-main-small, 1.5rem);
}

#important_noticest_area .second_important .link_box {
	margin-top: 20px;
	text-align: right;
}
#important_noticest_area .second_important .link_box > span {
	display: block;
	margin-top: 5px;
}
#important_noticest_area .second_important .link_box > span a {
	font-size: var(--fontsize-main-small, 1.5rem);
}

/* カウントダウン */
#count_down_area .count_down_box {
	background: #f6f6f6;
	margin: 0px 0px 15px;
	padding: 20px;
	position: relative;
}
#count_down_area .count_down_box:last-child {
	margin-bottom: 0px;
}

#count_down_area .count_down_box2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	-webkit-box-align: start;
		-ms-flex-align: start;
			align-items: flex-start;
}
#count_down_area .count_down_box2 > span {
	display: inline-block;
	vertical-align: top;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}

#count_down_area .count_down_box2 > span.count_img {
	width: 100px;
}
#count_down_area .count_down_box2 > span.count_img > span {
	display: block;
}
#count_down_area .count_down_box2 > span.count_img > span img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

#count_down_area .count_down_box2 > span.count_txt {
	width: calc(100% - 120px);
}
#count_down_area .count_down_box2 > span.count_txt:only-child {
	width: 100%;
}
#count_down_area .count_down_box2 > span.count_txt > span {
	display: block;
}
#count_down_area .count_down_box2 > span.count_txt > span.count_comment {
	margin-top: 10px;
	font-size: 1.4rem;
}
#count_down_area .count_down_box2 > span.count_txt > span.count_day {
	margin-top: 10px;
	color: #cc0000;
	font-weight: bold;
	text-align: right;
}
#count_down_area .count_down_box2 > span.count_txt > span.count_day span {
	font-size: 3rem;
	line-height: 1;
	margin-left: 0.5em;
	margin-right: 0.25em;
}

/* カウントダウン クリアボタン */
#count_down_area .count_down_clear {
	display: block;
	width: 24px;
	height: 24px;
	margin: 0px;
	padding: 0px;
	border: 2px solid #ffffff;
	background: url("/img/common/icon_clear.png") no-repeat center center #333333;
	background-size: 10px 10px;
	border-radius: 100%;
	color: #ffffff;
	line-height: 1;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
	cursor: pointer;
	position: absolute;
	top: 0px;
	right: 0px;
}
/* カウントダウン クリアボタンを使用しない */
#count_down_area .count_down_clear {
	display: none;
}

/* レコメンド・AIレコメンド */
#sidebar_recommend,
#sidebar_ai_recommend {
	background: #f6f6f6;
}

#recommend_title,
#ai_recommend_title {
	background: #e6e6e6;
	text-align: center;
	padding: 10px 5px;
}
#recommend_title h2,
#ai_recommend_title h2 {
	display: inline-block;
	text-align: left;
	font-size: 1.6rem;
	line-height: 2rem;
	margin: 0px;
	padding: 5px 0px 5px 40px;
}
#recommend_title h2 {
	background: url("/img/common/icon_recommend.png") no-repeat left center transparent;
	color: inherit;
}
#ai_recommend_title h2 {
	background: url("/img/common/icon_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: 0px;
	padding: 0px;
	list-style: none;
}
#sidebar_recommend ul li,
#sidebar_ai_recommend ul li {
	display: block;
	border-top: 1px solid #ffffff;
	padding: 15px 20px;
}

/* 関連リンク */
#kanren_link {
	margin: 30px 0px 0px;
	box-shadow: var(--grey-box);
	border-radius: 20px;
	background: #ffffff;
}
#kanren_link h2 {
	background: #ffebdb;
	color: #674f2c;
	font-size: 2rem;
	text-align: center;
	margin: 0px 0px 10px;
	padding: 18px 30px;
	border-bottom: 1px solid #ccc0a9;
	border-radius: 20px 20px 0px 0px;
}
#kanren_link ul {
	margin: 0px;
	padding: 0px 30px 20px;
	list-style: none;
}
#kanren_link ul li {
	padding: 3px 0px;
}
#kanren_link ul li + li {
	border-top: 1px solid #ccc0a9;
}
#kanren_link ul li a {
	display: block;
	padding: 7px 20px 7px 0px;
	background: url(/img/sites/kosodate/icon_arr_circle.png) no-repeat center right 5px;
	text-decoration: none;
}
#kanren_link ul li a:hover {
	text-decoration: underline;
}
/* 「見つからないときは」「よくある質問」バナー */
.common_banner_link ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.common_banner_link *[class*="common_banner_"] {
	margin-bottom: 15px;
}
.common_banner_link *[class*="common_banner_"]:last-child {
	margin-bottom: 0px;
}
.common_banner_link a {
	display: block;
	border: 1px solid transparent;
	background: #e6e6e6;
	color: #333333;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.8rem;
	letter-spacing: 0.1em;
	padding: 20px 5px;
	text-align: center;
}
.common_banner_link a > span {
	display: inline-block;
	padding: 5px 0px 5px 40px;
}
.common_banner_link .common_banner_mitsukaranai a > span {
	background: url("/img/common/icon_mitsukaranai.png") no-repeat left center transparent;
	color: inherit;
}
.common_banner_link .common_banner_faq a > span {
	background: url("/img/common/icon_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: #f6f6f6;
	margin: 0px 0px 20px;
}
.subsite_menu:last-child {
	margin-bottom: 0px;
}

.subsite_menu_ttl {
	background: #e6e6e6;
	margin: 0px;
	padding: 18px 20px;
	font-size: 1.6rem;
	text-align: center;
}
.subsite_menu_ttl a {
	color: inherit;
}

.subsite_menu_list ul {
	margin: 0px;
	padding: 20px 20px 20px 40px;
}
.subsite_menu_list ul li {
	margin: 0px 0px 15px;
}
.subsite_menu_list ul li:last-child {
	margin-bottom: 0px;
}

.subsite_menu_list div.link_ichiran {
	margin: 0px;
	padding: 0px 35px 25px;
	text-align: center;
}
.subsite_menu_list div.link_ichiran a {
	display: block;
}

/* サブサイト大小メニュー（開閉） */
.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: 0px;
	padding: 0px;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	align-content: flex-start;
	gap: 20px 50px;
}
.info_list ul li {
	margin: 0px;
	width: calc(50% - 25px);
	min-width: 300px;
}
.info_list ul li a {
	display: block;
	text-decoration: none;
}
.info_list ul li a:hover {
	text-decoration: underline;
}
.tpl_site_list_2 #main_body {
	background: none;
	padding: 0px;
	box-shadow: none;
}
.tpl_site_list_2 .info_list ul li a {
	border-radius: 15px;
	padding: 20px 15px;
	padding-right: 50px;
	background: url(/img/sites/kosodate/icon_arr_circle.png) no-repeat center right 20px #ffffff;
	box-shadow: 0px 2px 4px #cccccc;
}
/* リスト（日付） */
.info_list.info_list_date ul {

}
.info_list.info_list_date ul li {
	padding: 0px 0px 20px;
	border-bottom: 1px solid #ccc0a9;
}
.info_list.info_list_date ul li > span {
	display: block;
	vertical-align: top;
}
.info_list.info_list_date ul li > span.article_date {
	width: auto;
	font-size: var(--fontsize-detail-small, 1.6rem);
	padding-top: 0.1rem;
}
.info_list.info_list_date ul li:nth-last-child(-n+2) {

}
.info_list.info_list_date ul li a {
	padding: 3px;
	padding-right: 50px;
	background: url(/img/sites/kosodate/icon_arr_circle.png) no-repeat center right 20px #ffffff;
}
/* リスト（日付 / 文字拡大時） */
/*
.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: 0px;
}
*/

/* リスト（担当課） */
.article_section:has(span:empty) {
	display: none;
}

/* リスト（サムネイル） */
.list_pack {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	padding-top: 10px;
	padding-bottom: 10px;
}

.list_pack .article_txt {
	display: table-cell;
	vertical-align: top;
}
.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: #f6f6f6;
}
.list_pack .article_img span:empty {
	background: url("/img/common/noimage.png") no-repeat center center transparent;
	background-size: contain;
}
.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: 0px;
}

.gsc-results .gsc-cursor-box .gsc-cursor-page {
	display: inline-block !important;
	vertical-align: top;
	margin: 0px 0px 5px;
	padding: 10px 15px;
	border: 1px solid #cccccc !important;
	background: #ffffff !important;
	color: #0066cc !important;
	font-size: 1.6rem;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
	background: #f5f5f5 !important;
	color: #333333 !important;
}

/* ライフステージでさがす */
.life_navi_ttl {

}
.life_navi_ttl span {
	display: block;
	margin: 0px 0px 30px;
	padding: 20px 0px 25px;
	font-size: 2.2rem;
	font-family: var(--fontfamily-bold);
	font-weight: bold;
	text-align: center;
	color: #806237;
	background: url(/img/sites/kosodate/bg_line.png) no-repeat center bottom;
}
.lifestage_list ul {
	list-style: none;
	margin: 0;
	padding: 15px 25px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	align-content: flex-start;
	gap: 0px 20px;
	background: #ffffff;
	border-radius: 15px;
	box-shadow: var(--grey-box);
}
.lifestage_list ul li {
	width: calc((100% - 60px) / 4);
	min-width: 240px;
	min-height: 105px;
	border-bottom: 1px solid #ccc0a9;
	padding: 6px 0px;
}
.lifestage_list ul li:nth-child(n+5) {
	border-bottom: 0;
}
.lifestage_list ul li a {
	font-size: 2.2rem;
	font-weight: bold;
	font-family: var(--fontfamily-bold);
	line-height: 1.4;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	align-content: flex-start;
	justify-content: center;
	gap: 8px 0px;
	width: 100%;
	height: 100%;
	-webkit-box-sizing: border-box;
		box-sizing: border-box;
	border-radius: 7px;
	padding: 10px;
	padding-left: 95px;
	background-size: 80px 80px;
	background-repeat: no-repeat;
	background-position: left center;
	background-color: transparent;
	transition: background-color 0.4s ease;
}
/*
.lifestage_list ul li a:before {
	content: "";
	width: 20px;
	height: 20px;
	background-size: contain;
	position: absolute;
	right: 0;
	top: calc(50% - 10px);
	background: url(/img/sites/kosodate/icon_arr_circle.png) no-repeat center;
	opacity: 0;
	transition: opacity 0.4s ease;
}
*/
.lifestage_list ul li.life_pre a {
	background-image: url(/img/sites/kosodate/ls_pre.png);
}
.lifestage_list ul li.life_yr0 a {
	background-image: url(/img/sites/kosodate/ls_yr0.png);
}
.lifestage_list ul li.life_yr6 a {
	background-image: url(/img/sites/kosodate/ls_yr6.png);
}
.lifestage_list ul li.life_yr12 a {
	background-image: url(/img/sites/kosodate/ls_yr12.png);
}
.lifestage_list ul li.life_yr15 a {
	background-image: url(/img/sites/kosodate/ls_yr15.png);
}
.lifestage_list ul li.life_yr18 a {
	background-image: url(/img/sites/kosodate/ls_yr18.png);
}
.lifestage_list ul li.life_over18 a {
	background-image: url(/img/sites/kosodate/ls_over18.png);
}
.lifestage_list ul li a span {
	font-size: 1.4rem;
}
@media (hover: hover) {
	.lifestage_list ul li a:hover {
		background-color: #f6f2e8;
	}
}
/* ==================================================
PC ここまで
================================================== */


/* ==================================================
背景色変更 / 印刷ページ
================================================== */

/* ========== 背景色変更 ========== */

/* 共通 */
.color_change * {
	background-color: transparent !important;
	background-image: none !important;
	border-color: rgba(255, 255, 255, 0.5) !important;
	color: currentColor !important;
	text-shadow: none !important;
	-webkit-box-shadow: none !important;
			box-shadow: none !important;
}
.color_change *:before,
.color_change *:after {
	content: none !important;
}
.color_change .cse_submit,
.color_change #open_page_id_submit {
	background-image: url(/img/sodegaura/icon_search.png) !important;
	background-size: 16px auto;
}
.color_change #author_info_box .foot_logo img {
	background: #ffffff !important;
}
.color_change .toc_link_wrap summary::marker {
	color: currentColor !important;
}
.color_change .common_menu_list > li.link_yasumi > a {
	background-color: inherit !important;
}
.color_change #header_search_keyword .gsc-search-button svg, .color_change #top_search_keyword .gsc-search-button svg {
	display: block !important;
}
.color_change #header_search_keyword input[type="text"], .color_change #header_search_keyword textarea,
.color_change #top_search_keyword input[type="text"], .color_change #top_search_keyword textarea {
	outline: none !important;
}
/* 黒 */
.color_black * {

}
/* 青 */
.color_blue * {

}

/* ========== 印刷ページ ========== */

/* 印刷プレビュー */
.view_print_mode * {

}

/* ==================================================
背景色変更 / 印刷ページ ここまで
================================================== */


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1080px) {

	/* var() 関数 */
	:root {
		/* フォントサイズ */
		--fontsize-main: 1.4rem;
		/* 一段階小さいフォントサイズ（一覧をみるボタンなど） */
		--fontsize-main-small: 1.3rem;
		/* 本文（ #main ） */
		--fontsize-detail: 1.5rem;
		/* 本文の一段階小さいフォントサイズ（日付など） */
		--fontsize-detail-small: 1.4rem;

		/* #mymainbackの左右余白 */
		--mymainback-margin-side: 15px;
	}
	@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: 0px;
		padding: 0px;
		-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;
		margin: 0px;
		padding: 0px;
		overflow: hidden;
	}

	/* ヘッダ */
	#header {
		width: auto;
		height: auto;
		margin: 0px;
		padding: 0px;
	}

	/* フッタ */
	#footer {
		clear: both;
		width: auto;
		height: auto;
		margin: 0px;
		padding: 0px;
	}

	/* メイン */
	#mymainback {
		clear: both;
		float: none;
		width: auto;
		margin: 0px;
		padding: 0px;
		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,
	.tpl_side2 #main,
	.tpl_side1.tpl_side2 #main {
		-webkit-box-ordinal-group: 11;
		-ms-flex-order: 10;
		order: 10;
		clear: both;
		float: none;
		width: auto;
		margin: 0px;
		padding: 0px;
	}
	#main_a,
	.tpl_side1 #main_a,
	.tpl_side2 #main_a,
	.tpl_side1.tpl_side2 #main_a {
		margin: 0px;
		padding: 0px;
	}

	/* サイド */
	#sidebar1 {
		-webkit-box-ordinal-group: 12;
		-ms-flex-order: 11;
		order: 11;
		clear: both;
		float: none;
		width: auto;
		margin: 0px;
		padding: 0px;
	}

	#sidebar2 {
		-webkit-box-ordinal-group: 13;
		-ms-flex-order: 12;
		order: 12;
		clear: both;
		float: none;
		width: auto;
		margin: 0px;
		padding: 0px;
	}

	/* パンくずをフッタ上に表示 */
	#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;
	}
	#mymainback_bg > #pankuzu_wrap {

	}

	/* ========== 基本設定 ========== */

	/* フォント */
	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: 0px;
	}

	/* レスポンシブアコーディオン用（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");
	}

	/* レスポンシブアコーディオン用（index2） */
	.index-2 .section_information input[id*="acc_ttl_label"] + *,
	.index-2 .section_information input[id*="acc_ttl_label"] + .acc_title,
	.index-2 .section_information input[id*="acc_ttl_label"] + .acc_title + *,
	.index-2 .section_information input[id*="acc_ttl_label"]:checked + *,
	.index-2 .section_information input[id*="acc_ttl_label"]:checked + .acc_title + *,
	.index-2 .section_information .acc_title.accordion + *,
	.index-2 .section_information .acc_title.accordion.acc_open + * {
		display: block;
	}
	.index-2 .section_information label[for*="acc_ttl_label"],
	.index-2 .section_information .acc_title.accordion .accordion_icon {
		background: none !important;
		padding-right: 0px;
		pointer-events: none;
	}

	/* ========== ヘッダ ========== */

	/* ヘッダ */
	#header {
		position: relative;
	}

	#header2_box {
		width: auto;
		margin: 0px;
		padding: 0px;
		display: block;
	}

	#he_left {
		position: static;
		margin: 0px;
		padding: 25px 20px 10px;
	}
	#he_left #logo img {
		margin: 0 auto;
		display: block;
		max-width: 95%;
	}
	#he_right {
		margin-left: 0px;
		text-align: left;
		flex: auto;
		padding: 0;
	}
	#header_search_keyword {
		display: none !important;
	}

	/* ボトムナビゲーション */
	.common_menu_list {
		-ms-flex-wrap: nowrap;
			flex-wrap: nowrap;
		justify-content: center;
		-webkit-box-align: stretch;
			-ms-flex-align: stretch;
				align-items: stretch;
		flex-direction: initial;
		gap: 0px 1px;
		position: fixed;
		left: 0px;
		bottom: 0px;
		z-index: 999;
		width: 100%;
		background: #fefaee;
	}
	.common_menu_list li {
		width: calc(100% / 3);
	}
	.common_menu_list > li > a, .common_menu_list > li > button {
		width: 100%;
		height: 7rem;
		max-height: 140px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		margin: 0px;
		padding: 40px 3px 5px;
		border: none;
		border-top: 1px solid #fefaee;
		text-align: center;
		background-position: top 10px center;
		background-size: 22px auto;
		border-radius: 0;
		position: relative;
		z-index: 999;
		font-size: 1.3rem;
	}
	.menu_open .common_menu_list > li#common_menu_list_main_menu > button {
		background-image: url(/img/sites/kosodate/icon_btm_clz.png);
		background-color: #fefaee;
	}
	.common_menu_list > li#common_menu_list_search {
		display: block;
	}
	.common_menu_list > li#common_menu_list_search > button {
		background-image: url(/img/sites/kosodate/icon_srch.png);
	}
	.srch_open .common_menu_list > li#common_menu_list_search > button {
		background-image: url(/img/sites/kosodate/icon_btm_clz.png);
		background-color: #fefaee;
	}
	#mega_menu .btn_close {
		display: none !important;
	}

	#mega_menu {
		transform: translateY(100%);
		padding: 0px 15px 100px;
		width: 100%;
		box-sizing: border-box;
	}
	.menu_open #mega_menu,
	.srch_open #mega_menu {
		transform: translateY(0);
		visibility: visible;
	}
	.menu_open #block_mega_support {
		display: block;
	}
	.srch_open #block_mega_support {
		display: none;
	}
	.menu_open #block_mega_search {
		display: none;
	}
	.srch_open #block_mega_search {
		display: block;
	}
	.menu_open #block_life_navi {
		display: block;
	}
	.srch_open #block_life_navi {
		display: none;
	}

	#mega_menu_box {
		width: auto;
	}
	#mega_support {
		padding: 30px 0px 20px;
		border-bottom-width: 1px;
	}
	#mega_support {
		flex-wrap: wrap;
		justify-content: space-evenly;
		gap: 15px;
	}
	.h_lang {
		width: 100%;
	}
	dl#moji_size, dl#haikei_color {
		margin: 0px;
	}
	dl#moji_size dt, dl#haikei_color dt {
		font-size: 1.4rem;
		min-width: auto;
	}
	.h_lang a, dl#moji_size dd a, dl#haikei_color dd a {
		font-size: 1.3rem;
		padding: 10px;
		min-height: 40px;
	}

	.sp_main_menu {
		display: block;
		width: 100%;
		box-sizing: border-box;
		margin: 20px 0px 0px;
		padding: 10px 2px;
		background: #ffffff;
		border-radius: 15px;
		box-shadow: var(--grey-box);
	}
	.sp_main_menu ul {
		list-style: none;
		padding: 0;
		margin: 0;
		display: flex;
		justify-content: center;
	}
	.sp_main_menu ul li {
		width: calc((100% / 3) - 2px);
		height: auto;
		border-right: 1px solid #ccc0a9;
	}
	.sp_main_menu ul li:last-child {
		border: 0;
	}
	.sp_main_menu ul li a {
		display: flex;
		justify-content: center;
		padding: 65px 7px 10px;
		font-size: 1.2rem;
		font-weight: bold;
		text-align: center;
		position: relative;
	}
	.sp_main_menu ul li a:before {
		content: "";
		width: 48px;
		height: 40px;
		position: absolute;
		top: 15px;
		left: calc(50% - 24px);
		background-repeat: no-repeat;
		background-position: center;
		background-color: transparent;
		background-size: contain;
	}
	.sp_main_menu ul li.menu_cal a:before {
		background-image: url(/img/sites/kosodate/icon_cal.png);
	}
	.sp_main_menu ul li.menu_sodan a:before {
		background-image: url(/img/sites/kosodate/icon_sodan.png);
	}
	.sp_main_menu ul li.menu_shisetsu a:before {
		background-image: url(/img/sites/kosodate/icon_shisetsu.png);
	}

	#mega_search {
		display: flex;
		flex-direction: column;
	}
	#top_search_keyword,
	#top_search_page_id {
		padding: 20px;
	}
	#cse-search-box .search_ttl,
	#open_page_id_box .search_ttl {
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	#cse-search-box .tmp_query,
	#open_page_id {
		width: calc(100% - 45px);
		height: 4rem;
	}
	#cse-search-box .cse_submit,
	#open_page_id_submit {
		width: 45px;
		height: 4rem;
	}
	.cse_filetype,
	.open_page_id_about {
		margin: 10px 0px 0px;
	}
	.cse_filetype fieldset span,
	#top_search_page_id .open_page_id_about a {
		font-size: 1.3rem;
	}
	/* 閲覧補助（展開） */
	button#btn_spm_support {
		display: block;
		width: 60px;
		height: 60px;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		margin: 0px;
		padding: 0px;
		border: none;
		background: url("/img/sp/btn_support.png") no-repeat center center #cccccc;
		background-size: 26px auto;
		color: #000000;
		text-align: left;
		text-indent: -9999em;
		overflow: hidden;
		position: absolute;
		top: 10px;
		right: 10px;
		z-index: 90;
	}
	.spm_support_open button#btn_spm_support {
		background-color: #f6f6f6;
		background-image: url("/img/sp/btn_close.png");
	}

	.header_nav {
		display: none;
		background: #f6f6f6;
	}
	.spm_support_open .header_nav {
		display: block;
	}

	/* ヘッダメニュー */
	.header_nav ul {
		display: block;
		padding: 10px 20px 20px;
	}
	.header_nav ul li[class^="h_"] {
		display: block;
		margin: 10px 0px 0px;
	}
	.header_nav ul li.h_main {
		display: none !important;
	}

	/* アクセシビリティ機能 */
	#btn_support_menu_open,
	#btn_support_menu_close {
		display: none !important;
	}

	#support_menu_box {
		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: center;
			-ms-flex-align: center;
				align-items: center;
		position: static;
		background: none;
		border: none;
		-webkit-box-shadow: none;
				box-shadow: none;
		margin: 0px;
		padding: 0px;
		width: auto;
		min-width: auto;
	}

	/* 検索（展開） */
	.header_search {
		display: none;
		position: fixed;
		left: 0px;
		bottom: 60px;
		z-index: 998;
		width: 100%;
		max-height: calc(100vh - 60px);
		background: #f6f6f6;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		margin: 0px;
		padding: 50px 20px;
		overflow-y: auto;
		-ms-scroll-chaining: none;
			overscroll-behavior: none;
	}
	.spm_search_open .header_search {
		display: block;
	}
	.spm_search_open::before {
		content: '';
		display: block;
		width: 100vw;
		height: 100vh;
		position: fixed;
		top: 0px;
		left: 0px;
		right: 0px;
		bottom: 0px;
		z-index: 997;
		background: rgba(0,0,0,0.75);
		color: #ffffff;
	}
	#top_search_keyword form.gsc-search-box {
		width: auto;
	}
	/* キーワード検索 */
	#cse-search-box .search_ipt {
		width: auto;
	}
	#open_page_id_box .search_ipt {
		border-radius: 5px;
	}
	/* ページID検索 */
	#top_search_page_id {
		margin: 0;
	}
	#open_page_id_box .search_ipt {
		width: auto;
	}

	/* グローバルナビ */
	#top_search {
		display: none;
		position: fixed;
		left: 0px;
		bottom: 60px;
		z-index: 998;
		width: 100%;
		max-height: calc(100vh - 60px);
		background: #f6f6f6;
		-webkit-box-sizing: border-box;
				box-sizing: border-box;
		margin: 0px;
		padding: 50px 20px;
		overflow-y: auto;
		-ms-scroll-chaining: none;
			overscroll-behavior: none;
	}
	.spm_menu_open #top_search {
		display: block;
	}
	.spm_menu_open::before {
		content: '';
		display: block;
		width: 100vw;
		height: 100vh;
		position: fixed;
		top: 0px;
		left: 0px;
		right: 0px;
		bottom: 0px;
		z-index: 997;
		background: rgba(0,0,0,0.75);
		color: #ffffff;
	}

	.gnav ul {
		width: auto;
		display: block;
		padding: 0px;
	}
	.gnav ul li,
	.gnav ul li:first-child {
		display: block;
		border: none;
		border-bottom: 1px solid;
	}
	.gnav ul li:first-child {
		border-top: 1px solid;
	}
	.gnav ul li a {
		padding: 20px 10px;
	}

	/* サブサイト共通ヘッダ */
	#mainimg {
		width: auto;
		margin: 15px var(--mymainback-margin-side, 15px) 0px;
	}
	#mainimg_box .site_name {
		position: static;
		font-size: 1.8rem;
		background: #333333;
		color: #ffffff;
		text-shadow: none;
		padding: 5px 20px;
	}
	#mainimg_box .site_name.noimage {
		background: #f6f6f6;
		color: #333333;
		text-shadow: none;
		padding: 20px;
	}

	/* メニューへのリンク */
	.link_to_subsitemenu {
		display: block;
		margin: var(--mymainback-margin-top, 15px) var(--mymainback-margin-side, 15px);
	}
	.link_to_subsitemenu a {
		display: block;
		font-size: var(--fontsize-main-small, 1.3rem);
		border: 1px solid #333333;
		border-radius: 5px;
		background: #eeeeee;
		color: #333333;
		text-decoration: none;
		padding: 10px;
		text-align: center;
	}
	.link_to_subsitemenu a span {
		display: inline-block;
		padding-right: 20px;
		position: relative;
	}
	.link_to_subsitemenu a span::before {
		content: '';
		width: 0px;
		height: 0px;
		border: 7px solid transparent;
		border-bottom-width: 0px;
		border-top-width: 9px;
		border-top-color: #333333;
		position: absolute;
		top: 50%;
		right: 0px;
		-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
				transform: translateY(-50%);
	}
	.color_change .link_to_subsitemenu a span::before {
		border-top-color: #ffffff;
	}

	/* ========== フッタ ========== */

	/* フッタ */
	#footer {
		padding-bottom: 90px;
	}
	#author_info_box {
		width: auto;
		margin: 0px;
		padding: 0px 15px 30px;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.foot_logo img {
		max-width: 210px;
		height: auto;
	}
	#author_box {
		text-align: center;
	}
	#author_box p {
		margin: 0px;
	}
	#author_box p span {
		display: block;
		margin-bottom: 4px;
	}
	#author_box a.home_link {
		padding: 3px 3px 3px 25px;
		background-size: 18px 18px;
	}
	#copyright {
		border: 0px;
		padding: 20px 15px 0px;
	}
	#copyright p {
		font-size: 1.3rem;
	}

	/* ページトップ（フローティング表示） */
	#btn_pagetop {
		right: 15px;
	}

	/* 回遊ボタン（表示位置） */
	#kaiyu_banner {
		bottom: 70px;
	}

	/* サブサイト共通フッタ */
	#site_footer {
		width: auto;
		margin: 0px var(--mymainback-margin-side, 15px) 40px;
	}
	#site_footer_box {
		padding: 20px;
	}

	/* ========== パンくず / 足あと ========== */

	/* 足あとを非表示 */
	#footstep_wrap {
		display: none !important;
	}

	.pankuzu:first-child,
	.pankuzu:has(.is_open) {
		min-height: 2.4rem;
	}
	#pankuzu_wrap {
		font-size: 1.2rem;
		padding: 15px 0px;
	}
	#pankuzu_wrap > div {
		width: auto;
		margin-left: var(--mymainback-margin-side, 15px);
		margin-right: var(--mymainback-margin-side, 15px);
		margin-bottom: 0;
	}

	.pankuzu_detail {
		display: none;
	}

	.pankuzu_detail.is_open {
		display: block;
	}

	.pankuzu,
	#footstep {
		padding-left: 7rem;
	}
	.pankuzu:first-child .icon_current,
	#footstep_ttl {
		font-size: 1rem;
		top: -1px;
		width: 6rem;
		pointer-events: auto;
		cursor: pointer;
	}

	.color_change .pankuzu .icon_current{
		outline: 1px solid rgba(255, 255, 255, 0.5) !important;
	}

	.pankuzu:first-child .icon_current::after {
		content: "";
		width: 12px;
		height: 12px;
		background-repeat: no-repeat;
		background-color: #806237;
		background-size: 65% auto;
		background-position: center;
		background-image: url(/img/sites/kosodate/icon-current-open.png);
		display: inline-block;
		margin-left: 5px;
	}

	.pankuzu:first-child .icon_current.is_active::after {
		background-image: url(/img/sites/kosodate/icon-current-close.png);
	}


	/* ========== 見出し ========== */

	/* 見出し */
	#main_header h1 {
		margin: 0px;
		padding: 17px 20px;
		font-size: 2.4rem;
		background-size: auto 7px;
	}

	#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;
	}

	/* ========== メイン ========== */

	/* メイン */
	#mymainback {
		margin: 15px var(--mymainback-margin-side, 15px) 40px;
		padding-bottom: 40px;
	}
	#main_body {
		padding: 20px;
	}

	/* コンテンツヘッダ */
	#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アイコン */
	.d-flex.f-wrap-wrap > *,
	.sdgs-icons > *,
	.d-flex.f-wrap-wrap img,
	.sdgs-icons img,
	.d-flex.f-wrap-wrap > * img,
	.sdgs-icons > * img {
		width: 60px;
	}

	/* カレンダー登録 */
	#calendar_button_google,
	#calendar_button_yahoo {
		margin: var(--content-margin-narrow, 20px) 20px 0px 0px;
	}
	#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 0px 0px;
		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 0px;
	}
	#hyouka_area_submit input {
		display: block;
		width: 100%;
		max-width: 100%;
		font-size: var(--fontsize-main-small, 1.3rem);
	}

	/* お問い合わせ先 */
	#section_footer {
	}
	#section_footer h2,
	#main_body #section_footer h2 {
		font-size: 1.6rem;
		letter-spacing: 0em;
		padding: 15px 20px;
	}
	#section_footer_detail {
		padding: 5px 20px 25px;
	}
	@media screen and (max-width: 370px) {
		#section_footer h2,
		#main_body #section_footer h2 {
			font-size: 1.6rem;
		}
	}

	/* おすすめコンテンツ */
	#osusume_contents_area .second_osusume {
		padding: 30px 20px;
	}
	#osusume_contents_area .second_osusume h2,
	#osusume_contents_area .second_osusume_ttl {
		font-size: 1.8rem;
		margin: 0px 0px 20px;
	}
	#osusume_contents_area .second_osusume ul {
		padding: 0px;
		-webkit-box-pack: center;
			-ms-flex-pack: center;
				justify-content: center;
		gap: 20px;
	}
	#osusume_contents_area .second_osusume ul li {
		width: calc(50% - 10px);
		max-width: 200px;
	}

	/* ========== サイド ========== */

	/* サイドバー */
	#sidebar1,
	#sidebar2 {
		margin-top: 40px;
	}

	/* 重要なお知らせ */
	#important_noticest_area .second_important {}

	#important_noticest_area .second_important h2,
	#important_noticest_area .second_important_ttl {
		font-size: 1.8rem;
	}

	#important_noticest_area .second_important ul {
		margin: 0px;
		padding: 0px;
		list-style: none;
	}
	#important_noticest_area .second_important ul li {
		margin: 0px;
		padding: 15px 0px;
		border-bottom: 1px solid var(--list-bordercolor, #cccccc);
	}
	#important_noticest_area .second_important ul li a {
		display: block;
		background: url("/img/sp/arrow_r.png") no-repeat right center transparent;
		background-size: 8px auto;
		padding-right: 15px;
		text-decoration: none;
	}

	#important_noticest_area .second_important .link_box {
		text-align: center;
	}
	#important_noticest_area .second_important .link_box > span a {
		font-size: var(--fontsize-main-small, 1.3rem);
	}

	/* カウントダウン */
	#count_down_area .count_down_box {}

	/* レコメンド・AIレコメンド */
	@media screen and (max-width: 370px) {
		#recommend_title h2,
		#ai_recommend_title h2 {
			font-size: 1.4rem;
		}
	}

	#sidebar_recommend ul,
	#sidebar_ai_recommend ul {}

	#sidebar_recommend ul li,
	#sidebar_ai_recommend ul li {}

	#sidebar_recommend ul li a,
	#sidebar_ai_recommend ul li a {
		display: block;
		background: url("/img/sp/arrow_r.png") no-repeat right center transparent;
		background-size: 8px auto;
		padding-right: 15px;
		text-decoration: none;
	}

	/* 関連リンク */
	#kanren_link h2 {
		font-size: 1.6rem;
	}
	#kanren_link ul {
		padding: 0px 20px 15px;
	}
	#kanren_link ul li {

	}
	#kanren_link ul li a {

	}

	/* 「見つからないときは」「よくある質問」バナー */
	.common_banner_link {}

	/* サブサイト大小メニュー */
	.subsite_menu {
		margin-bottom: 10px;
	}

	.subsite_menu_ttl {
		font-size: 1.6rem;
		text-align: left;
	}

	.subsite_menu_list ul {
		margin: 0px;
		padding: 20px 20px 30px;
		list-style: none;
	}
	.subsite_menu_list ul li {
		margin: 0px;
		padding: 15px 0px;
		border-bottom: 1px solid var(--list-bordercolor, #cccccc);
	}

	.subsite_menu_list div.link_ichiran {
		margin: 0px;
		padding: 0px 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 {

	}
	.info_list ul li {
		margin: 0px;
	}
	.info_list ul li a {

	}
	.tpl_site_list_2 .info_list ul li a {
		padding: 15px;
		padding-right: 40px;
		background-size: 18px auto;
		background-position: right 15px center;
	}
	/* リスト（日付） */
	.info_list.info_list_date ul li {
		padding: 0px 0px 10px;
	}
	.info_list.info_list_date ul li > span {

	}
	.info_list.info_list_date ul li > span.article_date {

	}
	.info_list.info_list_date ul li a {
		padding: 3px;
		padding-right: 40px;
		background-size: 18px auto;
		background-position: right 15px center;
	}

	@media screen and (max-width: 767px) {
		.info_list ul {
			flex-direction: column;
			gap: 15px 0px;
		}
		.info_list ul li {
			width: 100%;
		}
		.info_list.info_list_date ul li:last-child {
			border-bottom: none;
		}
	}

	/* リスト（担当課） */
	.article_section {
		display: block;
		text-align: right;
	}
	.article_section a {
		display: inline !important;
		background: none !important;
		padding-right: 0px !important;
		text-decoration: underline !important;
	}

	/* リスト（サムネイル） */
	.list_pack {
		padding-top: 0px;
		padding-bottom: 0px;
	}
	.list_pack .article_img {
		width: 120px;
	}
	@media screen and (max-width: 370px) {
		.list_pack .article_img {
			width: 100px;
		}
	}
	/* ライフステージでさがす */
	.lifestage_list ul {
		padding: 10px 20px;
	}
	.lifestage_list ul li {
		width: calc(50% - 10px);
	}
	.lifestage_list ul li:nth-child(n+5) {
		border-bottom: 1px solid #ccc0a9;
	}
	.lifestage_list ul li:last-child {
		border-bottom: 0px;
	}
	.lifestage_list ul li a {
		position: relative;
		padding-right: 23px;
		padding-left: 80px;
		background-size: 70px 70px;
		gap: 5px 0px;
		font-size: 1.8rem;
	}
	.lifestage_list ul li a span {
		font-size: 1.3rem;
	}
	.lifestage_list ul li a:before {
		content: "";
		position: absolute;
		right: 0px;
		top: calc(50% - 9px);
		width: 18px;
		height: 18px;
		background: url(/img/sites/kosodate/icon_arr_circle.png) no-repeat center / contain;
	}
	@media screen and (max-width: 767px) {
		.lifestage_list ul li {
			width: 100%;
			min-height: 90px;
		}
	}

	/* ========== 背景色変更 ========== */

	/* 共通 */
	.color_change * {

	}
	/* 黒 */
	.color_black * {

	}
	/* 青 */
	.color_blue * {

	}

}
/* ==================================================
スマートフォン ここまで
================================================== */