@charset "UTF-8";
@font-face {
  font-family: 'HKNova';
  src: url("../fonts/HKNova-Regular.eot") format("eot");
  src: url("../fonts/HKNova-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/HKNova-Regular.otf") format("otf"), url("../fonts/HKNova-Regular.woff") format("woff"), url("../fonts/HKNova-Regular.ttf") format("truetype");
  font-style: normal;
}
/* reset
================================================== */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

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

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
}

input, select {
  vertical-align: middle;
}

button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Setting */
html {
  height: auto;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
}

img {
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  width: auto;
}

ul {
  list-style-position: outside;
  list-style-type: none;
}

ol {
  list-style-position: inside;
}

h1, h2, h3, h4, h5, h6, p {
  font-size: 1rem;
  font-weight: normal;
  text-align: justify;
}

*:active, *:focus {
  outline: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1.8vw;
}

/************************************************
    Setting
************************************************ */
* {
  transition: opacity 0.2s ease-out, color 0.1s ease-out, background-color 0.2s ease-out, border-radius 0.2s ease-out, box-shadow 0.2s ease-out, text-shadow 0.2s ease-out, transform 0.2s ease-out;
  -webkit-transition: opacity 0.2s ease-out, color 0.1s ease-out, background-color 0.2s ease-out, border-radius 0.2s ease-out, box-shadow 0.2s ease-out, text-shadow 0.2s ease-out, -webkit-transform 0.2s ease-out;
}

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 14px;
}

body {
  color: #333;
  font-size: 100%;
  font-family: "HKNova", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
  background: #fff;
  line-height: 1.6;
  -webkit-text-size-adjust: none;
  padding-top: 60px;
}

/* link */
a {
  text-decoration: none;
  color: #333;
}

a:hover {
  /*text-decoration: underline;*/
}

a img {
  background-color: rgba(255, 255, 255, 0.01);
}

a:hover img {
  opacity: 0.8;
}

/* clear */
.cf {
  zoom: 1;
}

.cf, .cf:before {
  content: '';
  display: table;
}

.cf:after {
  clear: both;
}

.clear {
  clear: both;
}

.pc {
  display: none !important;
}

/************************************************
    header
*********** */
#header {
  position: fixed;
  z-index: 99999;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 60px;
  background: #fff;
}
#header .logo {
  padding: 10px 20px;
}
#header .logo img {
  height: 40px;
  width: auto;
}

#menuBtn {
  position: fixed;
  z-index: 99999;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  background: #000;
  cursor: pointer;
}
#menuBtn span {
  -moz-transition: ease-out 0.3s;
  -o-transition: ease-out 0.3s;
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 20px;
  height: 1px;
  background: #fff;
  display: inline-block;
}
#menuBtn span:before, #menuBtn span:after {
  -moz-transition: ease-out 0.3s;
  -o-transition: ease-out 0.3s;
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
  position: absolute;
  content: '';
  width: 20px;
  height: 1px;
  background: #fff;
  left: 0;
}
#menuBtn span:before {
  top: -6px;
}
#menuBtn span:after {
  bottom: -6px;
}

#menuBtn.open span {
  background: transparent;
}
#menuBtn.open span:before {
  top: 0;
  -moz-transform: rotate(-225deg);
  -ms-transform: rotate(-225deg);
  -webkit-transform: rotate(-225deg);
  transform: rotate(-225deg);
}
#menuBtn.open span:after {
  top: 0;
  -moz-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}

/************************************************
    spNavi
*********** */
#gNavi {
  -moz-transition: ease-out 0.3s;
  -o-transition: ease-out 0.3s;
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
  position: fixed;
  top: 60px;
  right: -80%;
  width: 80%;
  bottom: 0;
  overflow: auto;
}
#gNavi > ul {
  width: 100%;
}
#gNavi > ul > li {
  border-bottom: 1px solid #333;
  -moz-transform: translate(40px, 0);
  -ms-transform: translate(40px, 0);
  -webkit-transform: translate(40px, 0);
  transform: translate(40px, 0);
  -moz-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 0;
  font-size: 16px;
  color: #fff;
  display: block;
  position: relative;
}
#gNavi > ul > li p.parent {
  position: relative;
  padding: 15px 0;
  font-weight: bold;
  font-size: 14px;
  display: block;
  text-align: center;
  color: #fff;
  letter-spacing: 0.16em;
  background: #000;
}
#gNavi > ul > li p.parent:after {
  content: "";
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  font-size: 10px;
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  top: 30%;
  right: 30px;
  -moz-transition: ease-out 0.3s;
  -o-transition: ease-out 0.3s;
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  transform-origin: center center;
}
#gNavi > ul > li p.parent.open:after {
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  transform-origin: center center;
}
#gNavi > ul > li a {
  font-weight: bold;
  font-size: 14px;
  display: block;
  text-align: center;
  color: #fff;
  padding: 15px 0;
  letter-spacing: 0.16em;
  background: #000;
}
#gNavi > ul > li a.uncl {
  pointer-events: none;
}
#gNavi > ul > li > .subNav {
  background: rgba(27, 27, 27, 0.9);
  display: none;
}
#gNavi > ul > li > .subNav > li {
  border-top: 1px solid #333;
  font-size: 13px;
}
#gNavi > ul > li > .subNav > li a {
  font-size: 13px;
  background: none;
}
#gNavi > ul li:nth-of-type(1) {
  -moz-transition-delay: 0.1s;
  -o-transition-delay: 0.1s;
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
#gNavi > ul li:nth-of-type(2) {
  -moz-transition-delay: 0.15s;
  -o-transition-delay: 0.15s;
  -webkit-transition-delay: 0.15s;
  transition-delay: 0.15s;
}
#gNavi > ul li:nth-of-type(3) {
  -moz-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
#gNavi > ul li:nth-of-type(4) {
  -moz-transition-delay: 0.25s;
  -o-transition-delay: 0.25s;
  -webkit-transition-delay: 0.25s;
  transition-delay: 0.25s;
}
#gNavi > ul li:nth-of-type(5) {
  -moz-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
#gNavi > ul li:nth-of-type(6) {
  -moz-transition-delay: 0.35s;
  -o-transition-delay: 0.35s;
  -webkit-transition-delay: 0.35s;
  transition-delay: 0.35s;
}
#gNavi > ul li:nth-of-type(7) {
  -moz-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
#gNavi > ul li:nth-of-type(8) {
  -moz-transition-delay: 0.45s;
  -o-transition-delay: 0.45s;
  -webkit-transition-delay: 0.45s;
  transition-delay: 0.45s;
}

#gNavi.open {
  right: 0;
}
#gNavi.open ul li {
  opacity: 1;
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/************************************************
    footer
************************************************ */
#footer {
  display: none;
}

#goTop {
  background: #f0f0f0;
  text-align: center;
}
#goTop a {
  display: block;
  padding: 10px 0;
}

#copy {
  color: #797979;
  font-size: 10px;
  text-align: center;
  padding: 10px 0;
  line-height: 1.4;
}

/************************************************
    top
************************************************ */
#mvTop {
  height: 60vw;
  position: relative;
  background: url(../images/mv_top01.jpg) center;
  background-size: cover;
}
#mvTop h1 {
  position: absolute;
  left: 50%;
  top: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#topSec01 {
  padding: 50px 20px 0;
}
#topSec01 .imgClm {
  text-align: center;
}
#topSec01 .btn {
  text-align: center;
  margin: 30px 0;
}
#topSec01 .btn a {
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 55px;
  line-height: 55px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  position: relative;
}
#topSec01 .btn a:after {
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 10px;
  display: inline-block;
  padding-left: 10px;
}
#topSec01 .btn a:hover {
  background: #000;
  color: #fff;
}
#topSec01 h2 {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-top: 20px;
}
#topSec01 .lead {
  font-size: 13px;
}

#topSec02 {
  padding: 60px 20px 0;
}
#topSec02 h2 {
  text-align: center;
  margin-bottom: 20px;
}
#topSec02 h2 img {
  width: 27.5vw;
}
#topSec02 .tit {
  text-align: center;
  font-size: 13px;
  margin-bottom: 20px;
}
#topSec02 ul li {
  position: relative;
  width: 100%;
  height: 250px;
}
#topSec02 ul li a {
  display: block;
}
#topSec02 ul li a .btn {
  border: 1px solid #fff;
  color: #fff;
  height: 55px;
  line-height: 55px;
  width: calc(100% - 40px);
  text-align: center;
  font-size: 18px;
  letter-spacing: 0;
  margin: 0 auto;
  position: absolute;
  left: 50%;
  top: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#topSec02 ul li a:hover .btn {
  border: 1px solid #000;
  background: #000;
  color: #fff;
}
#topSec02 ul li:nth-of-type(1) {
  background: url(../images/img_works01.jpg);
  background-size: cover;
}
#topSec02 ul li:nth-of-type(2) {
  background: url(../images/img_works02.jpg) 50% 50%;
  background-size: cover;
}
#topSec02 ul li:nth-of-type(5) {
  background: url(../images/img_works03.jpg);
  background-size: cover;
}
#topSec02 ul li:nth-of-type(3) {
  background: url(../images/img_works04.jpg) 50% 20%;
  background-size: cover;
}
#topSec02 ul li:nth-of-type(4) {
  background: url(../images/img_works_mrd.jpg);
  background-size: cover;
}

#topSec03 {
  padding: 60px 20px 0;
}
#topSec03 .left h2, #topSec03 .right h2 {
  text-align: center;
  margin-bottom: 20px;
}
#topSec03 .left {
  margin-bottom: 50px;
}
#topSec03 .left h2 img {
  width: 72vw;
}
#topSec03 .right {
  padding: 0 5px;
}
#topSec03 .right h2 img {
  width: 62.8vw;
}
#topSec03 .right ul li {
  margin-bottom: 30px;
}
#topSec03 .right ul li a {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#topSec03 .right ul li a .imgClm {
  width: 50%;
}
#topSec03 .right ul li a .imgClm img {
  width: 100%;
}
#topSec03 .right ul li a .txtClm {
  width: 50%;
  letter-spacing: 0;
  padding-left: 10px;
}
#topSec03 .right ul li a .txtClm .position {
  font-weight: bold;
  font-size: 12px;
  margin-bottom: 5px;
  line-height: 1.3;
}
#topSec03 .right ul li a .txtClm .name {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
}
#topSec03 .right ul li a .txtClm .name .logo {
  display: block;
  margin: 10px 0;
}
#topSec03 .right ul li a .txtClm b {
  display: block;
  font-size: 10px;
  font-weight: normal;
}
#topSec03 .right ul li a .txtClm .intro {
  font-size: 12px;
  margin-top: 10px;
}
#topSec03 .right ul li a .txtClm .intro br {
  display: none;
}

#topSec04 {
  padding: 30px 0 30px;
}
#topSec04 h2 {
  text-align: center;
  margin-bottom: 20px;
}
#topSec04 h2 img {
  width: 29vw;
}

/************************************************
    sub page
************************************************ */
#mvSub {
  height: 40vw;
  position: relative;
}
#mvSub > h1 {
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  text-align: center;
}

/************************************************
    aboutus
************************************************ */
#mvSub.aboutus {
  background: url(../images/mv_aboutus.jpg) center;
  background-size: cover;
}
#mvSub.aboutus h1 img {
  width: 39vw;
}

#aboutusSec01, #aboutusSec03 {
  padding: 50px 20px;
}
#aboutusSec01 .left .txtClm h2, #aboutusSec01 .right .txtClm h2, #aboutusSec03 .left .txtClm h2, #aboutusSec03 .right .txtClm h2 {
  text-align: center;
  margin: 30px 0;
}
#aboutusSec01 .left .txtClm .btn a, #aboutusSec01 .right .txtClm .btn a, #aboutusSec03 .left .txtClm .btn a, #aboutusSec03 .right .txtClm .btn a {
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 55px;
  line-height: 55px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  position: relative;
}
#aboutusSec01 .left .txtClm .btn a:after, #aboutusSec01 .right .txtClm .btn a:after, #aboutusSec03 .left .txtClm .btn a:after, #aboutusSec03 .right .txtClm .btn a:after {
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 10px;
  display: inline-block;
  padding-left: 10px;
}
#aboutusSec01 .left .txtClm .btn a:hover, #aboutusSec01 .right .txtClm .btn a:hover, #aboutusSec03 .left .txtClm .btn a:hover, #aboutusSec03 .right .txtClm .btn a:hover {
  background: #000;
  color: #fff;
}

#aboutusSec01 .right .txtClm h2 img {
  width: 48vw;
}

#aboutusSec02 {
  background: #000;
  padding: 50px 20px;
}
#aboutusSec02 .txtClm h2 {
  text-align: center;
  margin-bottom: 30px;
}
#aboutusSec02 .txtClm h2 img {
  width: 86vw;
}
#aboutusSec02 .txtClm .tit {
  color: #fff;
  margin-bottom: 30px;
}
#aboutusSec02 .txtClm .btn {
  color: #fff;
}
#aboutusSec02 .txtClm .btn a {
  border: 1px solid #fff;
  color: #fff;
  display: inline-block;
  height: 55px;
  line-height: 55px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  position: relative;
}
#aboutusSec02 .txtClm .btn a:after {
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 10px;
  display: inline-block;
  padding-left: 10px;
}
#aboutusSec02 .txtClm .btn a:hover {
  background: #fff;
  color: #000;
}

#aboutusSec03 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column-reverse;
  flex-direction: column-reverse;
}
#aboutusSec03 .left .txtClm h2 img {
  width: 86vw;
}

/************************************************
    aboutus/top_message
************************************************ */
.topmess {
  background: #eee;
}

#topmessSec01, #topmessSec02, #topmessSec03 {
  padding: 20px;
}
#topmessSec01 .left .txtClm, #topmessSec01 .right .txtClm, #topmessSec02 .left .txtClm, #topmessSec02 .right .txtClm, #topmessSec03 .left .txtClm, #topmessSec03 .right .txtClm {
  background: #fff;
  padding: 20px;
  box-shadow: 4px 4px 7px 0px rgba(0, 0, 0, 0.04);
}
#topmessSec01 .left .txtClm .profile, #topmessSec01 .right .txtClm .profile, #topmessSec02 .left .txtClm .profile, #topmessSec02 .right .txtClm .profile, #topmessSec03 .left .txtClm .profile, #topmessSec03 .right .txtClm .profile {
  margin-bottom: 30px;
}
#topmessSec01 .left .txtClm .profile .company, #topmessSec01 .right .txtClm .profile .company, #topmessSec02 .left .txtClm .profile .company, #topmessSec02 .right .txtClm .profile .company, #topmessSec03 .left .txtClm .profile .company, #topmessSec03 .right .txtClm .profile .company {
  font-size: 16px;
  font-weight: bold;
}
#topmessSec01 .left .txtClm .profile .name, #topmessSec01 .right .txtClm .profile .name, #topmessSec02 .left .txtClm .profile .name, #topmessSec02 .right .txtClm .profile .name, #topmessSec03 .left .txtClm .profile .name, #topmessSec03 .right .txtClm .profile .name {
  font-weight: bold;
  line-height: 1.5;
  font-size: 12px;
  margin-bottom: 20px;
}
#topmessSec01 .left .txtClm .profile .name b, #topmessSec01 .right .txtClm .profile .name b, #topmessSec02 .left .txtClm .profile .name b, #topmessSec02 .right .txtClm .profile .name b, #topmessSec03 .left .txtClm .profile .name b, #topmessSec03 .right .txtClm .profile .name b {
  font-size: 18px;
  display: block;
}
#topmessSec01 .left .txtClm h2, #topmessSec01 .right .txtClm h2, #topmessSec02 .left .txtClm h2, #topmessSec02 .right .txtClm h2, #topmessSec03 .left .txtClm h2, #topmessSec03 .right .txtClm h2 {
  margin-bottom: 20px;
}
#topmessSec01 .left .txtClm h2 img, #topmessSec01 .right .txtClm h2 img, #topmessSec02 .left .txtClm h2 img, #topmessSec02 .right .txtClm h2 img, #topmessSec03 .left .txtClm h2 img, #topmessSec03 .right .txtClm h2 img {
  width: 67vw;
}
#topmessSec01 .left .txtClm h3, #topmessSec01 .right .txtClm h3, #topmessSec02 .left .txtClm h3, #topmessSec02 .right .txtClm h3, #topmessSec03 .left .txtClm h3, #topmessSec03 .right .txtClm h3 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #454545;
}
#topmessSec01 .left .txtClm h3.messtit, #topmessSec01 .right .txtClm h3.messtit, #topmessSec02 .left .txtClm h3.messtit, #topmessSec02 .right .txtClm h3.messtit, #topmessSec03 .left .txtClm h3.messtit, #topmessSec03 .right .txtClm h3.messtit {
  color: #0094d4;
}
#topmessSec01 .left .txtClm .message, #topmessSec01 .right .txtClm .message, #topmessSec02 .left .txtClm .message, #topmessSec02 .right .txtClm .message, #topmessSec03 .left .txtClm .message, #topmessSec03 .right .txtClm .message {
  color: #454545;
}
#topmessSec01 .left .txtClm .btn, #topmessSec01 .right .txtClm .btn, #topmessSec02 .left .txtClm .btn, #topmessSec02 .right .txtClm .btn, #topmessSec03 .left .txtClm .btn, #topmessSec03 .right .txtClm .btn {
  text-align: center;
}
#topmessSec01 .left .txtClm .btn a, #topmessSec01 .right .txtClm .btn a, #topmessSec02 .left .txtClm .btn a, #topmessSec02 .right .txtClm .btn a, #topmessSec03 .left .txtClm .btn a, #topmessSec03 .right .txtClm .btn a {
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 55px;
  line-height: 55px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  position: relative;
}
#topmessSec01 .left .txtClm .btn a:after, #topmessSec01 .right .txtClm .btn a:after, #topmessSec02 .left .txtClm .btn a:after, #topmessSec02 .right .txtClm .btn a:after, #topmessSec03 .left .txtClm .btn a:after, #topmessSec03 .right .txtClm .btn a:after {
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 10px;
  display: inline-block;
  padding-left: 10px;
}
#topmessSec01 .left .txtClm .btn a:hover, #topmessSec01 .right .txtClm .btn a:hover, #topmessSec02 .left .txtClm .btn a:hover, #topmessSec02 .right .txtClm .btn a:hover, #topmessSec03 .left .txtClm .btn a:hover, #topmessSec03 .right .txtClm .btn a:hover {
  background: #000;
  color: #fff;
}

.top_headline {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 50px 0 0;
}

/************************************************
    aboutus/corporate_identity
************************************************ */
#mvSub.identity {
  background: url(../images/mv_identity.jpg) center;
  background-size: cover;
}
#mvSub.identity h1 img {
  width: 86.4vw;
}

#identitySec01 {
  padding: 50px 0 50px;
}
#identitySec01 .inner {
  padding: 0 30px;
}
#identitySec01 h2 {
  text-align: center;
  margin-bottom: 30px;
}
#identitySec01 h2 img {
  width: 33.4vw;
}
#identitySec01 .txtClm {
  font-size: 14px;
  line-height: 2.8;
  margin-bottom: 30px;
}
#identitySec01 .logo {
  text-align: center;
}

/************************************************
    aboutus/companyinfo
************************************************ */
#mvSub.companyinfo {
  background: url(../images/mv_companyinfo.jpg) center;
  background-size: cover;
}
#mvSub.companyinfo h1 img {
  width: 59.7vw;
}

#companyinfoSec01 {
  padding: 50px 0 50px;
}
#companyinfoSec01 .inner {
  padding: 0 20px;
}
#companyinfoSec01 h2 {
  text-align: center;
  margin-bottom: 30px;
}
#companyinfoSec01 h2 img {
  width: 48.6vw;
}
#companyinfoSec01 table {
  width: 100%;
}
#companyinfoSec01 table tr {
  border-bottom: 1px solid #eee;
}
#companyinfoSec01 table th, #companyinfoSec01 table td {
  width: 100%;
  display: block;
  text-align: left;
  font-size: 14px;
}
#companyinfoSec01 table th {
  padding-left: 150px;
  padding: 20px 0 10px;
}
#companyinfoSec01 table td a {
  color: #0094d4;
}
#companyinfoSec01 table td a:hover {
  text-decoration: underline;
}

#gMap {
  height: 430px;
  width: 100%;
}

/************************************************
    overview
************************************************ */
#mvSub.overview {
  background: url(../images/mv_overview.jpg) center;
  background-size: cover;
}
#mvSub.overview .headline {
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  text-align: center;
  padding: 0 20px;
}
#mvSub.overview .headline h1 {
  position: static;
  transform: none;
  margin-bottom: 10px;
  text-align: center;
}
#mvSub.overview .headline h1 img {
  width: 59.7vw;
}
#mvSub.overview .headline p {
  text-align: center;
  font-size: 10px;
}

#overviewSec01, #overviewSec02, #overviewSec03, #overviewSec04, #overviewSec05 {
  padding: 20px;
}
#overviewSec01 .left .imgClm img, #overviewSec01 .right .imgClm img, #overviewSec02 .left .imgClm img, #overviewSec02 .right .imgClm img, #overviewSec03 .left .imgClm img, #overviewSec03 .right .imgClm img, #overviewSec04 .left .imgClm img, #overviewSec04 .right .imgClm img, #overviewSec05 .left .imgClm img, #overviewSec05 .right .imgClm img {
  width: 100%;
}
#overviewSec01 .left .txtClm, #overviewSec01 .right .txtClm, #overviewSec02 .left .txtClm, #overviewSec02 .right .txtClm, #overviewSec03 .left .txtClm, #overviewSec03 .right .txtClm, #overviewSec04 .left .txtClm, #overviewSec04 .right .txtClm, #overviewSec05 .left .txtClm, #overviewSec05 .right .txtClm {
  padding: 20px;
}
#overviewSec01 .left .txtClm .logo, #overviewSec01 .right .txtClm .logo, #overviewSec02 .left .txtClm .logo, #overviewSec02 .right .txtClm .logo, #overviewSec03 .left .txtClm .logo, #overviewSec03 .right .txtClm .logo, #overviewSec04 .left .txtClm .logo, #overviewSec04 .right .txtClm .logo, #overviewSec05 .left .txtClm .logo, #overviewSec05 .right .txtClm .logo {
  margin-bottom: 20px;
}
#overviewSec01 .left .txtClm h2, #overviewSec01 .right .txtClm h2, #overviewSec02 .left .txtClm h2, #overviewSec02 .right .txtClm h2, #overviewSec03 .left .txtClm h2, #overviewSec03 .right .txtClm h2, #overviewSec04 .left .txtClm h2, #overviewSec04 .right .txtClm h2, #overviewSec05 .left .txtClm h2, #overviewSec05 .right .txtClm h2 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.4;
}
#overviewSec01 .left .txtClm h2 span, #overviewSec01 .right .txtClm h2 span, #overviewSec02 .left .txtClm h2 span, #overviewSec02 .right .txtClm h2 span, #overviewSec03 .left .txtClm h2 span, #overviewSec03 .right .txtClm h2 span, #overviewSec04 .left .txtClm h2 span, #overviewSec04 .right .txtClm h2 span, #overviewSec05 .left .txtClm h2 span, #overviewSec05 .right .txtClm h2 span {
  display: block;
  font-size: 12px;
}
#overviewSec01 .left .txtClm .description, #overviewSec01 .right .txtClm .description, #overviewSec02 .left .txtClm .description, #overviewSec02 .right .txtClm .description, #overviewSec03 .left .txtClm .description, #overviewSec03 .right .txtClm .description, #overviewSec04 .left .txtClm .description, #overviewSec04 .right .txtClm .description, #overviewSec05 .left .txtClm .description, #overviewSec05 .right .txtClm .description {
  font-size: 14px;
  margin-bottom: 20px;
}
#overviewSec01 .left .txtClm .btn a, #overviewSec01 .right .txtClm .btn a, #overviewSec02 .left .txtClm .btn a, #overviewSec02 .right .txtClm .btn a, #overviewSec03 .left .txtClm .btn a, #overviewSec03 .right .txtClm .btn a, #overviewSec04 .left .txtClm .btn a, #overviewSec04 .right .txtClm .btn a, #overviewSec05 .left .txtClm .btn a, #overviewSec05 .right .txtClm .btn a {
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 55px;
  line-height: 55px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  position: relative;
}
#overviewSec01 .left .txtClm .btn a:after, #overviewSec01 .right .txtClm .btn a:after, #overviewSec02 .left .txtClm .btn a:after, #overviewSec02 .right .txtClm .btn a:after, #overviewSec03 .left .txtClm .btn a:after, #overviewSec03 .right .txtClm .btn a:after, #overviewSec04 .left .txtClm .btn a:after, #overviewSec04 .right .txtClm .btn a:after, #overviewSec05 .left .txtClm .btn a:after, #overviewSec05 .right .txtClm .btn a:after {
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 10px;
  display: inline-block;
  padding-left: 10px;
}
#overviewSec01 .left .txtClm .btn a:hover, #overviewSec01 .right .txtClm .btn a:hover, #overviewSec02 .left .txtClm .btn a:hover, #overviewSec02 .right .txtClm .btn a:hover, #overviewSec03 .left .txtClm .btn a:hover, #overviewSec03 .right .txtClm .btn a:hover, #overviewSec04 .left .txtClm .btn a:hover, #overviewSec04 .right .txtClm .btn a:hover, #overviewSec05 .left .txtClm .btn a:hover, #overviewSec05 .right .txtClm .btn a:hover {
  background: #000;
  color: #fff;
}
#overviewSec01 .right, #overviewSec02 .right, #overviewSec03 .right, #overviewSec04 .right, #overviewSec05 .right {
  box-shadow: 4px 4px 7px 0px rgba(0, 0, 0, 0.04);
  background: #fff;
}

#overviewSec01, #overviewSec03, #overviewSec05 {
  background: #eee;
}

/************************************************
    overview/works
************************************************ */
#mvSub.works {
  background: url(../images/mv_hanshin.jpg) center;
  background-size: cover;
  height: 40vw;
  position: relative;
}
#mvSub.works .txtClm {
  position: absolute;
  left: 50%;
  top: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
}
#mvSub.works .txtClm h1, #mvSub.works .txtClm p {
  text-align: center;
  width: 100%;
}
#mvSub.works .txtClm h1 {
  color: #fff;
  font-size: 23px;
  font-weight: bold;
}
#mvSub.works .txtClm p {
  color: #fff;
  font-size: 16px;
}
#mvSub.works.shanghai {
  background: url(../images/mv_shanghai.jpg) center;
  background-size: cover;
}
#mvSub.works.pt {
  background: url(../images/mv_pt.jpg) center;
  background-size: cover;
}
#mvSub.works.farm {
  background: url(../images/mv_farm.jpg) center;
  background-size: cover;
}

#worksSec01 .inner, #worksSec02 .inner, #worksSec03 .inner, #worksSec04 .inner, #worksSec05 .inner {
  margin: 0 auto;
  padding: 20px 20px 0;
}
#worksSec01 .inner h2, #worksSec02 .inner h2, #worksSec03 .inner h2, #worksSec04 .inner h2, #worksSec05 .inner h2 {
  text-align: center;
}
#worksSec01 .inner h2 span, #worksSec02 .inner h2 span, #worksSec03 .inner h2 span, #worksSec04 .inner h2 span, #worksSec05 .inner h2 span {
  display: block;
  font-size: 12px;
  margin-top: 10px;
}

#worksSec01 {
  padding-bottom: 40px;
}
#worksSec01 h2 {
  padding: 40px 0 30px;
}
#worksSec01 h2 img {
  width: 35.8vw;
}
#worksSec01 .strengthBox li:nth-of-type(n+2) {
  margin: 30px 0 0;
}
#worksSec01 .strengthBox li h3 {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  padding: 10px 0;
}
#worksSec01 .strengthBox li p {
  font-size: 14px;
}
#worksSec01 p.small {
  font-size: 12px;
  margin-top: 40px;
}

#worksSec02 {
  padding: 40px 0;
  background: #eee;
}
#worksSec02 h2 {
  padding-bottom: 30px;
}
#worksSec02 h2 img {
  width: 88.8vw;
}
#worksSec02 ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#worksSec02 ul li {
  width: 48%;
  height: 50px;
  position: relative;
}
#worksSec02 ul li:nth-of-type(n+3) {
  margin-top: 20px;
}
#worksSec02 ul li a {
  width: 100%;
  display: block;
  height: 100%;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  border: 1px solid #000;
}
#worksSec02 ul li a:hover {
  color: #fff;
  background: #000;
}
#worksSec02 ul li.none {
  display: block;
  height: 50px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  border: 1px solid #000;
  color: #fff;
  background: #000;
}
#worksSec02 ul li span {
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  width: 100%;
  text-align: center;
  line-height: 1.4;
}

#worksSec03 {
  background: #eee;
}
#worksSec03 li {
  padding: 20px;
}
#worksSec03 li .left .imgClm img, #worksSec03 li .right .imgClm img {
  width: 100%;
}
#worksSec03 li .left .txtClm, #worksSec03 li .right .txtClm {
  padding: 40px 20px 20px;
}
#worksSec03 li .left .txtClm h3, #worksSec03 li .right .txtClm h3 {
  text-align: left;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.4;
}
#worksSec03 li .left .txtClm .description br, #worksSec03 li .right .txtClm .description br {
  display: none;
}
#worksSec03 li .right {
  box-shadow: 4px 4px 7px 0px rgba(0, 0, 0, 0.04);
  background: #fff;
  position: relative;
}
#worksSec03 li .right .num {
  position: absolute;
  top: 10px;
  left: 10px;
  font-size: 24px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-style: italic;
  line-height: 1;
}

#worksSec04 {
  padding: 50px 0;
}
#worksSec04 h2 {
  margin-bottom: 30px;
}
#worksSec04 .messWrap .left .txtClm, #worksSec04 .messWrap .right .txtClm {
  background: #fff;
  padding: 20px;
}
#worksSec04 .messWrap .left .txtClm .profile, #worksSec04 .messWrap .right .txtClm .profile {
  margin-bottom: 30px;
}
#worksSec04 .messWrap .left .txtClm .profile .company, #worksSec04 .messWrap .right .txtClm .profile .company {
  font-size: 16px;
  font-weight: bold;
}
#worksSec04 .messWrap .left .txtClm .profile .name, #worksSec04 .messWrap .right .txtClm .profile .name {
  font-weight: bold;
}
#worksSec04 .messWrap .left .txtClm .profile .name b, #worksSec04 .messWrap .right .txtClm .profile .name b {
  font-size: 18px;
  display: block;
}
#worksSec04 .messWrap .left .txtClm h3, #worksSec04 .messWrap .right .txtClm h3 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #454545;
}
#worksSec04 .messWrap .left .txtClm h3:nth-of-type(n+2), #worksSec04 .messWrap .right .txtClm h3:nth-of-type(n+2) {
  margin-top: 20px;
}
#worksSec04 .messWrap .left .txtClm .message, #worksSec04 .messWrap .right .txtClm .message {
  color: #454545;
}
#worksSec04 .messWrap .right {
  box-shadow: 4px 4px 7px 0px rgba(0, 0, 0, 0.04);
}

#worksSec05 h2 {
  text-align: center;
  margin-bottom: 30px;
}
#worksSec05 h2 img {
  width: 49.6vw;
}
#worksSec05 h2 span {
  display: block;
  font-size: 12px;
  margin-top: 10px;
}
#worksSec05 ul li {
  position: relative;
  width: 100%;
  height: 150px;
}
#worksSec05 ul li a {
  display: block;
}
#worksSec05 ul li a .btn {
  border: 1px solid #fff;
  color: #fff;
  height: 55px;
  line-height: 55px;
  width: calc(100% - 40px);
  text-align: center;
  font-size: 18px;
  letter-spacing: 0;
  margin: 0 auto;
  position: absolute;
  left: 50%;
  top: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#worksSec05 ul li a:hover .btn {
  border: 1px solid #000;
  background: #000;
  color: #fff;
}
#worksSec05 ul li.hanshin {
  background: url(../images/img_works01.jpg) center;
  background-size: cover;
}
#worksSec05 ul li.shanghai {
  background: url(../images/img_works02.jpg) center;
  background-size: cover;
}
#worksSec05 ul li.products {
  background: url(../images/img_works03.jpg) center 50%;
  background-size: cover;
}
#worksSec05 ul li.pt {
  background: url(../images/img_works04.jpg) center 20%;
  background-size: cover;
}
#worksSec05 ul li.farm {
  background: url(../images/img_works_mrd.jpg) center;
  background-size: cover;
}

/************************************************
    career
************************************************ */
#mvSub.career {
  background: url(../images/mv_career.jpg) center;
  background-size: cover;
  height: 123vw;
  position: relative;
}
#mvSub.career #particle {
  background: rgba(204, 204, 204, 0.5);
  height: 123vw;
  position: relative;
}
#mvSub.career h1 {
  position: absolute;
  left: 50%;
  top: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
}
#mvSub.career h1 img {
  width: 85vw;
}

.control {
  position: absolute;
  left: 50%;
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 30px;
  width: 100%;
}
.control a {
  color: #fff;
  display: inline-block;
  font-size: 14px;
}
.control a span {
  border-bottom: 2px solid #fff;
}
.control a.back {
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 20px;
}
.control a.back:before {
  content: "";
  background: url(../images/arrow_right.png);
  background-size: cover;
  transform: rotate(180deg);
  width: 10px;
  height: 18px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
.control a.next {
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 20px;
}
.control a.next:after {
  content: "";
  background: url(../images/arrow_right.png);
  background-size: cover;
  width: 10px;
  height: 18px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
}

#careerSec01 {
  padding: 50px 0 50px;
}
#careerSec01 .inner {
  padding: 0 20px;
}
#careerSec01 .headline {
  margin-bottom: 50px;
}
#careerSec01 .headline h2 {
  margin-bottom: 20px;
}
#careerSec01 .headline h2 img {
  width: 47vw;
}
#careerSec01 .headline .lead {
  font-size: 18px;
  font-weight: bold;
}
#careerSec01 .steps > li {
  position: relative;
  padding-bottom: 110px;
  margin-bottom: 20px;
}
#careerSec01 .steps > li:after {
  content: "";
  background: url(../images/arrow_under.png);
  width: 46px;
  height: 86px;
  position: absolute;
  bottom: 0;
}
#careerSec01 .steps > li:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
}
#careerSec01 .steps > li:last-of-type:after {
  background: none;
}
#careerSec01 .steps > li h3 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}
#careerSec01 .steps > li .attention {
  margin-top: 10px;
}
#careerSec01 .steps > li.s1 p {
  font-size: 20px;
  font-weight: bold;
  padding: 20px;
  text-align: center;
  border: 2px solid #000;
}
#careerSec01 .steps > li.s2 .second {
  background: #eee;
}
#careerSec01 .steps > li.s2 .second li {
  padding: 20px;
}
#careerSec01 .steps > li.s2 .second li p {
  text-align: center;
  font-size: 16px;
}
#careerSec01 .steps > li.s2 .second li .logo {
  margin-bottom: 10px;
}
#careerSec01 .steps > li.s3 .third li {
  margin-bottom: 20px;
}
#careerSec01 .steps > li.s3 .third li:nth-of-type(1) div, #careerSec01 .steps > li.s3 .third li:nth-of-type(2) div {
  background: #eee;
}
#careerSec01 .steps > li.s3 .third li:nth-of-type(3) div {
  border: 2px solid #eee;
  padding: 20px;
}
#careerSec01 .steps > li.s3 .third li > p {
  text-align: center;
  margin-bottom: 10px;
  font-size: 16px;
}
#careerSec01 .steps > li.s3 .third li:nth-of-type(1) div .logo {
  padding: 20px 0;
  text-align: center;
}
#careerSec01 .steps > li.s3 .third li:nth-of-type(2) div .logo {
  padding: 20px 0;
  text-align: center;
}
#careerSec01 .steps > li.s3 .third li:nth-of-type(3) div p {
  text-align: center;
}

.entry {
  position: relative;
  height: 80px;
  margin-bottom: 50px;
}
.entry a {
  position: absolute;
  right: 0;
  color: #fff;
  font-size: 20px;
  background: #000;
  padding: 20px 30px;
}
.entry a:after {
  content: "";
  background: url(../images/arrow_right.png) no-repeat;
  background-size: cover;
  width: 11px;
  height: 20px;
  display: inline-block;
  margin-left: 20px;
}
.entry a:hover {
  opacity: 0.8;
}

/************************************************
    career/topmessage
************************************************ */
#mvSub.topmessage {
  background: #ccc url(../images/mv_rectopmess.jpg) 60% center;
  background-size: cover;
  height: 123vw;
}
#mvSub.topmessage .inner {
  position: relative;
  height: 100%;
}
#mvSub.topmessage .headline {
  position: absolute;
  left: 50%;
  top: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  padding: 20px;
}
#mvSub.topmessage .headline h2 {
  margin-bottom: 20px;
  text-align: center;
}
#mvSub.topmessage .headline h2 img {
  width: 35.4vw;
}
#mvSub.topmessage .headline p {
  font-size: 16px;
  color: #fff;
  text-align: center;
}

.rectopmess {
  background: #eee;
  padding-bottom: 50px;
}

.btnArea {
  padding: 30px 20px;
}
.btnArea .btn {
  margin: 0 0 20px;
}
.btnArea .btn a {
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 55px;
  line-height: 55px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  position: relative;
}
.btnArea .btn a:after {
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 10px;
  display: inline-block;
  padding-left: 10px;
}
.btnArea .btn a:hover {
  background: #000;
  color: #fff;
}

/************************************************
    career/recruitment
************************************************ */
#recruitSec01, #recruitSec02 {
  padding: 50px 0 50px;
}
#recruitSec01 h2, #recruitSec02 h2 {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
}

#recruitSec01 .apply .salary {
    display: flex;
}

#recruitSec01 .inner, #recruitSec02 .inner {
  padding: 0 20px;
}
#recruitSec01 .apply, #recruitSec02 .apply {
  width: 100%;
}
#recruitSec01 .apply tr, #recruitSec02 .apply tr {
  border-bottom: 1px solid #ccc;
}
#recruitSec01 .apply tr th, #recruitSec02 .apply tr th {
  font-size: 14px;
  font-weight: bold;
  text-align: left;
  padding: 20px 0 10px;
}
#recruitSec01 .apply tr th, #recruitSec01 .apply tr td, #recruitSec02 .apply tr th, #recruitSec02 .apply tr td {
  display: block;
}
#recruitSec01 .apply tr td, #recruitSec02 .apply tr td {
  padding-bottom: 10px;
}
#recruitSec01 .apply tr td h3, #recruitSec02 .apply tr td h3 {
  font-size: 14px;
  font-weight: bold;
  background: #ccc;
  padding: 10px 20px;
  margin-top: 10px;
}
#recruitSec01 .apply tr h3 + .applyBox {
  margin-top:0;
}
#recruitSec01 .apply tr .applyBox, #recruitSec02 .apply tr .applyBox {
  background: #eee;
  padding: 15px 20px;
  font-size: 14px;
  margin-top: 10px;
}
#recruitSec01 .apply tr .applyBox p, #recruitSec02 .apply tr .applyBox p {
  font-size: 14px;
  margin-top: 10px;
}
#recruitSec01 .apply tr .mt0, #recruitSec02 .apply tr .mt0 {
  margin-top: 0;
}

/************************************************
    career/interview
************************************************ */
#interviewSec01 .inner {
  padding: 30px 20px;
}
#interviewSec01 ul.menuBtn {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#interviewSec01 ul.menuBtn li {
  width: 32%;
  margin-bottom: 10px;
}
#interviewSec01 ul.menuBtn li a {
  display: block;
  width: 100%;
  padding: 10px 0;
  line-height: 1;
  text-align: center;
  font-size: 14px;
  border: 1px solid #000;
  letter-spacing: 0;
}
#interviewSec01 ul.menuBtn li a:hover {
  background: #000;
  color: #fff;
}

#interviewSec02 .inner {
  padding: 0 20px;
}
#interviewSec02 .member {
  margin-bottom: 40px;
}
#interviewSec02 .member .txtClm {
  position: relative;
}
#interviewSec02 .member .txtClm .inner02 {
  padding: 10px;
}
#interviewSec02 .member .txtClm .tit {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}
#interviewSec02 .member .txtClm .description {
  margin-bottom: 10px;
}
#interviewSec02 .member .txtClm .name {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.4;
}
#interviewSec02 .member .txtClm .name span {
  display: inline-block;
  margin-left: 20px;
  font-size: 12px;
  font-weight: normal;
}
#interviewSec02 .member .txtClm .btn {
  margin-top: 20px;
}
#interviewSec02 .member .txtClm .btn a {
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 55px;
  line-height: 55px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  position: relative;
}
#interviewSec02 .member .txtClm .btn a:after {
  font-family: FontAwesome,'FontAwesome';
  content: '\f054';
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 10px;
  display: inline-block;
  padding-left: 10px;
}
#interviewSec02 .member .txtClm .btn a:hover {
  background: #000;
  color: #fff;
}
#interviewSec02 .member:nth-of-type(2n) {
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
#interviewSec02 .member:nth-of-type(2n) .txtClm .inner02 {
  right: 0;
  left: auto;
}

/************************************************
    career/interview/members
************************************************ */
#mvSub.members {
  background: #ccc;
  height: 123vw;
}
#mvSub.members h1 img {
  width: 64.9vw;
}
#mvSub.members.typeB .inner {
  padding: 0 20px;
}
#mvSub.members.typeB .catch {
  padding-top: 13vw;
  color: #fff;
  margin-bottom: 15vw;
}
#mvSub.members.typeB .catch h2 {
  font-size: 15px;
  line-height: 1.5;
  margin-bottom: 5vw;
}
#mvSub.members.typeB .catch h2 span {
  display: block;
  font-size: 10px;
}
#mvSub.members.typeB .catch .lead {
  font-size: 18px;
  font-weight: bold;
}
#mvSub.members.typeB .profile {
  color: #fff;
  position: absolute;
  bottom: 60px;
  right: 20px;
}
#mvSub.members.typeB .profile .role {
  text-align: right;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.5;
}
#mvSub.members.typeB .profile .memberName .name {
  text-align: right;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
}
#mvSub.members.typeB .profile .memberName .name span {
  font-size: 14px;
  font-weight: normal;
  display: block;
}
#mvSub.members.uetou {
  background: url(../images/mv_uetou.jpg) 60% center;
  background-size: cover;
}
#mvSub.members.kondo {
  background: url(../images/mv_kondo.jpg) center;
  background-size: cover;
}
#mvSub.members.kamitani {
  background: url(../images/mv_kamitani.jpg) 70% center;
  background-size: cover;
}
#mvSub.members.ishihara {
  background: url(../images/mv_ishihara.jpg) 40% center;
  background-size: cover;
}
#mvSub.members.shoji {
  background: url(../images/mv_shoji.jpg) center;
  background-size: cover;
}
#mvSub.members.obayashi {
  background: url(../images/mv_obayashi.jpg) 25% center;
  background-size: cover;
}
#mvSub.members.fujita {
  background: url(../images/mv_fujita.jpg) 25% center;
  background-size: cover;
}
#mvSub.members.rachi {
  background: url(../images/mv_rachi.jpg) 70% center;
  background-size: cover;
}
#mvSub.members.kusunoki {
  background: url(../images/mv_kusunoki.jpg) 60% center;
  background-size: cover;
}
#mvSub.members.sago {
  background: url(../images/mv_sago.jpg) 70% center;
  background-size: cover;
}
#mvSub.members.ishii {
  background: url(../images/mv_ishii.jpg) 70% center;
  background-size: cover;
}
#mvSub.members.takeda {
  background: url(../images/mv_takeda.jpg) 20% center;
  background-size: cover;
}
#mvSub.members.judy {
  background: url(../images/mv_judy.jpg) 70% center;
  background-size: cover;
}

#membersSec01 {
  padding: 30px 0;
}
#membersSec01 .inner {
  padding: 0 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column-reverse;
  flex-direction: column-reverse;
}
#membersSec01 .inner .headline h2 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
}
#membersSec01 .inner .memberName {
  margin-bottom: 20px;
}
#membersSec01 .inner .memberName .name {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  text-align: right;
}
#membersSec01 .inner .memberName .name span {
  display: block;
  font-weight: normal;
  font-size: 14px;
}

#membersSec02 .col1 {
  margin-bottom: 50px;
}
#membersSec02 .col1 .txtClm {
  padding: 0 20px;
}
#membersSec02 .col1 .txtClm .tit {
  padding: 30px;
  text-align: center;
}
#membersSec02 .col1 .txtClm .tit img {
  width: 39.8vw;
}
#membersSec02 .col2 {
  margin-bottom: 50px;
}
#membersSec02 .col2 .txtClm {
  padding: 0 20px;
  position: relative;
}
#membersSec02 .col2 .txtClm .tit {
  padding: 30px;
  text-align: center;
}
#membersSec02 .col2:nth-of-type(2) .txtClm .inner02 .tit img {
  width: 37.4vw;
}
#membersSec02 .col2:nth-of-type(3) .txtClm .inner02 .tit img {
  width: 52.1vw;
}
#membersSec02 .col2:nth-of-type(4) .txtClm .inner02 .tit img {
  width: 38.8vw;
}

#membersSec01_typeB {
  padding: 40px 0 20px;
}
#membersSec01_typeB .box01 h3.tit {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
  padding: 0 20px;
}
#membersSec01_typeB .box01:nth-of-type(n+2) {
  margin-top: 30px;
}
#membersSec01_typeB .box01 .col2 .txtClm {
  position: relative;
}
#membersSec01_typeB .box01 .col2 .txtClm a {
  text-decoration: underline;
}
#membersSec01_typeB .box01 .col2 .txtClm .inner02 {
  padding: 20px;
}
#membersSec01_typeB .box01 .col2 .txtClm h4.lead {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
}
#membersSec01_typeB .box01 .col2 .txtClm ul.lead {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}
#membersSec01_typeB .box01 .col2 .txtClm .description {
  text-align: left;
}
#membersSec01_typeB .box01 .col2:nth-of-type(2) {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column-reverse;
  flex-direction: column-reverse;
}
#membersSec01_typeB .box02 {
  padding-top: 20px;
}
#membersSec01_typeB .box02 h3.tit {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
  padding: 0 20px;
}
#membersSec01_typeB .box02 p.tac {
  margin-bottom: 20px;
  font-size: 14px;
}
#membersSec01_typeB .box02 .col2 .txtClm {
  padding: 20px;
  word-wrap: break-word;
}
#membersSec01_typeB .box02 .col2 .txtClm .reason {
  font-size: 24px;
  font-weight: bold;
}
#membersSec01_typeB .box02 .col2 .txtClm .lead {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
}
#membersSec01_typeB .box02 .col2 .txtClm a {
  text-decoration: underline;
}

/************************************************
    contact & entry
************************************************ */
#contactSec01 {
  padding: 50px 0 50px;
}
#contactSec01 .headline {
  margin-bottom: 30px;
  padding: 0 20px;
}
#contactSec01 .headline h2 {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
}
#contactSec01 .headline .tac {
  text-align: center;
}

.formSec {
  padding: 0 20px 20px;
  background: #eee;
}
.formSec #formTable {
  margin-bottom: 40px;
  width: 100%;
}
.formSec #formTable th, .formSec #formTable td {
  display: block;
}
.formSec #formTable th {
  padding: 30px 0 10px;
  text-align: left;
  font-size: 14px;
  font-weight: normal;
  color: #000;
  vertical-align: top;
}
.formSec #formTable th b {
  color: #fff;
  font-weight: normal;
  font-size: 10px;
  background: #0094d4;
  padding: 2px 10px;
  display: inline-block;
  margin-left: 10px;
}
.formSec #formTable td {
  color: #1b1b1b;
}
.formSec #formTable input, .formSec #formTable select, .formSec #formTable textarea {
  background: #fff;
  border: 1px solid #ccc;
  font-size: 14px;
  padding: 10px;
  width: 100%;
  border-radius: 0;
}
.formSec #formTable input[type=radio] {
  width: auto;
  padding: 0;
}
.formSec #formTable input#yourAge {
  width: 100px;
}
.formSec #formTable input#yourPostnumber {
  width: 150px;
  margin-bottom: 10px;
}
.formSec #formTable label {
  font-size: 14px;
  padding-top: 15px;
  margin-right: 30px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-align-items: center;
  align-items: center;
}
.formSec #formTable label span {
  display: inline-block;
  padding-left: 10px;
}
.formSec #formTable label.select {
  position: relative;
  padding-top: 0;
  display: inline;
}
.formSec #formTable label.select:after {
  content: "▼";
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 13px;
  right: 10px;
}
.formSec #formTable textarea {
  height: 250px;
}
.formSec #formTable .caution {
  color: red;
  font-size: 12px;
}
.formSec .btn {
  text-align: center;
}
.formSec .btn input {
  width: 100%;
  height: 60px;
  line-height: 60px;
  background: #1b1b1b;
  color: #fff;
  font-size: 20px;
  font-family: "HKNova", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  border: none;
  border-radius: 0;
  cursor: pointer;
}
.formSec .btn input:hover {
  opacity: 0.7;
}


.formSec select#entry-slct {
  position: relative;
}
.formSec .entry-slct::before {
  content: "▼";
  display: block;
  position: absolute;
  top: 0;
  width: 100px;
}


.formSec span.mwform-tel-field {
  display: flex;
  align-items: center;
  max-width: 320px;
}

.formSec input.entry-tel ,.formSec input.contact-tel {
  margin: 0 5px;
}
.formSec input.entry-tel:first-of-type ,.formSec input.contact-tel:first-of-type{
  margin-left: 0;
}


.formSec span.mwform-zip-field {
  display: flex;
  align-items: center;
  max-width: 320px;
}
.formSec input.entry-postcode {
  margin: 0 5px;
}
.formSec input.entry-postcode:first-of-type {
  margin-left: 0;
}

.formSec .mw_wp_form_input .slctbox {
position: relative;
margin: 0em 0em 0em 0em;

}
.formSec .mw_wp_form_input .slctbox::after {
pointer-events: none;
position: absolute;
color: #666666;
top: 50%;
right: 25px;
transform: translateY(-50%);
content: "▼";
}
.formSec .formSec select#entry-slct,.formSec .formSec select#contact-add {
position: relative;
-webkit-appearance: none;
-moz-appearance: none;
}

.formSec .mwform-radio-field {
display: block;
}
.formSec .mw_wp_form .horizontal-item + .horizontal-item {
margin-left: 0;
}
.form-content-act__btn{
text-align: center;
}
.form-content-act__btn-confirm.button{
width: 280px;
  height: 50px;
  line-height: 50px;
  background: #1b1b1b;
  color: #fff;
  font-size: 16px;
  font-family: "HKNova", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  border: none;
  border-radius: 0;
  cursor: pointer;
}

.form-content-act__btn-back.button{
width: 280px;
  height: 30px;
  line-height: 30px;
  background: #fff;
  color: #1b1b1b;
  margin-bottom: 20px;
  font-size: 16px;
  font-family: "HKNova", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  border: 1px solid #1b1b1b;
  border-radius: 0;
  cursor: pointer;
}

.form-content-act__btn-submit.button{
width: 280px;
  height: 50px;
  line-height: 50px;
  background: #1b1b1b;
  color: #fff;
  font-size: 16px;
  font-family: "HKNova", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  border: none;
  border-radius: 0;
  cursor: pointer;
}