@charset "utf-8";

/* 足あとを非表示 */
#footstep_wrap {
	display: none !important;
}

/* メイン */
#mymainback {
	width: auto;
	max-width: 2000px;
	margin: 0px auto;
	padding: 0px;
}

.top_main_box {
	width: var(--content-width, 1080px);
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.ttl_box h2 {
	margin: 0px;
	line-height: 1;
	text-align: center;
}
.ttl_box h2 img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
.ttl_box p {
	margin: 15px 0px 0px;
	text-align: center;
	color: #153d5d;
}

div.link_box {
	margin-top: 30px;
	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: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
}
div.link_box a,
#main .link a {
	display: inline-block;
	border: 1px solid #013c5a;
	border-radius: 30px;
	background: url("/img/common/icon-arrow-blue.png") no-repeat right 15px top 50% #ffffff;
	font-size: 1.5rem;
	line-height: 1.8rem;
	padding: 10px 25px 10px 15px;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	min-width: 200px;
	text-align: center;
	-webkit-transition: background-color 0.5s;
	-o-transition: background-color 0.5s;
	transition: background-color 0.5s;
}
#main .link a {
	min-width: 130px;
	background-color: transparent;
	margin-bottom: 8px;
}
div.link_box a:hover,
div.link_box a:focus,
#main .link a:hover,
#main .link a:focus {
	background-color: #f2f5f7;
	text-decoration: underline;
}

/* 背景1から4 */
.top_main_bg_wrap {
	overflow: hidden;
}

.top_main_bg1 {
	background: url("/img/top/bg-mv-yama.png") no-repeat center bottom,
				url("/img/top/bg-mv-img1.png") no-repeat left calc(50% - 710px) bottom 65px,
				url("/img/top/bg-mv-img2.png") no-repeat left calc(50% + 660px) bottom 20px,
				url("/img/top/bg-mv-sora.png") repeat-x center bottom #ffffff;
	padding-top: 30px;
	padding-bottom: 40px;
	min-height: 200px;
}

.top_main_bg2 {
	position: relative;
}
.top_main_bg2::before,
.top_main_bg2::after {
	content: '';
	display: block;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	position: absolute;
	z-index: 0;
	pointer-events: none;
}
.top_main_bg2::before {
	background-image: url("/img/top/bg-mv-img3.png");
	width: 966px;
	height: 701px;
	top: -55px;
	left: calc(50% + 35px);
}
.top_main_bg2::after {
	background-image: url("/img/top/bg-mv-img4.png");
	width: 314px;
	height: 181px;
	top: -70px;
	left: calc(50% - 780px);
}

.top_main_bg2_1 {
	background: #b5e0d5;
	padding-top: 20px;
	padding-bottom: 20px;
	min-height: 60px;
}
.top_main_bg2_2 {
	background: url("/img/top/bg-mv-midori.png") repeat-x center top #ffffff;
	padding-top: 20px;
}
.top_main_bg2_1 > div,
.top_main_bg2_2 > div {
	position: relative;
	z-index: 1;
}

.top_main_bg3 {
	background: #ffffff;
	padding-top: 60px;
	padding-bottom: 80px;
}

.top_main_bg4 {
	background: #ffffff;
	padding-bottom: 80px;
}
.top_main_bg4_1 {
	background: url("/img/top/bg-about-img2.png") no-repeat left calc(50% + 580px) bottom 20px #fcf3e4;
	padding-top: 80px;
	padding-bottom: 140px;
}
.top_main_bg4_2 {
	background: #ffffff;
	border-radius: 10px 10px 0px 0px;
	margin-top: -90px;
	padding: 40px 50px;
}

/* MV */
#top_mv {
	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;
	line-height: 1;
}

#top_photo_wrap {
	width: 680px;
}

#top_photo_list {
	position: relative;
}
#top_photo_list .photo a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
}
#top_photo_list .photo .photo_img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 680 / 382;
}
#top_photo_list .photo .photo_img img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: center;
	   object-position: center;
	border-radius: 10px;
	vertical-align: top;
}
#top_photo_list .photo .photo_caption {
	display: block;
	width: calc(100% - 240px);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-weight: bold;
	line-height: 1.5;
	padding: 15px 20px;
}
#top_photo_list .photo a:hover .photo_caption,
#top_photo_list .photo a:focus .photo_caption {
	text-decoration: underline;
}

/* MV（スライド） */
#top_photo_list .slide_control_box1 {
	width: 240px;
	position: absolute;
	top: 382px;
	right: 0px;
	z-index: 1;
	padding: 15px 0px;
	background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(25%, #e5f5f8));
	background-image: -o-linear-gradient(left, transparent, #e5f5f8 25%);
	background-image: linear-gradient(90deg, transparent, #e5f5f8 25%);
}

.slide_control_box1 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 0px 15px;
	line-height: 1;
}
.noslide .slide_control_box1 {
	display: none;
}

.slide_control_box1 button[class*="slide_control_"] {
	display: block;
	width: 30px;
	height: 30px;
	border: none;
	border-radius: 100%;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	color: inherit;
}
.slide_control_box1 button[class*="slide_control_"].is-active {
	display: none;
}
.slide_control_box1 button.slide_control_prev {
	background-image: url("/img/top/btn-slide-prev.png");
}
.slide_control_box1 button.slide_control_next {
	background-image: url("/img/top/btn-slide-next.png");
}
.slide_control_box1 button.slide_control_stop {
	background-image: url("/img/top/btn-slide-stop.png");
}
.slide_control_box1 button.slide_control_play {
	background-image: url("/img/top/btn-slide-start.png");
}

.slide_control_box1 .slide_pagination {
	width: auto;
}

/* バナー */
#top_mv_banner {
	width: 360px;
}

#top_mv_banner_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 10px;
}
#top_mv_banner_list .mvbnr {
	width: 100%;
}
#top_mv_banner_list .mvbnr a {
	display: block;
	text-decoration: none;
	color: inherit;
}
#top_mv_banner_list .mvbnr img {
	width: 100%;
	height: auto;
	vertical-align: top;
	border-radius: 10px;
}
#top_mv_banner_list .mvbnr .bnr_caption {
	display: block;
	padding: 10px 20px;
	font-size: var(--fontsize-main, 1.6rem);
	line-height: 1.5;
}
#top_mv_banner_list .mvbnr a:hover .bnr_caption,
#top_mv_banner_list .mvbnr a:focus .bnr_caption {
	text-decoration: underline;
}

/* 重要なお知らせ */
#top_important {
	border: 1px solid #cc0000;
	border-radius: 10px;
	background: #ffffff;
	overflow: hidden;
}

#top_important summary.top_important_ttl {
	margin: 0px;
	padding: 10px 80px 10px 40px;
	background: url("/img/common/icon-arrow-important-down.png") no-repeat right 40px top 50% #ffe0e5;
	color: #cc0000;
	list-style: none;
	cursor: pointer;
}
#top_important details[open] summary.top_important_ttl {
	background-image: url("/img/common/icon-arrow-important-up.png");
}
#top_important summary.top_important_ttl h2 {
	margin: 0px;
	display: inline-block;
	background: url("/img/common/icon-important.png") no-repeat left center transparent;
	color: inherit;
	font-size: 2.4rem;
	line-height: 3rem;
	padding: 10px 0px 10px 60px;
}

#top_important ul {
	border-top: 1px solid #cc0000;
	margin: 0px;
	padding: 30px 40px 15px;
	list-style: none;
}
#top_important ul li {
	width: 100%;
	display: table;
	margin: 0px 0px 15px;
}
#top_important ul li > span {
	display: table-cell;
	vertical-align: top;
}
#top_important ul li > span.article_date {
	width: calc(11em + 10px);
	font-size: var(--fontsize-detail-small, 1.6rem);
	padding-top: 0.1rem;
}

#top_important div.link_box {
	margin: 0px;
	padding: 0px 40px 30px;
}
#top_important div.link_box a {
	border-color: #cc0000;
	background-image: url("/img/common/icon-arrow-red.png");
}
#top_important div.link_box a:hover,
#top_important div.link_box a:focus {
	background-color: #fdeef1;
	text-decoration: underline;
}

/* 重要なお知らせ（文字拡大時） */
.font_size_changed #top_important ul li,
.font_size_changed #top_important ul li > span {
	display: block;
}
.font_size_changed #top_important ul li > span.article_date {
	width: auto;
	padding-top: 0px;
}

/* 生活ナビ */
#top_main_navi .ttl_box h2 {
	background: url("/img/top/bg-ttl-navi.png") no-repeat center top transparent;
	padding-top: 90px;
}

#top_main_navi .search_tab_wrap_bg {
	overflow: hidden;
}

#top_main_navi .search_tab_wrap {
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
	gap: 0px 30px;
	overflow: visible;
}

#top_main_navi .search_tab_wrap .search_tab {
	width: 340px;
}

#top_main_navi .search_tab .search_tab_box {
	width: 100vw;
	max-width: 2000px;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
#top_main_navi .search_tab details[open] .search_tab_box {
	-webkit-box-shadow: 0px -6px 6px 0px rgba(202,196,196,0.1);
	        box-shadow: 0px -6px 6px 0px rgba(202,196,196,0.1);
}

#top_main_navi .search_tab.shimin .search_tab_box {
	margin-left: 370px;
	margin-right: 0px;
}
#top_main_navi .search_tab.kosodate .search_tab_box {
	margin-left: 0px;
	margin-right: 0px;
}
#top_main_navi .search_tab.senior .search_tab_box {
	margin-left: -370px;
	margin-right: 0px;
}
#top_main_navi .search_tab .search_tab_box .search_tab_box2 {
	width: 1080px;
	margin: 0px auto;
}

#top_main_navi .search_tab .search_tab_box .box1 div[class*="link"] a span.box .ttl {
	font-size: 2.4rem;
	line-height: 3.8rem;
}

/* 市からのお知らせ */
#top_main_news .ttl_box h2 {
	background: url("/img/top/bg-ttl-news.png") no-repeat center top transparent;
	padding-top: 60px;
}

/* トピックス */
#top_topics {
	margin-top: 60px;
}

#lettering {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	gap: 40px 45px;
}

.lettering_box {
	width: 330px;
	border-bottom: 2px solid #013c5a;
	background: url("/img/common/icon-arrow-circle-blue.png") no-repeat right 0px bottom 20px transparent;
	position: relative;
	overflow: hidden;
}
.lettering_box a::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	z-index: 1;
}

.lettering_box:hover .lettering_box_img {
	opacity: 0.75;
}

.lettering_box_img div {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 330 / 231;
	overflow: hidden;
	background: #f3f5f7;
	border-radius: 10px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.lettering_box_img div:empty {
	background: url("/img/common/noimage.png") no-repeat center center #ffffff;
	background-size: contain;
	border: 1px solid #bfced6;
}
.lettering_box_img div a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
}
.lettering_box_img div img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: center;
	   object-position: center;
}

.lettering_box_text {
	padding: 20px 20px 60px;
}
.lettering_box_text .article_date {
	font-size: var(--fontsize-main-small, 1.5rem);
}
.lettering_box_text .article_title a {
	color: #153d5d;
	font-weight: bold;
}

/* タブ */
#top_tab_wrap {
	margin-top: 60px;
}
#top_tab_title ul {
	margin: 0px 0px 4px;
	padding: 0px;
	list-style: none;
	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: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	gap: 0px 4px;
}
#top_tab_title ul li {
	width: 100%;
}
#top_tab_title ul li button {
	display: block;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid transparent;
	border-radius: 10px 10px 0px 0px;
	background: #f3f5f7;
	color: #666666;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 2.8rem;
	text-decoration: none;
	text-align: center;
	margin: 10px 0px 0px;
	padding: 15px 10px;
}
#top_tab_title ul li button:hover {
	text-decoration: underline;
}
#top_tab_title ul li.tab_on button {
	margin: 0px;
	padding: 20px 10px;
	border-radius: 10px;
	background: #013c5a;
	color: #ffffff;
	font-size: 2rem;
	position: relative;
}
#top_tab_title ul li.tab_on button::before {
	content: '';
	display: block;
	width: 0px;
	height: 0px;
	border: 12px solid transparent;
	border-bottom-width: 0px;
	border-top-width: 16px;
	border-top-color: #013c5a;
	position: absolute;
	top: calc(100% + 4px);
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
#top_tab_title ul li.tab_on button:hover {
	text-decoration: none;
}

#top_tab_detail p.no_data {
	background: #f3f5f7;
	border-radius: 0px 0px 10px 10px;
	margin: 0px;
	padding: 30px;
	text-align: center;
}

.top_news_list ul {
	background: #f3f5f7;
	border-radius: 0px 0px 10px 10px;
	margin: 0px;
	padding: 30px 30px 40px;
	list-style: none;
}
.top_news_list ul li {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0px;
	padding: 15px 0px;
	border-bottom: 1px dashed #b0bdc8;
}
.top_news_list ul li > span {
	display: table-cell;
	vertical-align: top;
}
.top_news_list ul li > span.article_date {
	width: calc(11em + 10px);
	font-size: var(--fontsize-detail-small, 1.6rem);
	padding-top: 0.1rem;
}
.top_news_list ul li a {
	color: #153d5d;
	font-weight: bold;
}

.top_news_list img.icon_new {
	vertical-align: middle;
	margin-top: -5px;
	margin-left: 10px;
	width: 36px;
	height: auto;
}

/* 新着情報（文字拡大時） */
.font_size_changed .top_news_list  ul li,
.font_size_changed .top_news_list  ul li > span {
	display: block;
}
.font_size_changed .top_news_list  ul li > span.article_date {
	width: auto;
	padding-top: 0px;
}

/* カウントダウン */
#count_down_area_1 h3 {
	margin: 60px 0px 20px;
	font-size: 2.4rem;
}

.count_down_box_wrap {
	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: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	gap: 40px 80px;
}
.count_down_box {
	width: calc(50% - 40px);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #f2f5f7;
	border: 1px solid transparent;
	border-radius: 10px;
	padding: 30px;
}

.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_box2 > span {
	display: inline-block;
	vertical-align: top;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.count_down_box2 > span.count_img {
	width: 200px;
}
.count_down_box2 > span.count_img > span {
	display: block;
}
.count_down_box2 > span.count_img > span img {
	width: 100%;
	height: auto;
	vertical-align: top;
	border-radius: 10px;
}

.count_down_box2 > span.count_txt {
	width: calc(100% - 220px);
}
.count_down_box2 > span.count_txt:only-child {
	width: 100%;
}
.count_down_box2 > span.count_txt > span {
	display: block;
}
.count_down_box2 > span.count_txt > span.count_title {
	font-weight: bold;
}
.count_down_box2 > span.count_txt > span.count_comment {
	margin-top: 10px;
	font-size: 1.4rem;
}
.count_down_box2 > span.count_txt > span.count_day {
	margin-top: 10px;
	color: #cc0000;
	text-align: right;
}
.count_down_box2 > span.count_txt > span.count_day span {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	margin-left: 0.5em;
	margin-right: 0.25em;
}

/* 飯塚市について */
.top_main_bg4_2_box {
	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;
	gap: 45px 40px;
	position: relative;
}
.top_main_bg4_2_box::before {
	content: '';
	display: block;
	width: 141px;
	height: 107px;
	background: url("/img/top/bg-about-img1.png") no-repeat center top transparent;
	background-size: contain;
	position: absolute;
	top: -110px;
	left: calc(50% - 600px);
	z-index: 0;
	pointer-events: none;
}

.top_main_bg4_2_box > div {
	width: calc(50% - 20px);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.top_main_bg4_2_box > div.ttl_box {
	width: 100%;
	margin-bottom: 20px;
}

/* 市長等バナー */
.top_info_banner_list {
	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 20px;
}
.top_info_banner_list .ifbnr {
	width: calc(50% - 10px);
}
.top_info_banner_list .ifbnr img {
	width: 100%;
	height: auto;
	vertical-align: top;
	border-radius: 10px;
}
.top_info_banner_list .ifbnr a {
	display: block;
	text-decoration: none;
}
.top_info_banner_list .ifbnr a:hover,
.top_info_banner_list .ifbnr a:focus {
	text-decoration: underline;
}
.top_info_banner_list .ifbnr .bnr_caption {
	display: block;
	margin-top: 15px;
}

/* 時計 */
.top_tokei_ttl {
	margin-bottom: 10px;
	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: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}
.top_tokei_ttl h3 {
	margin: 0px;
	font-size: 2.4rem;
}
.top_tokei_ttl p {
	margin: 0px;
}

.top_tokei_img {
	width: 520px;
	height: 290px;
	position: relative;
}

#tokei_photo {
	width: 100%;
	height: auto;
	aspect-ratio: 520 / 290;
	position: relative;
	overflow: hidden;
	background: #ffffff;
	border-radius: 10px;
}
#tokei_photo .clock-image {
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: center;
	   object-position: center;
	opacity: 0;
	-webkit-transition: opacity 1.0s ease-in-out;
	-o-transition: opacity 1.0s ease-in-out;
	transition: opacity 1.0s ease-in-out;
}
#tokei_photo .clock-image.active {
	opacity: 1;
}

#tokei_time {
	position: absolute;
	top: 30px;
	left: 30px;
	z-index: 1;
	font-size: 2.4rem;
	font-family: 'BIZ UDPGothic', Meiryo, 'Arial Black', sans-serif;
	font-weight: bold;
	line-height: 3rem;
	color: #000000;
	text-shadow: 0px 0px 5px #ffffff, 0px 0px 5px #ffffff, 0px 0px 8px #ffffff;
	-webkit-filter: invert(1);
	        filter: invert(1);
}

/* テキストリンク */
.top_info_link {
	background: #ffffff;
	border-radius: 10px;
	padding: 25px 30px;
}

.top_info_link_list {
	margin: 0px;
	padding: 0px;
	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: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px 15px;
}
.top_info_link_list li {
	position: relative;
	padding-right: 10px;
}
.top_info_link_list li::before {
	content: '';
	display: block;
	width: 1px;
	height: 1em;
	background: #333333;
	color: #ffffff;
	position: absolute;
	right: 0px;
	top: 50%;
	        -webkit-transform: rotate(15deg) translateY(-50%);
	            -ms-transform: rotate(15deg) translateY(-50%);
	                transform: rotate(15deg) translateY(-50%);
}
.top_info_link_list li:last-child {
	padding-right: 0px;
}
.top_info_link_list li:last-child::before {
	display: none;
}

/* 人口・世帯数 */
.top_jinkou {
	background: #ffffff;
	border-radius: 10px;
	padding: 25px 30px;
}

.top_jinkou_ttl {
	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;
	gap: 10px 20px;
}
.top_jinkou_ttl h3 {
	margin: 0px;
	font-size: 2rem;
}
.top_jinkou_ttl .top_jinkou_date {
	font-size: 1.4rem;
}

.top_jinkou_list {
	margin-top: 10px;
	margin-left: 20px;
	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: 10px 40px;
}
.top_jinkou_list dl {
	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;
	margin: 0px;
	padding: 0px;
}
.top_jinkou_list dl dt {
	display: inline-block;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
}
.top_jinkou_list dl dd {
	display: inline-block;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
}

/* バナー（スライド） */
#top_pr_banner_list {
	margin-bottom: 60px;
	overflow: hidden;
}
#top_pr_banner_list .swiper-wrapper {
	margin: 0px -20px;
}
#top_pr_banner_list.noslide .swiper-wrapper {
	margin: 0px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 40px;
}
#top_pr_banner_list .photo {
	width: 300px;
	max-width: 300px;
	margin: 0px 20px;
}
#top_pr_banner_list.noslide .photo {
	margin: 0px;
}
#top_pr_banner_list .photo a {
	display: block;
	text-decoration: none;
	color: inherit;
}
#top_pr_banner_list .photo img {
	width: 100%;
	height: auto;
	vertical-align: top;
	border-radius: 5px;
}

#top_pr_banner_list .slide_control_box1 {
	margin-top: 30px;
}

/* SNS */
.top_sns,
.top_sns ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px 40px;
}
.top_sns ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.top_sns ul li {
	width: 48px;
}
.top_sns ul li img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
.top_sns ul li a {
	display: block;
	text-decoration: none;
	color: inherit;
}
.top_sns h3 {
	margin: 0px;
	font-size: 2rem;
	line-height: 2rem;
}

/* 背景5 */
.top_main_bg5 {
	position: relative;
}
.top_main_bg5 img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

.top_main_bg5 .ttl {
	width: 341px;
	position: absolute;
	top: -80px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	z-index: 2;
}
.top_main_bg5 .ilst {
	width: 491px;
	position: absolute;
	bottom: -50px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	z-index: 1;
}
.top_main_bg5 .img {
	height: 400px;
	overflow: hidden;
}
.top_main_bg5 .img:empty {
	background: url("/img/top/bg-sato.jpg") no-repeat left center transparent;
	background-size: cover;
}
.top_main_bg5 .img img {
	width: auto;
	height: 100%;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
.top_main_bg5 .img2 {
	height: 100%;
}

/* 広告 */
#top_kokoku {
	border-top: 1px dashed #013c5a;
	padding-top: 40px;
	padding-bottom: 80px;
}
#top_kokoku .ttl {
	margin: 0px 0px 30px;
	padding: 0px 40px;
	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: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px 20px;
}
#top_kokoku .ttl h2 {
	margin: 0px;
	color: #153d5d;
	font-size: 2.4rem;
	line-height: 3rem;
}
#top_kokoku .ttl a {
	display: inline-block;
	vertical-align: top;
	font-size: 1.6rem;
	line-height: 2rem;
	background: url("/img/common/icon-arrow-blue.png") no-repeat left center transparent;
	color: inherit;
	padding-left: 20px;
}
#top_kokoku ul {
	margin: 0px 1px;
	padding: 0px;
	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: 7px;
}
#top_kokoku ul li {
	width: 210px;
}
#top_kokoku ul li a {
	display: block;
	text-decoration: none;
	color: inherit;
}
#top_kokoku ul li img {
	width: 100%;
	height: auto;
	vertical-align: top;
}


/* ==================================================
背景色変更
================================================== */
.color_change .top_main_bg1,
.color_change .top_main_bg2_2,
.color_change .top_main_bg4_1,
.color_change #top_photo_list .slide_control_box1,
.color_change .lettering_box {
	background-image: none !important;
}
.color_change .top_main_bg2::before,
.color_change .top_main_bg2::after {
	display: none !important;
}
.color_change div.link_box a,
.color_change #main .link a,
.color_change #top_important div.link_box a,
.color_change #top_kokoku .ttl a {
	background-image: url("/img/common/icon-arrow-white.png");
}
.color_change .top_info_link_list li::before {
	background: #ffffff;
}
.color_change #tokei_time {
	-webkit-filter: invert(0);
	        filter: invert(0);
}
.color_change .ttl_box h2 img {
	background: #ffffff !important;
}
.color_change #top_tab_title ul li.tab_on button::before {
	border-top-color: #ffffff;
}
/* ==================================================
背景色変更 ここまで
================================================== */


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1080px) {

	/* ヘッダ */
	#header2 {
		border-color: transparent;
	}

	/* メイン */
	#mymainback_bg {
		overflow: visible;
	}
	#mymainback {
		max-width: none;
		margin: 0px;
	}
	.top_main_box {
		width: auto;
		margin-left: var(--mymainback-margin-side, 15px);
		margin-right: var(--mymainback-margin-side, 15px);
	}

	.ttl_box h2 img {
		width: auto;
		height: 24px;
	}
	.ttl_box p {
		margin-top: 10px;
		font-size: 1.2rem;
	}

	div.link_box {
		margin-top: 20px;
		gap: 10px;
	}
	div.link_box a,
	#main .link a {
		min-width: auto;
		padding: 5px 25px 5px 10px;
		font-size: 1.2rem;
		background-position: right 12px top 50%;
	}
	#main .link a {
		min-width: auto;
	}

	/* 背景1 */
	.top_main_bg1 {
		background: url("/img/top/bg-mv-sora.png") repeat-x center bottom #ffffff;
		padding-top: 5px;
		padding-bottom: 70px;
	}

	/* MV */
	#top_mv {
		display: block;
		position: relative;
		z-index: 2;
	}

	#top_photo_wrap {
		width: auto;
	}

	#top_photo_list .photo .photo_caption {
		display: block;
		width: auto;
		font-size: 1.2rem;
		padding: 5px 10px;
	}

	#top_photo_list .slide_control_box1 {
		width: auto;
		position: static;
		padding: 0px;
		background: none;
	}

	.slide_control_box1 {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

	/* バナー */
	#top_mv_banner {
		width: auto;
		margin-top: 20px;
	}
	#top_mv_banner_list .mvbnr {
		width: calc(50% - 5px);
	}
	#top_mv_banner_list .mvbnr .bnr_caption {
		font-size: 1.2rem;
		padding: 5px 10px;
	}

	/* 背景2 */
	.top_main_bg2_2 {
		background-size: 1080px auto;
	}
	.top_main_bg2::before,
	.top_main_bg2::after {
		display: none;
	}
	.top_main_bg2::before {
		content: '';
		display: block;
		width: 320px;
		height: auto;
		aspect-ratio: 620 / 570;
		background: url("/img/top/sp-bg-mv.png") no-repeat left top transparent;
		background-size: contain;
		color: inherit;
		position: absolute;
		top: -61px;
		left: auto;
		right: 0px;
		bottom: auto;
		z-index: 0;
		pointer-events: none;
	}

	/* 重要なお知らせ */
	#top_important summary.top_important_ttl {
		padding: 5px 50px 5px 20px;
		background-size: 24px auto;
		background-position: right 20px top 50%;
	}
	#top_important summary.top_important_ttl h2 {
		font-size: 2rem;
		background-size: 30px auto;
		padding-left: 40px;
	}

	#top_important ul {
		padding: 20px 20px 5px;
	}
	#top_important ul li {
		display: block;
		width: auto;
	}
	#top_important ul li > span {
		display: block;
	}
	#top_important ul li > span.article_date {
		width: auto;
		padding-top: 0px;
	}

	#top_important div.link_box {
		padding: 0px 20px 25px;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	#top_important div.link_box a {
		min-width: 200px;
	}

	/* 生活ナビ */
	#top_main_navi .ttl_box h2 {
		background-size: auto 50px;
		padding-top: 70px;
	}

	#top_main_navi .search_tab_wrap {
		width: auto;
		margin-left: var(--mymainback-margin-side, 15px);
		margin-right: var(--mymainback-margin-side, 15px);
		gap: 0px;
	}
	#top_main_navi .search_tab_wrap .search_tab {
		width: calc(100% / 3);
	}
	#top_main_navi .search_tab .search_tab_box .search_tab_box2 {
		width: auto;
		margin: 0px;
	}

	#top_main_navi .search_tab.shimin .search_tab_box {
		margin-left: 0px;
		margin-right: 0px;
		left: 150%;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	#top_main_navi .search_tab.kosodate .search_tab_box {
		margin-left: 0px;
		margin-right: 0px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	#top_main_navi .search_tab.senior .search_tab_box {
		margin-left: 0px;
		margin-right: 0px;
		left: -50%;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
	}

	#top_main_navi .search_tab .search_tab_box .box1 div[class*="link"] a span.box .ttl {
		font-size: 1.6rem;
		line-height: 2rem;
	}

	/* 背景3 */
	.top_main_bg3 {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	/* トピックス */
	#top_topics {
		margin-top: 40px;
	}

	#lettering {
		gap: 20px;
	}
	.lettering_box {
		width: 100%;
		max-width: 330px;
		background: none;
	}
	.lettering_box_text {
		padding: 15px 10px;
	}
	.lettering_box_text .article_title {
		background: url("/img/common/icon-arrow-circle-blue.png") no-repeat right center transparent;
		padding-right: 50px;
		min-height: 52px;
	}
	.lettering_box_text .article_title a {
		text-decoration: none;
	}

	/* タブ */
	#top_tab_wrap {
		margin: 40px 20px 0px;
	}

	#top_tab_title ul li button {
		font-size: 1.4rem;
		margin-top: 20px;
		padding: 10px;
	}
	#top_tab_title ul li.tab_on button {
		font-size: 1.6rem;
	}

	#top_tab_detail p.no_data {
		padding: 20px;
	}

	.top_news_list ul {
		padding: 20px;
	}
	.top_news_list ul li,
	.top_news_list ul li > span {
		display: block;
	}
	.top_news_list ul li > span.article_date {
		width: auto;
		padding-top: 0px;
	}
	.top_news_list img.icon_new {
		width: 24px;
	}

	/* カウントダウン */
	#count_down_area_1 {
		margin-left: 20px;
		margin-right: 20px;
	}
	#count_down_area_1 h3 {
		font-size: 1.6rem;
		margin: 40px 0px 20px;
	}
	.count_down_box_wrap {
		gap: 20px;
	}
	.count_down_box {
		width: 100%;
		padding: 15px;
	}
	.count_down_box2 > span.count_img {
		width: 140px;
	}
	.count_down_box2 > span.count_img > span img {
		border-radius: 5px;
	}
	.count_down_box2 > span.count_txt {
		width: calc(100% - 150px);
	}
	.count_down_box2 > span.count_txt > span.count_title {
		font-size: 1.4rem;
	}
	.count_down_box2 > span.count_txt > span.count_comment {
		margin-top: 5px;
		font-size: 1.1rem;
		line-height: 1.25;
	}
	.count_down_box2 > span.count_txt > span.count_day {
		font-size: 1.4rem;
	}
	.count_down_box2 > span.count_txt > span.count_day span {
		font-size: 2.4rem;
	}

	/* 背景4 */
	.top_main_bg4_1 {
		background-size: 80px auto;
		background-position: right 0px bottom 10px;
		padding-top: 50px;
		padding-bottom: 100px;
	}
	.top_main_bg4_2 {
		margin-top: -40px;
		padding: 20px 16px 40px;
	}

	/* 飯塚市について */
	.top_main_bg4_2_box {
		display: block;
	}
	.top_main_bg4_2_box::before {
		width: 80px;
		height: auto;
		aspect-ratio: 141 / 107;
		top: -90px;
		left: 0px;
	}
	.top_main_bg4_2_box > div {
		width: auto;
	}
	.top_main_bg4_2_box > div.ttl_box {
		margin-bottom: 40px;
	}

	/* 市長等バナー */
	.top_info_banner_list {
		gap: 20px 10px;
		max-width: 510px;
		margin: 0px auto;
	}
	.top_info_banner_list .ifbnr {
		width: calc(50% - 5px);
	}
	.top_info_banner_list .ifbnr .bnr_caption {
		font-size: 1.4rem;
		margin-top: 10px;
	}

	/* 時計 */
	.top_tokei {
		margin-top: 40px;
	}
	.top_tokei_ttl h3 {
		font-size: 1.6rem;
	}
	.top_tokei_ttl p {
		font-size: 1.2rem;
	}
	#main .top_tokei_ttl .link {
		margin-left: auto;
	}

	.top_tokei_img {
		width: 100%;
		height: auto;
		aspect-ratio: 520 / 290;
		max-width: 520px;
		margin: 0px auto;
	}
	#tokei_time {
		font-size: 1.6rem;
		top: 10px;
		left: 20px;
	}

	/* テキストリンク */
	.top_info_link {
		margin-top: 30px;
		padding: 15px 20px;
	}
	.top_info_link_list {
		gap: 5px 15px;
	}

	/* 人口・世帯数 */
	.top_jinkou {
		margin-top: 30px;
		padding: 15px 20px;
	}

	.top_jinkou_ttl h3 {
		font-size: 1.6rem;
	}
	.top_jinkou_ttl .top_jinkou_date {
		font-size: 1.2rem;
	}

	.top_jinkou_list {
		margin-left: 10px;
		gap: 10px 25px;
	}

	/* バナー（スライド） */
	#top_pr_banner_list {
		max-width: 608px;
		margin: 0px auto 40px;
	}
	#top_pr_banner_list .swiper-wrapper,
	#top_pr_banner_list.noslide .swiper-wrapper {
		gap: 0px;
		margin: 0px;
	}
	#top_pr_banner_list .photo,
	#top_pr_banner_list.noslide .photo {
		width: calc(50% - 8px) !important;
		max-width: 300px;
		margin: 4px;
	}
	#top_pr_banner_list .slide_control_box1 {
		margin-top: 16px;
	}

	/* SNS */
	.top_sns {
		display: block;
	}
	.top_sns h3 {
		font-size: 1.8rem;
		text-align: center;
		margin-bottom: 30px;
	}

	.top_sns ul {
		gap: 20px 30px;
	}
	.top_sns ul li {
		width: calc(20% - 30px);
		max-width: 48px;
	}

	/* 背景5 */
	.top_main_bg5 .ttl {
		width: calc(100% - 100px);
		max-width: 341px;
	}
	.top_main_bg5 .ilst {
		width: calc(100% - 60px);
		max-width: 491px;
		bottom: -40px;
	}
	.top_main_bg5 .img {
		height: 400px;
		max-height: 75vw;
	}

	/* フッタ */
	#footer_link_pagetop {
		bottom: 160px;
	}
	#footer_link_pagetop.fixed a {
		bottom: -70px;
	}

	#author_box {
		padding-right: 40px;
	}

	/* 広告 */
	#top_kokoku {
		margin-top: -40px;
		padding-top: 30px;
		padding-bottom: 110px;
		position: relative;
		z-index: 1;
	}

	#top_kokoku .ttl {
		margin-bottom: 20px;
		padding: 0px;
	}
	#top_kokoku .ttl h2 {
		font-size: 1.8rem;
	}
	#top_kokoku .ttl a {
		font-size: 1.2rem;
		padding-left: 15px;
	}

	#top_kokoku ul {
		margin: 0px auto;
		max-width: 430px;
		gap: 10px;
	}
	#top_kokoku ul li {
		width: calc(50% - 5px);
	}

	/* 背景色変更 */
	.color_change .top_main_bg4_2_box::before {
		display: none;
	}
	/* 背景色変更 ここまで */

}
/* ==================================================
スマートフォン ここまで
================================================== */