/*
	Theme Name: GW Theme2025
	Theme URI: https://www.gorilla-web.net
	Description: GW Theme2025 HTML5+CSS3
	Version: 2.1
	Author: Gorilla web
	Author URI: https://www.gorilla-web.net
	Tags: Blank, HTML5, CSS3

	License: GW
	License URI: http://opensource.org/licenses/mit-license.php
*/


.grecaptcha-badge {
  visibility: hidden;
}

.recaptcha-disclaimer {
	margin-top:32px;
	font-size:14px;
	line-height:1.4em;
	text-align:center;
}
.recaptcha-disclaimer a {
	text-decoration:underline;
	color:blue;
}

/* URLカードを普通のリンク表示にする */
.wp-block-embed:not(.wp-block-embed-youtube) .wp-block-embed__wrapper iframe{
	display:none;
}

.wp-block-embed:not(.wp-block-embed-youtube){
	border:none;
	padding:0;
	margin:1em 0;
}

.wp-block-embed:not(.wp-block-embed-youtube) .wp-block-embed__wrapper{
	font-size:1rem;
}

.wp-block-embed:not(.wp-block-embed-youtube) .wp-block-embed__wrapper::before{
	content:"";
}

.wp-block-embed iframe{
	max-width:100%;
}








.none{
	display:none;
}
a {
color: inherit;
}


#breadcrumb_wrap{
	padding:1.53% 6.15% 0 6.15%;
}
.breadcrumbs {
	max-width: 1200px;
	margin:0 auto;
	color:#090909;
	display:flex;
	align-items:center;
}
.breadcrumbs span {
	margin: 0 3px;
	font-size:13px;
}
.breadcrumbs span a {
	text-decoration:underline;
}


.breadcrumb{
	display:flex;
	list-style-type:none;
	margin:0px;
	padding:16px 3.84%;
	border-bottom:1px solid #dddddd;
	font-size:13px;
}
.breadcrumb li{
	margin:0px 4px;
} 
.breadcrumb li a{
	text-decoration:none;
}

.youtube-wrap {
  width: 100%;
}
.youtube-wrap iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  display: block;
}



.wp_contents_flex_box {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:flex-start;
	margin:6.15% auto;
	max-width:1200px;
	padding:0 5.38%;
}
.left{
width:70%;
}
.sidebar {
width:24.61%;
}



.w1040 {
margin:0 auto;
max-width:1040px;
}



#breadcrumb ul{
	display:flex;
	margin:0px;
		padding:0px;
	list-style-type:none;
	font-size:12px;
}
#breadcrumb ul li{
	margin:0 8px;
}
#breadcrumb ul li a{
	text-decoration:none;
}

#breadcrumb{
	max-width:1040px;
	margin:auto;
}
/* =========================
   ページネーション
========================= */

.pagenation {
  margin: 3.84% 0;
  text-align: center;
}

/* 共通 */
.page-numbers {
  font-size: 1.4rem;
  color: #524239;
  font-weight: bold;
  display: inline-block;
  line-height: 1;
  padding: 10px 14px;
  margin: 0 4px;
  text-decoration: none;
}

/* 現在ページ */
.page-numbers.current {
  color: #b8b8b8;
}

/* 前へ・次へ ボタン */
.page-numbers.prev,
.page-numbers.next {
	  font-size: 1rem;
  background: #578033;
  color: #fff;
  border-radius: 999px; /* 横長丸 */
  padding: 8px 16px 8px 12px;
  position: relative;
  transition: 0.3s;
}


.page-numbers.prev img,
.page-numbers.next img {
  width: 14px;
  height: auto;
}

.page-numbers.prev {
  padding-left: 8px;
}

.page-numbers.next {
  padding-right: 8px;
}

.page-numbers.prev::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background: url("../images/arrow-prev.png") no-repeat center;
  background-size: contain;
}

.page-numbers.next::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background: url("../images/arrow-next.png") no-repeat center;
  background-size: contain;
}


/*------------------------------------*\
    CATEGORY
\*------------------------------------*/

.loop_wrap ul{
	list-style-type:none;
	margin:0px;
	padding:0px;
}
.loop_inner{
border-bottom:0.07em dashed #4b8519;
margin:0 0 16px 0;
padding:0px 0 24px 0;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.loop_thum{
width:22.3%;
margin:0;
}
.loop_thum img{
width:100%;
height:auto;
margin:0;
}
.loop_right{
width:73.84%;
}
.loop_right.wide {
width:100%
}
.loop_right h2 a{
	text-decoration:none;
}
.loop_right h2{
	font-size:1.15rem;
	line-height:1.4em;
	margin:0px;
	padding:0px;
}
.loop_date{
	font-size:0.9rem;
	color:#6a7560;
	letter-spacing:0px;
	font-weight:bold;
	margin-top:8px;
	margin-bottom:16px;
	display:block;
}

.loop_right p {
	line-height:1.6em;
}


/*------------------------------------*\
    SINGLE
\*------------------------------------*/

.left.bg_white{
	background-color:#fff;
	padding:3.84% 4.61% 4.61%;
	border-radius:14px;
	box-sizing:border-box;
	border:1px solid #72a943;
}
.entry-title {
	font-size:1.5rem;
	line-height:1.4em;
	font-weight:600;
	letter-spacing:1px;
	margin-bottom:12px;
	border-bottom:3px dotted #72a943;
	padding-bottom:14px;
}
.single_details {
	margin-bottom:16px;
}
.single_date {
margin-top:8px;
margin-bottom:16px;
color:#6a7560;
display:inline-block;
	font-weight:bold;
font-size:0.9rem;
line-height:1em;
	letter-spacing:0px;
}
.single_cat a {
	margin-left:16px;
	display: inline-block;
	padding: 3px 4px 3px 4px;
	font-size: 13px;
	color: #fff;
	background: #0073c9;
	line-height: 1;
}

.single_cat .cat-event {
	background: #f6b01f;
}
.single_cat .cat-blog {
	background: #006e12;
}
.single_thum {
margin-bottom:32px;
}
.single_thum img {
width:100%;
}

.single_content {
	margin-bottom:3.84%;
}

.single_content p {
	line-height:1.8em;
}
.single_content p img {
	margin:3.07% 0;
}


.gallery {
  margin: 0;
}

.gallery-item {
  padding: 5px;
	border:none;
	box-sizing: border-box;
}

.gallery img {
  width: 100%;
  height: auto;
}

.gallery,
.gallery-item,
.gallery img {
  border: none !important;
  box-shadow: none !important; /* 影も消す場合 */
  background: none !important;  /* 背景色が入っている場合 */
}

/* =========================
投稿本文リンク
========================= */

.single_content a{
	color:#2b599c;
	font-size:1.1rem;
	font-weight:500;
	line-height:1.4;
	text-decoration:underline;
	display:inline-block;
	margin:4px 0;
	position:relative;
}


/* =========================
サイト内リンク
========================= */

/* 通常リンク（Office/PDF除外） */
.single_content a:not([target="_blank"])
:not([href^="tel:"])
:not([href*=".pdf"])
:not([href*=".xls"])
:not([href*=".xlsx"])
:not([href*=".doc"])
:not([href*=".docx"])::after{
	content:"";
	display:inline-block;
	width:14px;
	height:14px;
	margin-left:6px;
	background:url("./images/arrow_double_blue.svg") no-repeat center;
	background-size:contain;
}


/* =========================
外部リンク
========================= */

.single_content a[target="_blank"]::after{
	content:"";
	display:inline-block;
	width:15px;
	height:15px;
	margin-left:6px;
	background:url("./images/blue_link.svg") no-repeat center;
	background-size:contain;
}
/* =========================
PDF
========================= */

.single_content a[href$=".pdf"]::before{
	content:"";
	display:inline-block;
	width:20px;
	height:20px;
	margin-right:6px;
	background:url("./images/pdf_icon.svg") no-repeat center;
	background-size:contain;
	vertical-align:middle;
}


/* =========================
Excel
========================= */

.single_content a[href$=".xls"]::before,
.single_content a[href$=".xlsx"]::before{
	content:"";
	display:inline-block;
	width:20px;
	height:20px;
	margin-right:6px;
	background:url("./images/office_icon_excel.svg") no-repeat center;
	background-size:contain;
	vertical-align:middle;
}


/* =========================
Word
========================= */

.single_content a[href$=".doc"]::before,
.single_content a[href$=".docx"]::before{
	content:"";
	display:inline-block;
	width:20px;
	height:20px;
	margin-right:6px;
	background:url("./images/office_icon_word.svg") no-repeat center;
	background-size:contain;
	vertical-align:middle;
}


/* =========================
Excel / Word ダウンロード
========================= */

/* Excel / Word ダウンロード */
.single_content a[href*=".xls"]::after,
.single_content a[href*=".xlsx"]::after,
.single_content a[href*=".doc"]::after,
.single_content a[href*=".docx"]::after{
	content:"";
	display:inline-block;
	width:16px;
	height:16px;
	margin-left:6px;
	background:url("./images/download_icon.svg") no-repeat center;
	background-size:contain;
}

.single_content ul {
	margin:8px 0;
	padding-left:24px;
	list-style-type: inherit;
}
.single_content ul li {
	line-height:1.4em;
	margin-bottom:8px;
}
.single_tag_wrap{
	border:1px dotted #cccccc;
	padding:24px;
	box-sizing:border-box;
	margin:5.38% 0;
}
.single_tag_wrap p{
margin:0;
padding:0;
line-height:1.5em;
color:#666666;
font-size:12px
}
.single_tag_wrap a{
margin:0;
padding:0;
color:#666666;
font-size:12px
}
.comment-author img{
display:none;
}

.single_tag .commentss p{
line-height:1.6em;
}
.single_tag .commentss .commentmetadata{
line-height:1.8em;
margin:0 0 16px 0;
}
.single_tag .commentss .reply{
line-height:1em;
margin:0 0 16px 0;
}




/*------------------------------------*\
    サイドバー
\*------------------------------------*/

.sidebar-widget h3{
	background-color:#578033;
	margin:0;
	padding:12px 0px 12px 12px;
	font-size:1rem;
	line-height:1em;
	color:#fff;
	border-radius: 6px;
}
.sidebar-widget ul{
	margin:0px 0 32px 0;
	padding:0px;
	list-style-type:none;
}
.sidebar-widget ul li{
	margin:0 0 0 0;
	padding:10px 0 10px 6px;
	border-bottom:2px dotted #72a943;
}
.sidebar-widget ul li a{
	font-size:0.9rem;
	line-height:1.6em;
	text-decoration:none;
	display:block;
	box-sizing:border-box;
}
.sidebar-widget ul .cat-item a{
	font-weight:bold;
}









/*------------------------------------*\
    その他
\*------------------------------------*/


.notfound_h1{
	font-size:40px;
	font-weight:normal;
}
.w404{
	text-align:center;
	max-width:960px;
	padding:0 5.38%;
	margin:5.38% auto;
}
.w404 p{
	line-height:2em;
	font-size:15px;
}
.notfound404_a{
	font-size:14px;
	border:1px solid #cccccc;
	display:inline-block;
	padding:12px 48px;
	text-decoration:none;
	font-weight:400;
	color:#333333;
	margin:5.38% 0;
}
.w404 h2{
}


/* =========================
   寄付レポート詳細ページ ナビゲーション
========================= */

.navigation_np {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 6.15% 0 0 0;
  gap: 20px;
}

/* 中央は真ん中固定 */
.navigation_center {
  text-align: center;
  flex: 1;
}

/* ボタン共通 */

.navigation_np a {
  position: relative;
  display: inline-flex;
  align-items: center;
  background: #578033;
  color: #fff;
  padding: 10px 22px;
  border-radius: 999px;
  font-weight: bold;
  text-decoration: none;
  transition: 0.3s;
}

/* 左ボタンは少し余白追加 */
.navigation_pre a {
  padding-left: 40px;
}

/* 右ボタンは少し余白追加 */
.navigation_next a {
  padding-right: 40px;
}

/* ← 前の記事 */
.navigation_pre a::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background: url("./images/arrow_double_wht_prev.svg") no-repeat center;
  background-size: contain;
}

/* 次の記事 → */
.navigation_next a::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background: url("./images/arrow_double_wht.svg") no-repeat center;
  background-size: contain;
}



.memo{
color:#666666;
padding:8px 0;
border-top:1px solid #cccccc;
border-bottom:1px solid #cccccc;
margin:16px auto;
font-size:11px;
max-width:1040px;
}
hr {
	height: 0;
	margin: 0px 0;
	padding: 0;
	border: 0;
	border-top: 1px dotted #bbb;
	border-bottom: 1px dotted #fff;
}
.cl {
	clear: both;
}









/*------------------------------------*\
    MAIN
\*------------------------------------*/

global box-sizing
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}

html {
/*overflow-x: hidden;*/
	scroll-behavior: smooth;
}
body {
overflow-x: hidden;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
    height:auto;
}

/* 
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

 */

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/












/*------------------------------------*\
    コメント関係
\*------------------------------------*/
.commentss{
font-size:12px;
border-top:1px solid #cccccc;
padding:32px 0 0 0;
margin:48px 0 0 0;
}
.commentss p{
margin:0 0 16px 0;
}
.commentss h3{
margin:0 0 16px 0;
font-size:16px;
}
.comment-form-url{
display:none;
}
.required{
color:#d10017;
}
.commentss label{
display:block;
}
.commentss input{
background-color:#ededed;
border:none;
padding:8px;
}
.commentss textarea{
background-color:#ededed;
border:none;
padding:8px;
}

.commentss h2{
font-size:18px;
margin: 0 0 24px 0;
}
.commentss ul{
list-style-type: none;
margin:0;
padding:0 0 0 0px;
}










.search-input{
	background-color:#d0d0d0;
	border:none;
	box-sizing:border-box;
	padding:8px 2%;
	box-sizing:border-box;
	width:96%;
}
.search-submit{
	background-color:#cccccc;
	border:none;
	padding:8px;
	box-sizing:border-box;
	margin:8px 0 32px 0;
}





/*------------------------------------*\
    PAGES
\*------------------------------------*/



/*------------------------------------*\
    IMAGES
\*------------------------------------*/



/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

@font-face {
	font-family:'Font-Name';
	src:url('fonts/font-name.eot');
	src:url('fonts/font-name.eot?#iefix') format('embedded-opentype'),
		url('fonts/font-name.woff') format('woff'),
		url('fonts/font-name.ttf') format('truetype'),
		url('fonts/font-name.svg#font-name') format('svg');
    font-weight:normal;
    font-style:normal;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width:320px) {


}
@media only screen and (max-width:700px) {

.foot_navi {
margin:0 8px;
}
.copyright {
margin:0 16px;
display:block;
}


.wp_contents_flex_box {
	margin:10% auto;
}


.left{
width:100%;
float:none;
margin:0;
}

.sidebar {
width:100%;
float:none;
margin:11.53% 0px 0 0px;

}

.sidebar-widget{
}


.loop_wrap{
		width:100%;
		margin:0% auto;
		padding:0;
}
.loop_inner{
margin:0 0 24px 0;
}
.loop_right h2{
	font-size:1.15rem;
	margin:0px;
	padding:0px;
}

.loop_post_right .date{
text-align:left;
margin:0px 0 4px 0;
display:block;
color:#888888;
	font-size:10px;
}
.loop_post_right .author{
text-align:center;
margin:0px 0 4px 0;
display:block;
color:#888888;
}
.loop_post_right .comments{
text-align:left;
margin:0px 0 4px 0;
display:none;
color:#888888;
}
.loop_post_right p a{
color:#888888;
}
.loop_post_right p{
margin:0;
	font-size:12px;
}


.commentss{
margin: 0;
}
#commentform p textarea {
    width:300px;
}



/* 共通 */
.page-numbers {
  padding: 10px 10px;
  margin: 0;
}



	

/*------------------------------------*\
    SINGLE
\*------------------------------------*/

.left.bg_white{
	background-color:#fff;
	padding:8.46%;
	border-radius:14px;
	box-sizing:border-box;
	border:1px solid #72a943;
}
.entry-title {
	font-size:1.2rem;
}


.single_thum img {
width:90%;
display:block;
margin:0 auto 16px;
}

.single_date {
margin-top:8px;
margin-bottom:8px;
}

.single_details{

}
.single_details .date{
text-align:center;
margin:0px 0 4px 0;
display:block;
color:#888888;
}
.single_details .author{
text-align:center;
margin:0px 0 4px 0;
display:block;
color:#888888;
}
.single_details .comments{
text-align:center;
margin:0px 0 4px 0;
display:block;
color:#888888;
}

.single_content{

}
.single_tag {
border-top:1px solid #cccccc;
padding:16px 0 0 0;
line-height:1;
}
.single_tag p{
margin:0 0 8px 0;
line-height:1.5em;
}
.single_tag_tca p{
margin:0;
line-height:1.5em;
}
.single_tag_tca {
margin:0 0 16px 0;
padding:0 8px;
}

.single_tag .commentss{
padding:16px 8px;
}

#breadcrumb{
	display:none;
}

.gallery {
    display: block; /* ギャラリー全体をブロック化 */
  }
  
  .gallery-columns-2 .gallery-item,
  .gallery-columns-3 .gallery-item,
  .gallery-columns-4 .gallery-item {
    width: 100% !important; /* 1列に */
    padding: 5px 0; /* 上下だけ余白 */
  }

/* =========================
     ナビゲーション SP
  ========================= */

  .navigation_np {
    flex-direction: column;
    gap: 16px;
    margin-top: 10%;
  }

  .navigation_pre,
  .navigation_center,
  .navigation_next {
    width: 100%;
    text-align: center;
  }

  .navigation_np a {
    width: 100%;
    justify-content: center;
    padding: 12px 20px;
    font-size: 14px;
	  box-sizing:border-box;
  }

  .navigation_pre a {
    padding-left: 40px;
  }

  .navigation_next a {
    padding-right: 40px;
  }










}
@media only screen and (min-width:768px) {

}
@media only screen and (min-width:1024px) {

}
@media only screen and (min-width:1140px) {

}
@media only screen and (min-width:1280px) {

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#9fd38d;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#9fd38d;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#9fd38d;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
/* a img.alignnone {
	margin:5px 20px 20px 0;
} */
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}

	
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
