/*-------------------------------
# Typography
# Flexbox
# Layout
---------------------------------*/
/*
# Typography
-------------------------------*/
/* テキスト寄せ */
.txtLeft{text-align: left;}
.txtRight{text-align: right;}
.txtCenter{text-align: center;}

.txt13{font-size: 13px;font-size: 1.3rem; line-height: 1.4;}
.txt15{font-size: 15px;font-size: 1.5rem; line-height: 1.5;}
.txt20{font-size: 20px;font-size: 2.0rem;}
.txt22{font-size: 22px;font-size: 2.2rem;}
.txt24{font-size: 24px;font-size: 2.4rem;}
.txt28{font-size: 28px;font-size: 2.8rem;}
.txtBox{border:1px #CCC solid; padding:15px 10px; margin: 40px 0;}
.txtBox p{margin: 0 10px !important;}

/*テキストカラー*/
.txtRed{color:#950133;}

p{margin-bottom:20px;}

h1,h2,h3,h4,h5,h6{font-weight: 600;	line-height: 1.3;	position: relative;}
h5,h6{margin-bottom:16px;}

article h1{
color: #0B7A54;
font-size: 32px;	font-size:3.2rem;
margin-top: 60px;
margin-bottom:40px;
padding-bottom: 10px;
}
article h1::before{content: ""; width: 135px; height: 2px; background: #A6923F; position: absolute; bottom:0;}
article h1:first-child{margin-top: 0;}
h2{
	font-size: 24px;	font-size:2.4rem;
	margin-top: 35px;
	margin-bottom: 20px;
	padding:8px;
	background-color: #EEF0F2;
 color: #4A4A4A;
 position: relative;
}
h2.attention{
	background-color: #FFD7D7;
}
h3{
	font-size: 22px;	font-size:2.2rem;
	padding-left: 8px;
	margin-top: 30px;
	margin-bottom: 18px;
 color: #0B7A54;
	border-left: 2px solid #0B7A54;
}
h3.attention{
 color: #4A4A4A;
	background-color: #FFD7D7;
 border-color: #cc6666;
}
h4 {
	font-size:20px;font-size:2.0rem;
 color: #4A4A4A;
	margin-top: 30px;
	margin-bottom: 18px;
}
h4 span{font-size: 16px;	font-size: 1.6rem;color: #555; display: block; line-height: 1.6}
h4 a{text-decoration: none; padding-left: 14px;display: block;}
h4 a::before{
 content: "";
 position: absolute;
 top:4px;
 left: 0;
 box-sizing: border-box;
 width: 6px;
 height: 6px;
 border: 6px solid transparent;
 border-left: 6px solid #0B7A54;
}
article h1 span,
article h2 span,
article h3 span{font-size: 14px;	font-size: 1.4rem;color: #666; font-weight: 500;display: block;}
article h1 span::before,
article h2 span::before,
article h3 span::before{content: "- "}
article h1 span::after,
article h2 span::after,
article h3 span::after{content: " -"}
/*セミナー見出し*/
article h1 .heading{display: block; font-size: 18px;	font-size: 1.8rem; line-height: 1.6;
color: #666; font-weight: 600;padding-left: 0;padding-bottom: 8px;}
article h1 .heading::before,
article h1 .heading::after{content:none;}
article h1 .heading:first-child{padding-top: 0px;}
article h1 .heading:last-child{padding-top: 10px;}
/*番号付きリストを小文字のローマ数字にする*/
ol.OlLowerRoman li{list-style-type: lower-roman;}


/*-------------------------------
# Layout
-------------------------------*/
/*
# Flexbox
-------------------------------*/
#site-branding,
#site-navigation ul,
#content.z_layoutSide #mainArea,
#fNav ul,
.row{-js-display: flex;display: -datawebs_parentkit-box;display: -datawebs_parentkit-flex;display: -moz-box;display: -ms-flexbox;display: flex;}
.f_jc_sa{	-webkit-justify-content: space-around;	justify-content:space-around;}
.f_jc_sb{	-webkit-justify-content: space-between;	justify-content: space-between;}
.f_jc_c{	-webkit-justify-content: center;	justify-content: center;}
.f_jc_sa_in{text-align:center; padding: 5px;}
.f_fw_wrap{	flex-wrap: wrap;}
.f_ai_c{align-items: center;}
/*
# Contents
-------------------------------*/
#content{padding-bottom: 0px;}
/*#eyecatch{max-width: 1170px; width:100%; margin: 0 auto;}*/
#content.z_layoutSide #mainArea{justify-content: space-between;max-width: 1170px; margin: 0 auto;}
#content.z_layoutSide #primary{width: 74.36%;}/* 870px */
#content.z_layoutSide #secondary{	width: 23.07692307692308%;}/* 270px */
#content.z_layoutFull #secondary{display: none;}
.inner{max-width: 1170px;width: 100%; margin: 0 auto;}
.inner940{max-width: 940px;width: 100%;margin: 0 auto;}
/* 幅いっぱいのsection
<section class="sec_wide"></section> */
.sec_wide{max-width:none;}

/*カラム（class="row col2"）
--------------------------------*/
.col2 > *,.col3 > *,.col4 > *{position: relative; list-style: none; width:100%;}
article .col2,article .col3,article .col4{margin:0 auto; flex-wrap: wrap;}
.z_layoutSide .col4 > *,
.z_layoutFull .col4 > *{width: 48.177083333%;margin-right:3.64583333%}/*370px*/
.z_layoutSide .col4 > *:nth-child(2n),
.z_layoutFull .col4 > *:nth-child(2n){margin-right: 0;}
#mainArea .bnrList li { margin-bottom: 25px;}

/*装飾*/
.max250{max-width: 250px;width: 100%;}
.bgWhite{background-color: #FFF;}
.bgGreen{background-color: #E6F2EC;}
.commentGray{background-color: #f6f6f6;margin: 10px 10px 0 10px;padding:15px 15px 5px 20px;border-radius:20px;font-size: 95%;}
.commentGrayLine{border: #f0f0f0 solid 2px ;margin: 10px 2px 0 2px;padding:15px 15px 5px 20px;border-radius:20px;font-size: 95%;}
.commentGray h2,.commentGrayLine h2{background: none;font-size: 105%;margin: 0.3em 0;color: #666666 ;border-left:2px solid #cccccc;}
.commentGray h3,.commentGrayLine h3{background: none;font-size: 103%;margin: 0.3em 0;color: #777777 ;border: none;}
/*隙間*/
.mt0{margin-top:0px !important;}
.mt20{margin-top:20px !important;}
.mb0{margin-bottom:0px !important;}
.mb20{margin-bottom:20px !important;}
.mb50{margin-bottom:50px !important;}
.mb70{margin-bottom:70px !important;}
.mb80{margin-bottom:80px !important;}
.pb50{padding-bottom:50px !important;}

/* 表のセルの改行なし */
table th.tableCellNowrap,table td.tableCellNowrap{white-space: nowrap;}


/* 画像の配置
--------------------------------*/
.imgLeft,
.imgRight,
.imgCenter {
clear: both;
display: block;
margin:0 auto;
}

/* Link icon（自動表示）
--------------------------------*/
a[target="_blank"],
a[href$=".pdf"],
a[href$=".zip"],
a[href$=".docx"],a[href$=".doc"],
a[href$=".xlsx"],a[href$=".xls"]{position: relative; padding-right: 20px;}
a[target="_blank"]::after,
a[href$=".pdf"]::after,
a[href$=".zip"]::after,
a[href$=".docx"]::after,a[href$=".doc"]::after,
a[href$=".xlsx"]::after,a[href$=".xls"]::after{content: "";position: absolute;right:0; bottom:2px;}

a[target="_blank"]::after{background: url(../images/ico_blank.svg) no-repeat 100% 0;background-size: 15px 15px;width:15px; height:15px;}
a[href$=".pdf"]::after{background: url(../images/ico_pdf.png) no-repeat 100% 0;background-size: 12px 12px;width:12px; height:12px;right:4px;top:4px;}
a[href$=".zip"]::after{background: url(../images/ico_ms_zip.svg) no-repeat 100% 0;background-size: 15px 15px;width:15px; height:15px;}
a[href$=".docx"]::after,a[href$=".doc"]::after{background: url(../images/ico_ms_word.svg) no-repeat 100% 0;background-size: 18px 18px;width:18px; height: 18px;}
a[href$=".xlsx"]::after,a[href$=".xls"]::after{background: url(../images/ico_ms_excel.svg) no-repeat 100% 0;background-size: 18px 18px;width:18px; height: 18px;}

/* target="_blank"にアイコンを付けない */
.noIcon a{padding-right: 0;}
.noIcon a::after,
.noIcon::after{content: none !important; padding-right: 0 !important;}
a.noIcon[target="_blank"] img{margin-bottom:  0 !important;padding-right: 0;}

/*
リンクボタン
------------------------------*/
.linkBt{
	-js-display: flex;display: -webkit-box;display: -webkit-flex;display: -moz-box;display: -ms-flexbox;display: flex;	
	flex-wrap:wrap;
 justify-content:space-between;
	margin: 0px 0;
	padding: 0;
}
p.linkBt > a {width: 90%;margin: auto;}
.linkBt a,
a.linkBt{
font-weight: 600;
text-align: left;
line-height: 1;
display: block;
text-decoration: none;
color:#FFF;
position: relative;
background-color: #0B7A54;
border-radius:5px;
}

.linkBt li{list-style: none; margin-bottom: 1px;}
.linkBt a{padding:15px 40px 15px 20px;font-size: 15px;font-size: 1.5rem;}
a.linkBt {padding:15px 40px 15px 20px;font-size: 20px;font-size: 1.8rem;display: inline-block; }
.z_layoutSide a.linkBt {min-width: 270px;}
.linkBt a::before,
a.linkBt::before{
content: "";	position: absolute;
	top:0;bottom:0;margin: auto;
	right: 15px;
	width: 10px;height: 10px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
 border-radius: 1px;
}
.linkBt a:hover,
a.linkBt:hover{background-color:#085C3E;}

.linkBt a::after,
.linkBt::after{content: none !important; padding-right: 0 !important;}


@media screen and (min-width: 769px) {/* PC */
#content{padding-bottom: 70px;}
.linkBt a,
a.linkBt{
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

a.linkBt {min-width: 370px;}
/* end @media (min-width: 769px) */}

/* スクリーンリーダー専用ユーティリティ
--------------------------------*/
#srOnly {
	clip: rect(1px, 1px, 1px, 1px);
	position: fixed !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}
#srOnly:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.4);
	clip: auto !important;
	color: #0B7A54;
	display: block;
	font-size: 16px;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 8px 25px ;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 99999;
}
#srOnly:hover {background-color: #fff;}

/*-------------------------------
SmartPhone Only
---------------------------------*/
@media only screen and (max-width: 768px) {
.row{flex-wrap: wrap;}
.f_SpOrder-1{order: -1;}

/* 横スクロールするテーブル */
.tblScroll {overflow-x: auto;margin-bottom: 40px;position: relative;}
.tblScroll::before{content: "表は横スクロールが可能です。"; color: #666;}
.en .tblScroll::before{content: "The table can be scrolled horizontally."; color: #666;}
.tblScroll table{width: 870px;margin: 0 0 10px;}

/* 縦に整形するテーブル */
.tblResponsive table {width: 100%;border-width: 0; border-bottom: 1px solid #9E9E9E;}
.tblResponsive tr > th,
.tblResponsive tr > td,
.tblResponsive tbody,
.tblResponsive tr,
.tblResponsive tr > th,
.tblResponsive tr > td{	display: block;	width: 100%;	white-space: normal;border-bottom-width: 0;}
/* end @media (max-width: 767px) */}

/*-------------------------------
PC Only
---------------------------------*/
@media screen and (min-width: 769px) {
article h1 span,
article h2 span,
article h3 span{display: inline-block; padding-left: 20px;}

.z_layoutSide .row > *{margin-right: 3.448275862068966%;}
.z_layoutFull .row > *{margin-right: 4.273504273504274%;}
.row > div:last-child{margin-right: 0;}

/*カラム（class="row col2"）
--------------------------------*/
.z_layoutSide .col2 > *{flex-basis: 48.275862068%;margin-right: 3.448275862%;}/*420px*/
.z_layoutSide .col3 > *{flex-basis: 31.034482758%;margin-right: 3.448275862%;}/*270px*/
.z_layoutSide .col4 > *{flex-basis: 22.413793103%;margin-right: 3.448275862%;}/*195px*/

.z_layoutFull .col2 > *{flex-basis: 48.717948717%;margin-right: 2.564102564%}/*570px*/
.z_layoutFull .col3 > *{flex-basis: 31.623931623%;margin-right:2.564102564%}/*370px*/
.z_layoutFull .col4 > *{flex-basis: 23.076923076%;margin-right:2.564102564%}/*270px*/

.z_layoutSide .col2 > *:nth-child(2n),.z_layoutFull .col2 > *:nth-child(2n){margin-right: 0;}
.z_layoutSide .col3 > *:nth-child(3n),.z_layoutFull .col3 > *:nth-child(3n){margin-right: 0;}
.z_layoutSide .col4 > *:nth-child(2n){margin-right: 3.448275862%;}
.z_layoutFull .col4 > *:nth-child(2n){margin-right:2.564102564%}
.z_layoutSide .col4 > *:nth-child(4n),.z_layoutFull .col4 > *:nth-child(4n){margin-right: 0;}


/*画像の配置*/
.imgLeft {
	display: inline;
	float: left;
	margin-right: 20px;
}
.imgRight {
	display: inline;
	float: right;
	margin-left: 20px;
}
.imgLeft,.imgRight{margin-bottom: 20px;}
.imgCenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*リンクボタン*/
.linkBt li{margin-bottom: 10px;}

/* end @media (min-width: 769px) */}

/* module */
.heading{display: block; font-size: 18px;	font-size: 1.8rem; line-height: 1.6; color: #666; font-weight: 600;padding-left: 0;padding-bottom: 8px;}
