@charset "UTF-8";

/********************** トップページのスタイル **********************/
.main {
	width: 100%;
	margin: 0 auto;
	padding: 0 0 24px;
	background-color: #fff;
	position: relative;
	overflow: hidden;
}

.main h2 {
	position: relative;
	padding: 0 0 12px;
	font-size: 200%;
	border-radius: 8px 8px 0 0;
	width: 100%;
	text-align: center;
}

h2::before {
	position: absolute;
	bottom: 0;
	left: calc(50% - 25px);
	display: block;
	content: "";
	width: 50px;
	height: 10px;
	background-color: #00FF00;
	border: 3px solid #333;
	border-radius: 5px;
}

.inbody.faq .main .zone01_in>section:nth-child(1)>h2:nth-child(1),
.inbody.faq .main .zone02_in>section:nth-child(1)>h2:nth-child(1) {
	border-radius: 8px;
}

.main h2 a {
	display: inline-block;
}

#main_outline .main h2+button[type="button"].ac_display {
	border-color: #fff;
	top: 16px;
}

.main li {
	position: relative;
	padding-left: 16px;
}

.main li::before {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: 0;
	width: 6px;
	height: 6px;
	border-right: 1px solid #777;
	border-bottom: 1px solid #777;
	transform: rotate(-45deg);
}

@media only screen and (max-width: 1024px) {
	.main {
		padding: 0 0 24px;
	}
}

/**** 重要なお知らせのスタイル ****/
.main .important {
	margin: 24px auto;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .important h2 {
	padding: 12px;
	background: #b13800;
	color: #fff;
}

.main .important h2::before {
	display: none;
}

.main .important_lower {
	border: 2px solid #b13800;
	border-top: none;
	padding: 4px 16px 16px;
	border-radius: 0 0 8px 8px;
}

.main .important .more li a {
	background-image: none;
	border: 2px solid #b13800 !important;
}

.main .important .more li a:hover {
	background: #FFEEE6;
}

/**** 画像リストのスタイル ****/
.main .ilist {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .ilist h2 {
	border-radius: 8px;
}

.main .ilist_lower ul {
	display: flex;
	flex-flow: row wrap;
}

.main .ilist_lower ul>li {
	padding-left: 0;
	margin-right: 12px;
	text-align: center;
	width: calc((100% - 60.1px) / 6);
}

.main .ilist_lower ul>li:nth-of-type(6n) {
	margin-right: 0;
}

.main .ilist_lower ul>li::before {
	display: none;
}

.main .ilist_lower ul>li a {
	display: block;
	height: 100%;
	width: 100%;
	text-decoration: none;
}

.main .ilist_lower ul>li .ilist_in {
	background: #F0FAF7;
	padding: 16px;
	height: 100%;
	width: 100%;
	border-radius: 8px;
	border: 1px solid #008027;
}

.main .ilist_lower ul>li a:hover .ilist_in {
	background: #fffbcc;
}

.main .ilist_lower .ilist_left img {
	border: 1px solid #777;
}

.main .ilist_lower .ilist_right {
	margin-top: 8px
}

.main .ilist_lower ul>li .ilist_title {
	text-align: center;
}

.main .ilist_lower ul>li .ilist_text {
	text-align: left;
	font-size: 85%;
	margin-top: 0;
}

.main .ilist .ilist_title {
	margin-top: 0;
}

@media only screen and (max-width: 1024px) {
	.main .ilist_lower ul>li {
		width: calc((100% - 24.1px) / 3);
	}

	.main .ilist_lower ul>li:nth-of-type(3n) {
		margin-right: 0;
	}
}

@media only screen and (max-width: 480px) {
	.main .ilist_lower ul>li:nth-of-type(n) {
		margin-right: 0;
		width: 100%;
	}
}

/**** 画像リスト2のスタイル ****/
.main .ilist2 {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .ilist2 h2 {
	border-radius: 8px;
}

.main .ilist2_lower ul {
	display: flex;
	flex-flow: row wrap;
}

.main .ilist2_lower ul>li {
	padding-left: 0;
	margin-right: 12px;
	text-align: center;
	width: calc((100% - 36.1px) / 4);
}

.main .ilist2_lower ul>li:nth-of-type(4n) {
	margin-right: 0;
}

.main .ilist2_lower ul>li::before {
	display: none;
}

.main .ilist2_lower ul>li a {
	display: block;
	height: 100%;
	width: 100%;
	text-decoration: none;
}

.main .ilist2_lower ul>li .ilist_in {
	background: #F0FAF7;
	padding: 16px;
	display: flex;
	height: 100%;
	width: 100%;
	border-radius: 8px;
	border: 1px solid #008027;
}

.main .ilist2_lower ul>li a:hover .ilist_in {
	background: #fffbcc;
}

.main .ilist2_lower ul>li .ilist_left {
	align-self: center;
	width: 40%;
}

.main .ilist2_lower .ilist_left img {
	border: 1px solid #777;
}

.main .ilist2_lower ul>li .ilist_right {
	align-self: center;
	width: 54%;
	margin-left: 6%;
}

.main .ilist2 .ilist_title {
	margin-top: 0;
}

@media only screen and (max-width: 1024px) {
	.main .ilist2_lower ul>li {
		width: calc((100% - 12.1px) / 2);
	}

	.main .ilist2_lower ul>li:nth-of-type(3n) {
		margin-right: 12px;
	}

	.main .ilist2_lower ul>li:nth-of-type(even) {
		margin-right: 0;
	}
}

@media only screen and (max-width: 480px) {
	.main .ilist2_lower ul>li:nth-of-type(n) {
		margin-right: 0;
		width: 100%;
	}
}

/**** スライドショー（画像リスト） ****/
.slider1 {
	margin-top: 24px;
}

.slider1 h2 {
	padding: 0;
	margin: 0;
	height: 0;
}

.slider1 img {
	border: 1px solid #007bbb;
}

/**** スライドショー2（画像リスト） ****/
.slider2 {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
}

.slider2 h2 {
	border-radius: 8px;
}

.slider2 .splide__arrows {
	padding: 0 4em;
}

.slider2 .splide__track {
	margin-top: 16px;
}

.splide.slider2 li a {
	display: block;
	background: #F0FAF7;
	padding: 16px;
	height: 100%;
	width: 100%;
	border-radius: 8px;
	border: 1px solid #008027;
}

.splide.slider2 li a:hover {
	background-color: #fffbcc;
}

.splide.slider2 .ilist_left img {
	border: 1px solid #777;
}

.splide.slider2 .window {
	position: relative;
	right: 0;
	top: 0;
	margin: 4px 0 0;
}

/**** 分類のスタイル ****/
.main .category,
.main .category2,
.main .category3,
.main .category4,
.main .category5 {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
}

.main .category_3_ul {
	font-size: 85%;
}

.main .category_lower {
	padding: 4px 16px 16px;
}

.main .category_lower .close {
	padding: 16px 0 0;
}

/**** 各課の窓口のスタイル ****/
.main .kakuka {
	margin-top: 24px;
}

/**** 催し物・講座のスタイル ****/
.main .event {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
}

.main .event_lower {
	padding: 4px 16px 16px;
}

.main .event_lower li {
	padding-left: 0;
}

.main .event_lower li::before {
	display: none;
}

.main .event_lower li .eve_cate {
	display: inline-block;
	font-size: 85%;
	background: #007bbb;
	color: #fff;
	border-radius: 4px;
	padding: 4px 4px 2px;
	margin-right: 8px;
	text-align: center;
	vertical-align: top;
	line-height: 1;
	min-width: 80px;
}

.main .event_lower .event_month li {
	margin-right: 8px;
	display: inline-block;
	font-size: 130%;
	margin-top: 8px;
	margin-bottom: 4px;
}

.main .event_lower .event_month img {
	vertical-align: middle;
}

.main .event_month li.pre a,
.main .event_month li.next a {
	display: inline-block;
	background: #E6E6E6;
	border: 1px solid #777;
	font-size: 81.25%;
	margin-bottom: 10px;
	text-decoration: none;
	padding: 0 5px;
	position: relative;
	border-radius: 4px;
}

.main .event_month li.pre a {
	padding-left: 16px;
}

.main .event_month li.next a {
	padding-right: 15px;
}

.main .event_month li.pre a::before,
.main .event_month li.next a::before {
	content: '';
	position: absolute;
	top: 50%;
	margin-top: -4px;
	width: 0;
	height: 0;
	border-style: solid;
}

.main .event_month li.pre a::before {
	left: 4px;
	border-width: 4px 6px 4px 0;
	border-color: transparent #555 transparent transparent;
}

.main .event_month li.next a::before {
	right: 4px;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #555;
}

/**** イベントカレンダーのスタイル ****/
.main .calendar {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
}

.main .calendar_lower {
	overflow: auto;
	padding: 4px 16px 16px;
}

.main .calendar_lower li {
	padding-left: 0;
}

.main .calendar_lower li::before {
	display: none;
}

.main .calendar_lower .event_month li {
	margin-right: 8px;
	display: inline-block;
}

.main .calendar_lower .event_month img {
	vertical-align: middle;
}

.main .calendar table {
	width: 100%;
}

.main .calendar caption {
	position: absolute;
	display: none;
}

.main .calendar th {
	border: 1px solid #777;
	text-align: center;
	width: calc(100%/7)
}

.main .calendar th img {
	vertical-align: middle;
}

.main .calendar td {
	border: 1px solid #777;
	text-align: center;
}

.main .calendar td a {
	display: inline-block;
}

.main .calendar .sun {
	background: #ffd8d6;
}

.main .calendar .sat {
	background: #d9e4fc;
}

.main .calendar .today {
	background: #c9171e;
	color: #fff;
}

.main .calendar .sun span {
	display: block;
	margin-top: 2px;
	font-size: 85%;
}

.main .calendar .today>strong,
.main .calendar .today>a,
.main .calendar .today>a strong {
	color: #fff;
}

/**** 新着情報のスタイル ****/
.main .new {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .new_lower {
	padding: 8px 40px 32px;
}

@media only screen and (max-width: 480px) {
	.main .new_lower {
		padding: 8px 12px 32px;
	}
}

.main .new_lower li {
	margin-top: 24px;
	padding-left: 0;
}

.main .new_lower li::before {
	display: none;
}

.main .new div.new_lst {
	display: flex;
	flex-wrap: wrap;
}

.main .new div.date {
	margin: 0;
	padding: 0 13px;
	width: 110px;
	font-size: 100%;
	color: #333;
	background-image: url(img/icon/arrow.png);
	background-repeat: no-repeat;
	background-size: 8px;
	background-position: left top 6px;
}

.main .new li.catch_lst div.date {
	width: 100%;
}

.main .new div.list {
	width: calc(100% - 110px);
	text-decoration: underline;
}

.main .new a:hover div.list {
	text-decoration: none;
}

@media only screen and (max-width: 480px) {

	.main .new div.date,
	.main .new div.list {
		width: 100%;
	}
}

.main .new ul li a {
	overflow: hidden;
	width: 100%;
	text-decoration: none;
}

.main .new ul li.catch_lst {
	padding: 0;
}

.main .new ul li.catch_lst::before {
	display: none;
}

.main .new ul li.catch_lst a {
	display: flex;
}

.main .new ul li.catch_lst .new_lst {
	width: calc(100% - 192px);
}

.main .new ul li.catch_lst .new_img {
	width: 180px;
	text-align: right;
	margin: 4px 12px 0 0;
}

.main .new ul li.catch_lst .new_img img {
	border: 1px solid #777;
}

@media only screen and (max-width: 1024px) {
	.main .new ul li.catch_lst .new_lst {
		width: calc(100% - 152px);
	}

	.main .new ul li.catch_lst .new_img {
		width: 140px;
	}
}

/**** トピックスのスタイル ****/
.main .topics {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .topics h2 a {
	justify-content: center;
	text-align: center;
	text-decoration: underline;
}

.main .topics h2 a:hover {
	text-decoration: none;
}

.main .topics_lower {
	padding: 8px 40px 32px;
}

@media only screen and (max-width: 480px) {
	.main .topics_lower {
		padding: 8px 12px 32px;
	}
}

.main .topics_lower li {
	margin-top: 24px;
	padding-left: 0;
}

.main .topics_lower li::before {
	display: none;
}

.main .topics a {
	display: flex;
	flex-wrap: wrap;
	text-decoration: none;
}

.main .topics div.date {
	margin: 0;
	padding: 0 13px;
	width: 110px;
	font-size: 100%;
	color: #333;
	background-image: url(img/icon/arrow.png);
	background-repeat: no-repeat;
	background-size: 8px;
	background-position: left top 6px;
}

.main .topics div.list {
	width: calc(100% - 110px);
	text-decoration: underline;
}

.main .topics a:hover div.list {
	text-decoration: none;
}

@media only screen and (max-width: 480px) {

	.main .topics div.date,
	.main .topics div.list {
		width: 100%;
	}
}

.main .topics ul li.catch_lst .topics_lst {
	margin-right: 100px;
}

.main .topics ul li.catch_lst .topics_img {
	float: right;
	margin-top: 0;
}

/**** 新着情報・トピックス一覧のスタイル ****/
.main .more {
	font-size: 85%;
	margin-top: 16px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin-left: auto;
}

.main .more li {
	padding: 0;
	margin: 8px 0 0 8px;
	min-width: 180px;
}

.main .more li::before {
	display: none;
}

.main .more li a {
	display: inline-block;
	padding: 8px;
	text-align: center;
	text-decoration: none;
	width: 100%;
	border-color: #fff;
	background-image: url(img/icon/arrow.png);
	background-repeat: no-repeat;
	background-size: 8px;
	background-position: left 16px center;
	border: 1px solid #008027 !important;
	border-radius: 8px;
}

.main .more li.rss {
	width: auto;
}

.main .more li a:hover {
	background-color: #fffbcc;
}

@media only screen and (max-width: 480px) {
	.main .more {
		max-width: 100%;
	}

	.main .more li {
		margin-left: 0;
		width: 100%;
	}

	.main .more li a {
		padding: 10px;
	}
}

/**** タブ切り替えのスタイル ****/
.main .free_tab {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .free_tab .tab_index {
	display: flex;
	justify-content: space-between;
	margin-top: 100px;
	border-bottom: 2px solid #ccc;
}

.main .free_tab .tab_index .tab_change {
	text-align: center;
	display: flex;
	font-size: 120%;
	width: 49.5%;
}

.main .free_tab .tab_index .tab_change a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 8px 10px 6px;
	width: 100%;
	min-height: 50px;
	background-color: #F0FAF7;
	border-radius: 8px 8px 0 0;
	border: 2px solid #ccc;
	border-bottom: 0;
}

.main .free_tab .tab_index .tab_change a strong {
	font-weight: normal;
}

.main .free_tab .tab_index .tab_change a:hover {
	text-decoration: none;
}

.main .free_tab .tab_index .tab_change.is-active a {
	text-decoration: none;
	background-color: #008027;
	border-color: #008027;
}

.main .free_tab .tab_index .tab_change.is-active a::before,
.main .free_tab .tab_index .tab_change.is-active a::after {
	position: absolute;
	bottom: calc(100% - 4px);
	display: block;
	content: "";
}

.main .free_tab .tab_index .tab_change.is-active a::before {
	left: 8px;
	width: 70px;
	height: 95px;
	background-image: url(img/midorin.png);
	background-size: cover;
}

.main .free_tab .tab_index .tab_change.is-active a::after {
	right: 8px;
	width: 68px;
	height: 84px;
	background-image: url(img/mapoo.png);
	background-size: cover;
}

.main .free_tab .tab_index .tab_change a:focus-visible {
	outline-offset: -2px;
}

.main .free_tab .tab_index .tab_change.is-active a>strong {
	padding-left: 18px;
	color: #fff;
	background-image: url(img/icon/arrow-bottom.png);
	background-repeat: no-repeat;
	background-size: 10px;
	background-position: left center;
}

.main .free_tab li.tab_panel {
	margin: 0;
	padding: 0;
}

.main .free_tab li.tab_panel::before {
	display: none;
}

.main .free_tab li.tab_panel .new,
.main .free_tab li.tab_panel .topics {
	padding: 0;
}

.main .free_tab h2 {
	background: none;
	position: absolute;
	z-index: -1;
	color: #333;
	padding: 0;
	font-size: 100%;
}

.main .free_tab .tab_panel>* {
	margin-top: 0;
}

.main .free_tab .new_lower,
.main .free_tab .topics_lower {
	background: #fff;
}

.main .free_tab .new_lower ul li,
.main .free_tab .topics_lower ul li {
	padding: 0;
}

.main .free_tab .new_lower ul li::before,
.main .free_tab .topics_lower ul li::before {
	display: none;
}


/**** ピックアップ1のスタイル ****/
.main .pickup {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .pickup_lower {
	padding: 4px 16px 16px;
}

.main .pickup_lower .pickup_sub {
	margin-top: 20px;
}

.main .pickup_lower .pickup_sub:first-child {
	margin-top: 12px;
}

.main .pickup_lower .pickup_sub h3 {
	background: #F5F5F1;
	padding: 4px 6px;
	font-size: 110%;
	border-radius: 8px;
}

.inbody.faq .main .pickup_lower .pickup_sub h3 {
	border-radius: 0px;
}

.main .pickup_lower .pickup_sub p {
	font-size: 85%;
	margin-top: 6px;
}

/**** ピックアップ2のスタイル ****/
.main .pickup2 {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .pickup2_lower {
	padding: 4px 16px 16px;
}

.main .pickup2_lower .pickup_sub {
	margin-top: 20px;
}

.main .pickup2_lower .pickup_sub:first-child {
	margin-top: 12px;
}

.main .pickup2_lower .pickup_sub h3 {
	background: #F5F5F1;
	padding: 4px 6px;
	font-size: 110%;
	border-radius: 8px;
}

.inbody.faq .main .pickup2_lower .pickup_sub h3 {
	border-radius: 0px;
}

.main .pickup2_lower .pickup_sub p {
	font-size: 85%;
	margin-top: 6px;
}

/**** ランキングのスタイル ****/
.main .ranking {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .ranking_lower {
	padding: 4px 16px 16px 10px;
}

.main .ranking_lower ol li {
	list-style-type: decimal;
	padding-left: 0;
	margin-left: 40px;
}

.main .ranking_lower ol li::before {
	display: none;
}

/**** 人口・世帯数のスタイル ****/
.main .j_s {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .j_s_lower {
	padding: 4px 16px 16px;
}

.main .j_s li {
	padding-left: 0;
}

.main .j_s li::before {
	display: none;
}

.main .j_s li b {
	margin-right: 8px;
}

.main .j_s p {
	font-size: 85%;
}

/**** バナー広告のスタイル ****/
.main .bana {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .bana_h2 {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 20px;
}

.main .bana_h2::before {
	position: absolute;
	bottom: 0;
	left: calc(50% - 25px);
	display: block;
	content: "";
	width: 50px;
	height: 10px;
	background-color: #00FF00;
	border: 3px solid #333;
	border-radius: 5px;
}

.main .bana h2 {
	padding: 0;
	border-radius: 0;
}

.main .bana h2::before {
	display: none;
}

.main .bana_h2 p {
	margin-top: 4px;
	width: 100%;
	font-size: 87.5%;
	text-align: center;
	font-weight: normal;
}

.main .bana_lower {
	margin: 0 auto;
	padding-top: 8px;
	max-width: 980px;
	width: 100%;
}

.main .bana ul {
	display: flex;
	flex-wrap: wrap;
}

.main .bana li {
	margin: 16px 8px 0 8px;
	padding-left: 0;
	width: 180px;
}

.main .bana li::before {
	display: none;
}

.main .bana li a {
	display: block;
}

.main .bana li img {
	width: 100%;
	border: 1px solid #777;
	border-radius: 8px;
}

.main .bana li .window {
	margin-top: 5px;
}

/* @media only screen and (max-width: 1024px) {
	.main .bana li {
		margin: 12px 0 0;
		padding: 0 4px;
		width: calc(100% / 3);
	}
} */

@media only screen and (max-width: 480px) {
	.main .bana li {
		margin: 12px 10px 0 0;
		width: calc(50% - 5px);
	}

	.main .bana li:nth-child(even) {
		margin: 12px 0 0;
	}

	.main .bana_h2 p {
		margin-left: 0px;
	}
}

/**** RSSのスタイル ****/
.main .rss {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .rss .rss_lower {
	padding: 4px 16px 16px;
}

.main .rss li {
	padding-left: 0;
}

.main .rss li::before {
	display: none;
}

/**** 外部RSSのスタイル ****/
.main .rssfide {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .rssfide .h3 {
	overflow: hidden;
}

.main .rssfide .h3 h3 {
	float: left;
	margin: 10px 12px 10px 0;
}

.main .rssfide .h3 p {
	float: left;
	padding: 8px 0;
	margin: 0;
}

.main .rssfide .rssfide_lower {
	padding: 4px 16px 16px;
}

.main .rssfide .rssfide_management {
	background: #efefef;
	font-size: 85%;
	padding: 8px;
	margin-top: 12px;
}

.main .rssfide .rssfide_management .title {
	margin: 0 0 8px;
	padding: 0 0 4px;
	border-bottom: 1px solid #777;
}

.main .rssfide .rssfide_management .rssfide_copy {
	margin-top: 6px;
}

.main .rssfide .rssfide_management li {
	padding: 0;
	margin: 0;
}

.main .rssfide .rssfide_management li::before {
	display: none;
}

.main .rssfide .rssfide_list li p {
	padding: 0;
	margin: 0;
	width: 100%;
}

.main .rssfide .rssfide_list li .list p {
	font-size: 85%;
	margin-top: 4px;
}

/**** リンク・画像領域（画像）のスタイル ****/
.main .image {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
	text-align: center;
}

.main .image h2 {
	background: none;
}

.main .image a {
	display: inline-block;
}

.main .image .image_img {
	display: block;
}

.main .image img {
	border: 1px solid #777;
}

/**** リンク・画像領域（テキスト）のスタイル ****/
.main .link {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

/**** RSS一覧のスタイル ****/
.main .rss_list {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

/**** オプションのスタイル ****/
.main .option {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .option_lower {
	padding: 4px 16px 16px;
}

/**** FAQ（よくある質問）のスタイル ****/
.main .faq {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

/**** 新着FAQ ****/
.main .faq_new {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .faq_new_lower {
	padding: 4px 16px 16px;
}

.main .faq_new div.date {
	margin-left: 0;
	width: 100%;
}

.main .faq_new_lower p {
	font-size: 85%;
	margin-top: 4px;
}

/**** 見られているFAQのスタイル ****/
.main .popular {
	margin: 24px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .popular_lower {
	padding: 4px 16px 16px;
}

.main .popular_lower p {
	font-size: 85%;
	margin-top: 4px;
}

/******************** レイアウトCSS ********************/

/* .zone01_in,
.zone02_in,
.zone03_in,
.zone04_in{
	padding: 0 12px;
} */

/********************** 領域1個別のスタイル **********************/
@media print,
screen and (min-width: 1025px) {
	.main .zone0102 .zone01 .ilist_lower ul>li {
		margin-right: 0;
		width: 100%;
	}

	.main .zone0102 .zone01 .ilist2_lower ul>li {
		margin-right: 0;
		width: 100%;
	}

	.main .zone0102 .zone01 .more li {
		margin-left: 0;
		width: 100%;
	}

	.main .zone0102 .zone01 .bana ul {
		justify-content: center;
	}
}

/********************** 領域2個別のスタイル **********************/
@media print,
screen and (min-width: 1025px) {
	.main .zone0102 .zone02 .ilist_lower ul>li {
		width: calc((100% - 24.1px) / 3);
	}

	.main .zone0102 .zone02 .ilist_lower ul>li:nth-of-type(3n) {
		margin-right: 0;
	}

	.main .zone0102 .zone02 .ilist2_lower ul>li {
		width: calc((100% - 12.1px) / 2);
	}

	.main .zone0102 .zone02 .ilist2_lower ul>li:nth-of-type(even) {
		margin-right: 0;
	}
}

/********************** 領域3個別のスタイル **********************/

/********************** 領域4個別のスタイル **********************/


/**** ▼▼▼▼▼▼ メインビジュアル ▼▼▼▼▼▼ ****/
.main_vis .splide__track {
	/* border-radius: 64px 64px 0 0; */
}


/**** ▼▼ コントロールパネル ▼▼ ****/
.main_vis h2 {
	display: none;
}

.main_vis .control-panel {
	position: absolute;
	bottom: 16px;
	right: 16px;
	display: flex;
}

@media only screen and (max-width: 480px) {
	.main_vis .control-panel {
		position: static;
		padding: 4px 12px 16px;
		background-color: #008027;
	}
}

.main_vis .splide__pagination {
	margin: 0;
	padding: 0;
}

/* 番号リスト */
.main_vis .splide__pagination button,
#main_outline .main_vis .splide__pagination button {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 2px 1px 1px 2px;
	width: 30px;
	min-height: 30px;
	color: #2b3095;
	background: #fff;
	border: 1px solid #008027;
	border-radius: 15px;
	outline: 1px solid #fff;
}

.main_vis .splide__pagination button.is-active,
#main_outline .main_vis .splide__pagination button.is-active {
	background: #008027;
}

/* 再生・停止 */
.main_vis .splide_nav {
	position: static;
	margin: 8px 0 0 8px;
	width: 100px;
}

.main_vis .splide_nav button,
#main_outline .main_vis .splide_nav button {
	color: #fff;
	background-color: #008027;
	border: 1px solid #008027;
	border-radius: 15px;
	outline: 1px solid #fff;
}

.main_vis .splide_nav button:hover,
#main_outline .main_vis .splide_nav button:hover {
	color: #fff;
	background-color: #015829;
}

.main_vis .splide_nav button.is-active::before,
#main_outline .main_vis .splide_nav button.is-active::before,
.main_vis .splide_nav button.is-active::after,
#main_outline .main_vis .splide_nav button.is-active::after {
	background-color: #fff;
}

.main_vis .splide_nav button:not(.is-active)::before,
#main_outline .main_vis .splide_nav button:not(.is-active)::before {
	border-left: 8px solid #fff;
}

/**** ▲▲ コントロールパネル ▲▲ ****/

/**** ▼▼ 別ウィンドウで開く ▼▼ ****/
.splide.main_vis .window {
	right: 40px;
}

/**** ▲▲ 別ウィンドウで開く ▲▲ ****/

/**** ▲▲▲▲▲▲ メインビジュアル ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ フローアイコン ▼▼▼▼▼▼ ****/
.siyou_link-group {
	position: relative;
	z-index: 10;
}

@media only screen and (max-width: 1024px) {
	.siyou_link-group {
		display: flex;
		flex-wrap: wrap;
		margin-top: 30px;
		padding: 0 12px;
	}
}

.siyou_link-group .siyou_link {
	position: absolute;
	bottom: 60px;
	margin-top: 0;
	max-width: 176px;
	width: 100%;
	height: auto;
	z-index: 2;
	animation: 2.3s flow-icon_move 1;
}

@media only screen and (max-width: 1024px) {
	.siyou_link-group .siyou_link {
		position: static;
		animation: none;
		max-width: none;
		width: calc(50% - 10px);
	}

	.siyou_link-group .siyou_link1 {
		margin-right: auto;
	}
}

@media only screen and (max-width: 480px) {
	.siyou_link-group .siyou_link {
		width: 100%;
	}

	.siyou_link-group .siyou_link2 {
		margin-top: 16px;
	}
}

@keyframes flow-icon_move {

	0% {
		bottom: 70vh;
		transform: scale(0.6, 1.2);
	}

	33%,
	100% {
		bottom: 60px;
		transform: scale(1);
	}

	66% {
		bottom: 160px;
		transform: scale(0.6, 1.2);
	}

}

.siyou_link-group .siyou_link:nth-of-type(1) {
	right: 200px;
}

.siyou_link-group .siyou_link:nth-of-type(2) {
	right: 12px;
}

.siyou_link-group .siyou_link a {
	display: inline-block;
	transition: .2s;
	outline: 1px solid #fff;
	border-radius: 50%;
}


@media (min-width: 1024px) {
	.siyou_link-group .siyou_link a:hover {
		transform: rotate(10deg);
	}
}

@media only screen and (max-width: 1024px) {
	.siyou_link-group .siyou_link a {
		border: 2px solid #333;
		outline: 0;
		border-radius: 12px;
		overflow: hidden;
	}


}

/**** ▲▲▲▲▲▲ フローアイコン ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ 検索ゾーン ▼▼▼▼▼▼ ****/
.main .src-zone {
	background-color: #008027;
}

.main .src-zone .container {
	margin: 0 auto;
	padding: 8px 12px;
	max-width: 1224px;
	width: 100%;
}

.main .src-zone .content {
	display: flex;
	flex-wrap: wrap;
	padding: 4px 16px 16px;
	background-color: #fff;
	border-radius: 16px;
}

.src-zone .src-window {
	margin-top: 12px;
	margin-right: 16px;
	width: 320px;
}

.src-zone .id-window {
	margin-top: 12px;
	margin-right: 32px;
	width: 280px;
}

@media only screen and (max-width: 480px) {
	.main .src-zone .content {
		padding: 4px 12px 16px;
	}

	.src-zone .src-window,
	.src-zone .id-window {
		margin-right: 0;
		width: 100%;
	}
}

#body .src-zone input[type="text"] {
	width: calc(100% - 105px) !important;
	border-right: 0 !important;
	border-radius: 8px 0 0 8px !important;
}

#body .src-zone .id-window input[type="text"]::placeholder {
	font-size: 70%;
	letter-spacing: 0;
}

#main_outline .src-zone button {
	padding: 4px;
	width: 105px;
	min-height: 40px;
	font-size: 87.5%;
	letter-spacing: 0;
	background-color: #008027;
	border: 1px solid #008027;
	border-radius: 0 8px 8px 0;
	transition: all 0.3s;
}

#main_outline .src-zone button:hover {
	color: #333;
	background-color: #fff;
}

#main_outline .src-zone button span {
	padding-left: 17px;
	background-image: url(img/icon/src.png);
	background-repeat: no-repeat;
	background-size: 14px;
	background-position: left center;
	transition: all 0.3s;
}

#main_outline .src-zone button:hover span {
	background-image: url(img/icon/src2.png);
}

/**** ▼▼ 注目キーワード ▼▼ ****/
.hot-keyword {
	display: flex;
	flex-wrap: wrap;
	margin-top: 12px;
	width: calc(100% - 336px);
	/* width: calc(100% - 648px); ID検索を表示にしたため */
	border-left: 2px solid #008027;
}

@media only screen and (max-width: 1024px) {
	.hot-keyword {
		margin-top: 20px;
		width: 100%;
	}
}

.hot-keyword p.title {
	margin: 9px 16px 0 0;
	padding-left: 32px;
	width: 172px;
	font-size: 125%;
	letter-spacing: 0;
}

.hot-keyword ul {
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 188px);
}

@media only screen and (max-width: 480px) {

	.hot-keyword p.title,
	.hot-keyword ul {
		padding-left: 12px;
		width: 100%;
	}
}

.hot-keyword ul li {
	margin: 12px 16px 0 0;
	padding-left: 0;
}

.hot-keyword ul li::before {
	display: none;
}

.hot-keyword ul li a {
	letter-spacing: 0;
}

/**** ▲▲ 注目キーワード ▲▲ ****/

/**** ▲▲▲▲▲▲ 検索ゾーン ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ 注目アイテム ▼▼▼▼▼▼ ****/
.main .ilist2.hot-item {
	margin: 70px auto 0;
	max-width: 1084px;
	width: 100%;
}

@media only screen and (max-width: 1084px) {
	.main .ilist2.hot-item {
		max-width: 656px;
	}
}

@media only screen and (max-width: 1024px) {
	.main .ilist2.hot-item {
		margin: 30px auto 0;
	}
}

.main .ilist2.hot-item h2 {
	display: none;
}

.main .hot-item .ilist2_lower ul {
	justify-content: center;
}

.main .hot-item .ilist2_lower ul>li {
	margin: 16px 16px 0 0;
	width: calc((100% - 64px) / 5);
}

.main .hot-item .ilist2_lower ul>li:last-child {
	margin: 16px 0 0;
}

@media only screen and (max-width: 1084px) {
	.main .hot-item .ilist2_lower ul>li {
		margin: 16px 16px 0 0;
		width: calc((100% - 32px) / 3);
	}

	.main .hot-item .ilist2_lower ul>li:nth-child(3) {
		margin: 16px 0 0;
	}
}

@media only screen and (max-width: 480px) {

	.main .hot-item .ilist2_lower ul>li,
	.main .hot-item .ilist2_lower ul>li:nth-child(3) {
		margin: 16px 16px 0 0;
		width: calc(50% - 8px);
	}

	.main .hot-item .ilist2_lower ul>li:nth-child(even) {
		margin: 16px 0 0;
	}
}

.main .hot-item .ilist2_lower ul>li a {
	display: flex;
	border: 2px solid #333;
	border-radius: 24px;
	overflow: hidden;
}

.main .hot-item .ilist2_lower ul>li .ilist_in {
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
}

.main .hot-item .ilist2_lower ul>li .ilist_left {
	width: 100%;
}

.main .hot-item .ilist2_lower ul>li .ilist_left img {
	border: 0;
}

.main .hot-item .ilist2_lower ul>li .ilist_right {
	display: none;
}

/**** ▲▲▲▲▲▲ 注目アイテム ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ 注目ポイント ▼▼▼▼▼▼ ****/
.key_point {
	margin: 80px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.key_point h2 {
	display: none;
}

.key_point .splide__arrows {
	padding: 0 70px;
}

.key_point ul.splide__list li a {
	text-decoration: underline;
}

.key_point ul.splide__list li a:hover {
	text-decoration: none;
}

.key_point ul.splide__list li a .ilist_left {
	display: flex;
	border: 2px solid #333;
	border-radius: 24px;
	overflow: hidden;
}

.key_point ul.splide__list li a .ilist_left img {
	border: 0;
}

.key_point ul.splide__list li a .ilist_right .ilist_title {
	margin-top: 8px;
	padding: 0 8px;
}

.key_point ul.splide__list li a .ilist_right .ilist_text {
	display: none;
}

/**** ▼▼ 前へ・次へ ▼▼ ****/
.key_point .splide__arrows button.splide__arrow,
#main_outline .key_point .splide__arrows button.splide__arrow {
	color: #fff;
	background-color: #008027;
	border: 1px solid #008027;
	transition: all 0.3s;
}

.key_point .splide__arrows button.splide__arrow:hover,
#main_outline .key_point .splide__arrows button.splide__arrow:hover {
	background-color: #015829;
	border: 1px solid #015829;
}

.key_point .splide__arrow::before {
	top: calc(50% - 15px);
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
}

/**** ▲▲ 前へ・次へ ▲▲ ****/

/**** ▼▼ コントロールパネル ▼▼ ****/
.key_point .control-panel {
	display: flex;
	justify-content: center;
	margin-top: 20px;
}

.key_point .splide__arrows .splide__pagination,
.splide:not(.is-overflow).key_point .splide__pagination {
	display: none !important;
}

.key_point .splide_nav {
	position: static;
	margin: 0;
	width: 65px;
}

.key_point .splide_nav button,
#main_outline .key_point .splide_nav button {
	padding: 3px 4px 3px 20px;
	width: 100%;
	min-height: 40px;
	color: #fff;
	background-color: #008027;
	border: 1px solid #008027;
	border-radius: 15px;
	outline: 1px solid #fff;
}

.key_point .splide_nav button:hover,
#main_outline .key_point .splide_nav button:hover {
	color: #fff;
	background-color: #015829;
}

.key_point .splide_nav button:not(.is-active)::before,
#main_outline .key_point .splide_nav button:not(.is-active)::before,
.key_point .splide_nav button.is-active::before,
#main_outline .key_point .splide_nav button.is-active::before,
.key_point .splide_nav button.is-active::after,
#main_outline .key_point .splide_nav button.is-active::after {
	top: 14px;
	left: 11px;
}

.key_point .splide_nav button.is-active::after,
#main_outline .key_point .splide_nav button.is-active::after {
	left: 15px;
}

.key_point .splide_nav button:not(.is-active)::before,
#main_outline .key_point .splide_nav button:not(.is-active)::before {
	border-left: 8px solid #fff;
}

.key_point .splide_nav button.is-active::before,
#main_outline .key_point .splide_nav button.is-active::before,
.key_point .splide_nav button.is-active::after,
#main_outline .key_point .splide_nav button.is-active::after {
	background-color: #fff;
}

/**** ▲▲ コントロールパネル ▲▲ ****/

/**** ▲▲▲▲▲▲ 注目ポイント ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ もしものときは ▼▼▼▼▼▼ ****/
.in-case {
	margin: 60px auto 0;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.main .ilist2.in-case_in {
	padding: 30px 20px;
	background-color: #FFE6E6;
	border: 3px solid #cf4b4b;
	border-radius: 20px;
}

@media only screen and (max-width: 480px) {
	.main .ilist2.in-case_in {
		padding: 30px 12px;
	}
}

.in-case h2 {
	padding: 0;
}

.in-case h2::before {
	display: none;
}

.main .in-case .ilist2_lower ul>li {
	margin: 12px 12px 0 0;
	width: calc((100% - 36px) / 4);
}

.main .in-case .ilist2_lower ul>li:last-child {
	margin: 12px 0 0;
}

@media only screen and (max-width: 1024px) {
	.main .in-case .ilist2_lower ul>li {
		margin: 12px 12px 0 0;
		width: calc(50% - 6px);
	}

	.main .in-case .ilist2_lower ul>li:nth-child(even) {
		margin: 12px 0 0;
	}
}

@media only screen and (max-width: 480px) {
	.main .in-case .ilist2_lower ul>li {
		margin: 12px 0 0;
		width: 100%;
	}
}

.main .in-case .ilist2_lower ul>li a {
	padding: 20px;
	font-size: 112.5%;
	font-weight: bold;
	text-align: left;
	background-color: #fff;
	border: 2px solid #803333;
	border-radius: 8px;
}

.main .in-case .ilist2_lower ul>li a:hover {
	background-color: #fffbcc;
}

.main .in-case .ilist2_lower ul>li .ilist_in {
	padding: 0;
	background-color: #fff;
	border: 0;
	border-radius: 0;
}

.main .in-case .ilist2_lower ul>li a:hover .ilist_in {
	background-color: transparent;
}

.main .in-case .ilist2_lower ul>li .ilist_left {
	width: 70px;
}

.main .in-case .ilist2_lower ul>li .ilist_left img {
	border: 0;
}

.main .in-case .ilist2_lower ul>li .ilist_right {
	width: calc(100% - 70px);
}

/**** ▲▲▲▲▲▲ もしものときは ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ 新着情報・お知らせ ▼▼▼▼▼▼ ****/
.city-info {
	position: relative;
	margin-top: 64px;
	padding: 70px 0 114px;
	background-image: url(img/bg-info.jpg);
	background-size: cover;
	border-radius: 64px 0 0 0;
}

.city-info::after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	content: "";
	width: 100%;
	height: 64px;
	background-color: #fff;
	border-radius: 0 64px 0 0;
}

.main .free_tab.city-tab .tab_index {
	margin-top: 0;
}

/* ボタン */
.main .city-info .more {
	font-size: 100%;
}

.main .city-info .more li {
	margin: 0;
	max-width: 300px;
	width: 100%;
}

.main .city-info .more a {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 8px 28px;
	min-height: 48px;
	width: 100%;
	background-color: #fff;
	background-image: url(img/icon/arrow.png);
	background-repeat: no-repeat;
	background-size: 8px;
	background-position: left 16px center;
	border: 1px solid #008027;
}

.main .city-info .more a:hover {
	background: #fffbcc;
	border-color: #fffbcc !important;
	background-image: url(img/icon/arrow.png);
	background-repeat: no-repeat;
	background-size: 8px;
	background-position: left 16px center;
	border: 1px solid #008027 !important;
}

/**** ▲▲▲▲▲▲ 新着情報・お知らせ ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ くらしナビ ▼▼▼▼▼▼ ****/
.main .ilist.life-navi {
	margin-top: 80px;
}

.life-navi h2 {
	position: relative;
	padding: 0 0 12px;
	width: 100%;
	text-align: center;
}

.life-navi h2::before {
	position: absolute;
	bottom: 0;
	left: calc(50% - 25px);
	display: block;
	content: "";
	width: 50px;
	height: 10px;
	background-color: #00FF00;
	border: 3px solid #333;
	border-radius: 5px;
}

.main .life-navi .ilist_lower ul>li {
	margin: 24px 24px 0 0;
	width: calc((100% - 120px) / 6);
}

.main .life-navi .ilist_lower ul>li:nth-child(6n) {
	margin: 24px 0 0;
}

@media only screen and (max-width: 1024px) {

	.main .life-navi .ilist_lower ul>li,
	.main .life-navi .ilist_lower ul>li:nth-child(6n) {
		margin: 24px 24px 0 0;
		width: calc((100% - 72px) / 4);
	}

	.main .life-navi .ilist_lower ul>li:nth-child(4n) {
		margin: 24px 0 0;
	}
}

@media only screen and (max-width: 600px) {

	.main .life-navi .ilist_lower ul {
		padding-top: 12px;
	}

	.main .life-navi .ilist_lower ul>li,
	.main .life-navi .ilist_lower ul>li:nth-child(4n),
	.main .life-navi .ilist_lower ul>li:nth-child(6n) {
		margin: 12px 12px 0 0;
		width: calc(50% - 6px);
	}

	.main .life-navi .ilist_lower ul>li:nth-child(even) {
		margin: 12px 0 0;
	}
}

.main .life-navi .ilist_lower ul>li a {
	padding: 32px 12px 16px;
	font-size: 112.5%;
	font-weight: bold;
	background-color: #F5F5F1;
	border: 2px solid #333;
	border-radius: 8px;
	transition: all 0.3s;
}

.main .life-navi .ilist_lower ul>li a:hover {
	background-color: #fffbcc;
}

.main .life-navi .ilist_lower ul>li .ilist_in {
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
}

.main .life-navi .ilist_lower ul>li a:hover .ilist_in {
	background-color: transparent;
}

.main .life-navi .ilist_lower ul>li .ilist_left {
	margin: 0 auto;
	width: 80px;
}

.main .life-navi .ilist_lower ul>li .ilist_left img {
	border: 0;
}

.main .life-navi .ilist_lower .ilist_right {
	margin-top: 21px;
}

.main .life-navi .ilist_lower ul>li .ilist_text {
	display: none;
}

/**** ▲▲▲▲▲▲ くらしナビ ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ 町の情報 ▼▼▼▼▼▼ ****/
.city-admin {
	margin-top: 90px;
	padding: 70px 0;
	background-color: #F5F5F1;
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), #fff calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #fff calc(100% - 1px));
	background-size: 10px 10px;
	background-repeat: repeat;
	background-position: center center;
}

.city-admin_in {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	padding: 0 12px;
	max-width: 1224px;
	width: 100%;
}

.city-admin h2 {
	position: relative;
	padding: 0 0 12px;
	width: 100%;
	text-align: center;
}

.city-admin h2::before {
	position: absolute;
	bottom: 0;
	left: calc(50% - 25px);
	display: block;
	content: "";
	width: 50px;
	height: 10px;
	background-color: #00FF00;
	border: 3px solid #333;
	border-radius: 5px;
}

/**** ▼▼ 市政リスト ▼▼ ****/
.city-admin .city-list {
	margin: 4px auto 0 0;
	padding: 0;
	width: 52.5%;
}

@media only screen and (max-width: 820px) {
	.city-admin .city-list {
		width: 100%;
	}
}

.city-admin .city-list h2 {
	display: none;
}

.main .city-admin .city-list .ilist2_lower ul>li {
	margin: 20px 20px 0 0;
	text-align: center;
	width: calc(50% - 10px);
}

.main .city-admin .city-list .ilist2_lower ul>li:nth-child(even) {
	margin: 20px 0 0;
}

@media only screen and (max-width: 480px) {
	.main .city-admin .city-list .ilist2_lower ul>li {
		margin-right: 0;
		width: 100%;
	}
}

.main .city-admin .ilist2_lower ul>li a {
	padding: 10px;
	font-size: 112.5%;
	font-weight: bold;
	text-align: left;
	background-color: #fff;
	border: 2px solid #333;
	border-radius: 8px;
	overflow: hidden;
	transition: all 0.3s;
}

.main .city-admin .ilist2_lower ul>li a:hover {
	background-color: #fffbcc;
}

.main .city-admin .ilist2_lower ul>li .ilist_in {
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
}

.main .city-admin .ilist2_lower ul>li a:hover .ilist_in {
	background-color: transparent;
}

.main .city-admin .ilist2_lower ul>li .ilist_left {
	width: 90px;
	border: 2px solid #333;
	border-radius: 4px;
	overflow: hidden;
}

.main .city-admin .ilist2_lower ul>li .ilist_left img {
	border: 0;
}

.main .city-admin .ilist2_lower ul>li .ilist_right {
	margin-left: 0;
	padding-left: 16px;
	width: calc(100% - 90px);
}

/**** ▼▼ 広報まつぶし ▼▼ ****/
.city-admin .city-ad {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-top: 24px;
	padding: 30px 20px;
	width: calc(44% + 2px);
	background-color: #fff;
	border: 2px solid #f0f0f0;
	border-radius: 20px;
}

@media only screen and (max-width: 820px) {
	.city-admin .city-ad {
		margin-top: 40px;
		width: 100%;
	}
}

@media only screen and (max-width: 480px) {
	.city-admin .city-ad {
		display: block;
	}
}

.city-admin .city-ad h2 {
	padding: 0;
	font-size: 150%;
}

.city-admin .city-ad h2::before {
	display: none;
}

.city-admin .city-ad .ad-img {
	width: 190px;
}

@media only screen and (max-width: 480px) {

	.city-admin .city-ad .ad-img {
		margin: 30px auto 0;
	}
}

.city-admin .city-ad .ad-img a {
	display: block;
	margin-top: 10px;
	border: 2px solid #333;
	border-radius: 4px;
	overflow: hidden;
}

.city-admin .city-ad .content {
	margin: 10px 0 0 auto;
	width: calc(100% - 230px);
}

@media only screen and (max-width: 480px) {
	.city-admin .city-ad .content {
		width: 100%;
	}
}

.city-admin .city-ad ul {
	margin-top: 40px;
}

.city-admin .city-ad ul.btn-group li {
	margin-top: 0;
	padding: 0;
}

.city-admin .city-ad ul.btn-group li:last-child {
	margin-top: 20px;
}

.city-admin .city-ad ul.btn-group li::before {
	display: none;
}

.city-admin .city-ad ul.btn-group li a {
	display: flex;
	align-items: center;
	padding: 10px 12px;
	min-height: 40px;
	text-decoration: none;
	border: 2px solid;
	border-radius: 4px;
}

@media only screen and (max-width: 480px) {
	.city-admin .city-ad ul.btn-group li a {
		justify-content: center;
	}
}

.city-admin .city-ad ul.btn-group li:first-child a {
	color: #fff;
	font-weight: bold;
	background-color: #008027;
	border-color: #008027;
	transition: all 0.3s;
}

.city-admin .city-ad ul.btn-group li:first-child a:hover {
	color: #333;
	background-color: #fff;
}

.city-admin .city-ad ul.btn-group li:last-child a {
	background-color: #F5F5F1;
	border-color: #333;
	transition: all 0.3s;
}

.city-admin .city-ad ul.btn-group li:last-child a:hover {
	background-color: #fffbcc;
}


/**** ▼▼ SNS ▼▼ ****/
.city-admin .city-sns {
	margin: 30px auto 0 0;
	padding: 0;
	width: 52.5%;
}

@media only screen and (max-width: 820px) {
	.city-admin .city-sns {
		width: 100%;
	}
}

.city-admin .city-sns h2 {
	padding: 0;
	font-size: 150%;
}

.city-admin .city-sns h2::before {
	display: none;
}


.main .city-admin .city-sns .ilist_lower ul>li {
	margin-right: 12px;
	width: calc((100% - 36px) / 4);
}

.main .city-admin .city-sns .ilist_lower ul>li:nth-child(4n) {
	margin-right: 0;
}

@media only screen and (max-width: 480px) {

	.main .city-admin .city-sns .ilist_lower ul>li,
	.main .city-admin .city-sns .ilist_lower ul>li:nth-child(4n) {
		margin-right: 12px;
		width: calc(50% - 6px);
	}

	.main .city-admin .city-sns .ilist_lower ul>li:nth-child(even) {
		margin-right: 0;
	}
}

.main .city-admin .city-sns .ilist_lower ul>li .ilist_in {
	padding: 0;
	background-color: transparent;
	border: 0;
	border-radius: 0;
}

.main .city-admin .city-sns .ilist_lower ul>li .ilist_left {
	padding: 20px;
	background-color: #fff;
	border: 2px solid #333;
	border-radius: 4px;
	transition: all 0.3s;
}

.main .city-admin .city-sns .ilist_lower ul>li a:hover .ilist_left {
	background-color: #fffbcc;
}

.main .city-admin .city-sns .ilist_lower ul>li .ilist_left img {
	width: 40px;
	border: 0;
}

.main .city-admin .city-sns .ilist_lower .ilist_right {
	margin-top: 6px;
}

.main .city-admin .city-sns .ilist_lower ul>li .ilist_text {
	display: none;
}

/**** ▼▼ 人口・世帯数 ▼▼ ****/
.main .city-j_s {
	margin: 30px 0 0;
	padding: 0;
	width: calc(44% + 2px);
}

@media only screen and (max-width: 820px) {
	.main .city-j_s {
		width: 100%;
	}
}

.city-admin .city-j_s .h2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.city-admin .city-j_s .h2 h2 {
	padding: 0;
	font-size: 150%;
	width: fit-content;
}

.city-admin .city-j_s .h2 p {
	margin-left: 12px;
}

.city-admin .city-j_s h2::before {
	display: none;
}

.main .city-j_s .j_s_lower {
	padding: 0;
	border: 0;
	border-radius: 0;
}

.main .city-j_s ul {
	display: flex;
	flex-wrap: wrap;
}

.main .city-j_s ul li {
	margin: 12px 12px 0 0;
	width: calc(50% - 6px);
}

.main .city-j_s ul li:nth-child(even) {
	margin: 12px 0 0;
}

@media only screen and (max-width: 480px) {
	.main .city-j_s ul {
		margin: 0 auto;
		width: 222px;
	}

	.main .city-j_s ul li {
		margin-right: 0;
		width: 100%;
	}
}

.main .city-j_s ul li b {
	display: inline-block;
	margin-right: 12px;
	padding: 2px 4px 0;
	width: 80px;
	text-align: center;
	background-color: #fff;
	border: 2px solid #f0f0f0;
	border-radius: 4px;
}

.main .city-j_s .j_s_lower p {
	text-align: right;
}

/**** ▲▲▲▲▲▲ 町の情報 ▲▲▲▲▲▲ ****/


/**** ▼▼▼▼▼▼ AAA ▼▼▼▼▼▼ ****/
/**** ▲▲▲▲▲▲ AAA ▲▲▲▲▲▲ ****/