body{
font-family: 'Nunito Sans','Noto Sans JP',serif;
  font-size: 14px;
}
.home #sp-main-body {
    padding: 0;
}
h1,h2,h3,h4,h5{
font-family: 'Nunito Sans','Noto Sans JP',serif;
}

h1{
font-size:3em;
}
h2{
font-size:2em;
}
h3{
font-size:1.4em;
}
h4{
font-size:1.2em;
}
h5{
font-size:1.1em;
}
a {
    color: #000;
}
a:hover {
    color: #1680b0;
}
.title_bloc{
  position: relative;
}
.title_bloc_name_en{
  position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  font-size:6em;
  font-weight:bold;
}
.title_bloc_name_jp{
  position: absolute;
    top: 55%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-size:2.6em;
  border: 0;
    padding: 0;
    width: 30%;
    margin: 0 auto;
    align-items: center;
    font-weight: normal;
    text-align: center;
    display: flex;
    padding: 50px 0;
}
.title_bloc_name_jp:before, .title_bloc_name_jp:after {
content: "";
    flex-grow: 1;
    height: 1px;
    background: #444;
    display: block;
    margin: 20px;
}
.color0097c1{
  color:#0097c1;
}
.page_all {
    max-width: 1140px;
    margin: 0 auto;
    padding: 30px;
}
.page_all h2{
    position: relative;
  border-bottom: 1px solid #ccc;
  padding-bottom: 10px;
      margin-bottom: 20px;
  text-align: left;
  clear: both;
}
.page_all h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 5px #1680b0;
    bottom: 0px;
    width: 30%;
}
.page_all h2 span{
    font-size: 14px;
    padding: 10px;
}
.page_all h3{
    position: relative;
  border-bottom: 1px solid #ccc;
  padding-bottom: 5px;
      margin-bottom: 10px;
}
.page_all h3:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 1px #1680b0;
    bottom: -1px;
    width: 20%;
}
.sp-module.topbanner{
  margin:0;
}
#sp-topbanner-area .container{
width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
}
.category_top_bloc {
    width: 35%;
    position: relative;
    background: #111;
    float: left;
    height: 440px;
    border-top: solid 90px #03a9f4;
}
.category_heading {
    position: absolute;
    top: 120px;
    color: #fff;
    padding: 0 30px;
    width: 100%;
  text-align: center;
}
.category_title_en {
    font-size: 3.8em;
  text-align: center;
     text-shadow: 2px 2px 10px #666666, -2px 2px 10px #666666, 2px -2px 10px #666666, -2px -2px 10px #666666;
}
.category_title_jp {
font-size: 1.2em;
    margin: 20px 0;
    text-align: center;
      text-shadow: 1px 1px 5px #666666, -1px 1px 5px #666666, 1px -1px 5px #666666, -1px -1px 5px #666666;
}
.category_top {
background: #333;
    float: right;
    width: 65%;
    height: 440px;
}
.category_bloc_img {
    float: right;
    width: 100%;
    height: 100%;
}
.category_bloc_img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.ba_p_top .category_bloc_img img{
    object-position: top;
}
.ba_p_center .category_bloc_img img{
    object-position: center;
}
.ba_p_bottom .category_bloc_img img{
    object-position: bottom;
}

#sp-header {
background:rgba(0,0,0,0.8);
    box-shadow: 0 3px 3px rgba(0,0,0,0.05);
    height: 90px;
    left: 0;
    top: 0;
    width: 100%;
position: fixed;
    z-index: 9999;
}
:root {
    --font-en: "AvenirNextLTPro-Medium";
    --font-jp: "TazuganeGothicStdN-Book";
    --font-jp-medium: "TazuganeGothicStdN-Medium";
    --paper: #fff;
    --ink: #000;
    --base-size: 0.2564102564vw;
    --jade: #00afaa;
    --navy: #102a4e;
    --bg: #e8ecea;
    --border: #bec6c4;
    --caution: #9c182f;
    --blue: #2a78b8;
    --milky-blue: #7bafd4;
    --light-blue: #b6c5dc;
    --dark-gray: #4d6868;
    --gray: #6e7c7c;
    --light-gray50: #dddfde;
    --light-gray00: #f1f4f3;
    --top-text-color: var(--ink);
    --top-btn-color: var(--ink);
    --scroll-bar-width: 0px;
}
#sp-header .container{
width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
}
#sp-logo{
  padding:0 50px;
}
#offcanvas-toggler {
    display: none;
}
.sp-megamenu-parent > li.sp-has-child > a:after, .sp-megamenu-parent > li.sp-has-child > span:after {
display:none;}

#sp-topmain-area  .container{
  width:100%;
  max-width: 100%;
}
#sp-footer {
    background: none;
    color: #fff;
    text-align: center;
    padding: 0;
}
#sp-footer1{
  padding: 0;
}
#sp-footer .container{
  width:100%;
  max-width: 100%;
  padding:0;
}
#sp-footer .row{
  margin:0;
}
.footer_menu_area{
  margin-top: 0;
}
.footer_menu{
float: left;
}
#sp-footer1 .footer_menu li{
    display: inline-block;
  border-bottom: 0;
}
#sp-footer1 .footer_menu li a{
    color:#fff;
    font-size:14px;
  padding:0 10px;
}
.footer_logo_area{
      background: #efefef;
  margin-top: 0;
}
.footer_logo_img{
  text-align: center;
    width: 100%;
    float: none;
    padding: 80px 0;
}
.footer_logo_img img{
  display: inline-block;
}
.sp-copyright{
    width: 100%;
    max-width: 100%;
    display: block;
    background: #2a9eca;
    padding: 5px 0;
   font-size: 14px;
}
#sp-footer1 .footer_menu li a:before {
display: none;
}
.allpage .container{
  width:100%;
      max-width: 100%;
  padding:0;
  margin:0;
}
.allpage .row{
  padding:0;
  margin:0;
}
.allpage .row>*{
  padding:0;
  margin:0;
}
.entry-header {
    margin-bottom: 0;
}

#sp-main-body {
    padding: 0;
}
#sp-breadcrumb .sp-module{
    margin: 0;
}
.breadcrumb span{
display:none;
}


.sp-megamenu-parent > li.active > a, .sp-megamenu-parent > li:hover > a {
    color: #fff;
}
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span {
    display: inline-block;
    padding: 0 15px;
    line-height: 90px;
font-size: 1.1em;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;
    margin: 0;
}
.home #sp-top-area .container{
  max-width: initial;
    padding: 0;
    margin: 0;
}
#sp-top-area .sp-module .container{
max-width: 1140px;
  margin: 0 auto;
}
#sp-footer{
  background: #2a9eca;
}
.footer_area{
  max-width: 1140px;
    margin: 0 auto;
}
.footer_area_top{
  max-width: 1140px;
    margin: 10px auto;
  border-bottom: 1px solid #fff;
    float: left;
    width: 100%;
}
.footer_area_top_img{
        float: right;
    margin: 5px 0;
  }
.footer_area_bottom{
      clear: both;
    text-align: right;
}
.footer_area_logo_bottom{
      text-align: center;
    margin: 10px 0;
}
.footer_area_logo_bottom img{
    display: inline-block;
}

.sp-megamenu-parent {
    display: block!important;
}
.sp-megamenu-parent {
    list-style: none;
    padding: 0;
    margin: 0;
    z-index: 99;
    display: block;
    float: right;
    position: initial;
}
.sp-megamenu-parent > li {
    display: inline-block;
    position: initial;
    padding: 0;
    font-weight: initial;
}
.sp-megamenu-parent .sp-dropdown.sp-dropdown-main.sp-menu-right {
    width: 100%!important;
    background: rgba(256,256,256,0.9);
    box-shadow: none;
    border-bottom: 1px solid #bbb;
    box-shadow: 0 3px 3px rgba(0,0,0,0.05);
}
.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
    background: initial;
    box-shadow: none;
    padding: 10px;
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
}
.sp-megamenu-parent .sp-dropdown.sp-dropdown-sub .sp-dropdown-inner {
    box-shadow: none;
     padding: 0 10px;
}
.sp-megamenu-parent > li > a.menu_contact{
background: #1680b0;
}
.sp-megamenu-parent > li > a.menu_recruit{
background: #03A9F4;
}
.button_area{
  padding: 30px;
}
.button_bloc{
  text-align: center;
}
.button_bloc a{
 background: #111;
    color: #fff;
    padding: 20px;
  border:1px solid #ccc;
  border-radius: 5px;
}
.button_bloc a:hover{
 background: #2a9eca;
      color: #fff;
}
.page_bloc{
  padding:30px 0;
}
.allpage .category{
  max-width:1140px;
  margin:0 auto;
}
.allpage .item-page{
  max-width:1140px;
  margin:0 auto;
}
.sp-dropdown.sp-dropdown-sub.sp-menu-right{
    width: 100%!important;
    display: inline-block;
    position: initial;
  margin-bottom: 10px;
}
.sp-megamenu-parent .sp-dropdown.sp-dropdown-sub.sp-menu-right li.sp-menu-item {
    display: inline-block;
margin:0 10px;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:after{
display:none;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
    background: none;
  color:#111;
}
.sp-module.sns {
    width: auto;
    display: inline-block;
    float: right;
    margin: 30px 0;
}
.sns_bloc_icon{
  float: left;
  margin: 0 0 0 10px;
}
#sp-menu{
  padding: 0 50px 0 0;
}
.sp-megamenu-parent .sp-dropdown .sp-dropdown-items{
  width: 1140px;
    margin: 0 auto;

}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item .menu_sub{
      display: inline-block;
    padding: 5px 10px;
    color: #fff;
    margin-bottom:10px;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item .menu_sub:hover{
        display: inline-block;
    padding: 5px 10px;
    color: #fff;
    background: #111;

}
/*
.c_set-construction{
  background: #f49191;
}
.c_exhibition-space{
  background: #d492d2;
}
.c_business-space{
  background: #458bd8
}
.c_event{
  background: #ffa518;
}
.c_rental-sale{
  background: #6c6c6c;
}
*/
.titlespan_right .page_all h2 span {
    font-size: 14px;
    padding: 10px;
    position: absolute;
    right: 0;
}
.breadcrumb {
width: 1140px;
    margin: 0 auto;
  padding: 0 10px;
}
#sp-breadcrumb-area{
    margin-top: 90px;
    border-bottom: 1px solid #ccc;
    padding: 10px 0;
}
.m_works{
  background: #666;
}
.m_company{
  background: #0097c1;
}
.item_nomenu ul{
  display:none;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a, .sp-megamenu-parent .sp-dropdown li.sp-menu-item span {
    display: inline-block;
    padding: 0 10px;
    color: #333333;
    cursor: pointer;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item {
    display: block;
    padding: 0;
    position: relative;
}
.sp-dropdown-sub .sp-dropdown-items{
    position: relative;
}

.sp-dropdown-sub a{
display: block;
    padding: 5px 10px;
    color: #000;
    cursor: pointer;
    border-bottom: 1px solid #ccc;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover{
display: block;
    color: #fff;
    background: #111;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a {
    color: #fff;
}
.sp-megamenu-parent .sp-dropdown.sp-dropdown-sub li.sp-menu-item.active > a {
    color: #111;
}
.sp-megamenu-parent .sp-dropdown.sp-dropdown-sub li.sp-menu-item.active > a:hover {
    color: #fff;
}
.sp-dropdown.sp-dropdown-sub .sp-dropdown-sub{
  display:none;
  margin: 0;
}
.sp-dropdown.sp-dropdown-sub .sp-dropdown-sub ul{
  display:none;
}
#sp-breadcrumb-area {
    margin-top: 0;
    border-bottom: 1px solid #ccc;
    padding: 10px 0;
    background: #111;
    color: #fff;
    border-top: 1px solid #333;
}
#sp-breadcrumb-area a{
  color:#fff;
}
.breadcrumb-item.active {
    color: #fff;
}
.cover_right .category_bloc_img img {
    object-position: right;
}

.list-title a:before {
    content: '';
    border-right: solid 2px #111;
    margin-right: 10px;
}
.subbanner .category_heading {
    top: 16px;
}
.subbanner .category_area_main .category_top {
    height: 179px;
      border-bottom: 1px solid #333;
}
.subbanner .category_area_main .category_top_bloc {
    height: 179px;
      border-bottom: 1px solid #333;
}
#sp-topbanner-area .sp-module {
    margin: 0;
}

.cate_area{
  text-align: center;
}
.cate_area.cate_list {
    padding-top: 30px;
}
.cate_en{
      line-height: 1.6em;
    font-size: 3.6em;
    font-weight: bold;
}
.cate_area h1{
  font-size: 1.6em;
}
.cate_comment{
  font-size: 15px;
    text-align: left;
    max-width: 850px;
    margin: 0 auto;
    padding: 20px 20px 50px;
}
.category_sub_bloc_left {
    width: 35%;
    position: relative;
    background: #111;
    float: left;
    height: 250px;
}
.category_sub_bloc_right {
    background: #333;
    float: right;
    width: 65%;
    height: 250px;
}
.category_sub_bloc_left .category_heading{
  top: 90px;
}
.subcate .category_area_main .category_title_en {
    font-size: 2em;
    display: inline-block;
    margin-right: 10px;
}
.subcate .category_area_main .category_title_jp {
    font-size: 1.2em;
    display: inline-block;
}
.subcate .category_area_sub .category_title_en {
    font-size: 2.6em;
}
.subcate .category_area_sub .category_title_jp {
    font-size: 1.2em;
}
.main_title_e {
font-size: 3em;
    font-weight: bold;
    margin-bottom: 0.5rem;
    line-height: 1.2;
}
.main_title_j{
    font-size: 1.2em;
      font-weight: initial;
}
#sp-header .row {
    padding: 0;
    margin: 0;
}
