/*--------------------------------
 body
--------------------------------*/

body{
	padding-top:10px;
}
.bgGray{
	background:#f7f7f7;
	padding:40px 0;
}
.row {
  max-width: 62rem;
}

.small{
	font-size:0.8em;
}

.mt0{margin-top:0px;}
.mt5{margin-top:5px;}
.mt10{margin-top:10px;}
.mt20{margin-top:20px;}
.mt13{margin-top:30px;}

.mb0{margin-bottom:0px;}
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}

.bnr{
	margin-bottom:20px;
}

p.lead{
	font-size:1em;
	line-height:1.8;
}

/*--------------------------------
 img
--------------------------------*/
a img{
	box-shadow:0 0 0 #000;
	transition:all linear 200ms;
}

a img:hover{
	opacity:0.7;
}
img.gray{
	 -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    filter: grayscale(100%);

}
img.img-circle{
	border-radius:50%;
}

.image-wrapper{
	position:relative;
}

.image-inner{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	text-align:center;
	padding:30% 2% 0 2%;
}
.image-inner h3{
	color:#8DC63F;
	text-shadow:1px 1px 0 #333;
	border:none;
	font-size:1.5em;
}

/*--------------------------------
 header
--------------------------------*/
.desc{
	color:#666;
	margin:2px 0;
}

h2.logo{
	margin:3px 0;
	line-height:1;
	max-width:140px;
}

.navWrapper{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	margin:0 auto;
}

.top-bar {
    background: #FFFFFF;
}

.top-bar .name h1 a, .top-bar .name h2 a, .top-bar .name h3 a, .top-bar .name h4 a, .top-bar .name p a, .top-bar .name span a {
    color: #000;
}

.navigation{
	margin-top:0px;
}

.top-bar-section ul{
	margin:0;
	padding:0;
}
.top-bar-section li:not(.has-form) a:not(.button) {
    background: #FFFFFF;
    color: #000;
}
.top-bar-section li:not(.has-form) a:not(.button):hover {
    background: #f2f2f2;
    color: #000;
}
.top-bar-section li.active:not(.has-form) a:not(.button) {
    background: #FFFFFF;
    color: #000;
}
.top-bar-section li.active:not(.has-form) a:not(.button):hover {
    background: #f2f2f2;
    color: #000;
}
.top-bar-section .dropdown {
        background: #f2f2f2;
        color: #000; 
		border:1px solid #ccc;
}
.top-bar-section .dropdown li a {
        background: #f2f2f2;
        color: #000;
		
}
.top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
        background: #FFFFFF;
        color: #000; 
}
.top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button):hover {
        background: #f2f2f2;
        color: #000; 
}

.top-bar.expanded .title-area {
    background: #FFF;
}
.top-bar-section ul li {
    background: #FFF;
}
.top-bar .toggle-topbar.menu-icon a span::after {
	color:#444;
    box-shadow: 0 0 0 1px #444, 0 7px 0 1px #444, 0 14px 0 1px #444;
}
.top-bar .toggle-topbar.menu-icon a {
    color: #666;
}
.top-bar-section li:not(.has-form) a:not(.button) {
	background:#FFF;
    color: #000;
	font-weight:bold;
}



@media (min-width:640px){
.right-side{
		position:fixed;
	top:0;
	right:0;
}
.top-bar {
	
	height:45px;
}
h2.logo{
	margin:0 0 7px 0;
	max-width:240px;
	padding:0;
}
h2.logo img{
	height:auto;
}
.tel{
	margin:10px 0;
}
.top-bar-section ul{
	display:table;
	width:100%;
}

.top-bar-section ul li{
	display:table-cell;
	float:none;
	text-align:center;
	border-right:1px solid #ccc;
}


.top-bar-section ul li:first-child{
	border-left:1px solid #ccc;
}

}

/*--------------------------------
 border-box
--------------------------------*/
.border-box {
	border-top: 1px solid #CCC;
}
.border-box .cell{
	border-left: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	text-align:center;
}
.border-box .cell figure{
	max-width:180px;
	margin:3vw auto 2vw;
}
.border-box .cell h4{
	font-weight:700;
	font-size:1.2rem;
}
/*--------------------------------
 slider
--------------------------------*/
#slider{
	background:#FFF;
	margin-bottom:40px;
}

.sp-horizontal .sp-arrows {
    width: 100%;
    top: 50%;
    margin-top: -15px;
}
.sp-next-arrow:after, .sp-next-arrow:before, .sp-previous-arrow:after, .sp-previous-arrow:before{
    background-color: #b8a37b;
}


/*--------------------------------
 content
--------------------------------*/
.fullWidth { 
width: 100%; 
margin-left: auto; 
margin-right: auto; 
max-width: initial; 
}

#primary{
	margin:20px auto;
}

section{
	margin-bottom:50px;
}

article{
	margin:30px 0;
}

.box{
	border:2px solid #ccc;
	padding:20px;
	font-weight:bold;
}

.box a{
	display:block;
}
section p,section li{
	font-size:1em;
	line-height:1.8;
}
h1.entry-title{
	font-weight:bold;
	font-size:2.4rem;
	text-align:center;
	margin-bottom:30px;
	position:relative;
}
h2.entry-title{
	font-weight:bold;
	font-size:1.4rem;
	text-indent:16px;
	text-align:center;
	margin-bottom:50px;
	position:relative;
	color:#1f4fc8;
}

h2.entry-title strong{
	font-size:1.5em;
	color:#da1212;
}
h2.entry-title:after{
	position:absolute;
	bottom:-15px;
	left:calc(50% - 30px);
	content:"";
	display:block;
	width:60px;
	height:2px;
	background:#1f4fc8;
	margin:0 0 0 -15px;
}

h2.entry-title span{
	font-weight:normal;
	font-size:0.7em;
	color:#888;
}

h2.flow{
	font-weight:bold;
	font-size:1.4em;
	margin-bottom:10px;
	color:#00479d;
}

h3{
	font-weight:bold;
	font-size:1.3em;
	margin-bottom:25px;
	padding-bottom:5px;
	color:#000;
}

h3.entry-title{
	font-weight:bold;
	font-size:1.2rem;
	padding:5px 10px;
	border:2px solid #1f4fc8;
	margin-bottom:10px;
	color:#1f4fc8;
}

h3.sub-title{
	font-weight:bold;
	font-size:1em;
	padding:5px 10px;
	margin-bottom:10px;
	color:#000;
	color:#204091;
}


span.icon{
	float:right;
	margin-right:10px;
	display:block;
}
h3.sub-title:after{
	display:block;
	clear:both;
	content:'';
}


h4.entry-title{
	font-weight:bold;
	font-size:1.1em;
	margin-bottom:10px;
	color:#00479d;
}

h5{
	font-weight:bold;
	font-size:0.95em;
}

img.icon{
	padding:1px;
}


ul.news li{
	list-style:none;
	font-size:0.9em;
	border-bottom:1px dotted #ccc;
	padding:5px 0;
}

/*--------------------------------
 secondary
--------------------------------*/
#secondary{
	margin:20px 0;
}

#secondary .inner{
	border:1px solid #ccc;
	margin:0 0 20px 0;
}

#secondary h3{
	background:#00479d;
	font-size:0.9em;
	color:#FFF;
	padding:7px;
	margin-bottom:5px;
}

#secondary .widget{
	margin-bottom:30px;
}

#secondary ul{
	margin:0;
	padding:0 0 20px 0;
}

#secondary ul li{
	list-style:none;
	border-bottom:1px dotted #bbb;
	font-size:0.85em;
}

#secondary ul li a{
	display:block;
	
	padding:5px 10px;
}

#secondary ul li a:hover{
	background:#f7f7f7;
}
/*--------------------------------
 sns
--------------------------------*/
.sns{
	display:flex;
	justify-content:center;
	column-gap:20px;
	margin:20px auto;
}

/*--------------------------------
 footer-menu
--------------------------------*/
.footer-menu{
	font-size:0.8em;
	text-align:center;
}

footer{
	background:#f4f4f4;
	padding:3vh 0;
	margin-bottom:10px;
}
footer p{
	font-size:0.9em;
}
footer h3{
	font-size:1.1em;
	border-bottom:1px solid #ccc;
	margin:0 0 7px 0;
}
footer .inner{
	padding:15px;
}

footer .inner a{
}

footer .inner strong{
	display:block;
	font-size:1.6em;
}


/*--------------------------------
 breadcrumbs
--------------------------------*/
.breadcrumbs{
margin-bottom:20px;
	background:none;
	border:none;
	padding:15px 0;
	font-size:0.9rem;
}
/*--------------------------------
 table
--------------------------------*/
table.table{
	width:100%;
}
table.table th,
table.table td{
	line-height:1.8;
	font-size:1em;
}
table.newstable{
border:none;
}
table.newstable th{
background:#f4f4f4;
}
table.newstable td.subcatch{
color:#e70000;
	font-size:1.2em;
}
table.unstriped {
	border:none;
}
table.unstriped th,
table.unstriped td{
	background:#FFF;
	border-bottom:1px solid #bbb;
}
table.unstriped th{
	text-align:left;
}
table tbody, table tfoot, table thead {
    border: none;
}
table.table-bordered {
	font-size:0.9em;
}
table.table-bordered th{
	border-bottom:1px solid #bbb;
	text-align:left;
}
table.table-bordered td{
	border-bottom:1px solid #bbb;
}


/*--------------------------------
 form
--------------------------------*/
input{
	margin:0;
}
input[type="file"], input[type="checkbox"], input[type="radio"], select {
    margin: 0 0 0.5rem 0;
}
span.require{
	color:#f00;
}
input.small{
	width:4em;
	display:inline-block;
}
input.xs{
	width:5em;
	display:inline-block;
}
table.table th,
table.table td{
	line-height:1.8;
}
/*--------------------------------
 subpage
--------------------------------*/

.box1 h3{
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	margin:20px 0 10px;
	color:#85624a;
}

.box1 p{
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
	margin:20px 0 10px;
}

.box1 ul{
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
	font-size:0.95em;
}

.horizontal-item label{
	display:inline-block;
}

/*--------------------------------
 qa
--------------------------------*/
div.question{
	padding:10px 10px;
	background:url(img/bg_q.png) no-repeat left top;
	padding-left:2em;
	border-bottom:1px solid #ccc;
}
div.question p{
	font-size:1em;
	font-weight:bold;
}
div.answer{
	padding:10px 10px 0 10px;
	background:url(img/bg_a.png) no-repeat right bottom;
}
div.answer p{
	margin:0;
}
span.require{
	color:#e70000;
}
span.error, small.error {
    display: block;
    font-size: 0.75rem;
    font-style: italic;
    font-weight: normal;
    margin-bottom: 1rem;
    margin-top: -1px;
    padding: 0.375rem 0.5625rem 0.5625rem;
    background: #FFF;
    color: #e70000;
}


@media (max-width:640px){
	table.stack th,table.stack td{
		width:100%;
		display:block;
	}
	table.stack th{
		border-bottom:2px solid #000;
	}
}

/*---------------------
.wp-pagenavi
-----------------------*/
.wp-pagenavi{
margin:10px 0 20px 0;
}
.wp-pagenavi:after{
display:block;
clear:both;
}
.wp-pagenavi a, .wp-pagenavi span {
text-decoration: none;
font-size:0.8em;
border: 1px solid #ccc;
padding: 7px 12px;
margin: 2px;
color:#666;
}
.wp-pagenavi span.current {
background:#ccc;
border: 1px solid #ccc;
}