@charset "utf-8";

#mymainback_bg{
    background-color: #fbf7f0;
    overflow: hidden;
}
#mymainback{
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
}
.inr{
    margin-inline: auto;
    padding-inline: 20px;
    max-width: 1080px;
    box-sizing: border-box;
    padding-top: 40px;
}
.inr_wide{
    padding-inline: 20px;
    box-sizing: border-box;
}

.mt_contents_head{
      margin-top: 120px;
}

.top_ttl{
    text-align: center;
    margin-bottom: 60px;
}
.top_ttl::before,
.top_ttl::after{
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    margin-inline: auto;
    width: 90px;
    height: 20px;
}
.top_ttl::before{
    background-image: url("/img/top/img_ttl_head.png");
    margin-bottom: 10px;
}
.top_ttl::after{
    background-image: url("/img/top/img_ttl_bottom.png");
    margin-top: 10px;
}


/* ヘッダー */
#header{
    background-image: url("/img/top/main_bg.png");
    background-size: cover;
    background-repeat: no-repeat;
    box-sizing: border-box;
    padding: 0 10px 20px;
    background-position: center center;
}

#header .header_nav ul{
    align-items: center;
    gap: 20px;
    background-color: #fbf7f0;
    border-radius: 100px;
    margin-left: auto;
    padding: 10px 40px;
    width: fit-content;
}
#header .support_menu_box{
    display: flex;
    gap: 20px;
}

#header .h_main a{
    color: #333;
}

#header .h_lang a{
    background-color: transparent;
    padding: 0;
    text-decoration: underline !important;
}
#header .gnav ul{
    padding-block: 0;
}

.header_search_wrap{
    border-radius: 20px;
    background-color: rgba(255, 255, 255, .5);
    margin: 40px auto;
    padding: 40px;
    max-width: 774px;
}
#header .header_top_nav{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    list-style-type: none;
    margin: 0 auto;
    padding-left: 0;
    text-align: center;
}
#header .header_top_nav a{
    background-color: #fff;
    border-radius: 50%;
    box-sizing: border-box;
    color: #333;
    display: flex;
    flex-direction: column;
    font-feature-settings: "palt";
    align-items: center;
    justify-content: center;
    filter: drop-shadow(0 0 3px rgba(0, 0, 0, .1));
    aspect-ratio: 1 / 1;
    padding: 5px;
    text-decoration: none;
}
#header .header_top_nav a::before{
    content: '';
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto 0;
    display: block;
    width: 72px;
    aspect-ratio: 1 / 1;
}
#header .header_top_nav a:hover{
    text-decoration: underline;
}
#header .header_top_nav .header_top_nav1::before{
    background-image: url("/img/top/header_top_nav1.png");
}
#header .header_top_nav .header_top_nav2::before{
    background-image: url("/img/top/header_top_nav2.png");
}
#header .header_top_nav .header_top_nav3::before{
    background-image: url("/img/top/header_top_nav3.png");
}
#header .header_top_nav .header_top_nav4::before{
    background-image: url("/img/top/header_top_nav4.png");
}
#header .header_top_nav .header_top_nav5::before{
    background-image: url("/img/top/header_top_nav5.png");
}
#header .header_top_nav .header_top_nav6::before{
    background-image: url("/img/top/header_top_nav6.png");
}
#header .header_top_nav .header_top_nav7::before{
    background-image: url("/img/top/header_top_nav7.png");
}
#header .header_top_nav .header_top_nav8::before{
    background-image: url("/img/top/header_top_nav8.png");
}
#header .header_top_nav .header_top_nav9::before{
    background-image: url("/img/top/header_top_nav9.png");
}
#header .header_top_nav .header_top_nav10::before{
    background-image: url("/img/top/header_top_nav10.png");
}
.header_search_box{
    border-radius: 20px;
    background-color: #fff;
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, .1));
    margin-top: 40px;
    padding: 20px;
}
.header_search{
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 30px;
}
#tmp_query,
#open_page_id {
    background-color: #e9efec !important;
    width: calc(100% - 6rem);
}
#cse-search-box .search_ipt,
#open_page_id_box .search_ipt{
    height: 60px;
    margin: 5px 0 10px;
}
.search_about{
    display: block;
    margin-left: 0;
}


/* 足あとを非表示 */
#footstep_wrap {
	display: none !important;
}

/* 重要なお知らせ */
#top_important {
	margin: 0;
	padding: 30px 40px;
	background: #ffcfcc;
}
#top_important .inr{
	position: relative;
}
#top_important h2 {
        display: flex;
        align-items: center;
        gap: 10px;
	margin: 0px 0px 20px;
	padding: 0px;
	font-size: 2.4rem;
        width: 50%;
}
#top_important h2::before {
    content: '';
    background: url("/img/common/important_ttl_icon.png") no-repeat;
    background-size: 100% auto;
    width: 40px;
    height: 40px;
    display: inline-block;
}

#top_important ul {
	margin: 0px;
	padding: 0px 0 20px;
	list-style: none;
}
#top_important ul li {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0px 0px 15px;
}
#top_important ul li:last-child {
	margin-bottom: 0px;
}
#top_important ul li > span {
	display: table-cell;
	vertical-align: top;
}
#top_important ul li > span.article_date {
	width: calc(11em + 10px);
}
#top_important ul li a {
	color: #333;
}

#top_important .link_box {
	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: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 10px 20px;
}
@media screen and (min-width: 1081px) {
#top_important .link_box {
        width: fit-content;
        position: absolute;
        right: 20px;
        top: 0;
        width: 50%;
}
}
#top_important .link_box span[class*="link_"] a {
	display: block;
	border: 1px solid transparent;
	border-radius: 40px;
	background: #ffffff;
	color: #333333;
	font-size: 1.5rem;
	line-height: 1.8rem;
	text-decoration: none;
	margin: 0px;
	padding: 10px 32px 10px 20px;
        position: relative;
}
#top_important .link_box span[class*="link_"] a::before{
        content: '';
        width: 18px;
        height: 18px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 10px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
#top_important .link_box span[class*="link_"] a::after{
        content: '';
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 17px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}
#top_important .link_box span[class*="link_"] a:hover,
#top_important .link_box span[class*="link_"] a:focus {
	text-decoration: underline;
}

/* 防災メール連携（JavaScript） */
#main_box_emergency .box_top_emer {
	margin: 0px 0px 40px;
	padding: 30px 40px;
	background: #fffaec;
}
#main_box_emergency h2 {
	margin: 0px 0px 20px;
	padding: 0px;
	color: #333333;
	font-size: 2.4rem;
	text-align: center;
}

#main_box_emergency ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
#main_box_emergency ul li {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0px 0px 15px;
}
#main_box_emergency ul li:last-child {
	margin-bottom: 0px;
}
#main_box_emergency ul li > span {
	display: table-cell;
	vertical-align: top;
}
#main_box_emergency ul li > span.emer_date {
	width: calc(14.5em + 10px);
}
#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: 1px solid transparent;
	border-radius: 0;
	background: #ffffff;
	color: #333333;
	font-size: 1.5rem;
	line-height: 1.8rem;
	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_event_btn a{
    background-color: #fde760;
    border-radius: 32px;
    color: #333;
    display: flex;
    gap: 40px;
    justify-content: center;
    text-decoration: none;
    padding: 20px 10px;
}
.top_event_btn .top_event_btn_txt_wrap{
    align-self: center;
}
.top_event_btn .top_event_btn_txt{
    text-align: center;
}
.top_event_btn .top_event_btn_ttl{
    font-size: 180%;
    font-weight: bold;
    margin-inline: auto;
    text-align: center;
    padding-right: 36px;
    position: relative;
    width: fit-content;
}
.top_event_btn .top_event_btn_ttl::before{
        content: '';
        width: 30px;
        height: 30px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 0px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
.top_event_btn .top_event_btn_ttl::after{
        content: '';
        width: 10px;
        height: 10px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 12px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}
.top_event_btn figure{
    line-height: 0;
    margin: -40px 0 -40px;
}

/* 何をお探しですか？ */
.top_service_wrap{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
.top_service_wrap .list_service,
.top_service_wrap .list_emer{
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: 0;
}
.top_service_wrap .list_service ul,
.top_service_wrap .list_emer ul {
	background-color: #fffefb;
        border-radius: 10px;
	margin: 0px;
	padding: 20px 5px;
	list-style: none;
	display: flex;
        justify-content: center;
}
.top_service_wrap .list_emer ul{
    background-color: #fff0ef;
}
.top_service_wrap .list_service li:not(:last-child){
    border-right: 3px dotted #fff5d6;
}
.top_service_wrap .list_emer li:not(:last-child){
    border-right: 3px dotted #fff;
}

.top_service_wrap .list_service li,
.top_service_wrap .list_emer li{
       box-sizing: border-box;
       width: calc( 100% / 4 );
       padding: 0 10px;
}
.top_service_wrap .list_service li a,
.top_service_wrap .list_emer li a {
	display: block;
	background-repeat: no-repeat;
	background-position: left 50% top 0;
        background-size: 76px 70px;
        color: #333;
        text-decoration: none;
	font-size: 1.6rem;
	line-height: 1.8rem;
	text-align: center;
	padding: 76px 0 0;
	height: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.top_service_wrap .list_service li a:hover,
.top_service_wrap .list_emer li a:hover{
        text-decoration: underline;
}
.top_service_wrap .top_service1 a {
    background-image: url("/img/top/top_service1.png");
}
.top_service_wrap .top_service2 a {
    background-image: url("/img/top/top_service2.png");
}
.top_service_wrap .top_service3 a {
    background-image: url("/img/top/top_service3.png");
}
.top_service_wrap .top_service4 a {
    background-image: url("/img/top/top_service4.png");
}

.top_service_wrap .top_emer1 a {
    background-image: url("/img/top/top_emer1.png");
}
.top_service_wrap .top_emer2 a {
    background-image: url("/img/top/top_emer2.png");
}
.top_service_wrap .top_emer3 a {
    background-image: url("/img/top/top_emer3.png");
}
.top_service_wrap .top_emer4 a {
    background-image: url("/img/top/top_emer4.png");
}


/* おすすめ情報 */
.top_osusume{
    background-color: #fff;
    border-radius: 48px;
    padding: 40px 0 160px;
    margin-inline: auto;
    max-width: 1400px;
    position: relative;
}

.top_osusume::before{
    content: '';
    width: 260px;
    aspect-ratio: 580 / 340;
    display: block;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("/img/top/img_osusume_tree.png");
    position: absolute;
    top: -60px;
    left: 20px;
}
.top_osusume::after{
    content: '';
    width: 450px;
    aspect-ratio: 900 / 308;
    display: block;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("/img/top/img_osusume_facility.png");
    position: absolute;
    bottom: 0;
    right: -40px;
}
.top_osusume_main{
    list-style-type: none;
    margin-inline: auto;
    padding: 0 20px;
    max-width: 1000px;
}
.top_osusume_main li a{
    color: #333;
    display: grid;
    grid-template-columns: 2fr 3fr;
    align-items: center;
    gap: 30px;
    text-decoration: none;
}
.top_osusume_main li .bnr_ttl:hover{
    text-decoration: underline;
}
.top_osusume_main li img{
    border-radius: 16px;
    width: 100%;
    height: auto;
    aspect-ratio: 460 / 320;
    object-fit: cover;
}
.top_osusume_main li .bnr_ttl{
    font-size: 120%;
    position: relative;
    padding-right: 32px;
    width: fit-content;
}
.top_osusume_main li .bnr_ttl::before{
        content: '';
        width: 18px;
        height: 18px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 10px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
.top_osusume_main li .bnr_ttl::after{
        content: '';
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 17px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}
#top_banner_2_list{
    margin-inline: auto;
    padding-inline: 60px;
    max-width: 1000px;
}

.top_slider .slide_wrap{
    position: relative;
}
.top_slider .slide_control_prev,
.top_slider .slide_control_next{
    position: relative;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #fff;
    border: none;
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, .1));
    font-size: 0;
}
.top_slider .slide_control_prev::before,
.top_slider .slide_control_next::before{
    content: '';
    width: 10px;
    height: 10px;
    border-top: solid 3px #ff4a3d;
    border-right: solid 3px #ff4a3d;
    position: absolute;
    top: 0;
    bottom: 0;
    margin-block: auto;
}
.top_slider .slide_control_prev::before{
    right: 16px;
    transform: rotate(-135deg);
}
.top_slider .slide_control_next::before{
    right: 20px;
    transform: rotate(45deg);
}
#top_banner_2_list .slide_control_prev,
#top_banner_2_list .slide_control_next{
    position: absolute;
    top: 0;
    bottom: 0;
    margin-block: auto;
}
#top_banner_2_list .slide_control_prev{
    left: -60px;
}
#top_banner_2_list .slide_control_next{
    right: -60px;
}
.swiper-button-disabled{
    cursor: auto;
    opacity: .6;
}

#top_banner_2_list ul{
    margin: 0 0 10px;
    padding-left: 0;
}
#top_banner_2_list li{
    box-sizing: border-box;
}
#top_banner_2_list a{
    color: #333;
    display: block;
    text-align: center;
    text-decoration: none;
}
#top_banner_2_list .img{
    border-radius: 16px;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 320 / 200;
}
#top_banner_2_list img{
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.top_slider .swiper-pagination-bullet{
    background-color: transparent;
    border: 1px solid #ff4a3d;
    opacity: 1;
    margin-inline: 6px;
    width: 16px;
    height: 16px;
}
.top_slider .swiper-pagination-bullet-active{
    background-color: #ff4a3d;
}
.color_black .top_slider .swiper-pagination-bullet-active,
.color_blue .top_slider .swiper-pagination-bullet-active{
    background-color: #ff4a3d !important;
}
.top_slider .slide_control_stop,
.top_slider .slide_control_play{
    background: transparent;
    border: none;
    font-size: 0;
    padding: 0;
}
.top_slider .slide_control_stop span,
.top_slider .slide_control_play span{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
}
.top_slider .slide_control_stop span::before,
.top_slider .slide_control_play span::before{
    content: '';
    width: 34px;
    height: 34px;
    background-color: #ff4a3d;
    border-radius: 50%;
}
.top_slider .slide_control_stop span::after{
    content: '';
    width: 4px;
    height: 14px;
    display: block;
    border-left: 3px solid #fff;
    border-right: 3px solid #fff;
    position: absolute;
}
.top_slider .slide_control_play span::after{
    content: '';
    background: #ffffff;
    height: calc(tan(60deg) * 15px / 2);
    width: 12px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    margin-right: -2px;
    position: absolute;
}



/* 鷹栖町からのお知らせ */
.top_info .top_info_clmn2{
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 20px;
}
.top_info .top_pickup h3{
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin-top: 0;
}
.top_info .top_pickup h3::before,
.top_info .top_pickup h3::after{
    content: '';
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 26px;
    height: 36px;
    display: block;
}
.top_info .top_pickup h3::before{
    background-image: url("/img/top/img_subttl_left.png");
}
.top_info .top_pickup h3::after{
    background-image: url("/img/top/img_subttl_right.png");
}
.top_info .top_pickup_box{
    background-color: #fffefb;
    border-radius: 20px;
    padding: 40px;
}
.top_info .lettering_box{
    display: block;
}
.top_info .lettering_box > div.lettering_box_img{
    display: block;
    width: 100%;
}
.top_info .top_pickup .lettering_detail{
    margin-top: 20px;
}
.top_info #top_tab_detail{
    background-color: #fffefb;
    border-radius: 20px;
    padding: 40px;
}




/* 鷹栖町のこと */
.top_about_bg{
    background-color: #fff5d6;
    padding: 40px 0;
    position: relative;
}
.top_about_bg::before{
    content: '';
    width: 980px;
    aspect-ratio: 980 / 278;
    display: block;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("/img/top/img_about_ine.png");
    position: absolute;
    top: -280px;
    left: 0;
}
.top_about{
    margin-top: 200px;
}
.top_about::before,
.top_about::after{
    content: '';
    width: 100%;
    aspect-ratio: 2000 / 160;
    display: block;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.top_about::before{
    background-image: url("/img/top/bg_about_top.png");
    background-position: bottom center;
    position: relative;
    z-index: 2;
}
.top_about::after{
    background-image: url("/img/top/bg_about_bottom.png");
    background-position: top center;
}
.top_about h2{
    margin-top: 0;
}
.top_about .top_about_clmn2{
    display: flex;
    gap: 50px; 
}
.top_about #top_banner_3_list{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    list-style-type: none;
    margin-top: 0;
    padding-left: 0;
    width: 46%;
}
.top_about #top_banner_3_list img{
    border-radius: 20px;
    display: block;
    margin-inline: auto;
    width: 100%;
    /*max-width: 200px;*/
    height: auto; 
    aspect-ratio: 220 / 150;
    object-fit: cover;
}
.top_about #top_banner_3_list a{
    color: #333;
    display: block;
    text-decoration: none;
}
.top_about #top_banner_3_list a:hover{
    text-decoration: underline;
}
.top_about #top_banner_3_list div{
    margin: 5px auto 0;
    position: relative;
    padding: 0 33px 0 3px;
    width: fit-content;
    line-height: 1.2;
}
.top_about #top_banner_3_list div::before{
        content: '';
        width: 18px;
        height: 18px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 10px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
.top_about #top_banner_3_list div::after{
        content: '';
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 17px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}

.top_about .top_kouhou{
    background-color: #fffefb;
    border-radius: 20px;
    box-sizing: border-box;
    padding: 40px;
    width: calc( 100% - 46% - 50px);
}
.top_about .top_kouhou h3{
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin-top: 0;
}
.top_about .top_kouhou h3::before,
.top_about .top_kouhou h3::after{
    content: '';
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 26px;
    height: 36px;
    display: block;
}
.top_about .top_kouhou h3::before{
    background-image: url("/img/top/img_subttl_left.png");
}
.top_about .top_kouhou h3::after{
    background-image: url("/img/top/img_subttl_right.png");
}
.top_about .top_kouhou_clmn2{
    display: grid;
    grid-template-columns: 2fr 3fr;
    align-items: center;
    gap: 30px;
}
.top_about .top_kouhou img{
    display: block;
    margin-inline: auto;
    max-width: 160px;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, .2));
    aspect-ratio: 160 / 230;
    object-fit: cover;
}
.top_about .top_kouhou .kouhou_txt{
    font-size: 90%;
    font-feature-settings: "palt";
}
.top_about .top_kouhou p{
    margin-top: 0;
}
.top_about .top_kouhou .link{
    color: #333;
    display: inline-block;
    position: relative;
    padding-right: 32px;
}
.top_about .top_kouhou .link::before{
        content: '';
        width: 18px;
        height: 18px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 10px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
.top_about .top_kouhou .link::after{
        content: '';
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 17px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}

#top_banner_5_list{
    margin-top: 40px;
}
#top_banner_5_list li a{
    color: #333;
    display: flex;
    align-items: center;
    gap: 5px;
    line-height: 1.2;
}
#top_banner_5_list li .img{
    width: 35%;
    overflow: hidden;
    aspect-ratio: auto 100 / 60;
    border-radius: 12px;
}
#top_banner_5_list li .bnr_txt{
    width: calc(65% - 5px);
}

#top_banner_5_list .btn {
	display: block;
	border: 1px solid transparent;
        border-radius: 40px;
	background: #ffdc00;
	color: #333;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	padding: 20px 45px 20px 18px;
	text-align: center;
        text-decoration: none;
        position: relative;
}
#top_banner_5_list .btn::before {
        content: '';
        display: block;
        width: 30px;
        height: 30px;
        background-color: #fff;
        border-radius: 50%;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 14px;
        margin-block: auto;
}
#top_banner_5_list .btn::after{
        content: '';
        width: 8px;
        height: 8px;
        border-top: solid 2px #ffdc00;
        border-right: solid 2px #ffdc00;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 26px;
        transform: rotate(45deg);
        margin-block: auto;
}



/* たかす公式SNS */

.top_sns{
    position: relative;
}
/*.top_sns::before{
    content: '';
    width: 160px;
    aspect-ratio: 320 / 240;
    display: block;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("/img/top/img_sns_house.png");
    position: absolute;
    top: -40px;
    left: 100px;
}*/
.top_sns .top_sns_clmn2{
    display: grid;
    grid-template-columns:3fr 2fr;
    gap: 20px;
    max-width: 780px;
    margin: 0 auto;
    align-items: center;
}
.top_sns .instagram{
    background-color: #fffefb;
    border-radius: 20px;
    display: block;
    padding: 20px 40px 40px;
}
.top_sns .instagram_ttl{
    display: flex;
    gap: 20px;
    align-items: center;
    color: #333;
    justify-content: center;
}
.top_sns .instagram figure{
    margin: 0;
    position: relative;
}
.top_sns .instagram a{
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: center;
    color: #333; 
}
.top_sns .instagram ul#top_banner_7_list{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: start;
    gap: 10px;
    max-width: 300px;
    margin: 0 auto;
}
.top_sns .instagram #top_banner_7_list li{
    width: 30%;
}
.top_sns .instagram #top_banner_7_list li img{
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.top_sns .list_sns{
    list-style-type: none;
    padding-left: 0;
    margin: 0;
}
.top_sns .list_sns li{
    background-color: #fffefb;
    border-radius: 20px;
    display: block;
    padding: 30px 40px;
}
.top_sns .list_sns li + li{
    margin-top: 20px;
}
.top_sns .list_sns li a{
    display: grid;
    gap: 20px;
    grid-template-columns: 50px 1fr;
    align-items: center;
    text-align: center;
    color: #333; 
}
#top_banner_6_list{
    margin-top: 80px;
}
#top_banner_6_list ul{
    margin: 0;
    padding-left: 0;
}
#top_banner_6_list img{
    width: 100%;
    height: auto;
    aspect-ratio: 330 / 100;
    object-fit: cover;
}
#top_banner_6_list .slide_control_box1{
    justify-content: space-between;
    gap: 10px;
}
#top_banner_6_list .slide_patination_wrap{
    display: flex;
    align-items: center;
    gap: 10px;
}


/* タブ */
#top_tab_title 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: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
        width: fit-content;
        margin-inline: auto;
}
#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;
	background: #ffdc00;
        border: none;
	color: #333333;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.8rem;
	text-decoration: none;
	text-align: center;
	padding: 20px 40px;
        width: max-content;
}
#top_tab_title ul li:first-child button{
	border-radius: 20px 0 0 0;
}
#top_tab_title ul li:last-child button{
	border-radius: 0 20px 0 0;
}
#top_tab_title ul li button:hover,
#top_tab_title ul li button:focus {
	text-decoration: underline;
}
.color_black #top_tab_title ul li.tab_on button{
    outline: 5px solid #fff;
}
#top_tab_title ul li.tab_on button {
	background: #fffefb;
}


/* 新着情報（件数） */
.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: table;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
        padding: 20px 0;
}
.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 {
	width: calc(11em + 10px);
}
.top_tab_detail_list ul li + li {
	border-top: 1px solid #f2f2f2;
}
.top_tab_detail_list ul li a {
	color: #333;
    display: block;
    position: relative;
    padding-right: 20px;
}
.top_tab_detail_list ul li a::after{
        content: '';
        width: 8px;
        height: 8px;
        border-top: solid 1px #666;
        border-right: solid 1px #666;
        position: absolute;
        right: 4px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}

/* 新着情報（情報はありません） */
.top_tab_detail_box p.no_data {}

/* 新着情報（newアイコン） */
.top_tab_detail_list{
        position: relative;
}
.top_tab_detail_list img.icon_new {
	vertical-align: baseline;
        margin-top: 5px;
        position: absolute;
}
.top_tab_detail_list img.icon_new + a {
	text-indent: 40px;
}

/* 新着情報（一覧・RSS） */
.top_tab_detail_box .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;
}
.top_tab_detail_box .link_box span[class*="link_"] a {
	border: 1px solid transparent;
	border-radius: 0;
	color: #333333;
	margin: 0px;
	text-align: center;
    display: inline-block;
    position: relative;
    padding-right: 32px;
}
.top_tab_detail_box .link_box span[class*="link_"] a::before{
        content: '';
        width: 18px;
        height: 18px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 10px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
.top_tab_detail_box .link_box span[class*="link_"] a::after{
        content: '';
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 17px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}
.top_tab_detail_box .link_box span[class*="link_"] a:hover,
.top_tab_detail_box .link_box span[class*="link_"] a:focus {
	text-decoration: underline;
}

/* トピックス */
.lettering_box {
	width: 100%;
	display: table;
	margin: 0px 0px 20px;
}
.lettering_box:last-child {
	margin-bottom: 0px;
}
.lettering_box > div {
	display: table-cell;
	vertical-align: top;
}

.lettering_box > div.lettering_box_text > div {
	margin-bottom: 0.5em;
}
.lettering_box > div.lettering_box_text > div:last-child {
	margin-bottom: 0px;
}

.lettering_box > div.lettering_box_img {
        margin-inline: auto;
	max-width: 400px;
}
.lettering_box > div.lettering_box_img div {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 200 / 150;
	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: contain;
}
.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 + .topics_no_image_list {
	margin-top: 30px;
}

/* ミニカレンダー */
#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_trend_word {
	margin: 20px 0px 0px;
        display: block;
}
#search_trend_word h2 {
	margin: 0px 0px 10px;
	padding: 0px;
	font-size: 2rem;
}
#search_trend_word p a {
	border: 1px solid #b3b3b3;
        background-color: #fff;
}

#cse_filetype{
        display: block;
}

/* さがすメニュー */
.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: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	gap: 20px;
}
.top_search_menu_list ul li a {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #333333;
	font-size: 1.8rem;
	text-decoration: none;
        padding: 0 32px 0 0;
        position: relative;
        display: inline-block;
        line-height: 1.0;
}
.top_search_menu_list ul li a::before{
        content: '';
        width: 18px;
        height: 18px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 10px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
.top_search_menu_list ul li a::after{
        content: '';
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 17px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}
.top_search_menu_list ul li a:hover,
.top_search_menu_list ul li a:focus {
	text-decoration: underline;
}

/* リンク */
.top_linklist {
	margin: 40px 0px 0px;
	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_linklist_box {
	width: 100%;
	border: 2px solid;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.top_linklist_box h2 {
	background: #333333;
	color: #ffffff;
	font-size: 1.8rem;
	margin: 0px;
	padding: 15px 20px;
}
.top_linklist_box ul {
	margin: 0px;
	padding: 20px 20px 20px 40px;
}
.top_linklist_box ul li {
	margin-bottom: 10px;
}
.top_linklist_box ul li:last-child {
	margin-bottom: 0px;
}

/* 人口・世帯数 */
.top_jinkou {
	margin: 40px 0px 0px;
}
.top_jinkou h2 {
	margin: 0px 0px 20px;
	padding: 0px;
	font-size: 2rem;
}

.top_jinkou_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: 10px 20px;
}
.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_about .top_tokei h3 {
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin-top: 0;
}
.top_about .top_tokei h3::before,
.top_about .top_tokei h3::after{
    content: '';
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 26px;
    height: 36px;
    display: block;
}
.top_about .top_tokei h3::before{
    background-image: url("/img/top/img_subttl_left.png");
}
.top_about .top_tokei h3::after{
    background-image: url("/img/top/img_subttl_right.png");
}
.top_tokei {
    margin: 40px 0px 0px;
    background-color: #fffefb;
    border-radius: 20px;
    padding: 40px;
    position: relative;
}
.top_tokei_inr{
    margin-inline: auto;
    display: grid;
    grid-template-columns: 3fr 2fr;
    gap: 60px;
    align-items: center;
}
.top_tokei .t_right{
    text-align: right;
}
.top_tokei .link{
    color: #333;
    display: inline-block;
    position: relative;
    padding-right: 32px;
}
.top_tokei .link::before{
        content: '';
        width: 18px;
        height: 18px;
        display: block;
        background-color: #ff4a3d;
        border-radius: 50%;
        position: absolute;
        right: 10px;
        top: 0;
        bottom: 0;
        margin-block: auto;
}
.top_tokei .link::after{
        content: '';
        width: 5px;
        height: 5px;
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
        position: absolute;
        right: 17px;
        top: 0;
        bottom: 0;
        margin-block: auto;
        transform: rotate(45deg);
}

.top_tokei h3 {
	margin-top: 0;
    font-size: 1.5em;
}

.top_tokei_img {
        border-radius: 20px;
        overflow: hidden;
	width: 100%;
        aspect-ratio: 1 / 1;
	position: relative;
}

#tokei_photo {
        background-color: #000;
	width: 100%;
        aspect-ratio: 1 / 1;
	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 {
        color: #000;
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 1;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	text-shadow: 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff,
        0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff,
        0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff, 0px 0px 3px #ffffff;
}

/* カウントダウン */
.count_down_box_wrap {
	margin: 40px 0px 0px;
}
.count_down_box {
	background: #fffefb;
        border-radius: 20px;
        margin-top: 20px;
	padding: 40px;
}

.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;
        margin-inline: auto;
        max-width: 820px;
}
.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: 40%;
}
.count_down_box2 > span.count_img > span {
	display: block;
}
.count_down_box2 > span.count_img > span img {
	width: 100%;
	height: auto;
	vertical-align: top;
    aspect-ratio: 330 / 220;
    object-fit: cover;
}

.count_down_box2 > span.count_txt {
	width: 55%;
}
.count_down_box2 > span.count_txt:only-child {
	width: 100%;
}
.count_down_box2 > span.count_txt > span {
        font-size: 120%;
	display: block;
}
.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 {
        border-bottom: 3px solid;
        border-image: linear-gradient(to right, #ffdb00, #ff4c3d) 1;
	margin-top: 10px;
        width: fit-content;
}
.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;
}
.count_down_box2 a {
	color: #333;
}

/* バナー広告 */
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;
        align-items: center;
}
ul.banner_list li {
	width: calc( (100% - (20px * 3)) / 4 );
}
ul.banner_list li img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

#top_banner_5_list ul.banner_list li{
    width: calc((100% - (7px * 3)) / 4);
}

/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1080px) {

       .header_search_box {
            position: fixed;
	    left: 0px;
	    bottom: 0;
	    z-index: 998;
            border-radius: 20px 20px 0 0 !important;
	    padding: 40px 20px 150px !important;
       }
       .spm_search_open #header2{
            display: none !important;
       }
       .header_search{
            grid-template-columns: 1fr;
            gap: 0;
       }
       #cse_filetype fieldset {
           text-align: right;
       }
       #search_trend_word p a{
           border: none;
       }
       #tmp_query{
            background-color: #fffefb !important;
       }
       #open_page_id{
            background-color: #fffefb !important;
       }
       #header .header_nav ul{
            background-color: transparent;
            padding: 0;
            margin-left: 0;
       }
       #header .support_menu_box{
            flex-wrap: wrap;
       }


        .mt_contents_head{
            margin-top: 80px;
        }
        .top_ttl{
            margin-bottom: 40px;
        }

        .header_search_box{
            filter: none;
            display: none;
        }
        .header_search_wrap{
            margin-block: 0;
            padding: 20px 10px;
        }

	/* 重要なお知らせ */
	#top_important {
		padding: 30px 0;
	}
	#top_important h2 {
		font-size: 2rem;
        width: 100%;
	}

	#top_important ul li {
		width: auto;
		display: block;
	}
	#top_important ul li > span {
		display: block;
	}
	#top_important ul li > span.article_date {
		width: auto;
	}

	#top_important .link_box span[class*="link_"] a {
		font-size: 1.3rem;
	}

	/* 防災メール連携（JavaScript） */
	#main_box_emergency .box_top_emer {
		padding: 30px 20px;
	}
	#main_box_emergency h2 {
		font-size: 2rem;
	}

	#main_box_emergency ul li {
		width: auto;
		display: block;
	}
	#main_box_emergency ul li > span {
		display: block;
	}
	#main_box_emergency ul li > span.emer_date {
		width: auto;
	}

	#main_box_emergency .btn_emer #emer_mail_open_all {
		font-size: 1.3rem;
	}

	/* イベントカレンダー */
        .top_event_btn a{
            border-radius: 12px;
            gap: 0;
        }
        .top_event_btn .top_event_btn_txt{
            font-size: 80%;
            text-align: left;
        }
        .top_event_btn .top_event_btn_ttl{
            font-size: 100%;
            margin-inline: 0;
            text-align: left;
        }
        .top_event_btn .top_event_btn_img_wrap{
            width: 20%;
        }
        .top_event_btn figure{
            margin: 0;
        }
        .top_event_btn .top_event_btn_img_wrap img{
            width: 100%;
            height: auto;
        }

        .list_lifestage h3,
        .top_service_wrap .list_service h3,
        .top_service_wrap .list_emer h3{
             text-align: center;
        }
        .top_service_wrap{
             grid-template-columns: 1fr;
        }
        .top_service_wrap .list_service ul,
        .top_service_wrap .list_emer ul{
            flex-wrap: wrap;
        }


        /* おすすめ情報 */
        .top_osusume{
            padding-bottom: 100px;
        }
        .top_osusume::before{
            width: 160px;
            top: -60px;
        }
        .top_osusume::after{
            width: 225px;
            right: -20px;
        }
        .top_osusume_main li p{
            margin-top: 5px;
        }
        #top_banner_2_list{
            padding-inline: 0;
        }
        #top_banner_2_list .slide_control_prev {
            left: -12px;
            z-index: 2;
        }
        #top_banner_2_list .slide_control_next {
            right: -12px;
            z-index: 2;
        }



	/* タブ */
	#top_tab_title ul li button,
	#top_tab_title ul li.tab_on button {
		font-size: 1.4rem;
	}

	#top_tab_detail {
		padding: 30px 20px;
	}
	#top_tab_detail .acc_title + input[id*="acc_ttl_label"] + * {
		display: block;
	}


	/* 新着情報（件数） */
	.release_day {
		font-size: 1.3rem;
	}

	/* 新着情報（リスト） */
	.top_tab_detail_list ul li {
		width: auto;
		display: block;
		position: relative;
	}
	.top_tab_detail_list ul li > span {
		display: block;
	}
	.top_tab_detail_list ul li > span.article_date {
		width: auto;
	}

	/* 新着情報（一覧・RSS） */
	.top_tab_detail_box .link_box span[class*="link_"] a {
		font-size: 1.3rem;
	}

	/* トピックス */

	/* リンク */
	.top_linklist {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 15px;
	}
	.top_linklist_box {
		width: 100%;
	}

	.top_linklist_box h2 label[for*="acc_ttl_label"],
	.top_linklist_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%;
		background-image: url("/img/sp/acc_open_white.png");
	}
	.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_white.png");
	}

	/* バナー広告 */
	#top_banner_5_list {
		gap: 20px 10px;
	}
        #top_banner_5_list li {
                width: calc((100% - (10px * 3)) / 4);
        }

	/* 鷹栖町のこと */
        .top_about{
            margin-top: 100px;
        }
	.top_about_bg::before{
	    width: 60vw;
            top: -17vw;
	}
}
@media screen and (max-width: 768px) {
    #header{
        background-color: #F0FAFC;
        background-image: url("/img/top/main_bg_sp.png");
        background-position: bottom left;
        padding-bottom: 60vw;
    }
    #header .header_top_nav{
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
        max-width: 480px;
    }
    #header .header_top_nav_pc_only{
       display: none;
    }

	/* さがすメニュー */
	.top_search_menu_list ul {
                display: block;
               /* grid-template-columns: 3fr 4fr;
		gap: 10px;
                margin-inline: auto;
                max-width: 400px;*/
	}
	.top_search_menu_list ul li {
                text-align: center;
                margin: 10px 0;
	}
	.top_search_menu_list ul li a {
                font-size: 1.6rem;
	}

        .top_info .top_info_clmn2{
                grid-template-columns: 1fr;
                gap: 40px;
        }
        .top_info .top_info_clmn2 .top_pickup{
                order: 2;
        }
        #lettering{
                margin-inline: auto;
                max-width: 400px;
        }

        .top_osusume_main li a{
            grid-template-columns: 1fr;
            gap: 5px;
        }

	/* カウントダウン */
	.count_down_box_wrap {
		display: block;
	}
        .count_down_box2{
                display: block;
                margin-inline: auto;
                max-width: 400px;
        }
	.count_down_box2 > span.count_img {
                display: block;
		width: 100%;
	}
	.count_down_box2 > span.count_txt {
                margin-top: 20px;
		width: 100%;
	}

	/* 鷹栖町のこと */
	.top_about .top_about_clmn2{
 	   display: block;
            margin-inline: auto;
	}
	.top_about #top_banner_3_list{
           gap: 20px 10px;
   	   width: 100%;
	}
	.top_about .top_kouhou{
   	   width: 100%;
	}
        .top_tokei_inr{
           grid-template-columns: 1fr;
           max-width: 500px;
        }

        /* バナー広告 */
        #top_banner_5_list{
           margin-inline: auto;
           max-width: 500px;
           padding-inline: 20px;
        }
        #top_banner_5_list li{
           width: 100%;
        }


        /* たかす公式SNS */
       .top_sns::before {
            width: 100px;
            top: -80px;
            left: -6px;
        }
        .top_sns .top_sns_clmn2{
           grid-template-columns: 1fr;
        }
        .inr.top_banner_6_list_wrap{
           padding: 0;
        }
        .top_slider .slide_control_prev,
        .top_slider .slide_control_next {
            margin-inline: 10px;
        }
        .top_sns .list_sns li{
            padding: 10px 20px;
        }
        .top_sns .list_sns li a{
            padding: 0 10%;
        }
}

@media screen and (max-width: 560px) {
    #header .header_top_nav a{
        font-size: 1.4rem;
    }
    #header .header_top_nav a::before{
        width: 50%;
    }
        .top_service_wrap .list_service ul,
        .top_service_wrap .list_emer ul{
            padding-block: 5px;
        }
        .top_service_wrap .list_service li,
        .top_service_wrap .list_emer li {
            width: calc(100% / 2);
        }

        .top_service_wrap .list_service li:nth-child(2) {
            border-right: none;
        }
        .top_service_wrap .list_service li:first-child,
        .top_service_wrap .list_service li:nth-child(2) {
            padding-bottom: 5px;
            border-bottom: 3px dotted #fff5d6;
        }
        .top_service_wrap .list_emer li:nth-child(2) {
            border-right: none;
        }
        .top_service_wrap .list_emer li:first-child,
        .top_service_wrap .list_emer li:nth-child(2) {
            padding-bottom: 5px;
            border-bottom: 3px dotted #fff;
        }

        .top_service_wrap .list_service li a,
        .top_service_wrap .list_emer li a {
            display: flex;
            align-items: center;
            background-position: left 0 top 50%;
            background-size: 38px 35px;
            text-align: left;
            padding: 16px 0 16px 40px;
            min-height: 40px;
        }
        .top_service_wrap .list_service li a .top_service_pc_only{
            display: none;
        }

        #top_tab_title ul li button{
               padding: 20px 12px;
               min-width: 120px;
        }
        .top_info #top_tab_detail{
               padding: 10px 20px 30px;
        }
        .top_info .top_pickup_box{
               padding: 20px;
        }
        .count_down_box{
               padding: 20px;
        }

        .top_about .top_kouhou_clmn2{
           grid-template-columns: 1fr;
        }
}

/* ==================================================
スマートフォン ここまで
================================================== */