@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');
/*英数字候補 Roboto Inter Lato(500なし)*/
@import url('https://fonts.googleapis.com/css2?family=Material+Icons');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@40,500,0,0');

/*カラー設定
--------------------------------------------------------------------*/
:root {
	--Bk00-c: #000;	/* 黒 */
	--Bk33-c: #333;	/* 黒 */
	--Gr66-c: #666;
	--Gr99-c: #999;
	--GrCC-c: #CCC;
	--GrDD-c: #DDD;
	--GrEE-c: #EEE;
	--GrF6-c: #F6F6F6;

	--Wt-c: #FFF;	/* 白 */

	--Main-c: #006633;	/* メインカラー 緑 */
	--Main3-c: #00994c;	/* メインカラー 黄緑2	ページトップ背景*/
	--Main4-c: #004C26;	/* メインカラー 濃	コピーライト*/
	--Main5-c: #003C88;	/* メインカラー 紺 	大項目 */

	--Sub-c: #CECE00;	/* サブカラー 金	小項目 */
	--Sub2-c: #FFFFE5;	/* サブカラー 金薄薄	tr交互 */
	--Sub3-c: #FFF6D1;	/* サブカラー 金薄	th */

	--SP01-c : #66CCCC;	/* 青緑 */
	--SP02-c : #ED7B90;	/* 中紅花 */
	--SP03-c : #44A828;	/* 緑 */

	--SP04-c : #FDF1F1;	/* 薄桜 */
	--SP05-c : #FEF9F0;	/* 薄黄 */
	--SP06-c : #FFBB00;	/* オレンジ */
	--SP07-c : #33cc00;	/* 黄緑 */
	--SP08-c : #32BAFF;	/* 空色 */
	--SP09-c : #ECB1C6;	/* 薄桃 */

	--SP10-c : #FFFFEB;	/* 薄黄 */
	--SP11-c : #F9F9F9;	/* 薄黄 */
	--SP12-c : #FFF8FF;	/* 薄黄 */

	--link-c: #3366FF;	/* リンク */
	--linkhover-c: #3366FF;	/* リンク */
	--hr-c: #CCC;

}

/*全体の設定
--------------------------------------------------------------------*/
* {
	box-sizing: border-box;
	margin:0;
	padding:0;
}

html {
	font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	line-height: 1.5;
	font-size: 18px;
	max-height: 999999px;
	color: var(--Bk33-c);
	scroll-behavior: smooth;
	scroll-padding-top: 70px;
}

body {
	min-width: 1240px;
	background-color: #ffffff;
	text-size-adjust: 100% !important;
	-webkit-text-size-adjust: 100% !important;/*Chrome,Safari*/
	-ms-text-size-adjust: 100% !important;/*EgdeMobile*/
	-moz-text-size-adjust: 100% !important;/*firefox*/
	background: var(--Wt-c);
	font-feature-settings: 'palt' 1;
	letter-spacing: -0.03;
}

input, select, textarea {
	font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 100%;
}



/*共通設定
--------------------------------------------------------------------*/
a {
	color: var(--link-c);
	text-underline-offset: 0.3em;
}

a:hover { 
	color: var(--linkhover-c);
}

a img:hover {
	opacity: 0.7;
}

.center {
	text-align: center;
}

hr {
	margin-top: 3rem;
	margin-bottom: 3.5rem;
	border-width: 0;
	border-top: 1px solid var(--hr-c);
}

p {
	margin-top: 0;
}

img {
	max-width:100%;
	height: auto;		/* 高さ自動 */
	vertical-align: top;	/* 下余白対策 */
}


ol, ul {
	padding-left: 0;
	margin-top: 0;
}

.f14 { font-size: 14px; }
.f16 { font-size: 16px; }
.f18 { font-size: 18px; }
.f20 { font-size: 20px; }
.f22 { font-size: 22px; }
.f24 { font-size: 24px; }
.f26 { font-size: 26px; }
.f30 { font-size: 30px; }
.f32 { font-size: 32px; }
.f48 { font-size: 48px; }
.fb4 {font-weight: 400; }
.fb5 { font-weight: 500; }
.fb7 { font-weight: 700; }

.ft-l { float:left; }
.ft-r { float:right; }


.cap {
	display: block;
	text-align: center;
	color :grey;
	font-size: 12px;
	text-decoration: none;
}

/* ファイル読込時にスライドイン　下から 
---------------------------------------------*/
.Headline{
	animation: SlideIn 5.2s;
}

@keyframes SlideIn {
	0% {
		opacity: 0;/*初期状態では透明に*/
		transform: translateY(100px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	 }
}

/* ファイル読込時にスライドイン　右から 
---------------------------------------------*/
.HeadlineX{
	animation: SlideInX 1.2s;
}

@keyframes SlideInX {
	0% {
		opacity: 0;/*初期状態では透明に*/
		transform: translateX(200px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	 }
}

/* スクロールで右からスライド 
---------------------------------------------*/
.scroll_boxX {
	transition: 1.2s ease;
	transform: translateX(200px);
	opacity: 0;
}

.scroll_boxX.on {
	transform: translateX(0);
	opacity: 1;
}

/* スクロールで下からスライド 
---------------------------------------------*/
.scroll_box {
	transition: 1.2s ease;
	transform: translateY(200px);
	opacity: 0;
}

.scroll_box.on {
	transform: translateY(0);
	opacity: 1;
}



/*ヘッダー border: solid 2px red; 
--------------------------------------------------------------------*/
header {/* border: solid 1px blue; */
	background-color: var(--Wt-c);
	position: relative;
	z-index: 400;
}

.container {
	margin: 0 auto;
	max-width: 1200px;
	position: relative;
}

.head {/* border: solid 1px blue; */
	/*display: flex;*/
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	height: 80px;
}

/*ロゴマーク*/
.header_lbox {/* border: solid 1px red; */
	position: absolute;
	display: inline-block;
	line-height: 1.2;
	margin: 8px 0 0 8px;
	height:auto;
}
/*ロゴマーク*/
.header_lbox img {
	height: 60px;
}

.header_rbox {/*border: solid 3px #EEE;*/
	position: absolute;
	bottom: 11px;
	right: 10px;
	padding: 0 0 0 0;
	text-align: right;
	height: 69px;
}

.header_rbox p:nth-child(1) {
	margin: 3px 0px 0px 0 ;
}

.header_rbox p:nth-child(2) {/*border: solid 1px blue;*/
	height: 40px;
	line-height: 48px;
	color: var(--Bk33-c);
	font-size: 17px;
}


.header_rbox p:nth-child(1) a {
	display: inline-block;
	font-size: 15px;
	color: var(--bk33-c);
	text-decoration: none;
	border: solid 1px var(--Gr66-c);
	padding: 2px 7px 2px 5px;
	margin: 0px 0px 0px 8px ;
	line-height: 23px;
}

.header_rbox p:nth-child(1) a:hover {
	background: var(--GrEE-c);

}

.header_rbox p a img {
	height: 22px;
}


/* スクロールヘッダー */
#headerwrap_fixed {
	position: fixed;
	z-index: 300;
	top:0;
	left:0;
	width: 100%;
	display: none;
	box-shadow: 0 2px 8px rgba(0,0,0,0.4);
}

/* メニュー
--------------------------------------------------------------------*/
.menu {
	position: relative;
	box-shadow: 0 2px 8px rgba(0,0,0,0.2);
	z-index: 100;
	background: var(--Main-c);
}

.menu nav {/* border: solid 1px orange; */
	margin: 0 auto;
	display:inline-block;
}

.menu .container {/* border: solid 1px orange; */
	text-align: center;
}


.menu nav ul {
	display: flex;
	list-style: none;
}

.menu nav li {
	margin-bottom: 0;
}

.menu nav li a {/*border: solid 1px red;*/
	width:170px;
	height:50px;
	position: relative;
	display: inline-block;
	line-height: 1.1;
	font-size: 18px;
	font-weight: 500;
	text-decoration: none;
	text-align: center;
	color: var(--Wt-c);
	padding: 0.85rem 0 0.5rem 0;
	transition: 0.5s;
}

.menu nav li a::after {
	position: absolute;
	bottom: 10px;
	left: 0;
	right: 0;
	margin: auto;
	content: '';
	width: 70%;
	height: 2px;
	background: var(--Main-c);
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.5s;
}

.menu nav li a:hover::after {
	transform: scale(1, 1);
}

.menu nav li a:hover {
	background: var(--Sub-c);
	color: var(--Main-c);
}

.menu nav li a span {/* border: solid 1px red; */
	font-size: 15px;
	font-weight: 400;
	color: ;
}

/* サブメニュー追加
--------------------------------------------------------------------*/
.gnav .mainmenu {
	overflow: visible;
}
.gnav .mainmenu > li {
	position: relative;
	overflow: visible;
}
.gnav .mainmenu .submenu {
	position: absolute;
	min-width: 100%;
	display: none;
	z-index: 9999;
}
.gnav .mainmenu li:hover .submenu {
	display: block;
}
.gnav .mainmenu .submenu li {
	background: var(--Main4-c);
	border-bottom: 1px solid var(--Main-c);
	opacity: 0.9;
}

.gnav .mainmenu .submenu li:last-child {
	border-bottom: none;
}


/* トップメイン画像
--------------------------------------------------------------------*/
.slide {
	position: relative;
	width: 100%;
	height: 38vw;
	overflow: hidden;
}

.slide div {
	z-index:10;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	animation: slider-img 21s linear infinite;
}

.slide span {
	z-index:11;
	white-space: nowrap;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: var(--Wt-c);
	line-height: 1.3;
	text-shadow: 3px 3px 8px rgba(0, 0, 0, 0.6);
	opacity: 0;
	animation: slider-text 21s linear infinite;	
}

.slide div:nth-of-type(2) {
	animation-delay: 7s;
}

.slide div:nth-of-type(3) {
	animation-delay: 14s;
}


/*3枚バージョン*/
@keyframes slider-img {
	0% {
		opacity: 0;
		transform: scale(1);
	}
	9.5% {
		opacity: 1;
	}
	33.3% {
		opacity: 1;
	}
	42.8% {
		opacity: 0;
		transform: scale(1.2);
	}
	100% {
		opacity: 0;
	}
}

/*==================================================
アニメーション計算
総秒数（21）=使用画像枚数（3）x1枚の表示時間（7）
フェードイン、フェードアウト時間（2）
0秒				0%
2秒	フェードイン		9.5% (2/21)
7秒	画像1枚の表示時間	33.3% (7/21)
9秒	フェードアウト、ズーム	42.8% (9/21)
21秒	非表示			100%
==================================================*/
/*==================================================
 テキスト部分アニメーション計算
総秒数（21）=使用画像枚数（3）x1枚の表示時間（7）
フェードイン、フェードアウト時間（1,0.4）
0秒				0%
1秒	フェードイン		4.8% (1/21)
7秒	画像1枚の表示時間	33.3% (7/21)
8秒	フェードアウト		38.0% (8/21)
21秒	非表示			100%
==================================================*/

.slide span:nth-of-type(2) {
	animation-delay: 7s;
}

.slide span:nth-of-type(3) {
	animation-delay: 14s;
}


/*3枚バージョン*/
@keyframes slider-text {
	0% {
		opacity: 0;
	}
	4.8% {
		opacity: 1;
	}
	33.3% {
		opacity: 1;
	}
	38.0% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}



/*メインコンテンツ
--------------------------------------------------------------------*/
main {
	margin: 2rem 0 5rem 0;
}

main .container {
	display: flex;
}

/* メイン 左BOX */
main .container .mainbox {
	width: 870px;
}

.mainbox section {/*border: solid 1px #eee;*/
	width: 870px;
	margin: 0 0 4rem 0;
	padding: 0;
	box-sizing: border-box;
}

.mainbox section h1 {
	margin: 0;
	padding: 0 0 3px 6px;
	font-size: 28px;
	font-weight: bold;
	color: var(--Main5-c);
	border-bottom:5px solid var(--Main5-c);
}

section h3 {
	margin: 1rem 0rem 0rem 0rem;
	padding: 0.5rem 1rem 0.5rem 1rem;
	background: var(--Sub-c);
	font-weight: 700;
	font-size: 20px;
	color: var(--Wt-c);
}

section h3:before {
	margin-right: 1rem;
	border-left: 10px solid var(--Wt-c);
	content: '';
}

section p {/*border: solid 1px #eee;*/
	margin: 1rem 0rem 0rem 0rem;
	text-align: justify;
	font-size: 18px;
}

section p br {
	display: block;
	content: "";
	margin: 0rem 0rem 1.5rem 0rem;
}

/* 更新情報 */
#news ul {
	margin: 0px;
	padding: 0px;
}

#news ul li {
	list-style-type: none;
	border-bottom: 1px dotted var(--Main5-c);
}

#news ul li a{
	color: var(--Bk33-c);
	display: block;
	padding: 10px 0 12px 14px;
	text-decoration: none;
	transition:all 0.5s ease;
	font-weight: normal;
}

#news ul li a:hover {
	background: var(--Sub3-c);
	color: var(--linkhover-c);
}


#news ul li:last-child {
	border-bottom: none;
}

/*続きを読む*/
/*===============================================================*/
.grad-wrap {
	position: relative;
}
.grad-wrap + .grad-wrap {
	margin-top: 40px;
}
.grad-btn {
	z-index: 2;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	margin: auto;
	padding: 5px 0;
	/*border-radius: 2px;*/
	/*background: #ccc;*/
	color: var(--Main5-c);
	font-size: 14px;
	text-align: center;
	cursor: pointer;
	transition: .2s ease;
	/*box-shadow: 0 0 3px rgba(0,0,0,.3);*/
	border-top:5px solid var(--Main5-c);
}
.grad-btn::after {
	content: "▼ すべてを見る"
}
.grad-btn:hover {
	/*background: #fff;*/
	color: var(--Main5-c);
}
.grad-btn .fa {
	/*margin-right: .5em;*/
}
.grad-item {
	position: relative;
	overflow: hidden;
	height: 382px;		/*ニュース6行分-見える行のたてサイズ*/
}
.grad-item p + p {
	margin-top: 1em;
}
.grad-item::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 30px;
	background: #fff;
}
.grad-trigger {
	display: none;
}
.grad-trigger:checked ~ .grad-btn {
	bottom: -34px;
}
.grad-trigger:checked ~ .grad-btn::after {
	content: "▲ 閉じる";
}
.grad-trigger:checked ~ .grad-btn .fa {
	transform: rotate(180deg);
}
.grad-trigger:checked ~ .grad-item {
	height: auto;
	margin-bottom: 30px;
}
.grad-trigger:checked ~ .grad-item::before {
	display: none;
}
/*===============================================================*/
/*続きを読む*/


article {
	margin: 0 2rem 0 2rem;
}


/* 更新情報 */
#gaiyo {

}

/* 理事長あいさつ */
#gaiyo #rijicho p img {
	width: 180px;
	float:right;
	margin: 0 0 1rem 1rem;
}

#gaiyo #rijicho p span {
	display: block;
	text-align:right;
	float: right;
	height: 100px;
	margin: 2rem 0rem 0rem 0rem;
}

#gaiyo #rijicho p span br {
	display: block;
	content: "";
	margin: 0rem 0rem 0rem 0rem;
}

/* 共通 テーブル*/
#gaiyo table,
#schedule table,
#affiliat table,
#support table,
#jgrapro table {
	width:100%;
	border-collapse:collapse;
	border: 1px solid var(--GrCC-c);
}

#gaiyo table th,
#schedule table th,
#affiliat table th,
#support table th,
#jgrapro table th {
	text-align: center;
	background: var(--Sub3-c);
	padding: 12px 12px 12px 12px;
	border: 1px solid var(--GrCC-c);
	font-weight: normal;
}

#gaiyo table td,
#schedule table td,
#affiliat table td,
#support table td,
#jgrapro table td {
	padding: 12px 12px 12px 12px;
	border: 1px solid var(--GrCC-c);
}



/* 沿革 */
#gaiyo #enkaku table td.nen {
	width:170px;
	padding: 12px 0px 12px 12px;
}

#gaiyo #enkaku table td.month {
	width:70px;
	text-align: right;
}

#gaiyo #enkaku table td.naiyo {

}



/* 役員 */
#gaiyo #yakuin table td.yakushoku {
	width:150px;
}

#gaiyo #yakuin table td.name {
	width:180px;
	text-align: center;
}

#gaiyo #yakuin table td.chiiki {
	width:140px;
	text-align: center;
}



/* 組織概要 */
#gaiyo #soshiki th {
	width: 160px;
	background: var(--Sub3-c);
}


/* 行事日程 */
#schedule {

}

#schedule table th:nth-child(1) {
	width: 1.4rem;
}

#schedule table th:nth-child(2) {
	width: 17rem;
}


#schedule table th:nth-child(3) {
	width: 11.6rem;
}

#schedule table td:nth-child(1) {
	width: 0.7rem;
	text-align: center
}

#schedule table td:nth-child(2) {
	width: 0.7rem;
	text-align: center
}

#schedule table tr.db {
	border-top: double 3px  var(--GrCC-c);
}





/* 加盟会員 */
#affiliat {

}

/* 加盟会員名簿 */
#affiliat #list table th:nth-child(n+3) {
	font-size: 16px;
	line-height: 1.2;
	padding: 4px 4px 4px 4px;
}

#affiliat #list table tr:nth-child(4n+4),
#affiliat #list table tr:nth-child(4n+5) {
	background: var(--Sub2-c);
}

#affiliat #list table td {
	text-align: center;
	padding: 6px 12px 4px 12px;
}

#affiliat #list table .td1 {
	border-bottom: 1px solid var(--Wt-c);
	width:80px;
	background: var(--Wt-c);
}

#affiliat #list table .td2 {
	text-align: left;
	font-size: 20px;
	font-weight: bold;
}

#affiliat #list table .td2 a {
	color: var(--Bk33-c);
	text-decoration: none;
}

#affiliat #list table .td2 a:hover {
	color: var(--linkhover-c);
	text-decoration: underline;
	text-underline-offset: 0.3em;
}

#affiliat #list table .td2 span {
	font-size: 26px;
	line-height: 26px
	color: var(--Bk33-c);
	vertical-align: -6px
}

#affiliat #list table .td3 {
	width: 66px;
}

#affiliat #list table .td4 {
	width: 66px;
}


#affiliat #list table .td5 {
	width: 66px;
}

#affiliat #list table .td6 {
	width: 66px;
}

#affiliat #list table .td7 {
	background: var(--Wt-c);
	border-bottom: 1px solid var(--Wt-c);
}

#affiliat #list table .td8 {
	text-align: left;
	border-bottom: 3px double var(--GrCC-c);
	padding: 0px 0px 0px 2rem;
}

#affiliat #list table .td8 span {
	font-size: 22px;
	line-height: 22px
	color: var(--Bk33-c);
	vertical-align: -4px
}

#affiliat #list table .double {
	border-bottom: 3px double var(--GrCC-c);
}

#affiliat #list table .last {
	border-bottom: 1px solid var(--GrCC-c);
}

/* 入会方法 */
#affiliat #join p {
	margin: 1rem 1rem 0rem 1rem;
}

#affiliat #join p span {/*border: 1px solid red;*/
	display: inline-block;
	margin: 0rem 0rem 1rem 3rem;
}

#affiliat #join br.br {
	display: block;
	content: "";
	margin: 0rem 0rem 1rem 0rem;
}

#affiliat #join br {
	display: block;
	content: "";
	margin: 0rem 0rem 0rem 0rem;
}

#affiliat #join p span.h0 {/*border: 1px solid red;*/
	display: inline-block;
	margin: 0rem 0rem 1rem 3rem;
}

#affiliat #join span.h1 {/*border: 1px solid red;*/
	display: inline-block;
	width:6rem;
	margin: 0rem 0rem 0rem 2rem;
}

#affiliat #join span.h2 {/*border: 1px solid red;*/
	display: inline-block;
	width:6rem;
	margin: 0rem 0rem 0rem 1rem;
}

#affiliat #join span.h3 {/*border: 1px solid red;*/
	display: inline-block;
	width:5rem;
	margin: 0rem 0rem 0rem 1rem;
	text-align: right;
}


#affiliat #join span.h4 {/*border: 1px solid red;*/
	display: inline-block;
	width: 166px;
	margin: 0rem 0rem 0rem 1rem;
}

#affiliat .newmark {
	display: inline-block;
	font-size: 14px;
	text-align: center;
	color: #ffff33;
	background: red;
	line-height:1;
	padding: 1px 7px 4px 7px;
	border-radius: 3px;
	margin: 0 0 0px 5px;
}


/* 賛助会員 */
#support {

}

/* 入会方法 */
#support #join p {
	margin: 1rem 1rem 0rem 1rem;
}

#support #join p span {/*border: 1px solid red;*/
	display: inline-block;
	margin: 0rem 0rem 1rem 3rem;
}

#support #join br.br {
	display: block;
	content: "";
	margin: 0rem 0rem 1rem 0rem;
}

#support #join br {
	display: block;
	content: "";
	margin: 0rem 0rem 0rem 0rem;
}


/* プロ研修会 */
#jgrapro {

}

/* 会員名簿 */

#jgrapro #list table tr td.td2,
#jgrapro #list table tr td.td3 {
	padding: 6px 12px 4px 12px;
	background: var(--Wt-c);
}

#jgrapro #list table tr:nth-child(odd) td.td2,
#jgrapro #list table tr:nth-child(odd) td.td3 {
	background:var(--Sub2-c);
}

#jgrapro #list table .td1 {
	width:200px;
	text-align: left;
	border-bottom: 1px solid var(--Wt-c);
}

#jgrapro #list table .td2 {
	text-align: left;
	width: 200px;
}

#jgrapro #list table .td2 img {
	width: 28px;
	height: 28px;
	margin: 0px 0px 0px 3px;
}

#jgrapro #list table .td3 {
	text-align: left;
}

#jgrapro #list table .btm1 {
	border-bottom: 1px solid var(--GrCC-c);
}

/* 行事日程 */
#jgrapro #nittei table th:nth-child(1) {
	width: 6rem;
}

#jgrapro #nittei table th:nth-child(2) {
	width: 10rem;
}

#jgrapro #nittei table th:nth-child(3) {
	width: 12rem;
}

#jgrapro #nittei table th:nth-child(4) {
	width: 6rem;
}

/* 入会方法 */
#jgrapro #join p {
	margin: 1rem 1rem 0rem 1rem;
}

#jgrapro #join p span {/*border: 1px solid red;*/
	display: inline-block;
	margin: 0rem 0rem 1rem 3rem;
}

#jgrapro #join br.br {
	display: block;
	content: "";
	margin: 0rem 0rem 1rem 0rem;
}

#jgrapro #join br {
	display: block;
	content: "";
	margin: 0rem 0rem 0rem 0rem;
}

#affiliat a.form,
#support a.form,
#jgrapro a.form {
	line-height:1.8;
}






/* お問合せ */

#Contact {
	background: var(--Wt-c);
}

#contact .ifm {
	margin: 2rem 0 2rem 0;
	width: 90%;
	min-height: auto;	/* 高さ指定しないと全て表示されない */
	margin: 0 auto;
}

#contact .ifm iframe {
	/*overflow-y: auto;
	-webkit-overflow-scrolling: touch;*/
	border: none;
	/*height: 480px;*/
	width: 100%;
}

#contact p.sentence {/*border: solid 1px orange;*/
	width: 90%;
	margin: 2rem auto;
	margin-top: -10px;
}










/* メイン 右BOX
--------------------------------------------------------------------*/
main .container .subbox {/*border: solid 1px red;*/
	width: 300px;
	margin:0 0 0 30px;
	
}

/* JGRAリンク */
.jgra {
	height: 70px;
	display: block;
	vertical-align:middle;
	font-size:16px;
	color: #00712c;
	font-weight: bold;
	margin-bottom: 10px;
	padding: 14px 7px 2px 10px;
	line-height: 1.1;
	text-decoration: none;
	border: 3px solid #00712c;
	border-radius: 6px;
	transition:all 0.5s ease;
}

.jgra img {
	width: 30%;
	float: left;
	position: relative;
	margin: -5px 7px 0px -3px;
}

.jgra:hover {
	color: #00712c;
	opacity: 0.6;
}

.jgranews {
	display: block;
}

.jgranews img {
	margin-top: 4px;
	display: block;
	width: 100%;
	height: auto;
}

sideimg {
	display: block;
	width: 100%;
}


.poster img {
	width: 100%;
	margin: 0px 0px 0px 0px;
}

a.poster {/*border: solid 1px red;*/
	width: 48%;
	display: inline-block;
}

.sideimg img {
	width: 100%;
	margin: 0px 0px 0px 0px;
}

a.sideimg {/*border: solid 1px red;*/
	width: 100%;
	display: inline-block;
}

/*行事・事業計画　表示切替*/
.slide-btn {
	width: 100%;
	margin: 0;
	border: none;
	cursor: pointer;
}

.slide-btn:first-letter {
	font-weight: bold;
	margin-right: 2px;
}

.slide-contents {
	display: none;
}













/* ページトップへ
--------------------------------------------------------------------*/
.pagetop {
	display: none;
	position: fixed;
	bottom: 5px;
	right: 5px;
	border-radius: 50%;
	height: 100px;
	width: 100px;
	text-decoration: none;
	background-color: var(--Main3-c);
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
	transition:all 0.6s;
	cursor: pointer;
	z-index: 8000;
}

.pagetop span {
	display: block;
	line-height: 1;
	font-size: 22px;
	font-weight: 500;
	text-align: center;
	color: var(--Wt-c);
	text-decoration: none;
	margin: 0.1rem 0 0 0;
	padding: 0 0 0 0;
}

.pagetop span:first-child {
	font-size: 40px;
}

.pagetop:hover {
	color: var(--Wt-c);
	background-color: red;
}


/* フッター
--------------------------------------------------------------------*/
footer {
	background-color: var(--Main-c);
	color: var(--Wt-c);
	padding: 35px 0 35px 0;
}

footer .container {/*border: solid 1px red;*/
	margin: 0 auto;
	max-width: 1200px;
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	justify-content: center;
}

/* 左①ロゴ ボックス*/
footer .ft-logo {/*border: solid 1px #ccc;*/
	display: inline-block;
	height: auto;
	margin: 0 1rem 0 0;
}

footer .ft-logo img {
	width: 132px;
}

/* 左②社名 ボックス*/
footer .ft-company {/*border: solid 1px blue;*/
	width: 500px;
	display: inline-block;
	text-align: left;
	margin: 0 0 0 1rem;
}

footer .ft-company img {
	width: 406px;
	margin-left: -8px;
}

footer .ft-company h3 {
	font-size:18.8px;
	line-height: 1.3;
	margin: 0.3rem 0 0 0;
}

footer .ft-company p {/*border: solid 1px red;*/
	margin: 1rem 0 0 1.4rem;
	line-height: 1.6;
	font-size:18px;
	font-wight:normal;
}

footer .ft-company p a {
	color: var(--Wt-c);
	display: inline;
	text-decoration: none;
}

footer .ft-company p a:hover {
	color: var(--Sub-c);
	text-decoration: underline;
	text-underline-offset: 0.2em;
}



/* 左③その他 ボックス*/
footer .ft-other {/*border: solid 1px blue;*/
	display: inline-block;
	width: 320px;
	font-size: 18px;
	text-align: left;
	margin: 0 0 0 1rem;
}

footer .ft-other ul li a {
	color: var(--Wt-c);
	text-decoration: none;
}

footer .ft-other ul li a:hover {
	color: var(--Sub-c);
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

footer .ft-other ul {
	margin: 0 0 0 2rem;
}



/* 下④メニュー ボックス*/
footer .ft-menu {/*border: solid 1px blue;*/
	width: 100%;
	text-align: center;
	margin: 2rem 0 0 0;
	border-top: solid 1px var(--Wt-c);
	border-bottom: solid 1px var(--Wt-c);
}

footer .ft-menu ul {/*border: solid 1px red;*/
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 0 0.3rem 0;
}

footer .ft-menu div li {

}

footer .ft-menu li a {/*border: solid 1px red;*/
	position: relative;
	display: inline-block;
	line-height: 1.2;
	font-size: 18px;
	font-weight: 500;
	text-decoration: none;
	padding: 8px 1vw 5px 1vw;
	text-align: center;
	color: var(--Wt-c);
}

footer .ft-menu li a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	content: '';
	width: calc(100% - 2vw);
	height: 2px;
	background: var(--Sub-c);
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.3s;
}

footer .ft-menu li a:hover::after {
	transform: scale(1, 1);
}

footer .ft-menu li a:hover {
	color: var(--Sub-c);
}



/* コピーライト
--------------------------------------------------------------------*/
.copyright {
	text-align: center;
	padding: 0.8rem 0;
	background-color: var(--Main4-c);
}

.copyright a {
	color: var(--Wt-c);
	text-decoration: none;
	display: inline-block;
}


