@charset "utf-8";

@media screen and (max-width: 1000px) {
  #mainWrap {
    width: calc(100% - 200px);
}
  .poster{width:100%}
  
    img.kaityo{
  width:100%;
  height:auto;
  }
  
  .kakomi .main-message {
    font-size: 1.2rem;
    line-height: 2;
    position: absolute;
    top: 8%;
    width: 60%;
    left: 30px;
}

}

@media screen and (max-width: 900px) {
  .memberInfo ul {
    display: block; 
}
  .memberInfo ul img{
    margin-bottom: 1em;
}
.pc{display: none;}
  .kakomi .main-message {
    width: 55%;
}

}

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

  h2.top_sp{
  display: block;
  }
    h2.top_sp img{
  width:180%;height:80px;
  }
  h2.top_pc{
    display: none;
  }}

@media screen and (max-width: 767px) {
  
  #mainWrap {
    width: 780px;
    clear:both;
    margin: auto;
}
  #subCont{
  background:none;
}

#sideArea h1{
  background-color:#FFF;
}

#sideArea{
  display: none;
}
  
/* Navbar & Navmenu color */
:root {
  --background-navbar: rgba(204, 222, 246, 0.98);
}

.header {
  display: block;
  position: fixed;
  width: 100%;
  height: 52px;
  z-index:3;
  text-align:right
}

/* Nav items */
.menu {
  list-style: none;
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  padding: 52px 0 10px 0;
  clear: both;
  background: var(--background-navbar);
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
  transform: scale(1, 0);
  transform-origin: top;
  text-align: center;
}

/* Hamburger menu button */
.menu-btn:checked ~ .menu {
  transform: scale(1, 1);
  transform-origin: top;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}



/* Navbar Container */
.navtext-container {
  width: 100%;
  height: 52px;
  position: absolute;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Navbar Text */
.navtext {
  position: absolute;
  text-transform: uppercase;
  color: #ddd;
  letter-spacing: 4px;
  font-size: 20px;
}

/* Hamburger menbu text */
.menu a {
  text-decoration: none;
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 16px;
  text-transform: capitalize;
  color:#0051a2
;
  opacity: 0;
  transition: 0.5s;
}

.menu li {
  border-top: 1px solid rgb(75, 75, 75);
  padding: 15px 0;
  margin: 0 54px;
  opacity: 0;
  transition: 0.5s;
}

.menu-btn:checked ~ .menu a,
.menu-btn:checked ~ .menu li {
  opacity: 1;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
}

.menu-btn {
  display: none;
}

.menu-icon {
  background-color: #0051a2;
  display: inline-block;
  position: relative;
  cursor: pointer;
  padding: 24px 14px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  z-index: 9;
}

.navicon {
  background: #fff;
  display: block;
  height: 3px;
  width: 26px;
  position: relative;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}

.navicon:before,
.navicon:after {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  background: #fff;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}

.navicon:before {
  top: 9px;
}

.navicon:after {
  bottom: 9px;
}

/* Hamburger Menu Animation Start */
.menu-btn:checked ~ .menu-icon .navicon:before {
  transform: rotate(-45deg);
}

.menu-btn:checked ~ .menu-icon .navicon:after {
  transform: rotate(45deg);
}

.menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before {
  top: 0;
}
.menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
  bottom: 0;
}

.menu-btn:checked ~ .menu-icon .navicon {
  background: rgba(0, 0, 0, 0);
  transition: 0.2192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
/* Hamburger Menu Animation End */



/* SubOnly
------------------------------------------------------------*/


#tMenu img{
  vertical-align:bottom;
}
#tMenu a:hover img{
  opacity:0.8;
  filter:alpha(opacity=80);
}

/* ナビゲーション */
.sideAdd{
  text-align:center;
  margin-top:43px;
}
.sideBnr li{
  display:block;
  text-align:center;
  margin-top:25px;
}
.sideBnr img{
  vertical-align:bottom;
}


.sideBnr li.sitePolicy{
  text-align:left;
  margin-top:13px;
  padding-left:35px;
}

/* コンテンツ共通
------------------------------------------------------------*/


/* メインコンテンツ */
#mainWrap{
  width:100%;
  overflow: hidden;
}
#mainWrap h2{
  margin-top:0px;
}

/* ぱんくず */
#pankuzu{
  padding:13px 0 10px 23px;
  font-size:85%;
}
#pankuzu a{
  text-decoration:none;
  color:#000;
}
#pankuzu a:hover{
  text-decoration:underline;
  color:#0066CC;
}

/* 本文欄 */
#article{
  min-height:auto;
  padding:10px;
}
#article > div{
  margin:1.5em 0;
  padding:10px 0 1.5em;
}

h4{
  margin:1.5em 15px 0 0;
  padding:0 0 5px 3px;
  font-size:110%;
  border-bottom:2px solid #0051A2
}
.kakomi .main-message{
  font-size:1.125rem; line-height: 1.8; position:static;width:auto;padding: 1.5em 1em 0;
}
.kakomi .sub-message{
  font-size:1.125rem; line-height: 1.8; margin:1.5em 0 1.5em;padding: 0 1em;
}
.kakomi img.kaityo{
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: right;
}
.listHishigata{
  margin:2em 0 2em 3em;
}
.listHishigata li{
  padding-left:25px;
  background:url(../img/listHishigata.gif) no-repeat left;
}

/* 各ページ
------------------------------------------------------------*/

/* メンバー紹介 */
.memberInfo{
  margin:1em 15px;
  padding:15px;
  border-bottom:1px solid #CCC;
}

.memberInfo img{
  width:100%;
  height:100%;
}

.memberInfo ul{
  display: block;
  margin:1em 0;
  padding:0;
  border-bottom:1px solid #CCC;
}

.memberInfo ul li{
  display: block;
  margin:1em 0;
  padding:0;
}
.memberInfo table td{
  vertical-align:top;
  padding-right:15px;
}
.memberInfo table td p{
  margin:10px 20px;
  font-size:115%;
  line-height:1.3;
}
.memberDetail{
  line-height:1.25;
  font-size:85%;
}

/* 議会の活動報告 */
.schedule{
  width:100%;
  margin-right:15px;
}
/* 議会の活動報告 今日の出来事 */
.dekigoto{
  width:750px;
}
.dekigoto th{
  padding:1.5em 0 0 3px;
  font-weight:normal;
  font-size:110%;
  border-bottom:2px solid #0051A2;
  text-align:left;
}
.dekigoto td{
  padding:0.5em 0 0 3px;
}

/* 一覧へ */
.ichiran{
  text-align:right;
  margin:1em 2em 2em;
}

#article ul{
  margin-left:0;
}


.message-sp{display: block;position: absolute;top:7%;left:10%;font-size: 1.3em;line-height: 2;

}

.wrapper{
  width:100%;
  margin:0 auto;
}

#slogan {
    width: 100%;
}
#slogan img{
    width: 100%;
    height:100%
}
#mainImg {width:100%}
#mainImg img{width:100%;height:100%;}

h1.top{
  width:100%;
  margin: 0em auto 0;
}
h1.top img{
  width:240px
}
ul#tMenu{
  display: flex;
  flex-wrap: wrap;
  width:100%;
  margin: 0;
  justify-content: center;
}
ul#tMenu img{
  width:100%;
}

ul#tMenu li{
  width:48%;
}
  #contact-add {
    font-size:130%;margin-left:0 !important;
    }
  #footerLogo {
    width:100%;
    height:100%;
}
  #footerLogo img{
    width:100%;
    height:100%;
}

  iframe{
  width:100%;
  }
.banner-area{
  display: block;
background-color:#f4f7ff;
padding: 1em 0;
}

.banner-area ul{
display: flex;
justify-content: center;
gap:10px;
}

.banner-area p{
text-align: center;
margin-bottom: 1em;
font-size: 1.2em;
}
.banner-area ul{
flex-wrap: wrap;
}
.banner-area ul li{
width:46%;
}
.banner-area ul li img{
width:100%;
}

}