/*html {
  height: 100%; 
  overflow: hidden; /* ブラウザ標準のスクロールバーを消します */
}
 
body {
  overflow-y: scroll;  /*  縦スクロールバーを表示します。 */
  overflow-x: hidden;  /*  横スクロールバーを消します。 */                                                                                                                    
  height: 100%; 
}
 
.image-base{
  min-height: 800px; /* 高さの最小値を決めることで高さを確保させます。デバイスサイズに応じて数値を変更させると、背景画像もレスポンシブに変化します。　*/
　background-position: center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; /* 背景画像をフルスクリーンにフィットさせます */
}
#index_header_content {
    max-height: 600px !important;
}
#index_video {
    max-height: 700px !important;
  background: url('/b/img/main_illust_l.jpg') no-repeat fixed ;
  background-position:50% 100%;
/*  background-position:center center;*/
-webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
#header {
    background: #fff;
    border-bottom: 5px solid #2e6da4;
    /*box-shadow: 0px 4px 8px #000;*/
}
.pc #header.active {
    background: #fff;
    border-bottom: 5px solid #2e6da4;
    /*box-shadow: 0px 4px 8px #000;*/
}
.pc .header_fix #header {
position: relative;
top: 0px;
left: 0px;
z-index: 200;
width: 100%;
box-shadow: 0 0 15px 5px rgba(0,0,0,0.1);
border: none;
-webkit-animation: slide_down_menu 0.5s ease;
animation: slide_down_menu 0.5s ease;
}
.pc .header_fix #index_slider_wrap .index_parallax {
    margin-top: 120px;
    /*padding-bottom: 100px;*/
}
.pc .header_fix #index_header_content {
max-height:700px !important;
}
#global_menu > ul > li > a {
    color: #000;
}
.pc .header_fix #header {
    /*display: none;*/
    height: auto;
}
.pc #header.animate {
-webkit-animation: opacityAnimation 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.5s !important;
animation: opacityAnimation 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.5s !important;
}
.logo {
    font-size: 3em;
    color: #fff;
   /* background: rgba(0,0,0,0.65);*/
    text-shadow: 2px 2px 3px #000;
}
.logo_desc_area p.desc {
    font-size: 2em !important;
    font-weight: 500;
    /*background: rgba(0,0,0,0.65);*/
    text-shadow: 4px 4px 4px #000;
}
.logo_desc_area .logo img {
    filter: drop-shadow(2px 2px 4px #000);
}
#index_slider .overlay {
background: rgba(0,95,150,0.001);
}
.index_parallax h2 {
    text-align: left;
}
.index_parallax ol.desc {
    text-align: left;
display: block;
list-style-type: decimal !important;
margin-block-start: 1em;
margin-block-end: 1em;
margin-inline-start: 0px;
margin-inline-end: 0px;
padding-inline-start: 40px;
}
.index_parallax ol.desc li {
display: list-item;
text-align: -webkit-match-parent;
}
#copyright {
    background: #2e6da4 !important;
}
.about #header {
width: 100%;
height: 100px;
z-index: 20;
top: 0px;
position: relative;
}
.about h3 {
padding-bottom: 8px;
position: relative;
border-bottom: 1px solid rgba(0,0,0,.1);
}
/*.about h3:after {
content: ".";
line-height: 0;
display: block;
overflow: hidden;
position: absolute;
bottom: -1px;
width: 30%;
border-bottom: 1px solid #337ab7;
}*/
.enkaku tr td:nth-child(1) {
    white-space: nowrap;
    }
.enkaku td,
.enkaku th {
padding: 1em;
font-size: 14px;
line-height: 2em;
}
.member th {
   font-size: 110%;
   font-weight: bold;
   border-top: 1px solid #b3b3b3;
    }
.member tr td:nth-child(1) {
   font-weight: bold;
    }
.member tr td:nth-child(3) {
    text-align: right;
    }
.member td,
.member th {
padding: 1em;
font-size: 14px;
line-height: 2em;
}
.dc_data_list {
width: 100%;
padding: 0px 0 0px;
margin: 0 auto;
}
.pc body.use_header_fix #design_content_id3, .pc body.use_header_fix #design_content_id4 {
padding-top: 100px;
margin-top: 0px;
}



.veu_card {
border: 3px solid var(--vk-color-border-light));
}
.veu_contentAddSection {
display: block;
clear: both;
overflow: hidden;
margin-top: 20px;
margin-bottom: 2.5rem;
}
.veu_contact .contact_frame {
display: block;
overflow: hidden;
background-color: #FAFAFA;
border: 4px solid #EFEFEF;

}
.veu_card .veu_card_inner {
position: relative;
display: block;
overflow: hidden;
padding: 1.5rem;
box-shadow: inset 0 0 0 1px var(--vk-color-border-zuru));
}
.veu_contact .contact_txt {
text-align: center;
}
/*p {
line-height: 1.4 !important;
}*/
.veu_contact .contact_txt_catch, .veu_contact .contact_txt_time {
font-size: 14px;
line-height: 128.6%;
}
.veu_contact .contact_txt_catch, .veu_contact .contact_txt_tel, .veu_contact .contact_txt_time {
display: block;
overflow: hidden;
}
.veu_contact .contact_txt {
text-align: center;
}
.veu_contact .contact_txt_tel {
padding: 5px 0;
font-size: 28px;
line-height: 105%;
font-weight: 700;
}
.veu_contact .contact_txt_catch, .veu_contact .contact_txt_tel, .veu_contact .contact_txt_time {
display: block;
overflow: hidden;
}
.veu_color_txt_key {
color: #2e6da4;
}
.veu_contact .contact_txt {
text-align: center;
}
.veu_contact .contact_txt_tel_icon {
margin-right: .3rem;
}
.fa, .far, .fas {
font-family: "Font Awesome 5 Free";
}
.fa, .fab, .fad, .fal, .far, .fas {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
}
.fa-phone-square:before {
content: "\f098";
}
.fa-phone-square:before {
content: "\f098";
}
.veu_contact .contact_txt_catch, .veu_contact .contact_txt_time {
font-size: 14px;
line-height: 128.6%;
}
.veu_contact .contact_txt_catch, .veu_contact .contact_txt_tel, .veu_contact .contact_txt_time {
display: block;
overflow: hidden;
}

#footer_logo h3 {
    border-bottom: 0px solid rgba(0,0,0,.1) !important;
}
#copyright {
    padding-top: 3em;
}
.index_work_list .catchh {
font-size: 30px;
}
.index_work_list .catch {
text-align: center;
font-size: 30px;
line-height: 1.5;
margin: 0 0 35px 0;
}
.index_work_list.num1 .desc {
font-size: 16px;
}
.index_work_list .desc {
font-size: 16px;
line-height: 2.5;
margin: 0 0 50px 0;
}

.pc body.use_header_fix #design_content_id2,
.pc body.use_header_fix #design_content_id3,
.pc body.use_header_fix #design_content_id4,
.pc body.use_header_fix #design_content_id5 {
    padding-top: 95px;
}
.pc body.use_header_fix #design_content_id1,
.pc body.use_header_fix #design_content_id2,
.pc body.use_header_fix #design_content_id3,
.pc body.use_header_fix #design_content_id4 {
padding-top:100px;
margin-top: -100px;
}
#header {
width: 100%;
height: 100px;
z-index: 20;
position: relative;
top: 0px;
}

.member th:nth-child(1),
.member th:nth-child(2) {
    text-align: left;
}

.inspection .link_button {
    margin-bottom: 1em;
}
.group_box a {
    
}
.group_box dt {
    padding: 16px 0px 14px;
}
.group_box a:after {
content: "";
display: inline-block;
width: 18px;
height: 16px;
margin: -3px 0 0 5px;
background: url("/b/img/link.png") no-repeat;
background-size: contain;
vertical-align: middle;
}
.group_box a:hover {
    color: #65a6f1;
}
.recruit .dc_data_list a {
    text-decoration: underline;
    color: #000;
}
.recruit .dc_data_list a:hover {
    color: #65a6f1;
}
.design_content {
    clear: both;
}
hr {
    margin-bottom: 5em;
}
#index_header_content .index_parallax {
width: 100%;
height: 100%;
overflow: hidden;
position: relative;
}
#index_header_content .index_parallax .bg_image {
width: 100%;
height: 100%;
position: absolute;
top: 0px;
left: 0px;
z-index: 1;
}
p.president {
    padding-left:-1em;
    text-indent:1em;
    line-height: 1.79em;
    margin: 0 0 0 0;
}
.president_photo {
    width: 160px;
    margin-right: 1em !important;
    float: left;
    margin-bottom: 0 !important;
    padding-top: 0.5em;
}
.president_photo img {
    width: 100% !important;
    height: auto;
}
@media print{
    #footer_menu,
    #global_menu,
    .no_print{
        display: none;
    }
}
@media screen and (max-width:950px) {
.index_carousel {
    width:100%; height:auto; overflow:hidden; position:relative;
}
.index_carousel .image {
    width:100%; height:100% !important; position:absolute; top:0px; left:0px; z-index:1;
}

#index_header_content .index_parallax {
    height: 1000px;
}
#index_header_content .index_parallax .bg_image {
    background-size: cover !important;
}
#index_header_content .index_parallax .caption{
    display: block;
    height: 800px;
    width: auto;
}



}
@media screen and (max-width:650px) {
#index_video {
max-height: 800px !important;
background: url('/b/img/main_illust_l.jpg') no-repeat;
background-position: 50% 100%;
/*position: fixed;*/
/* background-position: center center; */
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
z-index: -10;
}
.dc_data_list {
    width: 100%;
}
.dc_data_list dl {
    display: flex;
    flex-direction: column;
}
.dc_data_list dt,
.dc_data_list dd {
    width: 100%;
}
.wp-block-table.is-style-stripes tbody tr {
    background-color: #fff !important;
}
.office .dc_data_list dt {
    font-size: 120%;
}
.member tr th,
.member tr td:nth-child(1),
.member tr td:nth-child(2),
.member tr td:nth-child(3) {
    display: inline;
    width: 100%;
}
.member tr th:nth-child(1),
.member tr td:nth-child(1) {
    display: inline-block;
    text-align: center;
    padding: 1em 0;
    background: #f0f0f0;
}
.member tr th:nth-child(2),
.member tr td:nth-child(2) {
    float: left;
    width: 75%;
    padding-right: 0;
}
.member tr th:nth-child(3),
.member tr td:nth-child(3) {
    float: right;
    width: auto;
    padding-left: 0;
}
.inspection_links .link_button {
    width: 47%;
}
.inspection_links .link_button a {
min-width: 100%;
padding: 0 10px;
}

}
@media screen and (max-width:500px) {
.president_photo {
    width: 30% !important;
    height: auto;
}
.dc_data_list {
width: 100% !important;
padding: 0px 0 0px;
margin: 0 auto;
}
}
@media screen and (max-width:375px) {
.mobile_logo_image {
    width: 100% !important;
}
#footer_logo .mobile_logo_image {
    width: 80% !important;
}

}



@media screen and (max-width:650px) {
    #index_video {
        
    }
}


.index_work_list,
.index_content1,
.index_content2,
.index_content3,
.index_content4 {
    background: #fff;
}