/* IMPORT CSS */
@import url("grid.css");

img {
	max-width:100%;
	height: auto;/*高さ自動*/
}

/* リンク
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
    display:inline-block;
    color: #88641a;
    text-decoration: none;
	word-break: break-word;
}
a:hover { 
    color: #999;
	text-decoration: underline;
}
a img:hover {
	opacity: 0.8;
}

/*-------- 見出しデザイン --------*/
.midashi_design01 {
    padding: .5em 1em;
    margin-bottom: 1.5em;
    background-image:linear-gradient(#1c926a 50%, #c4a54b 50%);
    background-repeat: no-repeat;
    background-size: 0.25em 100%;
    font-weight: bold;
	border-left: none!important;
}

.blueback {
	background-color: #003399;
	color: #fff;
	padding: 1rem;
}
.underline {
	border-bottom: 3px solid #003399;
	padding-bottom: 0.5rem;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.border {
	border: 1px solid #dee2e6;
}
.shadow-sm {
	box-shadow: 0 .125rem .25rem rgba(0,0,0,.075);
}
.bg-white {
	background-color: #fff;
	padding: 5rem 0;
}.bg-light {
	background-color: #f8f9fa;
	padding: 5rem 0;
}
.bg-lightgreen {
	background-color: #e6ede9;
	padding: 5rem 0;
}
.bg-gold {
	background-color: #fefcf2;
	padding: 5rem 0;
}
.bg-yellow {
	background-color: #fffcf3;
	padding: 5rem 0;
}
.red {
	color: #c00;
}

/*スキップ
-------------------------------------*/
.blockskip a{
    height: 0;
    display:block;
    text-align: center;
	overflow: hidden;
}
.blockskip a:focus{
	height: auto;
	line-height: 3em;
}

/*ヘッダー
-------------------------------------*/
.head {
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 1rem 0;
}

/*.head h1 { 
    padding: 1rem 0;
}*/
.logo {
	margin-left: auto;
	padding: .5rem 0 0 0;
}
.logo img {
	width: 270px;
}
.logo a {
	text-decoration: none;
}
.logo span {
	display: block;
	background: #fff;
	padding: 5px;
	text-align: center;
	border: 1px solid rgba(0,0,0,.125);
	border-radius: .5rem;
	width: 8em;
	margin: 0 0 0 auto;
}
.logo span:hover {
	background: #ede7dd;
}
.menu {
	background: #ffffff;
	background: -moz-linear-gradient(top,  #ffffff 0%, #f0f0f0 100%);
	background: -webkit-linear-gradient(top,  #ffffff 0%,#f0f0f0 100%);
	background: linear-gradient(to bottom,  #ffffff 0%,#f0f0f0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f0f0f0',GradientType=0 );
	box-shadow: 0 0 3px rgba(0,0,0,.3);
}
nav ul {
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    justify-content: space-around;
    list-style: none;
	margin-bottom: 0;
}
nav li {
	-webkit-box-flex:1 0 auto;
	-ms-flex:1 0 auto;
	flex: 1 0 auto;
	margin-bottom: 0;
}
nav li a {
    text-decoration: none;
    text-align: center;
	color: #333;
	border-bottom: 0.3rem solid #f0f0f0;
}
nav a {
    padding: 2rem 1rem;
	display: block;
}
nav .sp_en a {
	padding: 0.2em;
}
/*nav a:hover, nav a:focus, nav li.on a {
	border-bottom: 0.3rem solid #88641a;
	text-decoration-line: none;
	font-weight: 600;
	color: #333;
}*/

/*グローバルナビ　第1階層 左からg01-ｇ06*/
nav a:hover, nav a:focus, 
body.g01 nav ul li.gn01 a, body.g02 nav ul li.gn02 a, body.g03 nav ul li.gn03 a,
body.g04 nav ul li.gn04 a, body.g05 nav ul li.gn05 a, body.g06 nav ul li.gn06 a {
	border-bottom: 0.3rem solid #88641a;
	text-decoration-line: none;
	font-weight: 600;
	color: #333;
}


/*-------- サイトタイトル --------*/
/*最小値*/
h1.pagetitle a, p.pagetitle a {
	font-family: "Kakumin Regular";
	color: #a68555;
	font-size: 1.7rem;
	display: block;
	margin: 2.5rem 0 1rem;
	text-decoration: none;
}
h1.pagetitle {
	border-left:none;
	padding:0;
	letter-spacing: 0;
	margin-bottom: 2.5rem;
}
h1.pagetitle a {
	line-height: 1.6;
}


@media (min-width: 640px) {
	h1.pagetitle a, p.pagetitle a {
		font-size: 24px;/* IE8以下とAndroid4.3以下用 */
		font-size: calc(2rem + ((1vw - 0.64rem) * 0.7143));/* 20px~24pxで可変*/
	}
	div.sp_en {
	display: none;
	}
}
@media (min-width: 1200px) {
/*最大値*/
	h1.pagetitle a, p.pagetitle a {
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 647px) {
	h1.pagetitle a, p.pagetitle a {
		width: 14em;
		margin: 1rem 0 .5rem;
	}
	h1.pagetitle {
	margin-bottom: 0;
	}
	div.sp_en {
	background: aliceblue;
	padding: 5px;
	text-align: center;
	border: 1px solid rgba(0,0,0,.125);
	border-radius: .5rem;
	width: 8em;
	margin: .8em auto;
	}
}
/* サイトタイトル END */

@media screen and (min-width: 480px){
/* PC時はMENUボタンを非表示 */
#open,#close {
    display: none !important;
}

#navi {
    display: block !important;
}
}

@media screen and (max-width: 480px){
	.head {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		text-align: left;
		padding: 1rem 0 0;
	}
	.logo, .logo span {
		display: none;
	}
	.head #open,#close  {
		position: absolute;
		top: 20px;
		right: 12px;
		}
	nav ul {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	nav li {
		padding-top: 0;
		border-bottom: 1px solid #ccc;
		margin-bottom: 0;
	}
	/* スマホ時はMENUボタンを表示 */
	#open,#close  {
		display: block;
		width: 50px;
		border: none;
		position: absolute;
		top: 20px;
		right: 12px;
	}
	/* スマホ時はメニューを非表示 */
	#navi {
		display: none;
	}
	nav li a {
	border-bottom: none;
}
}


/*メインコンテンツ
-------------------------------------*/
main {
    margin: 0 0 0 0;
}
h1 {
	border-left: 0.6rem solid #c4a54b;
	padding: 0 0 0 1rem;
	margin-bottom: 6rem;
}
h2 {
	border-bottom: solid 0.3rem #c4a54b;
	position: relative;
	padding-bottom: 0.8rem;
	margin: 5rem 0 2rem 0;
}

h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 0.3rem #1c926a;
/*	bottom: -0.3rem;*/
	width: 20%;
	padding-bottom: 0.8rem;
}
h3 {
	position: relative;
	padding-left: 2.3rem;
}

h3:after {
	position: absolute;
	top: 50%;
	left:0;
	transform:translateY(-50%);
	content: '';
	width: 1.7rem;
	height:1.7rem;
	border: solid 0.4rem #1c926a;
	border-radius:100%;
}


/*------------------ボックス-------------------------------*/
.card {
	padding: 1.5rem;
	border: 1px solid rgba(0,0,0,.125);
	border-radius: .5rem;
}

.b_link a {
	background-color: #fff;
	text-decoration-line: none;
	color: #333;
	display: block;
}
.b_link a:hover, .b_link a:focus {
	background-color: #fcf9ed;
    color: #a8802c;
}

.card h3 {
	padding-left: 0;
}
.card h3:after {
	border: none;
}

/*------------------アイコン-------------------------------*/
.icon_pdf:after {
	margin: 0 0.3rem;
	font-family: "Font Awesome 5 Free";
	content: '\f1c1';
	color: #c00;
}
.icon_word:after {
	margin: 0 0.3rem;
	font-family: "Font Awesome 5 Free";
	content: '\f1c2';
	color: #2a5599;
}
.icon_excel:after {
	margin: 0 0.3rem;
	font-family: "Font Awesome 5 Free";
	content: '\f1c3';
	color: #207244;
}
.icon_zip:after {
	margin: 0 0.3rem;
	font-family: "Font Awesome 5 Free";
	content: '\f1c6';
	color: #88641a;
}

.nofollow:after {
	margin: 0 0.3rem;
	font-family: "Font Awesome 5 Free";
	content: '\f35d';
	color: #88641a;
	font-weight: 900;
}

.end {
	color:#fff;
	font-weight:bold;
	font-size:.714em;
	padding:0 1.5em .3em;
	margin-right:8px;
	background-color: #666;
	display: inline-block;
	line-height: 1.6em;
}


/*------------------インフォメーション-------------------------------*/
dl.info dt {
	background: #faf5e9;
	font-weight: bold;
	border-bottom: 0.1rem solid #a8802c;
	padding:1rem;
	margin: 2rem 0;
}
dl.info dd {
	padding:1rem;
}

/*------------------リスト-------------------------------*/
main ul {
	margin-bottom: 0;
}
main ul li{
	position: relative;
	padding-left: 1.2em;
	margin-bottom: .5em;
}

main ul li:before {
	position: absolute;
	top: .6em;
	left: .4em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: #88641a;
	content: "";
}
main ul.name li:before {
	top: 1em;
}
.name span {
	font-size: 2.2rem;
}
.name span.day {
	font-size: 2.0rem;
	display: inline-block;
}
main ul li > ul{ margin-top: .25em;}
main ul li > ul li:before {
	top: 5%;
	left: 0;
	color: #88641a;
	content: "〇";
	background-color: transparent;
	font-size: 90%;
}

main ul.style_none {
	margin-left: -1.6rem;
}

main ul.style_none li:before {
	content: none;
}

/* -- 注釈リスト -- */
main ul.caution, main ul.caution2 {
	list-style: none;
	padding-left: 0em;
}
main ul.caution li, main ul.caution2 li, main ul.maru_list li {
		padding-left: 1.5em;
}
main ul.caution > li::before {
	background:none;
	counter-increment: caution;
	content: "※";
	font-family: "メイリオ";
	top: .15em;
}
main ul.caution2 > li::before {
	background:none;
	counter-increment: caution;
	content: "＊";
	top: .15em;
}


/*------------------ボタン-------------------------------*/
a.btn, input.button{
	display:block;
	border:0.1rem solid #a8802c;
	background: #E9DFCA;
	color:#333;
	text-align:center;
	text-decoration: none;
	padding: 1rem;
}
a.btn:hover, input.button:hover{
	background: #FCFBF9;
}

/*------------------パンくずリスト-------------------------------*/
.bg-breadcrumbs {
  background: #fffcf3;
}
.breadcrumbs {
  margin: 0;
  padding: 1rem;
  list-style: none;
  overflow: hidden;
  display: inline-block;
}

.breadcrumbs li {
  list-style: none;
  display: inline;
	margin: 0;
}

.breadcrumbs li:after {
  /* >を表示*/
	font-family: "Font Awesome 5 Free";
	content: '\f105';
	padding: 0 0.4em;
	color: #333;
	font-weight: 900;
}

.breadcrumbs li:last-child:after {
  content: '';
}

.breadcrumbs li a {
  text-decoration: none;
  color: #88641a;
}

.breadcrumbs li:first-child a:before {/*家アイコン*/
  font-family: "Font Awesome 5 Free";
  content: '\f015';
  font-weight: 900;
  font-size: 1.1em;
}

.breadcrumbs li a:hover {
  text-decoration: underline;
}
.breadcrumbs li em {
	font-style:normal;
	color: #333;
}

/*フッター
-------------------------------------*/
footer {
/*	background-color: #f4efdb;
	padding: 4rem 0 3rem;*/
	background-color: #fff;
	padding: 4rem 0;
	color: #333;
}
.footer-menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: auto;
	color: #333;
}
.footer-menu-item {
	width: 20%;
}
li.footer-menu-item {
	font-weight: bold;
}
li.footer-menu-item > a{
	color: #88641a;
	display: block;
}
li.footer-menu-item li {
	font-size: 90%;
	font-weight: normal;
}
li.footer-menu-item li a {
	color: #333;
}
.toiawase{
	font-size: 1.1em;
	display: block;
}
#management {
	margin: 3rem 0;
	font-size: 2rem;
	text-align: center;
}
#management a {
	color: #333;
}
@media screen and (max-width: 480px){
	footer {
/*		padding: 0;*/
	}
	.footer-menu-item {
		width: 100%;
	}
	li.footer-menu-item a {
		border-bottom: solid 1px #88641a;
		padding: 1.5rem 0;
		text-align: center;
	}
	li.footer-menu-item > a.sp_non {
		display: none;
	}
	#management {
		font-size: 1.5rem;
	}
}
/*コピーライト
-------------------------------------*/
.copyright {
	color: #fff;
	text-align: center;
	padding: 1rem 0;
	background-color: #88641a;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background: #88641a;
    color: #fff;
    width: 50px;
    padding: 10px 5px;
    text-align: center;
}
#pagetop a:hover {
    background: #bd8b24;
}


/*アコーディオン
-------------------------------------*/
h2.accordion {
	position: relative;
	background-color: #fff9e7;
	padding: 1rem;
}
h2.accordion:after {
	border-bottom: none;
}
h2 button {
	border: none;
	margin-bottom: 0;
	text-align: left;
	width: 100%;
	padding-right: 2em;
}

h2 button[aria-expanded="false"]::after {
	font-family: "Font Awesome 5 Free";
	content: '\f107';
	padding: 0 2rem;
	color: #bd8b24;
	font-weight: 900;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	position: absolute;
}

h2 button[aria-expanded="true"]::after {
	font-family: "Font Awesome 5 Free";
	content: '\f106';
	padding: 0 2rem;
	color: #bd8b24;
	font-weight: 900;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	position: absolute;
}

/*テキスト関連
-------------------------------------*/
.text_block {
	display: block;
}
.text_inline-block {
	display: inline-block;
}
.text_underline {
	text-decoration: underline;
}

.book_wrap{
	border: 1px solid #ccc;
	padding: 2rem;
	border-radius: 4px;
}
.book_wrap + .book_wrap{ margin-top: 3rem;}
.book_wrap h2{
	margin-top: 0;
	margin-bottom: 1rem;
	border-bottom: 0;
	color: #88641a;
}
.book_wrap h2::after{ content: none;}
.book_wrap .img{
	border: 1px solid #ccc;
	width: 100%;
}
.book_wrap .img img{ vertical-align: bottom;}
.book_wrap .info{
	border-bottom: 1px solid #ccc;
	padding-bottom: .5rem;
	margin-bottom: 1rem;
}

.nolink {pointer-events: none;}

dl.recruitment, dl.recruitment > *{
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
dl.recruitment{
	width: 100%;
	overflow: hidden;
	border: solid 1px rgb(168, 128, 44);
	border-top: none;
	background: rgb(233, 223, 202);
}
dl.recruitment > dt{
	width: 20%;
	float: left;
	padding: 10px 20px;
	border-top: solid 1px rgb(168, 128, 44);
	font-weight: bold;
}
dl.recruitment > dd{
	margin-left: 20%;
	padding: 10px 20px;
	border-top: solid 1px rgb(168, 128, 44);
	border-left: solid 1px rgb(168, 128, 44);
	background: #fff;
}
dl.recruitment > dd:after{
	display: block;
	content: "";
	clear: both;
}
dl.recruitment > dd strong{
	margin-bottom: .5em;
	display: block;
}

dl.recruitment ul{
margin-left: 1.5em;
}

dl.recruitment ul li::before{
	left: -0.4em;
}

@media screen and (max-width: 640px) {
	dl.recruitment > dt{
		width: 100%;
		float: none;
		/* background-color: rgb(136, 100, 26);
		color: #fff; */
	}
	dl.recruitment > dd{
		margin-left: auto;
		border-left: none;
	}

	dl.recruitment > dd strong{
		margin-bottom: .5em;
		display: block;
		margin-left: -.8em;
	}

	dl.recruitment ul{
		margin-left: .7em;
	}
}

.nofollow span{
	display: inline-block;
	margin-right: .5em;
}

.nofollow span.no_margin{
	margin-right: 0;
}

.btn_pdf a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 3em auto;
    /*min-width: 280px;*/
    max-width: 300px;
    padding: 1em 25px 1em 50px;
    color: #333;
    transition: 0.3s ease-in-out;
    font-weight: normal;
    background: #E9DFCA;
    border-radius: 50px;
    z-index: 0;
    overflow: hidden;
    border:0.1rem solid #a8802c;
    text-decoration: none;
}

.btn_pdf a:hover {
	background: #fefdff;
}

/*初任者向け講座マーク*/
.beginner {
	display: inline-block;
	padding: .5em 1em;
	border-radius: 10px;
	border: 1px solid #8c640f;
	line-height: 1em;
}

.icon-beginner {
	position: relative;
	display: inline-block;
	width: 1em;
	height: 1.2em;
	vertical-align: middle;
	margin-right: .4em;
}
.icon-beginner::before,
.icon-beginner::after {
	position: absolute;
	top: 0;
	content: "";
	display: block;
	width: 50%;
	height: 100%;
	border: .1em solid #8c640f;
	border-bottom-width: .15em;
	box-sizing: border-box;
}
.icon-beginner::before {
	left: 0;
	background: transparent;
	transform: skewY(45deg);
	border-radius: .3em 0 0 .1em;
	border-right: none;
}
.icon-beginner::after {
	right: 0;
	background: #8c640f;
	transform: skewY(-45deg);
	border-radius: 0 .3em .1em 0;
	border-left: none
}

/*経験者ボタン*/
.career {
	display: inline-block;
	padding: .5em 1em;
	border-radius: 10px;
	border: 1px solid #8c640f;
	line-height: 1em;
}
.career i {
	color: #8c640f;
	margin-right: .5em;
}
/*サブタイトル　インデント*/
.sub {
	padding-left: 1em;
	display: block;
	margin-bottom: .3em;
}
.sub2 {
	padding-left: 3em;
	display: block;
}
@media screen and (max-width: 640px) {
	.teacher {
		display: block;
	}
	.sub2 {
		padding-left: 0;
	}
}

table.case_table th, table.case_table td {
	padding: 1rem;
	border: solid 1px rgb(168, 128, 44);
}
table.case_table th {
	background: rgb(233, 223, 202);
}

table.case_table td:first-child {
	width: 5em;
	text-align: center;
}

table.case_table td:nth-of-type(2) {
	width: 6em;
	text-align: center;
}

table.case_table td:nth-of-type(3) {
	width: 20em;
}

table.case_table td:last-child {
	width: 4em;
	text-align: center;
}

/*取組事例（case_study.html）マップ
-------------------------------------*/
.cs_map {
	border: none;
	margin-bottom: 1.5em;
}
.cs_map img {
	width: 100%;
}
@media screen and (max-width: 480px){
	.cs_map {
		display: none;
	}
}

.relation ol {
	list-style-type: decimal;
}
.relation ol li{
	list-style-position: inside;
}

/*---状況調査 table---*/
table.survey_table {
	border-collapse: collapse;
  width: 100%;
	border: solid 1px rgb(168, 128, 44);
}
table.survey_table th {
	background: rgb(233, 223, 202);
	padding: 10px;
  border: solid 1px rgb(168, 128, 44);
  text-align:left;
  box-sizing:border-box;
}
table.survey_table td{
	padding: 10px;
	border-left: solid 1px rgb(168, 128, 44);
  border-right: solid 1px rgb(168, 128, 44);
  border-bottom: solid 1px rgb(168, 128, 44);
  box-sizing:border-box;
}
table.survey_table td:first-child {
	width: 15%;
	text-align: left;
}
table.survey_table td:nth-of-type(2) {
	width: 85%;
}
table.survey_table .ml15{
	margin-left: 1.5rem;
}
table.survey_table .ml30{
	margin-left: 3rem;
}
@media screen and (max-width: 640px) {
	table.survey_table .ml15, table.survey_table .ml30{
		margin-left: 0;
	}
}
/*- Step1　全職員向け研修会 -*/
table.programs{
  border-collapse: collapse;
  width: 100%;
	border: solid 1px rgb(168, 128, 44);
}
table.programs th{
  padding: 10px;
  border: solid 1px rgb(168, 128, 44);
  text-align:left;
  box-sizing:border-box;
}
table.programs td{
  padding: 10px;
	border-left: solid 1px rgb(168, 128, 44);
  border-right: solid 1px rgb(168, 128, 44);
  border-bottom: solid 1px rgb(168, 128, 44);
	text-align:left;
  box-sizing:border-box;
}
table.programs th {
  background: rgb(233, 223, 202);
}
table.programs td.sp_show, table.programs td.sp_show_1{
	display: none;
}

@media screen and (max-width: 640px) {
	table.programs th.pc_show, table.programs td.pc_show {
		display: none;
	}
	table.programs td {
		display: block;
		border-left: none;
    border-right: none;
	}
	table.programs td.sp_show {
		display: block;
		background: rgb(233, 223, 202);
		text-align: left;
		font-weight: bold;
		border-left: none;
	}
	table.programs td.sp_show_1 {
		display: block;
		text-align: left;
	}
	table.programs td:first-child {
  	border-top: solid 5.5px rgb(168, 128, 44);
	}
}
