@charset "utf-8";

@media screen and (max-width : 640px) {
	#tmp_contents h2,
	#tmp_contents h3,
	#tmp_contents h4,
	#tmp_contents h5,
	#tmp_contents h6 {
		margin: 1.7em 0 1em;
	}
	#tmp_contents h1 {
		margin: 0 0 1.5em;
		padding: 22px 14px 16px 16px;
		font-size: 143.8%;
	}
	#tmp_contents h1::after {
		width: 152px;
		height: 51px;
		background-image: url(/shared/templates/datsutanso_free/images/ttl_dec_bottm_sp.png);
		background-size: auto 51px;
		position: absolute;
		right: -3px;
		bottom: -25px;
	}

	#tmp_contents h2 {
		padding: 14px 19px 11px 53px;
		background-size: auto 33px;
		/* background-position: left 10px top 29px; */
		background-position: left 10px center;
		border-radius: 10px;
		font-size: 125%;
	}

	#tmp_contents h3 {
		padding: 9px 14px 14px 30px;
		background-position: left top 15px;
		font-size: 118.8%;
	}

	#tmp_contents h4 {
		margin-bottom: 0.5em;
		padding-left: 26px;
		background-size: auto 19px;
		font-size: 112.5%;
	}

	#tmp_contents h5 {
		margin-bottom: 0.6em;
		padding-left: 21px;
		font-size: 106.3%;
	}
	#tmp_contents h5::before {
		width: 12px;
		height: 12px;
		top: 7px;
	}

	#tmp_contents h6 {
		margin-top: 1.8em;
		margin-bottom: 0.7em;
		line-height: 1.5;
		font-size: 100%;
	}

	#tmp_contents #tmp_toc {
		margin-bottom: 34px;
		padding: 16px 6px 22px;
		background-position: right -7px bottom -14px;
		border-radius: 10px;
	}
	#tmp_contents #tmp_toc p {
		margin-bottom: 9px;
		padding-left: 34px;
		background-position: left 5px top 4px;
		font-size: 120%;
	}
	#tmp_contents #tmp_toc ul {
		margin-left: 22px;
	}
	#tmp_contents #tmp_toc ul li {
		margin-bottom: 0.6em;
	}

	#tmp_contents p {
		margin:0 0 1.3em 0; /* Do not edit */
		font-size: 100%;
	}
	#tmp_contents p.no_margin {
		margin-bottom: 0;
	}
	#tmp_contents p.no_margin:has(img) {
		line-height: 1;
	}

	#tmp_contents ul li,
	#tmp_contents ol li {
		margin:0 0 0.8em; /* Do not edit */
	}

	/* outline
	================================================== */
	#tmp_contents table.outline td {
		padding: 13px 18px 12px;
	}
	#tmp_contents div.outline {
		padding: 13px 18px 12px;
	}

	/* box_btn
	================================================== */
	#tmp_contents ul.box_btn li {
		margin-bottom: 19px;
		background-position: right 10px center;
	}
	#tmp_contents ul.box_btn li a,
	#tmp_contents ul.box_btn li p {
		padding: 14px 55px 12px 14px;
	}

	/* box_menu
	================================================== */
	#tmp_contents .box_menu {
		margin-bottom: 1.3em;
	}
	#tmp_contents .box_menu .box_menu_ttl {
		background-position: right 10px center;
	}
	#tmp_contents .box_menu .box_menu_ttl h2,
	#tmp_contents .box_menu .box_menu_ttl p {
		padding: 16px 60px 14px 12px;
	}
	#tmp_contents div.box_menu .box_menu_cnt {
		padding: 13px 14px 0;
	}
	#tmp_contents .box_menu ul {
		margin-left: 16px; /* Do not edit */
	}

	/* datatable
	enquete_table
	================================================== */
	#tmp_contents table.datatable th,
	#tmp_contents table.enquete_table th {
		padding: 16px 8px 13px;
	}
	#tmp_contents table.datatable td,
	#tmp_contents table.enquete_table td {
		padding: 17px 17px 13px;
	}

	/* box_link
	================================================== */
	#tmp_contents .box_link,
	#tmp_contents .box_info {
		margin-bottom: 2.5em;
	}
	#tmp_contents .box_link .box_link_ttl,
	#tmp_contents .box_info .box_info_ttl {
		padding: 13px 15px 11px;
		font-size: 111.3%;
	}
	#tmp_contents .box_link .box_link_ttl::before,
	#tmp_contents .box_info .box_info_ttl::before {
		top: -17px;
	}
	#tmp_contents .box_link .box_link_cnt,
	#tmp_contents .box_info .box_info_cnt {
		padding: 16px 4px 21px;
	}
	/* ==================================================
	clearfix
	================================================== */
	#tmp_sma_lnavi_cnt .switch_menu .noicon_list:after {
		content: ""; /* 変更しない */
		display: table; /* 変更しない */
		clear: both; /* 変更しない */
	}

	/* ==================================================
	contents
	================================================== */

	/* インデックスページ
	================================================== */
	#tmp_index .read_cnt {
		order: 1;
	}
	#tmp_index .wrap_col_main {
		order: 2;
		padding-top: 32px;
	}
	#tmp_index .free_cnt {
		order: 3;
	}
	#tmp_index .wrap_col_rgt_navi {
		order: 4;
	}

	/* ページヘッド */
	.page_heading {
		background-image: url(/shared/templates/datsutanso_free/images/page_heading_bg_sp.jpg);
		background-position: bottom;
	}
	.page_heading .heading_jp {
		align-items: flex-start;
		min-height: 180px;
		padding: 40px 0;
	}
	.page_heading h1 {
		padding-left: 20px;
		font-size: 150%;
	}
	.page_heading h1::before {
		height: 60px;
	}

	/* 概要文 */
	.read_cnt {
		padding: 31px 0 0;
		order: 1;
	}

	/* 記事一覧 */
	.datsutanso_menu_cnt .datsutanso_menu_list {
		gap: 15px;
	}
	.datsutanso_menu_cnt .datsutanso_menu_item {
		padding: 19px 14px 21px;
		background-size: auto 21px;
		background-position: right 5px bottom 5px;
		border-radius: 10px;
	}
	.datsutanso_menu_cnt .item_title {
		margin-bottom: 16px;
		padding-bottom: 11px;
	}
	.datsutanso_menu_cnt .item_title a {
		font-size: 113%;
	}
	.datsutanso_menu_cnt .item_title a::before {
		width: 35px;
		height: 39px;
		background-size: auto 39px;
		left: 12px;
	}
	.datsutanso_menu_cnt .item_dec {
		padding: 0 11px;
		line-height: 1.5;
	}
}