@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

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

html, body {
  height: 100%;
  /* padding-top: 79px; */
}

img, svg {
  vertical-align: top;
}

a:active,
a:hover {
  outline: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
}

dl dt {
  font-weight: bold;
}

strong, em {
  font-weight: bold;
}

section, article, header, footer {
  position: relative;
}

input, button, textarea, select {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  font-family: Meiryo, メイリオ, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  margin: 0;
  outline: none;
  padding: 0;
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="button"],
input[type="submit"],
textarea,
select,
button {
  -webkit-appearance: none;
}

input[type="text"],
input[type="password"],
textarea,
button {
  vertical-align: top;
}

input[type="checkbox"],
input[type="radio"],
select {
  vertical-align: middle;
}

textarea {
  resize: none;
}

button {
  background: none;
  border: 0;
}

input::-moz-focus-inner,
button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

html {
  font-size: 3.125vw;
  -webkit-font-smoothing: antialiased;
}

body {
  color: white;
	font-family: "Quicksand", "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,"ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  /* font-family: "Avenir Next", Verdana, "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,"ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif; */
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}
p {
  line-height: 1.5;
  text-align: left;
  text-align: justify;
}

a {
  -moz-transition: color 0.2s, opacity 0.3s;
  -o-transition: color 0.2s, opacity 0.3s;
  -webkit-transition: color 0.2s, opacity 0.3s;
  transition: color 0.2s, opacity 0.3s;
  color: #666666;
  outline: none;
  text-decoration: none;
}

a:active {
  color: #353535;
}

a:hover {
  color: #1c1c1c;
  opacity: 0.7;
}

a:visited {
  color: black;
}

/* -------------------------------------------------------------------------------- */ 
#wrapper {
}

#header {
  /* background-color: #f0f0f0; */
  height: 45px;
}

#header .hedear-inner {
  background-color: #f0f0f0;
  width: 100%;
  height: 45px;
  position: fixed;
  top: 0;
  z-index: 10;
}

#header .hedear-inner .menu-button {
  position: absolute;
  top: 13px;
  right: 30px;
}

#header .hedear-inner .menu-button .button-wrap {
  width: 30px;
  height: 17px;
  cursor: pointer;
}

#header .hedear-inner .menu-button .button-wrap .bar {
  position: relative;
  display: block;
  height: 2px;
  width: 30px;
  background-color: #e2277e;
	-webkit-transition: transform 0.6s;
	transition: transform 0.6s;
}
#header .hedear-inner .menu-button .button-wrap .bar.bar-x {
  transform: translate3d(0, 0, 0) rotate(0);
}
#header .hedear-inner .menu-button .button-wrap .bar.bar-y {
  transform: translate3d(0, 15px, 0) rotate(0);
}

#header .hedear-inner .menu-button.open .button-wrap .bar.bar-x {
  transform: translate3d(0, 10px, 0) rotate(135deg);
}
#header .hedear-inner .menu-button.open .button-wrap .bar.bar-y {
  transform: translate3d(0, 9px, 0) rotate(225deg);
}

@keyframes open{
	from{
		opacity: 0;
    height: 0;
	}
	to{
		opacity: 1;
    height: 100vh;
	}
}
#header .header-menu {
  display: none;
  position: absolute;
  width: 100%;
  height: 100vh;
  margin: 0 auto;
  left: 0;
  right: 0;
  top: 45px;
  z-index: 9;
  opacity: 0;
}
#header .header-menu.open{
  display: block;
  background-color: rgba(0,0,0,0.8);
  opacity: 1;
	animation: open 300ms linear 0s;
}
#header .header-menu-logo {
  padding: 50px 12.5% 0 12.5%;
  margin: 0 auto;
  margin-top: 20px auto;
  width: 33%;
}
#header .header-menu-logo img{
  width: 100%;
}

#header .header-menu ul {
  padding: 10px 12.5% 0 12.5%;
}

#header .header-menu ul li {
  border-bottom: 1px solid #434343;
  padding: 10px 0 0 0;
}

#header .header-menu ul li a {
  font-size: 1.6rem;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  color: white;
  text-align: left;
  display: block;
  padding: 20px 0 10px 8px;
}

#main {
}
.inner {
  padding: 0 12.5%;
}

.content img {
  max-width: 100%;
}
.content .title {
  color: white;
  font-size: 1.9rem;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  text-align: center;
  margin-bottom: 22%;
  position: relative;
}
.content .title:after {
	content: "";
	position: relative;
	height: 1px;
	width: 7.7%;
	background-color: white;
	text-align: center;
	margin: 0 auto;
	top: 8px;
	display: block;
}
.content .sub-title p{
  text-align: center;
  margin-bottom: 11%;
  font-size: 1.6rem;
  font-weight: bold;
}

/* =========================================================
top
========================================================= */
#top {
}

#top .content-wrap {
  background: url("../images/bg_01.png") no-repeat center top;
  background-size: 100% auto;
  width: 100vw;
  height: 100vh;
  position: relative;
}

#top .content-wrap .inner {
}

#top .content-wrap .inner .elem {
  position: absolute;
  text-align: center;
  left: 0;
  bottom: 16%;
  width: 100%;
}
#top .content-wrap .inner .logo {
  width: 49%;
  margin: 0 auto;
  margin-bottom: 32px;
}

#top .content-wrap .inner .logo img {
  width: 100%;
}

#top .content-wrap .inner .arrow {
  width: 10%;
  margin: 0 auto;
  position: relative;
  top: 0;
}

#top .content-wrap .inner .arrow a {
}

#top .content-wrap .inner .arrow a img {
  width: 100%;
}

/* =========================================================
about
========================================================= */
#about {
}

#about .content-wrap {
  background: black url("../images/bg_02.png") no-repeat center top;
  background-size: 100% auto;
  position: relative;
  padding: 53% 0 22% 0;
}

#about .content-wrap .inner {
}

#about .content-wrap .inner .title {
}

#about .content-wrap .inner .sub-title {
  color: #009ee7;
}

#about .content-wrap .inner .sub-title p {
}

#about .content-wrap .inner .txt {
  margin-bottom: 25px;
}

#about .content-wrap .inner .txt p {
}

#about .content-wrap .inner .images {
}

#about .content-wrap .inner .images .clearfix {
}

#about .content-wrap .inner .images .clearfix li {
  box-sizing: border-box;
  width: 50%;
  padding: 0 1.15%;
  float: left;
}

#about .content-wrap .inner .images .clearfix li img {
  width: 100%;
}

/* =========================================================
service
========================================================= */
#service {
}

#service .content-wrap {
  background: black url("../images/bg_03.png") no-repeat center top;
  background-size: 100% auto;
  position: relative;
  padding: 18.7% 0 28% 0;
}

#service .content-wrap .inner {
}

#service .content-wrap .inner .title {
}

#service .content-wrap .inner .links {
  margin-bottom: 22.4%;
}

#service .content-wrap .inner .links .clearfix {
}

#service .content-wrap .inner .links .clearfix li {
  box-sizing: border-box;
  width: 50%;
  padding: 0 1.15%;
  float: left;
}

#service .content-wrap .inner .links .clearfix li a {
}

#service .content-wrap .inner .links .clearfix li a img {
  width: 100%;
}

#service .content-wrap .inner .sub-title {
  color: #e2277e;
}

#service .content-wrap .inner .sub-title p {
}

#service .content-wrap .inner .txt {
}

#service .content-wrap .inner .txt p {
}

/* =========================================================
recruit
========================================================= */
#recruit {
}

#recruit .content-wrap {
  background: black url("../images/bg_04.png") no-repeat center top;
  background-size: 100% auto;
  position: relative;
  padding: 80% 0 90px 0;
}

#recruit .content-wrap .inner {
}

#recruit .content-wrap .inner .title {
}

#recruit .content-wrap .inner .sub-title {
  color:#ffef00;
}

#recruit .content-wrap .inner .sub-title p {
}

#recruit .content-wrap .inner .txt {
  margin-bottom: 10px;
}

#recruit .content-wrap .inner .txt p {
}

#recruit .content-wrap .inner .btn {
}

#recruit .content-wrap .inner .btn a {
}

#recruit .content-wrap .inner .btn a img {
  width: 100%;
}

/* =========================================================
company
========================================================= */

#company{
}
#company .content-wrap{
  background: #3382cc url("../images/bg_05.png") no-repeat center top;
  background-size: 100% auto;
  position: relative;
  padding: 15.6% 0 21.8% 0;
}
#company .company-table{
}
#company .company-table dl{
  color: white;
  font-size: 1.2rem;
  line-height: 1.4;
}
#company .company-table dt{
  font-weight: normal;
  float: left;
}
#company .company-table dd{
  font-weight: normal;
  padding: 0 0 1.7% 30%;
  border-bottom: 1px solid #039ce5;
  margin-bottom: 4.2%;
}
#company .company-table dd .maplink {
  margin-top: 8px;
  text-align: left;
}
#company .company-table dd .maplink a{
  color: white;
  font-size: 1.3rem;
}

.toplink {
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 10;
  width: 45px;
  /* transition: bottom 0.1s; */
}
.toplink img{
  max-width: 100%;
}

#footer {
  background: #1e1e1e url("../images/footer_bg.png") repeat left top;
  padding: 40px 0 20px 0;
}

#footer .footer-inner {
}

#footer .footer-inner .footer-menu {
}

#footer .footer-inner .footer-menu ul {
  margin: 0 0 36px 0;
}

#footer .footer-inner .footer-menu ul .f-menu {
  padding: 5px 0 0 0;
}

#footer .footer-inner .footer-menu ul .f-menu a {
  width: 35%;
  margin: 0 auto;
  display: block;
  font-size: 1.3rem;
  color: white;
  text-align: center;
  padding: 10px 0 15px 0;
  border-bottom: 1px solid #434343;
}
#footer .footer-inner .footer-menu ul .f-menu.f-menu-logo {
  padding: 0;
  margin-bottom: 10px;
}
#footer .footer-inner .footer-menu ul .f-menu.f-menu-logo a{
  border-bottom: none;
}
#footer .footer-inner .footer-menu ul .f-menu.f-menu-logo img{
  width: 73.2%;
}

#footer .footer-inner .footer-links {
  margin-bottom: 20px;
}
#footer .footer-inner .footer-links ul{
  width: 40%;
  margin: 0 auto;
}
#footer .footer-inner .footer-links li{
  width: 40%;
  float: left;
}
#footer .footer-inner .footer-links li.l-incord{
}
#footer .footer-inner .footer-links li.l-snc{
  float: right;
}
#footer .footer-inner .footer-links li a img{
  width: 100%;
}

#footer .footer-inner .footer-copy p{
  text-align: center;
  color: #b4b4b4;
  font-size: 0.9rem;
  font-family: "Avenir Next", Verdana, sans-serif;
}

#footer .footer-inner .footer-copy p {
}

/* -------------------------------------------------------------------------------- */ 

.inview01 {
  /* display: none; */
}
.inview02 {
  /* display: none; */
}

/* -------------------------------------------------------------------------------- */ 
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}
.clearfix {
  *zoom: 1;
  /* for IE 6/7 only */
}
