@charset "utf-8";

/*=== 簡易リセット ===*/
*,
*::before,
*::after {
  box-sizing: border-box;
}
body {
	overflow-x: hidden;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
#mymainback {
	width: 100%;
	padding: 140px 0 0;
	overflow-x: hidden;
}

/* gnav */
#header {
	position: relative;
}
.top_search-pc {
	position: static;
}

.gnav {
	display: none;
}

.header_hide #header {
	position: static;
}
.header_hide .top_search-pc {
	position: fixed;
}
.header_hide .gnav {
	display: block;
	margin-top: 0;
}
.header_hide .submenu.show {
    position: fixed;
    top: 100px;
}
/* 文字拡大時 */
.font_size_changed.header_hide .submenu.show {
    top: 7.5em;
}

/*=== TOP共有パーツ ===*/
:root {
    --top-fontsize-h2: 4.2rem;
	--top-fontsize-h3: 2.3rem;
	--top-fontsize-h4: 1.8rem;
}

.view--pc {
    display: block;
}
.view--sp {
    display: none;
}

/* インナー */
.top_inner {
	width: 96%;
	max-width: var(--content-width, 1080px);
	margin: 0 auto;
}

/* タイトル */
.top_heading {
	margin: 0 auto 50px;
	text-align: center;
	font-family: var(--fontfamily-maru);
	font-weight: bold;
}
.top_heading h2 {
	font-family: var(--fontfamily-maru);
	font-size: var(--top-fontsize-h2);
	line-height: 1.5;
	letter-spacing: 0;
	margin: 0 auto 12px;
}
.top_heading p {
	margin: 0;
	letter-spacing: 0;
}

/* ボタン */
.top_btn {
	text-align: center;
}
.top_btn a {
	display: inline-block;
	padding: 14px 64px 12px;
	border: 2px solid var(--color-green);
	border-radius: 60px;
	font-size: var(--top-fontsize-h4);
	font-weight: bold;
	line-height: 1.6;
	text-decoration: none;
	color: var(--color-green);
}

/* 新着情報（一覧・RSS） */
.link_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 10px 20px;
	padding: 30px 0px 0px;
}
.link_box span[class*="link_"] {
	max-width: 100%;
}
.link_box span[class*="link_"] a {
	display: block;
	border: 2px solid var(--color-green);
	border-radius: 30px;
	background: #fff;
	color: var(--color-green);
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.35;
	text-decoration: none;
	margin: 0px;
	padding: 8px 20px;
	text-align: center;
}
.link_box span[class*="link_"] a:hover,
.link_box span[class*="link_"] a:focus {
	text-decoration: underline;
}

/* 新着情報（件数） */
.release_day {
	margin-bottom: 1em;
	font-size: 1.5rem;
}
.release_day span {
	display: inline-block;
	margin-right: 1em;
}

/* 新着情報（リスト） */
.top_tab_detail_list ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.top_tab_detail_list ul li {
	width: 100%;
	display: flex;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
    padding: 0px 0px 30px;
	margin: 0px 0px 30px;
    border-bottom: 1px solid #C6EDD7;
}
.top_tab_detail_list ul li:last-child {
	margin-bottom: 0px;
}
.top_tab_detail_list ul li > span {
	display: table-cell;
	vertical-align: top;
}
.top_tab_detail_list ul li > span.article_date {
	position: relative;
	min-width: 260px;
    display: flex;
    align-items: center;
	flex-shrink: 0;
	margin: 0 10px 0 0;
	letter-spacing: 0;
}
.top_tab_detail_list ul li > span.article_date:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #C6EDD7;
    border-radius: 50%;
    margin: 0 16px 0 0;
	flex-shrink: 0;
}
.top_tab_detail_list ul li > span.article_title {
    position: relative;
	flex-grow: 1;
}

/* 新着情報（情報はありません） */
.top_tab_detail_box p.no_data {}

/* 新着情報（newアイコン） */
.top_tab_detail_list img.icon_new {
	vertical-align: baseline;
	margin-left: 10px;
    width: 46px;
}

/* バナー広告 */
ul.banner_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: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 20px;
}
ul.banner_list li {
	width: calc(25% - 15px);
}
ul.banner_list li img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

/* 足あとを非表示 */
#footstep_wrap {
	display: none !important;
}


/*=== 重要なお知らせ ===*/
#top_important {
	margin: 0 0 50px;
	padding: 40px 50px;
	background: #FDEBEF;
	border-radius: 20px;
}
#top_important h2 {
	margin: 0 0 29px;
	padding: 0px;
	color: #cc0000;
    font-family: var(--fontfamily-maru);
    font-size: 3.2rem;
    line-height: 1.3;
    letter-spacing: 0;
	text-align: center;
}

#top_important ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
#top_important ul li {
	width: 100%;
    display: flex;
    align-items: flex-start;
	margin: 0 0 20px;
}
#top_important ul li:last-child {
    margin-bottom: 0;
}
#top_important ul li > span {
	display: table-cell;
	vertical-align: top;
	font-size: 1.6rem;
}
#top_important ul li > span.article_date {
    display: flex;
    align-items: center;
    flex-shrink: 0;
	width: calc(12em + 32px);
    margin: 0 5% 0 0;
}
#top_important ul li > span.article_date:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #D01B3D;
    border-radius: 50%;
    margin: 0 16px 0 0;
}
#top_important .link_box span[class*="link_"] a {
    border: 2px solid #D01B3D;
	color: #D01B3D;
}


/*=== 防災メール連携（JavaScript） ===*/
.top_emergency {
    margin: 0 0 50px;
}
#main_box_emergency .box_top_emer {
	margin: 0px 0px 40px;
	padding: 40px 50px;
	background: #FDEBEF;
	border-radius: 20px;
}
#main_box_emergency h2 {
	margin: 0 0 29px;
	padding: 0;
	color: #cc0000;
    font-family: var(--fontfamily-maru);
    font-size: 3.2rem;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0;
}

#main_box_emergency ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
#main_box_emergency ul li {
	width: 100%;
    display: flex;
    align-items: flex-start;
	margin: 0 0 20px;
}
#main_box_emergency ul li:last-child {
	margin-bottom: 0;
}
#main_box_emergency ul li > span {
	display: table-cell;
	vertical-align: top;
	font-size: 1.6rem;
}
#main_box_emergency ul li > span.emer_date {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    width: calc(14em + 32px);
    margin: 0 5% 0 0;
}
#main_box_emergency ul li > span.emer_date:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #cc0000;
    border-radius: 50%;
    margin: 0 16px 0 0;
}
#main_box_emergency ul li > span.emer_title > span {
	display: block;
	height: 1.5em;
	overflow: hidden;
	color: #333333;
	text-decoration: underline;
	cursor: pointer;
}
#main_box_emergency ul li.emer_title_open > span.emer_title > span {
	height: auto;
	text-decoration: none;
}
#main_box_emergency .btn_emer {
	text-align: center;
	padding: 30px 0px 0px;
}
#main_box_emergency .btn_emer #emer_mail_open_all {
	display: inline-block;
	border: 2px solid #cc0000;
	border-radius: 30px;
	background: #ffffff;
	color: #cc0000;
    font-weight: bold;
    font-size: 1.4rem;
	text-decoration: none;
	margin: 0px;
	padding: 10px 20px;
	text-align: center;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 260px;
	max-width: 100%;
}
#main_box_emergency .btn_emer #emer_mail_open_all:hover,
#main_box_emergency .btn_emer #emer_mail_open_all:focus {
	text-decoration: underline;
}


/*=== タブ ===*/
.top_tab .top_inner {
	position: relative;
	padding: 0 0 180px;
    margin: 0 auto 30px;
}
.top_tab .top_inner:after {
	content: "";
	position: absolute;
	bottom: 3px;
	left: -168px;
	z-index: 10;
	display: block;
	width: 285px;
	height: 186px;
	background-image: url("/img/top/tab_deco_pc.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}
#top_tab_title ul {
	margin: 0px;
	padding: 0px;
	border: none;
	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: 20px;
}
#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-top: 4px solid #C6EDD7;
	border-right: 4px solid #C6EDD7;
	border-bottom: none;
	border-left: 4px solid #C6EDD7;
	border-radius: 20px 20px 0 0;
	background: #fff;
	color: var(--color-green);
	font-size: 2.3rem;
	font-weight: bold;
	font-family: var(--fontfamily-maru);
	letter-spacing: 0;
	line-height: 1.6;
	text-decoration: none;
	text-align: center;
	padding: 11px 8px;
}
#top_tab_title ul li button:hover,
#top_tab_title ul li button:focus {
	text-decoration: underline;
}
#top_tab_title ul li.tab_on button {
	background: #C6EDD7;
	color: #333;
	padding: 17px 10px 18px;
}
#top_tab_detail {
	border: 4px solid #C6EDD7;
	border-radius: 0 0 10px 10px;
	padding: 48px 50px 40px;
}

/* ミニカレンダー */
#top_calendar_detail {
	width: 100%;
}
#top_calendar_detail ul {
	margin: 0px 0px 20px;
	padding: 0px;
	list-style: none;
	width: 100%;
	display: table;
}
#top_calendar_detail ul li {
	display: table-cell;
	vertical-align: middle;
}
#top_calendar_detail ul li.calendar_index_last {
	width: 4em;
	text-align: left;
}
#top_calendar_detail ul li.calendar_index_next {
	width: 4em;
	text-align: right;
}
#top_calendar_detail ul li.calendar_index_now {
	text-align: center;
}

table#top_calendar_table {
	width: 100%;
	border: 1px solid;
	border-collapse: collapse;
}
table#top_calendar_table th {
	border: 1px solid;
	font-weight: normal;
	text-align: center;
	padding: 10px 0px;
	font-size: 80%;
}
table#top_calendar_table td {
	border: 1px solid;
	text-align: center;
	padding: 10px 0px;
}
table#top_calendar_table td a {
	display: block;
}

.cal_sun {
	color: #990000;
	background-color: #ffdde6;
}
.cal_mon,.cal_tue,.cal_wed,.cal_thu,.cal_fri {
	background-color: #f5f5f5;
}
.cal_sat {
	color: #000099;
	background-color: #ccddff;
}
.cal_hol {
	background-color: #ffdde6;
}
.cal_today {
	background-color: #ffff80;
}

#top_event_today {
	margin-top: 30px;
}

/* 検索窓 */
#search_keyword,
#search_page_id {
	width: 100%;
}

/* 注目ワード */
.search_trend_word {
	margin: 20px 0px 0px;
        width: 100%;
}
.search_trend_word h2 {
	margin: 0 10px 0 0;
	padding: 0px;
	font-size: 2rem;
}
.search_trend_word 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: 10px;
        font-size: 1.4rem;
}
.search_trend_word p a {
	display: inline-block;
	vertical-align: top;
	margin: 0px;
	padding: 0;
	border: 1px solid transparent;
	color: #000 !important;
	text-decoration: underline;
	cursor: pointer;
}
.search_trend_word p a:hover,
.search_trend_word p a:focus {
	text-decoration: none;
}

/* さがすメニュー */
.top_search_menu_list {
	margin: 40px 0px 0px;
}
.top_search_menu_list ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	gap: 20px;
}
.top_search_menu_list ul li {
	width: 100%;
}
.top_search_menu_list ul li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	height: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid transparent;
	background: #e6e6e6;
	color: #333333;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.8rem;
	text-decoration: none;
	text-align: center;
	padding: 20px 10px;
}
.top_search_menu_list ul li a:hover,
.top_search_menu_list ul li a:focus {
	text-decoration: underline;
}

/*=== ライフシーン ===*/
.top_lifestage {
	margin: 0 auto 100px;
}
.top_lifestage .lifestage__title {
    font-size: 4.2rem;
    margin: 0 auto 30px;
}
.top_lifestage .lifestage .lifestage__item {
	background-color: #E6FAEF;
}
.top_lifestage .lifestage .lifestage__item a {
	padding-top: 118px;
}

/* アイコンごとの設定 */
.top_lifestage .lifestage .icon_pregnancy {
	background-position: top 24px center;
	background-size: auto 78px;
}
.top_lifestage .lifestage .icon_marriage {
	background-position: top 26px center;
	background-size: auto 74px;
}
.top_lifestage .lifestage .icon_home {
	background-position: top 27px center;
	background-size: auto 72px;
}
.top_lifestage .lifestage .icon_job {
	background-position: top 33px center;
	background-size: auto 60px;
}
.top_lifestage .lifestage .icon_education {
	background-position: top 34px center;
	background-size: auto 58px;
}
.top_lifestage .lifestage .icon_caregiving {
	background-position: top 23px center;
	background-size: auto 81px;
}
.top_lifestage .lifestage .icon_health {
	background-position: top 37px center;
	background-size: auto 64px;
}
.top_lifestage .lifestage .icon_condolence {
	background-position: top 24px center;
	background-size: auto 78px;
}
.top_lifestage .lifestage .icon_trash {
	background-position: top 31px center;
	background-size: auto 53px;
}
.top_lifestage .lifestage .icon_public {
	background-position: top 28px center;
	background-size: auto 60px;
}
.top_lifestage .lifestage .icon_subsidy {
	background-position: top 25px center;
	background-size: auto 66px;
}
.top_lifestage .lifestage .icon_counter {
	background-position: top 31px center;
	background-size: auto 54px;
}
.top_lifestage .lifestage .icon_application {
	background-position: top 30px center;
	background-size: auto 56px;
}
.top_lifestage .lifestage .icon_electronic_application {
	background-position: top 30px center;
	background-size: auto 55px;
}
.top_lifestage .lifestage .icon_category {
	background-position: top 31px center;
	background-size: auto 60px;
}
.top_lifestage .lifestage .icon_organization {
	background-position: top 27px center;
	background-size: auto 67px;
}
.top_lifestage .lifestage .icon_calendar {
	background-position: top 32px center;
	background-size: auto 58px;
}
.top_lifestage .lifestage .icon_map {
	background-position: top 26px center;
	background-size: auto 70px;
}



/*=== 移住・定住をお考えの方へ ===*/
.top_relocation {
	margin: 0 auto 120px;
}
.top_relocation .top_heading {
	position: relative;
	z-index: 10;
}
.top_relocation .top_inner {
	position: relative;
	padding: 220px 0 0;
}
.top_relocation .top_inner:before {
	content: "";
	display: block;
	width: 358px;
	height: 264px;
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-image: url("/img/top/top_relocation_bgimg.png");
	position: absolute;
	top: 119px;
	left: -230px;
	z-index: 1;
}

/* フクロウアニメーション */
.top_relocation .top_relocation__anime {
	width: 673px;
	height: 202px;
	margin: 0 0 0 auto;
	position: absolute;
	top: 0;
	right: 0;
}
.top_relocation .top_relocation__anime .top_relocation__anime__item {
	width: 97px;
	position: absolute;
	bottom: calc(100% - 92px);
	left: calc(100% - 97px);
	transition: all 1s ease 0s;
}
.top_relocation .top_relocation__anime.is-show .top_relocation__anime__item {
	left: 0;
	bottom: 0;
}

/* メインコンテンツ */
.top_relocation .top_relocation__main {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: space-between;
	margin: 0 0 50px;
}
.top_relocation .top_relocation__img {
	width: 49.6%;
}
.top_relocation .top_relocation__contents {
	width: 46.66%;
}
.top_relocation ul {
    margin: 0;
    padding: 0;
}
.top_relocation ul li {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 23px;
    list-style: none;
}
.top_relocation ul li > span.article_date,
.top_relocation ul li > span {
    display: block;
    width: 100%;
}
.top_relocation ul li > span.article_date {
    display: flex;
    align-items: center;
    margin: 0 0 4px;
	letter-spacing: 0;
}
.top_relocation ul li > span.article_date:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #C6EDD7;
    border-radius: 50%;
    margin: 0 16px 0 0;
}
.top_relocation img.icon_new {
    position: relative;
    width: 46px;
    margin: 0 0 0 10px;
}


/*=== 南大東村の写真 ===*/
.top_photo {
    margin: 0 auto;
    padding: 0;
	overflow-x: hidden;
}
.top_photo .banner_list {
    display: flex;
    overflow: hidden;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 0 40px;
}
.top_photo #top_banner_2_list {
    display: flex;
    width: max-content; 
    animation: scroll-left linear infinite;
    will-change: transform;
}
@keyframes scroll-left {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.top_photo #top_banner_2_list.is-paused {
    animation-play-state: paused !important;
}

.top_photo #top_banner_2_list li {
    position: relative;
    flex-shrink: 0;
    width: 280px;
    aspect-ratio: 280 / 198;
    overflow: hidden;
    border-radius: 20px;
}
.top_photo #top_banner_2_list li:nth-child(even) {
    margin-top: 50px;
}
.top_photo #top_banner_2_list img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.top_photo #banner_list_control {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #514F4E;
    background-image: url(/img/top/photo/btn_slide_stop.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px auto;
    border: 2px solid #fff;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    color: #fff;
    line-height: .8;
    position: relative;
    left: 30px;
    top: 30px;
}
.top_photo #banner_list_control.is-stop {
	background-image: url(/img/top/photo/btn_slide_play.png);
}
.top_photo .top_inner {
    height: 135px;
}
.top_photo .top_inner:after {
    content: "";
    position: relative;
    top: -88px;
    right: -9px;
    z-index: 2;
    margin: 0 0 0 auto;
    display: block;
    width: 209px;
    height: 171px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url(/img/top/top_photo_deco.png);
}


/*=== 南大東村の魅力をご紹介 ===*/
.top_about {
	position: relative;
	padding: 160px 0 276px;
	background-image: url("/img/top/top_about_bg-pc.jpg");
	background-size: cover;
	background-position: top center;
}

/* タイトル */
.top_about .top_about__title {
	position: relative;
	font-size: var(--top-fontsize-h3);
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0;
	margin: 0 0 18px;
}
.top_about .top_about__title:before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	background-image: url("/img/top/icon_arrow_green.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	margin: 0 8px 0 0;
	flex-shrink: 0;
}
.top_about .top_about__title span {
	display: block;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0;
}
.top_about .top_about__contents p {
	margin: 0 0 10px;
}
.top_about .top_about__contents p:last-child {
	margin-bottom: 0;
}
.top_about a.top_about__item {
	text-decoration: none;
	color: #333;
}

/*ー 大リスト ー*/
.top_about .top_about__list--large {
	display: flex;
	justify-content: center;
	margin: 0 0 24px;
}
.top_about .top_about__list--large .top_about__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 48.88%;
	padding: 20px;
	margin-right: 2.2%;
	margin-top: 24px;
	background: #fff;
	border-radius: 20px;
}
.top_about .top_about__list--large .top_about__item:nth-child(-n+2) {
	margin-top: 0;
}
.top_about .top_about__list--large .top_about__item:nth-child(even),
.top_about .top_about__list--large .top_about__item:last-child {
	margin-right: 0;
}
.top_about .top_about__list--large .top_about__img {
	width: 49.1%;
}
.top_about .top_about__list--large .top_about__contents {
	width: 46.7%;
}

/*ー 中リスト ー*/
.top_about .top_about__list--medium {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	background: #fff;
	padding: 20px;
	border-radius: 20px;
	margin: 0 0 60px;
}
.top_about .top_about__list--medium .top_about__title {
	position: relative;
	font-size: var(--top-fontsize-h4);
	margin: 0;
	padding: 0 0 0 22px;
}
.top_about .top_about__list--medium .top_about__title:before {
	position: absolute;
	top: 5px;
	left: 0;
}
.top_about .top_about__list--medium .top_about__item {
	width: 23.2%;
	margin-right: 2.3%;
	margin-top: 24px;
}
.top_about .top_about__list--medium .top_about__item:nth-child(-n+4) {
	margin-top: 0;
}
.top_about .top_about__list--medium .top_about__item:nth-child(4n),
.top_about .top_about__list--medium .top_about__item:last-child {
	margin-right: 0;
}
.top_about .top_about__list--medium .top_about__img {
	margin: 0 0 10px;
}

/*ー 小リスト ー*/
.top_about .top_about__list--small {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
}
.top_about .top_about__list--small .top_about__title {
	margin: 0;
	padding: 0;
}
.top_about .top_about__list--small .top_about__title:before {
	content: none;
}
.top_about .top_about__list--small .top_about__item {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48.88%;
	padding: 20px;
	margin-right: 2.2%;
	margin-top: 24px;
	background: #fff;
	border-radius: 90px;
}
.top_about .top_about__list--small .top_about__item:nth-child(-n+2) {
	margin-top: 0;
}
.top_about .top_about__list--small .top_about__item:nth-child(even),
.top_about .top_about__list--small .top_about__item:last-child {
	margin-right: 0;
}

/* 時計 */
.top_tokei {
	width: 100%;
	margin: 0;
	padding: 0;
}
.top_tokei h2 {
	margin: 0px 0px 20px;
	padding: 0px;
	font-size: 2rem;
}

.top_tokei_img {
	display: block;
	margin: 0 auto;
	width: 100%;
	aspect-ratio: 488/250;
	position: relative;
}

#tokei_photo {
	width: 100%;
    height: 100%;
	position: relative;
	overflow: hidden;
}
#tokei_photo .clock-image{
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity 1.0s ease-in-out;

}
#tokei_photo .clock-image.active{
	opacity: 1;
}

#tokei_time {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
    color: #fff;
	border-radius: 40px;
	background: rgba(0, 0, 0, 0.2);
	box-shadow: 00px 0px 5px 2px rgba(0, 0, 0, 0.2);
	text-shadow: 0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333,
		0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333,
		0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333, 0px 0px 3px #333;
}

/* カウントダウン */
.count_down_box_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
    justify-content: center;
	gap: 30px;
}
#count_down_area_1 {
    width: 100%;
}
.count_down_box {
    display: none;
	width: calc(50% - 15px);
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.count_down_box:nth-child(-n+2) {
    display: block;
}

.count_down_box2 {
    display: block;
}
.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 {
    position: relative;
	width: 100%;
    aspect-ratio: 232/133;
    margin: 0 auto 10px;
    overflow: hidden;
}
.count_down_box2 > span.count_img > span {
	display: block;
}
.count_down_box2 > span.count_img > span img {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.count_down_box2 > span.count_txt {
	width: 100%;
}
.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 {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0;
}
.count_down_box2 > span.count_txt > span.count_title:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(/img/top/icon_arrow_green.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    margin: 0 6px 0 0;
}
.count_down_box2 > span.count_txt > span.count_comment {
	margin-top: 5px;
	font-size: 1.6rem;
}
.count_down_box2 > span.count_txt > span.count_day {
	margin-top: 7px;
	text-align: right;
    line-height: 1;
}
.count_down_box2 > span.count_txt > span.count_day span {
	font-size: 2.3rem;
    color: #D01B3D;
	font-weight: bold;
	line-height: 1;
}

/* calendar */
.top_about .top_about__item--calendar .top_about__img {
	margin-right: 16px;
}

/* sns */
.top_about .top_about__item--sns .top_about__title {
	font-size: var(--top-fontsize-h4);
	margin: 0 34px 0 0;
}
.top_about .top_about__item--sns .top_about__contents {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}
.top_about .top_about__item--sns a {
	display: inline-block;
	flex-shrink: 0;
	width: 50px;
	margin: 0 34px 0 0;
	text-decoration: none;
}
.top_about .top_about__item--sns a:last-child {
	margin-right: 0;
}

/* ループスライド */
.top_about .top_about_slider {
	position: absolute;
	bottom: 0;
	left: 0;
    width: 100%;
    height: 176px;
    overflow: hidden;
}
.top_about .top_about_slider__track {
    display: flex;
    width: 5760px; 
    height: 100%;
    animation: slide 14s linear infinite;
}
.top_about .top_about_slider__track img {
    width: 1920px; 
    height: 100%;
    object-fit: cover;
    flex-shrink: 0;
}
@keyframes slide {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-1920px);
    }
}
.top_about .top_about_slider__controls {
	position: absolute;
	bottom: 20px;
	left: 20px;
	z-index: 10;
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.top_about #top_about_slider__btn {
    cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #514F4E;
    background-image: url(/img/top/photo/btn_slide_stop.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px auto;
	border: 2px solid #fff;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	color: #fff;
	line-height: .8;
}
.top_about #top_about_slider__btn.is-stop {
	background-image: url(/img/top/photo/btn_slide_play.png);
}


/*=== 村のおすすめ情報 ===*/
.top_osusume {
    padding: 120px 0 0;
    margin: 0 auto 94px;
}
.top_osusume .top_heading {
    margin: 0 auto 30px;
}

/* トピックス */
.lettering_box {
	width: 100%;
	display: block;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.lettering_box:last-child {
	margin-bottom: 0px;
}
.lettering_box > div {
	display: block;
	vertical-align: top;
}

.lettering_box > div.lettering_box_text > div {
	margin-bottom: 0.3em;
}
.lettering_box > div.lettering_box_text > div:last-child {
	margin-bottom: 0px;
}

.lettering_box > div.lettering_box_img {
	width: 100%;
}
.lettering_box > div.lettering_box_img div {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 320 / 200;
	overflow: hidden;
	background: #f6f6f6;
}
.lettering_box > div.lettering_box_img div:empty {
	background: url("/img/common/noimage.png") no-repeat center center transparent;
	background-size: cover;
}
.lettering_box > div.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 > div.lettering_box_text {
    padding: 20px;
}
.lettering_box > div.lettering_box_text > div.article_title {
    font-size: 1.8rem;
    font-weight: bold;
}
.lettering_box > div.lettering_box_text > div.article_title a {
    color: #333;
    text-decoration: none;
}
.lettering_box > div.lettering_box_text > div.lettering_detail {
    display: none;
}

#lettering.is-disabled .slick-track {
	display: flex!important;
	justify-content: center!important;
	gap: 2%;
	transform: none!important;
	width: 100%!important;
}
#lettering.is-disabled .lettering_box {
	width: 320px!important;
	margin: 0;
}

/* トピックス（サムネイルなし） */
#lettering + .topics_no_image_list {
	margin-top: 30px;
}

/* トピックスをスライド化 */
.top_osusume .slick-slide {
    margin: 0 20px;
    height: auto !important;
}
.top_osusume .slick-track {
    display: flex;
    padding: 10px 0;
}
.top_osusume .slick-controls-container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}
.top_osusume .my-dots-container {
    margin: 0 20px 0 0;
}
.top_osusume .slick-dots {
    display: flex !important;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 20px;
}
.top_osusume .slick-dots li {
    display: flex;
    align-items: center;
}
.top_osusume .slick-dots li button {
    font-size: 0;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
	color: #000;
    border: 2px solid var(--color-green);
    cursor: pointer;
    padding: 0;
}
.top_osusume .slick-dots li.slick-active button {
    background: var(--color-green);
	color: #fff;
}
.top_osusume .slick-prev,
.top_osusume .slick-next {
    background: none;
    border: 1px solid #333;
    padding: 5px 15px;
    cursor: pointer;
    font-size: 12px;
}
.top_osusume .slick-arrow:before {
	display: block;
	line-height: 1;
}
.top_osusume .my-next-btn:before {
	content: ">";
}
.top_osusume .my-prev-btn:before {
	content: "<";
}
.top_osusume .slick-arrow,
.top_osusume .my-play-pause-btn {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-green);
    border: 2px solid #fff;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    color: #fff;
    line-height: .8;
	line-height: 32px;
}
.top_osusume .slick-arrow span,
.top_osusume .my-play-pause-btn span {
	line-height: 32px;
}
.top_osusume .my-play-pause-btn {
    background-image: url(/img/top/photo/btn_slide_stop.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px auto;
}
.top_osusume .my-play-pause-btn.is-paused {
    background-image: url(/img/top/photo/btn_slide_play.png);
}


/*=== 村政情報 ===*/
.top_info .top_inner {
	position: relative;
	padding: 69px 0 0;
}
.top_info .top_inner:before {
	content: "";
	display: block;
	width: 160px;
	height: 186px;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url("/img/top/top_info_bg.png");
	position: absolute;
	top: 0;
	right: -122px;
}
.top_info .top_heading {
	position: relative;
	z-index: 10;
}

/* リスト */
.top_info .top_info__list {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: center;
	margin: 0 0 44px;
}
.top_info .top_info__item {
	position: relative;
	width: 31.11%;
	display: block;
	margin: 0 3.3% 0 0;
	color: var(--text-color);
	text-decoration: none;
}
.top_info .top_info__item:nth-child(-n+3) {
	margin-top: 0;
}
.top_info .top_info__item:nth-child(3n),
.top_info .top_info__item:last-child {
	margin-right: 0;
}
.top_info .top_info__title {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	display: inline-block;
	width: 56px;
	height: auto;
	margin: 0;
}
.top_info .top_info__title:after {
	content: "";
	display: block;
	width: 76px;
	height: 183px;
	background-image: url("/img/top/top_info_title_bg.png");
	background-size: 100% auto;
	background-position: left top;
	background-repeat: no-repeat;
}
.top_info .top_info__title span {
	position: absolute;
	top: 0;
	left: 10px;
	z-index: 10;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
	font-size: var(--top-fontsize-h3);
	font-weight: bold;
	letter-spacing: .2em;
	text-shadow: 
		2px  2px 1px #ffffff,
		-2px  2px 1px #ffffff,
		2px -2px 1px #ffffff,
		-2px -2px 1px #ffffff,
		2px  0px 1px #ffffff,
		0px  2px 1px #ffffff,
		-2px  0px 1px #ffffff,
		0px -2px 1px #ffffff; 
}
.top_info .top_info__title span:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url(/img/top/icon_arrow_green.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
	margin: 5px 0 0;
}
.top_info .top_info__img {
	margin: 0;
}
/* 色変更時 */
.color_change .top_info .top_info__title span {
    color: #333!important;
}

/* リンクリスト */
.top_linklist {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	margin: 0 0 42px;
}
.top_linklist_box {
	width: 100%;
	border-right: 2px solid #C6EDD7;
}
.top_linklist_box:first-child {
	border-left: 2px solid #C6EDD7;
}
.top_linklist_box ul {
	margin: 0px;
	padding: 0 25px;
}
.top_linklist_box ul li {
	display: flex;
	list-style: none;
	margin: 0 0 11px;
}
.top_linklist_box ul li:last-child {
	margin-bottom: 0px;
}
.top_linklist_box ul li:before {
	content: "・";
	display: inline-block;
}
.top_linklist_box ul li a {
	font-size: var(--fontsize-main);
	color: var(--text-color);
}
.top_linklist_box h2 {
	padding: 0;
	margin: 0 0 17px;
	font-size: var(--top-fontsize-h3);
	font-weight: bold;
	text-align: center;
}


/*=== 人口・世帯数 ===*/
.top_jinkou {
	margin: 40px 0px 170px;
}
.top_jinkou .top_inner {
    position: relative;
}
.top_jinkou .top_inner:after {
    content: "";
    position: absolute;
    top: 66px;
    left: -61px;
    display: block;
    width: 97px;
    height: 147px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("/img/top/top_jinkou_deco.png");
}
.top_jinkou_ttl {
    margin-right: 3%;
    flex-shrink: 0;
}
.top_jinkou h2 {
	font-size: 2.3rem;
	font-weight: bold;
}
.top_jinkou_box {
	background: #E6FAEF;
	padding: 43px 20px 40px 30px;
}
.top_jinkou_contents {
    display: flex;
    flex-grow: 1;
    justify-content: space-between;
}
.top_jinkou_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.top_jinkou_dl {
    display: flex;
    align-items: center;
	flex-shrink: 0;
	margin: 0 1.9% 0 0;
	padding: 0px;
	text-align: center;
}
.top_jinkou_dl:last-child {
    margin-right: 0;
}
.top_jinkou_dl img {
    width: 56px;
    margin: 0 5px 0 0;
}
.top_jinkou_dt {
	display: block;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
}
.top_jinkou_dd {
	display: block;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
    font-size: 2rem;
}
.top_jinkou_bottom {
    flex-shrink: 0;
    margin-left: 3%;
    text-align: center;
}
.top_jinkou_title {
    border: 2px solid var(--color-green);
    color: var(--color-green);
    border-radius: 40px;
    background: #fff;
    text-align: center;
    padding: 8px 15px;
    margin: 0 0 8px;
}
.top_jinkou_date {
    font-size: 1.3rem;
}
/* 文字拡大時 */
.font_size_changed .top_jinkou_ttl,
.font_size_changed .top_jinkou_bottom {
	flex-shrink: initial;
}
.font_size_changed .top_jinkou_ttl {
	margin-left: 10px;
}
.font_size_changed .top_jinkou h2 {
    text-align: center;
}
.font_size_changed .top_jinkou_bottom {
	margin-right: 10px;
}
.font_size_changed .top_jinkou_list {
    display: block;
}
.font_size_changed .top_jinkou_dl {
	display: block;
}
.font_size_changed .top_jinkou_contents {
    justify-content: center;
    gap: 20px;
    margin: 0 0 20px;
}


/*=== 事業PR ===*/
.top_pr {
    margin: 0 0 170px;
}
.top_pr ul.banner_list li {
    width: calc(100% / 6 - 20px);
}


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1080px) {

	#mymainback {
		margin: 0;
		padding: 40px 0 0;
	}
	.gnav {
		display: block;
	}

	/*=== TOP共有パーツ ===*/
	:root {
		--top-fontsize-h2: 2.4rem;
		--top-fontsize-h3: 1.8rem;
		--top-fontsize-h4: 1.4rem;
	}

    .view--pc {
        display: none;
    }
    .view--sp {
        display: block;
    }

	/* インナー */
	.top_inner {
		width: 89.3%;
	}

	/* タイトル */
	.top_heading {
		margin: 0 auto 24px;
	}
	.top_heading h2 {
		font-size: var(--top-fontsize-h2);
		margin: 0 auto 10px;
	}
	.top_heading p {
		font-size: 1.3rem;
	}

	/* ボタン */
	.top_btn a {
		padding: 12px 40px 10px;
		border-radius: 46px;
		font-size: var(--top-fontsize-h4);
	}

    /* 新着情報（一覧・RSS） */
    .link_box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        gap: 10px 20px;
        padding: 20px 0px 0px;
    }
    .link_box span[class*="link_"] {
        max-width: 100%;
    }
    .link_box span[class*="link_"] a {
        display: block;
        border: 2px solid var(--color-green);
        border-radius: 30px;
        background: #fff;
        color: var(--color-green);
        font-size: 1.4rem;
        font-weight: bold;
        line-height: 1.35;
        text-decoration: none;
        margin: 0px;
        padding: 6px 20px;
        text-align: center;
    }
    .link_box span[class*="link_"] a:hover,
    .link_box span[class*="link_"] a:focus {
        text-decoration: underline;
    }

	/* バナー広告 */
	ul.banner_list {
		gap: 10px;
	}
	ul.banner_list li {
		width: calc(50% - 5px);
		max-width: 200px;
	}

	/*=== 重要なお知らせ ===*/
	#top_important {
        border-radius: 15px;
        padding: 30px 20px;
        margin: 0 0 40px;
	}
	#top_important h2 {
        font-size: 2rem;
        margin: 0 0 22px;
	}

	#top_important ul li {
		width: auto;
		display: block;
	}
	#top_important ul li > span {
		display: block;
		font-size: 1.4rem;
	}
	#top_important ul li > span.article_date {
		width: auto;
		margin: 0 0 1px;
	}
    #top_important ul li > span.article_date:before {
        width: 14px;
        height: 14px;
        margin: 0 14px 0 0;
    }
	#top_important .link_box span[class*="link_"] a {
        font-size: 1.2rem;
        padding: 6px 20px;
	}


	/*=== 防災メール連携（JavaScript） ===*/
    .top_emergency {
        margin: 0 0 40px;
    }
	#main_box_emergency .box_top_emer {
        border-radius: 15px;
        padding: 30px 20px;
	}
	#main_box_emergency h2 {
        font-size: 2rem;
        margin: 0 0 22px;
	}

	#main_box_emergency ul li {
		width: auto;
		display: block;
	}
	#main_box_emergency ul li > span {
		display: block;
		font-size: 1.4rem;
	}
	#main_box_emergency ul li > span.emer_date {
        width: auto;
        margin: 0 0 1px;
	}
    #main_box_emergency ul li > span.emer_date:before {
        width: 14px;
        height: 14px;
        margin: 0 14px 0 0;
    }
	#main_box_emergency .btn_emer #emer_mail_open_all {
        font-size: 1.2rem;
        padding: 8px 20px;
	}
	#main_box_emergency .btn_emer {
		padding: 20px 0px 0px;
	}


	/*=== タブ ===*/
	.top_tab .top_inner {
		padding: 0 0 80px;
		margin: 0 auto 37px;
	}
	.top_tab .top_inner:after {
		bottom: -2px;
		left: -3px;
		width: 140px;
		height: 105px;
		background-image: url("/img/top/tab_deco_sp.png");
	}
	#top_tab_title ul {
		gap: 9px;
	}
	#top_tab_title ul li button,
	#top_tab_title ul li.tab_on button {
		font-size: 1.6rem;
		padding: 12px 5px 12px;
        border-radius: 15px 15px 0 0;
		border-top: 3px solid #C6EDD7;
		border-right: 3px solid #C6EDD7;
		border-bottom: none;
		border-left: 3px solid #C6EDD7;
	}
	#top_tab_title ul li.tab_on button {
		padding: 19px 5px 20px;
	}

	#top_tab_detail {
		border: 3px solid #C6EDD7;
		padding: 30px 20px;
	}
	#top_tab_detail .acc_title + input[id*="acc_ttl_label"] + * {
		display: block;
	}

	/* タブを開閉式に変更 */
	#top_tab_title {
		/* display: none; */
		display: block;
	}

	#top_tab_detail {
		padding: 0px;
		/* border-bottom: none; */
	}

	.top_tab_detail_box {
		display: block;
	}
	.top_tab_detail_box .acc_title.accordion + * {
		display: block;
	}
	.top_tab_detail_box:nth-child(n+2) {
		margin-top: 10px;
	}
	.top_tab_detail_box h2.acc_title {
		width: auto;
		height: auto;
		clip: auto;
		overflow: visible;
		margin: 0px;
		padding: 15px 20px;
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 1.4;
		background: #e6e6e6;
		color: #333333;
		display: none;
	}
	.top_tab_detail_box h2.acc_title label[for*="acc_ttl_label"],
	.top_tab_detail_box h2.acc_title.accordion .accordion_icon {
		margin: -15px -20px; /* h2 の padding の値をマイナスにして指定する */
		padding: 15px 20px;  /* h2 の padding と同じ値を指定する */
		padding-right: 40px;
		background-position: right 20px top 50%;
	}

	.top_tab_detail_box2 {
		padding: 25px 20px;
	}

	#top_tab_detail .acc_title + input[id*="acc_ttl_label"] + * {
		display: none;
	}
	#top_tab_detail .acc_title + input[id*="acc_ttl_label"]:checked + * {
		display: block;
	}

	/* 新着情報（件数） */
	.release_day {
		font-size: 1.3rem;
	}

	/* 新着情報（リスト） */
	.top_tab_detail_list ul li {
		width: auto;
		display: block;
		position: relative;
		padding: 0px 0px 16px;
    	margin: 0px 0px 16px;
	}
	.top_tab_detail_list ul li > span {
		display: block;
	}
	.top_tab_detail_list ul li > span.article_date {
		width: auto;
		margin: 0 0 2px;
	}
	.top_tab_detail_list ul li > span.article_date:before {
		width: 14px;
		height: 14px;
	}
	.top_tab_detail_list img.icon_new {
		width: 40px;
	}

	/* 新着情報（一覧・RSS） */
	.top_tab_detail_box .link_box span[class*="link_"] a {
		font-size: 1.3rem;
	}

	/* さがすメニュー */
	.top_search_menu_list ul {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 15px;
	}
	.top_search_menu_list ul li {
		width: 100%;
	}
	.top_search_menu_list ul li a {
		font-size: 1.6rem;
	}

	/*=== ライフシーン ===*/
	.top_lifestage {
		margin: 0 auto 20px;
	}
	.top_lifestage .lifestage {
		width: 88%;
	}
	.top_lifestage .lifestage__title {
		font-size: 2.4rem;
	}
        .modal-top_lifestage .lifestage__title{
                font-size: 2rem;
        }
	.top_lifestage .lifestage .lifestage__list {
		gap: 10px;
	}
	.top_lifestage .lifestage .lifestage__item a {
		padding-top: 58px;
	}

	/* アイコンごとの設定 */
	.top_lifestage .lifestage .icon_pregnancy {
		background-position: top 7px center;
		background-size: auto 44px;
	}
	.top_lifestage .lifestage .icon_marriage {
		background-position: top 8px center;
		background-size: auto 41px;
	}
	.top_lifestage .lifestage .icon_home {
		background-position: top 9px center;
		background-size: auto 40px;
	}
	.top_lifestage .lifestage .icon_job {
		background-position: top 12px center;
		background-size: auto 33px;
	}
	.top_lifestage .lifestage .icon_education {
		background-position: top 13px center;
		background-size: auto 32px;
	}
	.top_lifestage .lifestage .icon_caregiving {
		background-position: top 7px center;
		background-size: auto 45px;
	}
	.top_lifestage .lifestage .icon_health {
		background-position: top 11px center;
		background-size: auto 36px;
	}
	.top_lifestage .lifestage .icon_condolence {
		background-position: top 7px center;
		background-size: auto 43px;
	}
	.top_lifestage .lifestage .icon_trash {
		background-position: top 13px center;
		background-size: auto 35px;
	}
	.top_lifestage .lifestage .icon_public {
		background-position: top 11px center;
		background-size: auto 40px;
	}
	.top_lifestage .lifestage .icon_subsidy {
		background-position: top 9px center;
		background-size: auto 44px;
	}
	.top_lifestage .lifestage .icon_counter {
		background-position: top 13px center;
		background-size: auto 36px;
	}
	.top_lifestage .lifestage .icon_application {
		background-position: top 9px center;
		background-size: auto 40px;
	}
	.top_lifestage .lifestage .icon_electronic_application {
		background-position: top 12px center;
		background-size: auto 37px;
	}
	.top_lifestage .lifestage .icon_category {
		background-position: top 11px center;
		background-size: auto 36px;
	}
	.top_lifestage .lifestage .icon_organization {
		background-position: top 8px center;
		background-size: auto 41px;
	}
	.top_lifestage .lifestage .icon_calendar {
		background-position: top 12px center;
		background-size: auto 34px;
	}
	.top_lifestage .lifestage .icon_map {
		background-position: top 6px center;
		background-size: auto 43px;
	}


	/*=== 移住・定住をお考えの方へ ===*/
	@media screen and (max-width: 768px) {
		.top_relocation {
			margin: 0 auto 100px;
		}
		.top_relocation .top_inner {
			padding: 180px 0 0;
			max-width: 600px;
			margin: 0 auto;
		}
		.top_relocation .top_inner:before {
			width: 220px;
			height: 106px;
			top: 62px;
			left: auto;
			right: -10px;
			background-image: url(/img/top/top_relocation_bgimg-sp.png);
		}
	}

	/* フクロウアニメーション */
	.top_relocation .top_relocation__anime {
		width: calc(100vw + 46px);
		height: 138px;
	}
	.top_relocation .top_relocation__anime .top_relocation__anime__item {
		width: 52px;
		position: absolute;
		bottom: calc(100% - 45px);
		left: calc(100% - 52px);
		transition: all 1.2s ease 0s;
	}

	/* メインコンテンツ */
	@media screen and (max-width: 768px) {
		.top_relocation .top_relocation__main {
			display: block;
			margin: 0 0 24px;
		}
		.top_relocation .top_relocation__img {
			width: 100%;
			margin: 0 auto 20px;
			text-align: center;
		}
		.top_relocation .top_relocation__img img {
			width: 100%;
		}
		.top_relocation .top_relocation__contents {
			width: 100%;
		}
		.top_relocation ul li {
			margin-bottom: 20px;
		}
		.top_relocation ul li > span.article_date {
			margin: 0 0 2px;
		}
		.top_relocation ul li > span.article_date:before {
			width: 14px;
			height: 14px;
			margin: 0 14px 0 0;
		}
		.top_relocation img.icon_new {
			width: 40px;
		}
	}



    /*=== 南大東村の写真 ===*/
	@media screen and (max-width: 768px) {
		.top_photo .top_inner {
			height: 85px;
		}
		.top_photo .banner_list {
			gap: 0 15px;
		}
		.top_photo #top_banner_2_list li {
			width: 140px;
			aspect-ratio: 140 / 99;
			border-radius: 10px;
		}
		.top_photo #top_banner_2_list li:nth-child(even) {
			margin-top: 25px;
		}
		.top_photo #banner_list_control {
			width: 24px;
			height: 24px;
			left: 18px;
			top: 24px;
			font-size: 1.1rem;
			line-height: 24px;
			background-size: 6px auto;
		}
		.top_photo .top_inner:after {
			right: 0;
			width: 117px;
			height: 96px;
			top: auto;
			bottom: 60px;
		}
	}
	

	/*=== 南大東村の魅力をご紹介 ===*/
	/* タイトル */
	.top_about .top_about__title {
		font-size: var(--top-fontsize-h3);
		margin: 0 0 8px;
	}
	.top_about .top_about__title:before {
		width: 14px;
		height: 14px;
		top: 5px;
	}
	.top_about .top_about__title span {
		font-size: 1.2rem;
	}
	@media screen and (max-width: 768px) {
		.top_about {
			padding: 120px 0 148px;
			background-image: url("/img/top/top_about_bg-sp.jpg");
		}
		.top_about .top_inner {
			max-width: 600px;
			margin: 0 auto;
		}
		.top_about .top_heading h2 {
			text-shadow: 2px 2px 1px #D2F3F5, -2px 2px 1px #D2F3F5, 2px -2px 1px #D2F3F5, -2px -2px 1px #D2F3F5, 2px 0px 1px #D2F3F5, 0px 2px 1px #D2F3F5, -2px 0px 1px #D2F3F5, 0px -2px 1px #D2F3F5;
		}
	}
	@media screen and (max-width: 768px) and (min-width: 500px) {
		.top_about .top_heading h2,
		.top_about .top_heading p {
			text-shadow: -2px -2px 0 #fff, 0px -2px 0 #fff, 2px -2px 0 #fff, -2px 0px 0 #fff, 2px 0px 0 #fff, -2px 2px 0 #fff, 0px 2px 0 #fff, 2px 2px 0 #fff;
		}
	}

	/*ー 大リスト ー*/
	.top_about .top_about__list--large .top_about__item {
		padding: 12px;
	}
	@media screen and (max-width: 768px) {
		.top_about .top_about__list--large {
			display: block;
			margin: 0 0 16px;
		}
		.top_about .top_about__list--large .top_about__item {
			width: 100%;
			margin: 16px auto 0;
			border-radius: 15px;
			align-items: flex-start;
		}
		.top_about .top_about__list--large .top_about__item:nth-child(-n+2) {
			margin-top: 16px;
		}
		.top_about .top_about__list--large .top_about__item:first-child {
			margin-top: 0;
		}
		.top_about .top_about__list--large .top_about__item:nth-child(even),
		.top_about .top_about__list--large .top_about__item:last-child {
			margin-right: auto;
		}
		.top_about .top_about__list--large .top_about__img {
			width: 48.2%;
			max-width: 180px;
			flex-shrink: 0;
            margin: 0 12px 0 0;
		}
		.top_about .top_about__list--large .top_about__img img {
			width: 100%;
		}
		.top_about .top_about__list--large .top_about__contents {
			width: 47.9%;
			font-size: 1.4rem;
			line-height: 1.6;
			flex-grow: 1;
		}
	}

	/*ー 中リスト ー*/
	@media screen and (max-width: 768px) {
		.top_about .top_about__list--medium {
			padding: 12px;
			border-radius: 15px;
			margin: 0 0 40px;
		}
		.top_about .top_about__list--medium .top_about__title {
			font-size: var(--top-fontsize-h4);
			letter-spacing: 0;
			padding: 0 0 0 20px;
		}
		.top_about .top_about__list--medium .top_about__title:before {
			top: 3px;
		}
		.top_about .top_about__list--medium .top_about__item {
			width: 47.5%;
			margin-right: 4.8%;
			margin-top: 15px;
		}
		.top_about .top_about__list--medium .top_about__item:nth-child(-n+4) {
			margin-top: 15px;
		}
		.top_about .top_about__list--medium .top_about__item:nth-child(-n+2) {
			margin-top: 0px;
		}
		.top_about .top_about__list--medium .top_about__item:nth-child(even) {
			margin-right: 0;
		}
		.top_about .top_about__list--medium .top_about__img {
			margin: 0 0 8px;
		}
		.top_about .top_about__list--medium .top_about__img img {
			width: 100%;
		}
	}

	/*ー 小リスト ー*/
	@media screen and (max-width: 768px) {
		.top_about .top_about__list--small {
			display: block;
		}
		.top_about .top_about__list--small .top_about__item {
			width: 100%;
			padding: 11px;
			margin: 16px auto 0;
			border-radius: 60px;
		}
		.top_about .top_about__list--small .top_about__item:nth-child(-n+2) {
			margin-top: 16px;
		}
		.top_about .top_about__list--small .top_about__item:first-child {
			margin-top: 0;
		}
		.top_about .top_about__list--small .top_about__item:nth-child(even),
		.top_about .top_about__list--small .top_about__item:last-child {
			margin-right: auto;
		}
		/* 文字拡大 */
		.font_size_changed .top_about .top_about__list--small .top_about__item {
			padding: 11px 20px;
		}
	}

	/* calendar */
	.top_about .top_about__item--calendar .top_about__img {
		width: 34px;
		margin-right: 10px;
	}
	.font_size_changed .top_about .top_about__item--calendar .top_about__img {
		margin-right: 15px;
	}

	/* sns */
	.top_about .top_about__item--sns a {
		width: 36px;
		margin: 0 18px 0 0;
	}
	.top_about .top_about__item--sns a:last-child {
		margin-right: 0;
	}
	.font_size_changed .top_about .top_about__item--sns .top_about__title {
		margin: 0 15px 0 0;
		text-align: center;
	}
	@media screen and (max-width: 768px) {
		.top_about .top_about__item--sns .top_about__title {
			font-size: var(--top-fontsize-h4);
			margin: 0 20px 0 0;
		}
	}

	/* カウントダウン */
	.count_down_box2 > span.count_txt > span.count_title {
		font-size: 1.4rem;
	}
	.count_down_box2 > span.count_txt > span.count_title:before {
		width: 14px;
		height: 14px;
	}
	.count_down_box2 > span.count_txt > span.count_comment { 
		font-size: 1.4rem;
	}
	.count_down_box2 > span.count_txt > span.count_day span {
		font-size: 1.8rem;
	}
	@media screen and (max-width: 768px) {
		.count_down_box_wrap {
			display: flex;
			justify-content: space-between;
			gap: 15px;
		}
		.count_down_box {
			width: calc(50% - 8px);
		}
		.count_down_box2 > span.count_img {
			width: 100%;
			aspect-ratio: 148/84;
			margin: 0 auto 8px;
		}
		.count_down_box2 > span.count_txt {
			width: 100%;
		}
	}

	/* ループスライド */
	@media screen and (max-width: 768px) {
		.top_about .top_about_slider {
			height: 88px;
		}
		.top_about .top_about_slider__track { 
			width: 2880px;
			animation: slide 20s linear infinite;
		}
		.top_about .top_about_slider__track img {
			width: 960px;
		}
		.top_about .top_about_slider__controls {
			bottom: 0;
			left: 10px;
			width: 40px;
			height: 40px;
		}
		.top_about #top_about_slider__btn {
			width: 24px;
			height: 24px;
			font-size: 1.2rem;
			background-size: 6px auto;
		}
	}


    /*=== 村のおすすめ情報 ===*/
    .top_osusume {
        padding: 118px 0 0;
        margin: 0 auto 46px;
    }
	.top_osusume .top_heading {
		margin-bottom: 12px;
	}

	/* トピックス */
	.lettering_box {
		border-radius: 10px;
	}
	.lettering_box > div.lettering_box_img {
		width: 100%;
	}
    .lettering_box > div.lettering_box_text {
        padding: 11px 12px;
    }
    .lettering_box > div.lettering_box_text > div {
        font-size: 1.1rem;
    }
    .lettering_box > div.lettering_box_text > div.article_title {
        font-size: 1.4rem;
    }

    /* スライド化 */
    .top_osusume .slick-list {
            padding: 0 0 0 10px !important;
    }
    .top_osusume .slick-slide {
        margin: 0 16px 0 0;
    }
    .top_osusume .slick-dots {
        gap: 10px;
    }
    .top_osusume .slick-controls-container {
        gap: 16px;
        margin-top: 12px;
    }
    .top_osusume .my-dots-container {
        margin: 0px 10px 0px 0px;
    }
    .top_osusume .slick-arrow,
    .top_osusume .my-play-pause-btn {
        width: 26px;
        height: 26px;
		line-height: 26px;
		font-size: 1.2rem;
    }
	.top_osusume .my-play-pause-btn {
		background-size: 6px auto;
	}

	#lettering.is-disabled .slick-track {
		gap: 16px;
	}
	#lettering.is-disabled .lettering_box {
		width: 42.6vw!important;
	}

	/*=== 村政情報 ===*/
	@media screen and (max-width: 768px) {
		.top_info .top_inner {
			padding: 74px 0 0;
		}
		.top_info .top_inner:before {
			width: 90px;
			height: 104px;
			right: 0;
		}
	}

	/* リスト */
	.top_info .top_info__title {
		width: 42px;
	}
	.top_info .top_info__title:after {
		width: 57px;
		height: 136px;
	}
	.top_info .top_info__title span {
		left: 3px;
		font-size: var(--top-fontsize-h3);
	}
	.top_info .top_info__title span:after {
		content: "";
		display: inline-block;
		width: 16px;
		height: 16px;
		background-image: url(/img/top/icon_arrow_green.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
		margin: 5px 0 0;
	}
	@media screen and (max-width: 660px) {
		.top_info .top_info__list {
			display: block;
			width: 89.3%;
			max-width: 400px;
			margin: 0 auto 40px;
		}
		.top_info .top_info__item {
			width: 100%;
			margin: 16px auto 0;
		}
		.top_info .top_info__item:nth-child(-n+3) {
			margin-top: 16px;
		}
		.top_info .top_info__item:first-child {
			margin-top: 0;
		}
		.top_info .top_info__item:nth-child(3n),
		.top_info .top_info__item:last-child {
			margin-right: auto;
		}
		.top_info .top_info__img {
			margin: 0;
		}
		.top_info .top_info__img img {
			width: 100%;
		}
		/* 文字拡大時 */
		.font_size_changed .top_info .top_info__title span {
			background: #fff;
			padding: 15px 10px;
			border-radius: 0 0 10px 0;
			left: 0;
		}
	}

	/* リンクリスト */
	.top_linklist {
		display: block;
		max-width: 800px;
		margin: 0 auto 40px;
	}
	.top_linklist_box {
		width: 100%;
		border-bottom: 3px solid #C6EDD7;
		border-right: none;
	}
	.top_linklist_box:first-child {
		border-left: none;
		border-top: 3px solid #C6EDD7;
	}
	.top_linklist_box h2 {
		font-size: 1.8rem;
		letter-spacing: 0;
		margin: 0;
		padding: 20px;
		text-align: left;
	}
	.top_linklist_box h2 label[for*="acc_ttl_label"],
	.top_linklist_box h2.acc_title.accordion .accordion_icon {
		padding: 0;
		margin: 0;
		background-image: url(/img/sp/acc_open.png);
		background-position: right 0 top 50%;
	}
	.top_linklist_box h2.acc_open label[for*="acc_ttl_label"],
	.top_linklist_box h2.acc_title.accordion.acc_open .accordion_icon {
		background-image: url(/img/sp/acc_close.png);
	}
	.top_linklist_box ul {
		margin: 0px;
		padding: 10px 20px 20px;
	}
	.top_linklist_box ul li {
		display: flex;
		list-style: none;
		margin: 0 0 10px;
	}
	.top_linklist_box ul li:last-child {
		margin-bottom: 0px;
	}
	.top_linklist_box ul li:before {
		content: "・";
		display: inline-block;
	}
	.top_linklist_box ul li a {
		font-size: var(--fontsize-main);
		color: var(--text-color);
	}
	@media screen and (max-width: 768px) {
		.top_linklist {
			max-width: 600px;
		}
	}
	

    /*=== 人口・世帯数 ===*/
	.top_jinkou .top_inner {
		max-width: 800px;
	}
	.top_jinkou h2 {
		font-size: 1.8rem;
	}
	.top_jinkou_contents {
		flex-wrap: wrap;
	}
	.top_jinkou_dl {
		width: 50%;
		margin: 20px 0 0;
	}
	.top_jinkou_dl:nth-child(-n+2) {
		margin-top: 0;
	}
	.top_jinkou_dd {
		font-size: 1.8rem;
	}
    /* 文字拡大時 */
    .font_size_changed .top_jinkou_contents {
        gap: 0;
    }
	@media screen and (max-width: 768px) {
		.top_jinkou {
			margin: 40px auto 120px;
		}
		.top_jinkou .top_inner {
			width: 100%;
			max-width: 600px;
		}
		.top_jinkou .top_inner:after {
			top: auto;
			bottom: -49px;
			left: 20px;
			width: 54px;
			height: 82px;
		}
		.top_jinkou_ttl {
			text-align: center;
			margin: 0 auto 20px;
		}
		.top_jinkou h2 {
			margin: 0px 0 20px;
		}
		.top_jinkou_box {
			padding: 30px 20px;
		}
		.top_jinkou_list {
			display: block;
		}
		.top_jinkou_dl img {
			width: 50px;
		}
		.top_jinkou_bottom {
			margin: 20px auto 0;
		}
		.top_jinkou_title {
			display: inline-block;
			padding: 5px 20px;
			margin: 0 auto 5px;
		}
		.top_jinkou_date {
			font-size: 1.1rem;
		}
	}


    /*=== 事業PR ===*/
	.top_pr ul.banner_list li {
		width: calc(100% / 4 - 10px);
		max-width: 100%;
	}
	@media screen and (max-width: 768px) {
		.top_pr {
			max-width: 600px;
			margin: 0 auto 120px;
		}
		.top_pr ul.banner_list {
			gap: 16px;
		}
		.top_pr ul.banner_list li {
			width: calc(50% - 8px);
			max-width: 100%;
		}
	}
}
/* ==================================================
スマートフォン ここまで
================================================== */