@charset "UTF-8";

/*
Theme Name: Original
*/


/*ーーーーーーーーーーーーーーーーーーーーーーーー
カスタムプロパティ
ーーーーーーーーーーーーーーーーーーーーーーーー*/

:root {
--color-main: #779509;
--color-main-hover: #50007A;
--color-bg: #ecf0e0;
--color-bg-hover: #faf6fc;
--transition: .25s;
}



/*ーーーーーーーーーーーーーーーーーーーーーーーー
css reset
ーーーーーーーーーーーーーーーーーーーーーーーー*/

*, *::before, *::after {
box-sizing: border-box;
}
body, h1, h2, h3, h4, h5, h6, p, figure, bloquote, dl, dd {
margin: 0;
}
html:focus-within {
scroll-behavior: smooth;
}
body {
min-height: 100vh;
line-height: 2;
-webkit-font-smoothing: antialiased;
}
input, button, textarea, select {
margin: 0;
padding: 0;
font: inherit;
}
button {
background: none;
border: none;
padding: 0;
}
img {
vertical-align: middle;
}
ul,li {
margin: 0;
padding: 0px;
list-style: none;
}

/*iPad調整用*/
@media screen and (min-width:744px) {
body {min-width:1100px;}
}
		@media screen and (max-width:743px) {
		body {
		line-height: 1.8;
		}
		/*smp end*/}



/*ーーーーーーーーーーーーーーーーーーーーーーーー
フォント
ーーーーーーーーーーーーーーーーーーーーーーーー*/

/* フォント基本
ーーーーーーーーーーーーーーーーーーーーーーーー */

html {
font-family:
"Hiragino Kaku Gothic ProN",
"Hiragino Sans",
"Meiryo",
"Yu Gothic UI",
sans-serif;
font-weight: 400;
font-size:18px;
}

		@media screen and (max-width:743px) {
		html {
		font-size:16px;
		}
		/*smp end*/}




/*文字マージン・行間
ーーーーーーーーーーーーーーーーーーーーーーーー*/

p {
margin-top:15px;
}
ul,ol,dl {
margin-top:15px;
}
li,dt,dd {
margin-top:5px;
line-height: 1.6;
}






/*ーーーーーーーーーーーーーーーーーーーーーーーー
リンク
ーーーーーーーーーーーーーーーーーーーーーーーー*/

/* リンク基本
ーーーーーーーーーーーーーーーーーーーーーーーー */

a {
font-weight: 600;
}
a:link,
a:visited {
text-decoration: underline;
color: var(--color-main);
}
a:hover,
a:active {
text-decoration: none;
color: var(--color-main-hover);
}

/* アンカーリンク余白 */
html {
scroll-padding-top: 50px;
}
		@media screen and (max-width:743px) {
		html {
		scroll-padding-top: 25px;
		}
		/*smp end*/}



/*リンク画像ロールオーバー(アルファ処理)
ーーーーーーーーーーーーーーーーーーーーーーーー*/

a img {
transition: opacity var(--transition) ease;
}
a:hover img {
opacity:0.60;
}





/*ーーーーーーーーーーーーーーーーーーーーーーーー
画像
ーーーーーーーーーーーーーーーーーーーーーーーー*/

img {
max-width:100%;
height:auto;
}





/*ーーーーーーーーーーーーーーーーーーーーーーーー
 全体レイアウト
ーーーーーーーーーーーーーーーーーーーーーーーー */

/*ヘッダー
ーーーーーーーーーーーーーーーーーーーーーーーー*/
#header {
width: 1000px;
margin: 0 auto;
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px 0px;
}

#header p,
#header ul,
#header ol,
#header li,
th p:first-child,
th ul:first-child,
th ol:first-child,
th dl:first-child,
td p:first-child,
td ul:first-child,
td ol:first-child,
td dl:first-child {
margin-top:0px;
}

#header .logo_color_naoya {
fill: var(--color-main);
}
#header a:hover .logo_color_naoya {
fill: var(--color-main-hover);
}

#header .boxa {
display:flex;
flex-wrap: wrap;
align-items:flex-end;
}
#header .boxa p:first-child {
width: 150px;
line-height: 0;
margin-right: 15px;
}
#header .boxa p:last-child {
font-size: 14px;
line-height: 1;
}
#header .boxb li {
margin-left: 30px;
font-size: 16px;
}
#header .boxb li:first-child {
margin-left: 0px;
}
#header ul.boxb {
margin: 0;
padding: 0px;
display: flex;
position: relative;
bottom: -8px;
}
#header .boxb a.current {
color: var(--color-main-hover);
}

#header .boxc {
display: none;
}


#hamburger_menu,
#hamburger_btn {
display: none;
}

/* PC版でハンバーガーメニューを完全非表示 */
@media screen and (min-width: 744px) {
	#hamburger_menu {
		display: none !important;
	}
}

		@media screen and (max-width:743px) {
		#header {
		width: auto;
		padding: 10px;
		}
		#header .boxa {
		display:block;
		width: auto;
		}
		#header .boxa p:first-child {
		width: 130px;
		}
		#header .boxa p:last-child {
		font-size: 10px;
		position: initial;
		bottom: initial;
		margin-top: 8px;
		}
		#header ul.boxb {
		display: none;
		}

		#hamburger_btn a {
		padding: 5px 20px;
		font-size: 14px;
		}

		/* ハンバーガーメニュー
		ーーーーーーーーーーーーーーーーーーーーーーーー */

		/* 基本設定 */
		#hamburger_menu,
		#hamburger_btn {
		display: block;
		}
		#hamburger_menu {
		position: fixed;
		top: 0;
		right: 0;
		width: 70%;
		height: 100vh;
		background: white;
		z-index: 99999;
		padding: 60px 20px 20px;
		transform: translateX(100%);
		transition: transform var(--transition) ease, opacity var(--transition) ease;
		}
		
		/* メニューが開いている状態 */
		#hamburger_menu.active {
		transform: translateX(0);
		}
		
		/* ハンバーガーメニュー内のul要素 */

		#header #hamburger_menu ul.boxb {
		display: block;
		border-top: dotted 1px #000;
		}
		#header #hamburger_menu ul.boxb li {
		margin: 0px;
		text-align: center;
		border-bottom: dotted 1px #000;
		}

		#header #hamburger_menu ul.boxb a {
		display: block;
		padding: 10px 10px;
		}

		
		/* 閉じるボタン */
		#hamburger_close {
		position: absolute;
		top: 20px;
		right: 20px;
		width: 30px;
		height: 30px;
		cursor: pointer;
		font-size: 40px;
		line-height: 30px;
		text-align: center;
		background: none;
		border: none;
		color: #000;
		}



		/* オーバーレイ背景 */
		.hamburger-overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: rgba(0,0,0,0.5);
		z-index: 1000;
		opacity: 0;
		visibility: hidden;
		transition: opacity var(--transition) ease, visibility var(--transition) ease;
		}
		
		.hamburger-overlay.active {
		opacity: 1;
		visibility: visible;
		}


		/*smp end*/}



/* パンくずリスト
ーーーーーーーーーーーーーーーーーーーーーーーー */
#pan {
display: flex;
background: var(--color-main);
padding: 20px 0px;
margin-top: 100px;
}
.contents + #pan,
.list_post + #pan {
margin-top: 0px;
}
#pan a,
#pan li {
font-size: 16px;
color: #fff;
margin-top: 0px;
text-decoration: none;
}
#pan a:hover {
color: var(--color-main-hover);
}

#pan li::after {
content: ">";
padding: 0px 5px;
}
#pan li:last-child::after {
content: none;
padding: 0px;
}
#pan ul {
width: 1000px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
}


		@media screen and (max-width:743px) {
		#pan {
		display: block;
		padding-right: 10px;
		padding-left: 10px;
		}
		#pan a,
		#pan li {
		font-size: 14px;
		}
		#pan ul {
		width: auto;
		}
		/*smp end*/}



/*フッター
ーーーーーーーーーーーーーーーーーーーーーーーー*/

#footer {
background: var(--color-main);
padding: 50px 0px;
margin-top: 1px;
}
#footer .seca {
width: 1000px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#footer .logo_color_naoya {
fill: #fff;
}
#footer a:hover .logo_color_naoya {
fill: var(--color-main-hover);
}
#footer .logo_color_site {
fill: #fff;
}
#footer a,
#footer li,
#footer p {
color: #fff;
font-size: 16px;
text-decoration: none;
}
#footer a:hover {
color: var(--color-main-hover);
}
#footer .boxa {
display: flex;
align-items: flex-end;
width: 100%;
line-height: 1;
}
#footer .boxa p:first-child {
width: 150px;
margin-right: 15px;
margin-top: 0px;
line-height: 0;
}
#footer .boxa p:last-child {
margin-top: 0px;
}
#footer .boxb,
#footer .boxc {
margin-top: 30px;
}
#footer .boxb a.current,
#footer .boxc a.current {
color: var(--color-main-hover);
}
#footer .boxb {
width: 15%;
}

#footer .boxc {
width: 85%;
padding-left: 20px;
box-sizing: border-box;
}




		@media screen and (max-width:743px) {
		#footer {
		padding: 50px 10px;
		}
		#footer .seca {
		width: auto;
		display: block;
		}
		#footer a,
		#footer li,
		#footer p {
		font-size: 14px;
		}
		#footer p {
		margin-top: 10px;
		}
		#footer .boxa {
		display: block;
		width: auto;
		}
		#footer .boxa p:first-child {
		width: 130px;
		margin-right: 0px;
		}
		#footer .boxa p:last-child {
		position: initial;
		bottom: initial;
		margin-top: 10px;
		}
		#footer .boxb {
		margin-top: 30px;
		}
		#footer .boxc {
		margin-top: 0px;
		}
		#footer .boxb,
		#footer .boxc {
		width: auto;
		padding-left:0px;
		}

		/*smp end*/}


/* コピーライト
ーーーーーーーーーーーーーーーーーーーーーーーー */

#copyright {
width: 1000px;
margin: 0 auto;
padding: 20px 0px;
text-align: right;
font-size: 14px;
}
		@media screen and (max-width:743px) {
		#copyright {
		width: auto;
		padding: 20px 10px;
		font-size: 12px;
		}
		/*smp end*/}


/*上に戻るボタン
ーーーーーーーーーーーーーーーーーーーーーーーー*/

#btn_gotop {
position: fixed;
bottom:70px;
right:20px;
cursor: pointer;
line-height: 0;
}
#btn_gotop svg {
width: 60px;
height: 60px;
}
.btn_gotop_circle {
fill: var(--color-main);
}
.btn_gotop_arrow {
stroke: white;
stroke-width: 5;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}

		@media screen and (max-width:743px) {
		#btn_gotop svg {
		width: 40px;
		height: 40px;
		}
		/*smp end*/}