@charset "utf-8";
@import url('bootstrap_add.css?1');
@import url('bootstrap_flex.css?5');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

:root {
	--primary: #222;/*black*/
	--secondary: #999;/*gray*/
    --danger: #cc2246;/*red*/
    --light: #eee;/*gray*/
    --dark: #666;/*gray*/
    --linktext: #0071aa;/*blue*/
	--accent: #5ec68b;/*green*/
}
/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

html, body, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    border:0;
    font-family:inherit;
    font-size: 1em;
    font-style:inherit;
    font-weight:inherit;
    margin:0;
    outline:0;
    padding:0;
    vertical-align:baseline;
}
:focus{ outline:0;}
ol, ul{ list-style:none;}
table{
	border-collapse:separate;
	border-spacing:0;
}
caption,th,td{
	text-align:left;
}
blockquote:before,blockquote:after,q:before,q:after{ content:"";}
blockquote,q{ quotes:"" "";}
a img{ border: 0;}
img { image-rendering: -webkit-optimize-contrast;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block;}
body,textarea,input{
	-webkit-text-size-adjust:100%;
	line-height: 1.9;
	font-size: 1rem;
    font-weight: 400;
}
body{ background: white;}
body,textarea,input,.sans-serif{font-family: "Noto Sans JP",'ヒラギノ角ゴ ProN','Hiragino Kaku Gothic ProN',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",'メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;}

/* リンク設定 ------------------------------------------------------------*/

a{
    text-decoration:none;
    outline:0;
	color:var(--linktext);
}
a:hover, a:active{
    outline:none;
}
.post a:not(.btn):hover{ text-decoration: underline;}

/**** Clearfix ****/
.nav .panel:before,nav .panel:after, #mainNav:before,#mainNav:after, .newsTitle:before,.newsTitle:after{
	content:"";
	display:table;
}
nav.panel:after,#mainNav:after,.newsTitle:after{ clear: both;}
nav.panel,#mainNav,.newsTitle{ zoom: 1;}

/* レイアウト ------------------------------------------------------------*/

#wrapper, .inner{
    margin:0 auto;
    width:1040px;
}
article.inner{ padding: 3em 0}
#content{
    margin: 1.5em 0 3em;
	padding: 30px 0;
	/*float:left;
	width:740px;*/
}
#sidebar{
	padding: 30px 0;
	float:right;
	width:250px;
    font-size: .95em;
}
#footer{
	clear:both;
	padding: 3em 0;
    background: rgba(0,0,0,.025);
    
} 

/* ヘッダー ------------------------------------------------------------*/

#header .inner{ position: relative;}
#header .inner a.icon{ position: absolute; right: 10px; bottom: 1em;}
#header .inner a.icon img{ max-width: calc(2em + 3.5vw);}

#header h1{
	padding:.25em .5em;
    color: var(--primary);
    background: white;
	font-size:.85em;
}
#header h2{
	margin: 1em auto .5em;
	max-width: 400px;
	clear:both;
	text-align:center;
	color:black;
	font-size:160%;
	font-weight:bold;
}
#header h2 img{
	width: auto;
    max-width: 360px;
}
#headerInfo{
	float:right;
	text-align:left;
}
#headerInfo p{
    margin: 0;
	padding-left: .5rem;
    line-height: 1.65;
    font-size:.85em;
}
#headerInfo p.address{ padding-left:.65rem;}
#headerInfo p strong{
    font-weight: 300;
    font-size: 1.1em;
}
.tel a{
	/*font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;*/
	display: inline;
	font-weight: normal;
}
#headerInfo p.tel a { font-size: 1.5em;}
.tel a,
a[href*="tel:"]{ color: black;}
.tel a:hover,
a[href*="tel:"]:hover{ color: black !important; cursor: default; text-decoration: none !important;}

#header ul{
	padding-top:5px;
	float:right;
}

#header ul li{
	font-weight:bold;
	display:inline;
	margin-left:5px;
	font-size:90%;
}

#header ul li:before{
	content:"・";
}

#header ul li a{
	padding-left:5px;
	color: var(--primary);
}

#header ul li a:hover{
	color: var(--secondary);
}


/* トップページ　メイン画像
----------------------------------*/

#mainImg img{
    margin-bottom: 1em;
    width:100%;
    height:auto;
}

/* タイポグラフィ ------------------------------------------------------------*/

h2, .h2{ font-size: calc(1em + 1vw);}
h3, .h3{ font-size: calc(.8em + .8vw);}
h4, .h4{ font-size: 1.1em;}
h5, .h5{ font-size: 1em;}

h2.title,
.post h2{
	clear:both;
	margin-bottom: 2em;
	position: relative;
	text-align:center;
	font-weight: bold;
}
h2.title:after{
	background: var(--accent);
	content: "";
	position: absolute;
	width: 2.5em;
	height: 3px;
	left: calc(50% - 1.25em);
	bottom: -.7em;
}
h2.first{ margin-top:0;}
h2.recentpost{
	margin:30px 0 35px;
	padding:15px 0;
	font-size:150%;
	font-weight:bold;
	border-bottom:3px solid black;
}
.dateLabel{ text-align:right;}
.post{padding-bottom: 2em;}
.post > .list h3 a{ color: var(--primary)}
p{ margin: 0 0 1em;}
.post p{ text-align: justify;}
.post ul{ margin: 0 0 1em 1em;}
.post h3{
	margin:.5em 0 1em;
	padding: .3em 0;
    clear: both;
	font-weight:bold;
	border-bottom:3px solid var(--light);
    line-height: 1.5;
}
.post h3.is-style-vk-heading-plain{ margin: .5em 0; padding: 0; border:none;}
.post h4{
    margin-bottom: .5em;
	padding: 0 0 0 1em;
	position: relative;
    line-height: 1.6;
	font-weight:bold;
}
.post h4::before {
	position: absolute;
	content: "";
	height: 80%;
	border-left: var(--accent) solid 3px;
	left: 0;
	top: 10%;
	z-index: 0;
}
.post h5{
    margin: 0 0 .5em;
    padding: 0 0 0 1.5em;
    position: relative;
    font-weight:bold;
}
.post h5::before {
	position: absolute;
	content: "●";
	color: var(--light);
	left: 0;
	top: 0;
	z-index: 0;
}
.post h6{
	margin:15px 0 10px;
	padding:15px 0;
	font-size:110%;
	font-weight:bold;
}
.post blockquote {
	clear:both;
	padding:10px 0 10px 25px;
	margin:10px 0 25px 0px;
	border-left:5px solid #e9e9e9;
}
.post blockquote p{ padding:5px 0;}
.comesoon{ color: var(--secondary);}

@media (max-width: 575.98px){ .no_br_xs br{ display: none;}}
@media (max-width: 767.98px){ .no_br_sm br{ display: none;}}
@media (max-width: 991.98px){ .no_br_md br{ display: none;}}
@media (max-width: 1199.98px){ .no_br_lg br{ display: none;}}

/* サイドバー　ウィジェット ------------------------------------------------------------*/

.widget{ margin-bottom:2.5em;}
.widget.widget_block{ margin-bottom:0;}
.widget h3{
	clear:both;
	margin:0 0 10px;
	padding:5px 0;
	font-size:130%;
	font-weight:normal;
	border-bottom:2px solid black;
}
.widget ul{ margin:30px 0 30px 0;}
.widget li a{
	display:block;
	margin-top:15px;
	color:black;
	font-weight:bold;
}
.widget a:hover{ color:#666;}
#banners p{ margin-bottom: 1.5em; text-align: center;}
#banners p img{ border:solid 2px var(--light); box-sizing: border-box; max-width: calc(200px + 12.5vw);}
#banners p a:hover img{ border-color: var(--primary);}
#sidebar #banners p img{ max-width: 100%;}

#contactBanner{
    margin-bottom: 2em;
	padding:1em .5em;
	border: solid 2px var(--dark);
	text-align: center;
	font-size: .9em;
}
#wrapper p.tel{
    margin: .5em 0;
	text-align: center;
	font-weight:bold;
	font-size: 1.5em;
}
#contactBanner p.address{ font-size: .9em;}
.newsTitle{
	clear:both;
	margin:15px 0 10px;
	padding:5px 0;
	font-size:130%;
	font-weight:bold;
	border-bottom:2px solid var(--primary);
}
.newsTitle h3 {
	float: left;
	font-size: calc(.65em + .5vw);
	font-weight: normal;
}
.newsTitle p{
    margin: .5em 0 .5em 1em;
    float:right;
    font-size:70%;
}
.newsTitle p a{ color:black;}
.news p a{ color:black;}
.newsTitle p a:hover{ color:var(--primary);}
.news{ margin:30px 0 30px 0;}
.news p{
	clear:both;
	margin-top:15px;
}
.news p a{
	display:block;
	color:black;
}
.news a:hover span{ color:var(--primary);}

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

#footerLogo{
	margin: 0 auto;
	max-width:250px;
	/*float:left;*/
	text-align:center;
}
#footer ul{
	text-align:center;
}
#footer ul ul{ display:none;}
#footer ul li{
display:inline-block;
text-align:left;
}
#footer ul li a{
    padding: 0 1em;
    color:var(--primary);
    display: block;
}
#footer li a::before {
  content: "・";
}
#footer ul li a.nturl{
	font-size: .9em;
	padding: 0 0 0 5px;
}
#footer ul li a.nturl strong{
	font-size: .9em;
}
#footer ul li a:hover{ color:var(--dark);}
#copyright{
    margin: 0;
	padding: 1em;
	clear:both;
    background: var(--light);
    line-height: 1.5;
	text-align:center;
	font-size: .75em;
}

/* page navigation ------------------------------------------------------------*/

.pagenav{
	clear:both;
	width:100%;
	height:30px;
	margin:5px 0 20px;
}
.prev{ float:left;}
.next{ float:right;}
#pageLinks{
	clear:both;
	color:#4f4d4d;
	text-align:center;
}

/* トップページ 最新記事3件 + 3つの画像 ------------------------------------------------------------*/

.thumbWrap{
	padding-bottom: 1.5em;
}
.thumbWrap ul{
	display: table;
	text-align: center;
}
.thumbWrap li{
	margin: 0;
	padding: 0 25px 1.5em 0;
	display: table-cell;
	box-sizing: border-box;
}
.thumbWrap li:last-child{ padding: 0 0 1.5em}
.thumbWrap li img{ border: solid 2px var(--light); box-sizing: border-box;}
.thumbWrap li a:hover img{ border: solid 2px var(--primary);}

ul.thumbUnder h3{
	padding:5px;
	font-weight:bold;
	text-align:center;
	border:2px solid black;
}
ul.thumbUnder h3 span{ display:block;}
ul.thumbUnder h3 a{ color:black;}
ul.thumbUnder h3 a:hover{ color:#666;}
ul.thumbUnder li p{ margin:15px 0 25px;}

/* メインメニュー　PC用 ------------------------------------------------------------*/

body:not(.home) nav#mainNav:after {
	content: "";
	height: 25vh;
	background: #eee;
	background-size: cover;
	display: block;
}
@media only screen and (min-width:1025px){
	nav#mainNav{ position:relative;}
	nav#mainNav ul{
        margin:0;
        display:flex;
        justify-content: center;
        align-items: center;
	}
	nav#mainNav ul li{ float:left;}
	nav#mainNav ul li a{
        margin: 1em 0;
		padding: .15em 1.5vw;
		display: block;
		text-align: center;
		_float:left;
		font-size: .95em;
		color:var(--primary);
	}
    nav#mainNav ul li a{border-right: 1px solid var(--light);}
	nav#mainNav ul li:first-child a{ border-left: 1px solid var(--light)}
    nav#mainNav ul li a span,
    nav#mainNav ul li a strong{
        display:block;
        font-weight: 500;
    }
    nav#mainNav ul li a span{
        color: var(--primary);
        opacity: .4;
        font-size: .6em;
    }
	nav#mainNav ul li a:hover{ background: rgba(245,245,245,.9);}
	nav#mainNav ul ul{
		width:200px;
		border-top:0;
	}
	nav#mainNav ul li ul{ display: none;}
	nav#mainNav ul li:hover ul{
		display: block;
		position: absolute;
		top:65px;
		text-align:center;
		z-index:500;
	}
	nav#mainNav ul li li{
        float: none;
		width:10em;
        margin:0;
	}
	nav#mainNav ul li li a,
    nav#mainNav ul li li:first-child a{
        margin: 0;
        padding:0;
        width:100%;
        height:40px;
        border: none;
		border-top:1px solid var(--light);
        background: rgba(245,245,245,.9);
		line-height:40px;
		font-size:95%;
	}
	nav#mainNav ul li li a:hover{ color:var(--secondary);}
	nav div.panel{ display:block !important;}
	a#menu{ display:none;}
}
/* iPadサイズ以下（1024px）からアコーディオンメニュー ------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	#mainNav{
        clear:both;
        width:100%;
	}
    #mainNav .inner{ margin: 0; max-width: 100%;}
	#mainNav a.menu{
		width:100%;
		display:block;
		height:40px;
		line-height:40px;
		font-weight:bold;
		text-align:left;
		color:var(--primary);
		background:url(images/menuOpen.png) no-repeat 0 0;
		font-size: .9em;
	}
	#mainNav a#menu span {
        padding-left: 50px;
        display: block;
    }
	#mainNav a.menuOpen{ background: url(images/menuOpen.png) no-repeat 0 -40px;}
	nav .panel{
		display: none;
		width:100%;
		position:relative;
		right:0;
		top:0;
		z-index:1;
	}
	.panel ul{ margin:0;padding:0; border-bottom: solid 1px var(--secondary);}
	.panel ul li{
		float: none;
		clear:both;
		width:100%;
		height:auto;
		line-height:1.2;
	}
	.panel ul li a,.panel ul li.current-menu-item li a{
        display: block;
        width:100%;
        padding:1em;
        text-align:left;
        color:var(--primary);
		border-top: solid 1px var(--secondary);
        box-sizing: border-box;
	}
	.panel ul li a span{
        color: var(--primary);
        float: right;
        display: block;
        line-height: 2;
        font-size: 75%;
    }
	.panel ul li a:hover{ color:var(--dark);}
	.panel ul li li{
		float:left;
		border:0;
	}
	.panel ul li li a span{ padding-left:35px;}
	nav div.panel{ float:none;}
}


/* custom -----------------------------------------------------------------*/

.f_w_normal{ font-weight: normal !important;}
.dsp_pc{ display: inherit;}
.dsp_sph{ display: none;}
.dsp_table{ display: table !important;}
.dsp_bck{ display: block !important;}
.dsp_inbck{ display: inline-block !important;}
.mainimg_pc{ display: inline-block;}
.mainimg_sph{ display: none;}

img{ max-width: 100%; height: auto; border: none; vertical-align: bottom;}
.img_l, .post .img_l{ margin: 0 4% 20px 0; float: left; max-width: 25%;}
.img_r, .post .img_r{ margin: 0 0 20px 4%; float: right; max-width: 25%;}
ul.img_l, .post ul.img_l, ul.img_r, .post ul.img_r{ max-width: none;}

.cachcopy{ text-align: center;}
.nml{ font-weight: normal !important;}
.str1, .str01{ font-size: 110%;}
.str2, .str02{ font-size: 125%;}
.str3, .str03{ font-size: 150%;}
.str4, .str04{ font-size: 175%; line-height: 1.5;}
.str5, .str05{ font-size: 225%; line-height: 1.5;}
b, strong, .str1,.str2,.str3,.str4,.str5{ font-weight: 800;}
.sml0{ font-size: 95%; line-height: 1.7;}
.sml1{ font-size: 90%; line-height: 1.65;}
.sml2{ font-size: 85%; line-height: 1.6;}
.sml3{ font-size: 80%; line-height: 1.55;}
h2 .sml2{ padding-bottom: .5em; display: block; color: var(--secondary); font-size: 1rem;}
.red, .red a{ color: var(--danger);}
.orange, .orange a{ color: #f0832c;}
.blue, .blue a{ color: #0ea3c7;}
.green, .green a{ color: var(--primary);}

.letter_sp_h{ letter-spacing: .5em;}
.letter_sp_1{ letter-spacing: 1em;}
.letter_sp_1h{ letter-spacing: 1.5em;}
.letter_sp_2{ letter-spacing: 2em;}
.letter_sp_3{ letter-spacing: 3em;}

.bd_t_gray1{ border-top: solid 1px #ddd;}
.bd_b_gray1{ border-bottom: solid 1px #ddd;}
.bd_t_gray0{ border-top: solid 1px #eee;}
.bd_b_gray0{ border-bottom: solid 1px #eee;}

.c{ text-align: center;}
.l{ text-align: left;}
.r{ text-align: right;}
.clr{ clear: both;}
.clr_l{ clear: left;}
.clr_r{ clear: right;}
.clr_n{ clear: none !important;}

.f_l{ float: left;}
.f_r{ float: right;}

.idt0{ margin-left: 1em; text-indent: -1em;}
.idt1{ margin-left: 1em; text-indent: -1em;}
.idt1h{ margin-left: 1.5em; text-indent: -1.5em;}
.idt2{ margin-left: 2em; text-indent: -2em;}
.idt2h{ margin-left: 2.5em; text-indent: -2.5em;}
.idt3{ margin-left: 3em; text-indent: -3em;}
ul.idt2h, ol.idt2h{ margin: 0 0 1em 1.5em; list-style: none;}
ul.idt2, ol.idt2{ margin: 0 0 1em 1em; list-style: none;}
ul.idt1h, ol.idt1h{ margin: 0 0 1em .5em; list-style: none;}
ul.idt1, ol.idt1{ margin: 0 0 1em; padding-left: 1em; list-style: none;}
li ol.idt1h{ margin: 0;}

.w15p{ width: 15%;}.w20p{ width: 20%;}.w25p{ width: 25%;}.w30p{ width: 30%;}
.w33p{ width: 33%;}.w35p{ width: 35%;}.w40p{ width: 40%;}.w50p{ width: 50%;}
.w60p{ width: 60%;}.w65p{ width: 65%;}.w70p{ width: 70%;}.w80p{ width: 80%;}
.w90p{ width: 90%;}

.col_3x2:nth-child(odd), .col_3:nth-child(odd),
.col_4x3:nth-child(odd), .col_4:nth-child(odd){ margin-bottom: 1em;}

.fa, .fab, .fad, .fal, .far, .fas {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
}
a:hover img{ opacity: .8;}
a.zoom:before{
	content: "\f002 ";
	letter-spacing: .3em;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
}
a.file{
	padding: 0 0 0 1.2em;
	position: relative;
	display: inline-block;
}
a.file:before{
	position: absolute;
	left: 0;
    content: "\f15c";
	font-family: "Font Awesome 5 Free";
}
a.nwicn::after, a[target="_blank"]:not([href$=".pdf"]):not([href$=".xlsx"]):not([href$=".xls"])::after{
    margin: 0 .25em;
    content: "\f2d2";
    font-family: "Font Awesome 5 Free";
	opacity: .5;
}
a.pdf:before, a[href$=".pdf"]:before {
	margin-right: .25em;
	color: #d81010;
	content: "\f1c1";
	font-family: "Font Awesome 5 Free";
}
#header .inner a.icon[target="_blank"]:after,
.panel a[target="_blank"]:after,
figure.wp-block-image a[target="_blank"]:after,
.wp-block-image figure a[target="_blank"]:after,
p.banner a[target="_blank"]:after,
figure.wp-block-image a[href$=".pdf"]:before,
.wp-block-image figure a[href$=".pdf"]:before{ display: none;}

a.xlsx:before, a[href$=".xlsx"]:before, a[href$=".xls"]:before {
	margin-right: .25em;
	color: #00a81c;
	content: "\f1c3";
	font-family: "Font Awesome 5 Free";
}
.attention:before{
	margin-right: .5em;
	color: var(--danger);
	content: "\f05a";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
}
p.c, p.has-text-align-center{ text-align: center;}
p.r, p.has-text-align-right{ text-align: right;}

.post ul,
#tinymce ul{
	margin: 0 0 1em;
	padding: 0;
}
.post ul > li,
#tinymce ul > li{
	padding: 0 0 0 1em;
	position: relative;
}
.post ol{margin: 0 0 1.5em 1.5em; padding: 0 0 0 .5em;}
.post ol > li{list-style:decimal;}

ul.li_img img{ vertical-align: middle;}
ul.default > li{
	margin: 0 0 0 1em;
	padding: 0;
	list-style:disc;
}
ul.li_mg0hb > li{ margin-bottom: .5em;}
ul.dot li,
ul.star > li{
	padding: 0 0 0 1.3em;
	position: relative;
}
ul.dot li:before,
ul.star > li:before{
	position: absolute;
	top: 0;
	left: 0;
	color: var(--accent);
	font-size: 1em;
	font-family: "Font Awesome 5 Free";
	transform: none;
}
ul.dot > li:before{ content: "\f111";}
ul.star > li:before{ content: "\f005";}

ul.bullet li{
	padding: 0 0 0 1em;
	position: relative;
}
ul.bullet li::before {
	margin: 0 0 0 -1.5em;
	position: absolute;
	color: var(--accent);
	content: "\f111";
	font-size: 50%;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	top: calc(50% - .5em);
    line-height: 1;
}
/* list Check Icon */
ul.ic_check li{
	padding: 0 0 0 1.5em;
	position: relative;
}
ul.ic_check li:before{
	margin: 0 0 0 -1.25em;
	position: absolute;
	color: var(--accent);
	content: "\f14a";
	font-family: "Font Awesome 5 Free";
}
/* list File Icon */
ul.file li{
	padding: 0 0 0 1.2em;
	position: relative;
}
ul.file li:before{
	color: #999;
	position: absolute;
	left: 0;
    content: "\f15c";
	font-family: "Font Awesome 5 Free";
}
/* Flow List */
ul.number li{ padding: 0; list-style: none;}
ul.number li:after {
	clear: both;
	display: block;
	color: #eee;
	text-align: center;
	line-height: 1.2;
    content: "\f103";
	font-family: "Font Awesome 5 Free";
	font-size: 2.5em;
	font-weight: bold;
}
ul.number li:last-child:after { display: none;}

/* Flow Mumber List */
ol.number{
	margin: 0 0 1.5em;
	padding: 0;
	counter-reset: li;
	/*line-height: 1.6;*/
}
ol.number > li{
	padding: 0;
	position: relative;
	clear: both;
	list-style: none;
	font-size: .95em;
}
ol.number > li h4{ padding: 0; font-size: 1.4em;}
ol.number > li h4:before, ol.number li h4:after{display: none;}
ol.number > li p{ margin-bottom: .75em;}
ol.number > li:before {
	margin: 0 .5em 0 0;
	display: block;
	float: left;
	color: black;
	counter-increment: li;
	content: counter(li) "";
	background: #eee;
	width: 1.5em;
	height: 1.5em;
	border-radius: 100%;
	text-align: center;
	line-height: 1.5em;
	font-size: 1.5em;
	font-weight: 600;
}
ol.number.absNo > li:before { position: absolute;}
ol.number.absNo > li figure img{ border-radius: 1em 0 0 0;}
ol.number.arrow_down > li:after {
	clear: both;
	display: block;
	color: #ddd;
	text-align: center;
	line-height: 1;
    content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-size: 5em;
	font-weight: bold;
}
ol.number.arrow_down > li:last-child:after { display: none;}

/* process_hol */

ul.process_hol li{
	margin-bottom:  1em;
	padding-right: 3em;
	position: relative;
	box-sizing: border-box;
	float: left;
}
ul.process_hol li:after{
	position: absolute;
	top: 2em;
	right: .5em;
	color: #eee;
    content: "\f054";
	line-height: 1;
	font-family: "Font Awesome 5 Free";
	font-size: 2em;
	font-weight: bold;
}
ul.process_hol li:last-child:after{ display: none;}
ul.process_hol.process_h_3 li{ width: 33.33333333%}
ul.process_hol.process_h_4 li{ width: 25%;}
@media (max-width: 767px){
	ul.process_hol.process_h_3 li{ width: 50%;}
	ul.process_hol.process_h_3 li:nth-child(odd){ clear: both;}
	ul.process_hol.process_h_4 li{ width: 33.33333333%;}
	ul.process_hol.process_h_4 li:nth-child(3n+1){ clear: both;}
}
@media (max-width: 520px){
	ul.process_hol.process_h_4 li{ width: 50%;}
}

ul.anchor{
	margin: 0 0 1.5em;
	padding: 0;
	list-style: none;
	border: solid 2px #ddd;
	text-align: center;
}
ul.anchor li{
	margin: 0;
	padding: 0;
}
ul.anchor li a{
	padding: .5em 2.5em;
	position: relative;
	display: block;
	color: #333;
	border-bottom: solid 1px #f5f2ee;
	line-height: 1.75;
}
ul.anchor li:last-child a{ border-bottom: none;}
ul.anchor li a:before{
	color: #eee;
	content: "\f078";
	position: absolute;
	top: auto;
	left: 1em;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
}
ul.anchor li a:hover{ color: #eee; text-decoration: none;}
ul.anchor li a.next{ float: none;}
ul.anchor li a.next:before{ content: "\f054";}
ul.anchor.dsp_bck li{ display: block;}
@media (min-width: 768px){
	ul.anchor{
		padding: .5em 1em;
	}
	ul.anchor.l{ text-align: left;}
	ul.anchor li{ display: inline-block;}
	ul.anchor li a{
		padding: .3em 1em .15em 1.25em;
		border-bottom: none;
	}
	ul.anchor li a:before{ left: 0;}
}

.list50{ margin: 0 0 2em;}
.list50 li{
	margin: 0 0 3em;
	padding: 0;
	float: left;
	width: 50%;
	box-sizing: border-box;
	text-align: center;
}
.list50 li:nth-child(odd){ padding-right: 1.75%;}
.list50 li:nth-child(even){ padding-left: 1.75%;}

.inline{ margin: 0 0 1em; padding: 0 !important; list-style: none;}
.inline li{ margin: 0 1em 0 0; display: inline;}
.inline li img{ margin-right: .5em;}
.inline_gy{ margin: 0 0 2em; padding: 0 !important; list-style: none; clear: both;}
.inline_gy li{ margin: 0 0 .4em; padding: .25em .8em; display: inline-block; background: #eee; font-size: 90%;}
.inline_btns{ margin: 0 0 1.5em; padding: 0 !important; list-style: none;}
.inline_btns > li{ padding: 0 .5em .5em 0 !important; display: inline-block; box-sizing: border-box;}
.inline_btns.col_sm_3 > li{ width: 33.33333%;}
.inline_btns.col_sm_4 > li{ width: 25%;}
.inline_btns.c a.btn{ display: block;}

table{
	margin:.2em 0 1.5em;
	width: 100%;
	max-width: 100% !important;
	border-collapse: collapse;
	border-spacing: 0;
}
table.sml1{ line-height: 1.6}
.wp-block-table td,
.wp-block-table th,
table th,
table td{
	padding: .55em;
    border: none;
	border-bottom: 1px var(--light) solid;
	vertical-align: middle;
	word-break: break-all;
}
table td:nth-child(1){ border-bottom-color: var(--primary);}
.td1_normal table td:nth-child(1){ border-bottom-color: var(--light);}
table th{
	background: #f4f4f4;
	white-space: nowrap;
	text-align: center;
/*	font-weight: normal;*/
}
table th.th2nd,
table th[scope="row"]{ background: #f4f4f4;}
.th_nowrap th, .td_nowrap td{ white-space: nowrap;}
.th_center th, .td_center td,
th.th_center, td.td_center{ text-align: center;}
.th_right th, .td_right td,
th.th_right, td.td_right{ text-align: right;}
.th_top th, .td_top td,
th.th_top, td.td_top{ vertical-align: top !important;}
.th_btm th, .td_btm td,
th.th_btm, td.td_btm{ vertical-align: bottom !important;}
.table ul, .table li, .table p{ margin: 0;}

hr{
	margin: 0 auto;
	padding: 2em 0;
	clear: both;
	border: none;
    height: 0;
	width: 25%;
}
.thin{ padding: .6em 0;}
.hr_bd{
	margin: 0 0 1.5em;
	padding: 0 0 1.5em;
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #ddd;
}
.hr_bd.thin{
	margin: 0 0 .5em;
	padding: 0 0 .5em;
}
.delimiter{
	margin: 0 auto 3em;
	padding: 3em 0 0;
	position: relative;
	width: 12%;
	height: 0;
	border-bottom: dotted 2px white;
	overflow: visible;
	text-align: center;
}
.delimiter:before,
.delimiter:after{
	content: "";
	position: absolute;
	/*border-radius: 5px;*/
}
.delimiter:before{
	margin-left: -5px;
	bottom: -6px;
	left: 50%;
	height: 10px;
	width: 10px;
	background: black;
}
.delimiter:after{
	height: 1px;
	width: 3em;
	left: calc(50% - 1.5em);
	background: transparent;
	box-shadow: 2em 0 0 black, -2em 0 0 black;
}
.post .delimiter:last-child{ display: none;}

.alignright{
	margin: 0 0 1em 4%;
	display:inline;
	float:right;
}
.alignleft{
	margin:0 4% 1em 0;
	display:inline;
	float:left;
}
.alignnone,
.alignright,
.alignleft{ width: auto !important;}
.alignright,
.alignleft{ max-width: 45%;}

/* gallery */
.wp-caption{ background: none; border: none;}
.wp-caption img{ margin: 0 0 .3em; max-width: 100% !important;}
.wp-caption-text,
.wp-caption p.wp-caption-text{
	margin: .4em 0 1em;
	padding: 0;
	border: none;
	background: none;
	width: auto !important;
	line-height: 1.5 !important;
	text-align: left;
	/*font-size: 90%;*/
}
.gallery-item{
	margin: 0 !important;
	padding: 0 .5%;
	float: left;
	width: 50% !important;
	box-sizing: border-box;
	text-align: left !important;
}
.gallery-item:nth-of-type(odd){ clear: both;}
.gallery br{ display: none !important;}
.gallery dd br{ display: inherit !important;}
.gallery-item dt{ margin: 0; padding: 0 !important; border: none;}
.gallery-item a{ color: #222; display: block !important;}
.gallery-item a:hover img{ opacity: 0.85;}
.gallery-item img{ border: solid 1px #eae2d4 !important; max-width: 100% !important;}
.gallery .gallery-caption{ margin-top: .5em; color: black;}

/* gallery & flow (+arrow) */
.gallery_flow .gallery-item dt,
.gallery_flow .gallery-item dd{ padding: 0 2.5em 0 0 !important;}
.gallery_flow .gallery-item dt{ position: relative;}
.gallery_flow .gallery-item dt:before,
.gallery_flow .gallery-item dt:after{
	content: "";
	position: absolute;
	border-top: 2px solid #eee;
	top: 50%;
}
.gallery_flow .gallery-item dt:before{
	right: .5em;
	width: 2em;
	height: 0;
}
.gallery_flow .gallery-item dt:after{
	margin: -1em .5em 0 0;
	border-right: 2px solid #eee;
	right: calc( .5em - 2px );
	width: 2em;
	height: 2em;
	transform: rotate(45deg);
}
.gallery_flow .gallery-item:last-of-type dt:after,
.gallery_flow .gallery-item:last-of-type dd:after{ display: none;}

.nivo-lightbox-theme-default .nivo-lightbox-title {
	font: inherit !important;
    background: white !important;
    color: #42210b !important;
    border-radius: 5px !important;
}
.blocks-gallery-grid,
.wp-block-gallery{ width: 100%;}
.blocks-gallery-grid .blocks-gallery-item,
.wp-block-gallery .blocks-gallery-item{ flex-grow: 0; width: calc(33.33333% - .66667em);margin-right: 1em;}
.wp-block-gallery.has-nested-images figure.wp-block-image{ flex-grow: 0;}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{ padding: .4em; background: rgba(0,0,0,.5); font-size: .85em;}
@media (min-width: 600px){
.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image),
.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image){
        margin: .25em;
        width: calc(33.33333% - .9em);
    }
}

/* Dlist ----------------------------*/
dl{ margin: 0 0 1.5em; padding: 0;}
dl dl{ margin-bottom: 0 !important;}
dt, dd{ margin-bottom: .35em; box-sizing: border-box;}
dt{ position: relative; font-weight: bold;}
dd{ margin: 0 0 1em; padding-bottom: .5em; border-bottom: 2px solid #eee;}
dd ul{ margin: 0; padding: 0 0 0 1em;}
dd ol{ margin: 0 0 0 1em; padding: 0 0 0 .5em;}
.Dlist.newslist{ margin: 0 auto 1.5em; display: table;}
.Dlist dt{ margin: 0; padding: 0; float: left; width: 8em; font-weight: normal;}
.Dlist dd{ margin: 0 0 .4em; padding: 0 0 .4em 8.5em;}
.Dlist.dt_S dt{ width: 6em;}
.Dlist.dt_S dd{ padding-left: 6em;}
.Dlist.dt_L > dt{ width: 11em;}
.Dlist.dt_L > dd{ padding-left: 11em;}
.Dlist.dt_LL > dt{ width: 13em;}
.Dlist.dt_LL > dd{ padding-left: 13em;}
.Dlist dd dl{ margin: 0;}
.Dlist dd dt{ padding-bottom: 0;/* font-weight: normal;*/}
.Dlist dd dd{ margin: 0; padding-bottom: 0; border-bottom: none;}
.Dlist.nobd dd{ margin: 0; padding: 0; border: none;}
.Dlist dd p:last-child,
.dt_dot dd p:last-child{ margin-bottom: 0;}
.dt_dot dt{ padding-left: 1.5em !important; border: none;}
.dt_dot dt:before{
	position: absolute;
	left: 0;
	color: #eee;
	content: "\f111";
	font-family: 'Font Awesome 5 Free';
}
.dt_dot dd{ margin: 0 0 .6em;}
.dt_dot.dt_ic_white dt:before{ color: white;}
.dt_dot.dt_ic_gray1 dt:before{ color: #ddd;}
.dt_dot.dt_ic_gray2 dt:before{ color: #666;}

.dl_table{
	display: table;
	width: 100%;
}
.dl_table dt, .dl_table dd{
	margin: 0;
	display: table-cell;
	border-bottom: solid 1px white;
}
.dl_table dd{ padding-left: 1em;}

.dl0{
	margin: 0 0 20px;
	line-height: 1.6;
}
.dl0 dt{
	margin: 0;
	padding: .3em 0 0;
	clear: both;
}
.dl0 dd{
	margin: 0;
	padding: 0 0 .3em;
	border-bottom: solid 1px white;
}
.dl1{ margin: 0 0 1.5em;}
.dl1 dt:before{
	margin: 0 .3em 0 0;
	color: white;
	content: "\f069";
	font-family: 'Font Awesome 5 Free';
}
.dl1 dd{
	margin: 0 0 .45em;
	padding: 0 2px .45em 1.3em;
	border-bottom: solid 1px white;
}

/* column */

.column1, .column2{ margin: 0 0 2em; padding: 1em 1.5em;}
.column1{ border: double 5px #ddd; background: white;}
*[class^=column] p:last-child{ margin: 0 0 .25em;}
.column2{ border: solid 2px #e56163;}
.column2 p{ padding: 0;}
.alignleft .column1,
.alignleft .column2,
.alignright .column1,
.alignright .column2{ padding: .7em 1em .2em;}

iframe,
#map_canvas{
    margin-bottom: 1.5em;
	width: 100%;
	border: none;
	box-sizing: border-box;
	vertical-align: bottom;
}
.post iframe{ height: 40em; max-height: 75vh;}
.post .googlemap{ height: 30em; overflow: hidden;}
.post .googlemap iframe{ margin-top: -10em;}

/* BTN ****************/

a.btn,
.prev a,
.next a{
	padding: .5em 2em .5em 1em;
	/*display: block;*/
	background: var(--primary);
	color: white;
	position: relative;
	border: solid 2px var(--primary);
	border-radius: 0;
	box-sizing: border-box;
	line-height: 1.5em;
	font-weight: bold;
}
h3 .cat-data a{ padding: .2em 1em;}
a.btn:after,
.next a:after{
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	position: absolute;
	right: 1em;
	top: calc(50% - .75em);
	font-size: 1em;
}
.prev a{ padding: .5em 1em .5em 2em;}
.prev a:before{
	margin: 0 .5em 0 0;
	content: "\f053";
	font-family: 'Font Awesome 5 Free';
	position: absolute;
	left: 1em;
	top: calc(50% - .75em);
	font-size: 1em;
}
a.btn:hover,
.prev a:hover,
.next a:hover{
    /*color: var(--primary);*/
    text-decoration: none;
	transition: .5s;
	/*background: #eee;*/
}
a.btn.bg_blue{ background: #0ea3c7;}
a.l{ float: left;}
a.r{ float: right;}
.c a.btn{
	margin: 0 auto;
	display: inline-block;
}
/* PAGES ****************/

/* Flow 番号付きリスト＋下矢印　ol使用 */
ol.flow{
	margin: 0;
	counter-reset: li;
}
ol.flow > li{
	margin: 0 0 1.5em 2em;
	padding: 0 0 0 1.5em;
	position: relative;
	background: none;
	border-left: 2px dotted white;
	clear: both;
	list-style: none;
}
ol.flow > li:before{
	padding: .25em;
	color: black;
	background: #eee;
	border-radius: 1em;
	position: absolute;
	top: .25em;
	left: -1.75em;
    counter-increment: li;
	content: counter(li) "";
    /*content: counter(li) ". ";*/
	width: 1em;
	line-height: 1;
	text-align: center;
	font-size: 1.8em;
	font-weight: 700;
}
ol.flow li .w50p:last-of-type{ margin: 0 0 .75em;}
ol.flow > li strong{ font-size: 110%;}
ol.flow > li h4{ padding-left: 0;}
ol.flow > li h4:before{ display: none;}
ol.flow > li p{ margin: 0 0 .7em;}
ol.flow > li p:last-child,
ol.flow > li ul:last-child{ margin: 0;}
ol.flow.flow_arrow > li:after{
	padding: .2em 0 0;
	clear: both;
	display: block;
	color: #eee;
	border-top: dashed 1px rwhite;
	text-align: center;
	line-height: .8;
    content: "\f103\f103";
	letter-spacing: 3em;
	font-family: "Font Awesome 5 Free";
	font-size: 300%;
}
ol.flow.flow_arrow > li:last-child:after{ display: none;}

dl.q_and_a{
	margin: 0 0 1.5em;
	clear: both;
}
dl.q_and_a dt,
dl.q_and_a dd{
	position: relative;
}
dl.q_and_a dt{
	margin: 0;
	padding: 0 0 0 2em;
	font-weight: bold;
}
dl.q_and_a dd{
	margin: 0 0 .75em;
	padding: 0 0 .75em 2em;
	border-bottom: solid 1px #ddd;
}
dl.q_and_a dt:before,
dl.q_and_a dd:before{
	position: absolute;
	top: 0;
	left: 0;
	line-height: 1;
	font-size: 150%;
	font-weight: bold;
}
dl.q_and_a dt:before{
	color: #eee;
	content: "Q.";
}
dl.q_and_a dd:before{
	color: #0ea3c7;
	content: "A.";
}
dl.q_and_a img{
	margin: .5em 0 .5em 3%;
	float: right;
	max-width: 25%;
}

input[type="text"], input[type="email"], input[type="tel"], textarea, select, input[type="checkbox"]{
	margin: .2em 0;
	padding: .25em  .3em;
	vertical-align:middle;
	max-width:90%;
	border:1px solid #ccc;
	color: black;
	background: white;
	box-sizing: border-box;
	line-height: 1.8;
	font-size: 95%;
}
textarea{
	padding: .1em  1%;
	height:auto;
	width: 100%;
	max-width: 100%;
}
input[type="checkbox"]{ margin: 0 .3em 0 0;}
label{ margin: 0 .5em 0 0; display: inline-block;}
input[type="submit"],input[type="reset"],input[type="button"]{
	margin: .5em 0;
	padding: .5em 4em;
	color: white;
	border:0;
	border: solid 2px var(--primary);
	background: var(--primary);
	cursor: pointer;
	line-height: 2.2;
	font-size: 1em;
}
input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
	cursor:pointer;
	transition: .5s;
    opacity: .8;
}
*:first-child+html input[type="submit"]{padding:3px;}

.tool-container{ background: #e9e5e5; box-shadow: 0 5px 5px rgba(0,0,0,.25); border-radius: 0;}

@media (max-width: 767px){
    body:not(.home) #wrapper:before { height: 15vw;}
	#wrapper, #header, .inner{ width: auto;}
    #content,
	#sidebar{
		margin: 2em auto 4em;
		padding: 0 15px;
		clear:both;
		width:auto;
		float:none;
		box-sizing: border-box;
	}
    #sidebar{ max-width: 400px;}
    
	#header h1{ text-align: center; font-size: .7em;}
	#headerInfo{ padding: 0 10px; float: none; font-size: .8em; display: none;}
    #headerInfo p.tel a{ font-size: 1.75em;}
	#headerInfo p{ padding: 0; text-align: center;}
	#header h2 img{ max-width: 65%; max-height: 100px;}
	.panel ul{ margin:0 auto;}
	.panel ul ul{ padding:0;}
	nav div.panel{ float:none;}
    
    h3, .h3{ font-size: calc(.9em + .9vw);}

	#sidebar{ padding-top: 0;}
	table th,
	table td{
		padding: .3em;
		width: auto !important;
		font-size: 80%;
	}
	table td{ word-break: break-all;}
	.wp-caption-text{ font-size: 85%;}
	.pagenav{ margin: 0 10px 2em;}
	
	.column1, .column2,
	.alignleft .column1,
	.alignleft .column2
	.alignright .column1,
	.alignright .column2{ padding: .75em;}

	iframe{ height: 80vh;}
    
    .dsp_pc{ display: none;}
    .dsp_sph{ display: inherit;}

	.inline_btns.col_sm_3 > li{ width: 50%;}

	.thumbWrap ul.thumbUnder li{
        width:30%;
        float:left;
        margin:0 1% 0 2%;
	}
	.thumbWrap ul.thumbUnder li img{ width:100%;}
    
	#banners{
	width:100%;
	text-align:center;
	}
	#banners p img{ max-width: 300px;}
	#contactBanner{ margin:0 auto;}
    
	/* Flow *//* Flow 1 */
	.post ul.flow1{ border-radius: 0;}
	.post ul.flow1 > li,
	.post ul.flow1 > li:nth-child(3){
		padding: 1em;
		width: 100%;
		height: auto;
		display: block;
		border-bottom: solid 1.5em white;
	}
	.post ul.flow1 > li:last-child{ border: none;}
	.post ul.flow1 > li:before,
	.post ul.flow1 > li:nth-child(3):before{
		margin-left: -1.5em;
		top: auto;
		right: auto;
		left: 50%;
		bottom: -2em;
		width: 3em;
		height: 3em;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
		border-color: #111;
	}
	#footer{
        padding: 0;
	}
	#footerLogo, #footer ul{
        float:none;
        width:auto;
        text-align:center;
	}
    #footerLogo{ max-width: 50%}
	/*#footer ul{ display: none;}*/
    #footer ul li { display: block;}
    #footer ul li a{ padding: .25em 1.5em; border-bottom: solid 1px var(--light);}
}
@media only screen and (max-width: 644px){
    #header h2{ margin: .5em auto 0; max-width: none;}
    #header ul { display: none;}
	#mainImg{ overflow: hidden;}
    /*#mainImg img {
        margin: 0 -15%;
        display: block;
        width: 130%;
        max-width: 130%;
    }*/
	img.alignright, img.alignleft{
	display:block;
	margin:5px auto 20px auto;
	}
	.alignright,.alignleft{ float:none;}
	.thumbWrap ul.thumbUnder li{
	width:95%;
	margin-bottom:10px;
	}
	.thumbWrap ul.thumbUnder li img{ width:100%;}
	#banners p{ float:none;}
	#banners p img{ width:100%;}
}

@media (max-width: 500px){
	.nobr br{ display: none;}
	.f_l, .f_r{ margin-bottom: 2em; float: none;}
	.w15p, .w20p, .w25p,.w30p{ margin-left: auto; margin-right: auto; width: 40%;}
	.w33p, .w35p,.w40p, .w50p, .w60p,.w65p,.w70p,.w80p,.w90p{ width: 100%;}
	.w33p{ margin: 0 0 1em;}
	.inline_btns.col_sm_3 > li{ padding-right: 0 !important; width: auto; display: block;}
	.Dlist{ margin: 0 0 1em;}
	.Dlist dt, #toppage .Dlist dt,
	.Dlist dd, #toppage .Dlist dd{ float: none; width: auto;}
	.Dlist div{ margin: 1em 0 0;}
	.Dlist dt, .Dlist.dt_S > dt, .Dlist.dt_L > dt, .Dlist.dt_LL > dt,
	.Dlist dd, .Dlist.dt_S dd, .Dlist.dt_L > dd, .Dlist.dt_LL > dd{ float: none; padding-left: 0;}
	.alignleft, .alignright,
	.img_l, .img_r{
		margin: 0 auto 1.5em;
		float: none;
		display: block;
		max-width: 60%;
	}
	.gallery-item,
	.gallery-item:nth-of-type(odd){
		/*margin: 0 0 1em !important;*/
		width: auto !important;
		border: none !important;
	}
	.list50 { margin: 0 10px 2em;}
	.list50 li{ float: none; width: auto;}
	.list50 li:nth-child(odd),.list50 li:nth-child(even){ padding: 0;}
	/*#footer li a span{ display: none;}*/
	.thumbWrap ul{ display: block;}
	.thumbWrap li{ padding: 0 0 1em; display: block;}
	.thumbWrap li img{ max-width: 220px;}
}
@media (min-width: 501px) and (max-width: 767px){
	.thumbWrap li{ padding: 0 10px 1.5em 0;}
}
@media (max-width: 600px){
	.mainimg_pc{ display: none;}
	.mainimg_sph{ display: inline-block;}
}
@media (min-width: 768px) and (max-width: 1060px){
	#wrapper, .inner{ width: auto; max-width: calc(100% - 40px);}
	/*#content{ margin: 0; width: 71%;}*/
	#sidebar{ width: 25%; line-height: 1.7; font-size: 90%;}
	#header p,
	#header ul,
	#header .contact{ margin-right: 10px;}
	nav#mainNav{ font-size: 95%;}
	nav#mainNav ul li:hover ul{ top:41px;}
	.timetable th, .timetable td{
		padding: .2em;
		font-size: .8em;
	}
	.alignright, .alignleft { max-width: 35%;}
	ul.post,
	ul#banners{ margin: 0 1.5%;}
	#sidebar ul#banners{ margin: 0;}
}

/* Wordpress ---------------------------------------------------------*/

.wp-block-separator{ border: none;}
.wp-block-columns{ margin: 0 0 2em;}
.wp-block-image.c{ margin: auto;}
.post .wp-block-image, .wp-block-table {/* margin-bottom: 1.5em;*/ z-index: 2; position: relative;}
.wp-block-image .alignleft{ margin: .25em 1.5em 1.5em 0;}
.wp-block-image .alignright{ margin: .25em 0 1.5em 1.5em;}
@media (max-width: 767px){
	.wp-block-image .alignleft, .wp-block-image .alignright{ margin: 0 .1em .25em; max-width: none; float: none;}
}
.wp-block-table.is-style-stripes tbody tr:nth-child(2n+1){ background: rgba(0,0,0,.05);}
.wp-block-table.is-style-stripes{ border: none;}
.wp-block-table.is-style-stripes table{ border-collapse: inherit; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc;}
.wp-block-image figcaption{ margin-bottom: 0; font-size: .9em;}
#sidebar .wp-block-image{ margin-bottom: .5em;}
ul li.blocks-gallery-item{ padding: 0}

.wp-block-file a.wp-block-file__button{ padding: .25em 1.5em; color: var(--primary); border: solid 1px var(--primary);}
.wp-block-file a.wp-block-file__button:hover{ text-decoration: none;}
.wp-block-file a.wp-block-file__button[href$=".pdf"]::before{ display: none;}
.wp-block-file:not(.wp-element-button) { font-size: 1.2em;}

.underline{ display: inline-block; position: relative; text-decoration: none !important;}
p.underline{ display: block;}
.underline:before{ position: absolute; content: ""; width: 100%; border-bottom: #ccc solid .5em; bottom: .25em; z-index: 0; opacity: .25;}


/* Wordpress vk ---------------------------------------------------------*/

.vk_borderBox .vk_borderBox_title_container .vk_borderBox_title,
.vk_borderBox .vk_borderBox_title_container i:first-child,
.vk_borderBox .vk_borderBox_title_container .svg-inline--fa{ font-size: 1.1em}
.vk_borderBox.is-style-vk_borderBox-style-solid-round-tit-tab > .vk_borderBox_body {border-radius: 0 0 1.25rem 1.25rem;}
.vk_borderBox.is-style-vk_borderBox-style-solid-round-tit-tab > .vk_borderBox_title_container{padding: 1em 1.5em .8em; border-radius: 1.25rem 1.25rem 0 0; display: block;}
.vk_borderBox.is-style-vk_borderBox-style-solid-kado-tit-onborder > .vk_borderBox_title_container{ padding: 0 .5em;}

.vk_button, .editor-styles-wrapper .vk_button { margin: 0 auto 1.5em;}
.vk_button .vk_button_link { min-width: auto; min-height: auto;border-width: 2px;}
.vk_button .vk_button_link.btn{ padding: .65em 2.25em .75em 1em;}
.vk_button .has-text-color.is-style-outline,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline,
.vk_button .has-text-color.is-style-outline:hover,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover{ border-width: 2px;}
.vk_button .has-text-color.is-style-outline:hover:after,
.editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover:after{ color: white;}

.btn-primary,.btn-primary:hover{ background-color: #fff !important; border-color: var(--primary) !important; color: black !important;}
.btn-secondary,.btn-secondary:hover{ background-color: #eee !important; border-color: var(--primary) !important; color: black !important;}
.vk_button a.btn:hover{ opacity: .8;}
.vk_button .vk_button_link.btn-block{ width: auto; display: block; font-weight: bold;}

:root .has-primary-background-color,
:root .editor-styles-wrapper .has-primary-background-color{}

ul.is-style-vk-check-circle-mark li, ol.is-style-vk-check-circle-mark li{margin: .35em 0; padding-left: 1.5em;}
ul.is-style-vk-check-circle-mark li::before, ol.is-style-vk-check-circle-mark li::before{ left: 0;}
ul.vk-has-cyan-bluish-gray-color li::before, ol.vk-has-cyan-bluish-gray-color li::before{ color: #b3cbd9}
ul.is-style-vk-default li, ol.is-style-vk-default li{padding: 0; margin: 0 0 0 1.25em; list-style: disc; line-height: 1.8;}
ul.is-style-vk-default li:before, ol.is-style-vk-default li:before{ display: none;}
ul.is-style-vk-arrow-mark, ul.is-style-vk-triangle-mark, ul.is-style-vk-check-mark, ul.is-style-vk-check-circle-mark, ul.is-style-vk-check-square-mark, ul.is-style-vk-handpoint-mark, ul.is-style-vk-pencil-mark, ul.is-style-vk-smile-mark, ul.is-style-vk-frown-mark, ul.is-style-vk-numbered-circle-mark, ul.is-style-vk-numbered-square-mark,
ol.is-style-vk-arrow-mark, ol.is-style-vk-triangle-mark, ol.is-style-vk-check-mark, ol.is-style-vk-check-circle-mark, ol.is-style-vk-check-square-mark, ol.is-style-vk-handpoint-mark, ol.is-style-vk-pencil-mark, ol.is-style-vk-smile-mark, ol.is-style-vk-frown-mark, ol.is-style-vk-numbered-circle-mark, ol.is-style-vk-numbered-square-mark{ padding-inline-start: 0;}
ul.is-style-vk-check-mark li, ol.is-style-vk-check-mark li,
ul.is-style-vk-check-square-mark li, ol.is-style-vk-check-square-mark li{ padding-left: 1.5em;}
ul.is-style-vk-check-mark li, ol.is-style-vk-check-mark li{ margin: 0 0 0 .5em; line-height: 1.8;}
ul.is-style-vk-check-mark li:before, ol.is-style-vk-check-mark li:before,
ul.is-style-vk-check-square-mark li:before, ol.is-style-vk-check-square-mark li:before,
ul.is-style-vk-triangle-mark li::before, ol.is-style-vk-triangle-mark li::before{ left: 0;}

.vk_step{ margin: 0;}
.vk_step .vk_step_item{ padding-bottom: 0;/* clear: both;*/ min-height: 5em;}
.vk_step_item_lineStyle-default::before {
	left: calc(2em - 2px);
	bottom: -4px;
	background: #eee;
}
.vk_step .vk_step_item .vk_step_item_dot{ width: 4em; height: 4em; line-height: 1.5;}
.vk_step .vk_step_item .vk_step_item_dot i:before{ display: none;}
.vk_step .vk_step_item .vk_step_item_dot_caption{ font-size: .8rem;}
.vk_step ul{ margin: 0 0 0 1.5em; padding-top: 1em; line-height: 1.65;}
/*.vk_step ul:last-child{ margin-bottom: 1.5em;}*/
.vk_step ul li{ list-style-type: square; padding: 0;}
@media (max-width: 767px){
	.vk_step ul{ padding-top: 0;}
}
@media (min-width: 768px){
	/*2colum*/
	.vk_step{ padding-top: 2em;}
	.vk_step ul{ padding-top: 0;}
	.vk_step .vk_step_item{
		margin: -1.5em 0 0 auto;
		padding-bottom: 1em;
		width: calc(50% - 2.5em);
	}
	.vk_step .vk_step_item.mg-5EMt{ margin-top: -5em !important;}
	.vk_step .vk_step_item.pd1EMb{ padding-bottom: 1em !important;}
	.vk_step .vk_step_item:nth-of-type(2n+1) {
		margin: -1.5em auto 0 0;
		padding: 0 4.5em 1em 0;
	}
	.vk_step .vk_step_item:nth-of-type(2n+1) .vk_step_item_dot {
		left: auto;
		right: 0;
	}
	.vk_step_item_lineStyle-default:nth-of-type(2n+1)::before {
		left: auto;
		right: calc(2em - 2px);
	}
	.vk_step_item_content { display: inline-block;}
	.post .vk_step_item_content ul::after{ clear: none}
}

/* --- GET HIGHT --- */
section:after, .inner:after, nav .panel:after, nav#mainNav ul:after, .newsTitle:after, .bg:after, .post:after, .pagenav:after, ul#banners:after, #footer:after, #footer li a:after, .flexbox:after, .clrfx:after, .Dlist:after, .post-content:after, .post ol.flow > li:after, .post ul:after, .thumb:after, .list50:after, ul.post li:after, .gallery:after, .column1:after, .column2:after, .vk_step_item_content:after{ content:""; display: table;clear: both;}
section, .inner, nav .panel, nav#mainNav, nav#mainNav ul, .newsTitle, .bg, .post, .pagenav, ul#banners, #footer, #footer li a, .flexbox, .clrfx, .Dlist, .post-content, .post ol.flow > li, .post ul, .thumb, .list50, ul.post li, .gallery, .column1, .column2, .vk_step_item_content {zoom: 1;}

.grecaptcha-badge{
	box-shadow: none !important;
	border: solid 1px #ddd;
	box-sizing: border-box;
	display: none;
}
