:root {
    --main_green_hex: #0B9444;
    --main_green_rgb: 11, 148, 68;
    --main_gray_hex: #383A35;
    --main_gray_rgb: 255,203,5;
    --main_orange_hex: #FCB040;
    --main_orange_rgb: 252, 172, 46;
    --main_blue_hex: #064985;
    --main_blue_rgb: 6,73,133;
    --widget_brown: #B36804;
    --main_font: 'Noto Sans JP';
	--main_banner: 600;
}

html, html * { /*z-index: 1;*/}
html, body { background: #F4F5F9; line-height: 180%; font-size: 100%; font-family: 'Noto Sans JP', sans-serif; }

/*.container {
	max-width: 1800px;
}*/

h1, h2, h3, h4, h5 { font-family: 'Roboto Condensed', 'Noto Sans JP', 'Arial', sans-serif; }

.nav_dloads a[href^="http"]
{ background:url(../image/icons/btn_external_link.png) 0px 1px no-repeat;padding-left:15px; background-size: 15px 16px; background-position:0px 5px;}
a.zip
{ background:url(../image/icons/btn_zip.png) 0px 1px no-repeat !important;padding-left:18px; background-size: 13px  !important; background-position:0px 5px;}
a.doc, a.docx, a.rtf
{ background:url(../image/icons/btn_doc.png) 0px 1px no-repeat !important;padding-left:18px; background-size: 14px ; background-position:0px 5px;}
a.ppt, a.pptx, a.pps 
{ background:url(../image/icons/btn_ppt.gif) 0px 1px no-repeat !important;padding-left:18px; background-size: 14px ; background-position:0px 5px;}
a.xls, a.xlsx, a.csv 
{ background:url(../image/icons/btn_xls.png) 0px 1px no-repeat !important;padding-left:18px; background-size: 14px ;background-position:0px 5px; }
a[href$=".pdf"], a.pdf 
{ background: url(../image/icons/btn_pdf.png) 0px 2px no-repeat !important; padding-left:15px;background-size: 12px 12px !important ;background-position:0px 5px;} 
a.no-icon { background: none !important; background-position:0px; padding-left: 0; }


header {
    min-height: 55px;
    background: rgba(var(--main_blue_rgb),1);
    position: fixed;
    z-index: 199;
    top: 0;
    right: 0;
    left: 0;
    padding: 5px;

    -webkit-transition: .3s all ease;
    -moz-transition: .3s all ease;
    transition: .3s all ease;
}
header a {
    text-decoration: none;
}
header .logo {
    position: absolute; 
    margin: 0px auto;
    left: 0;
    right: 0;
}
header .logo a {
    display: block; 
    padding: 0;
}
header .logo a:hover {
    transform: scale(1.02);
    -webkit-transition: .3s all linear;
    -moz-transition: .3s all linear;
    transition: .3s all linear;
}
header .logo img {display: block; height: auto;}

header .logo, header .logo a,header .logo img {width: 90px /* 115px */;}
.pg-inside header .logo, .pg-inside header .logo a,.pg-inside header .logo img {width: 70px;}

header nav {padding-top: 50px;padding-bottom: 40px;font-size: 14px;}
header.special {height: 95px ; } 

header.highlight {height: 50px ; box-shadow: 0 2px 3px rgba(0,0,0,0.1);}
header.highlight .logo { margin-top: 0px;}
/* header.highlight .logo,
header.highlight .logo img ,
header.highlight .logo a {width: 65px ;}  */
header.highlight .logo.sm,
header.highlight .logo.sm img ,
header.highlight .logo.sm a {width: 90px ;}

header.special #wrap_head_navs {padding-top: 20px; }
header.highlight #wrap_head_navs{padding-top: 5px; }

main.special {margin-top: 59px /* 105px */; }
main.highlight {margin-top: 59px /* 100px */; }

@media only screen and (max-width: 1360px){
	header.special { height: 95px; } 
	header.special #wrap_head_navs {padding-top: 22px; }
	
	header .logo, header .logo a, header .logo img {width: 95px;}	
	/* main.special {margin-top: 100px; }	 */
	header.highlight { height: 50px; }
	header.highlight #wrap_head_navs{padding-top: 5px; }
}

@media only screen and (max-width: 1123px){
	header, header.special, header > .container {height: 55px !important; } 
	header .logo, header .logo a,header .logo img {width: 75px;}
	#wrap_head_navs { display: none; } 
	main.special {margin-top: 59px; }
}
  



header a {
    display: inline-block;
    padding: 5px;
    position: relative;
    color: #fff; /*letter-spacing: -0.05em;*/
}
header a:hover { color: yellow; }

header .head-contact { font-size: 95%; line-height: 1;}
header.highlight .head-contact { font-size: 75%; display: none; }

@media only screen and (max-width: 1123px){
	header.highlight .head-contact { font-size: 75%; display: block; }
}

header ul {
    list-style: none;
    text-align: center;
    font-weight: bold;
}
header ul ul { 
    font-weight: normal;
    position: relative;
    opacity: 1;

    -webkit-transition: .8s all ease;
    -moz-transition: .8s all ease;
    transition: .8s all ease;
}
header ul ul:before {
    content: " ";
    display: block;
    position: absolute;
    top: -3px; 
    left: 20px; 
    width: 5px;
    height: 5px;
    background: #d43c41;
    transform: rotate(45deg);
} 
header ul.navbar-right ul:before {
    right: 20px;
    left: auto; 
}


header ul ul li { 
    -webkit-transition: .8s all ease;
    -moz-transition: .8s all ease;
    transition: .8s all ease;
}

header ul > li:focus, 
header ul > li:hover, 
header ul > li:active, 
header ul > li.active {
    background-color: rgba(var(--main_green_rgb), 1); 
}

header ul > li:hover a {
	background: transparent; 
} 

header .nav > li > a {
	font-family: 'Roboto Condensed','Arial-Narrow', 'helvetica'; font-size: 17px; font-weight: bold; padding-top: 10px;padding-bottom: 10px;
}

@media (max-width: 1360px) {
	header .nav > li > a {font-size: 16px;}
}


header .nav > li > a:focus, 
header .nav > li > a:hover {
    color: #FFF;
    background-color: transparent;
} 
header .menutoggle {
    display: none;
} 

header .navbar-collapse { 
    padding-left: 0px;
}






.maxwidth {
    max-width: 75rem;
    margin: auto;
}
  



.transition {
    -webkit-transition: .3s all ease;
    -moz-transition: .3s all ease;
    transition: .3s all ease;
}





.postDate, .scrollDate { font-size:85%; text-transform:uppercase; font-weight:normal; padding:1px 0 0 0px; margin:0; display: inline-block; color: #999; }
.postDate { display: block; }


/*-------------------------------------------------------------------------------------------------------
@ FORMS
-------------------------------------------------------------------------------------------------------*/
 
input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}


.form-control:-moz-placeholder,input:-moz-placeholder,textarea:-moz-placeholder{color:#b0b1b3}
.form-control::-moz-placeholder,input::-moz-placeholder,textarea::-moz-placeholder{color:#b0b1b3}
.form-control:-ms-input-placeholder,input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#b0b1b3}
.form-control::-webkit-input-placeholder,input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#b0b1b3}
.form-control.search-control::-webkit-input-placeholder,input.search-control::-webkit-input-placeholder,
.form-control.search-control::-moz-placeholder,input.search-control::-moz-placeholder {color:#FFF}

.form-control{display:block;width:100%;height:34px;padding:6px 12px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;border:1px solid #DDD;border-radius:3px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s}
.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6)}

.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:none/*#eee*/}

textarea.form-control{height:auto}
 


/*-------------------------------------------------------------------------------------------------------
@ NOTIFICATION ALERTS
-------------------------------------------------------------------------------------------------------*/
 
.notify-wrap {
	position:fixed; left: auto; right: auto; width:100%; margin:0px auto 0; min-height: 26px; z-index:9999999 !important;
}
.notify-box{
	width:100%; max-width:450px; margin:0px auto 0;
	background:#FFFF99;
	padding:5px;
	font-weight:bold;
	font-size:13px;
	color:#222;
	line-height: 1.15;
	border:1px #FFCC66 solid;
	clear:both;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	-webkit-box-shadow: 0px 1px 3px #aaa;
	-moz-box-shadow: 0px 1px 3px #aaa;
	box-shadow: 0px 1px 3px #aaa;
	text-align:center; 
	z-index:9999999 !important 
}
.notify-box p {
	padding:0; margin:0;
}



/*-------------------------------------------------------------------------------------------------------
@ CUSTOMS
-------------------------------------------------------------------------------------------------------*/


.highbtn {
  color: #333; 
  font-size: 11px;
  font-weight: normal;
  text-transform:uppercase;
  margin: 4px 0 0;
  padding: 2px 9px;
	line-height: 1.5;
  background-color: #FFEA00;
	
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
	height: 21px;
	width: 50%;
}

.highbtn.hcont {
	margin: 0; padding:1px 3px; background-color:#7cc576; float:right; font-size:10px; min-width:50px; text-align:center; color:#fff; 
}



/*-------------------------------------------------------------------------------------------------------
@ SEARCH RESULTS
-------------------------------------------------------------------------------------------------------*/

.searchitem { border-bottom:1px solid #e5e5e5; padding: 10px 0px 8px 0px; display: block; }
.searchtitle {  margin:5px 0; color: #0C74BB; }
.searchtitlesub { color:#993333; font-size:11px; line-height:15px; padding: 1px 5px 3px 0; display:block;}

.paginator { border-top:1px dotted #dedede; margin:5px 0 5px; display:block; position:relative; background: none; padding: 10px; }
.paginator .paginate, .paginator .current, .paginator .inactive { font-size: .9em; display: inline; padding: 4px 6px 4px 6px;}
.paginator a { border: 1px solid #000080 !important; }
.paginator a.paginate {	text-decoration: none;	color: #000080; background-color:#FFFFFF; }
.paginator a.paginate:hover { background-color: #000080; color: #FFF; }
.paginator a.current { cursor: default;	background:#000080;	color: #FFF; text-decoration: none; }
.paginator span.inactive { border: 1px solid #999; color: #999; cursor: default; background-color:#FFFFFF;}
.paginator .pagejump { float:right;  }

.paginator select.paginate { padding: 4px 0 4px 3px !important; width:50px; }
.paginator select.paginate option { padding: 0 10px 0 3px !important; }





/*-------------------------------------------------------------------------------------------------------
@ SOCIAL CONNECT BUTTONS
-------------------------------------------------------------------------------------------------------*/


.btns_social { display:scroll;position:fixed;bottom:10%;right:0px;background:none; overflow:hidden; width:40px; padding:5px; z-index:10;}
.btns_social a img { margin-bottom:2px; z-index:99; width: 25px; }
.btns_social a, .social_icon {height: 30px;width: 30px;line-height: 30px;padding: 0px;border-radius: 20px;-webkit-border-radius: 20px;-moz-border-radius: 20px;background-color: #515962;display: block;float: left;text-align: center;color: #FFF;float: left;margin-bottom:10px; }
.btns_social a .fa { line-height: 30px; padding-left: 5px;}
.social_icon {margin-right: 5px; padding-left: 0 !important; padding-right: 0 !important;}
.btns_social .fb_icon { background:#2D4489; color: #fff;}
.btns_social .tw_icon { background:#3370C1; color: #fff;}
.btns_social .yt_icon { background:#C11F1E; color: #fff;}
.btns_social .ig_icon { background:#ffc838; color: #fff;}
.btns_social .gplus_icon { background:#C11F1E; color: #fff;}
.btns_social .mail_icon { background:#2D8439; color: #fff;}

@media only screen and (max-width: 900px) 
{ .btns_social{ /*display: none;*/ bottom:0; left:5px; width:auto; height:35px; z-index:99999; background: none; } }






.totop {
    display: none;
    position: fixed;
    bottom: 0px;
    right: 0;
    left: 0;
    margin: auto;
    width: 44px;
    height: 38px;
    color: #f7c86b;
    background: #20388a;
    font-size: 30px;
    text-align: center;
    opacity: 0.7;
    cursor: pointer;
    z-index: 999;
    text-shadow: 0px 3px 0px #000;
    -webkit-transition: .3s opacity ease;
    -moz-transition: .3s opacity ease;
    transition: .3s opacity ease;
}



.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem 0 rgba(33, 40, 50, 0.2) !important;
}

.shadow {
  box-shadow: 0 0.15rem 1.75rem 0 rgba(33, 40, 50, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

.m-10 {
  margin: 6rem !important;
}

.mt-10,
.my-10 {
  margin-top: 6rem !important;
}

.mr-10,
.mx-10 {
  margin-right: 6rem !important;
}

.mb-10,
.my-10 {
  margin-bottom: 6rem !important;
}

.ml-10,
.mx-10 {
  margin-left: 6rem !important;
}

.m-15 {
  margin: 9rem !important;
}

.mt-15,
.my-15 {
  margin-top: 9rem !important;
}

.mr-15,
.mx-15 {
  margin-right: 9rem !important;
}

.mb-15,
.my-15 {
  margin-bottom: 9rem !important;
}

.ml-15,
.mx-15 {
  margin-left: 9rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.p-10 {
  padding: 6rem !important;
}

.pt-10,
.py-10 {
  padding-top: 6rem !important;
}

.pr-10,
.px-10 {
  padding-right: 6rem !important;
}

.pb-10,
.py-10 {
  padding-bottom: 6rem !important;
}

.pl-10,
.px-10 {
  padding-left: 6rem !important;
}

.p-15 {
  padding: 9rem !important;
}

.pt-15,
.py-15 {
  padding-top: 9rem !important;
}

.pr-15,
.px-15 {
  padding-right: 9rem !important;
}

.pb-15,
.py-15 {
  padding-bottom: 9rem !important;
}

.pl-15,
.px-15 {
  padding-left: 9rem !important;
}



.bold	  { font-weight: 900 !important; }
.italic	  { font-style: italic !important; }
.nopadd, 
table.nopadd td, table.nopadd tr {padding: 0 !important;}
.nobold	  { font-weight: 100 !important;}

.fa { margin-right: 5px;}
 

.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0062cc!important}.text-secondary{color:#868e96!important}a.text-secondary:focus,a.text-secondary:hover{color:#6c757d!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#1e7e34!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#117a8b!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#d39e00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#bd2130!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#dae0e5!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#1d2124!important}.text-muted{color:#868e96!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.visible{visibility:visible!important}.invisible{visibility:hidden!important}