/*
 * 見た目の調整（1.1.0）：配置は今のサイトのまま、色・文字・線・余白だけを整えています。
 * この1ファイルを外すと、今のサイトとほぼ同じ見た目に戻ります（functions は inc/setup.php）。
 */
:root{
	--g:#5fa67f;      /* 協会の緑 */
	--gd:#2f6f52;     /* 濃い緑（見出し・文字） */
	--gl:#e9f4ee;     /* うすい緑（背景） */
	--ol:#7a9a35;     /* オリーブ（アクセント） */
	--ink:#3a4540;
	--sub:#6b7a73;
	--line:#d9e8df;
	--shadow:0 2px 10px rgba(30,70,50,.08);
}
body{color:var(--ink);font-family:"Noto Sans JP","Yu Gothic Medium","游ゴシック Medium",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;border-top:0;letter-spacing:.02em}
html{background:#2f6f52}
a{color:#3f8f66}
a:hover{color:var(--gd)}

/* ヘッダー */
#header{margin-top:0;background:#fff;border-top:5px solid transparent;border-image:linear-gradient(90deg,var(--g),var(--ol)) 1;box-shadow:0 1px 0 var(--line)}
.main_en a{display:inline-block;padding:3px 12px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--gd);background:#fff}
.main_en a:hover{background:var(--gl)}

/* スライド */
.wideslider .pagination button{border-radius:50%;width:10px;height:10px;margin:0 5px;background:#fff;opacity:.7;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.wideslider .pagination button.active{background:var(--g);opacity:1}

/* 本文 */
.PAN{font-size:13px;color:var(--sub)}
.PAN a{color:var(--sub);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.TE2 .ttl{min-height:0;margin:0 0 1.4em;padding:.55em .9em .55em 1em;border:0;border-left:6px solid var(--g);border-radius:0 6px 6px 0;background:var(--gl);font-size:20px;font-weight:700;line-height:1.6;color:var(--gd);letter-spacing:.04em}
.TE2 p.ttl{padding:.55em .9em .55em 1em;font-size:18px;line-height:1.6}
.TE2 h3,.TE2 .ttl3{margin:34px 10px 12px 0;padding:6px 4px 8px 14px;border-left:5px solid var(--g);border-bottom:1px solid var(--line);font-size:18px;font-weight:500;line-height:1.6;color:var(--gd)}
.TE2 .ttl3 a{color:var(--gd)}
.TE2 .ttl3 a:hover{color:var(--g)}
.TE2 h4.PC{color:var(--gd)}
.TE2 p{color:var(--ink)}
.TE2 hr{border-bottom:1px dashed var(--line)}
.TE2 img,section.content img{border-radius:4px}
.IMG,.IMG2,.IMG3,.IMG4,.IMG5,.IMG6,.IMG7,.IMG8,.IMG9{border-color:#e3ece7!important}
.YK1,.OTPT,.S8T{color:var(--gd);font-weight:700}
.YK4{color:var(--sub)}
.TI{color:var(--ink)}
.top-text{padding:6px 0 0}
.top-text .TI{font-size:16px;line-height:2.1}
.TE2 p.edit a{border-color:var(--line);background:#fff}

/* 左の一覧 */
.TE ul{border:0!important;border-radius:8px;overflow:hidden;box-shadow:var(--shadow);background:#fff}
.TE li{border:0!important;border-bottom:1px solid var(--line)!important}
.TE li:last-child{border-bottom:0!important}
.TE li:first-child:not(:has(a)){background:var(--g);color:#fff;font-weight:700;letter-spacing:.08em}
.TE li a{display:block;color:var(--ink);transition:background .15s}
.TE li a:hover{background:var(--gl);color:var(--gd)}
.TE li[aria-current],.TE li.is-current{background:var(--gl)}
.TE li.is-current a{color:var(--gd);font-weight:700;box-shadow:inset 4px 0 0 var(--g)}

/* 年の切り替え */
.year-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.year-nav a{display:inline-block;padding:4px 14px;border:1px solid var(--line);border-radius:999px;font-size:15px;background:#fff}
.year-nav a:hover{background:var(--gl)}
.year-nav span{font-weight:700;color:var(--gd)}

/* フッター */
#footer{background:linear-gradient(180deg,#4f9a73,#2f6f52)}
#footer hr{border-bottom-color:rgba(255,255,255,.35)}
#footer a:hover{color:#dff1e6}
.TF a{opacity:.95}

/* パソコン */
@media only screen and (min-width:960px){
	#mainBanner{border-top:0;border-bottom:0;height:0;margin-bottom:34px;box-shadow:0 -1px 0 var(--line)}
	.main_en{border-top:0;padding-top:10px}
	nav#mainNav ul a{padding:15px 8px 30px;color:var(--gd);position:relative;font-weight:500;letter-spacing:0}
	nav#mainNav ul span{color:#9aa8a1;font-weight:400}
	nav#mainNav ul li.active a,nav#mainNav ul a:hover{background:transparent;color:var(--g)}
	nav#mainNav ul a::after{content:"";position:absolute;left:8px;right:8px;bottom:12px;height:3px;border-radius:2px;background:var(--g);transform:scaleX(0);transition:transform .2s}
	nav#mainNav ul li.active a::after,nav#mainNav ul a:hover::after{transform:scaleX(1)}
	.TE li{padding:0;min-height:0;line-height:1.5}
	.TE li:not(:has(a)){padding:11px 14px}
	.TE li a{padding:11px 14px}
	.TE ul{width:190px}
	.TE li{width:auto}
}

/* タブレット・スマホ */
@media only screen and (max-width:959px){
	nav#mainNav{background:linear-gradient(90deg,var(--gd),var(--g))}
	nav#mainNav ul li a{background:var(--gd);border-bottom-color:rgba(255,255,255,.25)}
	nav#mainNav ul li.active a,nav#mainNav ul li a:hover{background:var(--g)}
	.TE ul{box-shadow:none;background:transparent;border-radius:0;overflow:visible}
	.TE li,.TE li:last-child{border:0!important;background:transparent!important}
	.TE li:first-child:not(:has(a)){background:transparent!important;color:var(--sub);font-weight:700}
	.TE li a{display:inline-block;padding:3px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px}
	.TE li.is-current a{background:var(--g);color:#fff;box-shadow:none;border-color:var(--g)}
	.TE2 .ttl{margin:12px 0 0;font-size:18px;padding:.5em .8em}
	.TE2 h3,.TE2 .ttl3{font-size:16px}
	.top-text .TI{font-size:15.5px}
}
