@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Lato');

/* ==========================================================================================
769px 以上の指定 印刷含む
========================================================================================== */
/* トップスライダー */
.top_slider_wp{
    position: relative;
}

.top_slider_wp .t_slider_control_wp{
    position: absolute;
    bottom: 0;
    right: 85px;
}

.top_slider_wp .slick-control-wp{
    display: flex;
    background-color: rgba(255,255,255,0.5);
    padding: 10px;
    border-radius: 8px 8px 0 0;
    align-items: center;
}

.top_slider_wp .t_slider_control_wp .slick-dots{
    display: flex;
    padding: 0;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 13px;
    height: 13px;
    margin: 0 10px;
    padding: 0;
    background-color: #fff;
    border-radius: 10px;
    cursor: pointer;
}

.slick-dots li.slick-active {
    background-color: #286ddd;
}

.slick-dots li button {
    position: absolute;
    content: '';
    top: -2px;
    right: -2px;
    font-size: 0;
    line-height: 0;
    display: block;
    width: 12px;
    height: 12px;
    border: 0px;
    padding: 2px;
    color: transparent;
    background: transparent;
}

.slick-control-wp .reproducing-button-wrap{
    margin-left: 17px;
}

.searchA{
    background-color: #eaf5f9;
    padding: 60px 0 ;
    border-bottom: 1px solid #286ddd;
}

.searchA .search_con{
    width: 1100px;
    margin: 0 auto;
}

/* 検索 */
.qa_btn{
    margin-left: 20px;
}

.qa_btn a{
    background-color: #db2678;
    color: #fff;
    font-weight: bold;
    border-radius: 8px;
    width: 220px;
    display: block;
    text-decoration: none;
    min-height: 61px;
    padding: 18px 34px 14px 75px;
    background-image: url(/images/qa_icon.png);
    background-repeat: no-repeat;
    background-position: 30px center;
}




.keyword_con{
    width: 1100px;
    margin: 20px auto 0;
}

.keyword_con ul{
    display: flex;
    flex-wrap: wrap;
}

.keyword_con ul li{
    padding-right: 10px;
}

.keyword_con ul li a{
    display: block;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #dbdbdb;
    border-radius: 8px;
    padding: 14px 18px 12px 35px;
    position: relative;
    color: #1a1a1a;
}

.keyword_con ul li.keyword_btn a{
    background-color: transparent;
    border: none;
    padding: 0;
}

.keyword_con ul li a::before{
    position: absolute;
    content: "#";
    color: #479cd7;
    font-weight: bold;
    left: 20px;
}

.keyword_con ul li.keyword_btn a::before{
    display: none;
}


.search_notice{
    width: 1200px;
    margin: 60px auto 0;
    padding: 10px;
    background-color: #fff8f8;
    border: 1px solid #ca3131;
    border-radius: 8px;
    display: flex;
}

.search_notice h2{
    color: #ca3131;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    font-size: 1.8rem;
}

.search_notice .notice_list{
    height: 180px;
    overflow: visible;
    padding: 20px 20px 18px 15px;
    overflow: scroll;
    overflow-x: hidden;
    width: 100%;
}

.search_notice .notice_list li{
    padding-bottom: 15px;
}

/* ピックアップ */
.pickupA{
    padding: 45px 0 80px 0;
}
.pickup_slider ul{
    padding: 40px 0 0 0 ;
}
.pickup_slider ul li{
    padding: 0 20px;
}

.pickup_slider .slick-arrow{
    position: absolute;
    font-size: 0;
    width: 40px;
    height: 40px;
    top: -50px;
}

.pickup_slider .slick-arrow:before{
    content:""!important;
    width: 100%!important;
    height: 100%!important;
    position: absolute;
    top: 0;
    left: 0;
}

.p_slider .slick-next{
    right: 85px;
    left: auto;
}

.p_slider .slick-prev{
    right: 135px;
    left: auto;
}

.p_slider .slick-next::before{
    background-image: url(/images/slider_r.png)!important;
    background-repeat: no-repeat;
    background-size: 40px 40px;
}

.p_slider .slick-prev::before{
    background-image: url(/images/slider_l.png)!important;
    background-repeat: no-repeat;
    background-size: 40px 40px;
}

/* MENU */
.menuA{
    background-color: #f6f6f6;
    padding: 40px 0 75px;
}

.menuA h2,
.municipalA h2,
.informationA h2,
.pickupA h2,
.photoA h2,
.newsA h2{
    text-align: center;
    background-image: url(/images/h2_icon.png);
    background-repeat: no-repeat;
    background-position: center top;
    padding: 20px 0 0;
    font-family: "Lato";
    font-weight: 800;
    font-size: 4.0rem;
    line-height: 1.3;
    letter-spacing: 0.08em;
}

.menuA h2 span,
.municipalA h2 span,
.informationA h2 span,
.pickupA h2 span,
.photoA h2 span,
.newsA h2 span{
    display: block;
    color: #d81979;
    font-size: 1.6rem;
}

.menuA .menu_list{
    margin: 40px auto 0;
    width: 1200px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 40px;
}

.menuA .menu_list li a{
    display: flex;
    background-color: #fff;
    text-decoration: none;
    width: 195px;
    height: 195px;
    align-items: center;
    justify-content: flex-end;
    padding: 0 0 43px 0;
    font-weight: bold;
    flex-flow: column;
}

.menuA .menu_list li a span{
    display: block;
    padding-top: 18px;
    color: #1a1a1a;
}

.menuA .menu_list li:first-child a{
    border-radius: 8px 0 0 0;
}

.menuA .menu_list li:nth-child(6) a{
    border-radius: 0 8px 0 0;
}

.menuA .menu_list li:nth-child(7) a{
    border-radius: 0 0 0 8px;
}

.menuA .menu_list li:last-child a{
    border-radius: 0 0 8px 0;
}

.menuA .menu_scroll{
    width: 1200px;
    margin: 0 auto;
}

.menuA .menu_scroll ul{
    display: flex;
    padding-bottom: 30px;
}

.menuA .menu_scroll ul li{
    padding-right: 20px;
}

.menuA .menu_scroll ul li a{
    display: flex;
    background-color: #fff;
    background-image: url(/images/menu_link02.png);
    background-repeat: no-repeat;
    border-radius: 8px;
    text-decoration: none;
    align-items: center;
    background-position: bottom 18px right 15px;
}

.menuA .menu_scroll ul li a.newWindow{
    background-image: url(/images/menu_link01.png);
    background-repeat: no-repeat;
}

.menuA .menu_scroll ul li a span{
    display: block;
    color: #292929;
    font-weight: bold;
    padding: 0 30px;
}

.swiper-container{
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    overflow: clip;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block;
    width: 1200px;
    margin: 0 auto;
}

.menu_scroll .swiper-scrollbar{
    background-color: #fff;
}


.swiper-horizontal>.swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
    bottom: var(--swiper-scrollbar-bottom,6px) !important;
    height: var(--swiper-scrollbar-size,6px) !important;
}

/* フォトフラッシュ */
.photoA{
    padding: 45px 0 75px;
    background-image: url(/images/photo_bk.png);
    border-bottom: 1px solid #286ddd;
}

.photoA ul{
    margin-top: 35px;
    padding-bottom: 40px;
}

.photoA ul li a{
    width: 306px;
    display: block;
    text-decoration: none;
    color: #1a1a1a;
    font-weight: bold;
}

.photoA ul li a img{
    position: relative;
}

.photoA ul li a img::before{
    content:"";
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  z-index:2;
  background:#0d73ec;
  opacity:0.2;
  transition:0.3s;
}

.photoA ul li a:hover{
    text-decoration: underline;
}

.photoA ul li a span{
    display: block;
    line-height: 1.7;
    margin-top: 20px;
}

.photoA ul li a span.photo_img{
    margin:0;
    line-height: auto;
    position:relative;
  }
  
  .photoA ul li a span.photo_img::before{
    content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      z-index: 2;
      background: #0d73ec;
      opacity: 0.2;
      transition: 0.3s;
      border-radius: 8px;
    }
    
    .photoA ul li a span.photo_img:hover::before{
      opacity:0;
    }

.photoA ul li span.date{
    color: #1150b7;
    margin-top: 10px;
    display: block;
    font-size: 1.4rem;
}

/* 市政 */
.municipalA{
    width: 1200px;
    margin: 45px auto 95px;
}

.municipalA .municipal_list{
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}

.municipalA .municipal_list li{
    width: 236px;
}

.municipalA .municipal_list li a{
    display: block;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    background-color: #f6f6f6;
}

.municipalA .municipal_list li:first-child a{
    border-radius: 8px 0 0 8px;
}

.municipalA .municipal_list li:last-child a{
    border-radius: 0 8px 8px 0;
}

.municipalA .municipal_list li a span{
    display: block;
    padding: 24px 0 27px;
    font-size: 1.8rem;
}

/* 新着情報 */
.newsA{
    background-color: #eaf5f9;
    padding: 40px 0 100px;
    border-bottom: 1px solid #286ddd;
}

.newsA .tab_area{
    width: 1200px;
    margin: 45px auto 0;
}

.news_tabA{
    display: flex;
    justify-content: space-between;
}

.news_tabA .tab_item{
    width: calc(99% / 3);
}

.news_tabA .tab_item a{
    text-decoration: none;
    display: block;
    background-color: #e6e6e6;
    border-radius: 8px 8px 0 0;
    color: #5d5d5d;
    text-align: center;
    padding: 20px 0 17px;
    font-size: 2rem;
    font-weight: bold;
    position: relative;
}

.news_tabA .tab_item.active a{
    background-color: #0b50cf;
    color: #fff;
}

.news_tabA .tab_item.active a::before{
    content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #0b50cf;
}

.news_tabA .tab_item.active a::after{
    content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 6px;
  background-color: #0b50cf;
  border-radius: 0 0 8px 8px;
}

.tab_contents{
    display: none;
    background-color: #fff;
    border-radius: 0 0 8px 8px;
    padding: 30px 50px 50px;
}

.tab_contents.show{
    display: block;
}

.tab_contents .news_list dl{
    display: flex;
    border-bottom: 1px solid #dbdbdb;
    padding: 21px 0 18px;
    position: relative;
}

.tab_contents .news_list dl::before{
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    border-color: #286ddd;
    border-style: solid;
    border-width: 2px 2px 0 0;
    content: "";
    display: block;
    height: 5px;
    position: absolute;
    right: 10px;
    top: 50%;
    width: 5px;
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}

.tab_contents .news_list dl dt{
    width: 150px;
    flex-shrink: 0;
    font-weight: 500;
    color: #2d2d2d;
}

.tab_contents .news_list dl dd{
    margin: 0 0 0 30px;
}

.tab_contents .news_list dl dd a{
    text-decoration: none;
    color: #1a1a1a;
}

.tab_contents .news_list dl dd a:hover{
    text-decoration: underline;
}

#news_box ul{
    display: flex;
    margin-top: 20px;
    justify-content: space-between;
}

#news_box ul li a{
    text-decoration: none;
    display: block;
    border-radius: 8px;
    border: 1px solid #dbdbdb;
    padding: 15px 0;
    text-align: center;
    background-image: url(/images/tab_btn.png);
    background-repeat: no-repeat;
    background-position: center right 30px ;
    color: #1a1a1a;
}

#news_box ul li a:hover{
    text-decoration: underline;
}


#news_box ul li:first-child a{
    width: 800px;
}

#news_box ul li:last-child a{
    width: 280px;
}

.event_btn,
.rec_btn{
    margin-top: 20px;
}

.event_btn a,
.rec_btn a{
    display: block;
    width: 100%;
    text-decoration: none;
    border-radius: 8px;
    border: 1px solid #dbdbdb;
    padding: 15px 0;
    text-align: center;
    background-image: url(/images/tab_btn.png);
    background-repeat: no-repeat;
    background-position: center right 30px ;
    color: #1a1a1a;
}

.event_btn a:hover,
.rec_btn a:hover{
    text-decoration: underline;
}

/* インフォメーション */
.informationA{
    margin: 45px 0 0 0;
    padding-bottom: 100px;
    background: linear-gradient(180deg, #fff 0%, #fff 36%, transparent 36%, transparent 36%), url(/images/info_bk.png) no-repeat center bottom / contain;  
}
.info_con{
    max-width: 1300px;
    margin: 0 auto;
    padding: 35px 50px 100px;
    background-color: #fff;
}

.info_con .info_con_list{
    display: flex;
    padding-bottom: 30px;
}

.info_con .info_con_list li{
    text-align: center;
}

.info_con .info_con_list a{
    display: block;
    text-decoration: none;
    font-weight: bold;
    color: #1a1a1a;
}

.info_con .info_con_list span{
    display: block;
    margin-top: 20px;
    font-weight: bold;
    color: #1a1a1a;
}

.info_con .info_con_list img.informationA_img {
    border-radius: 10px;
}

.info_swiper.swiper-container{
    max-width: 1200px;
    width: 100%;
}

.swiper-scrollbar-drag{
    background: #5282d9!important;
}

.info_un{
    margin-top: 80px;
    display: flex;
    justify-content: space-between;
}

.magazine{
    background-color: #eaf5f9;
    border: 1px solid #bbecf9;
    border-radius: 8px;
    width: 580px;
    position: relative;
    flex-shrink: 0;
    margin-right: 20px;
}

.magazine .mag_title{
    display: flex;
    width: 370px;
    float: right;
    justify-content: space-between;
    align-items: center;
    padding: 24px 10px 24px 28px;
}

.magazine .mag_img{
    position: absolute;
    left: 30px;
    top:-20px;
}

.magazine .mag_title p{
    padding: 0;
}

.magazine .mag_title p a {
    text-decoration: none;
    position: relative;
    padding-right: 30px;
}
.magazine .mag_title p a::before {
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    border-color: #286ddd;
    border-style: solid;
    border-width: 2px 2px 0 0;
    content: "";
    display: block;
    height: 5px;
    position: absolute;
    right: 10px;
    top: 50%;
    width: 5px;
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}
.magazine .mag_title p a:hover {
    text-decoration: underline;
}

.magazine .mag_text{
    background-color: #fff;
    width: 520px;
    float: right;
    border-radius: 0 0 8px 0;
    display: flex;
    justify-content: flex-end;
    padding: 30px 0 16px 0;
}

.magazine .mag_text_box p {
    padding-left: 0;
    padding-right: 0;
    font-size: 1.4rem;
}

.magazine .mag_text .mag_width{
    width: 370px;
    padding-left: 30px;
    padding-right: 30px;
}

.magazine .mag_text .mag_width .mag_text_title{
    display: flex;
    color: #3167c1;
    font-weight: bold;
    padding-left: 0;
    padding-right: 0;
}

.magazine .mag_text .mag_width .mag_text_title span{
    background-color: #db2678;
    color: #fff;
    display: block;
    padding: 0 8px 0;
    margin-right: 7px;
    font-weight: normal;
}

.sns_con{
    width: calc(50% - 20px);
    max-width: 580px;
    background-color: #eaf5f9;
    border-radius: 8px;
    padding: 20px 40px 30px;
}

.sns_con h3{
    margin-bottom: 30px;
}

.sns_slider .slick-arrow {
    position: absolute;
    font-size: 0;
    width: 40px;
    height: 40px;
    top: -60px;
}

.sns_slider .slick-prev{
    right: 61px
}

.sns_slider .slick-next{
    right: 11px;
}
.sns_slider .slick-prev::before {
    background-image: url(/images/slider_l.png)!important;
    background-repeat: no-repeat;
    background-size: 40px 40px;
}
.sns_slider .slick-next::before {
    background-image: url(/images/slider_r.png)!important;
    background-repeat: no-repeat;
    background-size: 40px 40px;
}
.sns_slider .slick-arrow:before {
    content: ""!important;
    width: 100%!important;
    height: 100%!important;
    position: absolute;
    top: 0;
    left: 0;
}

.sns_con li{
    width: 150px;
    min-height: 140px;
    background-color: #fff;
    border-radius: 8px;
    margin: 0 9px;
}

.sns_con li a{
    text-decoration: none;
    display: block;
    padding: 27px 0 0 0;
    text-align: center;
    color: #1a1a1a;
}

.sns_con li a span{
    font-size: 1.4rem;
}

.sns_con li img{
    max-width: 60px;
    width: auto;
    margin: 0 auto 22px;
}

/* 広告 */

.advertisement{
    width: 1145px;
    margin: 50px auto 45px ;
}

.advertisement ul{
    display: flex;
    flex-wrap: wrap;
}

.advertisement ul li{
    width: calc(100%/ 7);
    padding-bottom: 16px;
}

.ad_about{
    text-align: center;
}

@media screen and (max-width: 767px) {

/* スライダー */
.top_slider_wp .t_slider_control_wp{
    position: static;
}

.top_slider_wp .slick-control-wp{
    background-color: transparent;
    justify-content: space-between;
}

.slick-dots li{
    background-color: #e6e6e6;
}


/* キーワード */
.searchA{
    padding: 30px 20px 40px;
}
.searchA .search_con{
    width: 100%;
}

.keyword_con{
    width: 100%;
}

.search_notice{
    width: 100%;
    display: block;
    margin-top: 20px;
}

.search_notice h2{
    display: block;
    text-align: center;
    width: 100%;
    padding: 17px 0 0 0;
}

.menuA .menu_list{
    width: 100%;
    padding: 30px 20px 0;
}

.menuA .menu_list li{
    width: calc(100% / 4);
    padding-right: 2px;
    padding-bottom: 2px;
}

.menuA .menu_list li:nth-child(4n){
    padding-right: 0;
}

.menuA .menu_list li a{
    width: 100%;
}

.municipalA{
    width: 100%;
}

.municipalA .municipal_list{
    display: block;
    padding: 0 20px;
}

.municipalA .municipal_list li{
    width: 100%;
}

.municipalA .municipal_list li a{
    display: flex;
}

.municipalA .municipal_list li a img{
    height: 80px;
}

.municipalA .municipal_list li:first-child a{
    border-radius: 8px 8px 0 0;
}

.municipalA .municipal_list li:last-child a{
    border-radius: 0 0 8px 8px;
}

.municipalA .municipal_list li a span{
    display: flex;
    align-items: center;
    padding-left: 20px;
}

.info_con{
    width: 100%;
    padding: 35px 10px 100px;
}

.magazine{
    width: 100%;
    margin-right: 0;
}

.magazine .mag_title{
    width: 100%;
}

.magazine .mag_img{
    left: 15px;
    top: 80px;
}

.magazine .mag_img img{
    width: 135px;
}

.magazine .mag_text{
    width: 70%;
}

.magazine .mag_text .mag_width{
    width: 60%;
}

.sns_con {
  max-width: auto;
}

.advertisement{
    width: 100%;
    margin: 50px auto 25px;
}

.advertisement ul{
    padding: 0 30px;
}

.advertisement ul li{
    width: calc(100% / 2);
    padding-bottom: 10px;
}

.advertisement ul li:nth-child(odd){
    text-align: right;
    padding-right: 10px;
}

.advertisement ul li:nth-child(even){
    padding-left: 10px;
}

.ad_about{
    padding-top: 15px;
}

.switchBtn{
    min-width: auto;
}

}
