@charset "UTF-8";

/* sass */

.l-head { transition: background-color .2s; overflow: hidden; height: 96px; }

.top .l-head { height: auto; }

.l-head a { text-decoration: none; }

.nav-active .l-head .l-inner { height: 100%; overflow-y: auto; padding-bottom: 40px; }

.nav-active .l-head { background-color: #304567; position: fixed; width: 100%; height: 100%; z-index: 9999; top: 0; left: 0; }

.logo-wrap { text-align: center; position: absolute; left: 0; right: 0; top: 0; padding: 20px 0 10px; margin: auto; z-index: 10; }

.nav-active .logo-wrap { background-color: #304567; }

.l-head .logo { text-align: center; }

.l-head .logo > .head, .l-head .logo > .main { display: block; }

.l-head .logo > .head { font-size: 0; line-height: 0; width: 95px; height: 36px; overflow: hidden; text-indent: 100%; white-space: nowrap; margin: -11px auto 0; background: url(/kenzai/sample/ws_s/image/logo_b.svg) no-repeat center/contain; }

.top .l-head .logo > .head, .nav-active .l-head .logo > .head { background: url(/kenzai/sample/ws_s/image/logo_w.svg) no-repeat center/contain; }

.l-head .logo > .main { color: #000000; font-size: 1.9rem; font-weight: 700; margin: 10px 0 0 0; }

.top .l-head .logo > .main, .nav-active .l-head .logo > .main { color: #ffffff; }

.nav-wrap { display: flex; flex-direction: column-reverse; padding: 0 20px; }

.nav-sp-btn { display: block; width: 22px; height: 22px; cursor: pointer; position: absolute; left: 20px; top: 20px; z-index: 10; }

.nav-sp-btn > span { display: block; height: 2px; background-color: #000000; position: relative; transition: all .3s; }

.nav-sp-btn > span::before, .nav-sp-btn > span::after { transition: all .3s; content: ""; display: block; width: 22px; height: 2px; background: #000000; position: absolute; }

.nav-sp-btn > span::before { top: -8px; }

.nav-sp-btn > span::after { bottom: -8px; }

.top .nav-sp-btn > span { background-color: #ffffff; }

.top .nav-sp-btn > span::before, .top .nav-sp-btn > span::after { background: #ffffff; }

.nav-active .nav-sp-btn > span { background: transparent; }

.nav-active .nav-sp-btn > span::before, .nav-active .nav-sp-btn > span::after { background: #ffffff; }

.nav-active .nav-sp-btn > span::before { top: 0; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

.nav-active .nav-sp-btn > span::after { bottom: 0; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.nav-active.top .nav-sp-btn > span { background: transparent; }

.nav-sub { transition: opacity .2s; opacity: 0; display: none; flex-wrap: wrap; text-align: center; }

.nav-sub > li { width: 50%; margin-top: 30px; position: relative; }

.nav-sub > li:nth-child(even)::before { content: ''; width: 1px; height: 60%; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; background-color: #ffffff; }

.nav-sub > li > a { font-size: 1.4rem; color: #ffffff; }

.nav-sub > li.works { order: 2; }

.nav-sub > li.sustainability { order: 3; }

.nav-sub > li.showroom { order: 4; }

.nav-sub > li.qa { order: 5; }

.nav-sub > li.inq { order: 6; }

.nav-sub .btn { order: 1; width: 100%; margin-top: 0; }

.nav-sub .btn > a { text-align: center; display: block; color: #304567; background-color: #ffffff; padding: 18px 20px; margin-top: 10px; font-weight: 700; font-size: 1.6rem; }

.nav-active .nav-sub { display: flex; opacity: 1; }

.nav-gbl { transition: opacity .2s; opacity: 0; padding: 116px 0 0; display: none; }

.nav-gbl > li a { display: block; padding: 20px 0; color: #ffffff; font-weight: 700; font-size: 1.8rem; }

.nav-gbl > li a > span { font-weight: 400; font-size: 1.2rem; margin-left: 10px; }

.nav-active .nav-gbl { display: block; opacity: 1; overflow: auto; }

body { overflow-x: hidden; }

.l-body { overflow-y: hidden; }

.bg-square-fix .l-body::before, .bg-square-fix .l-body::after { content: ''; display: block; position: absolute; }

.bg-square-fix .l-body::after { width: 263px; height: 616px; background: url(/kenzai/sample/ws_s/image/bg_sq_left.svg) no-repeat center/263px auto; top: 874px; left: 0; z-index: -1; }

.l-body-main { position: relative; padding: 0 20px; margin-bottom: 100px; }

.top .l-body-main { margin-bottom: 0; }

.l-body-main * { line-height: 1.5; }

.bread-crumb { margin: 10px 0 0; padding: 0 20px; color: #7185A7; font-size: 1.2rem; line-height: 2; }

.bread-crumb > ol { display: flex; overflow-x: auto; overflow-y: hidden; overflow-scrolling: touch; overflow: auto; }

.bread-crumb > ol li { white-space: nowrap; }

.bread-crumb > ol li:not(:first-child)::before { margin: 0 .5em; content: '/'; }

.bread-crumb a { color: #7185A7; text-decoration: none; }

.l-foot { background-color: #4B4B4B; position: relative; z-index: 1; }

.l-foot .l-inner { padding: 72px 36px 78px; }

.foot-cnt-wrap a { text-decoration: none; color: #ffffff; }

.foot-hdg { font-weight: 700; font-size: 2rem; margin-left: -16px; }

.foot-hdg a { text-decoration: none; color: #ffffff; }

.foot-nav { margin-top: 40px; }

.foot-nav ul { display: flex; flex-wrap: wrap; margin-left: -1em; }

.foot-nav ul > li { width: calc(50% - 1em); margin-left: 1em; }

.foot-nav ul > li > a { display: block; line-height: 1.5; }

.foot-nav ul > li > a[target="_blank"] { padding-right: 22px; display: inline-block; position: relative; }

.foot-nav ul > li > a[target="_blank"]::after { content: ''; background: url(/kenzai/sample/ws_s/image/icn_blank_w.svg) no-repeat right center/16px auto; width: 16px; height: 12px; display: inline-block; vertical-align: middle; position: absolute; right: 0; top: .8em; }

.foot-nav .fst > li.has-child { width: calc(100% - 1em); }

.foot-nav .fst > li > a { font-weight: 700; padding: 12px 0; font-size: 1.6rem; }

.foot-nav .snd > li > a { font-weight: 400; padding: 6px 0; font-size: 1.4rem; color: #CCCCCC; }

.foot-btn { margin-top: 40px; }

.foot-btn > li { text-align: center; margin-top: 20px; }

.foot-btn > li a { display: block; border: 1px solid #ffffff; line-height: 1.5; padding: 13px; color: #CCCCCC; font-size: 1.4rem; }

.foot-btn > li a > span { display: inline-block; position: relative; }

.foot-btn > li.inq a > span { padding-left: 22px; }

.foot-btn > li.inq a > span::before { position: absolute; left: 0; top: .2em; content: ''; background: url(/kenzai/sample/ws_s/image/icn_inq_w.svg) no-repeat center/18px auto; width: 18px; height: 18px; display: inline-block; vertical-align: middle; }

.foot-btn > li.doc a > span { display: inline-block; padding-left: 24px; }

.foot-btn > li.doc a > span::before { position: absolute; left: 0; top: .35em; content: ''; background: url(/kenzai/sample/ws_s/image/icn_doc_w.svg) no-repeat center/17px auto; width: 17px; height: 13px; display: inline-block; vertical-align: middle; }

.foot-btm-wrap { margin-top: 60px; }

.foot-btm-wrap a, .foot-btm-wrap small { color: #CCCCCC; text-decoration: none; }

.foot-sub-nav { display: flex; justify-content: center; }

.foot-sub-nav > li a { line-height: 1.5; font-weight: 300; font-size: 1.2rem; }

.foot-sub-nav > li:not(:first-child) { margin-left: 20px; padding-left: 20px; position: relative; }

.foot-sub-nav > li:not(:first-child)::before { content: ''; width: 1px; height: 60%; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; background-color: #CCCCCC; }

.copy { text-align: center; margin-top: 20px; }

.copy > small { line-height: 1.5; font-size: 1.2rem; font-weight: 300; }

.page-top-wrap { position: relative; height: 0px; display: flex; justify-content: flex-end; }

.page-top { position: fixed; bottom: 0; margin-bottom: 20px; opacity: 0; pointer-events: none; transition: opacity linear 0.3s; z-index: 99; }

.poswatchBottomUp .page-top { position: absolute; }

.scrollwatchScrolled .page-top { opacity: 1; pointer-events: auto; }

.page-top > a { text-decoration: none; display: block; width: 42px; height: 42px; background-color: rgba(48, 69, 103, 0.5); position: relative; text-indent: 100%; white-space: nowrap; overflow: hidden; }

.page-top > a::after { left: 0; right: 0; top: 17px; margin: auto; position: absolute; content: ''; display: inline-block; width: 16px; height: 16px; border-top: 2px solid #ffffff; border-left: 2px solid #ffffff; -webkit-transform: translateX(0) translateY(0); transform: translateX(0) translateY(0); transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

@media print, all and (min-width: 768px) { .fixed-head .l-head + * { margin-top: 120px; } .l-head { height: 120px; top: -120px; transition: top .5s; }
  .top .l-head { height: 120px; }
  .l-head .l-inner { padding: 0 0 23px 0; position: relative; }
  .nav-active .l-head .l-inner { height: auto; overflow-y: visible; padding-bottom: 23px; }
  .top.nav-active .l-head, .nav-active .l-head { background-color: #ffffff; height: auto; position: static; }
  .nav-active.top .l-head { background-color: transparent; }
  .top.fixed-head .l-head, .fixed-head .l-head { height: 77px; position: fixed; left: 0; top: 0; width: 100%; background-color: rgba(255, 255, 255, 0.8); z-index: 99; }
  .top.fixed-head .l-head .l-inner, .fixed-head .l-head .l-inner { width: 1160px; margin: 0 auto; } .logo-wrap { position: absolute; padding: 0; padding-left: 60px; left: 0; right: auto; top: 10px; z-index: 99; }
  .nav-active .logo-wrap { background-color: transparent; }
  .fixed-head .logo-wrap { top: -12px; padding: 0; padding-left: 0; } .l-head .logo { text-align: left; display: flex; align-items: center; }
  .l-head .logo a { transition: opacity .2s; }
  .l-head .logo a:hover { opacity: .6; }
  .l-head .logo > .head { width: 110px; height: 41px; margin: 0; background: url(/kenzai/sample/ws_s/image/logo_b.svg) no-repeat center/contain; }
  .nav-active .l-head .logo > .head { background: url(/kenzai/sample/ws_s/image/logo_b.svg) no-repeat center/contain; }
  .l-head .logo > .main { margin: 15px 0 0 8px; color: #000000; }
  .nav-active .l-head .logo > .main { color: #000000; }
  .top .l-head .logo > .head, .nav-active.top .l-head .logo > .head { background: url(/kenzai/sample/ws_s/image/logo_w.svg) no-repeat center/contain; }
  .top .l-head .logo > .main, .nav-active.top .l-head .logo > .main { color: #ffffff; }
  .fixed-head.top .l-head .logo > .head { background: url(/kenzai/sample/ws_s/image/logo_b.svg) no-repeat center/contain; }
  .fixed-head.top .l-head .logo > .main { color: #000000; } .nav-wrap { display: block; padding: 0; } .nav-sp-btn { display: none; } .nav-sub { opacity: 1; display: flex; justify-content: flex-end; align-items: center; font-weight: 700; position: relative; text-align: left; z-index: 1; }
  .nav-sub > li { width: auto; margin-top: 0; margin-left: 40px; }
  .nav-sub > li > a { color: #000000; transition: opacity .2s; }
  .nav-sub > li > a:hover { opacity: .6; }
  .nav-sub > li.works { order: 1; }
  .nav-sub > li.sustainability { order: 2; }
  .nav-sub > li.showroom { order: 3; }
  .nav-sub > li.qa { order: 4; }
  .nav-sub > li.inq { order: 5; }
  .nav-sub > li:nth-child(even)::before { content: none; }
  .nav-sub .btn { width: auto; order: 6; }
  .nav-sub .btn > a { margin-top: 0; font-size: 1.4rem; display: inline-block; color: #ffffff; background-color: #304567; padding: 14px 20px; border: 2px solid #304567; transition: background-color .2s; }
  .nav-sub .btn > a:hover { background-color: #ffffff; color: #304567; }
  .top .nav-sub li > a { color: #ffffff; }
  .nav-active .nav-sub { display: flex; }
  .fixed-head .nav-sub { display: none; } .nav-gbl { position: relative; z-index: 10; padding: 0; margin-top: 12px; display: flex; flex-wrap: wrap; justify-content: flex-end; opacity: 1; }
  .nav-gbl > li { margin-top: 0; margin-right: 60px; }
  .nav-gbl > li a { color: #000000; display: inline-block; padding: 0; font-size: 1.6rem; transition: opacity .2s; }
  .nav-gbl > li a > span { text-align: center; display: block; margin-left: 0; margin-top: 10px; }
  .nav-gbl > li a:hover { opacity: .7; }
  .nav-active .nav-gbl { display: flex; height: auto; overflow: visible; }
  .top .nav-gbl > li a { color: #ffffff; }
  .fixed-head .nav-gbl { margin-top: 22px; }
  .fixed-head .nav-gbl > li a > span { margin-top: 5px; font-size: 1rem; }
  .fixed-head .nav-gbl > li:last-child { margin-right: 0; }
  .fixed-head.top .nav-gbl > li a { color: #000000; } body { overflow-x: hidden; } .l-all { min-width: 1280px; } .l-body { overflow-x: hidden; }
  .bg-square-fix .l-body::after { width: 524px; height: 1223px; background: url(/kenzai/sample/ws_s/image/bg_sq_left.svg) no-repeat center/524px auto; top: 516px; } .l-body-main { width: 1280px; padding: 0 60px; margin: 0 auto 240px; } .bread-crumb { width: 1280px; padding: 0 60px; margin: 18px auto 0; }
  .bread-crumb a:hover { text-decoration: underline; } .l-foot .l-inner { padding: 96px 60px 20px; } .foot-cnt-wrap { display: flex; justify-content: space-between; } .foot-hdg { margin-left: 0; width: 300px; }
  .foot-hdg a { transition: opacity .2s; }
  .foot-hdg a:hover { opacity: .6; } .foot-nav { margin-top: 0; width: 680px; }
  .foot-nav a { transition: opacity .2s; }
  .foot-nav a:hover { opacity: .6; }
  .foot-nav ul { margin-left: -30px; }
  .foot-nav ul > li { width: calc(25% - 30px); margin-left: 30px; }
  .foot-nav ul > li > a[target="_blank"]::after { top: .3em; }
  .foot-nav .fst { margin-top: -20px; }
  .foot-nav .fst > li { margin-top: 20px; }
  .foot-nav .fst > li.has-child { width: calc(100% - 30px); display: flex; }
  .foot-nav .fst > li.has-child > a { white-space: nowrap; }
  .foot-nav .fst > li > a { padding: 0; }
  .foot-nav .snd { margin-left: 10px; margin-bottom: 30px; margin-top: -14px; }
  .foot-nav .snd > li { margin-top: 18px; }
  .foot-nav .snd > li > a { padding: 0; } .foot-btn { width: 180px; margin-top: -18px; }
  .foot-btn > li { margin-top: 18px; }
  .foot-btn > li a { display: block; border: 1px solid #ffffff; line-height: 1.5; padding: 13px; color: #CCCCCC; font-size: 1.4rem; transition: background-color .2s; }
  .foot-btn > li a > span { display: inline-block; position: relative; }
  .foot-btn > li.inq a > span { padding-left: 22px; }
  .foot-btn > li.inq a > span::before { position: absolute; left: 0; top: .18em; content: ''; background: url(/kenzai/sample/ws_s/image/icn_inq_w.svg) no-repeat center/18px auto; width: 18px; height: 18px; display: inline-block; vertical-align: middle; }
  .foot-btn > li.inq a:hover { background-color: #ffffff; color: #4B4B4B; }
  .foot-btn > li.inq a:hover > span::before { background: url(/kenzai/sample/ws_s/image/icn_inq_g.svg) no-repeat center/17px auto; }
  .foot-btn > li.doc a > span { padding-left: 24px; }
  .foot-btn > li.doc a > span::before { position: absolute; left: 0; top: .34em; content: ''; background: url(/kenzai/sample/ws_s/image/icn_doc_w.svg) no-repeat center/17px auto; width: 17px; height: 13px; display: inline-block; vertical-align: middle; }
  .foot-btn > li.doc a:hover { background-color: #ffffff; color: #4B4B4B; }
  .foot-btn > li.doc a:hover > span::before { background: url(/kenzai/sample/ws_s/image/icn_doc_g.svg) no-repeat center/17px auto; } .foot-btm-wrap { margin-top: 110px; display: flex; justify-content: space-between; align-items: flex-start; }
  .foot-btm-wrap a { transition: opacity .2s; }
  .foot-btm-wrap a:hover { opacity: .6; } .foot-sub-nav { display: flex; justify-content: flex-start; }
  .foot-sub-nav > li a { transition: opacity .2s; }
  .foot-sub-nav > li a:hover { opacity: .6; } .copy { text-align: left; margin-top: 0; } .page-top-wrap { width: 1160px; margin: 0 auto; } }

@media print, all and (max-width: 1279px) and (min-width: 768px) { body { overflow-x: visible; } }
