@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900;1,6..96,400..900&family=Dancing+Script:wght@400..700&family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1+Code:wght@100..700&display=swap');


ul { list-style-type:none; }
ul li { margin:0; padding:0; }
ol { list-style-type:decimal; }
.clearfix::after { content: ""; display: block; clear: both; }

/* Begin Typography & Colors */
body { margin:0; padding:1%; font-size:14px; letter-spacing:1px; line-height:140%; color:#2d2a2a; font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight:100; font-style: normal; background:#fff; box-sizing:border-box; }
header { margin:0 0 1% 0; padding:0; width:auto; box-sizing:border-box; }
header h1 { margin:0; padding:0; font-size:20px; font-family: "M PLUS 1 Code", monospace; font-optical-sizing: auto; font-weight:700; font-style: normal; }
header h1 span { font-size:12px; line-height:160%; font-weight:200; display:block; }
header h1 a { margin:0; padding:0 0 0 40px; height:40px; text-decoration:none; color:#333; background-position:0 50%; background: url("./img/icon01.png") no-repeat; background-size:11.5%; display:inline-block; }

header h1 span.page-description { margin:0; padding:0; font-size:20px; font-family: "M PLUS 1 Code", monospace; font-optical-sizing: auto; font-weight:700; font-style: normal; display:inline; }



/* hamburger(ハンバーガーアイコン) */
.hamburger { position:fixed; right:20px; top:20px; width:28px; height:28px; cursor: pointer; z-index: 300; }
.hamburger__line { position: absolute; width:28px; height:3px; right:0; background-color: #000; transition: all 0.5s; }
.hamburger__line--1 { top: 1px; }
.hamburger__line--2 { top: 11px; }
.hamburger__line--3 { top: 22px; }
/*ハンバーガーがクリックされたら*/
.open .hamburger__line--1 { transform: rotate(-45deg); top: 11px; }
.open .hamburger__line--2 { opacity: 0; }
.open .hamburger__line--3 { transform: rotate(45deg); top: 11px; }
/* sp-nav(ナビ) =================================== */
.sp-nav { position: fixed; right: -100%; top: 0; width:50%; height:100vh; background-color:#fff; transition: all 0.5s; z-index:200; overflow-y: auto; }
.sp-nav h1 { margin:30px auto 10px auto; padding:0; font-size:20px; font-family: "M PLUS 1 Code", monospace; font-optical-sizing: auto; font-weight:700; font-style: normal; text-align:center; }
.sp-nav h1 span { font-size:12px; line-height:160%; font-weight:200; display:block; }
.sp-nav h1 a { margin:0; padding:0 0 30px 0; height:43px; text-decoration:none; color:#333; background: url("./img/icon01.png") no-repeat; background-size:30px 33px; background-position:50% 100%; display:block; }
.sp-nav ul { margin:0 auto; padding:0; width:90%; }
.sp-nav ul li { margin:0; padding:00; border-bottom:1px solid #efefef; }
.sp-nav ul li h2 { margin:0; padding:0; }
.sp-nav ul li h2 a:link { margin:0; padding:4% 0; font-size:18px; line-height:130%; text-decoration:none; color:#290a0a; display:block; }
.sp-nav ul li h2 a:visited { text-decoration:none; color:#290a0a; }
.sp-nav ul li h2 a:hover { text-decoration:none; color:#290a0a; }
.sp-nav ul li h2 a:active { text-decoration:none; color:#290a0a; }
.sp-nav ul li h2 a:link span { font-size:11px; color:#555; font-weight:200; display:block; }
.sp-nav ul li h3 { margin:0; padding:0; }
.sp-nav ul li h3 a:link { margin:0; padding:2% 0 2% 5%; font-size:16px; color:#555; line-height:130%; display:block; }
.sp-nav ul li h3 a:link { color:#555; }
.sp-nav ul li h3 a:visited { color:#555; }
.sp-nav ul li h3 a:hover { color:#555; }
.sp-nav ul li h3 a:active span { font-size:11px; color:#555; font-weight:200; display:block; }
/*ハンバーガーがクリックされたら右からスライド*/
.open .sp-nav { right: 0; }
/* black-bg(ハンバーガーメニュー解除用bg)
=================================== */
.black-bg { position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 5; background-color: #000; opacity: 0; visibility: hidden; transition: all 0.5s; cursor: pointer; z-index: 100; }
/*ハンバーガーメニューが開いたら表示*/
.open .black-bg { opacity: 0.3; visibility: visible; }



#Main { margin:0 auto 1% auto; padding:0; width:auto; height:auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; box-sizing:border-box; }
#Main div.cont { margin:0 auto; padding:0; width:100%; box-sizing:border-box; }
#Main div.cont article { margin:0 auto 5px auto; padding:5px; width:98%; box-sizing:border-box; }
/* 投稿NPO記事ページ */
#Main div.cont ul.listul { margin:5% auto; padding:0; width:95%; }
#Main div.cont ul.listul li { margin:0 0 3% 0; padding:0 1% 1% 1%; font-size:15px; font-weight:200; color:#333; border-bottom:1px solid #f4f2f1; box-sizing:border-box; }
#Main div.cont ul.listul li:last-child { border:none; }
#Main div.cont ul.listul li b { color:#000; font-size:16px; }
#Main div.cont ul.listul li .sns-icon { font-size: 24px; margin-right: 10px; color: #555; text-decoration: none; }
#Main div.cont ul.listul li .sns-icon:hover { color: #0073aa; }
#Main div.cont div.hdiv { margin:0 auto; }
#Main div.cont div.hdiv h1 { margin:0 0 3% 0; padding:2%; background:#f8f8f8; font-weight:300; font-size:23px; border-radius:3px; }
#Main div.cont div.hdiv img.wp-post-image { margin:0 auto; display:block; }
#Main div.cont div.hdiv .favo { text-align:right; }
#Main div.cont div.etct { width:auto; width:auto; display:block; }
#Main div.cont div.etct p.com { margin:0 auto; padding:2%; width:95%; font-size:17px; line-height:150%; letter-spacing:1px; color:#333; font-weight:200; box-sizing:border-box; }
#Main div.cont div.etct p.bunya { margin:0 auto 2% auto; padding:2%; width:95%; font-size:17px; font-weight:200; background:#fff; border:2px solid #f2f2f2; box-sizing:border-box; }
#Main div.cont div.etct p.bunya a { text-decoration:none; color:#333; line-height:140%; font-size:90%; }
#comments { margin:0 auto; padding:2%; width:95%; background:#f8f8f8; border-radius:7px; box-sizing:border-box; }
#comments h2 { margin:0; padding:2%; background:#fff; font-weight:300; font-size:20px; border-radius:7px; }
#comments form.comment-form p.comment-notes { margin:0; padding:1% 0; }
#comments form.comment-form p.comment-notes span { font-size:13px; color:#333; font-weight:200; }
#comments form.comment-form p.comment-notes span.required-field-message { display:block; }
#comments form.comment-form p.comment-notes span.required-field-message span.required { display:inline; }
span.required { color:red; display:inline; }
p.comment-form-comment {}
p.comment-form-comment label { margin:0 0 1% 0; font-size:14px; color:#333; }
p.comment-form-comment textarea { margin:0; padding:2%; font-size:14px; width:100%; color:#333; box-sizing:border-box; border:1px solid #dbdbdb; }
div.comdiv { margin:0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
div.comdiv p { margin:0; padding:0; width:31%; }
div.comdiv p input { margin:0; padding:2%; font-size:14px; width:100%; color:#333; box-sizing:border-box; border:1px solid #dbdbdb; }
p.form-submit { margin:1% 0; width:100%; }
p.form-submit input.submit { margin:0 auto; padding:0; background:#c8c1c1; font-size:13px; width:50%; width:300px; height:40px; border:1px solid #fff; display:block; }

div.err404 { margin:0 auto; padding:5% 0 0 0; width:85%; }
div.err404 img { margin:0 auto; padding:0; width:70%; height:auto; display:block; }
div.err404 h1 { margin:0 0 10% 0 ; text-align:center; font-weight:200; font-size:25px; line-height:130%; }
div.err404 h1 span { font-size:13px; display:block; }
div.err404 .page-content { margin:0 auto; padding:3% 0 0 0; width:50%; }
div.err404 .page-content input { margin:0 auto -10px auto; padding:5px; width:100%; box-sizing:border-box; font-size:13px; border:1px solid #ccc; display:block; }
div.err404 .page-content select { width:100%; }
div.err404 .page-content .selectbox-2 { position: relative; margin:0 0 10px 0; display:block; }
div.err404 .page-content .selectbox-2::before,
div.err404 .page-content .selectbox-2::after { position: absolute; content: ''; pointer-events: none; }
div.err404 .page-content .selectbox-2::before { right: 0; display: inline-block; width: 2.8em; height: 2.8em; border-radius: 0 3px 3px 0; background-color: #2589d0; content: ''; }
div.err404 .page-content .selectbox-2::after { position: absolute; top: 50%; right: 1.4em; transform: translate(50%, -50%) rotate(45deg); width: 6px; height: 6px; border-bottom: 3px solid #fff; border-right: 3px solid #fff; content: ''; }
div.err404 .page-content .selectbox-2 select { appearance: none; -webkit-appearance: none; -moz-appearance: none; min-width: 230px; height: 2.8em; padding: .4em 3.6em .4em .8em; border: 2px solid #2589d0; border-radius: 3px; color: #333333; font-size: 1em; cursor: pointer; }
div.err404 .page-content .selectbox-2 select:focus { outline: 1px solid #2589d0; }

/* inc_area.php */
div.page-area { margin:2% auto 0 auto; padding:3%; background:#f6f5f4; border-radius:10px; box-sizing:border-box; }
div.page-area h2 { margin:0; padding:6px 0 0 12px; font-weight:300; font-size:19px; height:23px; background: url("./img/tit_icon.png") no-repeat; background-position:0% 50%; }
div.page-area dl { margin:3% 0 0 0; padding:0; display:-webkit-flex; display:flex; flex-wrap:wrap; }
div.page-area dl dt { margin:0 0 1% 0; padding:0 0 1% 2%; width:15%; border-bottom:1px solid #fff; box-sizing:border-box; display:block; }
div.page-area dl dt h3 { margin:0; padding:0; font-size:13px; letter-spacing:1px; color:#333; font-weight:300; }
div.page-area dl dd { margin:0 0 1% 0; padding:0 0 1% 0; width:85%; border-bottom:1px solid #fff; display:block; }
div.page-area dl dd a { margin:0 10px; font-size:13px; letter-spacing:1px; font-weight:200; text-decoration:none; color:#1e6394; }
div.page-area ul { margin:3% 0 0 0; padding:0; display:block; }
div.page-area ul li { margin:0 0 2% 0; padding:0 0 2% 0; width:auto; border-bottom:1px solid #fff; box-sizing:border-box; display:block; }
div.page-area ul li h3 { margin:0 0 1% 0; padding:0; font-size:13px; letter-spacing:1px; color:#333; font-weight:300; }
div.page-area ul li a { margin:0 10px; font-size:13px; letter-spacing:1px; font-weight:200; text-decoration:none; color:#1e6394; }

/* 固定ページ */
div.divpage { margin:0 auto; padding:2% 0; width:95%; display:block; }
div.divpage h1 { margin:0 0 5% 0; padding:0 0 0 15px; font-weight:300; font-size:23px; letter-spacing:3px; line-height:130%; background: url("./img/tit_icon.png") no-repeat; background-position:0% 50%; }
div.divpage h2 { margin:0 0 1% 0; padding:0; font-weight:300; font-size:19px; color:#000; letter-spacing:3px; }
div.divpage p { margin:0 0 5% 0; padding:0; width:auto; font-size:15px; line-height:160%; letter-spacing:1px; color:#333; font-weight:200; }
div.divpage p a { font-size:14.5px; line-height:200%; font-weight:300; }
div.divpage .ppp { margin:0; padding:0; }
div.divpage .ppp ol { margin:0 0% 15px 3%; padding:0; box-sizing:border-box; }
div.divpage .ppp ol li { margin:0 0 3% 0; padding:0 0 2% 0; border-bottom:3px solid #f3f3f3; font-weight:500; font-size:20px; }
div.divpage .ppp ol li h3 { margin:0 0 1% 0; padding:0; font-weight:500; font-size:20px; }
div.divpage .ppp ol li h4 { margin:3.5% 0 1% 0; padding:0; font-weight:400; font-size:18px; }
div.divpage .ppp ol li p { margin:0 0 1% 0; }

/* お問い合わせフォーム */
div.form01 { margin:0 auto; padding:3%; width:100%; background:#f9f9f9; border-radius:10px; box-sizing:border-box; }
div.form01 div.form-group { margin:0 0 3% 0; padding:3%; background:#fff; border-radius:10px; }
div.form01 div.form-group label.tit { margin:0 0 12px 0; padding:0; font-size:18px; font-weight:200; color:#000; display:block; }
div.form01 div.form-group label.tit span { color:red; font-size:12px; }
span.horizontal-item { margin:0 2% 0 0; }
input[type="checkbox"] { position:relative; width:16px; height:16px; border:1px solid #555; border-radius:3px; vertical-align:-5px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
input[type="checkbox"]:checked:before { position: absolute; top: 1px; left: 4px; transform: rotate(50deg); width: 4px; height: 8px; border-right: 2px solid #000; border-bottom: 2px solid #000; content: ''; }
div.form01 div.form-group input.inp01 { margin:0; padding:2.3%; width:100%; box-sizing:border-box; border:1px solid #e1e1e1; font-size:13px; letter-spacing:2px; }
div.form01 div.form-group input.inp02 { margin:0; padding:2.3%; width:17%; box-sizing:border-box; border:1px solid #e1e1e1; font-size:13px; letter-spacing:2px; }
div.form01 div.form-group textarea.txtare { margin:0; padding:2.3%; width:100%; box-sizing:border-box; border:1px solid #e1e1e1; font-size:13px; letter-spacing:2px; }
div.form01 div.form-btn { margin:0 auto; padding:0; width:33%; text-align:center; display:block; }
div.form01 div.form-btn .fbut { display:inline-block; font-size: 13pt; text-align: center; cursor: pointer; padding:11px 57px; background: #999999; color: #ffffff; line-height: 1em; transition: .3s; border:2px solid #999999; }
div.form01 div.form-btn .fbut:hover { color background }
div.form01 p.rcp { margin:0 auto; padding:3% 0; width:60%; font-size:13px; text-align:center; }
.grecaptcha-badge { visibility: hidden; }

#Main div.side { margin:0 auto; padding:10px; width:350px; box-sizing:border-box; background:#fafafa; }
#Main div.side input { margin:0 auto -10px auto; padding:5px; width:100%; box-sizing:border-box; font-size:13px; border:1px solid #ccc; display:block; }
#Main div.side select { width:100%; }
#Main div.side .selectbox-2 { position: relative; margin:0 0 10px 0; display:block; }
#Main div.side .selectbox-2::before,
#Main div.side .selectbox-2::after { position: absolute; content: ''; pointer-events: none; }
#Main div.side .selectbox-2::before { right: 0; display: inline-block; width: 2.8em; height: 2.8em; border-radius: 0 3px 3px 0; background-color: #2589d0; content: ''; }
#Main div.side .selectbox-2::after { position: absolute; top: 50%; right: 1.4em; transform: translate(50%, -50%) rotate(45deg); width: 6px; height: 6px; border-bottom: 3px solid #fff; border-right: 3px solid #fff; content: ''; }
#Main div.side .selectbox-2 select { appearance: none; -webkit-appearance: none; -moz-appearance: none; min-width: 230px; height: 2.8em; padding: .4em 3.6em .4em .8em; border: 2px solid #2589d0; border-radius: 3px; color: #333333; font-size: 1em; cursor: pointer; }
#Main div.side .selectbox-2 select:focus { outline: 1px solid #2589d0; }
#Main div.side .widget { margin:0 auto 10px auto; padding:4%; width:100%; box-sizing:border-box; background:#ffcc00; border-radius:10px; }
#Main div.side .widget h3 { margin:0 0 15px 0; padding:5px; font-size:16px; font-weight:300; color:#000; text-align:center; background:#fff; border-radius:10px; }
#Main div.side .widget p { margin:0; padding:10px 10px 0 10px; font-size:13px; font-weight:200; }
#Main div.side .widget p b { font-size:30px; font-weight:500; }









footer { margin:0 auto; padding:0; width:auto; }

/* パンくずリスト */
.breadcrumb { margin:1% auto; padding:1% 2%; font-size: 14px; width:98%; border-bottom:1px solid #f1eeee; box-sizing:border-box; }
.breadcrumb a { text-decoration: none; color: #0073aa; }
.breadcrumb a:hover { text-decoration: underline; }













@media screen and (max-width: 800px) {
	header { border:none; }
	header h1 a { padding:10px 0 0 38px; background-position:0 50%; }
	.hamburger { top:13px; }
	.sp-nav { width:80%; }
	.sp-nav ul { width:90%; box-sizing:border-box; }
	.sp-nav ul li { margin:0; padding:2.5% 0; border-bottom:1px solid #efefef; }
	.sp-nav ul li h2 a:link { padding:3% 0; font-size:16px; color:#420000; }
	.sp-nav ul li h2 { padding:0; font-size:16px; color:#420000; }
	.sp-nav ul li h3 a:link { padding:2.3% 0 2.3% 10%; font-size:13px; }
	.sp-nav ul li h3 a:link span { display:inline; }	
	.sp-nav ul li input { margin:3% auto -10px auto; padding:5px; width:100%; box-sizing:border-box; font-size:13px; border:1px solid #ccc; display:block; }
	.sp-nav ul li select { width:100%; }
	.sp-nav ul li .selectbox-2 { position: relative; margin:0 0 10px 0; display:block; }
	.sp-nav ul li .selectbox-2::before,
	.sp-nav ul li .selectbox-2::after { position: absolute; content: ''; pointer-events: none; }
	.sp-nav ul li .selectbox-2::before { right: 0; display: inline-block; width: 2.8em; height: 2.8em; border-radius: 0 3px 3px 0; background-color: #2589d0; content: ''; }
	.sp-nav ul li .selectbox-2::after { position: absolute; top: 50%; right: 1.4em; transform: translate(50%, -50%) rotate(45deg); width: 6px; height: 6px; border-bottom: 3px solid #fff; border-right: 3px solid #fff; content: ''; }
	.sp-nav ul li .selectbox-2 select { appearance: none; -webkit-appearance: none; -moz-appearance: none; min-width: 230px; height: 2.8em; padding: .4em 3.6em .4em .8em; border: 2px solid #2589d0; border-radius: 3px; color: #333333; font-size: 1em; cursor: pointer; }
	.sp-nav ul li .selectbox-2 select:focus { outline: 1px solid #2589d0; }

	#Main { display:block; border:none; }
	#Main div.cont { margin:0 auto 1% auto; width:95%; border:none; }
	/* 投稿NPO記事ページ */
	#Main div.cont ul.listul { width:100%; }
	#Main div.cont ul.listul li { margin:0; padding:4% 1%; font-size:15px; }
	#Main div.cont ul.listul li:last-child { border:none; }
	#Main div.cont ul.listul li b { color:#000; font-size:16px; }
	#Main div.cont div.hdiv h1 { margin:0 0 5% 0; font-size:21px; line-height:130%; }
	#Main div.cont div.hdiv .favo { text-align:left; }
	#Main div.cont div.etct { margin:0 auto; width:100%; }
	#Main div.cont div.etct p.com { padding:3% 0; width:100%; font-size:16px; }
	#Main div.cont div.etct p.bunya { width:100%; margin:5% auto; padding:3%; }

	
	p.comment-form-comment { margin:0 0 7px 0; }
	div.comdiv { margin:0 auto; display:block; }
	div.comdiv p { margin:0 0 7px 0; padding:0; width:100%; }
	#Main div.cont div.hdiv img.wp-post-image { margin:0 auto; width:95%; height:auto; display:block; }
	#comments { padding:3%; }

	/* 404ページ */
	div.err404 { width:95%; padding:10% 0; }
	div.err404 img { width:80%; }
	div.err404 h1 { font-size:22px; }
	div.err404 h1 span { line-height:130%; }
	div.err404 .page-content { display:none; }

	/* inc_area.php */
	div.page-area {}
	div.page-area dl { display:block; }
	div.page-area dl dt { margin:0 0 1% 0; padding:0 0 1% 0; width:auto; border-bottom:none; }
	div.page-area dl dt h3 { font-weight:400; }
	div.page-area dl dd { margin:0 0 8% 0; width:auto; }
	div.page-area dl dd a { margin:0 4px; font-size:13px; line-height:140%; letter-spacing:0; }
	div.page-area ul li { margin:3% 0 0 0; padding:0 0 2% 0; }
	div.page-area ul li a { margin:0 10px; padding:5px 0; display:block; }
	div.page-area ul li h3 { font-size:13.5px; font-weight:400; }

	/* 固定ページ */
	div.divpage { margin:0 auto; padding:3% 0; width:auto; display:block; }
	div.divpage h2 { margin:50px 0 2% 0; font-weight:400; letter-spacing:1px; }
	div.divpage p { font-size:15px; }
	div.divpage .ppp ol { margin:0 0% 15px 9.5%; }
	div.divpage .ppp ol li { margin:0 0 5% -3%; padding:0 0 4% 0; }
	div.divpage .ppp ol li h3 { margin:10% 0 1% 0; }
	div.divpage .ppp ol li h4 { margin:7% 0 2% 0; padding:0; font-weight:400; font-size:18px; }
	div.divpage .ppp ol li p { margin:0 0 1% 0; }

	/* お問い合わせフォーム */
	
	span.horizontal-item { margin:0 0 3% 0; padding:0; display:block; }
	input[type="checkbox"]:checked:before { top:1px; left:0; }
	div.form01 div.form-group input.inp02 { width:23%; }
	div.form01 div.form-btn { width:80%; border:1px solid #fff; }
	div.form01 p.rcp { width:90%; }
	


	/* サイドページ */
	#Main div.side { padding:3%; width:auto; background:#fafafa; border:none; }
	#Main div.side input { margin:0 auto -7px auto; padding:2%; font-size:16px; }
	#Main div.side .widget h3 { padding:7px; font-size:17px; }
	#Main div.side .widget p b { font-size:35px; }
	#Main div.side .widget p { margin:0 auto; text-align:center; }

	footer { width:auto; background:#ece6e6; }
	.breadcrumb { padding:3% 2%; }
}


/* トップへ戻るボタン */
.back-btn { display:none; padding:2px 2px; font-size:35px; background-color:#fff; color:#333; text-decoration:none; border-radius:50%; position:fixed; bottom:13px; right:13px; opacity: 0; border:1px solid #ccc; visibility: hidden; }
.back-btn.active { opacity: 1; visibility: visible; display: block; }

.sns-icon { font-size: 20px; margin-right: 10px; color: #333; transition: color 0.3s; }
.sns-icon:hover { color: #1da1f2; }

