/*
Theme Name: 山内かなこさんHP
Theme URI: https://yamakana.net
Description: 立憲民主党宮崎県参議院第1総支部長　山内かなこ
Version: 1.0.0
Author: XMART
Author URI: https://xmart.jp
*/

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1.15;
	font-size: 1rem;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}
button, input, optgroup, select, textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;  
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.sp {
	display: none;
}
.pc {
	display: block;
}
.row {
	width: 100%;
	max-width: 1000px;
	padding: 0 2%;
	margin: 0 auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.htmlWrap {
  font-family: "Shippori Mincho", serif;
  font-weight: 550;
  font-style: normal;
}
img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
html{
	scroll-behavior: smooth;
}
section{
	scroll-margin-top: 80px;
}
/* HEADER
*******************************/
header{
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 3;
	background-color: #004097;
	color: #ffe600;
	display: flex;
	justify-content: space-between;
	padding: 0 1rem;
	box-sizing: border-box;
}
header .site_id p{
	font-size: 1.5rem;
	margin-top: 1em;
	margin-bottom: 1em;
	line-height: 1.15;
}
header .navigation {
	width: 83%;
	margin: auto 0;
}
header .navigation nav{
	display: flex;
	justify-content: space-between;
}
header .navigation ul {
	display: flex;
	list-style: none;
	margin: auto;
	padding-left: 0;
	justify-content: flex-end;
}
header nav ul li a {
	text-decoration: none;
	color: #ffe600;
	font-size: 1.1rem;
}
header nav ul li a:hover,header .site_id p:hover{
	color: #FF0004;
	transition: .3s;
}
header .navigation nav .menu{
	gap: 0.7rem;
}
header .navigation nav .snsbtn{
	width: 8rem;
	margin: 0;
	gap: 0.5rem;
}
.site_id a{
	color: #ffe600;
	text-decoration: none;
}
.btn {
	display: none;
}
#mainvisual{
	width: 100%;
	padding-top: 5rem;
	position: relative;
}
#mainvisual figure{
	margin: 0;
}
/* 共通
*******************************/
.row .h{
	background-color: #004097;
	margin: 0 0 3rem;
	color: #fff;
	text-align: center;
	position: relative;
	padding: 1rem 0;
	font-size: 2rem;
}
.row .h figure{
	width: 30%;
	margin: -1.8rem auto 0;
}
.row{
	margin: 5rem auto 3rem;
}
.more button{
	background-color: #52c3dd;
	border-radius: 10px;
	width: 12rem;
	height: auto;
	align-items: center;
	padding: 0.5rem 1rem;
	font-size: 1.3rem;
	border: none;
	position: relative;
}
.more button a{
	color: #fff;
	text-decoration: none;
}
.more button:hover{
	background-color: rgba(82,195,221,0.5);
	transition: .3s;
}
.more button::after{
	 content: '▶︎';
    position: absolute;
	color: #ffe600;
	font-size:1rem;
	display:inline;
	top:50%;
	transform:translateY(-50%);
}
/* ご挨拶
*******************************/
#item1 .row .item1_item{
	display: flex;
}
#item1 .row .item1_item p:last-child{
  	font-family: "Zen Kurenaido", sans-serif;
  	font-weight: 400;
  	font-style: normal;
	text-align: right;
	font-size: 1.3rem;
}
#item1 .row .item1_item figure{
	width: 30%;
	margin: 1em 40px;
}
#item1 .row .item1_item div {
	width:70%;
}
#item1 .row .item1_item figcaption{
	font-weight: normal;
	padding-top: 0.5rem;
	font-size: 0.9rem;
	text-align: center;
}
#item1 .row .item1_item p{
	line-height: 1.8rem;
	margin: 1em 0;
}
/* 公式LINE
*******************************/
#item2{
	background-color: #00b900;
}
#item2  .row h2,#item2  .row .line_naka h3,#item2 .row .line_naka p{
	color: #fff;
}
#item2 .row{
	padding: 5rem 10rem;
}
#item2 .row h2 figure{
	width: 4rem;
	margin: 0; 
}
#item2 .row h2{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 3rem;
	position: relative;
	font-size: 2rem;
}
#item2 .row h2::after{
	background-image: url("assets/images/line02.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	position: absolute;
	width: 60%;
	height: 100%;
	content: '';
	top: 1rem;
}
#item2 .row .line_naka{
	padding: 0 8%;
  	font-family: "Noto Sans JP", sans-serif;
  	font-optical-sizing: auto;
  	font-weight: 400;
  	font-style: normal;
}
#item2 .row .line_naka h3{
	margin: 0;
	font-size: 1.17em;
}
#item2 .row .line_naka p{
	margin: 0.6rem 0 1.8rem;
}
#item2 .row .line_naka .qr figure{
	width: 30%;
	float: right;
	margin: 0 1rem;
}
.linebtn button{
    background-color: #fff; 
    border: none;
    border-radius: 10px;
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
	padding: 0.3rem 0.2rem;
  	font-weight: 500;
	width: 33%;
	margin-top: 2rem;
}
.linebtn button:hover{
	background-color: rgba(255,255,255,0.8);
	transition: .3s;
}
#item2 .linebtn figure{
	width: 17%;
	float: left;
	margin: 0;
}
.linebtn a{
    color: #00b900; 
	text-decoration: none;
	display: flex;
	justify-content: center;
	gap: 0.5rem;
	align-items: center;
	font-size:1.17em;
	font-weight: bold;
}
/* 政策
*******************************/
.item3_item h3{
	font-size: 2.5rem;
	text-align: center;
	margin: 1em 0;
}
.item3_item h3 span{
	color: #004097;
	font-size: 5rem;
}
#item3 .row .item3_item .item3_naka {
	padding-bottom: 4rem;
	width: 70%;
	margin: 0 auto;
}
#item3 .row .item3_item .item3_naka li {
	display: flex;
	justify-content: space-between;
}
#item3 .row .item3_item .item3_naka li:nth-child(odd){
	background-color: #e6f5ff;
}
#item3 .row .item3_item .item3_naka li a {
	font-size: 1.5rem;
	padding: 1rem 1rem 1rem 3.2rem;
	display: block;
	text-decoration:none;
	color:#000;
	text-indent:-1.7rem;
	position: relative;
	width: 100%;
	box-sizing: border-box;
	line-height:1.8rem;
}
#item3 .row .item3_item .item3_naka li a::before{
	content: '⚫︎';
	color: #004097;
	font-size:1.5rem;
	display:inline;
}
#item3 .row .item3_item .item3_naka .vision button{
	width: 5rem;
	font-size: 2rem;
	background-color: rgba(0,0,0,0);
	border: none;
}
#item3 .row .item3_item .item3_naka li a::after {
	content:'＞';
	display:inline;
	color: #7195c5;
	position: absolute;
	right:1rem;
	top: 50%;
	transform:translateY(-50%);
}
.item3_item .more {
	text-align: center;
}
/* プロフィール
*******************************/
.item4_item h3{
	font-size: 2rem;
	line-height: 2rem;
	position: relative;
	text-align: center;
	margin: 1em 0;
}
.item4_item h3 span{
	font-size: 1.15rem;
	width: 80%;
}
h3 ruby {
    ruby-position: under;
}
h3 ruby rt {
	padding-top: 0.3rem;
}
.item4_item .prf{
	display: flex;
	justify-content: space-between;
	line-height: 1.5rem;
}
.item4_item  .prf figure{
	width: 30%;
	margin: -10% 0 0 1rem;
}
.item4_item .prf_comment{
	line-height: 1.5rem;
	padding: 3rem 0 4rem;
}
.item4_item .prf p, .item4_item .prf_comment p {
	margin: 1em 0;
}
.item4_item .more{
	text-align: center;
}
/* お知らせ
*******************************/
#item5{
	background-color: #e9fffd;
	padding-bottom: 5rem;
}
#item5 .row{
	padding-top: 5rem;
}
#item5 .item5_item{
	background-color: #fff;
	padding: 3rem;
	display: flex;
	justify-content: space-between;
	gap: 1rem;
}
#item5 .item5_item:nth-of-type(1) {
	margin-bottom: 2rem;
}
#item5 .x{
	width: 50%;
}
#item5 .news{
	width: 50%;
	font-weight: 100;
}
#item5 .news .news_box .title{
	font-size: 1.5rem;
	border-bottom: #52c3dd solid 2px;
}
#item5 .news .news_box p{
	margin: 0;
}
#item5 .news .news_box{
	padding: 1rem 0;
}
#item5 .news .news_box .day{
	text-align: right;
}
#item5 .news .news_box p:nth-child(3){
	margin: 1rem 0;
}
#item5 .news .news_box button{
	background-color: #fff;
	width: 100%;
	height: auto;
	padding: 0.5rem 1rem;
	font-size: 0.8rem;
	border: none;
	position: relative;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
#item5 .news .news_box button a{
	position: relative;
	color: #000;
	text-decoration: none;
}
#item5 .news .news_box button a::before{
	position: absolute;
	content: '\0bb';
	display: inline;
	right: -0.5rem;
	
}
.circle {
  	position: relative;
  	width: 5%;
	margin-left: -0.3rem;
}
#item5 .news .news_box button:hover {
  opacity: 0.5;
	transition: .3s;
}
.triangle {
  position: absolute;
  top: 50%;
  width: 0.8em;
  height: 0.8em;
  border-right: 0.1em solid #00b5ad;
  border-bottom: 0.1em solid #52c3dd;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.triangle-left {
  left: 55%;
}
.triangle-right {
  left: 40%;
}
.item5_item .news .more{
	text-align: center;
}
#item5 ul.item5_item {
	list-style: none;
}
#item5 ul.item5_item li {
	width: calc(50% - 1px);
	padding: 0 2rem;
	box-sizing:border-box;
}
#item5 ul.item5_item li:last-child {
	border-left: 1px solid #000;
}
#item5 ul.item5_item li p:first-child {
	margin: 0 0 0.2rem;
}
#item5 ul.item5_item li h4 {
	font-size: 1.4rem;
	margin: 0;
}
#item5 ul.item5_item li p:nth-of-type(2) {
	margin: 0.3rem 0 1rem;
}
#item5 ul.item5_item li .more button {
	width: auto;
}
#item5 ul.item5_item li .more button::after {
	display: none;
}
#item5 ul.item5_item li .more button a i {
	color: #ffe600;
}

/* 後援会
*******************************/
#item6 .row{
	text-align: center;
	margin: 5rem auto 10rem;
}
#item6 .row p{
	text-align: left;
	margin: 0;
	line-height: 2rem;
}
#item6 .row button{
	background-color: #52c3dd;
	color: #fff;
	border-radius: 10px;
	width: 30rem;
	height: auto;
	align-items: center;
	padding: 0.5rem 1rem;
	font-size: 1.3rem;
	border: none;
	position: relative;
}
#item6 .row button:hover{
	background-color: rgba(82,195,221,0.5);
	transition: .3s;
}
#item6 .row h2 + p {
	margin-bottom: 1.5rem;
}
#item6 .row h2 + p + .more button::after {
	display: none;
}
#item6 .row h2 + p + .more button i {
	color: #ffe600;
}
#item6 .row h3{
	margin: 3rem 0 1.17em;
	font-size: 1.18em;
}
.privacy-policy {
    height: 200px;
    padding: 2em;
    border: 0.5px solid #000;
    overflow-y: scroll;
	margin-bottom: 3rem;
}
.privacy-policy p{
	line-height: 1.8rem;
}
.privacy-policy_box{
	text-align: left;
	line-height: 1.8rem;
}
.privacy-policy_box .head{
	font-weight: bold;
}
.privacy-policy_box .text{
	margin: 0;
	font-weight: 100;
}
#item6 .row button a{
 	color: #fff;
	text-decoration: none;
	font-size: 1.2rem;
	line-height: 1.7rem;
}
/* 連絡先（2025参院選用）
*******************************/
#vote2025 {
	padding-bottom: 5rem;
}
#vote2025 h3 {
	text-align: center;
	font-size: 1.5rem;
	margin-bottom: 2rem;
}
#vote2025 h3 span {
	padding:0 2rem 0.4rem;
	letter-spacing:0.1rem;
	border-bottom: 1px solid #004097;
}
#vote2025 address {
	text-align: center;
	font-style: normal;
	line-height: 2rem;
	margin-bottom: 2rem;
}
#vote2025 address a {
	color:#000;
	text-decoration:none;
}
#vote2025 .vote_office {
	height:0;
	padding-top: 30%;
	position: relative;
}
#vote2025 .vote_office iframe {
	position:absolute;
	width:100%;
	height:100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

/* footer
*******************************/
footer {
	background-color: #004097;
	color: #fff;
	text-align: center;
	border-top: #52c3dd solid 2px;
	padding-bottom: 1rem;
	font-size: 1rem;
	line-height: 1.15rem;
}
footer .footer_item{
	background-color: #f3ffff;
	color: #000000;
	display: flex;
	justify-content: space-between;
	margin-bottom: 1rem;
	font-weight: bold;
	padding: 3% 10%;
}
footer nav{
	width: 50%;
}
footer .footer_menu li{
	padding-bottom: 0.8rem ;
	text-align: left;
}
footer .footer_menu li a{
	color: #000;
	text-decoration: none;
}
footer .footer_menu li a:hover{
	color: rgba(0,0,0,0.5);
	transition: .3s;
}
footer ul li:last-child{
	font-weight: normal;
}
footer nav .footer_menu{
	display: block;
	list-style:  none;
	margin: 0;
	justify-content: flex-end;
	padding: 0;
}
footer .footer_item nav .footer_snsbtn{
	display: flex;
	width: 10rem;
	list-style: none;
	padding: 0;
	margin: 0;
}
footer .footer_item nav .footer_snsbtn{
	gap: 0.5rem;
}
footer .address{
	text-align: left;
}
footer .address h3{
	margin: 0 0 1rem;
	color: #004097;
	font-size: 1.5rem;
}
footer .address_box{
	background-color: #fff;
	border: #52c3dd solid 2px;
	border-radius: 10px;
	padding: 1rem 2rem;
}
footer .address_box p{
	word-break: break-word;
	margin: 1em 0;
}
footer .address_box a {
	color:#000;
	text-decoration:none;
}




/* 政策別ページ
*******************************/
#plan .row .item3_item {
	border-bottom: #004097 solid 2px;
	width: 80%;
	margin: 0 auto;
}
.visionbox .item3_item h3 {
	font-size: 2.5rem;
	text-align: center;
	margin: 1em 0 0;
}
.visionbox .item3_item h3 span {
	color: #004097;
	font-size:5rem;
}
#plan .row .visionbox .vision figure {
	width: 65%;
	padding: 6rem 0;
	margin: 1em 40px;
}
div.vision {
	display: flex;
	justify-content: center;
}
.vision_text {
	width: 65%;
	background-color: rgba(255,255,255,0.8);
	margin: 17rem 0 0 -15%;
	padding: 0 2rem;
}
.vision_text:nth-child(odd){
	margin: 17rem -9rem 0 0;
	padding: 0 2rem;
	z-index: 2;
}
.vision_text h4{
	color: #004097;
	text-align: center;
	font-size: 1.8em;
	margin: 0.67em 0;
	white-space: nowrap;
}
.vision_text p{
	font-size: 1.15rem;
	font-weight: 100;
	margin: 0 0 1rem;
	padding: 0 1.5rem 0 2.5rem;
	line-height:1.7rem;
	text-indent:-1.4rem;
}
.vision_text p::before{
	content: '⚫︎';
	display: inline;
	color: #fff422;
	font-size: 1.4rem;
	/*transform: translate(-1.8rem,-0.4rem);*/
}

/* プロフィール別ページ
*******************************/
#prfmain{
	position: relative;
}
#prfmain figure{
	padding-top: 80px;
	margin: 0;
}
#prfmain h1{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-20%);
	font-size: 3vw;
	margin: 0;
}
#prf .name figure{
	width: 21%;
	top: 0;
	margin: 0;
}
#prf .name h3{
	font-size: 2.5rem;
	line-height: 2rem;
	position: relative;
	text-align: center;
	
	margin: -5rem 0 0;
}
#prf .name h3 span{
	font-size: 1.15rem;
	width: 80%;
	
}
#prf .ayumi{
	padding-top: 5rem;
	width: 100%;
}
#prf .prfbox p{
	margin: 0;
}
#prf .prfbox .date{
	font-size: 1.1rem;
      font-weight: 900;
      position: relative;
	margin: 3rem 0 1.5rem;
	border-top: #e0e0e0 solid 2px;
}
#prf .date span{
	background-color: #e0e0e0;
	border-radius: 20px;
	padding: 0.3rem 1rem;
	transform: translateY(-50%);
	position: absolute;
	top: -1px;
}
.naka{
	display: flex;
}
#prf .prfbox .red{
	font-weight: bold;
	font-size: 1.2rem;
}
#prf .prfbox h4 {
	color: #004097;
	font-size: 1.2rem;
	font-weight: bold;
	margin-bottom: 0.5rem;
	line-height: 1.8rem;
}
#prf .prfbox h4 span {
	color: #e60012;
}
.red_font{
	color: #e60012;
}
#prf .prfbox p:not(.date) {
	line-height:1.6rem;
}
#prf .prfbox p:not(.date) span {
	color: #e60012;
}
.prfbox{
	width: 80%;
}
.prfimg{
	padding: 2rem 0 0 2rem;
	width: 30%;
}
.prfimg figure{
	margin: 0;
}
.prfimg figcaption{
	font-size: 0.7rem;
	text-align: center;
	padding-top: 0.5rem;
}
.inimg{
	display: flex;
	width: 100%;
}
.inimg figure,.inimg .img{
	width: 30%;
}
.inimg figure {
	margin: 1em 40px;
}
.inimg figure figcaption {
	font-size: 0.85rem;
	padding-top: 0.3rem;
	line-height: 1.3rem;
}
.img1{
	width: 30%;
}

/* お知らせ別ページ
*******************************/
.news_block {
	display: flex;
	border-top: 2px solid #29a6cc;
}
.news_block .text h2 {
	font-size:1.5em;
	font-weight: 100;
	margin: 0.83em 0 0.5rem;
}
.news_block .text p.for_detail {
	text-align: right;
	margin: 0 0 2rem;
}
.news_block .text p.for_detail a{
	color: #000;
	text-decoration: none;
}
.news_block .text p.for_detail a::after {
	content:'»';
	display: inline;
}
.news_block .text p.for_detail a:hover {
	opacity: 30%;
	transition: .3s;
}
.news_block .text time {
	font-size:0.9rem;
}
.news_block figure{
	width: 270px;
	margin: 1.5rem 40px 1em;
}
.news_block .text p{
	margin-top: 1.5rem;
	line-height:1.6rem;
}
/* お知らせ個別ページ
*******************************/
#news_naka .row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#news_naka .maintext {
	width: 65%;
	box-sizing: border-box;
}
#news_naka .maintext .text_top {
	margin-bottom: 2rem;
}
#news_naka .maintext .text_top time {
	font-size:1rem;
	color: #666;
}
#news_naka .maintext h2 {
	font-size: 2rem;
	line-height: 2.6rem;
	margin-bottom: 1.5rem;
	font-weight: bold;
	clear:both;
}
#news_naka .maintext h3 {
	font-size:1.6rem;
	border-bottom: 1px solid #004097;
	margin-bottom:1.5rem;
	padding-bottom: 0.2rem;
	clear:both;
}
#news_naka .maintext h4 {
	font-size:1.4rem;
	border-bottom: 1px dotted #004097;
	margin-bottom:1.5rem;
	padding-bottom: 0.2rem;
	line-height:1.8rem;
	clear:both;
}
#news_naka .maintext h5 {
	font-size:1.25rem;
	font-weight: bold;
	color:#004097;
	margin-bottom:1rem;
	line-height:1.7rem;
	clear:both;
}
#news_naka .maintext h5::before {
	content:'■';
	display: inline;
}
#news_naka .maintext p {
	font-size: 1.15rem;
	line-height: 1.8rem;
	margin-bottom: 2.5rem;
	text-align: justify;
	font-weight: normal;
}
#news_naka .maintext figure {
	margin:  0 0 1.5rem;
}
#news_naka .maintext .wp-block-image figure.alignleft {
	margin-right:1rem;
}
#news_naka .maintext .wp-block-image figure.alignright {
	margin-left:1rem;
}
#news_naka .maintext .text_bottom p{
	line-height: 1.5rem;
	margin: 0.5rem 0;
}
#news_naka .archive{
	width: calc(30% - 2px);
	border-left: #29a6cc solid 2px;
	box-sizing: border-box;
	padding: 1.5rem 0 0 3%;
}
#news_naka .archive h3 {
	font-size: 1.5rem;
	margin-bottom:1em;
}
#news_naka .archive a{
	color: #000;
	text-decoration: none;
}
#news_naka .archive ul.archives_list li {
	font-size:1.3rem;
	margin-bottom:0.5rem;
}
#news_naka h1{
	font-weight: 100;
	font-size: 3rem;
	margin: 0;
}
#news_naka .maintext h2{
	font-weight: 100;
	font-size: 2rem;
}
#news_naka .archive h3{
	font-size: 1.5rem;
}
#news_naka .archive p{
	margin-bottom: 0.3rem;
	font-size: 1.1rem;
}
#news_naka .archive .textbox time{
	font-size: 0.8rem;
}
#news_naka .archive .textbox{
	margin-bottom: 2rem;
}
#news_naka .maintext .button_box{
	display: flex;
	justify-content: space-between;
}
nav.post-navigation {
	padding: 5rem 0;
}
.nav-links {
	display: flex;
	justify-content: space-between;
}
.nav-previous {
	padding-right: 5%;
}
.nav-next {
	padding-left:5%;
}
.nav-previous a, .nav-next a {
	position: relative;
	color:#000;
	text-decoration:none;
	display: block;
}
.nav-previous a {
	padding-left: 1.2rem;
	line-height: 1.4rem;
}
.nav-previous a::before {
	position: absolute;
	content: '\0ab';
	display: inline;
	top: 50%;
	left:0;
	transform:translateY(-50%);
}
.nav-next a {
	padding-right: 1.2rem;
	line-height: 1.4rem;
}
.nav-next a::after {
	position: absolute;
	content: '\0bb';
	display: inline;
	top: 50%;
	right:0;
	transform:translateY(-50%);
}
.button_box button{
	position: relative;
	color: #000;
	text-decoration: none;
	border: none;
	background-color: #fff;
}
.button_box .button1 button::before{
	position: absolute;
	content: '\0ab';
	display: inline;
	right: 5rem;
	color: #29a6cc;
}
.button_box .button2 button::before{
	position: absolute;
	content: '\0bb';
	display: inline;
	right: -0.5rem;
	color: #29a6cc;
}
.circle {
  	position: relative;
  	width: 5%;
	margin-left: -0.3rem;
}
.button_box button:hover {
  	opacity: 0.5;
	transition: .3s;
}

/* WP-PageNavi
*******************************/
.wp-pagenavi {
	display:flex;
	justify-content:center;
	margin-bottom: 5rem;
}
.wp-pagenavi .current, .wp-pagenavi a {
	display:flex;
	align-items: center;
	justify-content:center;
	width: 30px;
	height: 30px;
	border: 2px solid #004097;
	border-radius: 50%;
}
.wp-pagenavi a {
	text-decoration:none;
	color:#004097;
	background-color: #FFF;
}
.wp-pagenavi a:hover {
	background-color: #004097;
	color: #FFF;
	transition: .3s;
}
.wp-pagenavi .current {
	background-color: #004097;
	color: #FFF;
	font-weight: 900;
}







@media screen and (max-width: 767px) {
/*********************************************
ハンバーガーメニュー
**********************************************/
	.sp {
		display: block;
	}
	.pc {
		display: none;
	}
.btn {
	/* ボタンの配置位置  */
	position: fixed;
	top: 16px;
	right: 16px;
	/* 最前面に */
	z-index: 10;
	/* ボタンの大きさ  */
	width: 48px;
	height: 48px;
display: block;
	background-color: #004097;
	border: none;
}
/***** 真ん中のバーガー線 *****/
.btn-line {
	display: block;
	/* バーガー線の位置基準として設定 */
	position: relative;
	/* 線の長さと高さ */
	width: 100%;
	height: 4px;
	/* バーガー線の色 */
	background-color: #ffe600;
	transition: .2s;
}
/***** 上下のバーガー線 *****/
.btn-line::before , .btn-line::after {
	content: "";
	/* 基準線と同じ大きさと色 */
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #ffe600;
	transition: .5s;
}
.btn-line::before {
	/* 上の線の位置 */
	transform: translate(-8px, -10px);
}
.btn-line::after {
	/* 下の線の位置 */
	transform: translate(-8px, 10px);
}
/***** メニューオープン時 *****/
.btn-line.open {
	/* 真ん中の線を透明に */
	background-color: transparent;
}
.btn-line.open::before , .btn-line.open::after {
	content: "";
	background-color: #ffe600;
	transition: .2s;
}
.btn-line.open::before {
	/* 上の線を傾ける */
	transform: translate(-16px, 0) rotate(45deg);
	/*transform: rotate(45deg);*/
}
.btn-line.open::after {
	/* 上の線を傾ける */
	transform: translate(-16px, 0) rotate(-45deg);
}
/**************** ここまで、ハンバーガーボタンのスタイリング ****************/
/**************** 以下、メニューのスタイリング ****************/
	header .navigation ul {
		justify-content: flex-start;
	}
.menu {
	/* メニューを縦に */
	display: flex;
	flex-direction: column;
	position: fixed;
	/* メニューの位置マイナス指定で画面外に */
	right: -70%;
	width: 70%;
	height: calc(100vh - 75px);
	background-color: rgba(0,64,151,.9);
	color: #004097;
	transition: .3s;
}
.menu-list {
	/* メニューテキスト位置をリスト内中心に */
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 1rem 0;
	
}
.menu .menu-list:hover {
	background-color: rgba(82, 195, 221, .5);
	color: #ffe600;
	cursor: pointer;
	transition: .3s;
}
/***** メニューオープン時位置0にして画面内に *****/
.menu.open {
	position: absolute;
	right: 0;
	top: 75px;
}	
	
	header nav ul li a{
		color: #ffe600;
		display: block;
		width: 100%;
		text-align: center;
	}
	header nav ul li a:hover{
	color: #ffe600;
}
	header .navigation{
		width: 50%;
	}
	header .navigation nav{
		float: right;
		padding-right: 5rem;
	}
	footer .footer_item address{
		padding-right: 1rem;
	}
	footer .address_box{
		padding: 1rem;
	}
/* 共通
*******************************/
.row .h{
	margin: 5rem 0 3rem;
}
.row .h figure{
	width: 40%;
	margin: -1.8rem auto 0;
}
/* ご挨拶
*******************************/
	#item1 .row, #item1 .row .h {
		margin: 3rem auto 2rem;
	}
#item1 .row .item1_item{
	display: block;
}
#item1 .row  .item1_item figure{
	width: 70%;
	margin: 0;
	margin: 0 auto;
}
	#item1 .row .item1_item div {
		width:100%;
	}
#item1 .row .item1_item p{
	margin: 2rem 3rem;
}
/* 公式LINE
*******************************/
#item2 .row{
	padding: 5rem 3rem;
}
#item2 .row h2 figure{
	width: 3rem;
}
#item2 .row h2::after{
	width: 15rem;
	height: 155%;
}
#item2 .row .line_naka .qr{
	display: inline-grid;
}
#item2 .row .line_naka .qr figure{
	float: none;
	margin: 0 auto;
	order: 2;
	width: 100%;
}
	#item2 .row .qr .text{
		margin: 0 auto;
	}
	#item2 .linebtn{
		text-align: center;
	}
	#item2 .linebtn button {
		width: 100%;
	}
#item2 .linebtn .button a{
	align-items: center;
} 
#item2 .linebtn figure{
	width: 3rem;
}
	#item2 .row .line_naka p {
		text-align: justify;
	}
	#item2 .row .line_naka h3 {
		text-align: center;
	}
	#item3 .item3_item {
		margin: 0 5%;
	}
	#item3 h3 {
		font-size: 1.2rem;
		line-height: 2rem;
	}
	
	
	
	
	
	
	
/* 政策
*******************************/
	#item3 .row .item3_item .item3_naka {
		width:100%;
	}
	.vision_text h4 {
		white-space:wrap;
		line-height: 2.2rem;
	}
#plan .row .item3_item{
	border-bottom: #004097 solid 2px;
	width: 100%;
	margin: 0 0 2rem;
}
#plan .row .item3_item h3{
	margin-bottom: 0;
	font-size: 2rem;
}
	#plan .row .item3_item h3 span{
		font-size: 2.5rem;
	}
	
.item3_item h3{
	font-size: 2rem;
	text-align: center;
}
.item3_item h3 span{
	color: #004097;
	font-size: 3rem;
}
	#item3 .row .item3_item .item3_naka li a {
		font-size:1.15rem;
		padding:0.6rem 0.6rem 0.6rem 2rem;
	}
	#item3 .row .item3_item .item3_naka li a::before {
		font-size: 1.15rem;
	}
	#item3 .row .item3_item .item3_naka li a::after {
		font-size:1.15rem;
		right:0.6rem;
	}
/* プロフィール
*******************************/
.item4_item .prf{
	display: block;
}
.item4_item .prf p{
		width: 80%;
		margin: 0 auto;
		padding-bottom: 3rem;
	}
.item4_item  .prf figure{
	width: 50%;
	margin: 0 auto;
}
/* お知らせ
*******************************/
#item5 .item5_item{
	display: block;
	justify-content: center;
	padding-left: 1rem;
	padding-right: 1rem;
}
#item5 .news{
	width: 100%;
}
	#item5 .x{
		width: 100%;
		margin-bottom:3rem;
	}
	#item5 ul.item5_item li {
		width:100%;
	}
	#item5 ul.item5_item li:first-child {
		margin-bottom:1.5rem;
	}
	#item5 ul.item5_item li:last-child {
		border-top:1px solid #000;
		border-left: none;
		padding-top:1.5rem;
	}
	#item5 ul.item5_item li .more button {
		font-size:1.15rem;
	}
/* 後援会
*******************************/
#item6 .row button{
	width: 90%;
	padding: 0.5rem;
}
/* 連絡先（2025参院選用）
*******************************/
	#vote2025 .vote_office {
		padding-top:50%;
	}
/* footer
*******************************/
footer .footer_item{
	background-color: #f3ffff;
	display: block;
}
	footer nav {
		width:100%;
	}
	footer .address h3{
	margin: 2rem 0 0.5rem;
}
	footer .address_box{
	width: 100%;
		box-sizing: border-box;
}
footer .menu-list{
	justify-content: left;	
}
	
	
	
	
	
	/* 政策別ページ
*******************************/
	div.visionbox {
		padding:0 5%;
	}
	div.vision {
		flex-wrap: wrap;
	}
	#plan .row .visionbox .vision figure {
		width: 100%;
		padding:0;
		margin:0 0 1rem;
	}
	.vision_text {
		width: 100%;
		margin:0 0 3rem;
		padding:0;
	}
	.vision_text p {
		padding:0 0 0 1rem;
	}
	#plan .row .visionbox .vision:nth-child(odd) figure {
		order:1;
	}
	#plan .row .visionbox .vision:nth-child(odd) .vision_text {
		order:2;
	}
	#plan .row .visionbox .vision .vision_text h4 {
		margin-top:0;
	}
	.vision_text:nth-child(odd) {
		margin: 0 0 3rem;
		padding:0;
	}
	/* プロフィール別ページ
*******************************/
	
	.prfbox{
	width: 100%;
}
	.inimg{
	display: block;
}
	.inimg .img{
	width: 50%;
		margin: 2rem auto 0;
}
	.inimg figure {
	width: 70%;
		margin: 1rem auto 0;
}
	#prf .ayumi{
	padding-top: 2rem;
	width: 100%;
}
	#prfmain h1{
	top: 60%;
	font-size: 2rem;
		width: 100%;
		text-align: center;
}
	#prf .name h3{
	font-size: 2rem;
	line-height: 1.5rem;
	margin: -3rem 0 0;
		height: 5rem;
}
	#prf .name h3 span{
	font-size: 1rem;
}
	#item5 {
		padding-bottom: 3rem;
	}
	#item5 .row {
		padding-top: 2rem;
	}
	#item5 .row .h {
		margin-top: 0;
	}
	
	/* お知らせ詳細別ページ
*******************************/
	#news_naka .row {
		padding:0 5%;
	}
	#news_naka .maintext,#news_naka .archive {
		width:100%;
	}
	#news_naka .maintext {
		margin-bottom:3.5rem;
	}
	#news_naka h1 {
		font-size:2rem;
	}
	#news_naka .maintext h2 {
		font-size: 1.4rem;
		line-height:1.8rem;
	}
	#news_naka .maintext h3 {
		font-size: 1.3rem;
		line-height:1.8rem;
	}
	#news_naka .maintext h4 {
		font-size: 1.2rem;
		line-height:1.7rem;
	}
	#news_naka .maintext h5 {
		font-size: 1.1rem;
		line-height:1.65rem;
	}
	#news_naka .maintext p {
		font-size:1rem;
		line-height:1.6rem;
	}
	#news_naka .archive {
		border-top: #29a6cc solid 2px;
		border-left: 0;
		padding-top: 2rem;
	}
	#news_naka .archive p {
		font-size:1rem;
	}
.nav-links {
	flex-wrap: wrap;
}
.nav-previous {
	width:100%;
	box-sizing:border-box;
	padding-bottom: 1rem;
	border-bottom:1px dotted #999;
}
.nav-next {
	width:100%;
	box-sizing:border-box;
	padding-top:1rem;
}
	.nav-previous a, .nav-next a {
		font-size:1rem;
	}
/* WP-PageNavi
*******************************/
	.wp-pagenavi {
		gap: 0.5rem;
	}

}