/*================================================
 *  inside共通
 ================================================*/
.page_title_wrap{
    background-image: -webkit-linear-gradient(rgba(42,48,97,0.5) 0%,rgba(42,48,97,0.5) 0%), 
        url(../img/index_img/main.png);
    background-position: center center;
    background-size: cover;
    display: flex;
    height: 160px;
    align-items: center;
    /*text-shadow: -1px -1px 0 rgba(150, 150, 150, 0.8);	*/
    color: #004EA2;
color: #ffffff;
    justify-content: center;
    margin-bottom: 30px;
}
.page_title{
font-size: 220%;
	text-align: center;
	line-height:0.8;
	}

.page_sub_title{font-size:50%; 
	 line-height: 1.1;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.page_title_wrap{
    height: 100px;
}
    
.page_title{
font-size: 163%;}

}
/* -------------end------------- */

.headline{
	background-color: #0f6ab1;
	color: #ffffff;
	font-size: 125%;
	margin-bottom: 15px;
	padding-top: 5px;
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 5px;
}

.headline a{
	
	color: #ffffff;
	
}



.subhead{color:#0f6ab1;
    font-size: 113%;
margin-bottom: 10px;}

.subhead:before {
	content:"■";
	padding-right: 5px;
	padding-left: 0px;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.headline{
	font-size: 113%;
margin-bottom: 10px;
padding-top: 3px;
padding-bottom: 3px;
}
    
.headline a{
	font-size: 113%;
margin-bottom: 10px;
padding-top: 3px;
padding-bottom: 3px;
}

}
/* -------------end------------- */


.honbun{text-indent: 1em;}


.box{margin-bottom: 50px;
text-align: justify;}

.box_small{margin-bottom: 25px;
text-align: justify;}

.box_line{
	margin-bottom: 25px;
	padding-bottom: 25px;
	text-align: justify;
	border-bottom: 1px solid #0F6AB1;
}



/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.common_flex_box{display: flex;
justify-content: space-between;}

.common_flex_box > li{width: 49%;
    box-sizing: border-box;}
	}
/* -------------end------------- */



/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.common_flex_box > li{width: 100%;
    box-sizing: border-box;}
.common_flex_box > li:first-child{margin-bottom: 20px;}  
	}
/* -------------end------------- */



/*================================================
 *  ビジョン
 ================================================*/
/* 目指すべきまちの姿-------------- */

/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.sugata_flex_box{display: flex;
justify-content: space-between;}

.sugata_flex_box > li:first-child,
.sugata_flex_box > li:last-child{width:16%;}

.sugata_flex_box > li:nth-of-type(2){width:60%;}
	}
/* -------------end------------- */

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
    
.sugata_flex_box > li:first-child,
.sugata_flex_box > li:nth-of-type(2){margin-bottom: 20px;}
    
    
.sugata_img_flex_box{display: flex;
justify-content: space-between;}
    
.sugata_img_flex_box li{
width : 33.33333% ; /* 未対応ブラウザ用フォールバック */
width : -webkit-calc(100% / 3) ;
width : calc(100% / 3) ;}
	}
/* -------------end------------- */


.sugata_title{color: #2A3061;
font-size:212.5%;
text-align: center;
margin-bottom: 10px;
font-weight: 700;}

.sugata_sub_title{color: #2A3061;
font-size:138%;
text-align: center;
margin-bottom: 20px;
line-height: 1.6;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.sugata_title{font-size:170%;}

.sugata_sub_title{font-size:110%;}
    
	}
/* -------------end------------- */

/* まちづくりの方針-------------- */

.houshin_flex_box{display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;}

/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.houshin_flex_box li:nth-of-type(odd){
	width: 16%;
    margin-bottom: 20px;
}

.houshin_flex_box li:nth-of-type(even){
	width: 80%;
     margin-bottom: 20px;
}

.houshin_flex_box li:nth-last-child(-n+2){
    margin-bottom: 0px;
}
	}
/* -------------end------------- */

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.houshin_flex_box li:nth-of-type(odd){
	width: 40%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}

.houshin_flex_box li:nth-of-type(even){
	width: 100%;
     margin-bottom: 30px;
}
	}
/* -------------end------------- */



.download_btn{background-color: #D9DFF0;
     position: relative;
    padding-left: 1.5em;
}

.download_btn a{padding: 10px;
    display: flex;
    color: #0F6AB1;
    font-size: 88%;
}

.download_btn a:after {
	font-family: 'FontAwesome';
	content: "\f054";
		 position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);

	
}

.download_btn a:before {
font-family: 'FontAwesome';
content: "\f1c1";
 position: absolute;
    left: 1em;
    top: 50%;
    transform: translateY(-50%);
}

.ekuseru_icon a:before {
font-family: 'FontAwesome';
content: "\f1c3";
 position: absolute;
    left: 1em;
    top: 50%;
    transform: translateY(-50%);
}

/* 構造図-------------- */
.structure_map{margin-bottom: 10px;}

.structure_map_flex_box{display: flex;
justify-content: space-between;
flex-wrap: wrap;
width: 60%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.structure_map_flex_box{
width: 100%;}
	}
/* -------------end------------- */

.structure_map_flex_box li{  width : 33.33333% ; /* 未対応ブラウザ用フォールバック */
  width : -webkit-calc(100% / 3) ;
  width : calc(100% / 3) ;}

.soukanzu{width: 80%;
margin-left: auto;
margin-right: auto;
margin-bottom: 60px;}
/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.soukanzu{width: 100%;}
	}
/* -------------end------------- */

/*================================================
 *  概要沿革
 ================================================*/

.organization_chart{width: 80%;
margin-left: auto;
margin-right: auto;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.organization_chart{width: 100%;}
	}
/* -------------end------------- */



/* ボタン-------------- */

.btn_box{width: 50%;
margin-left: auto;
margin-right: auto;
background-color: #D9DFF0;}


.btn_box a{padding: 10px;
    display: flex;
    color: #0F6AB1;
    font-size: 88%;
}

.btn_box a:after {
	font-family: 'FontAwesome';
	content: "\f054";
	padding-left: 1em;
	}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.btn_box{width: 100%;}
	}
/* -------------end------------- */

/* 沿革-------------- */
.enkaku_dl dt {
		clear: left;
	float: left;
	width: 5em;
}

.enkaku_dl dd {
	padding-left: 5em;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.enkaku_dl dt {
width: 3em;
}

.enkaku_dl dd {
	padding-left: 3em;}
}
/* -------------end------------- */

/*================================================
 *  各種団体紹介
 ================================================*/

/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.member_flex_box{display: flex;
justify-content: space-between;}

.member_flex_box > li{width: 49%;
    box-sizing: border-box;}
	}
/* -------------end------------- */



/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.member_flex_box > li{width: 100%;
    box-sizing: border-box;}

	}
/* -------------end------------- */

/* 参加団体-------------- */
.member_list li{
	margin-bottom: 10px;
	padding-bottom: 10px;
 			border-bottom: 1px dashed #dddddd;
   
}

/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.member_list li:last-child{
	margin-bottom: 0px;
	padding-bottom: 0px;
 			border-bottom: none;
}
}
/* -------------end------------- */

.member_list li a:after {
	font-family: 'FontAwesome';
	content: "\f054";
		padding-left: 1em;
    color: #cccccc;

	
}





/* 小さい画面用の設定-------------- */
@media (max-width:767px){
    .member_list li{
	margin-bottom: 7px;
	padding-bottom: 7px;
}


}
/* -------------end------------- */

/* 参加団体見出し-------------- */
.member_title {
  position: relative;
  padding: 0 65px;
  text-align: center;
    color: #0F6AB1;
    margin-bottom: 15px;
    font-size: 113%;
}

.member_title:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  background: #0F6AB1;
}

.member_title > span {
  position: relative;
  padding: 0 1em;
  background: #fff;
}



/*================================================
 *  活動エリア
 ================================================*/
.area_flex_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
    
.area_flex_box > li {
  width: 30%;
    margin-bottom: 60px;
	word-break: break-all;
}

/* 大きい画面用の設定-------------- */
@media (min-width:768px){
.area_flex_box li:last-child {
margin-bottom: 0px;
}
	}
/* -------------end------------- */





/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.area_flex_box li {
  width: 100%;
    margin-bottom: 40px;
}
    
.area_flex_box > li:last-child {
    margin-bottom: 0px;
}
	}
/* -------------end------------- */
    
.area_flex_box  > li::before{
  content:"";
  display: block;
  width:23%;
  order:1;
}
.area_flex_box li::after{
  content:"";
  display: block;
  width:23%;
}
.area_img {
  margin: 0;
}
.area_img {
  margin-top: auto;
    min-height: 0%;
}

    


/* 大きい画面用の設定-------------- */
@media (min-width:768px){
    .area_flex_box > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -ms-flex-direction: column;
  flex-direction: column;
}
}
/* -------------end------------- */

    

.area_icon{margin-bottom: 10px;}

.area_icon > img{width: 90%;
margin-left: auto;
margin-right: auto;}

.area_copy{
	text-align: center;
	color: #686767;
	margin-bottom: 5px;
    padding-bottom: 5px;
	border-bottom: 1px dashed #CCCCCC;
    line-height: 1.4;
}

.area_url{font-size: 80%;
    text-align: center;
   margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 1px dashed #CCCCCC;
}

.area_sns_flex {
display: flex;
 margin-bottom: 10px;
justify-content: center;/* flexアイテムの横方向の整列を指定*/

}

.area_sns_flex > li  {
	margin-right: 10px;/*アイコンの間隔*/
	color: #ffffff;/*アイコンの色*/
	font-size: 188%;/*アイコンの大きさ*/
	text-decoration: none;
	width: 1em;/*縁取りの幅*/
	line-height: 1em;/*縁取りの高さ*/
	border-radius: 20%;/*正円にする　正方形にするなら削除*/
	text-align: center;
    padding: 5px;
}

.area_sns_flex > li a  {
	display: block;
    color: #ffffff;/*アイコンの色*/}

.bt_twitter {
background-color: #00aced ;
}

.bt_facebook {
background-color: #305097;}

.bt_instagram  {
  background:radial-gradient(at 20% 120%,orange, #f15a4d 25%, #f13f79 55%, #9933ff 100%) no-repeat;}





/*================================================
 *  役員紹介
 ================================================*/
/* 役員紹介リンク-------------- */

.executive_flex_nav{display: flex;
justify-content: space-between;
margin-bottom: 70px;}

.executive_flex_nav li{
	width: 16%;
/*width: 19%;*/
/*    width: 24%;*/
 background-color: #eeeeee;
padding: 5px;
box-sizing: border-box;
}

.executive_flex_nav li img{
    margin-bottom: 10px;

}

.executive_nav_name {
  position: relative;
    font-size: 88%;
   
}
.executive_nav_name:after  {
	font-family: 'FontAwesome';
  content: "\f107";
	padding-left: 0px;
    position: absolute;
 top:-12px;
  right: 5px;
    font-size: 200%;
}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.executive_flex_nav{flex-wrap: wrap;
margin-bottom: 50px;}

.executive_flex_nav li{width: 48%;}
    
.executive_flex_nav li:nth-of-type(-n+4){margin-bottom: 20px;}

}
/* -------------end------------- */


/* 役員紹介-------------- */

.executive_name{
    font-size: 175%;
    font-weight: 700;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 3px solid rgba(42,48,97,0.5);
    color: rgba(42,48,97,1.00);
}


.executive_name > span{font-size: 78%;}

/* 小さい画面用の設定-------------- */
@media (max-width:767px){
    .executive_name{
  line-height: 1.2;
  font-size: 150%;
}
    
.executive_name > span{font-size: 70%;}

}
/* -------------end------------- */


/* 大きい画面用の設定-------------- */
@media (min-width:768px){
 .executive_flex{
    display: flex;
    justify-content: space-between;
    padding-bottom: 30px;
    margin-bottom: 50px;
    border-bottom: 1px dashed #CCCCCC;
}

.executive_flex_last{
padding-bottom: 0px;
margin-bottom: 0px;
border-bottom-style: none;
}

.executive_flex > li:first-child{width: 30%;}

.executive_flex > li:last-child{width: 66%;}
}
/* -------------end------------- */
/* 小さい画面用の設定-------------- */
@media (max-width:767px){
.executive_flex{
padding-bottom: 20px;
margin-bottom: 30px;
border-bottom: 1px solid #CCCCCC;
}

.executive_flex_last{
padding-bottom: 0px;
    margin-bottom: 0px;
    border-bottom-style: none;
}

.executive_flex > li:first-child{ margin-bottom: 10px;}
    
.executive_flex > li:first-child{
    width: 80%;
    margin-left: auto;
    margin-right: auto;}
}
/* -------------end------------- */


.executive_title{
    font-size: 138%;
    font-weight: 700;
margin-bottom: 15px;
    color: rgba(42,48,97,1.00);
   
}
.executive_txt > p{margin-bottom: 15px;}

.executive_flex > li:first-child img{margin-bottom: 10px;}

.executive_cv{font-size: 80%;
line-height: 1.6;}


.executive_cv li {
	padding-left:5.5em;
	text-indent:-5.5em;
}

.executive_cv li.indent1{
	padding-left:1em;
	text-indent:-1em;
}

/*#ex01,
#ex02,
#ex03,
#ex04
{margin-top:-100px;
  padding-top:100px;}
*/


/*================================================
 *  プライバシーポリシー
 ================================================*/
.ordinary_dl dt {
font-size: 113%;
color: #0f6ab1;
margin-bottom: 5px;}


.ordinary_dl dd {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;}

.ordinary_dl dd:last-child {
	margin-bottom: 0px;
	padding-bottom: 0px;
	border-bottom-style: none;}

.ordinary_ol,
.ordinary_ol2, 
.ordinary_ol3 {
counter-reset:item; /* 数字のカウントをリセットする */
padding-left: 1em;}


.ordinary_ol > ol,
.ordinary_ol2 > ol,
.ordinary_ol3 > ol{
  padding-left: 2em;
}
.ordinary_ol > li,
.ordinary_ol2 > li,
.ordinary_ol3 > li{
  text-indent: -1.3em;
  padding-left: 1.3em;
}

.ordinary_ol > li:before,
.ordinary_ol2 > li:before,
.ordinary_ol3 > li:before{
/* カウンタ（数字になる部分） */
counter-increment: item; /* 任意の名前を付けて！ */
content: counter(item); /* 名前を付けたカウンターを呼び出し */
/* 色を変えたり、背景画像を敷いたり！自由自在！ */
	  counter-increment: item;/* 任意の名前を付ける（もちろん英語で） */
  content: '（'counter(item)'）';/* 名前を付けたカウンターをcontentで発動！ */
  /* 以下は自由に装飾... */
  padding-right: .5em;
}

.bt_privacy_contact a{
text-decoration: underline;}

.bt_privacy_contact a::after{font-family: 'FontAwesome';
	content: "\f054";
	}

/*================================================
 *   サイトマップ
 ================================================*/

.sitemap > ul li ul {
  margin-top: .5em;
  margin-bottom: .75em;
  margin-left: 48px;
}

.sitemap > ul li ul li {
  margin-bottom: .25em;
  position: relative;
}

.sitemap > ul li ul li::before {
  content: "";
  position: absolute;
  top: -0.5em;
  left: -16px;
  width: 10px;
  height: calc(100% + .75em);
  border-left: 1px solid #2a3061;
}

.sitemap > ul li ul li:last-child::before {
  height: calc(1em + .25em);
}

.sitemap > ul li ul li::after {
  content: "";
  position: absolute;
  top: .75em;
  left: -16px;
  width: 10px;
  border-bottom: 1px solid #2a3061;
}

#vision_link01,
#vision_link02,
#history_link01,
#history_link02,
#history_link03,
#activity_link01,
#activity_link02{margin-top:-60px;
  padding-top:60px;}


.blog_sp_box {
	display: flex;
	border-bottom: 1px dotted #CCCCCC;
	padding-bottom: 10px;
}

.blog_img_box {
	flex: 0 0 120px;
	margin-right: 10px;
}