/* Template: Master CSS file */

/*****************************************
Table Of Contents:
- General Styles
- Link
- Margin Padding
- Table
- Images
- Header Bgswitcher
- Page Header
- Navigation
- Extra Pages
- Header
- Form
- Footer
- Copyright
- Back To Top Button
- Pagination
- Error
- Media Queries
******************************************/

/*****************************************
Colors:
- Backgrounds - light gray #fbfaf5
- Headings text - black #7f7a77
- Body text - dark gray #2b2b2b
- Buttons, icons - green #a0c88c
******************************************/


/**************************/
/*     General Styles     */
/**************************/
body,
html {
    width: 100%;
	height: 100%;
    margin: 0
}
body, p {
	color: #333; 
	font: 500 1rem/1.625rem "Open Sans", sans-serif;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, 
fieldset, input, textarea, p, blockquote, th, td{
    margin: 0; 
    padding: 0;
}
html{
    overflow-y: scroll;
}

body {
    background-color: #fff;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
    95% {opacity: 0.95}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    95% {opacity: 0.95}
    100% {opacity: 1}
}

body,td.div,span,p,h1,h2,h3,h4,h5,h6,select,ul,li,form,iuput,option {
    /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;*/
    color: #333;
    font-size: 100%;
    line-height: 1.6em;
    font-weight:500;
    cursor: auto;
    letter-spacing: .05em;
}
p, td {
    /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;*/
    color: #333;
    font-weight: 500
}
a, form, input, ul, table, th {
    /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;*/
    color: #333;
}
ol, ul{
    list-style:none;
}
fieldset, img{
     border:0;
}
img {
    border: 0
}
table{
    border-collapse: collapse; 
    border-spacing:0;
}
caption, th{
    text-align: left;
}
address, caption, cite, code, dfn, em, strong, th, var{
    font-style: normal; 
    font-weight: normal;
}

html, body {position: relative;}

article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary {display: block;position: relative;}

header, section, nav, footer {display: block;}

img {border: 0px;vertical-align:text-bottom;margin: 0px;padding: 0px;}

a {outline:none; background-color: transparent; text-decoration: none;}

a:active, a:hover {
    text-decoration: none;
    outline: 0
}
* {
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box
}

h1, h2, h3, h4, h5, h6 {
    /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;*/
    letter-spacing: .05em;
    font-weight: 700;
} 
h1 {
	font-size: 2.5rem;
	line-height: 3.25rem;
}
h2 {
	font-size: 2rem;
	line-height: 2.5rem;
}
h3 {
	font-size: 1.75rem;
	line-height: 2.25rem;
}
h4 {
	font-size: 1.5rem;
	line-height: 2rem;
}
h5 {
	font-size: 1.25rem;
	line-height: 1.625rem;
}
h6 {
	font-size: 1rem;
	line-height: 1.375rem;
}

@media all {
  body, p, h1, h2, h3, h4 {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

.fw-normal {
    font-weight: 500!important;
}
.space_M {
	height: 2rem;
}
.visible-xs, .visible-sm, .visible-md, .visible-lg {
    display: none !important;
}
.ls {
    letter-spacing: 0.01em;
}
.fwb {
    font-weight: bold !important;
}
.f12 {
    font-size: 12px;;
}
.ls {
    letter-spacing: 0.01em;
}

p { word-break:break-all; }

section.hr_b {
   border-bottom: 1px solid #eee; 
}

.pc { display: block !important; }
.mb { display: none !important; }
.sp { display: none !important; }

@media only screen and (max-width: 991px) {
    .pc { display: none !important; }
    .mb { display: block !important; }
}
@media only screen and (max-width: 540px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}

.p-large {
	font-size: 1.125rem;
	line-height: 1.75rem;
}
.p-small {
	font-size: 0.875rem;
	line-height: 1.5rem;
}
.li-space-lg li {
	margin-bottom: 0.5rem;
}

a {
	color: #344cb7;
	text-decoration: underline;
}
a:hover {
	color: #5d8cf6;
	text-decoration: underline;
}
.no-line {
	text-decoration: none;
}
.no-line:hover {
	text-decoration: none;
}
.green {
	color: #7dc22b;
}

/****************/
/*     Link     */
/****************/
.external:after {
  content: "\f2d2";
  font-family: "Font Awesome 6 Free";
}
.internal:before {
  content: "\f105";
  font-family: "Font Awesome 6 Free";
}

/**************************/
/*     Margin Padding     */
/**************************/
.mt-0 {margin-top: 0px !important;}
.mt-1 {margin-top: 10px;}
.mt-2 {margin-top: 20px;}
.mt-3 {margin-top: 30px;}
.mt-4 {margin-top: 40px;}
.mt-5 {margin-top: 50px;}
.mt-05 {margin-top: 5px;}

.mb-0 {margin-bottom: 0px !important;}
.mb-1 {margin-bottom: 10px;}
.mb-2 {margin-bottom: 20px;}
.mb-3 {margin-bottom: 30px;}
.mb-4 {margin-bottom: 40px;}
.mb-5 {margin-bottom: 50px;}

.mr-0 {margin-right: 0px !important;}
.mr-1 {margin-right: 10px;}
.mr-2 {margin-right: 20px;}
.mr-3 {margin-right: 30px;}
.mr-4 {margin-right: 40px;}
.mr-5 {margin-right: 50px;}

.ml-0 {margin-left: 0px !important;}
.ml-1 {margin-left: 10px;}
.ml-2 {margin-left: 20px;}
.ml-3 {margin-left: 30px;}
.ml-4 {margin-left: 40px;}
.ml-5 {margin-left: 50px;}

.p-0 {padding: 0}
.pr-0 {padding-right: 0}
.border-0 {border: 0}


/*****************/
/*     Table     */
/*****************/
.table-first-border-none > thead > tr:first-child > th,
.table-first-border-none > tbody > tr:first-child > th,
.table-first-border-none > thead > tr:first-child > td,
.table-first-border-none > tbody > tr:first-child > td {
  border-top: none;
}
.table-last-border,
.table-last-border > tbody > tr:last-child > th,
.table-last-border > tbody > tr:last-child > td {
  border-bottom: 1px solid #ddd;
}
table.table-bordered th {
	background-color: #eee;
}
table.table-list th {
	text-align: center;
}
table.table-list > tbody > tr > td {
	vertical-align: middle;
}

/******************/
/*     Images     */
/******************/
/*.img-hover:hover {
	opacity: 0.8;
}*/
.img-center {
	margin: 0 auto;
}
.img-president {
	max-width : 40%;
	margin: 0 0 30px 30px;
}
.img-news-detail {
	max-width : 40%;
	margin: 0 30px 30px 0;
}
.img-works {
	margin-bottom: 30px;
}
.img-shadow {
	box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}
.img-responsive {
    display: block;
    max-width: 80%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}
.item_box .img-responsive {
    display: block;
    max-width: 98%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    /*border: 1px solid rgba(0,0,0,.125);*/
}
.img-gallery img {
    margin-bottom: 30px;
    width: 100%;
    height: 240px;
    object-fit: cover;
    font-family: 'object-fit: cover;';
}

/*****************************/
/*     header Bgswitcher     */
/*****************************/
.bg-cov {
	position: relative;
	color: #fff;
}
.cover {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	/*background-color: rgba(0, 46, 82, 0.15);*/
	padding: 20px;
}
.parallax {
	position: relative;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-attachment: fixed;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
  	background-size: cover;
}
.bg-cov .page-header {
	/* iPadでタイトルh2がアニメーション後に黒カバーの下に隠れてしまう現象の対応 */
	position: relative;
}
#section-cover{
  width:100%;
  height: 92vh;
  position: relative;
}
/*#section-cover {
	background-image: url("../images/top/hero_image.jpg");
}*/
/*#section-cover .cover {
	background-color: rgba(0, 7, 11, 0.8);
}*/
.bg-slider {
width: 100%;
height: 100vh;
background-position:center center;
background-size: cover;
display: flex;
align-items: center;
justify-content: center;
}

/* 注意メッセージ用 -----------------*/
.bg-grd h4 small,
.bg-parts h4 small,
.bg-cov h4 small {
	color: #ccc;
}
.bg-grd h4 small a,
.bg-parts h4 small a,
.bg-cov h4 small a {
	color: #bababa;
	text-decoration: underline;
}
.bg-grd h4 small a:hover,
.bg-grd h4 small a:focus,
.bg-parts h4 small a:hover,
.bg-parts h4 small a:focus,
.bg-cov h4 small a:hover,
.bg-cov h4 small a:focus {
	color: #fff;
}

/* Fade --------------------------*/
.carousel-fade {
	background-color: rgba(0,0,0,0.8);
}
.carousel-fade .carousel-inner .item {
	transition-duration: 1.0s;
	-webkit-transition-property: opacity;
	transition-property: opacity;
}
.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
	opacity: 0;
}
.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
	opacity: 1;
}
.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
	left: 0;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.carousel-fade .carousel-control {
	z-index: 2;
}

/**********************/
/*     Page Header     */
/**********************/
.header-center .page-header {
  text-align: center;
}
.header-center h1.page-header {
  margin: 40px 0 0;
}
.header-center h2.page-header {
  margin: 80px 0 40px;
  border: none;
}
.header-center h1.page-header br {
    display: none;
}
.header-center h1.page-header {
    margin: 20px 0 !important;
    position: relative;
    text-align: center;
    border-bottom: 0;
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.1;
}

.header-center h1.page-header small {
    font-weight: 700;
    font-size: 1.25rem;
    letter-spacing: 0em;
    margin-left: 20px
}
.header-center h1.page-header span {
    font-weight: 700;
    font-size: 1.25rem;
    letter-spacing: 0em;
    color: #333
}

@media (max-width: 540px) {
    .header-center h1.page-header {
        margin: 20px 0 !important;
        font-size: 30px;
    }
    .header-center h1.page-header small {
        font-weight: 700;
        font-size: 1.25rem;
        letter-spacing: 0em;
    }
}

.header-center h2.page-header {
    margin: 40px 0 0;
    border: none;
    font-size: 36px;
    font-weight: 900;
}

@media (max-width: 540px) {
    .header-center h2.page-header {
      font-size: 28px;
    }
}

.ex-header h1,
.ex-header2 h1 {
	color: #fff;
}
.ex-header3 h1 {
	color: #333;
}

@media (max-width: 540px) {
    .ex-header3 h1.page-header {
        margin: 70px 0 20px !important;
        line-height: 1.4
    }
    .ex-header3 h1 {
        font-size: 26px !important;
    }
    .ex-header3 h1.page-header br {
        display: flex
    }
}

.container p.page-sub {
    text-align: center;
    font-size: 24px;
    font-weight: 500;
    color: #5a8fcf;
    margin-bottom: 40px;
}

.sentence {
	letter-spacing: 0.03em;
	text-align: left;
	text-align: justify;
	text-justify: inter-ideograph;
	line-height: 1.8em;
    padding: 0 2rem;
}
@media(max-width:767px) {
    .sentence {
        padding: 0;
    }
}

/**********************/
/*     Navigation     */
/**********************/
.navbar {
	background-color: #fff;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 0.875rem;
	box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.025);
}
.navbar .navbar-brand {
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
}
.navbar .logo-image img {
    width: 100px;
	height: 32px;
}
.navbar .logo-text {
	color: #fff;
	font-weight: 700;
	font-size: 1.875rem;
	line-height: 1rem;
	text-decoration: none;
}
.offcanvas-collapse {
	position: fixed;
	top: 3rem;
	bottom: 0;
	left: 100%;
	width: 100%;
	padding-right: 1rem;
	padding-left: 1rem;
	overflow-y: auto;
	visibility: hidden;
	background-color: #000;
	transition: visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
	transition: transform .3s ease-in-out, visibility .3s ease-in-out;
	transition: transform .3s ease-in-out, visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
}
.offcanvas-collapse.open {
	visibility: visible;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}
.navbar .navbar-nav {
	margin-top: 0.75rem;
	margin-bottom: 0.5rem;
}
.navbar .nav-item .nav-link {
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
	color: #7f7a77;
	text-decoration: none;
	transition: all 0.2s ease;
    margin-top: 1rem;
}
.navbar .nav-item.dropdown.show .nav-link,
.navbar .nav-item .nav-link:hover,
.navbar .nav-item .nav-link.active {
	color: #2b2b2b;
    background-color: #fbfaf5;
}

/* Dropdown Menu -----------------------------*/

@media (min-width: 1024px) {
    .navbar .drop-hover:hover > .dropdown-menu {
        display: block !important; 
    }
}

.navbar .dropdown .dropdown-menu {
	animation: fadeDropdown 0.2s;
}

@keyframes fadeDropdown {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
	}
}

.navbar .dropdown-menu {
/*	margin-top: 0.25rem;
	margin-bottom: 0.25rem;*/
    margin-top: 0;
	margin-bottom: 0;
	border: none;
	background-color: #fbfaf5;
}
.navbar .dropdown-item {
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
	color: #161223;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 0.875rem;
	text-decoration: none;
}
.navbar .dropdown-item:hover {
	background-color: #ffd700;
	color: #161223;
}
.navbar .dropdown-divider {
	width: 100%;
	height: 1px;
	margin: 0.5rem auto 0.5rem auto;
	border: none;
	background-color: #5b5f66;
}
/* end of dropdown menu */

.navbar .fa-stack {
	width: 2em;
	margin-right: 0.25rem;
	font-size: 0.75rem;
}
.navbar .fa-stack-2x {
	color: #7dc22b;
	transition: all 0.2s ease;
}
.navbar .fa-stack-1x {
	color: #ffffff;
	transition: all 0.2s ease;
}
.navbar .fa-stack:hover .fa-stack-2x {
	color: #ffffff;
}
.navbar .fa-stack:hover .fa-stack-1x {
	color: #7dc22b;
}
.navbar .navbar-toggler {
	padding: 0;
	border: none;
	font-size: 1.25rem;
}

/***********************/
/*     Extra Pages     */
/***********************/
.ex-header {
    margin-top: 40px;
	padding-top: 3rem;
	padding-bottom: 0.25rem;
	background-color: #4f709c;
}
.ex-header2 {
    margin-top: 40px;
	padding-top: 3rem;
	padding-bottom: 0.25rem;
    background-color: #2da8a3;
}
.ex-header3 {
    margin-top: 40px;
	padding-top: 3rem;
	padding-bottom: 0.25rem;
    background-color: #f0f0f0
}


@media (max-width: 768px) {
    .ex-header, .ex-header3 {
        margin-top: 60px;
        padding-top: 0;
        padding-bottom: 0;
    }
}
@media (max-width: 540px) {
    .ex-header3 {
        margin-top: 0px;
        padding-top: 0;
        padding-bottom: 0;
    }
}

/*****************/
/*    Header     */
/*****************/
.header {
	position: relative;
}

.header #video-background {
	position: absolute;
	right: 0;
	bottom: 0;
	min-width: 100%;
/*	min-height: 100%;*/
	width: auto;
	height: auto;
	z-index: -100;
}

.header .header-content {
	padding-top: 11rem;
	padding-bottom: 9rem;
/*	background: linear-gradient(rgba(21, 35, 63, 0.5), rgba(21, 35, 63, 0.5));*/ /* 2022.06.13 */
	background-size: cover;
	text-align: center;
}

.header .h1-large {
	margin-bottom: 2.25rem;
	color: #ffffff;
	font-size: 3rem;
	line-height: 3.75rem;
}

/*****************/
/*     Form      */
/*****************/
.form-group {
	position: relative;
	margin-bottom: 1.25rem;
}
.form-control-input,
.form-control-textarea {
	width: 100%;
	padding-top: 0.875rem;
	padding-bottom: 0.875rem;
	padding-left: 1.5rem;
	border: 1px solid #cbcbd1;
	border-radius: 4px;
	background-color: #ffffff;
	font-size: 0.875rem;
	line-height: 1.5rem;
	-webkit-appearance: none;
}
.form-control-textarea {
	display: block;
	height: 14rem;
}
.form-control-input:focus,
.form-control-textarea:focus {
	border: 1px solid #a1a1a1;
	outline: none;
}
.form-control-input:hover,
.form-control-textarea:hover {
	border: 1px solid #a1a1a1;
}
.form-control-submit-button {
	display: inline-block;
	width: 100%;
	height: 3.25rem;
	border: 1px solid #7dc22b;
	border-radius: 4px;
	background-color: #7dc22b;
	color: #ffffff;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 0;
	cursor: pointer;
	transition: all 0.2s;
}
.form-control-submit-button:hover {
	border: 1px solid #7dc22b;
	background-color: transparent;
	color: #7dc22b;
}

.form-label {
    margin-bottom: 0.05rem;
    font-weight: 500;
}
.form-label span {
    margin-bottom: 0.05rem;
    margin-left: 15px;
    font-size: 14px;
    font-weight: 500;
    color: #808080;
}
input[type=checkbox] {
	transform: scale(1.5);
	margin: 0 6px 0 0;
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
    color: #dc3545;
}
.has-error .form-control {
    border-color: #dc3545;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-error .form-control:focus {
    border-color: #dc3545;;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #dc3545;
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #dc3545;
}
.has-error .input-group-addon {
    color: #dc3545;
    background-color: #f2dede;
    border-color: #dc3545;
}
.has-error .form-control-feedback {
    color: #dc3545;
}
.has-feedback label ~ .form-control-feedback {
    top: 25px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
    top: 0;
}
.help-block {
    display: block;
    margin-top: 5px;
    margin-bottom: 10px;
    color: #dc3545;
    font-size: 0.9rem;
}
.checklist ul {
    padding: 0 0 0 8px;
}
.checklist li {
    line-height: 1.4;
    margin-bottom: 10px;
    font-size: 14px !important;
    
    position: relative;
}
.checklist li::after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1em;
  width: 6px;
  height: 6px;
  background-color: #666;
  border-radius: 100%;
}
.form-control-lg {
    min-height: calc(1.5em + 1rem + 2px);
    padding: 0.5rem 1rem;
    font-size: 1rem;
    font-weight: 400;
    color: #333;
    border-radius: 0.3rem;
}
.form-select-lg {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    font-size: 1rem;
    font-weight: 500;
    color: #999;
}

/* Checkbox */
.checkbox_input {
padding: 12px 8px;
display: flex;
align-items: center;
cursor: pointer;
}
.checkbox_input_Input {
margin: 0;
width: 0;
opacity: 0;
}
.checkbox_input:hover{
background: rgba(0,0,0,0) !important;
}
.checkbox_input_Input:focus + .checkbox_input_DummyInput{
border: dashed 2px #333333;
}
.checkbox_input_Input:checked + .checkbox_input_DummyInput {
background: #333333;
}
.checkbox_input_Input:checked + .checkbox_input_DummyInput::before {
content: "";
display: block;
position: absolute;
top: 50%;
left: 50%;
width: 40%;
height: 4px;
border-radius: 2px;
transform: translate(-6px, 5px) rotateZ(-135deg);
transform-origin: 2px 2px;
background: #FFFFFF;
}
.checkbox_input_Input:checked + .checkbox_input_DummyInput::after {
content: "";
display: block;
position: absolute;
top: 50%;
left: 50%;
width: 76%;
height: 4px;
border-radius: 2px;
transform: translate(-6px, 5px) rotateZ(-45deg);
transform-origin: 2px 2px;
background: #FFFFFF;
}
.checkbox_input_DummyInput {
position: relative;
top: 0;
left: 0;
display: block;
width: 32px;
height: 32px;
border: solid 2px transparent;
background: rgba(0,0,0, .1);
border-radius: 4px;
}
.checkbox_input_LabelText {
margin-left: 12px;
display: block;
font-size: 18px;
font-weight: bold;
}

@media (max-width: 540px) {
    input[type=checkbox] {
        transform: scale(1.5);
        margin: 0 0 0 0;
    }
    .checkbox_input {
        padding: 12px 0px;
    }
    .checkbox_input_LabelText {
        font-size: 14px;
    }
}

/******************/
/*     Footer     */
/******************/
.footer {
	padding-top: 6.5rem;
	padding-bottom: 2rem;
	background-color: #161223;
}

.footer a {
	text-decoration: none;
}

.footer h6 {
	margin-bottom: 0.625rem;
	color: #9ba3b1;
}

.footer p,
.footer a,
.footer ul {
	color: #9ba3b1;
}

.footer .li-space-lg li {
	margin-bottom: 0.375rem;
}

/*********************/
/*     Copyright     */
/*********************/
.copyright a {
	color: #9ba3b1;
	text-decoration: none;
}

/**********************/
/*     Pagination     */
/**********************/
.pagination > li {
    display: inline;
}
.pagination > li > a,
.pagination > li > span {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #337ab7;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #ddd;
}
.pagination > li.disabled > a span  {
    color: #C0C0C0 !important;
}
.pagination > li:first-child > a,
.pagination > li:last-child > a{
    padding: 5px 12px
}
.pagination > li:first-child > a span,
.pagination > li:last-child > a span {
    font-size: 13px !important;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
    z-index: 2;
    color: #23527c;
    background-color: #eee;
    border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #337ab7;
    border-color: #337ab7;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
    color: #777;
    cursor: not-allowed;
    background-color: #fff;
    border-color: #ddd;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
    padding: 10px 16px;
    font-size: 18px;
    line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
    border-top-left-radius: 6px;
    border-bottom-left-radius: 6px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}
.pager {
    padding-left: 0;
    margin: 20px 0;
    text-align: center;
    list-style: none;
}
.pager li {
    display: inline;
}
.pager li > a,
.pager li > span {
    display: inline-block;
    padding: 5px 14px;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 15px;
    font-size: 24px;
    color: #76abae
}
.pager li > a:hover,
.pager li > a:focus {
    text-decoration: none;
    background-color: #eee;
    }
.pager .next > a,
.pager .next > span {
    float: right;
    font-weight: bold;
}
.pager .previous > a,
.pager .previous > span {
    float: left;
    font-weight: bold;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
    color: #76abae;
    font-size: 24px;
    font-weight: 700;
    cursor: not-allowed;
    background-color: #fff;
}

.hidden_pc { display: block !important; }
.hidden_sp { display: none !important; }

@media only screen and (max-width: 991px) {
    .hidden_pc { display: none !important; }
    .hidden_sp { display: block !important; }
}

/*****************/
/*     Error     */
/*****************/
#error {
    margin-top: 100px;
}
#error .section-title h2 {
    margin: 40px 0;
    position: relative;
    color: #263069;
    font-weight: 600;
    font-size: 35px;
    text-transform: capitalize;
    letter-spacing: 0.03em
}
#error h3 {
    font-size: 20px;
    color: #444;
    font-weight: 500;
    letter-spacing: 0.03em
}
#error .fa-regular,
#error .fa-solid {
    display: inline-block;
    font-size: 100px;
    color: #069fe8;
    margin-bottom: 30px;
    text-shadow: 3px 5px 2px #3333;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}
#error .back_btn a {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    transition: all 0.4s ease;
    display: inline-block;
    padding: 15px 20px;
    width: 100%;
    position: relative;
    top: -2px;
    border-radius: 5px;
    font-size: 20px;
    font-weight: 500;
    color: #1a76d1;
    background: #fff !important;
    border: 1px solid #1a76d1;
}
#error .back_btn a:hover {
    background: #09b6dd !important;
    color: #fff
}

@media (max-width: 540px) {
    #error .section-title h2 {
        font-size: 26px;
    }
}

/*************************/
/*     Media Queries     */
/*************************/	
/* Min-width 768px */
@media (min-width: 768px) {

	/* Header */
	.header .header-content {
		padding-top: 15rem;
		padding-bottom: 13rem;
	}
	/* end of header */
}
/* end of min-width 768px */

/* Min-width 992px */
@media (min-width: 992px) {
	
	/* Navigation */
	.navbar {
		padding-top: 1.75rem;
		background-color: transparent;
		box-shadow: none;
		transition: all 0.2s;
	}

	.navbar.top-nav-collapse {
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
		background-color: #161223;
		box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.025);
	}

	.offcanvas-collapse {
		position: static;
		top: auto;
		bottom: auto;
		left: auto;
		width: auto;
		padding-right: 0;
		padding-left: 0;
		background-color: transparent;
		overflow-y: visible;
		visibility: visible;
	}

	.offcanvas-collapse.open {
		-webkit-transform: none;
		transform: none;
	}

	.navbar .navbar-nav {
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.navbar .nav-item .nav-link {
		padding-right: 0.75rem;
		padding-left: 0.75rem;
        margin: 0 0.3rem;
	}

	.navbar .dropdown-menu {
		padding-top: 0.75rem;
		padding-bottom: 0.875rem;
		box-shadow: 0 3px 3px 1px rgba(0, 0, 0, 0.08);
	}

	.navbar .dropdown-divider {
		width: 90%;
	}

	.navbar .social-icons {
		margin-left: 0.5rem;
	}
	
	.navbar .fa-stack {
		margin-right: 0;
		margin-left: 0.25rem;
	}
	/* end of navigation */


	/* Header */
	.header .header-content {
		padding-top: 18rem;
		padding-bottom: 16rem;
	}
	
	.header .h1-large {
		margin-bottom: 2.75rem;
		font-size: 5rem;
		line-height: 5.75rem;
	}
	/* end of header */

}
/* end of min-width 992px */


/* Min-width 1200px */
@media (min-width: 1200px) {
	
	/* General Styles */
	.container {
		max-width: 1140px;
	}
	/* end of general styles */
	

	/* Header */
	.header {
		height: 100vh;
	}
	
	.header .header-content {
		display: flex;
		flex-direction: column;
		justify-content: center;
		height: 100vh;
		padding-top: 0;
		padding-bottom: 0;
	}

	.header .btn-solid-lg {
		padding: 1.875rem 3rem;
		font-size: 1rem;
	}
	/* end of header */


	/* Extra Pages */
	.ex-cards-1 .card {
		width: 336px;
	}

	.ex-cards-1 .card:nth-of-type(3n+2) {
		margin-right: 2.875rem;
		margin-left: 2.875rem;
	}
	/* end of extra pages */
}
/* end of min-width 1200px */