@charset "utf-8";
/*:::::::::::::::::::::::::::::::
	メイン
:::::::::::::::::::::::::::::::*/

#main{
	height:60vh;
	z-index:9;
	display:flex;
	display:-webkit-flex;
	align-items:center;
	-webkit-align-items:center;
    position: relative;
    margin-top: -100px !important;
}
#main:after{
    content: "";
    display: block;
	background:url(../img/home/main.jpg) no-repeat right top;
	background-size:50%;
    width: 100%;
	height:60vh;
	position:absolute;
	top:0;
	right:0;
	z-index:8;
}
#main h2 {
    font-size: 80px;
    text-align: left;
    letter-spacing: 0;
    font-weight: bold;
    line-height: 1em;
    font-family: "ZEN角ゴシックN B";
    font-family: "ZEN角ゴシックN B";
    margin: 50px 0 0;
    z-index: 9;
}
#main h2 small{
	font-size: 18px;
	display:block;
	font-weight:normal;
	margin-top:10px;
    line-height: 1.3em;
}
#main p{
    position: absolute;
    bottom: 5px;
    right: 60px;
    color: #fff;
    display: block;
    z-index: 10;
    margin: 0;
}
.mv{
	width: 100%;
	margin-bottom: 2em;
}
@media screen and (max-width: 1280px){
    #main,
    #main:after{
        height:70vh;
    }
    #main h2 {
        font-size: 50px;
        padding-left: 5%;
    }
    #main:after{
        background:url(../img/home/main.jpg) no-repeat right -30px top;
        background-size:60%;
    }
    #main p{
        right: 40px;
    }
}
@media screen and (max-width: 980px){
    #main{
        width: 100% !important;
    }
    #main h2 small {
        font-size: 14px;
    }
}
@media screen and (max-width: 780px){
    #main:after {
        background: url(../img/home/main.jpg) no-repeat right -80px top 90px;
        background-size: contain;
    }
    #main {
        align-items: flex-start;
        -webkit-align-items: flex-start;
    }
    #main h2{
        margin: 120px 0 0 !important;
    }
}
@media screen and (max-width: 680px){
    #main,
    #main:after{
        height:80vh;
    }
    #main h2{
        display: none;
    }
    #main:after{
        background:url(../img/home/main.jpg) no-repeat right -30px bottom;
        background-size:110%;
    }
    #main p{
        font-size: 12px;
        right: 30px;
    }
}

/*:::::::::::::::::::::::::::::::
	メッセージ・プロフィール
:::::::::::::::::::::::::::::::*/
.home-info{
    background:linear-gradient(to top left, rgba(255,255,255,0) 50%, rgba(239,117,146,0.2) 50.5%) no-repeat top left/100% 100%;
	padding:80px 0;
}
#profile{
    background:linear-gradient(to bottom right, rgba(255,255,255,0) 50%, rgba(239,117,146,0.2) 50.5%) no-repeat bottom right/100% 100%;
	padding:80px 0;
}
#manifest h3,
#profile h3{
	font-size:80px;
	font-family: "ZEN角ゴシックN B";
	font-weight:bold;
}
#manifest h3 span,
#profile h3 span{
	display:block;
	font-weight:normal;
	font-size:21px;
	letter-spacing:5px;
	padding-left:5px;
	margin-bottom:40px;
}
#profile h3{
	flex-basis:45%;
	-webkit-flex-basis:45%;
	max-width:45%;	
}
.item{
	flex-basis:50%;
	-webkit-flex-basis:50%;
	max-width:50%;
}
#manifest_item p,
#profile p{
	font-size:18px;
}
#manifest_item ul,
#manifest_item li{
	list-style:none;
	margin:0;
	padding:0;
}
#manifest_item li{
	margin-bottom:40px;
	display:flex;
	display:-webkit-flex;
	align-items:center;
	-webkit-align-items:center;
	justify-content:flex-start;
	-webkit-justify-content:flex-start;
}
#manifest_item li span{
	flex-basis:50px;
	-webkit-flex-basis:50px;
	max-width:50px;
}
#manifest_item li b{
	display:table-cell;
	text-align:center;
	vertical-align:middle;
	width:50px;
	height:50px;
	border-radius:50%;
	background:rgba(239,117,146,1);
	color:#fff;
	font-size:28px;
	font-weight:bold;
}
#manifest_item li p{
	font-size:21px;
	margin-bottom:0 !important;
	line-height:1.3em;
	padding-left:10px;
	-webkit-flex: 1;
	flex: 1;
}
#profile dl{
	display:flex;
	display:-webkit-flex;
	flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	margin:0;
	padding:0;
}
#profile dt{
	flex-basis:10em;
	-webkit-flex-basis:10em;
	max-width:10em;
	margin:0;
	padding:0;
}
#profile dd{
	flex:1;
	-webkit-flex:1;
	margin:0;
	padding:0;
}
@media screen and (max-width: 1380px){
#profile h3 {
    font-size: 78px;
}
}
@media screen and (max-width: 1280px){
#manifest h3,
#profile h3{
	font-size:60px;
}
#manifest_item p br{
	display:none;
}
}
@media screen and (max-width: 980px){
#manifest h3,
#profile h3{
	font-size:48px;
}
}
@media screen and (max-width: 880px){
#manifest{
	padding:0;
}
#profile{
	padding:0 0 40px;
}
#manifest h3,
#profile h3,
.item{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
#manifest h3,
#profile h3{
	margin-top:40px;
	margin-bottom:40px;
}
}
@media screen and (max-width: 480px){
#manifest h3 span,
#profile h3 span{
	margin-bottom:0;
}
#manifest_item li p{
	font-size:18px;
}
#profile dl{
	margin-bottom:5px;
	padding-bottom:5px;
	border-bottom:1px solid #ccc;
}
#profile dt,
#profile dd{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
}

/*:::::::::::::::::::::::::::::::
	補助金
:::::::::::::::::::::::::::::::*/
#subsidy{
	padding: 0 60px 60px;
	border: 3px dotted rgba(239,117,146,1);
	text-align: center;
}
#subsidy h3{
	position: relative;
	top: -25px;
	background: rgba(239,117,146,1);
	border-radius: 30px;
	margin-bottom:5px; 
	padding: 10px 30px;
	display: inline-block;
	font-size: 21px;
	color: #fff;
}
.subsidy_small{
	margin-top: -25px;
	margin-bottom: -25px;
	display: block;
	font-size: 16px;
}
#subsidy p{
	text-align: left;
}
.subsidy-list{
	margin-top: 20px;
	text-align: left;
}
.subsidy-list h4{
	font-weight: 700;
	margin-bottom: 10px;
}
.subsidy-list ul{
	list-style: none;
	margin: 0 0 30px;
	padding: 0;
}
.subsidy-list li{
	margin: 0;
	padding-top: 0;
	padding-bottom: 5px;
	padding-left: 2em;
	text-indent: -1em;
}
.subsidy-list li:before{
	content: "●";
	color: rgba(239,117,146,1);
}
.subsidy-list li .note {
    padding-left: 1.3em;
    margin: 0 !important;
}
@media screen and (max-width: 1380px){
	#subsidy{
		padding: 0 30px 30px;
	}
	#subsidy h3{
		display: block;
		padding: 10px 0;
		font-size: 18px;
	}
}
@media screen and (max-width: 980px){
	.home-info {
		padding-top: 40px;
	}
	.home-info .flex_left,
	.home-info .flex_right{
		flex-basis:100%;
		-webkit-flex-basis:100%;
		max-width:100%;
		margin-bottom: 60px;
	}
	#subsidy h3{
		font-size: 21px;
	}
}
@media screen and (max-width: 680px){
	#subsidy h3{
		font-size: 18px;
	}
}
@media screen and (max-width: 480px){
	.home-info {
		padding-top: 0;
	}
	.home-info .flex_left,
	.home-info .flex_right{
		margin-bottom: 30px;
	}
	#subsidy {
		padding: 0 10px 30px;
	}
	#subsidy h3{
		font-size: 16px;
	}
}

/*:::::::::::::::::::::::::::::::
	京都府議・活動報告
:::::::::::::::::::::::::::::::*/
#fugi h4,
#activity h4{
	align-items:center;
	-webkit-align-items:center;
}
#activity h4{
	text-align:right;
}
#fugi h4 span,
#fugi h4 b,
#activity h4 span,
#activity h4 b{
	flex-basis:50%;
	-webkit-flex-basis:50%;
	max-width:50%;
}
#fugi h4 b,
#activity h4 b{
	font-family: "ZEN角ゴシックN B";
	font-size: 60px;
    letter-spacing: 7px;
}
#activity h4 b{
    letter-spacing: 10px;
	order:1;
	-webkit-order:1;
}
#fugi ul,
#activity ul{
	margin:40px 0 20px;
	padding:0;
	width:100%;
}
#fugi li,
#activity li{
	list-style:none;
	padding:0 5px;
	display:flex;
	display:-webkit-flex;
}
#fugi li .swiper_item,
#activity li .swiper_item{
	background:#fff;
	padding:20px;
	box-shadow:0 1px 5px rgba(0,0,0,0.2);
}
#fugi li h5,
#activity li h5{
	font-size:18px;
	margin:5px 0;
}
#fugi li .post_thumb img,
#activity li .post_thumb img{
	width:100%;
	height:auto;
	vertical-align:bottom;
	line-height:0;
}
.swiper-container {
  width: 100%;
  margin:40px auto 80px;
}
.swiper-slide {
    height: auto !important;
}
.swiper-pagination{
	bottom:70px !important;
}
.swiper-pagination-bullet {
	background: #ccc;
	opacity: 1;
}
.swiper-pagination-bullet-active {
	background: rgba(239,117,146,1) !important;
	opacity: 1;
}
@media screen and (max-width: 1380px){
#fugi h4 b,
#activity h4 b{
	font-size: 50px;
    letter-spacing: 5px;
}
}
@media screen and (max-width: 1280px){
#fugi h4 b,
#activity h4 b{
    font-size: 43px;
}
.swiper-container {
  margin:0 auto 80px;
}
}
@media screen and (max-width: 980px){
#fugi h4,
#activity h4{
	text-align:center;
}
#fugi h4 span,
#fugi h4 b,
#activity h4 span,
#activity h4 b{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
#activity h4 b{
	order:0;
	-webkit-order:0;
}
.swiper-container {
  margin:0 auto 40px;
}
}
@media screen and (max-width: 480px){
#fugi h4 b,
#activity h4 b{
    font-size: 34px;
    letter-spacing: 0;
}
#fugi ul,
#activity ul{
	margin:20px 0 0;
}
.swiper-pagination{
	display:none;
}
}


/*:::::::::::::::::::::::::::::::
	アーカイブ
:::::::::::::::::::::::::::::::*/
.archive{
	margin-bottom:80px;
}
.archive h3{
	margin-bottom:80px;
}
#archive_main{
	flex-basis:80%;
	-webkit-flex-basis:80%;
	max-width:80%;
	flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	justify-content:flex-start;
	-webkit-justify-content:flex-start;
}
#archive_main ul{
	margin:0 0 80px !important;
	justify-content:flex-start;
	-webkit-justify-content:flex-start;
}
#archive_main li{
	flex-basis:25%;
	-webkit-flex-basis:25%;
	max-width:25%;
}
.archive_table {
	background: #fce4ea;
	padding: 80px 0;
}
.archive_table_h3{
	font-size: 50px;
    font-family: "ZEN角ゴシックN B";
    font-weight: bold;
	text-align: center;
}
.archive_table_h3 span {
    display: block;
    font-weight: normal;
    font-size: 21px;
    letter-spacing: 5px;
    padding-left: 5px;
    margin-bottom: 40px;
}
.archive_table table{
	width: 100%;
	background: #fff;
	margin-bottom: 40px !important;
}
.archive_table th,
.archive_table td{
	border: 1px solid #ccc;
	padding: 10px;
}
.archive_table th{
	background: rgba(239,117,146,1);
	text-align: center;
	color: #fff;
}
.archive_table td:nth-of-type(3){
	text-align: right;
}
.archive_table td:last-of-type{
	text-align: center;
}
@media screen and (max-width: 1280px){
#archive_main li{
	flex-basis:33.3%;
	-webkit-flex-basis:33.3%;
	max-width:33.3%;
}
}
@media screen and (max-width: 980px){
#archive_main,
.archive #post_left{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
.archive #post_left{
	order:1;
	-webkit-order:1;
}
}
@media screen and (max-width: 780px){
.archive,
.single,
#enquiry,
#term{
	padding-top:0 !important;
}
#archive_main li{
	flex-basis:49%;
	-webkit-flex-basis:49%;
	max-width:49%;
}
}
@media screen and (max-width: 680px){
.archive h3,
#profile h3 span {
    margin-bottom:40px;
}
#archive_main li{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
}

/*:::::::::::::::::::::::::::::::
	SINGLE
:::::::::::::::::::::::::::::::*/
#post_main{
	flex-basis:50%;
	-webkit-flex-basis:50%;
	max-width:50%;
}
#post_left{
	flex-basis:15%;
	-webkit-flex-basis:15%;
	max-width:15%;
}
#post_right{
	flex-basis:25%;
	-webkit-flex-basis:25%;
	max-width:25%;
}
#post_main img,
#post_left img,
#post_right img{
	max-width:100%;
	height:auto;
}
#post_left h5,
#post_right h5{
	font-size:28px;
	margin-bottom:20px;
	padding:0 10px;
	font-family: "ZEN角ゴシックN B";
	font-weight:bold;
    background:linear-gradient(to top left, rgba(255,255,255,0) 50%, rgba(239,117,146,0.2) 50.5%) no-repeat top left/100% 100%;
	letter-spacing: 0;
}
#post_left ul,
#post_right ul{
	margin:0 0 40px;
	padding:0;
}
#post_left li,
#post_right li{
	list-style:none;
	margin:0 0 5px;
	padding:0;
	border-bottom:1px solid #ccc;
	padding-bottom:5px;
}
#post_left li a{
	display:block;
	font-size:16px;
}
#post_main h5{
	font-size:38px;
	font-family: "ZEN角ゴシックN B";
	font-weight:bold;
	margin:5px 0 40px;
}
#post_right li a.post_right_thumb{
	flex-basis:35%;
	-webkit-flex-basis:35%;
	max-width:35%;
}
#post_right li p{
	flex-basis:60%;
	-webkit-flex-basis:60%;
	max-width:60%;
	margin-bottom:0 !important;
}
#post_right li p small{
	display:block;
	margin-top:5px;
}
#post_right li p a{
	display:block;
	line-height:1.2em;
}

/*ページネーション*/
.pagenation{
	display:table;
	margin:80px auto !important;
	table-layout:fixed;
	border-collapse:separate;
	border-spacing:1px;
	width:100%;
}
.pagenation a,
.pagenation .gray{
	display:table-cell;
	width:33.3%;
	text-align:center;
	vertical-align:middle;
    background:rgba(239,117,146,1);
    color: #fff !important;
    padding:20px;
    font-size: 16px;
	line-height:1.3em;
}
.pagenation .gray{
	background:#ccc;
	position:relative;
	color:#fff !important;
}
.pagenation a span{
	position:relative;
	display:inline-block;
	width:100%;
	text-align:left;
	margin:0;
	line-height:1.4em;
	font-size: 16px;
	color:#fff;
}
@media screen and (max-width: 1280px){
#post_right li a.post_right_thumb,
#post_right li p{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
}
@media screen and (max-width: 980px){
#post_main{
	flex-basis:70%;
	-webkit-flex-basis:70%;
	max-width:70%;
	margin-bottom:80px;
}
#post_left{
	flex-basis:25%;
	-webkit-flex-basis:25%;
	max-width:25%;
}
#post_right{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
#post_right ul{
	display:flex;
	display:-webkit-flex;
	-webkit-flex-wrap:wrap;
}
#post_right li{
	flex-basis:24%;
	-webkit-flex-basis:24%;
	max-width:24%;
	margin:0 1% 20px 0;
	border:none;
}
#post_main h5{
	font-size:28px;
}
}
@media screen and (max-width: 780px){
#post_right li{
	flex-basis:32.3%;
	-webkit-flex-basis:32.3%;
	max-width:32.3%;
}
}
@media screen and (max-width: 680px){
#post_left{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
	order:2;
	-webkit-order:2;
}
#post_main{
	flex-basis:100%;
	-webkit-flex-basis:100%;
	max-width:100%;
}
}
@media screen and (max-width: 480px){
#post_right ul{
	justify-content:space-between;
	-webkit-justify-content:space-between;
}
#post_right li{
	flex-basis:49%;
	-webkit-flex-basis:49%;
	max-width:49%;
	margin:0 0 20px 0;
}
#post_main h5{
	font-size:21px;
}
.single h3 {
    margin-bottom: 40px;
}
}



/*:::::::::::::::::::::::::::::::
	問合せ
:::::::::::::::::::::::::::::::*/
/*フォームリセット*/
optgroup,
select,
textarea,
button,
input{
	color:inherit;
	font:inherit;
	margin:0;
	padding:0;
	overflow:auto;
	text-transform:none;
	cursor:default;
	border:0 !important;
	box-shadow:none !important;
	line-height:1em;
	background:none;
}
input[type="checkbox"],input[type="radio"]{
	box-sizing:border-box;
	padding:0;
	margin:0;
	width:20px;
}
input[type="search"]{
	-webkit-appearance:none;
	-moz-box-sizing:content-box;
	-webkit-box-sizing:content-box;
	box-sizing:content-box;
}
/*フォーム*/
#form{
	width:90%;
	max-width:980px;
	margin:80px auto;
}
#form table{
	width:100%;
	margin-bottom:80px;
}
#form th,
#form td{
	padding-bottom:10px;
	position:relative;
}
#form th{
	background:transparent;
	width:20%;
	text-align:left;
}
#form td input,
#form td textarea{
	padding:10px;
	border:1px solid #ccc !important;
	border-radius:5px;
	vertical-align:middle;
	font-size:16px;
	box-shadow:none;
	width:100%;
}
#form td textarea{
	height:200px;
}
/*装飾*/
#form th .nd{
	color:rgba(204,0,0,1);
	padding-right:1em;
}
#form td input.w100{
	width:100%;
}
#form td #mail{
	font-size:21px;
	letter-spacing:2px;
	font-weight:900;
}
#form td input#zip{
	width:30.2%;
}
#form td input.ck,
#form td input#agree{
	background:transparent;
	width:20px;
}
#form td p.note{
	margin-bottom:0 !important;
	padding-left:0;
}
#form p.note span{
	text-align:left;
	color:#999;
	font-size:12px;
	display:inline-block;
	margin-top:5px;
}
#form .linkbox button{
	display:inline-block;
}
#form .linkbox a{
	color:#fff;
}
/*INNER*/
#form .inner_table{
	display:flex;
	display:-webkit-flex;
}
#form .inner_table .inner_item{
	position:relative;
	display:flex;
	display:-webkit-flex;
	align-items:center;
	-webkit-align-items:center;
}
#form .inner_table input{
	flex:1;
	-webkit-flex:1;
	margin:0 5px 0 0;
}
#form td b{
	width:3em;
	display:inline-block;
	font-weight:normal;
}
#form td span.hf{
	width:1em;
	text-align:center;
	display:inline-block;
}
/*確認用*/
.contact{
	border:1px solid #ccc;
	padding:30px;
	line-height:1.5em;
}
.formError .formErrorContent,
.formError .formErrorArrow div{
    background:rgba(239,117,146,1);
}
@media screen and (max-width: 1280px){
#form{
	max-width:inherit;
}
#form th{
	width:30%;
}
#form td{
	width:70%;
}
}
@media screen and (max-width: 680px){
#form{
	width:100%;
	margin:40px auto;
}
#form table,
#form tbody,
#form tr,
#form th,
#form td{
	display:block;
	width:100%;
}
#form th{
	margin-bottom:0 !important;
	padding-bottom:0;
}
#form td{
	margin-bottom:0 !important;
}
#form table{
	margin-bottom:40px;
}
#form td input#zip{
	width:70%;
}
}
@media screen and (max-width: 480px){
.contact{
	padding:20px 10px;
	margin-bottom:40px;
}
}

/*:::::::::::::::::::::::::::::::
	規約
:::::::::::::::::::::::::::::::*/
#term_box{
	width:90%;
	max-width:980px;
	margin:80px auto;
}
#term_box h4{
	font-size:21px;
	font-weight:bold;
	margin:80px 0 10px;
}
#term_box ul{
	margin:40px 0;
}
#term_box li{
	margin:0;
	padding:5px 0;
}
#term .linkbox a{
	color:#fff;
}
#term_box h4:first-child{
	margin-top:0;
}
@media screen and (max-width: 480px){
#term_box{
	margin:40px auto;
}
}

/*:::::::::::::::::::::::::::::::
	サイトマップ
:::::::::::::::::::::::::::::::*/
.sitemap h2{
	background:#eee;
	padding:20px 10px;
	margin-bottom:10px;
}
.sitemap ul{
	margin:10px 0 40px !important;
}
.sitemap li a{
	font-weight:normal;
}


