@charset "UTF-8";
body {
  font-family: "Noto Sans", "Avenir Next", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", "Kozuka Gothic Pro Light", Meiryo, "MS PGothic", sans-serif;
}

.f_noto {
  font-family: "Noto Sans Japanese", "Noto Sans", "Avenir Next", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", "Kozuka Gothic Pro Light", Meiryo, "MS PGothic", sans-serif;
}

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;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

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

ul, li {
  list-style: none;
}

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

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  margin: 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

a img {
  border: none;
}

img {
  vertical-align: top;
  margin: 0;
  padding: 0;
}

img {
  max-width: 100%;
}

body {
  text-align: center;
  position: relative;
  color: #232323;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  line-height: 1.68;
  font-size: 78%;
  overflow-x: hidden;
}

html, body {
  height: 100%;
}

body * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  word-wrap: break-word;
  word-break: break-all;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-appearance: none;
  letter-spacing: 0.05em;
}

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

a:link {
  color: #232323;
  text-decoration: none;
  outline: none;
}

a:visited {
  color: #232323;
  text-decoration: none;
  outline: none;
}

a:hover {
  color: #999999;
  text-decoration: none;
  outline: none;
}

.cf:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
}

.on a img,
.op,
.on a:hover img,
.op:hover {
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.on a:hover img,
.op:hover {
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60)";
  -moz-opacity: 0.6;
  -webkit-opacity: 0.6;
  opacity: 0.6;
  text-decoration: none;
}

.linea-arrows-10, .drawer-menu > li > .ac_head:after, .utm_banner > a:after, .industry_top_wrap .industry_list li a:after, .tssrv_banner > a:after {
  font-family: "linea-arrows-10" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.g_main {
  position: relative;
}

.not_link {
  pointer-events: none;
  cursor: default;
}

.language_block {
  position: absolute;
  top: 1em;
  right: 1em;
  z-index: 100;
  width: 68px;
  padding: 0;
  text-align: left;
  height: 22px;
  cursor: pointer;
  background: #eee;
  border-radius: 50em;
  overflow: hidden;
  white-space: nowrap;
}

.language_block .icon_global {
  position: absolute;
  width: 13px;
  top: 5px;
  left: 10px;
}

.language_block .change {
  position: absolute;
  left: 0;
  height: 100%;
  width: 150%;
  border-radius: 0;
  line-height: 20px;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  font-size: 10px;
  color: #111;
  font-weight: 400;
  text-indent: 32px;
  font-family: 'Noto Sans';
}

.language_block .change::-ms-expand {
  display: none;
}

.language_block .change:focus {
  outline: none;
}

.language_block .icon_arrow {
  position: absolute;
  right: 10px;
  top: 10px;
}

@media (max-width: 768px) {
  .language_block {
    right: 4em;
    top: 1.3em;
  }
}

#clone_g_header {
  position: fixed;
  top: -100%;
  width: 100%;
  background: #fff;
  opacity: 0;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

#clone_g_header .g_header {
  top: 0;
}

#clone_g_header .header_primary .g_logo a {
  background: url(../img/common/logo-terra_drone_b.png) no-repeat left center;
}

#clone_g_header .header_primary .g_nav > ul > li a {
  color: #111 !important;
}

.lower #clone_g_header .header_primary .g_logo a {
  background: url(../img/common/logo-terra_drone_b.png) no-repeat left center;
}

.sticky #clone_g_header {
  z-index: 1000;
  opacity: 1;
  top: 0;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
}

.g_header {
  position: absolute;
  width: 100%;
  z-index: 10;
  text-align: left;
  top: 0;
}

.g_header .site_title {
  position: absolute;
  top: -200%;
}

.g_header .header_primary {
  max-width: 1280px;
  width: 100%;
  display: table;
  margin: 0 auto;
  text-align: right;
  white-space: nowrap;
  padding: 0 1em;
}

.g_header .header_primary .g_logo {
  width: 20%;
  display: inline-block;
  vertical-align: middle;
  /* overflow: hidden;*/
}

.g_header .header_primary .g_logo a {
  display: block;
  background: url(../img/common/terradrone_w.svg) no-repeat center center;
  background-size: contain;
  width: 100%;
  height: 34px;
  text-align: left;
  text-indent: -9999px;
  margin-bottom: 7px;
}

.g_header .header_primary .g_nav {
  width: 78%;
  display: inline-block;
  vertical-align: middle;
}

.g_header .header_primary .g_nav > ul > li {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.1em;
}

.g_header .header_primary .g_nav > ul > li span {
  line-height: 44px;
  height: 44px;
}

.g_header .header_primary .g_nav > ul > li span img.sp_img {
  display: none;
}

.g_header .header_primary .g_nav > ul > li .not_page {
  position: absolute;
  top: -114%;
  right: 0;
  font-weight: 300;
  font-size: .8em;
  border: 1px solid #fff;
  padding: 1px 1em;
}

.g_header .header_primary .g_nav > ul > li > a {
  display: block;
  padding: 4em 1.2em;
  position: relative;
  color: #fff;
  font-weight: bold;
  font-size: 1.1em;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.g_header .header_primary .g_nav > ul > li > a:hover {
  background: rgba(0, 0, 0, 0.5);
  color: #fff !important;
}

.g_header .header_primary .g_nav > ul > li:hover .g_pull_menu {
  display: block;
}

.g_header .header_primary .g_nav > ul > li.global-nav a:hover {
  background-color: inherit;
}

.g_header .header_primary .g_nav > ul > li.global-nav a:hover span img.pc_img {
  display: none;
}

.g_header .header_primary .g_nav > ul > li.global-nav a:hover span img.sp_img {
  display: block;
}

.g_header .btn_colse {
  display: none;
}

.top .g_header .header_primary .g_nav > ul > li > a:hover {
  color: #111;
}

.lower .g_header {
  position: relative;
  top: 0;
  background: #fff;
}

.lower .g_header .header_primary .g_logo a {
  display: block;
  background: url(../img/common/terradrone_g.svg) no-repeat left center;
  background-size: contain;
}

.lower .g_header .header_primary .g_nav > ul li a {
  color: #111;
}

@media (max-width: 768px) {
  .lower.g_header,
  .g_header {
    top: 0;
  }
  .lower.g_header .header_primary,
  .g_header .header_primary {
    padding: 1em 1em !important;
    text-align: left;
  }
  .lower.g_header .header_primary .g_logo,
  .g_header .header_primary .g_logo {
    width: 160px;
  }
  .lower.g_header .header_primary .g_logo a,
  .g_header .header_primary .g_logo a {
    margin-bottom: 0;
    background-size: 140px !important;
  }
  .lower.g_header .header_primary .g_nav,
  .g_header .header_primary .g_nav {
    display: none;
  }
}

.menu_overlay {
  background: rgba(3, 156, 208, 0.6);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
}

.btn_colse {
  width: 60px;
  height: 60px;
  display: block;
  position: absolute;
  top: 1em;
  right: 1em;
  text-align: center;
}

.btn_colse i {
  color: #fff;
  font-size: 3em;
}

.btn_colse:hover {
  background: #039cd0;
}

.g_pull_menu {
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  width: 100%;
  left: 0;
  text-align: left;
  z-index: 20;
  color: #fff;
  display: none;
}

.g_pull_menu .nav_block {
  margin: 0 auto;
  position: relative;
}

.g_pull_menu .head_inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  color: #fff;
  padding: 2.4em 0;
}

.g_pull_menu .head_inner .head_title {
  position: relative;
  top: 8px;
  font-size: 2em;
  font-weight: bold;
  float: left;
}

@media (max-width: 1360px) {
  .g_pull_menu .head_inner .head_link {
    margin-right: 100px;
  }
}

.g_pull_menu .head_inner .head_link {
  float: right;
  display: inline-block;
  vertical-align: middle;
}

.g_pull_menu .head_inner .head_link a {
  display: block;
  color: #fff !important;
  border: 2px solid #fff;
  padding: 1em 2em;
  font-size: 1em !important;
  border-radius: 50em;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.g_pull_menu .head_inner .head_link a:hover {
  background: #fff;
  color: #00aae4 !important;
}

.g_pull_menu .head_inner .head_link a .txt {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
  font-size: 1.1em;
  margin: 0 .2em 0 0;
}

.g_pull_menu .nav_container {
  border-bottom: 1px solid #039cd0;
  border-top: 1px solid #039cd0;
}

.g_pull_menu .nav_container > .list {
  display: table;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.g_pull_menu .nav_container > .list li {
  display: table-cell;
  vertical-align: top;
  width: 20%;
  border-right: 1px solid #039cd0;
}

.g_pull_menu .nav_container > .list li:first-child {
  border-left: 1px solid #039cd0;
}

.g_pull_menu .nav_container > .list li a {
  display: block;
  color: #fff;
  text-align: center;
  padding: 3em 2.4em;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.g_pull_menu .nav_container > .list li a:hover {
  background: #039cd0;
}

.g_pull_menu .nav_container > .list li a .thumb {
  background: white;
  width: 60px;
  height: 60px;
  margin: 0 auto;
  border-radius: 50em;
  text-align: center;
}

.g_pull_menu .nav_container > .list li a .thumb .icons {
  position: relative;
  top: 1em;
}

.g_pull_menu .nav_container > .list li a .thumb .icons.w44 {
  width: 44px;
}

.g_pull_menu .nav_container > .list li a .thumb .icons.w40 {
  width: 40px;
  top: 1.3em;
}

.g_pull_menu .nav_container > .list li a .thumb .icons.w34 {
  width: 34px;
}

.g_pull_menu .nav_container > .list li a .thumb .icons.w30 {
  width: 35px;
  top: 1em;
}

.g_pull_menu .nav_container > .list li a dl {
  margin: 1em auto 0 auto;
}

.g_pull_menu .nav_container > .list li a dl dt {
  font-size: 1em;
  color: #fff;
  font-weight: bold;
}

.g_pull_menu .nav_container > .list li a dl dd {
  display: none;
  margin: 1em auto 0 auto;
  font-size: .9em;
  text-align: justify;
}

.g_pull_menu.global {
  width: auto;
  left: auto;
}

.g_pull_menu.global .nav_container {
  border: 0;
}

.g_pull_menu.global .nav_container > .list li {
  display: block;
  width: auto;
  border: 0;
}

.g_pull_menu.global .nav_container > .list li a {
  padding: 1em 2em;
  background-color: #000000;
}

.g_pull_menu.global .nav_container > .list li a:hover {
  background-color: #039cd0 !important;
}

.g_pull_menu.global .nav_container > .list li a dl {
  margin: 0;
}

.sub_visual {
  height: 300px;
  width: 100%;
  display: table;
}

.sub_visual .visual_ttl {
  display: table-cell;
  vertical-align: middle;
  font-size: 3em;
}

@media (max-width: 768px) {
  .sub_visual {
    height: 120px;
    width: 100%;
    display: table;
  }
  .sub_visual .visual_ttl {
    zoom: 50%;
  }
}

.title_wrap .title .f_lg {
  font-weight: 700;
  font-size: 3em;
}

.title_wrap .title .f_jp {
  display: block;
  font-size: 3.2em;
  font-weight: 700;
}

.title_wrap .title .f_en {
  display: block;
  font-size: 1.1em;
  font-style: normal;
  font-weight: 600;
  padding-top: 1em;
  letter-spacing: 2px;
}

@media (max-width: 768px) {
  .title_wrap {
    padding-bottom: 1em;
  }
}

.news_visual + .g_main .title_wrap .title {
  color: #fff;
}

.txt_wrap {
  margin: 3em 0 0 0;
}

.txt_wrap .txt {
  font-size: 1.2em;
  font-weight: bold;
  line-height: 2.4;
}

@media (max-width: 768px) {
  .g_inner {
    padding: 0 1.6em;
  }
  .title_wrap .title .f_lg {
    font-weight: 700;
    font-size: 1.8em;
  }
  .title_wrap .title .f_jp {
    font-size: 1.8em;
  }
  .title_wrap .title .f_en {
    font-size: 1.1em;
  }
  .txt_wrap {
    margin: 1em 0 0 0;
    padding: 0 1.6em;
  }
  .txt_wrap .txt {
    line-height: 2;
    font-size: 1em;
  }
}

.news_tab + .breadcrumbs {
  margin-bottom: -28px;
  background: none;
  position: relative;
  z-index: 1;
}

.news_tab + .breadcrumbs .inner {
  position: relative;
  top: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-text-overflow: ellipsis;
}

.news_tab + .breadcrumbs .inner * {
  color: #fff;
}

.breadcrumbs {
  text-align: left;
  background: #eeeeee;
}

.breadcrumbs .inner {
  max-width: 1240px;
  width: 100%;
  padding: .6em 1.8em .4em;
  margin: 0 auto;
  font-size: .9em;
}

.breadcrumbs .inner a:hover {
  opacity: .6;
}

.breadcrumbs .inner i {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.3em;
  margin: 0 .4em;
  position: relative;
  top: 1px;
  color: #666;
}

.breadcrumbs .inner span {
  color: #666;
}

@media (max-width: 768px) {
  .breadcrumbs {
    line-height: 1.2;
  }
  .breadcrumbs .inner {
    max-width: none;
    width: auto;
    padding: .8em 1.6em;
    white-space: nowrap;
    overflow-x: auto;
    font-size: .7em;
  }
}

.wp-pagenavi {
  margin: 6em auto 0 auto;
  text-align: center;
}

@media (max-width: 768px) {
  .wp-pagenavi {
    margin-top: 2em;
  }
}

.wp-pagenavi a, .wp-pagenavi span {
  display: inline-block;
  vertical-align: middle;
  margin: 0 2px;
  font-size: 1em;
  letter-spacing: 0;
}

.wp-pagenavi > .pages {
  display: none;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi span.current,
.wp-pagenavi a.page {
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  display: inline-block;
  vertical-align: middle;
  padding: 0;
  min-width: 30px;
  height: 30px;
  line-height: 32px;
  background: #eee;
  margin: 0 .2em;
}

.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover,
.wp-pagenavi .first:hover,
.wp-pagenavi .last:hover,
.wp-pagenavi span.current:hover,
.wp-pagenavi a.page:hover {
  background: #a4afb7;
  color: #fff;
}

.wp-pagenavi span.current {
  background: #a4afb7;
  color: #fff;
}

.wp-pagenavi .extend {
  line-height: 1;
  margin: 0 .6em;
  position: relative;
  bottom: 2px;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .first,
.wp-pagenavi .last {
  font-size: 1.2em;
}

.wp-pagenavi .previouspostslink i,
.wp-pagenavi .nextpostslink i,
.wp-pagenavi .first i,
.wp-pagenavi .last i {
  display: block;
  line-height: 28px;
}

.wp-pagenavi .previouspostslink i:before,
.wp-pagenavi .nextpostslink i:before,
.wp-pagenavi .first i:before,
.wp-pagenavi .last i:before {
  position: relative;
  top: 2px;
}

.g_btn_wrap .btn {
  font-size: 1.2em;
  display: inline-block;
  vertical-align: middle;
  padding: 1.2em 3em;
  font-weight: bold;
  border-radius: 50em;
  position: relative;
}

.g_btn_wrap .btn.blue {
  background: #00aae4;
  color: #fff;
}

.g_btn_wrap .btn.blue.effect1:after, .g_btn_wrap .btn.blue.effect1:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 4rem;
  animation: effect1 3s infinite;
  box-shadow: 0 0 0 0 #00aae4;
}

.g_btn_wrap .btn.blue.effect1:after {
  animation-delay: 1.5s;
  -webkit-animation-delay: 1.5s;
}

@-webkit-keyframes effect1 {
  0% {
    box-shadow: 0 0 0 0 #00aae4;
  }
  0%, 90% {
    opacity: .7;
  }
  to {
    box-shadow: 0 0 0 9pt rgba(255, 255, 255, 0);
    opacity: 0;
  }
}

@keyframes effect1 {
  0% {
    box-shadow: 0 0 0 0 #00aae4;
  }
  0%, 90% {
    opacity: .7;
  }
  to {
    box-shadow: 0 0 0 9pt rgba(255, 255, 255, 0);
    opacity: 0;
  }
}

@media (max-width: 768px) {
  .g_btn_wrap .btn {
    padding: .8em 2em;
    font-size: 1.1em;
  }
}

.bottom_contact_wrap + .g_footer {
  margin-top: 0;
}

.bottom_contact_wrap.bg_white .bottom_contact {
  background: #fff;
}

.bottom_contact {
  background: #f9f9f9;
  padding: 8em 0;
}

.bottom_contact .inner .title_wrap {
  zoom: 80%;
}

.bottom_contact .inner .contact_bnr {
  margin: 3em auto 0 auto;
  text-align: center;
}

.bottom_contact .inner .contact_bnr li {
  display: inline-block;
  vertical-align: top;
  max-width: 320px;
  width: 100%;
  margin: 1em;
}

.bottom_contact .inner .contact_bnr li a {
  position: relative;
  display: block;
  background: #fff;
  border: 4px solid #ddd;
  padding: 3em 0;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.bottom_contact .inner .contact_bnr li a:hover {
  border-color: #00aae4;
}

.bottom_contact .inner .contact_bnr li a strong {
  display: inline-block;
  vertical-align: middle;
  background: #00aae4;
  color: #fff;
  padding: 6px 2em;
  font-size: 1em;
  font-weight: bold;
  border-radius: 50em;
}

.bottom_contact .inner .contact_bnr li a p {
  display: block;
  color: #777;
  margin: 1em auto 0 auto;
  font-size: .9em;
}

@media (max-width: 768px) {
  .bottom_contact {
    padding: 4em 0;
  }
  .bottom_contact .inner .contact_bnr {
    padding: 0 1.6em;
  }
  .bottom_contact .inner .contact_bnr li {
    display: block;
    max-width: none;
    width: auto;
    margin: 1em 0 0 0;
  }
  .bottom_contact .inner .contact_bnr li:first-child {
    margin-top: 0;
  }
  .bottom_contact .inner .contact_bnr li a {
    padding: 2em 0;
    zoom: 90%;
  }
}

.page_top .scroll_top {
  display: block;
  width: 100%;
  background: #a4afb7;
  padding: .2em 0;
  line-height: 1;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.page_top .scroll_top:hover {
  background: #72838f;
}

.page_top .scroll_top .icon {
  font-size: 2em;
  line-height: 1;
  color: #fff;
}

.top .g_footer {
  margin-top: 0;
}

.g_footer {
  background: #f7f8f9;
  margin-top: 10em;
}

.g_footer_primary .g_menu_inner {
  text-align: left;
  display: table;
  width: 100%;
  max-width: 1080px;
  padding: 6em 0 3em 0;
  margin: 0 auto;
}

.g_footer_primary .g_menu_inner .list_item {
  display: table-cell;
  vertical-align: top;
  width: 20%;
}

.g_footer_primary .g_menu_inner .list_item > ul li {
  font-size: 1em;
}

.g_footer_primary .g_menu_inner .list_item > ul li.title {
  margin-bottom: 1em;
  font-weight: bold;
}

.g_footer_primary .g_menu_inner .list_item > ul li a {
  color: #72838f;
  padding: .2em 0;
  display: block;
}

.g_footer_primary .g_menu_inner .list_item > ul li a span {
  color: #a4afb7;
  padding: .2em 0;
  display: inline-block;
  position: relative;
}

.g_footer_primary .g_menu_inner .list_item > ul li a span:before {
  content: '';
  width: 0;
  position: absolute;
  bottom: 0px;
  left: 0;
  height: 2px;
  background: #72838f;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.g_footer_primary .g_menu_inner .list_item > ul li a:hover {
  color: #3d586b;
  text-decoration: none;
}

.g_footer_primary .g_menu_inner .list_item > ul li a:hover span:before {
  width: 100%;
}

.g_footer_secondary .inner {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  text-align: left;
  position: relative;
  padding: 0 0 6em 0;
}

.g_footer_secondary .inner .group_company .name {
  font-size: 1.1em;
  font-weight: bold;
  color: #72838f;
}

.g_footer_secondary .inner .group_company > .lsit li {
  display: inline-block;
  vertical-align: top;
  max-width: 240px;
  margin: 1em 1em 0 0;
}

.g_footer_secondary .inner .group_company > .lsit li a {
  display: block;
  border: 1px solid #eee;
}

.g_footer_secondary .inner .group_company > .lsit li a img {
  max-width: 200px;
  background: #fff;
  padding: 1px;
}

.g_footer_secondary .inner .g_footer_company {
  padding: 4em 0 2em 0;
  text-align: left;
}

.g_footer_secondary .inner .g_footer_company .item {
  color: #a4afb7;
  margin: .4em 0 0 0;
}

.g_footer_secondary .inner .g_footer_company .item.first {
  margin-top: 1.4em;
}

.g_footer_secondary .inner .g_footer_company .item .first {
  float: left;
  min-width: 120px;
  padding: .2em 0;
}

.g_footer_secondary .inner .g_footer_company .item .secondary {
  margin-left: 60px;
  padding: .2em 0;
}

.g_footer_secondary .inner .sns li {
  display: inline-block;
  width: 26px;
}

.g_footer_secondary .inner .sns li a {
  display: block;
}

.g_footer_last {
  background: #fff;
}

.g_footer_last .inner {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 4em 0;
}

.g_footer_last .inner .logo {
  float: left;
}

.g_footer_last .inner .logo a img {
  width: 130px;
}

.g_footer_last .inner .copy {
  float: right;
  color: #a4afb7;
  font-size: .9em;
  letter-spacing: 1px;
}

@media (max-width: 768px) {
  .g_footer {
    margin-top: 4em;
  }
  .g_footer_primary {
    padding: 0 1.6em;
  }
  .g_footer_primary .g_menu_inner {
    padding: 1em 0 2em 0;
    display: block;
  }
  .g_footer_primary .g_menu_inner .list_item {
    display: block;
    width: auto;
    padding: 1em 0 0 0;
  }
  .g_footer_primary .g_menu_inner .list_item > ul li {
    font-size: .9em;
  }
  .g_footer_primary .g_menu_inner .list_item > ul li.title {
    margin-bottom: 0;
    font-size: 110%;
  }
  .g_footer_primary .g_menu_inner .list_item > ul li a,
  .g_footer_primary .g_menu_inner .list_item > ul li span {
    padding: 0;
  }
  .g_footer_primary .g_menu_inner .list_item > ul li a {
    padding: .2em 0;
  }
  .g_footer_secondary {
    padding: 0 1.6em;
  }
  .g_footer_secondary .inner {
    padding-bottom: 3em;
  }
  .g_footer_secondary .inner .group_company > .lsit li {
    max-width: 47%;
    margin-right: .4em;
  }
  .g_footer_secondary .inner .group_company > .lsit li a img {
    width: 100%;
  }
  .g_footer_secondary .inner .g_footer_company {
    padding: 2em 0 0;
  }
  .g_footer_secondary .inner .g_footer_company .item.first {
    margin-top: .6em;
  }
  .g_footer_secondary .inner .g_footer_company .item .first {
    float: none;
    display: block;
    width: auto;
  }
  .g_footer_secondary .inner .g_footer_company .item .secondary {
    margin: .4em 0 0 0;
  }
  .g_footer_secondary .inner .sns {
    text-align: left;
    padding: 2em 0;
  }
  .g_footer_last {
    padding: 0 1.6em;
  }
  .g_footer_last .inner {
    padding: 2em 0;
  }
  .g_footer_last .inner .logo {
    float: none;
    zoom: 80%;
  }
  .g_footer_last .inner .copy {
    float: none;
    zoom: 78%;
    margin: 1.6em 0 0 0;
  }
}

.rtl {
  direction: rtl;
  unicode-bidi: bidi-override;
}

#facebook_timeline {
  position: absolute;
  width: 280px;
  margin: 0 auto;
  bottom: 5em;
  right: 0;
}

@media (max-width: 768px) {
  #facebook_timeline {
    position: relative;
    width: 280px;
    right: 0;
    left: 0;
    bottom: 0;
  }
}

/*!------------------------------------*\
    Base
\*!------------------------------------*/
.drawer-nav {
  position: fixed;
  z-index: 101;
  top: 0;
  overflow: auto;
  width: 16.25rem;
  height: 100%;
  color: #222;
  background-color: #fff;
}

.drawer-brand {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 3.75rem;
  display: block;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  text-decoration: none;
  color: #222;
}

.drawer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

.drawer-menu-item {
  font-size: 1rem;
  display: block;
  padding: 0.75rem;
  text-decoration: none;
  color: #222;
}

.drawer-menu-item:hover {
  text-decoration: underline;
  color: #555;
  background-color: transparent;
}

/*! overlay */
.drawer-overlay {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
}

.drawer-open .drawer-overlay {
  display: block;
}

/*!------------------------------------*\
    Top
\*!------------------------------------*/
.drawer--top .drawer-nav {
  top: -100%;
  left: 0;
  width: 100%;
  height: auto;
  max-height: 100%;
  transition: top 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.drawer--top.drawer-open .drawer-nav {
  top: 0;
}

.drawer--top .drawer-hamburger,
.drawer--top.drawer-open .drawer-hamburger {
  right: 0;
}

/*!------------------------------------*\
    Left
\*!------------------------------------*/
.drawer--left .drawer-nav {
  left: -16.25rem;
  transition: left 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.drawer--left.drawer-open .drawer-nav,
.drawer--left .drawer-hamburger,
.drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
  left: 0;
}

.drawer--left.drawer-open .drawer-hamburger {
  left: 16.25rem;
}

/*!------------------------------------*\
    Right
\*!------------------------------------*/
.drawer--right .drawer-nav {
  right: -16.25rem;
  transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
  right: 0;
}

.drawer--right.drawer-open .drawer-hamburger {
  right: 16.25rem;
}

/*!------------------------------------*\
    Hamburger
\*!------------------------------------*/
.drawer-hamburger {
  position: fixed;
  z-index: 104;
  top: 0;
  display: block;
  box-sizing: content-box;
  width: 2rem;
  padding: 0;
  padding-top: 18px;
  padding-right: 0.75rem;
  padding-bottom: 30px;
  padding-left: 0.75rem;
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transform: translate3d(0, 0, 0);
  border: 0;
  outline: 0;
  background-color: transparent;
}

.drawer-hamburger:hover {
  cursor: pointer;
  background-color: transparent;
}

.drawer-hamburger-icon {
  position: relative;
  display: block;
  margin-top: 10px;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  width: 100%;
  height: 2px;
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  background-color: #222;
}

.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  position: absolute;
  top: -10px;
  left: 0;
  content: ' ';
}

.drawer-hamburger-icon:after {
  top: 10px;
}

.drawer-open .drawer-hamburger-icon {
  background-color: transparent;
}

.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
  top: 0;
}

.drawer-open .drawer-hamburger-icon:before {
  transform: rotate(45deg);
}

.drawer-open .drawer-hamburger-icon:after {
  transform: rotate(-45deg);
}

/*!------------------------------------*\
    accessibility
\*!------------------------------------*/
/*!
 * Only display content to screen readers
 * See: http://a11yproject.com/posts/how-to-hide-content
 */
.sr-only {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

/*!
 * Use in conjunction with .sr-only to only display content when it's focused.
 * Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
 * Credit: HTML5 Boilerplate
 */
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}

/*!------------------------------------*\
    Sidebar
\*!------------------------------------*/
.drawer--sidebar {
  background-color: #fff;
}

.drawer--sidebar .drawer-contents {
  background-color: #fff;
}

@media (min-width: 64em) {
  .drawer--sidebar .drawer-hamburger {
    display: none;
    visibility: hidden;
  }
  .drawer--sidebar .drawer-nav {
    display: block;
    transform: none;
    position: fixed;
    width: 12.5rem;
    height: 100%;
  }
  /*! Left */
  .drawer--sidebar.drawer--left .drawer-nav {
    left: 0;
    border-right: 1px solid #ddd;
  }
  .drawer--sidebar.drawer--left .drawer-contents {
    margin-left: 12.5rem;
  }
  /*! Right */
  .drawer--sidebar.drawer--right .drawer-nav {
    right: 0;
    border-left: 1px solid #ddd;
  }
  .drawer--sidebar.drawer--right .drawer-contents {
    margin-right: 12.5rem;
  }
  /*! container */
  .drawer--sidebar .drawer-container {
    max-width: 48rem;
  }
}

@media (min-width: 75em) {
  .drawer--sidebar .drawer-nav {
    width: 16.25rem;
  }
  .drawer--sidebar.drawer--left .drawer-contents {
    margin-left: 16.25rem;
  }
  .drawer--sidebar.drawer--right .drawer-contents {
    margin-right: 16.25rem;
  }
  /*! container */
  .drawer--sidebar .drawer-container {
    max-width: 60rem;
  }
}

/*!------------------------------------*\
    Navbar
\*!------------------------------------*/
.drawer--navbarTopGutter {
  padding-top: 3.75rem;
}

.drawer-navbar .drawer-navbar-header {
  border-bottom: 1px solid #ddd;
  background-color: #fff;
}

.drawer-navbar {
  z-index: 102;
  top: 0;
  width: 100%;
}

/*! .drawer-navbar modifier */
.drawer-navbar--fixed {
  position: fixed;
}

.drawer-navbar-header {
  position: relative;
  z-index: 102;
  box-sizing: border-box;
  width: 100%;
  height: 3.75rem;
  padding: 0 0.75rem;
  text-align: center;
}

.drawer-navbar .drawer-brand {
  line-height: 3.75rem;
  display: inline-block;
  padding-top: 0;
  padding-bottom: 0;
  text-decoration: none;
}

.drawer-navbar .drawer-brand:hover {
  background-color: transparent;
}

.drawer-navbar .drawer-nav {
  padding-top: 3.75rem;
}

.drawer-navbar .drawer-menu {
  padding-bottom: 7.5rem;
}

@media (min-width: 64em) {
  .drawer-navbar {
    height: 3.75rem;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
  }
  .drawer-navbar .drawer-navbar-header {
    position: relative;
    display: block;
    float: left;
    width: auto;
    padding: 0;
    border: 0;
  }
  .drawer-navbar .drawer-menu--right {
    float: right;
  }
  .drawer-navbar .drawer-menu li {
    float: left;
  }
  .drawer-navbar .drawer-menu-item {
    line-height: 3.75rem;
    padding-top: 0;
    padding-bottom: 0;
  }
  .drawer-navbar .drawer-hamburger {
    display: none;
  }
  .drawer-navbar .drawer-nav {
    position: relative;
    left: 0;
    overflow: visible;
    width: auto;
    height: 3.75rem;
    padding-top: 0;
    transform: translate3d(0, 0, 0);
  }
  .drawer-navbar .drawer-menu {
    padding: 0;
  }
  /*! dropdown */
  .drawer-navbar .drawer-dropdown-menu {
    position: absolute;
    width: 16.25rem;
    border: 1px solid #ddd;
  }
  .drawer-navbar .drawer-dropdown-menu-item {
    padding-left: 0.75rem;
  }
}

/*!------------------------------------*\
    Dropdown
\*!------------------------------------*/
.drawer-dropdown-menu {
  display: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: #fff;
}

.drawer-dropdown-menu > li {
  width: 100%;
  list-style: none;
}

.drawer-dropdown-menu-item {
  line-height: 3.75rem;
  display: block;
  padding: 0;
  padding-right: 0.75rem;
  padding-left: 1.5rem;
  text-decoration: none;
  color: #222;
}

.drawer-dropdown-menu-item:hover {
  text-decoration: underline;
  color: #555;
  background-color: transparent;
}

/*! open */
.drawer-dropdown.open > .drawer-dropdown-menu {
  display: block;
}

/*! drawer-caret */
.drawer-dropdown .drawer-caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 4px;
  transition: transform .2s ease, opacity .2s ease;
  transform: rotate(0deg);
  vertical-align: middle;
  border-top: 4px solid;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

/*! open */
.drawer-dropdown.open .drawer-caret {
  transform: rotate(180deg);
}

/*!------------------------------------*\
    Container
\*!------------------------------------*/
.drawer-container {
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 64em) {
  .drawer-container {
    max-width: 60rem;
  }
}

@media (min-width: 75em) {
  .drawer-container {
    max-width: 70rem;
  }
}

.drawer-hamburger {
  width: 20px !important;
  z-index: 2000;
  zoom: 80%;
  display: none;
}

.drawer-hamburger-icon:after {
  top: 7px;
}

.drawer-hamburger-icon:before {
  top: -7px;
}

.drawer-nav {
  z-index: 2000 !important;
  background: #00aae4;
}

.drawer-menu {
  text-align: left;
  margin: 0;
}

.drawer-menu li {
  font-size: 1em;
  position: relative;
  font-weight: 400;
  border-top: 1px solid #07a4da;
}

.drawer-menu li:first-child {
  border-top: none;
}

.drawer-menu li:last-child {
  border-bottom: 1px solid #07a4da;
}

.drawer-menu li a {
  position: relative;
  color: #fff;
  display: block;
  padding: 1em 0 1em 1.6em;
}

@media (max-width: 768px) {
  .drawer-hamburger {
    display: block;
  }
  .drawer--right.drawer-open .drawer-hamburger {
    background: #00aae4;
  }
  .drawer--right.drawer-open .drawer-hamburger .drawer-hamburger-icon:before,
  .drawer--right.drawer-open .drawer-hamburger .drawer-hamburger-icon:after {
    background: #fff;
  }
}

.drawer-menu .drawer_sub {
  display: none;
}

.drawer-menu .drawer_sub > li:first-child {
  border-top: 1px solid #07a4da;
}

.drawer-menu .drawer_sub > li:last-child {
  border-bottom: none;
}

.drawer-menu > li > .ac_head:after {
  position: absolute;
  right: 1em;
  font-size: 20px;
  top: 50%;
  margin-top: -10px;
  content: "\e019";
}

.drawer-menu > li > .ac_head.open:after {
  content: "\e083";
}

.drawer-nav ul.sns {
  text-align: center;
}

.drawer-nav ul.sns li {
  display: inline-block;
  vertical-align: middle;
  margin: 1em .4em;
}

.drawer-nav ul.sns li a {
  color: #fff;
  font-size: 1.3em;
  display: block;
  line-height: 1;
  padding: .8em;
  background: #07a4da;
  border-radius: 50em;
}

/* perfect-scrollbar v0.6.11 */
.ps-container {
  -ms-touch-action: none;
  touch-action: none;
  overflow: hidden !important;
  -ms-overflow-style: none;
}

@supports (-ms-overflow-style: none) {
  .ps-container {
    overflow: auto !important;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps-container {
    overflow: auto !important;
  }
}

.ps-container.ps-active-x > .ps-scrollbar-x-rail,
.ps-container.ps-active-y > .ps-scrollbar-y-rail {
  display: block;
  background-color: transparent;
}

.ps-container.ps-in-scrolling {
  pointer-events: none;
}

.ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail {
  background-color: #eee;
  opacity: 0.9;
}

.ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x {
  background-color: #999;
}

.ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail {
  background-color: #eee;
  opacity: 0.9;
}

.ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y {
  background-color: #999;
}

.ps-container > .ps-scrollbar-x-rail {
  display: none;
  position: absolute;
  /* please don't change 'position' */
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  -moz-transition: background-color .2s linear, opacity .2s linear;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  bottom: 3px;
  /* there must be 'bottom' for ps-scrollbar-x-rail */
  height: 8px;
}

.ps-container > .ps-scrollbar-x-rail > .ps-scrollbar-x {
  position: absolute;
  /* please don't change 'position' */
  background-color: #ccc;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-transition: background-color .2s linear;
  -moz-transition: background-color .2s linear;
  -o-transition: background-color .2s linear;
  transition: background-color .2s linear;
  bottom: 0;
  /* there must be 'bottom' for ps-scrollbar-x */
  height: 8px;
}

.ps-container > .ps-scrollbar-y-rail {
  display: none;
  position: absolute;
  /* please don't change 'position' */
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  -moz-transition: background-color .2s linear, opacity .2s linear;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  right: 3px;
  /* there must be 'right' for ps-scrollbar-y-rail */
  width: 8px;
}

.ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
  position: absolute;
  /* please don't change 'position' */
  background-color: #ccc;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-transition: background-color .2s linear;
  -moz-transition: background-color .2s linear;
  -o-transition: background-color .2s linear;
  transition: background-color .2s linear;
  right: 0;
  /* there must be 'right' for ps-scrollbar-y */
  width: 8px;
}

.ps-container:hover.ps-in-scrolling {
  pointer-events: none;
}

.ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail {
  background-color: #eee;
  opacity: 0.9;
}

.ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x {
  background-color: #999;
}

.ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail {
  background-color: #eee;
  opacity: 0.9;
}

.ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y {
  background-color: #999;
}

.ps-container:hover > .ps-scrollbar-x-rail,
.ps-container:hover > .ps-scrollbar-y-rail {
  opacity: 0.6;
}

.ps-container:hover > .ps-scrollbar-x-rail:hover {
  background-color: #eee;
  opacity: 0.9;
}

.ps-container:hover > .ps-scrollbar-x-rail:hover > .ps-scrollbar-x {
  background-color: #999;
}

.ps-container:hover > .ps-scrollbar-y-rail:hover {
  background-color: #eee;
  opacity: 0.9;
}

.ps-container:hover > .ps-scrollbar-y-rail:hover > .ps-scrollbar-y {
  background-color: #999;
}

.cb-slideshow {
  position: relative;
}

.cb-slideshow,
.cb-slideshow:after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 0;
}

.cb-slideshow:after {
  content: '';
  background: transparent url("../img/bg/bg-pattern_1.png") repeat top left;
}

.cb-slideshow li span {
  background-color: #111;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  color: transparent;
  background-size: cover;
  background-position: center center;
  background-repeat: none;
  opacity: 0;
  z-index: 0;
  -webkit-backface-visibility: hidden;
  -webkit-animation: imageAnimation 12s linear infinite 0s;
  -moz-animation: imageAnimation 12s linear infinite 0s;
  -o-animation: imageAnimation 12s linear infinite 0s;
  -ms-animation: imageAnimation 12s linear infinite 0s;
  animation: imageAnimation 12s linear infinite 0s;
}

.cb-slideshow li:nth-child(1) span {
  background-image: url("../img/top/top-visual_5.jpg");
}

.cb-slideshow li:nth-child(2) span {
  background-image: url("../img/top/top-visual_3.jpg");
  -webkit-animation-delay: 6s;
  -moz-animation-delay: 6s;
  -o-animation-delay: 6s;
  -ms-animation-delay: 6s;
  animation-delay: 6s;
}

.cb-slideshow li:nth-child(3) span {
  background-image: url("../img/top/top-visual_4.jpg");
  -webkit-animation-delay: 12s;
  -moz-animation-delay: 12s;
  -o-animation-delay: 12s;
  -ms-animation-delay: 12s;
  animation-delay: 12s;
}

/*
.cb-slideshow li:nth-child(4) span {
	background-image: url('../img/top/top-visual_4.jpg');
	-webkit-animation-delay: 18s;
	-moz-animation-delay: 18s;
	-o-animation-delay: 18s;
	-ms-animation-delay: 18s;
	animation-delay: 18s;
}
.cb-slideshow li:nth-child(5) span {
	background-image: url('../img/top/top-visual_5.jpg');
	-webkit-animation-delay: 24s;
	-moz-animation-delay: 24s;
	-o-animation-delay: 24s;
	-ms-animation-delay: 24s;
	animation-delay: 24s;
}
*/
@-webkit-keyframes imageAnimation {
  0% {
    opacity: 0;
    -webkit-animation-timing-function: ease-in;
  }
  8% {
    opacity: 1;
    -webkit-animation-timing-function: ease-out;
  }
  17% {
    opacity: 1;
  }
  35% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@-ms-keyframes imageAnimation {
  0% {
    opacity: 0;
    -ms-animation-timing-function: ease-in;
  }
  8% {
    opacity: 1;
    -ms-animation-timing-function: ease-out;
  }
  17% {
    opacity: 1;
  }
  35% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@keyframes imageAnimation {
  0% {
    opacity: 0;
    animation-timing-function: ease-in;
  }
  8% {
    opacity: 1;
    animation-timing-function: ease-out;
  }
  17% {
    opacity: 1;
  }
  35% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

.no-cssanimations .cb-slideshow li span {
  opacity: 1;
}

.full_screen_wrap {
  position: relative;
}

.full_screen {
  position: relative;
  width: 100%;
  height: 100%;
}

.full_screen .txt_wrap {
  position: absolute;
  width: 80%;
  top: 19%;
  right: 0;
  left: 0;
  margin: 0 auto;
  text-align: center;
}

.full_screen .txt_wrap .txt1 {
  font-size: 4em;
  font-weight: bold;
  line-height: 2;
  color: #fff;
  letter-spacing: 1px;
}

.full_screen .txt_wrap .txt1 span {
  display: block;
}

.full_screen .txt_wrap .txt1 .smail {
  font-size: 64%;
  letter-spacing: -0.001em;
}

.full_screen .txt_wrap .txt1 .big {
  font-size: 180%;
  line-height: 1.5;
  padding: .4em 0;
  letter-spacing: -0.001em;
}

@media (max-width: 1300px) {
  .full_screen .txt_wrap .txt1 .big {
    font-size: 165%;
    line-height: 1.3;
  }
}

.full_screen .visual_news {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  background: #dde8f0;
  height: 40px;
  overflow: hidden;
}

.full_screen .visual_news .title {
  float: left;
  position: relative;
  background: #00aae4;
  color: #fff;
  padding: 0 2em;
  z-index: 10;
  line-height: 40px;
}

.full_screen .visual_news .title span {
  position: relative;
}

.full_screen .visual_news .contents {
  position: relative;
  padding: 0 2em;
  text-align: left;
  white-space: nowrap;
  -webkit-animation-name: marquee;
  -webkit-animation-timing-function: linear;
  -webkit-animation-duration: 30s;
  -webkit-animation-iteration-count: infinite;
  -moz-animation-name: marquee;
  -moz-animation-timing-function: linear;
  -moz-animation-duration: 30s;
  -moz-animation-iteration-count: infinite;
  -ms-animation-name: marquee;
  -ms-animation-timing-function: linear;
  -ms-animation-duration: 30s;
  -ms-animation-iteration-count: infinite;
  animation-name: marquee;
  animation-timing-function: linear;
  animation-duration: 30s;
  animation-iteration-count: infinite;
}

@-webkit-keyframes marquee {
  from {
    -webkit-transform: translate(0%);
  }
  99%, to {
    -webkit-transform: translate(-100%);
  }
}

@-moz-keyframes marquee {
  from {
    -moz-transform: translate(0%);
  }
  99%, to {
    -moz-transform: translate(-100%);
  }
}

@-ms-keyframes marquee {
  .full_screen .visual_news .contents from {
    -ms-transform: translate(0%);
  }
  .full_screen .visual_news .contents 99%, .full_screen .visual_news .contents to {
    -ms-transform: translate(-100%);
  }
}

@keyframes marquee {
  from {
    transform: translate(0%);
  }
  99%, to {
    transform: translate(-100%);
  }
}

.full_screen .visual_news .contents .post {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 7em;
  line-height: 36px;
}

.full_screen .visual_news .contents .post a {
  color: #72838f;
  font-size: .9em;
  display: block;
  overflow: hidden;
  white-space: nowrap;
}

.full_screen .visual_news .contents .post a .label {
  display: inline-block;
  vertical-align: middle;
}

.full_screen .visual_news .contents .post a .label .time {
  font-size: 1.1em;
  display: inline-block;
  vertical-align: middle;
  margin: 0 .6em 0 0;
}

.full_screen .visual_news .contents .post a .label .category {
  display: inline-block;
  vertical-align: middle;
  border: 1px solid #72838f;
  padding: .4em 1em;
  line-height: 1;
  font-size: .9em;
  letter-spacing: 0;
  margin: 0 1em 0 0;
}

.full_screen .visual_news .contents .post a .new {
  font-style: normal;
  font-weight: bold;
}

.full_screen .visual_news .contents .post a .post_title {
  display: inline-block;
  vertical-align: middle;
  text-decoration: underline;
}

@media (max-width: 768px) {
  .full_screen .scroll_arrow {
    top: 90%;
  }
  .full_screen .txt_wrap {
    top: 24%;
    margin: 0 auto;
    padding: 0 1em;
  }
  .full_screen .txt_wrap .txt1 {
    font-size: 2.2em;
  }
  .full_screen .txt_wrap .txt1 .big {
    padding: .8em 0;
    font-size: 120%;
  }
  .full_screen .visual_news {
    display: none;
  }
}

.scroll_arrow {
  position: absolute;
  left: 0;
  right: 0;
  top: 88%;
  display: block;
  z-index: 100;
  width: 42px;
  height: 42px;
  margin: 0 auto;
  text-decoration: none;
  text-align: center;
}

.scroll_arrow i {
  font-size: 3em;
  line-height: 45px;
  color: #fff;
}

.scroll_arrow.fuwafuwa {
  -webkit-animation: fuwafuwa 2s ease 0s infinite;
  -moz-animation: fuwafuwa 2s ease 0s infinite;
  -ms-animation: fuwafuwa 2s ease 0s infinite;
  animation: fuwafuwa 2s ease 0s infinite;
}

@-webkit-keyframes fuwafuwa {
  0% {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -10px);
    -moz-transform: translate(0, -10px);
    -ms-transform: translate(0, -10px);
    transform: translate(0, -10px);
  }
  100% {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@media (max-width: 768px) {
  .scroll_arrow {
    top: 76%;
  }
}

.top_industry {
  padding: 10em 0;
}

.top_industry.bg_dod {
  background: url("../img/bg/bg-dod_1.png") repeat left center;
}

.top_industry .service_list li {
  display: inline-block;
  vertical-align: top;
  background: #fff;
  max-width: 380px;
  width: 100%;
  margin: 5em .8em 0 .8em;
  border: 1px solid transparent;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.top_industry .service_list li:hover {
  background: #dde7ef;
  border-color: #eee;
}

.top_industry .service_list li a {
  display: block;
  padding: 7em 2em;
  border: 4px solid #00aae4;
}

.top_industry .service_list li a .img {
  width: 50px;
  height: 50px;
  margin: 0 auto;
}

.top_industry .service_list li a .img svg {
  width: 100%;
  max-height: 40px;
  display: inline-block;
  vertical-align: middle;
}

.top_industry .service_list li a dl {
  margin: .8em 0 0 0;
}

.top_industry .service_list li a dl dt {
  font-size: 1.3em;
  color: #111;
  font-weight: 700px;
  letter-spacing: 1px;
}

.top_industry .service_list li a dl dd {
  margin: .8em 0 0 0;
  font-size: 1.1em;
  color: #666;
  line-height: 1.8;
}

.top_industry .service_list li a .btn {
  background: #00aae4;
  width: 80px;
  height: 36px;
  border-radius: 50em;
  display: inline-block;
  vertical-align: top;
  padding: 1px 0;
  margin: 1.6em 0 0 0;
}

.top_industry .service_list li a .btn .aroww {
  position: relative;
  top: 17px;
  display: block;
  margin: 0 auto;
  width: 16px;
  height: 1px;
  background: #fff;
}

.top_industry .service_list li a .btn .aroww:before, .top_industry .service_list li a .btn .aroww:after {
  content: '';
  display: block;
  width: 8px;
  height: 1px;
  background: #fff;
  position: absolute;
  right: -3px;
}

.top_industry .service_list li a .btn .aroww:before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: -3px;
}

.top_industry .service_list li a .btn .aroww:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 3px;
}

@media (max-width: 768px) {
  .top_industry {
    padding: 4em 0;
  }
  .top_industry .service_list {
    margin-top: 2em;
  }
  .top_industry .service_list li {
    margin: 1em 0 0 0;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .top_industry .service_list li a {
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    transform: none;
    padding: 3em 1.6em;
    zoom: 90%;
  }
  .top_industry .service_list li a .btn {
    display: none;
  }
}

.top_utm_concept {
  background: #f0f5f9;
  padding: 10em 0 9em 0;
  position: relative;
  text-align: left;
}

.top_utm_concept .utm_slide_wrap > .item {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 10;
}

.top_utm_concept .utm_slide_wrap > .item.style1 .title {
  font-size: 3.6em;
  font-weight: 700;
  line-height: 1;
}

.top_utm_concept .utm_slide_wrap > .item.style1 .description {
  width: 100%;
  max-width: 550px;
  margin: 2.6em 0 0 0;
}

.top_utm_concept .utm_slide_wrap > .item.style1 .description.roofer_d {
  max-width: 640px;
}

.top_utm_concept .utm_slide_wrap > .item.style1 .description p {
  font-size: 1.65em;
  line-height: 1.7;
}

.top_utm_concept .utm_slide_wrap > .item.style1 .btn {
  margin: 3em 0 0 0;
}

.top_utm_concept .utm_slide_wrap .mac_img_1 {
  position: absolute;
  top: -90px;
  right: 0;
  z-index: 5;
}

.top_utm_concept .utm_slide_wrap .mac_img_1.ipad {
  top: 80px;
  right: 30px;
}

@media (max-width: 768px) {
  .top_utm_concept .utm_slide_wrap .mac_img_1.ipad {
    top: 0;
    right: 0;
  }
}

@media (max-width: 768px) {
  .top_utm_concept {
    padding: 4em 0;
  }
  .top_utm_concept .utm_slide_wrap > .item {
    max-width: none;
    width: auto;
    padding: 0 1.6em;
  }
  .top_utm_concept .utm_slide_wrap > .item.style1 .title {
    font-size: 2em;
  }
  .top_utm_concept .utm_slide_wrap > .item.style1 .description {
    margin: 1.2em 0 0 0;
    max-width: none;
    width: auto;
  }
  .top_utm_concept .utm_slide_wrap > .item.style1 .description p {
    font-size: 1.1em;
    line-height: 1.65;
  }
  .top_utm_concept .utm_slide_wrap > .item.style1 .btn {
    margin-top: 2em;
  }
  .top_utm_concept .utm_slide_wrap .mac_img_1 {
    position: relative;
    top: 0;
    margin-top: -8em;
    zoom: 50%;
    text-align: right;
  }
  .top_utm_concept .utm_slide_wrap .mac_img_1 img {
    zoom: 60%;
  }
}

.top_utm_concept.reverse {
  background: #f8f8f8;
  padding: 10em 0 12em 0;
}

.top_utm_concept.reverse .utm_slide_wrap > .item {
  max-width: 580px;
  left: 30em;
}

.top_utm_concept.reverse .utm_slide_wrap .mac_img_1 {
  position: absolute;
  top: -120px;
  left: 0;
}

.top_utm_concept.roofer {
  padding: 13em 0 11em 0;
}

@media (max-width: 768px) {
  .top_utm_concept.reverse {
    padding: 4em 0;
  }
  .top_utm_concept.reverse .utm_slide_wrap > .item {
    left: 0;
    margin-top: 11em;
  }
  .top_utm_concept.reverse .utm_slide_wrap > .item .description p br {
    display: none;
  }
  .top_utm_concept.reverse .utm_slide_wrap .mac_img_1 {
    top: 4em;
    left: 0;
    text-align: left;
  }
  .top_utm_concept.roofer {
    padding: 7em 0 4em;
  }
}

.top_news {
  padding: 10em 0 4em 0;
}

.news_list {
  max-width: 1024px;
  width: 100%;
  margin: 4em auto 0 auto;
}

.news_list .news_list_item {
  position: relative;
  height: 200px;
}

.news_list li {
  text-align: left;
  margin: 1em 0 0 0;
}

.news_list li a {
  display: block;
  padding: .6em 0;
}

.news_list li a .label {
  display: inline-block;
  vertical-align: middle;
  white-space: nowrap;
  font-size: .9em;
}

.news_list li a .time {
  padding-right: 2em;
}

.news_list li a .new {
  font-style: normal;
  margin: 0 0 0 1em;
}

.news_list li a .category {
  display: inline-block;
  vertical-align: middle;
  padding: 0 2em 0 2.6em;
  position: relative;
}

.news_list li a .category:before {
  content: '';
  width: 1px;
  height: 10px;
  background: #ccc;
  position: absolute;
  left: 0;
  top: 6px;
}

.news_list li a .category span {
  display: inline-block;
  vertical-align: middle;
  width: 120px;
  text-align: center;
  border: 1px solid #ddd;
  padding: .1em 0em;
}

.news_list li a .title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

@media (max-width: 768px) {
  .top_news {
    padding: 4em 0;
  }
  .news_list {
    max-width: none;
    width: auto;
    margin: 2em 0 0 0;
  }
  .news_list li a .label {
    display: block;
    zoom: 80%;
  }
  .news_list li a .time {
    padding-right: 1em;
  }
  .news_list li a .category {
    padding: 0 0 0 1.6em;
  }
  .news_list li a .category span {
    display: block;
    width: auto;
  }
  .news_list li a .title {
    display: block;
    zoom: 90%;
    margin-top: .6em;
  }
}

.top .bnr_recruit {
  padding: 2em 0 8em;
}

.bnr_recruit {
  padding-top: 4em;
}

.bnr_recruit .item {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
}

.bnr_recruit .item .img1 {
  float: left;
  border-right: 1px solid #eee;
}

.bnr_recruit .item .img2 {
  float: right;
  border-left: 1px solid #eee;
}

.bnr_recruit .item a {
  display: block;
  border: 1px solid #eee;
  color: #111;
}

.bnr_recruit .item a .text {
  text-align: center;
  width: 300px;
  height: 280px;
  margin: 0 auto;
}

.bnr_recruit .item a .text .title {
  padding-top: 4em;
}

.bnr_recruit .item a .text .title .recruit_title {
  display: block;
  font-size: 2.8em;
  line-height: 1;
  font-weight: bold;
  letter-spacing: 0;
}

.bnr_recruit .item a .text .title .en {
  display: block;
  margin: .6em auto 0 auto;
}

.bnr_recruit .item a .text .drone_icon {
  margin: 20px auto 0 auto;
  font-size: 2.8em;
  line-height: 1;
}

.bnr_recruit .item a .text .description {
  margin: 1.4em auto 0 auto;
  font-size: 1em;
  line-height: 1.8;
  font-weight: bold;
}

.bnr_recruit .item a:hover {
  color: #111;
}

@media (max-width: 768px) {
  .top .bnr_recruit {
    padding: 0;
  }
  .bnr_recruit {
    padding: 0;
  }
  .bnr_recruit + .g_footer {
    margin-top: 0;
  }
  .bnr_recruit .item .img1,
  .bnr_recruit .item .img2 {
    width: 50%;
    border: none;
  }
  .bnr_recruit .item a .text {
    clear: both;
    height: auto;
    width: auto;
    padding: 0 0 3em;
  }
  .bnr_recruit .item a .text .title {
    padding-top: 2em;
  }
  .bnr_recruit .item a .text .title .recruit_title {
    zoom: 80%;
  }
  .bnr_recruit .item a .text .drone_icon {
    zoom: 70%;
  }
  .bnr_recruit .item a .text .description {
    zoom: 90%;
  }
}

.top_about {
  padding: 7em 0;
  background: url(../img/bg/map_bg.png) repeat left center;
}

.top_about .inner {
  text-align: center;
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}

.top_about .inner .map_wrap {
  margin: 5em 0;
  position: relative;
}

@media (max-width: 1080px) {
  .top_about .inner .map_wrap {
    margin: 1em 0 0;
  }
}

.top_about .inner .map_wrap .map_img {
  transition: all .4s ease-out;
  opacity: 1;
}

@media (max-width: 1080px) {
  .top_about .inner .map_wrap .map_img {
    display: none;
  }
}

.top_about .inner .map_wrap .pin_block {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

@media (max-width: 1080px) {
  .top_about .inner .map_wrap .pin_block {
    display: none;
  }
}

.top_about .inner .map_wrap .pin_block li {
  padding: 0 20px 20px;
  position: absolute;
  transition: all .4s ease-out;
}

.top_about .inner .map_wrap .pin_block li.js_btn span.shape {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.top_about .inner .map_wrap .pin_block li.js_btn span span {
  content: "";
  position: absolute;
  margin: auto;
  height: 8px;
  width: 2px;
  background: #e6203b;
  opacity: 0;
}

.top_about .inner .map_wrap .pin_block li.js_btn span span.white {
  background: #fff;
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(1) {
  top: -10px;
  left: 0;
  right: 0;
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(2) {
  bottom: -10px;
  left: 0;
  right: 0;
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(3) {
  top: 0;
  bottom: 0;
  left: -10px;
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(4) {
  top: 0;
  bottom: 0;
  right: -10px;
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(5) {
  top: -10px;
  left: -70%;
  right: 0;
  transform: rotate(-30deg);
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(6) {
  top: -10px;
  left: 0;
  right: -70%;
  transform: rotate(30deg);
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(7) {
  bottom: -10px;
  right: 0;
  left: -70%;
  transform: rotate(30deg);
}

.top_about .inner .map_wrap .pin_block li.js_btn span span:nth-of-type(8) {
  bottom: -10px;
  left: 0;
  right: -70%;
  transform: rotate(-30deg);
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(1) {
  animation: anim1 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(2) {
  animation: anim2 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(3) {
  animation: anim3 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(4) {
  animation: anim4 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(5) {
  animation: anim5 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(6) {
  animation: anim6 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(7) {
  animation: anim7 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li.active span span:nth-of-type(8) {
  animation: anim8 0.4s ease-out 1;
}

.top_about .inner .map_wrap .pin_block li img {
  width: 16px;
  height: 36px;
  opacity: 0;
}

.top_about .inner .map_wrap .pin_block li:hover {
  cursor: pointer;
}

.top_about .inner .map_wrap .pin_block li.japan {
  top: 314px;
  left: 438px;
}

.top_about .inner .map_wrap .pin_block li.india {
  top: 375px;
  left: 258px;
}

.top_about .inner .map_wrap .pin_block li.europe {
  top: 245px;
  left: 69px;
  padding: 0 20px 0 0;
}

.top_about .inner .map_wrap .pin_block li.australia {
  top: 524px;
  left: 368px;
}

.top_about .inner .map_wrap .pin_block li.indonesia {
  top: 448px;
  left: 344px;
}

.top_about .inner .map_wrap .pin_block li.kaz {
  top: 255px;
  left: 235px;
}

.top_about .inner .map_wrap .pin_block li.c-astral {
  top: 268px;
  left: 90px;
  padding: 0 10px 20px;
}

.top_about .inner .map_wrap .pin_block li.angola {
  top: 458px;
  left: 62px;
}

.top_about .inner .map_wrap .pin_block li.ronik {
  top: 252px;
  left: 35px;
  padding: 0 0 20px 20px;
}

.top_about .inner .map_wrap .pin_block li.sitesee {
  top: 510px;
  left: 474px;
}

.top_about .inner .map_wrap .pin_block li.unifly {
  top: 274px;
  left: 66px;
  padding: 0 5px 0 0;
}

.top_about .inner .map_wrap .pin_block li.argentina {
  top: 535px;
  left: 912px;
}

.top_about .inner .map_wrap .pin_block li.brazil {
  top: 500px;
  left: 962px;
}

.top_about .inner .map_wrap .pin_block li.kuwait {
  top: 340px;
  left: 177px;
  padding: 0 0 0 10px;
}

.top_about .inner .map_wrap .pin_block li.headoffice {
  top: 350px;
  left: 190px;
  padding: 0 5px 0;
}

.top_about .inner .map_wrap .pin_block li.uae {
  top: 358px;
  left: 210px;
  padding: 0 5px 0 0;
}

.top_about .inner .map_wrap .white_box {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(255, 255, 255, 0.5);
  display: none;
}

.top_about .inner .map_wrap .info_block {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

@media (max-width: 1080px) {
  .top_about .inner .map_wrap .info_block {
    position: static;
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
  }
}

.top_about .inner .map_wrap .info_block li {
  width: 300px !important;
  background-color: #f7f8f9;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
  position: absolute;
  transition: all .4s .3s ease;
  margin-top: -50px;
  visibility: hidden;
}

@media (max-width: 1080px) {
  .top_about .inner .map_wrap .info_block li {
    width: 310px !important;
    height: 450px;
    visibility: visible;
    position: static;
    margin: 20px 0;
    box-shadow: none;
  }
}

.top_about .inner .map_wrap .info_block li.visible {
  animation-delay: .2s;
  animation-duration: .5s;
  animation-name: map-fade-in;
  visibility: visible;
  margin-top: 0;
}

.top_about .inner .map_wrap .info_block li.japan {
  top: -103px;
  left: 317px;
}

.top_about .inner .map_wrap .info_block li.india {
  top: -42px;
  left: 136px;
}

.top_about .inner .map_wrap .info_block li.europe {
  top: -173px;
  left: -77px;
}

.top_about .inner .map_wrap .info_block li.australia {
  top: 130px;
  left: 246px;
}

.top_about .inner .map_wrap .info_block li.indonesia {
  top: 32px;
  left: 222px;
}

.top_about .inner .map_wrap .info_block li.kaz {
  top: -162px;
  left: 113px;
}

.top_about .inner .map_wrap .info_block li.c-astral {
  top: -125px;
  left: -42px;
}

.top_about .inner .map_wrap .info_block li.angola {
  top: 40px;
  left: -60px;
}

.top_about .inner .map_wrap .info_block li.ronik {
  top: -180px;
  left: -83px;
}

.top_about .inner .map_wrap .info_block li.sitesee {
  top: 115px;
  left: 352px;
}

.top_about .inner .map_wrap .info_block li.unifly {
  top: -158px;
  left: -78px;
}

.top_about .inner .map_wrap .info_block li.argentina {
  top: 77px;
  left: 790px;
}

.top_about .inner .map_wrap .info_block li.brazil {
  top: 55px;
  left: 840px;
}

.top_about .inner .map_wrap .info_block li.kuwait {
  top: -130px;
  left: 45px;
}

.top_about .inner .map_wrap .info_block li.headoffice {
  top: -95px;
  left: 53px;
}

.top_about .inner .map_wrap .info_block li.uae {
  top: -85px;
  left: 67px;
}

.top_about .inner .map_wrap .info_block li .block_inner {
  position: relative;
}

.top_about .inner .map_wrap .info_block li .block_inner .map_block iframe {
  width: 100%;
  height: 215px;
}

.top_about .inner .map_wrap .info_block li .block_inner .txt_block {
  padding: 10px 10px 20px 20px;
  text-align: left;
}

.top_about .inner .map_wrap .info_block li .block_inner .txt_block .tlt {
  font-size: 23px;
  letter-spacing: 0;
}

.top_about .inner .map_wrap .info_block li .block_inner .txt_block .tlt.smalltxt {
  font-size: 20px;
  letter-spacing: -0.5px;
}

.top_about .inner .map_wrap .info_block li .block_inner .txt_block .desc {
  font-size: 14px;
  letter-spacing: 0;
}

.top_about .inner .map_wrap .info_block li .block_inner .txt_block .desc a {
  color: #00aae4;
}

.top_about .inner .map_wrap .info_block li .block_inner:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  border: 10px solid transparent;
  border-top: 15px solid #f7f8f9;
}

@media (max-width: 1080px) {
  .top_about .inner .map_wrap .info_block li .block_inner:before {
    display: none;
  }
}

.top_about .inner .map_wrap .info_block li .block_inner .close_img {
  position: absolute;
  top: -52px;
  right: -52px;
  cursor: pointer;
}

@media (max-width: 1080px) {
  .top_about .inner .map_wrap .info_block li .block_inner .close_img {
    display: none;
  }
}

.top_about .inner .g_btn_wrap {
  margin-top: 4em !important;
}

@media (max-width: 768px) {
  .top_about {
    padding: 4em 0;
  }
  .top_about .drone_1 {
    display: none;
  }
}

@keyframes map-fade-in {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  50% {
    visibility: visible;
    opacity: .5;
  }
  100% {
    visibility: visible;
    opacity: 1;
  }
}

/* let's animate this */
@keyframes bounce {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes anim1 {
  0% {
    transform: scaleY(0.5);
    opacity: 0;
  }
  50% {
    transform: translateY(-10px) scaleY(1.4);
    opacity: 1;
  }
  100% {
    transform: translateY(-20px) scaleY(0.5);
    opacity: 0;
  }
}

@keyframes anim2 {
  0% {
    transform: scaleY(1);
    opacity: 0;
  }
  50% {
    transform: translateY(10px) scaleY(1.4);
    opacity: 1;
  }
  100% {
    transform: translateY(20px) scaleY(0.5);
    opacity: 0;
  }
}

@keyframes anim3 {
  0% {
    transform: rotate(90deg) scaleX(0.5);
    opacity: 0;
  }
  50% {
    transform: rotate(90deg) translateY(10px) scaleX(1.4);
    opacity: 1;
  }
  100% {
    transform: rotate(90deg) translateY(20px) scaleX(0.5);
    opacity: 0;
  }
}

@keyframes anim4 {
  0% {
    transform: rotate(90deg) scaleX(0.5);
    opacity: 0;
  }
  50% {
    transform: rotate(90deg) translateY(-10px) scaleX(1.4);
    opacity: 1;
  }
  100% {
    transform: rotate(90deg) translateY(-20px) scaleX(0.5);
    opacity: 0;
  }
}

@keyframes anim5 {
  0% {
    transform: rotate(-30deg) scaleY(0.5);
    opacity: 0;
  }
  50% {
    transform: rotate(-30deg) translateY(-8px) scaleY(1.4);
    opacity: 1;
  }
  100% {
    transform: rotate(-30deg) translateY(-16px) scaleY(0.5);
    opacity: 0;
  }
}

@keyframes anim6 {
  0% {
    transform: rotate(30deg) scaleY(0.5);
    opacity: 0;
  }
  50% {
    transform: rotate(30deg) translateY(-8px) scaleY(1.4);
    opacity: 1;
  }
  100% {
    transform: rotate(30deg) translateY(-16px) scaleY(0.5);
    opacity: 0;
  }
}

@keyframes anim7 {
  0% {
    transform: rotate(30deg) scaleY(0.5);
    opacity: 0;
  }
  50% {
    transform: rotate(30deg) translateY(8px) scaleY(1.4);
    opacity: 1;
  }
  100% {
    transform: rotate(30deg) translateY(16px) scaleY(0.5);
    opacity: 0;
  }
}

@keyframes anim8 {
  0% {
    transform: rotate(-30deg) scaleY(0.5);
    opacity: 0;
  }
  50% {
    transform: rotate(-30deg) translateY(8px) scaleY(1.4);
    opacity: 1;
  }
  100% {
    transform: rotate(-30deg) translateY(16px) scaleY(0.5);
    opacity: 0;
  }
}

.info_block .slick-current li {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
}

.top_whtpapr {
  padding: 4em 0 12em 0;
  background: #FFF;
}

.top_whtpapr .inner {
  border: 1px solid #eee;
  text-align: center;
  max-width: 920px;
  width: 100%;
  margin: 0 auto;
  padding: 3em 3em 6em 3em;
  position: relative;
}

.top_whtpapr .inner .title_wrap h1 {
  font-size: 2.6em;
}

.top_whtpapr .inner .title_wrap p {
  font-size: 1.1em;
}

.top_whtpapr .inner .txt_wrap p {
  font-size: 1.1em;
  line-height: 2em;
  text-align: center;
  word-wrap: break-word;
  word-break: normal !important;
}

@media (max-width: 768px) {
  .top_whtpap {
    padding: 4em 0;
  }
  .top_whtpap .inner .title_wrap h1 {
    font-size: 1.8em;
  }
  .top_whtpap .inner .title_wrap p {
    font-size: 1em;
  }
  .top_whtpap .inner .txt_wrap p {
    font-size: 1em;
  }
}

.top_mailmagz {
  padding: 5em 0;
  background: #f7f8f9;
}

.top_mailmagz .inner {
  text-align: center;
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
  padding:  2em 0 3em;
  background: #fff;
  position: relative;
}

.top_mailmagz .inner .title_wrap .title .f_en {
  font-size: 2em;
  font-style: normal;
  font-weight: 600;
  padding-top: 1em;
  color: #a4afb7;
  letter-spacing: 4px;
}

.top_mailmagz .inner .txt_wrap {
  margin: 0 0 3em;
}

.top_mailmagz .inner .txt_wrap .txt {
  font-size: 1.1em;
  padding: 1em;
  font-weight: normal;
  line-height: 2.2;
}

@media (max-width: 768px) {
  .top_mailmagz .inner .mailmagz iframe {
    width: 100%;
  }
  .top_mailmagz .inner .title_wrap .title .f_en {
    padding-bottom: 1em;
  }
}

.seminor_wrap {
  max-width: 1050px;
  margin: 3em auto;
  padding: 0;
}

.seminor_wrap ul li {
  margin: 0 auto 1.5em;
}

.seminor_wrap ul li a {
  display: block;
  max-width: 1050px;
  width: 100%;
}

.seminor_wrap ul li a:last-child {
  margin-bottom: 0;
}

.seminor_wrap_mb {
  max-width: 1050px;
  margin: 0 auto;
  padding: 0;
}

.seminor_wrap_mb label {
  display: block;
  margin: 2em auto 2em;
  line-height: 1;
  color: #00aae4;
  cursor: pointer;
  border: 1px solid #00aae4;
  border-radius: 30em;
  padding: 1em 2em;
  width: 20em;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

.seminor_wrap_mb label:hover {
  color: #ffffff;
  background: #00aae4;
}

.seminor_wrap_mb input {
  display: none;
}

.seminor_wrap_mb ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.seminor_wrap_mb ul li {
  max-height: 0;
  margin-bottom: 0;
  overflow-y: hidden;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

.seminor_wrap_mb ul li a {
  display: block;
  max-width: 1050px;
  width: 100%;
}

.seminor_wrap_mb ul li a:last-child {
  margin-bottom: 0;
}

#smmenu_bar01:checked ~ #smbar li {
  max-height: 100px;
  opacity: 1;
  margin-bottom: 1.5em;
}

.seminor_wrap a:hover {
  opacity: 0.7;
}

.seminar {
  padding: 100px 0;
  background: #f9f9f9;
}

@media (max-width: 760px) {
  .seminar {
    padding: 60px 0;
    padding-left: 20px;
  }
}

.seminar .seminar_wrap {
  max-width: 1140px;
  width: 100%;
  margin: 0 auto;
}

@media (max-width: 1300px) {
  .seminar .seminar_wrap {
    max-width: 680px;
  }
}

@media (max-width: 760px) {
  .seminar .seminar_wrap {
    max-width: 100%;
  }
}

.seminar .seminar_wrap .item {
  width: 310px !important;
  height: 435px;
  border: 1px solid #00aae4;
  float: left;
  margin: 0 35px;
  text-align: left;
  background: #ffffff url("../img/top/desktop_bg.svg") no-repeat center bottom/contain;
}

@media (max-width: 1300px) {
  .seminar .seminar_wrap .item {
    margin: 0 15px;
  }
}

@media (max-width: 760px) {
  .seminar .seminar_wrap .item {
    margin: 0;
  }
}

.seminar .seminar_wrap .item .title {
  font-size: 17px;
  line-height: 40px;
  height: 40px;
}

.seminar .seminar_wrap .item .title span.color {
  width: 130px;
  color: #ffffff;
  background: #00aae4;
  line-height: 40px;
  height: 40px;
  display: inline-block;
  text-align: center;
}

.seminar .seminar_wrap .item .title span.txt {
  width: calc(100% - 130px);
  color: #1b1b1b;
  display: inline-block;
  text-align: center;
}

.seminar .seminar_wrap .item .info {
  width: 100%;
  padding: 20px 25px 0;
  color: #1b1b1b;
}

.seminar .seminar_wrap .item .info dt {
  font-size: 12px;
}

.seminar .seminar_wrap .item .info dd {
  font-size: 14px;
  background: #eeeeee;
  line-height: 35px;
  height: 35px;
  padding-left: 10px;
  margin-bottom: 15px;
  letter-spacing: 0;
  overflow: hidden;
}

.seminar .seminar_wrap .item .youtube {
  text-align: left;
  padding: 0 25px;
  color: #1b1b1b;
  font-size: 12px;
}

.seminar .seminar_wrap .item.cloud {
  border: 1px solid #1b1b1b;
  background: #ffffff url("../img/top/cloud_bg.svg") no-repeat center bottom;
}

.seminar .seminar_wrap .item.cloud .title span.color {
  background: #1b1b1b;
}

.news_header .primary {
  background: #000000;
}

.news_header .primary .inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  text-align: left;
  padding: .6em 0;
}

@media (max-width: 768px) {
  .news_header .primary .inner {
    padding: .8em 1em;
  }
}

.news_header .primary .inner .logo {
  color: #fff;
  float: left;
}

.news_header .primary .inner .logo a {
  display: inline-block;
  vertical-align: middle;
  background: url(../img/common/terradrone_w.svg) no-repeat left center;
  width: 140px;
  background-size: 130px auto;
  text-indent: -9999px;
  text-align: left;
}

.news_header .primary .inner .logo .text {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: 2px;
  font-size: 10px;
}

@media (max-width: 768px) {
  .news_header .primary .inner .logo .text {
    display: none;
  }
}

.news_header .primary .inner .sns_logo {
  float: right;
}

@media (max-width: 768px) {
  .news_header .primary .inner .sns_logo {
    display: none;
  }
}

.news_header .primary .inner .sns_logo li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 1.6em;
}

.news_header .primary .inner .sns_logo li a {
  display: block;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  padding: 4px;
}

.news_tab {
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

.news_tab .inner li {
  display: inline-block;
  vertical-align: middle;
}

.news_tab .inner li a {
  display: block;
  font-size: 1.05em;
  font-weight: bold;
  line-height: 1;
  padding: 1.4em 1.4em;
  position: relative;
}

.news_tab .inner li a:before {
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  left: 0;
  margin: 0 auto;
  display: block;
  width: 0;
  height: 3px;
  background: #00aae4;
}

.news_tab .inner li a.active:before {
  width: 100%;
}

.news_tab .inner li a:hover:before {
  width: 100%;
}

.news_tab .inner li a:hover, .news_tab .inner li a.active {
  color: #00aae4;
}

@media (max-width: 768px) {
  .news_tab .inner {
    white-space: nowrap;
    overflow-x: auto;
  }
  .news_tab .inner li a {
    font-size: 1.1em;
    padding: 1.2em 1.2em;
  }
}

.news_visual {
  position: absolute;
  width: 100%;
}

.news_visual > ul li {
  position: relative;
  height: 380px;
  overflow: hidden;
}

.news_visual > ul li.slide_01 span {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.news_visual > ul li.slide_01 .img {
  background: url(../img/news/bg-visual_02.jpg) no-repeat center 8%;
  background-size: cover;
}

.single_visual {
  position: relative;
  overflow: hidden;
}

.single_visual .bg {
  background-image: url(../img/news/bg-visual_02.jpg);
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed;
  filter: blur(6px);
  height: 100%;
  width: 100%;
  position: absolute;
}

.single_visual .bg_black {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}

.single_ttl {
  position: relative;
  z-index: 10;
  max-width: 1200px;
  margin: 0 auto;
  text-align: left;
  padding: 10em 0;
}

.single_ttl .ttl {
  font-size: 2.4em;
  line-height: 1.6;
  color: #fff;
  font-weight: normal;
}

.single_ttl .tags {
  position: absolute;
  left: 0;
  bottom: 2em;
}

.single_ttl .tags .category a {
  color: #fff;
  font-size: 1em;
  display: inline-block;
  vertical-align: middle;
  margin: 0 1em 0 0;
  padding: .4em 1em;
}

.single_time {
  font-weight: bold;
  font-size: 1.2em;
}

.post_list_contents {
  margin: 4em 0 0 0;
}

@media (max-width: 768px) {
  .post_list_contents {
    margin-top: 10px;
  }
}

.post_list_contents > .post_list {
  max-width: 1200px;
  width: 100%;
  text-align: justify;
  margin: 0 auto;
}

.post_list_contents > .post_list > .items {
  max-width: 372px;
  width: 100%;
  margin: 3.4em 14px 0 14px;
  display: inline-block;
  vertical-align: top;
  background: #fff;
  overflow: hidden;
  position: relative;
  transform: translateY(20px);
  opacity: 0;
  -webkit-transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.post_list_contents > .post_list > .items.active {
  opacity: 1;
  transform: translateY(0);
}

.post_list_contents > .post_list > .items:nth-child(1) {
  float: left;
  max-width: 566px;
  width: 100%;
  height: 460px;
  margin: 0 5px 0 15px;
}

@media (max-width: 768px) {
  .post_list_contents > .post_list > .items:nth-child(1) {
    margin: 0;
  }
}

.post_list_contents > .post_list > .items:nth-child(2) {
  float: left;
  max-width: 595px;
  width: 100%;
  margin: 0 0 0 5px;
}

.post_list_contents > .post_list > .items:nth-child(2) a {
  height: 225px;
}

@media (max-width: 768px) {
  .post_list_contents > .post_list > .items:nth-child(2) {
    margin: 1em 0 0 0;
  }
  .post_list_contents > .post_list > .items:nth-child(2) a {
    height: auto;
  }
}

.post_list_contents > .post_list > .items:nth-child(3) {
  float: left;
  margin: 10px 10px 0 5px;
  max-width: 292px;
}

.post_list_contents > .post_list > .items:nth-child(3) a {
  height: 225px;
}

.post_list_contents > .post_list > .items:nth-child(3) a .txt_wrap .title {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.6;
}

.post_list_contents > .post_list > .items:nth-child(3) a .txt_wrap .description {
  margin: 1em 0 0 0;
  font-size: .8em;
  line-height: 1.8;
}

@media (max-width: 768px) {
  .post_list_contents > .post_list > .items:nth-child(3) {
    margin: 1em 0 0 0;
    max-width: none;
  }
  .post_list_contents > .post_list > .items:nth-child(3) a {
    height: auto;
  }
}

.post_list_contents > .post_list > .items:nth-child(4) {
  float: left;
  margin: 10px 0 0 0;
  max-width: 292px;
}

.post_list_contents > .post_list > .items:nth-child(4) a {
  height: 225px;
}

.post_list_contents > .post_list > .items:nth-child(4) a .txt_wrap .title {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.6;
}

.post_list_contents > .post_list > .items:nth-child(4) a .txt_wrap .description {
  margin: 1em 0 0 0;
  font-size: .8em;
  line-height: 1.8;
}

@media (max-width: 768px) {
  .post_list_contents > .post_list > .items:nth-child(4) {
    margin: 1em 0 0 0;
    max-width: none;
  }
  .post_list_contents > .post_list > .items:nth-child(4) a {
    height: auto;
  }
}

@media (max-width: 768px) {
  .post_list_contents > .post_list > .items {
    float: none !important;
    height: auto !important;
    display: block;
    max-width: none;
    margin: 1em auto 0 auto;
  }
}

.post_list_contents > .post_list > .items a {
  text-decoration: none;
  display: block;
  height: 100%;
  position: relative;
  background: #efefef;
}

.post_list_contents > .post_list > .items .items-block {
  position: relative;
  z-index: 10;
  padding: 1.2em 0 0 0;
  background: #fff;
}

.post_list_contents > .post_list > .items .image_wrap {
  position: relative;
  overflow: hidden;
  min-height: 200px;
  width: 100%;
  background: #efefef url(../img/common/logo-terra_drone_b.png) no-repeat center 52%;
  background-size: 140px;
}

.post_list_contents > .post_list > .items .image_wrap .image img {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: absolute;
  top: -2.5%;
  left: -5%;
  width: 110%;
  max-width: none;
}

@media (max-width: 768px) {
  .post_list_contents > .post_list > .items .image_wrap .image img {
    position: relative;
  }
}

.post_list_contents > .post_list > .items .txt_wrap {
  margin: 0;
  padding: 0;
  text-decoration: none;
}

.post_list_contents > .post_list > .items .txt_wrap .time {
  font-weight: bold;
  margin: .6em 0 0 0;
  letter-spacing: 1px;
  font-size: 10px;
  float: right;
  color: #333;
}

.post_list_contents > .post_list > .items .txt_wrap .time .new {
  font-style: normal;
}

.post_list_contents > .post_list > .items .txt_wrap .title {
  font-size: 1.1em;
  font-weight: bold;
  line-height: 1.5;
}

.post_list_contents > .post_list > .items .txt_wrap .description {
  margin: 1em 0 0 0;
  font-size: .9em;
  line-height: 1.8;
}

.post_list_contents > .post_list > .items .data_wrap {
  margin: .8em 0 0 0;
  position: relative;
}

.post_list_contents > .post_list > .items .data_wrap .category {
  float: left;
  font-weight: bold;
}

.post_list_contents > .post_list > .items .data_wrap .time {
  position: absolute;
  top: 0;
  right: 0;
  font-size: .8em;
  font-weight: bold;
}

.post_list_contents > .post_list > .items .data_wrap .time .new {
  padding: 0 10px 0 0;
  font-style: normal;
}

.post_list_contents > .post_list > .items:nth-child(1) .items-block,
.post_list_contents > .post_list > .items:nth-child(2) .items-block,
.post_list_contents > .post_list > .items:nth-child(3) .items-block,
.post_list_contents > .post_list > .items:nth-child(4) .items-block {
  position: absolute;
  width: 100%;
  bottom: 0;
  background: -moz-linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
  background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
  background: -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
  background: gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
  padding: 4em 1.6em 1em 1.6em;
}

@media (max-width: 768px) {
  .post_list_contents > .post_list > .items:nth-child(1) .items-block,
  .post_list_contents > .post_list > .items:nth-child(2) .items-block,
  .post_list_contents > .post_list > .items:nth-child(3) .items-block,
  .post_list_contents > .post_list > .items:nth-child(4) .items-block {
    padding: 1em 1.6em;
  }
}

.post_list_contents > .post_list > .items:nth-child(1) a *,
.post_list_contents > .post_list > .items:nth-child(2) a *,
.post_list_contents > .post_list > .items:nth-child(3) a *,
.post_list_contents > .post_list > .items:nth-child(4) a * {
  color: #fff !important;
}

.post_list_contents > .post_list > .items:nth-child(1) .txt_wrap .title,
.post_list_contents > .post_list > .items:nth-child(2) .txt_wrap .title,
.post_list_contents > .post_list > .items:nth-child(3) .txt_wrap .title,
.post_list_contents > .post_list > .items:nth-child(4) .txt_wrap .title {
  font-size: 1.68em;
  font-weight: bold;
  line-height: 1.6;
  color: #fff;
  margin: 0 0 .6em 0;
}

.post_list_contents > .post_list > .items:nth-child(1) .txt_wrap .description,
.post_list_contents > .post_list > .items:nth-child(2) .txt_wrap .description,
.post_list_contents > .post_list > .items:nth-child(3) .txt_wrap .description,
.post_list_contents > .post_list > .items:nth-child(4) .txt_wrap .description {
  display: none;
}

.post_list_contents > .post_list > .items:nth-child(5) {
  float: none;
  clear: both;
}

@media (max-width: 768px) {
  .post_list_contents > .post_list .items-block {
    position: absolute !important;
    width: 100%;
    bottom: 0;
    background: -moz-linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
    background: -webkit-linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
    background: -ms-linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
    background: gradient(-90deg, rgba(0, 0, 0, 0) 0%, black 130%) !important;
    padding: 1em 1.6em !important;
  }
  .post_list_contents > .post_list a * {
    color: #fff !important;
  }
  .post_list_contents > .post_list a .items-block {
    position: relative;
    z-index: 10;
  }
  .post_list_contents > .post_list a .image_wrap {
    position: relative;
    overflow: hidden;
    width: 100%;
  }
  .post_list_contents > .post_list a .image_wrap .image {
    background: #fff;
  }
  .post_list_contents > .post_list a .image_wrap .image img {
    position: absolute;
    top: 0;
  }
  .post_list_contents > .post_list a .txt_wrap .title {
    font-size: 1.1em !important;
    font-weight: bold;
    line-height: 1.6;
    color: #fff;
    margin: 0 !important;
  }
  .post_list_contents > .post_list a .txt_wrap .description {
    display: none;
  }
}

.single_column {
  max-width: 1200px;
  width: 100%;
  margin: 4em auto 0 auto;
  text-align: left;
}

.single_column .wp_social_bookmarking_light {
  margin-top: 2em !important;
  text-align: left;
  padding: 2em 0 0 !important;
}

.single_column .wp_social_bookmarking_light > div {
  display: inline-block;
  vertical-align: bottom;
  float: none !important;
  line-height: 1 !important;
  min-height: auto !important;
  margin: 0 10px 0 0 !important;
}

.single_column .g_contents {
  float: left;
  width: 820px;
}

.single_column .g_single_contents .post_contents .keywords {
  padding: 0;
}

.single_column .g_single_contents .post_contents .keywords li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 .4em .4em 0;
  list-style: none;
}

.single_column .g_single_contents .post_contents .keywords li a {
  display: block;
  padding: .2em 1em;
  border: 1px solid #eee;
  font-size: .7em;
  border-radius: 2px;
  color: #333;
}

.single_column .g_single_contents .post_contents .keywords li a:hover {
  background: #eee;
}

.single_column .g_side {
  float: right;
  width: 300px;
}

.single_column .g_side_group_wrap {
  padding: 0 0 4em 0;
}

.single_column .g_side_group_wrap .g_side_head {
  font-size: 1.3em;
  font-weight: bold;
}

.single_column .g_side_group_wrap .g_side_contents .tab {
  margin: 2em 0 0 0;
}

.single_column .g_side_group_wrap .g_side_contents .tab ul {
  display: table;
  width: 100%;
  border-bottom: 1px solid #ddd;
}

.single_column .g_side_group_wrap .g_side_contents .tab ul li {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.1em;
  padding: .4em 2em;
  position: relative;
  top: 1px;
  cursor: pointer;
  border-width: 1px 1px 0 1px;
  border-style: solid;
  border-color: transparent;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.single_column .g_side_group_wrap .g_side_contents .tab ul li.select {
  border-color: #ddd;
}

.single_column .g_side_group_wrap .g_side_contents .tab ul li.select:after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background: #fff;
}

.single_column .g_side_group_wrap .g_side_contents .tab_contents .inner {
  display: none;
}

.list_archives {
  margin: 1em 0 0 0;
}

.list_archives li {
  margin: .2em 0;
}

.list_archives li a {
  display: block;
  padding: .2em 0;
  font-size: .9em;
}

.wpp-list {
  margin: 2em 0 0 0;
}

.wpp-list .item {
  display: table;
  width: 100%;
  margin: .6em 0 0 0;
  white-space: nowrap;
}

.wpp-list .item .img {
  display: inline-block;
  vertical-align: middle;
  width: 75px;
  height: 75px;
  border: 1px solid #eee;
  margin: 0 16px 0 0;
  overflow: hidden;
}

.wpp-list .item .img a {
  display: block;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.wpp-list .item .img a:hover {
  opacity: .6;
}

.wpp-list .item .img img {
  height: 75px;
  width: auto;
  max-width: none;
}

.wpp-list .item .url {
  display: inline-block;
  vertical-align: middle;
  width: 68%;
}

.wpp-list .item .url .txt {
  font-size: .9em;
  line-height: 1.5;
  white-space: normal;
}

@media (max-width: 768px) {
  .single_column {
    max-width: none;
    width: auto;
    margin: 1.4em 0 0 0;
  }
  .single_column .g_contents {
    float: none;
    width: auto;
    padding: 0 1.6em;
  }
  .single_column .g_contents .single_ttl .ttl {
    zoom: 64%;
  }
  .single_column .g_contents .single_ttl .tags {
    zoom: 80%;
  }
  .single_column .g_side {
    float: none;
    width: auto;
    padding: 0 1.6em;
  }
}

.single_pager {
  margin: 3em auto 0 auto;
  text-align: left;
  position: relative;
}

.single_pager li {
  display: inline-block;
  vertical-align: middle;
}

.single_pager li.p_left {
  float: left;
}

.single_pager li.p_right {
  float: right;
}

.single_pager li.archive {
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 30px;
  height: 30px;
}

.single_pager li.archive a {
  padding: 0;
  height: 100%;
}

.single_pager li.archive a span {
  position: relative;
}

.single_pager li.archive a span svg {
  position: absolute;
  right: 0;
  left: 0;
  width: 20px;
  margin: 0 auto;
}

.single_pager li.archive a span svg rect {
  fill: #999;
}

.single_pager li a {
  display: block;
  font-size: 1em;
  font-weight: bold;
  padding: .6em 1.2em;
  color: #999;
}

.single_pager li a span {
  display: block;
  height: 100%;
  width: 100%;
}

.post_contents {
  color: #565656;
}

.post_contents * {
  font-size: 1.05em;
  line-height: 2;
}

.post_contents h2 {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  color: #2d2d2d;
  background-color: #F3F3F3;
  border-radius: 3px;
  padding: 18px;
  margin: 16px 0;
}

.post_contents h3 {
  font-size: 16px;
  font-weight: bold;
  color: #2d2d2d;
  line-height: 1.6;
  padding: 14px 0;
  border-top: 1px solid #2d2d2d;
  border-bottom: 1px solid #2d2d2d;
  margin: 16px 0;
}

.post_contents h4 {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.6;
  padding-left: 20px;
  border-left: 1px solid #2d2d2d;
  color: #2d2d2d;
  margin: 16px 0;
}

.post_contents ul {
  padding: 1em 0;
}

.post_contents ul li {
  margin: 0 0 7px;
  line-height: 1.7;
  position: relative;
}

.post_contents p {
  margin: 1em 0 0 0;
}

.post_contents blockquote {
  background: #f9f9f9;
  margin: 2em 0;
  padding: 3em;
  position: relative;
  line-height: 1.8;
}

.post_contents blockquote:before, .post_contents blockquote:after {
  color: #ccc;
  font-size: 6em;
  line-height: 1;
  position: absolute;
  height: 46px;
}

.post_contents blockquote:before {
  content: '“';
  top: 0;
  left: 20px;
}

.post_contents blockquote:after {
  content: '”';
  bottom: 6px;
  right: 20px;
}

.post_contents a {
  color: #008FDE;
}

.post_contents a img:hover {
  opacity: .6;
}

.post_contents img {
  display: inline-block;
  vertical-align: top;
  margin: 2em 0 1em;
}

.page_nav {
  max-width: 1280px;
  width: 100%;
  padding: 0 1.6em;
  margin: 0 auto;
  position: absolute;
  top: 0;
  z-index: 10;
  right: 0;
  left: 0;
  text-align: right;
}

.page_nav.company ul {
  padding: 1em 0;
}

.page_nav.company ul li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 1em;
  white-space: nowrap;
}

.page_nav.company ul li a {
  font-size: 1em;
}

@media (max-width: 768px) {
  .page_nav {
    max-width: none;
    width: auto;
    padding: 1em 1em;
    margin: 0 auto;
    position: relative;
    top: 0;
    z-index: 1;
    right: 0;
    left: 0;
    text-align: center;
  }
  .page_nav.company ul {
    padding: 0;
  }
  .page_nav.company ul li {
    display: inline-block;
    vertical-align: middle;
    margin: 0 .8em;
    zoom: 80%;
  }
}

#company .sub_visual {
  background: url(../img/company/visual_1.jpg) no-repeat center center;
  background-size: cover;
}

#company .sub_visual .visual_ttl {
  color: #fff;
}

#company .inner .title_wrap.small {
  zoom: 80%;
}

.section_vision {
  background: #fff url(../img/bg/bg-map_1.png) no-repeat center center;
  padding: 10em 0;
  position: relative;
}

.section_vision .inner {
  max-width: 760px;
  width: 100%;
  margin: 0 auto;
}

.section_vision .inner .sub_title {
  margin: 1em 0 0 0;
  font-size: 2em;
  line-height: 1.6;
}

.section_vision .inner .sub_txt {
  margin: 1.6em 0 0 0;
  font-size: 1.1em;
  line-height: 2.4;
}

.section_vision .inner .company_president {
  margin: 2em 0 0 0;
  text-align: right;
}

.section_vision .inner .company_president img {
  max-width: 180px;
}

@media (max-width: 768px) {
  .section_vision {
    background-position: center top;
    padding: 4em 1.6em;
  }
  .section_vision .inner .sub_title {
    zoom: 60%;
  }
  .section_vision .inner .sub_title br {
    display: none;
  }
  .section_vision .inner .sub_txt {
    margin-top: 1em;
    zoom: 90%;
    line-height: 1.8;
    text-align: justify;
  }
  .section_vision .inner .company_president {
    zoom: 80%;
  }
}

.section_bnusiness {
  padding: 0 0 10em 0;
  background: #fbfbfb;
}

.section_bnusiness .visual_img {
  background: #fff url(../img/company/visual_2.jpg) no-repeat center center;
  background-size: 100%;
  height: 260px;
}

.section_bnusiness .inner {
  padding: 6em 0 0 0;
}

.section_bnusiness .inner .txt_wrap {
  max-width: 840px;
  width: 100%;
  margin: 2em auto 0 auto;
}

.section_bnusiness .inner .txt_wrap .txt {
  font-size: 1.2em;
  line-height: 2.6;
}

@media (max-width: 768px) {
  .section_bnusiness {
    padding: 0 0 4em 0;
  }
  .section_bnusiness .visual_img {
    background-attachment: initial;
    height: 90px;
  }
  .section_bnusiness .inner {
    padding: 4em 1.6em 0 1.6em;
  }
  .section_bnusiness .inner .txt_wrap {
    padding: 0;
  }
  .section_bnusiness .inner .txt_wrap .txt {
    line-height: 2;
    font-size: 1.2em;
    text-align: justify;
  }
}

.section_team {
  padding: 10em 0;
}

.section_team .inner {
  max-width: 760px;
  width: 100%;
  margin: 0 auto;
}

.section_team .inner .img_block {
  margin: 3em 0 0 0;
  padding: 0 30px;
}

.section_team .inner .img_block p {
  margin: 2em 0 0 0;
  font-size: 1.1em;
  font-weight: bold;
  line-height: 2.4;
}

.section_team .inner .team_wrap > .list {
  padding: 2em 0 0 0;
}

.section_team .inner .team_wrap > .list li {
  max-width: 700px;
  width: 100%;
  margin: 3em auto 0 auto;
  text-align: left;
  display: table;
  white-space: nowrap;
  padding: 0 0 3em 0;
  border-bottom: 1px solid #eee;
}

.section_team .inner .team_wrap > .list li .img {
  display: inline-block;
  vertical-align: top;
  width: 120px;
  height: 140px;
  background: #eee;
  overflow: hidden;
}

.section_team .inner .team_wrap > .list li .txt {
  display: inline-block;
  vertical-align: top;
  max-width: 580px;
  width: 100%;
  padding: 0 0 0 3em;
  white-space: normal;
}

.section_team .inner .team_wrap > .list li .txt .name span {
  display: block;
}

.section_team .inner .team_wrap > .list li .txt .name .job_title {
  font-size: 1.1em;
}

.section_team .inner .team_wrap > .list li .txt .name .name_jp {
  font-size: 1.7em;
}

.section_team .inner .team_wrap > .list li .txt .name .name_en {
  font-size: .9em;
}

.section_team .inner .team_wrap > .list li .txt .description {
  margin: .4em 0 0 0;
  font-size: .9em;
  line-height: 1.8;
  white-space: normal;
}

@media (max-width: 768px) {
  .section_team {
    padding: 4em 0 0 0;
  }
  .section_team .inner .img_block {
    margin-top: 2em;
    padding: 0 1.6em;
  }
  .section_team .inner .img_block p {
    line-height: 1.8;
    text-align: justify;
    font-size: .9em;
    margin: 1.2em 0 0 0;
  }
  .section_team .inner .team_wrap > .list li {
    padding: 1.6em;
    margin-top: 0;
  }
  .section_team .inner .team_wrap > .list li .img {
    zoom: 70%;
  }
  .section_team .inner .team_wrap > .list li .txt {
    padding: 0 0 0 1.6em;
    max-width: 70%;
  }
  .section_team .inner .team_wrap > .list li .txt .name {
    zoom: 80%;
  }
  .section_team .inner .team_wrap > .list li .txt .description {
    line-height: 1.6;
    zoom: 90%;
  }
}

#company .data_list dl {
  margin: 1.6em 0 0 0;
}

#company .data_list dl dt {
  font-size: 1.1em;
  float: left;
  width: 140px;
}

#company .data_list dl dd {
  font-size: 1em;
  line-height: 1.8;
  margin: 0 0 0 160px;
}

#company .data_list dl dd .post_edit {
  margin: 2em 0 0 0;
}

#company .data_list dl dd .post_edit iframe {
  width: 100%;
  max-height: 200px;
}

#company .data_list dl dd .btn {
  text-align: right;
}

#company .data_list dl dd .btn .google_btn {
  display: inline-block;
  vertical-align: middle;
  background: #a4afb7;
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  text-align: center;
  padding: .8em 3em;
}

.section_company {
  padding: 10em 0;
  background: #fbfbfb;
}

.section_company .inner .company_block {
  max-width: 700px;
  width: 100%;
  margin: 6em auto 0 auto;
  text-align: left;
}

.section_company .inner .company_block .group_company {
  margin: 8em 0 0 0;
}

.section_company .inner .company_block .group_company .group_ttl {
  font-size: 1.5em;
}

.section_company .inner .company_block .group_company > .group_list {
  padding: 2em 0 0 0;
}

.section_company .inner .company_block .group_company > .group_list li {
  margin: 3em 0 0 0;
  padding: 0 0 3em 0;
  border-bottom: 1px solid #eee;
}

.section_company .inner .company_block .group_company > .group_list li .cmpany_info {
  max-width: 300px;
  width: 100%;
  float: left;
}

.section_company .inner .company_block .group_company > .group_list li .cmpany_info h4 {
  font-size: 1em;
}

.section_company .inner .company_block .group_company > .group_list li .cmpany_info p {
  font-size: .9em;
  line-height: 2;
  padding: .8em 0 1.4em 0;
}

.section_company .inner .company_block .group_company > .group_list li .cmpany_info .url {
  font-size: .9em;
}

.section_company .inner .company_block .group_company > .group_list li .cmpany_img {
  float: right;
}

@media (max-width: 768px) {
  #company .data_list dl {
    margin-top: 1em;
  }
  #company .data_list dl:first-child {
    margin-top: 0;
  }
  #company .data_list dl dt {
    font-weight: bold;
    float: none;
    width: auto;
  }
  #company .data_list dl dd {
    margin: 0;
    font-size: 90%;
  }
  .section_company {
    padding: 4em 0;
  }
  .section_company .inner .company_block {
    margin: 3em auto 0 auto;
    padding: 0 1.6em;
  }
  .section_company .inner .company_block .group_company {
    margin: 4em auto 0 auto;
  }
  .section_company .inner .company_block .group_company .group_ttl {
    font-size: 1.2em;
  }
  .section_company .inner .company_block .group_company > .group_list {
    padding-top: 0;
  }
  .section_company .inner .company_block .group_company > .group_list li {
    margin: 0;
    padding: 2em 0;
  }
  .section_company .inner .company_block .group_company > .group_list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .section_company .inner .company_block .group_company > .group_list li .cmpany_info {
    margin-top: 1em;
    max-width: none;
    width: auto;
    float: none;
  }
  .section_company .inner .company_block .group_company > .group_list li .cmpany_info p {
    padding: .6em 0;
  }
  .section_company .inner .company_block .group_company > .group_list li .cmpany_img {
    text-align: center;
    float: none;
  }
  .section_company .inner .company_block .group_company > .group_list li .cmpany_img img {
    width: 100%;
  }
}

.section_locations {
  padding: 10em 0 0;
}

.section_locations .inner .items {
  max-width: 700px;
  width: 100%;
  margin: 5em auto 0 auto;
  text-align: left;
}

.section_locations .inner .items > .ttl {
  font-size: 1.3em;
  text-align: left;
  border-bottom: 1px solid #111;
  padding: 0 0 .6em 0;
}

.section_locations .inner .items > .list li {
  padding: 3em 0 2.6em 0;
  border-bottom: 1px solid #ddd;
}

.section_locations .inner .items > .list li h4 {
  font-size: 1.1em;
}

.section_locations .inner .items > .list li .access {
  margin: .6em 0 0 0;
  line-height: 1.8;
  color: #666;
  padding: 0 0 1em 0;
}

.section_locations .inner .items > .list li .post_edit iframe {
  width: 100%;
  height: 200px;
}

.section_locations .inner .items > .list li .btn {
  text-align: right;
  margin-top: .6em;
}

.section_locations .inner .items > .list li .btn a {
  display: inline-block;
  vertical-align: middle;
  background: #a4afb7;
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  text-align: center;
  padding: .8em 3em;
}

@media (max-width: 768px) {
  .section_locations {
    padding: 4em 0 0 0;
  }
  .section_locations .inner {
    padding: 0 1.6em;
  }
  .section_locations .inner .items {
    margin-top: 3em;
  }
  .section_locations .inner .items > .list li {
    zoom: 90%;
    padding: 2em 0 1em 0;
  }
  .section_locations .inner .items > .list li .btn {
    text-align: right;
  }
}

.contact_block {
  border: 1px solid #eeeeee;
  max-width: 540px;
  width: 100%;
  margin: 5em auto 0 auto;
}

.contact_block .inner {
  padding: 4.6em 0;
  text-align: center;
}

.contact_block .txt {
  font-size: 1.1em;
  line-height: 2;
  display: inline-block;
  vertical-align: middle;
  border-bottom: 1px solid #666;
}

.contact_block .tel {
  margin: 2.6em 0 0 0;
}

.contact_block .tel p {
  font-size: 1.2em;
  letter-spacing: 1px;
}

.contact_block .tel p small {
  font-size: 70%;
  padding: 0 1em 0 0;
}

.contact_block .mail {
  margin: 1.2em 0 0 0;
  font-size: 1em;
}

@media (max-width: 768px) {
  .g_form {
    margin-top: 1em !important;
  }
  .contact_block {
    max-width: none;
    width: auto;
    margin: 2em 1.6em 0 1.6em;
  }
  .contact_block .inner {
    padding: 2em 1em;
    text-align: center;
  }
  .contact_block .txt {
    font-size: .9em;
    line-height: 2.4;
  }
  .contact_block .tel {
    margin: 1.2em 0 0 0;
  }
  .contact_block .tel p {
    font-size: 1.2em;
    letter-spacing: 1px;
  }
  .contact_block .tel p small {
    font-size: 70%;
    padding: 0 0 0 0;
  }
  .contact_block .mail {
    margin: .6em 0 0 0;
    font-size: 1em;
  }
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #f6f6f6 inset;
}

.g_form {
  max-width: 680px;
  width: 100%;
  margin: 3em auto 0 auto;
  text-align: left;
}

.g_form dl {
  margin: 2.2em 0 0 0;
  display: table;
  width: 100%;
  white-space: nowrap;
}

.g_form dl:first-child {
  margin-top: 0;
  padding-top: 4em;
}

.g_form dl dt {
  position: relative;
  letter-spacing: 1px;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  font-size: 1em;
  width: 20%;
  padding: 0 0 0 .4em;
  margin: 0 6% 0 0;
}

.g_form dl dt .txt {
  display: block;
  zoom: 80%;
}

.g_form dl dt.required:before {
  position: absolute;
  top: 0;
  left: -1em;
  content: '*';
  display: inline-block;
  vertical-align: middle;
  font-size: 1.2em;
  margin: 0 .3em;
  color: #ce0f0f;
}

.g_form dl dd {
  width: 68%;
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 0;
  white-space: normal;
}

.g_form dl dd textarea,
.g_form dl dd input[type^="file"],
.g_form dl dd input[type^="tel"],
.g_form dl dd input[type^="email"],
.g_form dl dd input[type^="text"] {
  background: #f6f6f6;
  border: none;
  width: 100%;
  padding: .8em 1em;
  display: block;
  font-size: 1.2em;
  border: 1px solid #f6f6f6;
  border-radius: 2px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.g_form dl dd textarea:focus,
.g_form dl dd input[type^="file"]:focus,
.g_form dl dd input[type^="tel"]:focus,
.g_form dl dd input[type^="email"]:focus,
.g_form dl dd input[type^="text"]:focus {
  outline: none;
  border: 1px solid #00aae4;
}

.g_form dl dd .error {
  display: block;
  color: #de3431;
  font-weight: bold;
  margin-top: .3em;
  font-size: 1em;
}

.g_form .form_btn {
  text-align: left;
  display: table;
  margin-left: 26%;
}

.g_form .form_btn li {
  display: inline-block;
  vertical-align: top;
  margin: 2.6em 0 0 0;
}

.g_form .form_btn li input {
  outline: none;
  background: none;
  border: 1px solid transparent;
  cursor: pointer;
  letter-spacing: 1px;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  border-radius: 2px;
  font-weight: bold;
  padding: 0 3em;
}

.g_form .form_btn li input:hover {
  opacity: .6;
}

.g_form .form_btn li.back input {
  background: #ccc;
  color: #fff;
  font-size: 1.1em;
  display: block;
  width: 100%;
  min-width: 130px;
  line-height: 42px;
}

.g_form .form_btn li.submit input {
  background: #00aae4;
  color: #fff;
  font-size: 1.1em;
  display: block;
  width: 100%;
  min-width: 130px;
  line-height: 42px;
}

.checkbox dd span {
  margin: 1em 0 0 0 !important;
}

.checkbox dd span.mwform-checkbox-field {
  display: block;
}

.checkbox dd span label {
  position: relative;
  cursor: pointer;
}

.checkbox input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  border: none;
  background-color: #eee;
  display: inline-block;
  vertical-align: middle;
  width: 26px;
  height: 26px;
  border-radius: 2px;
  margin: 0 8px 2px 0;
  outline: none;
  cursor: pointer;
}

.checkbox input[type=checkbox]:checked {
  border-color: #72838f;
}

.checkbox input[type=checkbox]:checked:focus {
  outline: none;
}

.checkbox input[type=checkbox]:checked:after {
  position: absolute;
  top: 3px;
  left: 5px;
  display: block;
  content: '';
  width: 12px;
  height: 6px;
  border-left: 3px solid #72838f;
  border-bottom: 3px solid #72838f;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.mw_wp_form_preview .form_btn li.back {
  margin-right: 8px;
}

.mw_wp_form_confirm dl dt .txt {
  display: none;
}

@media (max-width: 768px) {
  .g_form dl {
    display: block;
    width: auto;
    padding: 0 1.6em;
    margin-top: 1em;
  }
  .g_form dl:first-child {
    padding-top: 1.6em;
  }
  .g_form dl dt {
    display: block;
    text-align: left;
    width: auto;
    margin: 0;
    zoom: 90%;
  }
  .g_form dl dd {
    display: block;
    text-align: left;
    width: auto;
    margin: .2em 0 0 0;
  }
  .g_form dl dd textarea,
  .g_form dl dd input[type^="file"],
  .g_form dl dd input[type^="tel"],
  .g_form dl dd input[type^="email"],
  .g_form dl dd input[type^="text"] {
    font-size: 16px;
    padding: .4em 1em;
  }
  .g_form .form_btn {
    width: 100%;
    margin: 0;
    text-align: center;
    padding: 0 1em;
  }
  .g_form .form_btn li {
    padding: 0 .4em;
  }
  .mw_wp_form_confirm .g_form dl {
    padding: 1em 1.6em;
    margin: 0;
    border-bottom: 1px solid #eee;
  }
}

.page_complete {
  text-align: center;
  padding: 4em 1.6em 0 1.6em;
}

.page_complete .top_btn {
  margin: 3em auto 0 auto;
  text-align: center;
}

.page_complete .top_btn a {
  background: #00aae4;
  color: #fff;
  font-weight: bold;
  display: inline-block;
  vertical-align: top;
  padding: 1.1em 3em;
  border-radius: 3px;
  font-size: 1.1em;
}

.poricy_wrap {
  max-width: 700px;
  width: 100%;
  margin: 5em auto 0 auto;
  line-height: 1.7;
  text-align: justify;
}

.poricy_wrap .txt_first {
  font-size: 1em;
  border-bottom: 1px solid #eee;
  padding: 0 0 2em 0;
  color: #555;
}

.poricy_wrap dl {
  margin: 2em 0 0 0;
}

.poricy_wrap dl dt {
  font-weight: bold;
}

.poricy_wrap dl dd {
  margin: .4em 0 0 0;
  font-size: .9em;
  color: #555;
}

.poricy_wrap .company_data {
  margin: 3em 0 0 0;
  border-top: 1px solid #eee;
  padding: 2em 0 0 0;
}

.poricy_wrap .company_data > h2 {
  font-size: 120%;
}

.poricy_wrap .company_data .txt1 {
  margin: .6em 0 0 0;
}

.poricy_wrap .company_data .txt2 {
  margin: .6em 0 0 0;
}

@media (max-width: 768px) {
  .poricy_wrap {
    margin: 3em auto 0 auto;
    padding: 0 1.6em;
  }
  .poricy_wrap .company_data .txt1 {
    color: #555;
  }
  .poricy_wrap .company_data .txt2 {
    color: #555;
  }
}

.page404.bg_dod {
  background: url("../img/bg/bg-dod_1.png") repeat left center;
}

.page404 + .g_footer {
  margin-top: 0;
}

.page404 .inner {
  background: url("../img/drone/drone_1.svg") no-repeat right 40px;
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  padding: 12em 0;
}

.page404 .inner .btn {
  margin: 3em auto 0 auto;
}

.page404 .inner .btn a {
  display: inline-block;
  vertical-align: middle;
  background: #00aae4;
  font-size: 1.1em;
  padding: 1em 3em;
  color: #fff;
  border-radius: 50em;
  font-weight: bold;
}

@media (max-width: 768px) {
  .page404 .inner {
    padding: 4em 1.6em;
  }
}

.utm_flow_list .item {
  max-width: 1200px;
  width: 100%;
  margin: 6em auto 0 auto;
  position: relative;
  padding: 6em 0 0 0;
}

.utm_flow_list .item > .bg {
  background: #f9f9f9;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 70%;
  z-index: 0;
}

.utm_flow_list .item_inner {
  white-space: nowrap;
  position: relative;
  z-index: 1;
}

.utm_flow_list .item_inner.item_right .thumb {
  position: relative;
  margin: 0;
  right: 8em;
  float: right;
}

.utm_flow_list .item_inner.item_right .text {
  position: relative;
  top: 6em;
}

.utm_flow_list .item_inner .thumb {
  width: 600px;
  height: 350px;
  background: url("../img/utm/mock_mac.png") no-repeat center top;
  background-size: cover;
  display: inline-block;
  vertical-align: middle;
  margin: 0 4em 0 0;
}

.utm_flow_list .item_inner .thumb .bg_mac {
  overflow: hidden;
  width: 458px;
  margin: 0 auto;
  position: relative;
  right: 2px;
  top: 18px;
}

.utm_flow_list .item_inner .text {
  max-width: 380px;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}

.utm_flow_list .item_inner .text > dl dt {
  font-size: 2em;
  font-weight: bold;
  position: relative;
  display: inline-block;
  vertical-align: top;
  color: #111;
}

.utm_flow_list .item_inner .text > dl dt:before, .utm_flow_list .item_inner .text > dl dt:after {
  content: '';
  display: block;
  width: 100%;
  position: absolute;
  height: 2px;
  background: #111;
  bottom: -2px;
}

.utm_flow_list .item_inner .text > dl dt:after {
  bottom: -6px;
}

.utm_flow_list .item_inner .text > dl dd {
  margin: 3.4em 0 0 0;
}

.utm_flow_list .item_inner .text > dl dd p {
  clear: both;
  margin: 1.4em 0 0 0;
}

.utm_flow_list .item_inner .text > dl dd p .number {
  display: inline-block;
  vertical-align: top;
  border: 1px solid #111;
  font-size: .8em;
  width: 22px;
  height: 22px;
  text-align: center;
  line-height: 20px;
  border-radius: 50em;
  font-style: normal;
  float: left;
}

.utm_flow_list .item_inner .text > dl dd p span {
  display: inline-block;
  vertical-align: top;
  margin: 0 0 0 1.2em;
  font-size: 1.1em;
}

.utm_flow_list .item_inner .utm_icon {
  background: #111;
  width: 80px;
  height: 80px;
  text-align: center;
  line-height: 76px;
  color: #fff;
  font-size: 1.1em;
  border-radius: 50em;
  position: absolute;
  top: -3em;
  right: 3em;
}

@media (max-width: 768px) {
  .utm_flow_list {
    padding-top: 1em;
  }
  .utm_flow_list .item {
    padding: 0;
    margin: 2em auto 0 auto;
    max-width: none;
  }
  .utm_flow_list .item > .bg {
    display: none;
  }
  .utm_flow_list .item_inner {
    white-space: normal;
  }
  .utm_flow_list .item_inner.item_right .thumb {
    margin: 0;
    right: 0;
    float: none;
  }
  .utm_flow_list .item_inner.item_right .text {
    top: 0;
  }
  .utm_flow_list .item_inner .thumb {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
    background: none;
  }
  .utm_flow_list .item_inner .thumb .bg_mac {
    width: 100%;
    right: 0;
    top: 0;
  }
  .utm_flow_list .item_inner .text {
    max-width: none;
    display: block;
    width: auto;
    padding: 2em 1.6em;
    zoom: 80%;
  }
  .utm_flow_list .item_inner .text > dl dd {
    margin-top: 2.6em;
  }
  .utm_flow_list .item_inner .text > dl dd p {
    margin-top: 1em;
    white-space: nowrap;
  }
  .utm_flow_list .item_inner .text > dl dd p span {
    margin: 0 0 0 1em;
    font-size: 1em;
  }
  .utm_flow_list .item_inner .utm_icon {
    top: 2em;
    right: 2em;
    zoom: 80%;
  }
}

.utm_banner {
  max-width: 1200px;
  width: 100%;
  margin: 8em auto 0 auto;
  padding: 0 0 6em 0;
}

.utm_banner > a {
  position: relative;
  display: block;
  background: #00aae4;
  padding: 8px;
}

.utm_banner > a:after {
  content: "\e04b";
  font-size: 4em;
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -30px;
  width: 60px;
  height: 60px;
  line-height: 60px;
  color: #fff;
}

.utm_banner > a .inner {
  border: 1px solid #fff;
  text-align: left;
}

.utm_banner > a .thumb {
  max-width: 360px;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: 70px;
  margin: 0 6em;
}

.utm_banner > a .thumb .mock {
  display: block;
}

.utm_banner > a .thumb .utm_icon {
  position: absolute;
  top: -40px;
  right: 0;
  background: #fff;
  width: 100px;
  height: 100px;
  border-radius: 50em;
  text-align: center;
  color: #00aae4;
  font-weight: bold;
  letter-spacing: 0;
}

.utm_banner > a .thumb .utm_icon .small {
  display: block;
  position: relative;
  font-size: 1em;
  line-height: 1;
  margin: 30px 0 0 0;
}

.utm_banner > a .thumb .utm_icon .big {
  display: block;
  font-size: 1.8em;
  line-height: 1;
  margin: 6px 0 0 0;
}

.utm_banner > a .text {
  max-width: 440px;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  color: #fff;
  position: relative;
  top: 1em;
}

.utm_banner > a .text > p {
  margin: 1.2em 0 0 0;
  font-size: 1.2em;
  line-height: 1.8;
  font-weight: bold;
  letter-spacing: 1px;
}

@media (max-width: 768px) {
  .utm_banner {
    margin-top: 4em;
    padding-bottom: 0;
  }
  .utm_banner > a:after {
    bottom: 16%;
    top: inherit;
    right: 10px;
    zoom: 80%;
  }
  .utm_banner > a .thumb {
    display: block;
    margin: 0 auto;
    top: 40px;
  }
  .utm_banner > a .text {
    display: block;
    max-width: none;
    width: auto;
    top: 0;
    padding: 7em 3.6em 2em 1.6em;
    zoom: 80%;
  }
}

#utm .bottom_contact {
  margin-top: 6em;
}

#utm .bottom_contact + .g_footer {
  margin-top: 0;
}

@media (max-width: 768px) {
  #utm .bottom_contact {
    margin-top: 0;
  }
}

.mapper {
  position: relative;
}

.mapper .visual .title_wrap .title {
  padding: 5em 0 3.4em;
  color: #fff;
}

.mapper .visual .visual_pc {
  position: relative;
  display: inline-block;
  vertical-align: top;
}

.mapper .visual .visual_pc .pc {
  position: relative;
  right: 40px;
  zoom: 86%;
}

.mapper .visual .visual_pc .label {
  background: #00aae4;
  position: absolute;
  width: 120px;
  height: 120px;
  top: 2em;
  right: 0;
  border-radius: 50em;
  color: #fff;
  font-size: 1.3em;
}

.mapper .visual .visual_pc .label span {
  position: relative;
  top: 30px;
  font-weight: bold;
}

.mapper .visual_bg {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  height: 460px;
  z-index: -1;
  overflow: hidden;
}

.mapper .visual_bg .img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  background: #323a45;
}

.mapper .visual_bottom_text {
  margin-top: 3.2em;
  margin-bottom: 3.2em;
}

.mapper .visual_bottom_text .text {
  font-size: 1.4em;
  font-weight: bold;
  line-height: 2.2;
}

.mapper .visual_bottom_text .btn {
  display: inline-block;
  vertical-align: middle;
  margin: 2.4em auto 0 auto;
}

.mapper .visual_bottom_text .btn a {
  display: block;
  font-size: 1.3em;
  padding: .9em 4em;
  text-decoration: none;
  background: #00aae4;
  color: #fff;
  border-radius: 3px;
  font-weight: bold;
}

@media (max-width: 768px) {
  .mapper .visual .title_wrap .title {
    padding: 3.4em 0 2.4em;
    color: #fff;
  }
  .mapper .visual .visual_pc {
    position: relative;
    display: block;
    padding: 0 1.6em;
  }
  .mapper .visual .visual_pc .pc {
    position: relative;
    right: 10px;
  }
  .mapper .visual .visual_pc .label {
    transform: scale(0.5, 0.5);
    top: -40px;
    right: -20px;
  }
  .mapper .visual_bg {
    height: 80%;
    z-index: -1;
    background: none;
  }
  .mapper .visual_bg .img {
    max-width: none;
    width: 680px;
    left: -90%;
    right: 0;
    margin: 0 0 0 auto;
  }
  .mapper .visual_bottom_text {
    margin-top: 2em;
    padding: 0 1.6em;
  }
  .mapper .visual_bottom_text .text {
    font-size: 1.05em;
    font-weight: bold;
    line-height: 2.4;
  }
  .mapper .visual_bottom_text .text br {
    display: none;
  }
  .mapper .visual_bottom_text .btn {
    margin-top: 2em;
  }
  .mapper .visual_bottom_text .btn a {
    font-size: 1.1em;
    padding: .9em 4em;
  }
}

.mapper .s2_section {
  background: #f9f9f9;
  padding: 8em 0;
  margin: 6em auto 0 auto;
}

.mapper .s2_section .inner .item_list {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

.mapper .s2_section .inner .item_list li {
  max-width: 300px;
  margin: 3em 1.2em 0 1.2em;
}

.mapper .s2_section .inner .item_list li a {
  display: block;
  text-decoration: none;
}

.mapper .s2_section .inner .item_list li a.not_link {
  cursor: default;
  pointer-events: none;
}

.mapper .s2_section .inner .item_list li a .figure .figcaption {
  font-size: 1.4em;
  font-weight: bold;
  display: block;
  margin: .8em 0 0 0;
}

@media (max-width: 768px) {
  .mapper .s2_section {
    padding: 4em 0;
    margin: 4em auto 0 auto;
  }
  .mapper .s2_section .inner .item_list {
    display: table;
    width: 100%;
    margin: 1em auto 0 auto;
  }
  .mapper .s2_section .inner .item_list li {
    max-width: 44%;
    display: inline-block;
    vertical-align: top;
    margin: 1.6em 0.6em 0 0.6em;
  }
  .mapper .s2_section .inner .item_list li a .figure .figcaption {
    font-size: 1.1em;
    margin: .6em 0 0 0;
  }
}

.mapper .s3_section {
  background: #fff;
  padding: 8em 0 10em;
}

.mapper .s3_section .item_list {
  margin: 2em 0 0 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

.mapper .s3_section .item_list li {
  width: 220px;
  padding: 4.8em 0;
  background: #f9f9f9;
  margin: 3em .4em 0 .4em;
  text-align: center;
}

.mapper .s3_section .item_list li img {
  max-width: 60px;
  margin: 0 auto;
}

.mapper .s3_section .item_list li p {
  max-width: 80%;
  display: block;
  margin: 1em auto 0 auto;
  font-weight: bold;
  font-size: 1.1em;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .mapper .s3_section {
    padding: 4em 0;
  }
  .mapper .s3_section .title_wrap .txt_wrap .txt br {
    display: none;
  }
  .mapper .s3_section .item_list {
    display: table;
    width: 100%;
    margin: 2em auto 0 auto;
  }
  .mapper .s3_section .item_list li {
    width: 46%;
    display: inline-block;
    vertical-align: top;
    padding: 2.2em 0 1.8em;
    margin: .8em .4em 0 .4em;
  }
  .mapper .s3_section .item_list li img {
    max-width: 48px;
    max-height: 34px !important;
  }
  .mapper .s3_section .item_list li p {
    margin: 1em auto 0 auto;
    font-size: 1em;
    line-height: 1.4;
  }
}

.mapper .s4_section {
  background: #f9f9f9;
  padding: 8em 0 10em;
}

.mapper .s4_section .inner .item_list .items {
  position: relative;
  display: block;
  max-width: 1200px;
  width: 100%;
  padding: 9em 0;
  margin: 11em auto 0 auto;
  background: #fff;
  text-align: left;
  box-shadow: 0px 2px 5.64px 0.36px rgba(0, 0, 0, 0.1);
}

.mapper .s4_section .inner .item_list .items:first-child {
  margin-top: 6em;
}

.mapper .s4_section .inner .item_list .items .number {
  position: absolute;
  top: -20px;
  left: 40px;
}

.mapper .s4_section .inner .item_list .items.items_left .thumb_block {
  position: absolute;
  left: initial;
  right: 1em;
}

.mapper .s4_section .inner .item_list .items.items_left .info_block {
  margin-left: 8em;
}

.mapper .s4_section .inner .item_list .items .thumb_block {
  display: inline-block;
  vertical-align: middle;
  z-index: 10;
  max-width: 660px;
  width: 100%;
  position: absolute;
  top: 6em;
  left: 3em;
}

.mapper .s4_section .inner .item_list .items .info_block {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  z-index: 10;
  max-width: 380px;
  width: 100%;
  text-align: left;
  margin: 0px 0 0 57em;
}

.mapper .s4_section .inner .item_list .items .info_block h3 {
  font-size: 2.4em;
  font-weight: bold;
  line-height: 1.4;
}

.mapper .s4_section .inner .item_list .items .info_block p {
  margin-top: 1em;
  font-size: 1.1em;
  line-height: 2;
}

.mapper .s4_section .inner .item_list .items .info_block p a {
  color: #00aae4;
  font-weight: bold;
  text-decoration: underline;
}

.mapper .s4_section .inner .item_list .items .label {
  background: #262626;
  width: 120px;
  height: 120px;
  border-radius: 50em;
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  position: absolute;
  top: -3em;
  right: -3em;
  display: table;
  text-align: center;
}

.mapper .s4_section .inner .item_list .items .label span {
  display: table-cell;
  vertical-align: middle;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .mapper .s4_section {
    padding: 4em 0;
  }
  .mapper .s4_section .inner .item_list .items {
    max-width: none;
    width: auto;
    padding: 4em 0;
    margin: 4em auto 0 auto;
  }
  .mapper .s4_section .inner .item_list .items:first-child {
    margin-top: 4em;
  }
  .mapper .s4_section .inner .item_list .items .number {
    display: none;
  }
  .mapper .s4_section .inner .item_list .items.items_left .thumb_block {
    position: relative;
    left: initial;
    right: initial;
  }
  .mapper .s4_section .inner .item_list .items.items_left .info_block {
    margin-left: 0;
  }
  .mapper .s4_section .inner .item_list .items .thumb_block {
    display: block;
    z-index: 10;
    max-width: none;
    width: auto;
    position: relative;
    padding: 0 10px;
    top: 0;
    left: 0;
  }
  .mapper .s4_section .inner .item_list .items .info_block {
    display: block;
    z-index: 10;
    max-width: none;
    width: auto;
    text-align: left;
    margin: 0;
    padding: 2.2em 1.6em 0 1.6em;
  }
  .mapper .s4_section .inner .item_list .items .info_block h3 {
    font-size: 1.3em;
  }
  .mapper .s4_section .inner .item_list .items .info_block p {
    margin-top: .6em;
    font-size: 1em;
    line-height: 1.8;
  }
  .mapper .s4_section .inner .item_list .items .label {
    transform: scale(0.7, 0.7);
    right: -1em;
    z-index: 10;
  }
}

.terra_mapper_banner {
  padding: 0;
  margin: 0 auto;
}

.terra_mapper_banner a {
  display: block;
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  height: 120px;
  text-align: left;
  background: #00aae4;
  border: 2px solid #00aae4;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.terra_mapper_banner a:hover {
  background: #00aae4;
  border-color: #00aae4;
}

.terra_mapper_banner a:hover .border {
  background: #00aae4;
}

.terra_mapper_banner a .icon-arrows-right {
  position: absolute;
  right: 2em;
  color: #fff;
  font-size: 30px;
  line-height: 1;
  top: 50%;
  margin-top: -15px;
}

.terra_mapper_banner a .logo {
  display: table;
  float: left;
  background: #fff;
  width: 38%;
  height: 100%;
  text-align: left;
}

.terra_mapper_banner a .logo svg {
  display: table-cell;
  vertical-align: middle;
  margin: 0 auto;
  position: relative;
  top: 3.8em;
  right: 3em;
}

.terra_mapper_banner a .border {
  position: absolute;
  background: #00aae4;
  height: 100%;
  width: 240px;
  left: 28%;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -webkit-transform: rotate(-66deg);
  -moz-transform: rotate(-66deg);
  -ms-transform: rotate(-66deg);
  transform: rotate(-66deg);
}

.terra_mapper_banner a .txt {
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  position: relative;
  padding-right: 100px;
  top: 34px;
  text-indent: 2em;
  white-space: nowrap;
}

.terra_mapper_banner a .txt .first {
  font-size: 1.8em;
  padding-right: .4em;
}

.terra_mapper_banner a .txt .second {
  font-size: 1.1em;
}

@media (max-width: 768px) {
  .terra_mapper_banner {
    padding: 4em 1.6em 0 1.6em;
    margin: 0 auto;
  }
  .terra_mapper_banner a {
    padding: 0;
    height: auto;
    background: #00aae4;
  }
  .terra_mapper_banner a .icon-arrows-right {
    position: absolute;
    right: 2em;
    color: #fff;
    font-size: 30px;
    line-height: 1;
    top: 50%;
    margin-top: -15px;
  }
  .terra_mapper_banner a .logo {
    display: none;
    float: none;
    background: #fff;
    width: auto;
    height: 100%;
    padding: 2em 0;
  }
  .terra_mapper_banner a .logo svg {
    display: block;
    margin: 0 auto;
    position: relative;
    top: 0;
    right: 0;
  }
  .terra_mapper_banner a .border {
    display: none;
  }
  .terra_mapper_banner a .txt {
    color: #fff;
    font-size: 1.2em;
    font-weight: bold;
    position: relative;
    padding-right: 0;
    top: 0;
    text-indent: 0;
    white-space: normal;
    padding: 2em 1.6em;
    text-align: center;
  }
  .terra_mapper_banner a .txt .first {
    display: block;
    padding-right: 0;
    font-size: 1.5em;
  }
  .terra_mapper_banner a .txt .second {
    font-size: 1em;
  }
  .terra_mapper_banner a .icon-arrows-right {
    display: none;
  }
}

.industry_top_wrap .visual {
  margin: 5em auto 0 auto;
}

.industry_top_wrap .industry_list li {
  max-width: 1080px;
  width: 100%;
  margin: 4em auto 0 auto;
  position: relative;
}

.industry_top_wrap .industry_list li .bg {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #f9f9f9;
  overflow: hidden;
}

.industry_top_wrap .industry_list li .bg:before {
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #00aae4;
}

.industry_top_wrap .industry_list li:hover .bg:before {
  top: 0;
}

.industry_top_wrap .industry_list li:hover * {
  color: #fff;
}

.industry_top_wrap .industry_list li:first-child {
  margin-top: -8em;
}

.industry_top_wrap .industry_list li a {
  display: block;
  padding: 4em;
  position: relative;
  text-align: left;
}

.industry_top_wrap .industry_list li a:after {
  content: "\e04b";
  font-size: 4em;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -30px;
  width: 60px;
  height: 60px;
  line-height: 60px;
}

.industry_top_wrap .industry_list li a .thumb {
  display: inline-block;
  vertical-align: middle;
  max-width: 300px;
  width: 100%;
  margin: 0 40px 0 0;
}

.industry_top_wrap .industry_list li a .text {
  display: inline-block;
  vertical-align: middle;
  max-width: 570px;
  width: 100%;
  text-align: justify;
}

.industry_top_wrap .industry_list li a .text > h2 {
  font-size: 1.8em;
  font-weight: bold;
}

.industry_top_wrap .industry_list li a .text > p {
  margin: .6em 0 0 0;
  font-size: 1em;
  line-height: 2em;
}

.industry_top_wrap .industry_list li a .more {
  position: absolute;
  top: -30px;
  right: -30px;
  background: #00aae4;
  color: #fff;
  width: 80px;
  height: 80px;
  border-radius: 50em;
  text-align: center;
  font-weight: bold;
  padding: 20px 0 0 0;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .industry_top_wrap {
    margin: 2em auto 0 auto;
  }
  .industry_top_wrap .visual {
    display: none;
  }
  .industry_top_wrap .industry_list li {
    margin-top: 0;
  }
  .industry_top_wrap .industry_list li:first-child {
    margin-top: 0;
  }
  .industry_top_wrap .industry_list li a {
    padding: 0;
  }
  .industry_top_wrap .industry_list li a:after {
    content: none;
    display: none;
  }
  .industry_top_wrap .industry_list li a .thumb {
    display: block;
    max-width: none;
    margin: 0;
  }
  .industry_top_wrap .industry_list li a .thumb img {
    width: 100%;
  }
  .industry_top_wrap .industry_list li a .text {
    display: block;
    max-width: none;
    width: auto;
    padding: 1.6em 1.6em 2em 1.6em;
    zoom: 80%;
    margin-top: 0;
    background: #eee;
    position: relative;
    z-index: 1;
  }
  .industry_top_wrap .industry_list li a .text > h2 {
    display: inline-block;
    vertical-align: top;
  }
  .industry_top_wrap .industry_list li a .more {
    right: 1em;
    top: 1em;
  }
  .industry_top_wrap .industry_list li:hover * {
    color: #333;
  }
}

.bg_w {
  background: white !important;
}

.bg_g {
  background: #f9f9f9 !important;
}

.border_bottom {
  border-bottom: 1px solid #eee;
}

.iframe_movie {
  padding: 6em 0 0 0;
}

.iframe_movie .video {
  padding: 4em 0 0 0;
  max-width: 100%;
}

.iframe_movie .movie_column {
  padding: 2em 0 0 0;
}

.iframe_movie .movie_column li {
  max-width: 460px;
  display: inline-block;
  vertical-align: top;
  margin: 2em 1.6em 0 1.6em;
}

.iframe_movie .movie_column li .movie {
  max-width: 100%;
}

.iframe_movie .movie_column li .movie_text {
  margin: 2em auto 0 auto;
}

.iframe_movie .movie_column li .movie_text h3 {
  font-size: 1.4em;
  line-height: 1.4;
}

.iframe_movie .movie_column li .movie_text p {
  margin: 1em auto 0 auto;
  font-size: 1em;
}

.industry_single .industry_single_nav {
  max-width: 1200px;
  width: 100%;
  margin: 2em auto 0 auto;
  text-align: right;
}

.industry_single .industry_single_nav ul {
  padding: 1em 0;
}

.industry_single .industry_single_nav ul li {
  display: inline-block;
  vertical-align: middle;
  border-left: 1px solid #ccc;
  line-height: 1;
  padding: 0 1.4em;
}

.industry_single .industry_single_nav ul li:first-child {
  border-left: none;
}

.industry_single .industry_single_nav ul li a {
  display: block;
  font-size: .9em;
}

@media (max-width: 768px) {
  .industry_single .industry_single_nav {
    margin-top: 1em;
  }
  .industry_single .industry_single_nav ul {
    text-align: center;
  }
  .industry_single .industry_single_nav ul li {
    padding: 0 .8em;
  }
}

#survey_photo .industry_list_nav li.survey_photo,
#survey_forest .industry_list_nav li.survey_forest,
#mine .industry_list_nav li.mine,
#inspection_bridge .industry_list_nav li.inspection_bridge,
#inspection_oil .industry_list_nav li.inspection_oil,
#inspection_infrastructure .industry_list_nav li.inspection_infrastructure {
  display: none;
}

.section_over {
  padding: 10em 0;
}

.section_over .inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.section_over .inner .block_contents {
  margin: 4em auto 0 auto;
}

.section_over .inner .block_contents .img {
  max-width: 448px;
  width: 100%;
  margin: 0 6em 0 0;
  display: inline-block;
  vertical-align: middle;
}

.section_over .inner .block_contents .text {
  max-width: 480px;
  width: 100%;
  text-align: justify;
  display: inline-block;
  vertical-align: middle;
}

.section_over .inner .block_contents .text h3 {
  font-size: 1.9em;
  line-height: 1.6;
}

.section_over .inner .block_contents .text p {
  margin: 1.6em 0 0 0;
  font-size: 1.1em;
  line-height: 2;
  color: #888;
}

@media (max-width: 768px) {
  .section_over {
    padding: 4em 0;
  }
  .section_over .inner .block_contents {
    margin-top: 2em;
  }
  .section_over .inner .block_contents .img {
    display: block;
    max-width: none;
    margin: 0;
  }
  .section_over .inner .block_contents .img img {
    height: auto;
  }
  .section_over .inner .block_contents .text {
    max-width: none;
    width: auto;
    display: block;
    padding: 0 1.6em;
    zoom: 80%;
  }
  .section_over .inner .block_contents .text h3 {
    margin-top: 1.4em;
    font-size: 1.4em;
    line-height: 1.4;
  }
  .section_over .inner .block_contents .text p {
    margin-top: 1em;
    font-size: 1em;
  }
}

.section_service {
  background: #f9f9f9;
  padding: 10em 0;
}

.section_service .inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.section_service .inner .block_contents .data_list {
  text-align: center;
  margin: 6em auto 0 auto;
}

.section_service .inner .block_contents .data_list li {
  max-width: 280px;
  width: 100%;
  display: inline-block;
  vertical-align: top;
}

.section_service .inner .block_contents .data_list li.center {
  margin-right: 8em;
  margin-left: 8em;
}

.section_service .inner .block_contents .data_list li .thumb img {
  border-radius: 50em;
}

.section_service .inner .block_contents .data_list li .text {
  margin: 2em 0 0 0;
}

.section_service .inner .block_contents .data_list li .text h3 {
  font-size: 1.2em;
  line-height: 1.5;
}

.section_service .inner .block_contents .data_list li .text p {
  margin: 1.6em 0 0 0;
  font-size: 1em;
  color: #666;
  text-align: justify;
  line-height: 1.8;
}

@media (max-width: 768px) {
  .section_service {
    padding: 4em 0;
  }
  .section_service .inner .block_contents .data_list {
    margin: 0 auto;
    padding: 0 1.6em;
  }
  .section_service .inner .block_contents .data_list li {
    display: block;
    max-width: none;
    width: auto;
    margin-top: 2em;
  }
  .section_service .inner .block_contents .data_list li.center {
    margin-right: 0;
    margin-left: 0;
  }
  .section_service .inner .block_contents .data_list li .thumb {
    height: 160px;
    overflow: hidden;
  }
  .section_service .inner .block_contents .data_list li .thumb img {
    width: 100%;
    border-radius: 0;
    position: relative;
    bottom: 20%;
  }
  .section_service .inner .block_contents .data_list li .text {
    margin-top: 1em;
  }
  .section_service .inner .block_contents .data_list li .text h3 {
    height: auto;
  }
  .section_service .inner .block_contents .data_list li .text p {
    margin: .6em 0 0 0;
    zoom: 90%;
  }
}

.section_flow {
  padding: 10em 0;
}

.section_flow .block_contents {
  margin: 2em auto 0 auto;
}

.section_flow .img_2column_text {
  margin-top: 4em;
}

.section_flow .img_2column {
  text-align: center;
}

.section_flow .img_2column .item {
  width: 48%;
  max-width: 600px;
  display: inline-block;
  vertical-align: top;
}

.section_flow .img_2column .item img {
  width: 100%;
}

.section_flow .flow_wrap {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.section_flow .flow_wrap .border {
  background: #f6f6f6;
  display: inline-block;
  vertical-align: top;
  width: 4px;
  height: 160px;
  position: absolute;
  left: 70px;
  top: 64%;
}

.section_flow .flow_wrap > .item {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding: 3em 0;
}

.section_flow .flow_wrap > .item:last-child {
  padding-bottom: 0;
}

.section_flow .flow_wrap > .item .first_block {
  display: table;
  width: 100%;
  white-space: nowrap;
  position: relative;
}

.section_flow .flow_wrap > .item .first_block .icon_block {
  background: #f6f6f6;
  width: 146px;
  height: 146px;
  text-align: center;
  font-weight: bold;
  border-radius: 50em;
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
}

.section_flow .flow_wrap > .item .first_block .icon_block .step {
  padding: 48px 0 0 0;
  font-size: 1.1em;
  display: block;
  line-height: 1;
}

.section_flow .flow_wrap > .item .first_block .icon_block .txt {
  margin: 8px 0 0 0;
  font-size: 1.8em;
  line-height: 1;
  display: block;
}

.section_flow .flow_wrap > .item .first_block .imgs {
  display: inline-block;
  vertical-align: middle;
  max-width: 700px;
  width: 100%;
  text-align: right;
}

.section_flow .flow_wrap > .item .first_block .imgs .thumb img {
  margin: 0 0 0 6px;
}

.section_flow .flow_wrap > .item .second_block {
  max-width: 600px;
  width: 100%;
  margin: 0 0 0 auto;
  padding: 2.4em 0 0 0;
  text-align: left;
}

.section_flow .flow_wrap > .item .second_block .ttl {
  font-size: 1.4em;
  line-height: 1.5;
}

.section_flow .flow_wrap > .item .second_block .txt {
  font-size: 1em;
  margin: .8em 0 0 0;
  color: #666;
}

.section_flow .flow_wrap.not_img > .item {
  padding: 2em 0;
}

.section_flow .flow_wrap.not_img > .item .first_block {
  text-align: left;
  float: left;
  width: auto;
}

.section_flow .flow_wrap.not_img > .item .second_block {
  padding: 0;
}

@media (max-width: 768px) {
  .section_flow {
    padding: 4em 0;
  }
  .section_flow .img_2column_text {
    margin-top: 2em;
    padding: 0 1.6em;
    text-align: left;
  }
  .section_flow .flow_wrap {
    margin: 3em auto 0 auto;
  }
  .section_flow .flow_wrap.not_img {
    margin-top: 0;
    padding: 0 1.6em;
  }
  .section_flow .flow_wrap.not_img > .item {
    margin: 0;
  }
  .section_flow .flow_wrap.not_img > .item .second_block {
    margin: 0;
  }
  .section_flow .flow_wrap .border {
    display: none;
  }
  .section_flow .flow_wrap > .item {
    padding: 0;
    margin: 4em 0 0 0;
  }
  .section_flow .flow_wrap > .item .first_block .icon_block {
    position: absolute;
    top: -2em;
    right: -2em;
    margin: 0;
    -webkit-transform: scale(0.5, 0.5);
    -moz-transform: scale(0.5, 0.5);
    -ms-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
  }
  .section_flow .flow_wrap > .item .first_block .imgs .thumb img {
    margin: 0;
    width: 50%;
  }
  .section_flow .flow_wrap > .item .second_block {
    margin: 2em auto 0 auto;
    padding: 0 1.6em;
    zoom: 80%;
  }
}

.section_case {
  background: #f9f9f9;
  padding: 10em 0;
}

.section_case .inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.section_case .inner .block_contents > .case_list li {
  max-width: 600px;
  width: 100%;
  margin: 4em auto 0 auto;
}

.section_case .inner .block_contents > .case_list li .title {
  margin: 2em auto 0 auto;
  font-size: 2.2em;
  line-height: 1.6;
}

.section_case .inner .block_contents > .case_list li .text {
  margin: 2em 0 0 0;
}

.section_case .inner .block_contents > .case_list li .text p {
  font-size: 1em;
  color: #666;
  line-height: 2.2;
}

@media (max-width: 768px) {
  .section_case {
    padding: 4em 0;
  }
  .section_case .inner .block_contents > .case_list li {
    margin-top: 3em;
    padding: 0 1.6em;
  }
  .section_case .inner .block_contents > .case_list li .title {
    margin-top: 1em;
    zoom: 60%;
  }
  .section_case .inner .block_contents > .case_list li .title br {
    display: none;
  }
  .section_case .inner .block_contents > .case_list li .text {
    margin-top: .6em;
  }
  .section_case .inner .block_contents > .case_list li .text p {
    font-size: .9em;
    text-align: justify;
  }
}

.industry_list_nav {
  padding: 10em 0;
}

.industry_list_nav > ul {
  max-width: 830px;
  width: 100%;
  margin: 0 auto;
  text-align: justify;
  margin-top: -5em;
}

.industry_list_nav > ul li {
  display: inline-block;
  vertical-align: top;
  max-width: 380px;
  width: 100%;
  margin: 5em 1.2em 0 1.2em;
  text-align: justify;
}

.industry_list_nav > ul li a {
  display: block;
}

.industry_list_nav > ul li a dl {
  margin: .6em 0 0 0;
}

.industry_list_nav > ul li a dl dt {
  font-size: 1.4em;
  font-weight: bold;
}

.industry_list_nav > ul li a dl dd {
  margin: .4em 0 0 0;
  font-size: 1em;
  line-height: 1.6;
  color: #777;
}

@media (max-width: 768px) {
  .industry_list_nav {
    padding: 1em 0 4em 0;
  }
  .industry_list_nav > ul {
    padding: 0 1.6em;
    margin-top: 0;
  }
  .industry_list_nav > ul li {
    display: block;
    max-width: none;
    width: 100%;
    margin: 3em auto 0 auto;
  }
  .industry_list_nav > ul li a dl dt {
    font-size: 1.2em;
  }
  .industry_list_nav > ul li a dl dd {
    margin-top: .4em;
    font-size: .8em;
  }
}

.section_corresponding {
  background: #f9f9f9;
  padding: 10em 0;
}

.section_corresponding + .g_footer {
  margin-top: 0;
}

.section_corresponding .block_contents {
  margin: 4em auto 0 auto;
}

.section_corresponding .block_contents .img_map {
  max-width: 560px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  right: -4em;
}

@media (max-width: 768px) {
  .section_corresponding {
    padding: 4em 0;
  }
  .section_corresponding .block_contents {
    padding: 0 1em;
  }
  .section_corresponding .block_contents .img_map {
    right: 0;
  }
}

.section_workflow {
  padding: 4em 0 0;
}

.section_workflow .inner .block_contents {
  max-width: 870px;
  width: 100%;
  margin: 5em auto 0;
}

@media (max-width: 768px) {
  .section_workflow .inner .block_contents {
    margin: 2em auto 0;
  }
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_left {
  width: calc(100% - 628px);
  float: left;
  padding-top: 25px;
}

@media (max-width: 768px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_left {
    width: 165px;
    padding: 10px;
  }
}

@media (max-width: 480px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_left {
    width: 100px;
  }
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_left h3 {
  width: 145px;
  height: 145px;
  background-color: #f6f6f6;
  border-radius: 50%;
  font-size: 19px;
  font-weight: bold;
  padding-top: 40px;
  position: relative;
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_left h3 .step {
  font-size: 12px;
  display: block;
}

@media (max-width: 480px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_left h3 .step {
    font-size: 10px;
  }
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_left h3:after {
  content: "";
  display: block;
  width: 3px;
  height: 165px;
  background-color: #f6f6f6;
  position: absolute;
  bottom: -210px;
  left: 0;
  right: 0;
  margin: auto;
}

@media (max-width: 480px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_left h3:after {
    height: 110px;
    bottom: -140px;
  }
}

@media (max-width: 480px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_left h3 {
    width: 75px;
    height: 75px;
    padding-top: 15px;
    font-size: 14px;
  }
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_right {
  width: 628px;
  float: left;
  margin-bottom: 90px;
}

@media (max-width: 768px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_right {
    width: calc( 100% - 165px);
    margin-bottom: 50px;
  }
}

@media (max-width: 480px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_right {
    width: calc( 100% - 100px);
  }
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_right img {
  margin-bottom: 25px;
}

@media (max-width: 480px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_right img {
    margin-bottom: 15px;
  }
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_right p {
  font-size: 1em;
  text-align: left;
  padding-left: 13px;
}

.section_workflow .inner .block_contents .data_list .data_wrap .data_right p .bold {
  font-size: 1.2em;
  font-weight: bold;
  display: block;
  margin-bottom: 5px;
}

@media (max-width: 480px) {
  .section_workflow .inner .block_contents .data_list .data_wrap .data_right p {
    padding-left: 5px;
  }
}

.section_workflow .inner .block_contents .data_list .data_wrap:last-child .data_left h3:after {
  content: none;
}

.section_cases {
  padding: 6em 0 11em;
}

@media (max-width: 768px) {
  .section_cases {
    padding: 3em 0 4em;
  }
}

.section_cases .inner .block_contents {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

.section_cases .inner .block_contents .data_list .data_wrap {
  background: #f9f9f9;
  margin-top: 6em;
}

@media (max-width: 768px) {
  .section_cases .inner .block_contents .data_list .data_wrap {
    margin: 3em 10px;
  }
}

.section_cases .inner .block_contents .data_list .data_wrap img {
  width: calc(100% - 550px);
  float: left;
}

@media (max-width: 768px) {
  .section_cases .inner .block_contents .data_list .data_wrap img {
    width: calc(100% - 510px);
    margin-top: 25px;
  }
}

@media (max-width: 700px) {
  .section_cases .inner .block_contents .data_list .data_wrap img {
    width: 100%;
    float: none;
    margin-top: 0;
  }
}

.section_cases .inner .block_contents .data_list .data_wrap .data_txt {
  width: 550px;
  float: right;
  text-align: left;
  padding: 40px 35px 0 35px;
}

@media (max-width: 768px) {
  .section_cases .inner .block_contents .data_list .data_wrap .data_txt {
    width: 510px;
    padding: 15px 15px 0 15px;
  }
}

@media (max-width: 700px) {
  .section_cases .inner .block_contents .data_list .data_wrap .data_txt {
    width: 100%;
    float: none;
  }
}

.section_cases .inner .block_contents .data_list .data_wrap .data_txt h3 {
  font-size: 1.6em;
  margin-bottom: 25px;
}

.section_cases .inner .block_contents .data_list .data_wrap .data_txt dl dt {
  width: 135px;
  font-size: 1em;
  font-weight: bold;
  float: left;
  line-height: 2;
}

.section_cases .inner .block_contents .data_list .data_wrap .data_txt dl dd {
  width: calc(100% - 135px);
  font-size: 1em;
  float: left;
  line-height: 2;
  margin-bottom: 15px;
}

.section_cases .inner .block_contents .data_list .data_wrap:nth-child(2) img {
  float: right;
}

.section_cases .inner .block_contents .data_list .data_wrap:nth-child(2) .data_txt {
  float: left;
}

.section_service.wing {
  padding: 8em 0 10em 0;
}

@media (max-width: 768px) {
  .section_service.wing {
    padding: 4em 0;
  }
}

.section_service.wing .inner .block_contents .data_list li .text p {
  text-align: center;
}

@media (max-width: 768px) {
  .section_service .inner .block_contents .data_list li .thumb {
    height: auto;
  }
  .section_service .inner .block_contents .data_list li .thumb img {
    width: auto;
  }
}

#recruit .sub_visual {
  background: url(../img/recruit/visual_1.jpg) no-repeat center center;
  background-size: cover;
}

#recruit .sub_visual .visual_ttl {
  color: #fff;
}

.recruit_banner {
  margin: 6em auto 0 auto;
}

.recruit_banner a {
  display: block;
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  height: 120px;
  text-align: left;
  background: #00a4bb;
  border: 2px solid #00a4bb;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.recruit_banner a:hover {
  background: #00aae4;
  border-color: #00aae4;
}

.recruit_banner a:hover .border {
  background: #00aae4;
}

.recruit_banner a .logo {
  display: block;
  float: left;
  background: #fff;
  width: 38%;
  height: 100%;
  text-align: left;
}

.recruit_banner a .logo img {
  max-width: 200px;
  margin: 0 0 0 80px;
  position: relative;
  top: 44px;
}

.recruit_banner a .border {
  position: absolute;
  background: #00a4bb;
  height: 100%;
  width: 240px;
  left: 28%;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -webkit-transform: rotate(-66deg);
  -moz-transform: rotate(-66deg);
  -ms-transform: rotate(-66deg);
  transform: rotate(-66deg);
}

.recruit_banner a .txt {
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  position: relative;
  padding-right: 100px;
  top: 34px;
  white-space: nowrap;
}

.recruit_banner a .label {
  width: 70px;
  height: 70px;
  display: block;
  background: #fff;
  color: #00a4bb;
  border-radius: 50em;
  font-weight: bold;
  position: absolute;
  top: 1em;
  right: 1em;
  text-align: center;
  line-height: 1.25;
  font-size: .95em;
}

.recruit_banner a .label span {
  position: relative;
  top: 22px;
}

@media (max-width: 768px) {
  .recruit_banner {
    margin-top: 3em;
  }
  .recruit_banner a {
    max-width: none;
    width: auto;
    height: auto;
    margin: 0 1.6em;
    overflow: visible;
  }
  .recruit_banner a .logo {
    float: none;
    width: 100%;
    height: auto;
    text-align: center;
    padding: 3em 0;
  }
  .recruit_banner a .logo img {
    top: 0;
    margin: 0 auto;
  }
  .recruit_banner a .border {
    display: none;
  }
  .recruit_banner a .txt {
    padding: 1.2em 1.4em;
    line-height: 1.5;
    top: 0;
    white-space: normal;
    font-size: 1em;
  }
  .recruit_banner a .txt br {
    display: none;
  }
  .recruit_banner a .label {
    top: -30px;
    right: -20px;
    background: #00a4bb;
    color: #fff;
  }
}

.section_innovation {
  padding: 10em 0 8em;
  position: relative;
  background: #f6f6f6;
}

.section_innovation .inner .img {
  max-width: 560px;
  width: 100%;
  margin: 0 auto;
}

.section_innovation .inner .title_wrap {
  margin: 3.4em auto 0 auto;
}

.section_innovation .inner .txt_wrap {
  margin-top: 2.4em;
}

.section_innovation .inner .txt_wrap .txt {
  line-height: 2.6;
}

.section_innovation .inner .g_btn_wrap {
  margin-top: 4em;
}

.section_innovation .inner .g_btn_wrap .btn {
  padding: 1.2em 5em;
}

@media (max-width: 768px) {
  .section_innovation {
    padding: 4em 0;
  }
  .section_innovation .inner .img {
    padding: 0 1.6em;
  }
  .section_innovation .inner .txt_wrap {
    margin-top: 2em;
  }
  .section_innovation .inner .txt_wrap br {
    display: none;
  }
  .section_innovation .inner .txt_wrap .txt {
    margin-top: 0;
    line-height: 2;
    font-weight: normal;
  }
}

.section_culture {
  padding: 0 0 10em 0;
  background: #f6f6f6;
}

.section_culture .visual_img {
  background: #fff url(../img/recruit/visual_2.jpg) no-repeat center center;
  background-size: 100%;
  height: 300px;
}

.section_culture .inner {
  margin: 6em auto 0 auto;
}

.section_culture .inner .culture_list {
  margin: 6em auto 0 auto;
  text-align: center;
}

.section_culture .inner .culture_list li {
  display: inline-block;
  vertical-align: top;
  max-width: 400px;
  width: 100%;
  margin: 0 4em 3em 4em;
}

.section_culture .inner .culture_list li .thumb {
  position: relative;
  margin: 0 auto;
  padding: 0 0 1em 0;
  background: url(../img/recruit/bg-shadow_1.svg) no-repeat center bottom;
}

.section_culture .inner .culture_list li .thumb img {
  max-width: 210px;
}

.section_culture .inner .culture_list li .thumb .number {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.4em;
  font-weight: bold;
  padding: 0 0 3px 0;
  border-bottom: 2px solid;
}

.section_culture .inner .culture_list li dl {
  margin: 2em 0 0 0;
}

.section_culture .inner .culture_list li dl dt {
  font-size: 1.5em;
  font-weight: bold;
}

.section_culture .inner .culture_list li dl dd {
  font-size: 1em;
  margin: 1em 0 0 0;
  line-height: 2;
}

@media (max-width: 768px) {
  .section_culture {
    padding-bottom: 4em;
  }
  .section_culture .visual_img {
    background-size: 300%;
    background-position: center -50px;
    height: 140px;
  }
  .section_culture .inner {
    margin-top: 4em;
  }
  .section_culture .inner .culture_list {
    margin-top: 3em;
  }
  .section_culture .inner .culture_list li {
    display: block;
    max-width: none;
    width: auto;
    background: #fff;
    margin: 1.6em 1.6em 0 1.6em;
    padding: 2em 1.6em;
  }
  .section_culture .inner .culture_list li .thumb {
    padding: 0;
    background-size: 60px;
  }
  .section_culture .inner .culture_list li .thumb img {
    transform: scale(0.5, 0.5);
  }
  .section_culture .inner .culture_list li dl {
    margin-top: 1em;
  }
  .section_culture .inner .culture_list li dl dt {
    font-size: 1.4em;
  }
  .section_culture .inner .culture_list li dl dd {
    margin-top: .4em;
    line-height: 1.8;
    font-size: .9em;
  }
}

.section_message {
  padding: 10em 0;
}

.section_message .inner .message_block {
  margin: 8em auto 0 auto;
  white-space: nowrap;
}

.section_message .inner .message_block > .img {
  display: inline-block;
  vertical-align: middle;
  max-width: 560px;
  width: 100%;
}

.section_message .inner .message_block > .txt_block {
  display: inline-block;
  vertical-align: middle;
  max-width: 420px;
  width: 100%;
  position: relative;
  text-align: left;
  padding: 4.4em 0 4.4em 3em;
  z-index: 5;
  top: 5.4em;
  margin: 0 0 0 -100px;
}

.section_message .inner .message_block > .txt_block:before {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  bottom: 20px;
  left: -20px;
  z-index: -2;
  background: rgba(0, 170, 228, 0.6);
}

.section_message .inner .message_block > .txt_block:after {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: #00aae4;
}

.section_message .inner .message_block > .txt_block p {
  color: #fff;
}

.section_message .inner .message_block > .txt_block p small {
  display: block;
  font-weight: bold;
  font-size: 1.5em;
  line-height: 1.7;
}

.section_message .inner .message_block > .txt_block p strong {
  display: block;
  font-size: 2.4em;
  line-height: 1.5;
  margin-top: .4em;
}

.section_message .inner .message_txt_block {
  background-image: url(../img/recruit/img-message_2.png), url(../img/recruit/img-message_3.png);
  background-repeat: no-repeat, no-repeat;
  background-position: 90% 0, 10% 106%;
}

.section_message .inner .message_txt_block .message_txt_inner {
  max-width: 730px;
  width: 100%;
  margin: 8em auto 0 auto;
  text-align: left;
}

.section_message .inner .message_txt_block .column2 {
  columns: 2;
}

.section_message .inner .message_txt_block .column2 p {
  line-height: 1.9;
  padding: 0 10px;
}

.section_message .inner .message_txt_block .ttl1 {
  margin: 1.8em auto 0 auto;
  font-size: 1.6em;
  padding: 0 10px;
  line-height: 2;
}

.section_message .inner .message_txt_block .txt1 {
  padding: 0 10px;
  line-height: 1.9;
  margin: 2.4em 0 0 0;
}

.section_message .inner .message_txt_block .txt2 {
  padding: 0 10px;
  line-height: 1.9;
  font-size: 1.5em;
  margin: 3em 0 0 0;
  text-align: center;
  font-family: "Times New Roman", YuMincho, "Hiragino Mincho ProN", Meiryo, serif;
}

.section_message .inner .message_txt_block .txt3 {
  margin: 2.8em 0 0 0;
  padding: 0 10px;
  text-align: right;
}

.section_message .inner .message_txt_block .txt3 img {
  zoom: 80%;
}

@media (max-width: 768px) {
  .section_message {
    padding: 4em 0;
  }
  .section_message .inner .message_block {
    margin: 3em auto 0 auto;
    white-space: normal;
  }
  .section_message .inner .message_block > .txt_block {
    display: block;
    max-width: none;
    width: auto;
    margin: -4em 0 0 1.6em;
    padding: 2em 3em;
    top: 0;
  }
  .section_message .inner .message_block > .txt_block:before {
    content: none;
  }
  .section_message .inner .message_block > .txt_block p small {
    font-size: 1.2em;
  }
  .section_message .inner .message_block > .txt_block p strong {
    font-size: 1.5em;
  }
  .section_message .inner .message_txt_block {
    background-position: 90% 0, 1000% 1000%;
  }
  .section_message .inner .message_txt_block .message_txt_inner {
    max-width: none;
    width: auto;
    margin: 1em auto 0 auto;
    padding: 0 .6em;
  }
  .section_message .inner .message_txt_block .column2 {
    columns: 1;
  }
  .section_message .inner .message_txt_block .column2 p {
    line-height: 1.8;
    font-size: .9em;
    padding-top: .5em;
    padding-bottom: .5em;
  }
  .section_message .inner .message_txt_block .ttl1 {
    margin-top: 1em;
    font-size: 1.3em;
    line-height: 1.6;
  }
  .section_message .inner .message_txt_block .ttl1 br {
    display: none;
  }
  .section_message .inner .message_txt_block .txt1 {
    margin-top: 1.4em;
    line-height: 1.8;
    font-size: .9em;
  }
  .section_message .inner .message_txt_block .txt2 {
    margin: 2em 0 0 0;
    font-size: 1.2em;
    line-height: 1.7;
  }
  .section_message .inner .message_txt_block .txt2 br {
    display: none;
  }
  .section_message .inner .message_txt_block .txt3 {
    margin: 2em 0 0 0;
  }
  .section_message .inner .message_txt_block .txt3 img {
    zoom: 100%;
    width: 160px;
  }
}

.recruitment_list {
  padding: 10em 0;
}

.recruitment_list .category_block {
  margin: 4em auto 0 auto;
}

.recruitment_list .category_block .item_list {
  max-width: 840px;
  width: 100%;
  margin: 0 auto;
}

.recruitment_list .category_block .item_list li {
  display: inline-block;
  vertical-align: top;
  max-width: 364px;
  width: 100%;
  margin: 1.2em 1em;
}

.recruitment_list .category_block .item_list li a {
  display: block;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.recruitment_list .category_block .item_list li a:hover .category_img img {
  filter: blur(10px);
}

.recruitment_list .category_block .item_list li a .category_img {
  position: relative;
  background: #fff;
}

.recruitment_list .category_block .item_list li a .category_img img {
  background: #fff;
}

.recruitment_list .category_block .item_list li a .category_img .background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}

.recruitment_list .category_block .item_list li a .category_data {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: left;
  color: #fff;
}

.recruitment_list .category_block .item_list li a .category_title {
  padding: 1.8em 30px 0 30px;
  font-size: 1.5em;
  line-height: 1.5;
}

.recruitment_list .category_block .item_list li a .category_description {
  font-weight: bold;
  padding: .5em 30px 0 30px;
  font-size: 1em;
  line-height: 1.4;
}

@media (max-width: 768px) {
  .recruitment_list {
    padding: 2em 0 4em 0;
  }
  .recruitment_list .category_block {
    margin: 2em auto 0 auto;
  }
  .recruitment_list .category_block .item_list {
    max-width: none;
    width: 100%;
    padding: 0 1.6em;
  }
  .recruitment_list .category_block .item_list li {
    display: block;
    max-width: none;
    margin: 1.2em 0 0 0;
  }
  .recruitment_list .category_block .item_list li a .category_title {
    padding: 1.4em 1em 0 20px;
    font-size: 1.2em;
  }
  .recruitment_list .category_block .item_list li a .category_description {
    padding: .6em 1em 0 20px;
    font-size: .9em;
  }
}

.archive_sub_visual {
  padding: 5em 0 0 0;
}

.archive_sub_visual .visual_ttl {
  text-align: center;
}

.archive_sub_visual .visual_ttl .big {
  display: block;
  font-size: 1.8em;
}

.archive_sub_visual .visual_ttl .small {
  margin-top: .4em;
  display: block;
  font-size: 1em;
}

.g_main_recruit {
  max-width: 640px;
  width: 100%;
  padding: 0 1.6em;
  margin: 0 auto;
  text-align: left;
}

.g_main_recruit .ttl_top_category {
  background: #ddd;
  margin: 5em 0 0 0;
}

.g_main_recruit .ttl_top_category a {
  display: block;
  font-size: 1.4em;
  padding: .8em 2em;
  pointer-events: none;
  cursor: default;
}

.g_main_recruit .items .archive_list li {
  border-bottom: 1px solid #eee;
}

.g_main_recruit .items .archive_list li a {
  padding: 1.6em 2em;
  display: block;
  color: #888;
  position: relative;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.g_main_recruit .items .archive_list li a h4 {
  font-size: 1.1em;
  font-weight: normal;
  padding-right: 2em;
}

.g_main_recruit .items .archive_list li a .arrow_icon {
  font-size: 2em;
  position: absolute;
  top: 50%;
  right: .5em;
  line-height: 1;
  margin-top: -12px;
}

.g_main_recruit .items .archive_list li a:hover {
  background: #eee;
}

@media (max-width: 768px) {
  .archive_sub_visual {
    padding-top: 3em;
  }
  .g_main_recruit .ttl_top_category {
    margin-top: 3em;
  }
  .g_main_recruit .ttl_top_category a {
    font-size: 1.2em;
    padding: .6em 1.2em;
  }
  .g_main_recruit .items .archive_list li a {
    padding: 1em 1.4em;
  }
  .g_main_recruit .items .archive_list li a h4 {
    font-size: 1em;
  }
}

.recruit_single .single_ttl {
  padding: 4em 1.6em;
  position: relative;
  overflow: hidden;
}

.recruit_single .single_ttl .bg_cover {
  opacity: .9;
  position: absolute;
  top: -10%;
  left: -10%;
  right: 0;
  width: 120%;
  height: 120%;
  margin: 0 auto;
  background: url(../img/recruit/visual_1.jpg) no-repeat center center;
  background-size: cover;
  z-index: -1;
  -webkit-filter: blur(6px);
  filter: blur(6px);
}

.recruit_single .single_ttl .ttl {
  font-size: 2.2em;
  font-weight: bold;
  line-height: 1.4;
}

.recruit_single .single_contents {
  margin: 3.4em auto 0 auto;
  text-align: left;
}

.recruit_single .single_contents .tab_nav {
  display: table;
  width: 100%;
}

.recruit_single .single_contents .tab_nav ul {
  position: relative;
  top: 1px;
}

.recruit_single .single_contents .tab_nav ul li {
  max-width: 180px;
  width: 100%;
  display: inline-block;
  vertical-align: bottom;
  text-align: center;
  background: #00aae4;
  color: #fff;
  line-height: 56px;
  border-radius: 3px 3px 0 0;
  cursor: pointer;
  border-width: 2px 1px 0 1px;
  border-style: solid;
  border-color: transparent;
  margin: 0 .4em 0 0;
  position: relative;
  z-index: 5;
}

.recruit_single .single_contents .tab_nav ul li .new {
  font-style: normal;
  font-size: .9em;
  font-weight: bold;
  width: 40px;
  height: 40px;
  line-height: 37px;
  text-align: center;
  display: block;
  border-radius: 50em;
  position: absolute;
  top: -20px;
  left: -20px;
  border: 2px solid #00aae4;
  background: #fff;
  color: #00aae4;
}

.recruit_single .single_contents .tab_nav ul li.select {
  background: #fff;
  color: #555;
  border-color: #ccc;
  border-top-color: #00aae4;
}

.recruit_single .single_contents .tab_nav ul li.select .new {
  background: #00aae4;
  color: #fff;
}

.recruit_single .single_contents .tab_nav ul li span {
  font-size: 1.3em;
  font-weight: bold;
}

@media (max-width: 1320px) {
  .recruit_single .single_contents .tab_nav ul li .new {
    left: 0;
  }
}

.recruit_single .single_contents .tab_contents {
  border: 1px solid #cccccc;
  position: relative;
  line-height: 1.75;
}

.recruit_single .single_contents .tab_contents .time {
  background: #00aae4;
  width: 80px;
  height: 80px;
  border-radius: 50em;
  color: #fff;
  text-align: center;
  display: block;
  position: absolute;
  top: -40px;
  right: -40px;
  font-weight: bold;
}

.recruit_single .single_contents .tab_contents .time .first {
  margin-top: 20px;
  display: block;
  line-height: 1;
  font-size: 1.1em;
}

.recruit_single .single_contents .tab_contents .time .second {
  margin: .4em 0 0 0;
  display: block;
  line-height: 1;
  font-size: 1.1em;
}

@media (max-width: 1320px) {
  .recruit_single .single_contents .tab_contents .time {
    right: 0;
  }
}

.recruit_single .single_contents .tab_contents .tab_inner {
  display: none;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list {
  padding: 3em;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list dl {
  border-top: 1px solid #eee;
  margin: 0 -3em;
  padding: 1.4em 3em;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list dl dt {
  float: left;
  max-width: 140px;
  width: 100%;
  color: #00aae4;
  font-weight: bold;
  font-size: 1.1em;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list dl dd {
  margin-left: 160px;
  font-size: 1em;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list dl dd .post_edit {
  margin: 1em 0 0 0;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list dl dd .post_edit iframe {
  width: 100%;
  height: 300px !important;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list dl dd .btn {
  text-align: right;
}

.recruit_single .single_contents .tab_contents .inner_company .data_list dl dd .btn .google_btn {
  display: inline-block;
  vertical-align: middle;
  background: #a4afb7;
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  text-align: center;
  padding: .8em 3em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .ttl_recruit {
  padding: 3em 3em 3em 3em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .ttl_recruit h2 {
  font-size: 1.8em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit {
  border-top: 1px solid #eee;
  margin: 0;
  padding: 0 3em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block {
  padding: 3em 0 3.2em;
  float: right;
  max-width: 26%;
  width: 100%;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block .list li {
  margin-bottom: 1em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block .list li img {
  width: 100%;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block .btn a {
  display: block;
  background: #00aae4;
  border: 2px solid #00aae4;
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  line-height: 54px;
  text-align: center;
  border-radius: 3px;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block .btn a:hover {
  background: #fff;
  color: #00aae4;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block {
  padding: 3em 0;
  float: left;
  max-width: 67%;
  width: 100%;
  position: relative;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .form_btn_wrap {
  border-top: 1px solid #eee;
  margin-right: -3em;
  margin-left: -3em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .form_btn {
  max-width: 320px;
  width: 100%;
  margin: 3em auto 0 auto;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .form_btn a {
  display: block;
  background: #00aae4;
  border: 2px solid #00aae4;
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  line-height: 54px;
  text-align: center;
  border-radius: 3px;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .form_btn a:hover {
  background: #fff;
  color: #00aae4;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block.border_right:before {
  content: '';
  position: absolute;
  top: 0;
  right: -38px;
  height: 100%;
  width: 1px;
  background: #eee;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .text_first_block {
  line-height: 1.8;
  font-size: 1em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block {
  margin: 3em 0 0 0;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block dl {
  border-top: 1px solid #eee;
  margin: 0 -3em;
  padding: 1.4em 3em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block dl dt {
  float: left;
  max-width: 140px;
  width: 100%;
  color: #00aae4;
  font-weight: bold;
  font-size: 1.1em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block dl dd {
  margin-left: 160px;
  font-size: 1em;
}

.recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block dl dd .feature_label li {
  background: #eee;
  font-size: .9em;
  display: inline-block;
  vertical-align: top;
  border-radius: 3px;
  margin: 3px 3px 3px 0;
  padding: 2px 10px;
}

@media (max-width: 768px) {
  .recruit_single .sns_block {
    padding: 0 1.6em;
    border-bottom: 1px solid #ddd;
  }
  .recruit_single .sns_block .wp_social_bookmarking_light {
    margin-top: 0 !important;
  }
  .recruit_single .sns_block .wp_social_bookmarking_light > div {
    margin-top: .8em !important;
  }
  .recruit_single .single_ttl .ttl {
    font-size: 1.4em;
    padding: 0 1em 1em 1em;
  }
  .recruit_single .single_contents {
    margin: 2em 0 0 0;
  }
  .recruit_single .single_contents .tab_nav ul {
    padding: 0 1em;
  }
  .recruit_single .single_contents .tab_nav ul li {
    max-width: 48%;
    margin: 0;
    line-height: 46px;
  }
  .recruit_single .single_contents .tab_nav ul li span {
    font-size: 1.1em;
  }
  .recruit_single .single_contents .tab_contents {
    border-width: 1px 0 0 0;
  }
  .recruit_single .single_contents .tab_contents .time {
    top: -130px;
    transform: scale(0.7, 0.7);
  }
  .recruit_single .single_contents .tab_contents .inner_company {
    border-bottom: 1px solid #eee;
  }
  .recruit_single .single_contents .tab_contents .inner_company .data_list {
    padding: 1.6em;
  }
  .recruit_single .single_contents .tab_contents .inner_company .data_list dl {
    margin: 0;
    padding: 1.4em 0;
  }
  .recruit_single .single_contents .tab_contents .inner_company .data_list dl dt {
    float: none;
    max-width: none;
  }
  .recruit_single .single_contents .tab_contents .inner_company .data_list dl dd {
    margin: 0;
  }
  .recruit_single .single_contents .tab_contents .inner_company .data_list dl dd .post_edit iframe {
    height: 180px !important;
  }
  .recruit_single .single_contents .tab_contents .inner_company .data_list dl dd .btn .google_btn {
    display: block;
    border-radius: 3px;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .ttl_recruit {
    padding: 1em 1.6em;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .ttl_recruit h2 {
    font-size: 1.2em;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .ttl_recruit h2 br {
    display: none;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit {
    border: none;
    padding: 0 1.6em;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block {
    float: none;
    max-width: none;
    padding: 0 0 1em 0;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block .list {
    text-align: center;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block .list li {
    max-width: 46%;
    display: inline-block;
    vertical-align: top;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .imgs_block .btn a {
    line-height: 46px;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block {
    float: none;
    padding: 0;
    max-width: none;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .form_btn_wrap {
    margin: 0;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .form_btn {
    max-width: none;
    width: auto;
    margin-top: 2em;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .form_btn a {
    line-height: 46px;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block.border_right:before {
    display: none;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .text_first_block {
    max-height: 120px;
    overflow-y: auto;
    font-size: .9em;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block dl {
    margin: 0;
    padding: 1.2em 0;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block dl dt {
    float: none;
    max-width: none;
  }
  .recruit_single .single_contents .tab_contents .inner_recruit .block_recruit .item_block .table_block dl dd {
    margin: 0;
    max-height: 120px;
    overflow-y: auto;
    font-size: .9em;
  }
}

.section_recruitment {
  width: 100%;
  background: url(../img/recruit/recruitment.png) no-repeat left top/cover;
  color: #ffffff;
}

@media (max-width: 480px) {
  .section_recruitment {
    background-image: none;
    color: #232323;
  }
}

.section_recruitment .inner {
  background-color: rgba(0, 0, 0, 0.4);
}

@media (max-width: 480px) {
  .section_recruitment .inner {
    background-color: transparent;
  }
}

.section_recruitment .inner .title_wrap {
  padding-top: 8em;
  margin-bottom: 2em;
}

@media (max-width: 768px) {
  .section_recruitment .inner .title_wrap {
    padding-top: 4em;
  }
}

.section_recruitment .inner .sp_image {
  display: none;
}

@media (max-width: 480px) {
  .section_recruitment .inner .sp_image {
    display: block;
  }
}

.section_recruitment .inner .desc_block {
  font-size: 1.9em;
  font-weight: bold;
}

@media (max-width: 768px) {
  .section_recruitment .inner .desc_block {
    font-size: 1.2em;
  }
}

@media (max-width: 480px) {
  .section_recruitment .inner .desc_block {
    font-size: 1.1em;
    padding-top: 2.5em;
  }
}

@media (max-width: 480px) {
  .section_recruitment .inner .desc_block span {
    display: block;
  }
}

.section_recruitment .inner .g_btn_wrap {
  margin: 4em auto 5em;
}

.section_recruitment .inner .g_btn_wrap .btn {
  padding: 1.2em 5em;
}

.recruit_contact_wrap {
  background: #f9f9f9;
  padding: 7em 0 10em;
}

.recruit_contact_wrap .inner {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  border: 2px solid #ffffff;
}

@media (max-width: 768px) {
  .recruit_contact_wrap .inner {
    width: 90%;
  }
}

.recruit_contact_wrap .inner .title_wrap {
  padding: 4em 0 2em;
}

.recruit_contact_wrap .inner .desc_block {
  font-size: 1.3em;
  line-height: 2.0;
  margin-bottom: 3em;
}

@media (max-width: 768px) {
  .recruit_contact_wrap .inner .desc_block {
    font-size: 1.2em;
    line-height: 1.7;
  }
}

.recruit_contact_wrap .inner .contact_btn a {
  display: block;
  width: 260px;
  line-height: 59px;
  background-color: #f9f9f9;
  color: #00aae4;
  border: 1px solid #00aae4;
  border-radius: 40px;
  margin: 0 auto 4em;
  font-size: 1.2em;
  font-weight: bold;
}

.recruit_contact_wrap .inner .contact_btn a:hover {
  opacity: .7;
}

#recruit .g_footer {
  margin-top: 0;
}

.section_member {
  padding: 9em 0 10em;
  background: #f6f6f6;
}

.member_block > ul li {
  max-width: 920px;
  width: 100%;
  margin: 4em auto 0 auto;
}

.member_block > ul li:first-child {
  margin-top: 6em;
}

.member_block > ul li a {
  display: block;
  border: 1px solid #eee;
  padding: 4em 5em;
  background: #fff;
  position: relative;
  text-align: left;
  color: #111;
  overflow: hidden;
}

.member_block > ul li a .thumb {
  display: inline-block;
  vertical-align: middle;
  max-width: 400px;
  width: 44%;
  position: relative;
  z-index: 1;
}

.member_block > ul li a .text_block {
  text-align: left;
  display: inline-block;
  vertical-align: middle;
  max-width: 400px;
  width: 54%;
  position: relative;
  z-index: 1;
}

.member_block > ul li a .text_block .ttl1 {
  font-size: 2.6em;
  line-height: 1.3;
  margin-left: 1em;
}

.member_block > ul li a .text_block .text {
  margin: 2em 0 0 0;
  padding: 0 0 0 3em;
}

.member_block > ul li a .text_block .text .department {
  font-weight: bold;
  font-size: 1.1em;
  line-height: 1;
}

.member_block > ul li a .text_block .text .name {
  margin: .4em 0 0 0;
  font-weight: bold;
  font-size: 2em;
  line-height: 1;
}

.member_block > ul li a .text_block .text .name_en {
  font-weight: bold;
  font-size: 1.1em;
  line-height: 1;
  margin: 1em 0 0 0;
}

.member_block > ul li a .icon_arrow {
  font-size: 3em;
  position: absolute;
  top: 50%;
  right: 1.4em;
  height: 34px;
  line-height: 34px;
}

.member_block > ul li a .more_btn {
  position: absolute;
  top: 2em;
  right: 2em;
  display: block;
  background: #00aae4;
  color: #fff;
  width: 90px;
  height: 90px;
  border-radius: 50em;
  font-weight: bold;
  font-size: 1.1em;
  line-height: 1.3;
  text-align: center;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.member_block > ul li a .more_btn span {
  position: relative;
  top: 26px;
}

.member_block > ul li a .bg_hover {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #00aae4;
  z-index: 0;
  -webkit-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -moz-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  -ms-transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
  transition: all 0.3s cubic-bezier(0, 1, 0.64, 1);
}

.member_block > ul li a:hover {
  color: #fff;
}

.member_block > ul li a:hover .more_btn {
  background: #fff;
  color: #00aae4;
}

.member_block > ul li a:hover .bg_hover {
  top: 0;
}

@media (max-width: 768px) {
  .section_member {
    padding: 4em 0;
  }
  .member_block > ul li {
    margin-top: 1em;
    padding: 0 1.6em;
  }
  .member_block > ul li:first-child {
    margin-top: 2em;
  }
  .member_block > ul li a {
    padding: 6px;
  }
  .member_block > ul li a .thumb {
    display: block;
    max-width: none;
    width: auto;
  }
  .member_block > ul li a .text_block {
    display: block;
    max-width: none;
    width: auto;
    padding: 1em 1em 1.2em 1em;
  }
  .member_block > ul li a .text_block .ttl1 {
    font-size: 1.2em;
    margin: 0;
    position: absolute;
    top: -56px;
    right: .8em;
    background: #fff;
    padding: .1em .4em;
    line-height: 1.4;
  }
  .member_block > ul li a .text_block .text {
    margin: 1em 0 0 0;
    padding: 0;
  }
  .member_block > ul li a .text_block .text .department {
    font-size: .9em;
  }
  .member_block > ul li a .text_block .text .name {
    font-size: 1.5em;
  }
  .member_block > ul li a .text_block .text .name_en {
    display: none;
  }
  .member_block > ul li a .icon_arrow {
    top: initial;
    bottom: .9em;
    font-size: 2em;
    right: .6em;
  }
  .member_block > ul li a .more_btn {
    z-index: 10;
    top: 1em;
    right: 1em;
    width: 60px;
    height: 60px;
    font-size: .8em;
  }
  .member_block > ul li a .more_btn span {
    top: 18px;
  }
  .member_block > ul li a .bg_hover {
    display: none;
  }
  .member_block > ul li a:hover {
    color: #111;
  }
}

.member_single .section:nth-child(even) {
  background: #f7f7f7;
}

.member_single .item_top {
  padding: 6em 0 8em;
}

.member_single .item_top .inner {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
}

.member_single .item_top .inner .first_contents .text_block {
  float: right;
  max-width: 540px;
  width: 46%;
  position: relative;
}

.member_single .item_top .inner .first_contents .text_block .text_head {
  border-width: 5px 0;
  border-style: solid;
  border-color: #111;
  padding: 5em 0;
}

.member_single .item_top .inner .first_contents .text_block .text_head h2 {
  font-size: 4em;
  line-height: 1.8;
  font-weight: bold;
  letter-spacing: -.03em;
}

.member_single .item_top .inner .first_contents .text_block .text_contents {
  text-align: right;
  margin: 3.6em 0 0 0;
}

.member_single .item_top .inner .first_contents .text_block .text_contents .txt1 span {
  font-weight: bold;
  font-size: 1em;
}

.member_single .item_top .inner .first_contents .text_block .text_contents .txt2 {
  margin: .2em 0 0 0;
  font-weight: bold;
  font-size: 2em;
}

.member_single .item_top .inner .first_contents .img_block {
  float: left;
  max-width: 580px;
  width: 50%;
}

.member_single .item_top .inner .first_contents .img_block img {
  width: 100%;
}

@media (max-width: 1100px) {
  .member_single .item_top .inner .first_contents .text_block .text_head {
    padding: 4em 0;
  }
  .member_single .item_top .inner .first_contents .text_block .text_head h2 {
    font-size: 3em;
  }
  .member_single .item_top .inner .first_contents .img_block {
    max-width: 480px;
  }
}

.member_single .item_top .inner .second_contents {
  max-width: 80%;
  width: 100%;
  margin: 0 auto;
  padding: 4em 0 0 0;
  font-size: 1.3em;
  font-weight: bold;
  line-height: 2.4;
  text-align: justify;
}

.member_single .repeat_block.first .inner .first_contents {
  display: table;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-flex-direction: row-reverse;
  -moz-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.member_single .repeat_block.first .inner .first_contents .text_block {
  text-align: left;
}

.member_single .repeat_block.first .inner .second_contents {
  margin-top: 4em;
}

.member_single .repeat_block.last {
  padding-bottom: 18em;
}

.member_single .repeat_block {
  padding: 10em 0;
}

.member_single .repeat_block .inner {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
}

.member_single .repeat_block .inner .first_contents .img_block {
  text-align: center;
}

.member_single .repeat_block .inner .first_contents .text_block {
  margin: 4em auto 0 auto;
}

.member_single .repeat_block .inner .first_contents .text_block .interview {
  font-size: 1.2em;
  font-weight: bold;
}

.member_single .repeat_block .inner .first_contents .text_block .title {
  margin: .4em 0 0 0;
  font-size: 3.2em;
  line-height: 1.5;
  font-weight: bold;
}

.member_single .repeat_block .inner .second_contents {
  max-width: 800px;
  width: 100%;
  margin: 1.6em auto 0 auto;
  padding: 0 2em;
  line-height: 2.5;
  font-weight: bold;
  font-size: 1.2em;
}

.member_single .member_btn {
  position: relative;
  margin: 0 auto;
  margin-top: -12.5em;
  display: inline-block;
  vertical-align: top;
}

.member_single .member_btn a {
  display: inline-block;
  vertical-align: top;
  padding: 0 4em;
  background: #00aae4;
  border: 2px solid #00aae4;
  color: #fff;
  font-size: 1.3em;
  line-height: 60px;
  border-radius: 50em;
  font-weight: bold;
}

.member_single .member_btn a:hover {
  background: #fff;
  color: #00aae4;
}

.member_single .sns_block {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding: 0 1.6em;
}

@media (max-width: 768px) {
  .member_single .section:nth-child(even) {
    background: #f7f7f7;
  }
  .member_single .item_top {
    padding: 0 0 4em 0;
  }
  .member_single .item_top .inner {
    max-width: none;
    width: 100%;
    padding: 0;
  }
  .member_single .item_top .inner .first_contents .text_block {
    float: none;
    max-width: none;
    width: auto;
  }
  .member_single .item_top .inner .first_contents .text_block .text_head {
    padding: 1.6em 1em 0 1em;
    margin-top: -4em;
    background: #fff;
    border-width: 4px 0 0 0;
  }
  .member_single .item_top .inner .first_contents .text_block .text_head h2 {
    font-size: 1.6em;
    line-height: 1.6;
  }
  .member_single .item_top .inner .first_contents .text_block .text_contents {
    margin: 0;
    padding: .8em 1.6em 1.6em 1.6em;
    text-align: center;
    border-bottom: 4px solid #111;
    text-align: center;
  }
  .member_single .item_top .inner .first_contents .text_block .text_contents .txt2 {
    font-size: 1.3em;
  }
  .member_single .item_top .inner .first_contents .img_block {
    width: 100%;
    max-width: none;
    display: block;
    float: none;
    position: relative;
    overflow: hidden;
  }
  .member_single .item_top .inner .first_contents .img_block img {
    position: relative;
    top: -2em;
  }
  .member_single .item_top .inner .second_contents {
    max-width: none;
    width: auto;
    padding: 0 1.6em;
    margin-top: 1.6em;
    line-height: 1.8;
    font-size: 1em;
    font-weight: normal;
  }
  .member_single .repeat_block {
    padding: 0 0 4em 0;
  }
  .member_single .repeat_block.first .inner .second_contents {
    margin-top: 1em;
  }
  .member_single .repeat_block.last {
    padding-bottom: 10em;
  }
  .member_single .repeat_block .inner .first_contents {
    display: block !important;
  }
  .member_single .repeat_block .inner .first_contents .text_block {
    margin: 2em auto 0 auto;
    padding: 0 1.6em;
  }
  .member_single .repeat_block .inner .first_contents .text_block .interview {
    font-size: .9em;
  }
  .member_single .repeat_block .inner .first_contents .text_block .title {
    font-size: 1.7em;
    line-height: 1.4;
  }
  .member_single .repeat_block .inner .second_contents {
    margin: 1em auto 0 auto;
    padding: 0 1.6em;
    font-size: 1em;
    line-height: 2;
    text-align: justify;
  }
  .member_single .member_btn {
    margin-top: -8em;
  }
  .member_single .member_btn a {
    padding: 0 3em;
    font-size: 1.1em;
    line-height: 50px;
  }
}

#consul .sub_visual {
  background: url(../img/consul/visual_1.png) no-repeat center center;
  background-size: cover;
}

#consul .sub_visual .visual_ttl {
  color: #FFF;
}

.section_service {
  padding: 10em 0 10em 0;
  background: #FFF;
}

.section_service .visual_img {
  background: #fff url(../img/consul/bg_s1.png) no-repeat center center;
  background-size: 100%;
  height: 374px;
}

.section_service .inner .title_wrap {
  margin: 3.4em auto 0 auto;
}

.section_service .inner .txt_wrap {
  border: 1px solid #ddd;
  max-width: 1010px;
  margin: 2em auto;
  padding: 1em;
}

.section_service .inner .txt_wrap .txt {
  line-height: 2em;
}

.section_service .inner .txt_wrap .txt em {
  font-size: 1.2em;
  font-weight: 400;
}

.section_service .service_list {
  margin: 6em auto 0 auto;
  text-align: center;
}

.section_service .service_list li {
  display: inline-block;
  vertical-align: top;
  max-width: 260px;
  width: 100%;
  margin: 0 4em 3em 4em;
}

.section_service .service_list li .thumb {
  position: relative;
  margin: 0 auto;
  padding: 0 0 1em 0;
}

.section_service .service_list li .thumb img {
  max-width: 280px;
}

.section_service .service_list li p {
  font-size: 1em;
  margin: 1em 0 0 0;
  line-height: 2;
}

@media (max-width: 768px) {
  .section_service {
    padding: 4em 0 4em 0;
  }
}

.section_cslist {
  padding: 0 0 10em 0;
  background: #FFF;
}

.section_cslist .visual_img {
  background: #fff url(../img/consul/img_s2_ttl.png) no-repeat center center;
  background-size: 100%;
  height: 200px;
}

.section_cslist .inner {
  margin: 6em auto 0 auto;
}

.section_cslist .inner .cs_list {
  margin: 8em auto 0 auto;
  text-align: center;
}

.section_cslist .inner .cs_list li {
  display: inline-flex;
  vertical-align: top;
  max-width: 1200px;
  height: 200px;
  margin: 0 auto 1em auto;
}

.section_cslist .inner .cs_list li .thumb img {
  max-width: 466px;
}

.section_cslist .inner .cs_list li .thumb .number {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.4em;
  font-weight: bold;
  padding: 0 0 3px 0;
  border-bottom: 2px solid;
}

.section_cslist .inner .cs_list li dl {
  width: 480px;
  text-align: left;
}

.section_cslist .inner .cs_list li dl dt {
  font-size: 2em;
  font-weight: bold;
  line-height: 1.3;
}

.section_cslist .inner .cs_list li dl dt:last-child {
  margin-top: 1em;
}

.section_cslist .inner .cs_list li dl dd {
  font-size: 1em;
  margin: 1em 2em 0 0;
  line-height: 2;
}

@media (max-width: 768px) {
  .section_cslist .inner {
    margin-top: 0;
  }
  .section_cslist .inner .cs_list {
    margin-top: 4em;
  }
  .section_cslist .inner .cs_list li {
    display: block;
    height: auto;
    margin-bottom: 5em;
  }
  .section_cslist .inner .cs_list li dl {
    width: 90%;
    margin: 0 auto 2em;
  }
}

.section_svitems {
  padding: 6em 0 3em 0;
  background: #f6f6f6;
}

.section_svitems .inner .items_inner {
  margin: 2em auto 0 auto;
}

.section_svitems .inner .items_inner li {
  display: inline-block;
  vertical-align: top;
  max-width: 250px;
  width: 100%;
  margin: 3em 4em 3em 4em;
}

.section_svitems .inner .items_inner li .thumb {
  padding: 0;
}

.section_svitems .inner .items_inner li .inner_block {
  display: block;
  max-width: 420px;
  width: auto;
  position: relative;
  text-align: left;
  padding: 0;
  margin: 0;
}

.section_svitems .inner .items_inner li .inner_block dl {
  margin: 1em 0 0 0;
}

.section_svitems .inner .items_inner li .inner_block dl dt .item_name {
  font-size: 1.4em;
}

.section_svitems .inner .items_inner li .inner_block dl dt p {
  text-align: right;
  font-size: .9em;
}

.section_svitems .inner .items_inner li .inner_block dl dt em {
  color: #00aae4;
  text-align: left;
  font-size: 1.2em;
}

.section_svitems .inner .items_inner li .inner_block dl dd .item_txt {
  font-size: 1.1em;
  margin: 1em 0 0 0;
}

.section_svitems:first-child {
  padding-bottom: 1em;
}

@media (max-width: 768px) {
  .section_svitems {
    padding: 4em 0;
  }
  .section_svitems .inner .inner_block {
    margin: 3em auto 0 auto;
    white-space: normal;
  }
  .section_svitems .inner .inner_block > .txt_block {
    display: block;
    max-width: none;
    width: auto;
    margin: -4em 0 0 1.6em;
    padding: 2em 3em;
    top: 0;
  }
  .section_svitems .inner .inner_block > .txt_block:before {
    content: none;
  }
  .section_svitems .inner .inner_block > .txt_block p small {
    font-size: 1.2em;
  }
  .section_svitems .inner .inner_block > .txt_block p strong {
    font-size: 1.5em;
  }
}

.tssrv_banner {
  max-width: 1200px;
  width: 100%;
  margin: 8em auto 0 auto;
}

.tssrv_banner > a {
  position: relative;
  display: block;
  background: #00aae4;
  padding: 8px;
}

.tssrv_banner > a:after {
  content: "\e04b";
  font-size: 4em;
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -30px;
  width: 60px;
  height: 60px;
  line-height: 60px;
  color: #fff;
}

.tssrv_banner > a .inner {
  border: 1px solid #fff;
  text-align: left;
}

.tssrv_banner > a .thumb {
  max-width: 360px;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  top: 20px;
  margin: 0 6em;
}

.tssrv_banner > a .thumb .mock {
  display: block;
}

.tssrv_banner > a .text {
  max-width: 440px;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  color: #fff;
  position: relative;
  top: 0;
}

.tssrv_banner > a .text > h1 {
  display: block;
  font-size: 1.8em;
  line-height: 1;
  margin: 6px 0 0 0;
}

.tssrv_banner > a .text > p {
  margin: 1em 0 0 0;
  font-size: 1em;
  line-height: 1.6;
  font-weight: bold;
  letter-spacing: 1px;
}

.tssrv_banner > a .text > p em {
  font-size: 1.3em;
  line-height: 1.8;
}

@media (max-width: 768px) {
  .tssrv_banner {
    margin-top: 4em;
    padding-bottom: 0;
  }
  .tssrv_banner > a:after {
    bottom: 16%;
    right: 10px;
    zoom: 80%;
  }
  .tssrv_banner > a .thumb {
    display: none;
  }
  .tssrv_banner > a .text {
    display: block;
    max-width: none;
    width: auto;
    top: 0;
    padding: 2em 3.6em 2em 1.6em;
    zoom: 80%;
  }
}

#sale .sub_visual {
  background: url("../img/sale/sale_head.png") no-repeat center center;
  background-size: cover;
}

#sale .section_service.drone {
  padding: 3em 0 2em 0;
}

#sale .section_service.drone .inner .block_contents {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

#sale .section_service.drone .inner .block_contents .data_list {
  text-align: left;
}

#sale .section_service.drone .inner .block_contents .data_list li {
  margin-bottom: 4em;
  max-width: 262px;
}

#sale .section_service.drone .inner .block_contents .data_list li .thumb img {
  border-radius: inherit;
}

#sale .section_service.drone .inner .block_contents .data_list li .price_wrap {
  display: block;
  width: 100%;
  line-height: 100%;
  margin-top: .7em;
  overflow: hidden;
  vertical-align: bottom;
}

#sale .section_service.drone .inner .block_contents .data_list li .price_wrap .price01 {
  width: 65%;
  float: left;
  color: #00aae4;
  font-weight: bold;
  font-size: 110%;
}

#sale .section_service.drone .inner .block_contents .data_list li .price_wrap .price02 {
  width: 35%;
  float: left;
  font-size: 90%;
  text-align: right;
}

#sale .section_service.drone.set .inner .block_contents .data_list li {
  max-width: 460px;
}

#sale .section_service.drone.set .inner .block_contents .data_list li .text01 {
  font-size: 90%;
  border-bottom: 1px solid #ebebeb;
}

#sale .section_service.drone.set .inner .block_contents .data_list li .text02 {
  padding-left: 1em;
}

#sale .bottom_contact_wrap {
  width: 1000px;
  margin: 0 auto;
  border-top: 2px solid #eee;
}

#sale .checkbox dd span.mwform-checkbox-field {
  display: inline-block;
  width: 50%;
}

@media (max-width: 1000px) {
  #sale .section_service.drone .inner .block_contents .data_list li {
    margin-right: 5em;
    margin-left: 5em;
  }
  #sale .section_service.drone .inner .block_contents .data_list li.center {
    margin-right: 5em;
    margin-left: 5em;
  }
  #sale .section_service.drone.set .inner .block_contents .data_list li {
    display: block;
    margin: 4em auto 4em !important;
  }
  #sale .bottom_contact_wrap {
    width: auto;
  }
}

@media (max-width: 768px) {
  #sale .section_service.drone {
    padding: 0;
  }
  #sale .section_service.drone .inner .block_contents .data_list li {
    display: block;
    margin: 4em auto;
  }
  #sale .section_service.drone .inner .block_contents .data_list li.center {
    display: block;
    margin: 4em auto;
  }
  #sale .section_service.drone .inner .block_contents .data_list li .thumb {
    height: auto;
  }
  #sale .section_service.drone .inner .block_contents .data_list li .thumb img {
    width: auto;
    bottom: 0;
  }
  #sale .section_service.drone.set .inner .block_contents .data_list li {
    display: block;
    margin: 4em auto 4em !important;
  }
  #sale .bottom_contact_wrap {
    width: auto;
  }
  #sale .checkbox dd span.mwform-checkbox-field {
    display: block;
    width: 100%;
  }
}

@font-face {
  font-family: 'BebasNeue';
  src: url("../font/BebasNeue/BebasNeue.ttf");
}

@font-face {
  font-family: 'KyokaICAPro';
  src: url("../font/KyokaICAPro/A-OTF-KyokaICAPro-Regular.otf");
}

.ins_top {
  height: 600px;
  background: url("../img/insurance/topimg.jpg") no-repeat center/cover;
}

@media (max-width: 768px) {
  .ins_top {
    height: 430px;
  }
}

.ins_top h1 {
  text-align: center;
  font-weight: normal;
  margin-bottom: 50px;
}

@media (max-width: 768px) {
  .ins_top h1 {
    margin-bottom: 40px;
  }
}

.ins_top h1 span.title01 {
  padding: 50px 0 30px 0;
  font-size: 60px;
  color: #111111;
  display: block;
  font-family: 'KyokaICAPro';
}

@media (max-width: 768px) {
  .ins_top h1 span.title01 {
    padding: 20px 0 20px 0;
    font-size: 40px;
    line-height: 1.2;
  }
}

.ins_top h1 span.title02 {
  font-size: 36px;
  color: #333333;
  font-family: 'KyokaICAPro';
}

@media (max-width: 768px) {
  .ins_top h1 span.title02 {
    font-size: 22px;
  }
}

.ins_top p.sonpo {
  max-width: 1300px;
  width: 100%;
  text-align: right;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .ins_top p.sonpo img {
    width: 120px;
  }
}

.ins_top p.sonpo02 {
  text-align: center;
  padding: 0 5px;
}

.ins_content_01 {
  max-width: 930px;
  width: 100%;
  margin: 0 auto;
}

.ins_content_01 .inner {
  padding: 90px 0;
}

@media (max-width: 768px) {
  .ins_content_01 .inner {
    padding: 60px 0;
  }
}

.ins_content_01 .inner ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
}

.ins_content_01 .inner ul li {
  width: 210px;
  padding: 10px;
  text-align: center;
  margin: 0 auto;
}

.ins_content_01 .inner ul li img {
  display: block;
  margin: 0 auto;
  margin-bottom: 20px;
}

.ins_content_01 .inner ul li .text01 {
  display: block;
  color: #444444;
  font-size: 18px;
  margin-bottom: 15px;
  font-weight: bold;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_01 .inner ul li .text02 {
  display: block;
  color: #666666;
  font-size: 12px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_02 {
  background-color: #e8e9ee;
}

.ins_content_02 .inner {
  max-width: 850px;
  width: 100%;
  padding: 70px 0 180px;
  margin: 0 auto;
  position: relative;
}

@media (max-width: 768px) {
  .ins_content_02 .inner {
    padding: 60px 0;
  }
}

.ins_content_02 .inner .title_wrap {
  margin-bottom: 60px;
}

.ins_content_02 .inner .title_wrap h2 {
  text-align: left;
  padding-left: 140px;
}

@media (max-width: 768px) {
  .ins_content_02 .inner .title_wrap h2 {
    text-align: center;
    padding-left: 0;
  }
}

.ins_content_02 .inner .title_wrap h2 span.title {
  color: #222222;
  font-size: 36px;
  margin-right: 30px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  letter-spacing: 5px;
}

@media (max-width: 768px) {
  .ins_content_02 .inner .title_wrap h2 span.title {
    margin-right: 0;
  }
}

.ins_content_02 .inner .title_wrap h2 span.disc {
  font-size: 14px;
  color: #444444;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

@media (max-width: 768px) {
  .ins_content_02 .inner .title_wrap h2 span.disc {
    display: block;
  }
}

.ins_content_02 .inner .content {
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
}

@media (max-width: 768px) {
  .ins_content_02 .inner .content {
    flex-wrap: wrap;
    justify-content: space-around;
  }
}

.ins_content_02 .inner .content li {
  width: 240px;
  background-color: #ffffff;
  border-radius: 8px;
  position: relative;
  padding: 30px;
  text-align: left;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

@media (max-width: 768px) {
  .ins_content_02 .inner .content li {
    margin-bottom: 20px;
  }
}

.ins_content_02 .inner .content li:before {
  position: absolute;
  right: 10px;
  bottom: -30px;
  content: "";
  width: 25px;
  height: 21px;
  background: #ffffff;
  border-radius: 50%;
}

@media (max-width: 768px) {
  .ins_content_02 .inner .content li:before {
    display: none;
  }
}

.ins_content_02 .inner .content li:after {
  position: absolute;
  right: -10px;
  bottom: -50px;
  content: "";
  width: 17px;
  height: 13px;
  background: #ffffff;
  border-radius: 50%;
}

@media (max-width: 768px) {
  .ins_content_02 .inner .content li:after {
    display: none;
  }
}

.ins_content_02 .inner .content li:nth-child(2):before {
  right: 15px;
}

.ins_content_02 .inner .content li:nth-child(2):after {
  right: 13px;
}

.ins_content_02 .inner .content li:nth-child(3):before {
  left: 7px;
}

.ins_content_02 .inner .content li:nth-child(3):after {
  left: 0;
}

.ins_content_02 .inner .content li span.number {
  font-family: 'BebasNeue';
  color: #999999;
  font-size: 30px;
  position: absolute;
  right: -5px;
  top: -20px;
}

.ins_content_02 .inner .content li span.disc {
  color: #444444;
  font-size: 14px;
  line-height: 2.0;
  font-weight: bold;
}

.ins_content_02 .inner .hito {
  position: absolute;
  right: 245px;
  bottom: -40px;
}

@media (max-width: 768px) {
  .ins_content_02 .inner .hito {
    display: none;
  }
}

.ins_content_02 .inner .hito:after {
  position: absolute;
  left: -13px;
  bottom: -10px;
  content: "";
  width: 92px;
  height: 25px;
  background: #e5e5e5;
  border-radius: 50%;
  z-index: -3;
}

.ins_content_03 {
  max-width: 630px;
  width: 100%;
  margin: 0 auto;
}

.ins_content_03 .inner {
  padding: 120px 0 70px;
}

@media (max-width: 768px) {
  .ins_content_03 .inner {
    padding: 60px 0;
  }
}

.ins_content_03 .inner .title_wrap {
  margin-bottom: 50px;
}

.ins_content_03 .inner .title_wrap h2 {
  text-align: left;
  padding-left: 130px;
}

@media (max-width: 768px) {
  .ins_content_03 .inner .title_wrap h2 {
    text-align: center;
    padding-left: 0;
  }
}

.ins_content_03 .inner .title_wrap h2 span {
  font-size: 36px;
  color: #222222;
  font-weight: normal;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  letter-spacing: 3px;
}

.ins_content_03 .inner .content_wrap {
  text-align: left;
}

@media (max-width: 768px) {
  .ins_content_03 .inner .content_wrap {
    max-width: 430px;
    display: block;
    margin: 0 auto;
  }
}

.ins_content_03 .inner .content_wrap dt {
  width: 130px;
  display: inline-block;
  font-weight: bold;
  font-size: 16px;
  color: #222222;
  vertical-align: top;
  margin-bottom: 30px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

@media (max-width: 768px) {
  .ins_content_03 .inner .content_wrap dt {
    width: 90px;
    text-align: center;
  }
}

.ins_content_03 .inner .content_wrap dd {
  width: calc(100% - 135px);
  display: inline-block;
  font-size: 14px;
  color: #666666;
  font-weight: bold;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_03 .inner .content_wrap dd .smalltxt {
  display: block;
  font-size: 13px;
  padding: 0 0 15px 10px;
}

@media (max-width: 768px) {
  .ins_content_03 .inner .content_wrap dd {
    width: calc(100% - 95px);
  }
}

.ins_content_03 .inner .content_wrap dd ul {
  border-bottom: #eeeeee solid 1px;
  margin-bottom: 17px;
}

.ins_content_03 .inner .content_wrap dd ul li {
  line-height: 42px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_03 .inner .content_wrap dd ul li span {
  display: inline-block;
  width: 288px;
  padding-left: 30px;
}

@media (max-width: 768px) {
  .ins_content_03 .inner .content_wrap dd ul li span {
    width: 192px;
  }
}

.ins_content_03 .inner .content_wrap dd ul li span.spanx {
  width: 291px;
}

@media (max-width: 768px) {
  .ins_content_03 .inner .content_wrap dd ul li span.spanx {
    width: 195px;
  }
}

.ins_content_03 .inner .content_wrap dd ul li:nth-child(odd) {
  background: #f6f6f6;
}

.ins_content_03 .inner .content_wrap dd ul li:nth-child(even) {
  background: #ffffff;
}

.ins_content_03 .inner .content_wrap dd ul li:first-child {
  background: #eeeeee;
}

.ins_content_03 .inner .content_wrap dd ul li:first-child span {
  width: 281px;
}

@media (max-width: 768px) {
  .ins_content_03 .inner .content_wrap dd ul li:first-child span {
    width: 185px;
  }
}

.ins_content_03 .inner p.contact {
  text-align: right;
  color: #666666;
  font-size: 12px;
  margin-bottom: 25px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

@media (max-width: 768px) {
  .ins_content_03 .inner p.contact {
    padding-right: 10px;
  }
}

.ins_content_03 .inner ul.register {
  border-top: 1px solid #eeeeee;
  margin-bottom: 43px;
  padding-top: 10px;
}

.ins_content_03 .inner ul.register li {
  position: relative;
  padding-left: 30px;
  padding-right: 10px;
  text-align: left;
  color: #666666;
  font-size: 12px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_03 .inner ul.register li:before {
  position: absolute;
  left: 10px;
  content: "※";
}

.ins_content_03 .inner .contact_bt {
  width: 280px;
  background: #00aae4;
  margin: 0 auto;
  border-radius: 2px;
  display: inline-block;
}

@media (max-width: 768px) {
  .ins_content_03 .inner .contact_bt {
    display: block;
    margin: 0 auto 20px !important;
  }
}

.ins_content_03 .inner .contact_bt a {
  color: #ffffff;
  font-size: 16px;
  line-height: 60px;
  font-weight: bold;
  display: block;
}

.ins_content_04 {
  background-color: #eeeeee;
}

.ins_content_04 .inner {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  text-align: left;
  padding: 75px 0 75px 220px;
}

@media (max-width: 768px) {
  .ins_content_04 .inner {
    padding: 70px 20px;
  }
}

.ins_content_04 .inner h2 {
  color: #222222;
  font-size: 22px;
  margin-bottom: 30px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_04 .inner p.tel {
  color: #222222;
  font-size: 20px;
  margin-bottom: 30px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_04 .inner p.tel img {
  width: 30px;
  margin-right: 15px;
}

.ins_content_04 .inner p.disc {
  font-size: 12px;
  color: #666666;
  line-height: 2.0;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.ins_content_05 {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

.ins_content_05 .inner {
  padding-top: 80px;
}

.ins_content_05 .inner .item {
  max-width: 500px;
  width: 100%;
  float: left;
  padding: 0 35px 0 15px;
  text-align: left;
}

@media (max-width: 1000px) {
  .ins_content_05 .inner .item {
    display: block;
    margin: 0 auto 30px;
    float: none;
    padding: 0;
  }
}

@media (max-width: 480px) {
  .ins_content_05 .inner .item {
    width: 250px;
  }
}

.ins_content_05 .inner .item p.office {
  color: #222222;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

@media (max-width: 768px) {
  .ins_content_05 .inner .item p.office {
    margin-bottom: 10px;
  }
}

.ins_content_05 .inner .item .img_border {
  width: 180px;
  border: 1px solid #eeeeee;
  float: left;
  height: 105px;
}

@media (max-width: 480px) {
  .ins_content_05 .inner .item .img_border {
    float: none;
  }
}

.ins_content_05 .inner .item .img_border img {
  padding-top: 20px;
  display: block;
  margin: 0 auto;
}

.ins_content_05 .inner .item p.disc {
  width: calc(100% - 180px);
  float: left;
  padding-left: 30px;
  color: #888888;
  font-size: 12px;
  line-height: 2.0;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

@media (max-width: 480px) {
  .ins_content_05 .inner .item p.disc {
    float: none;
    width: 100%;
    padding-left: 0;
  }
}

.ins_content_05 .inner .item p.disc span.bold {
  color: #666666;
  font-size: 14px;
  font-weight: bold;
  display: block;
}

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT
Copyright (c) 2015 Daniel Eden
*/
body {
  -webkit-backface-visibility: hidden;
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.bounceIn, .animated.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

.animated.flipOutX, .animated.flipOutY {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
  }
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
}

@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
  }
}

@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
  }
}

@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    transform: translateX(10px);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -webkit-transform-origin: top center;
  }
  20% {
    -webkit-transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}

@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes wiggle {
  0% {
    -webkit-transform: skewX(9deg);
  }
  10% {
    -webkit-transform: skewX(-8deg);
  }
  20% {
    -webkit-transform: skewX(7deg);
  }
  30% {
    -webkit-transform: skewX(-6deg);
  }
  40% {
    -webkit-transform: skewX(5deg);
  }
  50% {
    -webkit-transform: skewX(-4deg);
  }
  60% {
    -webkit-transform: skewX(3deg);
  }
  70% {
    -webkit-transform: skewX(-2deg);
  }
  80% {
    -webkit-transform: skewX(1deg);
  }
  90% {
    -webkit-transform: skewX(0deg);
  }
  100% {
    -webkit-transform: skewX(0deg);
  }
}

@keyframes wiggle {
  0% {
    transform: skewX(9deg);
  }
  10% {
    transform: skewX(-8deg);
  }
  20% {
    transform: skewX(7deg);
  }
  30% {
    transform: skewX(-6deg);
  }
  40% {
    transform: skewX(5deg);
  }
  50% {
    transform: skewX(-4deg);
  }
  60% {
    transform: skewX(3deg);
  }
  70% {
    transform: skewX(-2deg);
  }
  80% {
    transform: skewX(1deg);
  }
  90% {
    transform: skewX(0deg);
  }
  100% {
    transform: skewX(0deg);
  }
}

.wiggle {
  -webkit-animation-name: wiggle;
  animation-name: wiggle;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
  }
  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -webkit-transform: translateX(0%);
  }
}

@keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
  }
  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0);
  }
}

@keyframes tada {
  0% {
    transform: scale(1);
  }
  10%, 20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
  }
  70% {
    -webkit-transform: scale(0.9);
  }
  100% {
    -webkit-transform: scale(1);
  }
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
  }
  80% {
    -webkit-transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}

@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
  }
  80% {
    -webkit-transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}

@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
  }
  80% {
    -webkit-transform: translateX(10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}

@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
  }
  80% {
    -webkit-transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}

@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
}

@keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}

@keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}

@keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}

@keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}

@keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}

@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}

@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}

@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}

@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
}

@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}

@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
}

@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}

@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
}

@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}

@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
}

@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}

@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(0);
    -webkit-animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -webkit-animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
  }
  100% {
    -webkit-transform: perspective(400px) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
}

@keyframes flip {
  0% {
    transform: perspective(400px) rotateY(0);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) rotateY(360deg) scale(0.95);
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) scale(1);
    animation-timing-function: ease-in;
  }
}

.flip {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}

@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}

@keyframes lightSpeedIn {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -transform-origin: left bottom;
    -transform: rotate(-90deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes slideInDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  0% {
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  0% {
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  0% {
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  0% {
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(0, 100%, 0);
  }
}

@keyframes slideOutDown {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(100%, 0, 0);
  }
}

@keyframes slideOutRight {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    -webkit-transform: translate3d(0, -100%, 0);
  }
}

@keyframes slideOutUp {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate(80deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  40% {
    -webkit-transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  100% {
    -webkit-transform: translateY(700px);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    transform: rotate(80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
}

@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
  }
}

@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInDown {
  0% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInLeft {
  0% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInRight {
  0% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInUp {
  0% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
  }
  100% {
    opacity: 0;
  }
}

@keyframes zoomOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  100% {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  100% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  100% {
    opacity: 0;
    transform: scale3d(0.1) translate3d(-2000px, 0, 0);
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  100% {
    opacity: 0;
    transform: scale3d(0.1) translate3d(2000px, 0, 0);
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  100% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

/* ---------------
	parts
-------------------------------------------------------*/
.wauto {
  width: auto !important;
}

.w80 {
  max-width: 80% !important;
  width: 100%;
  margin: 0 auto;
}

.w90 {
  max-width: 90% !important;
  width: 100%;
  margin: 0 auto;
}

.w640 {
  max-width: 640px !important;
  width: 100%;
  margin: 0 auto;
}

.w740 {
  max-width: 740px !important;
  width: 100%;
  margin: 0 auto;
}

.w840 {
  max-width: 840px !important;
  width: 100%;
  margin: 0 auto;
}

.w940 {
  max-width: 940px !important;
  width: 100%;
  margin: 0 auto;
}

.w1040 {
  max-width: 1040px !important;
  width: 100%;
  margin: 0 auto;
}

.w1200 {
  max-width: 1200px !important;
  width: 100%;
  margin: 0 auto;
}

.w1400 {
  max-width: 1400px !important;
  width: 100%;
  margin: 0 auto;
}

.wfull {
  width: 100% !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mt02 {
  margin-top: .2em !important;
}

.mt04 {
  margin-top: .4em !important;
}

.mt06 {
  margin-top: .6em !important;
}

.mt08 {
  margin-top: .8em !important;
}

.mt1 {
  margin-top: 1em !important;
}

.mt2 {
  margin-top: 2em !important;
}

.mt3 {
  margin-top: 3em !important;
}

.mt4 {
  margin-top: 4em !important;
}

.mt5 {
  margin-top: 5em !important;
}

.mt6 {
  margin-top: 6em !important;
}

.mt7 {
  margin-top: 7em !important;
}

.mt8 {
  margin-top: 8em !important;
}

.mt9 {
  margin-top: 9em !important;
}

.mt10 {
  margin-top: 10em !important;
}

.mb1 {
  margin-bottom: 1em !important;
}

.mb2 {
  margin-bottom: 2em !important;
}

.mb3 {
  margin-bottom: 3em !important;
}

.mb4 {
  margin-bottom: 4em !important;
}

.mb5 {
  margin-bottom: 5em !important;
}

.mb6 {
  margin-bottom: 6em !important;
}

.mb7 {
  margin-bottom: 7em !important;
}

.mb8 {
  margin-bottom: 8em !important;
}

.mb9 {
  margin-bottom: 9em !important;
}

.mb10 {
  margin-bottom: 10em !important;
}

.mr1 {
  margin-right: 1em !important;
}

.mr2 {
  margin-right: 2em !important;
}

.mr3 {
  margin-right: 3em !important;
}

.mr4 {
  margin-right: 4em !important;
}

.mr5 {
  margin-right: 5em !important;
}

.mr6 {
  margin-right: 6em !important;
}

.mr7 {
  margin-right: 7em !important;
}

.mr8 {
  margin-right: 8em !important;
}

.mr9 {
  margin-right: 9em !important;
}

.mr10 {
  margin-right: 10em !important;
}

.ml1 {
  margin-left: 1em !important;
}

.ml2 {
  margin-left: 2em !important;
}

.ml3 {
  margin-left: 3em !important;
}

.ml4 {
  margin-left: 4em !important;
}

.ml5 {
  margin-left: 5em !important;
}

.ml6 {
  margin-left: 6em !important;
}

.ml7 {
  margin-left: 7em !important;
}

.ml8 {
  margin-left: 8em !important;
}

.ml9 {
  margin-left: 9em !important;
}

.ml10 {
  margin-left: 10em !important;
}

@media (max-width: 768px) {
  .mt3 {
    margin-top: 2.4em !important;
  }
  .mt4 {
    margin-top: 3em !important;
  }
  .mt5 {
    margin-top: 3.6em !important;
  }
  .mt6 {
    margin-top: 3.8em !important;
  }
  .mt7 {
    margin-top: 4em !important;
  }
  .mt8 {
    margin-top: 4em !important;
  }
  .mt9 {
    margin-top: 4em !important;
  }
  .mt10 {
    margin-top: 4em !important;
  }
  .mb3 {
    margin-bottom: 2.4em !important;
  }
  .mb4 {
    margin-bottom: 3em !important;
  }
  .mb5 {
    margin-bottom: 3.6em !important;
  }
  .mb6 {
    margin-bottom: 3.8em !important;
  }
  .mb7 {
    margin-bottom: 4em !important;
  }
  .mb8 {
    margin-bottom: 4em !important;
  }
  .mb9 {
    margin-bottom: 4em !important;
  }
  .mb10 {
    margin-bottom: 4em !important;
  }
  .mr3 {
    margin-right: 2.4em !important;
  }
  .mr4 {
    margin-right: 3em !important;
  }
  .mr5 {
    margin-right: 3em !important;
  }
  .mr6 {
    margin-right: 3.8em !important;
  }
  .mr7 {
    margin-right: 4em !important;
  }
  .mr8 {
    margin-right: 4em !important;
  }
  .mr9 {
    margin-right: 4em !important;
  }
  .mr10 {
    margin-right: 4em !important;
  }
  .ml3 {
    margin-left: 2.4em !important;
  }
  .ml4 {
    margin-left: 3em !important;
  }
  .ml5 {
    margin-left: 3em !important;
  }
  .ml6 {
    margin-left: 3.8em !important;
  }
  .ml7 {
    margin-left: 4em !important;
  }
  .ml8 {
    margin-left: 4em !important;
  }
  .ml9 {
    margin-left: 4em !important;
  }
  .ml10 {
    margin-left: 4em !important;
  }
  .sp_mt0 {
    margin-top: 0 !important;
  }
  .sp_pt0 {
    padding-top: 0 !important;
  }
  .sp_pb0 {
    padding-bottom: 0 !important;
  }
  .sp_plr0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.pt0 {
  padding-top: 0 !important;
}

.pt02 {
  padding-top: .2em !important;
}

.pt04 {
  padding-top: .4em !important;
}

.pt06 {
  padding-top: .6em !important;
}

.pt08 {
  padding-top: .8em !important;
}

.pt1 {
  padding-top: 1em !important;
}

.pt2 {
  padding-top: 2em !important;
}

.pt3 {
  padding-top: 3em !important;
}

.pt4 {
  padding-top: 4em !important;
}

.pt5 {
  padding-top: 5em !important;
}

.pt6 {
  padding-top: 6em !important;
}

.pt7 {
  padding-top: 7em !important;
}

.pt8 {
  padding-top: 8em !important;
}

.pt9 {
  padding-top: 9em !important;
}

.pt10 {
  padding-top: 10em !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pb1 {
  padding-bottom: 1em !important;
}

.pb2 {
  padding-bottom: 2em !important;
}

.pb3 {
  padding-bottom: 3em !important;
}

.pb4 {
  padding-bottom: 4em !important;
}

.pb5 {
  padding-bottom: 5em !important;
}

.pb6 {
  padding-bottom: 6em !important;
}

.pb7 {
  padding-bottom: 7em !important;
}

.pb8 {
  padding-bottom: 8em !important;
}

.pb9 {
  padding-bottom: 9em !important;
}

.pb10 {
  padding-bottom: 10em !important;
}

.f_left {
  float: left !important;
}

.f_right {
  float: right !important;
}

.display_none {
  display: none;
}

.block {
  display: block;
}

.inb_m {
  display: inline-block;
  vertical-align: middle;
}

.inb_t {
  display: inline-block;
  vertical-align: top;
}

.inb_b {
  display: inline-block;
  vertical-align: bottom;
}

.over_hidden {
  overflow: hidden;
}

.bor_t_none {
  border-top: none !important;
}

.bor_b_none {
  border-bottom: none !important;
}

.bor_t_ddd {
  border-top: 1px solid #ddd !important;
}

@media (max-width: 768px) {
  .sp_none {
    display: none !important;
  }
  .over_x {
    overflow-x: hidden;
  }
  .over_y {
    overflow-y: hidden;
  }
}

.weight100 {
  font-weight: 100;
}

.weight300 {
  font-weight: 300;
}

.weight400 {
  font-weight: 400;
}

.weight500 {
  font-weight: 500;
}

.weight700 {
  font-weight: 700;
}

.weight900 {
  font-weight: 900;
}

.radius0 {
  border-radius: 0 !important;
}

.tc {
  text-align: center !important;
}

.tl {
  text-align: left !important;
}

.tr {
  text-align: right !important;
}

.tj {
  text-align: justify !important;
}

.fs10 {
  font-size: 10px !important;
}

.fs11 {
  font-size: 11px !important;
}

.fs12 {
  font-size: 12px !important;
}

.fs13 {
  font-size: 13px !important;
}

.fs14 {
  font-size: 14px !important;
}

.fs15 {
  font-size: 15px !important;
}

.fs16 {
  font-size: 16px !important;
}

.fs18 {
  font-size: 18px !important;
}

.fs20 {
  font-size: 20px !important;
}

.fs22 {
  font-size: 22px !important;
}

.fs24 {
  font-size: 24px !important;
}

.fs26 {
  font-size: 26px !important;
}

.fs28 {
  font-size: 28px !important;
}

.fs32 {
  font-size: 32px !important;
}

.fs34 {
  font-size: 34px !important;
}

.fs36 {
  font-size: 36px !important;
}

.fs38 {
  font-size: 38px !important;
}

.fs40 {
  font-size: 40px !important;
}
